h-decide

Solid

Records a binding DecisionRecord with full FPF DRR discipline — problem frame, decision/contract, rationale, consequences. MANUAL ONLY — the operator must explicitly type /h-decide. Never auto-invoked: per Transformer Mandate, the human principal records binding choices, not the agent. Use after framing, exploring, and comparing are done and a chosen variant is ready to commit. For tactical reversible changes (under 2-week blast radius) pass mode="tactical" with explicit _skips and _skip_reason. For irreversible / security / cross-team / public-API / data-migration changes pass mode="deep" — all DRR fields required, no skips accepted.

Code & Development 1,338 stars 104 forks Updated today NOASSERTION

Install

View on GitHub

Quality Score: 89/100

Stars 20%
100
Recency 20%
100
Frontmatter 20%
70
Documentation 15%
100
Issue Health 10%
50
License 10%
100
Description 5%
100

Skill Content

# h-decide — Record a Decision (manual only, Transformer Mandate) You are recording a `DecisionRecord` via `mcp__haft__haft_decision(action="decide", ...)`. The operator invoked this manually (`disable-model-invocation: true` enforces that structurally per FPF X-TRANSFORMER). This is the binding moment. The DecisionRecord becomes the authoritative choice that downstream commissions, runtime runs, and verification cycles reference. Take it seriously. ## Required arguments for standard mode (default) Call `mcp__haft__haft_decision(action="decide", ...)` with at minimum: - `problem_ref` (or `problem_refs` for multi-problem) — the ProblemCard(s) this addresses - `portfolio_ref` — the SolutionPortfolio whose variants you compared - `selected_title` — the chosen variant title (must match a variant in the portfolio) - `why_selected` — rationale for the choice - `selection_policy` — the explicit policy used to choose (FPF CMP-02: declared BEFORE scoring, Anti-Goodhart) - `weakest_link` — what most plausibly breaks this choice (FPF X-WLNK) - `counterargument` — the strongest argument AGAINST this decision (FPF DEC-08: self-deception check) - `why_not_others` — `[{variant: "...", reason: "..."}]` for at least one rejected alternative - `rollback` — `{triggers: [...], steps: [...], blast_radius: "..."}` — at least one trigger required - `predictions` — `[{claim, observable, threshold, verify_after?, probability?}]` — falsifiable claims the verify loop will check. `probability` (opt...

Details

Author
m0n0x41d
Repository
m0n0x41d/haft
Created
6 months ago
Last Updated
today
Language
Go
License
NOASSERTION

Integrates with

Similar Skills

Semantically similar based on skill content — not just same category

AI & Automation Listed

decision-record

Use when locking a trade-off, structuring an ADR draft, or wiring supersession chains — frames options · trade-offs · consequences before the file is written by `adr-create`.

7 Updated today
event4u-app
AI & Automation Solid

h-note

Records a micro-decision with rationale into the haft artifact graph — lighter than a full DecisionRecord but persisted so future sessions and conflict detection can surface it. Make sure to use this skill whenever the user says "remember that", "FYI for later", "note that we chose X", "side note", "let's record we ruled out Y", "remember we decided X", "for the record", "worth noting", "TIL", "important caveat", "save this thought" — or whenever a small choice with stated rationale belongs in project memory but does not justify the full DRR ceremony. The kernel rejects content-free notes — rationale is required. For binding choices use h-decide (manual-only). For framing problems use h-frame.

1,338 Updated today
m0n0x41d
Code & Development Listed

hv-decide

Capture a hard-boundary decision into .hv/DECISIONS.md — manually confirmed, never auto-invoked. Decisions differ from learnings in KNOWLEDGE.md by being active commitments with explicit forbids/permits. Use on "decide on X", "we're committing to X", "lock in the boundary that Y", or when a session has produced a constraint future work must respect. Accepts `--from-learning <topic>` to promote a hardened KNOWLEDGE.md learning into a decision, and `--from-spike <name>` to promote a `.hv/spikes/<name>.md` finding.

0 Updated today
l4ci