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
After #2 makes Devin first-class, users need the same setup/configuration path as Claude Code and Codex. The frontend must consume Rust catalog capabilities and generic ACP data; it must not grow a second Devin capability table.
Read desktop/src/features/agents/AGENTS.md before editing configuration behavior. Harness capability facts originate in KnownAcpRuntime and are projected over IPC.
focused Devin config fixtures: valid, missing, malformed, JSONC, and redaction
desktop/src/features/onboarding/ui/presetLogos.test.mjs or renamed built-in-logo guard
Suggested verification
. ./bin/activate-hermit
cargo test --manifest-path desktop/src-tauri/Cargo.toml agent_models
cargo test --manifest-path desktop/src-tauri/Cargo.toml config_bridge
cd desktop
pnpm test
pnpm check
pnpm test:e2e:smoke
Use pnpm build:e2e, never a plain production build, for manual mock-mode Playwright. Run just ci before handoff.
Tracked by #6. Blocked by #2.
Why this issue exists
After #2 makes Devin first-class, users need the same setup/configuration path as Claude Code and Codex. The frontend must consume Rust catalog capabilities and generic ACP data; it must not grow a second Devin capability table.
Read
desktop/src/features/agents/AGENTS.mdbefore editing configuration behavior. Harness capability facts originate inKnownAcpRuntimeand are projected over IPC.Current touchpoints
desktop/src/features/onboarding/ui/onboardingRuntimeSelection.tsdesktop/src/features/onboarding/ui/SetupStep.tsxdesktop/src/features/onboarding/ui/DefaultConfigStep.tsxdesktop/src/features/onboarding/ui/RuntimeIcon.tsxdesktop/src/features/settings/ui/harnessCatalogCopy.tsdesktop/src/features/settings/ui/HarnessCatalogDialog.tsxandharnessCatalogLogic.tsdesktop/src-tauri/src/commands/agent_models.rsandagent_model_process.rsdesktop/src-tauri/src/managed_agents/config_bridge/reader.rsdesktop/src-tauri/src/managed_agents/config_bridge/desktop/src/features/agents/lib/agentConfigCore.tsImplementation guidance
Onboarding/auth
devintoONBOARDING_RUNTIME_ORDER; this is the existing visibility policy, not render-time capability logic.RuntimeStatus, ACP auth-method queries, connect mutation, polling, retry, and generic errors inSetupStep.tsx.DefaultConfigStepremains the sole preferred-runtime persistence surface.Models and ACP aliases
configIdorid, labeldisplayNameorname, and selected/defaultcurrentValue.models.availableModels.DEVIN_MODELon respawn.Read-only config
desktop/src-tauri/src/managed_agents/config_bridge/devin.rs; register it inmod.rsandreader.rs.agent.model). If input is JSONC, use a bounded tested parser/helper; do not silently reinterpret malformed data.Catalog copy
Add one neutral vendor-sourced sentence following
harnessCatalogCopy.tspolicy. Reuse/harness-logos/devin.svg.Acceptance criteria
id/name/currentValueoptions show friendly names and the correct selected value.DEVIN_MODEL, with live/restart state accurately represented.runtime.id === "devin"capability logic.Tests to update
desktop/src/features/onboarding/ui/onboardingRuntimeSelection.test.mjsdesktop/tests/e2e/onboarding-agent-defaults.spec.tsdesktop/tests/e2e/harness-management.spec.tsdesktop/src/features/agents/lib/agentConfigCore.test.mjsdesktop/src/features/agents/ui/usePersonaModelDiscovery.test.mjsdesktop/src-tauri/src/commands/agent_models_tests.rsdesktop/src-tauri/src/managed_agents/config_bridge/reader_tests.rsdesktop/src/features/onboarding/ui/presetLogos.test.mjsor renamed built-in-logo guardSuggested verification
Use
pnpm build:e2e, never a plain production build, for manual mock-mode Playwright. Runjust cibefore handoff.Out of scope
References
desktop/src/features/agents/AGENTS.md