Treq is the open-source Stacking Agent Development Environment (ADE). It gives each agent its own workspace, stacks branches, and rebases when the base moves.
The goal of Treq is to provide a full suite of high-productivity tooling with the software developer firmly in the driver seat. Features are centered around ensuring high code quality and reducing delegation friction, while integrating with existing development platforms and tooling.
Download the latest release here. Install steps are in the installation docs.
- Works with Claude Code, Codex, and Cursor Agent.
- Review diffs, commits, and files locally and send line comments to an agent.
- Gives each agent an isolated workspace with its own checkout.
- Auto-rebases dependent workspaces when a target branch moves.
- Lets you split a feature into a stack of workspaces that rebase together as you land each one.
- Lets agents spawn other agents into their own workspaces to split up work.
- Moves commits, files, and hunks between workspaces.
- Lets you break up a large workspace into smaller stacked or separate ones.
- Resolves merge conflicts with an agent, either as a follow-up commit or rewritten in place.
- Exposes workspace management to agents through the treq CLI.
- Agents can send assets as reviewable artifacts.
- Handles commit management, reviewing either a single commit or the cumulative stack.
- Lets you schedule work by hiding a workspace or shifting commit timestamps.
- Manages GitHub issues and pull requests in the app, including starting an agent from an issue.
- Runs shells and agents in terminal sessions attached to the workspace, with automatic skill installation.
- Local by default, with no code uploaded.
- Sends no telemetry, privacy focused with application logs kept local.
- Uses Jujutsu under the hood and is Jujitsu CLI compatible while staying Git compatible.
The committed overview shot is assets/screenshots/code.png. Site crops are generated in the Deploy Web landing-screenshots job and are not committed.
Regenerate locally with npm run screenshot:readme. Docs-only CI sets SKIP_LANDING_SCREENSHOTS=1.
npm run screenshot:readme
# same as
npm run screenshot:landingSpecs live at scripts/screenshot/specs/readme-*.spec.tsx.
make bump # prompts for the new version
make bump VERSION=0.1.3 # non-interactiveUpdates package.json, src-tauri/tauri.conf.json, src-tauri/Cargo.toml, and src-tauri/Cargo.lock in one step.
# to profile benchmark code
samply record cargo bench --bench sync_workspacesLicensed under the Apache License, Version 2.0

