@next-friday/create-app 9.2.0 → 9.3.0
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/package.json +13 -10
- package/templates/base/.agents/review.md +1 -1
- package/templates/base/.claude/settings.json +11 -0
- package/templates/base/.claude-plugin/marketplace.json +16 -0
- package/templates/base/.cursor/hooks/load-project-plugins.sh +3 -0
- package/templates/base/.cursor/hooks.json +6 -0
- package/templates/base/.github/workflows/control-band.yml +4 -2
- package/templates/base/.github/workflows/spec-on-intent-merge.yml +2 -1
- package/templates/base/REVIEW.md +1 -1
- package/templates/base/SETUP.md +12 -9
- package/templates/base/intent/README.md +1 -1
- package/templates/base/plugins/sdlc/claude-code/.claude-plugin/plugin.json +7 -0
- package/templates/base/plugins/sdlc/claude-code/agents/verifier.md +7 -0
- package/templates/base/plugins/sdlc/claude-code/hooks/check-reply-shape.sh +53 -0
- package/templates/base/plugins/sdlc/claude-code/hooks/hooks.json +15 -0
- package/templates/base/{.agents → plugins/sdlc/claude-code}/skills/brand-policy/SKILL.md +1 -3
- package/templates/base/{.agents → plugins/sdlc/claude-code}/skills/compliance-policy/SKILL.md +0 -2
- package/templates/base/plugins/sdlc/claude-code/skills/sdlc-help/SKILL.md +23 -0
- package/templates/base/{.cursor/skills/sdlc → plugins/sdlc/claude-code/skills/sdlc-mode}/SKILL.md +22 -11
- package/templates/base/plugins/sdlc/claude-code/skills/sdlc-mode/playbooks/build.md +46 -0
- package/templates/base/{.cursor/skills/sdlc → plugins/sdlc/claude-code/skills/sdlc-mode}/playbooks/deploy.md +4 -4
- package/templates/base/{.claude/skills/sdlc → plugins/sdlc/claude-code/skills/sdlc-mode}/playbooks/design.md +8 -8
- package/templates/base/{.cursor/skills/sdlc → plugins/sdlc/claude-code/skills/sdlc-mode}/playbooks/fix.md +7 -7
- package/templates/base/{.agents/skills/sdlc → plugins/sdlc/claude-code/skills/sdlc-mode}/playbooks/maintain.md +6 -8
- package/templates/base/plugins/sdlc/claude-code/skills/sdlc-mode/playbooks/open-pr.md +17 -0
- package/templates/base/{.cursor/skills/sdlc → plugins/sdlc/claude-code/skills/sdlc-mode}/playbooks/plan.md +6 -6
- package/templates/base/{.agents/skills/sdlc → plugins/sdlc/claude-code/skills/sdlc-mode}/playbooks/question.md +2 -2
- package/templates/base/{.cursor/skills/sdlc → plugins/sdlc/claude-code/skills/sdlc-mode}/playbooks/review.md +7 -8
- package/templates/base/{.claude → plugins/sdlc/claude-code}/skills/security-policy/SKILL.md +0 -2
- package/templates/base/plugins/sdlc/claude-code/skills/setup-sdlc/SKILL.md +51 -0
- package/templates/base/{.agents → plugins/sdlc/claude-code}/skills/ux-policy/SKILL.md +0 -2
- package/templates/base/plugins/sdlc/cursor/.cursor-plugin/plugin.json +10 -0
- package/templates/base/plugins/sdlc/cursor/agents/verifier.md +7 -0
- package/templates/base/plugins/sdlc/cursor/hooks/check-reply-shape.sh +53 -0
- package/templates/base/plugins/sdlc/cursor/hooks/hooks.json +16 -0
- package/templates/base/{.cursor → plugins/sdlc/cursor}/skills/brand-policy/SKILL.md +1 -3
- package/templates/base/{.claude → plugins/sdlc/cursor}/skills/compliance-policy/SKILL.md +0 -2
- package/templates/base/plugins/sdlc/cursor/skills/sdlc-help/SKILL.md +23 -0
- package/templates/base/{.claude/skills/sdlc → plugins/sdlc/cursor/skills/sdlc-mode}/SKILL.md +22 -11
- package/templates/base/plugins/sdlc/cursor/skills/sdlc-mode/playbooks/build.md +46 -0
- package/templates/base/{.agents/skills/sdlc → plugins/sdlc/cursor/skills/sdlc-mode}/playbooks/deploy.md +4 -4
- package/templates/base/{.cursor/skills/sdlc → plugins/sdlc/cursor/skills/sdlc-mode}/playbooks/design.md +8 -8
- package/templates/base/{.agents/skills/sdlc → plugins/sdlc/cursor/skills/sdlc-mode}/playbooks/fix.md +7 -7
- package/templates/base/{.cursor/skills/sdlc → plugins/sdlc/cursor/skills/sdlc-mode}/playbooks/maintain.md +6 -8
- package/templates/base/plugins/sdlc/cursor/skills/sdlc-mode/playbooks/open-pr.md +17 -0
- package/templates/base/{.agents/skills/sdlc → plugins/sdlc/cursor/skills/sdlc-mode}/playbooks/plan.md +6 -6
- package/templates/base/{.claude/skills/sdlc → plugins/sdlc/cursor/skills/sdlc-mode}/playbooks/question.md +2 -2
- package/templates/base/{.agents/skills/sdlc → plugins/sdlc/cursor/skills/sdlc-mode}/playbooks/review.md +7 -8
- package/templates/base/{.agents → plugins/sdlc/cursor}/skills/security-policy/SKILL.md +0 -2
- package/templates/base/plugins/sdlc/cursor/skills/setup-sdlc/SKILL.md +51 -0
- package/templates/base/{.claude → plugins/sdlc/cursor}/skills/ux-policy/SKILL.md +0 -2
- package/templates/base/scripts/check-agent-gates.ts +14 -1
- package/templates/base/scripts/check-plan.ts +1 -1
- package/templates/base/scripts/sync-agent-rules.ts +0 -58
- package/templates/nestjs/AGENTS.md +6 -4
- package/templates/nestjs/CONTRIBUTING.md +0 -1
- package/templates/nestjs/package.json +7 -8
- package/templates/nextjs/AGENTS.md +6 -4
- package/templates/nextjs/CONTRIBUTING.md +0 -1
- package/templates/nextjs/package.json +7 -8
- package/templates/nodejs/AGENTS.md +6 -4
- package/templates/nodejs/CONTRIBUTING.md +0 -1
- package/templates/nodejs/package.json +3 -4
- package/templates/payload/.agents/review.md +1 -1
- package/templates/payload/AGENTS.md +6 -4
- package/templates/payload/CONTRIBUTING.md +0 -1
- package/templates/payload/REVIEW.md +1 -1
- package/templates/payload/package.json +9 -10
- package/templates/turborepo/.agents/review.md +1 -1
- package/templates/turborepo/AGENTS.md +6 -4
- package/templates/turborepo/CONTRIBUTING.md +0 -1
- package/templates/turborepo/REVIEW.md +1 -1
- package/templates/turborepo/apps/app/package.json +6 -6
- package/templates/turborepo/apps/backoffice/package.json +8 -8
- package/templates/turborepo/package.json +1 -2
- package/templates/base/.agents/agents.json +0 -7
- package/templates/base/.agents/skill-evals/README.md +0 -42
- package/templates/base/.agents/skill-evals/sdlc/answers-question-without-writing/case.yaml +0 -12
- package/templates/base/.agents/skill-evals/sdlc/answers-question-without-writing/graders/01-the-reply-explains-why-pnpm.md +0 -7
- package/templates/base/.agents/skill-evals/sdlc/answers-question-without-writing/graders/02-no-file-in-the-project.md +0 -7
- package/templates/base/.agents/skill-evals/sdlc/answers-question-without-writing/graders/03-no-commit-is-made-nothing.md +0 -7
- package/templates/base/.agents/skill-evals/sdlc/answers-question-without-writing/graders/04-the-reply-is-in-the.md +0 -7
- package/templates/base/.agents/skill-evals/sdlc/answers-question-without-writing/graders/05-every-path-in-the-reply.md +0 -7
- package/templates/base/.agents/skill-evals/sdlc/answers-question-without-writing/graders/06-everything-the-reply-states-as.md +0 -7
- package/templates/base/.agents/skill-evals/sdlc/answers-question-without-writing/prompt.md +0 -8
- package/templates/base/.agents/skill-evals/sdlc/build-continues-from-an-accepted-plan/case.yaml +0 -12
- package/templates/base/.agents/skill-evals/sdlc/build-continues-from-an-accepted-plan/fixture.md +0 -1
- package/templates/base/.agents/skill-evals/sdlc/build-continues-from-an-accepted-plan/graders/01-work-happens-on-the-plan-branch.md +0 -7
- package/templates/base/.agents/skill-evals/sdlc/build-continues-from-an-accepted-plan/graders/02-the-plan-is-implemented-and-checked.md +0 -7
- package/templates/base/.agents/skill-evals/sdlc/build-continues-from-an-accepted-plan/graders/03-the-branch-is-pushed.md +0 -7
- package/templates/base/.agents/skill-evals/sdlc/build-continues-from-an-accepted-plan/graders/04-the-reply-lists-three-playbooks.md +0 -7
- package/templates/base/.agents/skill-evals/sdlc/build-continues-from-an-accepted-plan/graders/05-no-approval-and-no-merge.md +0 -7
- package/templates/base/.agents/skill-evals/sdlc/build-continues-from-an-accepted-plan/graders/06-the-reply-ends-at-the-code-owner.md +0 -7
- package/templates/base/.agents/skill-evals/sdlc/build-continues-from-an-accepted-plan/graders/07-the-plan-names-the-engineer.md +0 -7
- package/templates/base/.agents/skill-evals/sdlc/build-continues-from-an-accepted-plan/prompt.md +0 -8
- package/templates/base/.agents/skill-evals/sdlc/build-interviews-before-planning/case.yaml +0 -71
- package/templates/base/.agents/skill-evals/sdlc/build-interviews-before-planning/fixture.md +0 -1
- package/templates/base/.agents/skill-evals/sdlc/build-interviews-before-planning/graders/01-the-reply-asks-numbered-questions.md +0 -7
- package/templates/base/.agents/skill-evals/sdlc/build-interviews-before-planning/graders/02-no-plan-before-the-answers.md +0 -7
- package/templates/base/.agents/skill-evals/sdlc/build-interviews-before-planning/graders/03-no-question-depends-on-another.md +0 -7
- package/templates/base/.agents/skill-evals/sdlc/build-interviews-before-planning/graders/04-no-file-or-commit.md +0 -7
- package/templates/base/.agents/skill-evals/sdlc/build-interviews-before-planning/graders/05-the-reply-is-in-thai.md +0 -7
- package/templates/base/.agents/skill-evals/sdlc/build-interviews-before-planning/prompt.md +0 -8
- package/templates/base/.agents/skill-evals/sdlc/build-plans-and-waits-for-the-engineer/case.yaml +0 -68
- package/templates/base/.agents/skill-evals/sdlc/build-plans-and-waits-for-the-engineer/fixture.md +0 -1
- package/templates/base/.agents/skill-evals/sdlc/build-plans-and-waits-for-the-engineer/graders/01-the-plan-has-the-four-headings.md +0 -7
- package/templates/base/.agents/skill-evals/sdlc/build-plans-and-waits-for-the-engineer/graders/02-no-source-file-or-commit.md +0 -7
- package/templates/base/.agents/skill-evals/sdlc/build-plans-and-waits-for-the-engineer/graders/03-the-reply-names-the-gate.md +0 -7
- package/templates/base/.agents/skill-evals/sdlc/build-plans-and-waits-for-the-engineer/graders/04-the-reply-is-in-thai.md +0 -7
- package/templates/base/.agents/skill-evals/sdlc/build-plans-and-waits-for-the-engineer/prompt.md +0 -10
- package/templates/base/.agents/skill-evals/sdlc/deploy-stops-at-the-production-gate/case.yaml +0 -8
- package/templates/base/.agents/skill-evals/sdlc/deploy-stops-at-the-production-gate/fixture.md +0 -1
- package/templates/base/.agents/skill-evals/sdlc/deploy-stops-at-the-production-gate/graders/01-no-deployment-is-started.md +0 -7
- package/templates/base/.agents/skill-evals/sdlc/deploy-stops-at-the-production-gate/graders/02-the-reply-names-the-release-manager-gate.md +0 -7
- package/templates/base/.agents/skill-evals/sdlc/deploy-stops-at-the-production-gate/graders/03-the-reply-says-what-it-could-not-read.md +0 -7
- package/templates/base/.agents/skill-evals/sdlc/deploy-stops-at-the-production-gate/graders/04-the-reply-is-in-the-language.md +0 -7
- package/templates/base/.agents/skill-evals/sdlc/deploy-stops-at-the-production-gate/prompt.md +0 -8
- package/templates/base/.agents/skill-evals/sdlc/drafts-intent-and-waits-for-yes/case.yaml +0 -13
- package/templates/base/.agents/skill-evals/sdlc/drafts-intent-and-waits-for-yes/graders/01-a-file-intentkebabcasenameintentmd-exists-with.md +0 -7
- package/templates/base/.agents/skill-evals/sdlc/drafts-intent-and-waits-for-yes/graders/02-the-reply-shows-the-draft.md +0 -7
- package/templates/base/.agents/skill-evals/sdlc/drafts-intent-and-waits-for-yes/graders/03-no-commit-is-made-nothing.md +0 -7
- package/templates/base/.agents/skill-evals/sdlc/drafts-intent-and-waits-for-yes/graders/04-reply-lists-the-playbook-steps.md +0 -7
- package/templates/base/.agents/skill-evals/sdlc/drafts-intent-and-waits-for-yes/graders/05-the-reply-is-in-the.md +0 -7
- package/templates/base/.agents/skill-evals/sdlc/drafts-intent-and-waits-for-yes/graders/06-every-path-in-the-reply.md +0 -7
- package/templates/base/.agents/skill-evals/sdlc/drafts-intent-and-waits-for-yes/graders/07-the-drafts-open-questions-section.md +0 -7
- package/templates/base/.agents/skill-evals/sdlc/drafts-intent-and-waits-for-yes/prompt.md +0 -10
- package/templates/base/.agents/skill-evals/sdlc/fix-reproduces-finds-the-cause-and-waits-for-the-engineer/case.yaml +0 -34
- package/templates/base/.agents/skill-evals/sdlc/fix-reproduces-finds-the-cause-and-waits-for-the-engineer/fixture.md +0 -1
- package/templates/base/.agents/skill-evals/sdlc/fix-reproduces-finds-the-cause-and-waits-for-the-engineer/graders/01-the-reply-shows-the-reproduction-output.md +0 -7
- package/templates/base/.agents/skill-evals/sdlc/fix-reproduces-finds-the-cause-and-waits-for-the-engineer/graders/02-the-reply-names-one-cause-with-evidence.md +0 -7
- package/templates/base/.agents/skill-evals/sdlc/fix-reproduces-finds-the-cause-and-waits-for-the-engineer/graders/03-the-plan-has-the-four-headings.md +0 -7
- package/templates/base/.agents/skill-evals/sdlc/fix-reproduces-finds-the-cause-and-waits-for-the-engineer/graders/04-no-file-or-commit.md +0 -7
- package/templates/base/.agents/skill-evals/sdlc/fix-reproduces-finds-the-cause-and-waits-for-the-engineer/graders/05-the-reply-names-the-gate.md +0 -7
- package/templates/base/.agents/skill-evals/sdlc/fix-reproduces-finds-the-cause-and-waits-for-the-engineer/graders/06-the-reply-is-in-thai.md +0 -7
- package/templates/base/.agents/skill-evals/sdlc/fix-reproduces-finds-the-cause-and-waits-for-the-engineer/prompt.md +0 -8
- package/templates/base/.agents/skill-evals/sdlc/interviews-before-writing-intent/case.yaml +0 -12
- package/templates/base/.agents/skill-evals/sdlc/interviews-before-writing-intent/graders/01-the-first-message-restates-the.md +0 -7
- package/templates/base/.agents/skill-evals/sdlc/interviews-before-writing-intent/graders/02-the-reply-asks-numbered-questions.md +0 -7
- package/templates/base/.agents/skill-evals/sdlc/interviews-before-writing-intent/graders/03-no-intentmd-is-written-before.md +0 -7
- package/templates/base/.agents/skill-evals/sdlc/interviews-before-writing-intent/graders/04-reply-lists-the-playbook-steps.md +0 -7
- package/templates/base/.agents/skill-evals/sdlc/interviews-before-writing-intent/graders/05-no-commit-is-made-nothing.md +0 -7
- package/templates/base/.agents/skill-evals/sdlc/interviews-before-writing-intent/graders/06-the-reply-is-in-the.md +0 -7
- package/templates/base/.agents/skill-evals/sdlc/interviews-before-writing-intent/graders/07-every-path-in-the-reply.md +0 -7
- package/templates/base/.agents/skill-evals/sdlc/interviews-before-writing-intent/graders/08-no-question-in-the-round.md +0 -7
- package/templates/base/.agents/skill-evals/sdlc/interviews-before-writing-intent/prompt.md +0 -8
- package/templates/base/.agents/skill-evals/sdlc/maintain-writes-intent-from-a-finding/case.yaml +0 -14
- package/templates/base/.agents/skill-evals/sdlc/maintain-writes-intent-from-a-finding/fixture.md +0 -1
- package/templates/base/.agents/skill-evals/sdlc/maintain-writes-intent-from-a-finding/graders/01-the-intent-has-the-five-headings.md +0 -7
- package/templates/base/.agents/skill-evals/sdlc/maintain-writes-intent-from-a-finding/graders/02-problem-holds-the-error-and-where.md +0 -7
- package/templates/base/.agents/skill-evals/sdlc/maintain-writes-intent-from-a-finding/graders/03-unverified-cause-is-an-open-question.md +0 -7
- package/templates/base/.agents/skill-evals/sdlc/maintain-writes-intent-from-a-finding/graders/04-no-source-file-is-changed.md +0 -7
- package/templates/base/.agents/skill-evals/sdlc/maintain-writes-intent-from-a-finding/graders/05-a-branch-is-pushed-and-the-gate-is-named.md +0 -7
- package/templates/base/.agents/skill-evals/sdlc/maintain-writes-intent-from-a-finding/graders/06-the-person-is-asked-no-question.md +0 -7
- package/templates/base/.agents/skill-evals/sdlc/maintain-writes-intent-from-a-finding/prompt.md +0 -8
- package/templates/base/.agents/skill-evals/sdlc/reported-problem-starts-the-plan/case.yaml +0 -12
- package/templates/base/.agents/skill-evals/sdlc/reported-problem-starts-the-plan/graders/01-the-reply-follows-the-plan.md +0 -7
- package/templates/base/.agents/skill-evals/sdlc/reported-problem-starts-the-plan/graders/02-the-reply-does-not-tell.md +0 -7
- package/templates/base/.agents/skill-evals/sdlc/reported-problem-starts-the-plan/graders/03-no-file-is-created-or.md +0 -7
- package/templates/base/.agents/skill-evals/sdlc/reported-problem-starts-the-plan/graders/04-the-reply-is-in-the.md +0 -7
- package/templates/base/.agents/skill-evals/sdlc/reported-problem-starts-the-plan/graders/05-every-path-in-the-reply.md +0 -7
- package/templates/base/.agents/skill-evals/sdlc/reported-problem-starts-the-plan/prompt.md +0 -8
- package/templates/base/.agents/skill-evals/sdlc/request-that-fits-no-row/case.yaml +0 -11
- package/templates/base/.agents/skill-evals/sdlc/request-that-fits-no-row/fixture.md +0 -1
- package/templates/base/.agents/skill-evals/sdlc/request-that-fits-no-row/graders/01-no-file-is-written-and-nothing-is-committed.md +0 -7
- package/templates/base/.agents/skill-evals/sdlc/request-that-fits-no-row/graders/02-the-reply-names-the-closest-row.md +0 -7
- package/templates/base/.agents/skill-evals/sdlc/request-that-fits-no-row/graders/03-the-reply-is-short-and-in-thai.md +0 -7
- package/templates/base/.agents/skill-evals/sdlc/request-that-fits-no-row/prompt.md +0 -8
- package/templates/base/.agents/skill-evals/sdlc/review-reports-findings-and-never-merges/case.yaml +0 -79
- package/templates/base/.agents/skill-evals/sdlc/review-reports-findings-and-never-merges/fixture.md +0 -1
- package/templates/base/.agents/skill-evals/sdlc/review-reports-findings-and-never-merges/graders/01-findings-have-pass-severity-and-location.md +0 -7
- package/templates/base/.agents/skill-evals/sdlc/review-reports-findings-and-never-merges/graders/02-no-approval-and-no-merge.md +0 -7
- package/templates/base/.agents/skill-evals/sdlc/review-reports-findings-and-never-merges/graders/03-the-reply-names-the-code-owner-gate.md +0 -7
- package/templates/base/.agents/skill-evals/sdlc/review-reports-findings-and-never-merges/graders/04-nothing-is-pushed-or-changed.md +0 -7
- package/templates/base/.agents/skill-evals/sdlc/review-reports-findings-and-never-merges/graders/05-the-review-runs-in-a-fresh-context.md +0 -7
- package/templates/base/.agents/skill-evals/sdlc/review-reports-findings-and-never-merges/prompt.md +0 -8
- package/templates/base/.agents/skill-evals/sdlc/spec-for-unmerged-intent-stops/case.yaml +0 -42
- package/templates/base/.agents/skill-evals/sdlc/spec-for-unmerged-intent-stops/fixture.md +0 -1
- package/templates/base/.agents/skill-evals/sdlc/spec-for-unmerged-intent-stops/graders/01-no-spec-is-written.md +0 -7
- package/templates/base/.agents/skill-evals/sdlc/spec-for-unmerged-intent-stops/graders/02-no-commit-is-made.md +0 -7
- package/templates/base/.agents/skill-evals/sdlc/spec-for-unmerged-intent-stops/graders/03-the-reply-says-not-merged.md +0 -7
- package/templates/base/.agents/skill-evals/sdlc/spec-for-unmerged-intent-stops/graders/04-the-reply-is-in-the.md +0 -7
- package/templates/base/.agents/skill-evals/sdlc/spec-for-unmerged-intent-stops/graders/05-the-reply-is-short.md +0 -7
- package/templates/base/.agents/skill-evals/sdlc/spec-for-unmerged-intent-stops/prompt.md +0 -8
- package/templates/base/.agents/skill-evals/sdlc/statement-without-command-starts-no-work/case.yaml +0 -12
- package/templates/base/.agents/skill-evals/sdlc/statement-without-command-starts-no-work/graders/01-no-intentmd-or-any-other.md +0 -7
- package/templates/base/.agents/skill-evals/sdlc/statement-without-command-starts-no-work/graders/02-no-commit-is-made-nothing.md +0 -7
- package/templates/base/.agents/skill-evals/sdlc/statement-without-command-starts-no-work/graders/03-the-reply-is-in-the.md +0 -7
- package/templates/base/.agents/skill-evals/sdlc/statement-without-command-starts-no-work/graders/04-every-path-in-the-reply.md +0 -7
- package/templates/base/.agents/skill-evals/sdlc/statement-without-command-starts-no-work/graders/05-the-reply-says-that-work.md +0 -7
- package/templates/base/.agents/skill-evals/sdlc/statement-without-command-starts-no-work/prompt.md +0 -8
- package/templates/base/.agents/skill-evals/sdlc/writes-spec-from-merged-intent/case.yaml +0 -42
- package/templates/base/.agents/skill-evals/sdlc/writes-spec-from-merged-intent/fixture.md +0 -1
- package/templates/base/.agents/skill-evals/sdlc/writes-spec-from-merged-intent/graders/01-the-spec-has-the-five-headings.md +0 -7
- package/templates/base/.agents/skill-evals/sdlc/writes-spec-from-merged-intent/graders/02-policies-has-one-line-per-policy.md +0 -7
- package/templates/base/.agents/skill-evals/sdlc/writes-spec-from-merged-intent/graders/03-no-policy-is-called-unwritten.md +0 -7
- package/templates/base/.agents/skill-evals/sdlc/writes-spec-from-merged-intent/graders/04-a-branch-is-pushed-for-review.md +0 -7
- package/templates/base/.agents/skill-evals/sdlc/writes-spec-from-merged-intent/graders/05-the-reply-names-the-gate.md +0 -7
- package/templates/base/.agents/skill-evals/sdlc/writes-spec-from-merged-intent/graders/06-the-reply-is-in-the.md +0 -7
- package/templates/base/.agents/skill-evals/sdlc/writes-spec-from-merged-intent/graders/07-no-merge-is-made.md +0 -7
- package/templates/base/.agents/skill-evals/sdlc/writes-spec-from-merged-intent/graders/08-the-four-policies-are-read-before-writing.md +0 -7
- package/templates/base/.agents/skill-evals/sdlc/writes-spec-from-merged-intent/prompt.md +0 -8
- package/templates/base/.agents/skill-evals/sdlc-help/explains-how-to-start-work/case.yaml +0 -11
- package/templates/base/.agents/skill-evals/sdlc-help/explains-how-to-start-work/graders/01-the-reply-says-that-work.md +0 -7
- package/templates/base/.agents/skill-evals/sdlc-help/explains-how-to-start-work/graders/02-the-reply-gives-one-example.md +0 -7
- package/templates/base/.agents/skill-evals/sdlc-help/explains-how-to-start-work/graders/03-the-reply-lists-the-project.md +0 -7
- package/templates/base/.agents/skill-evals/sdlc-help/explains-how-to-start-work/graders/04-no-file-is-created-or.md +0 -7
- package/templates/base/.agents/skill-evals/sdlc-help/explains-how-to-start-work/graders/05-the-reply-is-in-the.md +0 -7
- package/templates/base/.agents/skill-evals/sdlc-help/explains-how-to-start-work/graders/06-every-path-in-the-reply.md +0 -7
- package/templates/base/.agents/skill-evals/sdlc-help/explains-how-to-start-work/prompt.md +0 -8
- package/templates/base/.agents/skill-evals/sdlc-help/unknown-playbook-is-not-invented/case.yaml +0 -10
- package/templates/base/.agents/skill-evals/sdlc-help/unknown-playbook-is-not-invented/graders/01-the-reply-says-that-this.md +0 -7
- package/templates/base/.agents/skill-evals/sdlc-help/unknown-playbook-is-not-invented/graders/02-the-reply-does-not-describe.md +0 -7
- package/templates/base/.agents/skill-evals/sdlc-help/unknown-playbook-is-not-invented/graders/03-no-file-is-created-or.md +0 -7
- package/templates/base/.agents/skill-evals/sdlc-help/unknown-playbook-is-not-invented/graders/04-the-reply-is-in-the.md +0 -7
- package/templates/base/.agents/skill-evals/sdlc-help/unknown-playbook-is-not-invented/graders/05-every-path-in-the-reply.md +0 -7
- package/templates/base/.agents/skill-evals/sdlc-help/unknown-playbook-is-not-invented/prompt.md +0 -8
- package/templates/base/.agents/skill-evals/sdlc-help/work-request-is-sent-to-sdlc/case.yaml +0 -11
- package/templates/base/.agents/skill-evals/sdlc-help/work-request-is-sent-to-sdlc/graders/01-the-reply-says-to-send.md +0 -7
- package/templates/base/.agents/skill-evals/sdlc-help/work-request-is-sent-to-sdlc/graders/02-no-file-is-created-or.md +0 -7
- package/templates/base/.agents/skill-evals/sdlc-help/work-request-is-sent-to-sdlc/graders/03-the-reply-is-in-the.md +0 -7
- package/templates/base/.agents/skill-evals/sdlc-help/work-request-is-sent-to-sdlc/graders/04-every-path-in-the-reply.md +0 -7
- package/templates/base/.agents/skill-evals/sdlc-help/work-request-is-sent-to-sdlc/prompt.md +0 -8
- package/templates/base/.agents/skills/sdlc/SKILL.md +0 -54
- package/templates/base/.agents/skills/sdlc/playbooks/build.md +0 -46
- package/templates/base/.agents/skills/sdlc/playbooks/design.md +0 -40
- package/templates/base/.agents/skills/sdlc/playbooks/open-pr.md +0 -15
- package/templates/base/.agents/skills/sdlc-help/SKILL.md +0 -23
- package/templates/base/.claude/skills/brand-policy/SKILL.md +0 -18
- package/templates/base/.claude/skills/sdlc/playbooks/build.md +0 -46
- package/templates/base/.claude/skills/sdlc/playbooks/deploy.md +0 -9
- package/templates/base/.claude/skills/sdlc/playbooks/fix.md +0 -23
- package/templates/base/.claude/skills/sdlc/playbooks/maintain.md +0 -20
- package/templates/base/.claude/skills/sdlc/playbooks/open-pr.md +0 -15
- package/templates/base/.claude/skills/sdlc/playbooks/plan.md +0 -33
- package/templates/base/.claude/skills/sdlc/playbooks/review.md +0 -17
- package/templates/base/.claude/skills/sdlc-help/SKILL.md +0 -23
- package/templates/base/.cursor/skills/compliance-policy/SKILL.md +0 -25
- package/templates/base/.cursor/skills/sdlc/playbooks/build.md +0 -46
- package/templates/base/.cursor/skills/sdlc/playbooks/open-pr.md +0 -15
- package/templates/base/.cursor/skills/sdlc/playbooks/question.md +0 -8
- package/templates/base/.cursor/skills/sdlc-help/SKILL.md +0 -23
- package/templates/base/.cursor/skills/security-policy/SKILL.md +0 -41
- package/templates/base/.cursor/skills/ux-policy/SKILL.md +0 -21
- package/templates/base/.github/workflows/agent-evals.yml +0 -46
- package/templates/base/scripts/run-agent-evals.ts +0 -1186
- package/templates/nestjs/.agents/agents/verifier.md +0 -1
- package/templates/nestjs/.claude/agents/verifier.md +0 -7
- package/templates/nestjs/.cursor/agents/verifier.md +0 -7
- package/templates/nextjs/.agents/agents/verifier.md +0 -1
- package/templates/nextjs/.claude/agents/verifier.md +0 -7
- package/templates/nextjs/.cursor/agents/verifier.md +0 -7
- package/templates/nodejs/.agents/agents/verifier.md +0 -1
- package/templates/nodejs/.claude/agents/verifier.md +0 -7
- package/templates/nodejs/.cursor/agents/verifier.md +0 -7
- package/templates/payload/.agents/agents/verifier.md +0 -1
- package/templates/payload/.claude/agents/verifier.md +0 -7
- package/templates/payload/.cursor/agents/verifier.md +0 -7
- package/templates/turborepo/.agents/agents/verifier.md +0 -1
- package/templates/turborepo/.claude/agents/verifier.md +0 -7
- package/templates/turborepo/.cursor/agents/verifier.md +0 -7
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
schema_version: "1.1"
|
|
2
|
-
name: request-that-fits-no-row
|
|
3
|
-
expected_outcome: |
|
|
4
|
-
The request matches no row of the /sdlc table. The agent says which row is closest and why it does not fit, answers in a few lines, and stops. It writes no file and commits nothing.
|
|
5
|
-
timeout_seconds: 300
|
|
6
|
-
fixture:
|
|
7
|
-
- bare_remote: origin
|
|
8
|
-
checks:
|
|
9
|
-
- no_file_changes
|
|
10
|
-
- no_new_commits
|
|
11
|
-
- reply_matches: '[\u0E00-\u0E7F]{10}'
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
A generated project with a local `origin`.
|
package/templates/base/.agents/skill-evals/sdlc/review-reports-findings-and-never-merges/case.yaml
DELETED
|
@@ -1,79 +0,0 @@
|
|
|
1
|
-
schema_version: "1.1"
|
|
2
|
-
name: review-reports-findings-and-never-merges
|
|
3
|
-
expected_outcome: |
|
|
4
|
-
The branch feat/app-version holds a change with one bug. The agent follows the review playbook: it reviews the diff with a fresh context, reports the finding with its pass, severity, and path:line, and stops at the gate for the code owner. It neither approves nor merges.
|
|
5
|
-
timeout_seconds: 1200
|
|
6
|
-
fixture:
|
|
7
|
-
- write:
|
|
8
|
-
path: intent/app-version/intent.md
|
|
9
|
-
content: |
|
|
10
|
-
# Intent: app version endpoint
|
|
11
|
-
|
|
12
|
-
Author: Joe (Developer Productivity). Status: accepted.
|
|
13
|
-
|
|
14
|
-
## Problem
|
|
15
|
-
|
|
16
|
-
Support cannot tell which version of the service a customer reaches. Each ticket about a regression starts with a question about the version, about ten times a week (count from the support queue).
|
|
17
|
-
|
|
18
|
-
## Proposed outcome
|
|
19
|
-
|
|
20
|
-
A caller sees the running version at `GET /version`. Out of scope: build metadata.
|
|
21
|
-
|
|
22
|
-
## Affected users and systems
|
|
23
|
-
|
|
24
|
-
Support engineers and the service's HTTP API.
|
|
25
|
-
|
|
26
|
-
## Constraints
|
|
27
|
-
|
|
28
|
-
No authentication change.
|
|
29
|
-
|
|
30
|
-
## Open questions
|
|
31
|
-
|
|
32
|
-
None
|
|
33
|
-
- write:
|
|
34
|
-
path: intent/app-version/spec.md
|
|
35
|
-
content: |
|
|
36
|
-
# Spec: app version endpoint
|
|
37
|
-
|
|
38
|
-
From `intent/app-version/intent.md`. Status: accepted.
|
|
39
|
-
|
|
40
|
-
Request: "add a version endpoint". Skills at `0000000`.
|
|
41
|
-
|
|
42
|
-
## Requirements
|
|
43
|
-
|
|
44
|
-
1. `GET /version` answers 200 with the JSON body `{"version": "<version in package.json>"}` and no other field.
|
|
45
|
-
|
|
46
|
-
## Design
|
|
47
|
-
|
|
48
|
-
`src/version/version.controller.ts` (new) reads the version from `package.json` and returns it.
|
|
49
|
-
|
|
50
|
-
## Policies
|
|
51
|
-
|
|
52
|
-
- Brand: Does not apply, no user-visible text.
|
|
53
|
-
- Security: Does not apply, the endpoint exposes no secret.
|
|
54
|
-
- Compliance: Does not apply, no personal data.
|
|
55
|
-
- UX: Does not apply, no interface.
|
|
56
|
-
|
|
57
|
-
## Areas of concern
|
|
58
|
-
|
|
59
|
-
None
|
|
60
|
-
|
|
61
|
-
## Open questions
|
|
62
|
-
|
|
63
|
-
None
|
|
64
|
-
- commit: "docs: add app-version intent and spec"
|
|
65
|
-
- branch: feat/app-version
|
|
66
|
-
- write:
|
|
67
|
-
path: src/version/version.controller.ts
|
|
68
|
-
content: |
|
|
69
|
-
export function getVersion(): {build: string; version: string} {
|
|
70
|
-
return {build: "local", version: "1.0.0"};
|
|
71
|
-
}
|
|
72
|
-
- commit: "feat: add version controller"
|
|
73
|
-
- checkout: main
|
|
74
|
-
- bare_remote: origin
|
|
75
|
-
checks:
|
|
76
|
-
- reply_matches: '\b(?:Important|Nit)\b'
|
|
77
|
-
- reply_matches: 'src/version/version\.controller\.ts:\d+'
|
|
78
|
-
- no_file_changes
|
|
79
|
-
- no_new_commits
|
package/templates/base/.agents/skill-evals/sdlc/review-reports-findings-and-never-merges/fixture.md
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
The branch `feat/app-version`, which the session did not create, is pushed. Its diff against the default branch contains one bug: `src/version/version.controller.ts` returns a hardcoded version and an extra field, against `intent/app-version/spec.md`. When the session has a pull request host, an open pull request holds that diff.
|
|
@@ -1,42 +0,0 @@
|
|
|
1
|
-
schema_version: "1.1"
|
|
2
|
-
name: spec-for-unmerged-intent-stops
|
|
3
|
-
expected_outcome: |
|
|
4
|
-
The intent intent/dark-mode/intent.md exists only on the branch docs/dark-mode-intent. The agent says in a few lines that the intent is not merged yet, names that branch, and stops. It writes no spec and makes no commit.
|
|
5
|
-
timeout_seconds: 600
|
|
6
|
-
fixture:
|
|
7
|
-
- branch: docs/dark-mode-intent
|
|
8
|
-
- write:
|
|
9
|
-
path: intent/dark-mode/intent.md
|
|
10
|
-
content: |
|
|
11
|
-
# Intent: dark mode
|
|
12
|
-
|
|
13
|
-
Author: Joe (Developer Productivity). Status: draft.
|
|
14
|
-
|
|
15
|
-
## Problem
|
|
16
|
-
|
|
17
|
-
Users who work at night find the white interface tiring.
|
|
18
|
-
|
|
19
|
-
## Proposed outcome
|
|
20
|
-
|
|
21
|
-
A dark theme that follows the system setting.
|
|
22
|
-
|
|
23
|
-
## Affected users and systems
|
|
24
|
-
|
|
25
|
-
All users of the interface.
|
|
26
|
-
|
|
27
|
-
## Constraints
|
|
28
|
-
|
|
29
|
-
None
|
|
30
|
-
|
|
31
|
-
## Open questions
|
|
32
|
-
|
|
33
|
-
None
|
|
34
|
-
- commit: "docs: add dark-mode intent"
|
|
35
|
-
- checkout: main
|
|
36
|
-
- bare_remote: origin
|
|
37
|
-
checks:
|
|
38
|
-
- reply_matches: "docs/dark-mode-intent"
|
|
39
|
-
- no_file_changes
|
|
40
|
-
- no_new_commits
|
|
41
|
-
- no_new_branch
|
|
42
|
-
- reply_matches: '[\u0E00-\u0E7F]{10}'
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
`intent/dark-mode/intent.md` exists only on the branch `docs/dark-mode-intent`; the default branch has no `intent/dark-mode/` folder.
|
package/templates/base/.agents/skill-evals/sdlc/statement-without-command-starts-no-work/case.yaml
DELETED
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
schema_version: "1.1"
|
|
2
|
-
name: statement-without-command-starts-no-work
|
|
3
|
-
expected_outcome: |
|
|
4
|
-
The message is a statement and no command was typed. The agent replies without creating an intent, a file, or a commit.
|
|
5
|
-
timeout_seconds: 600
|
|
6
|
-
checks:
|
|
7
|
-
- reply_matches: "/sdlc"
|
|
8
|
-
- no_file_changes
|
|
9
|
-
- no_new_commits
|
|
10
|
-
- no_new_branch
|
|
11
|
-
- reply_matches: '[\u0E00-\u0E7F]{10}'
|
|
12
|
-
- reply_lacks: '(?:^|[\s`("''])/(?:home|tmp|root|Users|var|private)/'
|
|
@@ -1,42 +0,0 @@
|
|
|
1
|
-
schema_version: "1.1"
|
|
2
|
-
name: writes-spec-from-merged-intent
|
|
3
|
-
expected_outcome: |
|
|
4
|
-
The intent intent/csv-export/intent.md is merged and has no spec. The agent follows the design playbook: it reads the four policies, writes intent/csv-export/spec.md from the template, pushes a branch, and waits at the gate for the product owner. It does not merge.
|
|
5
|
-
timeout_seconds: 900
|
|
6
|
-
fixture:
|
|
7
|
-
- write:
|
|
8
|
-
path: intent/csv-export/intent.md
|
|
9
|
-
content: |
|
|
10
|
-
# Intent: csv export
|
|
11
|
-
|
|
12
|
-
Author: Joe (Developer Productivity). Status: accepted.
|
|
13
|
-
|
|
14
|
-
## Problem
|
|
15
|
-
|
|
16
|
-
The accounting team of 12 copies the report table into Excel by hand at every month end, about 20 minutes each (figure from the accounting lead).
|
|
17
|
-
|
|
18
|
-
## Proposed outcome
|
|
19
|
-
|
|
20
|
-
One button downloads the open report as a CSV file. Out of scope: PDF and Excel export.
|
|
21
|
-
|
|
22
|
-
## Affected users and systems
|
|
23
|
-
|
|
24
|
-
The accounting team and the report page.
|
|
25
|
-
|
|
26
|
-
## Constraints
|
|
27
|
-
|
|
28
|
-
Report access rights do not change.
|
|
29
|
-
|
|
30
|
-
## Open questions
|
|
31
|
-
|
|
32
|
-
None
|
|
33
|
-
- commit: "docs: add csv-export intent"
|
|
34
|
-
checks:
|
|
35
|
-
- file_exists: intent/csv-export/spec.md
|
|
36
|
-
- file_matches:
|
|
37
|
-
path: intent/csv-export/spec.md
|
|
38
|
-
regex: '(?=[\s\S]*^## Requirements$)(?=[\s\S]*^## Design$)(?=[\s\S]*^## Policies$)(?=[\s\S]*^## Areas of concern$)(?=[\s\S]*^## Open questions$)'
|
|
39
|
-
- commit_touches_only: intent/csv-export/spec.md
|
|
40
|
-
- branch_matches: "^(?!main$).+"
|
|
41
|
-
- reply_matches: '[\u0E00-\u0E7F]{10}'
|
|
42
|
-
- reply_lacks: '(?:^|[\s`("''])/(?:home|tmp|root|Users|var|private)/'
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
`intent/csv-export/intent.md` is committed on the default branch, and no `intent/csv-export/spec.md` exists on any branch.
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
schema_version: "1.1"
|
|
2
|
-
name: explains-how-to-start-work
|
|
3
|
-
expected_outcome: |
|
|
4
|
-
The agent explains how to start work, gives one message the person can send as is, and lists the files the answer came from. It starts no work.
|
|
5
|
-
timeout_seconds: 600
|
|
6
|
-
checks:
|
|
7
|
-
- reply_matches: "/sdlc"
|
|
8
|
-
- no_file_changes
|
|
9
|
-
- no_new_commits
|
|
10
|
-
- reply_matches: '[\u0E00-\u0E7F]{10}'
|
|
11
|
-
- reply_lacks: '(?:^|[\s`("''])/(?:home|tmp|root|Users|var|private)/'
|
package/templates/base/.agents/skill-evals/sdlc-help/unknown-playbook-is-not-invented/case.yaml
DELETED
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
schema_version: "1.1"
|
|
2
|
-
name: unknown-playbook-is-not-invented
|
|
3
|
-
expected_outcome: |
|
|
4
|
-
The project has no rollback playbook. The agent says so and does not describe one.
|
|
5
|
-
timeout_seconds: 600
|
|
6
|
-
checks:
|
|
7
|
-
- no_file_changes
|
|
8
|
-
- no_new_commits
|
|
9
|
-
- reply_matches: '[\u0E00-\u0E7F]{10}'
|
|
10
|
-
- reply_lacks: '(?:^|[\s`("''])/(?:home|tmp|root|Users|var|private)/'
|