# H Note

> Persist an explicitly requested non-binding fact, observation, caveat, or small rationale in Haft project memory. Do not auto-persist ordinary reasoning.

- Skill: `m0n0x41d/h-note-2` (Agent Skill)
- Install (CLI): `npx skillmds@latest add m0n0x41d/h-note-2`
- Raw SKILL.md: https://api.skillmd.com/api/skills/m0n0x41d/h-note-2/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: m0n0x41d (https://skillmd.com/u/m0n0x41d)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/m0n0x41d/h-note-2

---


# 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.

