Communitygithub.com

Team Go Standards

Team coding-standards plugins for Claude Code (Agent Skills marketplace) · Team Go Standards Plugin for Claude Code

What is Team Go Standards?

This skill enforces team-wide Go coding conventions directly within Claude Code, helping developers maintain consistency across repositories without needing to memorize every rule. It provides an indexed reference system (the `references/` directory) so Claude only loads the relevant standards for a given task — for example, CLI rules when working on Cobra commands, or migration guidelines when handling database schemas. The skill supports standard IDEs and AI coding agents that use `.claude/` or `.cursor/` configuration directories, and its documentation includes an explicit index (in `rules.md`, `cli.md`, `config.md`, `db-migrations.md`, `scaffold.md`) that guides Claude on which file to read on demand. Key enforced practices include Go 1.26+, snake_case for JSON/protobuf fields, exclusive use of gox/log and gox/config, mandatory timeouts on all external calls, prohibition of mutable global state, and wrapping errors with a package prefix. This reduces boilerplate thinking and linting errors by making Claude act as a real-time code review partner aligned with the team's engineering culture.

Works with✓Claude Code~Codex CLI~Cursor
npx skills add chinayin/gox-claude-plugins

Ask in your favorite AI

Open a new chat with this agent skill pre-loaded.

Documentation

What does Team Go Standards do?

Follow team conventions when writing or designing Go code in this repo. Reply and write code comments in Chinese. Read the detailed standards in references/ on demand per the index below — do not read them all at once, only the file relevant to the current task.

When to read which (index)

What you're doingRead this
Writing any Go code (baseline: versions, logging, errors, concurrency, naming…)references/rules.md ← read first by default
Designing/writing CLI commands under cmd/** (cobra + gox/cli)references/cli.md
Configuration loading (config/**, main.go/config.go, bootstrap/, gox/config)references/config.md
Database migrations / schema (migrations/, dbmigrate/, store.go, *migrate*, *migration*, *schema*, goose)references/db-migrations.md
Project scaffolding (Makefile, .gitignore, .editorconfig, .golangci-lint-version, .github/workflows/*.yml)references/scaffold.md

Core rules (highest priority; details in rules.md)

  • Go 1.26+; JSON/protobuf fields use snake_case.
  • Logging: initialize gox/log at the entry point, use log/slog in business code; never log with fmt.
  • Config: use gox/config exclusively; never use viper directly or bare os.Getenv in business code.
  • All external calls must set a timeout (internal 10s, external 30s).
  • No package-level mutable global state; wrap errors with a package prefix.

These are in-session soft guidance; the final enforcement is the repo's golangci-lint / CI / PR review.

Related Skills