Agent SkillsAjayIrkal23/agentic-mercy-10x › scaffold-standards

scaffold-standards

GitHub

定义后端或全栈领域、路由及CRUD功能的标准化骨架结构。涵盖Node/TS与Python/FastAPI的文件布局、命名规范及错误处理机制,确保代码一致性,适用于新建模块前的初始化阶段。

skills/scaffold-standards/SKILL.md AjayIrkal23/agentic-mercy-10x

Trigger Scenarios

创建新的后端领域 添加路由、控制器、服务或模式流程 脚手架化新的全栈CRUD或列表功能 在实现开始前定义最小骨架

Install

npx skills add AjayIrkal23/agentic-mercy-10x --skill scaffold-standards -g -y
More Options

Use without installing

npx skills use AjayIrkal23/agentic-mercy-10x@scaffold-standards

指定 Agent (Claude Code)

npx skills add AjayIrkal23/agentic-mercy-10x --skill scaffold-standards -a claude-code -g -y

安装 repo 全部 skill

npx skills add AjayIrkal23/agentic-mercy-10x --all -g -y

预览 repo 内 skill

npx skills add AjayIrkal23/agentic-mercy-10x --list

SKILL.md

Frontmatter
{
    "name": "scaffold-standards",
    "schema": 1,
    "category": "backend",
    "surfaces": [
        "backend"
    ],
    "triggers": {
        "paths": [
            "\/router\/",
            "\/routes\/",
            "route.ts",
            "route.tsx",
            "routes.ts"
        ],
        "intents": [
            "backend"
        ],
        "keywords": [
            "backend",
            "crud",
            "domain",
            "entry",
            "feature",
            "file",
            "frontend",
            "full-stack",
            "implementation",
            "list",
            "minimum",
            "plan",
            "planning",
            "points",
            "route\/controller\/service\/schema",
            "scaffold",
            "scaffolding",
            "skeleton",
            "skeletons",
            "standard",
            "standards",
            "structure",
            "tree"
        ]
    },
    "platforms": [
        "linux",
        "darwin",
        "windows"
    ],
    "token-cost": 1908,
    "description": "ALWAYS invoke when scaffolding a new backend or full-stack domain, a route\/controller\/service\/schema skeleton, or a standard list and CRUD feature structure.",
    "disable-model-invocation": false
}

Scaffold Standards

Overview

This skill defines the standard skeleton for new domains and features.

Use it when consistency of file layout, naming, and build order matters more than one-off speed.

Use When

  • Creating a new backend domain.
  • Adding a new route/controller/service/schema flow.
  • Scaffolding a new full-stack CRUD or list feature.
  • Defining the minimum skeleton before implementation starts.

Backend Skeleton

Pick the block matching the repo's actual stack — confirmed against 3 reference codebases (site-sync-vista = Fastify/TS, MARKETING REPORT AUTOMATION = FastAPI/Python, GO_UDP/UDP_PLATFORM = Go/chi). Don't force one stack's file-naming onto another.

Node/TypeScript (Fastify/Express style)

/routes/{domain}.routes.ts
/controller/{domain}/{verb}-{domain}.controller.ts
/schemas/{domain}/{verb}-{domain}.schema.ts
/schemas/{domain}/{domain}-response.schema.ts
/models/{domain}.model.ts
/models/schema/{shared-subschema}.schema.ts
/services/{domain}/{verb}{Domain}.ts
/utils/{domain}/{helper}.ts
/types/{domain}/{name}.ts
  • Controller folder is singular controller/ in some repos, plural controllers/ in others — check the existing repo before scaffolding, don't assume.
  • Controller and schema files are kebab-case, verb-first: create-camera-type.controller.ts, list-expenses.schema.ts.
  • Service files are either bare verb+noun (createCameraType.ts) or explicitly suffixed (createProjectMapFeature.service.ts) — match the existing repo's convention within that domain, don't mix both inside one domain folder.
  • Model files are kebab-case, one per collection ({resource}.model.ts); shared embedded sub-schemas live in models/schema/.
  • Centralize errors in one utils/errors.ts (AppError class + isAppError() guard) consumed by a single app-level setErrorHandler — not per-route try/catch.
  • If no real queue library is wired (check for actual consumers, not just an installed dependency), background jobs are polling loops under /jobs/{job-name}.job.ts guarded by a DB-backed distributed lock (acquireLock/releaseLock), not BullMQ workers.

