thinking-first-principles — скилл для Claude Code: разбор допущений
Скилл, который заставляет агента отделять настоящие ограничения от привычек и пересобирать решение с нуля. Пригодится, когда задача выглядит дорогой или невозможной.
npx skills add tjboudreaux/cc-thinking-skills --skill thinking-first-principles -a claude-codeЧто делает thinking-first-principles
Скилл включается, когда ограничение принимают как данность: «так всегда делали», «слишком дорого», «невозможно». Агент раскладывает задачу на первичные элементы и заново собирает самое простое решение, которое укладывается в реальные рамки.
Работа идёт по шагам. Сначала выписываются все ограничения, включая негласные. Каждое получает метку: физика и математика, регулирование или контракт, измеренный факт, либо соглашение и ссылка на авторитет. Первые три остаются обязательными, остальные отбрасываются, если под них нельзя привести доказательство. Дальше сборка только из оставшихся элементов, проверка и дешёвый тест, который опроверг бы результат.
Внутри — один файл SKILL.md с процедурой и разделом о том, когда скилл применять не стоит. Если ограничение подтверждено физикой, законом или замеренной пропускной способностью, его принимают и оптимизируют внутри. Готовая библиотека или проверенный протокол тоже отменяют пересборку. Во время аварии сначала чинят по самой вероятной причине, а разбор откладывают на потом.
Какие задачи решает
- отделить реальные ограничения от привычных допущений
- пересобрать решение, когда аналогия перестала работать
- проверить смету, которая опирается на цены вендоров, а не на расчёт
- убрать лишние компоненты из архитектуры на старте проекта
- найти дешёвый тест, который опровергнет выбранный подход
Примеры запросов агенту
- разбери это ограничение по первым принципам: что здесь физика, а что соглашение
- нам говорят, что так делать нельзя — проверь, на чём основан запрет
- пересобери решение только из подтверждённых требований
Как установить thinking-first-principles
1Через Skills CLI (Vercel)
npx skills add tjboudreaux/cc-thinking-skills --skill thinking-first-principles -a claude-code2Вручную: положить файлы
~/.claude/skills/thinking-first-principles/SKILL.mdПапка скилла целиком; для одного проекта — .claude/skills/thinking-first-principles/
1Через Skills CLI (Vercel)
npx skills add tjboudreaux/cc-thinking-skills --skill thinking-first-principles -a codex2Вручную: положить файлы
.agents/skills/thinking-first-principles/SKILL.mdДля всех проектов — ~/.agents/skills/
1Через Skills CLI (Vercel)
npx skills add tjboudreaux/cc-thinking-skills --skill thinking-first-principles -a cursor2Вручную: положить файлы
.cursor/skills/thinking-first-principles/SKILL.mdCursor читает и .agents/skills/, и .claude/skills/
1GitHub CLI
gh skill install tjboudreaux/cc-thinking-skills thinking-first-principles2Вручную: положить файлы
.github/skills/thinking-first-principles/SKILL.md1Через Skills CLI (Vercel)
npx skills add tjboudreaux/cc-thinking-skills --skill thinking-first-principles -a gemini-cli2Командой платформы
gemini skills install https://github.com/tjboudreaux/cc-thinking-skills --path skills/thinking-first-principlesВручную: положить файлы
.devin/skills/thinking-first-principles/SKILL.mdСтарый путь .windsurf/skills/ тоже читается
Через Skills CLI (Vercel)
npx skills add tjboudreaux/cc-thinking-skills --skill thinking-first-principles -a opencodeClaude.ai
Упакуйте папку в zip и загрузите в Settings → Capabilities → Skills
По шагам, с командами для каждой платформы: Как установить скилл в Claude Code: пять способов
Из того же набора27
Похожие
Рядом в теме «Настройка агента: память, контекст, субагенты»
Все скиллы по теме «Настройка агента: память, контекст, субагенты» →Вопросы о thinking-first-principles
Как установить thinking-first-principles в Claude?
Выполните npx skills add tjboudreaux/cc-thinking-skills --skill thinking-first-principles -a claude-code. Файл скилла появится по пути ~/.claude/skills/thinking-first-principles/SKILL.md.
Что делает thinking-first-principles?
Помогает агенту разложить задачу на первичные элементы, отбросить неподтверждённые допущения и собрать простое решение из того, что осталось. На выходе — список ограничений с метками, отброшенные соглашения, пересборка и тест на опровержение.
Когда этот скилл применять не нужно?
Если ограничение подтверждено физикой, регулированием или замером, его принимают как есть. Готовая библиотека или проверенный протокол тоже закрывают вопрос без пересборки, а во время инцидента сначала устраняют вероятную причину.
Исходный текст
SKILL.md · MIT
---
name: thinking-first-principles
description: When a constraint is treated as fixed, separate physics from convention, keep only independently supported primitives, and rebuild the simplest solution that satisfies real constraints.
disable-model-invocation: true
---
# First Principles
Strip assumed constraints to independently supported primitives, then rebuild. Escape analogy when convention fails or looks artificially expensive.
## When to Use
- A constraint is treated as fixed ("too expensive," "impossible," "always done this way") without independent support.
- Convention or analogy has failed, stalled, or only yields weak incremental variants.
- Greenfield design where industry defaults may smuggle false requirements.
- Cost or feasibility claims rest on pricing, precedent, or authority rather than physics, math, or measured need.
## When NOT to Use
- The constraint is verified physics, hard regulation, or measured capacity → accept it and optimize within it.
- A proven standard library, protocol, or known-good pattern already fits → use it; do not re-derive.
- Time-critical incidents → act on the most likely cause first; reserve first-principles rebuild for post-incident redesign.
- Incremental polish of a working system with no false-constraint signal → skip.
## Procedure
1. **State the problem and claimed constraints.** List every limit treated as fixed (cost, scale, stack, process, "must use X").
2. **Classify each constraint.** Tag as `physics/math`, `regulation/contract`, `measured fact`, or `convention/analogy/authority`. Keep only the first three as binding unless evidence upgrades a convention.
3. **Decompose to primitives.** Required inputs, conservation/complexity bounds, true non-negotiables. Demand independent support (measurement, derivation, primary requirement)—not vendor pricing or competitor precedent.
4. **Discard unsupported assumptions.** For each convention tag, state a falsifier. Drop or renegotiate anything lacking support.
5. **Rebuild from remaining primitives only.** Simplest solution that satisfies binding constraints and ignores artificial ones. Prefer commodity inputs and fewer moving parts over analogy.
6. **Validate and stop.** Check against real physics, contracts, and measured needs. Define the cheapest kill test. Stop when a coherent rebuild plus discriminating validation exists, or when only verified hard constraints remain.
## Output
Emit a first-principles rebuild:
- `claimed_constraints`: list with classification tags
- `primitives`: independently supported truths only
- `discarded_assumptions`: conventions dropped and why
- `rebuild`: solution derived only from primitives
- `binding_residuals`: real limits that remain
- `kill_test`: cheapest check that would falsify the rebuild
## Verification
- **Independence check:** every primitive must cite measurement, derivation, or primary requirement—not precedent alone.
- **No smuggled analogy:** if the rebuild still depends on "how others do it" without a primitive, strip it.
- **Constraint honesty:** verified physics/regulation must remain; do not wish them away.
- **Over-application guard:** if a standard solution is already optimal under verified constraints, do not rebuild for novelty.
- **Stop:** one decompose → classify → rebuild → kill-test pass; do not recurse without new evidence.
© tjboudreaux · MIT · tjboudreaux/cc-thinking-skills