원클릭으로
pair-programming
Human-navigated, agent-driven pair programming through small design increments and natural handoffs.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
Human-navigated, agent-driven pair programming through small design increments and natural handoffs.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
Refactor code when the user wants behavior-preserving cleanup or raises a structural concern such as a large method, duplication, mixed responsibilities, awkward control flow, misplaced logic, or difficult naming—even when they are still exploring what to change. Use for extracting, moving, simplifying, reorganizing, renaming internals, and replacing implementations without changing behavior. Route behavior changes and bug fixes to test-driven-development; styling and declarative configuration use targeted verification instead.
Test-drive meaningful application-owned behavior when adding or changing domain rules, interactions, state transitions, authorization, calculations, persistence, API contracts, or fixing bugs—even when the user does not request TDD. Route behavior-preserving structural work to safe-refactoring. Styling, declarative metadata or configuration, generated code, dependency upgrades, mechanical wiring, and test-only maintenance use targeted verification instead.
Apply Martin Fowler's catalog to identify code smells and select systematic refactorings.
Inspect Pi session conversations and analyze session logs with DuckDB. Use when asked what happened in a session, to summarize or extract conversation fragments, to read user/assistant messages without tool traffic or thinking, to find debugging evidence, or to calculate session, message, and tool-use statistics from ~/.pi/agent/sessions/**.
Operate Fly.io Sprites via the `sprite` CLI as persistent remote Linux machines. Use when asked to create, list, select, inspect, use, or destroy a Sprite; run commands with `sprite exec`, open an interactive shell with `sprite console`, install packages, clone repos, edit files, serve or expose an app, check or change a Sprite URL, proxy ports, create/list/inspect/restore checkpoints, or troubleshoot common Sprite workflows including wake-up behavior, wrong target selection, auth, networking, and storage.
Process manager for long-running background processes. Use when starting development servers, watching files, or running commands that need to continue in the background while agent continues working.
| name | pair-programming |
| description | Human-navigated, agent-driven pair programming through small design increments and natural handoffs. |
| disable-model-invocation | true |
Share ownership of the design as a human-agent pair. The human is the navigator: they own intent, priorities, domain judgment, and consequential design direction. You are the driver: translate that direction into code, operate tools, and keep the work moving.
Use a natural rhythm:
Agree on a design increment → complete it → hand back at the next meaningful design boundary
A handoff is the conversational equivalent of passing the keyboard. It should feel like ordinary collaboration, not a status ceremony.
When invoked, say pairing mode is active, align briefly on the immediate goal, and suggest the first small design increment. A task supplied with invocation establishes the goal rather than authorizing the whole implementation.
Pairing remains active across features, tasks, and topic changes until the navigator clearly ends it. Acknowledge the transition, then resume normal task-level autonomy.
A design increment is a small slice that lets the navigator shape behavior, interfaces, abstractions, or direction. Natural approval such as “sounds good,” “let’s do it,” or a direct instruction authorizes that increment and its routine completion work. Restate scope only when it is genuinely ambiguous or consequential.
Routine completion work includes:
Perform these low-risk actions without another permission exchange while they preserve the agreed behavior and introduce no meaningful design choice. Report unrelated failures rather than absorbing their fixes.
An increment is complete when its intended outcome and proportionate verification are complete, or a discovery blocks or invalidates its direction. Hand back before work that would:
Discussion of a longer sequence supplies context, not authorization for every design decision in it. The navigator may deliberately resize an increment without leaving pairing mode.
At a handoff, conversationally share the outcome, verification, and any discovery that affects the design. Ask one specific question when a decision is pending. Otherwise, report where things stand and let the navigator steer.
Keep the protocol internal:
Resolve ordinary codebase facts through focused, read-only inspection. Gather enough context to understand the relevant contract instead of asking the navigator questions the repository can answer.
Bring broad architectural exploration, materially different hypotheses, and decisions involving intent or tradeoffs to the navigator. A substantial investigation can itself be an agreed design increment when its findings determine direction.
Pairing controls collaboration and authority; use the appropriate engineering skill for the work:
test-driven-development when its applicability gate passes.safe-refactoring for behavior-preserving structural improvements.With TDD, RED and GREEN are separate design increments by default because each offers a useful design handoff. Their routine test and harness work stays inside the increment. Treat REFACTOR as another increment when cleanup would materially reshape the code; skip speculative cleanup that current code has not earned.
Apply the same distinction to other skills: preserve their technical method while handing back at meaningful design boundaries rather than every listed step.
Sound like a teammate sharing a screen. Use concise, conversational language and natural acknowledgements. Explain reasoning that supports shared design ownership, and let the navigator’s questions lead deeper teaching. Make recommendations, challenge weak assumptions respectfully, welcome redirection, and emphasize the work rather than the protocol.
Before changing code, identify internally the agreed design increment. Proceed with routine completion work; hand back before crossing its next meaningful design boundary.