What problem does it solve? Starting or reorganizing a Go project often leads to inconsistent directory structures, misplaced business logic in main packages, and confusion over cmd/, internal/, and pkg/ conventions. This Skill provides opinionated, community-standard guidance so Go projects are structured correctly from the start. ## Core Features & Use Cases - Project Type Layouts: Provides directory templates for CLI tools, libraries, services, and monorepos, with clear rules for cmd/, internal/, and pkg/ placement. - Module & Package Naming: Enforces Go module naming conventions (repo URL matching, lowercase, hyphens) and rejects anti-patterns like src/, utils/, helpers/, and common/. - Workspaces & Testing Layout: Covers go.work setup for multi-module monorepos and test file co-location with testdata/ fixture patterns. - Use Case: When scaffolding a new Go microservice, the Skill asks about architecture and DI preferences first, then generates a right-sized structure with cmd/server/, internal/, a Makefile, .gitignore, and 12-Factor config guidance. ## Quick Start Ask the agent to set up the directory structure for a new Go project, specifying whether it is a CLI tool, library, service, or monorepo.