From ywc-agent-toolkit
Generates project directory structures tailored to specific tech stacks, architecture patterns, and project requirements. Use for new project initialization or restructuring.
How this skill is triggered — by the user, by Claude, or both
Slash command
/ywc-agent-toolkit:ywc-project-scaffoldThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
**Announce at start:** "I'm using the ywc-project-scaffold skill to design a directory structure tailored to the chosen tech stack."
Announce at start: "I'm using the ywc-project-scaffold skill to design a directory structure tailored to the chosen tech stack."
Generate well-organized project directory structures in Markdown, tailored to specific tech stacks, architecture patterns, and project requirements.
When tempted to skip a step, check this table first:
| Excuse | Reality |
|---|---|
| "Tech stack not specified, assume Node + TypeScript" | Always ask for language + framework + scale. Wrong-stack scaffolds are useless. |
| "Architecture pattern is implicit" | Make it explicit (layered / hexagonal / clean / DDD / etc.). The choice cascades through every directory. |
| "Skip the rationale per directory, just emit the tree" | Each non-obvious directory needs a one-line purpose. Trees without rationale invite misuse. |
| "Generate actual files instead of a Markdown plan" | This skill is for plan only. File generation belongs to ywc-code-gen. |
| "Project scale guessed at 'medium', do not ask" | Scale (small / medium / large / monorepo) changes the structure significantly. Always ask. |
| "Add every conceivable directory for completeness" | Over-scaffolding creates empty noise. Include only directories with a current purpose. |
Violating the letter of these rules is violating the spirit. A scaffold that does not match the user's actual stack becomes immediate technical debt.
/project-scaffold [description]
Examples:
/project-scaffold FastAPI + GraphQL + Clean Architecture, medium scale
/project-scaffold Rails API with gRPC, large scale e-commerce
/project-scaffold NestJS + WebSocket + DDD, small scale chat app
/project-scaffold Go microservice with gRPC and event-driven
Identify the following elements from user input. Use reasonable defaults for unspecified items, but confirm important choices with the user.
| Element | Example | Default |
|---|---|---|
| Language | Python, Ruby, Go, Rust, JavaScript, TypeScript | Required |
| Framework | FastAPI, Rails, NestJS, Next.js, Astro, Gin, Echo | Recommended by language |
| Architecture | Clean Architecture, Hexagonal, DDD, MVC, Layered | Follows Framework conventions |
| Protocol | REST API, GraphQL, gRPC, WebSocket, Message Queue | REST API |
| Scale | small, medium, large | medium |
| Domain | e-commerce, SaaS, chat, CMS, etc. | General-purpose |
Extract the above elements from user input. If there are ambiguous parts, briefly confirm with the user.
Read language-specific Reference files and refer to the structure matching the given Framework and Architecture.
If the Protocol is not REST, also refer to references/protocols.md.
references/python.mdreferences/ruby.mdreferences/javascript.mdreferences/go.mdreferences/rust.mdreferences/protocols.mdCompound condition handling: Combine multiple References. For example, for "FastAPI + GraphQL", refer to both python.md and protocols.md to generate an integrated structure.
Generate Markdown in the following format:
# [Project Name] Directory Structure
> **Stack**: [Language] + [Framework] + [Protocol]
> **Architecture**: [Pattern]
> **Scale**: [small/medium/large]
## Directory Structure
\```
project-root/
├── src/ # Application source code
│ ├── domain/ # Domain layer - business logic
│ │ ├── models/ # Domain entities and value objects
│ │ └── services/ # Domain services (pure business rules)
│ ├── application/ # Application layer - use cases
│ │ ├── commands/ # Write operations (CQRS)
│ │ └── queries/ # Read operations
│ ...
\```
## Key Directory Descriptions
### `src/domain/`
The domain layer is the core of business logic. It contains only pure business
rules without any Framework or external dependencies.
**Reason for this structure**: In [Architecture Pattern], the domain is ...
### `src/infrastructure/`
...
Explain the following for each major Directory:
Provide useful additional information based on the project domain or scale:
pyproject.toml, Gemfile, go.mod)├──, └──, │ characters for tree format# description) next to each Directory/Fileapp/, Go cmd/)Dockerfile, docker-compose, .github/, deployments/, k8s/, etc.). Focus only on Application Source Code structureWill:
Will Not:
/sc:implement for implementation)npx claudepluginhub yongwoon/ywc-agent-toolkitGuides creation, editing, and verification of skills for AI coding agents using test-driven development with subagent scenarios. Use when authoring or debugging skills.