Python (FastAPI)

/app/routes/{domain}.py              # APIRouter, registered into routes/__init__.py's api_router
/app/controllers/{domain}.py         # thin handlers: {verb}_{domain}_controller
/app/controllers/{domain}_{variant}.py   # config/admin variants get a suffixed sibling file, not a subfolder
/app/schemas/{domain}.py             # pydantic request/query DTOs + Literal[...] sort/filter whitelists
/app/schemas/{domain}_record.py      # response ("Public") DTO, kept separate from the request DTO
/app/models/{domain}.py              # Beanie/ORM Document
/app/services/{domain}/{verb}.py     # one file per verb: list.py, create.py, update.py, delete.py, export.py
/app/services/cron/{domain}.py       # thin scheduled-job entrypoint only; real logic stays in services/{domain}/
/app/utils/{domain}/{helper}.py
/app/core/{errors,responses,exception_handlers,scheduler}.py   # cross-cutting infra, not per-domain
  • One file per domain per layer (not one-file-per-action) — the folder name (routes/, controllers/, schemas/) already disambiguates the layer, so files are just {domain}.py, snake_case.
  • Compound/config domains get a suffixed sibling file (credit_report_config.py), not a nested subfolder.
  • Response DTOs suffixed Public; query/sort DTOs suffixed Query/SortBy.
  • Centralized error taxonomy: core/errors.py (AppError base with status_code/code, subclassed per error kind) + core/exception_handlers.py mapping to the shared envelope in core/responses.py.
  • Scheduling (APScheduler) lives in core/scheduler.py as a start/shutdown-managed singleton with string job-id constants — no top-level jobs//workers/ folder; services/cron/{domain}.py is a thin entrypoint that delegates to the domain's own services/{domain}/poller.py/ingest.py.

Go (chi or similar router)

/internal/routes/{domain}/register.go          # func Register(router chi.Router, service ...)
/internal/controllers/{domain}/{verb}.controller.go
/internal/controllers/{domain}/service_interfaces.go   # controller-owned, narrow interface onto the service
/internal/services/{domain}/{verb}.service.go
/internal/services/{domain}/store.go           # persistence — distinguished from business logic by filename, not folder
/internal/schemas/{domain}/{verb}.schema.go     # wire-level request/response structs
/internal/types/{domain}/{verb}_params.go       # internal params passed controller -> service
/internal/models/{resource}.go                  # DB-facing struct (GORM/etc.)
  • Package name = folder name, all-lowercase-no-separator (locoeventpacket, superadmin) — applied consistently across every layer folder for the same domain.
  • Three-tier data-shape split: schemas (wire-level request/response) -> types (internal params) -> models (persistence) — don't collapse these into one struct.
  • One routes/{domain}/register.go per domain exposing a single Register(router chi.Router, ...); a top-level routes/routes.go aggregates every domain's Register call under auth-scoped router.Group blocks.
  • Centralized error/envelope contracts live in internal/contracts/ (errors.go -> DomainError + NormalizeError; envelope.go -> SuccessResponse/ErrorResponse + WriteSuccess/WriteJSON) — not redefined per domain.
  • Tests are standard _test.go, colocated in the same package as the code under test — never a parallel tests/ tree.
  • A protocol-specific ingestion/listener layer (UDP/TCP/etc.), if the service has one, stays fully separate from the controllers/services/routes HTTP layers, organized by pipeline stage (decode -> process -> sink), and is wired from internal/app/, not from any domain's routes/.

Keep reusable backend types in the stack's types layer (/types/{domain}/{name}.ts, app/schemas/{domain}.py, or internal/types/{domain}/*.go) instead of declaring them inline inside config, routes, controllers, services, or queue modules.

