Skip to content

Feature branch (Gemini, Claude Code, Cursor)#1

Open
Noojuno wants to merge 89 commits intomainfrom
codething/648ca884-claude
Open

Feature branch (Gemini, Claude Code, Cursor)#1
Noojuno wants to merge 89 commits intomainfrom
codething/648ca884-claude

Conversation

@Noojuno
Copy link
Copy Markdown
Owner

@Noojuno Noojuno commented Mar 8, 2026

No description provided.

juliusmarminge and others added 30 commits March 5, 2026 18:12
- Add per-provider model options, defaults, and slug aliases
- Add provider-aware model normalization/resolution helpers
- Preserve Codex-only constants/functions for backward compatibility
- Extend tests to cover Claude aliases and provider-specific fallback behavior
- introduce `ClaudeCodeAdapter` service and live layer wiring
- map runtime/session/request failures into provider adapter error types
- add coverage for validation, session-not-found mapping, lifecycle forwarding, and event passthrough
Add provider-service routing coverage for explicit claudeCode sessions.

Co-authored-by: codex <codex@users.noreply.github.com>
Add restart semantics when requested provider changes and cover with tests.

Co-authored-by: codex <codex@users.noreply.github.com>
Add provider-aware model options and include provider in turn-start dispatch.

Co-authored-by: codex <codex@users.noreply.github.com>
Co-authored-by: codex <codex@users.noreply.github.com>
Co-authored-by: codex <codex@users.noreply.github.com>
Co-authored-by: codex <codex@users.noreply.github.com>
Co-authored-by: codex <codex@users.noreply.github.com>
Co-authored-by: codex <codex@users.noreply.github.com>
Co-authored-by: codex <codex@users.noreply.github.com>
Co-authored-by: codex <codex@users.noreply.github.com>
Co-authored-by: codex <codex@users.noreply.github.com>
Co-authored-by: codex <codex@users.noreply.github.com>
Co-authored-by: codex <codex@users.noreply.github.com>
- add `@anthropic-ai/claude-agent-sdk` dependency for `apps/server`
- replace placeholder Claude adapter with live session/query/event handling
- add comprehensive adapter tests for runtime events, approvals, resume, rollback, and model overrides
- Replace manual prompt async iterator with `Stream.fromQueue(...).toAsyncIterable`
- Use `Ref` for shared session context in tool approval callbacks
- Simplify timestamp/ID generation and close sessions via queue shutdown
- Stop synthesizing `resume` from generated thread IDs
- Persist resume session ID from query messages when available
- Validate resume/sessionId values as UUIDs before reuse
- Add tests for valid UUID resume passthrough and no synthesized resume
Co-authored-by: codex <codex@users.noreply.github.com>
- Do not pass `resumeCursor` when restarting a session after changing providers
- Treat synthetic Claude thread IDs (`claude-thread-*`) as unscoped during runtime ingestion
- Add tests covering provider-switch restart behavior and Claude turn lifecycle acceptance
Co-authored-by: codex <codex@users.noreply.github.com>
- Preserve active turn state when `session.started`/`thread.started` arrive mid-turn
- Emit `message.delta` from assistant text when stream deltas are missing, then complete the message
- Add Claude native SDK NDJSON observability logging and wire its log path in server layers
- Expand ingestion/adapter tests to cover mid-turn lifecycle and delta fallback behavior
- Default Claude sessions to bypass permissions when approval policy is `never`, while preserving explicit `permissionMode`
- Hide/send reasoning effort only for providers that support it in ChatView
- Add coverage for Claude permission-mode derivation and precedence, and update runtime event model docs
- add per-session `sessionSequence` on provider runtime events and persist activity `sequence`
- migrate `projection_thread_activities` with nullable `sequence` column + index
- sort server/web activity projections by sequence fallback to timestamp/id
- allow provider sessions/turns to start before a real threadId is emitted
- define `CursorAdapter` service contract and Cursor stream-json schema types
- add `CursorCliStreamEvent` decoding tests for system/thinking/tool/result/retry events
- add implementation plan for Cursor provider integration

