Verify design document completeness before implementation. Triggers: check, verify, validate design
Verifies design document completeness by detecting architectural components and prompting for missing implementation details.
/plugin marketplace add samdae/archflow/plugin install archflow@archflow-marketplaceThis skill is limited to using the following tools:
profiles/be.mdprofiles/fe.mdGlobal Rules: Adheres to
rules/archflow-rules.md.
Model: Sonnet (analysis task). Opus for complex designs.
Verify design document completeness and identify missing details for implementation.
| Tool | Alternative |
|---|---|
| Read | Request file path from user -> ask for copy-paste |
| AskQuestion | "Please select: 1) OptionA 2) OptionB 3) OptionC" format |
docs/{serviceName}/
├── spec.md # Input (optional)
├── arch-be.md # Input & Output (Backend)
└── arch-fe.md # Input & Output (Frontend)
Scan docs/ for service directories. Auto-resolve arch-be.md, arch-fe.md.
Sonnet is sufficient for this analysis task.
If Service Discovery successful:
If Service Discovery failed:
{"title":"Architecture Review","questions":[{"id":"design_doc","prompt":"Which design document do you want to review?","options":[{"id":"be","label":"Backend (arch-be.md)"},{"id":"fe","label":"Frontend (arch-fe.md)"},{"id":"filepath","label":"I will provide via @filepath"}]}]}
arch-be.md -> Read profiles/be.md from this skill folderarch-fe.md -> Read profiles/fe.md from this skill folderWARNING: MUST read the profile file before proceeding. The profile defines component detection checklist and gap analysis items.
Read docs/{serviceName}/arch-be.md or arch-fe.md. If not found -> Error: "Design document not found. Run /arch first."
Scan the design document for defined components using the profile checklist.
BE (profiles/be.md): Auth, DB, REST API, External API, Async, Real-time, File storage, Caching, K8s/Docker, LLM/AI. FE (profiles/fe.md): Component Structure, State, Routing, Forms, API Integration, Auth UI, UX States, A11y, Responsive, Performance.
For each detected component, check if required details exist (per profile).
BE gaps: token refresh/expiration/session, soft delete/indexes/migration, pagination/rate limiting/versioning, retry/caching/fallback/timeout, error DLQ/idempotency, reconnection/heartbeat, health check/probes/logging, cost tracking/limits/fallback. FE gaps: prop types/composition, state scope/persistence, route guards/404/lazy loading, validation/error display, loading/error/empty states, skeleton/error boundary, keyboard/focus/ARIA, breakpoints/mobile, code splitting/memoization.
For each gap, ask user to fill. Use AskQuestion for choices:
{"title":"Missing Detail: Token Refresh","questions":[{"id":"token_refresh","prompt":"Token refresh logic is not defined. How should expired tokens be handled?","options":[{"id":"refresh_token","label":"Use refresh token (recommended)"},{"id":"re_login","label":"Require re-login"},{"id":"long_expiry","label":"Use long expiry (24h+)"},{"id":"skip","label":"Skip for now (decide during implementation)"}]}]}
For open-ended questions:
"Pagination is not defined for list APIs. What should be the default page size?" Suggested: 20 items per page, max 100
If user selects "Skip for now":
[TBD] in documentUpdate docs/{serviceName}/arch.md with filled gaps.
## 12. Additional Design Details (from Review)
### Authentication Details
- Token expiration: 1 hour
- Refresh flow: POST /api/v1/auth/refresh with refresh_token
### API Details
- Pagination: 20 items default, 100 max
- Rate limiting: 100 requests/minute per user
### Infrastructure Details
- Health check: GET /health (returns 200 OK)
- Graceful shutdown: 30 second timeout
### [TBD] (Skipped)
- Monitoring strategy
- Log aggregation
| {date} | review | check | Design completeness review - {N} items added |
## Architect Review Complete
### Components Detected
- [x] Authentication (Google OAuth + JWT)
- [x] Database (PostgreSQL, 10 tables)
- [x] REST API (15 endpoints)
- [x] Async Processing (Celery)
### Gaps Filled: 8
| Item | Decision |
|------|----------|
| Token refresh | Use refresh token |
| Pagination | 20 items default |
| ... | ... |
### Skipped (TBD): 2
- Monitoring strategy
- Log aggregation
### Document Updated
`docs/{serviceName}/arch-be.md` or `arch-fe.md` - Section 12 added
### Next Step
Run `/build` to start implementation.
Architecture Review Complete - Output:
docs/{serviceName}/arch-be.mdorarch-fe.md(updated) Gaps filled: {N}, Skipped (TBD): {M}. Next Step: Run/build.
| Component | Common Gaps |
|---|---|
| Auth | Token refresh, session timeout, logout flow |
| DB | Soft delete, indexes, cascade rules |
| API | Pagination, rate limit, versioning, validation |
| External API | Retry, cache, timeout, fallback |
| Async | Error handling, DLQ, idempotency |
| Real-time | Timeout, reconnect, heartbeat |
| Infra | Health check, probes, graceful shutdown, logging |
| LLM | Cost tracking, limits, fallback, prompt versioning |
Activates when the user asks about AI prompts, needs prompt templates, wants to search for prompts, or mentions prompts.chat. Use for discovering, retrieving, and improving prompts.
Search, retrieve, and install Agent Skills from the prompts.chat registry using MCP tools. Use when the user asks to find skills, browse skill catalogs, install a skill for Claude, or extend Claude's capabilities with reusable AI agent components.
Creating algorithmic art using p5.js with seeded randomness and interactive parameter exploration. Use this when users request creating art using code, generative art, algorithmic art, flow fields, or particle systems. Create original algorithmic art rather than copying existing artists' work to avoid copyright violations.