{ manifest_version: "0.1.0", config_schema: { type: "object", properties: { api_key: { type: "string", secret: true }, openai_base_url: { type: "string", default: "https://api.openai.com/v1" }, openai_model: { type: "string", default: "gpt-5.4" }, model_every_n_steps: { type: "string", default: "4" }, default_hold_steps: { type: "string", default: "3" }, max_hold_steps: { type: "string", default: "12" }, }, required: ["api_key"], additionalProperties: false, }, program: { image: "ghcr.io/madgaa-lab/mcu-mc-multimodal-agent:latest", entrypoint: "tini -- node dist/index.js agentbeats --host 0.0.0.0 --port 9009", env: { API_KEY: "${config.api_key}", OPENAI_API_KEY: "${config.api_key}", OPENAI_BASE_URL: "${config.openai_base_url}", OPENAI_MODEL: "${config.openai_model}", OPENAI_API_MODE: "chat", OPENAI_STRUCTURED_OUTPUTS: "true", OPENAI_REQUEST_TIMEOUT_MS: "180000", OPENAI_MAX_RETRIES: "6", AGENTBEATS_MODEL_EVERY_N_STEPS: "${config.model_every_n_steps}", AGENTBEATS_DEFAULT_HOLD_STEPS: "${config.default_hold_steps}", AGENTBEATS_MAX_HOLD_STEPS: "${config.max_hold_steps}", AGENTBEATS_USE_TOOL_AGENT: "true", }, network: { endpoints: [ { name: "a2a_endpoint", port: 9009 }, ], }, }, provides: { a2a: { kind: "a2a", endpoint: "a2a_endpoint" }, }, exports: { a2a: "a2a", }, }