Claude Code Plugin
Hashee Claude Code Pluginにより、Claude CodeがModel Context Protocol(MCP)を通じてHasheeの会話とやり取りできます。Claude Codeエージェントはコーディング環境内からメッセージの送信、ファイルのアップロード、返信のストリーミング、アーティファクトの送信が可能です。
MCPとは
Model Context Protocol(MCP)はAnthropicが策定した、AIツールを外部サービスに接続するための標準です。stdio ベースの通信プロトコルを使用し、ツールは呼び出し可能な関数として登録されます。
仕組み
Claude Code ──stdio──> Hashee MCP Plugin ──Agent SDK (WS)──> Hashee API │ ├── 7 Tools (send, receive, stream, upload...) ├── Channel Push (Hasheeからの受信メッセージをClaude Codeへ) └── Permission Relay (Hasheeアプリからの承認/拒否)プラグインはAgent SDK経由でWebSocketでHasheeに接続し、MCP経由で7つのツールをClaude Codeに公開します。
利用可能なツール
| ツール | パラメータ | 説明 |
|---|---|---|
hashee_send_message | conversation_id, text | Agent SDK経由でテキストメッセージを送信 |
hashee_get_messages | conversation_id, limit? | 最近のメッセージを取得(デフォルト20、最大50) |
hashee_list_conversations | (なし) | エージェントのアクティブな会話一覧 |
hashee_typing | conversation_id | タイピングインジケーターを送信 |
hashee_send_artifact | conversation_id, artifact, title, summary? | A2Hアーティファクトを送信(フォーム、ステータス、エラーカード) |
hashee_stream_reply | conversation_id, text | 返信をストリーム(100文字チャンク、30msインターバル) |
hashee_send_file | conversation_id, file_path, content_type? | ローカルファイルをアップロード(最大100MB、自動MIME検出) |
セットアップ
1. .mcp.jsonの設定
プロジェクトのMCP設定にHasheeサーバーを追加します:
{ "mcpServers": { "hashee": { "command": "npx", "args": ["tsx", "packages/public/claude-code-plugin/src/index.ts"], "env": { "HASHEE_AGENT_ID": "your-agent-uuid", "HASHEE_AGENT_TOKEN": "hsk_your-token", "HASHEE_SERVER_URL": "https://api.hashee.ai", "HASHEE_ALLOWED_USERS": "user-id-1,user-id-2" } } }}2. 環境変数
| 変数 | 必須 | デフォルト | 説明 |
|---|---|---|---|
HASHEE_AGENT_ID | はい | — | Agent UUID |
HASHEE_AGENT_TOKEN | はい | — | エージェント認証トークン |
HASHEE_ALLOWED_USERS | はい | — | カンマ区切りのユーザーIDホワイトリスト |
HASHEE_SERVER_URL | いいえ | https://api.hashee.ai | APIベースURL |
HASHEE_CONNECTION_MODE | いいえ | websocket | websocket または longpoll |
3. Claude Codeを起動
Claude CodeはMCPサーバーを自動的に検出し、Hasheeツールを利用可能にします。
チャネルプッシュ
Hasheeの受信メッセージはチャネル通知としてClaude Codeにプッシュされます。HASHEE_ALLOWED_USERSリストに含まれるユーザーからのメッセージのみが転送されます。
プラグインはコンテンツをサニタイズ(チャネルインジェクション防止のためXMLエスケープ)し、10,000文字で切り詰めます。
パーミッションリレー
プラグインはClaude CodeとHasheeアプリ間の双方向パーミッションリレーをサポートします:
- Claude Codeがパーミッション(例:コマンドの実行)をリクエスト
- プラグインが承認/拒否ボタン付きのアーティファクトをHasheeアプリに送信
- ユーザーがHasheeアプリで応答
- 判断がClaude Codeにリレーバック
リクエストは60秒後に自動拒否されます。
セキュリティ
| レイヤー | 仕組み |
|---|---|
| 送信者ホワイトリスト | HASHEE_ALLOWED_USERSのみチャネルにプッシュ可能 |
| XMLサニタイズ | チャネルインジェクション攻撃を防止 |
| コンテンツ切り詰め | 10,000文字制限 |
| ファイルパス制限 | send_fileは作業ディレクトリ内のファイルのみ許可 |
| パーミッションタイムアウト | 60秒後に自動拒否 |
| エージェント認証 | すべてのREST呼び出しにBearerトークン |
次のステップ
- Codex Plugin — OpenAI Codex統合
- OpenClaw Plugin — OpenClaw統合
- SDK入門 — スタンドアロンエージェントの構築