Sharur

Primitives, not features. Local-first. Extensible.

sharur is a powerful, local-first agentic harness designed for developers who want a flexible and reliable assistant that runs on their own hardware. It prioritizes local LLMs (via Ollama and llama.cpp) but adapts seamlessly to cloud providers like OpenAI, Anthropic, and Google Gemini.

Sharur, smasher of thousands! The weapon of Ninurta, acting as his counselor and scout - flies ahead, assesses, reports back, then executes.


CI Coverage Go Reference Go Report Card
Latest Release Go Version License

Core Philosophy

  • Local-First — Built from the ground up to favor local inference for privacy, speed, and cost-efficiency.
  • Aggressively Extensible — Every tool, provider, and behavior is a plugin interface. Supports gRPC extensions, markdown skills, and reusable prompt templates.
  • Session Persistence — Intelligent JSONL-backed session management with project-aware storage, branching, forking, and tree visualization.
  • Flexible Modes — TUI mode, one-shot mode, or a multi-session gRPC service — all powered by a central service-oriented architecture.
  • Security & Safety — Dry-run safety for destructive tools, automatic prompt injection mitigation, and a gRPC extension system for enforcing arbitrary policies.

Getting Started

Prerequisites

  • Go 1.26.2+
  • Nix (optional, recommended) — with flake support enabled

Installation

# Recommended: use Nix for a fully reproducible dev environment
nix develop

# Build binary with Go
go build -o shr ./cmd/shr

# Or install globally
go install ./cmd/shr

Quick Start

# Launch the interactive TUI
shr

# One-shot answer (JSONL output)
shr --mode json "What is the best way to structure a Go project?"

# Resume the most recent session
shr --continue

What’s in This Site

SectionAudienceContents
CLIAll usersModes, keybindings, slash commands, provider setup, configuration
ExtensibilityExtension authorsSkills, prompt templates, Go/Python/gRPC extensions
SDKGo library consumersEmbedding, custom tools, events, in-process extensions
InternalsContributorsArchitecture, agent loop, session format, build system
API ReferenceSDK & extension authorsGoDoc for sdk, extensions, internal/tools, internal/agent