Claude-skill-registry first-principles

設計原則から再考。行き詰まった時に根本から考え直す。前提を疑い、本質的な解決策を探る。トリガー: /first-principles, 原点回帰, 根本から, ゼロベース

install
source · Clone the upstream repo
git clone https://github.com/majiayu000/claude-skill-registry
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/majiayu000/claude-skill-registry "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/data/first-principles" ~/.claude/skills/majiayu000-claude-skill-registry-first-principles && rm -rf "$T"
manifest: skills/data/first-principles/SKILL.md
source content

First Principles Thinking

行き詰まった時、複雑になりすぎた時に、根本から考え直すためのスキル。

いつ使うか

  • 実装が複雑になりすぎた
  • 何を作ろうとしていたか見失った
  • 技術的な解決策に固執している
  • トレードオフの判断に迷っている
  • 「なぜこうなっているのか」がわからなくなった

思考フレームワーク

Step 1: 本質的な問題の特定

## 今、何を解決しようとしている?

**表面的な問題**:
(技術的な実装の話)

**本質的な問題**:
(ユーザー/ビジネスにとっての価値)

**確認質問**:
- この問題が解決されると、誰がどう嬉しい?
- この機能がなかったら、どんな困りごとがある?

Step 2: 前提の洗い出しと疑問

## 暗黙の前提

現在の実装で当然としている前提を列挙:

1. [ ] <前提1> → 本当にそうか?
2. [ ] <前提2> → なぜそう思った?
3. [ ] <前提3> → 別の方法はないか?

**疑うべき前提**:
- 「〜でなければならない」
- 「〜は無理」
- 「みんなそうしている」
- 「前からこうだった」

Step 3: 制約の再確認

## 本当の制約 vs 思い込み

| 制約 | 種類 | 根拠 |
|------|------|------|
| 予算 100万円 | 🔒 固定 | 承認済み |
| React使用 | ⚠️ 要確認 | 「チームが慣れている」だけ? |
| REST API | ⚠️ 要確認 | GraphQLではダメな理由は? |
| 1週間で完成 | 🔒 固定 | リリース日決定済み |

Step 4: ゼロベースでの選択肢

## もし最初からやり直すなら?

**制約だけを条件に、白紙から考えた選択肢**:

1. **案A**: <description>
   - メリット:
   - デメリット:

2. **案B**: <description>
   - メリット:
   - デメリット:

3. **案C(現在の方向性)**: <description>
   - メリット:
   - デメリット:

**最もシンプルな解決策は?**
(機能を削る、別のアプローチ、やらない選択肢)

Step 5: 判断と次のアクション

## 結論

**選択**: 案X

**理由**:
1. <reason1>
2. <reason2>

**捨てるもの**:
- <what to drop>

**次のアクション**:
1. [ ] <action1>
2. [ ] <action2>

質問リスト

行き詰まった時に自問する質問:

問題について

  • 「そもそも、これは解決すべき問題か?」
  • 「問題の定義は正しいか?」
  • 「誰のための機能か?」

解決策について

  • 「最もシンプルな解決策は何か?」
  • 「この機能を作らない選択肢は?」
  • 「80%の価値を20%の労力で得る方法は?」
  • 「完璧でなくていいなら、どうする?」

前提について

  • 「なぜそう思った?」
  • 「それは事実か、推測か?」
  • 「逆のことが正しい可能性は?」
  • 「5年後もこの前提は有効か?」

出力形式

## First Principles 分析

### 現状
**やろうとしていること**:
<description>

**行き詰まっている点**:
<description>

---

### 本質

**解決すべき本当の問題**:
<core problem>

**成功の定義**:
<what success looks like>

---

### 前提の検証

| 前提 | 検証結果 |
|------|---------|
| <assumption1> | ✅ 有効 / ❌ 無効 / ⚠️ 要確認 |

---

### 再考後の選択肢

1. **シンプル案**: <description>
2. **現行案の修正**: <description>
3. **やらない案**: <description>

---

### 推奨

**選択**: <option>

**理由**: <rationale>

**削ぎ落とすもの**: <what to cut>

注意事項

  • 分析麻痺を避ける: 考えすぎず、行動につなげる
  • 完璧を求めない: 70%の解決策で十分なこともある
  • チームと共有: 一人で抱え込まず、視点を借りる
  • 時間を区切る: 30分考えて結論が出なければ相談