AI News HubLIVE
站内改写3 分で読了

PhD_fleet – Slack経由でAI博士課程学生の仮想研究室を管理

PhD_fleetは、単一の研究者(アドバイザー)がSlackを通じてClaude Codeエージェント群を生成し対話するためのPythonツールキットです。各エージェントは独自のワークスペースを持ち、Slackメッセージでターンを駆動し、ファイルシステムを長期記憶として使用します。また、コーチエージェントがアドバイザーの指導を監視し、エビデンスに基づくフィードバックを提供します。

ソースHacker News AI著者: canatara

PhD_fleetは、研究者がSlackプラットフォームを介してAIエージェントからなる仮想研究ラボを管理するためのPythonツールキットです。このツールにより、単一の研究者(アドバイザー)は複数のClaude Codeエージェントを生成でき、各エージェントは独立したワークスペース内で疑似博士課程学生として活動します。エージェント間のやり取りはSlackメッセージによって駆動され、各メッセージが1ターンに対応し、ファイルシステムが長期記憶として機能するため、ボットの再起動後も作業状態が保持されます。

各AI学生エージェントは独自の作業ディレクトリを持ち、プロフィール、プロジェクト概要、研究ログ(JOURNAL.md)、メモなどを含みます。アドバイザーは特定のエージェントに対してSlackでメッセージを送信し、エージェントは研究の方向性に関連する応答を返します。エージェントの作業状態とファイルシステムは永続化され、ボットが再起動しても失われません。また、各エージェントの設定ファイルには権限ブラックリストが含まれており、機密パス(.env、.sshなど)へのアクセスや特権コマンド(sudo、chmodなど)の実行を禁止することでセキュリティを強化しています。ボットは設定で指定された単一のユーザーIDからのメッセージのみを受け付けるため、リスクをさらに低減しています。

学生エージェントに加えて、PhD_fleetには「コーチ」エージェントが搭載されています。コーチエージェントはアドバイザーと学生のやり取りを監視し、GROWモデル、SBIモデル、ヴィゴツキーの発達の最近接領域などの教育理論に基づいたフィードバックを提供し、アドバイザーの指導スキル向上を支援します。コーチエージェントはコマンドがあった場合のみ応答し、自動的には介入しません。アドバイザーは/coach-reviewコマンドを使用して、特定の学生に対する指導の振り返りをコーチに依頼でき、コーチは過去のインタラクションを分析して改善点を指摘し、長期的な観察ファイルを更新します。

このツールは3つのスラッシュコマンドを提供します。/new-studentで新しい学生エージェントを作成し、自動的にワークスペースを構築してSlackチャンネルを作成し、最初のターンを開始します。/coach-review [日数]で特定学生に対する指導の振り返りをコーチに依頼します。/claude-statusですべてのエージェントのステータス(ターン数、コンテキストサイズ、累積トークン数、モデル、コスト、GitHubリンク)を表示します。また、各エージェントの作業内容は設定によりターンごとに自動でGitHubブランチにコミットされ、レビューが容易になります。GitHubのオリジンが設定されていない場合、このステップは静かにスキップされます。

セットアップは比較的簡単で、リポジトリのクローン、依存関係のインストール(仮想環境推奨)、SlackアプリのトークンとユーザーIDの設定後、bot.pyを実行するだけです。このツールはSocket Modeをサポートしており、インバウンドポートを開放する必要がなく、NATやプライベートサブネット内でも動作します。必要な環境はPython 3.11以上、Claude Code CLI、Claude.aiのサブスクリプションまたはAnthropic APIキーです。セットアップ手順には、Slackアプリの作成、トークンの取得、環境変数の設定、Claude認証の構成(サブスクリプション推奨)が含まれます。長期運用には、tmuxやsystemdなどのプロセスマネージャーの使用が推奨されます。

動作原理としては、各学生エージェントはstudents/<name>/ディレクトリに配置され、CLAUDE.md(ペルソナとプロジェクト概要)、JOURNAL.md(追記専用の研究ログ)、notes/(プライベートメモ)、および実際の作業成果物を含みます。共有論文ライブラリlibrary/はプロジェクトルートにあり、すべてのエージェントが読み書きできます。最初の読者が標準サマリーを書き、後続の読者は別のノートファイルを追加し、インデックスはボットが毎ターン後に自動再生成します。引用キーの衝突は文字サフィックスで解決されます。GitHubオリジンが設定されている場合、ボットは毎ターン後にエージェントのワークスペースを強制プッシュし、Slackメッセージにレビューリンクを含めます。

セキュリティモデルは多層防御ですが、サンドボックスではありません。各エージェントの.claude/settings.jsonには権限ブラックリストが含まれ、機密パスの読み取りや特権コマンドの実行を禁止します。しかし、これはプロンプトインジェクション攻撃を完全には防げません。そのため、リスクが許容できるホスト上でのみ実行し、設定された単一のアドバイザーのみが使用する必要があります。

制限事項としては、シングルアドバイザーモードのみでチームや複数アドバイザーはサポートされていないこと、エージェントは受動的であり自発的に提案や質問をしないことが挙げられます。また、ボットは一時的な切断後に再接続できますが、プロセスが完全に終了するとスーパーバイザーなしでは復旧できません。

全体として、PhD_fleetは独立した研究者にとって興味深い実用的なツールであり、AIエージェントで研究チームを模擬することで、研究成果の促進と指導能力の向上の両方に貢献します。モジュール化された設計と明確なドキュメントにより導入のハードルは低いですが、現在は単一アドバイザーモードのみ対応で、エージェントの応答は完全に受動的であることに注意が必要です。