
AIコーディングエージェント向けオンプレミスAPIゲートウェイ。エンジニアごとのコスト配分、厳格な予算、出力ガバナンス(シークレット/エンティティスキャン)、コンテキストローテーション観測性、監査対応エクスポートを備えています。お客様のVPC内で動作します。
AIコーディングエージェント向けオンプレ制御プレーン。 エンジニア別コスト帰属 · ハードバジェット · 出力ガバナンス · コンテキストロート可観測性 · 監査対応エクスポート — すべてVPC内で完結。
ConduitはAIコーディングエージェント(Claude Code、Cursor、Codex、Aider)と既存のプロバイダ(Anthropic、OpenAI、Bedrock、Azure、または既存のLiteLLM / Portkeyデプロイ)の間に位置します。環境変数1つで導入可能、クライアントの変更不要、プロンプトと完了は保存されません。
[Claude Code / Cursor / Codex]
│ ANTHROPIC_BASE_URL=https://conduit.yourco.dev
▼
[Conduit] vk_live_… (per-engineer)
│ metering · budgets · governance · audit · context-rot
▼
[LiteLLM / Portkey / direct providers]
│
▼
[Anthropic / OpenAI / Bedrock / Azure]
概要 — 支出、キャッシュ節約、トークン数、ブロックされたリクエスト、ガバナンスフラグを一目で確認。

ハードバジェットの強制 — 上限超過時はプロバイダへのリクエスト到達前にゲートウェイで402を返します。

出力ガバナンス — AWSキーを含むリクエストは451でブロックされ、カテゴリのみ記録され、値は決して保存されません。

アクティビティ — 各リクエストに異なるステータス: 成功・キャッシュヒット・レート制限・モデルブロック・予算超過・ガバナンスブロック。

設定 — 組織、プロバイダ認証情報、チーム、予算、仮想キーの完全CRUD。

