Durable results and current limits
Available now Current packages include project-scoped journals, structured results, and resume.
AgentPrism stores run state, journals, logs, and admitted scripts in a project namespace. The default persistence root is ~/.agentprism/workflows.
The internal directory layout can change. Use the workflow tool and MCP resources to read run data.
Terminal outcomes stay readable
Section titled “Terminal outcomes stay readable”Terminal outcomes have no MCP time-to-live value. A cold await reconstructs an outcome from project-scoped persistence.
The outcome is available until deletion, corruption, or persistence-store loss. A completed outcome contains the authored result and full logs.
Inspection is different. It returns bounded, redacted call previews and a bounded log tail.
The admitted script is immutable
Section titled “The admitted script is immutable”Each admitted run has this MCP resource:
Admitted workflow script · MCP resource URI
workflow://runs/{runId}/scriptThe resource contains the admitted script snapshot. The server does not re-read the source scriptPath after admission.
Deleting a run record removes the resource. Stopping a run does not remove it.
Resume reuses only verified calls
Section titled “Resume reuses only verified calls”Resume compares deterministic call identity and call inputs. An eligible completed call can replay without current provider tokens.
Replay does not restore file changes, external services, or data freshness. It only establishes correspondence with the recorded journal entry.
Write self-contained prompts. Keep labels stable. Set every input that shapes a call before concurrent calls start, and do not change those inputs while calls run.
Background runs have a process boundary
Section titled “Background runs have a process boundary”A background run detaches from one MCP request. It does not detach from the stdio server process.
A disconnect, host exit, signal, crash, or machine loss stops in-flight work. The next cold read can mark an orphaned live run as interrupted.
You can resume from completed journal entries. An unjournaled in-flight call can run again.
Current MCP limits
Section titled “Current MCP limits”These limits apply to the current workflow tool:
| Input or result | Current behavior |
|---|---|
| Active or starting background runs | Maximum 4 per MCP server process |
waitMs |
Default 20000; range 0..25000 |
lastN |
Default 20; range 1..50 |
logLines |
Default 20; range 0..50 |
concurrency |
Positive integer; clamped to 16 |
agentRetries |
Nonnegative integer; clamped to 3 |
maxAgents |
Default 1000 |
| Run source | One of script or absolute scriptPath |
| Inspect structured payload | Bounded and redacted; maximum 24576 UTF-8 bytes |
| Inspect formatted text | Maximum 8192 UTF-8 bytes |
The workflow tool runs workflow scripts. It does not do CLI validation.
Current backend limits
Section titled “Current backend limits”Current packages bundle Claude, Codex, and pi backends. OpenCode is not bundled, so install it before use.
Backend authentication remains in each backend credential source. Provider limits can pause a run.
Hosts without MCP prompt support do not show the author-workflow prompt. The workflow tool is available without prompt support.
Current status boundary
Section titled “Current status boundary”Available now The redacted run-events stream is in the current packages.
In development The typed run-events contract and durable event log are active monorepo work.