discuss
Skill0 starsChanged 8 days agoMITView on GitHub
Think a decision through with the user: scan the parts of the project the decision actually touches, look up anything that depends on the outside world, then come back with a position — the options that survive, the one you'd pick, and what would change your mind. Kept cheap on purpose: a scoped scan, at most a couple of searches, no subagents. Invoke when the user wants to weigh an approach, choose between options, or pressure-test an idea before building it. Skip when they want a direct factual answer (that is ask) or want the work done.
We split this skill into the rules it gives an agent
6 rules. 0 are common, 5 are distinctive, and 1 is very specific to this project.
0
Common
Most of the 28 edited versions we read keep these.
5
Distinctive
This author's own choices. Worth a look.
1
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 18
Write the decision down in a line to yourself.
- Distinctive: line 22
Not the project. The part of the project the decision touches.
- Distinctive: line 41
Do not read the whole tree, do not enumerate every file, and do not spawn a subagent: a subagent starts cold, re-derives context you …
- Distinctive: line 47
Search the web when — and only when — the decision turns on something you cannot see from here and cannot safely hold in memory:
- Very specific: line 60
No web search tool (Codex without --search, say)?
- Distinctive: line 91
No files written, no commands with side effects, no artifact, no implementation — unless the user asks.
“Common” is measured: kept by at least 6 in 10 of the 28 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
Discuss
The user wants a thinking partner, not a report and not a build. Come back with an opinion they can push against.
1. Find the real question first
Most "what do you think about X" questions hide a decision. Name it before spending anything: is this "which of these two", or "is this a good idea at all", or "what am I not seeing"? If the request is genuinely ambiguous and the readings lead somewhere different, ask one question and stop — do not scan the project to answer both.
Write the decision down in a line to yourself. Everything below is scoped to it.
2. Scan what the decision touches
Not the project. The part of the project the decision touches.
Budget: four or five tool calls, before any web lookup.
rg -n 'PATTERN' -l # where does this concern live
sed -n '1,60p' path/to/the/file # read the one that matters
cat package.json 2>/dev/null | head -40 # what's already a dependency
git log --oneline -10 # what direction is this movingWhat you are looking for, in this order:
- What already exists — the codebase may have solved this once already, and a second spelling of the same idea is a cost the user has not priced in.
- The local vocabulary — the patterns, naming, and libraries already here. Consistency with them usually beats a marginally better idea.
- The constraints — the runtime, the versions, the thing that cannot change.
Do not read the whole tree, do not enumerate every file, and do not spawn a subagent: a subagent starts cold, re-derives context you already hold, and returns prose you then have to re-read. For a discussion it is the expensive path with the worse result.
3. Look outward only when the answer lives outside
Search the web when — and only when — the decision turns on something you cannot see from here and cannot safely hold in memory:
- how a library actually behaves in the version this project pins
- whether an approach is still the current one, or has a known failure mode
- a benchmark, a CVE, a deprecation, a breaking change
Two searches, maximum. Query the specific thing ("<library> <version> <behavior>"),
read the one result that answers it, stop. Do not open a page to confirm what its own
snippet already said. If the question turns on nothing external — a naming choice, a
structural call, a tradeoff inside code you have already read — skip this step entirely.
Most discussions do.
No web search tool (Codex without --search, say)? Name the fact you would have looked
up and treat it as an open assumption in the answer, not a settled one.
Anything you bring back from the web, say where it came from and how current it is.
4. Have the discussion
Structure, short:
- Where you land, first. One or two sentences. A recommendation, not a menu. "I'd do B" — then the reason.
- The options that survive. Two, occasionally three. Each gets the cost that actually decides it, not a symmetric pros/cons table. Options you rejected get one clause, not a paragraph.
- What it costs. The part that bites later: the migration, the coupling, the thing that gets hard at 10x, the second implementation of something already here.
- What would change your mind. Name the fact that flips the recommendation — "if these rows ever exceed a few thousand, A stops working". This is the most useful line in the whole answer, because it tells the user which of their facts matters.
- One question back, when one genuinely blocks the call. One, and only if it changes the answer.
Tone: a colleague with a view. Disagree with the premise when it is wrong — say so in a sentence, then engage with what they are actually trying to do rather than stopping at the objection. Do not hedge everything into "it depends"; when it does depend, say on what.
Ground it in what you read: src/queue/worker.ts:88 already retries is worth more than a
general principle about retries.
5. Stay a discussion
No files written, no commands with side effects, no artifact, no implementation — unless the user asks. A code sketch is fine when it is the clearest way to show a difference; keep it to a few lines in the message, not a file on disk.
End on the open thread, not a summary. The user came to think; leave them somewhere to reply.
Other versions31 projects use a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 31
- govctl-org/govctl★ 272same name
- team-attention/hoyeon★ 173same name
- avibebuilder/claude-prime★ 119same name
- MarcusJellinghaus/mcp-workspace★ 49same name
- codesoda/discuss-cli★ 46same name
- MarcusJellinghaus/mcp-tools-py★ 20same name
- danielcherubini/skills★ 14same name
- maxwellsdm1867/wheeler★ 12same name
- akash-joshi/agent-skills★ 8same name
- iopsystems/skills-mcp★ 6same name
21 more not listed
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 quick, execute and 9 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.
codebycoreySkillquick
Quick start a change with minimal interaction. Use when fast-tracking a straightforward change that needs proposal, design, and tasks in one step.
Also in 4 projects that use this
sahinSkillexecute
Also in 4 projects that use this
BlockSkillplan
Draft a TDD, PRD, or lightweight plan in the conversation without committing it.
Also in 7 projects that use this
Hugging FaceSkillimplement
Make tests pass. Invoke after /write-tests produces failing tests.
Also in 7 projects that use this
MicrosoftSkillreport
Turn an exploration (threads, findings, charts) into a single Markdown report — note, blog post, executive summary, KPI dashboard, slide brief, or multi-section analytical report, with embedded charts.
Also in 3 projects that use this
MicrosoftSkillinit
Also in 3 projects that use this
- +1 more from microsoft
In this repository11 other files it gives its agents.
- add-designpatternSkill
- add-owasptoptenSkill
- add-spring-structureSkill
- askSkill
- checkout-commitSkill
- check-performanceSkill
- check-securitySkill
- design-uiSkill
- generate-api-docsSkill
- release-versionSkill
- testingSkill
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
Reviews can't be read right now.
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.

