thread
v2.11.0One system that drives work through time — from attention to merged PRs. The continuity verbs answer 'what's my next move?' or decisively dispose of the current thread: open/resume durable state (thread:open), route when undecided (thread:next), orient on a whole project/area, reshuffle its open work into phases and tasks, and steer (thread:orient), lock a thread dormant (thread:stash), set it down onto a specific day (thread:defer), fork it to a fresh agent (thread:handoff), or finish and persist (thread:close). The rollout verbs drive wave-shaped work through a convergence engine: thread:schedule orders tasks into a queue, thread:execute converges them (plan-gate -> verifier retry -> master review -> per-wave auto-merge), with thread:status and thread:repair for oversight. One execution-fit test routes work between lanes.
By Lachlan Tetlow-StuartLicense: MIT0 GitHub starsUpdated 1 hour ago
Directory evidence
- Runtimes
- Claude Code
- Parsed components
- 11 skill or MCP entries
- Source updated
- Oct 2, 2026
- Manifest status
- Canonical path parsed
The directory validates manifest shape and source location. It does not execute the plugin or provide a security endorsement. Review the indexing methodology →
Install thread for Claude Code
claude plugin marketplace add IchenDEV/agent-plugin-mkt
claude plugin marketplace update agent-plugin-marketplace
claude plugin install thread@agent-plugin-marketplacePaste and run these commands in a terminal with Claude Code. They add and refresh the PluginsMP catalog, then install this plugin.
The installer fetches third-party code from the source repository shown on this page. This directory validates manifest structure and source location, but does not perform a security audit; review the manifest, components, and source before installing.
Get the source manually
git clone https://github.com/lachyts/thread-skillClone the source repository, then follow its setup instructions to add the plugin to a compatible client. The repository root is the plugin root.
Plugin files
├── .claude-plugin/plugin.json├── skills/close/SKILL.md├── skills/defer/SKILL.md├── skills/execute/SKILL.md├── skills/handoff/SKILL.md├── skills/next/SKILL.md├── skills/open/SKILL.md├── skills/orient/SKILL.md├── skills/repair/SKILL.md├── skills/schedule/SKILL.md├── skills/stash/SKILL.md└── skills/status/SKILL.md
Included Skills11
End-of-thread capture — update the active thread (project THREAD.md or shared _shared/threads/<slug>.md) with what happened this session, then save the rest autonomously: auto-memory (save-time triage, provenance-stamped), workspace knowledge, process-observation candidates to the METHOD.md the altitude routing test resolves (project, seat or estate), and git commits all happen without asking, and it lands its own close-out commits without asking too (pushes them, opens a `landing` PR and queues auto-merge, never waiting; ADR 0028), and lands the session's own branch: `/fresh-review` inline, fixes, merge queued only after a clean round (§ Land the own branch); vault tasks are the only proposal. Available globally — works from any CWD. Use when the work is FINISHED for now and state should persist; if the work continues elsewhere use thread:handoff, if it's being set down for later use thread:stash or thread:defer. Invoke with `/thread:close` or "close this thread".
Set the current thread down onto a specific day — writes a self-contained Obsidian task SCHEDULED for that day (default tomorrow), routed to the right project, carrying a summary + copy-paste resume prompt. The task surfaces on that day's page via /morning and the TaskNotes agenda. Triggers on "defer this", "pick this up tomorrow/monday", "put this on tomorrow", "come back to this friday", "this is tomorrow's problem", or explicit /thread:defer [day]. For "no particular day, just don't lose it" use thread:stash instead.
Use to execute a rollout queue — reads the rollout note, resolves per-task config, and runs the convergence engine on the Workflow tool (plan-gate → verifier retry → master review), one task per call up to the parallel ceiling; the lead integrates each approved task with the latest main and is its only merger. Continuous by default; --gated pauses before each merge; a plan-declared gated input always pauses for human sign-off. Triggers on "execute [[rollout-slug]]", "pause the rollout", "reinstate [[rollout]]", or explicit /thread:execute. Only runs `protocol_version: 5` rollouts; older notes are refused with a /thread:schedule --regenerate prompt.
Fork the current conversation to a fresh agent NOW. Always writes a durable handoff doc at docs/handoffs/YYYY-MM-DD-<slug>.md in the session's repo (never OS temp) and lands it: committed, then pushed or a `landing` PR opened with auto-merge queued, never waiting (ADR 0028); plus a paste-ready prompt; the consumer marks it consumed and its close deletes it. In Codex Desktop or a Chorus Session a successful handoff also creates a new visible task seeded with that prompt — a headless session or subagent is never a substitute; elsewhere label it a manual handoff. Trigger ONLY on explicit fork intent — "hand this off", "fork this to a fresh agent", "new session and keep going", /thread:handoff — or on router dispatch (thread:next / thread:orient). Never when "handoff" means people or other systems, never proactively because the context feels long — recommend thread:next instead.
The undecided moment — "what's my next move?" for the current thread. Summarises where the work is, recommends ONE move (keep going / defer / stash / handoff / close), then dispatches to the chosen sibling route. Triggers on "what's my next move", "what should I do with this thread", "where are we — what now", "should I keep going or close this", "next steps?", or explicit /thread:next. If the intent is already decisive ("stash this", "defer to friday"), skip this router and invoke that route directly.
Open, resume, or start durable thread state. Use to load a THREAD.md (project threads at ~/Projects/<Area>/<Project>/THREAD.md, shared threads at ~/repos/workspaces/_shared/threads/<slug>.md), to list active threads, or to PICK UP a stashed/deferred thread capture from an Obsidian task — "/thread:open [[<task>]]" reads the task, primes from its resume prompt, and marks the capture done; "/thread:open docs/handoffs/<doc>" does the same for a handoff doc and marks it consumed. Triggers on "open/load/resume the <slug> thread", "pick up [[task]]", "resume this task", "/thread:open", or when a conversation develops thread shape and no thread exists yet.
Pick a project back up and reshuffle it: audit a project/area after time away, re-sort its open work (bugs, brain dumps, loose tasks, unstarted phases), grill what is unclear, write phases and tasks, schedule the wave-shaped ones and offer to execute. One plan, design note or brain dump becomes phased tasks. Triggers on "orient me on <project>", "where is <project> at overall", "reshuffle <project>", "turn these tasks into a roadmap", "split/break this plan into numbered, phased tasks", "fan out background sessions on <project>", or /thread:orient [target]; --debrief sweeps batches. One thread: thread:next.
Use to unstick a wave rollout that has stalled — run it whenever there's an issue with the whole rollout, not a single task. Triggers on "repair [[rollout]]", "fix this rollout", "[[rollout]] is stuck", "sort out [[rollout]]", "unblock the rollout", or after /thread:status shows blockers/drift. A thin CONDUCTOR over /thread:execute (never a second engine): it diagnoses (runs /thread:status), reconciles drift, asks YOU only the decisions no agent can make and writes them into the notes, auto-retries agent-fixable blocks, dependency-aware-defers wedged tasks, then hands off to execute's resume — the engine keeps sole merge authority. Scope: Obsidian + gh/git + the execute engine.
Use when planning a parallel rollout of Obsidian tasks under a single project — produces a thin rollout note (data only) that `/thread:execute` runs as a queue on the Workflow engine. Reads tasks from ~/repos/obsidian/Work/Tasks/, orders the queue (dependencies recorded in frontmatter, Solo proposed for sweeping changes), auto-merges affine same-file task clusters (same change, artificially split) into one dispatch unit, refuses a second unfinished rollout on a repo (--regenerate supersedes this project's paused or unstarted one, carrying its unlanded tasks), and writes an always-dated <project-slug>-rollout-<YYYY-MM-DD>.md with `protocol_version: 5` + config defaults. Scope: Obsidian only.
Lock the current thread away dormant — out of time, not the current focus, but must not be lost. Writes a self-contained Obsidian task (NO scheduled date) routed to the right project, carrying a summary + copy-paste resume prompt, so the session can be shut down safely. Triggers on "stash this thread", "lock this in", "park this", "I'm out of time — save this", "not my focus right now, don't lose it", or explicit /thread:stash. For "pick it up on <day>" use thread:defer instead; for "work continues right now in a new session" use thread:handoff.
Use to see the present situation of a wave rollout — a read-only situational report. Triggers on "wave status of [[rollout]]", "where is [[rollout]] / this rollout", "what state is the rollout in", "what's left on [[rollout]]", "is [[rollout]] done", or pointing at a rollout note and asking what's happening. Reads the rollout note + every linked task note and cross-checks live GitHub PRs + git worktrees, flags drift, and recommends the next action. NEVER writes the vault or merges anything. Read-only sibling of /thread:repair. Scope: Obsidian + read-only gh/git.
Plugin manifests1
{
"name": "thread",
"version": "2.11.0",
"description": "One system that drives work through time — from attention to merged PRs. The continuity verbs answer 'what's my next move?' or decisively dispose of the current thread: open/resume durable state (thread:open), route when undecided (thread:next), orient on a whole project/area, reshuffle its open work into phases and tasks, and steer (thread:orient), lock a thread dormant (thread:stash), set it down onto a specific day (thread:defer), fork it to a fresh agent (thread:handoff), or finish and persist (thread:close). The rollout verbs drive wave-shaped work through a convergence engine: thread:schedule orders tasks into a queue, thread:execute converges them (plan-gate -> verifier retry -> master review -> per-wave auto-merge), with thread:status and thread:repair for oversight. One execution-fit test routes work between lanes.",
"author": {
"name": "Lachlan Tetlow-Stuart"
},
"repository": "https://github.com/lachyts/thread-skill",
"license": "MIT",
"keywords": [
"continuity",
"threads",
"handoff",
"workflow",
"orchestration",
"multi-agent",
"rollout",
"convergence",
"obsidian",
"tasks",
"context-management",
"automation",
"claude-code"
]
}For maintainers
If you maintain this plugin, link to this source-backed listing from your README so users can review its manifest and indexed components.
[thread on Agent Plugins Marketplace](https://pluginsmp.com/plugins/thread)