Vibeleaderboard
Index / agent
Visit mochow13.github.io
Category
AI Agents
Rank
No. 1025Tools index
Pricing
Open Source
Type
AGENT
Use case
Coding
Interfaces
CLI
Builder
mochow13
GitHub
71 stars
Latest release
v0.61.0
Date

About

An open-source, Go-based terminal coding agent similar to Claude Code or Codex CLI, supporting multiple AI providers (Anthropic, OpenAI, Gemini, DeepSeek, and more) with MCP integration, a skills system for specialized sub-agent workflows, and a lean 'TurnMemory' context system that summarizes past tool calls instead of retaining raw outputs to control token usage.

What it does

Keen Code is a terminal-based coding agent written in Go. It runs an ordinary read-plan-edit-verify loop: read a prompt, call tools to inspect and change a repository, and report back, with the underlying model backend selectable per session from a long list of providers. Edits go through a hash-anchored diffing scheme: every line gets a short fingerprint when read back, and an edit is rejected outright if the file changed underneath it since. The agent can also spin up bounded helper agents to investigate or implement pieces of a larger task, and it can run unattended from a script through a non-interactive mode that prints structured output.

Why it's ranked here

The documentation set is unusually deep for a young command-line project: separate write-ups cover provider routing, the compaction budget math, MCP transport handling, memory size limits, and the permission model, each specified as concrete states and thresholds rather than vague prose. The project is also candid about its own gaps, stating that delegated helper agents get their tool calls approved automatically, including shell commands the tool itself flags as dangerous, and that parallel delegated work has no built-in ownership or budget enforcement. That combination of a working mechanism and an honest account of its own limits is what separates it from the many thin agent wrappers submitted to this catalogue.

What's good

The edit tool will not blindly apply a change: it fingerprints each line when it is read, then rejects the edit outright if the file drifted underneath it, closing off the silent-overwrite failure mode common to plain find-and-replace editors. Provider authentication spans plain API keys, browser-based OAuth with PKCE, and the standard AWS credential chain, so switching model backends does not mean rebuilding authentication plumbing each time. Anything the agent writes to its own persistent memory files is scanned for secret-shaped text before the write goes through, and even a pre-approved tool list cannot override the underlying filesystem denials on system directories or ignored files.

Tradeoffs

MCP support only exposes tools to the model, not resources or prompts, and there is no live reload: adding or removing a server means restarting the whole agent, and per-server timeouts are not configurable. A batch of delegated work runs every task inside it concurrently, with no dependency ordering, no file-ownership checks, and no cost cap, so two parallel workers can overwrite the same files, and any helper agent granted shell access has its commands, including ones flagged as dangerous, approved automatically with no prompt. The binary also builds a usage-telemetry reporter into every run, interactive or headless.

How to use it well

It suits an engineer who already works from the terminal and wants one agent that can point at several model backends without rewriting scripts, especially teams standardized on Bedrock or an OpenAI-compatible gateway who want the credential handling done for them. Treat helper agents as a scoped feature, not a free concurrency dial: give each one the narrowest permission set its task needs, reserve shell access for profiles that truly need to run commands, and split dependent steps into separate delegation rounds by hand, since the runtime will not order them automatically. Check the memory and MCP config locations before assuming either persists per-project.

Technical notes+

README.md states the project ships ten built-in tools and describes the edit tool as validating a multi-step edit list against one file snapshot atomically, rejecting stale line-hash anchors instead of editing drifted content. docs/permission-system.md lays out the filesystem guard's Denied, Granted, and Pending states, a fixed list of blocked system directories, and a five-step approval lookup order: yolo mode, headless auto-approve, the project allow list, session-allowed tools, then an interactive prompt. docs/subagents.md documents a delegation call accepting one to ten tasks, every child tool call approved automatically once a profile's permission set is granted, with permissions mapped from a small capability set (read, write, bash, web) rather than inherited from the parent when a profile defines its own list. docs/compaction.md gives the exact budget arithmetic: the usable input budget is the context window minus the larger of 4096 tokens or five percent of the window, with automatic compaction triggered at ninety percent of that budget. cmd/main.go shows a telemetry reporter (built from a measurement ID and an API secret) is constructed on every invocation, interactive or headless, inside the root command's PersistentPreRun hook. docs/mcp-servers.md confirms MCP server configuration is read only from a fixed path in the user's home directory, with no live reload and no per-server timeout settings.

Observed

Language
Go
Interfaces
Interactive terminal REPL plus a separate non-interactive command mode with structured JSON output
AI provider backends
Ten configurable providers, switchable per session without restarting
Built-in tools
Ten, covering file read/write/edit, search, shell execution, web fetch, user prompts, task delegation, and MCP calls
MCP transports
Streamable HTTP and stdio, with none, API key, and browser-based OAuth authentication
Telemetry
Constructs a usage-telemetry reporter on every run, interactive or headless
Memory storage
Plain markdown files with fixed size caps, and writes are rejected if they match secret-pattern text
Subagent delegation
One to ten tasks per delegation call, all approved automatically once a profile is granted permissions

Read from README.md, go.mod, cmd/main.go, docs/architecture.md, docs/ai-providers.md, docs/compaction.md, docs/mcp-servers.md, docs/memory.md, docs/multi-agent-orchestration.md, docs/permission-system.md, docs/skills-system.md, docs/subagents.md.

What it can do

  • Run as a terminal-based coding agent to assist with coding tasks

    Natural language prompts/commands in terminal → Code or command execution results

  • Connect to multiple AI providers for generating responses

    Provider selection (Anthropic, OpenAI, Gemini, DeepSeek, etc.) → AI-generated text/code

  • Integrate with MCP servers for extended tool access

    MCP server configuration → Additional tool capabilities within the agent

  • Delegate specialized tasks to sub-agents via a skills system

    Task description → Sub-agent workflow execution results

  • Summarize past tool call outputs to manage context window size

    Raw tool call outputs → Summarized turn memory context

Tags

clicoding-agentmcpmulti-agentgoopen-sourcedeveloper-toolsllm

Tech Stack

Go

Comments (0)

No comments yet

Editorially curated, with community endorsements as a secondary signal. Corrections welcome.