Co-authored-by: codex <codex@users.noreply.github.com>
- Accept `cursor` as a first-class provider in orchestration, persistence, and session directory flows
- Update model/provider inference and normalization to handle Cursor model aliases
- Revamp chat provider/model picker with Cursor-specific trait controls and add coverage in tests
- add `scripts/cursor-acp-probe.mjs` to run ACP protocol probing scenarios
- update `package.json` scripts for probe execution
- include generated probe summaries/transcripts under `.tmp/acp-probe/`
juliusmarminge and others added 26 commits March 5, 2026 21:10
Co-authored-by: codex <codex@users.noreply.github.com>
Co-authored-by: codex <codex@users.noreply.github.com>
Co-authored-by: codex <codex@users.noreply.github.com>
Co-authored-by: codex <codex@users.noreply.github.com>
Co-authored-by: codex <codex@users.noreply.github.com>
Co-authored-by: codex <codex@users.noreply.github.com>
Co-authored-by: codex <codex@users.noreply.github.com>
Co-authored-by: codex <codex@users.noreply.github.com>
Co-authored-by: codex <codex@users.noreply.github.com>
Co-authored-by: codex <codex@users.noreply.github.com>
Co-authored-by: codex <codex@users.noreply.github.com>
Co-authored-by: codex <codex@users.noreply.github.com>
Co-authored-by: codex <codex@users.noreply.github.com>
…hored-by: codex <codex@users.noreply.github.com>
Co-authored-by: codex <codex@users.noreply.github.com>
Resolve all conflicts by keeping branch changes (Claude/cursor provider support).

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- add Gemini CLI runtime/session support alongside Codex, including provider-aware model handling and persisted Gemini thread/session plumbing
- harden provider and git auth flows to avoid interactive GitHub/browser prompts during startup and background status checks
- improve Gemini event ingestion and chat UX with persistent live run state, richer activity labels, compact in-thread activity rendering, image attachment support, and tighter completed-file summaries
- add and update regression tests for provider health, Gemini runtime mapping, store/model handling, and orchestration session status behavior
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
# Conflicts:
#	apps/server/src/orchestration/Layers/CheckpointReactor.test.ts
#	apps/server/src/provider/Layers/CodexAdapter.test.ts
#	apps/server/src/provider/Layers/ProviderAdapterRegistry.test.ts
#	apps/server/src/provider/Layers/ProviderAdapterRegistry.ts
#	apps/server/src/provider/Layers/ProviderService.test.ts
#	apps/server/src/serverLayers.ts
#	apps/web/src/routes/_chat.settings.tsx
#	apps/web/src/session-logic.test.ts
#	apps/web/src/session-logic.ts
#	apps/web/src/store.ts
#	bun.lock
# Conflicts:
#	apps/server/src/orchestration/Layers/ProviderCommandReactor.ts
#	apps/server/src/orchestration/Layers/ProviderRuntimeIngestion.test.ts
#	apps/server/src/provider/Layers/ProviderAdapterRegistry.test.ts
#	apps/server/src/provider/Layers/ProviderAdapterRegistry.ts
#	apps/server/src/provider/Layers/ProviderSessionDirectory.test.ts
#	apps/server/src/provider/Layers/ProviderSessionDirectory.ts
#	apps/server/src/serverLayers.ts
#	apps/web/src/appSettings.test.ts
#	apps/web/src/appSettings.ts
#	apps/web/src/components/ChatView.tsx
#	apps/web/src/composerDraftStore.ts
#	apps/web/src/routes/_chat.settings.tsx
#	apps/web/src/session-logic.test.ts
#	apps/web/src/session-logic.ts
#	apps/web/src/store.ts
#	packages/contracts/src/model.ts
#	packages/contracts/src/orchestration.ts
#	packages/shared/src/model.test.ts
#	packages/shared/src/model.ts
- Replace readPathFromLoginShell with readEnvFromLoginShell to capture
  full login-shell environment on macOS (not just PATH)
- Simplify ChatView by removing threadRunStateStore and consolidating
  session state management into session-logic
- Add Claude Code adapter stdin write support
- Improve sidebar session display

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Drop the redundant static bullet before the working status text in `MessagesTimeline`
- Keep the animated dots indicator as the sole working-state visual cue
@github-actions github-actions bot added the vouch:trusted PR author is trusted by repo permissions or the VOUCHED list. label Mar 9, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

vouch:trusted PR author is trusted by repo permissions or the VOUCHED list.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants