Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Rundown is a tool for defining executable workflows using markdown.

License

Notifications You must be signed in to change notification settings

tobyhede/rundown

Repository files navigation

Rundown Logo

Executable Runbooks from Markdown
Enforce process. Track progress. Resume anytime.

Rundown is released under the MIT license. Current npm package version. CodeRabbit Reviews.

Why Rundown?

Rundown transforms static documentation into interactive, stateful CLI workflows, bridging the gap between "how-to" and "done."

  • Human-Readable: Write standard Markdown.
  • Agent-Readable: Write standard Markdown.
  • Machine-Executable: Rundown CLI executes and enforces your process.
  • Stateful: It remembers where you left off. Close your terminal, reboot your machine, and rundown status picks right back up.
  • Agent-Ready: Designed to be the perfect "runtime" for AI agents (like Claude) to execute long-running, complex tasks reliably.

Features

  • Markdown-based runbooks - Define multi-step processes in readable .runbook.md files
  • State persistence - Runbook progress survives context clears
  • XState compilation - Runbooks compile to state machines for reliable execution
  • CLI control - Simple commands to run, pass, fail, and navigate runbooks

Security

Rundown includes a Deno-inspired security policy layer that provides explicit allowlist-based permission control:

  • Default-deny - Commands not in the allowlist require user confirmation
  • Granular control - Separate allow/deny lists for commands, file access, and environment variables
  • Runbook overrides - Per-runbook policy configurations for different trust levels
  • CI-friendly - --yes flag for non-interactive execution with pre-approved commands

Key CLI flags:

  • --allow-run <cmds> - Allow specific commands
  • --allow-all / --deny-all - Trust or strict mode
  • --policy <file> - Custom policy file
  • --non-interactive - CI mode (auto-deny)

See Security Documentation for full configuration options.

Get Started

Install

npm install -g @rundown-org/cli

Create Your First Runbook

Create a runbook file deploy.runbook.md.

This example uses rd echo to simulate commands so you can run it immediately without any setup.

---
name: Deploy to Production
---

## 1. Run Tests
- PASS: CONTINUE
- FAIL: STOP

```bash
rd echo npm test
```

## 2. Build Application
- PASS: CONTINUE
- FAIL: STOP

```bash
rd echo npm run build
```

## 3. Deploy
- PASS: COMPLETE
- FAIL: STOP

```bash
rd echo npm run deploy
```

Run the runbook:

rundown run deploy.runbook.md

To make this real: Simply remove rd echo from the code blocks to execute the actual npm commands.

Commands

The rd command is an alias for rundown.

Command Description
rundown run <file> Start a runbook
rundown pass Mark current step as passed (evaluates PASS condition)
rundown fail Mark current step as failed (evaluates FAIL condition)
rundown goto <n> Jump to step number
rundown status Show current state
rundown stop [message] Abort runbook with optional message
rundown complete [message] Mark runbook as complete with optional message
rundown stash Pause enforcement (stash active runbook)
rundown pop Resume enforcement (restore stashed runbook)
rundown ls List active runbooks
rundown ls --all List available runbook files
rundown ls --json Output as JSON for programmatic use
rundown ls --tags <tags> Filter runbooks by comma-separated tags
rundown check <file> Validate runbook file
rundown echo Test helper: echo with configurable result
rundown prune Remove stale runbook state files
rundown scenario <cmd> List, show, or run scenarios
rundown prompt <content> Output content in markdown fences

Packages

Package Description
@rundown-org/parser Markdown runbook parser
@rundown-org/core Runbook state management and XState compilation
@rundown-org/cli Command-line interface

Documentation

  • SPEC.md - Rundown format specification

Contributing

See CONTRIBUTING.md for instructions on setting up the development environment and running tests.

License

MIT

About

Rundown is a tool for defining executable workflows using markdown.

Topics

Resources

License

Contributing

Security policy

Stars

Watchers

Forks

Packages

No packages published

Contributors 2

  •  
  •  

Languages