Autonomous multi-agent development framework in Rust/Tauri. Orchestrates Claude Code CLI on a kanban board with isolated Git worktrees. Functional clone of Aperant, rewritten as hexagonal + DDD, v1 scope reduced to Claude Code CLI + GitHub.
Status: pre-1.0, bootstrap phase (Sprint 0 closure: tag v0.0.1-bootstrap).
- Backend Rust (stable) + Tauri 2 + tokio + libsql + git2 + portable-pty
- Frontend React 19 + TypeScript + Vite + Zustand + XState + Radix + Tailwind 4 + xterm.js + CodeMirror 6
- Tooling: pnpm, oxlint, oxfmt, lefthook, vitest, cargo-deny, cargo-llvm-cov
- E2E tests: tauri-pilot
- Claude Code CLI installed separately: https://code.claude.com/docs/en/setup#native-install-recommended
- Rust (1.95.0+) via
rustup— exact version auto-installed fromrust-toolchain.toml - Node.js ≥ 20 (LTS recommended)
- pnpm 10.33.2 — install via Corepack:
corepack enable && corepack prepare pnpm@10.33.2 --activate - Dev tooling:
cargo install cargo-deny cargo-llvm-cov cargo-mutants tauri-pilot-cli - OS-specific:
- Linux:
libwebkit2gtk-4.1-dev libappindicator3-dev librsvg2-dev patchelf - macOS: Xcode Command Line Tools (
xcode-select --install) - Windows: WebView2 Runtime (preinstalled on Windows 11)
- Linux:
git clone https://github.com/mpiton/forgent.git
cd forgent
./scripts/install-hooks.sh # verifies tooling, installs deps, enables lefthook
pnpm exec tauri dev # runs the app in dev modeHexagonal + DDD bounded contexts:
src-tauri/src/
├── domain/ # Pure logic, ZERO I/O (tasks, agents, prompts, pr_fix, ...)
├── application/ # Cross-context use cases (orchestrator, pr_loops, di)
├── infrastructure/ # Driven adapters (libsql, git2, portable-pty, github_api, ...)
└── interfaces/ # Driving adapters (tauri_commands, tauri_events)
Backlog → Spec → Plan → Code → QA → PR → Done
The agent stops at PR creation. Final merge is human. No auto-merge.
Post-PR (buttons on the card):
- Fix PR comments (F-089): agent processes review comments + replies humanly (no AI slop)
- Fix CI (F-090): agent classifies + fixes CI failure or comments
- No Claude OAuth on Forgent side (delegated to CLI)
- No MCP management (delegated to CLI)
- No PR auto-merge
- No GitLab, Linear, alternative AI providers (OpenAI, Google, etc.), Bedrock, Azure, Codex
- No
npm/yarn(pnpm only) - No ESLint / Prettier / Biome (oxlint + oxfmt only)
Read CONTRIBUTING.md for the workflow. TDD mandatory, pre-commit/pre-push hooks enabled.