golang-project-layout
golang project layout
What it does
- MUST match your repository URL: github.com/username/project-name
- Use lowercase only: github.com/you/my-app (not MyApp)
- Use hyphens for multi-word: user-auth not userauth or userAuth
- Be semantic: Name should clearly express purpose
- Makefile — build automation. See Makefile template
- .gitignore — git ignore patterns. See .gitignore template
- .golangci.yml — linter config. See the samber/cc-skills-golang@golang-lint skill for the recommended configuration
Derived from the skill's own SKILL.md documentation · extracted 2026-07-23
golang-project-layout FAQ
What does the golang-project-layout skill do?
Provides a guide for setting up Golang project layouts and workspaces. Use when starting a new Go project, organizing an existing codebase, setting up a monorepo with multiple packages, creating CLI tools with multiple main packages, deciding between cmd/internal/pkg directory conventions, or discussing package restructuring, package splits, or module splits. MUST match your repository URL: github.com/username/project-name Use lowercase only: github.com/you/my-app (not MyApp)
How do I install golang-project-layout?
Run: npx -y skills add https://github.com/samber/cc-skills-golang --skill golang-project-layout --agent claude-code — the source lives at github.com/samber/cc-skills-golang.
Maintain golang-project-layout?
Let people know it's listed here — add the badge (live metrics, light/dark aware) or a plain link to your README or docs.
[](https://getagentictools.com/skills/samber-cc-skills-golang-golang-project-layout?ref=badge) npx agentictools info skills/samber-cc-skills-golang-golang-project-layout The second line is the CLI lookup for this page — handy in READMEs and docs.