Ship an OpenSpec change after openspec-apply completes. When only QA/manual tasks remain, marks them done (tested later), archives + syncs specs, commits, pushes, opens a PR against develop, watches CI, waits for CodeRabbit, auto-applies safe fixes and re-pushes, loops until CI green + no actionable review threads, then squash-merges with branch delete and removes the worktree. Use after implementation is done and the change is ready to land. Triggers: "ship this change", "ship it", "land the change", "merge and clean up", "post-apply ship".
Worktree-side implementation orchestrator for an OpenSpec change. Idempotent: gates automated scenarios on filesystem reality (test file exists + passes in the docker harness), not the tasks.md checkbox. Owns the red-test fix loop (never re-invokes apply on a checked task), runs the docker harness on its auto-derived port with always-teardown, then drives ship-change INLINE with a manifest-aware defer. Boundary-reverse escape hatch writes SHIP_IT_BLOCKED.md. Runnable headless. Triggers: "ship it", "build and ship this change", "run ship-it", "implement + test + land in the worktree".
Switch a monorepo extension/skill package between its published npm source and its local working-tree source, guaranteeing exactly one source per package. Use when "my edits don't take effect", "load local extension", "test the published npm build", or reconciling dev vs distribution package sources.
Generate and edit images using Google Gemini image models via the nano-banana CLI. Use when the user asks to create, generate, make, or edit images with AI. Supports text-to-image, image editing, style transfer, and multi-image composition. Trigger on requests like "create an image", "generate a picture", "make me a logo", "edit this photo", "add X to this image".
Render a scripted video project into mp4 clips with the Google Veo 3.1 API. Reads a project's shot package (the shots/*.md format produced by the veo-showreel-production-kit) and generates one clip per camera cut — reusing the Full Veo prompt, negative prompt, seed, aspect/resolution, world-anchor reference and first-frame storyboard sketch already written in each shot file. Backed by the `pi-veo` CLI (a TypeScript port — no Python). API key is configurable per project via a .env. Use when: "render the Veo video for <project>", "generate the videos from the shot scripts", "make the clips with Veo", "re-render shot 03B".
Turn a video timeline + voiceover into a reproducible, sliceable Veo 3.1 prompt package with a consistency anchor and AI storyboard sketches.
Offline-mine this project's pi session JSONL logs into reusable, verified knowledge. Walks sessions newer than a watermark, extracts five signal classes (faults, ask_user decisions, corrections, procedures, docs) anchored on objective outcomes, promotes only patterns recurring across >= N sessions, and routes distilled artifacts into existing sinks (skill_manage, memory, docs + ctx_index). Use when the user says "mine my sessions", "distill session knowledge", "what have I learned across sessions", "extract lessons from logs", or "turn my pi history into skills/memory".
Cut a new pi-agent-dashboard release. Promotes `## [Unreleased]` in CHANGELOG.md to a versioned section, bumps all workspace package.json versions per SemVer, commits, tags `v<version>`, and pushes — which triggers the Release workflow that publishes **10 npm packages** (root + shared/extension/server/web/image-fit/kb/kb-extension + session-distiller/distill-session-knowledge via `npm publish -ws --include-workspace-root`) and the Electron artifacts and creates a GitHub Release (published automatically for production tags `vX.Y.Z`; draft for pre-release tags `vX.Y.Z-rc.N`). Use when the user says "cut a release", "release vX.Y.Z", "publish a new version", "tag a release".