cacli
coding agent CLI
Recovering Changes From Transcripts
cacli apply-transcript <transcript.jsonl> can recover reconstructable file edits from Claude Code or Codex JSON/JSONL transcripts.
Examples:
# Produce a reviewable patch without touching the working tree
cacli apply-transcript session.jsonl --mode generate-patch
# Apply the auto-applicable prefix directly to the current tree
cacli apply-transcript session.jsonl --mode auto-apply
# Approve each recoverable edit interactively
cacli apply-transcript session.jsonl --mode interactive
Behavior:
- The command scans the full transcript before doing anything else.
- It reconstructs
Write,Edit,MultiEdit, andapply_patchstyle changes. - It flags mutating shell commands that cannot be reconstructed, such as
sed -i. - Automatic replay stops at the first unreconstructable mutating shell command or edit that no longer applies cleanly.
generate-patchwrites a patch for the auto-applicable prefix without modifying the working tree.
Workflows (cacli flow)
Flows are sandboxed Python scripts that orchestrate coding-agent subprocesses across providers. The orchestration script has no direct filesystem, network, environment, or subprocess access; its side effects go through the injected workflow API, while the agents it launches run with their normal permissions.
Create review_flow.py:
META = {"name": "cross-review", "description": "cross-vendor review"}
async def main():
phase("Review")
reviews = await parallel([
lambda: agent("Find correctness bugs in the current diff", provider="codex"),
lambda: agent("Find security issues in the current diff", provider="claude"),
])
log(f"Received {len([r for r in reviews if r])} reviews")
return {"reviews": reviews}
Then run it with a dollar cap:
cacli flow run review_flow.py --budget 5.00
Useful commands:
cacli flow run flow.py [--args JSON] [--budget 10.00] [--resume RUN_ID]
cacli flow runs
cacli flow show RUN_ID
cacli flow docs | less
cacli flow install-skill
cacli flow docs prints the complete DSL reference. Claude users can install
the same reference as an agent skill with cacli flow install-skill.
Headline features:
- Cross-provider
agent()calls to Claude, Codex, Devin, Cursor, Gemini, OpenCode, and Pi - Structured output validated against JSON Schema
- Journal-based resume that replays unchanged calls
- Dollar budgets with resumable budget-exceeded runs
- Sandboxed orchestration scripts with a focused async Python DSL
Metadata
Release files for cacli 0.1.8
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| cacli-0.1.8.tar.gz | 73.0 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| cacli-0.1.8-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 140.4 kB
Release files / cacli-0.1.8.tar.gz
| Download URL | cacli-0.1.8.tar.gz |
|---|---|
| Size | 73.0 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
76620884a0ddc17413014ded2382cc7e99284afd1baf993babb5b1b4234935ed
|
|
BLAKE2b-256 checksum How to use checksums |
6305954590accf19011f3c0da6adf990cf87513d4e0508b6c04a9a8b60e81ef5
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.13.0
|
Release files / cacli-0.1.8-py3-none-any.whl
| Download URL | cacli-0.1.8-py3-none-any.whl |
|---|---|
| Size | 67.4 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
42b309f9cdf4560f56b44e9b4f4f1a00231d6ed59fbad5aa817e0cda8224fcd9
|
|
BLAKE2b-256 checksum How to use checksums |
93fe8d3aa491239aac3433f48ea3f2c5ffab22f3f73e47e6a5b48f6834699b14
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.13.0
|