OutcomeCI
公式OutcomeCIで、チームのツール全体にわたるエージェント駆動のワークフローを作成、検証、管理できます。
OutcomeCI MCPで何ができますか?
- ワークフロー計画の草案作成 — AIにリクエストを読ませ、
draftツールを使ってステップバイステップの計画を提案させます。 - 議論による計画の洗練 — 承認するまで、
discussを通じてAIと計画を繰り返し調整します。 - 承認済み変更の実行 — 設定された権限内で、合意した計画を
implementを使ってAIに実装させます。 - 結果の報告 — PRリンクなどの成果を、元の会話スレッドに
announceで投稿するようAIに依頼します。 - 実行トレースの確認 — 各ワークフローステップが何を呼び出し、何を返し、何を拒否したかの要約をリクエストします。
ホスト型 MCP サーバー
npx add-mcp 'https://api.outcomeci.com/v1/mcp'Claude Code、Codex、Cursor などにインストールできます
ドキュメント
ワークフローを説明し、一緒に構築しましょう。
お気に入りのエージェントをOutcomeCIに接続し、実行したいことを説明してください。ステップ、ツール、承認を一緒に組み立て、OutcomeCIにワークフローを実行させましょう。
draft
リクエストとリポジトリを読み取ります。スレッド内で計画を提案します。
discuss
リクエスト元とフィードバックをやり取りし、承認を得るまで調整します。
implement
ワークフローの権限範囲内で合意した変更を実施します。
announce
結果を開始した会話に戻します。
Slackリクエストをプルリクエストに変換するワークフローを構築します。リクエスト元と計画を話し合い、変更を加える前に承認を待ちます。
- 01
draftエージェントステップ - 02
discuss人間による承認 - 03
implementエージェントステップ - 04
announceエージェントステップ
ワークフローを一緒に確認します。作業が届くとOutcomeCIが実行します。
完全なワークフローを表示
apiVersion: outcomeci.workflow/v1
name: slack-to-pull-request
trigger:
webhook: {uses: slack, auth: secrets.slack_signing, events: [mention, dm]}
secrets:
slack: vault:slack/bot-token
slack_signing: vault:slack/signing-secret
github: vault:github
apis:
slack: {uses: slack, auth: secrets.slack}
github: {uses: github, auth: secrets.github}
reasoning:
default: {runner: codex}
steps:
- draft:
reason: >
Read the repositories named in the request. Draft a plan with
a section per repository and post it in the request's thread.
from: trigger
can:
- github.read
- slack.post: {channel: trigger.channel, thread_ts: trigger.ts}
returns:
plan: {summary, repos: [{repo: {owner, name}, steps: [string]}]}
- discuss:
with: draft.plan
converse: slack.thread(draft.calls.slack.post)
by: trigger.user
until: converged
max_turns: 12
returns: [plan, status]
- implement:
when: discuss.status == "converged"
for_each: discuss.plan.repos as target
reason: Implement the approved plan and open one pull request.
with: [discuss.plan, target]
can:
- github.write: {repo: target.repo}
policy: "One branch, one PR, only files the plan needs. No force-push."
returns:
pr?: {url, number: int, branch}
reason?: string
- announce:
with: [implement, discuss.plan]
reason: Reply in the original thread with each PR link or the reason no PR was opened.
can:
- slack.post: {channel: trigger.channel, thread_ts: trigger.ts}
計画を形にし、承認を得ましょう。
人がガイド、レビュー、承認を行う場所を決めます。各ステップに明確な権限をエージェントに与え、設定した境界内で変更を維持します。
-
各ステップの権限
各ステップが実行できる操作とアクセスできるリソースを選択します。付与された範囲外の呼び出しは拒否されます。 -
変更前のポリシーレビュー
1つのブランチと1つのPRなどのルールを追加します。ポリシーレビューアが送信前に提案された変更をチェックします。 -
認証情報はVaultに保管
OutcomeCIはAPI呼び出しに認証情報を添付します。エージェントはトークンを受け取らずに付与された範囲内で作業します。
# product-engineering
OutcomeCI APP
アクティビティページにCSVエクスポートを追加し、テストを含めます。
Maya
フィルタリングされた結果のみをエクスポートし、既存の列順序を維持してください。
OutcomeCI APP
計画を更新しました: 現在の列順序でフィルタリングされた結果をエクスポートし、両方のテストを含めます。進めてよろしいですか?
承認用の改訂計画の準備ができました
Jordan
それで問題ありません。進めてください。
実装権限
リポジトリ
acme/console
付与
github.write
ポリシー
1つのブランチ。1つのPR。フォースプッシュなし。
認証情報
ブローカーによって添付
トレースされた実行環境。
すべての実行は、最初のツール呼び出しから最終結果まで、検査可能な記録を残します。
各ステップが何を呼び出し、何が返され、何が拒否されたかを理由とともに確認できます。結果に至るまでの作業を追跡できます。
slack-to-pull-request
完了5 API呼び出し · 1 拒否
01 github.read acme/console 確認済み
アクティビティページと既存のテストを読み取りました。リポジトリの内容がドラフトステップに返されました。
02 slack.post #product-engineering / 元のスレッド 確認済み
改訂されたCSVエクスポート計画を投稿しました。フィルタリングされた結果と既存の列順序を含みます。メッセージ受信確認により、承認に使用された会話が特定されます。
03 github.write フォースプッシュ提案 拒否
ポリシーレビューが提案されたフォースプッシュを拒否しました。ポリシーでは1つの新しいブランチと1つのPRのみ許可され、フォースプッシュは禁止されています。このリクエストはGitHubに送信されませんでした。
04 github.write acme/console / プルリクエスト #142 確認済み
承認されたCSVエクスポートのために新しいブランチからプルリクエストを開きました。GitHubがPR番号とURLを返しました。
05 slack.post #product-engineering / 元のスレッド 確認済み
プルリクエストのリンクと要約を元のスレッドに投稿しました。Slackがメッセージ受信確認を返しました。
結果がSlackスレッドに返されました呼び出しを展開して検査
ワークフローはそのままに。エージェントやモデルは変更可能。
ワークフローをOutcomeCIまたはリポジトリに保持します。各ステップのエージェントとモデルを選択し、ローカルまたはクラウドで実行します。
エージェント
- Codex
- Claude Code
- OpenCode
デフォルトを設定し、ステップを上書きし、使用制限用のフォールバックを追加します。
モデル
- OpenRouter
- LiteLLM
既に持っているモデルアクセスを活用します。ワークフローやステップごとにモデルを選択し、オーケストレーションを1つのプロバイダーに縛り付けません。
実行環境
ローカルOutcomeCI Cloud
同じワークフローフォーマットとランナーイメージ。各環境に設定された認証情報。
お気に入りのエージェントから始めたいですか?
MCPでOutcomeCIに接続し、ワークフローを一緒に構築しましょう。
MCPサーバーURL
https://api.outcomeci.com/v1/mcp
公式セットアップガイド:OpenCode ↗ Claude Code ↗ Codex ↗
自分のマシンで始めたいですか?
Dockerとエージェントログインでローカルでテストします。OutcomeCIアカウントは不要です。
$ pipx install outcomeci-cli
1つのワークフローは始まりに過ぎません。
イベント、スケジュール、リクエストから始めます。各ジョブに必要なツール、エージェント、承認をまとめます。
アラート → 調査 → レビュー
受信アラートのトリアージ
受信ウェブフックから始め、問題を調査し、変更を加える前にレビュー用の修正案を提案します。
リクエスト → 調査 → 回答
リポジトリの質問に答える
エージェントに関連コードへの読み取り専用アクセスを許可し、質問した人に回答を返します。
スケジュール → 要約 → 更新
朝のアップデートを準備する
リポジトリのアクティビティを収集し、変更内容を要約し、選択したスケジュールでアップデートを共有します。
イベントで始める Slack · Webhook · メール · スケジュール · CLI
ツールを接続する オープンソースコネクタを探索 ↗
よくある質問
OutcomeCIはコーディングワークフロー専用ですか?
いいえ。OutcomeCIはエージェントワークフローのためのオーケストレーションフレームワークです。実行したい作業に応じてトリガー、ステップ、ツール、承認を定義します。プルリクエストのウォークスルーは一例であり、ワークフローは質問の調査、アクティビティの要約、サポートされているコネクタを通じたアクションも実行できます。
どのエージェントとモデルを使用できますか?
OutcomeCIはCodex、Claude Code、OpenCodeをサポートしています。ワークフローでランナーとそれがサポートするモデルを選択し、特定のステップのエージェントを上書きするか、使用制限用のフォールバックを設定します。ワークフローをOutcomeCIまたはリポジトリに保持します。
ワークフローはどこで実行できますか?
OutcomeCI Cloudのマネージドランナーでワークフローを実行するか、Dockerと自分のエージェントログインでローカルでテストします。両方とも同じランナーイメージとワークフローフォーマットを使用します。認証情報とエージェント接続は各環境に設定されます。
実行トレースは何を記録しますか?
実行のジャーナルはAPI呼び出し、その結果、理由付きの拒否を記録します。ワークフローが何を試み、何が起こったかを検査するために使用します。これはツール実行の記録であり、エージェントの内部推論の書き起こしではありません。
実行が失敗したり、エージェントが制限に達した場合はどうなりますか?
実行ログを開いて何が失敗したかを確認し、再試行する前に記録された呼び出しを検査します。クラウド実行は、ビジーなエージェント接続などの特定の一時的な失敗を最大5回再試行します。使用制限やレート制限用にフォールバックエージェントを設定します。ローカル実行が失敗した場合は、原因を修正してCLIの再試行オプションで再開します。結果が不確かな呼び出しは自動的に再実行されません。
誰も計画を承認しない場合はどうなりますか?
承認ウィンドウを設定します。タイムアウトした承認ステップは残りのステップをスキップします。ウォークスルーでは、実装には承認された計画が必要です。ディスカッションがタイムアウトするか、合意なしにターン制限に達した場合、実装はスキップされます。
権限とシークレットはどのように処理されますか?
各ステップには操作と引数にスコープされた明示的な付与があります。ブローカーは付与された範囲外の呼び出しを拒否し、許可された呼び出しにVaultからの認証情報を添付します。オプションのポリシーレビューは、平文のルールに対して提案された変更をチェックし、ワークフローは人間の承認を待つことができます。
どのツールとトリガーがサポートされていますか?
GitHubとSlackのコネクタが現在利用可能です。Slackのメンションやダイレクトメッセージ、ウェブフック、メール、cronスケジュール、CLIからワークフローを開始します。コネクタはオープンソースであり、コネクタリポジトリを通じて追加のAPIをリクエストできます。
ローカルで試すにはアカウントが必要ですか?
いいえ。CLIをインストールし、Docker、エージェントログイン、接続するツールの認証情報を使用してローカルでワークフローをテストします。マネージドクラウドランナーでワークフローを実行するにはOutcomeCIアカウントを作成します。