devflows-mcp
cibseven-devflows
ローカルの CIB seven エンジン上で開発者ワークフローを BPMN プロセスとして実行し、MCP サーバーを介して Claude Code などの AI コーディングエージェントから操作します。
バージョン 0.1.0 には、リポジトリのリリース儀式という 1 つのワークフローが含まれています。品質ゲートを実行し、人間に確認し、タグを付け、公開します。このリポジトリ自体が、そのプロセスを自分自身に対して実行して v0.1.0 を切り出しました。
なぜ
リリースを切ることは、その途中に人間の判断が入るプロセスです。通常、そのプロセスは誰かの頭の中とターミナルのスクロールバックの中に存在します。ゲートが実行されたこと、人が承認したこと、何が公開されたかを記録するものはありません。
プロセスエンジンは、まさにそのような形の問題に適したツールです。CIB seven は状態を保持し、履歴を保持し、人間を待つ方法を知っています。あなたのマシンは依然として作業を行い、AI エージェントは実行を開始して監視できますが、承認をスキップすることはできません。承認はプロセス内のステップであり、プロンプト内の約束ではないからです。
Related MCP server: jt-mcp-server
アーキテクチャ
flowchart LR
agent["Claude Code<br/>(any MCP client)"] -- stdio --> mcpserver["devflows-mcp"]
mcpserver -- REST --> engine["CIB seven engine<br/>Docker, H2, localhost:8080"]
human["You, in the web UI"] -- approve --> engine
engine -- fetchAndLock --> worker["devflows-worker"]
worker -- shell --> repo["your repository<br/>pytest, ruff, git, gh"]エンジンはシェルコマンドを実行せず、リポジトリに触れることもありません。作業を配布するだけで、あなたのマシン上のワーカーがそれをポーリングして実行します。これは標準的な Camunda 7 外部タスクパターンであり、プロセスが開発者マシンを駆動することを安全にする理由です。
リリースプロセス
flowchart LR
start((start)) --> gates["Run gates<br/><i>devflows.gates</i>"]
gates --> q1{Gates passed?}
q1 -- no --> failed((Gates failed))
q1 -- yes --> approve["Approve release<br/><i>user task</i>"]
approve --> q2{Approved?}
q2 -- stop --> rejected((Release rejected))
q2 -- ship --> tag["Tag<br/><i>devflows.tag</i>"]
tag --> publish["Publish<br/><i>devflows.publish</i>"]
publish --> released((Released))トピック名を持つ 3 つの長方形は外部タスクです。「リリースを承認」は BPMN ユーザータスクであり、待機し、エンジンの再起動後も存続し、Web UI または approve_gate MCP ツールのいずれかで回答できます。
dry_run=true はゲートを実際に実行しますが、それ以外は何も変更しません。タグもプッシュもリリースも行いません。
クイックスタート
docker compose -f engine/docker-compose.yml up -duv syncuv run pytest -m "not integration" && uv run ruff check .プロセスをデプロイします(エンジンごとに 1 回):
curl -s -X POST http://localhost:8080/engine-rest/deployment/create -F "deployment-name=cibseven-devflows" -F "release.bpmn=@processes/release.bpmn"ワーカーを起動し、専用のターミナルで実行し続けます:
uv run devflows-workerこのリポジトリのドライリリースを開始します。repo_path をこのリポジトリの絶対パスに置き換えてください。Windows でもスラッシュを使用してください(C:/Users/you/repos/cibseven-devflows)。これらは機能し、バックスラッシュのエスケープと戦う手間を省きます。
curl -s -X POST http://localhost:8080/engine-rest/process-definition/key/devflows-release/start -H "Content-Type: application/json" -d '{"variables":{"repo_path":{"value":"ABSOLUTE/PATH/TO/cibseven-devflows","type":"String"},"version":{"value":"0.2.0","type":"String"},"dry_run":{"value":true,"type":"Boolean"}}}'次に、http://localhost:8080/webapp/#/seven/auth/tasks で demo / demo として承認します。マイグループタスクでフィルタリングし、リリースを承認をクレームし、承認にチェックを入れて送信します。
実際には、curl ではなく MCP サーバーを介して実行を開始します。完全なウォークスルーについては docs/DEMO.md を参照してください。
devflows.yaml
各リポジトリは、ルートにある devflows.yaml で独自のリリースを記述します:
gates:
- name: tests
run: uv run pytest -q
- name: lint
run: uv run ruff check .
tag:
format: "v{version}"
publish:
run: gh release create v{version} --generate-notesキー | 意味 |
| 品質ゲートの順序付きリスト。各ゲートには |
| タグ名の構築方法。 |
| リリースを公開するシェルコマンド。 |
未知のトップレベルキーは無視されるため、新しいバージョンの devflows が古いファイルを壊さずにステップを追加できます。
MCP ツール
devflows-mcp は stdio 上で MCP を話し、任意の MCP クライアントから動作します。
ツール | 引数 | 戻り値 |
| — | エンジンが応答するかどうか、そのバージョン、エンジン名 |
|
| デプロイメント ID とデプロイされたプロセス定義キー |
| — | デプロイされたプロセス定義(キー、バージョン、ID) |
|
| プロセスインスタンス ID と Web UI でのリンク |
|
| 状態、現在のアクティビティ、未完了タスク、ゲートレポート、すべての変数 |
|
| そのリポジトリが実行するゲート。エンジンには触れません |
|
| 承認タスクが完了したことの確認 |
すべてのツールは ok フラグを持つ辞書を返し、ok が false の場合は error 文字列を返します。呼び出し元は失敗を人に説明する必要がある言語モデルであるため、どのツールも例外を発生させません。
Claude Code から使用する
plugin/ は同じサーバーを中心とした Claude Code プラグインです:
plugin/.mcp.jsonはuv runでdevflows-mcpを起動します。plugin/skills/release-with-devflows/SKILL.mdは、エージェントにエンジンをいつ使用するか、ツールをどの順序で呼び出すかを指示します。承認前に停止して確認するというルールも含まれます。plugin/commands/release.mdは/devflows:release <version> [--real]を提供します。
サーバーを他の MCP クライアントに直接接続するには:
{
"mcpServers": {
"cibseven-devflows": {
"command": "uv",
"args": ["run", "devflows-mcp"]
}
}
}設定
変数 | デフォルト | 使用箇所 |
|
| ワーカー、MCP サーバー |
|
| ワーカー |
|
| ワーカー |
|
| ワーカー |
| パッケージの隣にあるもの | MCP サーバー |
セキュリティ
このプロジェクトには意図的な点が 2 つあり、どちらも自分のマシンで実行することを前提としています:
エンジンには認証がありません。
localhost:8080の REST API は、到達できるものなら何でも受け入れます。そのポートを制御できないネットワークに公開しないでください。ワーカーはシェルコマンドを実行します。 それらは、リリースを依頼したリポジトリの
devflows.yamlから来て、あなたとして、そのリポジトリ内で実行され、あなたが入力するのと同じコマンドです。信頼できるリポジトリのみを対象にしてください。
クラウドサービス、テレメトリ、gh がすでに持っている GitHub 資格情報以外のアカウントはありません。
リポジトリ構成
ディレクトリ | 内容 |
| ローカル CIB seven 2.2.0 エンジン用の Docker Compose |
|
|
|
|
|
|
|
|
| Claude Code プラグイン |
| 単体テスト、およびライブエンジンが必要な |
| デモスクリプト、設計および計画ドキュメント |
要件
Docker Desktop(エンジン用)
Python 3.12 と uv
git、およびタグと公開ステップ用に認証済みのghBPMN 図を編集する場合は Camunda Modeler 5.x(オプション)。
processes/release.bpmnを Camunda 7 図として開きます。
ライセンス
Apache License 2.0。LICENSE を参照してください。
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseNot gradedqualityCmaintenanceEnables AI coding environments to enforce engineering governance through MCP tools and resources for init, check, route, and review workflows.262MIT
- AlicenseNot gradedqualityCmaintenanceMCP server that equips AI agents with dev workflow tools including GitHub project management, conventional commits, visual regression testing, Jira/Confluence integration, and a persistent memory knowledge graph.25MIT
- FlicenseNot gradedqualityBmaintenanceEnables AI agents and external systems to programmatically trigger and monitor Jenkins jobs, retrieve build status and logs via MCP standards.
- AlicenseNot gradedqualityAmaintenanceExposes a governed, provenance-grounded autonomous delivery pipeline as an MCP server, enabling AI coding assistants like Claude Code or Codex to initiate requirements-to-PR workflows with human approval gates and full audit.7MIT
Related MCP Connectors
MCP server for secureFlows: token-free URL builders and integration-linting tools for AI agents.
MCP server for AI agents to plan, verify, and deploy Cloudflare-native apps.
Control plane for autonomous software labor. Agents claim objectives over MCP with audit trail.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/0langa/cibseven-devflows'
If you have feedback or need assistance with the MCP directory API, please join our Discord server