marketplace

close

Ends a task without losing anything from it.

When it runs

It runs on "close", "end", or your tool's close command, typed as the message, in any chat that is not a deliberate thinking session with a close of its own. Inside one (in Alexandria, a chat where the alexandria skill was started and has not closed), the chat decides the close, not the word: the same words run that session's close (the a. skill), so hand over to it and stop here. Load this skill fresh at that moment instead of working from a memory of it. Long sessions get compacted, a close run from a summary is where value quietly disappears, and a silent close failure is the worst kind, because nothing downstream catches it.

This task only

"Threads" means unresolved lines of work inside this conversation, never other chats or tasks. Never list, read, message, delegate to, wait on, interrupt, archive or close another chat or task unless the person explicitly asks to close all of them. Closing never means archiving: finish the work and leave the conversation where it is unless they ask to archive it. If they also use a separate close for a deliberate thinking session (a. in Alexandria), that is a different skill with a different job; keep the two apart, and outside such a session never run its reflection, whichever word they typed.

Run whichever of the three parts below the session touched, skip any that nothing surfaced for, and leave no empty sections.

1. Keep what the session taught

Any session can surface signal about the person, and personal ones surface the most. Route each piece quietly to its home in their own files, in their words.

  • What they think (positions, stories, patterns, contradictions) goes to their working notes until they confirm it as their position, then where they keep their beliefs.
  • What is true of their life (where they are, the people in it, dates, plans, money, health, possessions) goes where their own list of where things live says, or their default facts file; health, money and identity details only where that list puts them, otherwise one question. Only what they said, never inferred (Alexandria: system/canon/foundation.md § what is kept, and what is read).
  • How to work with them (what worked, what didn't) rewrites the matching rule where they keep that, in the present tense, never as a dated diary entry.
  • A correction to a practice in their own words ("prefer Z", "X feels off because Y") is folded into that practice's file as a coherent passage, never appended as a log line, with a one-line note so they can revert it.
  • A piece they made that shipped after rounds of their notes taught a style. Rewrite the guide for that style where they keep how they write, so the next piece in it would come out as this one finally did on the first try, and point the guide at the shipped piece as its example.
  • A correction you can't fold into its rule yet goes to wherever they keep corrections waiting to land.

Logging isn't capturing

A signal in a log or a reflection counts only when the file that should own it carries it at full strength. For each correction, name its durable home and read it; if it misses the point or is weaker than the signal, integrate the signal there. The log entry is a pointer, never the substitute. If the same correction is already waiting, or they say "I keep telling you this", the owning file failed, so fix the file instead of logging the complaint again. A signal you have to capture twice is a bug in the file, not new signal.

Verify every write landed

Read each write back, or check git, before counting it. Nothing downstream catches a write that never reached disk, so an unverified write is a lost write.

A task with no project still has a close: most personal sessions touch at least the how-to-work-with-them notes and maybe one practice file. Signal that needs the live context of the close dies with the tab, and no later sweep recovers it, so capture it now, with full context, or not at all.

2. Run the project's own close

If the work belongs to a project with its own upkeep rules (its AGENTS.md, a conventions file), run them for what this session changed, on top of part 1. Never assume which project; look at the folder and the files touched.

3. Finish the threads and report

  • Close what follows the work. A change can leave stale whatever follows it: a page built from it, a summary of it, a copy of it somewhere else. If their system keeps those links in files (Alexandria's upkeep module does, and python3 ~/.local/share/alexandria/scripts/change_closure.py check <each file this task changed> lists every one whose source moved since it was last read), read each listed output against its source, update it or confirm it, and leave none listed. A follow-up only you knew about gets written down as a link, so the next model doesn't have to know it too.
  • Resolve every open thread in this task that doesn't genuinely need the person, keeping each change reversible. Save or commit any unsaved work so nothing dies with the tab. If this task improved something they share with other people, it becomes one line in the upkeep queue (Alexandria's upkeep module, § Where each change goes), and their next Alexandria session offers it for a yes; this close never asks about it. Park what truly can't be settled where they keep open questions, with a drafted resolution they can accept in one word later.
  • Leave no copies behind. If this task worked in its own copy of a repository (a worktree) or on its own branch, remove both once the work has landed where it belongs; work that is paused is committed to its branch first, so the folder can go and nothing is lost. Leftover copies and branches pile up across tasks until the person's folders and repositories are a mess they have to ask someone to clean.
  • Ask only what genuinely needs them, one plain line each, answerable in a word. Say what they're choosing between, what each option costs, and your pick. Never a file name or internal label they would have to decode, and parking a question is not asking it. If nothing needs them, ask nothing.
  • Report what's different now, what's still open (most important first), and what closed on its own. Readable in under a minute, with no empty sections and no recap of the whole session. A reflection on what they now think belongs to their thinking-session close, never here.

The bar is that after this runs, leaving the task loses nothing, neither its work nor what it taught, and every other task is untouched.