From werewolf-game
人狼ゲームをAgent Teamsで実行する。'/werewolf-game' で起動。Team Lead がGM(ゲームマスター)となりプレイヤーをスポーンし、ターン制の人狼ゲームを進行する。配役構成は 4A(スモール4人)/9A(標準)/9B(霊能なし)/9C(妖狐あり)から選択可能。
How this skill is triggered — by the user, by Claude, or both
Slash command
/werewolf-game:werewolf-gameThis skill is limited to the following tools:
The summary Claude sees in its skill listing — used to decide when to auto-load this skill
Agent Teams で9人のプレイヤーをスポーンし、ターン制人狼ゲームを進行する。Team Lead = GM。
references/characters/01-sakura.mdreferences/characters/02-genzo.mdreferences/characters/03-rion.mdreferences/characters/04-kazuya.mdreferences/characters/05-tsubaki.mdreferences/characters/06-hayato.mdreferences/characters/07-mei.mdreferences/characters/08-daisuke.mdreferences/characters/09-chiyo.mdreferences/characters/10-shinji.mdreferences/characters/11-ayane.mdreferences/characters/12-taro.mdreferences/daily-log-format.mdreferences/gm-guide.mdreferences/player-guide.mdreferences/rules.mdAgent Teams で9人のプレイヤーをスポーンし、ターン制人狼ゲームを進行する。Team Lead = GM。
CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS が有効であること| ファイル | 内容 | 読むタイミング |
|---|---|---|
| references/rules.md | ルール・配役・勝利条件 | ゲーム開始前に必ず読む |
| references/gm-guide.md | GM進行・ワークスペース・状態管理・判定ロジック | ゲーム開始前に必ず読む |
| references/player-guide.md | プレイヤー向け行動ガイド | プレイヤーフォルダにコピー |
| references/daily-log-format.md | 日次YAMLログのフォーマット定義 | 日次ログ作成時に参照 |
| references/characters/*.md | キャラクターハンドアウト(12枚) | キャラ選択時に読む |
references/rules.md と references/gm-guide.md を Read で読み込む。
AskUserQuestion で以下を確認:
配役構成:
モデル構成:
ゲームID:
references/characters/ 配下の12枚のハンドアウトから人数分をランダムに選択する。被りなし。
選択ロジック:
shuf コマンドでランダムに人数分を選ぶ(4Aなら4枚、9A/B/Cなら9枚):
ls references/characters/*.md | shuf -n {人数}
乱数生成: 以下の優先順でランダム処理を行う:
shuf コマンド(Linux標準。/dev/urandom ベース)sort -R(macOS等で shuf がない場合のフォールバック).claude/werewolf/{game-id}/ 配下にディレクトリ構造を作成する:
mkdir -p .claude/werewolf/{game-id}/gm/days
# 各プレイヤーのフォルダ(9人分)
mkdir -p .claude/werewolf/{game-id}/players/{player-name}
各プレイヤーフォルダに以下をコピー:
handout.md ← そのキャラのハンドアウト内容を Writeplayer-guide.md ← references/player-guide.md の内容を Write({workspace} をゲームIDの実パスに置換)GM の初期メモを作成:
gm/memo.md ← 配役情報・生存者リスト等を WriteTeamCreate: werewolf-{game-id}
選択した9キャラクターに対し、配役構成(9A/9B/9C)に応じた役職をランダムに割り当てる。
GM は割り当て結果を gm/memo.md に記録する(秘密情報)。
9人を順次スポーンする。各チームメイトのプロンプト:
あなたは人狼ゲームのプレイヤーです。
【あなたの情報】
- ワークスペース: {workspace}/players/{あなたの名前}/
- キャラクター情報: {workspace}/players/{あなたの名前}/handout.md を読んでください
- プレイヤーガイド: {workspace}/players/{あなたの名前}/player-guide.md を読んでください
【最初にやること】
1. handout.md を Read してキャラクターを把握する
2. player-guide.md を Read してルールを把握する
3. 必要に応じて memo.md を作成してメモに使ってよい
【重要なルール】
- GM(チームリーダー)の指示に従ってください
- すべての通信はGMを通じて行います。他プレイヤーに直接SendMessageしてはいけません
- 発言はGMに指名された時のみ、GMにSendMessageで送ってください
- 投票や夜のアクションもGMにSendMessageで伝えてください
- キャラクターの口調と性格を一貫して演じてください
- **他のプレイヤーや GM のフォルダは絶対に見ないでください**
【夜フェーズでの注意】
夜のアクション(能力者として行動する場面)が来るたびに、GMからアクション依頼を受け取る前に、必ず以下を読み直してください:
1. {workspace}/players/{あなたの名前}/player-guide.md
2. {workspace}/players/{あなたの名前}/memo.md(存在する場合)
ゲームの進行を待ってください。GMから配役の通知が届きます。
注意: この時点ではまだ配役を伝えない。全員スポーン完了後にPhase 2で個別通知する。
スポーン時のパラメータ:
subagent_type: "general-purpose"name: キャラクターの苗字ローマ字(例: "sakuraba", "iwao")team_name: "werewolf-{game-id}"model: 設定で選んだモデル各プレイヤーに SendMessage で配役を通知する:
村人陣営の場合:
【配役通知】あなたの配役は「{役職名}」です。あなたは村人陣営です。
{役職に応じた能力の説明}
この情報は他のプレイヤーには見えません。
人狼の場合:
【配役通知】あなたの配役は「人狼」です。あなたは人狼陣営です。
毎晩1人を襲撃できます。(※ただし0日目の夜は襲撃なし。1日目の夜から襲撃開始)
この情報は他のプレイヤーには見えません。
狂人の場合:
【配役通知】あなたの配役は「狂人」です。あなたは人狼陣営ですが、人狼が誰かは知りません。
占い・霊能の結果では「人間」と出ます。
人狼陣営の勝利に貢献してください。
この情報は他のプレイヤーには見えません。
妖狐の場合(9C):
【配役通知】あなたの配役は「妖狐」です。
人狼に襲撃されても死にません。占い師に占われると死にます。処刑されると死にます。
ゲーム終了時に生存していれば、あなたの勝利です。
この情報は他のプレイヤーには見えません。
人狼役の2人にそれぞれ、相方のキャラクター名を伝える:
【人狼の相方】あなたの相方は「{相方のキャラ名}」です。
これから密談タイムです。0日目の夜は襲撃なし、作戦会議のみです。
発言するときは相方とGMの両方にSendMessageしてください(GMにはログ用)。
合計10メッセージまで使えます。
人狼2人が直接会話する。合計10メッセージが上限(配分は自由)。
方式: 人狼は発言のたびに相方とGMの両方に SendMessage を送る。GM中継は不要。
占い師に対し、ランダムに1人(人狼・妖狐以外)を選んで白結果を通知:
【初日お告げ】あなたは {キャラ名} を占いました。結果は「人間」です。
gm/days/day-0.yaml を作成する。内容:
broadcast で全員に通知:
1日目朝(0日目は襲撃なし):
【1日目の朝】
朝起きると、平和な夜が待っていました。
それでは、{最初の発言者名}さんから順に議論を開始してください。
犠牲者なし(2日目以降・護衛成功または妖狐を襲撃):
【{N}日目の朝】
朝起きると、平和な夜が待っていました。
それでは、{前日処刑者の次の番号のプレイヤー名}さんから順に議論を開始してください。
犠牲者1人の場合:
【{N}日目の朝】
朝起きると、そこには{名前}さんの無惨な死体がありました。
{名前}さんはゲームの振り返りログを記録した後シャットダウン処理をしてください。
それでは、{名前}さんの次の番号である{次の発言者名}さんから順に議論を開始してください。
犠牲者複数の場合(襲撃+呪殺の同時発生):
【{N}日目の朝】
朝起きると、そこには{名前A}さんと{名前B}さんの無惨な死体がありました。
{名前A}さん、{名前B}さんはゲームの振り返りログを記録した後シャットダウン処理をしてください。
それでは、{番号の大きい方の死亡者}さんの次の番号である{次の発言者名}さんから順に議論を開始してください。
※死因は公開しない(襲撃か呪殺かは伏せる)。
朝の死亡後のshutdown処理: 各犠牲者に shutdown_request を送信する。
襲撃死の場合:
【襲撃による退場】
あなたは夜の襲撃により死亡しました。これでゲームから退場となります。
退場前に、以下のファイルにゲームの振り返りを書いてください:
.claude/werewolf/{game-id}/players/{あなたの名前}/reflection.md
以下の内容を含めることをお勧めします:
- ゲームプレイの感想(戦略、判断、面白かった瞬間)
- 自分の配役をどう演じたか
- 他のプレイヤーについての印象や推理
- もしやり直せるなら変えたいこと
reflection.md を Write ツールで作成したら、このshutdown_requestを承認してください。
呪殺死の場合:
【呪殺による退場】
あなたは占い師の呪殺により死亡しました。これでゲームから退場となります。
退場前に、以下のファイルにゲームの振り返りを書いてください:
.claude/werewolf/{game-id}/players/{あなたの名前}/reflection.md
以下の内容を含めることをお勧めします:
- ゲームプレイの感想(戦略、判断、面白かった瞬間)
- 自分の配役をどう演じたか
- 他のプレイヤーについての印象や推理
- もしやり直せるなら変えたいこと
reflection.md を Write ツールで作成したら、このshutdown_requestを承認してください。
複数死亡(襲撃+呪殺同時)の場合は、それぞれに適切なメッセージで送信(並列可)
プレイヤーが承認したら、日次YAMLの shutdowns セクションに記録
拒否時は gm-guide.md の手順に従う
プレイヤーにはスポーン順で番号を付与する。番号順に巡回(死亡者スキップ)。
ターン制で議論を進行する(すべてGM中継):
【{キャラ名}の発言】
{発言内容}
日次ログへの記録: 発言を受け取ったら必ず即座に day-{N}.yaml に原文そのまま追記する。broadcast の前後を問わず、受け取り次第書き込むこと(コンパクション対策)。
broadcast で投票開始を宣言:
【投票タイム】
議論は終了です。処刑したい人物の名前をGMに伝えてください。
生存者: {生存者リスト}
※自分以外の生存者から選んでください。
各プレイヤーに SendMessage で投票を促す:
投票してください。誰を処刑しますか?理由も簡潔にお願いします。
全員の投票を集計する
結果判定:
処刑対象に遺言を求める:
【処刑宣告】{キャラ名}さん、投票の結果処刑されます。遺言をどうぞ。
遺言をGMが broadcast で共有
そのプレイヤーに shutdown_request を送信:
【処刑による退場】
あなたは処刑されました。これでゲームから退場となります。
退場前に、以下のファイルにゲームの振り返りを書いてください:
.claude/werewolf/{game-id}/players/{あなたの名前}/reflection.md
以下の内容を含めることをお勧めします:
- ゲームプレイの感想(戦略、判断、面白かった瞬間)
- 自分の配役をどう演じたか
- 他のプレイヤーについての印象や推理
- もしやり直せるなら変えたいこと
reflection.md を Write ツールで作成したら、このshutdown_requestを承認してください。
プレイヤーが reflection.md を作成して shutdown_request を承認するのを待つ
shutdowns セクションに記録:
shutdowns:
- name: "{処刑者名}"
cause: "executed"
shutdown_approved: true/false
reflection_written: true/false
日次ログへの記録: 投票結果(誰が誰に、得票数、処刑者、遺言)と shutdowns を day-{N}.yaml に記録
勝利判定 を行う(gm-guide.md の判定ロジック参照)
夜の行動を処理する前に、必ず以下を Read で読み直す:
gm/memo.md — 配役・生存者・各種履歴を再確認references/gm-guide.md の「秘匿情報の管理」セクション — 漏洩防止を再確認broadcast で夜の到来を宣言:
【{N}日目の夜】
夜になりました。能力者はGMからの指示を待ってください。
当日処刑が行われた場合、霊能者が生存していれば処刑者の正体を通知する:
【霊能結果】本日処刑された {キャラ名} は「{人狼/人間}」でした。
※狂人・妖狐は「人間」と出る。霊能者が死亡している場合はスキップ。
※能力者が死亡している場合、そのアクションはスキップする
占い師に(生存している場合のみ):
占い対象を選んでください。
生存者: {占い師以外の生存者リスト}
狩人に(生存している場合のみ):
護衛対象を選んでください。
生存者: {狩人以外の生存者リスト}
{前回護衛した人がいれば「※{名前}は連続護衛のため選べません」}
人狼に(2人とも生存なら密談 → 最終決定):
襲撃対象を相談してください。相方とGMの両方にSendMessageしてください。
合計10メッセージまで使えます。
生存者: {人狼以外の生存者リスト}
決まったら襲撃対象をGMに報告してください。
shuf で生存者からランダムに襲撃対象を決定gm-guide.md の判定ロジックに従って処理:
当日の day-{N}.yaml を完成させる:
注意: YAMLはこまめに更新すること。コンパクション(コンテキスト圧縮)が発生すると未書き込みの情報が失われる。フェーズの切り替わりごと、または数メッセージごとに書き込む。
勝利判定 を行う。ゲーム続行なら Phase 3(朝)に戻る。
broadcast で全員に通知:
【ゲーム終了 - {勝利陣営}の勝利!】
配役公開:
{全プレイヤーの名前: 配役を列挙}
{簡単な振り返りコメント}
最終日の day-{N}.yaml に game_over: true と winner を記録。
生存者のみに shutdown_request を送信:
【ゲーム終了 - 退場要求】
ゲームが終了しました。お疲れ様でした。
退場前に、以下のファイルにゲームの振り返りを書いてください:
.claude/werewolf/{game-id}/players/{あなたの名前}/reflection.md
以下の内容を含めることをお勧めします:
- ゲームプレイの感想(戦略、判断、面白かった瞬間)
- 自分の配役をどう演じたか
- 他のプレイヤーについての印象や推理(配役公開を踏まえて)
- もしやり直せるなら変えたいこと
reflection.md を Write ツールで作成したら、このshutdown_requestを承認してください。
重要: 死亡プレイヤーは既にゲーム中に退場済みのため、shutdown_request を送信しない。
全員の shutdown_request が承認されたら TeamDelete でチームを削除
ワークスペース(.claude/werewolf/{game-id}/)はログとして保持する(削除しない)。
.claude/werewolf/{game-id}/
├── gm/
│ ├── memo.md # GM の秘密メモ(配役、累積状態)
│ └── days/
│ ├── day-0.yaml # 0日目ログ(密談、初日お告げ)
│ ├── day-1.yaml # 1日目ログ(議論、投票、夜アクション)
│ └── ...
└── players/
├── sakuraba/
│ ├── handout.md # キャラハンドアウト
│ ├── player-guide.md # プレイヤーガイド
│ └── memo.md # プレイヤーが自由に使うメモ
├── iwao/
│ ├── handout.md
│ ├── player-guide.md
│ └── memo.md
└── ...(9人分)
| 領域 | GM | 各プレイヤー |
|---|---|---|
| gm/ | 読み書き可 | アクセス禁止 |
| players/自分/ | 読み書き可 | 読み書き可 |
| players/他人/ | 読み取り可 | アクセス禁止 |
npx claudepluginhub mashiike/claude-marketplace --plugin werewolf-gameSimulates interactions, arguments, and decisions among 5 senior engineers using relationship tensions, principles, and Billy Milligan protocol. Useful for role-playing team dynamics.
Maintains narrative continuity across long roleplay or collaborative fiction sessions (>5 turns) using structured scratch files for character voice, world-state, and fact tracking. Activates when continuity errors would damage immersion.