ring:writing-plans

This skill dispatches a specialized agent to write comprehensive implementation plans for engineers with zero codebase context.

Safety Notice

This listing is imported from skills.sh public index metadata. Review upstream SKILL.md and repository scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "ring:writing-plans" with this command: npx skills add lerianstudio/ring/lerianstudio-ring-ring-writing-plans

Writing Plans

Overview

This skill dispatches a specialized agent to write comprehensive implementation plans for engineers with zero codebase context.

Announce at start: "I'm using the ring:writing-plans skill to create the implementation plan."

Context: This should be run in a dedicated worktree (created by ring:brainstorming skill).

The Process

Step 1: Dispatch Write-Plan Agent

Dispatch via Task(subagent_type: "ring:write-plan") with:

  • Instructions to create bite-sized tasks (2-5 min each)

  • Include exact file paths, complete code, verification steps

  • Save to docs/plans/YYYY-MM-DD-<feature-name>.md

Step 2: Validate Plan

After the plan is saved, validate it:

python3 default/lib/validate-plan-precedent.py docs/plans/YYYY-MM-DD-<feature>.md

Interpretation:

  • PASS → Plan is safe to execute

  • WARNING → Plan has issues to address

  • Review the warnings in the output

  • Update plan to address the issues

  • Re-run validation until PASS

Step 3: Ask User About Execution

Ask via AskUserQuestion : "Execute now?" Options:

  • Execute now → ring:subagent-driven-development

  • Parallel session → user opens new session with ring:executing-plans

  • Save for later → report location and end

Why Use an Agent?

Context preservation (reading many files keeps supervisor clean) | Model power (comprehensive planning) | Separation of concerns (supervisor orchestrates, agent plans)

What the Agent Does

Explore codebase → identify files → break into bite-sized tasks (2-5 min) → write complete code → include exact commands → add review checkpoints → verify Zero-Context Test → save to docs/plans/YYYY-MM-DD-<feature>.md → report back

Requirements for Plans

Every plan: Header (goal, architecture, tech stack) | Verification commands with expected output | Exact file paths (never "somewhere in src") | Complete code (never "add validation here") | Bite-sized steps with verification | Failure recovery | Review checkpoints | Zero-Context Test | Recommended agents per task

Multi-Module Task Requirements

If TopologyConfig exists (from pre-dev research.md frontmatter or user input):

Each task MUST include:

  • Target: backend | frontend | shared

  • Working Directory: Resolved path from topology configuration

  • Agent: Recommended agent matching the target

Task Format with Target:

Task 3: Create User Login API

Target: backend Working Directory: packages/api Agent: ring:backend-engineer-golang

Files to Create/Modify:

  • packages/api/internal/handlers/auth.go
  • packages/api/internal/services/auth_service.go

...rest of task...

Target Assignment Rules:

Target When Agent

backend

API endpoints, services, data layer, CLI ring:backend-engineer-{golang,typescript}

frontend

UI components, pages, BFF routes See Frontend Tasks (api_pattern aware)

shared

CI/CD, configs, docs, cross-module ring:devops-engineer or ring:general-purpose

Working Directory Resolution:

Topology Structure Backend Path Frontend Path

single-repo

.

.

monorepo

topology.modules.backend.path

topology.modules.frontend.path

multi-repo

topology.modules.backend.path (absolute) topology.modules.frontend.path (absolute)

Agent Selection

Backend Tasks

Task Type Agent

Go backend API/services ring:backend-engineer-golang

TypeScript backend API/services ring:backend-engineer-typescript

Frontend Tasks (api_pattern aware)

Read api_pattern from topology configuration to determine correct agent:

API Pattern Task Type Agent

direct

UI components, pages, forms ring:frontend-engineer

direct

Server Actions, data fetching ring:frontend-engineer

direct

Server Components with data loading ring:frontend-engineer

bff

