/prose-run
Execute an OpenProse program within the current AIWG session, following the two-phase model (Forme wiring + Prose VM execution)
$ npx -y skills add jmagly/aiwg --skill prose-run --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
- Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
- You can call itInvoke it directly when you want it.
- Slash command
/prose-run
Context preview
The summary Claude sees to decide when to auto-load this skill.
Execute an OpenProse program within the current AIWG session, following the two-phase model (Forme wiring + Prose VM execution)
SKILL.md
prose-run.SKILL.mdnamespace: aiwg
name: prose-run
description: Execute an OpenProse program within the current AIWG session, following the two-phase model (Forme wiring + Prose VM execution)
version: 0.1.0
platforms: [all]
requires:
- program: path to an OpenProse program file (.md with contract frontmatter)
- "if program has requires: fields: values for each required input"
ensures:
- "output: the program's ensures: outputs, delivered per contract obligation"
- "run-state: execution artifacts saved to .aiwg/working/prose-runs/{run-id}/"
- "if multi-service (kind: program + services:): wiring manifest generated before execution"
errors:
- prose-not-found: OpenProse installation not detected; run /prose-detect for guidance
- invalid-program: program file fails prose-validate checks; fix contract before running
- context-exceeded: multi-service program exceeds available context budget; split into smaller programs
invariants:
- Opus-class model required; Sonnet is insufficient for reliable Prose VM simulation
- execution state written to .aiwg/working/prose-runs/ only; no writes outside that pathProse Run Skill
You execute OpenProse programs by loading the Prose VM specification into context and running the program according to its two-phase execution model.
Triggers
- "run prose program" / "execute prose program"
- "execute [file].md as prose"
- "prose run [path]"
- "run this as a prose program"
Input
- A path to an OpenProse program file (`.md`)
- Optional: input values for the program's `requires:` contract
Behavior
Step 0: Detect OpenProse Installation
Run `/prose-detect` to locate the OpenProse installation and resolve `PROSE_ROOT`. If not found, stop and report:
OpenProse not found. Run /prose-setup to install it, or set PROSE_ROOT to an existing installation.
Step 1: Locate Prose Specs
Using the `PROSE_ROOT` resolved by `/prose-detect`:
1. Prose VM spec: `$PROSE_ROOT/prose.md` 2. Forme Container spec: `$PROSE_ROOT/forme.md` 3. If files are missing at resolved path: report error (path is stale — re-run `/prose-detect`)
Step 2: Read the Program
Read the target program file. Parse frontmatter to determine:
- **Single-component** (`kind: service` or no `services:` list) → skip to Step 4
- **Multi-component** (`kind: program` with `services:` list) → proceed to Step 3
Step 3: Phase 1 — Forme Wiring (Multi-Component Only)
Load `forme.md` into context and execute wiring:
1. Read the program entry point 2. Read all service `.md` files listed in `services:` 3. For each service, extract `requires:` and `ensures:` 4. Match outputs to inputs by semantic understanding 5. Build a dependency graph 6. Determine execution order (topological sort) 7. Produce a manifest describing the wiring
Step 4: Phase 2 — Prose VM Execution
Load `prose.md` into context. This causes the LLM to simulate the Prose VM.
For each component in execution order: 1. Spawn a sub-agent session via the Task tool 2. Pass required inputs (from user input or previous component outputs) 3. The sub-agent executes the component's contract 4. Capture the `ensures:` outputs 5. Store outputs in `.aiwg/working/prose-runs/{run-id}/`
Step 5: Return Results
Collect the final program outputs (the root program's `ensures:` values) and present them to the user.
Step 6: Report Execution Summary
## Prose Execution Complete
**Program**: {name}
**Components executed**: {count}
**Execution order**: {component1} → {component2} → ...
**Duration**: {time}
### Outputs
| Name | Value Summary |
|------|---------------|
| {ensures name} | {brief output summary} |
### State
Run artifacts saved to: `.aiwg/working/prose-runs/{run-id}/`Requirements
- **Model**: Opus-class model required for reliable Prose VM simulation ("Prose Complete" definition)
- **Prose installation**: `prose.md` and `forme.md` must be accessible
- **Context budget**: Multi-service programs consume significant context — monitor carefully
Safety
- Programs are executed in the current session's sandbox
- File writes are limited to `.aiwg/working/prose-runs/`
- Sub-agent sessions inherit the parent's tool permissions
- No network access beyond what the parent session allows
Limitations
- Requires Opus for reliable execution; Sonnet may produce partial or incorrect results
- Large multi-service programs may exceed context budget
- No persistent state across sessions (state lives in `.aiwg/working/`)
References
- @$AIWG_ROOT/agentic/code/addons/prose-integration/README.md — prose-integration addon overview
- @$AIWG_ROOT/agentic/code/addons/aiwg-utils/rules/subagent-scoping.md — Sub-agent spawning via Task tool for multi-component execution
- @$AIWG_ROOT/agentic/code/addons/aiwg-utils/rules/context-budget.md — Monitor context budget for large multi-service programs
- @$AIWG_ROOT/agentic/code/addons/aiwg-utils/rules/research-before-decision.md — Run prose-detect and prose-validate before execution
- @$AIWG_ROOT/docs/cli-reference.md — CLI reference for AIWG integration commands
Read more
namespace: aiwg
name: prose-run
description: Execute an OpenProse program within the current AIWG session, following the two-phase model (Forme wiring + Prose VM execution)
version: 0.1.0
platforms: [all]
requires:
- program: path to an OpenProse program file (.md with contract frontmatter)
- "if program has requires: fields: values for each required input"
ensures:
- "output: the program's ensures: outputs, delivered per contract obligation"
- "run-state: execution artifacts saved to .aiwg/working/prose-runs/{run-id}/"
- "if multi-service (kind: program + services:): wiring manifest generated before execution"
errors:
- prose-not-found: OpenProse installation not detected; run /prose-detect for guidance
- invalid-program: program file fails prose-validate checks; fix contract before running
- context-exceeded: multi-service program exceeds available context budget; split into smaller programs
invariants:
- Opus-class model required; Sonnet is insufficient for reliable Prose VM simulation
- execution state written to .aiwg/working/prose-runs/ only; no writes outside that pathProse Run Skill
You execute OpenProse programs by loading the Prose VM specification into context and running the program according to its two-phase execution model.
Triggers
- "run prose program" / "execute prose program"
- "execute [file].md as prose"
- "prose run [path]"
- "run this as a prose program"
Input
- A path to an OpenProse program file (`.md`)
- Optional: input values for the program's `requires:` contract
Behavior
Step 0: Detect OpenProse Installation
Run `/prose-detect` to locate the OpenProse installation and resolve `PROSE_ROOT`. If not found, stop and report:
OpenProse not found. Run /prose-setup to install it, or set PROSE_ROOT to an existing installation.
Step 1: Locate Prose Specs
Using the `PROSE_ROOT` resolved by `/prose-detect`:
1. Prose VM spec: `$PROSE_ROOT/prose.md` 2. Forme Container spec: `$PROSE_ROOT/forme.md` 3. If files are missing at resolved path: report error (path is stale — re-run `/prose-detect`)
Step 2: Read the Program
Read the target program file. Parse frontmatter to determine:
- **Single-component** (`kind: service` or no `services:` list) → skip to Step 4
- **Multi-component** (`kind: program` with `services:` list) → proceed to Step 3
Step 3: Phase 1 — Forme Wiring (Multi-Component Only)
Load `forme.md` into context and execute wiring:
1. Read the program entry point 2. Read all service `.md` files listed in `services:` 3. For each service, extract `requires:` and `ensures:` 4. Match outputs to inputs by semantic understanding 5. Build a dependency graph 6. Determine execution order (topological sort) 7. Produce a manifest describing the wiring
Step 4: Phase 2 — Prose VM Execution
Load `prose.md` into context. This causes the LLM to simulate the Prose VM.
For each component in execution order: 1. Spawn a sub-agent session via the Task tool 2. Pass required inputs (from user input or previous component outputs) 3. The sub-agent executes the component's contract 4. Capture the `ensures:` outputs 5. Store outputs in `.aiwg/working/prose-runs/{run-id}/`
Step 5: Return Results
Collect the final program outputs (the root program's `ensures:` values) and present them to the user.
Step 6: Report Execution Summary
## Prose Execution Complete
**Program**: {name}
**Components executed**: {count}
**Execution order**: {component1} → {component2} → ...
**Duration**: {time}
### Outputs
| Name | Value Summary |
|------|---------------|
| {ensures name} | {brief output summary} |
### State
Run artifacts saved to: `.aiwg/working/prose-runs/{run-id}/`Requirements
- **Model**: Opus-class model required for reliable Prose VM simulation ("Prose Complete" definition)
- **Prose installation**: `prose.md` and `forme.md` must be accessible
- **Context budget**: Multi-service programs consume significant context — monitor carefully
Safety
- Programs are executed in the current session's sandbox
- File writes are limited to `.aiwg/working/prose-runs/`
- Sub-agent sessions inherit the parent's tool permissions
- No network access beyond what the parent session allows
Limitations
- Requires Opus for reliable execution; Sonnet may produce partial or incorrect results
- Large multi-service programs may exceed context budget
- No persistent state across sessions (state lives in `.aiwg/working/`)
References
- @$AIWG_ROOT/agentic/code/addons/prose-integration/README.md — prose-integration addon overview
- @$AIWG_ROOT/agentic/code/addons/aiwg-utils/rules/subagent-scoping.md — Sub-agent spawning via Task tool for multi-component execution
- @$AIWG_ROOT/agentic/code/addons/aiwg-utils/rules/context-budget.md — Monitor context budget for large multi-service programs
- @$AIWG_ROOT/agentic/code/addons/aiwg-utils/rules/research-before-decision.md — Run prose-detect and prose-validate before execution
- @$AIWG_ROOT/docs/cli-reference.md — CLI reference for AIWG integration commands
Multi-agent AI framework for Claude Code, Copilot, Cursor, Warp, and 6 more platforms 200+ agents, 109+ CLI commands, 400+ deployable agent/skill/command/rule artifacts, 8 core frameworks, 32 addons, and a 40-plugin Claude Code marketplace.
Repo: jmagly/aiwg
Other skills on aiwg.
- /agent-loop-ext
Crash-resilient external agent loop with state persistence and CI/CD integration
Open skill - /agent-loop
Detect requests for iterative autonomous agent loops and route to the appropriate loop executor
Open skill - /auto-test-execution
Automatically execute tests when code-generating agents modify source files, enforcing the execute-before-return pattern
Open skill - /cross-task-learner
Enable agent loops to learn from similar past tasks and share patterns across loops
Open skill - /debug-memory
Query and manage the executable feedback debug memory
Open skill - /execute-feedback
Execute tests on generated code and iterate until passing
Open skill