If the repo already uses controller-mirror feature folders, scaffold into that feature-folder pattern instead of forcing flat per-action service files.

Use the query helper and mapper files when the domain needs list/query logic or DTO conversion.

Standard Action Set

Where applicable:

  • list
  • getById
  • create
  • update
  • delete

Contract Expectations

  • Success responses follow the standard envelope.
  • List features use paginated backend-driven query behavior.
  • Errors follow the shared error envelope.

Suggested Build Order

  1. Lock the contract.
  2. Add schema.
  3. Add service.
  4. Add controller and route.
  5. Add helpers or mappers if needed.
  6. Add frontend integration if the feature is full-stack.

Naming Rules

  • TypeScript/Node: folders kebab-case, identifiers camelCase/PascalCase, controller/schema files verb-first kebab-case.
  • Python: folders and files snake_case, one file per domain per layer.
  • Go: package/folder names lowercase-no-separator (no underscore or hyphen); files snake_case with a .controller.go/.service.go/.schema.go suffix.
  • Whichever stack: keep route/controller/service naming aligned across the stack (same domain name in every layer).

Combine With

  • api-contract-standards for envelope and compatibility rules.
  • service-layer-standards for boundary discipline.
  • backend-api-standards for list/query semantics.

References

  • Use references/full-guide.md for the longer strict version with full-stack scaffolding details and extended examples.

Version History

  • 581d130 Current 2026-07-19 09:14

Same Skill Collection