API routes (/api/* ) ring:frontend-bff-engineer-typescript

bff

Data aggregation, transformation ring:frontend-bff-engineer-typescript

bff

External service integration ring:frontend-bff-engineer-typescript

bff

UI components, pages, forms ring:frontend-engineer

other

Depends on pattern Ask user or use ring:frontend-engineer default

Decision Logic for Frontend Tasks

def get_frontend_agent(task, topology): api_pattern = topology.get('api_pattern', 'direct')

if api_pattern == 'direct':
    return 'ring:frontend-engineer'

if api_pattern == 'bff':
    if is_bff_task(task):  # API routes, aggregation, transformation
        return 'ring:frontend-bff-engineer-typescript'
    else:  # UI components, pages
        return 'ring:frontend-engineer'

return 'ring:frontend-engineer'  # Default for 'other'

def is_bff_task(task): bff_indicators = [ 'API route', 'api route', '/api/', 'aggregat', 'transform', 'BFF', 'external service', 'backend service', 'data layer', 'HTTP client' ] return any(ind in task.description for ind in bff_indicators)

Infrastructure and Other Tasks

Task Type Agent

Infra/CI/CD ring:devops-engineer

Testing ring:qa-analyst

Reliability ring:sre

Fallback ring:general-purpose

Task Format with api_pattern

When TopologyConfig includes api_pattern , include it in task metadata:

Task 3: Aggregate Dashboard Data

Target: frontend Working Directory: packages/web API Pattern: bff Agent: ring:frontend-bff-engineer-typescript

Files to Create/Modify:

  • packages/web/app/api/dashboard/route.ts
  • packages/web/lib/services/dashboard-aggregator.ts

...rest of task...

Execution Options Reference

Option Description

Execute now Fresh subagent per task, code review between tasks → ring:subagent-driven-development

Parallel session User opens new session, batch execution with human review → ring:executing-plans

Save for later Plan at docs/plans/YYYY-MM-DD-<feature>.md , manual review before execution

Required Patterns

This skill uses these universal patterns:

  • State Tracking: See skills/shared-patterns/state-tracking.md

  • Failure Recovery: See skills/shared-patterns/failure-recovery.md

  • Exit Criteria: See skills/shared-patterns/exit-criteria.md

  • TodoWrite: See skills/shared-patterns/todowrite-integration.md

Apply ALL patterns when using this skill.

Blocker Criteria

STOP and report if:

Decision Type Blocker Condition Required Action

Design Validation Design phase not complete (brainstorming/PRD/TRD not validated) STOP and report

Plan Validation Plan fails validate-plan-precedent.py check STOP and report

Zero-Context Test Plan contains vague instructions ("add validation here") STOP and report

Agent Assignment Tasks missing recommended agent specification STOP and report

Cannot Be Overridden

The following requirements CANNOT be waived:

  • Design phase MUST be complete before creating implementation plan

  • Plan validation script MUST pass before execution

  • All tasks MUST include exact file paths, never "somewhere in src"

  • All tasks MUST include complete code examples, never placeholders

  • Each task MUST specify recommended agent

Severity Calibration

Severity Condition Required Action

CRITICAL Plan created without validated design MUST complete design phase first

CRITICAL Tasks contain placeholder code ("add logic here") MUST write complete code examples

HIGH Plan fails validation script MUST address warnings and re-validate

HIGH Missing exact file paths in tasks MUST specify complete paths

MEDIUM Missing verification commands in tasks Should add expected output verification

LOW Missing review checkpoints between tasks Fix in next iteration

Pressure Resistance

User Says Your Response

"Skip design validation, we know what to build" "CANNOT skip design validation. Plans without validated design lead to rework. Design phase MUST be complete first."

"Add the code later, just outline the tasks" "CANNOT use placeholder code. Zero-Context Test requires complete code so engineers can execute without codebase knowledge."

"Approximate file paths are fine" "CANNOT use vague paths. Tasks MUST include exact file paths - never 'somewhere in src'."

"Skip plan validation, we're in a hurry" "CANNOT skip validation. Plan validation catches issues before they become implementation blockers."

Anti-Rationalization Table

Rationalization Why It's WRONG Required Action

"Design is obvious, skip to planning" Obvious ≠ validated. Unvalidated designs cause plan rework. MUST complete design phase first

"Engineer will figure out the details" Zero-Context Test: engineer has NO codebase context. Plan must be complete. MUST include complete code and paths

"Validation warnings are minor" Warnings indicate issues that become blockers during execution. MUST address all warnings

"Agent assignment is flexible" Wrong agent = wrong standards applied. Each task needs correct specialist. MUST specify recommended agent

"Plan is good enough, validation is overkill" "Good enough" plans fail Zero-Context Test. Validation ensures completeness. MUST run and pass validation

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

Coding

ring:pre-dev-feature-map

No summary provided by upstream source.

Repository SourceNeeds Review
Coding

ring:dev-cycle

No summary provided by upstream source.

Repository SourceNeeds Review
Coding

ring:requesting-code-review

No summary provided by upstream source.

Repository SourceNeeds Review
Coding

ring:dev-feedback-loop

No summary provided by upstream source.

Repository SourceNeeds Review