golang-safety SKILL.md skillA

golang-safety from omarluq/librecode is an agent skill: a SKILL.md folder an AI agent loads when a task calls for it.

Install it, pinned
mdr add omarluq/librecode/golang-safety@v1.1.1

Pins v1.1.1 in mdr.lock. Pin the fingerprint instead.

Audit grade
A, 17 of 17 checks passed
Kind
SKILL.md skill
Repository
omarluq/librecode
Path
.librecode/skills/golang-safety/SKILL.md
Versions recorded
1
Latest version
v1.1.1, committed May 17, 2026
Size
9,723 bytes
Repository stars
30
License
MIT

Defensive Golang coding to prevent panics, silent data corruption, and subtle runtime bugs. Use whenever writing or reviewing Go code that involves nil-prone types (pointers, interfaces, maps, slices, channels), numeric conversions, resource lifecycle (defer in loops), or defensive copying. Also triggers on questions about nil panics, append aliasing, map concurrent access, float comparison, or zero-value design.

Collected from public GitHub. Every version is saved exactly as it was and never changes. Install it at an exact version with the mdr tool, and every file is checked before it reaches your agent. The main file is checked against the SHA-256 fingerprint recorded here, and the others against the fingerprints GitHub keeps for its source commit. The automatic checks below grade the latest version, and the same checks always give the same file the same grade.

What the file says

**Persona:** You are a defensive Go engineer. You treat every untested assumption about nil, capacity, and numeric range as a latent crash waiting to happen.

# Go Safety: Correctness & Defensive Coding

Prevents programmer mistakes — bugs, panics, and silent data corruption in normal (non-adversarial) code. Security handles attackers; safety handles ourselves.

## Best Practices Summary

1. **Prefer generics over `any`** when the type set is known — compiler catches mismatches instead of runtime panics
2. **Always use comma-ok for type assertions** — bare assertions panic on mismatch
3. **Typed nil pointer in an interface is not `== nil`** — the type descriptor makes it non-nil
4. **Writing to a nil map panics** — always initialize before use
5. **`append` may reuse the backing array** — both slices share memory if capacity allows, silently corrupting each other
6. **Return defensive copies** from exported functions — otherwise callers mutate your internals
7. **`defer` runs at function exit, not loop iteration** — extract loop body to a function
8. **Integer conversions truncate silently** — `int64` to `int32` wraps without error
…

Read the whole file at its exact version.

How to install

The exact contents, by fingerprint
mdr add omarluq/librecode/golang-safety@sha256:1c605c9d4e3e2791

The line at the top of this page pins the label v1.1.1, which is what most people want. This one pins the sha256 fingerprint of the contents instead, so it survives a label being moved. Either way the exact version is written to mdr.lock, and mdr install downloads and checks those contents again, so it installs them exactly or stops with an error.

Badge

mdr badge

