You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Allow Codex and Claude Code to delegate selected workers to Devin CLI. devin:swe-2@medium|high|max pins the corresponding SWE-2 UID; devin:swe-1.6@default pins swe-1-6. Setup supports these opt-in families without changing the default panel.
Check authentication, use exclusive per-run configuration and a private conversation export, and remove both on exit. Completion requires a final agent response in the export, so onboarding banners and progress text before rejected tools cannot become successful results. Only the final response is retained. Receipts record pinned-argv evidence and leave unreported model identity, session, usage, and cost unset.
Read-only workers deny writes and shell execution. Writers receive an explicit execution preface and edit files and run tests through sandboxed exec in their assigned worktree; direct write/edit tools are disabled because they require interactive approval in the current CLI. Unsupported model/effort pairs and account restrictions fail without fallback. Project configuration and startup hooks may still load.
Verification
188 Bun tests pass, including the Devin adapter, transcript completion/privacy, and cleanup cases.
Strict typecheck, static invariants, manifest parsing, Claude plugin validation, and git diff --check pass.
Exact candidate installed in both affected harnesses.
Changed behavior verified from both real application surfaces.
Installed version, actions, and observed results recorded below.
The original full-suite failure was a shared timing test with only 300 ms of subprocess startup headroom. The same test exists in the other branches and unchanged upstream. Test-only budgets now allow startup under load while preserving the shared-deadline, exit-code, and signal assertions. Production timeout behavior is unchanged.
Live evidence, 2026-09-16 on macOS: pstack 1.4.1, candidate 2623db594167851ca1ed1cd62bd82505a62901e0. All 168 installed files matched the committed snapshot in Codex CLI 0.154.0 and Claude Code 2.1.179, with Devin CLI 3000.10.27 (bcbe88c7).
Codex's installed run passed both model reads, exact file creation, a real arithmetic-code fix with its Bun test, blocked read-only file/shell attempts, an outside-workspace sandbox denial, and cancellation with output/config/export cleanup. Both read-only attempts correctly produced failed receipts rather than accepting incomplete progress text. Actual files and receipts were checked independently.
Claude's same-candidate run passed both model reads and the file-write denial before its account session limit stopped the parent and cancelled the remaining workers. The final Claude writer, shell-denial, outside-workspace, and cancellation checks remain incomplete until the quota resets. Earlier candidate runs do not satisfy this final-head gate. Final-head Claude validation remains outstanding.
The latest code appears safe to merge from a code-review perspective, with the remaining Claude installed validation appropriately tracked as a draft-release gate rather than an established implementation defect.
Summary
Adds optional Devin CLI workers for SWE-2 and SWE-1.6 without changing the default provider panel.
Pins supported model/effort combinations and rejects unsupported or account-gated selections without fallback.
Applies mode-specific permissions, private per-run configuration, sandboxed writer execution, and cleanup of temporary prompts and conversation exports.
Requires a valid final agent response in the private ATIF export before treating a run as complete.
Updates setup, dispatch, arena, and user-facing documentation for Devin routing and pinned-argv evidence.
Expands adapter and lifecycle tests, while increasing test-only subprocess timing budgets to reduce load-related flakes.
Diagram
sequenceDiagram
participant Parent as Claude Code / Codex
participant Runner as pstack-runner
participant Devin as Devin CLI
participant Export as Private ATIF export
Parent->>Runner: "provider=devin, model, effort, mode, prompt"
Runner->>Runner: Validate model/effort and reserve outputs
Runner->>Devin: auth status
Runner->>Runner: Create private config and export directory
Runner->>Devin: --model UID --sandbox/permissions --export --print
Devin->>Export: Write conversation export
Devin-->>Runner: Exit status and diagnostics
Runner->>Export: Validate final agent response
alt Complete final response
Runner-->>Parent: Output plus pinned-argv receipt
else Invalid, incomplete, or failed
Runner-->>Parent: Failed receipt without output
end
Runner->>Runner: Remove temporary config and export directory
@greptileai Please re-review the latest commit, 483765c. It fixes the parent completion contract to accept Devin pinned-argv receipts. The validation section also now records successful live source-runner smoke tests for both SWE models and the remaining installed-harness checks.
@greptileai please review the latest head. The validation follow-ups are pushed; the PR remains draft pending the final Claude Code quota reset and installed test.
Tick the box to add this pull request to the merge queue (same as @mergifyio queue).
Queue this pull request
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Closes #69
Changes
Allow Codex and Claude Code to delegate selected workers to Devin CLI.
devin:swe-2@medium|high|maxpins the corresponding SWE-2 UID;devin:swe-1.6@defaultpinsswe-1-6. Setup supports these opt-in families without changing the default panel.Check authentication, use exclusive per-run configuration and a private conversation export, and remove both on exit. Completion requires a final agent response in the export, so onboarding banners and progress text before rejected tools cannot become successful results. Only the final response is retained. Receipts record pinned-argv evidence and leave unreported model identity, session, usage, and cost unset.
Read-only workers deny writes and shell execution. Writers receive an explicit execution preface and edit files and run tests through sandboxed exec in their assigned worktree; direct write/edit tools are disabled because they require interactive approval in the current CLI. Unsupported model/effort pairs and account restrictions fail without fallback. Project configuration and startup hooks may still load.
Verification
git diff --checkpass.The original full-suite failure was a shared timing test with only 300 ms of subprocess startup headroom. The same test exists in the other branches and unchanged upstream. Test-only budgets now allow startup under load while preserving the shared-deadline, exit-code, and signal assertions. Production timeout behavior is unchanged.
Live evidence, 2026-09-16 on macOS: pstack
1.4.1, candidate2623db594167851ca1ed1cd62bd82505a62901e0. All 168 installed files matched the committed snapshot in Codex CLI0.154.0and Claude Code2.1.179, with Devin CLI3000.10.27 (bcbe88c7).Codex's installed run passed both model reads, exact file creation, a real arithmetic-code fix with its Bun test, blocked read-only file/shell attempts, an outside-workspace sandbox denial, and cancellation with output/config/export cleanup. Both read-only attempts correctly produced failed receipts rather than accepting incomplete progress text. Actual files and receipts were checked independently.
Claude's same-candidate run passed both model reads and the file-write denial before its account session limit stopped the parent and cancelled the remaining workers. The final Claude writer, shell-denial, outside-workspace, and cancellation checks remain incomplete until the quota resets. Earlier candidate runs do not satisfy this final-head gate. Final-head Claude validation remains outstanding.