go-api-development — Claude Code skill for Go APIs
This skill guides agents through building REST APIs with Go’s standard library. Use it for routing, input checks, error responses, and tests.
npx skills add Mindrally/skills --skill go-api-development -a claude-codeWhat go-api-development does
The skill covers REST API structure in Go, including routing with http.ServeMux, HTTP methods and status codes, JSON handling, and request validation. It also describes middleware for concerns such as logging, authentication, and rate limiting.
Before implementation, the agent is asked to outline the API structure and data flow. The guidance also addresses request contexts, shared-state synchronization, input sanitization, and tests for handlers and business logic. One project requirement follows directly: use Go 1.22 or newer, since the routing guidance relies on the ServeMux introduced in that release.
It is available for Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, and OpenCode. The skill provides development guidance; it does not add ready-made handlers or dependencies to a project.
What it helps with
- plan Go API routes and data flow
- return structured JSON errors with suitable HTTP status codes
- validate request bodies and route parameters
- add middleware for logging or authentication
- test handlers and business logic
Example prompts for the agent
- Plan a REST API for this Go project and outline its routes and data flow.
- Add a resource-creation handler with input validation and a JSON error response.
- Write table-driven tests for the HTTP handlers and check their response codes.
How to install go-api-development
1Skills CLI (Vercel)
npx skills add Mindrally/skills --skill go-api-development -a claude-code2Manually: put the files in place
~/.claude/skills/go-api-development/SKILL.mdCopy the whole skill folder; for one project use .claude/skills/go-api-development/
1Skills CLI (Vercel)
npx skills add Mindrally/skills --skill go-api-development -a codex2Manually: put the files in place
.agents/skills/go-api-development/SKILL.mdFor all projects use ~/.agents/skills/
1Skills CLI (Vercel)
npx skills add Mindrally/skills --skill go-api-development -a cursor2Manually: put the files in place
.cursor/skills/go-api-development/SKILL.mdCursor also reads .agents/skills/ and .claude/skills/
1GitHub CLI
gh skill install Mindrally/skills go-api-development2Manually: put the files in place
.github/skills/go-api-development/SKILL.md1Skills CLI (Vercel)
npx skills add Mindrally/skills --skill go-api-development -a gemini-cli2Platform CLI
gemini skills install https://github.com/Mindrally/skills --path go-api-developmentManually: put the files in place
.devin/skills/go-api-development/SKILL.mdThe legacy .windsurf/skills/ path still works
Skills CLI (Vercel)
npx skills add Mindrally/skills --skill go-api-development -a opencodeClaude.ai
Zip the folder and upload it in Settings → Capabilities → Skills
Step by step, with commands for each platform: How to install skills in Claude Code: five ways
Questions about go-api-development
How do I install go-api-development in Claude Code?
Run npx skills add Mindrally/skills --skill go-api-development -a claude-code. The skill file will be at ~/.claude/skills/go-api-development/SKILL.md.
What does go-api-development do?
It guides an agent through Go API work, from routing and validation to error handling, security, and tests.
Which Go version does go-api-development target?
Its guidance targets Go 1.22 or newer and uses http.ServeMux, introduced in Go 1.22.
Source text
SKILL.md · Apache-2.0
--- name: go-api-development description: Go API development guidelines using the standard library (1.22+) with best practices for RESTful API design, error handling, and security metadata: maintainer: Mindrally source: https://github.com/Mindrally/skills --- # Go API Development with Standard Library ## Core Principles - Always use the latest stable version of Go (1.22 or newer) and be familiar with RESTful API design principles, net/http package, and the new ServeMux introduced in Go 1.22 - Follow the user's requirements carefully and to the letter - First think step-by-step - describe your plan for the API structure, endpoints, and data flow in pseudocode, written out in great detail - Write correct, up-to-date, bug-free, fully functional, secure, and efficient Go code for APIs - Leave NO todos, placeholders, or missing pieces in the API implementation - Always prioritize security, scalability, and maintainability in your API designs ## API Development Guidelines ### Routing and HTTP Handling - Use the new `http.ServeMux` introduced in Go 1.22 for routing - Implement proper HTTP method handling (GET, POST, PUT, DELETE, PATCH) - Use appropriate HTTP status codes for responses - Implement proper content-type handling for requests and responses ### Error Handling - Implement proper error handling, including custom error types when beneficial - Return appropriate HTTP status codes with error responses - Use structured error responses in JSON format - Log errors appropriately for debugging and monitoring ### Input Validation - Implement input validation for API endpoints - Validate request bodies, query parameters, and path parameters - Return clear validation error messages to clients - Sanitize inputs to prevent injection attacks ### JSON Handling - Use `encoding/json` for JSON serialization/deserialization - Implement proper struct tags for JSON field mapping - Handle JSON parsing errors gracefully - Use appropriate JSON formatting for responses ### Concurrency - Leverage Go's built-in concurrency features when appropriate for API performance - Use goroutines for concurrent operations where beneficial - Implement proper synchronization for shared state - Use context for request cancellation and timeouts ### Middleware - Implement middleware for cross-cutting concerns (logging, authentication, rate limiting) - Use middleware chaining for composable request processing - Implement CORS handling where needed - Add request/response logging middleware ### Security - Implement authentication and authorization where appropriate - Use HTTPS in production - Implement rate limiting to prevent abuse - Validate and sanitize all user inputs - Use secure defaults for cookies and sessions ### Logging - Use standard library logging with structured output - Log appropriate information for debugging and monitoring - Avoid logging sensitive information - Use log levels appropriately ### Testing - Write unit tests for handlers and business logic - Implement integration tests for API endpoints - Use table-driven tests where appropriate - Mock external dependencies in tests
© Mindrally · Apache-2.0 · Mindrally/skills