Bedrock/Vertex/Azureのプライベートエンドポイントとno-train BAAはベンダーへのチャネルを解決しますが、誰が4万ドルを使ったかを財務に伝えず、出力時にシークレットを捕捉せず、監査人に記録を提供せず、コンテキストロートがトークン予算を消費している場所を示しません。Conduitはそのギャップを埋めます — プロンプトを決して見ることなく。
GHCRから最新の署名済みイメージをプル(cosign verifyで検証可能、セキュリティ体制参照)。
# 1. Get the compose file + env template (no full clone needed)
curl -fsSL https://raw.githubusercontent.com/anee769/conduit/master/docker-compose.yml -o docker-compose.yml
curl -fsSL https://raw.githubusercontent.com/anee769/conduit/master/.env.example -o .env
# 2. Generate a real master encryption key
sed -i.bak "s|^MASTER_ENCRYPTION_KEY=.*|MASTER_ENCRYPTION_KEY=$(openssl rand -base64 32)|" .env && rm .env.bak
# 3. Pull the signed images + start
docker compose --profile app pull
docker compose --profile app up -d
# 4. Run migrations + seed the pricing book (one-time)
docker exec conduit-gateway-1 pnpm --filter @finops/db db:migrate
docker exec conduit-gateway-1 pnpm --filter @finops/db seed-pricing
# → open http://localhost:3000/setup → create org / credential / team / virtual key
upの前にGATEWAY_IMAGEとCONTROL_PLANE_IMAGEをエクスポートして特定のリリースに固定:
export GATEWAY_IMAGE=ghcr.io/anee769/conduit-gateway:v0.1.0
export CONTROL_PLANE_IMAGE=ghcr.io/anee769/conduit-control-plane:v0.1.0
git clone https://github.com/anee769/conduit && cd conduit
cp .env.example .env
sed -i.bak "s|^MASTER_ENCRYPTION_KEY=.*|MASTER_ENCRYPTION_KEY=$(openssl rand -base64 32)|" .env && rm .env.bak
docker compose --profile app up -d --build
docker exec conduit-gateway-1 pnpm --filter @finops/db db:migrate
docker exec conduit-gateway-1 pnpm --filter @finops/db seed-pricing
export ANTHROPIC_BASE_URL=http://localhost:4000
export ANTHROPIC_AUTH_TOKEN=vk_live_… # virtual key from /setup
claude # or cursor / codex / aider
ゼロからの完全ガイドはINSTALL.mdにあります。
LiteLLMはモデルエイリアスとルーティングに優れています — Conduitはセキュリティチームと財務チームが求めるレイヤーを追加します。Portkeyは最も機能が重複していますが、ガバナンス+オンプレが必要になるとクローズドソースのエンタープライズ版になります。Heliconeは可観測性のみです(トークンの行き先はわかりますが、制御はしません)。
SECURITY.mdを参照。/invokeは動作します。Conduitは完全にお客様自身のクラウド内で動作 — リクエスト経路にベンダーはなく、ホームコールなし、エアギャップ可能。詳細はSECURITY.md(データフロー図、保存内容、暗号、フェイルクローズ認証、コンプライアンス体制、脅威モデル)を参照。
v* Gitタグごとにghcr.io/anee769/conduit-gatewayおよびghcr.io/anee769/conduit-control-planeにリリース(.github/workflows/release.yml参照)。リリースされたタグは以下のように検証可能:
cosign verify ghcr.io/anee769/conduit-gateway:<tag> \
--certificate-identity-regexp 'https://github.com/anee769/conduit' \
--certificate-oidc-issuer https://token.actions.githubusercontent.com
bash scripts/sbom.shで生成可能。apps/gateway — Node上のHono、ホットパスデータプレーン。ビルドステップ不要(tsx)。依存ゼロのClickHouseクライアント+ioredis。apps/control-plane — Next.js 15 / React 19ダッシュボード+管理者API+初回実行/setupウィザード。packages/db — Drizzleスキーマ、AES-256-GCM暗号化、キーハッシュ、価格設定+予算。usage_events)+Redis(キャッシュ+レート制限+リアルタイム予算カウンター)。リクエストライフサイクル(apps/gateway/src/routes/proxy.ts):
auth (vk) → rate limit → model allow-list → budget check
→ governance scan (T1 secrets + T2-lite entities)
→ cache lookup → resolve credential → adapter.prepare()
→ forward + tee stream (client untouched; meter branch in background)
bash scripts/run-tests.sh # full unit + live-system suite (72 tests)
bash scripts/run-tests.sh --unit-only # pure logic, no Docker stack needed
pwsh scripts/run-tests.ps1 # Windows equivalent
CI(.github/workflows/ci.yml)はすべてのPRで両方のジョブを実行 — グリーンの場合のみマージ。
PR歓迎。簡単な手順:
git checkout -b feat/my-change
# …
bash scripts/ci-local.sh # runs the same checks CI runs
bash scripts/ci-local.sh --fast # typecheck + unit only, no Docker
git push -u origin feat/my-change
gh pr create --base dev
ブランチフロー: feature → dev → master. マージ前にCIが通過必須。
Apache License 2.0 — Kubernetes、Terraform、Kafkaと同じライセンス。商用利用、修正、ベンダリング可能ですが、Conduitが自身の作品であると主張しないでください。
SECURITY.mddocs/run-with-litellm.mdINSTALL.md| 現在の運用 | Conduitの上流設定 |
|---|
| LiteLLM(任意のモデル、任意のプロバイダ) | UPSTREAM_ANTHROPIC_URL=http://litellm:4000 → 完全なウォークスルー: docs/run-with-litellm.md |
| Portkey | UPSTREAM_OPENAI_URL / UPSTREAM_ANTHROPIC_URLをPortkeyのベースURLに指定 |
| 直接 Anthropic / OpenAI | デフォルト — 設定不要 |
| AWS Bedrock | /setupでBedrock認証情報を設定; ConduitはSigV4でリクエストに署名 |
| Azure OpenAI | /setupでAzure認証情報(デプロイメント名+api-version)を設定 |
| Conduit | LiteLLM | Portkey | Helicone |
|---|
| オープンソースライセンス | Apache 2.0 | MIT | Apache 2.0 (gateway) | MIT |
| 完全にオンプレミス/VPC内で動作 | ✅ | ✅ | ✅ (enterprise) | ✅ (self-host) |
| プロバイダルーティング+エイリアス+フォールバック | ✅ (any upstream) | ✅ | ✅ | ❌ |
| エンジニア別コスト帰属(名前付き仮想キー) | ✅ | 部分的(マスターキー共有請求) | ✅ | ✅ (observe-only) |
| ハードバジェット(フェイルクローズ402) | ✅ | 部分的 | ✅ | ❌ |
| 出力ガバナンス(シークレット+組織別エンティティ許可リスト、アラート→ブロック) | ✅ | ❌ | ✅ (guardrails) | ❌ |
| 監査対応CSV/JSONエクスポート(メタデータのみ) | ✅ | ❌ | 部分的 | ✅ |
| コンテキストロート可観測性(入力トークンサイズ別のコスト・エラー率曲線) | ✅ | ❌ | ❌ | ❌ |
| プロンプト/完了 決して保存しない | ✅ | デフォルトでログ | 設定可能 | デフォルトでログ |
| 署名済みリリース+CycloneDX SBOM | ✅ | ❌ | ❌ | ❌ |
| 他ツールの上位に配置する設計 | ✅ | n/a | n/a | n/a |