code-organization

Organize codebases by domain concepts with module boundaries and interface definitions.

6|1|Updated Apr 26, 2025
One-click install
npx skills add https://github.com/edobry/minsky --skill code-organization-edobry
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: code-organization
Source: https://github.com/edobry/minsky/tree/main/.claude/skills/code-organization
Command: npx skills add https://github.com/edobry/minsky --skill code-organization-edobry

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

This guidance helps teams organize codebases by domain concepts, enforcing consistent modular boundaries, manageable module sizes, and clear interfaces across large projects.

Core Features & Use Cases

  • Domain-driven structure: separate domain logic, adapters, and command entry points to reduce coupling.
  • Clear module boundaries and size guidance: practical rules for splitting or merging files to maintain readability.
  • Anti-pattern awareness: warns against god modules and vague naming, with refactoring best practices for aligning code with domain layers (Use Case: planning a domain-driven refactor of a legacy app).

Quick Start

Use this guidance when planning a refactor to structure modules by domain, set clear boundaries, and follow the MCP/CLI separation.

Frequently Asked Questions about code-organization

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I structure code by domain to improve maintainability?

Structure code by domain to improve maintainability by separating domain logic, adapters, and command entry points. This reduces coupling and enforces clear boundaries across large projects.

What's the best way to refactor a legacy app into domain-driven modules?

Refactor a legacy app into domain-driven modules by aligning code with domain layers and avoiding god modules. Apply practical rules for splitting or merging files to maintain readability.

When should I split or merge files during a domain-driven refactor?

Split or merge files during a domain-driven refactor when module sizes become unmanageable or boundaries blur. Clear interface definitions and domain-driven structure provide practical guidance for maintaining readability.

How does separating domain logic from adapters reduce coupling?

Separating domain logic from adapters reduces coupling by enforcing clear boundaries between domain concepts and external interfaces. This domain-driven structure ensures command entry points remain decoupled from core logic.

What are common anti-patterns when organizing code by domain concepts?

Common anti-patterns when organizing code by domain concepts include god modules and vague naming. Awareness of these patterns guides refactoring best practices to align code properly with domain layers.

Can I apply domain-driven code organization across multiple large projects?

Apply domain-driven code organization across multiple large projects to enforce consistent modular boundaries, manageable module sizes, and clear interfaces. It scales effectively for teams needing structured domain separation.