Skip to main content
ClaudeWave
Skill1.4k repo starsupdated 1mo ago

h-note

h-note captures lightweight micro-decisions and observations into the decision graph when an operator identifies something noteworthy. Use it to record factual choices (choosing X over Y with rationale), observations with reasoning (performance baseline change), or tactical insights, but require explicit rationale for every note and reject vague statements. Route binding decisions to h-decide and full problem frames to h-frame instead.

Install in Claude Code
Copy
git clone --depth 1 https://github.com/m0n0x41d/haft /tmp/h-note && cp -r /tmp/h-note/packages/haft-pi/skills/h-note ~/.claude/skills/h-note
Then start a new Claude Code session; the skill loads automatically.

SKILL.md

# h-note — Save a lightweight fact

Use `haft_note` only when the operator asks to remember/save something or a
current Work supplies a concrete operator-named or agent-inferred receiving
use that needs an addressable fact. Keep observations atomic, state
why they matter, and anchor them to relevant artifacts and stable implementation
files. A note is not a choice, ProblemCard, evidence verdict, approval, or
WorkPlan.

Tool arguments and generated references are not proof that the operator asked
to persist. Use `task_context` only to correlate the saved fact with its
receiving task, not as an authority receipt. Set `valid_until` when the fact has
a known expiry or review boundary.

When the exact current concern is known, include `entity_ref` with
`ref_kind_id="U.EntityRef"` plus `bounded_context_ref`. Preserve the returned
`Haft.ProjectRecordRef` exactly for later typed relations; never derive a
record ID from the note artifact ID. Without exact concern basis, the note may
persist while typed projection remains underdetermined.