Local-first runtime for logging and protecting agent actions.
Project description
Runewall
Runewall is a local-first safety/runtime layer for AI agents before they take real-world actions.
Why Runewall?
Agents are moving from answering to acting. Once agents touch files, APIs, tools, or external systems, developers need a boundary layer that can preview actions, explain policy decisions, block risky behavior, log what happened, and rollback where possible.
What is it?
Runewall is a local-first CLI and developer tool that sits between an agent and a real action. It helps you inspect what an agent is about to do before you let it touch the outside world.
Why does it matter?
When agents move beyond chat and start acting on files, services, and tools, mistakes get more expensive. A local safety/runtime layer gives you a clearer review point before that action happens.
Architecture flow
Agent -> Runewall -> policy check -> dry-run -> review/execute/block -> log/audit
How do I try it?
Start with the five-minute quickstart below, or run the 60-second local demo in demos/README.md.
What Runewall can do now
- CLI-first safety runtime
- dry-run before mutation
- local SQLite action log
policy explain,policy test, andpolicy audit- snapshots and rollback
- guarded real execution for selected services
- local MCP stdio surface
- Python SDK preview
- community map package verification
5-minute quickstart
Install and run:
pip install runewall
runewall version
runewall config profile safe
runewall policy audit
runewall act github create_issue --dry-run --json --input repo=user/repo --input title="Bug"
runewall maps community package verify examples/community-maps --json
runewall mcp status --json
runewall sdk status --json
What this gives you:
- confirms the CLI is installed
- applies safe local defaults
- audits current policy settings
- previews a mapped action without mutating anything
- verifies a local community package without importing it
- shows local MCP status
- shows local SDK status
For local development, use pip install -e ".[dev]" instead. See docs/INSTALL.md.
Status
Runewall v1.0.0 is the stable local-first foundation: CLI safety runtime, dry-run, policy checks, local logs, snapshots/rollback, community package verification, MCP status/tools, and SDK preview. It is not a hosted service and does not yet include real signature verification, community map execution, or the full approve/execute lifecycle over MCP/SDK. Future security and integration features will ship as v1.x releases.
Included in v1.0.0:
- core safety runtime
- MCP stdio surface
- Python SDK preview
- community package verification
Safe by default
- real execution is disabled by default
- dry-run does not call external APIs
- tokens only come from environment variables
- tokens are never printed, stored, or logged
- community maps are non-executable
- package verify does not import or execute maps
- no hosted backend is required
What is not included yet?
- hosted service
- dashboard
- remote registry
- real signature verification
- community map execution
Install
pip install runewall
See docs/INSTALL.md for Windows PowerShell-first setup and editable installs.
Install status
pip install runewallfor normal usepip install -e ".[dev]"for local development- see docs/PACKAGING.md for local packaging notes
runewall package pypi-checkis a local readiness check onlyrunewall package dist-checkis a local artifact presence check only
Demo
Run the 60-second local demo with:
.\demos\runewall_60_second_demo.ps1
It shows: version, safe profile, policy audit, dry-run, community package verify, MCP status, SDK status.
See demos/README.md for details.
MCP
Runewall includes a local MCP stdio surface for agent safety checks.
runewall mcp status
runewall mcp serve --once
runewall mcp serve
See docs/MCP_CLIENT_EXAMPLES.md for more MCP examples.
Python SDK preview
from runewall.sdk import policy_test, dry_run
print(policy_test("map.execute"))
print(dry_run("github", "create_issue", {"repo": "user/repo", "title": "Bug"}))
runewall sdk statusrunewall sdk status --json- SDK is local-only
executeis not exposed yetdry_rundoes not call external APIs
Community package verify
Use community package verify as the recommended local gate before community map import or review.
runewall maps community package verify examples/community-maps
runewall maps community package verify examples/community-maps --json
Verify checks manifest validation, SHA-256 checksums, signing status, trusted key status, and execution safety posture.
Verify does not import maps, execute maps, download remote files, or call external APIs.
More docs
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file runewall-1.0.1.tar.gz.
File metadata
- Download URL: runewall-1.0.1.tar.gz
- Upload date:
- Size: 115.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
215ce428293042593d945a2e3914674648993f83269bcf7559663eacbe798a6a
|
|
| MD5 |
9d125a1baebd31df5b0837e4954a34b1
|
|
| BLAKE2b-256 |
a2fd60f175d0e14eec657cfcf12d6211a879ea764e46b50b5cb8496e887297c2
|
File details
Details for the file runewall-1.0.1-py3-none-any.whl.
File metadata
- Download URL: runewall-1.0.1-py3-none-any.whl
- Upload date:
- Size: 55.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
57eff49a59179d1257277a5495d5577d9fc2a4ab68a377d220d95a27c0b3100f
|
|
| MD5 |
f64cb2ac16b3d5ed57a3a9e93ba2ac2a
|
|
| BLAKE2b-256 |
d49456b0d882e5b68bee12c214fb10b739d2701332adeb15cbc4b86884ac00fb
|