From 971d0839f5a02087886630dbd929c0ed2fc37602 Mon Sep 17 00:00:00 2001 From: jochen Date: Thu, 24 Sep 2026 16:40:24 +0200 Subject: [PATCH] Add hq-defer: park a thought without moving the work off course MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit A thought raised mid-task needed remembering but not working on, and there was no mechanism for that — so it was recorded by hand. This is that, made repeatable. Records to Claude's persistent memory rather than the repository, deliberately. A parked thought has no number, owner or status: giving it one asserts triage that deferring says has not happened. A shared "deferred" document would be a central status file, which AGENTS.md forbids. And a repository write means a branch, a commit and an MR — the drift the skill exists to prevent. Wraps no playbook, because deferring precedes the development cycle rather than being part of it. It does say which playbook a thought would need if it graduates, and that recording "undetermined" is the honest answer when the evidence does not say. The stop condition is the substance: at most two lines, then return to what was in progress. No plan, no triage question, nothing opened. --- .claude/skills/hq-defer/SKILL.md | 78 ++++++++++++++++++++++++++++++++ 1 file changed, 78 insertions(+) create mode 100644 .claude/skills/hq-defer/SKILL.md diff --git a/.claude/skills/hq-defer/SKILL.md b/.claude/skills/hq-defer/SKILL.md new file mode 100644 index 0000000..ac1a985 --- /dev/null +++ b/.claude/skills/hq-defer/SKILL.md @@ -0,0 +1,78 @@ +--- +name: hq-defer +description: Use when a thought is raised that should be remembered but NOT worked on now — an aside during other work, a "we should look at X someday", a known gap nobody is assigning yet. Triggers on "defer this", "park this", "register this thought", "note this for later", "don't work on it, just remember it". Records and returns to whatever was already in progress. +--- + +# hq-defer + +Parks a thought so it is not lost, **without moving the work off course.** The defer is the +point: the thought is recorded and the previous task resumes. + +This skill wraps no playbook, because deferring is not part of the development cycle — it is +what happens *before* something enters it. A parked thought has no number, no owner and no +status, and that is correct. + +## Where it goes, and why not the repository + +Record it as **one memory file** in Claude's persistent memory directory for this project (the +path is given in the session's memory instructions), with `metadata.type: project`, plus a +one-line pointer in `MEMORY.md`. + +**Not** in `04-ISSUES`, `01-RESEARCH` or anywhere else in the repository: + +- A parked thought is not an issue or a research effort. Giving it a number asserts it has been + triaged, which is exactly what deferring says has not happened. +- A shared "deferred" or "someday" document is a **central status file**, which + [`AGENTS.md`](../../../AGENTS.md) forbids. Status lives in frontmatter on real records, and a + parked thought has no real record yet. +- A repository write means a branch, a commit and a pull request — drift, which is the one thing + this skill exists to avoid. + +## Steps + +1. Write the memory file. Slug is kebab-case and descriptive of the thought, not of the act of + deferring. + + ```markdown + --- + name: + description: Deferred note — + metadata: + type: project + --- + + Raised and deliberately deferred on YYYY-MM-DD: **** + + **Why:** what was being worked on when it came up, and that deferring was intentional so + that work was not pulled off course. + + **How to apply:** treat as an open thread, not an assignment. Do not start on it + unprompted. If it graduates it needs an HQ home first — an issue under playbook + [03](../../../00-META/process/03-issues.md) if a stated behaviour does not happen, or + research under playbook [01](../../../00-META/process/01-research.md) if it is still an + idea. Say which is undetermined, if it is. + ``` + +2. Append one line to `MEMORY.md`: `- [Title](file.md) — deferred YYYY-MM-DD; parked, no HQ + record, do not start unprompted`. +3. Convert relative dates to absolute before writing. "Last week" is worthless in six months. +4. Check for an existing memory covering the same thought and update it instead of adding a + duplicate. + +## Then stop + +Reply in **at most two lines** — what was recorded, and that it is parked — and **return to +whatever was in progress before.** Do not summarise the parked thought back at length, do not +propose a plan for it, do not ask which playbook it belongs to, and do not open anything. + +If nothing was in progress, say only that it is recorded. + +## Do not + +- Do not create an issue, a research effort, a decision record or a design document. +- Do not create a branch, commit or pull request. +- Do not start investigating the thought, however cheap the first check looks. +- Do not name nodes, domains, addresses, absolute paths or usernames in the memory file — the + thought may later be quoted into this repository, which is public. +- Do not decide whether it is an issue or research when the evidence does not say. Recording + "undetermined" is the honest outcome and costs nothing later.