Verify implementation readiness before build. Checks external services, infrastructure, business logic, mock data. Triggers: pre-build, prepare, ready check
Verifies implementation readiness by checking external services, infrastructure, business logic, and mock data before code generation.
/plugin marketplace add samdae/archflow/plugin install archflow@archflow-marketplaceThis skill is limited to using the following tools:
profiles/be.mdprofiles/fe.mdNO APPLICATION CODE GENERATION This skill MUST NOT generate any application source code. Forbidden: routers, services, models, components, hooks, pages, controllers, repositories — anything under
src/.Allowed outputs only:
- Updating arch doc with
## Pre-build Preparationsection- Asking user questions to fill gaps
- Dev infrastructure files:
docker-compose.yml,.env.example,scripts/generate_mock.py,DockerfileApplication code is the
/buildskill's responsibility.
Global Rules: Adheres to
rules/archflow-rules.md.
Model: Sonnet (analysis + light generation).
Verify readiness by checking external services, infrastructure, business logic details, and data preparation before /build.
| Tool | Alternative |
|---|---|
| Read | Request file path from user -> ask for copy-paste |
| Shell | Ask user to run command and paste result |
| AskQuestion | "Please select: 1) OptionA 2) OptionB 3) OptionC" format |
projectRoot/
├── docs/{serviceName}/
│ ├── arch-be.md # Input (Backend)
│ └── arch-fe.md # Input (Frontend)
├── .env.example # Output (if missing)
├── docker-compose.yml # Output (if needed)
└── scripts/ # Output (if needed)
Scan docs/ for service directories. Resolve arch-be.md, arch-fe.md.
If Service Discovery successful:
If Service Discovery failed:
{"title":"Pre-build Check","questions":[{"id":"design_doc","prompt":"Which design document to check?","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 check categories and generation templates.
| Section | Extract |
|---|---|
| Tech Stack | third_party list, database, cache, infra |
| Dependencies | Package list with status: approved |
| Implementation Plan | Steps with calculations, scoring, conversions |
| Environment Variables | Listed env vars |
| Project Type | new or existing |
third_party)| Detected Item | Check | Output if Missing |
|---|---|---|
| OAuth (Google, Kakao) | Client ID/Secret in .env? | Add to .env.example |
| LLM (OpenAI, Anthropic) | API Key? Usage limits? | Add to .env.example + note limits |
| Payment (Stripe) | API Key + Webhook secret? | Add to .env.example |
| SMS/Email (Twilio, SendGrid) | API credentials ready? | Add to .env.example |
{"title":"External Service: {service_name}","questions":[{"id":"{service}_ready","prompt":"{service_name} is listed in tech stack. Have you obtained the required credentials?","options":[{"id":"yes","label":"Yes - credentials ready"},{"id":"no","label":"No - need to set up"},{"id":"skip","label":"Skip (will set up later)"}]}]}
database, cache, infra)| Detected Item | Check | Output if Missing |
|---|---|---|
| PostgreSQL/MySQL/MongoDB | docker-compose.yml exists? Connection test? | Generate docker-compose.yml |
| Redis | docker-compose.yml includes redis? | Add redis service |
| Docker mentioned | Dockerfile exists? | Note for manual creation |
Shell Check (if available):
docker ps
test -f docker-compose.yml && echo "exists"
Trigger keywords: calculate, compute, score, rating, convert, transform, average, weighted
{"title":"Business Logic: {feature_name}","questions":[{"id":"{feature}_formula","prompt":"'{feature_name}' requires calculation logic. Is the formula/algorithm defined in the document?","options":[{"id":"defined","label":"Yes - already in document"},{"id":"define_now","label":"No - I'll define it now"},{"id":"skip","label":"Skip (decide during implementation)"}]}]}
If "define_now": ask for formula/algorithm, append to ## Business Logic Definitions in arch doc.
Trigger: mock, seed, fixture, sample data, test data
| Check | Output if Missing |
|---|---|
| Mock data schema defined? | Generate schema template |
| Generation script exists? | Generate scripts/generate_mock.py or .ts |
| Sample data files exist? | Note required files |
project_type: new)BE: Virtual env setup, package manager (pip, uv, poetry). FE: create-next-app/vite options, UI library init (shadcn), font installation.
For each missing item: generate file, ask user, or mark TBD.
See profiles/be.md or profiles/fe.md for file templates.
Add to arch document:
## Pre-build Preparation (from Pre-build Check)
> Added: {date} via `/pre-build` skill
### External Services Status
| Service | Status | Notes |
|---------|--------|-------|
| Google OAuth | Ready | Client ID in .env |
| OpenAI | [TBD] | Need API key |
### Infrastructure Status
| Component | Status | Notes |
|-----------|--------|-------|
| PostgreSQL | Ready | docker-compose.yml |
| Redis | Ready | docker-compose.yml |
### Business Logic Definitions
| Logic | Formula/Algorithm |
|-------|-------------------|
| Average price | (qty1*price1 + qty2*price2) / total_qty |
| Return rate | (current - avg_price) / avg_price * 100 |
### Mock Data Status
| Data | Status | Location |
|------|--------|----------|
| Market data | Ready | data/mock/market.json |
### Generated Files
- `.env.example` - Environment variable template
- `docker-compose.yml` - Local development infrastructure
## Pre-build Check Complete
### Readiness Summary
| Category | Ready | TBD | Blocked |
|----------|-------|-----|---------|
| External Services | 2 | 1 | 0 |
| Infrastructure | 2 | 0 | 0 |
| Business Logic | 3 | 0 | 0 |
| Mock Data | 1 | 0 | 0 |
### Generated Files
- `.env.example` (12 variables)
- `docker-compose.yml` (PostgreSQL, Redis)
- `scripts/generate_mock.py`
### Action Required (TBD)
- [ ] Obtain OpenAI API key
- [ ] Define AI scoring weights
### Next Step
Run `/build` to start implementation.
| Category | Trigger Keywords | Check Items |
|---|---|---|
| OAuth | oauth, google, kakao, social login | Client ID, Secret, Redirect URI |
| LLM | openai, anthropic, llm, gpt, claude | API Key, Model, Usage limits |
| Database | postgresql, mysql, mongodb | Connection, docker-compose, migration |
| Cache | redis, cache, session store | Connection, docker-compose |
| Payment | stripe, payment, billing | API Key, Webhook secret |
| Calculation | calculate, score, average, weighted | Formula definition |
| Mock Data | mock, seed, fixture, sample | Schema, generation script |
| Bootstrap | project_type: new | Init commands, package manager |
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.