Strict Programming Practices
code-yeongyu/oh-my-openagent
Applies strict, type-first coding rules for Python, Rust, TypeScript and Go, loading the matching language reference before the agent writes or edits any code.
Sets idiomatic Go conventions with a test-first workflow, using testify/require for assertions and mockery for mocks, for new features, packages and refactors.
$ npx skills add jumppad-labs/jumppad --skill go-dev-guidelines -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install jumppad-labs/jumppad go-dev-guidelines --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/jumppad-labs/jumppad.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.claude/skills/go-dev-guidelines .claude/skills/go-dev-guidelines && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "go-dev-guidelines" agent skill from https://github.com/jumppad-labs/jumppad/tree/main/.claude/skills/go-dev-guidelines into .claude/skills/go-dev-guidelines/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "go-dev-guidelines", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/jumppad-labs/jumppad/tree/main/.claude/skills/go-dev-guidelinesType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add jumppad-labs/jumppad --skill go-dev-guidelines -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install jumppad-labs/jumppad go-dev-guidelines --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/jumppad-labs/jumppad.git skills-src && mkdir -p .agents/skills && cp -r skills-src/.claude/skills/go-dev-guidelines .agents/skills/go-dev-guidelines && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "go-dev-guidelines" agent skill from https://github.com/jumppad-labs/jumppad/tree/main/.claude/skills/go-dev-guidelines into .agents/skills/go-dev-guidelines/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "go-dev-guidelines", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add jumppad-labs/jumppad --skill go-dev-guidelines -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install jumppad-labs/jumppad go-dev-guidelines --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/jumppad-labs/jumppad.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/.claude/skills/go-dev-guidelines .cursor/skills/go-dev-guidelines && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "go-dev-guidelines" agent skill from https://github.com/jumppad-labs/jumppad/tree/main/.claude/skills/go-dev-guidelines into .cursor/skills/go-dev-guidelines/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "go-dev-guidelines", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/jumppad-labs/jumppad.git --path .claude/skills/go-dev-guidelines--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add jumppad-labs/jumppad --skill go-dev-guidelines -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install jumppad-labs/jumppad go-dev-guidelines --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/jumppad-labs/jumppad.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/.claude/skills/go-dev-guidelines .gemini/skills/go-dev-guidelines && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "go-dev-guidelines" agent skill from https://github.com/jumppad-labs/jumppad/tree/main/.claude/skills/go-dev-guidelines into .gemini/skills/go-dev-guidelines/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "go-dev-guidelines", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install jumppad-labs/jumppad go-dev-guidelinesInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add jumppad-labs/jumppad --skill go-dev-guidelines -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/jumppad-labs/jumppad.git skills-src && mkdir -p .github/skills && cp -r skills-src/.claude/skills/go-dev-guidelines .github/skills/go-dev-guidelines && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "go-dev-guidelines" agent skill from https://github.com/jumppad-labs/jumppad/tree/main/.claude/skills/go-dev-guidelines into .github/skills/go-dev-guidelines/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "go-dev-guidelines", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add jumppad-labs/jumppad --skill go-dev-guidelines -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install jumppad-labs/jumppad go-dev-guidelines --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/jumppad-labs/jumppad.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/.claude/skills/go-dev-guidelines .opencode/skills/go-dev-guidelines && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "go-dev-guidelines" agent skill from https://github.com/jumppad-labs/jumppad/tree/main/.claude/skills/go-dev-guidelines into .opencode/skills/go-dev-guidelines/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "go-dev-guidelines", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
go-dev-guidelinesSets idiomatic Go conventions with a test-first workflow, using testify/require for assertions and mockery for mocks, for new features, packages and refactors.
The skill gives two checklists, one for adding a feature to an existing Go project and one for starting a new service or package. Feature work runs from a small interface through tests, mockery-generated mocks and the implementation, then explicit error handling, integration tests, go vet and gofmt, and godoc comments. New packages follow the standard /cmd, /internal and /pkg layout with dependency injection, structured logging and graceful shutdown.
Testing rules are specific: assertions use github.com/stretchr/testify/require, mocks live in a mocks subfolder beside the interface, table-driven tests are avoided in favor of one explicit function per scenario, and success and failure cases stay in separate functions. Reference files cover code organization, concurrency patterns, dependencies, error handling, naming conventions, a testing guide and complete examples.
8 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit 34289ff. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Shell commands in SKILL.md call:
goFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Go Development Guidelines loads about 1.5k tokens when it runs, and up to ~28k if it reads all its reference files. Until then it costs about 91 tokens; SKILL.md has 510 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from jumppad-labs/jumppad at commit 34289ff, republished under its MPL-2.0 licence (© jumppad-labs). 510 words, ~1,540 tokens.
.claude/skills/go-dev-guidelines/SKILL.md (or your agent's skills folder). This skill also uses 7 other files; get the full folder from GitHub.This skill provides comprehensive guidelines for idiomatic Go development with a Test-Driven Development (TDD) approach. Follow these patterns when writing Go code, creating tests, organizing projects, or refactoring existing code.
When implementing a new feature in an existing Go project:
*_test.go file with testify/require testsmocks/ subfolderWhen creating a new Go service or package from scratch:
/cmd, /internal, /pkg)go mod init with appropriate module pathFollow these seven core principles for all Go development:
Write tests before implementation. Tests should be easy to read and favor verbosity over abstraction.
All unit tests must use github.com/stretchr/testify/require for assertions.
Generate mocks using mockery. Mocks must be localized in a mocks/ subfolder next to the interface being mocked.
Avoid table-driven tests. Write explicit test functions for each scenario.
Keep positive (success) and negative (error) test cases in separate test functions.
Never ignore errors. Always handle them explicitly or return them to the caller.
Design interfaces with few methods. Use composition over large interfaces.
any Instead of interface{}For generic types, prefer any over interface{} (Go 1.18+).
project-root/
├── cmd/ # Main applications
│ └── myapp/
│ └── main.go
├── internal/ # Private application code
│ ├── handler/ # HTTP handlers
│ │ ├── handler.go
│ │ ├── handler_test.go
│ │ └── mocks/ # Mocks for handler interfaces
│ ├── service/ # Business logic
│ │ ├── service.go
│ │ ├── service_test.go
│ │ └── mocks/
│ └── repository/ # Data access
│ ├── repository.go
│ ├── repository_test.go
│ └── mocks/
├── pkg/ # Public library code
│ └── client/
│ ├── client.go
│ ├── client_test.go
│ └── mocks/
├── api/ # API definitions (OpenAPI, protobuf)
├── configs/ # Configuration files
├── go.mod
├── go.sum
└── README.md// Unit test with mock
func TestServiceCreate(t *testing.T) {
mockRepo := mocks.NewRepository(t)
mockRepo.On("Save", mock.Anything).Return(nil)
svc := NewService(mockRepo)
err := svc.Create(context.Background(), data)
require.NoError(t, err)
mockRepo.AssertExpectations(t)
}
// Separate negative test
func TestServiceCreate_RepoError(t *testing.T) {
mockRepo := mocks.NewRepository(t)
mockRepo.On("Save", mock.Anything).Return(errors.New("db error"))
svc := NewService(mockRepo)
err := svc.Create(context.Background(), data)
require.Error(t, err)
require.Contains(t, err.Error(), "db error")
}handler, service)user_service.go, user_service_test.go)UserService, HTTPHandler)-er suffix (Reader, Writer, UserRepository)Use this table to find detailed guidance for specific tasks:
| If You Need To... | See This Resource |
|---|---|
| Set up a new Go project structure | Project Structure |
| Understand Go naming conventions | Naming Conventions |
| Write tests with TDD, testify/require, and mockery | Testing Guide |
| Organize packages, interfaces, and dependencies | Code Organization |
| Handle errors idiomatically | Error Handling |
| Work with goroutines, channels, and context | Concurrency Patterns |
| Manage dependencies and go.mod | Dependencies |
| See complete working examples | Complete Examples |
This skill includes detailed reference documentation in the references/ directory. Claude will load these resources as needed when working on specific tasks.
© jumppad-labs, MPL-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 7 other files (references) in .claude/skills/go-dev-guidelines of jumppad-labs/jumppad.
Open the folder on GitHubat commit 34289ff
Go Development Guidelines next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Go Development Guidelines this skilljumppad-labs/jumppad | 263 | — | ~1.5k | Automated safety check: Pass | MPL-2.0 | |
| Strict Programming Practicescode-yeongyu/oh-my-openagent | 70k | — | ~9.5k | Automated safety check: Pass | Custom licence | |
| Clean Codejd-solanki/slidev-theme-dracula | 161 | 1 repos | ~3.8k | Automated safety check: Pass | MIT | |
| Go Guidelinesmhmtszr/go-guidelines | 104 | — | ~885 | Automated safety check: Warn | MIT | |
| Agent Implementer Sparc Coderruvnet/ruflo | 74k | 2 repos | ~1.6k | Automated safety check: Pass | MIT | |
| Azure Cosmos DB Pyaiskillstore/marketplace | 430 | 4 repos | ~2.1k | Automated safety check: Pass | None |
code-yeongyu/oh-my-openagent
Applies strict, type-first coding rules for Python, Rust, TypeScript and Go, loading the matching language reference before the agent writes or edits any code.
jd-solanki/slidev-theme-dracula
Write readable, maintainable code through disciplined naming, small functions, and clean error handling.
mhmtszr/go-guidelines
Applies version-aware Go guidance when writing or reviewing Go code, loading only the reference files that match the task, from syntax and performance to concurrency and testing.
ruvnet/ruflo
Agent skill for implementer-sparc-coder - invoke with $agent-implementer-sparc-coder
aiskillstore/marketplace
Build production-grade Azure Cosmos DB NoSQL services following clean code, security best practices, and TDD principles.
alinaqi/maggy
Python development with ruff, mypy, pytest - TDD and type safety
jumppad-labs/jumppad
Pulls a GitHub issue's description, comments, labels, assignees, milestone and linked pull requests into one markdown report so the agent can plan a fix.
jumppad-labs/jumppad
Executes an approved plan step by step through the spektacular CLI, which acts as the state machine, producing code, tests and a changelog.
jumppad-labs/jumppad
Builds detailed implementation plans through interactive questions, parallel research agents and template files for context, research, plan and tasks, from an issue or a plan name.
jumppad-labs/jumppad
Routes natural-language requests to look up, add or update entries in a project's knowledge store by calling the spektacular knowledge CRUD commands directly, without a multi-step CLI flow.
jumppad-labs/jumppad
Add a repo to the current Spektacular project through a guided conversation, inspect the registry, and repair a repo's footprint.
jumppad-labs/jumppad
Create a new Specification for a feature. An agent skill from jumppad-labs/jumppad.
Works with
Categories
Sets idiomatic Go conventions with a test-first workflow, using testify/require for assertions and mockery for mocks, for new features, packages and refactors. The skill gives two checklists, one for adding a feature to an existing Go project and one for starting a new service or package. Feature work runs from a small interface through tests, mockery-generated mocks and the implementation, then explicit error handling, integration tests, go vet and gofmt, and godoc comments.
Go Development Guidelines fits situations like: writing a new Go feature test-first; setting up the layout of a new Go service or package; generating mockery mocks and writing testify/require tests; refactoring Go code to follow naming and error-handling conventions.
Run `npx skills add jumppad-labs/jumppad --skill go-dev-guidelines -a claude-code`. Or copy the skill folder (.claude/skills/go-dev-guidelines in jumppad-labs/jumppad) into .claude/skills/go-dev-guidelines in your project. Claude Code loads it when a task matches its description.
Run `npx skills add jumppad-labs/jumppad --skill go-dev-guidelines -a codex`. Or copy the skill folder (.claude/skills/go-dev-guidelines in jumppad-labs/jumppad) into .agents/skills/go-dev-guidelines in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add jumppad-labs/jumppad --skill go-dev-guidelines -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/go-dev-guidelines, .gemini/skills/go-dev-guidelines, .github/skills/go-dev-guidelines and .opencode/skills/go-dev-guidelines in your project.
Going by SKILL.md and its folder, Go Development Guidelines needs the command-line tools its instructions call (go). Our summary lists: A Go toolchain with testify and mockery available.
SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Go Development Guidelines is published under the MPL-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 1.5k tokens (SKILL.md is roughly 6.2k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 26k tokens, read only when the agent opens those files.
Skills that share tags, products or a category with Go Development Guidelines: Strict Programming Practices (code-yeongyu/oh-my-openagent, 70k stars), Clean Code (jd-solanki/slidev-theme-dracula, 161 stars), Go Guidelines (mhmtszr/go-guidelines, 104 stars) and Agent Implementer Sparc Coder (ruvnet/ruflo, 74k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
jumppad-labs (a GitHub organization) maintains it in jumppad-labs/jumppad, which has 263 GitHub stars. The repository holds 8 skills in this directory. The repository was last updated on October 1, 2026.
Source: jumppad-labs/jumppad on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.