TARS
Task Assigned Rapidly Shipped: an autonomous CLI that turns a feature spec into Linear issues and parallel PRs.
Spec in, dependency-ordered Linear issues out, parallel Claude Code agents implementing each, PRs opened automatically.

TARS is an internal tool built for the Homebase engineering team. Give it a markdown feature spec, and it has Claude read the codebase, break the spec into Linear issues with dependency ordering and story-point estimates, then spawns autonomous Claude Code agents in parallel git worktrees to implement each one with per-issue USD budget caps. When an agent is done, the GitHub CLI opens the PR and Linear gets moved to In Review. Truly parallel feature delivery. Multiple features in flight at once on a small team.
Feed it a spec, walk away, come back to a Linear board of properly-scoped issues and a stack of open PRs waiting for review.
- 01End-to-end loop from feature spec to opened pull request
- 02Truly parallel execution via git worktrees and concurrency limits
- 03Cost containment via per-issue USD budget caps
- 04Linear and GitHub kept in sync without human intervention
01. Planning
- Spec → Issues: markdown spec in, structured Linear issues out with titles, descriptions, acceptance criteria, and dependency ordering
- Story-point estimation using the team's configured scale (linear, fibonacci, exponential, t-shirt)
- Dependency graph with blocked_by relationships so work executes in the correct order
- Codebase analysis: Claude reads the full repo so issues are grounded in actual architecture
02. Execution
- Parallel git worktrees: each issue gets its own branch and working tree
- Claude Code agents spawned per issue with budget caps in USD
- Linear state automation: Backlog → In Progress → In Review as agents work
- Automatic PR creation via GitHub CLI with proper descriptions
- Configurable concurrency to manage API cost and system load
03. Configuration
- tars init wizard for Linear team selection, workflow state mapping, estimation scale, GitHub remote, base branch
- Per-project tars.config.json with auto-gitignore for .tars/ and .worktrees/
- Per-issue USD budget caps to prevent runaway agent costs
04. Adaptable modes
- Default mode: plan, execute, and cleanup in parallel runs ending in multiple open PRs and a clean repo
- Combo mode: plan and execute in sequence, ending in a single open PR and a clean repo
- Plan only mode: plan the issues without executing them
- Cleanup mode: cleanup the git worktrees and Linear issues after the run to keep the repo tidy
+-------------------------------------------------+
| tars CLI (bin) |
+------------+------------+-----------------------+
| tars init | tars plan | tars execute |
| | | tars status / cleanup |
+------------+------------+-----------------------+
|
+----------------+---+
v v
+--------------+ +----------------+
| planner.ts | | executor.ts |
| Claude reads | | Orchestrates |
| codebase + | | parallel work |
| produces | | |
| Linear plan | | +------------+ |
+--------------+ | | worktree.ts| |
| | (git ops) | |
| +------------+ |
| +------------+ |
| | agent.ts | |
| | Claude | |
| | Code SDK | |
| +------------+ |
+----------------+
|
v
+------------------+
| GitHub CLI (gh) |
| Open PRs |
+------------------+Plan reads. Executor writes. Linear and GitHub stay in sync.
