Skip to main content

firstmate-orca

Load when switching to Orca, spawning or supervising Orca-backed work, smoke-testing Orca backend behavior, debugging Orca task state, or reconciling Orca-backed task metadata.

소스 정보

저장소
kunchenguid/firstmate
최근 소스 활동
2026년 10월 20일 18:13
감지된 SKILL.md 언어
영어
스타
8,398
포크
2,666

설치 방법

기본적으로 소스를 먼저 확인하는 Prompt가 선택됩니다. 직접 명령으로 전환하거나 로컬 사본을 다운로드할 수도 있습니다.

소스 파일 검토

설치 여부를 결정하기 전에 SKILL.md와 SkillsMP에 표시된 보조 파일을 읽어 보세요.

SKILL.md 표시 중

SKILL.md
소스 지침 · 읽기 전용 미리보기
name
firstmate-orca
description
Load when switching to Orca, spawning or supervising Orca-backed work, smoke-testing Orca backend behavior, debugging Orca task state, or reconciling Orca-backed task metadata.
user-invocable
false
metadata
{"internal":true}
# firstmate-orca Use this as the operator checklist for Firstmate's experimental Orca runtime backend. It does not replace `AGENTS.md`, `docs/orca-backend.md`, or `harness-adapters`. Orca is a runtime backend, not an agent harness. The runtime backend owns the task endpoint and, for Orca, the task worktree. The harness is the agent process launched inside that endpoint, such as `claude`, `codex`, `opencode`, `pi`, `pi-signed`, `grok`, or `kimi`. Load `harness-adapters` for harness-specific launch, interrupt, resume, trust-dialog, and skill-invocation facts. Implementation details, metadata fields, teardown guarantees, and limitations live in `docs/orca-backend.md`. `docs/verification/runtime-backends.md` "Orca" owns active smoke evidence. Prefer the `bin/fm-*` helpers over raw `orca` commands. Use raw `orca` only when the helper surface cannot answer the inspection question, and keep the recorded firstmate metadata as the task identity. ## Preflight Work from the current firstmate home or repo root. If `FM_HOME` is set, remember that operational state lives under `$FM_HOME` while the helper scripts still run from this repo's `bin/`. Before switching or spawning against Orca: - Confirm Orca is intentionally selected through `--backend orca`, `FM_BACKEND=orca`, or local `config/backend`. - Confirm the Orca app is running and the backend readiness checks pass before expecting spawn to work. - Inspect active `state/*.meta` records before changing backend selection. - Treat a backend switch as affecting future spawns only; existing tasks keep their recorded backend. - Reconcile watcher wakes before unrelated work, especially if Orca tasks are already in flight. ## Spawn Use `bin/fm-spawn.sh` so firstmate creates the brief, worktree, terminal, metadata, status file, and watcher surface together. Pass `--backend orca` for a one-off Orca task, or rely on the already-selected Orca backend when that selection is intentional. After spawn, check the task with firstmate helpers: - `bin/fm-peek.sh fm-<id>` for launch failures, trust dialogs, or first output. - `state/<id>.meta` for `backend=orca`, `terminal=`, `orca_worktree_id=`, and `worktree=`. - `bin/fm-crew-state.sh <id>` when the current run state matters. - `bin/fm-watch.sh` whenever there are tasks in flight and this session owns supervision. Do not manually create the Orca worktree or terminal for a normal firstmate task. Do not manually patch metadata to make an externally-created Orca terminal look like a firstmate task. ## Supervision Use `bin/fm-peek.sh`, `bin/fm-send.sh`, `bin/fm-crew-state.sh`, and `bin/fm-teardown.sh` for routine operation. For steer messages, use `bin/fm-send.sh <id> '...'`; the stable `fm-<id>` alias also works, and ordinary local text steers may contain newlines because they ride the durable inbox. Keep initial scope in the task brief; a temporary file remains useful when the instruction includes supporting material the worker should inspect separately. When supervising, treat `state/<id>.meta` as the routing record and Orca's own ids as backend implementation details. The stable firstmate alias is `fm-<id>`. The recorded `terminal=` and `orca_worktree_id=` fields are what backend helpers use under the hood. If an ordinary steer fails to enqueue, or a typed-plane `fm-send` fails to submit, do not immediately repeat the instruction. Read the reported failure and peek first, then decide whether the record exists or the target is busy, waiting on a prompt, stuck behind a popup, or genuinely wedged. For harness-specific interrupts or exits, load `harness-adapters`. ## Recovery For a messy Orca-backed task: 1. Read `state/<id>.meta` and the relevant status tail first. 2. Confirm the task is actually Orca-backed before using Orca-specific assumptions. 3. Use the recorded `terminal=`, `orca_worktree_id=`, and `worktree=` as the task identity. 4. Prefer firstmate helpers for peek, send, state, and teardown. 5. Avoid raw deletion of Orca worktrees or manual branch cleanup. 6. Stop and inspect if the recorded worktree path, Orca worktree id, or project checkout no longer matches expectations. Teardown remains governed by the normal firstmate landing rules. Scout work can be torn down after the report exists and the `captain-hold-lifecycle` completion gate passes. Ship work can be torn down only after the work is landed by its project mode. ## Smoke Test Keep Orca smoke tests focused on lifecycle plumbing: 1. Select Orca intentionally for a disposable task or scout. 2. Spawn through `bin/fm-spawn.sh`. 3. Confirm metadata records the Orca backend, terminal, Orca worktree id, and isolated worktree path. 4. Verify `bin/fm-peek.sh`, a short `bin/fm-send.sh` steer, watcher wake behavior, and `bin/fm-crew-state.sh`. 5. Tear down through `bin/fm-teardown.sh` after the task is safely disposable or landed. 6. Restore the previous backend selection if Orca was selected only for the smoke test. Do not mix a backend smoke test with unrelated feature work.
GitHub에서 보기