Add compact Athena MCP release workflow

This commit is contained in:
Mikei386
2026-08-25 08:51:46 +02:00
parent ac725416b8
commit 662913f8ab
9 changed files with 311 additions and 74 deletions
+10 -4
View File
@@ -10,7 +10,7 @@ import sys
from typing import Any
VERSION = "2.0.0"
VERSION = "2.2.0"
SOCKET_PATH = os.environ.get("ATHENA_OPERATOR_SOCKET", "/operator/operator.sock")
if hasattr(sys.stdin, "reconfigure"):
@@ -84,12 +84,18 @@ TOOLS = [
"description": (
"PREPARE a state-changing Athena operation. This never changes state. It returns a "
"content-bound ticket, exact preview and confirmation phrase. Supported operations: "
"file_update (write repository and deployed stack files), run_checks, compose_deploy, "
"patch_update (preferred for small changes), file_update (only for new or fully replaced files), "
"mcp_release (preferred one-ticket end-to-end MCP delivery), run_checks, compose_deploy, "
"container_action, openwebui_sync, git_publish, model_download, benchmark, recovery. Show the complete "
"preview to the user and stop. Never execute in the same autonomous tool sequence. This is the "
"supported durable source and Git path: never clone the repository inside a sandbox and never "
"request or copy an SSH key. "
"file_update payload: {files:[{path,content,expected_sha256?}]}; run_checks: "
"patch_update payload: {files:[{path,patch,expected_sha256?}]} using standard unified diffs; "
"file_update payload: {files:[{path,content,expected_sha256?}]}; "
"mcp_release payload: {files:[patch entries],services,checks?,message,paths?,build?,"
"openwebui_sync?,create_recovery?,recovery_label?}. It applies drift-protected patches, runs checks, "
"deploys only named MCP services, syncs OpenWebUI, publishes only selected paths and creates recovery. "
"Use mcp_release instead of manually chaining all those operations. run_checks: "
"{checks:[operator-tests,openwebui-filter-tests,platform-verify,compose-main,compose-mcp]}; "
"compose_deploy: {compose_file,services,build}; container_action: {action,containers}; "
"openwebui_sync: {}; "
@@ -99,7 +105,7 @@ TOOLS = [
"inputSchema": {
"type": "object",
"properties": {
"operation": {"type": "string", "enum": ["file_update", "run_checks", "compose_deploy", "container_action", "openwebui_sync", "git_publish", "model_download", "benchmark", "recovery"]},
"operation": {"type": "string", "enum": ["patch_update", "file_update", "mcp_release", "run_checks", "compose_deploy", "container_action", "openwebui_sync", "git_publish", "model_download", "benchmark", "recovery"]},
"payload": {"type": "object"},
},
"required": ["operation", "payload"], "additionalProperties": False,
+1 -1
View File
@@ -191,7 +191,7 @@ services:
build:
context: .
dockerfile: Dockerfile.athena-operator
image: mike-ai/mcp-athena-operator:2.1.0
image: mike-ai/mcp-athena-operator:2.2.0
container_name: mike-ai-mcp-athena-operator
environment:
ATHENA_OPERATOR_SOCKET: /operator/operator.sock