From manifold
Overview of Manifold constraint-first development framework. Lists commands for initializing, constraining, surfacing tensions, anchoring, generating, integrating, verifying features. Use for learning or checking commands.
How this skill is triggered — by the user, by Claude, or both
Slash command
/manifold:manifoldThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Constraint-first development framework that makes ALL constraints visible BEFORE implementation.
Constraint-first development framework that makes ALL constraints visible BEFORE implementation.
Each command is a separate skill. Use them directly:
/manifold:m0-init my-feature # Initialize manifold
/manifold:m1-constrain my-feature # Discover constraints
/manifold:m2-tension my-feature # Surface conflicts
/manifold:m3-anchor my-feature # Backward reasoning
/manifold:m4-generate my-feature # Create all artifacts
/manifold:m5-verify my-feature # Validate constraints
/manifold:m-status # Show current state
Available Skills:
/manifold:m0-init - Initialize a constraint manifold/manifold:m1-constrain - Interview-driven constraint discovery/manifold:m2-tension - Surface and resolve conflicts (--auto-deps for v2 dependency detection)/manifold:m3-anchor - Backward reasoning from outcome/manifold:m4-generate - Generate all artifacts/manifold:m6-integrate - Wire artifacts together (v2)/manifold:m5-verify - Verify constraints coverage (--actions for v2 gap automation)/manifold:m-status - Show current state (--history for v2 iteration tracking)Initialize a constraint manifold for a feature.
Usage: /manifold:m0-init <feature-name> [--outcome="<desired outcome>"]
What it does:
.manifold/<feature-name>.yamlExample:
/manifold:m0-init payment-retry --outcome="95% retry success for transient failures"
Interview-driven constraint discovery across 5 categories.
Usage: /manifold:m1-constrain <feature-name> [--category=<category>]
Constraint Categories:
Constraint Types:
Example:
/manifold:m1-constrain payment-retry
Discovered:
- B1: No duplicate payments (INVARIANT)
- B2: 95% success rate (GOAL)
- B3: Retry window ≤ 72 hours (BOUNDARY)
Surface and resolve constraint conflicts.
Usage: /manifold:m2-tension <feature-name> [--resolve]
Tension Types:
Why this matters: Requirements are rarely consistent. Real constraints often conflict:
Example:
/manifold:m2-tension payment-retry
TENSION DETECTED:
- T1: "API response < 200ms"
- B1: "No duplicates" (idempotency check adds ~50ms)
- Resolution: Cache recent transaction IDs
Backward reasoning from desired outcome.
Usage: /manifold:m3-anchor <feature-name> [--outcome="<statement>"]
Process:
Why backward reasoning? Forward planning misses implicit requirements. Backward reasoning surfaces them:
Forward: "Build a retry system" → might miss edge cases
Backward: "95% retry success" → REQUIRES:
Example:
/manifold:m3-anchor payment-retry --outcome="95% retry success"
For 95% success, what MUST be true?
- RT-1: Can distinguish transient from permanent failures
- RT-2: Retries are idempotent
- RT-3: Sufficient retry budget
SOLUTION SPACE:
A. Client-side exponential backoff
B. Server-side queue with workflow engine
C. Hybrid approach
Generate ALL artifacts simultaneously from the constraint manifold.
Usage: /manifold:m4-generate <feature-name> [--option=<A|B|C>] [--artifacts=<list>]
Artifacts Generated:
Why all at once? Traditional: Code → Tests → Docs → Ops (often forgotten). Manifold: All artifacts derive from the SAME source.
Example:
/manifold:m4-generate payment-retry --option=B
Generated:
- src/retry/payment-retry.ts
- src/retry/payment-retry.test.ts
- docs/payment-retry.md
- ops/runbooks/payment-retry-failure.md
- ops/dashboards/payment-retry.json
- ops/alerts/payment-retry.yaml
Verify ALL artifacts against ALL constraints.
Usage: /manifold:m5-verify <feature-name> [--strict]
Verification Matrix:
| Constraint | Code | Test | Docs | Ops | Status |
|---|---|---|---|---|---|
| B1: No duplicates | ✓ | ✓ | ✓ | ✓ | SATISFIED |
| T1: <200ms | ✓ | ◐ | ✓ | ✓ | PARTIAL |
Example:
/manifold:m5-verify payment-retry
Constraint Coverage:
- INVARIANTS: 3/3 (100%)
- GOALS: 4/5 (80%)
- BOUNDARIES: 2/4 (50%)
Gaps: Add test for ErrorClassifier.classify()
Wire generated artifacts together.
Usage: /manifold:m6-integrate <feature-name> [--check-only] [--auto-wire]
Flags:
--check-only - Show integration checklist without making changes--auto-wire - Attempt automatic integration where safeWhy this exists: /manifold:m4-generate creates artifacts in isolation. Integration (wiring modules together, adding feature flags, updating imports) was manual and error-prone. This command identifies integration points and produces actionable checklists.
Example:
/manifold:m6-integrate graph-d-validation
INTEGRATION CHECKLIST:
[1] Wire WAL into Storage
├── Source: src/storage/wal.rs
├── Target: src/storage/mod.rs
├── Action: Add `pub mod wal;`
└── Satisfies: RT-1, T3
[2] Add WAL feature flag
├── Target: Cargo.toml
├── Action: Add `wal = []` to [features]
└── Satisfies: T3
Show current Manifold state and next recommended action.
Usage: /manifold:m-status [<feature-name>] [--history] [--diff]
Flags (v2):
--history - Show full iteration history--diff - Show changes since last iterationExample:
/manifold:m-status
MANIFOLD STATUS
Feature: payment-retry
Phase: ANCHORED (3/5)
Constraint Summary:
- Constraints: 12 discovered
- Invariants: 3
- Goals: 5
- Boundaries: 4
- Tensions: 2 identified, 1 resolved
- Solution Space: 3 options
Workflow Progress:
[✓] /manifold:m0-init
[✓] /manifold:m1-constrain
[✓] /manifold:m2-tension
[✓] /manifold:m3-anchor
[ ] /manifold:m4-generate
[ ] /manifold:m5-verify
Next: /manifold:m4-generate payment-retry --option=B
All data stored in .manifold/ using JSON+Markdown hybrid format:
.manifold/
├── <feature>.json # Structure (IDs, types, phases)
├── <feature>.md # Content (statements, rationale)
└── <feature>.verify.json # Verification results
Legacy YAML format (
.yamlfiles) is still supported for backwards compatibility.
Manifold ensures tasks are completed through constraint traceability:
/manifold:m4-generate)Every generated artifact is recorded with the constraints it satisfies:
{
"generation": {
"artifacts": [
{
"path": "src/retry/PaymentRetryClient.ts",
"satisfies": ["RT-1", "RT-3"],
"status": "generated"
}
],
"coverage": {
"constraints_addressed": 12,
"constraints_total": 12
}
}
}
/manifold:m5-verify)Each constraint is checked across all artifacts:
{
"verification": {
"matrix": [
{
"constraint": "B1",
"code": true,
"test": true,
"docs": true,
"status": "SATISFIED"
}
],
"gaps": [
{
"id": "G1",
"constraint": "T2",
"action": "Add load test"
}
]
}
}
This enables:
.verify.json in pipelinesWhen installed as a plugin, manifold state is automatically preserved across context compaction via the included PreCompact hook. No manual configuration needed.
The hook injects .manifold/ state before compaction, so Claude remembers:
Manifold treats development as constraint satisfaction, not feature building:
npx claudepluginhub dhanesh/manifold --plugin manifoldBuilds manifests to plan work, scope tasks, spec requirements, and break down complex tasks before coding. Converts needs into deliverables, invariants, and verification criteria for features, bugs, refactors.
Guides architecture design via Socratic questioning, generates technical docs like overview.md, domain-model.md, and ADR for new features, systems, or project structuring.
Guides GitHub Spec-Kit CLI integration for 7-phase constitution-based spec-driven feature development, managing .specify/specs/ directories with phases: Constitution, Specify, Clarify, Plan, Tasks, Analyze, Implement.