用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
直接命令不会经过审查 Prompt;运行前请先检查来源。
npx skills add https://github.com/duc01226/EasyPlatform --skill scaffold命令会保持在同一行。复制前请横向滚动并检查完整内容。
想先保存到本地?可下载 SkillsMP 当前能够提供的文件。
正在显示 SKILL.md
[Architecture] Use when designing solution architecture across backend, frontend, deployment, monitoring, testing, and code quality.
[Utilities] Use when you need to answer technical and architectural questions.
[Content] Use when you need to brainstorm as a PO/BA — structured ideation for problem-solving, new product creation, or feature enhancement.
基于 SOC 职业分类
| name | scaffold |
| version | 1.1.0 |
| description | [Architecture] Use when scaffolding reusable OOP/SOLID project foundations before feature implementation. |
[BLOCKING] Execute skill steps in declared order. NEVER skip, reorder, or merge steps without explicit user approval. [BLOCKING] Before each step or sub-skill call, update task tracking: set
in_progresswhen step starts, setcompletedwhen step ends. [BLOCKING] Every completed/skipped step MUST include brief evidence or explicit skip reason. [BLOCKING] If Task tools are unavailable, create and maintain an equivalent step-by-step plan tracker with the same status transitions.
Goal: Generate and validate the project's architecture scaffolding — all base classes, interfaces, infrastructure abstractions, and reusable foundation code — BEFORE any feature story implementation begins, producing a copy-ready, OOP/SOLID-compliant architecture foundation with quality-gate tooling that every feature story reuses before implementation starts.
Summary:
workflow-greenfield-init / workflow-big-feature AND when grep finds NO existing base/abstract/infrastructure scaffolding; otherwise SKIP and mark the step completed.AskUserQuestion before generating code./linter-setup then /harness-setup — never hand-configure linters/hooks here./feature-implement until the Verification Gate passes — all 5 foundations verified plus /linter-setup and /harness-setup complete.Purpose: Scaffolded project copy-ready as starter template. All base code, utilities, interfaces, infrastructure services created — best-practice setup, generic functions any feature story reuses.
Key distinction: Architecture infrastructure creation, NOT feature implementation — the foundation layer all stories build upon.
Be skeptical. Apply critical thinking, sequential thinking. Every claim needs traced proof, confidence percentages (Idea should be more than 80%).
ALL conditions must be true to proceed:
workflow-greenfield-init OR workflow-big-feature. If not → SKIP this skill entirely, mark step as completed.abstract class.*Base|Base[A-Z]\w+|Abstract[A-Z]\w+interface I\w+<|IGeneric|IBaseIRepository|IUnitOfWork|IService|IHandlerExtensions|Helpers|Utils|Common (directories or classes)base.*component|base.*service|base.*store|abstract.*component (case-insensitive)AddScoped|AddSingleton|providers:|NgModule|@Injectable/plan + /plan-review in greenfield-init or big-feature workflows/feature-implement begins implementing feature storiesAskUserQuestion to confirm checklist before generating codeAI must self-investigate the chosen tech stack and produce a checklist covering these categories. Names below are illustrative — adapt to match the project's language, framework conventions, and actual needs.
Skip if: Backend-only project, no frontend component. Apply if: Project has ANY frontend.
docs/project-reference/design-system/README.md skeleton with: token naming conventions, component tier classification (Common/Domain-Shared/Page), usage examplesMANDATORY IMPORTANT MUST ATTENTION scaffold ALL code quality enforcement tools as part of project infrastructure — code that passes without quality gates is technical debt from day one.
.editorconfig for cross-IDE consistency (indentation, encoding, line endings)MANDATORY MUST ATTENTION delegate ALL computational sensor setup to /linter-setup:
/linter-setup handles: tool research → install → configure → pre-commit hooks → CI gates/harness-setup handles: full harness inventory (feedforward guides + all feedback types)WHY: Code quality tooling is part of the project's outer agent harness. A checklist of installs is not a harness. A harness is a system of guides and sensors where each control fires at the right lifecycle stage and produces signals the agent can consume.
After scaffold, invoke (in order):
/linter-setup — computational feedback sensors (deterministic, fast, always-on)/harness-setup — full harness inventory (all feedforward guides + all feedback sensors)Do NOT proceed to /feature-implement until both complete. (/scaffold verification gate enforces this)
Scaffold Production Readiness — See
<!-- SYNC:scaffold-production-readiness -->block above for full inline protocol.
Every scaffolded project MUST ATTENTION include these 5 foundations. AI must detect the tech stack from the plan/architecture report and present 2-3 options per concern via AskUserQuestion.
Handled by /linter-setup skill — do NOT duplicate here.
Verify completion: check that .editorconfig, linter config, and pre-commit hook config files exist.
If missing → block scaffold completion, invoke /linter-setup.
If an architecture report exists (from /architecture-design), read the "Scaffold Handoff — Tool Choices" table and use those selections instead of re-asking the user.
Anti-patterns to prevent:
The checklists above are templates. Before scaffolding:
AskUserQuestion — Confirm final checklist with user before generating codeAfter scaffolding is complete:
Run ALL verification checklists from the production readiness protocol:
/linter-setup completed (linter + formatter + pre-commit + CI gate configured)/harness-setup completed (harness-inventory.md produced, feedforward guides in place)BLOCK proceeding to /feature-implement if ANY verification item fails. Fix issues first, then re-verify.
MANDATORY IMPORTANT MUST ATTENTION — NO EXCEPTIONS after completing this skill, you MUST ATTENTION use AskUserQuestion to present these options. Do NOT skip because the task seems "simple" or "obvious" — the user decides:
[IMPORTANT] Use
TaskCreateto break ALL work into small tasks BEFORE starting — including tasks for each file read. This prevents context loss from long files. For simple tasks, AI MUST ATTENTION ask user whether to skip.
Evidence Gate: MANDATORY IMPORTANT MUST ATTENTION — every claim, finding, and recommendation requires
file:lineproof or traced evidence with confidence percentage (>80% to act, <80% must verify first).
Nested Task Expansion Contract — For workflow-step invocation, the
[Workflow] ...row is only a parent container; the child skill still creates visible phase tasks.
- Call
TaskListfirst. If a matching active parent workflow row exists, setnested=trueand recordparentTaskId; otherwise run standalone.- Create one task per declared phase before phase work. When nested, prefix subjects
[N.M] $skill-name — phase.- When nested, link the parent with
TaskUpdate(parentTaskId, addBlockedBy: [childIds]).- Orchestrators must pre-expand a child skill's phase list and link the workflow row before invoking that child skill or sub-agent.
- Mark exactly one child
in_progressbefore work andcompletedimmediately after evidence is written.- Complete the parent only after all child tasks are completed or explicitly cancelled with reason.
Blocked until:
TaskListdone, child phases created, parent linked when nested, first child markedin_progress.
Project Reference Docs Gate — Run after task-tracking bootstrap and before target/source file reads, grep, edits, or analysis. Project docs override generic framework assumptions.
- Identify scope: file types, domain area, and operation.
- Required docs by trigger: always
docs/project-reference/lessons.md; doc lookupdocs-index-reference.md; reviewcode-review-rules.md; backend/CQRS/APIbackend-patterns-reference.md; domain/entitydomain-entities-reference.md; frontend/UIfrontend-patterns-reference.md; styles/designscss-styling-guide.md+design-system/design-system-canonical.md; integration testsintegration-test-reference.md; E2Ee2e-test-reference.md; feature docs/specsfeature-spec-reference.md+spec-system-reference.md+spec-principles.md; behavior/public-contract/spec-test-code syncworkflow-spec-test-code-cycle-reference.md; derived spec index/ERD/reimplementation guidesspec-system-reference.md+ source Feature Specs underdocs/specs/; architecture/new areaproject-structure-reference.md.- Read every required doc. If
docs/project-config.json, the docs index,lessons.md,CLAUDE.md,AGENTS.md, or any task-required reference doc is missing or stale, auto-run/project-initor the narrow lower-level route (/project-config,/docs-init,/scan-all,/scan --target=<key>,/claude-md-init) before ordinary project-specific work. If Codex mirrors orAGENTS.mdare missing/stale, ask the user to run/sync-codex; do not auto-run it.- Before target work, state:
Reference docs read: ... | Not applicable: ....Ready when: scope evaluated, required docs checked/read or setup route completed,
lessons.mdconfirmed, citation emitted.
Critical Thinking Mindset — Apply critical thinking, sequential thinking. Every claim needs traced proof, confidence >80% to act. Anti-hallucination: Never present guess as fact — cite sources for every claim, admit uncertainty freely, self-check output for errors, cross-reference independently, stay skeptical of own confidence — certainty without evidence root of all hallucination.
Understand Code First — HARD-GATE: Do NOT write, plan, or fix until you READ existing code.
- Search 3+ similar patterns (
grep/glob) — citefile:lineevidence- Read existing files in target area — understand structure, base classes, conventions
- Run
python .claude/scripts/code_graph trace <file> --direction both --jsonwhen.code-graph/graph.dbexists- Map dependencies via
connectionsorcallers_of— know what depends on your target- Write investigation to
.ai/workspace/analysis/for non-trivial tasks (3+ files)- Re-read analysis file before implementing — never work from memory alone. — why: long context drifts from the file; the file is ground truth
- NEVER invent new patterns when existing ones work — match exactly or document deviation. — why: divergent patterns fragment the codebase and slow every future reader
BLOCKED until:
- [ ]Read target files- [ ]Grep 3+ patterns- [ ]Graph trace (if graph.db exists)- [ ]Assumptions verified with evidence
Scaffold Production Readiness — Every scaffolded project MUST ATTENTION include 5 foundations:
- Code Quality Tooling — linting, formatting, pre-commit hooks, CI gates. Specific tool choices →
docs/project-reference/orproject-config.json.- Error Handling Foundation — HTTP interceptor, error classification (4xx/5xx taxonomy), user notification, global uncaught handler.
- Loading State Management — counter-based tracker (not boolean toggle), skip-token for background requests, 300ms flicker guard.
- Docker Development Environment — compose profiles (
dev/test/infra), multi-stage Dockerfile, health checks on all services, non-root production user.- Integration Points — document each outbound boundary; configure retry + circuit breaker + timeout; integration tests for happy path and failure path.
BLOCK
/feature-implementif any foundation is unchecked. Present 2-3 options per concern viaAskUserQuestionbefore implementing.
Harness Engineering — An outer agent harness has two jobs: raise first-attempt quality + provide self-correction feedback loops before human review.
Controls split:
Axis Type Examples Frequency Feedforward Computational .editorconfig, strict compiler flags, enforced module boundariesAlways-on Feedforward Inferential CLAUDE.mdconventions, skill prompts, architecture notes, pattern catalogsAlways-on Feedback Computational Linters, type checks, pre-commit hooks, ArchUnit/arch-fitness tests, mutation-score gate, CI gates Pre-commit → CI Feedback Inferential /code-reviewskill,/production-readiness-review,/security-review, LLM-as-judge passesPost-commit → CI Test-strength sensor — gate on mutation score, NOT line coverage. Line coverage is a DIAGNOSTIC only: low coverage is a useful NEGATIVE signal (something is untested); high coverage is NOT evidence of quality (tests can execute lines without asserting intent) — NEVER fail a build on a line-coverage %. The real test-strength metric is mutation score (inject faults into changed code; surviving mutant = a missing/weak assertion = write the killing test); gate the build on it where a mutation tool exists. Add property coverage as a second sensor — each [HARD] §4 rule / §5 invariant guarded by ≥1 property/metamorphic test. The property tests themselves are REQUIRED for invariant-owning behaviors (
spec [mode=tests]+integration-testforce them, not opt-in); what is optional is only wiring property coverage as an automated CI sensor on top. Keep behavior/change-coverage (does each behavior-changing file have a test that asserts the changed outcome) — that notion is meaningful and stays.Three harness types:
- Maintainability — Complexity, duplication, line-coverage (diagnostic only — never a gate), style. Easiest: rich deterministic tooling.
- Architecture fitness — Module boundaries, dependency direction, performance budgets, observability conventions.
- Behaviour — Functional correctness. Hardest: gate on mutation score + property coverage; line coverage stays a diagnostic.
AI Mistake Prevention — Failure modes to avoid on every task:
Re-read files after context changes. Context compaction, resume, or long-running work can make memory stale; verify current files before acting. Verify generated content against source evidence. AI hallucinates APIs, names, claims, and document facts. Check the relevant source before documenting or referencing. Check downstream references before deleting or renaming. Removing an artifact can stale docs, generated mirrors, configs, and callers; map references first. Trace the full impact chain after edits. Changing a definition can miss derived outputs and consumers. Follow the affected chain before declaring done. Verify ALL affected outputs, not just the first. One green check is not all green checks; validate every output surface the change can affect. Assume existing values are intentional — ask WHY before changing. Before changing a constant, limit, flag, wording, or pattern, read nearby context and history. Surface ambiguity before acting — don't pick silently. Multiple valid interpretations require an explicit question or stated assumption with risk. Keep shared guidance role-relevant. Universal guidance must help every receiving skill or agent; code-specific obligations belong only in code-specific protocols.
IMPORTANT MUST ATTENTION search 3+ existing patterns and read code BEFORE any modification. Run graph trace when graph.db exists.
file:line evidence for every claim. Confidence >80% to act, <60% = do NOT recommend.
IMPORTANT MUST ATTENTION verify all 5 production-readiness foundations (code quality, error handling, loading state, Docker, integration points) before marking scaffold complete.
MUST ATTENTION apply critical + sequential thinking — every claim needs appropriate traced evidence (file:line for repo/code claims; source URL or artifact section for research, product, content, and docs claims); confidence >80% to act, <60% DO NOT recommend. Anti-hallucination: never present guess as fact, admit uncertainty freely, cross-reference independently, stay skeptical of own confidence.
MUST ATTENTION apply AI mistake prevention — verify generated content against evidence, trace downstream references before deleting or renaming, verify all affected outputs, re-read files after context loss, and surface ambiguity before acting.
Reference docs read: ....lessons.md; project conventions override generic defaults./project-init or the narrow lower-level route before ordinary project-specific work.[N.M] $skill-name — phase prefixes and one-in_progress discipline.IMPORTANT MUST ATTENTION follow declared step order for this skill; NEVER skip, reorder, or merge steps without explicit user approval
IMPORTANT MUST ATTENTION for every step/sub-skill call: set in_progress before execution, set completed after execution
IMPORTANT MUST ATTENTION every skipped step MUST include explicit reason; every completed step MUST include concise evidence
IMPORTANT MUST ATTENTION if Task tools unavailable, maintain an equivalent step-by-step plan tracker with synchronized statuses
IMPORTANT MUST ATTENTION Goal: Produce a copy-ready, OOP/SOLID-compliant architecture foundation — base classes, infrastructure abstractions, and quality-gate tooling — that every feature story reuses before implementation starts.
MUST ATTENTION — Protocols in force (concise digest of the SYNC/shared blocks this skill carries):
lessons.md.MANDATORY IMPORTANT MUST ATTENTION check Activation Guards FIRST — proceed ONLY in workflow-greenfield-init/workflow-big-feature AND when grep finds NO existing base/abstract/infrastructure scaffolding; otherwise SKIP and mark step completed — why: re-scaffolding an established project duplicates foundations and corrupts existing abstractions.
MANDATORY IMPORTANT MUST ATTENTION grep 3+ existing base/abstract/infra patterns (abstract class.*Base, interface I\w+<, IRepository, base.*component, DI registration) and cite file:line BEFORE generating any scaffolding — existing scaffolding found = SKIP — why: scaffolding over real foundations is the failure the Activation Guards exist to prevent.
MANDATORY IMPORTANT MUST ATTENTION BLOCK /feature-implement until the Verification Gate passes — all 5 production-readiness foundations verified AND both /linter-setup and /harness-setup complete — why: code shipped without quality gates is technical debt from day one.
MANDATORY IMPORTANT MUST ATTENTION delegate ALL sensor setup to /linter-setup then /harness-setup — NEVER hand-configure linters/formatters/pre-commit hooks in this skill — why: a checklist of installs is not a harness; the harness skills wire each control to its lifecycle stage.
MANDATORY IMPORTANT MUST ATTENTION enforce OOP/SOLID on EVERY base class (SRP per concern, depend on abstractions, small focused interfaces, no unused methods subclasses must override) — why: a god/concrete base class propagates its design flaw into every feature story that inherits it.
MANDATORY IMPORTANT MUST ATTENTION the checklists are TEMPLATES — self-investigate the chosen tech stack, adapt naming to framework conventions, skip irrelevant items, and confirm the final checklist via AskUserQuestion before generating code — NEVER auto-decide scope — why: scaffolding the wrong stack's idioms forces a costly rewrite before any feature lands.
MANDATORY IMPORTANT MUST ATTENTION evaluate fit before copying a nearby pattern — closest example ≠ matching preconditions; verify the new context shares the same base classes, scope, and lifetime — why: a foundation lifted from a mismatched context fails silently.
MANDATORY IMPORTANT MUST ATTENTION gate the build on mutation score, NOT a line-coverage % — line coverage is a DIAGNOSTIC only (low = useful untested signal, high ≠ quality) — why: tests can execute lines without asserting intent, so a coverage gate rewards hollow tests.
MANDATORY IMPORTANT MUST ATTENTION cite proof + confidence % for EVERY claim (>80% to act, <60% DO NOT recommend) — NEVER present a guess as fact — why: speculation without evidence is the root of hallucinated foundations.
break work into small todo tasks using BEFORE starting, mark one , mark immediately after evidence lands, and add a final review todo — why: external task state survives context compaction; memory does not.
after scaffold, present vs vs skip via — the user decides; do NOT skip because it "seems obvious" — why: the user owns the handoff decision.
Anti-Rationalization (Closing — reject these excuses):
| Excuse the model tells itself | Reality |
|---|---|
| "It's a new feature, just scaffold it" | Check Activation Guards first — wrong workflow OR existing scaffolding = SKIP and mark completed. |
| "Already searched for base classes" | Show file:line grep evidence for all 6 guard patterns. No proof = no search. |
| "I'll just configure the linter inline, it's quick" | NEVER hand-configure sensors — delegate to /linter-setup then /harness-setup. Installs ≠ harness. |
| "Coverage is high, the foundation is well-tested" | Line coverage is a diagnostic, not a gate. Gate on mutation score; high coverage ≠ asserted intent. |
| "The stack is obvious, skip the AskUserQuestion" | Checklists are templates — confirm the adapted final checklist with the user before generating code. |
| "Found a nearby base class, just copy it" | Evaluate fit first — same base classes/scope/lifetime? Closest ≠ matching. Verify before reusing. |
| "Scaffold's done, jump straight to /feature-implement" | BLOCKED until the Verification Gate passes — all 5 foundations + /linter-setup + /harness-setup. |
IMPORTANT MUST ATTENTION check Activation Guards FIRST (SKIP if existing scaffolding or wrong workflow) · BLOCK /feature-implement until the Verification Gate passes · cite file:line + confidence >80% for every claim.
[TASK-PLANNING] Before acting, analyze task scope and systematically break it into small todo tasks and sub-tasks using TaskCreate.
Keep quality left: pre-commit sensors fire first (cheap), CI sensors fire second, post-review last (expensive).
Research-driven: Never hardcode tool choices. Detect tech stack → research ecosystem → present top 2-3 options → user decides. Enforce strictest defaults; loosen only with explicit approval.
Harnessability signals: Strong typing, explicit module boundaries, opinionated frameworks = easier to harness. Treat these as greenfield architectural choices, not just style preferences.
file:lineTaskCreatein_progresscompleted/feature-implement/workflow-review-changesAskUserQuestion