원클릭으로
add-web-project
Scaffold a new web-project with folder, README, tests, portfolio data, ADRs, and documentation updates
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
Scaffold a new web-project with folder, README, tests, portfolio data, ADRs, and documentation updates
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
Implement a GitHub issue step by step - ask about the branch, the PR target, and the phases first, then run the work and the review cycle with the review-pr skill. Use whenever the user asks to implement, work on, or execute a GitHub issue.
Create a well-structured GitHub issue with duplicate detection, code verification, and auto-labeling. Use whenever the user asks to create, file, open, log, or raise a GitHub issue, in any wording.
Review a GitHub pull request and post one clear review, with inline comments. The default is collaborative - you analyze deeply, explain the changes in simple terms, ask the user about each finding, and post a review that reflects their decisions. Use when the user asks to review a PR. --no-verdict = programmatic COMMENT-only mode that also writes .reviews/<PR_NUMBER>-review.md (used by implement-issue). --autonomous = unattended review that posts a formal verdict.
Root-cause a bug or a failed fix with evidence, not guesses - brainstorm causes, research them in parallel, confirm one with logs before changing code. Use when a reported behavior needs root-causing or a fix attempt has failed.
Rename or refactor a symbol safely by searching every naming-case variant across code, tests, docs, configs, and JSON. Use when renaming any identifier so no reference is missed.
Author or edit AI-facing instruction files in this repo - AGENTS.md, skills under .claude/skills/, subagents under .claude/agents/, and spawned-agent prompts. Covers the prompt-writing rules for current Claude models, the map-not-manual standard for AGENTS.md, the living-document rule, and when and where to persist a new rule. Use when editing any AI-instruction file.
| name | add-web-project |
| description | Scaffold a new web-project with folder, README, tests, portfolio data, ADRs, and documentation updates |
| argument-hint | <project name or description> |
Scaffold (create all the starting files and folders for) a new self-contained web-project from start to finish. Follow the full checklist in web-projects/AGENTS.md.
This command must be used automatically whenever the user asks to create a new web-project.
If $ARGUMENTS contains a project name or description, use it. Otherwise, ask using AskUserQuestion:
"What web-project do you want to create? Describe the tool, game, or experiment in a sentence or two."
Then ask using AskUserQuestion:
"What should I call it? This becomes the folder name and the URL slug (the short name used in the web address)."
Options:
Store as PROJECT_SLUG and PROJECT_DESCRIPTION.
Delegate to the pattern-scout agent to find how existing web-projects are structured:
Analyze existing web-projects in
web-projects/to find the established patterns for: folder structure, HTML boilerplate, CSS conventions, JS module structure, test file setup, and README format.
Follow the patterns found.
Before creating the portfolio data file, search the existing project files with grep to find all skills and types currently in use:
grep -h '"skills"' data/projects/*.json
grep -h '"types"' data/projects/*.json
Store as EXISTING_SKILLS and EXISTING_TYPES for Step 6.
Create web-projects/<PROJECT_SLUG>/ with:
index.html - HTML boilerplate (the standard starting HTML) following patterns from existing web-projects. Include:
<title> and meta tagstype="module" and deferstyle.css - Minimal starter CSS following existing project conventions.
script.js - Main JS module. Export testable functions separately from DOM logic.
script.test.js - Initial test file with at least one placeholder test:
import { describe, test, expect } from "bun:test";
describe("<PROJECT_SLUG>", () => {
test.todo("first feature");
});
README.md - Project README following existing web-project READMEs:
# <Project Title>
<One-sentence description.>
## Features
- <Planned feature 1>
## How to Run
Open `index.html` in a browser or serve with any HTTP server.
## Tests
```bash
bun test
Do not implement features yet. The scaffold is a starting point for TDD (test-driven development: write the tests first, then the code). Features come after tests.
cd web-projects/<PROJECT_SLUG> && bun test
Confirm the test file loads without errors (the todo test should be pending, not failing).
Create data/projects/<PROJECT_SLUG>.json conforming to data/schemas/project.schema.json.
"$schema": "../schemas/project.schema.json" as the first fielddata/AGENTS.mdEXISTING_SKILLS. Only introduce new tags when no existing tag fitsEXISTING_TYPESdata/AGENTS.md guidance for Vibe Coded projects if applicableAdd the filename to the projects array in data/projects/index.json.
web-projects/AGENTS.mdAdd the project to the "Existing Projects" list with a one-line description.
README.mdAdd the project to the "Web Projects" list.
Delegate to the docs-checker agent to verify all documentation is consistent after the additions.
Ask using AskUserQuestion:
"Does this project involve any architectural decisions worth recording? (e.g., choice of algorithm, physics engine, data structure, rendering approach)"
Options:
Present to the user:
## New Web Project Created: <PROJECT_SLUG>
### Files created
- web-projects/<PROJECT_SLUG>/index.html
- web-projects/<PROJECT_SLUG>/style.css
- web-projects/<PROJECT_SLUG>/script.js
- web-projects/<PROJECT_SLUG>/script.test.js
- web-projects/<PROJECT_SLUG>/README.md
- data/projects/<PROJECT_SLUG>.json
### Files updated
- data/projects/index.json (manifest)
- web-projects/AGENTS.md (existing projects list)
- README.md (web projects list)
### Next steps
The project is scaffolded with TDD ready. Start by writing tests in
`script.test.js`, then implement features to make them pass.