ushironoko/novel-harness-skills/mystery-characters
Claude Code and agent skill by ushironoko/novel-harness-skills
- community
Checking that the SKILL.md file is still in the repository.
推理SF小説ハーネスのフェーズ2。world.json をもとに、エージェントが自律で登場人物を設計し characters.json(人物バイブル=真相込み)を生成する。最低編成は探偵1・被害者1・加害者1・加害者候補5(=容疑者6名以上、合計8名以上)。因果ループ等で他時代・遠隔地の関係者が時系列に現れる場合は role:"offstage" で追加登録する(容疑者数には数えない)。ユーザーに人物像を質問せず、後段の監査サブエージェントが矛盾検証に使える構造化JSONを出力する。world.json が存在する前提。
Install
npx vskill@latest install ushironoko/novel-harness-skills/mystery-charactersSKILL.md
mystery-characters — 登場人物設計(フェーズ2)
world.json を入力に、エージェント自律で登場人物を設計し characters.json を生成する。 これは後続フェーズ(事件設計・監査・執筆)が参照する人物バイブルであり、真相 (is_perpetrator・真の動機・真のアリバイ)を含む。ユーザーに人物像を質問しない。
入力
~/mystery-novels/<slug>/world.json(必須)- 出力先 slug(オーケストレータから渡る。単体実行時は最新/指定プロジェクトを使う)
事前に必ず読むもの
~/.claude/skills/mystery-novel/references/data-contract.md(ネタバレ境界: characters.json は reader に渡さない)~/.claude/skills/mystery-novel/references/knox-and-fairplay.md(Knox#1/#7/#9 が人物設計に効く)~/.claude/skills/mystery-characters/references/characters-schema.json(出力スキーマ)~/.claude/skills/mystery-characters/references/character-design-guide.md(自律設計の手順)- 対象プロジェクトの
world.json
プロトコル
- world.json を読む。時代・国・locale・zones・novum・social_context・inciting_situation を把握。
- 自律設計(character-design-guide.md の順序に従う):
- 被害者を関係性のハブとして先に決める。
- 探偵を決める(犯人ではない, Knox#7)。
- 容疑者を6名以上造形(各人に動機の表裏・秘密・アリバイ主張・手段・固有 voice)。
- 真犯人を厳密に1名選び
is_perpetrator: true、true_state.true_motive の核を置く。 - 全人物を world の novum / zones / 社会背景に接続する。
- 舞台外の人物(`role: "offstage"`・任意): 事件の容疑者ではないが、
case.timelineや
causal_loop.loop_events に actor として現れる人物(他時代・遠隔地の関係者)がいる場合、 ここに登録する。causal_loop で複数時代にまたがる作品では、過去/未来側の事象の actor を 必ず offstage として登録すること(登録しないと監査が「characters.json に無い actor」として 矛盾検出する)。offstage は id / name / role / is_perpetrator:false / era_note (どの時代・場所の人物で、なぜ本作の時系列に現れるか)だけでよく、 voice や alibi_claim は不要。
- 不変条件(invariants)を自己検証してから書き出す:
role==detectiveが1名、role==victimが1名。is_perpetrator==trueが全体で厳密に1名、その人物はrole==suspect。- 探偵・被害者・offstage の
is_perpetrator==false。 - 容疑者が6名以上(真犯人1+候補5以上)。**
role==offstageは容疑者数にも
「合計8名以上」の勘定にも含めない**(offstage を除いて8名以上)。
- 全 suspect が「疑う理由」と「晴らす材料」を両方持つ。
- voice(一人称・口調)が人物ごとに区別できる(offstage は voice 不要)。
- relationships の
toが実在 char_id を指す。 - 全 offstage に
era_noteがあり、case.timelineかcausal_loop.loop_eventsの
いずれかに actor として実在する(どこにも現れない offstage は置かない)。
- characters.json 出力。characters-schema.json に厳密準拠で
~/mystery-novels/<slug>/characters.json に書く(additionalProperties:false)。
- meta.json 更新。
phases.characters.status="done"。
- 要約報告。各人物を1行(名前/役割/被害者との関係/表向き動機/隠れた秘密の方向)で
提示。真犯人が誰かは報告に書いてよい(オーケストレータ/作者向け作業ログのため。 ただし reader 検証フェーズには characters.json も真犯人情報も渡らない)。
完了条件
- characters.json が schema と上記 invariants を全て満たす。
- meta.json の
phases.characters.status == "done"。
単体実行時の次の一手
続けて mystery-case を案内する(トリック・被害者・加害者の確定と手掛かり台帳の設計)。
Security
- Security scanPassed, 90 of 100Pattern checks on the skill's files.
- Model reviewPassed
Quality evaluation
- Task evaluationNot runNo evaluation yet. Run one in Skill Studio.
Source
- SKILL.md in the repositoryCheckingskills/mystery-characters/SKILL.md
Popularity
- 7-day trend score
- 0
Not refreshed yet.
Works with
Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.
- Claude Code
- Cursor
- GitHub Copilot
- Windsurf
- Codex
- Gemini CLI
- Cline
- Amp
- Roo Code
- Goose
- Continue
- Kilo Code
- Junie
- Trae
- OpenHands
- Qwen Code
- AI Agent
- Tabnine Chat
- Sourcegraph Cody
- Amazon Q
- Firebase Genkit
- Sweep
- Devin
- Phind
- Mentat
- Claude Desktop
- Aider
- GPT Pilot
- Plandex
- bolt.new
- v0
- Replit Agent
- Anse
- TypingMind
- BetterChatGPT
- LibreChat
- Warp AI
- Pieces
- Fig AI
Embed badge
[](https://verified-skill.com/skills/ushironoko/novel-harness-skills/mystery-characters)