Skip to content
cccskills
FreePublished on GitHub

ck:plan-json

Create a machine-readable phased JSON plan bundle from a spec or feature description. Produces a compact master manifest plus per-phase step files for resumable ck:cook execution.

The English summary is being prepared. Showing the original description.

See how to install

Files included (5)

  • SKILL.md5.8 KB
  • hooks/plan_validator.py28.9 KB
  • references/phase-01-setup-project.json1.1 KB
  • references/plan-schema.json741 B
  • rules/plan-design.md5.7 KB

SKILL.md (original)

Review the instructions the agent will receive before you install.

ck:plan-json — Phased JSON Planning

Every mode always creates plans/{slug}/plan.json and one or more phase JSON files. The master stays compact so an AI executor loads step detail only for the active phase.

No legacy or single-file format compatibility is supported.


Step 0 — Load Input

Resolve the primary requirement input in this order:

  1. --spec <path> — preferred: load the supplied spec.md.
  2. If no spec is supplied, use the inline feature description or requirement text.
  3. If neither exists, ask for a description or spec path.

Also accept:

  • --project {slug} — project ID; default is the current directory name.
  • --mode {fast|hard} — override automatic scope detection.
  • --output <path> — master entry point; default is plans/{slug}/plan.json. Phase files are siblings beside this master.

Step 1 — Analyze Scope and Phases

Report:

Scope:
  Phases: {N}
  Files: {N total, N new, N modify}
  Complexity: {Fast | Hard}
  • Fast — one small component and at most three affected files. Fast creates exactly one phase JSON file.
  • Hard — two or more phases, at least four files, multiple components, or external integrations.

If Hard has no spec, suggest /ck:brainstorm before continuing.

Decompose work into ordered, dependency-aware phases. Use deterministic kebab-case names and phase-{phase_id:02d}-{name}.json filenames. Maximum 15 steps per phase; add another phase when more steps are needed.


Step 2 — Generate Phase Files First

Phase files contain and own detailed steps. Write every complete phase file first, before the master exists or is updated.

Each phase file uses this structure:

{
  "plan_id": "{slug}",
  "phase_id": 1,
  "name": "setup-project",
  "goal": "Initialize the project",
  "status": "pending",
  "current_step": 1,
  "design_constraints": [
    "Cook confirms unit-test and quality-gate choices before each phase"
  ],
  "quality_profile": {
    "repository_conventions": {},
    "boundaries": {},
    "applicable_rules": [],
    "allowed_exceptions": []
  },
  "quality": { "status": "not_evaluated", "report": "", "receipt": "", "remediation_cycles": 0 },
  "testing": { "status": "not_started", "report": "" },
  "steps": [
    {
      "step_id": 1,
      "description": "Create the project structure",
      "status": "pending",
      "input_files": [],
      "output_files": ["src/README.md"],
      "ai_generated_code": "",
      "debug_logs": [],
      "success_criteria": ["The expected file exists"]
    }
  ]
}

Rules:

  • Step IDs are unique, sequential, and one-indexed within the phase.
  • input_files must already exist or be produced by earlier steps or dependency phases.
  • output_files lists every file created or modified.
  • success_criteria contains at least one automation-verifiable condition.
  • ai_generated_code starts as an empty string and debug_logs starts as an empty array.
  • design_constraints, quality_profile, quality, and testing are optional; leave them at their pending-equivalent defaults (empty arrays/objects, not_evaluated, not_started) at plan-creation time — see rules/plan-design.md § Quality and Testing State for what owns each field and when it changes.

Step 3 — Generate the Master Last

Write the master last, after all referenced phase files exist. plan.json is the orchestration manifest and contains ordered phase entries; the master must not contain inline steps.

{
  "plan_id": "{slug}",
  "goal": "{one-line deliverable}",
  "status": "pending",
  "current_phase": 1,
  "global_context": {
    "framework": "{detected framework or empty}",
    "architecture": "{detected pattern or empty}",
    "target_folder": "{primary output directory}",
    "constraints": []
  },
  "phases": [
    {
      "phase_id": 1,
      "name": "setup-project",
      "description": "Initialize project structure",
      "file": "phase-01-setup-project.json",
      "status": "pending",
      "depends_on": [],
      "quality_status": "not_evaluated",
      "testing_status": "not_started"
    }
  ]
}

All plan, phase, and step statuses start as pending. current_phase starts at 1, and every phase current_step starts at 1.

