Files
orca/docs/readme/README.pt.md
T
Neil 90801e2deb feat(agents): add first-class ZCode harness (#22464)
* feat(agents): add first-class ZCode harness

Add ZCode (Z.ai's `zcode` CLI) as a supervised Orca agent: managed lifecycle
hooks on local, SSH and Windows hosts; status, question and approval reporting;
synthetic status titles; session resume; orchestration worker launch options;
and desktop + mobile agent-picker registration.

Written against the newly open-sourced `zai-org/ZCode` (agent CLI 0.16.9), not
against a remembered screen:

- ZCode's hook runner writes a Claude-compatible stdin alias set, so it routes
  through the existing Claude-compatible vendor path while keeping its own
  identity in the sidebar.
- `PermissionRequest` fires only once the approval card is on screen and racing
  the user's answer, so it is proof the pane is blocked, not an auto-approval.
- ZCode's clarification tool is literally `AskUserQuestion` with Claude's
  questions/options shape, so Orca's question card renders it unchanged.
- ZCode's `hooks.enabled` defaults to false, which is why configured hooks were
  reported as never firing; the installer sets it.
- ZCode renames its own process to `zcode-cli`, so the expected foreground
  process cannot be the launch command or dispatch refuses the pane.
- ZCode emits no OSC title in any state and repaints its ASCII banner forever,
  so readiness comes from Orca's synthetic hook title and launch drafts wait on
  the composer box rather than on a quiet render window.

Three files crossed their max-lines limit, so each is split along a real seam:
command-line entrypoint parsing out of agent process recognition, skill
classification out of skill root discovery, and registry coverage out of the
remote hook installer tests.

Refs #10564

* fix(zcode): drop the session-option catalog and pin the orchestration contract

ZCode's CLI exposes no `--model` flag at all, and the session-option launch path
refuses to apply any option until a model id is chosen. A catalog therefore could
not deliver `--mode` per worker, and would have accepted `--model` only to drop
it silently. Take opencode's position instead: no catalog, so `worker-start
--model` is refused with a clear message and ZCode launches with the model from
its own config. `--mode` stays reachable through agent args, which is also how
the yolo default is applied.

Add a contract test covering the parts that make ZCode a usable worker:
dispatchable foreground process, stdin prompt delivery, the prompt staying out
of the launch command, and the composer-gated draft paste.

* refactor(zcode): reuse shared helpers and cut the harness down

No behaviour change; every ZCode test still passes.

- Use installer-utils' own `hookDefinitionHasManagedCommand` instead of
  re-walking a hook definition by hand, which also drops a local string reader.
- Share one `readZCodeEventMap` instead of keeping the same narrowing in both
  hook-settings and hook-config-json.
- Collapse five identical error returns into one `zcodeHookError` builder, and
  return early from the status branches instead of assigning through `let`.
- Split the event-to-status decision out of `normalizeZCodeEvent` into a pure
  `readZCodeTurn`, so the normalizer reads as decide-then-build and stops
  computing the tool name for events that never look at it.
- Take a script file name in `readManagedZCodeHookEvents` like its siblings,
  which removes a `Parameters<typeof …>` indirection at the call site.
- Drop the unused `ZCodeHookEvent` export and inline a single-use path helper.
- Correct a stale comment: ZCode's loader is a strict `JSON.parse`, so the
  in-place edit preserves key order and indentation, not comments.

* fix(zcode): address review — keep unmanaged event keys, correct comment, de-dupe README

- `removeZCodeManagedHooks` deleted any event key whose list ended up empty, so an
  unrelated `"Notification": []` the user wrote was removed as collateral whenever a
  managed hook elsewhere made the write happen. Only touch an event Orca actually
  owned something in; covered by a new regression test.
- The `isNewTurnEvent` comment claimed UserPromptSubmit was ZCode's only turn
  boundary while the expression below it also returned true for SessionStart. Say
  what the code does: SessionStart lands the idle boundary, UserPromptSubmit is the
  turn boundary (the Codex/Claude shape).
- ZCode appeared twice in the README's single agent-badge block; keep the
  local-icon entry the link checker validates and drop the favicon duplicate.

* docs(zcode): call out that the desktop bundle's CLI cannot open a session

From live testing on #22464: pointing `zcode` at the desktop app's bundled
`glm/zcode.cjs` installs Orca's hooks fine but then fails with
`Cannot find package '@zcode/tui'`, so the pane never opens a session. The
symptom reads as a broken harness when the CLI simply has no TUI. Say which
build to use and how to check before reporting a problem.

Reported-by: JWu527
2026-09-25 02:17:51 -07:00

17 KiB

Orca Orca

Estrelas no GitHub Total de downloads em todas as versões Licença: MIT Entre no Discord do Orca Siga o Orca no X Plataformas compatíveis: macOS, Windows e Linux

English · 中文 · 日本語 · 한국어 · Español · Français

O orquestrador de IA para builders 100x.
Rode Codex, ClaudeCode, OpenCode ou Pi lado a lado — cada um em seu próprio worktree, acompanhado em um só lugar.

Baixar o Orca

App desktop do Orca executando agentes em worktrees paralelos, com o app companion móvel do Orca no canto

Recursos

Companion móvel

Monitore e conduza seus agentes pelo celular — receba uma notificação quando um agente terminar e envie instruções de acompanhamento de qualquer lugar.

App Store para iOS · TestFlight · APK Android 0.0.50 · Docs →

Orca desktop com o app companion móvel

Worktrees paralelos

Envie um mesmo prompt para cinco agentes, cada um em seu próprio worktree git isolado — compare os resultados e faça merge do vencedor.

Docs →

Orquestração de worktrees paralelos

Terminais divididos

Terminais no nível do Ghostty com renderização WebGL, divisões infinitas e scrollback que sobrevive a reinicializações.

Docs →

Terminais divididos

Modo Design

Clique em qualquer elemento de UI em uma janela real do Chromium para enviar HTML, CSS e uma captura recortada direto para o prompt do seu agente.

Docs →

Navegador integrado e Modo Design

GitHub e Linear nativos

Navegue por PRs, issues e quadros de projeto dentro do app — abra um worktree a partir de qualquer tarefa e revise sem trocar de contexto.

Docs →

Fluxos de trabalho de tarefas do GitHub e Linear no Orca

Worktrees por SSH

Execute agentes em uma máquina remota potente com edição completa de arquivos, git e terminais — com reconexão automática e encaminhamento de portas incluídos.

Docs →

Worktrees remotos por SSH

Anotar diffs de IA

Deixe comentários em qualquer linha de diff e envie-os de volta ao agente — revise, edite e faça commit sem sair do Orca.

Docs →

Anotar diffs gerados por IA

Arraste arquivos para agentes

O editor do VS Code com salvamento automático em todos os lugares — arraste arquivos ou imagens direto para o prompt de um agente.

Docs →

Arraste arquivos e imagens para o prompt de um agente

Orca CLI

Agentes também controlam o Orca — automatize qualquer fluxo de trabalho com orca worktree create, snapshot, click e fill.

Docs →

Automatize o Orca pela CLI

Também incluído:

  • Abertura rápida — Pesquise entre worktrees, arquivos, agentes, comandos e contexto do repositório sem sair do seu fluxo.
  • Troca de contas e acompanhamento de uso — Veja o uso de Claude e Codex, os reinícios de limites e troque contas instantaneamente sem fazer login de novo.
  • Prévias ricas do repositório — Pré-visualize Markdown, imagens, PDFs e documentos do repositório no workspace.
  • Computer Use — Deixe agentes operarem apps de desktop e UI visível quando um fluxo de trabalho precisa de interação real.
  • Notificações e estado de não lido — Saiba quando um agente termina ou precisa de atenção, depois marque conversas como não lidas para voltar depois.
  • E muito, muito mais — lançamos novidades todos os dias, então esta lista vive atrasada. O changelog é a lista real de recursos.

Agentes compatíveis

Funciona com qualquer agente CLI — se roda em um terminal, roda no Orca.

Logotipo do Claude Code Claude Code   Logotipo do Codex Codex   Logotipo do Grok Grok   Logotipo do Cursor Cursor   Logotipo do GitHub Copilot GitHub Copilot   Logotipo do Muse Muse   Logotipo do ZCode ZCode   Logotipo do OpenCode OpenCode   Logotipo do MiMo Code MiMo Code   Logotipo do Amp Amp   Logotipo do OpenClaude OpenClaude   Logotipo do Antigravity Antigravity   Logotipo do Pi Pi   Logotipo do oh-my-pi oh-my-pi   Logotipo do Hermes Agent Hermes Agent   Logotipo do Devin Devin   Logotipo do Goose Goose   Logotipo do Auggie Auggie   Logotipo do Autohand Code Autohand Code   Logotipo do Charm Charm   Logotipo do Cline Cline   Logotipo do Codebuff Codebuff   Logotipo do Command Code Command Code   Logotipo do Continue Continue   Logotipo do Droid Droid   Logotipo do Kilocode Kilocode   Logotipo do Kimi Kimi   Logotipo do Kiro Kiro   Logotipo do Mistral Vibe Mistral Vibe   Logotipo do Qwen Code Qwen Code   Logotipo do Rovo Dev Rovo Dev   + qualquer agente CLI


Instalação

Desktop — macOS, Windows, Linux

Ou por um gerenciador de pacotes:

# macOS (Homebrew)
brew install --cask stablyai/orca/orca

# Arch Linux (AUR) — ou stably-orca-git para compilar a partir do código-fonte
yay -S stably-orca-bin

Companion móvel — iOS, Android

Conecte ao app desktop para monitorar e conduzir seus agentes pelo celular.


Comunidade e suporte


Desenvolvimento

Quer contribuir ou rodar localmente? Veja nosso guia CONTRIBUTING.md.

Contribuidores do Orca

Licença

Orca é livre e de código aberto sob a Licença MIT.