prose-run
Execute an OpenProse program within the current AIWG session, following the two-phase model (Forme wiring + Prose VM execution)
What this skill does
# 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/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
Related in Writing & Docs
jax-development
IncludedUse this skill when the user is writing, debugging, profiling, refactoring, reviewing, benchmarking, parallelising, exporting, or explaining JAX code, or when they mention JAX, jax.numpy, jit, grad, value_and_grad, vmap, scan, lax, random keys, pytrees, jax.Array, sharding, Mesh, PartitionSpec, NamedSharding, pmap, shard_map, Pallas, XLA, StableHLO, checkify, profiler, or the JAX repo. It helps turn NumPy or PyTorch-style code into pure functional JAX, fix tracer/control-flow/shape/PRNG bugs, remove recompiles and host-device syncs, choose transforms and sharding strategies, inspect jaxpr/lowering/IR, and benchmark compiled code correctly.
nature-article-writer
IncludedDrafts, rewrites, diagnostically critiques, and style-calibrates primary research manuscripts for Nature and Nature Portfolio journals. Use when the user wants a Nature-style title, summary paragraph or abstract, introduction, results, discussion, methods, figure legends, presubmission enquiry, cover letter, reviewer response, or when a scientific draft sounds generic, jargon-heavy, structurally weak, or AI-ish and needs precise, broad-reader-friendly prose without inventing data, analyses, or references. Best for primary research articles and letters rather than reviews or press releases unless explicitly adapting one.
deckrd
IncludedDocument-driven framework that derives requirements, specifications, implementation plans, and executable tasks from goals through structured AI dialogue. Use when user says "write requirements", "create spec", "plan implementation", "derive tasks", "structure this feature", "break down into tasks", or "document this module". Also use for reverse engineering existing code into docs (/deckrd rev). Do NOT use for direct code writing — use /deckrd-coder after tasks are generated. Do NOT use when the user only wants to run or fix existing code without planning.
clinical-decision-support
IncludedGenerate professional clinical decision support (CDS) documents for pharmaceutical and clinical research settings, including patient cohort analyses (biomarker-stratified with outcomes) and treatment recommendation reports (evidence-based guidelines with decision algorithms). Supports GRADE evidence grading, statistical analysis (hazard ratios, survival curves, waterfall plots), biomarker integration, and regulatory compliance. Outputs publication-ready LaTeX/PDF format optimized for drug development, clinical research, and evidence synthesis.
handling-sf-data
IncludedSalesforce data operations with 130-point scoring. Use this skill to create, update, delete, bulk import/export, generate test data, and clean up org records using sf CLI and anonymous Apex. TRIGGER when: user creates test data, performs bulk import/export, uses sf data CLI commands, needs data factory patterns for Apex tests, or needs to seed/clean records in a Salesforce org. DO NOT TRIGGER when: SOQL query writing only (use querying-soql), Apex test execution (use running-apex-tests), or metadata deployment (use deploying-metadata).
accelint-ac-to-playwright
IncludedConvert and validate acceptance criteria for Playwright test automation. Use when user asks to (1) review/evaluate/check if AC are ready for automation, (2) assess if AC can be converted as-is, (3) validate AC quality for Playwright, (4) turn AC into tests, (5) generate tests from acceptance criteria, (6) convert .md bullets or .feature Gherkin files to Playwright specs, (7) create test automation from requirements. Handles both bullet-style markdown and Gherkin syntax with JSON test plan generation and validation.