@the-bearded-bear/claude-craft 8.22.0 → 8.23.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/Dev/i18n/base/Angular/rules/00-project-context.md.template +1 -1
- package/Dev/i18n/base/CSharp/rules/06-tooling.md +0 -2
- package/Dev/i18n/base/CSharp/rules/11-security-csharp.md +184 -160
- package/Dev/i18n/base/Common/commands/aliases.md +3 -0
- package/Dev/i18n/base/Common/commands/audit-claude-alignment.md +201 -0
- package/Dev/i18n/base/Common/commands/init.md +1 -1
- package/Dev/i18n/base/Common/commands/search.md +2 -1
- package/Dev/i18n/base/Common/skills/dynamic-workflows/SKILL.md +1 -1
- package/Dev/i18n/base/Common/skills/ecosystem-tools/SKILL.md +2 -1
- package/Dev/i18n/base/Laravel/rules/06-tooling.md +0 -2
- package/Dev/i18n/base/PHP/checklists/new-feature.md +1 -1
- package/Dev/i18n/base/PHP/commands/check-code-quality.md +3 -3
- package/Dev/i18n/base/Vercel/checklists/pre-commit.md +1 -1
- package/Dev/i18n/base/Vercel/commands/check-security.md +12 -12
- package/Dev/i18n/base/Vercel/rules/00-project-context.md.template +1 -1
- package/Dev/i18n/base/Vercel/rules/02-architecture-vercel.md +2 -2
- package/Dev/i18n/base/Vercel/rules/03-coding-standards.md +1 -1
- package/Dev/i18n/base/Vercel/rules/06-tooling.md +12 -0
- package/Dev/i18n/base/Vercel/rules/07-testing-vercel.md +1 -1
- package/Dev/i18n/base/Vercel/rules/08-quality-tools.md +1 -1
- package/Dev/i18n/base/Vercel/rules/11-security-vercel.md +1 -1
- package/Dev/i18n/base/Vercel/templates/function-handler.template.ts +1 -1
- package/Dev/i18n/base/Vite/checklists/new-feature.md +2 -2
- package/Dev/i18n/base/Vite/checklists/pre-commit.md +2 -2
- package/Dev/i18n/base/Vite/commands/check-architecture.md +5 -5
- package/Dev/i18n/base/Vite/commands/check-library-build.md +3 -3
- package/Dev/i18n/base/Vite/commands/scaffold-project.md +2 -2
- package/Dev/i18n/base/Vite/rules/02-architecture-vite.md +5 -5
- package/Dev/i18n/base/Vite/rules/03-coding-standards.md +1 -1
- package/Dev/i18n/base/Vite/rules/06-tooling.md +2 -2
- package/Dev/i18n/base/Vite/rules/07-testing-vite.md +1 -1
- package/Dev/i18n/base/Vite/rules/11-security-vite.md +4 -4
- package/Dev/i18n/base/Vite/templates/library-entry.template.ts +2 -2
- package/Dev/i18n/base/Vite/templates/vite.config.template.ts +2 -2
- package/Dev/i18n/base/VueJS/rules/06-tooling.md +3 -2
- package/Dev/i18n/de/Angular/agents/angular-reviewer.md +3 -3
- package/Dev/i18n/de/Common/agents/devops-engineer.md +15 -1
- package/Dev/i18n/de/Common/agents/ralph-conductor.md +12 -1
- package/Dev/i18n/de/Common/agents/refactoring-specialist.md +9 -0
- package/Dev/i18n/de/Common/agents/security-auditor.md +10 -7
- package/Dev/i18n/de/Common/agents/tdd-coach.md +9 -0
- package/Dev/i18n/de/Common/agents/uiux-orchestrator.md +10 -1
- package/Dev/i18n/de/Common/commands/getting-started.md +2 -2
- package/Dev/i18n/de/Common/commands/setup-rtk.md +2 -2
- package/Dev/i18n/de/Common/rules/04-solid-principles.md +1 -1
- package/Dev/i18n/de/Common/rules/05-kiss-dry-yagni.md +5 -2
- package/Dev/i18n/de/Common/rules/10-documentation.md +1 -1
- package/Dev/i18n/de/Common/rules/11-security.md +76 -73
- package/Dev/i18n/de/Common/rules/12-context-management.md +29 -19
- package/Dev/i18n/de/Common/templates/settings.json.template +6 -6
- package/Dev/i18n/de/Flutter/agents/flutter-reviewer.md +4 -4
- package/Dev/i18n/de/Flutter/rules/06-tooling.md +30 -24
- package/Dev/i18n/de/Flutter/rules/07-testing-flutter.md +0 -0
- package/Dev/i18n/de/Flutter/rules/08-quality-tools.md +1 -1
- package/Dev/i18n/de/Flutter/rules/12-performance.md +17 -17
- package/Dev/i18n/de/Flutter/rules/13-state-management.md +0 -0
- package/Dev/i18n/de/PHP/agents/php-reviewer.md +6 -6
- package/Dev/i18n/de/PHP/commands/check-compliance.md +3 -3
- package/Dev/i18n/de/PHP/rules/03-coding-standards.md +4 -2
- package/Dev/i18n/de/PHP/rules/06-tooling.md +4 -7
- package/Dev/i18n/de/PHP/rules/08-quality-tools.md +2 -2
- package/Dev/i18n/de/Paperclip/CLAUDE.md.template +2 -2
- package/Dev/i18n/de/Paperclip/README.md +1 -1
- package/Dev/i18n/de/Paperclip/commands/setup-company.md +1 -1
- package/Dev/i18n/de/Paperclip/rules/06-tooling.md +3 -3
- package/Dev/i18n/de/Paperclip/rules/11-security-paperclip.md +9 -0
- package/Dev/i18n/de/Paperclip/skills/coding-standards-ts/SKILL.md +1 -1
- package/Dev/i18n/de/Python/commands/generate-model.md +3 -1
- package/Dev/i18n/de/Python/rules/06-tooling.md +1 -1
- package/Dev/i18n/de/Python/rules/08-quality-tools.md +1 -1
- package/Dev/i18n/de/Python/rules/11-security-python.md +2 -2
- package/Dev/i18n/de/React/agents/react-reviewer.md +9 -5
- package/Dev/i18n/de/React/rules/06-tooling.md +0 -2
- package/Dev/i18n/de/React/rules/11-security-react.md +9 -0
- package/Dev/i18n/de/ReactNative/agents/reactnative-reviewer.md +4 -4
- package/Dev/i18n/de/ReactNative/rules/06-tooling.md +19 -3
- package/Dev/i18n/de/Symfony/agents/symfony-reviewer.md +5 -5
- package/Dev/i18n/de/Symfony/checklists/README.md +1 -1
- package/Dev/i18n/de/Symfony/checklists/new-feature.md +2 -2
- package/Dev/i18n/de/Symfony/checklists/pre-commit.md +4 -4
- package/Dev/i18n/de/Symfony/checklists/refactoring.md +1 -1
- package/Dev/i18n/de/Symfony/commands/check-architecture.md +4 -4
- package/Dev/i18n/de/Symfony/commands/check-code-quality.md +15 -15
- package/Dev/i18n/de/Symfony/commands/check-security.md +32 -32
- package/Dev/i18n/de/Symfony/commands/check-testing.md +16 -16
- package/Dev/i18n/de/Symfony/rules/03-coding-standards.md +4 -4
- package/Dev/i18n/de/Symfony/rules/06-docker-hadolint.md +0 -4
- package/Dev/i18n/de/Symfony/rules/08-quality-tools.md +1 -1
- package/Dev/i18n/de/Symfony/rules/16-i18n.md +2 -0
- package/Dev/i18n/de/Symfony/rules/17-async.md +1 -0
- package/Dev/i18n/de/Symfony/rules/19-aggregates.md +1 -0
- package/Dev/i18n/de/Symfony/rules/20-domain-events.md +1 -0
- package/Dev/i18n/de/Team/commands/delivery.md +1 -1
- package/Dev/i18n/de/Vercel/CLAUDE.md.template +2 -2
- package/Dev/i18n/de/Vercel/agents/vercel-reviewer.md +8 -8
- package/Dev/i18n/de/Vite/CLAUDE.md.template +2 -2
- package/Dev/i18n/de/Vite/agents/vite-reviewer.md +19 -17
- package/Dev/i18n/de/Vite/commands/check-compliance.md +2 -2
- package/Dev/i18n/en/Angular/agents/angular-reviewer.md +3 -3
- package/Dev/i18n/en/Common/agents/devops-engineer.md +15 -1
- package/Dev/i18n/en/Common/agents/ralph-conductor.md +11 -0
- package/Dev/i18n/en/Common/agents/refactoring-specialist.md +9 -0
- package/Dev/i18n/en/Common/agents/security-auditor.md +10 -7
- package/Dev/i18n/en/Common/agents/tdd-coach.md +9 -0
- package/Dev/i18n/en/Common/agents/uiux-orchestrator.md +10 -1
- package/Dev/i18n/en/Common/commands/getting-started.md +2 -2
- package/Dev/i18n/en/Common/commands/setup-rtk.md +2 -2
- package/Dev/i18n/en/Common/rules/04-solid-principles.md +1 -1
- package/Dev/i18n/en/Common/rules/05-kiss-dry-yagni.md +5 -2
- package/Dev/i18n/en/Common/rules/10-documentation.md +1 -1
- package/Dev/i18n/en/Common/rules/11-security.md +76 -73
- package/Dev/i18n/en/Common/rules/12-context-management.md +31 -21
- package/Dev/i18n/en/Common/templates/settings.json.template +6 -6
- package/Dev/i18n/en/Flutter/agents/flutter-reviewer.md +4 -4
- package/Dev/i18n/en/Flutter/rules/06-tooling.md +29 -23
- package/Dev/i18n/en/Flutter/rules/07-testing-flutter.md +0 -0
- package/Dev/i18n/en/Flutter/rules/08-quality-tools.md +1 -1
- package/Dev/i18n/en/Flutter/rules/12-performance.md +17 -17
- package/Dev/i18n/en/Flutter/rules/13-state-management.md +0 -0
- package/Dev/i18n/en/PHP/CLAUDE.md.template +1 -1
- package/Dev/i18n/en/PHP/agents/php-reviewer.md +6 -6
- package/Dev/i18n/en/PHP/commands/check-compliance.md +1 -1
- package/Dev/i18n/en/PHP/rules/03-coding-standards.md +4 -2
- package/Dev/i18n/en/PHP/rules/06-tooling.md +4 -7
- package/Dev/i18n/en/PHP/rules/08-quality-tools.md +2 -2
- package/Dev/i18n/en/Paperclip/CLAUDE.md.template +2 -2
- package/Dev/i18n/en/Paperclip/README.md +1 -1
- package/Dev/i18n/en/Paperclip/commands/setup-company.md +1 -1
- package/Dev/i18n/en/Paperclip/rules/06-tooling.md +3 -3
- package/Dev/i18n/en/Paperclip/rules/11-security-paperclip.md +9 -0
- package/Dev/i18n/en/Paperclip/skills/coding-standards-ts/SKILL.md +1 -1
- package/Dev/i18n/en/Python/commands/generate-model.md +3 -1
- package/Dev/i18n/en/Python/rules/06-tooling.md +1 -1
- package/Dev/i18n/en/Python/rules/08-quality-tools.md +1 -1
- package/Dev/i18n/en/Python/rules/11-security-python.md +11 -11
- package/Dev/i18n/en/React/agents/react-reviewer.md +9 -5
- package/Dev/i18n/en/React/rules/06-tooling.md +0 -2
- package/Dev/i18n/en/React/rules/11-security-react.md +9 -0
- package/Dev/i18n/en/ReactNative/agents/reactnative-reviewer.md +4 -4
- package/Dev/i18n/en/ReactNative/rules/02-architecture.md +1 -1
- package/Dev/i18n/en/ReactNative/rules/06-tooling.md +19 -3
- package/Dev/i18n/en/Symfony/agents/symfony-reviewer.md +5 -5
- package/Dev/i18n/en/Symfony/checklists/README.md +1 -1
- package/Dev/i18n/en/Symfony/checklists/new-feature.md +2 -2
- package/Dev/i18n/en/Symfony/checklists/pre-commit.md +4 -4
- package/Dev/i18n/en/Symfony/checklists/refactoring.md +1 -1
- package/Dev/i18n/en/Symfony/commands/check-architecture.md +4 -4
- package/Dev/i18n/en/Symfony/commands/check-code-quality.md +15 -15
- package/Dev/i18n/en/Symfony/commands/check-security.md +32 -32
- package/Dev/i18n/en/Symfony/commands/check-testing.md +16 -16
- package/Dev/i18n/en/Symfony/rules/03-coding-standards.md +4 -4
- package/Dev/i18n/en/Symfony/rules/06-docker-hadolint.md +0 -4
- package/Dev/i18n/en/Symfony/rules/08-quality-tools.md +1 -1
- package/Dev/i18n/en/Symfony/rules/16-i18n.md +2 -0
- package/Dev/i18n/en/Symfony/rules/17-async.md +1 -0
- package/Dev/i18n/en/Symfony/rules/19-aggregates.md +1 -0
- package/Dev/i18n/en/Symfony/rules/20-domain-events.md +1 -0
- package/Dev/i18n/en/Team/commands/delivery.md +1 -1
- package/Dev/i18n/en/Vercel/CLAUDE.md.template +2 -2
- package/Dev/i18n/en/Vercel/agents/vercel-reviewer.md +8 -8
- package/Dev/i18n/en/Vite/CLAUDE.md.template +2 -2
- package/Dev/i18n/en/Vite/agents/vite-reviewer.md +19 -17
- package/Dev/i18n/en/Vite/commands/check-compliance.md +2 -2
- package/Dev/i18n/en/Workflow/commands/review.md +0 -0
- package/Dev/i18n/en/Workflow/commands/start.md +0 -0
- package/Dev/i18n/es/Angular/agents/angular-reviewer.md +3 -3
- package/Dev/i18n/es/Common/agents/devops-engineer.md +15 -1
- package/Dev/i18n/es/Common/agents/ralph-conductor.md +11 -0
- package/Dev/i18n/es/Common/agents/refactoring-specialist.md +9 -0
- package/Dev/i18n/es/Common/agents/security-auditor.md +10 -7
- package/Dev/i18n/es/Common/agents/tdd-coach.md +9 -0
- package/Dev/i18n/es/Common/agents/uiux-orchestrator.md +10 -1
- package/Dev/i18n/es/Common/commands/getting-started.md +2 -2
- package/Dev/i18n/es/Common/commands/setup-rtk.md +2 -2
- package/Dev/i18n/es/Common/rules/04-solid-principles.md +1 -1
- package/Dev/i18n/es/Common/rules/05-kiss-dry-yagni.md +5 -2
- package/Dev/i18n/es/Common/rules/10-documentation.md +1 -1
- package/Dev/i18n/es/Common/rules/11-security.md +76 -73
- package/Dev/i18n/es/Common/rules/12-context-management.md +29 -19
- package/Dev/i18n/es/Common/templates/settings.json.template +6 -6
- package/Dev/i18n/es/Flutter/agents/flutter-reviewer.md +4 -4
- package/Dev/i18n/es/Flutter/rules/06-tooling.md +31 -25
- package/Dev/i18n/es/Flutter/rules/07-testing-flutter.md +0 -0
- package/Dev/i18n/es/Flutter/rules/08-quality-tools.md +1 -1
- package/Dev/i18n/es/Flutter/rules/12-performance.md +17 -17
- package/Dev/i18n/es/Flutter/rules/13-state-management.md +0 -0
- package/Dev/i18n/es/PHP/agents/php-reviewer.md +6 -6
- package/Dev/i18n/es/PHP/commands/check-compliance.md +3 -3
- package/Dev/i18n/es/PHP/rules/03-coding-standards.md +4 -2
- package/Dev/i18n/es/PHP/rules/06-tooling.md +4 -7
- package/Dev/i18n/es/PHP/rules/08-quality-tools.md +2 -2
- package/Dev/i18n/es/Paperclip/CLAUDE.md.template +2 -2
- package/Dev/i18n/es/Paperclip/README.md +1 -1
- package/Dev/i18n/es/Paperclip/commands/setup-company.md +1 -1
- package/Dev/i18n/es/Paperclip/rules/06-tooling.md +3 -3
- package/Dev/i18n/es/Paperclip/rules/11-security-paperclip.md +9 -0
- package/Dev/i18n/es/Paperclip/skills/coding-standards-ts/SKILL.md +1 -1
- package/Dev/i18n/es/Python/commands/generate-model.md +3 -1
- package/Dev/i18n/es/Python/rules/06-tooling.md +1 -1
- package/Dev/i18n/es/Python/rules/08-quality-tools.md +1 -1
- package/Dev/i18n/es/Python/rules/11-security-python.md +2 -2
- package/Dev/i18n/es/React/agents/react-reviewer.md +9 -5
- package/Dev/i18n/es/React/rules/06-tooling.md +0 -2
- package/Dev/i18n/es/React/rules/11-security-react.md +9 -0
- package/Dev/i18n/es/ReactNative/agents/reactnative-reviewer.md +4 -4
- package/Dev/i18n/es/ReactNative/rules/06-tooling.md +19 -3
- package/Dev/i18n/es/Symfony/agents/symfony-reviewer.md +5 -5
- package/Dev/i18n/es/Symfony/checklists/README.md +1 -1
- package/Dev/i18n/es/Symfony/checklists/new-feature.md +2 -2
- package/Dev/i18n/es/Symfony/checklists/pre-commit.md +4 -4
- package/Dev/i18n/es/Symfony/checklists/refactoring.md +1 -1
- package/Dev/i18n/es/Symfony/commands/check-architecture.md +4 -4
- package/Dev/i18n/es/Symfony/commands/check-code-quality.md +15 -15
- package/Dev/i18n/es/Symfony/commands/check-security.md +32 -32
- package/Dev/i18n/es/Symfony/commands/check-testing.md +16 -16
- package/Dev/i18n/es/Symfony/rules/03-coding-standards.md +4 -4
- package/Dev/i18n/es/Symfony/rules/06-docker-hadolint.md +0 -4
- package/Dev/i18n/es/Symfony/rules/08-quality-tools.md +1 -1
- package/Dev/i18n/es/Symfony/rules/16-i18n.md +2 -0
- package/Dev/i18n/es/Symfony/rules/17-async.md +1 -0
- package/Dev/i18n/es/Symfony/rules/19-aggregates.md +1 -0
- package/Dev/i18n/es/Symfony/rules/20-domain-events.md +1 -0
- package/Dev/i18n/es/Team/commands/delivery.md +1 -1
- package/Dev/i18n/es/Vercel/CLAUDE.md.template +2 -2
- package/Dev/i18n/es/Vercel/agents/vercel-reviewer.md +7 -7
- package/Dev/i18n/es/Vite/CLAUDE.md.template +2 -2
- package/Dev/i18n/es/Vite/agents/vite-reviewer.md +19 -17
- package/Dev/i18n/es/Vite/commands/check-compliance.md +2 -2
- package/Dev/i18n/fr/Angular/agents/angular-reviewer.md +3 -3
- package/Dev/i18n/fr/Common/agents/devops-engineer.md +15 -1
- package/Dev/i18n/fr/Common/agents/ralph-conductor.md +12 -1
- package/Dev/i18n/fr/Common/agents/refactoring-specialist.md +9 -0
- package/Dev/i18n/fr/Common/agents/security-auditor.md +10 -7
- package/Dev/i18n/fr/Common/agents/tdd-coach.md +9 -0
- package/Dev/i18n/fr/Common/agents/uiux-orchestrator.md +10 -1
- package/Dev/i18n/fr/Common/commands/getting-started.md +2 -2
- package/Dev/i18n/fr/Common/commands/setup-rtk.md +2 -2
- package/Dev/i18n/fr/Common/rules/04-solid-principles.md +1 -1
- package/Dev/i18n/fr/Common/rules/05-kiss-dry-yagni.md +5 -2
- package/Dev/i18n/fr/Common/rules/10-documentation.md +1 -1
- package/Dev/i18n/fr/Common/rules/11-security.md +76 -73
- package/Dev/i18n/fr/Common/rules/12-context-management.md +30 -20
- package/Dev/i18n/fr/Common/templates/settings.json.template +6 -6
- package/Dev/i18n/fr/Flutter/agents/flutter-reviewer.md +4 -4
- package/Dev/i18n/fr/Flutter/rules/06-tooling.md +10 -4
- package/Dev/i18n/fr/Flutter/rules/08-quality-tools.md +1 -1
- package/Dev/i18n/fr/PHP/agents/php-reviewer.md +6 -6
- package/Dev/i18n/fr/PHP/commands/check-compliance.md +3 -3
- package/Dev/i18n/fr/PHP/rules/03-coding-standards.md +4 -2
- package/Dev/i18n/fr/PHP/rules/06-tooling.md +4 -7
- package/Dev/i18n/fr/PHP/rules/08-quality-tools.md +2 -2
- package/Dev/i18n/fr/Paperclip/CLAUDE.md.template +2 -2
- package/Dev/i18n/fr/Paperclip/README.md +1 -1
- package/Dev/i18n/fr/Paperclip/commands/setup-company.md +1 -1
- package/Dev/i18n/fr/Paperclip/rules/06-tooling.md +3 -3
- package/Dev/i18n/fr/Paperclip/rules/11-security-paperclip.md +9 -0
- package/Dev/i18n/fr/Paperclip/skills/coding-standards-ts/SKILL.md +1 -1
- package/Dev/i18n/fr/Python/commands/generate-model.md +3 -1
- package/Dev/i18n/fr/Python/rules/06-tooling.md +1 -3
- package/Dev/i18n/fr/Python/rules/08-quality-tools.md +1 -1
- package/Dev/i18n/fr/Python/rules/11-security-python.md +2 -2
- package/Dev/i18n/fr/React/agents/react-reviewer.md +9 -5
- package/Dev/i18n/fr/React/rules/06-tooling.md +0 -2
- package/Dev/i18n/fr/React/rules/11-security-react.md +9 -0
- package/Dev/i18n/fr/ReactNative/agents/reactnative-reviewer.md +4 -4
- package/Dev/i18n/fr/ReactNative/rules/06-tooling.md +19 -3
- package/Dev/i18n/fr/Symfony/agents/symfony-reviewer.md +5 -5
- package/Dev/i18n/fr/Symfony/checklists/README.md +1 -1
- package/Dev/i18n/fr/Symfony/checklists/new-feature.md +2 -2
- package/Dev/i18n/fr/Symfony/checklists/pre-commit.md +4 -4
- package/Dev/i18n/fr/Symfony/checklists/refactoring.md +1 -1
- package/Dev/i18n/fr/Symfony/commands/check-architecture.md +4 -4
- package/Dev/i18n/fr/Symfony/commands/check-code-quality.md +15 -15
- package/Dev/i18n/fr/Symfony/commands/check-security.md +32 -32
- package/Dev/i18n/fr/Symfony/commands/check-testing.md +16 -16
- package/Dev/i18n/fr/Symfony/rules/03-coding-standards.md +4 -4
- package/Dev/i18n/fr/Symfony/rules/06-docker-hadolint.md +0 -4
- package/Dev/i18n/fr/Symfony/rules/08-quality-tools.md +1 -1
- package/Dev/i18n/fr/Symfony/rules/16-i18n.md +2 -0
- package/Dev/i18n/fr/Symfony/rules/17-async.md +1 -0
- package/Dev/i18n/fr/Symfony/rules/19-aggregates.md +1 -0
- package/Dev/i18n/fr/Symfony/rules/20-domain-events.md +1 -0
- package/Dev/i18n/fr/Team/commands/delivery.md +1 -1
- package/Dev/i18n/fr/Vercel/CLAUDE.md.template +2 -2
- package/Dev/i18n/fr/Vercel/agents/vercel-reviewer.md +8 -8
- package/Dev/i18n/fr/Vite/CLAUDE.md.template +2 -2
- package/Dev/i18n/fr/Vite/agents/vite-reviewer.md +19 -17
- package/Dev/i18n/fr/Vite/commands/check-compliance.md +2 -2
- package/Dev/i18n/pt/Angular/agents/angular-reviewer.md +3 -3
- package/Dev/i18n/pt/Common/agents/devops-engineer.md +15 -1
- package/Dev/i18n/pt/Common/agents/ralph-conductor.md +11 -0
- package/Dev/i18n/pt/Common/agents/refactoring-specialist.md +9 -0
- package/Dev/i18n/pt/Common/agents/security-auditor.md +10 -7
- package/Dev/i18n/pt/Common/agents/tdd-coach.md +9 -0
- package/Dev/i18n/pt/Common/agents/uiux-orchestrator.md +10 -1
- package/Dev/i18n/pt/Common/commands/getting-started.md +2 -2
- package/Dev/i18n/pt/Common/commands/setup-rtk.md +2 -2
- package/Dev/i18n/pt/Common/rules/04-solid-principles.md +1 -1
- package/Dev/i18n/pt/Common/rules/05-kiss-dry-yagni.md +5 -2
- package/Dev/i18n/pt/Common/rules/10-documentation.md +1 -1
- package/Dev/i18n/pt/Common/rules/11-security.md +76 -73
- package/Dev/i18n/pt/Common/rules/12-context-management.md +29 -19
- package/Dev/i18n/pt/Common/templates/settings.json.template +6 -6
- package/Dev/i18n/pt/Flutter/agents/flutter-reviewer.md +4 -4
- package/Dev/i18n/pt/Flutter/rules/06-tooling.md +12 -6
- package/Dev/i18n/pt/Flutter/rules/08-quality-tools.md +1 -1
- package/Dev/i18n/pt/PHP/agents/php-reviewer.md +6 -6
- package/Dev/i18n/pt/PHP/commands/check-compliance.md +3 -3
- package/Dev/i18n/pt/PHP/rules/03-coding-standards.md +4 -2
- package/Dev/i18n/pt/PHP/rules/06-tooling.md +4 -7
- package/Dev/i18n/pt/PHP/rules/08-quality-tools.md +2 -2
- package/Dev/i18n/pt/Paperclip/CLAUDE.md.template +2 -2
- package/Dev/i18n/pt/Paperclip/README.md +1 -1
- package/Dev/i18n/pt/Paperclip/commands/setup-company.md +1 -1
- package/Dev/i18n/pt/Paperclip/rules/06-tooling.md +3 -3
- package/Dev/i18n/pt/Paperclip/rules/11-security-paperclip.md +9 -0
- package/Dev/i18n/pt/Paperclip/skills/coding-standards-ts/SKILL.md +1 -1
- package/Dev/i18n/pt/Python/commands/generate-model.md +3 -1
- package/Dev/i18n/pt/Python/rules/06-tooling.md +1 -1
- package/Dev/i18n/pt/Python/rules/08-quality-tools.md +1 -1
- package/Dev/i18n/pt/Python/rules/11-security-python.md +2 -2
- package/Dev/i18n/pt/React/agents/react-reviewer.md +9 -5
- package/Dev/i18n/pt/React/rules/06-tooling.md +0 -2
- package/Dev/i18n/pt/React/rules/11-security-react.md +9 -0
- package/Dev/i18n/pt/ReactNative/agents/reactnative-reviewer.md +4 -4
- package/Dev/i18n/pt/ReactNative/rules/06-tooling.md +19 -3
- package/Dev/i18n/pt/Symfony/agents/symfony-reviewer.md +5 -5
- package/Dev/i18n/pt/Symfony/checklists/README.md +1 -1
- package/Dev/i18n/pt/Symfony/checklists/new-feature.md +2 -2
- package/Dev/i18n/pt/Symfony/checklists/pre-commit.md +4 -4
- package/Dev/i18n/pt/Symfony/checklists/refactoring.md +1 -1
- package/Dev/i18n/pt/Symfony/commands/check-architecture.md +4 -4
- package/Dev/i18n/pt/Symfony/commands/check-code-quality.md +15 -15
- package/Dev/i18n/pt/Symfony/commands/check-security.md +32 -32
- package/Dev/i18n/pt/Symfony/commands/check-testing.md +16 -16
- package/Dev/i18n/pt/Symfony/rules/03-coding-standards.md +4 -4
- package/Dev/i18n/pt/Symfony/rules/06-docker-hadolint.md +0 -4
- package/Dev/i18n/pt/Symfony/rules/08-quality-tools.md +1 -1
- package/Dev/i18n/pt/Symfony/rules/16-i18n.md +2 -0
- package/Dev/i18n/pt/Symfony/rules/17-async.md +1 -0
- package/Dev/i18n/pt/Symfony/rules/19-aggregates.md +1 -0
- package/Dev/i18n/pt/Symfony/rules/20-domain-events.md +1 -0
- package/Dev/i18n/pt/Team/commands/delivery.md +1 -1
- package/Dev/i18n/pt/Vercel/CLAUDE.md.template +2 -2
- package/Dev/i18n/pt/Vercel/agents/vercel-reviewer.md +8 -8
- package/Dev/i18n/pt/Vite/CLAUDE.md.template +2 -2
- package/Dev/i18n/pt/Vite/agents/vite-reviewer.md +19 -17
- package/Dev/i18n/pt/Vite/commands/check-compliance.md +2 -2
- package/Dev/scripts/install-paperclip-rules.sh +5 -5
- package/Dev/scripts/install-vite-rules.sh +4 -4
- package/Infra/i18n/de/Ansible/agents/ansible-architect.md +2 -0
- package/Infra/i18n/de/Docker/commands/docker-architecture.md +0 -2
- package/Infra/i18n/de/Docker/commands/docker-compose-setup.md +0 -2
- package/Infra/i18n/de/FrankenPHP/agents/frankenphp-architect.md +4 -1
- package/Infra/i18n/de/FrankenPHP/agents/frankenphp-deployment.md +2 -2
- package/Infra/i18n/de/FrankenPHP/agents/frankenphp-security.md +1 -1
- package/Infra/i18n/de/FrankenPHP/commands/deploy-setup.md +1 -1
- package/Infra/i18n/de/Hcloud/agents/hcloud-architect.md +14 -4
- package/Infra/i18n/de/Hcloud/agents/hcloud-cost.md +1 -1
- package/Infra/i18n/de/Hcloud/agents/hcloud-debug.md +1 -1
- package/Infra/i18n/de/Hcloud/agents/hcloud-deployment.md +2 -2
- package/Infra/i18n/de/Hcloud/agents/hcloud-security.md +1 -1
- package/Infra/i18n/de/Hcloud/commands/architecture.md +3 -3
- package/Infra/i18n/de/Hcloud/commands/debug.md +1 -1
- package/Infra/i18n/de/Kubernetes/agents/kubernetes-architect.md +3 -3
- package/Infra/i18n/de/Kubernetes/commands/architecture.md +1 -1
- package/Infra/i18n/de/OpenTofu/agents/opentofu-architect.md +1 -1
- package/Infra/i18n/de/OpenTofu/agents/opentofu-deployment.md +2 -2
- package/Infra/i18n/de/PgBouncer/agents/pgbouncer-architect.md +11 -2
- package/Infra/i18n/de/PgBouncer/agents/pgbouncer-debug.md +1 -0
- package/Infra/i18n/de/PgBouncer/agents/pgbouncer-deployment.md +38 -30
- package/Infra/i18n/de/PgBouncer/commands/deploy-setup.md +1 -1
- package/Infra/i18n/en/Ansible/agents/ansible-architect.md +2 -0
- package/Infra/i18n/en/Docker/commands/docker-architecture.md +0 -2
- package/Infra/i18n/en/Docker/commands/docker-compose-setup.md +0 -2
- package/Infra/i18n/en/FrankenPHP/agents/frankenphp-architect.md +4 -1
- package/Infra/i18n/en/FrankenPHP/agents/frankenphp-deployment.md +2 -2
- package/Infra/i18n/en/FrankenPHP/agents/frankenphp-security.md +1 -1
- package/Infra/i18n/en/FrankenPHP/commands/deploy-setup.md +1 -1
- package/Infra/i18n/en/Hcloud/agents/hcloud-architect.md +14 -4
- package/Infra/i18n/en/Hcloud/agents/hcloud-cost.md +1 -1
- package/Infra/i18n/en/Hcloud/agents/hcloud-debug.md +1 -1
- package/Infra/i18n/en/Hcloud/agents/hcloud-deployment.md +2 -2
- package/Infra/i18n/en/Hcloud/agents/hcloud-security.md +1 -1
- package/Infra/i18n/en/Hcloud/commands/architecture.md +3 -3
- package/Infra/i18n/en/Hcloud/commands/debug.md +1 -1
- package/Infra/i18n/en/Kubernetes/agents/kubernetes-architect.md +3 -3
- package/Infra/i18n/en/Kubernetes/commands/architecture.md +1 -1
- package/Infra/i18n/en/OpenTofu/agents/opentofu-architect.md +1 -1
- package/Infra/i18n/en/OpenTofu/agents/opentofu-deployment.md +2 -2
- package/Infra/i18n/en/PgBouncer/agents/pgbouncer-architect.md +11 -2
- package/Infra/i18n/en/PgBouncer/agents/pgbouncer-debug.md +1 -0
- package/Infra/i18n/en/PgBouncer/agents/pgbouncer-deployment.md +38 -30
- package/Infra/i18n/en/PgBouncer/commands/deploy-setup.md +1 -1
- package/Infra/i18n/es/Ansible/agents/ansible-architect.md +2 -0
- package/Infra/i18n/es/Docker/commands/docker-architecture.md +0 -2
- package/Infra/i18n/es/Docker/commands/docker-compose-setup.md +0 -2
- package/Infra/i18n/es/FrankenPHP/agents/frankenphp-architect.md +4 -1
- package/Infra/i18n/es/FrankenPHP/agents/frankenphp-deployment.md +2 -2
- package/Infra/i18n/es/FrankenPHP/agents/frankenphp-security.md +1 -1
- package/Infra/i18n/es/FrankenPHP/commands/deploy-setup.md +1 -1
- package/Infra/i18n/es/Hcloud/agents/hcloud-architect.md +14 -4
- package/Infra/i18n/es/Hcloud/agents/hcloud-cost.md +1 -1
- package/Infra/i18n/es/Hcloud/agents/hcloud-debug.md +1 -1
- package/Infra/i18n/es/Hcloud/agents/hcloud-deployment.md +2 -2
- package/Infra/i18n/es/Hcloud/agents/hcloud-security.md +1 -1
- package/Infra/i18n/es/Hcloud/commands/architecture.md +3 -3
- package/Infra/i18n/es/Hcloud/commands/debug.md +1 -1
- package/Infra/i18n/es/Kubernetes/agents/kubernetes-architect.md +3 -3
- package/Infra/i18n/es/Kubernetes/commands/architecture.md +1 -1
- package/Infra/i18n/es/OpenTofu/agents/opentofu-architect.md +1 -1
- package/Infra/i18n/es/OpenTofu/agents/opentofu-deployment.md +2 -2
- package/Infra/i18n/es/PgBouncer/agents/pgbouncer-architect.md +11 -2
- package/Infra/i18n/es/PgBouncer/agents/pgbouncer-debug.md +1 -0
- package/Infra/i18n/es/PgBouncer/agents/pgbouncer-deployment.md +38 -30
- package/Infra/i18n/es/PgBouncer/commands/deploy-setup.md +1 -1
- package/Infra/i18n/fr/Ansible/agents/ansible-architect.md +2 -0
- package/Infra/i18n/fr/Docker/commands/docker-architecture.md +0 -2
- package/Infra/i18n/fr/Docker/commands/docker-compose-setup.md +0 -2
- package/Infra/i18n/fr/FrankenPHP/agents/frankenphp-architect.md +4 -1
- package/Infra/i18n/fr/FrankenPHP/agents/frankenphp-deployment.md +2 -2
- package/Infra/i18n/fr/FrankenPHP/agents/frankenphp-security.md +1 -1
- package/Infra/i18n/fr/FrankenPHP/commands/deploy-setup.md +1 -1
- package/Infra/i18n/fr/Hcloud/agents/hcloud-architect.md +14 -4
- package/Infra/i18n/fr/Hcloud/agents/hcloud-cost.md +1 -1
- package/Infra/i18n/fr/Hcloud/agents/hcloud-debug.md +1 -1
- package/Infra/i18n/fr/Hcloud/agents/hcloud-deployment.md +2 -2
- package/Infra/i18n/fr/Hcloud/agents/hcloud-security.md +1 -1
- package/Infra/i18n/fr/Hcloud/commands/architecture.md +3 -3
- package/Infra/i18n/fr/Hcloud/commands/debug.md +1 -1
- package/Infra/i18n/fr/Kubernetes/agents/kubernetes-architect.md +3 -3
- package/Infra/i18n/fr/Kubernetes/commands/architecture.md +1 -1
- package/Infra/i18n/fr/OpenTofu/agents/opentofu-architect.md +1 -1
- package/Infra/i18n/fr/OpenTofu/agents/opentofu-deployment.md +2 -2
- package/Infra/i18n/fr/PgBouncer/agents/pgbouncer-architect.md +11 -2
- package/Infra/i18n/fr/PgBouncer/agents/pgbouncer-debug.md +1 -0
- package/Infra/i18n/fr/PgBouncer/agents/pgbouncer-deployment.md +38 -30
- package/Infra/i18n/fr/PgBouncer/commands/deploy-setup.md +1 -1
- package/Infra/i18n/pt/Ansible/agents/ansible-architect.md +2 -0
- package/Infra/i18n/pt/Docker/commands/docker-architecture.md +0 -2
- package/Infra/i18n/pt/Docker/commands/docker-compose-setup.md +0 -2
- package/Infra/i18n/pt/FrankenPHP/agents/frankenphp-architect.md +4 -1
- package/Infra/i18n/pt/FrankenPHP/agents/frankenphp-deployment.md +2 -2
- package/Infra/i18n/pt/FrankenPHP/agents/frankenphp-security.md +1 -1
- package/Infra/i18n/pt/FrankenPHP/commands/deploy-setup.md +1 -1
- package/Infra/i18n/pt/Hcloud/agents/hcloud-architect.md +14 -4
- package/Infra/i18n/pt/Hcloud/agents/hcloud-cost.md +1 -1
- package/Infra/i18n/pt/Hcloud/agents/hcloud-debug.md +1 -1
- package/Infra/i18n/pt/Hcloud/agents/hcloud-deployment.md +2 -2
- package/Infra/i18n/pt/Hcloud/agents/hcloud-security.md +1 -1
- package/Infra/i18n/pt/Hcloud/commands/architecture.md +3 -3
- package/Infra/i18n/pt/Hcloud/commands/debug.md +1 -1
- package/Infra/i18n/pt/Kubernetes/agents/kubernetes-architect.md +3 -3
- package/Infra/i18n/pt/Kubernetes/commands/architecture.md +1 -1
- package/Infra/i18n/pt/OpenTofu/agents/opentofu-architect.md +1 -1
- package/Infra/i18n/pt/OpenTofu/agents/opentofu-deployment.md +2 -2
- package/Infra/i18n/pt/PgBouncer/agents/pgbouncer-architect.md +11 -2
- package/Infra/i18n/pt/PgBouncer/agents/pgbouncer-debug.md +1 -0
- package/Infra/i18n/pt/PgBouncer/agents/pgbouncer-deployment.md +38 -30
- package/Infra/i18n/pt/PgBouncer/commands/deploy-setup.md +1 -1
- package/README.md +30 -22
- package/Tools/Ralph/.ralph/hooks/pre-tool-context.sh +2 -2
- package/Tools/StatusLine/README.md +1 -1
- package/bundles/cursor/.cursorrules +32 -32
- package/bundles/windsurf/.windsurfrules +32 -32
- package/cli/lib/doctor.js +15 -15
- package/cli/lib/tech-registry.js +10 -10
- package/package.json +2 -1
|
@@ -206,9 +206,9 @@ Does any Function declare export const config = { runtime: 'edge' } (or
|
|
|
206
206
|
"runtime": "edge" in vercel.json's functions block)?
|
|
207
207
|
YES --> Is this Function newly added or recently modified (not purely legacy,
|
|
208
208
|
untouched code)?
|
|
209
|
-
YES --> MAJOR: Edge Runtime is
|
|
209
|
+
YES --> MAJOR: Edge Runtime is not recommended by Vercel — migrate to Fluid
|
|
210
210
|
Compute on the Node.js runtime (default) for full Node API access,
|
|
211
|
-
bytecode-cached cold starts (Node
|
|
211
|
+
bytecode-cached cold starts (Node 22+), and Active CPU pricing
|
|
212
212
|
NO --> MINOR: flag as legacy-migration debt, do not block unmodified code
|
|
213
213
|
NO --> Function runs on the Node.js/Fluid Compute default --> continue to Node
|
|
214
214
|
version check
|
|
@@ -220,7 +220,7 @@ Does any Function declare export const config = { runtime: 'edge' } (or
|
|
|
220
220
|
Is the Node.js version pinned (package.json "engines.node", or the Vercel project's
|
|
221
221
|
Node.js Version setting) to 20.x or newer?
|
|
222
222
|
NO --> MINOR: unpinned/old Node version forfeits Fluid Compute's bytecode-caching
|
|
223
|
-
cold-start improvement (Node
|
|
223
|
+
cold-start improvement (Node 22+ specific) and risks silent runtime drift
|
|
224
224
|
across redeploys
|
|
225
225
|
YES --> OK
|
|
226
226
|
```
|
|
@@ -242,7 +242,7 @@ using it?
|
|
|
242
242
|
|
|
243
243
|
**Edge Runtime on new/modified code:**
|
|
244
244
|
```typescript
|
|
245
|
-
// FORBIDDEN — Edge Runtime declared on a newly-added Function:
|
|
245
|
+
// FORBIDDEN — Edge Runtime declared on a newly-added Function: discouraged pattern
|
|
246
246
|
export const config = { runtime: 'edge' };
|
|
247
247
|
|
|
248
248
|
export default function handler(req: Request) {
|
|
@@ -251,7 +251,7 @@ export default function handler(req: Request) {
|
|
|
251
251
|
}
|
|
252
252
|
|
|
253
253
|
// CORRECT — Node.js/Fluid Compute default, full Node API access, faster cold starts
|
|
254
|
-
// on Node
|
|
254
|
+
// on Node 22+ via bytecode caching
|
|
255
255
|
export const config = { maxDuration: 10 };
|
|
256
256
|
|
|
257
257
|
export default function handler(req: VercelRequest, res: VercelResponse) {
|
|
@@ -277,7 +277,7 @@ export default function handler(req: VercelRequest, res: VercelResponse) {
|
|
|
277
277
|
```
|
|
278
278
|
```typescript
|
|
279
279
|
// api/legacy.ts
|
|
280
|
-
// TODO(JIRA-1234): migrate off Edge Runtime —
|
|
280
|
+
// TODO(JIRA-1234): migrate off Edge Runtime — not recommended by Vercel, see Fluid Compute
|
|
281
281
|
export const config = { runtime: 'edge' };
|
|
282
282
|
```
|
|
283
283
|
|
|
@@ -329,7 +329,7 @@ export default async function handler(req: VercelRequest, res: VercelResponse) {
|
|
|
329
329
|
|---------|----------|--------------|
|
|
330
330
|
| Runtime | Node.js/Fluid Compute default | `runtime: 'edge'` on new/modified code |
|
|
331
331
|
| Legacy Edge Runtime | Ticketed migration marker (TODO + issue ref) | Silent, un-flagged Edge Runtime left in place |
|
|
332
|
-
| Node version | Pinned to 20
|
|
332
|
+
| Node version | Pinned to 22.x or 24.x (Node 20 is deprecated on Vercel since 2026-10-01) (`engines.node` or project setting) | Unpinned, drifting default |
|
|
333
333
|
| Handler input | Validated/parsed (zod, manual guard) before use | Raw `req.body`/`req.query` used unchecked |
|
|
334
334
|
| Handler output | Explicit status + typed body on every path | Implicit 200, inconsistent error shape |
|
|
335
335
|
| Cold-start awareness | Heavy imports lazy-loaded/deferred when not always needed | Every dependency imported eagerly at module top |
|
|
@@ -796,7 +796,7 @@ describe('api/cron/daily', () => {
|
|
|
796
796
|
| Topic | What to check |
|
|
797
797
|
|-------|---------------|
|
|
798
798
|
| **Fluid Compute** | Confirm Functions default to Fluid Compute (Active CPU pricing), not legacy fixed-concurrency Serverless Functions billing |
|
|
799
|
-
| **Edge Runtime
|
|
799
|
+
| **Edge Runtime discouraged** | Any `runtime: 'edge'` found should carry a migration ticket reference, never be presented as the recommended pattern for new code |
|
|
800
800
|
| **Deprecated Storage packages** | `@vercel/kv`/`@vercel/postgres` imports are a MAJOR finding regardless of when they were added — flag for Marketplace migration (Neon/Upstash) |
|
|
801
801
|
| **ISR cache primitive vs vercel.json headers** | Framework-native revalidation and vercel.json `headers` must never target the same route for `Cache-Control` |
|
|
802
802
|
| **Cron plan limits** | The Hobby plan caps Cron Jobs at 1/day — verify the declared schedule matches the actual plan tier in use |
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
|
|
7
7
|
**Stack**: Vite {{VITE_VERSION}}, TypeScript {{TS_VERSION}}
|
|
8
8
|
|
|
9
|
-
**Scope**: framework-agnostic Vite usage only — vanilla JS/TS apps, library authoring (build.lib), multi-page apps (
|
|
9
|
+
**Scope**: framework-agnostic Vite usage only — vanilla JS/TS apps, library authoring (build.lib), multi-page apps (rolldownOptions.input), Workers/WASM entries. Not for React/Vue/Angular/Svelte dev-server config — see that stack's own tooling.md.
|
|
10
10
|
|
|
11
11
|
### Project Structure
|
|
12
12
|
```
|
|
@@ -32,7 +32,7 @@ project-root/
|
|
|
32
32
|
### Architecture: {{ARCHITECTURE_PATTERN}}
|
|
33
33
|
- **Entry point**: `index.html` at the project root (or `root`), never inside `public/`
|
|
34
34
|
- **Library mode**: `build.lib` + `vite-plugin-dts` for packages published to npm
|
|
35
|
-
- **Multi-page**: `
|
|
35
|
+
- **Multi-page**: top-level `input` naming each HTML entry explicitly
|
|
36
36
|
- **Workers/WASM**: `new Worker(new URL(...), { type: 'module' })`, `?init`/`?url` suffixes
|
|
37
37
|
|
|
38
38
|
See `rules/02-architecture.md` for complete patterns.
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: vite-reviewer
|
|
3
|
-
description: Vite 8.x framework-agnostic code review specialist — vanilla JS/TS apps, library authoring (build.lib), multi-page apps (
|
|
3
|
+
description: Vite 8.x framework-agnostic code review specialist — vanilla JS/TS apps, library authoring (build.lib), multi-page apps (rolldownOptions.input), Workers/WASM entries, plugin config
|
|
4
4
|
model: haiku
|
|
5
5
|
effort: low
|
|
6
6
|
maxTurns: 6
|
|
@@ -14,13 +14,13 @@ skills: [solid-principles, testing, security]
|
|
|
14
14
|
|
|
15
15
|
## Identity
|
|
16
16
|
|
|
17
|
-
I am a specialist in Vite 8.x code review, **framework-agnostic** by design. My scope covers pure Vite usage: vanilla JS/TS applications (index.html as the source entry, never inside public/), library authoring via build.lib and vite-plugin-dts, multi-page applications via build.
|
|
17
|
+
I am a specialist in Vite 8.x code review, **framework-agnostic** by design. My scope covers pure Vite usage: vanilla JS/TS applications (index.html as the source entry, never inside public/), library authoring via build.lib and vite-plugin-dts, multi-page applications via build.rolldownOptions.input, and Workers/WASM entry points. I do NOT cover Vite integrations specific to React, Vue, Angular, or Svelte -- those stacks already document their own dev-server integration in their respective tooling.md file. I do not perform a generic audit -- I detect what breaks the module graph, bloats the bundle, or unnecessarily complicates a Vite configuration.
|
|
18
18
|
|
|
19
19
|
## Scoring System (100 points)
|
|
20
20
|
|
|
21
21
|
| Category | Points | Focus |
|
|
22
22
|
|----------|--------|-------|
|
|
23
|
-
| Config and Architecture Vite | 30 | vite.config.ts, index.html, build.lib,
|
|
23
|
+
| Config and Architecture Vite | 30 | vite.config.ts, index.html, build.lib, rolldownOptions.input, plugins |
|
|
24
24
|
| TypeScript and Quality | 20 | strict tsconfig, moduleResolution bundler, vite-plugin-dts |
|
|
25
25
|
| Tests | 25 | Vitest config/coverage, tests on the published build |
|
|
26
26
|
| Build Output and Performance | 25 | Bundle size, tree-shaking, externalization, code-splitting |
|
|
@@ -49,7 +49,7 @@ Is the package consumed by other packages/apps (published on npm)?
|
|
|
49
49
|
YES --> Is build.lib configured?
|
|
50
50
|
NO --> CRITICAL: without build.lib, Vite produces an app bundle (index.html
|
|
51
51
|
required, no multiple ESM/CJS formats, no peer dep externalization)
|
|
52
|
-
YES --> Does
|
|
52
|
+
YES --> Does rolldownOptions.external cover all peerDependencies?
|
|
53
53
|
NO --> MAJOR: the host framework runtime will be duplicated for the consumer
|
|
54
54
|
YES --> Is vite-plugin-dts configured?
|
|
55
55
|
NO --> MAJOR: no published typings, package unusable in strict TypeScript
|
|
@@ -62,7 +62,7 @@ Is the package consumed by other packages/apps (published on npm)?
|
|
|
62
62
|
```
|
|
63
63
|
Does the project have several distinct HTML pages (not just client-side routes)?
|
|
64
64
|
NO --> Classic SPA: a single index.html, client-side routing
|
|
65
|
-
YES --> Is build.
|
|
65
|
+
YES --> Is build.rolldownOptions.input an object naming each page?
|
|
66
66
|
NO --> MAJOR: secondary pages are not built or depend on a
|
|
67
67
|
manual, unoptimized loading path
|
|
68
68
|
YES --> Do the pages share heavy dependencies?
|
|
@@ -133,7 +133,7 @@ export default defineConfig({
|
|
|
133
133
|
formats: ['es', 'cjs'],
|
|
134
134
|
fileName: (format) => `my-lib.${format}.js`,
|
|
135
135
|
},
|
|
136
|
-
|
|
136
|
+
rolldownOptions: {
|
|
137
137
|
// Never bundle peer dependencies
|
|
138
138
|
external: ['react', 'react-dom'],
|
|
139
139
|
output: {
|
|
@@ -144,7 +144,7 @@ export default defineConfig({
|
|
|
144
144
|
});
|
|
145
145
|
```
|
|
146
146
|
|
|
147
|
-
**
|
|
147
|
+
**rolldownOptions.input for multi-page apps:**
|
|
148
148
|
```typescript
|
|
149
149
|
// BAD: secondary pages not declared in the config
|
|
150
150
|
export default defineConfig({});
|
|
@@ -155,7 +155,7 @@ import { defineConfig } from 'vite';
|
|
|
155
155
|
|
|
156
156
|
export default defineConfig({
|
|
157
157
|
build: {
|
|
158
|
-
|
|
158
|
+
rolldownOptions: {
|
|
159
159
|
input: {
|
|
160
160
|
main: resolve(__dirname, 'index.html'),
|
|
161
161
|
about: resolve(__dirname, 'pages/about.html'),
|
|
@@ -225,8 +225,10 @@ export function vitePluginMyTransform(): Plugin {
|
|
|
225
225
|
| index.html | At the root of `root`, transformed as a source entry | Copied into public/ |
|
|
226
226
|
| public/ | Static assets only (favicon, robots.txt) | Source HTML/JS imported from public/ |
|
|
227
227
|
| build.lib | Configured for every published package | App bundle published as a library |
|
|
228
|
-
|
|
|
229
|
-
|
|
|
228
|
+
| rolldownOptions.external | Peer deps externalized | Host framework bundled inside the library |
|
|
229
|
+
| rolldownOptions.input | Object naming each HTML page (multi-page) | Manual, unoptimized loading |
|
|
230
|
+
| rollupOptions / worker.rollupOptions / optimizeDeps.esbuildOptions | rolldownOptions equivalents (deprecated since Vite 8) | Deprecated aliases kept in the config |
|
|
231
|
+
| Node.js | `^20.19.0` or `>=22.12.0` (Vite 8 requirement) | Node 18 or 20 < 20.19 |
|
|
230
232
|
| Custom plugins | vite-plugin-* prefix, explicit `name` property | Anonymous plugin without a name |
|
|
231
233
|
| Environment variables | VITE_ prefix for client exposure | Unprefixed secrets referenced client-side |
|
|
232
234
|
|
|
@@ -237,7 +239,7 @@ export function vitePluginMyTransform(): Plugin {
|
|
|
237
239
|
| vite.config.ts correct (defineConfig, aliases synced with tsconfig) | 8 |
|
|
238
240
|
| index.html at the root of the right folder, never inside public/ | 6 |
|
|
239
241
|
| build.lib correctly configured (entry, formats, external, vite-plugin-dts) | 8 |
|
|
240
|
-
|
|
|
242
|
+
| rolldownOptions.input for multi-page, plugins named per vite-plugin-* convention | 8 |
|
|
241
243
|
|
|
242
244
|
---
|
|
243
245
|
|
|
@@ -441,7 +443,7 @@ Does package.json declare "sideEffects": false?
|
|
|
441
443
|
### Decision Tree: Multi-page Code-splitting
|
|
442
444
|
|
|
443
445
|
```
|
|
444
|
-
Does the app have several pages (
|
|
446
|
+
Does the app have several pages (rolldownOptions.input)?
|
|
445
447
|
YES --> Does manualChunks isolate a shared vendor chunk?
|
|
446
448
|
NO --> MAJOR: each page duplicates the same heavy dependencies
|
|
447
449
|
YES --> Does the largest lazy chunk exceed 80KB gzip?
|
|
@@ -486,14 +488,14 @@ export { formatDate, parseDate } from './utils';
|
|
|
486
488
|
// BAD: the host framework is bundled inside the published library
|
|
487
489
|
export default defineConfig({
|
|
488
490
|
build: { lib: { entry: 'src/index.ts', formats: ['es'] } },
|
|
489
|
-
// no
|
|
491
|
+
// no rolldownOptions.external
|
|
490
492
|
});
|
|
491
493
|
|
|
492
494
|
// GOOD: peer deps explicitly externalized
|
|
493
495
|
export default defineConfig({
|
|
494
496
|
build: {
|
|
495
497
|
lib: { entry: 'src/index.ts', formats: ['es', 'cjs'] },
|
|
496
|
-
|
|
498
|
+
rolldownOptions: {
|
|
497
499
|
external: (id) => /^(react|react-dom|vue)/.test(id),
|
|
498
500
|
},
|
|
499
501
|
},
|
|
@@ -507,7 +509,7 @@ export default defineConfig({
|
|
|
507
509
|
|
|
508
510
|
// GOOD: shared vendor chunk across all pages
|
|
509
511
|
build: {
|
|
510
|
-
|
|
512
|
+
rolldownOptions: {
|
|
511
513
|
output: {
|
|
512
514
|
manualChunks(id) {
|
|
513
515
|
if (id.includes('node_modules')) return 'vendor';
|
|
@@ -564,8 +566,8 @@ build: {
|
|
|
564
566
|
|
|
565
567
|
### Phase 2: Vite-specific Configuration (15 min)
|
|
566
568
|
|
|
567
|
-
1. If library: verify build.lib, formats,
|
|
568
|
-
2. If multi-page: verify
|
|
569
|
+
1. If library: verify build.lib, formats, rolldownOptions.external, vite-plugin-dts
|
|
570
|
+
2. If multi-page: verify rolldownOptions.input, manualChunks
|
|
569
571
|
3. If Workers/WASM: verify new URL(...import.meta.url), ?init/?url suffixes
|
|
570
572
|
4. Verify custom plugin naming convention (vite-plugin-*, name property)
|
|
571
573
|
5. Verify environment variables (VITE_ prefix, no secrets exposed client-side)
|
|
@@ -36,7 +36,7 @@ Execute complete configuration and architecture check:
|
|
|
36
36
|
- vite.config.ts correctness (defineConfig, aliases synced with tsconfig) (8 pts)
|
|
37
37
|
- index.html placement at project root, never inside public/ (6 pts)
|
|
38
38
|
- build.lib configuration for libraries (entry, formats, external, vite-plugin-dts) (8 pts)
|
|
39
|
-
-
|
|
39
|
+
- rolldownOptions.input for multi-page apps, plugin naming convention (vite-plugin-*) (8 pts)
|
|
40
40
|
|
|
41
41
|
**Reference**: `.claude/agents/vite-reviewer.md` (section 1)
|
|
42
42
|
|
|
@@ -151,7 +151,7 @@ Sub-scores:
|
|
|
151
151
|
• vite.config.ts correctness : XX/8
|
|
152
152
|
• index.html placement : XX/6
|
|
153
153
|
• build.lib configuration : XX/8
|
|
154
|
-
•
|
|
154
|
+
• rolldownOptions.input / plugins : XX/8
|
|
155
155
|
|
|
156
156
|
Strengths:
|
|
157
157
|
- [Architecture strengths]
|
|
Binary file
|
|
Binary file
|
|
@@ -46,8 +46,8 @@ Soy un especialista en revisión de código Angular 22 y TypeScript. Mi enfoque
|
|
|
46
46
|
|
|
47
47
|
**Zoneless por defecto (estable) :**
|
|
48
48
|
- Ahorro de ~33 KB de bundle (Zone.js opcional)
|
|
49
|
-
-
|
|
50
|
-
-
|
|
49
|
+
- Las mejoras de rendimiento varían según la aplicación (la cifra «+30-40%» proviene de una fuente de 2024): medir, no asumir
|
|
50
|
+
- Ningún provider requerido en v21+/v22: `provideZonelessChangeDetection()` solo es necesario en v20 (https://angular.dev/guide/zoneless)
|
|
51
51
|
|
|
52
52
|
**Signal Forms (estable v22) :**
|
|
53
53
|
- Alternativa nativa a los Reactive Forms con APIs de señales, **lista para producción**
|
|
@@ -421,7 +421,7 @@ it('should load users on init', () => {
|
|
|
421
421
|
SÍ --> ¿Los event listeners activan correctamente el CD?
|
|
422
422
|
NO --> ¿Se usa Zone.js?
|
|
423
423
|
SÍ --> MENOR en v22+: se recomienda migrar a zoneless (ahorra ~33 KB)
|
|
424
|
-
NO --> Verificar que
|
|
424
|
+
NO --> Verificar que ningún provideZoneChangeDetection() reactive Zone.js (zoneless por defecto desde v21)
|
|
425
425
|
|
|
426
426
|
¿Se usa httpResource() para peticiones HTTP repetitivas?
|
|
427
427
|
NO --> ¿Los componentes usan signal + effect + HttpClient?
|
|
@@ -7,6 +7,20 @@ maxTurns: 8
|
|
|
7
7
|
tools: [Read, Glob, Grep, Edit, Write, Bash, WebFetch, WebSearch]
|
|
8
8
|
permissionMode: default
|
|
9
9
|
skills: [git-workflow, security]
|
|
10
|
+
disallowedTools:
|
|
11
|
+
- "Bash(rm -rf:*)"
|
|
12
|
+
- "Bash(dd:*)"
|
|
13
|
+
- "Bash(mkfs:*)"
|
|
14
|
+
- "Bash(kubectl delete:*)"
|
|
15
|
+
- "Bash(helm uninstall:*)"
|
|
16
|
+
- "Bash(terraform destroy:*)"
|
|
17
|
+
- "Bash(tofu destroy:*)"
|
|
18
|
+
- "Bash(docker system prune -a*)"
|
|
19
|
+
- "Bash(docker volume rm:*)"
|
|
20
|
+
- "Bash(curl * | sh*)"
|
|
21
|
+
- "Bash(wget * | sh*)"
|
|
22
|
+
- "Bash(git push --force*)"
|
|
23
|
+
- "Bash(git push -f*)"
|
|
10
24
|
---
|
|
11
25
|
|
|
12
26
|
# Agente Ingeniero DevOps
|
|
@@ -31,7 +45,7 @@ Eres un **Ingeniero DevOps Senior** con más de 10 años de experiencia en CI/CD
|
|
|
31
45
|
| Docker | Builds multi-etapa, optimización de imágenes, escaneo de seguridad |
|
|
32
46
|
| Docker Compose | Orquestación local, perfiles, extensiones |
|
|
33
47
|
| Kubernetes | Deployments, Services, Ingress, ConfigMaps, Secrets |
|
|
34
|
-
| Helm | Charts, values, templating | 4.2.
|
|
48
|
+
| Helm | Charts, values, templating | 4.2.2 (Helm 4 = MAJOR — server-side apply, WASM plugins, API v4 ; Helm 3 EOL seguridad nov. 2026) |
|
|
35
49
|
|
|
36
50
|
### Proveedores Cloud
|
|
37
51
|
| Proveedor | Servicios |
|
|
@@ -5,6 +5,17 @@ model: opus
|
|
|
5
5
|
effort: xhigh
|
|
6
6
|
maxTurns: 10
|
|
7
7
|
memory: user
|
|
8
|
+
disallowedTools:
|
|
9
|
+
- "Bash(rm -rf:*)"
|
|
10
|
+
- "Bash(dd:*)"
|
|
11
|
+
- "Bash(mkfs:*)"
|
|
12
|
+
- "Bash(:(){:|:&};:*)"
|
|
13
|
+
- "Bash(sudo:*)"
|
|
14
|
+
- "Bash(chmod 777:*)"
|
|
15
|
+
- "Bash(curl * | sh*)"
|
|
16
|
+
- "Bash(wget * | sh*)"
|
|
17
|
+
- "Bash(git push --force*)"
|
|
18
|
+
- "Bash(git push -f*)"
|
|
8
19
|
---
|
|
9
20
|
|
|
10
21
|
# Agente Ralph Conductor v2.0
|
|
@@ -7,6 +7,15 @@ maxTurns: 8
|
|
|
7
7
|
tools: [Read, Glob, Grep, Edit, Write, Bash, WebFetch, WebSearch]
|
|
8
8
|
permissionMode: default
|
|
9
9
|
skills: [solid-principles, kiss-dry-yagni, testing]
|
|
10
|
+
disallowedTools:
|
|
11
|
+
- "Bash(rm -rf:*)"
|
|
12
|
+
- "Bash(dd:*)"
|
|
13
|
+
- "Bash(mkfs:*)"
|
|
14
|
+
- "Bash(:(){:|:&};:*)"
|
|
15
|
+
- "Bash(sudo:*)"
|
|
16
|
+
- "Bash(chmod 777:*)"
|
|
17
|
+
- "Bash(curl * | sh*)"
|
|
18
|
+
- "Bash(wget * | sh*)"
|
|
10
19
|
---
|
|
11
20
|
|
|
12
21
|
# Agente Especialista en Refactoring
|
|
@@ -22,13 +22,16 @@ Eres un **Auditor de Seguridad Sénior** con más de 15 años de experiencia en
|
|
|
22
22
|
|
|
23
23
|
| # | Amenaza | Foco de auditoría |
|
|
24
24
|
|---|---------|-------------------|
|
|
25
|
-
|
|
|
26
|
-
|
|
|
27
|
-
|
|
|
28
|
-
|
|
|
29
|
-
|
|
|
30
|
-
|
|
|
31
|
-
|
|
|
25
|
+
| A01 | Broken Access Control (incluye SSRF) | Verificar permisos por solicitud, denegar por defecto |
|
|
26
|
+
| A02 | Security Misconfiguration | Hardening, mensajes de error genéricos en producción |
|
|
27
|
+
| A03 | Software Supply Chain Failures | SLSA, SBOM, Sigstore keyless, Dependabot/Renovate, Trivy/Grype, `npm audit --audit-level=moderate` |
|
|
28
|
+
| A04 | Cryptographic Failures | TLS 1.3, Argon2id, sin MD5/SHA1 en código nuevo |
|
|
29
|
+
| A05 | Injection | Consultas parametrizadas, validación, sanitización |
|
|
30
|
+
| A06 | Insecure Design | Modelado de amenazas, rate limiting |
|
|
31
|
+
| A07 | Authentication Failures | MFA, proteccion contra fuerza bruta, JWT EdDSA, sesiones invalidadas al cerrar sesion |
|
|
32
|
+
| A08 | Software or Data Integrity Failures | Verificacion de firmas/checksums, CI/CD seguro, actualizaciones firmadas |
|
|
33
|
+
| A09 | Security Logging and Alerting Failures | Centralizar logs, alertas ante anomalias, retencion >= 1 ano, nunca registrar credenciales/tokens |
|
|
34
|
+
| A10 | Mishandling of Exceptional Conditions | Registrar errores, nunca exponer stack traces |
|
|
32
35
|
|
|
33
36
|
### Dominios de auditoría
|
|
34
37
|
|
|
@@ -7,6 +7,15 @@ maxTurns: 8
|
|
|
7
7
|
tools: [Read, Glob, Grep, Edit, Write, Bash, WebFetch, WebSearch]
|
|
8
8
|
permissionMode: default
|
|
9
9
|
skills: [testing, solid-principles]
|
|
10
|
+
disallowedTools:
|
|
11
|
+
- "Bash(rm -rf:*)"
|
|
12
|
+
- "Bash(dd:*)"
|
|
13
|
+
- "Bash(mkfs:*)"
|
|
14
|
+
- "Bash(:(){:|:&};:*)"
|
|
15
|
+
- "Bash(sudo:*)"
|
|
16
|
+
- "Bash(chmod 777:*)"
|
|
17
|
+
- "Bash(curl * | sh*)"
|
|
18
|
+
- "Bash(wget * | sh*)"
|
|
10
19
|
---
|
|
11
20
|
|
|
12
21
|
# Agente Coach TDD/BDD
|
|
@@ -4,8 +4,17 @@ description: UI-UX coordination and orchestration
|
|
|
4
4
|
model: sonnet
|
|
5
5
|
effort: medium
|
|
6
6
|
maxTurns: 10
|
|
7
|
-
tools: [Read, Glob, Grep, Edit, Write, Bash,
|
|
7
|
+
tools: [Read, Glob, Grep, Edit, Write, Bash, Agent, WebFetch, WebSearch]
|
|
8
8
|
permissionMode: default
|
|
9
|
+
disallowedTools:
|
|
10
|
+
- "Bash(rm -rf:*)"
|
|
11
|
+
- "Bash(dd:*)"
|
|
12
|
+
- "Bash(mkfs:*)"
|
|
13
|
+
- "Bash(:(){:|:&};:*)"
|
|
14
|
+
- "Bash(sudo:*)"
|
|
15
|
+
- "Bash(chmod 777:*)"
|
|
16
|
+
- "Bash(curl * | sh*)"
|
|
17
|
+
- "Bash(wget * | sh*)"
|
|
9
18
|
---
|
|
10
19
|
|
|
11
20
|
# Agente Orquestador UI/UX
|
|
@@ -70,7 +70,7 @@ Based on the detected stack, recommend 3 contextualized commands that provide im
|
|
|
70
70
|
- `/vuejs:check-security` — XSS, CSP, OWASP audit
|
|
71
71
|
|
|
72
72
|
**Laravel:**
|
|
73
|
-
- `/laravel:check-code-quality` —
|
|
73
|
+
- `/laravel:check-code-quality` — PER-CS 3.0, Pest 4/5, coding standards
|
|
74
74
|
- `/laravel:check-testing` — Test coverage with Pest
|
|
75
75
|
- `/laravel:check-security` — OWASP audit, Sanctum config
|
|
76
76
|
|
|
@@ -91,7 +91,7 @@ Based on the detected stack, recommend 3 contextualized commands that provide im
|
|
|
91
91
|
|
|
92
92
|
**PHP (standalone):**
|
|
93
93
|
- `/php:check-code-quality` — PSR-12, PHPStan Level 10
|
|
94
|
-
- `/php:check-testing` — Pest
|
|
94
|
+
- `/php:check-testing` — Pest 5 test coverage
|
|
95
95
|
- `/php:check-security` — Security best practices
|
|
96
96
|
|
|
97
97
|
**Unknown/Multi-stack:**
|
|
@@ -75,9 +75,9 @@ echo "CLAUDE_CODE_FORK_SUBAGENT=${CLAUDE_CODE_FORK_SUBAGENT:-NO DEFINIDO}"
|
|
|
75
75
|
Si no están definidas, recomendar agregar en `~/.bashrc` (o `~/.zshrc`):
|
|
76
76
|
|
|
77
77
|
```bash
|
|
78
|
-
# Usar Sonnet
|
|
78
|
+
# Usar Sonnet 5.5 para sub-agentes (exploración, grep, lectura de archivos) en lugar de Opus
|
|
79
79
|
# → 40-60% de reducción de coste en invocaciones de sub-agentes
|
|
80
|
-
export CLAUDE_CODE_SUBAGENT_MODEL="sonnet"
|
|
80
|
+
export CLAUDE_CODE_SUBAGENT_MODEL="claude-sonnet-5-5"
|
|
81
81
|
|
|
82
82
|
# Ejecutar sub-agentes en contextos aislados (Claude Code 2.1.117+, ver COMPATIBILITY.md)
|
|
83
83
|
# → Evita contaminar la ventana de contexto principal con el estado intermedio de sub-agentes
|
|
@@ -357,7 +357,7 @@ Es mejor tener varias interfaces especificas que una interfaz general.
|
|
|
357
357
|
|
|
358
358
|
#### SRP
|
|
359
359
|
- [ ] Cada clase tiene una sola responsabilidad claramente definida
|
|
360
|
-
- [ ] Los metodos hacen una sola cosa (< 20 lineas)
|
|
360
|
+
- [ ] Los metodos hacen una sola cosa (objetivo < 10, max 20 lineas)
|
|
361
361
|
- [ ] Sin metodos con "y" u "o" en el nombre
|
|
362
362
|
|
|
363
363
|
#### OCP
|
|
@@ -29,7 +29,7 @@ El codigo mas simple es a menudo el mejor codigo.
|
|
|
29
29
|
|
|
30
30
|
### Reglas KISS
|
|
31
31
|
|
|
32
|
-
1. **Metodos cortos:**
|
|
32
|
+
1. **Metodos cortos:** Objetivo < 10 lineas, limite maximo 20 lineas por metodo
|
|
33
33
|
2. **Complejidad ciclomatica:** Maximo 10 por metodo
|
|
34
34
|
3. **Profundidad de indentacion:** Maximo 3 niveles
|
|
35
35
|
4. **Parametros:** Maximo 4 parametros por metodo
|
|
@@ -369,7 +369,7 @@ class ConcreteRepository // Infrastructure
|
|
|
369
369
|
### Antes de cada commit
|
|
370
370
|
|
|
371
371
|
#### KISS
|
|
372
|
-
- [ ] Metodos <
|
|
372
|
+
- [ ] Metodos < 10 lineas (limite 20)
|
|
373
373
|
- [ ] Complejidad ciclomatica < 10
|
|
374
374
|
- [ ] Indentacion max 3 niveles
|
|
375
375
|
- [ ] Parametros max 4 por metodo
|
|
@@ -395,11 +395,14 @@ class ConcreteRepository // Infrastructure
|
|
|
395
395
|
|---------|----------|--------|
|
|
396
396
|
| Lineas por metodo | < 10 | < 20 |
|
|
397
397
|
| Complejidad ciclomatica | < 5 | < 10 |
|
|
398
|
+
| Complejidad cognitiva | < 7 | < 10 |
|
|
398
399
|
| Lineas por clase | < 150 | < 200 |
|
|
399
400
|
| Duplicacion | 0% | < 3% |
|
|
400
401
|
| Cobertura de tests | > 80% | > 70% |
|
|
401
402
|
| Dependencias por clase | < 5 | < 7 |
|
|
402
403
|
|
|
404
|
+
> Los umbrales de Cognitive Complexity (SonarQube S3776) < 7 / < 10 son una eleccion interna, deliberadamente mas estricta que el valor por defecto de Sonar (15 por funcion); relajarlos si el contexto del equipo lo requiere.
|
|
405
|
+
|
|
403
406
|
---
|
|
404
407
|
|
|
405
408
|
## Recursos
|