Execute an OpenProse program within the current AIWG session, following the two-phase model (Forme wiring + Prose VM execution)
Scanned 9/3/2026
Install to Claude Code
npx -y skills add jmagly/aiwg --skill prose-run --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Prose Run?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/jmagly-prose-run-aiwg)More formats (shields.io, HTML) on the badges page.
---
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 path
---
# Prose 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
```markdown
## 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/${CLAUDE_PLUGIN_ROOT}/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
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!