create-yss-spec 2.1.9 → 2.1.11
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/package.json +1 -1
- package/src/cli.js +82 -15
- package/template/.agents/skills/ask-matt/SKILL.md +8 -2
- package/template/.agents/skills/code-review/SKILL.md +6 -4
- package/template/.agents/skills/diagnosing-bugs/SKILL.md +2 -4
- package/template/.agents/skills/domain-modeling/SKILL.md +1 -1
- package/template/.agents/skills/grilling/SKILL.md +7 -1
- package/template/.agents/skills/high-fidelity-html-prototype/SKILL.md +1 -1
- package/template/.agents/skills/implement/SKILL.md +1 -1
- package/template/.agents/skills/to-spec/SKILL.md +1 -1
- package/template/.agents/skills/triage/SKILL.md +2 -2
- package/template/.agents/skills/wait-what/SKILL.md +2 -2
- package/template/.agents/skills/wayfinder/SKILL.md +1 -1
- package/template/.agents/skills/yss-api-integration/SKILL.md +2 -0
- package/template/.agents/skills/yss-application/SKILL.md +52 -0
- package/template/.agents/skills/yss-application/agents/openai.yaml +5 -0
- package/template/.agents/skills/{yss-backend-scaffold-application/SKILL.md → yss-application/references/application-layer-guide.md} +0 -7
- package/template/.agents/skills/yss-ddd-scaffold-generator/SKILL.md +1 -1
- package/template/.agents/skills/yss-ddd-scaffold-generator/references/ARCHITECTURE.md +4 -4
- package/template/.agents/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-application/SKILL.md +2 -2
- package/template/.agents/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-application/agents/openai.yaml +1 -1
- package/template/.agents/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-domain/SKILL.md +2 -2
- package/template/.agents/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-domain/agents/openai.yaml +1 -1
- package/template/.agents/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-infrastructure/SKILL.md +3 -3
- package/template/.agents/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-infrastructure/agents/openai.yaml +1 -1
- package/template/.agents/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-web/SKILL.md +4 -4
- package/template/.agents/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-web/agents/openai.yaml +1 -1
- package/template/.agents/skills/yss-domain/SKILL.md +5 -0
- package/template/{.claude/skills/yss-backend-scaffold-domain/SKILL.md → .agents/skills/yss-domain/references/domain-layer-guide.md} +0 -7
- package/template/.agents/skills/yss-microapp-commit/SKILL.md +2 -0
- package/template/.agents/skills/yss-product-lifecycle/SKILL.md +43 -91
- package/template/.agents/skills/yss-product-lifecycle/references/matt-yss-adapter.md +7 -5
- package/template/.agents/skills/yss-product-lifecycle/references/orchestration-contract.yaml +88 -22
- package/template/.agents/skills/yss-product-lifecycle/references/orchestration.md +5 -4
- package/template/.agents/skills/yss-product-lifecycle/references/state-model.md +4 -1
- package/template/.agents/skills/yss-prototype-stage/SKILL.md +1 -1
- package/template/.agents/skills/yss-repository/SKILL.md +5 -0
- package/template/{.codex/skills/yss-backend-scaffold-infrastructure/SKILL.md → .agents/skills/yss-repository/references/infrastructure-layer-guide.md} +0 -7
- package/template/.agents/skills/yss-router/references/boundaries.md +2 -6
- package/template/.agents/skills/yss-router/references/router-contract.yaml +8 -12
- package/template/.agents/skills/yss-source-index/references/source-map-config.md +0 -4
- package/template/.agents/skills/yss-source-index/scripts/refresh-yss-skill-index.mjs +1 -1
- package/template/.agents/skills/yss-web-controller/SKILL.md +1 -0
- package/template/{.codex/skills/yss-backend-scaffold-web/SKILL.md → .agents/skills/yss-web-controller/references/web-adapter-layer-guide.md} +0 -7
- package/template/.claude/skills/ask-matt/SKILL.md +8 -2
- package/template/.claude/skills/code-review/SKILL.md +6 -4
- package/template/.claude/skills/diagnosing-bugs/SKILL.md +2 -4
- package/template/.claude/skills/domain-modeling/SKILL.md +1 -1
- package/template/.claude/skills/grilling/SKILL.md +7 -1
- package/template/.claude/skills/high-fidelity-html-prototype/SKILL.md +1 -1
- package/template/.claude/skills/implement/SKILL.md +1 -1
- package/template/.claude/skills/to-spec/SKILL.md +1 -1
- package/template/.claude/skills/triage/SKILL.md +2 -2
- package/template/.claude/skills/wait-what/SKILL.md +2 -2
- package/template/.claude/skills/wayfinder/SKILL.md +1 -1
- package/template/.claude/skills/yss-api-integration/SKILL.md +2 -0
- package/template/.claude/skills/yss-application/SKILL.md +52 -0
- package/template/.claude/skills/yss-application/agents/openai.yaml +5 -0
- package/template/{.codex/skills/yss-backend-scaffold-application/SKILL.md → .claude/skills/yss-application/references/application-layer-guide.md} +0 -7
- package/template/.claude/skills/yss-ddd-scaffold-generator/SKILL.md +1 -1
- package/template/.claude/skills/yss-ddd-scaffold-generator/references/ARCHITECTURE.md +4 -4
- package/template/.claude/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-application/SKILL.md +2 -2
- package/template/.claude/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-application/agents/openai.yaml +1 -1
- package/template/.claude/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-domain/SKILL.md +2 -2
- package/template/.claude/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-domain/agents/openai.yaml +1 -1
- package/template/.claude/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-infrastructure/SKILL.md +3 -3
- package/template/.claude/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-infrastructure/agents/openai.yaml +1 -1
- package/template/.claude/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-web/SKILL.md +4 -4
- package/template/.claude/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-web/agents/openai.yaml +1 -1
- package/template/.claude/skills/yss-domain/SKILL.md +5 -0
- package/template/{.agents/skills/yss-backend-scaffold-domain/SKILL.md → .claude/skills/yss-domain/references/domain-layer-guide.md} +0 -7
- package/template/.claude/skills/yss-microapp-commit/SKILL.md +2 -0
- package/template/.claude/skills/yss-product-lifecycle/SKILL.md +43 -91
- package/template/.claude/skills/yss-product-lifecycle/references/matt-yss-adapter.md +7 -5
- package/template/.claude/skills/yss-product-lifecycle/references/orchestration-contract.yaml +88 -22
- package/template/.claude/skills/yss-product-lifecycle/references/orchestration.md +5 -4
- package/template/.claude/skills/yss-product-lifecycle/references/state-model.md +4 -1
- package/template/.claude/skills/yss-prototype-stage/SKILL.md +1 -1
- package/template/.claude/skills/yss-repository/SKILL.md +5 -0
- package/template/.claude/skills/{yss-backend-scaffold-infrastructure/SKILL.md → yss-repository/references/infrastructure-layer-guide.md} +0 -7
- package/template/.claude/skills/yss-router/references/boundaries.md +2 -6
- package/template/.claude/skills/yss-router/references/router-contract.yaml +8 -12
- package/template/.claude/skills/yss-source-index/references/source-map-config.md +0 -4
- package/template/.claude/skills/yss-source-index/scripts/refresh-yss-skill-index.mjs +1 -1
- package/template/.claude/skills/yss-web-controller/SKILL.md +1 -0
- package/template/{.hermes/skills/yss-backend-scaffold-web/SKILL.md → .claude/skills/yss-web-controller/references/web-adapter-layer-guide.md} +0 -7
- package/template/.codex/skills/ask-matt/SKILL.md +8 -2
- package/template/.codex/skills/code-review/SKILL.md +6 -4
- package/template/.codex/skills/diagnosing-bugs/SKILL.md +2 -4
- package/template/.codex/skills/domain-modeling/SKILL.md +1 -1
- package/template/.codex/skills/grilling/SKILL.md +7 -1
- package/template/.codex/skills/high-fidelity-html-prototype/SKILL.md +1 -1
- package/template/.codex/skills/implement/SKILL.md +1 -1
- package/template/.codex/skills/to-spec/SKILL.md +1 -1
- package/template/.codex/skills/triage/SKILL.md +2 -2
- package/template/.codex/skills/wait-what/SKILL.md +2 -2
- package/template/.codex/skills/wayfinder/SKILL.md +1 -1
- package/template/.codex/skills/yss-api-integration/SKILL.md +2 -0
- package/template/.codex/skills/yss-application/SKILL.md +52 -0
- package/template/.codex/skills/yss-application/agents/openai.yaml +5 -0
- package/template/{.claude/skills/yss-backend-scaffold-application/SKILL.md → .codex/skills/yss-application/references/application-layer-guide.md} +0 -7
- package/template/.codex/skills/yss-ddd-scaffold-generator/SKILL.md +1 -1
- package/template/.codex/skills/yss-ddd-scaffold-generator/references/ARCHITECTURE.md +4 -4
- package/template/.codex/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-application/SKILL.md +2 -2
- package/template/.codex/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-application/agents/openai.yaml +1 -1
- package/template/.codex/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-domain/SKILL.md +2 -2
- package/template/.codex/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-domain/agents/openai.yaml +1 -1
- package/template/.codex/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-infrastructure/SKILL.md +3 -3
- package/template/.codex/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-infrastructure/agents/openai.yaml +1 -1
- package/template/.codex/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-web/SKILL.md +4 -4
- package/template/.codex/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-web/agents/openai.yaml +1 -1
- package/template/.codex/skills/yss-domain/SKILL.md +5 -0
- package/template/.codex/skills/{yss-backend-scaffold-domain/SKILL.md → yss-domain/references/domain-layer-guide.md} +0 -7
- package/template/.codex/skills/yss-microapp-commit/SKILL.md +2 -0
- package/template/.codex/skills/yss-product-lifecycle/SKILL.md +43 -91
- package/template/.codex/skills/yss-product-lifecycle/references/matt-yss-adapter.md +7 -5
- package/template/.codex/skills/yss-product-lifecycle/references/orchestration-contract.yaml +88 -22
- package/template/.codex/skills/yss-product-lifecycle/references/orchestration.md +5 -4
- package/template/.codex/skills/yss-product-lifecycle/references/state-model.md +4 -1
- package/template/.codex/skills/yss-prototype-stage/SKILL.md +1 -1
- package/template/.codex/skills/yss-repository/SKILL.md +5 -0
- package/template/{.hermes/skills/yss-backend-scaffold-infrastructure/SKILL.md → .codex/skills/yss-repository/references/infrastructure-layer-guide.md} +0 -7
- package/template/.codex/skills/yss-router/references/boundaries.md +2 -6
- package/template/.codex/skills/yss-router/references/router-contract.yaml +8 -12
- package/template/.codex/skills/yss-source-index/references/source-map-config.md +0 -4
- package/template/.codex/skills/yss-source-index/scripts/refresh-yss-skill-index.mjs +1 -1
- package/template/.codex/skills/yss-web-controller/SKILL.md +1 -0
- package/template/{.agents/skills/yss-backend-scaffold-web/SKILL.md → .codex/skills/yss-web-controller/references/web-adapter-layer-guide.md} +0 -7
- package/template/.cursor/environment.json +5 -0
- package/template/.cursor/skills/alibaba-java-code-style/SKILL.md +51 -0
- package/template/.cursor/skills/alibaba-java-code-style/agents/openai.yaml +4 -0
- package/template/.cursor/skills/alibaba-java-code-style/references/database-engineering-design.md +147 -0
- package/template/.cursor/skills/alibaba-java-code-style/references/java-programming.md +178 -0
- package/template/.cursor/skills/alibaba-java-code-style/references/reliability-test-security.md +89 -0
- package/template/.cursor/skills/ask-matt/PHASE-BOUNDARIES.md +55 -0
- package/template/.cursor/skills/ask-matt/SKILL.md +95 -0
- package/template/.cursor/skills/ask-matt/agents/openai.yaml +5 -0
- package/template/.cursor/skills/code-review/SKILL.md +117 -0
- package/template/.cursor/skills/code-review/agents/openai.yaml +3 -0
- package/template/.cursor/skills/codebase-design/DEEPENING.md +37 -0
- package/template/.cursor/skills/codebase-design/DESIGN-IT-TWICE.md +44 -0
- package/template/.cursor/skills/codebase-design/SKILL.md +114 -0
- package/template/.cursor/skills/codebase-design/agents/openai.yaml +3 -0
- package/template/.cursor/skills/competitive-intelligence/SKILL.md +94 -0
- package/template/.cursor/skills/cross-repo-implementation-routing/SKILL.md +51 -0
- package/template/.cursor/skills/diagnosing-bugs/SKILL.md +138 -0
- package/template/.cursor/skills/diagnosing-bugs/agents/openai.yaml +3 -0
- package/template/.cursor/skills/diagnosing-bugs/scripts/hitl-loop.template.sh +44 -0
- package/template/.cursor/skills/dispatching-parallel-agents/SKILL.md +185 -0
- package/template/.cursor/skills/domain-modeling/ADR-FORMAT.md +47 -0
- package/template/.cursor/skills/domain-modeling/CONTEXT-FORMAT.md +60 -0
- package/template/.cursor/skills/domain-modeling/SKILL.md +74 -0
- package/template/.cursor/skills/domain-modeling/agents/openai.yaml +3 -0
- package/template/.cursor/skills/grill-me/SKILL.md +7 -0
- package/template/.cursor/skills/grill-me/agents/openai.yaml +5 -0
- package/template/.cursor/skills/grill-with-docs/SKILL.md +19 -0
- package/template/.cursor/skills/grill-with-docs/agents/openai.yaml +5 -0
- package/template/{.agents/skills/batch-grill-me → .cursor/skills/grilling}/SKILL.md +19 -6
- package/template/.cursor/skills/grilling/agents/openai.yaml +3 -0
- package/template/.cursor/skills/handoff/SKILL.md +16 -0
- package/template/.cursor/skills/handoff/agents/openai.yaml +5 -0
- package/template/.cursor/skills/high-fidelity-html-prototype/SKILL.md +106 -0
- package/template/.cursor/skills/high-fidelity-html-prototype/agents/openai.yaml +5 -0
- package/template/.cursor/skills/implement/SKILL.md +15 -0
- package/template/.cursor/skills/implement/agents/openai.yaml +5 -0
- package/template/.cursor/skills/implementation-repo-onboarding/SKILL.md +50 -0
- package/template/.cursor/skills/improve-codebase-architecture/HTML-REPORT.md +123 -0
- package/template/.cursor/skills/improve-codebase-architecture/SKILL.md +71 -0
- package/template/.cursor/skills/improve-codebase-architecture/agents/openai.yaml +5 -0
- package/template/.cursor/skills/lombok/SKILL.md +351 -0
- package/template/.cursor/skills/loop-me/SKILL.md +32 -0
- package/template/.cursor/skills/loop-me/agents/openai.yaml +5 -0
- package/template/.cursor/skills/maintaining-skills/SKILL.md +25 -0
- package/template/.cursor/skills/mapstruct/SKILL.md +334 -0
- package/template/.cursor/skills/migrate-to-shoehorn/SKILL.md +118 -0
- package/template/.cursor/skills/migrate-to-shoehorn/agents/openai.yaml +3 -0
- package/template/.cursor/skills/prototype/LOGIC.md +67 -0
- package/template/.cursor/skills/prototype/SKILL.md +26 -0
- package/template/.cursor/skills/prototype/UI.md +112 -0
- package/template/.cursor/skills/prototype/agents/openai.yaml +3 -0
- package/template/.cursor/skills/prototype-review/SKILL.md +74 -0
- package/template/.cursor/skills/prototype-review/agents/openai.yaml +4 -0
- package/template/.cursor/skills/research/SKILL.md +12 -0
- package/template/.cursor/skills/research/agents/openai.yaml +3 -0
- package/template/.cursor/skills/resolving-merge-conflicts/SKILL.md +14 -0
- package/template/.cursor/skills/resolving-merge-conflicts/agents/openai.yaml +3 -0
- package/template/.cursor/skills/scaffold-exercises/SKILL.md +106 -0
- package/template/.cursor/skills/scaffold-exercises/agents/openai.yaml +3 -0
- package/template/.cursor/skills/setup-matt-pocock-skills/SKILL.md +125 -0
- package/template/.cursor/skills/setup-matt-pocock-skills/agents/openai.yaml +5 -0
- package/template/.cursor/skills/setup-matt-pocock-skills/domain.md +51 -0
- package/template/.cursor/skills/setup-matt-pocock-skills/issue-tracker-github.md +45 -0
- package/template/.cursor/skills/setup-matt-pocock-skills/issue-tracker-gitlab.md +46 -0
- package/template/.cursor/skills/setup-matt-pocock-skills/issue-tracker-local.md +66 -0
- package/template/.cursor/skills/setup-matt-pocock-skills/triage-labels.md +15 -0
- package/template/.cursor/skills/setup-pre-commit/SKILL.md +91 -0
- package/template/.cursor/skills/setup-pre-commit/agents/openai.yaml +3 -0
- package/template/.cursor/skills/setup-ts-deep-modules/SKILL.md +102 -0
- package/template/.cursor/skills/setup-ts-deep-modules/agents/openai.yaml +5 -0
- package/template/.cursor/skills/setup-ts-deep-modules/dependency-cruiser.config.cjs +95 -0
- package/template/.cursor/skills/tdd/SKILL.md +38 -0
- package/template/.cursor/skills/tdd/agents/openai.yaml +3 -0
- package/template/.cursor/skills/tdd/mocking.md +59 -0
- package/template/.cursor/skills/tdd/tests.md +77 -0
- package/template/.cursor/skills/teach/GLOSSARY-FORMAT.md +35 -0
- package/template/.cursor/skills/teach/LEARNING-RECORD-FORMAT.md +46 -0
- package/template/.cursor/skills/teach/MISSION-FORMAT.md +31 -0
- package/template/.cursor/skills/teach/RESOURCES-FORMAT.md +32 -0
- package/template/.cursor/skills/teach/SKILL.md +140 -0
- package/template/.cursor/skills/teach/agents/openai.yaml +5 -0
- package/template/.cursor/skills/to-questionnaire/SKILL.md +53 -0
- package/template/.cursor/skills/to-questionnaire/agents/openai.yaml +5 -0
- package/template/.cursor/skills/to-spec/SKILL.md +75 -0
- package/template/.cursor/skills/to-spec/agents/openai.yaml +5 -0
- package/template/.cursor/skills/to-tickets/SKILL.md +105 -0
- package/template/.cursor/skills/to-tickets/agents/openai.yaml +5 -0
- package/template/.cursor/skills/triage/AGENT-BRIEF.md +207 -0
- package/template/.cursor/skills/triage/OUT-OF-SCOPE.md +105 -0
- package/template/.cursor/skills/triage/SKILL.md +112 -0
- package/template/.cursor/skills/triage/agents/openai.yaml +5 -0
- package/template/.cursor/skills/using-git-worktrees/SKILL.md +202 -0
- package/template/.cursor/skills/wait-what/SKILL.md +7 -0
- package/template/.cursor/skills/wait-what/agents/openai.yaml +5 -0
- package/template/.cursor/skills/wayfinder/SKILL.md +128 -0
- package/template/.cursor/skills/wayfinder/agents/openai.yaml +5 -0
- package/template/.cursor/skills/writing-beats/SKILL.md +67 -0
- package/template/.cursor/skills/writing-beats/agents/openai.yaml +5 -0
- package/template/.cursor/skills/writing-for-agents/SKILL-MECHANICS.md +22 -0
- package/template/.cursor/skills/writing-for-agents/SKILL.md +81 -0
- package/template/.cursor/skills/writing-for-agents/agents/openai.yaml +3 -0
- package/template/.cursor/skills/writing-fragments/SKILL.md +79 -0
- package/template/.cursor/skills/writing-fragments/agents/openai.yaml +5 -0
- package/template/.cursor/skills/writing-shape/SKILL.md +79 -0
- package/template/.cursor/skills/writing-shape/agents/openai.yaml +5 -0
- package/template/.cursor/skills/yss-api-integration/SKILL.md +429 -0
- package/template/.cursor/skills/yss-api-integration/agents/openai.yaml +5 -0
- package/template/.cursor/skills/yss-application/SKILL.md +52 -0
- package/template/.cursor/skills/yss-application/agents/openai.yaml +5 -0
- package/template/{.hermes/skills/yss-backend-scaffold-application/SKILL.md → .cursor/skills/yss-application/references/application-layer-guide.md} +0 -7
- package/template/.cursor/skills/yss-audit-log/SKILL.md +67 -0
- package/template/.cursor/skills/yss-audit-log/agents/openai.yaml +5 -0
- package/template/.cursor/skills/yss-audit-log/assets/AuditLogAspect.java +262 -0
- package/template/.cursor/skills/yss-audit-log/assets/YssAuditLogPrintSubscriberImpl.java +37 -0
- package/template/.cursor/skills/yss-audit-log/assets/YssAuditLogSysManagerSubscriberImpl.java +18 -0
- package/template/.cursor/skills/yss-audit-log/assets/YssAuditPublishService.java +69 -0
- package/template/.cursor/skills/yss-audit-log/references/README.md +69 -0
- package/template/.cursor/skills/yss-audit-log/references/source-index.md +43 -0
- package/template/.cursor/skills/yss-cache/SKILL.md +44 -0
- package/template/.cursor/skills/yss-cache/agents/openai.yaml +5 -0
- package/template/.cursor/skills/yss-cache/references/annotations.md +39 -0
- package/template/.cursor/skills/yss-cache/references/architecture.md +25 -0
- package/template/.cursor/skills/yss-cache/references/configuration.md +34 -0
- package/template/.cursor/skills/yss-cache/references/redis-fallback.md +23 -0
- package/template/.cursor/skills/yss-cache/references/redis-topology.md +62 -0
- package/template/.cursor/skills/yss-cache/references/serialization.md +17 -0
- package/template/.cursor/skills/yss-cache/references/source-index.md +67 -0
- package/template/.cursor/skills/yss-cache/references/troubleshooting.md +33 -0
- package/template/.cursor/skills/yss-cache/references/verification.md +34 -0
- package/template/.cursor/skills/yss-cache/scripts/check-skill-freshness.sh +84 -0
- package/template/.cursor/skills/yss-cache/scripts/inspect-cache-usage.sh +96 -0
- package/template/.cursor/skills/yss-cache/scripts/verify-cache-component.sh +101 -0
- package/template/.cursor/skills/yss-components/SKILL.md +386 -0
- package/template/.cursor/skills/yss-components/agents/openai.yaml +5 -0
- package/template/.cursor/skills/yss-components/references/frontend-docs.md +9 -0
- package/template/.cursor/skills/yss-ddd-scaffold-generator/SKILL.md +96 -0
- package/template/.cursor/skills/yss-ddd-scaffold-generator/agents/openai.yaml +5 -0
- package/template/.cursor/skills/yss-ddd-scaffold-generator/assets/templates/config/application.yml.template +37 -0
- package/template/.cursor/skills/yss-ddd-scaffold-generator/assets/templates/config/logback-spring.xml.template +15 -0
- package/template/.cursor/skills/yss-ddd-scaffold-generator/assets/templates/config/parent-pom.xml.template +84 -0
- package/template/.cursor/skills/yss-ddd-scaffold-generator/assets/templates/pom/adapter-pom.xml.template +19 -0
- package/template/.cursor/skills/yss-ddd-scaffold-generator/assets/templates/pom/application-pom.xml.template +43 -0
- package/template/.cursor/skills/yss-ddd-scaffold-generator/assets/templates/pom/bootstrap-pom.xml.template +50 -0
- package/template/.cursor/skills/yss-ddd-scaffold-generator/assets/templates/pom/domain-pom.xml.template +36 -0
- package/template/.cursor/skills/yss-ddd-scaffold-generator/assets/templates/pom/infrastructure-pom.xml.template +34 -0
- package/template/.cursor/skills/yss-ddd-scaffold-generator/assets/templates/pom/parent-pom.xml.template +95 -0
- package/template/.cursor/skills/yss-ddd-scaffold-generator/assets/templates/pom/web-pom.xml.template +44 -0
- package/template/.cursor/skills/yss-ddd-scaffold-generator/assets/wrapper/.mvn/jvm.config +1 -0
- package/template/.cursor/skills/yss-ddd-scaffold-generator/assets/wrapper/.mvn/maven.config +3 -0
- package/template/.cursor/skills/yss-ddd-scaffold-generator/assets/wrapper/.mvn/settings.xml +128 -0
- package/template/.cursor/skills/yss-ddd-scaffold-generator/assets/wrapper/.mvn/wrapper/MavenWrapperDownloader.java +117 -0
- package/template/.cursor/skills/yss-ddd-scaffold-generator/assets/wrapper/.mvn/wrapper/maven-wrapper.jar +0 -0
- package/template/.cursor/skills/yss-ddd-scaffold-generator/assets/wrapper/.mvn/wrapper/maven-wrapper.properties +18 -0
- package/template/.cursor/skills/yss-ddd-scaffold-generator/assets/wrapper/mvnw +316 -0
- package/template/.cursor/skills/yss-ddd-scaffold-generator/assets/wrapper/mvnw.cmd +188 -0
- package/template/.cursor/skills/yss-ddd-scaffold-generator/references/ARCHITECTURE.md +194 -0
- package/template/.cursor/skills/yss-ddd-scaffold-generator/references/USAGE_EXAMPLES.md +420 -0
- package/template/.cursor/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-adapter/SKILL.md +199 -0
- package/template/.cursor/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-adapter/agents/openai.yaml +5 -0
- package/template/.cursor/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-application/SKILL.md +8 -0
- package/template/{.agents/skills → .cursor/skills/yss-ddd-scaffold-generator/references}/yss-backend-scaffold-application/agents/openai.yaml +1 -1
- package/template/.cursor/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-domain/SKILL.md +8 -0
- package/template/{.claude/skills → .cursor/skills/yss-ddd-scaffold-generator/references}/yss-backend-scaffold-domain/agents/openai.yaml +1 -1
- package/template/.cursor/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-infrastructure/SKILL.md +8 -0
- package/template/{.claude/skills → .cursor/skills/yss-ddd-scaffold-generator/references}/yss-backend-scaffold-infrastructure/agents/openai.yaml +1 -1
- package/template/.cursor/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-parent/SKILL.md +138 -0
- package/template/.cursor/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-parent/agents/openai.yaml +5 -0
- package/template/.cursor/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-web/SKILL.md +8 -0
- package/template/{.claude/skills → .cursor/skills/yss-ddd-scaffold-generator/references}/yss-backend-scaffold-web/agents/openai.yaml +1 -1
- package/template/.cursor/skills/yss-ddd-scaffold-generator/scripts/generate_scaffold.mjs +225 -0
- package/template/.cursor/skills/yss-ddd-scaffold-generator/scripts/run_scaffold_verification.mjs +32 -0
- package/template/.cursor/skills/yss-ddd-scaffold-generator/scripts/scaffold-generator.test.mjs +26 -0
- package/template/.cursor/skills/yss-design-system/SKILL.md +99 -0
- package/template/.cursor/skills/yss-design-system/agents/openai.yaml +5 -0
- package/template/.cursor/skills/yss-design-system/references/design-system.md +237 -0
- package/template/.cursor/skills/yss-design-system/scripts/validate-frontmatter.mjs +36 -0
- package/template/.cursor/skills/yss-design-system/scripts/validate-frontmatter.test.mjs +12 -0
- package/template/.cursor/skills/yss-distributed-id/SKILL.md +69 -0
- package/template/.cursor/skills/yss-distributed-id/agents/openai.yaml +5 -0
- package/template/.cursor/skills/yss-distributed-id/assets/AutoIdInterceptor.java +246 -0
- package/template/.cursor/skills/yss-distributed-id/assets/EnableDistributedId.java +25 -0
- package/template/.cursor/skills/yss-distributed-id/assets/LeafConf.java +36 -0
- package/template/.cursor/skills/yss-distributed-id/references/README.md +51 -0
- package/template/.cursor/skills/yss-distributed-id/references/source-index.md +86 -0
- package/template/.cursor/skills/yss-domain/SKILL.md +68 -0
- package/template/.cursor/skills/yss-domain/agents/openai.yaml +5 -0
- package/template/{.hermes/skills/yss-backend-scaffold-domain/SKILL.md → .cursor/skills/yss-domain/references/domain-layer-guide.md} +0 -7
- package/template/.cursor/skills/yss-dto/SKILL.md +86 -0
- package/template/.cursor/skills/yss-dto/agents/openai.yaml +5 -0
- package/template/.cursor/skills/yss-dto/assets/CommandDTO.java +8 -0
- package/template/.cursor/skills/yss-dto/assets/PageQuery.java +133 -0
- package/template/.cursor/skills/yss-dto/assets/QueryDTO.java +6 -0
- package/template/.cursor/skills/yss-dto/assets/Result.java +105 -0
- package/template/.cursor/skills/yss-dto/references/README.md +67 -0
- package/template/.cursor/skills/yss-dto/references/openapi-wire-profile.yaml +181 -0
- package/template/.cursor/skills/yss-dto/references/source-index.md +55 -0
- package/template/.cursor/skills/yss-excel-mvc/SKILL.md +66 -0
- package/template/.cursor/skills/yss-excel-mvc/agents/openai.yaml +5 -0
- package/template/.cursor/skills/yss-excel-mvc/assets/ExcelDynamicData.java +66 -0
- package/template/.cursor/skills/yss-excel-mvc/assets/RequestExcel.java +33 -0
- package/template/.cursor/skills/yss-excel-mvc/assets/RequestFastExcelArgumentResolver.java +272 -0
- package/template/.cursor/skills/yss-excel-mvc/assets/ResponseExcel.java +46 -0
- package/template/.cursor/skills/yss-excel-mvc/assets/ResponseFastExcelReturnValueHandler.java +154 -0
- package/template/.cursor/skills/yss-excel-mvc/references/README.md +5 -0
- package/template/.cursor/skills/yss-excel-mvc/references/source-index.md +74 -0
- package/template/.cursor/skills/yss-exception/SKILL.md +55 -0
- package/template/.cursor/skills/yss-exception/agents/openai.yaml +4 -0
- package/template/{.claude/skills/yss-log → .cursor/skills/yss-exception}/references/source-index.md +8 -7
- package/template/.cursor/skills/yss-formily/SKILL.md +304 -0
- package/template/.cursor/skills/yss-formily/agents/openai.yaml +5 -0
- package/template/.cursor/skills/yss-formily/references/examples.md +65 -0
- package/template/.cursor/skills/yss-formily-schema-generator/SKILL.md +189 -0
- package/template/.cursor/skills/yss-formily-schema-generator/agents/openai.yaml +5 -0
- package/template/.cursor/skills/yss-formily-schema-generator/assets/java-sdk/ExampleUsage.java +111 -0
- package/template/.cursor/skills/yss-formily-schema-generator/assets/java-sdk/YssFormilyDsl.java +1219 -0
- package/template/.cursor/skills/yss-formily-schema-generator/references/workflow.md +240 -0
- package/template/.cursor/skills/yss-frontend-scaffold-generator/SKILL.md +76 -0
- package/template/.cursor/skills/yss-hook/SKILL.md +200 -0
- package/template/.cursor/skills/yss-hook/agents/openai.yaml +5 -0
- package/template/.cursor/skills/yss-hook/references/frontend-docs.md +10 -0
- package/template/.cursor/skills/yss-microapp-commit/SKILL.md +201 -0
- package/template/.cursor/skills/yss-microapp-commit/agents/openai.yaml +5 -0
- package/template/.cursor/skills/yss-microapp-commit/references/scope-mapping.md +204 -0
- package/template/.cursor/skills/yss-mybatis/SKILL.md +77 -0
- package/template/.cursor/skills/yss-mybatis/agents/openai.yaml +5 -0
- package/template/.cursor/skills/yss-mybatis/assets/BaseRepository.java +112 -0
- package/template/.cursor/skills/yss-mybatis/assets/EntityQueryAspect.java +37 -0
- package/template/.cursor/skills/yss-mybatis/assets/MybatisBaseConfiguration.java +18 -0
- package/template/.cursor/skills/yss-mybatis/assets/PageQueryEntityConfigration.java +18 -0
- package/template/.cursor/skills/yss-mybatis/references/README.md +57 -0
- package/template/.cursor/skills/yss-mybatis/references/source-index.md +93 -0
- package/template/.cursor/skills/yss-openapi-draft-review/SKILL.md +82 -0
- package/template/.cursor/skills/yss-openapi-governance/SKILL.md +130 -0
- package/template/.cursor/skills/yss-openapi-governance/agents/openai.yaml +4 -0
- package/template/.cursor/skills/yss-page-module-development/SKILL.md +153 -0
- package/template/.cursor/skills/yss-page-module-development/agents/openai.yaml +5 -0
- package/template/.cursor/skills/yss-page-module-development/examples/AdvancedFormPage/constant.ts +32 -0
- package/template/.cursor/skills/yss-page-module-development/examples/AdvancedFormPage/hooks/useRuleConfig.ts +158 -0
- package/template/.cursor/skills/yss-page-module-development/examples/AdvancedFormPage/index.vue +188 -0
- package/template/.cursor/skills/yss-page-module-development/examples/AdvancedFormPage/schemas/ruleConfigSchema.ts +256 -0
- package/template/.cursor/skills/yss-page-module-development/examples/AdvancedFormPage/style.less +76 -0
- package/template/.cursor/skills/yss-page-module-development/examples/StandardListPage/constant.ts +128 -0
- package/template/.cursor/skills/yss-page-module-development/examples/StandardListPage/hooks/useQualityRuleList.ts +144 -0
- package/template/.cursor/skills/yss-page-module-development/examples/StandardListPage/hooks/useRuleActions.ts +141 -0
- package/template/.cursor/skills/yss-page-module-development/examples/StandardListPage/index.vue +175 -0
- package/template/.cursor/skills/yss-page-module-development/examples/StandardListPage/style.less +83 -0
- package/template/.cursor/skills/yss-page-module-development/references/frontend-docs.md +11 -0
- package/template/.cursor/skills/yss-product-lifecycle/SKILL.md +49 -0
- package/template/.cursor/skills/yss-product-lifecycle/agents/openai.yaml +4 -0
- package/template/.cursor/skills/yss-product-lifecycle/references/artifact-dependencies.md +32 -0
- package/template/.cursor/skills/yss-product-lifecycle/references/matt-yss-adapter.md +122 -0
- package/template/.cursor/skills/yss-product-lifecycle/references/orchestration-contract.yaml +521 -0
- package/template/.cursor/skills/yss-product-lifecycle/references/orchestration.md +103 -0
- package/template/.cursor/skills/yss-product-lifecycle/references/state-model.md +107 -0
- package/template/.cursor/skills/yss-prototype-stage/SKILL.md +40 -0
- package/template/.cursor/skills/yss-repository/SKILL.md +76 -0
- package/template/.cursor/skills/yss-repository/agents/openai.yaml +5 -0
- package/template/{.agents/skills/yss-backend-scaffold-infrastructure/SKILL.md → .cursor/skills/yss-repository/references/infrastructure-layer-guide.md} +0 -7
- package/template/.cursor/skills/yss-resilience4j/SKILL.md +46 -0
- package/template/.cursor/skills/yss-resilience4j/agents/openai.yaml +4 -0
- package/template/{.codex/skills/yss-jdbc → .cursor/skills/yss-resilience4j}/references/source-index.md +6 -6
- package/template/.cursor/skills/yss-router/SKILL.md +49 -0
- package/template/.cursor/skills/yss-router/agents/openai.yaml +4 -0
- package/template/.cursor/skills/yss-router/references/boundaries.md +50 -0
- package/template/.cursor/skills/yss-router/references/router-contract.yaml +245 -0
- package/template/.cursor/skills/yss-router/references/slice-implementation-contract.md +113 -0
- package/template/.cursor/skills/yss-router/references/yss-skill-execution-result.md +62 -0
- package/template/.cursor/skills/yss-security-algorithm/SKILL.md +52 -0
- package/template/.cursor/skills/yss-security-algorithm/agents/openai.yaml +4 -0
- package/template/{.hermes/skills/yss-jdbc → .cursor/skills/yss-security-algorithm}/references/source-index.md +7 -5
- package/template/.cursor/skills/yss-source-index/SKILL.md +63 -0
- package/template/.cursor/skills/yss-source-index/agents/openai.yaml +4 -0
- package/template/.cursor/skills/yss-source-index/references/source-location.md +18 -0
- package/template/.cursor/skills/yss-source-index/references/source-map-config.md +30 -0
- package/template/.cursor/skills/yss-source-index/scripts/refresh-yss-skill-index.mjs +24 -0
- package/template/.cursor/skills/yss-source-index/scripts/refresh-yss-skill-index.test.mjs +15 -0
- package/template/.cursor/skills/yss-ui/SKILL.md +169 -0
- package/template/.cursor/skills/yss-ui/agents/openai.yaml +5 -0
- package/template/.cursor/skills/yss-ui/assets/demos/button/auth-basic.vue +24 -0
- package/template/.cursor/skills/yss-ui/assets/demos/button/auth-dropdown.vue +29 -0
- package/template/.cursor/skills/yss-ui/assets/demos/button/permission.vue +10 -0
- package/template/.cursor/skills/yss-ui/assets/demos/button/size.vue +12 -0
- package/template/.cursor/skills/yss-ui/assets/demos/button/states.vue +12 -0
- package/template/.cursor/skills/yss-ui/assets/demos/card/basic/index.vue +54 -0
- package/template/.cursor/skills/yss-ui/assets/demos/card/basic/style.less +41 -0
- package/template/.cursor/skills/yss-ui/assets/demos/card/cover/index.vue +25 -0
- package/template/.cursor/skills/yss-ui/assets/demos/card/flexible-layout/index.vue +122 -0
- package/template/.cursor/skills/yss-ui/assets/demos/card/flexible-layout/style.less +191 -0
- package/template/.cursor/skills/yss-ui/assets/demos/card/header-extra/index.vue +260 -0
- package/template/.cursor/skills/yss-ui/assets/demos/card/header-extra/style.less +124 -0
- package/template/.cursor/skills/yss-ui/assets/demos/card/layout-metrics/constants.ts +61 -0
- package/template/.cursor/skills/yss-ui/assets/demos/card/layout-metrics/index.vue +72 -0
- package/template/.cursor/skills/yss-ui/assets/demos/card/layout-metrics/metrics-cards.vue +70 -0
- package/template/.cursor/skills/yss-ui/assets/demos/card/layout-metrics/style.less +232 -0
- package/template/.cursor/skills/yss-ui/assets/demos/card/loading/index.vue +19 -0
- package/template/.cursor/skills/yss-ui/assets/demos/card/meta/index.vue +19 -0
- package/template/.cursor/skills/yss-ui/assets/demos/condition-builder/basic/constants.ts +44 -0
- package/template/.cursor/skills/yss-ui/assets/demos/condition-builder/basic/hooks/useConditionBasic.ts +18 -0
- package/template/.cursor/skills/yss-ui/assets/demos/condition-builder/basic/index.vue +100 -0
- package/template/.cursor/skills/yss-ui/assets/demos/condition-builder/linked/constants.ts +51 -0
- package/template/.cursor/skills/yss-ui/assets/demos/condition-builder/linked/hooks/useConditionLinked.ts +29 -0
- package/template/.cursor/skills/yss-ui/assets/demos/condition-builder/linked/index.vue +23 -0
- package/template/.cursor/skills/yss-ui/assets/demos/condition-builder/nesting-between/constants.ts +35 -0
- package/template/.cursor/skills/yss-ui/assets/demos/condition-builder/nesting-between/hooks/useConditionNesting.ts +25 -0
- package/template/.cursor/skills/yss-ui/assets/demos/condition-builder/nesting-between/index.vue +24 -0
- package/template/.cursor/skills/yss-ui/assets/demos/condition-builder/remote/constants.ts +7 -0
- package/template/.cursor/skills/yss-ui/assets/demos/condition-builder/remote/hooks/useConditionRemote.ts +75 -0
- package/template/.cursor/skills/yss-ui/assets/demos/condition-builder/remote/index.vue +23 -0
- package/template/.cursor/skills/yss-ui/assets/demos/condition-builder/validation/constants.ts +42 -0
- package/template/.cursor/skills/yss-ui/assets/demos/condition-builder/validation/hooks/useConditionBasic.ts +22 -0
- package/template/.cursor/skills/yss-ui/assets/demos/condition-builder/validation/index.vue +138 -0
- package/template/.cursor/skills/yss-ui/assets/demos/condition-builder/validation-custom/constants.ts +42 -0
- package/template/.cursor/skills/yss-ui/assets/demos/condition-builder/validation-custom/hooks/useConditionBasic.ts +22 -0
- package/template/.cursor/skills/yss-ui/assets/demos/condition-builder/validation-custom/index.vue +134 -0
- package/template/.cursor/skills/yss-ui/assets/demos/cron/basic/index.vue +54 -0
- package/template/.cursor/skills/yss-ui/assets/demos/cron/select/index.vue +145 -0
- package/template/.cursor/skills/yss-ui/assets/demos/echarts/basic.vue +30 -0
- package/template/.cursor/skills/yss-ui/assets/demos/echarts/calendar-heatmap.vue +49 -0
- package/template/.cursor/skills/yss-ui/assets/demos/echarts/candlestick.vue +30 -0
- package/template/.cursor/skills/yss-ui/assets/demos/echarts/dark.vue +40 -0
- package/template/.cursor/skills/yss-ui/assets/demos/echarts/expose-methods.vue +97 -0
- package/template/.cursor/skills/yss-ui/assets/demos/echarts/funnel.vue +42 -0
- package/template/.cursor/skills/yss-ui/assets/demos/echarts/gauge.vue +25 -0
- package/template/.cursor/skills/yss-ui/assets/demos/echarts/line.vue +24 -0
- package/template/.cursor/skills/yss-ui/assets/demos/echarts/mix.vue +33 -0
- package/template/.cursor/skills/yss-ui/assets/demos/echarts/pie.vue +34 -0
- package/template/.cursor/skills/yss-ui/assets/demos/echarts/radar.vue +38 -0
- package/template/.cursor/skills/yss-ui/assets/demos/echarts/ring-segment.vue +77 -0
- package/template/.cursor/skills/yss-ui/assets/demos/echarts/scatter.vue +23 -0
- package/template/.cursor/skills/yss-ui/assets/demos/echarts/stacked-area.vue +55 -0
- package/template/.cursor/skills/yss-ui/assets/demos/echarts/stacked-bar.vue +52 -0
- package/template/.cursor/skills/yss-ui/assets/demos/echarts/treemap.vue +30 -0
- package/template/.cursor/skills/yss-ui/assets/demos/edit-table/all-types/hooks/useAllTypes.ts +259 -0
- package/template/.cursor/skills/yss-ui/assets/demos/edit-table/all-types/index.vue +33 -0
- package/template/.cursor/skills/yss-ui/assets/demos/edit-table/async-remote/hooks/useAsyncRemote.ts +201 -0
- package/template/.cursor/skills/yss-ui/assets/demos/edit-table/async-remote/index.vue +45 -0
- package/template/.cursor/skills/yss-ui/assets/demos/edit-table/basic/index.vue +104 -0
- package/template/.cursor/skills/yss-ui/assets/demos/edit-table/big-data/index.vue +82 -0
- package/template/.cursor/skills/yss-ui/assets/demos/edit-table/custom-rule/index.vue +114 -0
- package/template/.cursor/skills/yss-ui/assets/demos/edit-table/direct-editable/index.vue +94 -0
- package/template/.cursor/skills/yss-ui/assets/demos/edit-table/drag/index.vue +125 -0
- package/template/.cursor/skills/yss-ui/assets/demos/edit-table/filter/index.vue +107 -0
- package/template/.cursor/skills/yss-ui/assets/demos/edit-table/linkage/index.vue +181 -0
- package/template/.cursor/skills/yss-ui/assets/demos/edit-table/pagination-action/index.vue +131 -0
- package/template/.cursor/skills/yss-ui/assets/demos/edit-table/required/index.vue +95 -0
- package/template/.cursor/skills/yss-ui/assets/demos/edit-table/row-edit/index.vue +220 -0
- package/template/.cursor/skills/yss-ui/assets/demos/edit-table/row-options/index.vue +165 -0
- package/template/.cursor/skills/yss-ui/assets/demos/edit-table/slot-linkage/index.vue +184 -0
- package/template/.cursor/skills/yss-ui/assets/demos/edit-table/submit-view/index.vue +107 -0
- package/template/.cursor/skills/yss-ui/assets/demos/file-import/basic.vue +54 -0
- package/template/.cursor/skills/yss-ui/assets/demos/file-import/formily.vue +42 -0
- package/template/.cursor/skills/yss-ui/assets/demos/file-import/multiple.vue +33 -0
- package/template/.cursor/skills/yss-ui/assets/demos/file-import/result-slot.vue +30 -0
- package/template/.cursor/skills/yss-ui/assets/demos/formily/actions.vue +61 -0
- package/template/.cursor/skills/yss-ui/assets/demos/formily/align.vue +56 -0
- package/template/.cursor/skills/yss-ui/assets/demos/formily/async-validate.vue +69 -0
- package/template/.cursor/skills/yss-ui/assets/demos/formily/basic.vue +317 -0
- package/template/.cursor/skills/yss-ui/assets/demos/formily/collapse.vue +104 -0
- package/template/.cursor/skills/yss-ui/assets/demos/formily/custom-component.vue +75 -0
- package/template/.cursor/skills/yss-ui/assets/demos/formily/disabled.vue +71 -0
- package/template/.cursor/skills/yss-ui/assets/demos/formily/dynamic-array.vue +74 -0
- package/template/.cursor/skills/yss-ui/assets/demos/formily/dynamic.vue +59 -0
- package/template/.cursor/skills/yss-ui/assets/demos/formily/effects.vue +117 -0
- package/template/.cursor/skills/yss-ui/assets/demos/formily/events-inline.vue +82 -0
- package/template/.cursor/skills/yss-ui/assets/demos/formily/events-scope.vue +101 -0
- package/template/.cursor/skills/yss-ui/assets/demos/formily/grid.vue +71 -0
- package/template/.cursor/skills/yss-ui/assets/demos/formily/group.vue +102 -0
- package/template/.cursor/skills/yss-ui/assets/demos/formily/helper-slot.vue +50 -0
- package/template/.cursor/skills/yss-ui/assets/demos/formily/label-tip.vue +42 -0
- package/template/.cursor/skills/yss-ui/assets/demos/formily/linkage-multi.vue +127 -0
- package/template/.cursor/skills/yss-ui/assets/demos/formily/linkage.vue +78 -0
- package/template/.cursor/skills/yss-ui/assets/demos/formily/modes.vue +72 -0
- package/template/.cursor/skills/yss-ui/assets/demos/formily/remote-enum.vue +88 -0
- package/template/.cursor/skills/yss-ui/assets/demos/formily/slot.vue +54 -0
- package/template/.cursor/skills/yss-ui/assets/demos/formily/steps.vue +135 -0
- package/template/.cursor/skills/yss-ui/assets/demos/formily/submit-failed.vue +72 -0
- package/template/.cursor/skills/yss-ui/assets/demos/monaco/basic.vue +40 -0
- package/template/.cursor/skills/yss-ui/assets/demos/monaco/diff-basic.vue +143 -0
- package/template/.cursor/skills/yss-ui/assets/demos/monaco/fullscreen.vue +84 -0
- package/template/.cursor/skills/yss-ui/assets/demos/monaco/history-log-viewer.vue +586 -0
- package/template/.cursor/skills/yss-ui/assets/demos/monaco/log-viewer.vue +260 -0
- package/template/.cursor/skills/yss-ui/assets/demos/monaco/mock/mockLogApi.ts +199 -0
- package/template/.cursor/skills/yss-ui/assets/demos/monaco/monaco.vue +66 -0
- package/template/.cursor/skills/yss-ui/assets/demos/monaco/readonly.vue +20 -0
- package/template/.cursor/skills/yss-ui/assets/demos/monaco/resizable.vue +22 -0
- package/template/.cursor/skills/yss-ui/assets/demos/monaco/sql-schema.vue +20 -0
- package/template/.cursor/skills/yss-ui/assets/demos/monaco/switch-lang-theme.vue +48 -0
- package/template/.cursor/skills/yss-ui/assets/demos/split-pane/tree-table/constant.ts +18 -0
- package/template/.cursor/skills/yss-ui/assets/demos/split-pane/tree-table/index.vue +60 -0
- package/template/.cursor/skills/yss-ui/assets/demos/split-pane/tree-table/style.less +39 -0
- package/template/.cursor/skills/yss-ui/assets/demos/split-pane/tree-table-layout/hooks/useTreeTable.ts +158 -0
- package/template/.cursor/skills/yss-ui/assets/demos/split-pane/tree-table-layout/index.vue +88 -0
- package/template/.cursor/skills/yss-ui/assets/demos/split-pane/tree-table-layout/style.less +73 -0
- package/template/.cursor/skills/yss-ui/assets/demos/table/action/index.vue +83 -0
- package/template/.cursor/skills/yss-ui/assets/demos/table/action/style.less +3 -0
- package/template/.cursor/skills/yss-ui/assets/demos/table/action-auth/index.vue +41 -0
- package/template/.cursor/skills/yss-ui/assets/demos/table/action-slot/index.vue +62 -0
- package/template/.cursor/skills/yss-ui/assets/demos/table/action-slot/style.less +36 -0
- package/template/.cursor/skills/yss-ui/assets/demos/table/basic/hooks/useBasicTable.ts +205 -0
- package/template/.cursor/skills/yss-ui/assets/demos/table/basic/index.vue +89 -0
- package/template/.cursor/skills/yss-ui/assets/demos/table/basic/style.less +28 -0
- package/template/.cursor/skills/yss-ui/assets/demos/table/column-custom-search/hooks/useColumnCustomSearch.ts +236 -0
- package/template/.cursor/skills/yss-ui/assets/demos/table/column-custom-search/index.vue +141 -0
- package/template/.cursor/skills/yss-ui/assets/demos/table/column-custom-search/style.less +48 -0
- package/template/.cursor/skills/yss-ui/assets/demos/table/drag/index.vue +42 -0
- package/template/.cursor/skills/yss-ui/assets/demos/table/expand/action-expand.vue +142 -0
- package/template/.cursor/skills/yss-ui/assets/demos/table/expand/index.vue +35 -0
- package/template/.cursor/skills/yss-ui/assets/demos/table/filter-async/index.vue +93 -0
- package/template/.cursor/skills/yss-ui/assets/demos/table/filter-auto/index.vue +99 -0
- package/template/.cursor/skills/yss-ui/assets/demos/table/filter-custom/index.vue +72 -0
- package/template/.cursor/skills/yss-ui/assets/demos/table/filter-local/index.vue +112 -0
- package/template/.cursor/skills/yss-ui/assets/demos/table/filter-mixed/index.vue +142 -0
- package/template/.cursor/skills/yss-ui/assets/demos/table/filter-remote/constant.ts +129 -0
- package/template/.cursor/skills/yss-ui/assets/demos/table/filter-remote/hooks/useTableData.ts +186 -0
- package/template/.cursor/skills/yss-ui/assets/demos/table/filter-remote/index.vue +73 -0
- package/template/.cursor/skills/yss-ui/assets/demos/table/group-header/index.vue +86 -0
- package/template/.cursor/skills/yss-ui/assets/demos/table/group-header/style.less +3 -0
- package/template/.cursor/skills/yss-ui/assets/demos/table/header-height/index.vue +29 -0
- package/template/.cursor/skills/yss-ui/assets/demos/table/header-height/style.less +9 -0
- package/template/.cursor/skills/yss-ui/assets/demos/table/merge-cells/hooks/useMergeCells.ts +183 -0
- package/template/.cursor/skills/yss-ui/assets/demos/table/merge-cells/index.vue +17 -0
- package/template/.cursor/skills/yss-ui/assets/demos/table/merge-cells/style.less +3 -0
- package/template/.cursor/skills/yss-ui/assets/demos/table/pagination-remote/hooks/usePaginationRemote.ts +106 -0
- package/template/.cursor/skills/yss-ui/assets/demos/table/pagination-remote/index.vue +24 -0
- package/template/.cursor/skills/yss-ui/assets/demos/table/renderers/index.vue +64 -0
- package/template/.cursor/skills/yss-ui/assets/demos/table/selection-checkbox/index.vue +88 -0
- package/template/.cursor/skills/yss-ui/assets/demos/table/selection-checkbox/style.less +9 -0
- package/template/.cursor/skills/yss-ui/assets/demos/table/selection-radio/index.vue +57 -0
- package/template/.cursor/skills/yss-ui/assets/demos/table/selection-radio/style.less +9 -0
- package/template/.cursor/skills/yss-ui/assets/demos/table/transform/index.vue +32 -0
- package/template/.cursor/skills/yss-ui/assets/demos/tree/basic-left/index.vue +124 -0
- package/template/.cursor/skills/yss-ui/assets/demos/tree/datasource-group/index.vue +31 -0
- package/template/.cursor/skills/yss-ui/assets/demos/tree/multi-checkable/index.vue +86 -0
- package/template/.cursor/skills/yss-ui/assets/demos/tree/multiple-select/index.vue +76 -0
- package/template/.cursor/skills/yss-ui/assets/demos/tree/resource-list/index.vue +41 -0
- package/template/.cursor/skills/yss-ui/assets/demos/tree/search-toolbar/index.vue +156 -0
- package/template/.cursor/skills/yss-ui/assets/demos/tree/slot-icon/index.vue +36 -0
- package/template/.cursor/skills/yss-ui/assets/demos/tree/slot-switcher-icon/index.vue +34 -0
- package/template/.cursor/skills/yss-ui/assets/docs/components/button.md +79 -0
- package/template/.cursor/skills/yss-ui/assets/docs/components/card.md +162 -0
- package/template/.cursor/skills/yss-ui/assets/docs/components/conditionBuilder.md +114 -0
- package/template/.cursor/skills/yss-ui/assets/docs/components/cron.md +77 -0
- package/template/.cursor/skills/yss-ui/assets/docs/components/echarts.md +110 -0
- package/template/.cursor/skills/yss-ui/assets/docs/components/editTable.md +212 -0
- package/template/.cursor/skills/yss-ui/assets/docs/components/fileImport.md +85 -0
- package/template/.cursor/skills/yss-ui/assets/docs/components/formily.md +370 -0
- package/template/.cursor/skills/yss-ui/assets/docs/components/monaco.md +369 -0
- package/template/.cursor/skills/yss-ui/assets/docs/components/sheet.md +169 -0
- package/template/.cursor/skills/yss-ui/assets/docs/components/split-pane.md +45 -0
- package/template/.cursor/skills/yss-ui/assets/docs/components/table.md +398 -0
- package/template/.cursor/skills/yss-ui/assets/docs/components/tree.md +102 -0
- package/template/.cursor/skills/yss-ui/assets/docs/guide/gitlab-ci-integration.md +166 -0
- package/template/.cursor/skills/yss-ui/assets/docs/guide/index.md +132 -0
- package/template/.cursor/skills/yss-ui/assets/docs/guide/installation.md +97 -0
- package/template/.cursor/skills/yss-ui/assets/docs/guide/jsp.md +227 -0
- package/template/.cursor/skills/yss-ui/assets/docs/guide/llms.md +295 -0
- package/template/.cursor/skills/yss-ui/assets/docs/guide/monorepo-versioning.md +149 -0
- package/template/.cursor/skills/yss-ui/assets/docs/guide/release-workflow.md +251 -0
- package/template/.cursor/skills/yss-ui/assets/docs/hooks/use-table-height.md +101 -0
- package/template/.cursor/skills/yss-ui/assets/docs/hooks/use-tree-height.md +115 -0
- package/template/.cursor/skills/yss-ui/assets/docs/hooks/useFullscreen.md +130 -0
- package/template/.cursor/skills/yss-ui/assets/docs/hooks/useLoading.md +97 -0
- package/template/.cursor/skills/yss-ui/assets/docs/root/resources.md +18 -0
- package/template/.cursor/skills/yss-ui/assets/keyword-index.json +53 -0
- package/template/.cursor/skills/yss-ui/assets/keyword-index.md +47 -0
- package/template/.cursor/skills/yss-ui/assets/reference-index.json +55 -0
- package/template/.cursor/skills/yss-ui/assets/reference-index.md +74 -0
- package/template/.cursor/skills/yss-ui/assets/scenario-index.json +50 -0
- package/template/.cursor/skills/yss-ui/assets/scenario-index.md +41 -0
- package/template/.cursor/skills/yss-ui/references/accessibility.md +23 -0
- package/template/.cursor/skills/yss-ui/references/antdv-compatibility.md +39 -0
- package/template/.cursor/skills/yss-ui/references/checklist.md +110 -0
- package/template/.cursor/skills/yss-ui/references/component-routing.md +31 -0
- package/template/.cursor/skills/yss-ui/references/frontend-docs.md +11 -0
- package/template/.cursor/skills/yss-ui/references/migration-antdv-to-yss.md +20 -0
- package/template/.cursor/skills/yss-ui/references/quick-recipes.md +280 -0
- package/template/.cursor/skills/yss-ui/references/theme-locale-overlay.md +25 -0
- package/template/.cursor/skills/yss-ui/references/verification.md +20 -0
- package/template/.cursor/skills/yss-up-springboot3/SKILL.md +40 -0
- package/template/.cursor/skills/yss-up-springboot3/agents/openai.yaml +4 -0
- package/template/.cursor/skills/yss-use-table-height/SKILL.md +340 -0
- package/template/.cursor/skills/yss-use-table-height/agents/openai.yaml +5 -0
- package/template/.cursor/skills/yss-use-table-height/references/frontend-docs.md +9 -0
- package/template/.cursor/skills/yss-use-tree-height/SKILL.md +431 -0
- package/template/.cursor/skills/yss-use-tree-height/agents/openai.yaml +5 -0
- package/template/.cursor/skills/yss-use-tree-height/references/frontend-docs.md +9 -0
- package/template/.cursor/skills/yss-userinfo/SKILL.md +49 -0
- package/template/.cursor/skills/yss-userinfo/agents/openai.yaml +4 -0
- package/template/{.claude/skills/yss-jdbc → .cursor/skills/yss-userinfo}/references/source-index.md +6 -5
- package/template/.cursor/skills/yss-validation/SKILL.md +56 -0
- package/template/.cursor/skills/yss-validation/agents/openai.yaml +4 -0
- package/template/{.agents/skills/yss-jdbc → .cursor/skills/yss-validation}/references/source-index.md +6 -6
- package/template/.cursor/skills/yss-web-controller/SKILL.md +78 -0
- package/template/.cursor/skills/yss-web-controller/agents/openai.yaml +5 -0
- package/template/.cursor/skills/yss-web-controller/assets/templates/Controller.java.template +73 -0
- package/template/.cursor/skills/yss-web-controller/assets/templates/WebConvertor.java.template +23 -0
- package/template/.cursor/skills/yss-web-controller/assets/templates/domain/dto/cmd/AddCmd.java.template +23 -0
- package/template/.cursor/skills/yss-web-controller/assets/templates/domain/dto/cmd/UpdateCmd.java.template +23 -0
- package/template/.cursor/skills/yss-web-controller/assets/templates/domain/dto/query/PageQuery.java.template +21 -0
- package/template/.cursor/skills/yss-web-controller/assets/templates/domain/vo/VO.java.template +20 -0
- package/template/{.claude/skills/yss-backend-scaffold-web/SKILL.md → .cursor/skills/yss-web-controller/references/web-adapter-layer-guide.md} +0 -7
- package/template/.cursor/skills/yss-web-controller/scripts/generate_controller.mjs +77 -0
- package/template/.cursor/skills/yss-web-controller/scripts/generate_controller.test.mjs +19 -0
- package/template/.hermes/skills/ask-matt/SKILL.md +8 -2
- package/template/.hermes/skills/code-review/SKILL.md +6 -4
- package/template/.hermes/skills/diagnosing-bugs/SKILL.md +2 -4
- package/template/.hermes/skills/domain-modeling/SKILL.md +1 -1
- package/template/.hermes/skills/grilling/SKILL.md +7 -1
- package/template/.hermes/skills/high-fidelity-html-prototype/SKILL.md +1 -1
- package/template/.hermes/skills/implement/SKILL.md +1 -1
- package/template/.hermes/skills/to-spec/SKILL.md +1 -1
- package/template/.hermes/skills/triage/SKILL.md +2 -2
- package/template/.hermes/skills/wait-what/SKILL.md +2 -2
- package/template/.hermes/skills/wayfinder/SKILL.md +1 -1
- package/template/.hermes/skills/yss-api-integration/SKILL.md +2 -0
- package/template/.hermes/skills/yss-application/SKILL.md +52 -0
- package/template/.hermes/skills/yss-application/agents/openai.yaml +5 -0
- package/template/.hermes/skills/yss-application/references/application-layer-guide.md +132 -0
- package/template/.hermes/skills/yss-ddd-scaffold-generator/SKILL.md +1 -1
- package/template/.hermes/skills/yss-ddd-scaffold-generator/references/ARCHITECTURE.md +4 -4
- package/template/.hermes/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-application/SKILL.md +2 -2
- package/template/.hermes/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-application/agents/openai.yaml +1 -1
- package/template/.hermes/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-domain/SKILL.md +2 -2
- package/template/.hermes/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-domain/agents/openai.yaml +1 -1
- package/template/.hermes/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-infrastructure/SKILL.md +3 -3
- package/template/.hermes/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-infrastructure/agents/openai.yaml +1 -1
- package/template/.hermes/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-web/SKILL.md +4 -4
- package/template/.hermes/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-web/agents/openai.yaml +1 -1
- package/template/.hermes/skills/yss-domain/SKILL.md +5 -0
- package/template/.hermes/skills/yss-domain/references/domain-layer-guide.md +274 -0
- package/template/.hermes/skills/yss-microapp-commit/SKILL.md +2 -0
- package/template/.hermes/skills/yss-product-lifecycle/SKILL.md +43 -91
- package/template/.hermes/skills/yss-product-lifecycle/references/matt-yss-adapter.md +7 -5
- package/template/.hermes/skills/yss-product-lifecycle/references/orchestration-contract.yaml +88 -22
- package/template/.hermes/skills/yss-product-lifecycle/references/orchestration.md +5 -4
- package/template/.hermes/skills/yss-product-lifecycle/references/state-model.md +4 -1
- package/template/.hermes/skills/yss-prototype-stage/SKILL.md +1 -1
- package/template/.hermes/skills/yss-repository/SKILL.md +5 -0
- package/template/.hermes/skills/yss-repository/references/infrastructure-layer-guide.md +192 -0
- package/template/.hermes/skills/yss-router/references/boundaries.md +2 -6
- package/template/.hermes/skills/yss-router/references/router-contract.yaml +8 -12
- package/template/.hermes/skills/yss-source-index/references/source-map-config.md +0 -4
- package/template/.hermes/skills/yss-source-index/scripts/refresh-yss-skill-index.mjs +1 -1
- package/template/.hermes/skills/yss-web-controller/SKILL.md +1 -0
- package/template/.hermes/skills/yss-web-controller/references/web-adapter-layer-guide.md +168 -0
- package/template/.pi/skills/ask-matt/SKILL.md +8 -2
- package/template/.pi/skills/code-review/SKILL.md +6 -4
- package/template/.pi/skills/diagnosing-bugs/SKILL.md +2 -4
- package/template/.pi/skills/domain-modeling/SKILL.md +1 -1
- package/template/.pi/skills/grilling/SKILL.md +7 -1
- package/template/.pi/skills/high-fidelity-html-prototype/SKILL.md +1 -1
- package/template/.pi/skills/implement/SKILL.md +1 -1
- package/template/.pi/skills/to-spec/SKILL.md +1 -1
- package/template/.pi/skills/triage/SKILL.md +2 -2
- package/template/.pi/skills/wait-what/SKILL.md +2 -2
- package/template/.pi/skills/wayfinder/SKILL.md +1 -1
- package/template/.pi/skills/yss-api-integration/SKILL.md +2 -0
- package/template/.pi/skills/yss-application/SKILL.md +52 -0
- package/template/.pi/skills/yss-application/agents/openai.yaml +5 -0
- package/template/.pi/skills/yss-application/references/application-layer-guide.md +132 -0
- package/template/.pi/skills/yss-ddd-scaffold-generator/SKILL.md +1 -1
- package/template/.pi/skills/yss-ddd-scaffold-generator/references/ARCHITECTURE.md +4 -4
- package/template/.pi/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-application/SKILL.md +2 -2
- package/template/.pi/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-application/agents/openai.yaml +1 -1
- package/template/.pi/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-domain/SKILL.md +2 -2
- package/template/.pi/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-domain/agents/openai.yaml +1 -1
- package/template/.pi/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-infrastructure/SKILL.md +3 -3
- package/template/.pi/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-infrastructure/agents/openai.yaml +1 -1
- package/template/.pi/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-web/SKILL.md +4 -4
- package/template/.pi/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-web/agents/openai.yaml +1 -1
- package/template/.pi/skills/yss-domain/SKILL.md +5 -0
- package/template/.pi/skills/yss-domain/references/domain-layer-guide.md +274 -0
- package/template/.pi/skills/yss-microapp-commit/SKILL.md +2 -0
- package/template/.pi/skills/yss-product-lifecycle/SKILL.md +43 -91
- package/template/.pi/skills/yss-product-lifecycle/references/matt-yss-adapter.md +7 -5
- package/template/.pi/skills/yss-product-lifecycle/references/orchestration-contract.yaml +88 -22
- package/template/.pi/skills/yss-product-lifecycle/references/orchestration.md +5 -4
- package/template/.pi/skills/yss-product-lifecycle/references/state-model.md +4 -1
- package/template/.pi/skills/yss-prototype-stage/SKILL.md +1 -1
- package/template/.pi/skills/yss-repository/SKILL.md +5 -0
- package/template/.pi/skills/yss-repository/references/infrastructure-layer-guide.md +192 -0
- package/template/.pi/skills/yss-router/references/boundaries.md +2 -6
- package/template/.pi/skills/yss-router/references/router-contract.yaml +8 -12
- package/template/.pi/skills/yss-source-index/references/source-map-config.md +0 -4
- package/template/.pi/skills/yss-source-index/scripts/refresh-yss-skill-index.mjs +1 -1
- package/template/.pi/skills/yss-web-controller/SKILL.md +1 -0
- package/template/.pi/skills/yss-web-controller/references/web-adapter-layer-guide.md +168 -0
- package/template/.qoder/skills/ask-matt/SKILL.md +8 -2
- package/template/.qoder/skills/code-review/SKILL.md +6 -4
- package/template/.qoder/skills/diagnosing-bugs/SKILL.md +2 -4
- package/template/.qoder/skills/domain-modeling/SKILL.md +1 -1
- package/template/.qoder/skills/grilling/SKILL.md +7 -1
- package/template/.qoder/skills/high-fidelity-html-prototype/SKILL.md +1 -1
- package/template/.qoder/skills/implement/SKILL.md +1 -1
- package/template/.qoder/skills/to-spec/SKILL.md +1 -1
- package/template/.qoder/skills/triage/SKILL.md +2 -2
- package/template/.qoder/skills/wait-what/SKILL.md +2 -2
- package/template/.qoder/skills/wayfinder/SKILL.md +1 -1
- package/template/.qoder/skills/yss-api-integration/SKILL.md +2 -0
- package/template/.qoder/skills/yss-application/SKILL.md +52 -0
- package/template/.qoder/skills/yss-application/agents/openai.yaml +5 -0
- package/template/.qoder/skills/yss-application/references/application-layer-guide.md +132 -0
- package/template/.qoder/skills/yss-ddd-scaffold-generator/SKILL.md +1 -1
- package/template/.qoder/skills/yss-ddd-scaffold-generator/references/ARCHITECTURE.md +4 -4
- package/template/.qoder/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-application/SKILL.md +2 -2
- package/template/.qoder/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-application/agents/openai.yaml +1 -1
- package/template/.qoder/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-domain/SKILL.md +2 -2
- package/template/.qoder/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-domain/agents/openai.yaml +1 -1
- package/template/.qoder/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-infrastructure/SKILL.md +3 -3
- package/template/.qoder/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-infrastructure/agents/openai.yaml +1 -1
- package/template/.qoder/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-web/SKILL.md +4 -4
- package/template/.qoder/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-web/agents/openai.yaml +1 -1
- package/template/.qoder/skills/yss-domain/SKILL.md +5 -0
- package/template/.qoder/skills/yss-domain/references/domain-layer-guide.md +274 -0
- package/template/.qoder/skills/yss-microapp-commit/SKILL.md +2 -0
- package/template/.qoder/skills/yss-product-lifecycle/SKILL.md +43 -91
- package/template/.qoder/skills/yss-product-lifecycle/references/matt-yss-adapter.md +7 -5
- package/template/.qoder/skills/yss-product-lifecycle/references/orchestration-contract.yaml +88 -22
- package/template/.qoder/skills/yss-product-lifecycle/references/orchestration.md +5 -4
- package/template/.qoder/skills/yss-product-lifecycle/references/state-model.md +4 -1
- package/template/.qoder/skills/yss-prototype-stage/SKILL.md +1 -1
- package/template/.qoder/skills/yss-repository/SKILL.md +5 -0
- package/template/.qoder/skills/yss-repository/references/infrastructure-layer-guide.md +192 -0
- package/template/.qoder/skills/yss-router/references/boundaries.md +2 -6
- package/template/.qoder/skills/yss-router/references/router-contract.yaml +8 -12
- package/template/.qoder/skills/yss-source-index/references/source-map-config.md +0 -4
- package/template/.qoder/skills/yss-source-index/scripts/refresh-yss-skill-index.mjs +1 -1
- package/template/.qoder/skills/yss-web-controller/SKILL.md +1 -0
- package/template/.qoder/skills/yss-web-controller/references/web-adapter-layer-guide.md +168 -0
- package/template/.trae/skills/ask-matt/SKILL.md +8 -2
- package/template/.trae/skills/code-review/SKILL.md +6 -4
- package/template/.trae/skills/diagnosing-bugs/SKILL.md +2 -4
- package/template/.trae/skills/domain-modeling/SKILL.md +1 -1
- package/template/.trae/skills/grilling/SKILL.md +7 -1
- package/template/.trae/skills/high-fidelity-html-prototype/SKILL.md +1 -1
- package/template/.trae/skills/implement/SKILL.md +1 -1
- package/template/.trae/skills/to-spec/SKILL.md +1 -1
- package/template/.trae/skills/triage/SKILL.md +2 -2
- package/template/.trae/skills/wait-what/SKILL.md +2 -2
- package/template/.trae/skills/wayfinder/SKILL.md +1 -1
- package/template/.trae/skills/yss-api-integration/SKILL.md +2 -0
- package/template/.trae/skills/yss-application/SKILL.md +52 -0
- package/template/.trae/skills/yss-application/agents/openai.yaml +5 -0
- package/template/.trae/skills/yss-application/references/application-layer-guide.md +132 -0
- package/template/.trae/skills/yss-ddd-scaffold-generator/SKILL.md +1 -1
- package/template/.trae/skills/yss-ddd-scaffold-generator/references/ARCHITECTURE.md +4 -4
- package/template/.trae/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-application/SKILL.md +2 -2
- package/template/.trae/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-application/agents/openai.yaml +1 -1
- package/template/.trae/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-domain/SKILL.md +2 -2
- package/template/.trae/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-domain/agents/openai.yaml +1 -1
- package/template/.trae/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-infrastructure/SKILL.md +3 -3
- package/template/.trae/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-infrastructure/agents/openai.yaml +1 -1
- package/template/.trae/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-web/SKILL.md +4 -4
- package/template/.trae/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-web/agents/openai.yaml +1 -1
- package/template/.trae/skills/yss-domain/SKILL.md +5 -0
- package/template/.trae/skills/yss-domain/references/domain-layer-guide.md +274 -0
- package/template/.trae/skills/yss-microapp-commit/SKILL.md +2 -0
- package/template/.trae/skills/yss-product-lifecycle/SKILL.md +43 -91
- package/template/.trae/skills/yss-product-lifecycle/references/matt-yss-adapter.md +7 -5
- package/template/.trae/skills/yss-product-lifecycle/references/orchestration-contract.yaml +88 -22
- package/template/.trae/skills/yss-product-lifecycle/references/orchestration.md +5 -4
- package/template/.trae/skills/yss-product-lifecycle/references/state-model.md +4 -1
- package/template/.trae/skills/yss-prototype-stage/SKILL.md +1 -1
- package/template/.trae/skills/yss-repository/SKILL.md +5 -0
- package/template/.trae/skills/yss-repository/references/infrastructure-layer-guide.md +192 -0
- package/template/.trae/skills/yss-router/references/boundaries.md +2 -6
- package/template/.trae/skills/yss-router/references/router-contract.yaml +8 -12
- package/template/.trae/skills/yss-source-index/references/source-map-config.md +0 -4
- package/template/.trae/skills/yss-source-index/scripts/refresh-yss-skill-index.mjs +1 -1
- package/template/.trae/skills/yss-web-controller/SKILL.md +1 -0
- package/template/.trae/skills/yss-web-controller/references/web-adapter-layer-guide.md +168 -0
- package/template/AGENTS.md +16 -3
- package/template/CONTEXT.md +8 -4
- package/template/README.md +2 -1
- package/template/docs/adr/0007-lifecycle-native-work-units.md +5 -0
- package/template/docs/agents/README.md +6 -4
- package/template/docs/agents/skills-maintenance.md +14 -4
- package/template/docs/agents/yss-skill-registry.yaml +498 -0
- package/template/docs/architecture/templates/engineering-baseline-review-template.md +2 -2
- package/template/docs/process/MATT-POCOCK-ENGINEERING-SKILLS.md +1 -1
- package/template/docs/process/lifecycle-artifact-map.md +19 -15
- package/template/docs/process/lifecycle-registry-baseline.json +15 -1
- package/template/docs/process/lifecycle-registry.yaml +77 -0
- package/template/docs/process/schemas/frontend-implementation-evidence.schema.json +39 -0
- package/template/docs/process/schemas/lifecycle-checkpoint.schema.json +56 -0
- package/template/docs/process/schemas/lifecycle-registry.schema.json +2 -2
- package/template/docs/process/templates/frontend-implementation-plan-template.yaml +16 -0
- package/template/docs/process/templates/frontend-implementation-verification-template.yaml +21 -0
- package/template/docs/process/templates/lifecycle-checkpoint-template.yaml +30 -0
- package/template/docs/process/templates/stage-checkpoint-template.md +9 -5
- package/template/docs/templates/build-architecture-checklist-template.md +5 -5
- package/template/docs/templates/implementation-routing-template.md +5 -5
- package/template/docs/templates/review-report-template.md +3 -3
- package/template/docs/templates/vertical-slice-ticket-template.md +4 -4
- package/template/docs/user-guide//344/272/247/345/223/201/347/240/224/345/217/221/345/205/250/347/224/237/345/221/275/345/221/250/346/234/237/346/234/200/344/275/263/345/256/236/350/267/265.md +2 -1
- package/template/docs/user-guide//347/224/237/345/221/275/345/221/250/346/234/237/346/234/200/344/275/263/345/256/236/350/267/265.md +2 -2
- package/template/scripts/lib/lifecycle-registry.mjs +9 -4
- package/template/scripts/lib/scenario-checks.mjs +37 -15
- package/template/scripts/lib/skill-registry.mjs +198 -0
- package/template/scripts/lib/skill-supply-chain.mjs +39 -11
- package/template/scripts/verify-frontend-implementation-evidence +51 -0
- package/template/scripts/verify-lifecycle-checkpoint +37 -0
- package/template/scripts/verify-skill-registry +10 -0
- package/template/scripts/verify-template +6 -2
- package/template/scripts/verify-upstream-skill-source +32 -0
- package/template/skills-lock.json +205 -195
- package/template/yss-public-skills.json +2 -16
- package/template.manifest.json +12 -0
- package/template.snapshot.json +4 -4
- package/template/.agents/skills/batch-grill-me/agents/openai.yaml +0 -5
- package/template/.agents/skills/product-design-prototype/SKILL.md +0 -91
- package/template/.agents/skills/product-design-prototype/agents/openai.yaml +0 -4
- package/template/.agents/skills/yss-backend-scaffold-domain/agents/openai.yaml +0 -5
- package/template/.agents/skills/yss-backend-scaffold-infrastructure/agents/openai.yaml +0 -5
- package/template/.agents/skills/yss-backend-scaffold-web/agents/openai.yaml +0 -5
- package/template/.agents/skills/yss-dictionary/SKILL.md +0 -49
- package/template/.agents/skills/yss-dictionary/agents/openai.yaml +0 -4
- package/template/.agents/skills/yss-dictionary/references/source-index.md +0 -80
- package/template/.agents/skills/yss-jdbc/SKILL.md +0 -73
- package/template/.agents/skills/yss-jdbc/agents/openai.yaml +0 -5
- package/template/.agents/skills/yss-jdbc/assets/DefaultHutoolConfiguration.java +0 -9
- package/template/.agents/skills/yss-jdbc/assets/DefaultHutoolDbHolder.java +0 -33
- package/template/.agents/skills/yss-jdbc/assets/DsParam.java +0 -19
- package/template/.agents/skills/yss-jdbc/assets/JdbcSqlUtil.java +0 -92
- package/template/.agents/skills/yss-jdbc/references/README.md +0 -55
- package/template/.agents/skills/yss-log/SKILL.md +0 -48
- package/template/.agents/skills/yss-log/agents/openai.yaml +0 -4
- package/template/.agents/skills/yss-log/references/source-index.md +0 -34
- package/template/.agents/skills/yss-taskflow/SKILL.md +0 -58
- package/template/.agents/skills/yss-taskflow/agents/openai.yaml +0 -4
- package/template/.agents/skills/yss-taskflow/references/source-index.md +0 -158
- package/template/.claude/skills/batch-grill-me/SKILL.md +0 -15
- package/template/.claude/skills/batch-grill-me/agents/openai.yaml +0 -5
- package/template/.claude/skills/product-design-prototype/SKILL.md +0 -91
- package/template/.claude/skills/product-design-prototype/agents/openai.yaml +0 -4
- package/template/.claude/skills/yss-backend-scaffold-application/agents/openai.yaml +0 -5
- package/template/.claude/skills/yss-dictionary/SKILL.md +0 -49
- package/template/.claude/skills/yss-dictionary/agents/openai.yaml +0 -4
- package/template/.claude/skills/yss-dictionary/references/source-index.md +0 -80
- package/template/.claude/skills/yss-jdbc/SKILL.md +0 -73
- package/template/.claude/skills/yss-jdbc/agents/openai.yaml +0 -5
- package/template/.claude/skills/yss-jdbc/assets/DefaultHutoolConfiguration.java +0 -9
- package/template/.claude/skills/yss-jdbc/assets/DefaultHutoolDbHolder.java +0 -33
- package/template/.claude/skills/yss-jdbc/assets/DsParam.java +0 -19
- package/template/.claude/skills/yss-jdbc/assets/JdbcSqlUtil.java +0 -92
- package/template/.claude/skills/yss-jdbc/references/README.md +0 -55
- package/template/.claude/skills/yss-log/SKILL.md +0 -48
- package/template/.claude/skills/yss-log/agents/openai.yaml +0 -4
- package/template/.claude/skills/yss-taskflow/SKILL.md +0 -58
- package/template/.claude/skills/yss-taskflow/agents/openai.yaml +0 -4
- package/template/.claude/skills/yss-taskflow/references/source-index.md +0 -158
- package/template/.codex/skills/batch-grill-me/SKILL.md +0 -15
- package/template/.codex/skills/batch-grill-me/agents/openai.yaml +0 -5
- package/template/.codex/skills/product-design-prototype/SKILL.md +0 -91
- package/template/.codex/skills/product-design-prototype/agents/openai.yaml +0 -4
- package/template/.codex/skills/yss-backend-scaffold-application/agents/openai.yaml +0 -5
- package/template/.codex/skills/yss-backend-scaffold-domain/agents/openai.yaml +0 -5
- package/template/.codex/skills/yss-backend-scaffold-infrastructure/agents/openai.yaml +0 -5
- package/template/.codex/skills/yss-backend-scaffold-web/agents/openai.yaml +0 -5
- package/template/.codex/skills/yss-dictionary/SKILL.md +0 -49
- package/template/.codex/skills/yss-dictionary/agents/openai.yaml +0 -4
- package/template/.codex/skills/yss-dictionary/references/source-index.md +0 -80
- package/template/.codex/skills/yss-jdbc/SKILL.md +0 -73
- package/template/.codex/skills/yss-jdbc/agents/openai.yaml +0 -5
- package/template/.codex/skills/yss-jdbc/assets/DefaultHutoolConfiguration.java +0 -9
- package/template/.codex/skills/yss-jdbc/assets/DefaultHutoolDbHolder.java +0 -33
- package/template/.codex/skills/yss-jdbc/assets/DsParam.java +0 -19
- package/template/.codex/skills/yss-jdbc/assets/JdbcSqlUtil.java +0 -92
- package/template/.codex/skills/yss-jdbc/references/README.md +0 -55
- package/template/.codex/skills/yss-log/SKILL.md +0 -48
- package/template/.codex/skills/yss-log/agents/openai.yaml +0 -4
- package/template/.codex/skills/yss-log/references/source-index.md +0 -34
- package/template/.codex/skills/yss-taskflow/SKILL.md +0 -58
- package/template/.codex/skills/yss-taskflow/agents/openai.yaml +0 -4
- package/template/.codex/skills/yss-taskflow/references/source-index.md +0 -158
- package/template/.hermes/skills/batch-grill-me/SKILL.md +0 -15
- package/template/.hermes/skills/batch-grill-me/agents/openai.yaml +0 -5
- package/template/.hermes/skills/product-design-prototype/SKILL.md +0 -91
- package/template/.hermes/skills/product-design-prototype/agents/openai.yaml +0 -4
- package/template/.hermes/skills/yss-backend-scaffold-application/agents/openai.yaml +0 -5
- package/template/.hermes/skills/yss-backend-scaffold-domain/agents/openai.yaml +0 -5
- package/template/.hermes/skills/yss-backend-scaffold-infrastructure/agents/openai.yaml +0 -5
- package/template/.hermes/skills/yss-backend-scaffold-web/agents/openai.yaml +0 -5
- package/template/.hermes/skills/yss-dictionary/SKILL.md +0 -49
- package/template/.hermes/skills/yss-dictionary/agents/openai.yaml +0 -4
- package/template/.hermes/skills/yss-dictionary/references/source-index.md +0 -80
- package/template/.hermes/skills/yss-jdbc/SKILL.md +0 -73
- package/template/.hermes/skills/yss-jdbc/agents/openai.yaml +0 -5
- package/template/.hermes/skills/yss-jdbc/assets/DefaultHutoolConfiguration.java +0 -9
- package/template/.hermes/skills/yss-jdbc/assets/DefaultHutoolDbHolder.java +0 -33
- package/template/.hermes/skills/yss-jdbc/assets/DsParam.java +0 -19
- package/template/.hermes/skills/yss-jdbc/assets/JdbcSqlUtil.java +0 -92
- package/template/.hermes/skills/yss-jdbc/references/README.md +0 -55
- package/template/.hermes/skills/yss-log/SKILL.md +0 -48
- package/template/.hermes/skills/yss-log/agents/openai.yaml +0 -4
- package/template/.hermes/skills/yss-log/references/source-index.md +0 -34
- package/template/.hermes/skills/yss-taskflow/SKILL.md +0 -58
- package/template/.hermes/skills/yss-taskflow/agents/openai.yaml +0 -4
- package/template/.hermes/skills/yss-taskflow/references/source-index.md +0 -158
- package/template/.pi/skills/batch-grill-me/SKILL.md +0 -15
- package/template/.pi/skills/batch-grill-me/agents/openai.yaml +0 -5
- package/template/.pi/skills/product-design-prototype/SKILL.md +0 -91
- package/template/.pi/skills/product-design-prototype/agents/openai.yaml +0 -4
- package/template/.pi/skills/yss-backend-scaffold-application/SKILL.md +0 -139
- package/template/.pi/skills/yss-backend-scaffold-application/agents/openai.yaml +0 -5
- package/template/.pi/skills/yss-backend-scaffold-domain/SKILL.md +0 -281
- package/template/.pi/skills/yss-backend-scaffold-domain/agents/openai.yaml +0 -5
- package/template/.pi/skills/yss-backend-scaffold-infrastructure/SKILL.md +0 -199
- package/template/.pi/skills/yss-backend-scaffold-infrastructure/agents/openai.yaml +0 -5
- package/template/.pi/skills/yss-backend-scaffold-web/SKILL.md +0 -175
- package/template/.pi/skills/yss-backend-scaffold-web/agents/openai.yaml +0 -5
- package/template/.pi/skills/yss-dictionary/SKILL.md +0 -49
- package/template/.pi/skills/yss-dictionary/agents/openai.yaml +0 -4
- package/template/.pi/skills/yss-dictionary/references/source-index.md +0 -80
- package/template/.pi/skills/yss-jdbc/SKILL.md +0 -73
- package/template/.pi/skills/yss-jdbc/agents/openai.yaml +0 -5
- package/template/.pi/skills/yss-jdbc/assets/DefaultHutoolConfiguration.java +0 -9
- package/template/.pi/skills/yss-jdbc/assets/DefaultHutoolDbHolder.java +0 -33
- package/template/.pi/skills/yss-jdbc/assets/DsParam.java +0 -19
- package/template/.pi/skills/yss-jdbc/assets/JdbcSqlUtil.java +0 -92
- package/template/.pi/skills/yss-jdbc/references/README.md +0 -55
- package/template/.pi/skills/yss-jdbc/references/source-index.md +0 -33
- package/template/.pi/skills/yss-log/SKILL.md +0 -48
- package/template/.pi/skills/yss-log/agents/openai.yaml +0 -4
- package/template/.pi/skills/yss-log/references/source-index.md +0 -34
- package/template/.pi/skills/yss-taskflow/SKILL.md +0 -58
- package/template/.pi/skills/yss-taskflow/agents/openai.yaml +0 -4
- package/template/.pi/skills/yss-taskflow/references/source-index.md +0 -158
- package/template/.qoder/skills/batch-grill-me/SKILL.md +0 -15
- package/template/.qoder/skills/batch-grill-me/agents/openai.yaml +0 -5
- package/template/.qoder/skills/product-design-prototype/SKILL.md +0 -91
- package/template/.qoder/skills/product-design-prototype/agents/openai.yaml +0 -4
- package/template/.qoder/skills/yss-backend-scaffold-application/SKILL.md +0 -139
- package/template/.qoder/skills/yss-backend-scaffold-application/agents/openai.yaml +0 -5
- package/template/.qoder/skills/yss-backend-scaffold-domain/SKILL.md +0 -281
- package/template/.qoder/skills/yss-backend-scaffold-domain/agents/openai.yaml +0 -5
- package/template/.qoder/skills/yss-backend-scaffold-infrastructure/SKILL.md +0 -199
- package/template/.qoder/skills/yss-backend-scaffold-infrastructure/agents/openai.yaml +0 -5
- package/template/.qoder/skills/yss-backend-scaffold-web/SKILL.md +0 -175
- package/template/.qoder/skills/yss-backend-scaffold-web/agents/openai.yaml +0 -5
- package/template/.qoder/skills/yss-dictionary/SKILL.md +0 -49
- package/template/.qoder/skills/yss-dictionary/agents/openai.yaml +0 -4
- package/template/.qoder/skills/yss-dictionary/references/source-index.md +0 -80
- package/template/.qoder/skills/yss-jdbc/SKILL.md +0 -73
- package/template/.qoder/skills/yss-jdbc/agents/openai.yaml +0 -5
- package/template/.qoder/skills/yss-jdbc/assets/DefaultHutoolConfiguration.java +0 -9
- package/template/.qoder/skills/yss-jdbc/assets/DefaultHutoolDbHolder.java +0 -33
- package/template/.qoder/skills/yss-jdbc/assets/DsParam.java +0 -19
- package/template/.qoder/skills/yss-jdbc/assets/JdbcSqlUtil.java +0 -92
- package/template/.qoder/skills/yss-jdbc/references/README.md +0 -55
- package/template/.qoder/skills/yss-jdbc/references/source-index.md +0 -33
- package/template/.qoder/skills/yss-log/SKILL.md +0 -48
- package/template/.qoder/skills/yss-log/agents/openai.yaml +0 -4
- package/template/.qoder/skills/yss-log/references/source-index.md +0 -34
- package/template/.qoder/skills/yss-taskflow/SKILL.md +0 -58
- package/template/.qoder/skills/yss-taskflow/agents/openai.yaml +0 -4
- package/template/.qoder/skills/yss-taskflow/references/source-index.md +0 -158
- package/template/.trae/skills/batch-grill-me/SKILL.md +0 -15
- package/template/.trae/skills/batch-grill-me/agents/openai.yaml +0 -5
- package/template/.trae/skills/product-design-prototype/SKILL.md +0 -91
- package/template/.trae/skills/product-design-prototype/agents/openai.yaml +0 -4
- package/template/.trae/skills/yss-backend-scaffold-application/SKILL.md +0 -139
- package/template/.trae/skills/yss-backend-scaffold-application/agents/openai.yaml +0 -5
- package/template/.trae/skills/yss-backend-scaffold-domain/SKILL.md +0 -281
- package/template/.trae/skills/yss-backend-scaffold-domain/agents/openai.yaml +0 -5
- package/template/.trae/skills/yss-backend-scaffold-infrastructure/SKILL.md +0 -199
- package/template/.trae/skills/yss-backend-scaffold-infrastructure/agents/openai.yaml +0 -5
- package/template/.trae/skills/yss-backend-scaffold-web/SKILL.md +0 -175
- package/template/.trae/skills/yss-backend-scaffold-web/agents/openai.yaml +0 -5
- package/template/.trae/skills/yss-dictionary/SKILL.md +0 -49
- package/template/.trae/skills/yss-dictionary/agents/openai.yaml +0 -4
- package/template/.trae/skills/yss-dictionary/references/source-index.md +0 -80
- package/template/.trae/skills/yss-jdbc/SKILL.md +0 -73
- package/template/.trae/skills/yss-jdbc/agents/openai.yaml +0 -5
- package/template/.trae/skills/yss-jdbc/assets/DefaultHutoolConfiguration.java +0 -9
- package/template/.trae/skills/yss-jdbc/assets/DefaultHutoolDbHolder.java +0 -33
- package/template/.trae/skills/yss-jdbc/assets/DsParam.java +0 -19
- package/template/.trae/skills/yss-jdbc/assets/JdbcSqlUtil.java +0 -92
- package/template/.trae/skills/yss-jdbc/references/README.md +0 -55
- package/template/.trae/skills/yss-jdbc/references/source-index.md +0 -33
- package/template/.trae/skills/yss-log/SKILL.md +0 -48
- package/template/.trae/skills/yss-log/agents/openai.yaml +0 -4
- package/template/.trae/skills/yss-log/references/source-index.md +0 -34
- package/template/.trae/skills/yss-taskflow/SKILL.md +0 -58
- package/template/.trae/skills/yss-taskflow/agents/openai.yaml +0 -4
- package/template/.trae/skills/yss-taskflow/references/source-index.md +0 -158
|
@@ -2,12 +2,14 @@
|
|
|
2
2
|
|
|
3
3
|
Matt skills 决定如何工作;YSS 生命周期决定是否允许推进;YSS 专项 skills 决定如何符合工程规范。
|
|
4
4
|
|
|
5
|
+
生命周期默认使用 `work_unit_routes.*.native`;下表中的 Matt flow 是 `work_unit_routes.*.compatibility` 显式兼容输入。兼容入口的正式资产由用户创建并回交生命周期验收,原生工作单元的正式资产由生命周期编排器创建。
|
|
6
|
+
|
|
5
7
|
## 入口与仓库身份裁决
|
|
6
8
|
|
|
7
9
|
- 所有入口先读取 `yss-project.yaml`。缺失、解析失败、schema 不支持或 `repository_mode` 非法时,停止路由并进入 migration-check。
|
|
8
10
|
- **直接调用 `ask-matt`** 时,它只能提供通用 Matt flow 导航,不得写生命周期资产、改变门禁或 Ticket 状态;有效 YSS 仓库必须在任何写入前把最终阶段、影响面、门禁和状态裁决交回 `yss-product-lifecycle`。
|
|
9
11
|
- **直接调用生命周期管理的 Matt user-invoked skill**(`setup-matt-pocock-skills`、`grill-with-docs`、`to-spec`、`to-tickets`、`implement`)时,用户仍是正式资产的创建者;生命周期先校验前置条件,再接受结果并重新计算阶段、门禁和状态。它们不适用 `ask-matt` 的 `navigate-only` 限制。其他 user-invoked skill 同样不得由生命周期自动调用;只有在其专属适配合同存在时才进入 YSS 流程。
|
|
10
|
-
- **直接调用 `yss-product-lifecycle`** 时,不机械嵌套调用任何 Matt user-invoked skill
|
|
12
|
+
- **直接调用 `yss-product-lifecycle`** 时,不机械嵌套调用任何 Matt user-invoked skill;编排器直接使用原生工作单元和允许的 model-invoked 原语。Matt user-invoked skill 保持显式兼容入口,生命周期负责准备、校验并验收其结果。
|
|
11
13
|
- `template-source` 只允许进入模板维护流程。命中 `to-spec`、`to-tickets`、`implement`、Release 或 Retrospective 时返回 `blocked`,原因是 `template-source-product-artifact-forbidden`;`ask-matt` 和 `setup-matt-pocock-skills` 都不得为具体产品生成 Spec、prototype、OpenAPI 或垂直切片 Ticket。
|
|
12
14
|
- `project-instance` 才允许进入产品 Discovery → Spec → 设计 → 契约 → Ticket → 实现 → Release / Retrospective 链路。
|
|
13
15
|
|
|
@@ -20,9 +22,9 @@ Matt skills 决定如何工作;YSS 生命周期决定是否允许推进;YSS
|
|
|
20
22
|
| 大型模糊工作 | `wayfinder` | map 真正完成后 `handoff → to-spec` |
|
|
21
23
|
| 技术事实 | `research` | 一手资料回填 Spec/OpenAPI/架构/ADR |
|
|
22
24
|
| runnable 问题 | `prototype` | 生成单文件可分享 HTML,保留 `prototype/<name>` 分支作为主来源;必须 source/return handoff 和结论回填,不得替代阶段 4 的低保真评审、Ant Design v6 高保真 HTML、AntD CLI 证据和用户确认 |
|
|
23
|
-
| Spec 综合 | `to-spec
|
|
24
|
-
| 切片 | `to-tickets
|
|
25
|
-
| 实现 | `implement
|
|
25
|
+
| Spec 综合 | 原生 `work-unit.spec-synthesis`;`to-spec`(用户显式兼容) | 初稿进入 `ready-for-human`,不得直接实现 |
|
|
26
|
+
| 切片 | 原生 `work-unit.ticket-decomposition`;`to-tickets`(用户显式兼容) | 仅在冻结/无影响记录后拆垂直切片,初始角色为 `ready-for-human` |
|
|
27
|
+
| 实现 | 原生 `work-unit.slice-implementation`;`implement`(用户显式兼容) | 当前合同批准并持久化后执行;内部使用 `tdd`,结果回交后再次核验 |
|
|
26
28
|
| Bug | `diagnosing-bugs`、`tdd` | 先建立红色反馈;高风险影响升级上游门禁 |
|
|
27
29
|
| 审查 | `code-review` | 唯一默认代码审查入口;审查者独立,结合 Spec、仓库治理规则和 YSS 标准 |
|
|
28
30
|
| 跨上下文 | `handoff` | 保存来源、阶段、未决项、命令和下一责任人 |
|
|
@@ -60,7 +62,7 @@ blocking_signals: []
|
|
|
60
62
|
|
|
61
63
|
Router 状态映射为:`draft → completed`、`blocked → blocked`、`ready-for-lifecycle-review → needs-human`。这里的 `completed` 只表示 Matt 工作单元已产出可验收结果,不表示生命周期完成或可发布。
|
|
62
64
|
|
|
63
|
-
`completed` 的 `evidence_refs`
|
|
65
|
+
`completed` 的 `evidence_refs` 至少包含一条可读取或可解析的证据引用;只有字段存在但为空,不能证明工作单元完成。兼容入口下的正式 Spec、Ticket 或实现资产仍只能由对应显式用户入口创建;原生工作单元由生命周期编排器创建并持有状态。
|
|
64
66
|
|
|
65
67
|
## Matt flow 前置条件
|
|
66
68
|
|
package/template/.claude/skills/yss-product-lifecycle/references/orchestration-contract.yaml
CHANGED
|
@@ -92,41 +92,79 @@ workflow_execution_result:
|
|
|
92
92
|
completed_requires_no_blocking_signals: true
|
|
93
93
|
workflow_reference:
|
|
94
94
|
required: [source, skill, invocation_mode]
|
|
95
|
-
|
|
95
|
+
allowed_sources: [yss-product-lifecycle, mattpocock/skills]
|
|
96
96
|
|
|
97
97
|
# Matt user-invoked skills remain explicit user entry points. Lifecycle work units
|
|
98
98
|
# may prepare, validate and accept their results, but cannot invoke them or create
|
|
99
99
|
# their formal artifacts on their behalf.
|
|
100
100
|
matt_invocation_boundary:
|
|
101
|
-
user_invoked_skills: [ask-matt,
|
|
101
|
+
user_invoked_skills: [ask-matt, grill-me, grill-with-docs, handoff, implement, improve-codebase-architecture, loop-me, setup-matt-pocock-skills, setup-ts-deep-modules, teach, to-questionnaire, to-spec, to-tickets, triage, wait-what, wayfinder, writing-beats, writing-fragments, writing-shape]
|
|
102
102
|
lifecycle_managed_user_entries: [setup-matt-pocock-skills, grill-with-docs, to-spec, to-tickets, implement]
|
|
103
|
-
model_invoked_skills: [
|
|
103
|
+
model_invoked_skills: [code-review, codebase-design, diagnosing-bugs, domain-modeling, grilling, migrate-to-shoehorn, prototype, research, resolving-merge-conflicts, scaffold-exercises, setup-pre-commit, tdd, writing-for-agents]
|
|
104
|
+
lifecycle_allowed_model_invoked_skills: [code-review, codebase-design, diagnosing-bugs, domain-modeling, grilling, prototype, research, tdd]
|
|
104
105
|
lifecycle_may_invoke_user_invoked: false
|
|
105
106
|
formal_artifact_owner: explicit-user-entry
|
|
106
|
-
continuous_orchestration: prepare-and-validate-only
|
|
107
|
+
continuous_orchestration: compatibility-prepare-and-validate-only
|
|
107
108
|
direct_user_entry: lifecycle-validate-and-accept
|
|
108
109
|
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
110
|
+
skill_source_contract:
|
|
111
|
+
lock_version: 3
|
|
112
|
+
source_revisions_required: [mattpocock/skills]
|
|
113
|
+
adaptation_ref_required_when_effective_diff: true
|
|
114
|
+
retired_shared_skills: [batch-grill-me, product-design-prototype, yss-dictionary, yss-jdbc, yss-log, yss-taskflow, yss-backend-scaffold-application, yss-backend-scaffold-domain, yss-backend-scaffold-infrastructure, yss-backend-scaffold-web]
|
|
115
|
+
|
|
116
|
+
# 生命周期默认走原生工作单元;Matt user-invoked skill 仅保留为兼容入口。
|
|
117
|
+
lifecycle_native_entries:
|
|
118
|
+
default_entry: yss-product-lifecycle
|
|
119
|
+
formal_artifact_owner: yss-product-lifecycle
|
|
120
|
+
user_confirmation_required_at: [spec-baseline, prototype-confirmation, openapi-freeze, merge-or-release]
|
|
121
|
+
compatibility_entries:
|
|
122
|
+
to-spec: lifecycle-validate-and-accept
|
|
123
|
+
to-tickets: lifecycle-validate-and-accept
|
|
124
|
+
implement: lifecycle-validate-and-accept
|
|
125
|
+
|
|
126
|
+
work_unit_routes:
|
|
127
|
+
work-unit.discovery-opportunity:
|
|
128
|
+
native: {source: yss-product-lifecycle, skill: yss-product-lifecycle, invocation_mode: model-invoked}
|
|
129
|
+
skills: [competitive-intelligence, research]
|
|
130
|
+
route_by: {market_or_competitor_fact: competitive-intelligence, technical_or_standard_fact: research, no_external_fact: yss-product-lifecycle}
|
|
131
|
+
work-unit.discovery-requirements:
|
|
132
|
+
native: {source: yss-product-lifecycle, skill: yss-product-lifecycle, invocation_mode: model-invoked}
|
|
112
133
|
skills: [grilling, domain-modeling]
|
|
113
134
|
work-unit.spec-synthesis:
|
|
114
|
-
|
|
115
|
-
invocation_mode: reference
|
|
116
|
-
|
|
135
|
+
native: {source: yss-product-lifecycle, skill: yss-product-lifecycle, invocation_mode: model-invoked}
|
|
136
|
+
compatibility: {source: mattpocock/skills, skill: to-spec, invocation_mode: reference, formal_artifact_owner: explicit-user-entry}
|
|
137
|
+
skills: [domain-modeling]
|
|
138
|
+
human_gate: spec-baseline
|
|
139
|
+
work-unit.prototype-design:
|
|
140
|
+
native: {source: yss-product-lifecycle, skill: yss-product-lifecycle, invocation_mode: model-invoked}
|
|
141
|
+
skills: [yss-design-system, yss-prototype-stage, product-design:index]
|
|
142
|
+
human_gate: prototype-confirmation
|
|
143
|
+
work-unit.technical-analysis:
|
|
144
|
+
native: {source: yss-product-lifecycle, skill: yss-product-lifecycle, invocation_mode: model-invoked}
|
|
145
|
+
skills: [yss-openapi-governance, yss-openapi-draft-review, codebase-design, implementation-repo-onboarding, yss-router]
|
|
146
|
+
human_gate: openapi-freeze_if_api_impact
|
|
117
147
|
work-unit.ticket-decomposition:
|
|
118
|
-
|
|
119
|
-
invocation_mode: reference
|
|
120
|
-
|
|
148
|
+
native: {source: yss-product-lifecycle, skill: yss-product-lifecycle, invocation_mode: model-invoked}
|
|
149
|
+
compatibility: {source: mattpocock/skills, skill: to-tickets, invocation_mode: reference, formal_artifact_owner: explicit-user-entry}
|
|
150
|
+
skills: [yss-router]
|
|
121
151
|
work-unit.slice-implementation:
|
|
122
|
-
|
|
123
|
-
invocation_mode: reference
|
|
124
|
-
|
|
152
|
+
native: {source: yss-product-lifecycle, skill: yss-product-lifecycle, invocation_mode: model-invoked}
|
|
153
|
+
compatibility: {source: mattpocock/skills, skill: implement, invocation_mode: reference, formal_artifact_owner: explicit-user-entry}
|
|
154
|
+
skills: [tdd, yss-router, yss-ui, yss-page-module-development]
|
|
155
|
+
work-unit.frontend-implementation-verification:
|
|
156
|
+
native: {source: yss-product-lifecycle, skill: yss-product-lifecycle, invocation_mode: model-invoked}
|
|
157
|
+
skills: [yss-ui, yss-design-system, code-review]
|
|
158
|
+
applies_when: ui_impact
|
|
125
159
|
work-unit.code-review:
|
|
126
|
-
invocation_mode: model-invoked
|
|
127
|
-
|
|
160
|
+
native: {source: yss-product-lifecycle, skill: code-review, invocation_mode: model-invoked}
|
|
161
|
+
skills: [code-review]
|
|
162
|
+
work-unit.release-and-retrospective:
|
|
163
|
+
native: {source: yss-product-lifecycle, skill: yss-product-lifecycle, invocation_mode: model-invoked}
|
|
164
|
+
skills: [yss-product-lifecycle]
|
|
165
|
+
human_gate: merge_or_release
|
|
128
166
|
|
|
129
|
-
|
|
167
|
+
compatibility_flow_preconditions:
|
|
130
168
|
to-spec:
|
|
131
169
|
required: [grill_exit, no_unresolved_runnable_blocker]
|
|
132
170
|
evidence: [user_problem, mvp_and_non_goals, success_criteria, test_seam, terminology_review]
|
|
@@ -136,7 +174,7 @@ flow_preconditions:
|
|
|
136
174
|
output: vertical-slice-tickets
|
|
137
175
|
output_role: ready-for-human
|
|
138
176
|
implement:
|
|
139
|
-
required: [ready_for_agent, slice_contract_approved, slice_contract_persisted, slice_contract_current_version, build_architecture_checklist, implementation_repo, implementation_branch, ci, verification_commands, rollback_point, backend_slice_contract_if_applicable, backend_scaffold_policy_satisfied]
|
|
177
|
+
required: [ready_for_agent, slice_contract_approved, slice_contract_persisted, slice_contract_current_version, build_architecture_checklist, implementation_repo, implementation_branch, ci, verification_commands, rollback_point, backend_slice_contract_if_applicable, backend_scaffold_policy_satisfied, frontend_implementation_plan_if_ui_impact]
|
|
140
178
|
applies_to_single_session: true
|
|
141
179
|
|
|
142
180
|
grill_exit:
|
|
@@ -159,6 +197,9 @@ review_input:
|
|
|
159
197
|
schema_version: 1
|
|
160
198
|
required: [review_mode, review_base_ref, implementation_candidate_ref, candidate_snapshot_ref, candidate_digest, spec_ref, ticket_ref, slice_contract_ref, build_architecture_checklist_ref, yss_execution_result_refs]
|
|
161
199
|
nullable: [spec_ref]
|
|
200
|
+
axes: [standards, spec, ui_fidelity_if_ui_impact]
|
|
201
|
+
repair_invalidates_candidate: true
|
|
202
|
+
repair_action: recapture_candidate_and_rerun_all_axes
|
|
162
203
|
modes: [committed, worktree]
|
|
163
204
|
committed:
|
|
164
205
|
candidate_ref: HEAD
|
|
@@ -328,14 +369,39 @@ setup_readiness:
|
|
|
328
369
|
|
|
329
370
|
lifecycle_owned_work_units: [release, retrospective]
|
|
330
371
|
lifecycle_work_unit_requirements:
|
|
331
|
-
release: [fresh_verification, release_or_rollback_evidence, independent_review]
|
|
372
|
+
release: [fresh_verification, release_or_rollback_evidence, independent_review, all_triggered_gates_approved_or_not_applicable]
|
|
332
373
|
retrospective: [fresh_verification, retrospective_record, governance_reflow_decision]
|
|
333
374
|
|
|
375
|
+
release_readiness:
|
|
376
|
+
required: [fresh_verification, release_or_rollback_evidence, independent_review, all_triggered_gates_approved_or_not_applicable]
|
|
377
|
+
conditional:
|
|
378
|
+
ui_impact: [gate.frontend-implementation-verified, evidence.frontend-implementation-verification]
|
|
379
|
+
blocked_when: [triggered_gate_blocked, triggered_gate_stale, triggered_gate_not_evaluated, missing_evidence]
|
|
380
|
+
|
|
334
381
|
wayfinder_completion:
|
|
335
382
|
required: [no_open_children, no_open_blocked_or_claimed_children, no_fog, destination_clear]
|
|
336
383
|
|
|
337
384
|
ready_for_agent:
|
|
338
|
-
required: [gates_satisfied, no_stale_artifacts, blockers_closed, implementation_context_ready, implementation_repo, implementation_branch, ci, verification_commands, rollback_point, slice_contract_approved, slice_contract_persisted, slice_contract_current_version, build_architecture_checklist, backend_slice_contract_if_applicable, backend_scaffold_policy_satisfied]
|
|
385
|
+
required: [gates_satisfied, no_stale_artifacts, blockers_closed, implementation_context_ready, implementation_repo, implementation_branch, ci, verification_commands, rollback_point, slice_contract_approved, slice_contract_persisted, slice_contract_current_version, build_architecture_checklist, backend_slice_contract_if_applicable, backend_scaffold_policy_satisfied, frontend_implementation_plan_if_ui_impact]
|
|
386
|
+
|
|
387
|
+
frontend_implementation_plan:
|
|
388
|
+
applies_when: [ui_impact]
|
|
389
|
+
required_before: [ready_for_agent]
|
|
390
|
+
required: [prototype_ref, spec_ref, route_and_page_inventory, visual_acceptance_cases, desktop_viewport, narrow_viewport, state_cases, pnpm_commands]
|
|
391
|
+
schema: docs/process/schemas/frontend-implementation-evidence.schema.json
|
|
392
|
+
validator: scripts/verify-frontend-implementation-evidence
|
|
393
|
+
acceptance: [kind_plan, template_false, status_approved, no_template_placeholders, readable_baseline_refs, non_empty_acceptance_cases]
|
|
394
|
+
|
|
395
|
+
frontend_implementation_verification:
|
|
396
|
+
applies_when: [ui_impact]
|
|
397
|
+
required_before: [release]
|
|
398
|
+
required: [prototype_ref, spec_ref, route_and_page_inventory, desktop_visual_evidence, narrow_view_visual_evidence, loading_empty_error_permission_interaction_results, console_warning_check, pnpm_commands, uncovered_differences, difference_owner]
|
|
399
|
+
verification: [actual_command, exit_code, executed_at, evidence_ref]
|
|
400
|
+
schema: docs/process/schemas/frontend-implementation-evidence.schema.json
|
|
401
|
+
validator: scripts/verify-frontend-implementation-evidence
|
|
402
|
+
acceptance: [kind_verification, template_false, status_approved, no_template_placeholders, console_warning_pass, independent_review_approved]
|
|
403
|
+
blocked_when: [unexplained_visual_difference, missing_visual_evidence, typecheck_only, claimed_alignment_without_evidence]
|
|
404
|
+
on_new_impact: [new_impacts, drift, reroute]
|
|
339
405
|
|
|
340
406
|
unknown_impact:
|
|
341
407
|
action: pause
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
2. `setup readiness`:每个任务只执行一次,核对 tracker、五态标签和领域文档布局,并在本轮缓存结果;仅在 tracker、主远端、真实标签或配置变化时重查。
|
|
7
7
|
3. 加载父 Ticket/checkpoint 与真实资产,计算最近可信阶段。
|
|
8
8
|
4. 评估资产、门禁和 `stale`,选择第一个未阻塞工作单元。
|
|
9
|
-
5. 执行最小生命周期工作单元:只实际调用允许的 model-invoked skill
|
|
9
|
+
5. 执行最小生命周期工作单元:只实际调用允许的 model-invoked skill;原生工作单元可直接持有正式资产,Matt 兼容 user-invoked skill 仅作为 workflow reference,仍由用户显式启动。将结果归一化为 `Workflow Execution Result`,验收输出并回写状态与证据。
|
|
10
10
|
6. 若仍在授权和自动推进边界内,回到第 3 步;否则暂停。
|
|
11
11
|
|
|
12
12
|
不要仅输出下一个提示词后结束 `orchestrate`/`resume`。不要因进入业务代码阶段而退出主控;应把实现交给专项 skill,并在返回后继续核验。
|
|
@@ -51,9 +51,9 @@ tracker 选择和冲突按 `docs/agents/issue-tracker.md` 裁决:已持久化
|
|
|
51
51
|
|
|
52
52
|
## Matt flow 进入条件
|
|
53
53
|
|
|
54
|
-
- `work-unit.discovery-
|
|
55
|
-
- `
|
|
56
|
-
-
|
|
54
|
+
- `work-unit.discovery-requirements` 实际调用 `grilling` 和 `domain-modeling`;`work-unit.discovery-opportunity` 按事实类型路由 `competitive-intelligence` 或 `research`。生命周期原生工作单元默认负责 Spec、Ticket 和实现资产;`to-spec`、`to-tickets`、`implement` 仅保留为显式兼容入口,结果必须回交生命周期验收。
|
|
55
|
+
- 原生 `work-unit.ticket-decomposition` 只能在 OpenAPI Freeze 或无 API 影响记录后创建垂直切片,初始角色统一为 `ready-for-human`;生命周期复算完整公式后才能提升 `ready-for-agent`。
|
|
56
|
+
- 原生 `work-unit.slice-implementation` 必须在生命周期批准并持久化 Slice Implementation Contract 和 Build Architecture Checklist 后执行;用户显式 `implement` 仍走兼容入口,不得绕过生命周期。
|
|
57
57
|
- `implement` 遇到 backend `scaffold_status=required` 时,还必须满足原型确认后的脚手架策略:脚手架 Execution Result、`yss-backend-scaffold-parent` 基线、Wrapper 验证和 Router 合同重编译均已回写;否则停在工程基线,不得写业务代码。
|
|
58
58
|
- `Workflow Execution Result` 出现 `drift`、`new_impacts`、`stale_candidates`、`violation`、`missing_evidence`、空 `evidence_refs` 或缺少必需字段时暂停当前工作单元;旧结果只能先经只读兼容 adapter 归一化。
|
|
59
59
|
|
|
@@ -63,6 +63,7 @@ tracker 选择和冲突按 `docs/agents/issue-tracker.md` 裁决:已持久化
|
|
|
63
63
|
- 小改动和中等变更可由同一独立执行者完成 `code-review` 与 fresh verification,并在同一报告中分别记录 findings、命令、结果和残余风险。
|
|
64
64
|
- 该执行者必须独立于实现者;新模块、高风险变更、职责冲突或需双人控制时,Reviewer 与 Verifier 分开。
|
|
65
65
|
- `code-review` 是唯一默认代码审查 skill。GitLab、CI、Sonar、Alibaba Java 等治理事实作为仓库规则或专项检查输入,不再叠加第二个通用审查 skill。
|
|
66
|
+
- UI 影响切片将 `UI fidelity` 作为 `code-review` 的条件第三轴;任何修复都会使候选摘要失效,必须重新捕获候选并重跑 Standards、Spec、UI fidelity 和 fresh verification。
|
|
66
67
|
|
|
67
68
|
## Git 授权
|
|
68
69
|
|
|
@@ -46,10 +46,13 @@ AND 当前工作单元消费的 contract_id/version 与最新批准版本一致
|
|
|
46
46
|
AND Backend Slice Implementation Contract(后端适用)和 Build Architecture Checklist 已完成
|
|
47
47
|
AND backend 影响且 scaffold_status=required 时,原型确认后的脚手架策略、`yss-backend-scaffold-parent` 基线、Wrapper 验证和 Router 重编译均已完成
|
|
48
48
|
AND 所有后续生成代码均绑定主 YSS skill、依赖闭包、允许写路径、预期证据和 YSS Skill Execution Result
|
|
49
|
+
AND UI 影响切片的前端实现还原计划已通过 schema 校验、`template=false`、`status=approved`,且基线引用可读取
|
|
49
50
|
```
|
|
50
51
|
|
|
51
52
|
父 Ticket、Spec、设计、原型、OpenAPI Draft、wayfinder map 和 decision ticket 不得使用 `ready-for-agent`。
|
|
52
53
|
|
|
54
|
+
发布前还必须满足所有已触发门禁均为 `approved` 或 `not-applicable`;UI 影响切片必须额外通过 `gate.frontend-implementation-verified`,不能只凭 fresh verification 和回滚点放行。
|
|
55
|
+
|
|
53
56
|
用户显式运行 `to-tickets` 后,垂直切片初始角色固定为 `ready-for-human`。只有 `yss-product-lifecycle` 复算上述公式全部为真后,才能把它提升为 `ready-for-agent`;生命周期不会自动调用 `to-tickets`,其默认标签也不参与该裁决。
|
|
54
57
|
|
|
55
58
|
## Review 与 Git 授权状态
|
|
@@ -60,7 +63,7 @@ Git 动作分别保存 `commit_authorized`、`commit_scope`、`commit_authorizat
|
|
|
60
63
|
|
|
61
64
|
## 状态块
|
|
62
65
|
|
|
63
|
-
状态块位于主 tracker 的功能父 Ticket
|
|
66
|
+
状态块位于主 tracker 的功能父 Ticket,并使用 `docs/process/templates/lifecycle-checkpoint-template.yaml` 的结构化形状和 `lifecycle-checkpoint.schema.json` 校验;Local Markdown 使用 `docs/.scratch/<feature>/parent-ticket.md`,可将完整 checkpoint 保存在 `docs/.scratch/<feature>/gates/lifecycle-checkpoint.yaml` 后由父 Ticket 引用,远程 tracker 使用 Issue 并在本地功能包保留引用。平台不可用时才位于 stage checkpoint。只保存索引、状态、引用和因果关系:
|
|
64
67
|
|
|
65
68
|
```yaml
|
|
66
69
|
lifecycle:
|
|
@@ -11,7 +11,7 @@ description: Use when a YSS feature has product-design impact on a primary flow,
|
|
|
11
11
|
|
|
12
12
|
- 先由 `yss-product-lifecycle` 判断产品设计影响;无行为变化的孤立视觉修复记录 `not-applicable`,不创建空资产。
|
|
13
13
|
- Codex 的产出主入口是 `product-design:index`;其他 Agent 使用等价的产品设计能力,但必须产出本技能规定的相同资产和证据。能力或证据不能等价时,暂停并回到人工确认。
|
|
14
|
-
- `
|
|
14
|
+
- `high-fidelity-html-prototype` 仅为历史兼容入口;从它进入时立即回到本合同。已退休的原型技能(含 `product-design-prototype`)不得继续路由。
|
|
15
15
|
|
|
16
16
|
## 资产与门禁顺序
|
|
17
17
|
|
|
@@ -59,10 +59,15 @@ description: Use when generating or refactoring YSS persistence models, BaseRepo
|
|
|
59
59
|
|
|
60
60
|
- metadata / DDL 输入准备:确认输入完整
|
|
61
61
|
- 领域建模:`yss-domain`
|
|
62
|
+
- 用例编排:`yss-application`
|
|
62
63
|
- POJO 样板代码:`lombok`
|
|
63
64
|
- 对象转换:`mapstruct`
|
|
64
65
|
- Web 补齐:`yss-web-controller`
|
|
65
66
|
|
|
67
|
+
## 分层开发规范
|
|
68
|
+
|
|
69
|
+
实现 PO / Repository / GatewayImpl 前,必须加载 `references/infrastructure-layer-guide.md`:其中定义持久化对象、Repository、Convertor 与 Gateway 实现的结构与示例。
|
|
70
|
+
|
|
66
71
|
## 阶段 7 合同
|
|
67
72
|
|
|
68
73
|
- 前置条件:数据架构、领域元数据、实现仓库和批准后的 `Slice Implementation Contract` 均可用;否则不执行本 skill,由 Router 返回 `blocked`。
|
|
@@ -1,10 +1,3 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: "yss-backend-scaffold-infrastructure"
|
|
3
|
-
description: "YSS 服务的基础设施层开发框架和技术指南。在实现数据访问层、数据库实体、外部服务适配器时需要用到。"
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
# Infrastructure 层开发规范 (Infrastructure Layer Development Guide)
|
|
7
|
-
|
|
8
1
|
本 Skill 提供了 YSS **Infrastructure (基础设施层)** 的通用开发规范。Infrastructure 层负责实现 Domain 层定义的网关接口,处理数据持久化、外部服务调用和配置管理。
|
|
9
2
|
|
|
10
3
|
## 1. 核心职责 (Core Responsibilities)
|
|
@@ -22,8 +22,8 @@ Default for a new page: first verify the approved product design, state matrix,
|
|
|
22
22
|
## Backend Boundaries
|
|
23
23
|
|
|
24
24
|
- `yss-ddd-scaffold-generator`: Create a whole multi-module backend skeleton.
|
|
25
|
-
- `yss-domain`: Domain modeling
|
|
26
|
-
- `yss-
|
|
25
|
+
- `yss-domain`: Domain modeling, domain gateway contracts, and domain-layer conventions.
|
|
26
|
+
- `yss-application`: Application use cases, transaction boundaries, and cross-aggregate orchestration.
|
|
27
27
|
- `yss-repository`: Persistence implementation, PO, Repository, Convertor, GatewayImpl.
|
|
28
28
|
- `yss-web-controller`: REST adapter layer, request/response DTOs, VO, web convertor.
|
|
29
29
|
- `yss-mybatis`: Framework behavior for MyBatis/MyBatis-Plus, BaseRepository, pagination, mapper scanning, batch, datasource issues.
|
|
@@ -39,11 +39,7 @@ Default for end-to-end backend CRUD: include Domain, Application, Infrastructure
|
|
|
39
39
|
- `yss-audit-log`: Audit annotations, SpEL summaries, async publication, subscribers.
|
|
40
40
|
- `yss-excel-mvc`: Spring MVC Excel import/export annotations and handlers.
|
|
41
41
|
- `yss-distributed-id`: ID strategies, AutoIdInterceptor, Leaf/CosId/Snowflake, batch ID injection.
|
|
42
|
-
- `yss-jdbc`: Hutool Db, dynamic datasource JDBC, JdbcSqlUtil, batch SQL execution.
|
|
43
|
-
- `yss-dictionary`: Dictionary/domain item APIs and dictionary component integration.
|
|
44
|
-
- `yss-log`: DEBUG request-parameter/success-latency logging, starter auto-configuration, and centralized collection; current `CatchAndLog` is not exception logging.
|
|
45
42
|
- `yss-resilience4j`: Circuit breaker, fallback, and gateway resilience integration.
|
|
46
|
-
- `yss-taskflow`: Task flow definition/execution component behavior.
|
|
47
43
|
- `yss-validation`: Validation engine and JSR-303 integration.
|
|
48
44
|
- `yss-security-algorithm`: RSA/AES/SM/JWT/JWK/password-encoding compatibility and production key-management safety gates.
|
|
49
45
|
- `yss-userinfo`: Current-user info propagation and starter integration.
|
|
@@ -1,6 +1,9 @@
|
|
|
1
1
|
schema_version: 1
|
|
2
2
|
allowed_statuses: [draft, blocked, ready-for-lifecycle-review]
|
|
3
3
|
forbidden_statuses: [approved, ready-for-agent, completed]
|
|
4
|
+
skill_aliases:
|
|
5
|
+
api-integration: yss-api-integration
|
|
6
|
+
microapp-commit: yss-microapp-commit
|
|
4
7
|
implementation_path_policy:
|
|
5
8
|
applies_to: harness-resident-runtime-code
|
|
6
9
|
project_roots:
|
|
@@ -120,24 +123,22 @@ dependency_closure:
|
|
|
120
123
|
yss-ddd-scaffold-generator:
|
|
121
124
|
always: [yss-backend-scaffold-parent, alibaba-java-code-style]
|
|
122
125
|
yss-domain:
|
|
123
|
-
always: [
|
|
126
|
+
always: [alibaba-java-code-style]
|
|
124
127
|
when_modeling: [domain-modeling]
|
|
125
128
|
when_pojo: [lombok]
|
|
126
|
-
yss-
|
|
129
|
+
yss-application:
|
|
127
130
|
always: [alibaba-java-code-style]
|
|
128
131
|
when_conversion: [mapstruct, lombok]
|
|
129
132
|
yss-repository:
|
|
130
|
-
always: [
|
|
133
|
+
always: [mapstruct, lombok, alibaba-java-code-style]
|
|
131
134
|
when_mybatis: [yss-mybatis]
|
|
132
135
|
yss-web-controller:
|
|
133
|
-
always: [yss-dto,
|
|
136
|
+
always: [yss-dto, mapstruct, lombok, alibaba-java-code-style]
|
|
134
137
|
yss-userinfo:
|
|
135
138
|
always: [yss-dto]
|
|
136
139
|
when_cache_lookup: [yss-cache]
|
|
137
140
|
yss-audit-log:
|
|
138
141
|
always: [yss-userinfo, yss-dto]
|
|
139
|
-
yss-log:
|
|
140
|
-
always: []
|
|
141
142
|
yss-validation:
|
|
142
143
|
always: [yss-exception]
|
|
143
144
|
yss-security-algorithm:
|
|
@@ -156,7 +157,6 @@ component_impact_values:
|
|
|
156
157
|
- current-user-context
|
|
157
158
|
- user-cache-lookup
|
|
158
159
|
- audit-event
|
|
159
|
-
- technical-request-logging
|
|
160
160
|
- request-validation
|
|
161
161
|
- error-mapping
|
|
162
162
|
- encryption-or-signing
|
|
@@ -165,20 +165,16 @@ component_impact_routing:
|
|
|
165
165
|
current-user-context: [yss-userinfo]
|
|
166
166
|
user-cache-lookup: [yss-userinfo, yss-cache]
|
|
167
167
|
audit-event: [yss-audit-log, yss-userinfo, yss-dto]
|
|
168
|
-
technical-request-logging: [yss-log]
|
|
169
168
|
request-validation: [yss-validation, yss-exception]
|
|
170
169
|
error-mapping: [yss-exception, yss-dto]
|
|
171
170
|
encryption-or-signing: [yss-security-algorithm, yss-exception]
|
|
172
171
|
|
|
173
172
|
end_to_end_backend_required:
|
|
174
173
|
- yss-domain
|
|
175
|
-
- yss-
|
|
176
|
-
- yss-backend-scaffold-application
|
|
174
|
+
- yss-application
|
|
177
175
|
- yss-repository
|
|
178
|
-
- yss-backend-scaffold-infrastructure
|
|
179
176
|
- yss-web-controller
|
|
180
177
|
- yss-dto
|
|
181
|
-
- yss-backend-scaffold-web
|
|
182
178
|
- mapstruct
|
|
183
179
|
- lombok
|
|
184
180
|
- alibaba-java-code-style
|
|
@@ -12,11 +12,7 @@ The refresh script maps component source path hints to skill references. These p
|
|
|
12
12
|
| `yss-audit-log` | `yss-microservice-components/yss-component-audit-log` |
|
|
13
13
|
| `yss-excel-mvc` | `yss-microservice-components/yss-component-excel-mvc`, `yss-microservice-components/yss-component-excel-starter` |
|
|
14
14
|
| `yss-distributed-id` | `yss-microservice-components/yss-component-distributed-id`, `yss-microservice-components/yss-component-leaf` |
|
|
15
|
-
| `yss-jdbc` | `yss-microservice-components/yss-component-jdbc` |
|
|
16
|
-
| `yss-dictionary` | `yss-microservice-components/yss-component-dictionary-parent` |
|
|
17
|
-
| `yss-log` | `yss-microservice-components/yss-component-log-starter` |
|
|
18
15
|
| `yss-resilience4j` | `yss-microservice-components/yss-component-resilience4j-starter` |
|
|
19
|
-
| `yss-taskflow` | `yss-microservice-components/yss-component-taskflow` |
|
|
20
16
|
| `yss-validation` | `yss-microservice-components/yss-component-validation-engine-parent`, `yss-microservice-components/yss-component-validation-jsr303` |
|
|
21
17
|
| `yss-security-algorithm` | `yss-microservice-components/yss-component-security-algorithm` |
|
|
22
18
|
| `yss-userinfo` | `yss-microservice-components/yss-component-userinfo-starter` |
|
|
@@ -5,7 +5,7 @@ import os from "node:os";
|
|
|
5
5
|
import path from "node:path";
|
|
6
6
|
import { fileURLToPath } from "node:url";
|
|
7
7
|
|
|
8
|
-
const BACKEND = {"yss-cache":["yss-microservice-components/yss-component-cache-parent"],"yss-mybatis":["yss-microservice-components/yss-component-persistence"],"yss-dto":["yss-microservice-components/yss-component-dto"],"yss-audit-log":["yss-microservice-components/yss-component-audit-log"],"yss-excel-mvc":["yss-microservice-components/yss-component-excel-mvc","yss-microservice-components/yss-component-excel-starter"],"yss-distributed-id":["yss-microservice-components/yss-component-distributed-id","yss-microservice-components/yss-component-leaf"],"yss-
|
|
8
|
+
const BACKEND = {"yss-cache":["yss-microservice-components/yss-component-cache-parent"],"yss-mybatis":["yss-microservice-components/yss-component-persistence"],"yss-dto":["yss-microservice-components/yss-component-dto"],"yss-audit-log":["yss-microservice-components/yss-component-audit-log"],"yss-excel-mvc":["yss-microservice-components/yss-component-excel-mvc","yss-microservice-components/yss-component-excel-starter"],"yss-distributed-id":["yss-microservice-components/yss-component-distributed-id","yss-microservice-components/yss-component-leaf"],"yss-resilience4j":["yss-microservice-components/yss-component-resilience4j-starter"],"yss-validation":["yss-microservice-components/yss-component-validation-engine-parent","yss-microservice-components/yss-component-validation-jsr303"],"yss-security-algorithm":["yss-microservice-components/yss-component-security-algorithm"],"yss-userinfo":["yss-microservice-components/yss-component-userinfo-starter"],"yss-exception":["yss-microservice-components/yss-component-exception"]};
|
|
9
9
|
const FRONTEND={"yss-ui":["components","hooks","skills"],"yss-components":["components"],"yss-hook":["hooks"],"yss-page-module-development":["components","hooks","skills"],"yss-use-table-height":["hooks"],"yss-use-tree-height":["hooks"]};
|
|
10
10
|
const URLS={components:"http://192.168.164.27:3200/components",hooks:"http://192.168.164.27:3200/hooks",skills:"http://192.168.164.27:3200/skills"};
|
|
11
11
|
const KEYS=["Audit","Cache","Clear","Command","Configuration","Controller","DTO","Data","Enable","Excel","Handler","Interceptor","Jdbc","Mapper","Mybatis","Page","Properties","Query","Repository","Request","Response","Result","Update","Aspect","Leaf","Id","Dir","Dic","Dictionary","File","Upload","Log","Message","Mail","Liquibase","Circuit","Breaker","Sql","Tpl","Tag","Task","Flow","Report","Validation","Validator","Security","Crypto","User","Variable","Quality","Search","Similarity","Scheduler","Runner","Duck","Dynamic","Factory","Client","Feign","Gateway","Convertor","Adapter","Advice","Bridge","Route","Uploader","Sftp","Minio","Parser","Express","Rule","Template","Generator","Importer","Engine","Event","Submitter","Executor","Context","Status","Type","State"];
|
|
@@ -63,6 +63,7 @@ node scripts/generate_controller.mjs \
|
|
|
63
63
|
|
|
64
64
|
## 按需读取
|
|
65
65
|
|
|
66
|
+
- 分层开发规范:`references/web-adapter-layer-guide.md`
|
|
66
67
|
- 生成脚本:`scripts/generate_controller.mjs`
|
|
67
68
|
- Controller 模板:`assets/templates/Controller.java.template`
|
|
68
69
|
- Convertor 模板:`assets/templates/WebConvertor.java.template`
|
|
@@ -1,10 +1,3 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: "yss-backend-scaffold-web"
|
|
3
|
-
description: "YSS 管理服务的 Web Adapter 开发框架和技术指南。在实现 REST API 控制器、请求处理和响应格式化时需要用到。"
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
# Web Adapter Layer Development Guide
|
|
7
|
-
|
|
8
1
|
本技能为开发 YSS 服务的**Web 适配器层**(REST API)提供指导和框架。
|
|
9
2
|
Web 适配器负责通过 HTTP 公开业务功能、处理输入验证和格式化响应。
|
|
10
3
|
|
|
@@ -8,9 +8,15 @@ disable-model-invocation: true
|
|
|
8
8
|
|
|
9
9
|
You don't remember every skill, so ask.
|
|
10
10
|
|
|
11
|
+
## YSS default (read this first)
|
|
12
|
+
|
|
13
|
+
In this template, **`yss-product-lifecycle` is the default orchestrator**. Native work-units own Spec, tickets, implementation authorization, and gates.
|
|
14
|
+
|
|
15
|
+
This skill is a **Matt compatibility map**. Use `/grill-with-docs`, `/to-spec`, `/to-tickets`, and `/implement` only when the user **explicitly** names them. Do not treat the idea→ship list below as the YSS default. `/implement` does not grant git commit/push. Spec drafts from `/to-spec` stay `ready-for-human` until a human approves the Spec baseline.
|
|
16
|
+
|
|
11
17
|
A **flow** is a path through the skills. Most paths run along one **main flow**, and two **on-ramps** merge onto it. Everything else is standalone, or a vocabulary layer that runs underneath.
|
|
12
18
|
|
|
13
|
-
##
|
|
19
|
+
## Matt compatibility flow: idea → ship
|
|
14
20
|
|
|
15
21
|
The route most work travels. You have an idea and want it built.
|
|
16
22
|
|
|
@@ -23,7 +29,7 @@ The route most work travels. You have an idea and want it built.
|
|
|
23
29
|
- **Yes** → **`/to-spec`** (turn the thread into a spec), then **`/to-tickets`** to split it into tracer-bullet tickets, each declaring its **blocking edges**. On a local tracker that's one file per ticket under `docs/.scratch/<feature>/issues/`, worked blockers-first by hand; on a real tracker the edges become native blocking links, so any ticket whose blockers are done can be grabbed — kick off **`/implement`** per ticket, **`/clear`ing context between each one**. Each ticket is self-contained, so the last one's context is disposable.
|
|
24
30
|
- **No** → **`/implement`** right here, in the same context window.
|
|
25
31
|
|
|
26
|
-
Either way, **`/implement`** builds each issue by driving **`/tdd`** internally — one red-green slice at a time — then closes out by running **`/code-review
|
|
32
|
+
Either way, **`/implement`** builds each issue by driving **`/tdd`** internally — one red-green slice at a time — then closes out by running **`/code-review`** (Standards + Spec, plus UI fidelity when UI is in scope). Do not commit or push from `/implement`. Reach for **`/tdd`** on its own when you just want to build a concrete behaviour test-first without a full spec, and **`/code-review`** on its own whenever you want to review a branch or PR against a fixed point.
|
|
27
33
|
|
|
28
34
|
### Context hygiene
|
|
29
35
|
|
|
@@ -3,12 +3,13 @@ name: code-review
|
|
|
3
3
|
description: Use when the user wants to review a branch, PR, committed candidate, uncommitted work-in-progress changes, or changes since a fixed point.
|
|
4
4
|
---
|
|
5
5
|
|
|
6
|
-
|
|
6
|
+
Review of a pinned candidate against a fixed point on two core axes, plus UI fidelity when UI is in scope:
|
|
7
7
|
|
|
8
8
|
- **Standards** — does the code conform to this repo's documented coding standards?
|
|
9
9
|
- **Spec** — does the code faithfully implement the originating issue / spec?
|
|
10
|
+
- **UI fidelity** (only when the change has UI impact) — does the candidate match the confirmed prototype and `yss-design-system` / `yss-ui`? Type-check or claiming "already aligned" is not a pass. Invoke those skills' verification notes; do not collapse this axis into Standards or Spec.
|
|
10
11
|
|
|
11
|
-
|
|
12
|
+
Standards and Spec run as **parallel sub-agents** so they don't pollute each other's context, then this skill aggregates their findings. When UI is in scope, add a separate UI fidelity pass after those two reports (do not merge it into either axis).
|
|
12
13
|
|
|
13
14
|
If `docs/agents/issue-tracker.md` is missing, tell the user to run `/setup-matt-pocock-skills`; do not invoke another user-invoked skill yourself.
|
|
14
15
|
|
|
@@ -99,17 +100,18 @@ If the spec is missing, skip the Spec sub-agent and note this in the final repor
|
|
|
99
100
|
|
|
100
101
|
### 5. Aggregate
|
|
101
102
|
|
|
102
|
-
Present the
|
|
103
|
+
Present the reports under `## Standards` and `## Spec` headings, verbatim or lightly cleaned. If UI is in scope, add `## UI fidelity` from the separate pass. Do **not** merge or rerank findings — the axes are deliberately separate (see _Why separate axes_).
|
|
103
104
|
|
|
104
105
|
For Worktree mode, recapture the candidate digest after both reports return. If it differs from `candidate_digest`, mark both reports as reviewing a **stale candidate** and return `blocked`; the caller may start a new review against a new capture, but this invocation must not aggregate findings from different bytes. Recheck the same digest again at the completion/checkpoint boundary.
|
|
105
106
|
|
|
106
107
|
State the reviewed `review_mode`, fixed point, candidate digest and coverage before the two reports. End with a one-line summary: total findings per axis, and the worst issue _within each axis_ (if any). Don't pick a single winner across axes — that's the reranking the separation exists to prevent.
|
|
107
108
|
|
|
108
|
-
## Why
|
|
109
|
+
## Why separate axes
|
|
109
110
|
|
|
110
111
|
A change can pass one axis and fail the other:
|
|
111
112
|
|
|
112
113
|
- Code that follows every standard but implements the wrong thing → **Standards pass, Spec fail.**
|
|
113
114
|
- Code that does exactly what the issue asked but breaks the project's conventions → **Spec pass, Standards fail.**
|
|
115
|
+
- Code that implements the spec but diverges from the confirmed prototype or design system → **Spec pass, UI fidelity fail.**
|
|
114
116
|
|
|
115
117
|
Reporting them separately stops one axis from masking the other.
|
|
@@ -127,7 +127,7 @@ If a correct seam exists:
|
|
|
127
127
|
4. Watch it pass.
|
|
128
128
|
5. Re-run the Phase 1 feedback loop against the original (un-minimised) scenario.
|
|
129
129
|
|
|
130
|
-
## Phase 6 — Cleanup
|
|
130
|
+
## Phase 6 — Cleanup
|
|
131
131
|
|
|
132
132
|
Required before declaring done:
|
|
133
133
|
|
|
@@ -135,6 +135,4 @@ Required before declaring done:
|
|
|
135
135
|
- [ ] Regression test passes (or absence of seam is documented)
|
|
136
136
|
- [ ] All `[DEBUG-...]` instrumentation removed (`grep` the prefix)
|
|
137
137
|
- [ ] Throwaway prototypes deleted (or moved to a clearly-marked debug location)
|
|
138
|
-
- [ ] The hypothesis that turned out correct is stated in the commit / PR message
|
|
139
|
-
|
|
140
|
-
**Then ask: what would have prevented this bug?** If the answer involves architectural change (no good test seam, tangled callers, hidden coupling) hand off to the `/improve-codebase-architecture` skill with the specifics. Make the recommendation **after** the fix is in, not before — you have more information now than when you started.
|
|
138
|
+
- [ ] The hypothesis that turned out correct is stated in the commit / PR message, so the next debugger learns
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: domain-modeling
|
|
3
|
-
description: Build and sharpen a project's domain model. Use when
|
|
3
|
+
description: Build and sharpen a project's domain model. Use when discussing codebase terminology, writing or editing a CONTEXT.md, or recording or editing an ADR.
|
|
4
4
|
---
|
|
5
5
|
|
|
6
6
|
# Domain Modeling
|
|
@@ -7,11 +7,17 @@ Interview the user relentlessly until you reach a shared understanding. Map this
|
|
|
7
7
|
|
|
8
8
|
Work the tree in **rounds**. The **frontier** is every decision whose prerequisites are already settled — the questions you can ask _now_ without guessing at answers you haven't heard yet. Ask the whole frontier in one round: number each question and give your recommended answer. Then wait for the user's answers before the next round.
|
|
9
9
|
|
|
10
|
-
|
|
10
|
+
Format a round like so:
|
|
11
11
|
|
|
12
12
|
```
|
|
13
13
|
❓ **Q1** - **<question title>**: <question body, might be multiple paragraphs, including multiple choices>
|
|
14
14
|
|
|
15
|
+
➡️ <your recommended answer>
|
|
16
|
+
|
|
17
|
+
---
|
|
18
|
+
|
|
19
|
+
❓ **Q2** - **<question title>**: <question body, might be multiple paragraphs, including multiple choices>
|
|
20
|
+
|
|
15
21
|
➡️ <your recommended answer>
|
|
16
22
|
```
|
|
17
23
|
|
|
@@ -102,5 +102,5 @@ High-fidelity HTML prototype
|
|
|
102
102
|
- <yes/no; list blocking gaps>
|
|
103
103
|
|
|
104
104
|
### 下一步
|
|
105
|
-
- <Spec calibration / return to high-fidelity prototype / return to
|
|
105
|
+
- <Spec calibration / return to high-fidelity prototype / return to yss-prototype-stage>
|
|
106
106
|
```
|
|
@@ -12,4 +12,4 @@ Run typechecking regularly, single test files regularly, and the full test suite
|
|
|
12
12
|
|
|
13
13
|
Once done, use /code-review to review the work.
|
|
14
14
|
|
|
15
|
-
|
|
15
|
+
Do not commit or push. Implementation authorization does not include git commit/push. Natural language such as "do it and commit" is not structured Git authorization. Stop after review unless a structured Git authorization is already present.
|
|
@@ -16,7 +16,7 @@ If the issue tracker or triage label vocabulary is missing, tell the user to run
|
|
|
16
16
|
|
|
17
17
|
Check with the user that these seams match their expectations.
|
|
18
18
|
|
|
19
|
-
3. Write the spec using the template below, then publish it to the project issue tracker. Apply the `ready-for-
|
|
19
|
+
3. Write the spec using the template below, then publish it to the project issue tracker. Apply the `ready-for-human` triage label. Spec drafts need a human baseline approval before they are `approved`, and before implementation tickets may become `ready-for-agent`. Do not label the Spec itself `ready-for-agent`.
|
|
20
20
|
|
|
21
21
|
<spec-template>
|
|
22
22
|
|
|
@@ -40,7 +40,7 @@ For a PR, the same states read against the attached code: `ready-for-agent` mean
|
|
|
40
40
|
|
|
41
41
|
Every triaged issue should carry exactly one category role and one state role. If state roles conflict, flag it and ask the maintainer before doing anything else.
|
|
42
42
|
|
|
43
|
-
These are canonical role names
|
|
43
|
+
These are canonical role names. The actual label strings used in the issue tracker may differ. The mapping should have been provided to you. If not, tell the user to run `/setup-matt-pocock-skills`.
|
|
44
44
|
|
|
45
45
|
State transitions: an unlabeled issue normally goes to `needs-triage` first; from there it moves to `needs-info`, `ready-for-agent`, `ready-for-human`, or `wontfix`. `needs-info` returns to `needs-triage` once the reporter replies. The maintainer can override at any time — flag transitions that look unusual and ask before proceeding.
|
|
46
46
|
|
|
@@ -73,7 +73,7 @@ Show counts and a one-line summary per item. Let the maintainer pick.
|
|
|
73
73
|
|
|
74
74
|
3. **Verify the claim.** Before any grilling, check that the claim holds up. For a bug, reproduce it from the reporter's steps. For a PR, confirm the diff does what it claims — check it out, run the relevant tests or commands. Report what happened: confirmed (with code path), failed, or insufficient detail (a strong `needs-info` signal). A confirmed verification makes a much stronger agent brief.
|
|
75
75
|
|
|
76
|
-
4. **Grill (if needed).** If the request needs fleshing out,
|
|
76
|
+
4. **Grill (if needed).** If the request needs fleshing out, call the Skill tool twice, for "grilling" and "domain-modeling", and grill it into shape a round of questions at a time, sharpening domain terms and updating `CONTEXT.md`/ADRs inline as decisions land.
|
|
77
77
|
|
|
78
78
|
5. **Apply the outcome:**
|
|
79
79
|
- `ready-for-agent` — post an agent brief comment ([AGENT-BRIEF.md](AGENT-BRIEF.md)).
|