Skip to content

g3

★ New
assess
AI / ML open-source Apache-2.0 open-source

At a Glance

A Rust coding agent with modular provider abstraction, token-aware context compaction, portable Agent Skills, tree-sitter code search, and experimental desktop computer control.

Type
open-source
Pricing
open-source
License
Apache-2.0
Adoption fit
small
Top alternatives

What It Does

g3 is an open-source AI coding agent written in Rust, designed to autonomously complete development tasks by generating and executing code, navigating codebases, and running shell commands. It is structured as six Rust crates: g3-core (agent orchestration and context management), g3-providers (unified LLM provider interface), g3-execution (task planning and execution), g3-config (TOML-based configuration), g3-computer-control (experimental desktop automation), and g3-cli (interactive terminal interface).

The agent targets Rust developers and teams that want a single-binary, self-hosted coding agent with local model support and no dependency on commercial SaaS platforms. It supports Anthropic Claude, Google Gemini, Databricks DBRX, and local models via llama.cpp, with honest documentation that cloud models (Opus 4.5, Gemini 3 Pro) significantly outperform local alternatives on complex agentic tasks.

Key Features

  • Token-aware context compaction: Monitors context window usage as a percentage; applies thinning (replacing large tool results with file references) at 50–80% threshold; triggers full auto-compaction at 80% capacity to prevent context overflow without losing task continuity
  • Portable Agent Skills: Implements an Agent Skills specification via SKILL.md format; scans both workspace-local and global directories at startup; injects discovered skills into the system prompt for extensible behavior without binary modification
  • Syntax-aware code search: Integrates tree-sitter for structural code navigation across 8 languages (Rust, Python, JavaScript, TypeScript, Go, Java, C, C++), enabling AST-aware symbol and scope queries beyond grep
  • Multi-provider LLM abstraction: g3-providers crate provides a unified interface for Anthropic, Gemini, Databricks DBRX, and llama.cpp local models; provider selection via TOML config
  • Five workflow modes: Accumulative Autonomous (default interactive loop), Single-shot (one task and exit), Traditional Autonomous (reads requirements.md), Chat (dialogue without autonomous runs), Planning (structured requirements refinement with git integration)
  • Automatic error recovery: Exponential backoff with jitter; detects recoverable errors (rate limits, timeouts, 5xx, network failures); 3 retries in default mode, 6 in autonomous mode
  • Experimental computer control: g3-computer-control crate wraps mouse, keyboard, screenshot, and OCR capabilities via WebDriver (Chrome headless default, Safari on macOS); requires accessibility permissions
  • Named agent personas: Built-in system-prompt profiles (carmack, hopper, euler, etc.) tailored for different engineering task styles

Use Cases

  • Solo Rust developers wanting a self-hosted agent: Single binary, no SaaS dependency, run locally or on a remote machine with SSH
  • Local model workflows: Teams that need coding agent behavior using Ollama-served models (Qwen3-32B or similar dense models) without sending code to external APIs; best for simpler tasks
  • Structured planning-mode delivery: Planning workflow mode with git integration suits PRD-driven development where requirements need refinement before implementation begins
  • GUI-automation research: Experimental computer control layer for teams exploring desktop automation as an extension of coding agent capabilities

Adoption Level Analysis

Small teams (<20 engineers): Potentially fits for Rust-experienced teams and individual developers who want a self-hosted coding agent. The single-binary deployment, Apache-2.0 license, and TOML configuration make it easy to run locally or on a remote server. Context management and retry logic are production-quality. Main risk is solo-maintainer sustainability and absence of independent benchmarks.

Medium orgs (20-200 engineers): Does not fit today. No documented production deployments, no enterprise governance features (RBAC, audit logging, compliance), and no commercial support tier. The feature set is competitive with Claude Code / Codex CLI for individual developer use, but lacks the ecosystem and stability track record required for org-wide rollout.

Enterprise (200+ engineers): Not applicable. Single maintainer, no SLA, no compliance documentation.

Alternatives

AlternativeKey DifferencePrefer when…
Codex CLI (OpenAI)Rust-based, OS sandbox, locked to OpenAI models, 73k+ starsYou want OpenAI model quality with minimal footprint and proven ecosystem
Claude Code (Anthropic)Tightly optimized for Claude, proprietary, industry-leading benchmark scoresYou are committed to Anthropic and want the best-in-class terminal agent
OpenCodeMulti-provider TUI + desktop app + IDE extensions, TypeScript, 120k+ starsYou want a polished UI and broad provider support with active community
ADK-Rust25+ crates, Google ADK-inspired, A2A protocol supportYou need agent-to-agent interoperability in Rust (but more marketing risk)
Pi Coding AgentTypeScript, multi-provider, TypeScript extension system, production-capableYou want a minimal extensible harness in TypeScript rather than Rust

Evidence & Sources

Notes & Caveats

  • Solo maintainer risk: g3 appears to be a single-maintainer project. All Rust coding agent harnesses at this star count carry abandonment risk; a key feature push from a major player (e.g., Codex CLI reaching 100k stars) can drain community attention rapidly.
  • No independent benchmarks: Zero published SWE-bench, HCAST, or LiveCodeBench scores for g3. All performance characterization comes from the README. The honest documentation of local model limitations (MoE infinite loops) is a credibility signal, but independent validation is absent.
  • Experimental computer control: The g3-computer-control crate requires OS-level accessibility permissions. This is a significant security surface. Do not deploy in shared or multi-tenant environments without auditing what the agent can reach.
  • Local model limitations are well-documented but real: The project explicitly states that Qwen3-32B (dense) handles simple agentic tasks while MoE models loop infinitely on tool calls. For serious coding tasks, cloud models are required, which removes the primary justification for choosing a Rust agent over TypeScript/Python alternatives (provider lock-in vs. privacy).
  • WebDriver dependency for browser/computer control: Defaults to Chrome headless; Safari is supported on macOS. This adds a significant runtime dependency for the computer control feature and is atypical for Rust-first minimal deployment stories.
  • API stability: No versioned release or stable API guarantee found in the repository. Breaking changes are possible without deprecation notice.

Related