vstack 2.1.0__tar.gz → 3.0.0__tar.gz
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.
- {vstack-2.1.0 → vstack-3.0.0}/PKG-INFO +38 -2
- {vstack-2.1.0 → vstack-3.0.0}/README-pypi.md +37 -1
- {vstack-2.1.0 → vstack-3.0.0}/pyproject.toml +1 -1
- vstack-3.0.0/src/vstack/_templates/agents/architect/artifacts/adr/NNN-template.md +27 -0
- vstack-3.0.0/src/vstack/_templates/agents/architect/artifacts/overview.md +41 -0
- {vstack-2.1.0 → vstack-3.0.0}/src/vstack/_templates/agents/architect/config.yaml +15 -8
- {vstack-2.1.0 → vstack-3.0.0}/src/vstack/_templates/agents/architect/template.md +57 -14
- vstack-3.0.0/src/vstack/_templates/agents/designer/artifacts/overview.md +39 -0
- vstack-3.0.0/src/vstack/_templates/agents/designer/config.yaml +47 -0
- {vstack-2.1.0 → vstack-3.0.0}/src/vstack/_templates/agents/designer/template.md +58 -16
- vstack-3.0.0/src/vstack/_templates/agents/engineer/artifacts/issues/postmortem.md +42 -0
- vstack-3.0.0/src/vstack/_templates/agents/engineer/artifacts/issues/rca.md +39 -0
- vstack-3.0.0/src/vstack/_templates/agents/engineer/config.yaml +50 -0
- vstack-3.0.0/src/vstack/_templates/agents/engineer/template.md +154 -0
- vstack-3.0.0/src/vstack/_templates/agents/product/artifacts/changes/change-request.md +42 -0
- vstack-3.0.0/src/vstack/_templates/agents/product/artifacts/issues/issue.md +38 -0
- vstack-3.0.0/src/vstack/_templates/agents/product/artifacts/requirements.md +42 -0
- vstack-3.0.0/src/vstack/_templates/agents/product/artifacts/roadmap.md +73 -0
- vstack-3.0.0/src/vstack/_templates/agents/product/artifacts/vision.md +38 -0
- {vstack-2.1.0 → vstack-3.0.0}/src/vstack/_templates/agents/product/config.yaml +16 -8
- {vstack-2.1.0 → vstack-3.0.0}/src/vstack/_templates/agents/product/template.md +45 -20
- vstack-3.0.0/src/vstack/_templates/agents/release/artifacts/release-summary.md +48 -0
- {vstack-2.1.0 → vstack-3.0.0}/src/vstack/_templates/agents/release/config.yaml +11 -11
- vstack-3.0.0/src/vstack/_templates/agents/release/template.md +110 -0
- vstack-3.0.0/src/vstack/_templates/agents/tester/artifacts/performance-baseline.md +25 -0
- vstack-3.0.0/src/vstack/_templates/agents/tester/artifacts/security-report.md +26 -0
- vstack-3.0.0/src/vstack/_templates/agents/tester/artifacts/test-report.md +32 -0
- vstack-3.0.0/src/vstack/_templates/agents/tester/config.yaml +43 -0
- {vstack-2.1.0 → vstack-3.0.0}/src/vstack/_templates/agents/tester/template.md +62 -17
- {vstack-2.1.0 → vstack-3.0.0}/src/vstack/_templates/instructions/git/config.yaml +1 -1
- vstack-3.0.0/src/vstack/_templates/instructions/helm/config.yaml +4 -0
- vstack-3.0.0/src/vstack/_templates/instructions/helm/template.md +40 -0
- vstack-3.0.0/src/vstack/_templates/instructions/java/config.yaml +4 -0
- vstack-3.0.0/src/vstack/_templates/instructions/java/template.md +51 -0
- vstack-3.0.0/src/vstack/_templates/instructions/k8s/config.yaml +4 -0
- vstack-3.0.0/src/vstack/_templates/instructions/k8s/template.md +46 -0
- vstack-3.0.0/src/vstack/_templates/instructions/markdown/config.yaml +4 -0
- vstack-3.0.0/src/vstack/_templates/instructions/markdown/template.md +46 -0
- {vstack-2.1.0 → vstack-3.0.0}/src/vstack/_templates/instructions/python/config.yaml +1 -1
- vstack-3.0.0/src/vstack/_templates/instructions/rancher/config.yaml +4 -0
- vstack-3.0.0/src/vstack/_templates/instructions/rancher/template.md +39 -0
- vstack-3.0.0/src/vstack/_templates/instructions/security/config.yaml +4 -0
- vstack-3.0.0/src/vstack/_templates/instructions/security/template.md +37 -0
- vstack-3.0.0/src/vstack/_templates/instructions/terraform/config.yaml +4 -0
- vstack-3.0.0/src/vstack/_templates/instructions/terraform/template.md +55 -0
- vstack-3.0.0/src/vstack/_templates/instructions/terragrunt/config.yaml +4 -0
- vstack-3.0.0/src/vstack/_templates/instructions/terragrunt/template.md +52 -0
- vstack-3.0.0/src/vstack/_templates/instructions/testing/config.yaml +4 -0
- vstack-3.0.0/src/vstack/_templates/instructions/testing/template.md +38 -0
- vstack-3.0.0/src/vstack/_templates/instructions/typescript/config.yaml +4 -0
- vstack-3.0.0/src/vstack/_templates/instructions/typescript/template.md +44 -0
- vstack-3.0.0/src/vstack/_templates/project/.vstack/config.yaml +28 -0
- vstack-3.0.0/src/vstack/_templates/prompts/api-design-review/config.yaml +9 -0
- vstack-3.0.0/src/vstack/_templates/prompts/api-design-review/template.md +45 -0
- vstack-3.0.0/src/vstack/_templates/prompts/architecture-risk/config.yaml +9 -0
- vstack-3.0.0/src/vstack/_templates/prompts/architecture-risk/template.md +42 -0
- {vstack-2.1.0 → vstack-3.0.0}/src/vstack/_templates/prompts/code-review/config.yaml +1 -1
- {vstack-2.1.0 → vstack-3.0.0}/src/vstack/_templates/prompts/code-review/template.md +1 -0
- vstack-3.0.0/src/vstack/_templates/prompts/dependency-audit/config.yaml +9 -0
- vstack-3.0.0/src/vstack/_templates/prompts/dependency-audit/template.md +50 -0
- vstack-3.0.0/src/vstack/_templates/prompts/incident-timeline/config.yaml +9 -0
- vstack-3.0.0/src/vstack/_templates/prompts/incident-timeline/template.md +47 -0
- vstack-3.0.0/src/vstack/_templates/prompts/migration-safety/config.yaml +10 -0
- vstack-3.0.0/src/vstack/_templates/prompts/migration-safety/template.md +41 -0
- vstack-3.0.0/src/vstack/_templates/prompts/release-readiness/config.yaml +9 -0
- vstack-3.0.0/src/vstack/_templates/prompts/release-readiness/template.md +36 -0
- {vstack-2.1.0 → vstack-3.0.0}/src/vstack/_templates/skills/adr/config.yaml +1 -1
- {vstack-2.1.0 → vstack-3.0.0}/src/vstack/_templates/skills/adr/template.md +1 -21
- {vstack-2.1.0 → vstack-3.0.0}/src/vstack/_templates/skills/analyse/config.yaml +1 -1
- {vstack-2.1.0 → vstack-3.0.0}/src/vstack/_templates/skills/analyse/template.md +0 -14
- {vstack-2.1.0 → vstack-3.0.0}/src/vstack/_templates/skills/architecture/config.yaml +1 -1
- {vstack-2.1.0 → vstack-3.0.0}/src/vstack/_templates/skills/architecture/template.md +4 -7
- vstack-3.0.0/src/vstack/_templates/skills/aws-cli/config.yaml +17 -0
- vstack-3.0.0/src/vstack/_templates/skills/aws-cli/template.md +341 -0
- {vstack-2.1.0 → vstack-3.0.0}/src/vstack/_templates/skills/cicd/config.yaml +1 -1
- {vstack-2.1.0 → vstack-3.0.0}/src/vstack/_templates/skills/cicd/template.md +36 -17
- vstack-3.0.0/src/vstack/_templates/skills/cloudformation/config.yaml +18 -0
- vstack-3.0.0/src/vstack/_templates/skills/cloudformation/template.md +311 -0
- {vstack-2.1.0 → vstack-3.0.0}/src/vstack/_templates/skills/code-review/config.yaml +1 -1
- {vstack-2.1.0 → vstack-3.0.0}/src/vstack/_templates/skills/code-review/template.md +0 -2
- vstack-3.0.0/src/vstack/_templates/skills/codeql/config.yaml +17 -0
- vstack-3.0.0/src/vstack/_templates/skills/codeql/template.md +218 -0
- {vstack-2.1.0 → vstack-3.0.0}/src/vstack/_templates/skills/concise/config.yaml +1 -1
- {vstack-2.1.0 → vstack-3.0.0}/src/vstack/_templates/skills/concise/template.md +0 -14
- {vstack-2.1.0 → vstack-3.0.0}/src/vstack/_templates/skills/consult/config.yaml +1 -1
- {vstack-2.1.0 → vstack-3.0.0}/src/vstack/_templates/skills/consult/template.md +0 -10
- {vstack-2.1.0 → vstack-3.0.0}/src/vstack/_templates/skills/container/config.yaml +1 -1
- {vstack-2.1.0 → vstack-3.0.0}/src/vstack/_templates/skills/container/template.md +7 -9
- vstack-3.0.0/src/vstack/_templates/skills/conventional-commit/config.yaml +18 -0
- vstack-3.0.0/src/vstack/_templates/skills/conventional-commit/template.md +122 -0
- {vstack-2.1.0 → vstack-3.0.0}/src/vstack/_templates/skills/debug/config.yaml +1 -1
- {vstack-2.1.0 → vstack-3.0.0}/src/vstack/_templates/skills/debug/template.md +0 -22
- vstack-3.0.0/src/vstack/_templates/skills/dependabot/config.yaml +17 -0
- vstack-3.0.0/src/vstack/_templates/skills/dependabot/template.md +287 -0
- {vstack-2.1.0 → vstack-3.0.0}/src/vstack/_templates/skills/dependency/config.yaml +1 -1
- {vstack-2.1.0 → vstack-3.0.0}/src/vstack/_templates/skills/dependency/template.md +8 -16
- {vstack-2.1.0 → vstack-3.0.0}/src/vstack/_templates/skills/design/config.yaml +1 -1
- {vstack-2.1.0 → vstack-3.0.0}/src/vstack/_templates/skills/design/template.md +3 -24
- {vstack-2.1.0 → vstack-3.0.0}/src/vstack/_templates/skills/docs/config.yaml +1 -1
- {vstack-2.1.0 → vstack-3.0.0}/src/vstack/_templates/skills/docs/template.md +1 -18
- {vstack-2.1.0 → vstack-3.0.0}/src/vstack/_templates/skills/explore/config.yaml +1 -1
- {vstack-2.1.0 → vstack-3.0.0}/src/vstack/_templates/skills/explore/template.md +2 -20
- vstack-3.0.0/src/vstack/_templates/skills/gdpr/config.yaml +19 -0
- vstack-3.0.0/src/vstack/_templates/skills/gdpr/template.md +213 -0
- vstack-3.0.0/src/vstack/_templates/skills/gh-issues/config.yaml +16 -0
- vstack-3.0.0/src/vstack/_templates/skills/gh-issues/template.md +197 -0
- vstack-3.0.0/src/vstack/_templates/skills/gh-release/config.yaml +17 -0
- vstack-3.0.0/src/vstack/_templates/skills/gh-release/template.md +181 -0
- {vstack-2.1.0 → vstack-3.0.0}/src/vstack/_templates/skills/guardrails/config.yaml +1 -1
- {vstack-2.1.0 → vstack-3.0.0}/src/vstack/_templates/skills/guardrails/template.md +0 -6
- vstack-3.0.0/src/vstack/_templates/skills/helm/config.yaml +16 -0
- vstack-3.0.0/src/vstack/_templates/skills/helm/template.md +107 -0
- vstack-3.0.0/src/vstack/_templates/skills/incident/config.yaml +17 -0
- {vstack-2.1.0 → vstack-3.0.0}/src/vstack/_templates/skills/incident/template.md +15 -90
- {vstack-2.1.0 → vstack-3.0.0}/src/vstack/_templates/skills/inspect/config.yaml +1 -1
- {vstack-2.1.0 → vstack-3.0.0}/src/vstack/_templates/skills/inspect/template.md +3 -14
- vstack-3.0.0/src/vstack/_templates/skills/k8s/config.yaml +17 -0
- vstack-3.0.0/src/vstack/_templates/skills/k8s/template.md +111 -0
- {vstack-2.1.0 → vstack-3.0.0}/src/vstack/_templates/skills/migrate/config.yaml +1 -1
- {vstack-2.1.0 → vstack-3.0.0}/src/vstack/_templates/skills/migrate/template.md +1 -19
- {vstack-2.1.0 → vstack-3.0.0}/src/vstack/_templates/skills/onboard/config.yaml +1 -1
- {vstack-2.1.0 → vstack-3.0.0}/src/vstack/_templates/skills/onboard/template.md +1 -21
- {vstack-2.1.0 → vstack-3.0.0}/src/vstack/_templates/skills/openapi/config.yaml +1 -1
- {vstack-2.1.0 → vstack-3.0.0}/src/vstack/_templates/skills/openapi/template.md +8 -20
- {vstack-2.1.0 → vstack-3.0.0}/src/vstack/_templates/skills/performance/config.yaml +1 -1
- {vstack-2.1.0 → vstack-3.0.0}/src/vstack/_templates/skills/performance/template.md +2 -19
- vstack-3.0.0/src/vstack/_templates/skills/postmortem/config.yaml +16 -0
- vstack-3.0.0/src/vstack/_templates/skills/postmortem/template.md +151 -0
- {vstack-2.1.0 → vstack-3.0.0}/src/vstack/_templates/skills/pr/config.yaml +1 -1
- vstack-3.0.0/src/vstack/_templates/skills/pr/template.md +118 -0
- vstack-3.0.0/src/vstack/_templates/skills/rancher/config.yaml +16 -0
- vstack-3.0.0/src/vstack/_templates/skills/rancher/template.md +80 -0
- vstack-3.0.0/src/vstack/_templates/skills/rca/config.yaml +17 -0
- vstack-3.0.0/src/vstack/_templates/skills/rca/template.md +174 -0
- {vstack-2.1.0 → vstack-3.0.0}/src/vstack/_templates/skills/refactor/config.yaml +1 -1
- {vstack-2.1.0 → vstack-3.0.0}/src/vstack/_templates/skills/refactor/template.md +0 -14
- {vstack-2.1.0 → vstack-3.0.0}/src/vstack/_templates/skills/release-notes/config.yaml +1 -1
- vstack-3.0.0/src/vstack/_templates/skills/release-notes/template.md +114 -0
- {vstack-2.1.0 → vstack-3.0.0}/src/vstack/_templates/skills/requirements/config.yaml +1 -1
- {vstack-2.1.0 → vstack-3.0.0}/src/vstack/_templates/skills/requirements/template.md +1 -22
- vstack-3.0.0/src/vstack/_templates/skills/secret-scan/config.yaml +17 -0
- vstack-3.0.0/src/vstack/_templates/skills/secret-scan/template.md +207 -0
- {vstack-2.1.0 → vstack-3.0.0}/src/vstack/_templates/skills/security/config.yaml +1 -1
- {vstack-2.1.0 → vstack-3.0.0}/src/vstack/_templates/skills/security/template.md +19 -20
- vstack-3.0.0/src/vstack/_templates/skills/terraform/config.yaml +18 -0
- vstack-3.0.0/src/vstack/_templates/skills/terraform/template.md +302 -0
- vstack-3.0.0/src/vstack/_templates/skills/terragrunt/config.yaml +18 -0
- vstack-3.0.0/src/vstack/_templates/skills/terragrunt/template.md +274 -0
- vstack-3.0.0/src/vstack/_templates/skills/threat-model/config.yaml +17 -0
- vstack-3.0.0/src/vstack/_templates/skills/threat-model/template.md +205 -0
- {vstack-2.1.0 → vstack-3.0.0}/src/vstack/_templates/skills/verify/config.yaml +1 -1
- {vstack-2.1.0 → vstack-3.0.0}/src/vstack/_templates/skills/verify/template.md +2 -19
- {vstack-2.1.0 → vstack-3.0.0}/src/vstack/_templates/skills/vision/config.yaml +1 -1
- {vstack-2.1.0 → vstack-3.0.0}/src/vstack/_templates/skills/vision/template.md +1 -4
- vstack-3.0.0/src/vstack/agents/generator.py +194 -0
- {vstack-2.1.0 → vstack-3.0.0}/src/vstack/artifacts/config.py +1 -1
- {vstack-2.1.0 → vstack-3.0.0}/src/vstack/artifacts/generator.py +14 -2
- {vstack-2.1.0 → vstack-3.0.0}/src/vstack/cli/base.py +1 -0
- {vstack-2.1.0 → vstack-3.0.0}/src/vstack/cli/catalog.py +13 -1
- {vstack-2.1.0 → vstack-3.0.0}/src/vstack/cli/constants.py +40 -2
- vstack-2.1.0/src/vstack/cli/install.py → vstack-3.0.0/src/vstack/cli/init.py +53 -24
- vstack-3.0.0/src/vstack/cli/install.py +151 -0
- vstack-3.0.0/src/vstack/cli/interface.py +196 -0
- {vstack-2.1.0 → vstack-3.0.0}/src/vstack/cli/parser.py +47 -0
- {vstack-2.1.0 → vstack-3.0.0}/src/vstack/cli/service.py +29 -6
- {vstack-2.1.0 → vstack-3.0.0}/src/vstack/cli/status.py +1 -1
- {vstack-2.1.0 → vstack-3.0.0}/src/vstack/constants.py +6 -0
- vstack-2.1.0/src/vstack/_templates/agents/designer/config.yaml +0 -36
- vstack-2.1.0/src/vstack/_templates/agents/engineer/config.yaml +0 -36
- vstack-2.1.0/src/vstack/_templates/agents/engineer/template.md +0 -88
- vstack-2.1.0/src/vstack/_templates/agents/release/template.md +0 -86
- vstack-2.1.0/src/vstack/_templates/agents/tester/config.yaml +0 -41
- vstack-2.1.0/src/vstack/_templates/skills/incident/config.yaml +0 -17
- vstack-2.1.0/src/vstack/_templates/skills/pr/template.md +0 -108
- vstack-2.1.0/src/vstack/_templates/skills/release-notes/template.md +0 -127
- vstack-2.1.0/src/vstack/agents/generator.py +0 -20
- vstack-2.1.0/src/vstack/cli/interface.py +0 -93
- {vstack-2.1.0 → vstack-3.0.0}/LICENSE +0 -0
- {vstack-2.1.0 → vstack-3.0.0}/src/vstack/__init__.py +0 -0
- {vstack-2.1.0 → vstack-3.0.0}/src/vstack/__main__.py +0 -0
- {vstack-2.1.0 → vstack-3.0.0}/src/vstack/_templates/agents/_partials/agent-skill-boundary.md +0 -0
- {vstack-2.1.0 → vstack-3.0.0}/src/vstack/_templates/instructions/git/template.md +0 -0
- {vstack-2.1.0 → vstack-3.0.0}/src/vstack/_templates/instructions/python/template.md +0 -0
- {vstack-2.1.0 → vstack-3.0.0}/src/vstack/_templates/skills/_partials/base-branch.md +0 -0
- {vstack-2.1.0 → vstack-3.0.0}/src/vstack/_templates/skills/_partials/observability-checklist.md +0 -0
- {vstack-2.1.0 → vstack-3.0.0}/src/vstack/_templates/skills/_partials/run-tests.md +0 -0
- {vstack-2.1.0 → vstack-3.0.0}/src/vstack/_templates/skills/_partials/skill-context.md +0 -0
- {vstack-2.1.0 → vstack-3.0.0}/src/vstack/agents/__init__.py +0 -0
- {vstack-2.1.0 → vstack-3.0.0}/src/vstack/agents/config.py +0 -0
- {vstack-2.1.0 → vstack-3.0.0}/src/vstack/agents/constants.py +0 -0
- {vstack-2.1.0 → vstack-3.0.0}/src/vstack/artifacts/__init__.py +0 -0
- {vstack-2.1.0 → vstack-3.0.0}/src/vstack/artifacts/constants.py +0 -0
- {vstack-2.1.0 → vstack-3.0.0}/src/vstack/artifacts/models.py +0 -0
- {vstack-2.1.0 → vstack-3.0.0}/src/vstack/artifacts/protocol.py +0 -0
- {vstack-2.1.0 → vstack-3.0.0}/src/vstack/cli/__init__.py +0 -0
- {vstack-2.1.0 → vstack-3.0.0}/src/vstack/cli/helpers.py +0 -0
- {vstack-2.1.0 → vstack-3.0.0}/src/vstack/cli/manifest.py +0 -0
- {vstack-2.1.0 → vstack-3.0.0}/src/vstack/cli/registry.py +0 -0
- {vstack-2.1.0 → vstack-3.0.0}/src/vstack/cli/report.py +0 -0
- {vstack-2.1.0 → vstack-3.0.0}/src/vstack/cli/uninstall.py +0 -0
- {vstack-2.1.0 → vstack-3.0.0}/src/vstack/cli/validate.py +0 -0
- {vstack-2.1.0 → vstack-3.0.0}/src/vstack/cli/verify.py +0 -0
- {vstack-2.1.0 → vstack-3.0.0}/src/vstack/frontmatter/__init__.py +0 -0
- {vstack-2.1.0 → vstack-3.0.0}/src/vstack/frontmatter/parser.py +0 -0
- {vstack-2.1.0 → vstack-3.0.0}/src/vstack/frontmatter/schema.py +0 -0
- {vstack-2.1.0 → vstack-3.0.0}/src/vstack/frontmatter/serializer.py +0 -0
- {vstack-2.1.0 → vstack-3.0.0}/src/vstack/instructions/__init__.py +0 -0
- {vstack-2.1.0 → vstack-3.0.0}/src/vstack/instructions/config.py +0 -0
- {vstack-2.1.0 → vstack-3.0.0}/src/vstack/instructions/constants.py +0 -0
- {vstack-2.1.0 → vstack-3.0.0}/src/vstack/instructions/generator.py +0 -0
- {vstack-2.1.0 → vstack-3.0.0}/src/vstack/main.py +0 -0
- {vstack-2.1.0 → vstack-3.0.0}/src/vstack/manifest/__init__.py +0 -0
- {vstack-2.1.0 → vstack-3.0.0}/src/vstack/manifest/store.py +0 -0
- {vstack-2.1.0 → vstack-3.0.0}/src/vstack/models.py +0 -0
- {vstack-2.1.0 → vstack-3.0.0}/src/vstack/prompts/__init__.py +0 -0
- {vstack-2.1.0 → vstack-3.0.0}/src/vstack/prompts/config.py +0 -0
- {vstack-2.1.0 → vstack-3.0.0}/src/vstack/prompts/constants.py +0 -0
- {vstack-2.1.0 → vstack-3.0.0}/src/vstack/prompts/generator.py +0 -0
- {vstack-2.1.0 → vstack-3.0.0}/src/vstack/skills/__init__.py +0 -0
- {vstack-2.1.0 → vstack-3.0.0}/src/vstack/skills/config.py +0 -0
- {vstack-2.1.0 → vstack-3.0.0}/src/vstack/skills/constants.py +0 -0
- {vstack-2.1.0 → vstack-3.0.0}/src/vstack/skills/generator.py +0 -0
- {vstack-2.1.0 → vstack-3.0.0}/src/vstack/skills/models.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: vstack
|
|
3
|
-
Version:
|
|
3
|
+
Version: 3.0.0
|
|
4
4
|
Summary: VS Code-native AI engineering workflow system for microservices, libraries, and backend systems.
|
|
5
5
|
License-Expression: MIT
|
|
6
6
|
License-File: LICENSE
|
|
@@ -56,6 +56,30 @@ It provides a fixed role model for end-to-end software delivery: `product`, `arc
|
|
|
56
56
|
- Backend-first verification, security, and release discipline
|
|
57
57
|
- Standard-library-only runtime dependencies
|
|
58
58
|
|
|
59
|
+
## Building blocks
|
|
60
|
+
|
|
61
|
+
| Artifact type | Purpose | Typical invocation |
|
|
62
|
+
| ------------- | ---------------------------------------------------------- | ---------------------- |
|
|
63
|
+
| Agents | Main operating interface for role-based work | `@product`, `@tester` |
|
|
64
|
+
| Skills | Reusable task procedures | `/verify`, `/security` |
|
|
65
|
+
| Instructions | Baseline policy and repository guardrails | auto-loaded by context |
|
|
66
|
+
| Prompts | Reusable prompt artifacts where direct prompting is useful | explicit prompt use |
|
|
67
|
+
|
|
68
|
+
## Prompt catalog
|
|
69
|
+
|
|
70
|
+
Prompts are `.prompt.md` files installed to `.github/prompts/`. Invoke them via the
|
|
71
|
+
VS Code command palette (`Chat: Run Prompt File`) or the Copilot Chat attach button.
|
|
72
|
+
|
|
73
|
+
| Prompt | Purpose |
|
|
74
|
+
| ------------------- | --------------------------------------------------------- |
|
|
75
|
+
| `api-design-review` | Review an API design or OpenAPI spec for correctness |
|
|
76
|
+
| `architecture-risk` | Identify architectural risks and mitigation priorities |
|
|
77
|
+
| `code-review` | Review a change for bugs, regressions, and missing tests |
|
|
78
|
+
| `dependency-audit` | Audit dependencies for vulnerabilities and licence risks |
|
|
79
|
+
| `incident-timeline` | Build an evidence-based incident timeline and post-mortem |
|
|
80
|
+
| `migration-safety` | Review DB migration safety, rollback, and zero-downtime |
|
|
81
|
+
| `release-readiness` | Evaluate release readiness from reports and open blockers |
|
|
82
|
+
|
|
59
83
|
## Quick start
|
|
60
84
|
|
|
61
85
|
Install with `pipx`, then install vstack artifacts into your repository:
|
|
@@ -108,7 +132,19 @@ Profile-wide install (optional defaults for all projects):
|
|
|
108
132
|
vstack install --global
|
|
109
133
|
```
|
|
110
134
|
|
|
111
|
-
|
|
135
|
+
`vstack install` is the first-run command: it seeds `.vstack/config.yaml` in your project (never overwrites), then generates `.github/` artifacts from templates. `vstack init` re-runs generation idempotently — safe to use in CI after upgrading vstack.
|
|
136
|
+
|
|
137
|
+
By default, `vstack install` preserves existing unmanaged files and local edits to tracked files by comparing the current file contents with the SHA-256 checksum recorded in `.vstack/vstack.json`. Use `--adopt-name <name>` to start tracking one existing unmanaged file without overwriting it. `vstack uninstall` also preserves locally modified tracked files unless you explicitly pass `--force` or `--force-name <name>`. Use `vstack manifest status --target ...` (or `vstack status --target ...`) to see what still matches the manifest. If a legacy manifest schema is detected, run `vstack manifest upgrade --target ...` first.
|
|
138
|
+
|
|
139
|
+
To skip artifact types or individual artifacts you do not need, edit `.vstack/config.yaml`:
|
|
140
|
+
|
|
141
|
+
```yaml
|
|
142
|
+
exclude:
|
|
143
|
+
skills:
|
|
144
|
+
- terraform
|
|
145
|
+
- helm
|
|
146
|
+
instructions: all # skip the entire type
|
|
147
|
+
```
|
|
112
148
|
|
|
113
149
|
If you already have agents, skills, or other files in `.github/`, run a dry-run first to see what would be preserved before committing:
|
|
114
150
|
|
|
@@ -29,6 +29,30 @@ It provides a fixed role model for end-to-end software delivery: `product`, `arc
|
|
|
29
29
|
- Backend-first verification, security, and release discipline
|
|
30
30
|
- Standard-library-only runtime dependencies
|
|
31
31
|
|
|
32
|
+
## Building blocks
|
|
33
|
+
|
|
34
|
+
| Artifact type | Purpose | Typical invocation |
|
|
35
|
+
| ------------- | ---------------------------------------------------------- | ---------------------- |
|
|
36
|
+
| Agents | Main operating interface for role-based work | `@product`, `@tester` |
|
|
37
|
+
| Skills | Reusable task procedures | `/verify`, `/security` |
|
|
38
|
+
| Instructions | Baseline policy and repository guardrails | auto-loaded by context |
|
|
39
|
+
| Prompts | Reusable prompt artifacts where direct prompting is useful | explicit prompt use |
|
|
40
|
+
|
|
41
|
+
## Prompt catalog
|
|
42
|
+
|
|
43
|
+
Prompts are `.prompt.md` files installed to `.github/prompts/`. Invoke them via the
|
|
44
|
+
VS Code command palette (`Chat: Run Prompt File`) or the Copilot Chat attach button.
|
|
45
|
+
|
|
46
|
+
| Prompt | Purpose |
|
|
47
|
+
| ------------------- | --------------------------------------------------------- |
|
|
48
|
+
| `api-design-review` | Review an API design or OpenAPI spec for correctness |
|
|
49
|
+
| `architecture-risk` | Identify architectural risks and mitigation priorities |
|
|
50
|
+
| `code-review` | Review a change for bugs, regressions, and missing tests |
|
|
51
|
+
| `dependency-audit` | Audit dependencies for vulnerabilities and licence risks |
|
|
52
|
+
| `incident-timeline` | Build an evidence-based incident timeline and post-mortem |
|
|
53
|
+
| `migration-safety` | Review DB migration safety, rollback, and zero-downtime |
|
|
54
|
+
| `release-readiness` | Evaluate release readiness from reports and open blockers |
|
|
55
|
+
|
|
32
56
|
## Quick start
|
|
33
57
|
|
|
34
58
|
Install with `pipx`, then install vstack artifacts into your repository:
|
|
@@ -81,7 +105,19 @@ Profile-wide install (optional defaults for all projects):
|
|
|
81
105
|
vstack install --global
|
|
82
106
|
```
|
|
83
107
|
|
|
84
|
-
|
|
108
|
+
`vstack install` is the first-run command: it seeds `.vstack/config.yaml` in your project (never overwrites), then generates `.github/` artifacts from templates. `vstack init` re-runs generation idempotently — safe to use in CI after upgrading vstack.
|
|
109
|
+
|
|
110
|
+
By default, `vstack install` preserves existing unmanaged files and local edits to tracked files by comparing the current file contents with the SHA-256 checksum recorded in `.vstack/vstack.json`. Use `--adopt-name <name>` to start tracking one existing unmanaged file without overwriting it. `vstack uninstall` also preserves locally modified tracked files unless you explicitly pass `--force` or `--force-name <name>`. Use `vstack manifest status --target ...` (or `vstack status --target ...`) to see what still matches the manifest. If a legacy manifest schema is detected, run `vstack manifest upgrade --target ...` first.
|
|
111
|
+
|
|
112
|
+
To skip artifact types or individual artifacts you do not need, edit `.vstack/config.yaml`:
|
|
113
|
+
|
|
114
|
+
```yaml
|
|
115
|
+
exclude:
|
|
116
|
+
skills:
|
|
117
|
+
- terraform
|
|
118
|
+
- helm
|
|
119
|
+
instructions: all # skip the entire type
|
|
120
|
+
```
|
|
85
121
|
|
|
86
122
|
If you already have agents, skills, or other files in `.github/`, run a dry-run first to see what would be preserved before committing:
|
|
87
123
|
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
# ADR-NNN: {title}
|
|
2
|
+
|
|
3
|
+
<!-- One file per decision. Suggested name: NNN-{slug}.md (e.g. 001-service-boundaries.md)
|
|
4
|
+
Deviate from this structure as needed. -->
|
|
5
|
+
|
|
6
|
+
> **date:** YYYY-MM-DD\
|
|
7
|
+
> **status:** proposed | accepted | superseded by ADR-NNN
|
|
8
|
+
|
|
9
|
+
## context
|
|
10
|
+
|
|
11
|
+
<!-- What situation or problem led to this decision? -->
|
|
12
|
+
|
|
13
|
+
## decision
|
|
14
|
+
|
|
15
|
+
<!-- What was decided? State it clearly and positively. -->
|
|
16
|
+
|
|
17
|
+
## alternatives considered
|
|
18
|
+
|
|
19
|
+
<!-- What other options were evaluated? Why were they not chosen? -->
|
|
20
|
+
|
|
21
|
+
## rationale
|
|
22
|
+
|
|
23
|
+
<!-- Why is this decision the right one given the context? -->
|
|
24
|
+
|
|
25
|
+
## consequences
|
|
26
|
+
|
|
27
|
+
<!-- What is easier or harder as a result? What does this enable or constrain? -->
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
# Architecture Overview
|
|
2
|
+
|
|
3
|
+
<!-- Describes the system architecture. Deviate from this structure as needed. -->
|
|
4
|
+
|
|
5
|
+
> Maintained by: **architect** role\
|
|
6
|
+
> Last updated: YYYY-MM-DD
|
|
7
|
+
|
|
8
|
+
## overview
|
|
9
|
+
|
|
10
|
+
<!-- What system is this? What problem does it solve?
|
|
11
|
+
Include a system style declaration: e.g. `**System style:** microservice | monolith | platform | library` -->
|
|
12
|
+
|
|
13
|
+
## system structure
|
|
14
|
+
|
|
15
|
+
<!-- Repository or deployment layout. Use a plain text tree for directory structure. -->
|
|
16
|
+
|
|
17
|
+
```text
|
|
18
|
+
{system}/
|
|
19
|
+
├── ...
|
|
20
|
+
```
|
|
21
|
+
|
|
22
|
+
## components
|
|
23
|
+
|
|
24
|
+
<!-- High-level component breakdown. Use a Mermaid diagram for flows; text tree for structure. -->
|
|
25
|
+
|
|
26
|
+
## principles
|
|
27
|
+
|
|
28
|
+
<!-- Key architectural constraints and non-negotiable decisions.
|
|
29
|
+
These constrain all downstream design choices. -->
|
|
30
|
+
|
|
31
|
+
## data flow
|
|
32
|
+
|
|
33
|
+
<!-- How data moves through the system. -->
|
|
34
|
+
|
|
35
|
+
## key decisions
|
|
36
|
+
|
|
37
|
+
<!-- Links or summaries of significant ADRs. -->
|
|
38
|
+
|
|
39
|
+
## open questions
|
|
40
|
+
|
|
41
|
+
<!-- Unresolved architectural concerns. -->
|
|
@@ -1,13 +1,11 @@
|
|
|
1
1
|
name: architect
|
|
2
|
-
version:
|
|
2
|
+
version: 20260503022
|
|
3
3
|
description: >
|
|
4
4
|
Senior software architect. Sets the system blueprint: service decomposition,
|
|
5
5
|
technology direction, standards, NFRs, and organizational constraints.
|
|
6
6
|
Structural decisions stay at blueprint level — interaction design is
|
|
7
|
-
designer's territory. Reads
|
|
8
|
-
|
|
9
|
-
docs/architecture/adr/*.md. Baseline-first on branch, optional
|
|
10
|
-
docs/delta/{id} for complex drafts.
|
|
7
|
+
designer's territory. Reads product artifacts; produces architecture overview
|
|
8
|
+
and ADRs. Baseline-first on branch.
|
|
11
9
|
argument-hint: "[design architecture | write ADR | review architecture | check implementation alignment]"
|
|
12
10
|
tools:
|
|
13
11
|
- read
|
|
@@ -23,11 +21,20 @@ model:
|
|
|
23
21
|
- Claude Opus 4.7 (copilot)
|
|
24
22
|
agents: ["*"]
|
|
25
23
|
handoffs:
|
|
26
|
-
- label:
|
|
24
|
+
- label: "Go to next stage: Design"
|
|
27
25
|
agent: designer
|
|
28
26
|
prompt: >
|
|
29
|
-
|
|
30
|
-
|
|
27
|
+
Architecture outputs are approved. Assess the current state and produce
|
|
28
|
+
design specifications as needed. If your domain is not affected by
|
|
29
|
+
this change, assess and confirm that explicitly, then pass through to
|
|
30
|
+
the next stage.
|
|
31
|
+
artifacts:
|
|
32
|
+
dir: architecture
|
|
33
|
+
input:
|
|
34
|
+
- product/**/*.md
|
|
35
|
+
output:
|
|
36
|
+
- overview.md
|
|
37
|
+
- adr/*.md
|
|
31
38
|
target: vscode
|
|
32
39
|
user-invocable: true
|
|
33
40
|
|
|
@@ -4,14 +4,24 @@
|
|
|
4
4
|
|
|
5
5
|
You are a **senior software architect** acting as the **architect role**. You define the system blueprint: boundaries, technology direction, constraints, and reliability posture.
|
|
6
6
|
|
|
7
|
-
## responsibilities
|
|
7
|
+
## responsibilities
|
|
8
8
|
|
|
9
9
|
- Own system boundaries, technology direction, NFRs, failure modes, and structural decisions.
|
|
10
10
|
- Record significant decisions as ADRs.
|
|
11
|
-
- Do not detail API contracts or data schemas — that is the designer's responsibility.
|
|
12
|
-
- Do not implement feature code; do not bypass product requirements.
|
|
13
11
|
|
|
14
|
-
##
|
|
12
|
+
## scope and boundaries
|
|
13
|
+
|
|
14
|
+
- Architect owns system structure, boundaries, constraints, and technology direction.
|
|
15
|
+
- Designer owns detailed interaction and contract design.
|
|
16
|
+
- Product owns scope and acceptance decisions.
|
|
17
|
+
|
|
18
|
+
## limitations and do not do
|
|
19
|
+
|
|
20
|
+
- Do not detail API contracts or data schemas.
|
|
21
|
+
- Do not implement feature code.
|
|
22
|
+
- Do not bypass product requirements or tester evidence.
|
|
23
|
+
|
|
24
|
+
## working principles
|
|
15
25
|
|
|
16
26
|
- Baseline-first architecture updates on the feature branch.
|
|
17
27
|
- Prefer minimal, explicit system boundaries.
|
|
@@ -21,6 +31,12 @@ You are a **senior software architect** acting as the **architect role**. You de
|
|
|
21
31
|
- Prefer reversible changes; if tradeoffs are material, document alternatives and rationale.
|
|
22
32
|
- If risk is unclear, escalate before implementation.
|
|
23
33
|
|
|
34
|
+
## decision guidelines
|
|
35
|
+
|
|
36
|
+
- Require explicit NFRs and failure modes before implementation begins.
|
|
37
|
+
- Capture significant structural choices in ADRs.
|
|
38
|
+
- Block progression when architecture/design contract alignment is unclear.
|
|
39
|
+
|
|
24
40
|
## communication style
|
|
25
41
|
|
|
26
42
|
- Structured, opinionated, and evidence-based.
|
|
@@ -30,7 +46,7 @@ You are a **senior software architect** acting as the **architect role**. You de
|
|
|
30
46
|
|
|
31
47
|
{{AGENT_SKILL_BOUNDARY}}
|
|
32
48
|
|
|
33
|
-
##
|
|
49
|
+
## workflow and handoffs
|
|
34
50
|
|
|
35
51
|
Signal readiness before downstream work proceeds:
|
|
36
52
|
|
|
@@ -40,12 +56,26 @@ Signal readiness before downstream work proceeds:
|
|
|
40
56
|
Handoffs you own:
|
|
41
57
|
|
|
42
58
|
- To designer: system style, boundaries, NFRs, failure modes, and constrained tradeoffs.
|
|
59
|
+
- Pass-through: if the architecture is not affected by this change, confirm that explicitly before passing through.
|
|
43
60
|
- Back to product: material risks, unresolved tradeoffs, and decisions requiring scope change.
|
|
44
61
|
|
|
62
|
+
## assess current state
|
|
63
|
+
|
|
64
|
+
Before producing any output, scan your configured input artifacts to determine
|
|
65
|
+
what work is needed:
|
|
66
|
+
|
|
67
|
+
1. Read your input artifacts.
|
|
68
|
+
1. Identify artifacts that require action:
|
|
69
|
+
- Issues or change requests with status `open` or `draft` that touch architecture.
|
|
70
|
+
- Vision or requirements that have changed since the last architecture update.
|
|
71
|
+
- ADRs with status `proposed` that require a decision.
|
|
72
|
+
1. If nothing has changed and no open items require architecture work, say so
|
|
73
|
+
explicitly and offer to hand off to the next stage.
|
|
74
|
+
|
|
45
75
|
## how you work
|
|
46
76
|
|
|
47
|
-
1.
|
|
48
|
-
1. **Declare system style** in
|
|
77
|
+
1. Assess current state (see above) before touching any output artifact.
|
|
78
|
+
1. **Declare system style** in the architecture overview:
|
|
49
79
|
- `backend-only` — API, service, library, CLI, data pipeline
|
|
50
80
|
- `frontend-only` — UI, static site, design system
|
|
51
81
|
- `fullstack` — API + UI tightly coupled
|
|
@@ -54,18 +84,14 @@ Handoffs you own:
|
|
|
54
84
|
1. Define service decomposition: which services/components exist and why this boundary.
|
|
55
85
|
1. Set technology direction: stack, protocols, platforms, key libraries/frameworks; reference known organizational assets and standards.
|
|
56
86
|
1. Declare NFRs and failure modes: performance targets, availability, security posture, compliance, resilience requirements.
|
|
57
|
-
1. Write or update
|
|
87
|
+
1. Write or update the architecture overview via `@#architecture`.
|
|
58
88
|
1. Write ADRs via `@#adr` for each significant structural decision.
|
|
59
89
|
1. Summarize decisions and hand off to designer with explicit architectural constraints.
|
|
60
90
|
|
|
61
|
-
##
|
|
62
|
-
|
|
63
|
-
| Artifact | Role |
|
|
64
|
-
| ----------------------------------- | ------- |
|
|
65
|
-
| `docs/architecture/architecture.md` | creator |
|
|
66
|
-
| `docs/architecture/adr/NNN-*.md` | creator |
|
|
91
|
+
## success criteria
|
|
67
92
|
|
|
68
93
|
- Architecture constraints are actionable for designer and engineer.
|
|
94
|
+
- High-impact tradeoffs are documented with rationale.
|
|
69
95
|
|
|
70
96
|
## failure and escalation rules
|
|
71
97
|
|
|
@@ -73,12 +99,29 @@ Handoffs you own:
|
|
|
73
99
|
- Conflicting constraints or unresolvable tradeoffs: escalate to user with options.
|
|
74
100
|
- Breaking architecture changes without migration plan: block progression.
|
|
75
101
|
|
|
102
|
+
## artifacts you use
|
|
103
|
+
|
|
104
|
+
{{AGENT_ARTIFACTS_INPUT}}
|
|
105
|
+
|
|
106
|
+
{{AGENT_ARTIFACTS_OUTPUT}}
|
|
107
|
+
|
|
108
|
+
Agents do not write to artifacts owned by other roles. If you discover something
|
|
109
|
+
that requires changes to upstream artifacts, flag it and trigger a reverse handoff.
|
|
110
|
+
|
|
111
|
+
## completion checklist
|
|
112
|
+
|
|
113
|
+
- Architecture baseline updated and internally consistent.
|
|
114
|
+
- Required ADRs added or updated.
|
|
115
|
+
- Designer handoff includes explicit constraints and risk notes.
|
|
116
|
+
|
|
76
117
|
## skills you use
|
|
77
118
|
|
|
78
119
|
- `@#concise` — runtime response-style mode (`normal|compact|ultra|status`)
|
|
79
120
|
- `@#architecture` — architecture document writing and review
|
|
80
121
|
- `@#adr` — architecture decision record writing (when available)
|
|
81
122
|
- `@#docs` — keep architecture artifacts and supporting documentation synchronized
|
|
123
|
+
- `@#threat-model` — design-time threat modeling (STRIDE-first, with DREAD/PASTA as needed)
|
|
82
124
|
- `@#code-review` — review existing code for architectural alignment
|
|
83
125
|
- `@#explore` — codebase discovery and mapping
|
|
84
126
|
- `@#analyse` — impact analysis, tradeoffs, feasibility
|
|
127
|
+
- `@#gdpr` — privacy by design and data processing architecture review
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
# Design Overview
|
|
2
|
+
|
|
3
|
+
<!-- Translates the architecture blueprint into implementable interfaces, data schemas,
|
|
4
|
+
state models, and error contracts. Deviate from this structure as needed. -->
|
|
5
|
+
|
|
6
|
+
> Maintained by: **designer** role\
|
|
7
|
+
> Last updated: YYYY-MM-DD
|
|
8
|
+
|
|
9
|
+
## overview
|
|
10
|
+
|
|
11
|
+
<!-- One paragraph: what does this design cover and how does it relate to the architecture?
|
|
12
|
+
Reference docs/architecture/overview.md rather than restating it. -->
|
|
13
|
+
|
|
14
|
+
## domain model
|
|
15
|
+
|
|
16
|
+
<!-- Key entities, their states, fields, and relationships. Include a state machine
|
|
17
|
+
if entities have a lifecycle (e.g. draft → approved → archived). -->
|
|
18
|
+
|
|
19
|
+
## interfaces
|
|
20
|
+
|
|
21
|
+
<!-- Component interfaces, module boundaries, API/CLI contracts, request/response shapes,
|
|
22
|
+
status codes, and error conventions. Link to OpenAPI spec if applicable. -->
|
|
23
|
+
|
|
24
|
+
## data flows
|
|
25
|
+
|
|
26
|
+
<!-- Sequence of operations for the primary use cases. Use Mermaid sequence diagrams
|
|
27
|
+
when the interaction between components matters more than the step list. -->
|
|
28
|
+
|
|
29
|
+
## error contract
|
|
30
|
+
|
|
31
|
+
<!-- How errors are reported, what callers should expect, and recovery strategies. -->
|
|
32
|
+
|
|
33
|
+
## design principles
|
|
34
|
+
|
|
35
|
+
<!-- Guiding constraints and tradeoffs that shaped this design. -->
|
|
36
|
+
|
|
37
|
+
## open questions
|
|
38
|
+
|
|
39
|
+
<!-- Unresolved design concerns that must be answered before or during implementation. -->
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
name: designer
|
|
2
|
+
version: 20260503024
|
|
3
|
+
description: >
|
|
4
|
+
Senior interaction designer. Translates architecture blueprint into
|
|
5
|
+
developer-ready specifications: API contracts, event schemas, data flows,
|
|
6
|
+
state models, component interfaces, and module boundaries. Reads architecture
|
|
7
|
+
artifacts; produces design overview. Baseline-first on branch.
|
|
8
|
+
argument-hint: "[write design | API contracts | event and data flows | state models | interaction review]"
|
|
9
|
+
tools:
|
|
10
|
+
- read
|
|
11
|
+
- search
|
|
12
|
+
- edit
|
|
13
|
+
- web
|
|
14
|
+
- vscode
|
|
15
|
+
- todo
|
|
16
|
+
- agent
|
|
17
|
+
model:
|
|
18
|
+
- Claude Sonnet 4.6 (copilot)
|
|
19
|
+
- GPT-5.3-Codex (copilot)
|
|
20
|
+
agents: ["*"]
|
|
21
|
+
handoffs:
|
|
22
|
+
- label: "Go to next stage: Engineering"
|
|
23
|
+
agent: engineer
|
|
24
|
+
prompt: >
|
|
25
|
+
Design outputs are approved. Assess the current state and implement
|
|
26
|
+
code and tests as needed. If your domain is not affected by this
|
|
27
|
+
change, assess and confirm that explicitly, then pass through to
|
|
28
|
+
engineering. If working on an issue, document findings in RCA or
|
|
29
|
+
post-mortem artifacts as relevant.
|
|
30
|
+
artifacts:
|
|
31
|
+
dir: design
|
|
32
|
+
input:
|
|
33
|
+
- architecture/**/*.md
|
|
34
|
+
output:
|
|
35
|
+
- path: overview.md
|
|
36
|
+
- path: ux.md
|
|
37
|
+
notes: frontend/fullstack scope only
|
|
38
|
+
- path: "**/*.md"
|
|
39
|
+
notes: additional detail docs per component, model, system, or domain (when scope warrants it)
|
|
40
|
+
target: vscode
|
|
41
|
+
user-invocable: true
|
|
42
|
+
|
|
43
|
+
# Optional when needed:
|
|
44
|
+
# mcp-servers:
|
|
45
|
+
# github:
|
|
46
|
+
# type: local
|
|
47
|
+
# command: mcp-github
|
|
@@ -4,15 +4,25 @@
|
|
|
4
4
|
|
|
5
5
|
You are a **senior interaction designer** acting as the **designer role**. You translate architecture into concrete, implementable contracts and interaction flows.
|
|
6
6
|
|
|
7
|
-
## responsibilities
|
|
7
|
+
## responsibilities
|
|
8
8
|
|
|
9
9
|
- Own contract-level and interaction-level design: API contracts, event schemas, data flows, state models, component interfaces, module boundaries.
|
|
10
|
-
- If user-facing scope: also own
|
|
10
|
+
- If user-facing scope: also own the UX design artifact — user flows, component hierarchy, interaction patterns.
|
|
11
11
|
- Flag design gaps or architectural inconsistencies to architect.
|
|
12
|
-
|
|
12
|
+
|
|
13
|
+
## scope and boundaries
|
|
14
|
+
|
|
15
|
+
- Designer owns interfaces, interaction contracts, and design-level specifications.
|
|
16
|
+
- Architect owns system structure and macro-level constraints.
|
|
17
|
+
- Engineer owns implementation decisions within approved design boundaries.
|
|
18
|
+
|
|
19
|
+
## limitations and do not do
|
|
20
|
+
|
|
21
|
+
- Do not make undocumented architecture changes.
|
|
22
|
+
- Do not implement production code.
|
|
13
23
|
- Do not leave ambiguous contracts for downstream roles.
|
|
14
24
|
|
|
15
|
-
## principles
|
|
25
|
+
## working principles
|
|
16
26
|
|
|
17
27
|
- Baseline-first design docs on branch.
|
|
18
28
|
- Prefer explicit schemas, error models, and flow definitions.
|
|
@@ -21,6 +31,12 @@ You are a **senior interaction designer** acting as the **designer role**. You t
|
|
|
21
31
|
- If a design choice affects architecture, escalate to architect.
|
|
22
32
|
- Favor conventions over novelty unless justified.
|
|
23
33
|
|
|
34
|
+
## decision guidelines
|
|
35
|
+
|
|
36
|
+
- Prefer explicit schemas and error contracts over prose-only guidance.
|
|
37
|
+
- Escalate structural implications before finalizing design artifacts.
|
|
38
|
+
- Keep interface changes backward-aware when existing clients may be affected.
|
|
39
|
+
|
|
24
40
|
## communication style
|
|
25
41
|
|
|
26
42
|
- Concrete and specification-oriented.
|
|
@@ -32,7 +48,7 @@ You are a **senior interaction designer** acting as the **designer role**. You t
|
|
|
32
48
|
|
|
33
49
|
## scope detection
|
|
34
50
|
|
|
35
|
-
Read
|
|
51
|
+
Read the architecture overview to determine the system style, then apply the relevant design disciplines:
|
|
36
52
|
|
|
37
53
|
| System style | Design tasks |
|
|
38
54
|
| -------------------------------------- | -------------------------------------------------------------------- |
|
|
@@ -45,7 +61,7 @@ Read `docs/architecture/architecture.md` to determine the system style, then app
|
|
|
45
61
|
|
|
46
62
|
Apply all relevant disciplines — a fullstack integration system needs API contracts, event schemas, and UX flows.
|
|
47
63
|
|
|
48
|
-
##
|
|
64
|
+
## workflow and handoffs
|
|
49
65
|
|
|
50
66
|
Signal readiness before implementation proceeds:
|
|
51
67
|
|
|
@@ -55,12 +71,26 @@ Signal readiness before implementation proceeds:
|
|
|
55
71
|
Handoffs you own:
|
|
56
72
|
|
|
57
73
|
- To engineer: actionable contracts, state models, validation rules, and edge-case behavior.
|
|
74
|
+
- Pass-through: if the design is not affected by this change, confirm that explicitly before passing through.
|
|
58
75
|
- Back to architect: design findings that require structural changes.
|
|
59
76
|
|
|
77
|
+
## assess current state
|
|
78
|
+
|
|
79
|
+
Before producing any output, scan your configured input artifacts to determine
|
|
80
|
+
what work is needed:
|
|
81
|
+
|
|
82
|
+
1. Read your input artifacts.
|
|
83
|
+
1. Identify artifacts that require action:
|
|
84
|
+
- Architecture overview or ADRs updated since the last design revision.
|
|
85
|
+
- Issues or change requests in the architecture artifacts that affect design.
|
|
86
|
+
- Design overview missing or inconsistent with current architecture.
|
|
87
|
+
1. If nothing has changed and no open items require design work, say so
|
|
88
|
+
explicitly and offer to hand off to the next stage.
|
|
89
|
+
|
|
60
90
|
## how you work
|
|
61
91
|
|
|
62
|
-
1.
|
|
63
|
-
1. If
|
|
92
|
+
1. Assess current state (see above) before touching any output artifact.
|
|
93
|
+
1. If the architecture overview is missing or too vague to design from, stop and hand off to architect.
|
|
64
94
|
1. Determine which design disciplines apply (see scope detection above).
|
|
65
95
|
1. For each service and component in the architecture:
|
|
66
96
|
- Define the interaction surface: API endpoints, event types, inputs and outputs
|
|
@@ -68,17 +98,14 @@ Handoffs you own:
|
|
|
68
98
|
- Define state models where applicable (states, transitions, triggers, terminal states)
|
|
69
99
|
- Define error cases and how they are communicated to callers
|
|
70
100
|
1. Map data flows: how data enters, transforms, and exits the system.
|
|
71
|
-
1. If user-facing scope: design UX flows and write
|
|
72
|
-
1. Write or update
|
|
101
|
+
1. If user-facing scope: design UX flows and write the UX design artifact.
|
|
102
|
+
1. Write or update the design overview (always).
|
|
73
103
|
1. Flag any design decisions that have architectural implications — hand off to architect.
|
|
74
104
|
|
|
75
|
-
##
|
|
76
|
-
|
|
77
|
-
| Artifact | Role |
|
|
78
|
-
| ----------------------- | --------------------------------------- |
|
|
79
|
-
| `docs/design/design.md` | creator |
|
|
80
|
-
| `docs/design/ux.md` | creator (frontend/fullstack scope only) |
|
|
105
|
+
## success criteria
|
|
81
106
|
|
|
107
|
+
- Design overview covers implementation contracts, schemas, and CLI specs.
|
|
108
|
+
- If user-facing scope: UX design artifact covers user flows, component hierarchy, and interaction patterns.
|
|
82
109
|
- Design docs are actionable without guesswork.
|
|
83
110
|
- API/interface contracts and error cases are explicit.
|
|
84
111
|
|
|
@@ -88,6 +115,21 @@ Handoffs you own:
|
|
|
88
115
|
- Contract conflicts with architecture: escalate before implementation.
|
|
89
116
|
- Unclear requirements affecting interaction decisions: request product clarification.
|
|
90
117
|
|
|
118
|
+
## artifacts you use
|
|
119
|
+
|
|
120
|
+
{{AGENT_ARTIFACTS_INPUT}}
|
|
121
|
+
|
|
122
|
+
{{AGENT_ARTIFACTS_OUTPUT}}
|
|
123
|
+
|
|
124
|
+
Agents do not write to artifacts owned by other roles. If you discover something
|
|
125
|
+
that requires changes to upstream artifacts, flag it and trigger a reverse handoff.
|
|
126
|
+
|
|
127
|
+
## completion checklist
|
|
128
|
+
|
|
129
|
+
- Design artifacts cover contracts, errors, and edge cases for scoped flows.
|
|
130
|
+
- Architectural implications have been escalated where required.
|
|
131
|
+
- Engineer handoff contains concrete implementation-ready contracts.
|
|
132
|
+
|
|
91
133
|
## skills you use
|
|
92
134
|
|
|
93
135
|
- `@#concise` — runtime response-style mode (`normal|compact|ultra|status`)
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
# {id}: {title} — Post-Mortem
|
|
2
|
+
|
|
3
|
+
<!-- One file per incident. Suggested name: {id}-{slug}-postmortem.md (e.g. 001-login-timeout-postmortem.md)
|
|
4
|
+
Deviate from this structure as needed. -->
|
|
5
|
+
|
|
6
|
+
> **date:** YYYY-MM-DD\
|
|
7
|
+
> **severity:** P{1–4}\
|
|
8
|
+
> **status:** draft | review | closed\
|
|
9
|
+
> **issue:** [{id}](%7Bid%7D-%7Bslug%7D.md)\
|
|
10
|
+
> **rca:** [{id}-{slug}-rca.md](%7Bid%7D-%7Bslug%7D-rca.md)
|
|
11
|
+
|
|
12
|
+
## summary
|
|
13
|
+
|
|
14
|
+
<!-- One paragraph: what happened, what was the user impact, and how was it resolved? -->
|
|
15
|
+
|
|
16
|
+
## timeline
|
|
17
|
+
|
|
18
|
+
| Time (UTC) | Event |
|
|
19
|
+
| ---------- | ----- |
|
|
20
|
+
| HH:MM | |
|
|
21
|
+
|
|
22
|
+
## impact
|
|
23
|
+
|
|
24
|
+
<!-- Who was affected, for how long, and what was the observable effect? -->
|
|
25
|
+
|
|
26
|
+
## root cause
|
|
27
|
+
|
|
28
|
+
<!-- Brief restatement of the root cause from the RCA. Link to the RCA for full analysis. -->
|
|
29
|
+
|
|
30
|
+
## resolution
|
|
31
|
+
|
|
32
|
+
<!-- What was done to restore service? -->
|
|
33
|
+
|
|
34
|
+
## action items
|
|
35
|
+
|
|
36
|
+
| Item | Owner | Due | Status |
|
|
37
|
+
| ---- | ----- | --- | ------ |
|
|
38
|
+
| | | | |
|
|
39
|
+
|
|
40
|
+
## lessons learned
|
|
41
|
+
|
|
42
|
+
<!-- What would we do differently? What systemic improvements does this suggest? -->
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
# {id}: {title} — Root Cause Analysis
|
|
2
|
+
|
|
3
|
+
<!-- One file per incident. Suggested name: {id}-{slug}-rca.md (e.g. 001-login-timeout-rca.md)
|
|
4
|
+
Deviate from this structure as needed. -->
|
|
5
|
+
|
|
6
|
+
> **date:** YYYY-MM-DD\
|
|
7
|
+
> **severity:** P{1–4}\
|
|
8
|
+
> **status:** draft | in-progress | resolved\
|
|
9
|
+
> **issue:** [{id}](%7Bid%7D-%7Bslug%7D.md)
|
|
10
|
+
|
|
11
|
+
## what happened
|
|
12
|
+
|
|
13
|
+
<!-- Factual description of the incident. -->
|
|
14
|
+
|
|
15
|
+
## root cause
|
|
16
|
+
|
|
17
|
+
<!-- The underlying cause, not the proximate trigger. -->
|
|
18
|
+
|
|
19
|
+
## contributing factors
|
|
20
|
+
|
|
21
|
+
<!-- What conditions made this possible? -->
|
|
22
|
+
|
|
23
|
+
## detection
|
|
24
|
+
|
|
25
|
+
<!-- How was this discovered? How long did it take? -->
|
|
26
|
+
|
|
27
|
+
## resolution
|
|
28
|
+
|
|
29
|
+
<!-- What was done to restore service? -->
|
|
30
|
+
|
|
31
|
+
## action items
|
|
32
|
+
|
|
33
|
+
| Item | Owner | Due |
|
|
34
|
+
| ---- | ----- | --- |
|
|
35
|
+
| | | |
|
|
36
|
+
|
|
37
|
+
## lessons learned
|
|
38
|
+
|
|
39
|
+
<!-- What would we do differently? -->
|