From backend-golang
Use when implementing Go HTTP services — enforces patterns for Gin, Echo, or Chi routers including middleware chains, handler structure, request validation, response formatting, and graceful shutdown
How this skill is triggered — by the user, by Claude, or both
Slash command
/backend-golang:golang-frameworksThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
```go
func NewRouter(svc *OrderService) *gin.Engine {
r := gin.New()
r.Use(gin.Recovery(), gin.Logger())
v1 := r.Group("/api/v1")
{
orders := v1.Group("/orders")
orders.POST("", createOrderHandler(svc))
orders.GET("/:id", getOrderHandler(svc))
}
return r
}
func createOrderHandler(svc *OrderService) gin.HandlerFunc {
return func(c *gin.Context) {
var req CreateOrderRequest
if err := c.ShouldBindJSON(&req); err != nil {
c.JSON(http.StatusBadRequest, gin.H{"error": err.Error()})
return
}
order, err := svc.Create(c.Request.Context(), req)
if err != nil {
c.JSON(http.StatusInternalServerError, gin.H{"error": "internal error"})
return
}
c.JSON(http.StatusCreated, order)
}
}
func NewRouter(svc *OrderService) *echo.Echo {
e := echo.New()
e.Use(middleware.Recover(), middleware.Logger())
v1 := e.Group("/api/v1")
v1.POST("/orders", createOrderHandler(svc))
v1.GET("/orders/:id", getOrderHandler(svc))
return e
}
func NewRouter(svc *OrderService) chi.Router {
r := chi.NewRouter()
r.Use(middleware.Recoverer, middleware.Logger)
r.Route("/api/v1/orders", func(r chi.Router) {
r.Post("/", createOrderHandler(svc))
r.Get("/{id}", getOrderHandler(svc))
})
return r
}
HandlerFuncsignal.NotifyContext with http.Server.Shutdown/health returning 200 with dependency statusnpx claudepluginhub gagandeepp/software-agent-teams --plugin backend-golangGuides completion of development work by verifying tests, detecting environment, and presenting structured options for merge, PR, or cleanup.
Enforces test-driven development: write failing test first, then minimal code to pass. Use when implementing features or bugfixes.
Guides creation and editing of skills using test-driven development with pressure scenarios and subagents to verify agent compliance.