attic/2026-07-09/skills-pre-update/taste-skill/SKILL.md
attic/2026-07-09/skills-pre-update/ui-ux-pro-max/SKILL.md
skills/agent-development/SKILL.md
skills/api-and-interface-design/SKILL.md
skills/api-contract-standards/SKILL.md
skills/architect-system-design/SKILL.md
skills/backend-api-standards/SKILL.md
skills/backend-code-review/SKILL.md
skills/backend-error-handling/SKILL.md
skills/backend-performance-standards/SKILL.md
skills/backend-standards-always-follow/SKILL.md
skills/canary-playwright/SKILL.md
skills/caveman/SKILL.md
skills/ci-cd-and-automation/SKILL.md
skills/code-execution-standard/SKILL.md
skills/code-review-and-quality/SKILL.md
skills/code-simplification/SKILL.md
skills/codebase-design/SKILL.md
skills/codebase-start-point-guide/SKILL.md
skills/command-development/SKILL.md
skills/composition-patterns/SKILL.md
skills/context-engineering/SKILL.md
skills/dead-code-and-change-audit/SKILL.md
skills/debug-investigation/SKILL.md
skills/debugging-and-error-recovery/SKILL.md
skills/deprecation-and-migration/SKILL.md
skills/design-extract/SKILL.md
skills/design-review-playwright/SKILL.md
skills/diagnose/SKILL.md
skills/documentation-and-adrs/SKILL.md
skills/domain-modeling/SKILL.md
skills/domain-scaffold-patterns/SKILL.md
skills/doubt-driven-development/SKILL.md
skills/dox-doc-tree/SKILL.md
skills/eval-harness/SKILL.md
skills/fix-lint-format/SKILL.md
skills/forensic-change-coupling/SKILL.md
skills/forensic-complexity-trends/SKILL.md
skills/forensic-debt-quantification/SKILL.md
skills/forensic-hotspot-finder/SKILL.md
skills/frontend-api-standards/SKILL.md
skills/frontend-code-review/SKILL.md
skills/frontend-response-handling/SKILL.md
skills/frontend-server-data-patterns/SKILL.md
skills/frontend-standards-always-follow/SKILL.md
skills/frontend-structure-standards/SKILL.md
skills/frontend-ui-engineering/SKILL.md
skills/git-workflow-and-versioning/SKILL.md
skills/golang-patterns/SKILL.md
skills/golang-testing/SKILL.md
skills/graphify/SKILL.md
skills/gsd-add-tests/SKILL.md
skills/gsd-ai-integration-phase/SKILL.md
skills/gsd-audit-fix/SKILL.md
skills/gsd-audit-milestone/SKILL.md
skills/gsd-audit-uat/SKILL.md
skills/gsd-autonomous/SKILL.md
skills/gsd-capture/SKILL.md
skills/gsd-cleanup/SKILL.md
skills/gsd-code-review/SKILL.md
skills/gsd-complete-milestone/SKILL.md
skills/gsd-config/SKILL.md
skills/gsd-debug/SKILL.md
skills/gsd-discuss-phase/SKILL.md
skills/gsd-docs-update/SKILL.md
skills/gsd-eval-review/SKILL.md
skills/gsd-execute-phase/SKILL.md
skills/gsd-explore/SKILL.md
skills/gsd-extract-learnings/SKILL.md
skills/gsd-fast/SKILL.md
skills/gsd-forensics/SKILL.md
skills/gsd-graphify/SKILL.md
skills/gsd-health/SKILL.md
skills/gsd-import/SKILL.md
skills/gsd-inbox/SKILL.md
skills/gsd-ingest-docs/SKILL.md
skills/gsd-manager/SKILL.md
skills/gsd-map-codebase/SKILL.md
skills/gsd-milestone-summary/SKILL.md
skills/gsd-mvp-phase/SKILL.md
skills/gsd-new-milestone/SKILL.md
skills/gsd-new-project/SKILL.md
skills/gsd-ns-context/SKILL.md
skills/gsd-ns-ideate/SKILL.md
skills/gsd-ns-manage/SKILL.md
skills/gsd-ns-review/SKILL.md
skills/gsd-ns-workflow/SKILL.md
skills/gsd-pause-work/SKILL.md
skills/gsd-phase/SKILL.md
skills/gsd-plan-phase/SKILL.md
skills/gsd-plan-review-convergence/SKILL.md
skills/gsd-pr-branch/SKILL.md
skills/gsd-profile-user/SKILL.md
skills/gsd-progress/SKILL.md
skills/gsd-quick/SKILL.md
skills/gsd-resume-work/SKILL.md
skills/gsd-review-backlog/SKILL.md
skills/gsd-review/SKILL.md
skills/gsd-secure-phase/SKILL.md
skills/gsd-ship/SKILL.md
skills/gsd-sketch/SKILL.md
skills/gsd-spec-phase/SKILL.md
skills/gsd-spike/SKILL.md
skills/gsd-stats/SKILL.md
skills/gsd-surface/SKILL.md
skills/gsd-thread/SKILL.md
skills/gsd-ui-phase/SKILL.md
skills/gsd-ui-review/SKILL.md
skills/gsd-ultraplan-phase/SKILL.md
skills/gsd-undo/SKILL.md
skills/gsd-update/SKILL.md
skills/gsd-validate-phase/SKILL.md
skills/gsd-verify-work/SKILL.md
skills/gsd-workspace/SKILL.md
skills/gsd-workstreams/SKILL.md
skills/huashu-design/SKILL.md
skills/improve-codebase-architecture/SKILL.md
skills/incremental-implementation/SKILL.md
skills/iterative-retrieval/SKILL.md
skills/lean-ctx/SKILL.md
skills/mcp-builder/SKILL.md
skills/mcp-usage-standards/SKILL.md
skills/mmx-cli/SKILL.md
skills/owasp-security/SKILL.md
skills/pdf/SKILL.md
skills/performance-optimization/SKILL.md
skills/plan-exec-stack-guide/SKILL.md
skills/plan-mode-gate/SKILL.md
skills/planning-and-task-breakdown/SKILL.md
skills/postgres-patterns/SKILL.md
skills/project-reference-linkage/SKILL.md
skills/project-structure-map/SKILL.md
skills/qa-playwright/SKILL.md
skills/react-hooks-patterns/SKILL.md
skills/resolving-merge-conflicts/SKILL.md
skills/santa-review/SKILL.md
skills/security-and-hardening/SKILL.md
skills/service-layer-standards/SKILL.md
skills/shadcn/SKILL.md
skills/shipping-and-launch/SKILL.md
skills/skill-linkage-story/SKILL.md
skills/source-driven-development/SKILL.md
skills/spec-driven-development/SKILL.md
skills/strategic-compact/SKILL.md
skills/tailwind-design-system/SKILL.md
skills/taste-skill/SKILL.md
skills/tdd/SKILL.md
skills/tech-debt-audit/SKILL.md
skills/test-driven-development/SKILL.md
skills/tool-and-doc-selection/SKILL.md
skills/using-agent-skills/SKILL.md
skills/verification-loop/SKILL.md
skills/vite-react-best-practices/SKILL.md
skills/web-design-guidelines/SKILL.md
skills/webapp-testing/SKILL.md
skills/workflow-orchestrator/SKILL.md
skills/zoom-out/SKILL.md
attic/2026-07-09/skills-pre-update/huashu-design/SKILL.md
attic/2026-07-09/skills-pre-update/impeccable/SKILL.md
skills/browser-testing-with-devtools/SKILL.md
skills/codebase-intel-first/SKILL.md
skills/docx/SKILL.md
skills/find-skills/SKILL.md
skills/gsd-help/SKILL.md
skills/gsd-ns-project/SKILL.md
skills/gsd-settings/SKILL.md
skills/higgsfield-generate/SKILL.md
skills/higgsfield-marketplace-cards/SKILL.md
skills/higgsfield-product-photoshoot/SKILL.md
skills/higgsfield-soul-id/SKILL.md
skills/higgsfield-websites/SKILL.md
skills/impeccable/SKILL.md
skills/jcodemunch-token-saver/SKILL.md
skills/pptx/SKILL.md
skills/tdd-auto-init/SKILL.md
skills/ui-ux-pro-max/SKILL.md
skills/update-docs/SKILL.md
skills/xlsx/SKILL.md
skills/autoplan/SKILL.md
skills/benchmark/SKILL.md
skills/browse/SKILL.md
skills/careful/SKILL.md
skills/connect-chrome/SKILL.md
skills/context-restore/SKILL.md
skills/design-consultation/SKILL.md
skills/design-html/SKILL.md
skills/design-review/SKILL.md
skills/design-shotgun/SKILL.md
skills/diagram/SKILL.md
skills/document-generate/SKILL.md
skills/freeze/SKILL.md
skills/guard/SKILL.md
skills/investigate/SKILL.md
skills/ios-clean/SKILL.md
skills/ios-design-review/SKILL.md
skills/ios-sync/SKILL.md
skills/landing-report/SKILL.md
skills/make-pdf/SKILL.md
skills/open-gstack-browser/SKILL.md
skills/pair-agent/SKILL.md
skills/plan-design-review/SKILL.md
skills/plan-devex-review/SKILL.md
skills/plan-tune/SKILL.md
skills/qa/SKILL.md
skills/setup-browser-cookies/SKILL.md
skills/setup-deploy/SKILL.md
skills/setup-gbrain/SKILL.md
skills/ship/SKILL.md
skills/skillify/SKILL.md
skills/spec/SKILL.md
skills/sync-gbrain/SKILL.md
skills/unfreeze/SKILL.md
skills/benchmark-models/SKILL.md
skills/canary/SKILL.md
skills/codex/SKILL.md
skills/context-save/SKILL.md
skills/cso/SKILL.md
skills/devex-review/SKILL.md
skills/document-release/SKILL.md
skills/gstack-upgrade/SKILL.md
skills/health/SKILL.md
skills/ios-fix/SKILL.md
skills/ios-qa/SKILL.md
skills/land-and-deploy/SKILL.md
skills/learn/SKILL.md
skills/office-hours/SKILL.md
skills/plan-ceo-review/SKILL.md
skills/plan-eng-review/SKILL.md
skills/qa-only/SKILL.md
skills/retro/SKILL.md
skills/review/SKILL.md
skills/scrape/SKILL.md

Metadata

Files
0
Version
fc73590
Hash
e8748556
Indexed
2026-07-19 09:14

inicio - Wiki
Copyright © 2011-2026 iteam. Current version is 2.155.2. UTC+08:00, 2026-07-22 11:59
浙ICP备14020137号-1 $mapa de visitantes$