[![mdr](https://markdownregistry.com/badge/art_vk4gx4eqsvx5lg5r.svg)](https://markdownregistry.com/a/art_vk4gx4eqsvx5lg5r)

5 badge image fetches in 30 days. What the badge shows.

Versions

The registry has recorded 1 version of this file, committed on May 17, 2026.

versioncommittedcommitsizeaudit
v1.1.1 latest2026-05-17 6dddbce 9,723 BA view

Audit of the latest version

A  17 of 17 checks passed. Fixed automatic checks with no AI involved, so the same checks give the same answer every run.
  • pass: Frontmatter block present
  • pass: Frontmatter declares a name
  • pass: Frontmatter declares a description
  • pass: Size between 200 bytes and 200 KB (9723 bytes)
  • pass: No zero-width or bidi control characters
  • pass: No instruction hidden inside an HTML comment
  • pass: No link to an exfiltration or paste host
  • pass: No credential-shaped string
  • pass: No instruction to send local credentials anywhere
  • pass: No text hidden with inline styles
  • pass: No prompt-injection phrasing
  • pass: No curl or wget piped into a shell
  • pass: No recursive delete of root, home or parent
  • pass: No instruction to read or print local credentials
  • pass: No base64 blob over 200 characters
  • pass: No link to a raw IP address
  • pass: No script tag

Source

GitHub

omarluq/librecode · 30 stars · license MIT · pushed 2026-11-08 · branch main

API

GET https://markdownregistry.com/api/v1/artifacts/art_vk4gx4eqsvx5lg5r
GET https://markdownregistry.com/api/v1/resolve?ref=omarluq/librecode/golang-safety
GET https://markdownregistry.com/api/v1/blob/1c605c9d4e3e2791bac12d81a924f0c1582ef2743728113dc7ae8f60fbd5f15e

Your AI assistant does the legwork. You hear about the deals worth your word. Hand yours the standing instructions at modelranch.com and it joins the network that reads files like this one.

Guides: the SKILL.md format and its required fields · what to check before you install a skill · how to pin a skill to an exact version · where to find agent skills · keeping a team on the same skills · which agent file does what.

More from omarluq/librecode

autofix SKILL.md skill
omarluq/librecode · .librecode/skills/autofix/SKILL.md · Safely review and apply CodeRabbit PR review-thread feedback from GitHub with per-change approval; never execute…
v0.1.0 · audit B · 30 stars
code-review SKILL.md skill
omarluq/librecode · .librecode/skills/code-review/SKILL.md · AI-powered code review using CodeRabbit. Default code-review skill. Trigger for any explicit review request AND…
v0.1.0 · audit A · 30 stars
conventional-git SKILL.md skill
omarluq/librecode · .librecode/skills/conventional-git/SKILL.md · Conventional Commits v1.0.0 branch naming, worktree naming, and commit message standards for GitHub and GitLab…
v1.2.0 · audit A · 30 stars
deep-research SKILL.md skill
omarluq/librecode · .librecode/skills/deep-research/SKILL.md · Deep research skill — broad parallel web searches, multi-source validation, confidence tracking, cited Markdown report…
v1.1.0 · audit A · 30 stars
golang-benchmark SKILL.md skill
omarluq/librecode · .librecode/skills/golang-benchmark/SKILL.md · Golang benchmarking, profiling, and performance measurement. Use when writing, running, or comparing Go benchmarks…
v1.1.3 · audit A · 30 stars
golang-cli SKILL.md skill
omarluq/librecode · .librecode/skills/golang-cli/SKILL.md · Golang CLI application development. Use when building, modifying, or reviewing a Go CLI tool — especially for command…
v1.1.3 · audit A · 30 stars
golang-code-style SKILL.md skill
omarluq/librecode · .librecode/skills/golang-code-style/SKILL.md · Golang code style, formatting and conventions. Use when writing code, reviewing style, configuring linters, writing…
v1.1.1 · audit A · 30 stars
golang-concurrency SKILL.md skill
omarluq/librecode · .librecode/skills/golang-concurrency/SKILL.md · Golang concurrency patterns. Use when writing or reviewing concurrent Go code involving goroutines, channels, select…
v1.1.2 · audit A · 30 stars
golang-context SKILL.md skill
omarluq/librecode · .librecode/skills/golang-context/SKILL.md · Idiomatic context.Context usage in Golang — creation, propagation, cancellation, timeouts, deadlines, context values…
v1.1.1 · audit A · 30 stars
golang-continuous-integration SKILL.md skill
omarluq/librecode · .librecode/skills/golang-continuous-integration/SKILL.md · Provides CI/CD pipeline configuration using GitHub Actions for Golang projects. Covers testing, linting, SAST, security…
v1.1.2 · audit A · 30 stars
golang-data-structures SKILL.md skill
omarluq/librecode · .librecode/skills/golang-data-structures/SKILL.md · Golang data structures — slices (internals, capacity growth, preallocation, slices package), maps (internals, hash…
v1.1.1 · audit A · 30 stars
golang-database SKILL.md skill
omarluq/librecode · .librecode/skills/golang-database/SKILL.md · Comprehensive guide for Go database access. Covers parameterized queries, struct scanning, NULLable column handling…
v1.1.2 · audit A · 30 stars

Every file in omarluq/librecode

Other files named golang-safety

golang-safety SKILL.md skill
samber/cc-skills-golang · skills/golang-safety/SKILL.md · Defensive Golang coding against accidental bugs — nil panics, typed-nil interfaces, `append` backing-array aliasing…
v1.3.2 · audit A · 3,816 stars
golang-safety SKILL.md skill
yzfly/skills · skills/cto/references/payload/backend/golang/golang-safety/SKILL.md · Defensive Golang coding to prevent panics, silent data corruption, and subtle runtime bugs. Use whenever writing or…
v1.1.2 · audit A · 12 stars

Browse by kind, by grade A, or by owner.