{"slug": "portable-agent-manifests-with-host-controlled-infrastructure", "title": "Portable Agent Manifests with Host-Controlled Infrastructure", "summary": "Clear Ideas has released an open-source Agent Runtime that decouples agent definitions from execution infrastructure via portable Agent Manifests. The runtime allows host-controlled credential resolution, tool access, and authorization, while supporting multiple execution boundaries including local, remote, and sandboxed environments.", "body_md": "AI agents often begin as application code: a prompt, a model call, a few tools, and enough control flow to make the first example run.\n\nAs the agent grows, the definition and the environment tend to collapse into each other. Model configuration lives beside credentials. Tool access is mixed with prompts. Persistence assumes a particular process. Deployment choices become part of the agent itself.\n\nThat coupling makes an agent harder to inspect, test, move, and recover.\n\nWe built [Clear Ideas Agent Runtime](https://github.com/clearideas/agent-runtime) around a different boundary: the agent definition should be portable, while the infrastructure that executes it should remain under host control.\n\nAn Agent Manifest is a versioned YAML or TypeScript definition. It can describe:\n\nA separate Agent Run Manifest supplies the values and execution choices for one invocation. That keeps the reusable agent definition distinct from the inputs and operational decisions associated with a particular run.\n\nHere is a small example:\n\n```\nschemaVersion: \"1.0\"\nname: research-brief\nvariables:\n  topic:\n    type: string\n  researchNotes:\n    type: string\n  briefDraft:\n    type: string\nsteps:\n  - id: research\n    type: prompt\n    prompt: |\n      Research {{ topic }} and return concise notes.\n    outputVariable: researchNotes\n\n  - id: draft\n    type: prompt\n    prompt: |\n      Draft a brief using these notes:\n      {{ researchNotes }}\n    outputVariable: briefDraft\n```\n\nThe manifest describes the agent. It does not contain the credentials, infrastructure account, or persistence implementation that happens to run it.\n\nThe host application supplies and controls:\n\nThis is more than configuration hygiene. It prevents a portable agent definition from granting itself broader access. The host resolves credentials, exposes approved tools, narrows connection modes, and can authorize individual tool calls against application policy.\n\nAuthorization is therefore part of the runtime boundary, not a feature supplied only by a hosted service.\n\nAgent Runtime supports three execution boundaries through one client contract:\n\nThe Agent Manifest does not change when the execution boundary changes.\n\nThe included [Modal](https://modal.com/) adapter implements remote submission, status, ordered events, result retrieval, resume, and cancellation. Docker and [Modal Sandboxes](https://modal.com/docs/guide/sandboxes) implement the runtime's native sandbox contract for isolated code execution and generated artifacts.\n\nApplications can supply different compute or sandbox implementations through the same adapter interfaces.\n\nA multi-step agent needs more than a final response.\n\nAgent Runtime checkpoints run state, step outputs, transcripts, generated files, and continuation data. Suspended or interrupted runs can resume in a fresh process. Attempt fencing prevents an older worker from committing after another process has resumed the run.\n\nRuns also emit ordered lifecycle, model, tool, checkpoint, artifact, and text-delta events. A CLI, embedded application, remote worker, or OpenTelemetry integration can consume the same event stream.\n\nThis gives the runtime a stable execution history around model calls that are inherently non-deterministic.\n\nMany orchestration frameworks ask the developer to define a sequence, write routing code, or maintain nodes and edges.\n\nAgent Runtime can instead read the variables each eligible step produces and consumes. From those data dependencies, it derives an execution plan.\n\nIndependent prompt branches can run concurrently. Dependent steps wait for their inputs. Tool-enabled and stateful operations remain ordered. Results commit in manifest order.\n\nThe graph does not become a second definition maintained beside the agent. It is resolved from the Agent Manifest.\n\nThis can reduce elapsed time when an agent contains independent model calls, while preserving ordered checkpoints and state transitions. A mostly linear agent remains mostly sequential.\n\nThe [execution-graph article](https://clearideas.com/blog/2026-07-28-agent-runtime-execution-graphs) includes a complete example, scheduling rules, timing model, and visualization.\n\nModels connect through the AI SDK. Tools can be supplied directly by the application or through [Model Context Protocol](https://modelcontextprotocol.io/docs/getting-started/intro) connections.\n\nMemory, file, and SQLite stores cover common persistence needs. Separate packages provide model, persistence, compute, sandbox, artifact, condition, and OpenTelemetry adapters, allowing an application to install the infrastructure it actually uses.\n\nAgent Runtime is available under Apache 2.0 and does not require a hosted Clear Ideas service.\n\n```\nnpm install @clearideas/agent-runtime\n```\n\nStart with the [five-minute quickstart](https://agent-runtime.clearideas.com/quickstart), review the [manifest documentation](https://agent-runtime.clearideas.com/manifests), or inspect the [source on GitHub](https://github.com/clearideas/agent-runtime).\n\nThe broader release announcement is available at [Clear Ideas Agent Runtime 0.1.0](https://clearideas.com/blog/2026-07-28-clear-ideas-agent-runtime).", "url": "https://wpnews.pro/news/portable-agent-manifests-with-host-controlled-infrastructure", "canonical_source": "https://dev.to/blairmilroy/portable-agent-manifests-with-host-controlled-infrastructure-2ja0", "published_at": "2026-07-29 15:51:11+00:00", "updated_at": "2026-07-29 16:09:28.914881+00:00", "lang": "en", "topics": ["ai-agents", "developer-tools", "ai-infrastructure"], "entities": ["Clear Ideas", "Agent Runtime", "Modal"], "alternates": {"html": "https://wpnews.pro/news/portable-agent-manifests-with-host-controlled-infrastructure", "markdown": "https://wpnews.pro/news/portable-agent-manifests-with-host-controlled-infrastructure.md", "text": "https://wpnews.pro/news/portable-agent-manifests-with-host-controlled-infrastructure.txt", "jsonld": "https://wpnews.pro/news/portable-agent-manifests-with-host-controlled-infrastructure.jsonld"}}