kinderp / kinderp/durex

Implement the OpenCode AgentRuntime adapter

Open
#29 0 comments 0 reactions 0 assignees View on GitHub
area:agents kind:feature
Dominant language
Python
Stars
0
Forks
0
PR merge metrics
No merged PRs in 30d

Description

## Parent and milestone

- Parent issue: #23
- Milestone: not scheduled; implementation starts after #15 and #42.

## Problem

Durex cannot yet execute OpenCode through the provider-neutral contract. Both
ACP and OpenCode's native server expose useful capabilities, but maintaining a
bespoke server adapter without first proving an ACP gap would duplicate an open
standard.

## Outcome

Add a conforming OpenCode adapter through pinned ACP support, using the native
HTTP/OpenAPI/SSE server only for required capabilities or guarantees documented
by #25.

## Scope

- Launch and supervise a pinned OpenCode ACP process inside #44.
- Map sessions, prompts, updates, permissions, tool events, completion, errors,
and cancellation.
- Add bounded native server extensions only when the common contract declares
and tests them.
- Keep OpenCode model-provider selection separate from runtime selection.

## Non-goals

- Forking ACP or exposing an OpenCode listener publicly.
- Depending on OpenCode plugins for Durex ownership.
- Supporting every provider or native API in the first adapter PR.

## Acceptance criteria

- [ ] The ACP path passes the common conformance suite.
- [ ] Every native extension links a #25 capability/security gap.
- [ ] Authentication, process failure, malformed update, cancellation, resume,
and unsupported capability cases are tested.
- [ ] No ACP or OpenCode identifier can bypass Durex ownership fences.
- [ ] Architecture, adapter, and operator documentation is updated.

## Validation

- Run fake ACP/native-server suites and pinned local smoke tasks covering start,
output, interaction, cancel, and resume.

## Dependencies

- #25, #26, #27, #44, #45, and #15.

Contributor guide

No contributing guide indexed for this repository

Research direction

Start by reading the dependency issues #25, #26, #27, #44, #45, and #15 to understand the contract, ACP process, and prerequisites. Run the fake ACP/native-server suites and pinned local smoke tasks covering start, output, interaction, cancellation, and resume. Done means the common conformance suite passes, required failure cases are tested, ownership fences hold, and the architecture, adapter, and operator documentation is updated.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
backend
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.