Skip to content

DispatchTUI prtest#3

Closed
DemonicEgg wants to merge 428 commits intoclaudesdkfrom
DispatchTUI-prtest
Closed

DispatchTUI prtest#3
DemonicEgg wants to merge 428 commits intoclaudesdkfrom
DispatchTUI-prtest

Conversation

@DemonicEgg
Copy link
Copy Markdown
Owner

opencode-agent bot and others added 30 commits March 31, 2026 01:57
Co-authored-by: dongyuxin <dongyuxin@dev.dongyuxin.msh-dev.svc.cluster.local>
…o v6 the ai sdk changed the key for ai-sdk/azure so the exclusion is no longer needed (anomalyco#20326)
…x-anthropic (anomalyco#20266)

Signed-off-by: Major Hayden <major@mhtx.net>
rekram1-node and others added 25 commits April 8, 2026 12:56
Replace the Vercel AI SDK with the Claude Agent SDK for Anthropic provider
LLM communication. Adds adapter layer, permission bridge, stream processor,
auth integration, session map, and comprehensive tests (113 pass, 1 skip).
The AI SDK code path remains for non-Anthropic providers.

New source files:
- claude-sdk-adapter.ts: SDKMessage → MessageV2 part mapping
- claude-sdk-permissions.ts: canUseTool bridge to Permission events/TUI
- claude-sdk-processor.ts: consumes query() stream, persists parts
- claude-sdk-query.ts: resolves auth and calls query() with options
- claude-sdk-session-map.ts: maps opencode session IDs to SDK UUIDs
- summarize.ts: agent summary generation via SDK or AI SDK
Adds SDK_MODELS with Opus 4.6 (1M), Sonnet 4.6, Sonnet 4.6 (1M), and
Haiku 4.5. Ensures Anthropic provider is always present in the provider
list even without a local API key, since the Agent SDK handles auth via
subscription login.
Complete reimplementation of all Claude SDK changes on the effects
architecture. Includes:

- Agent dashboard with table-based navigation (j/k/Enter/a/w/x/d)
- Multi-agent support with worktree creation and cross-directory SSE
- Subagent routing to child sessions with full TUI support
- MCP server bridge proxying tool calls to connected clients
- Permission bridge with cross-directory support
- Worktree diff view and terminal attach
- GitHub PR integration
- Inline permission approval UI
- Activity display on dashboard agent rows
- Compaction support via SDK hooks
- Image/PDF attachment forwarding
- Thinking effort level passthrough
- Session resumption via SDK UUID mapping
- Dispatch binary rename and install scripts
- Release workflow and README updates
The worktree.diffstat, worktree.info, and worktree.diff endpoints
don't exist in the upstream SDK yet. Guard all calls with typeof
checks so the dashboard doesn't crash on launch.
The dashboard keybind was referenced in the session route and command
palette but not registered in the keybind config, so <leader>escape
had no effect.
- Use direct fetch for /session/:id/last-response instead of the
  generated SDK client method which doesn't exist yet
- Add dashboard keybind hint to session prompt footer so users can
  see the <leader>esc shortcut
Set activity on session status during tool execution so the dashboard
shows what each agent is doing regardless of which SDK path is used.
Shows "Thinking..." on stream start and tool details during execution.
Restore the model descriptions (e.g. 'Most capable for complex work' for Opus,
'Best for everyday tasks' for Sonnet) that were being read from model.options.sdkDescription
but not displayed. The provider already stores these descriptions from SDK_MODELS.
- Move AbortController creation before createClaudeSdkQuery so the SDK receives the signal and can clean up on cancel
- Wire Effect.onInterrupt to call abortController.abort() so fiber interruption propagates to the SDK stream
- Wrap cancel and assertNotBusy routes in withSessionDirectory for correct session context
@github-actions
Copy link
Copy Markdown

Hey! Your PR title DispatchTUI prtest doesn't follow conventional commit format.

Please update it to start with one of:

  • feat: or feat(scope): new feature
  • fix: or fix(scope): bug fix
  • docs: or docs(scope): documentation changes
  • chore: or chore(scope): maintenance tasks
  • refactor: or refactor(scope): code refactoring
  • test: or test(scope): adding or updating tests

Where scope is the package name (e.g., app, desktop, opencode).

See CONTRIBUTING.md for details.

@github-actions
Copy link
Copy Markdown

This PR doesn't fully meet our contributing guidelines and PR template.

What needs to be fixed:

  • PR description is missing required template sections. Please use the PR template.

Please edit this PR description to address the above within 2 hours, or it will be automatically closed.

If you believe this was flagged incorrectly, please let a maintainer know.

@DemonicEgg DemonicEgg closed this Apr 10, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.