claude/skills/rowling-plotting/SKILL.md
J.K.ローリングの手描きプロット表(章×筋ストランド)を再現し、 長編・シリーズ作品のストーリー構造を設計・点検するためのSkill。 「複数のサブプロットを同時進行で管理したい」「伏線の置き忘れを防ぎたい」 「章ごとの密度や停滞を可視化したい」時に使う。 データはYAML(構造)+Markdown(思考メモ)で永続化し、Git管理できる。
npx skillsauth add lilpacy/dotfiles rowling-plottingInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
このSkillは、J.K.ローリングが『ハリー・ポッター』第5巻で用いた 「章 × 複数ストランド(筋)」のプロット表運用を、 Claude Code 上で再現・支援するためのものです。
特徴:
ストランドとは「物語の中で並行して進む意味のある筋」です。
例:
重要: 1キャラ=1ストランドではない。 「物語的に独立して進捗を管理したい単位」がストランド。
行(縦) :Chapter(章)
列(横) :ストランド(筋)
各マス :その章で、その筋をどう動かすか(1〜2行)
判断基準:「これは機械に渡すか?」
| YAML(機械の真実) | Markdown(人間の余白) | |---|---| | 起きた/起こす | なぜそうしたか | | 進める/止める | 迷い・代替案 | | 置いた/回収した | 感情・温度・ニュアンス | | キーが固定できる | 書きながら変わりそうなこと |
守るべきルール:
ユーザーの作業ディレクトリ内に以下を生成・管理する。 複数ストーリーを並行管理できる構造になっている。
stories/
├─ <story-slug>/ # 作品ごとのフォルダ(英小文字・ハイフン)
│ ├─ story.yaml # 作品メタ情報(タイトル・ジャンル・ステータス)
│ ├─ goal.yaml # 物語のゴール(終点)
│ ├─ strands.yaml # 筋の定義(固定)
│ ├─ clues.yaml # 伏線台帳(置く→回収の対応)
│ ├─ chapters/
│ │ ├─ 01.yaml # 章の構造データ(主)
│ │ ├─ 01.md # 章の思考メモ(副・任意)
│ │ ├─ 02.yaml
│ │ └─ ...
│ └─ README.md # 物語全体のメモ(任意)
├─ <another-slug>/
│ └─ ...
└─ index.yaml # 全作品の一覧・現在のアクティブ作品
例:
stories/
├─ phoenix-order/ # ハリポタ5巻風
│ ├─ story.yaml
│ ├─ goal.yaml
│ ├─ strands.yaml
│ ├─ clues.yaml
│ └─ chapters/
├─ detective-noir/ # ミステリー作品
│ └─ ...
└─ index.yaml
stories/index.yaml(全作品の一覧)active: phoenix-order # 現在作業中の作品(省略時は明示的に指定を求める)
stories:
- slug: phoenix-order
title: "不死鳥の騎士団"
genre: fantasy
status: drafting # planning / drafting / revising / done
- slug: detective-noir
title: "夜の探偵"
genre: mystery
status: planning
stories/<slug>/story.yaml(作品メタ情報)title: "不死鳥の騎士団"
genre: fantasy
status: drafting
total_chapters: 38 # 予定章数(未定なら ~)
created: 2026-02-10
updated: 2026-02-10
index.yaml の active を使うactive も未設定で複数作品がある場合は、どの作品か質問するgoal.yamlending: "主人公が真実を知り、師を失い、自らの使命を受け入れる"
protagonist_arc: "無知→覚醒→喪失→決意"
strands.yamlstrands:
- id: main
label: "メインプロット"
description: "中心となる事件・目的の進行"
- id: romance
label: "恋愛/人間関係"
description: "主要キャラ間の感情の変化"
- id: org
label: "組織・対立"
description: "勢力間の動き"
- id: mystery
label: "謎/伏線"
description: "読者に提示する謎とその解明"
- id: mentor
label: "師弟関係"
description: "師との関係の変化"
chapters/13.yaml(章データ)chapter: 13
time: "10/13"
place: "学校/廊下"
title: "Plots and Resistance"
strands:
main: "Umbridgeに対する抵抗が表面化"
mystery: "予言の断片が示唆される"
romance: ~ # 明示的に「動かさない」
tags:
- "CLUE:prophecy"
- "HOLD:romance"
chapters/13.md(思考メモ・任意)## メモ
- この章は重いので恋愛筋はあえて止めた
- 予言は読者に気づかれなくてもOK
- Umbridgeの不快感を最大化したい
## 代替案
- 13章でChoとの接触を入れる案もあったが密度過多になるので見送り
clues.yaml(伏線台帳)clues:
- id: prophecy
type: CLUE
planted: 13
payoff: 37
description: "予言の存在が暗示される"
- id: suspectA
type: RH # red herring
planted: 5
payoff: 22
description: "偽犯人Aへの疑惑"
- id: wand_lore
type: CLUE
planted: 8
payoff: ~ # 未回収
description: "杖の忠誠に関するヒント"
YAMLでの空欄表現を統一する:
~(null):明示的に「この章では動かさない」index.yaml の active を参照stories/<slug>/ を作成し、story.yaml と index.yaml を更新する以降のパスはすべて stories/<slug>/ 配下を指す。
まず goal.yaml を作成する。
ここでは詳細な経路は決めない。終点のみ固定する。
strands.yaml を作成する。
以下の基本セットから選び、必要に応じて追加する:
id は英語小文字で短く。作品全体で不変。
chapters/ 配下に章ごとの YAML を作成する。
clues.yaml に伏線を登録する。
タグ語彙(固定):
CLUE 伏線・手がかりRH ミスリード(red herring)PAYOFF 回収HOLD あえて進めない判断planted(置く章)と payoff(効く章)を対応づける。
未回収は payoff: ~ にする。
以下をチェックする:
~ のままでないかclues.yaml で payoff が ~ のまま残っている伏線がないか全章の YAML を読み取り、以下のMarkdownテーブルを生成する:
| Ch | Time/Place | Title | main | romance | org | mystery | mentor | Tags |
|----|------------|-------|------|---------|-----|---------|--------|------|
| 1 | ... | ... | ... | ... | ... | ... | ... | ... |
~ は —(emダッシュ)で、省略キーは空欄で表示する。
strands: 事件(case) / 探索(investigation) / 偽犯人(red_herring) / 真相(truth) / 人間関係(relationship)
strands: 主人公A(protag_a) / 主人公B(protag_b) / 組織(org) / 社会状況(society) / 裏の目的(hidden_agenda)
strands: 外的事件(event) / 内面変化(inner) / 関係進展(progress) / 誤解(misunderstanding) / 決断(decision)
clues.yaml の未回収(payoff: ~)を定期的にチェックdevelopment
Use when searching the web or reading online documentation. Prefer DuckDuckGo for search and read documents through npx curl.md instead of raw HTML.
testing
Use when writing or editing tests. Tests should be ordered by near-normal, normal, then abnormal cases where applicable, and test names must be Japanese behavior descriptions from a reviewer/user perspective.
development
GoF/オブジェクト指向デザインパターンを関数型プログラミング(pure functions, higher-order functions, ADT, composition, immutability, effect boundaries)でシンプルに整理・設計・リファクタリングする。Strategy/Factory/Adapter/ObserverなどGoF全23パターンのFP置き換え、適用判断、具体事例を提示する必要があるときに使う。
tools
Use when committing, pushing, or preparing PRs. Defines the user's commit workflow, message style discovery, review handoff, and branch/worktree push requirements.