Go Surgeon — AI skill for Claude Code
Deterministic Go code editing for LLM agents.
How to install Go Surgeon
This entry records only its repository, not the path inside it, so there is no
exact command to give. Open JLugagne/go-surgeon and copy the folder into
~/.claude/skills/, or the file into ~/.claude/agents/.
What Go Surgeon does
Deterministic Go code editing for LLM agents. AST-based CLI and MCP server that replaces Edit, Read, and Grep on .go files for Claude Code, Cursor, and any agent.
Alternatives in AI
- Firecrawl MCP Server — 🔥 Official Firecrawl MCP Server - Adds powerful web scraping and search to Cursor, Claude and any other LLM c 6.1k ★
- Jcodemunch MCP — Cut AI token costs 95%+ on code exploration 2.6k ★
- Skilldock — SkillDock is an AI skill manager and skill management desktop app for Claude Code, Cursor, Codex, Windsurf, Ge 490 ★
README
go-surgeon
**Deterministic Go code editing for LLM agents. No text patching. No broken builds.**
Your agent shouldn't edit Go with Edit, Read, Grep, or Bash.
Go isn't just text, it's a tree of declarations. go-surgeon gives your agent a real AST-based toolkit — precise symbol lookup, structural edits, automatic `goimports` — exposed as an MCP server it uses instead of generic file tools.
**One tool call per edit. Valid Go every time.**
[](https://golang.org) [](https://modelcontextprotocol.io) [](LICENSE)
[**Quick Start**](#quick-start) • [**Why**](#why-go-surgeon) • [**MCP**](#-mcp-server) • [**Highlights**](#highlighted-features) • [**Safety**](#-safety)
The problem nobody admits
Ask your agent to update a single function in a 200-line Go file. Watch what happens:
- It
Reads the file, finds the function, plans the edit - It calls
Editwith a string replacement — misses a trailing tab - The patch fails. It re-reads the file. Tries again with the whole function body
- This time it forgets the
context.Contextimport go buildfails. It edits the import block — badly. Curly brace drift.- Three turns later you have a working file and no idea what changed.
Every Go dev using an LLM agent has lived this. The problem isn't the model's reasoning — **text-level patching is fundamentally wrong for a structured language**. Indentation, imports, braces: these aren't content, they're grammar. And grammar breaks loudly.
The fix
update(object="func", file="internal/catalog/domain/book.go", identifier="NewBook", content="""
func NewBook(title, author string) (*Book, error) {
return &Book{Title: title, Author: author}, nil
}
""")
✅ SUCCESS (update func): Updated NewBook in internal/catalog/domain/book.go
Locat
Related Skills
MCP Gtags Server
Indexed code navigation for AI coding agents (Claude Code, Cursor, any MCP client) — replaces grep scans with
Semble Rs
Fast, AI-agent-native code search in Rust — hybrid BM25 + semantic, Tree-sitter AST chunking, dependency & imp
Codecrafters Claude Code Python
A minimal LLM coding agent in ~280 lines of Python — Read/Write/Edit/Bash/Glob/Grep tools with an agent loop.
Rustygrep
Fast grep with token-compressed, AI-native output for LLM coding agents. --llm cuts context-window tokens 60-9
Ast Grep Skill
LLM-neutral skill for AST-aware search and rewrite across 25 languages, wrapping ast-grep (sg) with offline pa
SynapseCode
Ultra-fast Code Graph & AST Pruning MCP Server for LLMs. Reduces context token consumption by 75%-90% in Claud
Related Agents
Ast Grep Surgeon
Structural code analysis and surgical refactoring specialist using ast-grep. Use PROACTIVELY for code search,
Code Free
WOZCODE free-plan fallback agent — active when the monthly free-plan cap is exhausted. Claude Code's built-in
Tp Run
PROACTIVELY use this general-purpose token-pilot workhorse for ANY coding task (read / edit / search / explore