Files
jochen db2c950ba6 hq-defer: make the MEMORY.md pointer an explicit placeholder
Review caught it reading as a real relative link, so a link checker flags
.claude/skills/hq-defer/file.md forever. Angle brackets say placeholder.
2026-09-24 18:38:43 +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>](<kebab-slug>.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.