Skip to content

API リファレンス

Commander の API は 2 層 です。多くのアプリは Layer 1 だけで足ります。

Layer 1 — 公開統合(ここから)

パッケージ / 入口用途
CLIcommander · packages/core/src/cliEntry.ts端末・スクリプト・CI
TypeScript SDK@commander/sdkCommanderClientNode 埋め込み
HTTP APIサーバー :4000多言語・Web Console
Python SDKcommander-ai(HTTP)API サーバー向け

TypeScript SDK

typescript
import { CommanderClient, createClient } from '@commander/sdk';

const client = new CommanderClient({ provider: 'openai' });
await client.connect();
const result = await client.run('audit this repo');
console.log(result.status, result.summary);
await client.disconnect();
メソッド役割
connect / disconnectライフサイクル
run(task)フル実行 → ExecutionResult
plan(task)審議のみ
onEvent(handler)イベント・ストリーム

npm: monorepo 優先。公開は進行中。Agent SDK

HTTP

bash
curl http://localhost:4000/health
curl -X POST http://localhost:4000/execute \
  -H "Authorization: Bearer $COMMANDER_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"task":"analyze this repository","mode":"plan"}'

V2: POST /v1/runsV2 移行

Python

python
from commander import CommanderClient

Python SDK


Layer 2 — ランタイム編成コンポーネント

@commander/core 内部。ランタイム拡張時のみ。

コンポーネント目的
Task Complexity Analyzerスコア → トポロジ
Adaptive Orchestratorマルチエージェント計画
Token Budget Allocator予算配分
Three-Layer Memory3 層メモリ
Reflection Engine事後評価
Consensus Checker高リスク合意
Inspector Agentヘルス / 問題検知

Layer 2 を使うとき

カスタム・トポロジ、メモリ/合意の研究、サブシステム単体テスト。

使わないとき

「タスクを走らせたい」だけ → CommanderClient。遠隔多言語 → HTTP。

最小例

typescript
import {
  TaskComplexityAnalyzer,
  AdaptiveOrchestrator,
  TokenBudgetAllocator,
} from '@commander/core';

const analyzer = new TaskComplexityAnalyzer();
const complexity = analyzer.analyze({
  id: 'task-1',
  description: 'Build distributed logging system',
  riskLevel: 'high',
});

const allocator = new TokenBudgetAllocator({ baseBudget: 100_000 });
const budget = allocator.allocate(
  complexity.recommendedTopology,
  complexity.score,
  3,
);

グローバル・アクセサ(getGlobal…)は共有状態が必要なときだけ。

関連

MIT — マルチエージェント編成のために。