Dependencies may reference unique earlier phase IDs only. A step object appears in exactly one phase file and is never duplicated in the master.

quality_status/testing_status are the master's compact mirror of each phase's quality.status/testing.status — never the full profile or report. Both start at not_evaluated/not_started and must match the phase file's values whenever both declare one.


Step 4 — Mandatory Bundle Validation

Mandatory validation must use the master path so the bundle validator checks the manifest and every referenced sibling:

python {ck-plan-json-skill-root}/hooks/plan_validator.py plans/{slug}/plan.json

Resolve {ck-plan-json-skill-root} from the SKILL.md currently loaded so the command works in pack-root, Claude, Codex, and Antigravity installations.

If validation fails, fix the relevant phase or master file and rerun validation. Do not report success until the validator exits with code 0.

On success, report exactly these bundle details:

[ck:plan-json] ✓ phased plan bundle written
Master path: plans/{slug}/plan.json
Phase paths:
  - plans/{slug}/phase-01-{name}.json
Mode: {Fast | Hard}
Phase count: {N}
Total step count: {N}

Next: /ck:cook --json plans/{slug}/plan.json

Use references/plan-schema.json, its referenced canonical phase file, and rules/plan-design.md as the detailed contract.

Reviews

No reviews yet. Tell others what you thought.

Comments

No login needed. Share how it worked for you, ask a question, or note where it did not run.

No comments yet. Be the first to write one.

Comments are published right away. Do not include personal information such as email addresses or phone numbers. Up to 2 URLs.

0 / 1,000 characters

This form is protected by reCAPTCHA, and the Google Privacy Policy and Terms of Service apply.

More skills from this repository

Build robust backend systems — APIs (REST, GraphQL, gRPC), authentication (OAuth 2.1, JWT), databases, performance optimization, security (OWASP Top 10), scalability patterns (microservices, caching, sharding), and testing. Use when designing APIs, implementing auth, optimizing queries, handling security vulnerabilities, building microservices, or developing production-ready backend systems.

The English summary is being prepared. Showing the original description.

DangQuangSE/team-development-skills19Updated Oct 19, 2026

Terse output mode — strips filler/articles/hedging, ~75% token reduction. Activate whenever: context is filling up, user says be brief/terse/caveman/less tokens, or CAVEMAN_TRIGGERED appears in context. Persists every response until CAVEMAN_RELEASED or user says stop/normal mode.

The English summary is being prepared. Showing the original description.

DangQuangSE/team-development-skills19Updated Oct 19, 2026

Explore and debate solutions before writing code. Use when the user poses a design question, asks "how should I approach X", wants to think through options before committing, or says anything like "let's brainstorm", "what's the best way to...", "I'm not sure how to tackle this", or "should I use X or Y". Always runs before /ck:plan for novel or ambiguous features. No code is written — only: explore → clarify → spec → report.

The English summary is being prepared. Showing the original description.

DangQuangSE/team-development-skills19Updated Oct 19, 2026

Implement a feature phase by phase from a phased JSON master or Markdown plan. Before each phase, confirm whether to create/run unit tests and whether to run ck:quality, unless explicit flags supply those choices. Supports token-budgeted execution, resumable state, and TDD handoff to ck:test.

The English summary is being prepared. Showing the original description.

DangQuangSE/team-development-skills19Updated Oct 19, 2026

ck-fix

Free

Fix a bug using Scout → Diagnose → Fix → Review → Finalize. Use when the user pastes an error message, stack trace, or test failure, or says "fix this bug", "something's broken", "tests are failing", "I'm getting an error". Also accepts `--from-quality <report>` or `--from-test <report>` to fix exactly the findings/failures a report lists. Modes (pick one): --fast (trivial errors — lint, type, build — skip scout and review), --hard (mandatory review, no auto-approve).

The English summary is being prepared. Showing the original description.

DangQuangSE/team-development-skills19Updated Oct 19, 2026

Plan a feature or system before implementation. Use when the user says "plan this", "I want to build X", "how do I implement Y", or when /ck:brainstorm produces a spec.md. Always run before /ck:cook. Modes (pick one): --fast (simple, single-file), --hard (research + red-team + validate). Composable flag (combine with any mode): --tdd — propagates into the cook pipeline. Every phase gets Design Constraints and Quality/Testing State; ck:cook confirms optional test and quality checks per phase.

The English summary is being prepared. Showing the original description.

DangQuangSE/team-development-skills19Updated Oct 19, 2026

See all skills by DangQuangSE

Report a problem with this skill