Skip to content

mpiton/forgent

Repository files navigation

Forgent

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.

CI Release CodSpeed License: AGPL v3 Rust Node pnpm

Status: pre-1.0, bootstrap phase (Sprint 0 closure: tag v0.0.1-bootstrap).

Stack

  • 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

Prerequisites

  • 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 from rust-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)

Setup

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 mode

Architecture

Hexagonal + 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)

Pipeline phases

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

Out of v1 scope (H1)

  • 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)

Contributing

Read CONTRIBUTING.md for the workflow. TDD mandatory, pre-commit/pre-push hooks enabled.

License

AGPL-3.0

About

Autonomous multi-agent dev framework — Tauri/Rust orchestrating Claude Code CLI on a Git-worktree kanban

Topics

Resources

Contributing

Security policy

Stars

Watchers

Forks

Sponsor this project

Packages

 
 
 

Contributors