Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add perniemann/pnCore --skill pn-go-scaffoldinggit clone --depth 1 https://github.com/perniemann/pnCoreWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/perniemann/pncore/pn-go-scaffolding)<a href="https://agentmods.dev/skills/perniemann/pncore/pn-go-scaffolding"><img src="https://agentmods.dev/badge/skills/perniemann/pncore/pn-go-scaffolding/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/perniemann/pncore/pn-go-scaffolding"><img src="https://agentmods.dev/badge/skills/perniemann/pncore/pn-go-scaffolding.svg" alt="Reviewed on agentmods" width="80" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00051 | $0.01309 |
| Opus 5.5 | $0.00020 | $0.00524 |
| Sonnet 5.5 | $0.00010 | $0.00262 |
| Haiku 4.5 | $0.00005 | $0.00131 |
Grade A, and why
pn-go-scaffolding scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 1mo ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 212 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Go backend scaffolding
When to use
- Starting a new Go API project.
- Adding a new handler, route group, or domain package.
- Establishing project structure from scratch.
Project structure
# Standard Go layout
cmd/
server/
main.go # Entry point: init config, DB, router, start server
internal/
users/
handler.go # HTTP handlers for the users domain
service.go # Business logic
repository.go # DB queries for users
model.go # User struct + domain types
orders/
handler.go
service.go
repository.go
middleware/
auth.go
logger.go
recover.go
config/
config.go # Typed config from env vars
db/
db.go # DB connection pool setup
apierr/
errors.go # Sentinel errors + HTTP mapping
go.mod
go.sum
.env.example
cmd/for binary entry points.internal/for everything that is not a public library. Prevents external packages from importing your internals.- Never put business logic in
main.go.
Gin scaffold
// internal/users/handler.go
package users
import (
"net/http"
"strconv"
"github.com/gin-gonic/gin"
"yourmodule/internal/apierr"
)
type Handler struct {
svc *Service
}
func NewHandler(svc *Service) *Handler {
return &Handler{svc: svc}
}
func (h *Handler) RegisterRoutes(rg *gin.RouterGroup) {
rg.POST("", h.Create)
rg.GET("/:id", h.GetByID)
}
func (h *Handler) Create(c *gin.Context) {
var req CreateUserRequest
if err := c.ShouldBindJSON(&req); err != nil {
c.JSON(http.StatusBadRequest, gin.H{"error": gin.H{"code": "BAD_REQUEST", "message": err.Error()}})
return
}
user, err := h.svc.Create(c.Request.Context(), req)
if err != nil {
apierr.Respond(c, err)
return
}
c.JSON(http.StatusCreated, gin.H{"data": user})
}
func (h *Handler) GetByID(c *gin.Context) {
id, err := strconv.ParseInt(c.Param("id"), 10, 64)
if err != nil {
c.JSON(http.StatusBadRequest, gin.H{"error": gin.H{"code": "BAD_REQUEST", "message": "Invalid ID"}})
return
}
user, err := h.svc.GetByID(c.Request.Context(), id)
if err != nil {
apierr.Respond(c, err)
return
}
c.JSON(http.StatusOK, gin.H{"data": user})
}
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 1mo ago First seen · 212 lines · 51 tokens per session scan A 310626622528
pn-go-scaffolding is a skill published in the GitHub repository perniemann/pnCore (0 stars, last pushed 2d ago), licensed MIT. It adds 51 tokens to every session and 1,309 once invoked, about $0.0002 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-09-03.
Other skills, from other repositories
typescript
TypeScript coding conventions, best practices, and patterns for writing clean, maintainable code.
ax-go-gen
Use when writing Go code with github.com/ax-llm/ax/packages/go for AxGen programs, forward calls, indexed multi-sampling, result pickers, streaming, tools, assertions, traces, usage, and output parsing.
ax-go-agent
Use when writing Go code with github.com/ax-llm/ax/packages/go for agents, child delegation, tools, MCP, citations, persistent playbook learning, stage instructions, runtime state, final typed responses, and direct-respond executor skipping.
ax-go-audio
Use when writing Go code with github.com/ax-llm/ax/packages/go for audio input/output, OpenAI Responses audio mapping, realtime event folding, and generated package audio examples.
ax-go-agent-optimize
Use when writing Go code with github.com/ax-llm/ax/packages/go for agent optimization, verified agent-playbook evolution, evaluators, judges, optimizer artifacts, BootstrapFewShot, and GEPA.
chat-sdk
Build multi-platform chat bots with Chat SDK (chat npm package). Use when developers want to (1) Build a Slack, Teams, Google Chat, Discord, Telegram, GitHub, Linear, or WhatsApp bot, (2) Use Chat SDK to handle mentions, direct messages, subscribed threads, reactions, slash commands, cards, modals, files, or AI…