CCPM Project Management
automazeio/ccpm
Runs a spec-driven workflow from PRD to epic to GitHub issues to parallel agents, with status, standup and blocked-work reports from bundled scripts.
Generate structured feature specifications through a collaborative product interview.
$ npx skills add techygarg/lattice --skill requirement-forge -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install techygarg/lattice requirement-forge --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/techygarg/lattice.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/requirement-forge .claude/skills/requirement-forge && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "requirement-forge" agent skill from https://github.com/techygarg/lattice/tree/main/skills/requirement-forge into .claude/skills/requirement-forge/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "requirement-forge", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/techygarg/lattice/tree/main/skills/requirement-forgeType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add techygarg/lattice --skill requirement-forge -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install techygarg/lattice requirement-forge --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/techygarg/lattice.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills/requirement-forge .agents/skills/requirement-forge && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "requirement-forge" agent skill from https://github.com/techygarg/lattice/tree/main/skills/requirement-forge into .agents/skills/requirement-forge/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "requirement-forge", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add techygarg/lattice --skill requirement-forge -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install techygarg/lattice requirement-forge --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/techygarg/lattice.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills/requirement-forge .cursor/skills/requirement-forge && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "requirement-forge" agent skill from https://github.com/techygarg/lattice/tree/main/skills/requirement-forge into .cursor/skills/requirement-forge/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "requirement-forge", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/techygarg/lattice.git --path skills/requirement-forge--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add techygarg/lattice --skill requirement-forge -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install techygarg/lattice requirement-forge --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/techygarg/lattice.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills/requirement-forge .gemini/skills/requirement-forge && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "requirement-forge" agent skill from https://github.com/techygarg/lattice/tree/main/skills/requirement-forge into .gemini/skills/requirement-forge/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "requirement-forge", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install techygarg/lattice requirement-forgeInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add techygarg/lattice --skill requirement-forge -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/techygarg/lattice.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills/requirement-forge .github/skills/requirement-forge && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "requirement-forge" agent skill from https://github.com/techygarg/lattice/tree/main/skills/requirement-forge into .github/skills/requirement-forge/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "requirement-forge", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add techygarg/lattice --skill requirement-forge -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install techygarg/lattice requirement-forge --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/techygarg/lattice.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills/requirement-forge .opencode/skills/requirement-forge && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "requirement-forge" agent skill from https://github.com/techygarg/lattice/tree/main/skills/requirement-forge into .opencode/skills/requirement-forge/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "requirement-forge", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
requirement-forgeGenerate structured feature specifications through a collaborative product interview.
Requirement Forge is an agent skill from techygarg/lattice. Generate structured feature specifications through a collaborative product interview. Acts as a senior PM and business analyst pair — arrives with a point of view, challenges scope, proposes options at every decision. Composes the requirement-quality atom for spec quality enforcement and collaborative-judgment for surfacing genuine decisions. Produces an epic/feature hierarchy in .lattice/requirements/ that serves as direct input to design-blueprint. Use when the user says 'forge requirements', 'write…
Its SKILL.md is about 3.5k tokens, which your agent loads only when the skill is triggered. The skill folder holds 2 other files, including reference files (for example `references/output-templates.md`).
It sits in Product & Project Management, covering PRD writing. The repository describes itself as: Install engineering discipline into any AI coding assistant. Composable skills for design, implementation, review, and team standards. Better process, not just better prompts. The licence is MIT.
6 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit 4d6c35f. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
No scripts in the folder and no shell commands in SKILL.md.
From the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Requirement Forge loads about 3.5k tokens when it runs, and up to ~4.5k if it reads all its reference files. Until then it costs about 169 tokens; SKILL.md has 1,789 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from techygarg/lattice at commit 4d6c35f, republished under its MIT licence (© techygarg). 1,789 words, ~3,463 tokens.
.claude/skills/requirement-forge/SKILL.md (or your agent's skills folder). This skill also uses 1 other file; get the full folder from GitHub.Read and apply in order:
framework:requirement-quality — load requirement standards and enforce spec quality throughout (always)framework:collaborative-judgment — surface genuine judgment calls instead of silent assumptions (always)framework:knowledge-priming — ground feature language in actual project domain (conditional: skip if no codebase exists yet)Collaborative (default) — confirmation gate at each phase. Proposes at every decision, challenges scope, treats the user as a partner.
Autonomous — invoked when the user says "forge autonomously", "draft everything", or "autonomous mode". Steps 2–5 run without gates. After drafting, present complete output for review. framework:requirement-quality checks still run silently before each file write.
Behave as an experienced senior PM and business analyst.
1a — Load standards
Trigger framework:requirement-quality — it handles config resolution and loads the active standards. Do not re-implement or recite its logic here.
If no standards document is found at paths.requirement_standards: recommend requirement-forge-refiner as a one-time setup, then offer to continue with built-in defaults if the user declines.
1b — Session resume
Scan .lattice/requirements/ for existing documents.
index.md exists with epic sections and feature tables written directly inside it (no epics/ directory alongside), and requirements_layout is absent from .lattice/config.yaml or set to flat: tell the user "This project's requirements index uses an older Lattice layout. Run /lattice-init to check for and apply available upgrades." STOP: do not attempt migration in this molecule.index.md exists (sharded layout) → read it plus epics/*.md, inventory all feature files under features/. Classify each as: structurally incomplete (missing sections), quality-suspect (run framework:requirement-quality Anti-Pattern Scan silently — flag anything that fires), or complete.STOP: Do not advance to Step 2 until all resume decisions are recorded.
Open with: "Do you have existing material I should read — PRDs, feature lists, Confluence pages, Jira exports, files in this repo? If yes, point me to them. If no, describe what you're building."
If material is provided — read silently. Before forming the hypothesis, triage the source material:
Present synthesis: "Here's what I understand from [N] documents: [epic list with one-liners]. Sources classified as [types]. [Any contradictions or gaps.] [Orphaned content flagged for deferral.] Does this map reflect your vision? What's wrong or missing?"
If no material — "Tell me what you're building — the problem, who has that problem, any constraints. Don't worry about structure yet." Listen, synthesize, present the same hypothesis format.
Single-feature fast path: if synthesis reveals only 1–3 features, don't force the full epic pipeline. Offer to spec those features directly — skip Step 3 (Epic Definition) and Step 4 (Feature Discovery), proceed directly to Step 5 with the confirmed features. Before starting Step 5, create a placeholder epic: one .lattice/requirements/epics/{epic-slug}.md named for the feature area (confirm the name with the user), and the thin index.md pointing to it, same as Step 3's write sequence.
STOP: Do not advance to Step 3 (or Step 5 if fast path) until the synthesis is confirmed.
Propose the full epic list. For each epic: name, one-paragraph description, rough scope boundary.
Challenge any epic that is too narrow (one feature doesn't warrant an epic) or too broad (encompasses the entire product). Offer alternatives for contestable boundaries.
Large product: if the list has 4+ epics or 15+ estimated features, propose a session focus — complete one epic fully before moving to others.
Ask: "Does this epic structure reflect how you think about the product?"
STOP: Do not advance to Step 4 until the epic list is confirmed.
Immediately after confirmation:
.lattice/requirements/, .lattice/requirements/epics/, and .lattice/requirements/features/ if they do not exist..lattice/requirements/epics/{epic-slug}.md per confirmed epic — name, description, and an empty generated feature-table section. Read references/output-templates.md for the exact structure. Epics not selected for this session's focus are still created, just with no features yet..lattice/requirements/index.md as the thin apex — Definitions plus the generated epic-list table (one row per epic file just created). Read references/output-templates.md for the exact structure..lattice/config.yaml has requirements_layout: sharded. Create the config file if it does not exist; add the key if the file exists without it. Never overwrite an existing sharded value.STOP: do not write feature tables into index.md or hand-append rows to an epic file at any point — see Step 6.
For each confirmed epic, propose the feature breakdown: name, one-line description, epic assignment, dependencies.
Apply framework:requirement-quality anti-pattern scan proactively here — surface misclassified items as PM/BA challenges before the user commits to a feature list.
Ask: "Does this feature breakdown feel right for [Epic Name]?"
This step is conversational only — nothing is written to disk until Step 5.
STOP: Do not advance to Step 5 until the feature list for every in-scope epic is confirmed.
Work through confirmed features one at a time.
Level 1 — Feature Frame: Collect dependencies, problem statement, user personas (who has this problem — specific roles, not "users"), scope (with explicit out-of-scope items), boundary conditions, and assumptions (what the team proceeds with as true without full validation). Challenge each field: wrong problem, wrong user, inflated scope. After presenting: "Does this frame capture the right problem, the right users, and the right scope? Let's lock this before scenarios."
STOP: Do not begin scenarios until the frame is confirmed.
Level 2 — Scenarios: Spec scenarios one at a time in implementation order. For each: propose name (verb phrase), one-sentence description, and ACs in the format framework:requirement-quality loaded. After the first success-path scenario, probe: "Where's the failure path? What happens when [validation fails / session expires / permission denied]?"
After all scenarios: "Does this fully cover [Feature Name]? Anything missed?"
STOP: Do not begin implementation slices until all scenarios are confirmed.
After scenarios confirmed: propose 2–5 implementation slices in "what" order. "Here's how I'd sequence building this: [list]. Does this feel right?"
STOP: Do not write the feature file until implementation slices are confirmed.
Apply framework:requirement-quality Self-Validation Checklist and Anti-Pattern Scan before writing. Failures → fix. Ambiguity signals → surface via framework:collaborative-judgment.
Populate the frontmatter: depends_on from dependencies identified in Step 4 (Feature Discovery); personas from Level 1; source_docs from intake documents; priority using the notation from the loaded standards — surface it for the user's decision per framework:requirement-quality Ambiguity Signals, never assign silently.
Write the confirmed feature file to .lattice/requirements/features/{feature-name}.md. Read references/output-templates.md for the exact file structure. Create the features/ directory if it does not exist.
STOP: Do not advance to the next feature until the current feature passes checks and is written.
After all features for the current session scope are confirmed and written, regenerate the derived sections — never hand-edit them:
epics/{epic-slug}.md's feature table by scanning every features/*.md file where epic matches, listing feature name and one-line summary only. Do not read or mirror status, priority, or depends_on — those fields live only in the feature file. Replace only the content between the generated-section boundary comments — leave the hand-authored header, Source Materials, and Deferred Items untouched.index.md's epic-list table the same way, scanning epics/*.md headers.## Source Materials table mapping each document to the features derived from it.## Deferred Items section listing content intentionally excluded from the current feature set, with reasons.## Glossary section in index.md populated from those terms (hand-authored, not regenerated — revisit only when terminology changes).Present a completion summary: epics created, features specced, open questions, dependency map, and suggested next step (/design-blueprint on the highest-priority feature). Do not write the feature file's Design: link here — design-blueprint writes it when a design session starts.
Phase 1 — Silent run (Steps 2–5): No confirmation gates. Log every non-obvious decision (granularity restructuring, contradiction resolutions, epic boundary calls). Format: "Decision: [what]. Reason: [why]."
Pause only for genuine blockers — situations where continuing would produce a fundamentally wrong spec:
Do NOT pause for: naming choices, priority assignments, scope boundary judgment calls, or AC wording. Make the best call and log the decision — including priority, which is assigned autonomously using the loaded standards' notation and reviewed in Phase 2.
Phase 2 — Review: Present the decisions log first, then the epic list, then the feature list per epic, then feature specs one by one. User corrects, adds, or removes.
Phase 3 — Write: After confirmation, write all files, then run Step 6 to regenerate the derived views. framework:requirement-quality checks run before each write.
© techygarg, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 1 other file (references) in skills/requirement-forge of techygarg/lattice.
Open the folder on GitHubat commit 4d6c35f
Requirement Forge next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Requirement Forge this skilltechygarg/lattice | 198 | — | ~3.5k | Automated safety check: Pass | MIT | |
| CCPM Project Managementautomazeio/ccpm | 8.4k | — | ~1.1k | Automated safety check: Pass | MIT | |
| Ralph Tui Create Beadssubsy/ralph-tui | 2.5k | 1 repos | ~2.6k | Automated safety check: Pass | MIT | |
| Trellis Brainstormanjiemo/SunnyBeach | 178 | 7 repos | ~4k | Automated safety check: Pass | Apache-2.0 | |
| Adversarial Speczscole/adversarial-spec | 556 | 1 repos | ~8.3k | Automated safety check: Notes | MIT | |
| Ralph Tui Create Beads Rustsubsy/ralph-tui | 2.5k | 1 repos | ~2.8k | Automated safety check: Pass | MIT |
automazeio/ccpm
Runs a spec-driven workflow from PRD to epic to GitHub issues to parallel agents, with status, standup and blocked-work reports from bundled scripts.
subsy/ralph-tui
Convert PRDs to beads for ralph-tui execution. An agent skill from subsy/ralph-tui.
anjiemo/SunnyBeach
Guides collaborative requirements discovery before implementation.
zscole/adversarial-spec
Iteratively refine a product spec by debating with multiple LLMs (GPT, Gemini, Grok, etc.) until all models agree.
subsy/ralph-tui
Convert PRDs to beads for ralph-tui execution using beads-rust (br CLI).
Q00/ouroboros
Runs a guided product-manager interview that classifies each question automatically and produces a Product Requirements Document.
techygarg/lattice
Architectural thinking partner for an existing repository — scans the codebase, conducts a structured interview, agrees on current architectural state and recommended direction, and produces a…
techygarg/lattice
Guided setup and upgrade-check experience for Lattice projects -- scans the repository, detects existing configuration and outdated conventions, suggests refiners and available upgrades in priority…
techygarg/lattice
Audit and fix all Lattice documentation, README, docs/, PROJECT.md, GitHub issue templates, and CLAUDE.md to ensure they are fully aligned with the current skill inventory.
techygarg/lattice
Validate any Lattice SKILL.md against all tier conventions — atoms, molecules, and refiners.
techygarg/lattice
Facilitate a structured conversation to define architecture principles for a repository.
techygarg/lattice
Facilitate a structured conversation to define clean code principles for a repository.
Categories
Generate structured feature specifications through a collaborative product interview. Requirement Forge is an agent skill from techygarg/lattice. Generate structured feature specifications through a collaborative product interview.
Requirement Forge fits situations like: the user says forge requirements; write requirements; spec this feature; create a feature spec.
Run `npx skills add techygarg/lattice --skill requirement-forge -a claude-code`. Or copy the skill folder (skills/requirement-forge in techygarg/lattice) into .claude/skills/requirement-forge in your project. Claude Code loads it when a task matches its description.
Run `npx skills add techygarg/lattice --skill requirement-forge -a codex`. Or copy the skill folder (skills/requirement-forge in techygarg/lattice) into .agents/skills/requirement-forge in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add techygarg/lattice --skill requirement-forge -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/requirement-forge, .gemini/skills/requirement-forge, .github/skills/requirement-forge and .opencode/skills/requirement-forge in your project.
SKILL.md names no scripts, command-line tools or credentials: Requirement Forge is instructions for the agent only.
SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Requirement Forge is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 3.5k tokens (SKILL.md is roughly 14k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 993 tokens, read only when the agent opens those files.
Skills that share tags, products or a category with Requirement Forge: CCPM Project Management (automazeio/ccpm, 8.4k stars), Ralph Tui Create Beads (subsy/ralph-tui, 2.5k stars), Trellis Brainstorm (anjiemo/SunnyBeach, 178 stars) and Adversarial Spec (zscole/adversarial-spec, 556 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
techygarg (a GitHub user) maintains it in techygarg/lattice, which has 198 GitHub stars. The repository holds 33 skills in this directory. The repository was last updated on October 6, 2026.
Source: techygarg/lattice on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.