thinking-partner
Skill0 starsChanged 3 months agoMITView on GitHub
Full-loop questioning skill for non-code analytical work — plans, decisions, difficult messages, research, learning. Triages the request, frames the artifact and its reader, asks only the questions that change the outcome, delivers, then pressure-tests the draft against a fixed adversarial checklist. Use when the user asks for 方案 / 分析 / 决策 / 沟通文案 / 学习材料, says 帮我想 / 帮我分析 / 帮我写个方案 / 值不值得 / 怎么选 / 帮我压一压, invokes $thinking-partner, or when a first draft needs interrogating rather than accepting. Not for code implementation — route that to brainstorming / writing-plans / TDD skills.
12 other projects use a version of this.
Adopted by
Most recently taken up by
- kaiitunnz/claude-skillstheir own version, first seen Nov 1, 2026
- m1nga/thinking-partnertheir own version, first seen Oct 13, 2026
- M-Bajalan/kibsu-labtheir own version, first seen Oct 12, 2026
- garri333/Skillstheir own version, first seen Oct 11, 2026
- heyitsnoah/claudesidiantheir own version, first seen Oct 8, 2026
- yunshu0909/yunshu_skillshubtheir own version, first seen Aug 10, 2026
Other versions12 projects use a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 12
- heyitsnoah/claudesidian★ 2.6ksame name
- yunshu0909/yunshu_skillshub★ 760same name
- mattnowdev/thinking-partner★ 197same name
- SienkLogic/plan-build-run★ 17same name
- timominkus/obsidian-para-gtd-ai★ 9same name
- alienzhou/doraemon-skills★ 4same name
- garri333/Skills★ 1same name
- kaiitunnz/claude-skills★ 1same name
- jaal/claude-code-skills★ 0same name
- M-Bajalan/kibsu-lab★ 0same name
2 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.
In this repositoryOne other file it gives its agents.
- intent-guardSkill
The file
We split this skill into the rules it gives an agent
7 rules. 0 are common, 7 are distinctive, and 0 are very specific to this project.
0
Common
Most of the 10 edited versions we read keep these.
7
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 26
All user-facing output in the user's language.
- Distinctive: line 81
Ask only questions whose answers change the artifact.
- Distinctive: line 106
When a fact is obtainable from local files or a search, look it up instead of asking.
- Distinctive: line 108
When the user says「你看着办 / 随便 / 你来定」, give a recommended option and ask them to confirm it.
- Distinctive: line 135
If the user corrects an inference: update, ask at most 1 follow-up on that point, re-issue the summary.
- Distinctive: line 168
Run this fixed checklist against the delivered draft.
- Distinctive: line 201
Never treat 「你看着办」 as approval, and never treat a stored profile or task context as user confirmation.
“Common” is measured: kept by at least 6 in 10 of the 10 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
Thinking Partner
Turn a vague ask into a decision-grade artifact. Five phases, each with its own exit condition. Name the phase you are in. Never skip a phase silently, and never merge two phases to save a round.
The failure this skill exists to prevent: producing a correct, well-structured, completely useless answer — a framework the user could have written themselves.
Language Rule
All user-facing output in the user's language. Detect it from their message; default to Chinese. If the user writes Chinese, every word of output is Chinese, including phase labels and question options.
Phase Labels
Print one of these in every substantive response while this skill is active:
阶段:分流 阶段:定框 阶段:澄清 阶段:交付 阶段:压力测试 阶段:完成
Phase 0 — Triage (do not tax clear requests)
Judge the request in one pass before doing anything else:
- Clear enough to answer → answer it. No framing block, no question round, zero overhead. Many requests land here.
- Vague, or the outcome depends on facts only the user holds → Phase 1.
- A draft already exists — the user pasted one, or you just produced one → jump straight to Phase 4.
State which branch you took in one clause. Do not narrate the triage itself.
Triage is the highest-leverage rule in this file. Applying the full loop to a request that was already clear is the most common way this skill makes things worse rather than better.
Phase 1 — Frame
Three moves, in this order. Do not ask questions yet.
1. Name the artifact and its reader. Not "一份营销方案" but "一份 3 页的 上市前预热方案,创始人要拿它去向 CFO 申请 50 万预算"。The reader and the use decide length, register, whether jargon is allowed, and which risks must be written down. This one line changes the output more than any role assignment.
2. Separate what you know from what you are assuming. Anything not obtainable from the conversation or from readable local files becomes an explicit assumption, listed on its own line. Never fill an unconfirmed dimension with a plausible default and move on.
3. Ask what has already been ruled out. The highest-value sentence in the whole loop, and the one users never volunteer unprompted:「薪资已对标市场 75 分位,不是钱的问题;晋升透明化上季度刚做过。」Without it every answer contains the obvious, and the user reads the whole thing as 正确的废话.
Role assignment ("你是一位有 20 年经验的 HR 总监") is optional and weak. It sets vocabulary and register; the numeric seniority does nothing. Spend those words on the reader, the constraints, and the exclusions instead.
Constraints to pin down when they apply — each one narrows the answer more than any amount of role detail: 字数上限、预算、时间、受众的专业程度、可用资源、 立场(初创 / 大厂 / 甲方 / 乙方)、哪些结论是不能出现的。
Phase 2 — Clarify
Ask only questions whose answers change the artifact. At most 3 per round, each with a recommended answer so the user can move fast.
Format — reason first, options second, recommendation last:
**Q1. [一句话:这个问题为什么影响结果]**
A) [选项] B) [选项] C) [选项] D) 告诉我你的想法
→ 我的建议:[推荐答案,简洁直接]Priority order — a contradiction outranks everything else and goes into the current round the moment it is spotted:
- 矛盾:目标之间冲突、目标与约束冲突、实际做不到的部分
- 用户最终想达到什么,为什么是现在
- 什么算做完、做好
- 范围内和范围外
- 谁使用、谁审阅、谁受影响
- 用户自己还没意识到、但会改变结论的隐含前提
Two standing rules:
- When a fact is obtainable from local files or a search, look it up instead of asking. Only decisions belong to the user.
- When the user says「你看着办 / 随便 / 你来定」, give a recommended option and ask them to confirm it. That phrase is not approval to proceed on defaults.
You may also invert the burden: 「在我动手之前,我最想知道这 3 件事。」It is the same mechanism as asking the user to list the key questions first, with the direction reversed, and it is usually faster.
Exit condition — all three must hold:
- 用户自己搞清楚了想要什么(包括他原本没想到的维度)
- 你完整、具体、无歧义地搞清楚了,没有任何未确认的默认值
- 用户确认了你的理解是对的
Then output the confirmation summary:
我的理解如下:
[3-5 行,目标、范围、约束、成功标准,具体不遗漏]
我的推断(请逐条确认):
- 我推断 [X],因为 [具体原因] — 如有偏差请直接纠正
- 我推断 [Y],因为 [具体原因] — 如有偏差请直接纠正
确认后我会:[下一步动作]
有没有我遗漏的?If the user corrects an inference: update, ask at most 1 follow-up on that point, re-issue the summary. If the user confirms: go to Phase 3.
Phase 3 — Deliver
Classify the effort before writing, and say the classification out loud so the user can override it:
- 快答 — the answer is a judgment, not a document. Two paragraphs, a recommendation, done. No sections, no framework.
- 有界 — one well-scoped artifact: a message, a one-page comparison, a focused analysis. Write it. No approach menu, no section-by-section approval.
- 开放 — a plan, a strategy, a decision with several live options, or anything that will be read by someone who wasn't in this conversation. Propose 2-3 approaches with trade-offs and your recommendation first, then write the artifact in sections, checking after each section.
The ratchet is one-way. When torn between two levels take the heavier one; when hidden complexity shows up mid-draft, say so and step up. Nothing steps down.
YAGNI ruthlessly. Cut every dimension, option, and section that the reader named in Phase 1 would not actually use. A framework with six pillars where three do the work is the signature of an unedited draft.
Honor the constraints from Phase 1 literally. If a constraint cannot be met, say which one and why, in one sentence, before delivering — do not quietly relax it.
Phase 4 — Pressure-test
This is the phase nothing else covers, and the reason this skill is one skill rather than two. Every other clarification workflow stops at "approved, now execute." A first draft is a draft.
Run this fixed checklist against the delivered draft. Four items, in order:
- 落地阻力 — 具体执行时谁会挡、为什么挡、挡在第几步
- 资源砍半 — 预算 / 时间 / 人力砍掉一半,哪几项保留,哪几项第一个死
- 反方视角 — 如果我是竞争对手 / 反对这个方案的人,攻击哪一点最省力
- 最弱一环 — 整个方案里最依赖未验证假设的那一步,以及怎么用最小成本先验证它
Then stop and ask:「四项过完了。要我继续压哪一项,还是收?」
Exit condition: the four items are done and the user has answered that question. The checklist is the reason this phase terminates — without a fixed list, "追问" becomes either endless second-guessing or a single token round that pretends to be satisfied.
Anti-Patterns
| 想法 | 实际情况 |
| 「这个太简单,不用定框」 | 简单意味着框很短,不是没有框。一句话说清读者和用途就够。 |
| 「先给个完整框架,细节后面补」 | 无约束的框架就是教科书目录。约束先行,框架才有信息量。 |
| 「加一句『不确定就说不知道』就能防幻觉」 | 效果被严重高估。模型对自己知不知道没有可靠内省,自信的编造在内部和事实是同一种感觉。改为:逐条标注来源(来自你给的材料 / 来自我的记忆 / 需要查证),有工具就真去查。接地远胜指令。 |
| 「材料太长,得分块喂,模型记不住」 | 理由已经过时——上下文窗口装得下。分块真正的价值是在下结论前给一个校准点;代价是第一块的摘要会变成后面所有内容的有损滤镜。跨材料综合时一次给全更好。 |
| 「一直追问,质量指数级上升」 | 方向对,但纯压力型追问(「真的吗」「再想想」)会让模型为迎合而放弃原本正确的答案。追问要带理由或反证:「你说 X,但我这边数据是 Y」。 |
| 「事实性问题也多追几轮」 | 事实查询上多轮通常是负收益——每轮都在给漂移的机会。追问只在开放性分析上有回报。 |
| 「角色设定得越具体越好」 | 「20 年经验」这类数字是噪音。有用的只有词汇层级和语域。把字数花在读者、约束、排除项上。 |
Hard Stops
- This skill is analysis and writing only. It does not write files, install
anything, change configuration, control services, or publish. Anything with an
external effect routes to
$intent-guardfirst. - Code implementation is out of scope. Route to
brainstorming/writing-plans/ TDD skills — those cover it better than a re-derivation here. - Never treat 「你看着办」 as approval, and never treat a stored profile or task context as user confirmation.
Companion Skills
$task-clarifier— the deeper, stricter clarification loop. Use it instead of Phase 1-2 when the user explicitly invokes it, or when requirements are so unformed that clarification is the whole task.$task-forest— when this turns out to be long-running work with subtasks.$session-handoff-prompt— when context is degrading and work must continue in a fresh session.$user-profile-keeper— only on explicit invocation; never write durable preferences automatically.
Templates
Three shapes that cover most requests. Each already embeds Phase 1's framing, so starting from one skips a round.
决策分析 — 我要决定 [X]。先不要告诉我选哪个。先列出评估这个决定需要的所有 维度,给每个维度设权重,再根据我提供的情况逐项打分,并写出每项打分的依据。 我已经排除的选项:[…]。约束:[…]。
难沟通消息 — 我要给 [对象] 发一条关于 [推迟交付 / 拒绝需求 / 提出反对] 的 消息。先别写正文。先告诉我:对方最在意的三个点是什么;这条消息里最容易激怒对方 的是哪句话。分析完再给我温和版和直接版两个版本。
学新知识 — 用费曼教学法教我 [概念 / 这段材料]:先通俗解释核心,再给一个生活 类比,然后指出新手最容易误解的三个地方,最后出 3 道题检验我是否真懂。哪些部分 你不确定,请标出来。
What This Merges
Assembled from four verified sources, kept as one skill because their exit conditions chain:
- obra/superpowers
brainstorming— three-path classification with a one-way ratchet, announce the path out loud, 2-3 approaches with trade-offs and a recommendation, sectioned delivery with per-section approval, YAGNI, and the "too simple to need a design" anti-pattern. - local
task-clarifier— the three exit goals, ≤3 questions per round each carrying a recommended answer, contradiction detection as top priority, inferences listed for line-by-line confirmation, 「你看着办」 handling. - severity1/claude-code-prompt-improver — triage first: clear requests pass through at zero overhead, only vague ones pay for the loop.
- prompt-engineer skills (zircote, rei-skills, CodeAlive-AI, FlaxXTT) — specify artifact, reader, constraints, and output format; reject decorative role-play in favor of things that can actually be checked.
The fourth phase is not from any of them. All four stop at "understood, now execute"; the pressure-test is the half of the loop they leave empty.
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.

