What problem does it solve? Starting or reorganizing a Go project often leads to inconsistent directory structures, misplaced business logic, and anti-patterns like src/ or utils/ folders. This Skill provides opinionated, convention-based guidance for structuring Go projects correctly from the start. ## Core Features & Use Cases - Architecture-First Workflow: Prompts the developer to choose a software architecture and dependency injection approach before imposing any structure, and right-sizes the layout to project scope. - Directory Layout Guidance: Covers cmd/, internal/, pkg/ conventions, module naming rules, library vs. application layouts, multi-binary cmd/ structures, and Go workspaces (go.work) for monorepos. - Ready-to-Use Templates: Ships a Makefile, .gitignore, and references for testing layout, Cobra+Viper configuration, and 12-Factor App conventions. - Use Case: You are starting a new Go microservice with an API server and a migration tool. The Skill asks about your architecture preference, then scaffolds cmd/server and cmd/migrate entry points, places business logic in internal/, and sets up module naming, linting, and test co-location conventions. ## Quick Start Ask the agent to set up the directory structure for a new Go project and answer its questions about architecture and dependency injection preferences.