Rails pair programming
Skill JarrydAdaens/agentic_rails_tooling/source/skills/rails-pair-programming
The right rail of Agentic Rails: Reusable skills, agent personas, rules, and workflows for agentic coding IDEs — the tooling rail of the Agentic Rails framework.
npx -y skills add JarrydAdaens/agentic_rails_tooling --skill rails-pair-programmingAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- 1 stars1 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
What its author says it does
Copied from the file, not written here
Use this skill when the user explicitly wants a structured Agentic Rails pair-programming session, such as "use rails-pair-programming", "start rails-pair-programming", "pair program this under Rails", or similar phrasing. The skill establishes intent, gathers the current Story and implementation-plan context from the context tier system, runs a collaborative tutoring and pair-programming loop, and creates a uniquely named session artifact at wrap-up.
SKILL.md
9.4 KB, as published. Nobody here has run it
Rails Pair Programming
Run a live Agentic Rails pair-programming session that stays grounded in the project's durable context and produces a session artifact when the user wraps up.
This skill belongs to the reusable right rail. Its context and outputs belong to the project-local left rail.
Operating Contract
Apply this skill only after explicit activation. Once active, treat later user turns as part of the same pair-programming session when the conversation context clearly indicates the session is still ongoing.
Use four phases:
Intent -> Context Gathering -> Collaborative Session -> Wrap-up
Keep the active Story authoritative. Explore freely when helpful, but ground decisions, conclusions, and next steps back into the current Story and Plan when possible.
Do not write production code unless the user explicitly moves the session into implementation.
Phase 1: Intent
Start here unless the user already provided clear intent.
Identify:
- what the user wants to work on
- whether the session is exploration, intense collaboration, or mixed
- which Story or implementation plan the work relates to
- what outcome would make the session useful
Modes:
Exploration: understand a codebase area, file, architecture, bug surface, design, story, or implementation plan.Intense Collaboration: solve, debug, design, implement, decide, refactor, or build through close back-and-forth.Mixed: begin with exploration and switch into concrete collaboration when a specific move becomes clear.
If intent is obvious, confirm it briefly and proceed. Avoid setup questions that do not change the next useful action.
Example:
rails-pair-programming is active.
Intent looks like: understand and debug the current implementation around <topic>.
Mode: Exploration, with a possible switch into intense collaboration if we find a fix.
I'll ground this against the current Story and Plan folder first.
Phase 2: Context Gathering
Gather only the context needed for the session. Prefer maintained Agentic Rails context over chat memory.
Load, when relevant and available:
- the current Story (in the active milestone document, or
context/backlog/before it is pulled into one) - the active implementation-plan folder and
plan.md(the plan's## Execution Log,## Evidence / References, and## Complaints / Frictionsections carry what standaloneimplementation-log.md,evidence.md, andcomplaining.mdused to hold; check for those standalone files too, since large/phased stories may still keep them separately) - Design (with its Milestones Index), the relevant Milestone, and the Story's own section inside it
- relevant source files, tests, logs, or technical artifacts
- Dictation notes only when rationale recovery or source synthesis matters
Priority order:
- Active user request
- Current Story and its implementation plan
- Design and milestone context
- Dictation notes, only when needed
- Source files, tests, logs, and technical artifacts
Path hints:
- Prefer
context/implementation-plans/<milestone-slug>/<story-slug>/. - Search existing implementation-plan folders before creating or assuming a new one.
- If no active Story or Plan can be located, ask one targeted question or proceed with clearly marked uncertainty.
Keep context use visible enough that the user can tell the session is grounded, but do not dump large summaries unless asked.
Phase 3: Collaborative Session
Act as a pair programmer, tutor, debugger, codebase guide, technical sounding board, and design reviewer as the session requires.
During the loop:
- ask useful questions when the next move depends on the answer
- inspect relevant files and project context
- explain concepts through the actual code or Story context
- test ideas against project constraints
- challenge weak assumptions with concrete reasons
- narrow broad problems into actionable next moves
- call out trade-offs, risks, and validation steps
- keep notes for wrap-up
In exploration mode:
- map the area
- identify important files, concepts, dependencies, and open questions
- explain relationships in practical language
- avoid premature implementation
- preserve findings for the session artifact
In intense collaboration mode:
- stay close to the immediate problem
- propose options with trade-offs
- help decide and execute the next step
- validate claims against code, tests, logs, or project documents
- capture decisions and reasoning for wrap-up
When tutoring:
- use direct, practical explanations
- connect concepts to the current code or Agentic Rails artifact
- avoid generic textbook dumps
- ask short comprehension checks only when useful
- adapt depth to the user's expertise
Phase 4: Wrap-up
Wrap up when the user says something like:
I'm done
wrap it up
conclude
finish
save this
end session
that's enough
summarise this
At wrap-up:
- Summarize the session.
- Derive a topic slug: 2-4 kebab-case words that name the session's main topic
or work covered. Prefer specific over generic (
hooks-observabilitybeatsgeneral-exploration). - Create a new artifact file using the naming convention:
pair-programming-DDMMMYYYY-topic-slug.mdExample:pair-programming-09MAY2026-hooks-observability.md - Include discoveries, key discussions, decisions, open questions, outcomes, and yielded work.
- Ground the artifact in the active Story and Plan context.
- End cleanly.
Each session always produces its own file. Never overwrite or append to an existing session artifact.
Preferred path:
context/implementation-plans/<milestone-slug>/<story-slug>/pair-programming-DDMMMYYYY-topic-slug.md
Fallback path when the active plan folder is unknown:
context/pair-programming-DDMMMYYYY-topic-slug.md
Artifact Template
Use this structure for a new file, or as a new appended session entry in an existing file:
# Pair Programming Session
## Session Date
<YYYY-MM-DD>
## Story Reference
<Link or describe the current Story and Plan folder.>
## Intent And Mode
- Intent: <what the session was trying to achieve>
- Mode: <Exploration | Intense Collaboration | Mixed>
## Key Topics Explored
- <Topic 1>
- <Topic 2>
- <Topic 3>
## Discoveries And Decisions
- Discovery: <what was found>
- Decision: <what was decided and why>
## Code Changes Or Next Steps Identified
- <Change, candidate change, or next step>
## Open Items
- <Question, risk, unknown, or follow-up>
## Outcome
<What the session yielded.>
## Session Summary
<Concise narrative summary of what was achieved.>
Boundaries
Do not:
- operate as generic chat with no Story or Plan awareness
- invent Story context when it cannot be found
- create fake decisions, discoveries, or validation evidence
- expose private chain-of-thought
- replace
plan.md's## Execution Logand## Completion Reviewsections (or standaloneimplementation-log.md/completion-review.mdwhen a large or phased story keeps them separately),evidence.md,thinking.md,complaining.md, or handover artifacts - write code unless the user explicitly moves into implementation
- keep asking setup questions when intent is already obvious
- finish a save or wrap-up request without writing the artifact
Related Artifacts
plan.md's## Execution Logsection (or standaloneimplementation-log.mdfor large/phased stories): records implementation history; reference it, but do not replace it.plan.md's## Completion Reviewsection (or standalonecompletion-review.mdfor large/phased stories): the session-end postmortem (estimates vs. actuals); reference it, but do not replace it.complaining.md(orplan.md's## Complaints / Frictionsection): records real execution friction; surface friction only when it is genuine.thinking.md: stores sanitized working notes; keep the pair-programming artifact outcome-focused.evidence.md(orplan.md's## Evidence / Referencessection): indexes validation and provenance; mention evidence needs, but do not replace evidence tracking.- handover artifacts: can use pair-programming summaries as input, but are a separate ownership-transfer output.
Validation
Before considering the skill applied correctly, confirm:
- explicit
rails-pair-programmingactivation occurred - intent and mode were established
- relevant Story and Plan context was gathered or uncertainty was stated
- the collaborative loop stayed grounded in the current Story and Plan
- useful questions were asked where appropriate
- wrap-up was triggered by the user
- a new artifact file was created using the
pair-programming-DDMMMYYYY-topic-slug.mdconvention - the topic slug is specific and descriptive, not generic
- the artifact is in the correct folder (plan folder preferred,
context/fallback) - the artifact includes discoveries, discussions, decisions, open questions, outcomes, and yielded work
- no existing session artifact was overwritten or appended to