Files
orca/src/shared/tui-agent.ts
T
Neil 070572bfd7 refactor(shared): split shared/types.ts into per-domain type modules (#14397)
`src/shared/types.ts` was 3,981 raw lines (2,825 counted, 9.4x the 300-line
budget) behind an `eslint-disable max-lines`, and is imported by 2,092 files —
the single widest contract surface in the repo.

Move all 320 top-level declarations into 46 per-domain modules
(`repo-types.ts`, `worktree-types.ts`, `github-pr-types.ts`, ...) and reduce
`types.ts` to an explicit re-export barrel, so the 2,092 import sites are
untouched.

`HostSettingOverrides` moves into the pre-existing `host-setting-overrides.ts`
alongside the accessors that operate on it, which also removes that module's
circular import back into `types.ts`.

Named re-exports only, never `export type *`: with star re-exports a name
exported by two modules is silently dropped, which would surface as a confusing
"has no exported member" at a random call site.

Verified lossless mechanically, not by inspection:
- export parity — the module's resolved export set through the TS checker is
  identical before and after (396 names, no additions, no removals)
- declaration parity — all 320 declarations compare character-identical modulo
  comments and whitespace, so no optionality, union order, or generic
  parameter drifted
- `tsc --noEmit` green on the node, cli, and web projects
- `oxfmt --write` is byte-identical, so the barrel is format-stable

Drops the `max-lines` bypass and its baseline entry (ratchet 346 -> 345).
2026-08-13 20:34:31 -07:00

40 lines
1.2 KiB
TypeScript

/** All AI coding agents Orca knows how to launch. Used for the agent picker in the new-workspace
* flow and for the default-agent setting. Extend this union as new agents are added. */
export type TuiAgent =
| 'claude' // Claude Code
| 'claude-agent-teams' // Claude Code Agent Teams via Orca native panes
| 'openclaude' // OpenClaude
| 'codex' // OpenAI Codex
| 'autohand' // Autohand Code CLI
| 'opencode' // OpenCode
| 'mimo-code'
| 'pi' // Pi (pi.dev)
| 'omp' // OMP (omp.sh)
| 'gemini' // Gemini CLI
| 'antigravity' // Google Antigravity CLI
| 'aider' // Aider
| 'goose' // Goose
| 'amp' // Amp
| 'kilo' // Kilocode
| 'kiro' // Kiro
| 'crush' // Charm/Crush
| 'aug' // Augment/Auggie
| 'cline' // Cline
| 'codebuff' // Codebuff
| 'command-code' // Command Code
| 'continue' // Continue
| 'cursor' // Cursor
| 'droid' // Factory Droid
| 'kimi' // Kimi
| 'mistral-vibe' // Mistral Vibe
| 'qwen-code' // Qwen Code
| 'rovo' // Rovo Dev
| 'hermes' // Hermes Agent
| 'openclaw' // OpenClaw
| 'copilot' // GitHub Copilot CLI
| 'grok' // xAI Grok CLI
| 'devin' // Devin CLI
| 'ante' // Ante (Antigma Labs)
| 'trae' // Trae CLI
| 'prime-agent' // Prime Agent (Prime Intellect)