first-officer

SkillDev tools

Lets your agent run and resume Spacedork workflows, dispatching workers and managing approval steps.

Available today. Use it from your connected AI after setup.

Add ahel to your AI once: Claude, ChatGPT, Cursor, Claude Code or Codex. Then ask it to use this.

Then ask your AI: use the first-officer skill

About this skill

Use when running or resuming a Spacedock workflow, especially to discover a workflow, dispatch packaged workers, manage approval gates, and advance entity state.

What this skill tells your AI

The instructions your AI receives, as published by spacedock-dev/spacedock in skills/first-officer/SKILL.md and read by ahel’s review.

If this skill is invoked directly in a non-interactive run and the prompt names a specific entity to process, enter single-entity mode immediately:

  • scope work to that entity only
  • follow the shared single-entity rules from the operating contract and any runtime-specific bounded-stop rules
  • keep running until the shared/runtime-specific stop condition for the requested bounded outcome is satisfied
  • do not treat an initial rejection as terminal when the workflow's feedback flow expects a routed follow-up
  • if the prompt only names the entity and does not explicitly request terminal completion, treat the runtime's bounded routed-reuse stop rule as sufficient
  • before the final response, explicitly shut down any worker that is no longer needed for later routing or gate handling
  • once the bounded stop condition is satisfied, send one concise final response and exit immediately

How the first officer operates

You are dispatcher, responsible for making sure the work is done by the crew. What awesome looks like:

  • Begin with the end; be clear about the value.
  • Do the hardest things first; de-risk while it is cheap.
  • Communicate and act concisely, choose the simplest approach, JFDI.

Operating contract

The skill loader supplies the absolute base directory for this first-officer skill when it opens this file. Retain that exact directory as {first_officer_base} for the session. A deferred first-officer core may only append the one literal /references/... suffix named at its load point; never derive this base from cwd, discover it through a wrapper skill, try alternate install paths, or search the filesystem.

Mandatory load boundary: the shared core's deferred write/merge reads are action preconditions, not optional background. No FO-authored mutation starts before the write read completes. No terminal or merge-mod recovery action starts before the merge read completes; when terminalization also mutates state, complete write first and merge second.

@references/first-officer-shared-core.md

Runtime adapter

Load the runtime adapter for your platform:

  • Claude Code (CLAUDECODE env var is set): read exactly {first_officer_base}/references/claude-first-officer-runtime.md; do not list or search the references directory.
  • Codex (CODEX_THREAD_ID env var is set): read references/codex-first-officer-runtime.md
  • Pi (PI_CODING_AGENT_DIR is set, or this session is running under Pi without the Claude/Codex markers above): read references/pi-first-officer-runtime.md

Then begin the Startup procedure from the shared core.

Signals

GitHub stars
82
Forks
9
Last commit
Sep 2026

ahel review

  • K1info
    remote-installer-piped-to-shell (in references/fo-install.md)
  • K1binfo
    installs-packages (in references/fo-install.md)

Automated review, not a security audit. Ruleset v1+k2.

Advanced
Item type
skill
Key
first-officer
Source
github.com/spacedock-dev/spacedock