Files
hq/.claude/skills/hq-defer/SKILL.md
T
jochen 971d0839f5 Add hq-defer: park a thought without moving the work off course
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.
2026-09-24 16:40:24 +02:00

3.7 KiB

name, description
name description
hq-defer 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 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.

    ---
    name: <kebab-slug>
    description: Deferred note — <one line>
    metadata:
      type: project
    ---
    
    Raised and deliberately deferred on YYYY-MM-DD: **<the thought, in the user's own terms>**
    
    **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.