Clawventure — Claude Code向けインタラクティブフィクションエンジン

AI/ML

概要

Clawventureは「Claude Code」プラットフォーム向けに作られた、対話型フィクション(テキストアドベンチャー)エンジンの最小実装です。リポジトリにはClaude向けのプラグイン定義ファイル(.claude-plugin)、実際の操作を担うコマンド群、そして動作例を収めたexamplesディレクトリが含まれています。言語やランタイムに依存しない軽量設計で、プロトタイプ作成やストーリー実験、Claudeの会話能力を使ったゲーム生成の土台として使えます。

GitHub

リポジトリの統計情報

  • スター数: 3
  • フォーク数: 0
  • ウォッチャー数: 3
  • コミット数: 5
  • ファイル数: 5
  • メインの言語: 未指定

主な特徴

  • Claude Codeプラットフォーム向けのプラグインマニフェストを含む、即動作可能な最小構成。
  • コマンドベースのアーキテクチャで拡張やカスタマイズが容易。
  • examplesフォルダにサンプルがあり、動作確認や物語テンプレートとして利用可能。
  • 設計は軽量で、他の対話型エンジンやプロンプト実験との組み合わせに適する。

技術的なポイント

Clawventureはプラグイン形式(.claude-plugin)を中心に据え、Claude Codeの実行環境内で対話型体験を実現するための最小限の要素を揃えています。コマンド群(commands/)はユーザ入力を受け取って処理し、ゲーム状態の遷移やレスポンス生成を担うモジュール群として想定されます。examples/にはサンプルストーリーや呼び出し例があり、プロンプトテンプレートや入力→出力の流れを確認できます。

設計上は「状態管理の外部化」と「プロンプト駆動のロジック」を組み合わせるアプローチが取れるようになっており、ゲーム状態(プレイヤーの所持品、位置、フラグ等)をJSONなどで保持してClaudeに与え、次の出力生成や選択肢提示を行う形が自然です。これはClaudeの生成能力を物語進行や自然言語コマンド解釈に活用する際に有効で、複雑なパーサやルールエンジンをクライアント側で書かなくてもリッチな応答を得られます。

拡張可能性としては、新しいコマンドハンドラの追加、外部ストレージ(永続化)の導入、複数エンドポイントを跨いだセッション管理、プロンプトテンプレートの国際化などが考えられます。一方で現状は小規模で実験的な実装のため、堅牢なセキュリティ処理や大規模データの管理機能は含まれていない点に留意が必要です。

プロジェクトの構成

主要なファイルとディレクトリ:

  • .claude-plugin: dir
    • Claudeに対するプラグインメタデータやエンドポイント定義を格納する想定のディレクトリ/ファイル群。これによりClaude Code環境へ機能を登録し、コマンドを呼び出せるようになります。
  • .gitignore: file
    • 一時ファイルや秘密情報を除外するための設定ファイル。
  • README.md: file
    • プロジェクトの概要、目的、簡単な使い方や注意点が記載されています。ASCIIアートでプロジェクト名が飾られている点も特徴です。
  • commands: dir
    • ユーザーコマンドやエンジン側のハンドラを格納するディレクトリ。ここに新しいゲームロジックや解析ルーチンを追加して機能拡張します。コマンドは入力の正規化、状態遷移、出力生成を担うことが想定されます。
  • examples: dir
    • 動作確認用のサンプルシナリオや呼び出し例を含むディレクトリ。開発者はまずここを動かしてエンジンの振る舞いを確認し、独自のストーリーを作成していく流れになります。

この構成はシンプルで学習コストが低く、Claudeの会話生成能力を主体にしたストーリーテリング実験にすぐ使える点がメリットです。反面、ランタイム実装(サーバやクライアントスクリプト)のテンプレートや詳細なドキュメントは限定的なので、実運用向けには追加実装・ドキュメント整備が必要です。

まとめ

Claudeを利用した対話型物語の実験用エンジンとして扱いやすく拡張しやすいミニマル実装。

リポジトリ情報:

READMEの抜粋:

Clawventure - interactive fiction engine for Claude Code

▄█████ ▄▄     ▄▄▄  ▄▄   ▄▄ ▄▄ ▄▄ ▄▄▄▄▄ ▄▄  ▄▄ ▄▄▄▄▄▄ ▄▄ ▄▄ ▄▄▄▄  ▄▄▄▄▄ 
██     ██    ██▀██ ██ ▄ ██ ██▄██ ██▄▄  ███▄██   ██   ██ ██ ██▄█▄ ██▄▄  
▀█████ ██▄▄▄ ██▀██  ▀█▀█▀   ▀█▀  ██▄▄▄ ██ ▀██   ██   ▀███▀ ██ ██ ██▄▄▄ 
                                                        ...