Communityコーディング&開発github.com

Thanane15M/telegram-agent-router

PostgreSQLネイティブ状態を持つマルチエージェントTelegramボットアーキテクチャ。Claudeスキル。

telegram-agent-router とは?

このスキルは、複数のAIエージェントをTelegram上でルーティング・管理するためのアーキテクチャを提供します。PostgreSQLを状態管理のバックエンドとして使用し、エージェント間のセッション状態やコンテキストを永続的に保持します。Claude CodeやCursor、Codexなどの開発者向けプラットフォームで動作し、Telegramボットを介してユーザーとやり取りする複数の専門エージェント(例:コードレビュー、データ分析、ドキュメント生成)を一元的に管理できます。PostgreSQLのトランザクション機能やスキーマを活用することで、状態の整合性とスケーラビリティを確保し、大規模なマルチエージェントシステムを安定して運用できます。このスキールは、エージェントの登録、メッセージルーティング、状態管理のためのAPIを提供し、簡単な設定でTelegramボットとバックエンドエージェントを連携させます。

対応✓Claude Code~Codex CLI~Cursor
npx skills add Thanane15M/telegram-agent-router

Installed? Explore more コーディング&開発 skills: steipete/bluebubbles, steipete/eightctl, steipete/blucli · View all 6 →

お気に入りのAIに質問する

このエージェントスキルを事前に読み込んだ状態で新しいチャットを開きます。

ドキュメント

telegram-agent-router は何をしますか?

マルチエージェントTelegramボットアーキテクチャ。PostgreSQLネイティブ状態。Claudeスキル。

概要

このスキルは、複数のAIエージェントをTelegram上でルーティング・管理するためのフレームワークを提供します。PostgreSQLを状態ストアとして使用し、エージェント間のセッション状態やコンテキストを永続的に保持します。

特徴

  • マルチエージェントルーティング: Telegramからのメッセージを適切なエージェントにルーティングします。
  • PostgreSQLネイティブ状態: 状態管理にPostgreSQLのテーブルとトランザクションを直接使用します。
  • 簡単な設定: 環境変数と設定ファイルのみで動作します。
  • スケーラブル: 複数のエージェントを並列実行可能。

クイックスタート

必要条件

  • Node.js 18+
  • PostgreSQL 14+
  • Telegram Bot Token

インストール

git clone https://github.com/Thanane15M/telegram-agent-router
cd telegram-agent-router
npm install

設定

環境変数を設定します:

export TELEGRAM_BOT_TOKEN="your-telegram-bot-token"
export DATABASE_URL="postgresql://user:password@localhost:5432/agentsdb"
export AGENT_REGISTRY_URL="http://localhost:4000"

データベースのセットアップ

psql $DATABASE_URL -f schema.sql

起動

npm start

アーキテクチャ

Telegram User
      |
Telegram Bot (受信)
      |
  Router (メッセージルーティング)
      |
  +-----+-----+-----+
  |     |     |     |
A1    A2    A3    A4  (エージェント)
  |     |     |     |
  +-----+-----+-----+
      |
PostgreSQL (状態ストア)

エージェントの定義

エージェントはJSON設定ファイルで定義します:

{
  "agents": [
    {
      "name": "code-reviewer",
      "description": "コードレビューを担当",
      "model": "claude-sonnet-4-20250514",
      "systemPrompt": "あなたはコードレビュー専門のエージェントです。..."
    },
    {
      "name": "data-analyst",
      "description": "データ分析を担当",
      "model": "claude-sonnet-4-20250514",
      "systemPrompt": "あなたはデータ分析専門のエージェントです。..."
    }
  ]
}

PostgreSQLスキーマ

CREATE TABLE agents (
  id SERIAL PRIMARY KEY,
  name TEXT UNIQUE NOT NULL,
  description TEXT,
  config JSONB NOT NULL,
  created_at TIMESTAMP DEFAULT NOW()
);

CREATE TABLE sessions (
  id SERIAL PRIMARY KEY,
  agent_id INTEGER REFERENCES agents(id),
  user_id BIGINT NOT NULL,
  state JSONB NOT NULL DEFAULT '{}',
  created_at TIMESTAMP DEFAULT NOW(),
  updated_at TIMESTAMP DEFAULT NOW()
);

CREATE TABLE messages (
  id SERIAL PRIMARY KEY,
  session_id INTEGER REFERENCES sessions(id),
  role TEXT NOT NULL,
  content TEXT NOT NULL,
  created_at TIMESTAMP DEFAULT NOW()
);

API

  • POST /api/register-agent - エージェントの登録
  • POST /api/route - メッセージのルーティング
  • GET /api/sessions - セッション一覧
  • GET /api/agents - エージェント一覧

ライセンス

MIT

関連スキル