Automergent Logo
v0.1.2-dev Next-Gen Autonomous Agent Engine

Autonomous AI Engineering
for Your Terminal

Multi-phase cognitive reasoning, tree-sitter AST indexing, subagent fleet orchestration, and autonomous compiler error diagnostics — powered by Gemini & Vertex AI.

Terminal
# Install latest Automergent binary + 'amt' alias
$ curl -fsSL https://automergent.github.io/install.sh | bash

# Export your Gemini API Key
$ export GOOGLE_API_KEY="your-api-key"

# Launch interactive terminal session
$ automergent  # or: amt
Go 1.25+
# Requires Go 1.25+ with CGO enabled for tree-sitter AST
$ CGO_ENABLED=1 go install github.com/iSundram/Automergent/cmd/automergent@latest
Git & Make
$ git clone https://github.com/iSundram/Automergent.git
$ cd Automergent && make build && sudo make install

Engineering-Grade Autonomous AI

Built from the ground up for software engineers who require precision, transparency, safety, and sub-millisecond responsiveness.

Terminal Native & Fast

Powered by Charm v2 (bubbletea/v2, lipgloss/v2). Works seamlessly in standard terminals, tmux, and SSH sessions with instant startup and smooth rendering.

Google Gemini & Custom AI

Native first-class support for Google AI Studio & Vertex AI, plus any OpenAI- or Gemini-compatible endpoint (Anthropic, DeepSeek, Ollama, vLLM) with automated community model catalog sync.

45+ Production Tools

Comprehensive toolset spanning atomic file edits, persistent PTY shell processes, tree-sitter AST symbol queries, live web documentation scraping, secret scanning, and SQL execution.

Subagent Fleet & Goals

Spawn concurrent specialist subagents (Explore, Review, Build, Contexter) with isolated scratchpads, background execution, live steering notifications, and autonomous goal workflows.

Context Intelligence & Memory

Adaptive token estimation, AST file dependency tracking, proactive auto-compaction, session checkpoint rewind, and persistent graph-backed memory stores.

11 Modern Color Themes

Hot-swappable 16-slot color palettes (Modern, Catppuccin, TokyoNight, Dracula, Nord, Gruvbox, OneDark, Monokai) with syntax highlighting and diff viewers.

The 4-Phase Intelligence Loop

Automergent processes complex requests with a disciplined four-phase pipeline that eliminates hallucinations and ensures verifiable correctness.

PHASE 01 // ROUTE

Init & Decompose

Decomposes user prompts into atomic intents. Selects optimal execution strategy (Direct / Explore / Plan / Build) and initial token budget.

PHASE 02 // INVESTIGATE

Read-Only Explore

Tree-sitter AST discovery, symbol indexing, ripgrep matching, and issue confirmation without risk of unwanted modifications.

PHASE 03 // ARCHITECT

Plan & Validate

Constructs a structured execution plan with verification milestones, file boundaries, risk mitigation, and interactive approval gates.

PHASE 04 // EXECUTE

Build & Verify

Performs atomic edits, dispatches parallel subagents, compiles code, runs test suites, and executes automated compiler recovery.

Layered YAML Configuration

Clean, declarative configuration with hierarchical precedence: Defaults < Global < Project < Profile < Env < Session < CLI Flags.

~/.automergent/config.yaml
# AI Provider & Model Selection
provider: "google-aistudio"      # google-aistudio | google-vertex | custom
model: "gemini-3.6-flash"        # default model
temperature: 0.2
mode: "accept-edits"             # manual | accept-edits | auto | plan
theme: "modern"                  # modern | catppuccin | tokyonight | dracula | nord ...

# Provider API Credentials
providers:
  google-aistudio:
    apiKey: "${GOOGLE_API_KEY}"
  google-vertex:
    project: "my-gcp-project-id"
    location: "us-central1"
  custom:
    baseUrl: "https://api.openai.com/v1"
    apiKey: "${CUSTOM_API_KEY}"
    defaultModel: "gpt-4o"

# Context Window Management & Auto-Compaction
maxContextTokens: 1048576        # 1 Million token budget
autoCompressAt: 0.55             # compact context when 55% full
maxToolOutputChars: 32768

# Security Sandboxing & Safety Guards
sandbox: auto                    # auto | bubblewrap | seatbelt | none
blockedWritePaths:
  - "/etc/**"
  - "/usr/**"
allowedWritePaths:
  - "."