sase
One developer. A team of coding agents. Tracked, reviewable, repeatable work.
One prompt fans out to parallel agents in isolated workspaces; ACE supervises, AXE schedules, durable state tracks ChangeSpecs, beads, and artifacts, and reviewed PRs are the output.
sase (Structured Agentic Software Engineering, pronounced "sassy") turns Claude Code, Codex, Antigravity, Qwen Code, and OpenCode into a coordinated engineering team. One developer supervises parallel agents in isolated workspaces, with every run tracked, reviewable, and repeatable.
Status: sase is alpha software, and its interfaces and workflows are still evolving. It supports POSIX systems (Linux and macOS) only; Windows is not supported. sase assumes you already use and pay for at least one agent CLI and prefer opinionated git-based, workspace-per-agent workflows; if you want a standalone agent instead of a coordination layer, use those CLIs directly.
Why sase
- Launch, monitor, resume, and archive agent runs from one keyboard-driven TUI (ACE).
- Run agents in parallel, each in an isolated numbered workspace clone.
- Keep prompts and multi-step workflows reusable (XPrompts) instead of trapped in shell history.
- Track every PR-sized unit of work with status, commits, comments, and review state (ChangeSpecs).
- Schedule background and recurring agent work with the AXE daemon.
sase does not replace coding agents; it makes agent-driven engineering dependable.
See it in action
One prompt, three live agents, three models. A single GitHub prompt fans out to Claude, Codex, and Antigravity, runs all three agents in isolated workspaces, and keeps kill controls close at hand.
Supervise every run. The Agents tab shows live status, retry chains, per-agent diffs, chats, and artifact files from one control surface.
Select the still to watch the 29-second demo.
Land tracked changes. The PRs tab follows the ChangeSpec lifecycle from WIP to Submitted, with grouping, search, commits, and diffs.
Select the still to watch the 26-second demo.
Quick start
Prerequisites: Linux or macOS (POSIX; Windows is not supported), Python 3.12+, uv, git,
a text editor ($EDITOR, falling back to nvim then vim), and one authenticated agent CLI: Claude Code, Codex,
Antigravity CLI (agy), Qwen Code, or OpenCode.
uv tool install sase # add a plugin too: uv tool install sase --with sase-github
sase doctor # check install, config, and provider authentication
sase run "#git:home summarize what this repository does; do not change files"
sase ace # open the interactive control surface
The #git:home workspace reference targets the built-in home project, which is bootstrapped automatically, so the
first run needs no project setup. After these commands, sase ace opens the TUI with the completed run visible on the
Agents tab.
If sase doctor reports a missing provider, install and authenticate it, then run the check again; see
Agent Providers. For full installation details use INSTALL.md, or
follow Getting Started for the guided path.
Works with your agents
| Agent | Status |
|---|---|
| Claude Code | Supported |
Antigravity CLI (agy) |
Supported |
| Codex | Supported |
| Qwen Code | Supported |
| OpenCode | Supported |
Learn more
The complete documentation lives at sase.sh.
- Getting Started — the guided beginner path
- ACE TUI — the interactive control surface
- XPrompts — reusable prompts and multi-step workflows
- ChangeSpecs — tracked PR-sized units of work
- AXE Automation — scheduled and background agent work
- Spec-Driven Development — plans, epics, and beads
- Plugins — GitHub, Telegram, editor, and provider integrations
- CLI Reference — every command
- Blog — announcements and deep dives
- The SASE Handbook (PDF) — the full documentation as a single document
- Support — report bugs and ask questions in GitHub Issues
Development
Development requires just. Start with CONTRIBUTING.md, then see
Development for the full contributor guide.
git clone https://github.com/sase-org/sase
cd sase
uv venv .venv
source .venv/bin/activate
just install
sase core health
Run just check before submitting changes.
Acknowledgements
sase builds on Boris Cherny's parallel-agents demonstration, Steve Yegge's beads, Agentic Software Engineering, and PDL. See the full acknowledgements.
License
sase is licensed under the MIT License. See LICENSE.
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 sase-0.12.0.tar.gz.
File metadata
- Download URL: sase-0.12.0.tar.gz
- Upload date:
- Size: 9.1 MB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
twine/6.1.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5fa632dc9366df6be63ac8eb84a98a53eac3ee8df944a5cff8033dfb8a97a007
|
|
| MD5 |
50e4254b98588294863de2b4fea00daf
|
|
| BLAKE2b-256 |
0d50325ba861d8e2824655aa4e6e27d3a6ed205f8fd8ac527270011bace8b4b8
|
Provenance
The following attestation bundles were made for sase-0.12.0.tar.gz:
Publisher:
publish.yml on sase-org/sase
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
sase-0.12.0.tar.gz -
Subject digest:
5fa632dc9366df6be63ac8eb84a98a53eac3ee8df944a5cff8033dfb8a97a007 - Sigstore transparency entry: 2260538141
- Sigstore integration time:
-
Permalink:
sase-org/sase@12ff0348b2742ef99222368151b56f5b650f7547 -
Branch / Tag:
refs/heads/master - Owner: https://github.com/sase-org
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@12ff0348b2742ef99222368151b56f5b650f7547 -
Trigger Event:
push
-
Statement type:
File details
Details for the file sase-0.12.0-py3-none-any.whl.
File metadata
- Download URL: sase-0.12.0-py3-none-any.whl
- Upload date:
- Size: 10.5 MB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
twine/6.1.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
bc3d53209dc532a7169f22f35e14eb19ec9f66963631f78afa577d9613b69e7c
|
|
| MD5 |
4df7096799721401f448ebf1e10acbb3
|
|
| BLAKE2b-256 |
d23380c580f696f71ef2ce1544e695c27287e908d3ad1de96c6c2248f7913df6
|
Provenance
The following attestation bundles were made for sase-0.12.0-py3-none-any.whl:
Publisher:
publish.yml on sase-org/sase
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
sase-0.12.0-py3-none-any.whl -
Subject digest:
bc3d53209dc532a7169f22f35e14eb19ec9f66963631f78afa577d9613b69e7c - Sigstore transparency entry: 2260538373
- Sigstore integration time:
-
Permalink:
sase-org/sase@12ff0348b2742ef99222368151b56f5b650f7547 -
Branch / Tag:
refs/heads/master - Owner: https://github.com/sase-org
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@12ff0348b2742ef99222368151b56f5b650f7547 -
Trigger Event:
push
-
Statement type: