← ClaudeAtlas

scaffold-archipy-domainlisted

Scaffold a full ArchiPy domain slice (DTOs, errors, repository adapters, logic, service). Use when adding a new domain to an existing ArchiPy app.
SyntaxArc/archipy-plugin · ★ 2 · AI & Automation · score 75
Install: claude install-skill SyntaxArc/archipy-plugin
# Scaffold ArchiPy Domain ## Before writing files 1. Inspect `pyproject.toml`, the package tree, neighboring domains, DI containers, and existing tests. 2. Infer package name, installed extras, naming, transport, and sync/async style from the repository. 3. Ask only for unresolved choices that materially change the generated slice: - Domain name - Missing infrastructure/extras - Transport when the app does not already establish one (default FastAPI) 4. Preserve existing files. Extend compatible modules; stop and explain conflicts instead of overwriting them. ## Compose — do not fork templates Before generating files, read these plugin skills in full: - `../scaffold-archipy-adapter/SKILL.md` - `../scaffold-archipy-logic/SKILL.md` - `../scaffold-archipy-service/SKILL.md` Apply their constraints and `Verify` sections in order; do not replace them with summaries: 1. **Models** — stubs below, then flesh via `using-archipy-models` rule 2. **scaffold-archipy-adapter** — thin wrapper under `repositories/<domain>/adapters/` + `<domain>_repository.py` 3. **scaffold-archipy-logic** — at least one use-case under `logics/<domain>/` 4. **scaffold-archipy-service** — `services/<domain>/v1/<domain>_service.py` Install extras as needed: `uv add "archipy[<extras>]"`. ## Model stubs (create first) ```text models/ ├── dtos/<domain>/ │ ├── domain/v1/ │ │ ├── <domain>_input_dto.py │ │ └── <domain>_output_dto.py │ └── repository/ │ └── <domain>_command_dto.py ├─