Files
openidea/crates/ide-agent/tests/fixtures/codex/interrupt.jsonl
l0ng-ai 0cd927edf3 feat(agents): Native Claude Code / Codex drivers, ACP v2 and the ACP Registry (#151)
Agents can run through native drivers or any ACP agent, speak ACP v1 or v2, and be installed from the ACP Registry. Tasks gain fork, in-place edit-and-rerun, steering and usage-limit handling where the agent supports them.

- Native Claude Code (`claude` stream-json) and Codex (`codex app-server`) drivers, each served to the task machinery as an in-process ACP shim, using the newest install on PATH.
- ACP v2 with v1 fallback, negotiated on initialize; per-agent capabilities (fork, rollback, steer) so the UI only shows supported actions; usage-limit errors put the task in a `limited` status with the reset time.
- Settings › Tools › Agents lists Registry agents (featured first) to install, update and remove; installed agents update when a project opens. "More agents…" in the provider picker opens it. Registry index and downloads are HTTPS-only, release archives are checked against their sha256, and entries without one show "No checksum provided" and ask for confirmation before installing. Package names from the registry can't be passed as options to npm/uv.

Claude-Session: https://claude.ai/code/session_01Dq6jQQn8ZhRfkkyj3PRutA
2026-10-29 07:50:04 +08:00

30 lines
13 KiB
JSON

{"scenario":"interrupt","source":"recorded from codex-cli 0.146.0","type":"meta"}
{"dir":"out","frame":{"id":1,"jsonrpc":"2.0","method":"initialize","params":{"capabilities":{"experimentalApi":true,"optOutNotificationMethods":["turn/diff/updated"]},"clientInfo":{"name":"openidea","title":"OpenIDEA","version":"0.1.22"}}}}
{"dir":"in","frame":{"id":1,"result":{"codexHome":"<home>/.codex","platformFamily":"unix","platformOs":"macos","userAgent":"openidea/0.146.0 (Mac OS 26.3.1; arm64) unknown (openidea; 0.1.22)"}}}
{"dir":"out","frame":{"jsonrpc":"2.0","method":"initialized"}}
{"dir":"out","frame":{"id":2,"jsonrpc":"2.0","method":"model/list","params":{"cursor":null}}}
{"dir":"in","frame":{"emittedAtMs":1793193097356,"method":"remoteControl/status/changed","params":{"environmentId":null,"installationId":"<installation>","serverName":"<host>","status":"disabled"}}}
{"dir":"in","frame":{"id":2,"result":{"data":[{"additionalSpeedTiers":["fast"],"availabilityNux":{"message":"Our most capable model yet. GPT-5.6 Sol can tackle complex code changes, dig into research, produce polished documents, and take on your most ambitious work. Sol is highly capable at lower reasoning efforts—try starting lower, then turn it up for harder jobs."},"defaultReasoningEffort":"low","defaultServiceTier":null,"description":"Latest frontier agentic coding model.","displayName":"GPT-5.6-Sol","hidden":false,"id":"gpt-5.6-sol","inputModalities":["text","image"],"isDefault":true,"model":"gpt-5.6-sol","serviceTiers":[{"description":"1.5x speed, increased usage","id":"priority","name":"Fast"}],"supportedReasoningEfforts":[{"description":"Fast responses with lighter reasoning","reasoningEffort":"low"},{"description":"Balances speed and reasoning depth for everyday tasks","reasoningEffort":"medium"},{"description":"Greater reasoning depth for complex problems","reasoningEffort":"high"},{"description":"Extra high reasoning depth for complex problems","reasoningEffort":"xhigh"},{"description":"Maximum reasoning depth for the hardest problems","reasoningEffort":"max"},{"description":"Maximum reasoning with automatic task delegation","reasoningEffort":"ultra"}],"supportsPersonality":false,"upgrade":null,"upgradeInfo":null},{"additionalSpeedTiers":["fast"],"availabilityNux":null,"defaultReasoningEffort":"medium","defaultServiceTier":null,"description":"Balanced agentic coding model for everyday work.","displayName":"GPT-5.6-Terra","hidden":false,"id":"gpt-5.6-terra","inputModalities":["text","image"],"isDefault":false,"model":"gpt-5.6-terra","serviceTiers":[{"description":"1.5x speed, increased usage","id":"priority","name":"Fast"}],"supportedReasoningEfforts":[{"description":"Fast responses with lighter reasoning","reasoningEffort":"low"},{"description":"Balances speed and reasoning depth for everyday tasks","reasoningEffort":"medium"},{"description":"Greater reasoning depth for complex problems","reasoningEffort":"high"},{"description":"Extra high reasoning depth for complex problems","reasoningEffort":"xhigh"},{"description":"Maximum reasoning depth for the hardest problems","reasoningEffort":"max"},{"description":"Maximum reasoning with automatic task delegation","reasoningEffort":"ultra"}],"supportsPersonality":false,"upgrade":null,"upgradeInfo":null},{"additionalSpeedTiers":["fast"],"availabilityNux":null,"defaultReasoningEffort":"medium","defaultServiceTier":null,"description":"Fast and affordable agentic coding model.","displayName":"GPT-5.6-Luna","hidden":false,"id":"gpt-5.6-luna","inputModalities":["text","image"],"isDefault":false,"model":"gpt-5.6-luna","serviceTiers":[{"description":"1.5x speed, increased usage","id":"priority","name":"Fast"}],"supportedReasoningEfforts":[{"description":"Fast responses with lighter reasoning","reasoningEffort":"low"},{"description":"Balances speed and reasoning depth for everyday tasks","reasoningEffort":"medium"},{"description":"Greater reasoning depth for complex problems","reasoningEffort":"high"},{"description":"Extra high reasoning depth for complex problems","reasoningEffort":"xhigh"},{"description":"Maximum reasoning depth for the hardest problems","reasoningEffort":"max"}],"supportsPersonality":false,"upgrade":null,"upgradeInfo":null},{"additionalSpeedTiers":["fast"],"availabilityNux":{"message":"GPT-5.5 is now available in Codex. It's our strongest agentic coding model yet, built to reason through large codebases, check assumptions with tools, and keep going until the work is done.\n\nLearn more: https://openai.com/index/introducing-gpt-5-5/\n\n"},"defaultReasoningEffort":"medium","defaultServiceTier":null,"description":"Frontier model for complex coding, research, and real-world work.","displayName":"GPT-5.5","hidden":false,"id":"gpt-5.5","inputModalities":["text","image"],"isDefault":false,"model":"gpt-5.5","serviceTiers":[{"description":"1.5x speed, increased usage","id":"priority","name":"Fast"}],"supportedReasoningEfforts":[{"description":"Fast responses with lighter reasoning","reasoningEffort":"low"},{"description":"Balances speed and reasoning depth for everyday tasks","reasoningEffort":"medium"},{"description":"Greater reasoning depth for complex problems","reasoningEffort":"high"},{"description":"Extra high reasoning depth for complex problems","reasoningEffort":"xhigh"}],"supportsPersonality":true,"upgrade":null,"upgradeInfo":null},{"additionalSpeedTiers":[],"availabilityNux":null,"defaultReasoningEffort":"medium","defaultServiceTier":null,"description":"Optimized for professional work and long-running agents.","displayName":"GPT-5.2","hidden":false,"id":"gpt-5.2","inputModalities":["text","image"],"isDefault":false,"model":"gpt-5.2","serviceTiers":[],"supportedReasoningEfforts":[{"description":"Balances speed with some reasoning; useful for straightforward queries and short explanations","reasoningEffort":"low"},{"description":"Provides a solid balance of reasoning depth and latency for general-purpose tasks","reasoningEffort":"medium"},{"description":"Maximizes reasoning depth for complex or ambiguous problems","reasoningEffort":"high"},{"description":"Extra high reasoning for complex problems","reasoningEffort":"xhigh"}],"supportsPersonality":false,"upgrade":null,"upgradeInfo":null}],"nextCursor":null}}}
{"dir":"out","frame":{"id":3,"jsonrpc":"2.0","method":"thread/start","params":{"cwd":"<workspace>"}}}
{"dir":"in","frame":{"id":3,"result":{"activePermissionProfile":{"extends":null,"id":":read-only"},"approvalPolicy":"on-request","approvalsReviewer":"user","cwd":"<workspace>","instructionSources":[],"model":"gpt-6-luna","modelProvider":"openai","multiAgentMode":"explicitRequestOnly","reasoningEffort":"medium","runtimeWorkspaceRoots":["<workspace>"],"sandbox":{"networkAccess":false,"type":"readOnly"},"serviceTier":null,"thread":{"agentNickname":null,"agentRole":null,"canAcceptDirectInput":true,"cliVersion":"0.146.0","createdAt":1793193097,"cwd":"<workspace>","ephemeral":false,"extra":null,"forkedFromId":null,"gitInfo":null,"historyMode":"legacy","id":"01a182a3-389b-7cc1-9d8b-54e53a438abf","isPinned":false,"modelProvider":"openai","name":null,"parentThreadId":null,"path":"<home>/.codex/sessions/2026/10/28/rollout-2026-10-28T21-11-37-01a182a3-389b-7cc1-9d8b-54e53a438abf.jsonl","preview":"","recencyAt":1793193097,"sessionId":"01a182a3-389b-7cc1-9d8b-54e53a438abf","source":"vscode","status":{"type":"idle"},"threadSource":null,"turns":[],"updatedAt":1793193097}}}}
{"dir":"in","frame":{"emittedAtMs":1793193097566,"method":"thread/started","params":{"thread":{"agentNickname":null,"agentRole":null,"canAcceptDirectInput":true,"cliVersion":"0.146.0","createdAt":1793193097,"cwd":"<workspace>","ephemeral":false,"extra":null,"forkedFromId":null,"gitInfo":null,"historyMode":"legacy","id":"01a182a3-389b-7cc1-9d8b-54e53a438abf","isPinned":false,"modelProvider":"openai","name":null,"parentThreadId":null,"path":"<home>/.codex/sessions/2026/10/28/rollout-2026-10-28T21-11-37-01a182a3-389b-7cc1-9d8b-54e53a438abf.jsonl","preview":"","recencyAt":1793193097,"sessionId":"01a182a3-389b-7cc1-9d8b-54e53a438abf","source":"vscode","status":{"type":"idle"},"threadSource":null,"turns":[],"updatedAt":1793193097}}}}
{"dir":"out","frame":{"id":4,"jsonrpc":"2.0","method":"turn/start","params":{"approvalPolicy":"on-request","effort":"medium","input":[{"text":"Count to five.","type":"text"}],"model":"gpt-6-luna","sandboxPolicy":{"type":"readOnly"},"summary":"auto","threadId":"01a182a3-389b-7cc1-9d8b-54e53a438abf"}}}
{"dir":"in","frame":{"emittedAtMs":1793193097567,"method":"mcpServer/startupStatus/updated","params":{"error":null,"failureReason":null,"name":"computer-use","status":"starting","threadId":"01a182a3-389b-7cc1-9d8b-54e53a438abf"}}}
{"dir":"in","frame":{"emittedAtMs":1793193097567,"method":"mcpServer/startupStatus/updated","params":{"error":null,"failureReason":null,"name":"node_repl","status":"starting","threadId":"01a182a3-389b-7cc1-9d8b-54e53a438abf"}}}
{"dir":"in","frame":{"emittedAtMs":1793193097567,"method":"mcpServer/startupStatus/updated","params":{"error":null,"failureReason":null,"name":"cua_repl","status":"starting","threadId":"01a182a3-389b-7cc1-9d8b-54e53a438abf"}}}
{"dir":"in","frame":{"id":4,"result":{"turn":{"completedAt":null,"durationMs":null,"error":null,"id":"01a182a3-3963-7bf3-933d-9960d5c06a77","items":[],"itemsView":"notLoaded","startedAt":null,"status":"inProgress"}}}}
{"dir":"in","frame":{"emittedAtMs":1793193097583,"method":"thread/settings/updated","params":{"threadId":"01a182a3-389b-7cc1-9d8b-54e53a438abf","threadSettings":{"activePermissionProfile":null,"approvalPolicy":"on-request","approvalsReviewer":"user","collaborationMode":{"mode":"default","settings":{"developer_instructions":null,"model":"gpt-6-luna","reasoning_effort":"medium"}},"cwd":"<workspace>","effort":"medium","model":"gpt-6-luna","modelProvider":"openai","multiAgentMode":"explicitRequestOnly","personality":"pragmatic","sandboxPolicy":{"networkAccess":false,"type":"readOnly"},"serviceTier":null,"summary":"auto"}}}}
{"dir":"in","frame":{"emittedAtMs":1793193097583,"method":"warning","params":{"message":"Model metadata for `gpt-6-luna` not found. Defaulting to fallback metadata; this can degrade performance and cause issues.","threadId":"01a182a3-389b-7cc1-9d8b-54e53a438abf"}}}
{"dir":"in","frame":{"emittedAtMs":1793193097598,"method":"thread/status/changed","params":{"status":{"activeFlags":[],"type":"active"},"threadId":"01a182a3-389b-7cc1-9d8b-54e53a438abf"}}}
{"dir":"in","frame":{"emittedAtMs":1793193097598,"method":"turn/started","params":{"threadId":"01a182a3-389b-7cc1-9d8b-54e53a438abf","turn":{"completedAt":null,"durationMs":null,"error":null,"id":"01a182a3-3963-7bf3-933d-9960d5c06a77","items":[],"itemsView":"notLoaded","startedAt":1793193097,"status":"inProgress"}}}}
{"dir":"out","frame":{"id":5,"jsonrpc":"2.0","method":"turn/interrupt","params":{"threadId":"01a182a3-389b-7cc1-9d8b-54e53a438abf","turnId":"01a182a3-3963-7bf3-933d-9960d5c06a77"}}}
{"dir":"in","frame":{"emittedAtMs":1793193097602,"method":"hook/started","params":{"run":{"completedAt":null,"displayOrder":4,"durationMs":null,"entries":[],"eventName":"userPromptSubmit","executionMode":"sync","handlerType":"command","id":"user-prompt-submit:4:<home>/.codex/hooks.json","scope":"turn","source":"user","sourcePath":"<home>/.codex/hooks.json","startedAt":1793193097,"status":"running","statusMessage":null},"threadId":"01a182a3-389b-7cc1-9d8b-54e53a438abf","turnId":"01a182a3-3963-7bf3-933d-9960d5c06a77"}}}
{"dir":"in","frame":{"emittedAtMs":1793193097623,"method":"hook/completed","params":{"run":{"completedAt":1793193097,"displayOrder":4,"durationMs":17,"entries":[],"eventName":"userPromptSubmit","executionMode":"sync","handlerType":"command","id":"user-prompt-submit:4:<home>/.codex/hooks.json","scope":"turn","source":"user","sourcePath":"<home>/.codex/hooks.json","startedAt":1793193097,"status":"completed","statusMessage":null},"threadId":"01a182a3-389b-7cc1-9d8b-54e53a438abf","turnId":"01a182a3-3963-7bf3-933d-9960d5c06a77"}}}
{"dir":"in","frame":{"emittedAtMs":1793193097624,"method":"item/started","params":{"item":{"clientId":null,"content":[{"text":"Count to five.","text_elements":[],"type":"text"}],"id":"01a182a3-3997-79e2-8208-98695150d5e4","type":"userMessage"},"startedAtMs":1793193097623,"threadId":"01a182a3-389b-7cc1-9d8b-54e53a438abf","turnId":"01a182a3-3963-7bf3-933d-9960d5c06a77"}}}
{"dir":"in","frame":{"emittedAtMs":1793193097624,"method":"item/completed","params":{"completedAtMs":1793193097623,"item":{"clientId":null,"content":[{"text":"Count to five.","text_elements":[],"type":"text"}],"id":"01a182a3-3997-79e2-8208-98695150d5e4","type":"userMessage"},"threadId":"01a182a3-389b-7cc1-9d8b-54e53a438abf","turnId":"01a182a3-3963-7bf3-933d-9960d5c06a77"}}}
{"dir":"in","frame":{"id":5,"result":{}}}
{"dir":"in","frame":{"emittedAtMs":1793193097628,"method":"thread/status/changed","params":{"status":{"type":"idle"},"threadId":"01a182a3-389b-7cc1-9d8b-54e53a438abf"}}}
{"dir":"in","frame":{"emittedAtMs":1793193097628,"method":"turn/completed","params":{"threadId":"01a182a3-389b-7cc1-9d8b-54e53a438abf","turn":{"completedAt":1793193097,"durationMs":48,"error":null,"id":"01a182a3-3963-7bf3-933d-9960d5c06a77","items":[],"itemsView":"notLoaded","startedAt":1793193097,"status":"interrupted"}}}}
{"dir":"in","frame":{"emittedAtMs":1793193097738,"method":"mcpServer/startupStatus/updated","params":{"error":null,"failureReason":null,"name":"computer-use","status":"ready","threadId":"01a182a3-389b-7cc1-9d8b-54e53a438abf"}}}
{"dir":"in","frame":{"emittedAtMs":1793193097751,"method":"mcpServer/startupStatus/updated","params":{"error":null,"failureReason":null,"name":"node_repl","status":"ready","threadId":"01a182a3-389b-7cc1-9d8b-54e53a438abf"}}}