product-capability
- Use it when:
- Product intent is clear but the rules, invariants and edge cases engineers need still live in someone's head.
- It does:
- Restates the capability in one sentence, pulls out business rules, invariants, trust boundaries and rollout needs, and marks what's still undecided.
- You get:
- An SRS-style plan, kept in the repo's product docs such as PRODUCT.md, ending in a handoff: build, architecture review or product clarification first.
- Comes after:
- ECC's product-lens, which decides whether to build it at all.
TL;DR
The step between deciding to build something and writing code. It reads only what it needs: the PRD, issue or founder note, the relevant architecture docs, schemas and routes, any existing PRODUCT.md or RFCs, and delivery constraints such as auth, billing, compliance and backwards compatibility. It compresses the ask into one statement of who gains which capability and what changes, then extracts the constraints that must hold first: business rules, scope, invariants, trust boundaries, data ownership, lifecycle transitions, rollout and migration needs, and failure and recovery. The result is a plan with actors and surfaces, states and transitions, interfaces, data model implications, security, billing and policy constraints, observability needs, non-goals and blocking open questions. It never invents product truth: unresolved points stay marked open, and conflicts with the repo's existing constraints are called out. It ends by saying whether the work is ready to implement or needs architecture review or product clarification first, and which ECC skill should take it next.
Summarizes the skill at d2ef268.
npx skills add https://github.com/affaan-m/ecc --skill product-capability skills.sh pageSource on GitHubAll skills from affaan-m/ecc
- Total Downloads
- 5,500 on skills.sh, Nov 9, 2026
- Repo stars
- 299,776 affaan-m/ecc
- First seen
- May 19, 2026 on skills.sh
Weekly values
| Week to | Installs |
|---|---|
| Sep 21 | 265 |
| Sep 28 | 162 |
| Oct 5 | 142 |
| Oct 12 | 230 |
| Oct 19 | 412 |
| Oct 26 | 403 |
| Nov 2 | 475 |
| Nov 9 | 440 |
| Category |
Make the agent question you and write the plan down before it writes code. Everything for building software: planning, coding, debugging, design, frameworks, cloud, agents and skills. |
|---|---|
| Type |
A multi-step process the agent follows: interview, debug, run a TDD loop, review. |
| Effect |
Its own steps create or change files, git state or local tools. |
| Needs |
Instructions only. Works in any agent that supports skills. |
| Publisher |
Everyone else. Unverified vendor claims default to community. |
| Topics |
SKILL.md
From affaan-m/ecc at d2ef268. Checked daily, last changed Nov 6, 2026.
Frontmatter
name: product-capability
description: Translate PRD intent, roadmap asks, or product discussions into an implementation-ready capability plan that exposes constraints, invariants, interfaces, and unresolved decisions before multi-service work starts. Use when the user needs an ECC-native PRD-to-SRS lane instead of vague planning prose.
metadata:
origin: ECCProduct Capability
This skill turns product intent into explicit engineering constraints.
Use it when the gap is not "what should we build?" but "what exactly must be true before implementation starts?"
When to Use
- A PRD, roadmap item, discussion, or founder note exists, but the implementation constraints are still implicit
- A feature crosses multiple services, repos, or teams and needs a capability contract before coding
- Product intent is clear, but architecture, data, lifecycle, or policy implications are still fuzzy
- Senior engineers keep restating the same hidden assumptions during review
- You need a reusable artifact that can survive across harnesses and sessions
Canonical Artifact
If the repo has a durable product-context file such as PRODUCT.md, docs/product/, or a program-spec directory, update it there.
If no capability manifest exists yet, create one using the template at:
docs/examples/product-capability-template.md
The goal is not to create another planning stack. The goal is to make hidden capability constraints durable and reusable.
Non-Negotiable Rules
- Do not invent product truth. Mark unresolved questions explicitly.
- Separate user-visible promises from implementation details.
- Call out what is fixed policy, what is architecture preference, and what is still open.
- If the request conflicts with existing repo constraints, say so clearly instead of smoothing it over.
- Prefer one reusable capability artifact over scattered ad hoc notes.
Inputs
Read only what is needed:
- Product intent
- issue, discussion, PRD, roadmap note, founder message
- Current architecture
- relevant repo docs, contracts, schemas, routes, existing workflows
- Existing capability context
PRODUCT.md, design docs, RFCs, migration notes, operating-model docs
- Delivery constraints
- auth, billing, compliance, rollout, backwards compatibility, performance, review policy
Core Workflow
1. Restate the capability
Compress the ask into one precise statement:
- who the user or operator is
- what new capability exists after this ships
- what outcome changes because of it
If this statement is weak, the implementation will drift.
2. Resolve capability constraints
Extract the constraints that must hold before implementation:
- business rules
- scope boundaries
- invariants
- trust boundaries
- data ownership
- lifecycle transitions
- rollout / migration requirements
- failure and recovery expectations
These are the things that often live only in senior-engineer memory.
3. Define the implementation-facing contract
Produce an SRS-style capability plan with:
- capability summary
- explicit non-goals
- actors and surfaces
- required states and transitions
- interfaces / inputs / outputs
- data model implications
- security / billing / policy constraints
- observability and operator requirements
- open questions blocking implementation
4. Translate into execution
End with the exact handoff:
- ready for direct implementation
- needs architecture review first
- needs product clarification first
If useful, point to the next ECC-native lane:
project-flow-opsworkspace-surface-auditapi-connector-builderdashboard-buildertdd-workflowverification-loop
Output Format
Return the result in this order:
CAPABILITY
- one-paragraph restatement
CONSTRAINTS
- fixed rules, invariants, and boundaries
IMPLEMENTATION CONTRACT
- actors
- surfaces
- states and transitions
- interface/data implications
NON-GOALS
- what this lane explicitly does not own
OPEN QUESTIONS
- blockers or product decisions still required
HANDOFF
- what should happen next and which ECC lane should take it
Good Outcomes
- Product intent is now concrete enough to implement without rediscovering hidden constraints mid-PR.
- Engineering review has a durable artifact instead of relying on memory or Slack context.
- The resulting plan is reusable across Claude Code, Codex, Cursor, OpenCode, and ECC 2.0 planning surfaces.