threads
Skill0 starsChanged 55 days agoMITView on GitHub
Conversational scaffolding for multi-threaded exploratory discussions. This skill should be used during shaping sessions, brainstorming, spec conversations, or any exploration where multiple threads emerge. Tracks questions, ideas, decisions, agreements, and topics so nothing is lost. Dependency for PM and spec skills.
We split this skill into the rules it gives an agent
3 rules. 0 are common, 3 are distinctive, and 0 are very specific to this project.
0
Common
Most of the 9 edited versions we read keep these.
3
Distinctive
This author's own choices. Worth a look.
0
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 35
Every task has done-when criteria.
- Distinctive: line 40
After completing any task, check TaskList for the next item or newly unblocked work
- Distinctive: line 85
Before concluding the conversation or producing a final artifact (spec, summary, decision log), surface all unresolved threads:
“Common” is measured: kept by at least 6 in 10 of the 9 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Threads — Externalized Executive Function for Conversations
Serve as externalized executive function during exploratory conversations. Track every thread — questions, ideas, decisions, agreements, topics — using TaskCreate/TaskUpdate/TaskList so nothing is dropped, even when the conversation tangents wildly. Tangenting is expected and valuable; the skill exists so tangenting is free.
Thread Taxonomy
| Type | Prefix | Captures | Resolves when |
| Question | Q: | Open question needing answer | Answered explicitly |
| Idea | I: | Proposed approach or possibility | Accepted, rejected, or parked |
| Decision | D: | Choice point between alternatives | Decision made with rationale |
| Agreement | A: | Something both parties agreed on | Created already-resolved (record) |
| Thread | T: | General topic / line of discussion | Explored to satisfaction or parked |
Task Convention
Each thread = one task via TaskCreate.
- subject:
"<PREFIX> <concise description>"(e.g.,"Q: How should auth tokens refresh?") - description: Context (what prompted it), current state, and done-when criteria (explicit definition of done)
- activeForm: Present continuous for spinner (e.g.,
"Exploring auth token refresh") - metadata.thread_type:
question | idea | decision | agreement | thread - metadata.state:
open | parked | resolved - metadata.resolution: One-line outcome (populated when resolved)
For A: (agreement) tasks, create with metadata.state: resolved and metadata.resolution populated immediately, then immediately mark completed via TaskUpdate — agreements are records of what was decided, not open items.
Completion Discipline
Every task has done-when criteria. Do not mark a task completed unless those criteria are met.
- "Discussed" is a valid done-when — but only if actually discussed, not just mentioned
- "Decision made with rationale" means the rationale is recorded, not just that a choice was voiced
- "Mostly done" is not done. If done-when criteria aren't met, the task stays open
- After completing any task, check TaskList for the next item or newly unblocked work
Behavioral Protocol
Thread Creation Triggers
Apply these continuously throughout the conversation:
- New topic emerges — A substantively new line of discussion appears. Create a
T:task before engaging with the topic. - Question raised — A question that isn't immediately answered. Create a
Q:task. If the question IS answered immediately in the same exchange, create anA:agreement task instead (capturing the Q&A as a durable record). - Decision point surfaces — Alternatives or tradeoffs appear. Create a
D:task capturing the options in the description. - Explicit agreement reached — Both sides agree on something. Create an
A:task immediately with resolution populated. Agreements are the most durable output of exploration and the easiest to lose. - Multi-item intake — A message contains 2+ distinct items (questions, topics, ideas). TaskCreate all of them before responding to any.
Thread Update Triggers
- Question answered — Mark the
Q:task completed via TaskUpdate (status:completed). Setmetadata.state: resolved,metadata.resolutionto the answer. Completed tasks disappear from the active list — this is the desired behavior. - Decision made — Mark the
D:task completed. Include the chosen option and rationale inmetadata.resolution. - Idea accepted/rejected — Mark the
I:task completed with disposition inmetadata.resolution. - Thread explored to satisfaction — Mark the
T:task completed. - Topic shift with unresolved thread — Set
metadata.state: parkedon the thread being left behind (task stays open). - Return to parked thread — Set
metadata.state: open, task statusin_progress.
Thread Map
Surface a compact grouped summary every 5-7 turns, or immediately on request. Format:
## Thread Map
**Open (3)**
- Q: How should auth tokens refresh? (turn 4)
- D: REST vs GraphQL for new endpoints (turn 6)
- T: Performance budget discussion (turn 8)
**Parked (1)**
- I: Consider event sourcing for audit trail (turn 3)
**Resolved (2)**
- A: Use PostgreSQL for primary store (turn 2)
- Q: Which CI provider? — GitHub Actions (turn 5)Completion Gate
Before concluding the conversation or producing a final artifact (spec, summary, decision log), surface all unresolved threads:
Blocking — open Q: and D: items. These represent unanswered questions and unmade decisions. Flag them explicitly.
Deferrable — parked T: and I: items. These are exploratory threads that can be consciously deferred.
Present both categories. The user decides what to resolve now vs. defer. Do not conclude with unresolved blocking threads unless the user explicitly acknowledges them.
Injection in Depth
Specification Leverage
The conversation IS the spec work. Thread quality directly determines spec quality. A dropped question is a gap in the spec. A lost agreement is an unrecorded decision that will be relitigated later. Tracking threads with discipline is the mechanism that converts exploratory conversation into durable specification.
Intent Encoding
Agreements and decisions captured via A: and D: tasks are encoded intent. Each one is a primary source that downstream work (specs, implementations, handoffs) can trace back to. Losing them means losing the intent chain — the spec becomes disconnected from the reasoning that produced it.
Feedback Targets Context
If threads keep getting dropped in a particular pattern — e.g., agreements that emerge mid-discussion are consistently missed — update this skill's triggers rather than just catching the current miss. The skill should get better at the patterns that matter to the user's actual conversation style.
Other versions10 projects use a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 10
- obra/muse-skills★ 20same name
- AceDataCloud/Skills★ 17same name
- jacobwell/muse-skills★ 8same name
- retrodigio/claude-channel-slack★ 2same name
- thenavidm/threads-mcp-cli★ 2same name
- uplika/uplika-plugin★ 2same name
- andrmaz/spec-driven-architecture★ 1same name
- enkr1/claude-code-skills★ 1same name
- Dimks777/aiclub★ 0same name
- shabash-dev/shabash-plugins★ 0same name
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
Used alongsideProjects with it also use apple_healthkit, device_data and 10 more.
Other files people use alongside this one.
Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
jacobwellSkillapple_healthkit
The user's synced Apple Health (HealthKit) data: daily metrics (steps, distance, calories, heart rate, HRV, VO2max), sleep sessions (stages, quality, efficiency), and workouts.
Also in 3 projects that use this
jacobwellSkilldevice_data
Read cached contacts and calendar events from Muse storage. Delete Muse's local copy of either source without modifying paired devices.
Also in 3 projects that use this
- +10 more from jacobwell
In this repository43 other files it gives its agents.
- skills/technical/supabase-postgres-best-practices/AGENTS.mdAGENTS.md
- skills/technical/supabase-postgres-best-practices/CLAUDE.mdCLAUDE.md
- direct-handoffSkill
- handoffSkill
- nt-commsSkill
- meal-planningSkill
- resume-workflowSkill
- bash-scriptsSkill
- code-reviewSkill
- davinci-resolveSkill
- disk-cleanupSkill
- fastmcp-pythonSkill
- go-cliSkill
- markdown-to-pdfSkill
- pr-createSkill
- qa-planSkill
- rcaSkill
- react-native-best-practicesSkill
- ruby-railsSkill
- skill-creatorSkill
- spec-checkSkill
- supabase-migrationsSkill
- supabase-postgres-best-practicesSkill
- supabase-sqlSkill
- testingSkill
- ui-state-managementSkill
- waydroid-adbSkill
- calcinatioSkill
- citationsSkill
- exploreSkill
- manual-qaSkill
- nvim-copilotSkill
- orchestrateSkill
- orthogonal-emanationSkill
- product-intent-signal-extractionSkill
- project-management-signal-extractionSkill
- request-researchSkill
- researchSkill
- skill-discoverySkill
- slack-thread-triageSkill
- specSkill
- tmux-sidecarSkill
- youtube-transcribeSkill
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

