⏳ This skill is pending AI review.
Scores will appear once the review pipeline completes.
go-api-design
>
Choose how to use this skill
You do not need every option. Choose the path your AI client supports. The stable page stays the same; versioned files are immutable.
1. Native installer
This listing has no registered native installer command. Use the complete package or source fallback below, depending on what your client supports.
Do not guess an installer command or replace an existing version without reviewing the diff.
2. Complete package recommended
Download the ZIP when available. It includes SKILL.md plus the references, security notes and version metadata.
No complete ProSkills package is published for this listing yet.3. Prompt-only
Copy the prompt above when the agent can read the stable page or when you want to adopt the workflow without installing a skill.
Need only the instruction file?
Download SKILL.md only if your client requires a single file. The complete ZIP is safer for a full installation because it preserves the references and release context.
No path installs or executes anything by itself. Your agent still needs access to the project files. Before updating, compare the installed version and review the diff.
// RATINGS
// README
npx skills add eduardo-sl/go-agent-skills
[!IMPORTANT] An agent is only as good as the context you hand it. Without Go-specific guidance it writes Java-flavoured Go: naked
errreturns, producer-side interfaces, goroutines nobody stops,interface{}where generics belong.These 33 skills encode how experienced Go engineers actually work — grounded in the Uber Go Style Guide, Effective Go, and Go Code Review Comments — and they load on demand, so they cost nothing until they are relevant.
🚀 Install
Works with Claude Code, Cursor, Codex, GitHub Copilot, Windsurf,
OpenCode, Cline, and 37+ more agents
via the npx skills CLI.
# Everything, interactive — picks up the agents you have installed
npx skills add eduardo-sl/go-agent-skills
# Look before you leap
npx skills add eduardo-sl/go-agent-skills --list
# Just the ones you want
npx skills add eduardo-sl/go-agent-skills --skill go-code-review --skill go-defensive-coding
# Globally, for every project
npx skills add eduardo-sl/go-agent-skills -g
# Non-interactive, for CI
npx skills add eduardo-sl/go-agent-skills --all -y
/plugin marketplace add eduardo-sl/go-agent-skills
/plugin install go-agent-skills@eduardo-sl
Or drop them straight in: npx skills add eduardo-sl/go-agent-skills -a claude-code
npx skills add eduardo-sl/go-agent-skills -a cursor
Cursor auto-discovers skills from .cursor/skills/ and .agents/skills/.
npx skills add eduardo-sl/go-agent-skills -a copilot
Copilot auto-discovers skills from .github/skills/.
npx skills add eduardo-sl/go-agent-skills -a codex
Codex auto-discovers skills from ~/.agents/skills/ and .agents/skills/.
npx skills add eduardo-sl/go-agent-skills -a windsurf
npx skills add eduardo-sl/go-agent-skills -a opencode
npx skills add eduardo-sl/go-agent-skills -a cline
git clone https://github.com/eduardo-sl/go-agent-skills.git
./go-agent-skills/scripts/install.sh /path/to/your-go-project --agent claude
# See what it would do first
./go-agent-skills/scripts/install.sh /path/to/project --agent claude --dry-run
# Symlink instead of copy, to stay in sync with the repo
./go-agent-skills/scripts/install.sh /path/to/project --agent claude --symlink
mkdir -p .claude/skills && cp -r go-agent-skills/skills/*/* .claude/skills/ # Claude Code
mkdir -p .cursor/skills && cp -r go-agent-skills/skills/*/* .cursor/skills/ # Cursor
mkdir -p .github/skills && cp -r go-agent-skills/skills/*/* .github/skills/ # Copilot
mkdir -p .agents/skills && cp -r go-agent-skills/skills/*/* .agents/skills/ # Codex / OpenCode
npx skills check # anything out of date?
npx skills update # bring them current
npx skills list # what is installed
npx skills remove go-performance-review
🗺 The map
┌───────────────────────────┐
│ go-skills-router │ ← "which skill is this?"
└─────────────┬─────────────┘
│
┌──────────────┬──────────────┬────────┴─────┬──────────────┬──────────────┐
▼ ▼ ▼ ▼ ▼ ▼
┌────────────┐┌────────────┐┌────────────┐┌────────────┐┌────────────┐┌────────────┐
│Code Quality││Architecture││ Data ││Safety&Perf ││ Testing ││ Workflow │
├────────────┤├────────────┤├────────────┤├────────────┤├────────────┤├────────────┤
│coding-stds ││arch-review ││ database ││concurrency ││test-quality││ dep-audit │
│code-review ││proj-layout ││ ││ -review ││test-table ││ ci │
│error-handl ││iface-design││ ││security ││ -driven ││ refactoring│
│context ││api-design ││ ││ -audit ││ ││ semantic │
│modernize ││openapi ││ ││defensive ││ ││ -tools │
│data-structs││graphql ││ ││ -coding ││ ││ binary-size│
│docs ││grpc ││ ││performance ││ ││ skills │
│ ││design-patt ││ ││ -review ││ ││ -router │
│ ││dep-inject ││ ││observabil. ││ ││ git-commit │
│ ││cli ││ ││troublesh. ││ ││ │
└────────────┘└────────────┘└────────────┘└────────────┘└────────────┘└────────────┘
Unsure which one applies? That is what go-skills-router
is for — it maps a task to the skill that owns it, and draws the boundary when two overlap.
📊 Catalogue
Skills load automatically from context. You can also invoke one directly:
/go-code-review.
Reading the columns. Desc is the description weight, loaded at startup for
every skill — it is what makes a skill trigger. SKILL.md is what loads when
one fires. Tree includes the references/ files, which load only when the
skill sends the agent to them. 📚 marks a skill with reference files.
All figures are approximate tokens (bytes ÷ 4).
Code Quality
| Skill | What it does | Triggers | Desc | SKILL.md | Tree |
|---|---|---|---|---|---|
go-code-review | Structured review process with severity classification | "review this code", "check this PR" | 103 | 1,613 | 1,613 |
go-coding-standards | Style conventions, naming, imports, struct init, formatting | "check Go style", "fix formatting" | 127 | 2,128 | 2,128 |
go-context 📚 | Context propagation, cancellation, timeouts, values | "context usage", "timeout", "context cancellation" | 108 | 1,798 | 2,868 |
go-data-structures | Slices, maps, sets, aliasing, preallocation, nil vs empty | "nil slice", "map iteration", "slice aliasing" | 135 | 1,498 | 1,498 |
go-documentation | Godoc conventions, testable examples, deprecation notices | "add godoc", "document this package" | 10 |
// HOW IT'S BUILT
KEY FILES