@geraldmaron/construct 1.2.3 → 1.3.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +7 -10
- package/bin/construct +235 -209
- package/bin/construct-postinstall.mjs +0 -21
- package/commands/work/optimize-prompts.md +1 -1
- package/examples/distribution/sources/adr.md +2 -2
- package/examples/seed-observations/decisions.md +1 -1
- package/lib/artifact-loop-core.mjs +412 -0
- package/lib/artifact-manifest.mjs +6 -0
- package/lib/artifact-release-gate.mjs +115 -49
- package/lib/audit-rules.mjs +2 -4
- package/lib/audit-skills.mjs +32 -20
- package/lib/audit-specialists.mjs +44 -26
- package/lib/auto-docs.mjs +6 -5
- package/lib/brand-prose.mjs +3 -3
- package/lib/brand-tokens.mjs +2 -2
- package/lib/certification/artifact-fixtures.mjs +4 -1
- package/lib/certification/demo-parity.mjs +6 -32
- package/lib/certification/real-llm-scenarios.mjs +58 -13
- package/lib/certification/role-cards.mjs +7 -6
- package/lib/certification/role-overlays.mjs +4 -4
- package/lib/certification/runner.mjs +9 -2
- package/lib/certification/skill-inventory.mjs +34 -22
- package/lib/certification/skill-scenarios.mjs +21 -8
- package/lib/certification/specialist-contracts.mjs +4 -3
- package/lib/certification/specialist-scenarios.mjs +7 -6
- package/lib/certification/status.mjs +5 -4
- package/lib/cli-commands.mjs +55 -54
- package/lib/comment-lint.mjs +1 -5
- package/lib/completions.mjs +20 -2
- package/lib/config/legacy-config-migration.mjs +90 -24
- package/lib/config/schema.mjs +5 -5
- package/lib/config/source-targets.mjs +80 -0
- package/lib/contracts/validate.mjs +119 -51
- package/lib/decisions/golden.mjs +3 -2
- package/lib/decisions/registry.mjs +11 -6
- package/lib/demo-project.mjs +188 -0
- package/lib/demo-recording.mjs +9 -34
- package/lib/demo-script.mjs +2 -2
- package/lib/demo-surface.mjs +13 -131
- package/lib/demo-tour-renderer.mjs +92 -0
- package/lib/demo.mjs +69 -54
- package/lib/diagram-export.mjs +63 -14
- package/lib/doctor/cli.mjs +12 -2
- package/lib/doctor/source-checkout.mjs +3 -4
- package/lib/doctor/watchers/consistency.mjs +148 -43
- package/lib/doctor/watchers/credential-parity.mjs +97 -0
- package/lib/doctor/watchers/mcp-protocol.mjs +1 -1
- package/lib/doctor/watchers/service-health.mjs +4 -32
- package/lib/document-export.mjs +73 -9
- package/lib/document-extract.mjs +10 -198
- package/lib/embed/artifact.mjs +2 -3
- package/lib/embed/cli.mjs +1 -1
- package/lib/embed/config.mjs +1 -2
- package/lib/embed/customer-profiles.mjs +1 -1
- package/lib/embed/daemon.mjs +5 -6
- package/lib/embed/demand-fetch.mjs +114 -2
- package/lib/embed/docs-lifecycle.mjs +9 -5
- package/lib/embed/intake-metrics.mjs +2 -2
- package/lib/embed/notifications.mjs +2 -3
- package/lib/embed/recommendation-store.mjs +25 -22
- package/lib/embed/role-framing.mjs +4 -9
- package/lib/embedded-contract/capability.mjs +4 -2
- package/lib/embedded-contract/contract-version.mjs +1 -1
- package/lib/env-config.mjs +2 -2
- package/lib/flavors/loader.mjs +21 -19
- package/lib/graph/build-from-registry.mjs +31 -7
- package/lib/graph/staleness.mjs +1 -1
- package/lib/headhunt.mjs +82 -35
- package/lib/hooks/agent-tracker.mjs +2 -2
- package/lib/hooks/config-protection.mjs +1 -1
- package/lib/hooks/registry-sync.mjs +3 -3
- package/lib/host-capabilities.mjs +5 -5
- package/lib/improvement/controller.mjs +2 -2
- package/lib/init-unified.mjs +19 -21
- package/lib/intake/classify.mjs +26 -0
- package/lib/intake/daemon.mjs +2 -3
- package/lib/intake/prepare.mjs +10 -3
- package/lib/intake/session-prelude.mjs +1 -1
- package/lib/intake/tables/creative.mjs +9 -9
- package/lib/intake/tables/operations.mjs +4 -4
- package/lib/intake/tables/research.mjs +2 -2
- package/lib/integrations/intake-integrations.mjs +9 -10
- package/lib/knowledge/research-store.mjs +2 -2
- package/lib/mcp/server.mjs +104 -61
- package/lib/mcp/tool-budget.mjs +1 -46
- package/lib/mcp/tool-recovery.mjs +44 -0
- package/lib/mcp/tools/artifact-author.mjs +36 -0
- package/lib/mcp/tools/find-tool.mjs +86 -0
- package/lib/mcp/tools/orchestration-run.mjs +107 -69
- package/lib/mcp/tools/project.mjs +4 -3
- package/lib/mcp/tools/{profile.mjs → scope.mjs} +54 -52
- package/lib/mcp/tools/skills.mjs +39 -22
- package/lib/mcp/tools/telemetry.mjs +2 -1
- package/lib/mcp/tools/workflow.mjs +1 -1
- package/lib/mcp-platform-config.mjs +7 -5
- package/lib/migrations/index.mjs +4 -2
- package/lib/migrations/v2-unified-registry.mjs +35 -0
- package/lib/model-router.mjs +203 -36
- package/lib/models/catalog.mjs +25 -9
- package/lib/models/execution-capability-profile.mjs +3 -3
- package/lib/models/execution-policy.mjs +7 -6
- package/lib/models/provider-poll.mjs +18 -4
- package/lib/opencode-config.mjs +56 -1
- package/lib/opencode-runtime-plugin.mjs +13 -10
- package/lib/oracle/artifact-gate.mjs +14 -4
- package/lib/oracle/cli.mjs +2 -0
- package/lib/oracle/dispatch.mjs +18 -1
- package/lib/oracle/execute.mjs +39 -7
- package/lib/oracle/index.mjs +1 -1
- package/lib/oracle/org-graph.mjs +10 -5
- package/lib/oracle/policy.mjs +6 -0
- package/lib/oracle/read-model.mjs +103 -6
- package/lib/oracle/reconcile.mjs +31 -4
- package/lib/oracle/remediation-dispatch.mjs +53 -0
- package/lib/oracle/routing.mjs +5 -0
- package/lib/oracle/synthesize.mjs +80 -3
- package/lib/orchestration/routing-tables.mjs +44 -10
- package/lib/orchestration/runtime.mjs +2 -0
- package/lib/orchestration/worker.mjs +1 -1
- package/lib/orchestration-policy.mjs +351 -62
- package/lib/overrides/resolver.mjs +1 -12
- package/lib/parity.mjs +37 -11
- package/lib/policy/engine.mjs +80 -15
- package/lib/prompt-composer.js +51 -15
- package/lib/prompt-metadata.mjs +3 -2
- package/lib/providers/connection-probe.mjs +58 -0
- package/lib/providers/copilot-auth.mjs +1 -1
- package/lib/providers/credential-bootstrap.mjs +1 -1
- package/lib/providers/op-run.mjs +3 -4
- package/lib/providers/secret-resolver.mjs +31 -0
- package/lib/publish-tooling.mjs +3 -11
- package/lib/publish.mjs +12 -29
- package/lib/reconcile/mcp-entry-reconcile.mjs +14 -9
- package/lib/reflect.mjs +2 -2
- package/lib/registry/agent-manifest.mjs +190 -0
- package/lib/registry/assemble.mjs +133 -0
- package/lib/registry/catalog.mjs +171 -0
- package/lib/registry/cli.mjs +590 -6
- package/lib/registry/consolidation.mjs +5 -4
- package/lib/registry/docs-sync.mjs +67 -0
- package/lib/registry/loader.mjs +147 -0
- package/lib/registry/org-io.mjs +76 -0
- package/lib/registry/retired-paths.mjs +71 -0
- package/lib/registry/surface-map.mjs +5 -7
- package/lib/registry/validator.mjs +438 -0
- package/lib/research-execution-policy.mjs +173 -0
- package/lib/roles/catalog.mjs +4 -9
- package/lib/roles/fence.mjs +107 -1
- package/lib/roles/flavor-bindings.mjs +68 -0
- package/lib/roles/gateway.mjs +140 -29
- package/lib/roles/manifest.mjs +22 -13
- package/lib/roles/router.mjs +1 -1
- package/lib/scopes/enrich.mjs +67 -0
- package/lib/scopes/hooks.mjs +12 -0
- package/lib/{profiles → scopes}/lifecycle.mjs +70 -70
- package/lib/scopes/loader.mjs +104 -0
- package/lib/scopes/rebrand.mjs +32 -0
- package/lib/scopes/research-profile.mjs +16 -0
- package/lib/scopes/teams.mjs +98 -0
- package/lib/service-manager.mjs +1 -117
- package/lib/setup-prompts.mjs +1 -1
- package/lib/setup.mjs +6 -26
- package/lib/skills/composition-graph.mjs +98 -0
- package/lib/skills/router.mjs +80 -0
- package/lib/specialist-contracts.mjs +17 -18
- package/lib/specialists/postconditions.mjs +2 -2
- package/lib/specialists/prompt-schema.mjs +6 -5
- package/lib/specialists/roster.mjs +7 -12
- package/lib/specialists/schema.mjs +9 -6
- package/lib/status.mjs +25 -90
- package/lib/storage/file-lock.mjs +6 -3
- package/lib/telemetry/skill-calls.mjs +1 -1
- package/lib/templates/doc-presentation.mjs +63 -0
- package/lib/templates/visual-requirements.mjs +35 -2
- package/lib/term-format.mjs +107 -2
- package/lib/test-env-setup.mjs +21 -0
- package/lib/ui/components.mjs +42 -0
- package/lib/ui/glyphs.mjs +58 -0
- package/lib/ui/links.mjs +115 -0
- package/lib/ui/theme.mjs +108 -0
- package/lib/uninstall/uninstall.mjs +2 -1
- package/lib/validator.mjs +45 -8
- package/lib/validators/skill-effectiveness.mjs +174 -0
- package/lib/validators/skills.mjs +1 -1
- package/package.json +12 -8
- package/personas/construct.md +12 -3
- package/platforms/claude/CLAUDE.md +1 -1
- package/rules/common/beads-hygiene.md +52 -0
- package/rules/common/neurodivergent-output.md +4 -7
- package/rules/common/research.md +2 -0
- package/scripts/sync-specialists.mjs +269 -51
- package/skills/ai/prompt-optimizer.md +3 -3
- package/skills/brand/output-vibe.md +48 -0
- package/skills/docs/adr-workflow.md +3 -0
- package/skills/docs/backlog-proposal-workflow.md +3 -0
- package/skills/docs/codebase-research-workflow.md +5 -2
- package/skills/docs/customer-profile-workflow.md +3 -0
- package/skills/docs/document-ingest-workflow.md +3 -0
- package/skills/docs/evidence-ingest-workflow.md +4 -1
- package/skills/docs/init-project.md +1 -1
- package/skills/docs/prd-workflow.md +1 -1
- package/skills/docs/prfaq-workflow.md +3 -0
- package/skills/docs/product-intelligence-workflow.md +4 -1
- package/skills/docs/product-signal-workflow.md +3 -0
- package/skills/docs/research-workflow.md +13 -6
- package/skills/docs/runbook-workflow.md +3 -0
- package/skills/docs/strategy-workflow.md +3 -0
- package/skills/docs/user-research-workflow.md +6 -3
- package/skills/operating/orchestration-reference.md +1 -1
- package/skills/roles/{engineer.ai.md → ai-engineer.md} +2 -2
- package/skills/roles/architect.ai-systems.md +1 -1
- package/skills/roles/architect.data.md +1 -1
- package/skills/roles/architect.enterprise.md +1 -1
- package/skills/roles/architect.integration.md +1 -1
- package/skills/roles/architect.md +1 -1
- package/skills/roles/architect.platform.md +1 -1
- package/skills/roles/{product-manager.business-strategy.md → business-strategist.md} +3 -3
- package/skills/roles/data-analyst.experiment.md +1 -1
- package/skills/roles/data-analyst.md +1 -1
- package/skills/roles/data-analyst.product-intelligence.md +1 -1
- package/skills/roles/data-analyst.product.md +1 -1
- package/skills/roles/data-analyst.telemetry.md +1 -1
- package/skills/roles/{engineer.data.md → data-engineer.md} +2 -2
- package/skills/roles/data-engineer.pipeline.md +2 -2
- package/skills/roles/data-engineer.vector-retrieval.md +2 -2
- package/skills/roles/data-engineer.warehouse.md +2 -2
- package/skills/roles/debugger.md +1 -1
- package/skills/roles/designer.accessibility.md +1 -1
- package/skills/roles/designer.md +1 -1
- package/skills/roles/{reviewer.devil-advocate.md → devil-advocate.md} +2 -2
- package/skills/roles/{operator.docs.md → docs-keeper.md} +3 -3
- package/skills/roles/engineer.md +3 -7
- package/skills/roles/{reviewer.evaluator.md → evaluator.md} +2 -2
- package/skills/roles/{researcher.explorer.md → explorer.md} +2 -2
- package/skills/roles/{operator.md → operations.md} +2 -5
- package/skills/roles/orchestrator.md +1 -1
- package/skills/roles/{engineer.platform.md → platform-engineer.md} +2 -2
- package/skills/roles/product-manager.ai-product.md +1 -1
- package/skills/roles/product-manager.enterprise.md +1 -1
- package/skills/roles/product-manager.growth.md +1 -2
- package/skills/roles/product-manager.md +1 -2
- package/skills/roles/product-manager.platform.md +1 -1
- package/skills/roles/product-manager.product.md +1 -1
- package/skills/roles/qa.ai-eval.md +1 -1
- package/skills/roles/qa.api-contract.md +1 -1
- package/skills/roles/qa.data-pipeline.md +1 -1
- package/skills/roles/qa.md +1 -1
- package/skills/roles/qa.web-ui.md +1 -1
- package/skills/roles/{operator.release.md → release-manager.md} +3 -3
- package/skills/roles/researcher.md +1 -1
- package/skills/roles/reviewer.md +1 -1
- package/skills/roles/security.ai.md +1 -1
- package/skills/roles/security.appsec.md +1 -1
- package/skills/roles/security.cloud.md +1 -1
- package/skills/roles/security.legal-compliance.md +1 -1
- package/skills/roles/security.md +1 -1
- package/skills/roles/security.privacy.md +1 -1
- package/skills/roles/security.supply-chain.md +1 -1
- package/skills/roles/{operator.sre.md → sre.md} +3 -3
- package/skills/roles/{qa.test-automation.md → test-automation.md} +2 -2
- package/skills/roles/{reviewer.trace.md → trace-reviewer.md} +2 -2
- package/skills/roles/{researcher.ux.md → ux-researcher.md} +2 -2
- package/skills/routing.json +18 -0
- package/skills/routing.md +1 -1
- package/specialists/artifact-manifest.json +2 -1
- package/specialists/audit-enrichments.json +14 -14
- package/specialists/org/contracts/accessibility-to-qa.json +37 -0
- package/specialists/org/contracts/any-to-business-strategist.json +57 -0
- package/specialists/org/contracts/any-to-debugger.json +38 -0
- package/specialists/org/contracts/any-to-designer.json +33 -0
- package/specialists/org/contracts/any-to-docs-keeper.json +34 -0
- package/specialists/org/contracts/any-to-explorer.json +39 -0
- package/specialists/org/contracts/any-to-sre-incident.json +33 -0
- package/specialists/org/contracts/any-to-trace-reviewer.json +32 -0
- package/specialists/org/contracts/architect-to-ai-engineer.json +32 -0
- package/specialists/org/contracts/architect-to-data-engineer.json +52 -0
- package/specialists/org/contracts/architect-to-devil-advocate.json +38 -0
- package/specialists/org/contracts/architect-to-engineer.json +34 -0
- package/specialists/org/contracts/architect-to-evaluator.json +59 -0
- package/specialists/org/contracts/architect-to-legal-compliance.json +55 -0
- package/specialists/org/contracts/architect-to-operations.json +45 -0
- package/specialists/org/contracts/architect-to-platform-engineer.json +42 -0
- package/specialists/org/contracts/business-strategist-to-product-manager.json +39 -0
- package/specialists/org/contracts/construct-to-orchestrator.json +36 -0
- package/specialists/org/contracts/construct-to-rd-lead.json +53 -0
- package/specialists/org/contracts/data-analyst-to-product-manager.json +43 -0
- package/specialists/org/contracts/data-engineer-to-platform-engineer.json +36 -0
- package/specialists/org/contracts/designer-to-accessibility.json +36 -0
- package/specialists/org/contracts/engineer-to-qa.json +34 -0
- package/specialists/org/contracts/engineer-to-reviewer.json +52 -0
- package/specialists/org/contracts/explorer-to-engineer.json +38 -0
- package/specialists/org/contracts/legal-compliance-to-release-manager.json +43 -0
- package/specialists/org/contracts/platform-engineer-to-engineer.json +31 -0
- package/specialists/org/contracts/product-manager-to-architect.json +71 -0
- package/specialists/org/contracts/product-manager-to-data-analyst.json +49 -0
- package/specialists/org/contracts/product-manager-to-ux-researcher.json +51 -0
- package/specialists/org/contracts/qa-to-release-manager.json +42 -0
- package/specialists/org/contracts/qa-to-test-automation.json +42 -0
- package/specialists/org/contracts/rd-lead-to-architect.json +38 -0
- package/specialists/org/contracts/researcher-to-architect.json +40 -0
- package/specialists/org/contracts/researcher-to-product-manager.json +57 -0
- package/specialists/org/contracts/reviewer-to-security.json +41 -0
- package/specialists/org/contracts/sre-to-release-manager.json +36 -0
- package/specialists/org/contracts/test-automation-to-engineer.json +34 -0
- package/specialists/org/contracts/trace-reviewer-to-sre.json +41 -0
- package/specialists/org/contracts/user-to-construct.json +30 -0
- package/specialists/org/groups/engineering-group.json +43 -0
- package/specialists/org/groups/governance-group.json +38 -0
- package/specialists/org/groups/operations-group.json +41 -0
- package/specialists/org/groups/product-group.json +46 -0
- package/specialists/org/groups/quality-group.json +42 -0
- package/specialists/org/groups/strategy-group.json +41 -0
- package/specialists/org/policies/action-approval.json +13 -0
- package/specialists/org/policies/agents-routing.json +13 -0
- package/specialists/org/policies/architecture.json +20 -0
- package/specialists/org/policies/bash-safety.json +13 -0
- package/specialists/org/policies/beads-hygiene.json +13 -0
- package/specialists/org/policies/bootstrap-state.json +13 -0
- package/specialists/org/policies/code-review.json +13 -0
- package/specialists/org/policies/coding-style.json +13 -0
- package/specialists/org/policies/comments.json +13 -0
- package/specialists/org/policies/commit-approval.json +13 -0
- package/specialists/org/policies/contract-preconditions.json +13 -0
- package/specialists/org/policies/deployment.json +20 -0
- package/specialists/org/policies/description.json +14 -0
- package/specialists/org/policies/design-approval.json +19 -0
- package/specialists/org/policies/doc-ownership.json +13 -0
- package/specialists/org/policies/file-path-fence.json +13 -0
- package/specialists/org/policies/framing.json +13 -0
- package/specialists/org/policies/git-workflow.json +13 -0
- package/specialists/org/policies/incident-response.json +15 -0
- package/specialists/org/policies/intake-triage.json +15 -0
- package/specialists/org/policies/neurodivergent-output.json +13 -0
- package/specialists/org/policies/no-fabrication.json +13 -0
- package/specialists/org/policies/patterns.json +13 -0
- package/specialists/org/policies/quality-gate-approval.json +17 -0
- package/specialists/org/policies/release-gates.json +13 -0
- package/specialists/org/policies/research-evidence.json +13 -0
- package/specialists/org/policies/review-before-change.json +13 -0
- package/specialists/org/policies/rollback.json +15 -0
- package/specialists/org/policies/scope-change.json +20 -0
- package/specialists/org/policies/secret-scan.json +13 -0
- package/specialists/org/policies/security-approval.json +17 -0
- package/specialists/org/policies/security.json +13 -0
- package/specialists/org/policies/session-efficiency.json +13 -0
- package/specialists/org/policies/skill-routing.json +13 -0
- package/specialists/org/policies/strategic-prioritization.json +17 -0
- package/specialists/org/policies/testing.json +13 -0
- package/specialists/org/policies/tool-invisibility.json +14 -0
- package/specialists/org/scopes/creative.json +54 -0
- package/specialists/org/scopes/operations.json +51 -0
- package/specialists/org/scopes/research.json +60 -0
- package/specialists/org/scopes/rnd.json +81 -0
- package/specialists/org/specialists/cx-accessibility.json +69 -0
- package/specialists/org/specialists/cx-ai-engineer.json +75 -0
- package/specialists/org/specialists/cx-architect.json +89 -0
- package/specialists/org/specialists/cx-business-strategist.json +72 -0
- package/specialists/org/specialists/cx-data-analyst.json +68 -0
- package/specialists/org/specialists/cx-data-engineer.json +71 -0
- package/specialists/org/specialists/cx-debugger.json +75 -0
- package/specialists/org/specialists/cx-designer.json +85 -0
- package/specialists/org/specialists/cx-devil-advocate.json +71 -0
- package/specialists/org/specialists/cx-docs-keeper.json +82 -0
- package/specialists/org/specialists/cx-engineer.json +106 -0
- package/specialists/org/specialists/cx-evaluator.json +69 -0
- package/specialists/org/specialists/cx-explorer.json +69 -0
- package/specialists/org/specialists/cx-legal-compliance.json +74 -0
- package/specialists/org/specialists/cx-operations.json +72 -0
- package/specialists/org/specialists/cx-oracle.json +46 -0
- package/specialists/org/specialists/cx-orchestrator.json +81 -0
- package/specialists/org/specialists/cx-platform-engineer.json +80 -0
- package/specialists/org/specialists/cx-product-manager.json +102 -0
- package/specialists/org/specialists/cx-qa.json +79 -0
- package/specialists/org/specialists/cx-rd-lead.json +73 -0
- package/specialists/org/specialists/cx-release-manager.json +77 -0
- package/specialists/org/specialists/cx-researcher.json +82 -0
- package/specialists/org/specialists/cx-reviewer.json +71 -0
- package/specialists/org/specialists/cx-security.json +91 -0
- package/specialists/org/specialists/cx-sre.json +94 -0
- package/specialists/org/specialists/cx-test-automation.json +69 -0
- package/specialists/org/specialists/cx-trace-reviewer.json +69 -0
- package/specialists/org/specialists/cx-ux-researcher.json +68 -0
- package/specialists/org/teams/accessibility-team.json +39 -0
- package/specialists/org/teams/design-team.json +40 -0
- package/specialists/org/teams/engineering-team.json +50 -0
- package/specialists/org/teams/governance-team.json +41 -0
- package/specialists/org/teams/operations-team.json +46 -0
- package/specialists/org/teams/product-management-team.json +45 -0
- package/specialists/org/teams/quality-team.json +49 -0
- package/specialists/org/teams/research-team.json +39 -0
- package/specialists/org/teams/strategy-team.json +48 -0
- package/specialists/org/teams/ux-research-team.json +39 -0
- package/specialists/prompts/_shared/validation-contract.md +1 -1
- package/specialists/prompts/_team-template.md +10 -0
- package/specialists/prompts/cx-accessibility.md +1 -0
- package/specialists/prompts/cx-ai-engineer.md +1 -1
- package/specialists/prompts/cx-business-strategist.md +1 -1
- package/specialists/prompts/cx-data-engineer.md +1 -1
- package/specialists/prompts/cx-designer.md +1 -0
- package/specialists/prompts/cx-devil-advocate.md +1 -1
- package/specialists/prompts/cx-docs-keeper.md +1 -1
- package/specialists/prompts/cx-evaluator.md +1 -1
- package/specialists/prompts/cx-explorer.md +1 -1
- package/specialists/prompts/cx-operations.md +1 -1
- package/specialists/prompts/cx-oracle.md +7 -3
- package/specialists/prompts/cx-orchestrator.md +17 -1
- package/specialists/prompts/cx-platform-engineer.md +1 -1
- package/specialists/prompts/cx-product-manager.md +2 -0
- package/specialists/prompts/cx-release-manager.md +1 -1
- package/specialists/prompts/cx-researcher.md +7 -4
- package/specialists/prompts/cx-sre.md +1 -1
- package/specialists/prompts/cx-test-automation.md +2 -2
- package/specialists/prompts/cx-trace-reviewer.md +3 -3
- package/specialists/prompts/cx-ux-researcher.md +2 -1
- package/templates/demos/scripts/architecture-review-adr.json +30 -0
- package/templates/demos/scripts/capability-contract.json +25 -0
- package/templates/demos/scripts/intake-triage.json +25 -0
- package/templates/demos/scripts/profile-doctor-health.json +25 -0
- package/templates/demos/tapes/agentic-platforms-prd.tape +2 -2
- package/templates/demos/tapes/architecture-review-adr.tape +44 -0
- package/templates/demos/tapes/capability-contract.tape +39 -0
- package/templates/demos/tapes/intake-triage.tape +39 -0
- package/templates/demos/tapes/profile-doctor-health.tape +39 -0
- package/templates/distribution/construct-brand.typ +23 -18
- package/templates/distribution/construct-decision.typ +1 -1
- package/templates/distribution/construct-pdf.typ +1 -1
- package/templates/distribution/construct-prd.typ +1 -1
- package/templates/distribution/construct-research.typ +1 -1
- package/templates/distribution/mermaid-puppeteer.json +8 -0
- package/templates/docs/persona-artifact.md +1 -1
- package/templates/docs/prd.md +6 -0
- package/apps/chat/engine/ai-sdk-agent.mjs +0 -183
- package/apps/chat/engine/loop-driver.mjs +0 -211
- package/apps/chat/engine/models.mjs +0 -122
- package/apps/chat/engine/provider-adapters.mjs +0 -171
- package/apps/chat/engine/tools/permission.mjs +0 -54
- package/apps/chat/engine/tools/primitives.mjs +0 -180
- package/apps/chat/engine/tools/registry.mjs +0 -122
- package/apps/chat/engine/turn-controls.mjs +0 -70
- package/lib/boundary.mjs +0 -127
- package/lib/certification/dashboard-api.mjs +0 -71
- package/lib/chat/cli.mjs +0 -333
- package/lib/chat/command-suggest.mjs +0 -161
- package/lib/chat/commands.mjs +0 -215
- package/lib/chat/config.mjs +0 -142
- package/lib/chat/context-compactor.mjs +0 -250
- package/lib/chat/context-continuation.mjs +0 -253
- package/lib/chat/continuation-source.mjs +0 -58
- package/lib/chat/demo-guide.mjs +0 -61
- package/lib/chat/design-tokens.mjs +0 -91
- package/lib/chat/desktop-binary.mjs +0 -81
- package/lib/chat/desktop-build.mjs +0 -130
- package/lib/chat/desktop-launcher.mjs +0 -133
- package/lib/chat/evidence.mjs +0 -145
- package/lib/chat/export.mjs +0 -74
- package/lib/chat/harness/driver.mjs +0 -91
- package/lib/chat/list-picker.mjs +0 -112
- package/lib/chat/model-picker.mjs +0 -356
- package/lib/chat/openrouter-fallback.mjs +0 -151
- package/lib/chat/permission-prompt.mjs +0 -33
- package/lib/chat/picker-catalog.mjs +0 -45
- package/lib/chat/policy-telemetry.mjs +0 -34
- package/lib/chat/present.mjs +0 -246
- package/lib/chat/session-context.mjs +0 -39
- package/lib/chat/session-persist.mjs +0 -73
- package/lib/chat/session-restore.mjs +0 -71
- package/lib/chat/session-settings.mjs +0 -53
- package/lib/chat/system-prompt.mjs +0 -52
- package/lib/chat/transparency.mjs +0 -93
- package/lib/chat/tui/color-scheme.mjs +0 -42
- package/lib/chat/tui/markdown.mjs +0 -123
- package/lib/chat/tui/presentation.mjs +0 -100
- package/lib/chat/tui/render.mjs +0 -500
- package/lib/chat/tui/turn-block.mjs +0 -284
- package/lib/chat/tui/turn-present.mjs +0 -18
- package/lib/chat/tui/turn-state.mjs +0 -88
- package/lib/chat/tui/usage.mjs +0 -122
- package/lib/chat/web-commands.mjs +0 -146
- package/lib/chat/web-launcher.mjs +0 -63
- package/lib/chat/web-picker-keys.mjs +0 -46
- package/lib/chat/web-session.mjs +0 -159
- package/lib/config/alias.mjs +0 -57
- package/lib/dashboard-demo.mjs +0 -71
- package/lib/dashboard-static.mjs +0 -175
- package/lib/install/desktop-binary-download.mjs +0 -88
- package/lib/profiles/loader.mjs +0 -123
- package/lib/profiles/rebrand.mjs +0 -46
- package/lib/server/auth.mjs +0 -169
- package/lib/server/chat-loop.mjs +0 -622
- package/lib/server/chat.mjs +0 -336
- package/lib/server/cors.mjs +0 -77
- package/lib/server/csrf.mjs +0 -103
- package/lib/server/demo-preview.mjs +0 -63
- package/lib/server/index.mjs +0 -2641
- package/lib/server/insights.mjs +0 -780
- package/lib/server/langfuse-login.mjs +0 -58
- package/lib/server/rate-limit.mjs +0 -93
- package/lib/server/telemetry-login.mjs +0 -100
- package/lib/server/webhook.mjs +0 -512
- package/specialists/contracts.json +0 -1032
- package/specialists/contracts.schema.json +0 -83
- package/specialists/policy-inventory.json +0 -188
- package/specialists/registry.json +0 -1412
- package/specialists/role-manifests.json +0 -217
- package/specialists/teams.json +0 -94
|
@@ -5,13 +5,13 @@ inputs: [repository-path]
|
|
|
5
5
|
artifactType: research-brief
|
|
6
6
|
toneDefault: pedagogical
|
|
7
7
|
toneAllowed: [pedagogical, direct]
|
|
8
|
-
verificationBar: "Every claim cites
|
|
8
|
+
verificationBar: "Every load-bearing claim cites a verifiable primary source; label inference confidence; satisfy template structure requirements."
|
|
9
9
|
---
|
|
10
10
|
# Codebase Research Workflow
|
|
11
11
|
|
|
12
12
|
Use when: cx-explorer investigates **this repository** — structure, dependencies, behavior. Not for external vendor research or user interviews.
|
|
13
13
|
|
|
14
|
-
Call `get_skill("roles/researcher
|
|
14
|
+
Call `get_skill("roles/researcher")` and `get_skill("exploration/repo-map")` before deep dives.
|
|
15
15
|
|
|
16
16
|
## Steps
|
|
17
17
|
|
|
@@ -38,3 +38,6 @@ Call `get_skill("roles/researcher.explorer")` and `get_skill("exploration/repo-m
|
|
|
38
38
|
- Every architectural claim traceable to file:line.
|
|
39
39
|
- Unknown paths marked `[unverified]` until read.
|
|
40
40
|
- cx-explorer must **not** answer product prioritization or user preference questions.
|
|
41
|
+
## Release gate
|
|
42
|
+
|
|
43
|
+
Run `construct artifact validate <path> --type=<type>` before marking the artifact approved.
|
|
@@ -24,3 +24,6 @@ Profiles are product memory, not CRM records. Keep only information needed for p
|
|
|
24
24
|
## Retrieval
|
|
25
25
|
|
|
26
26
|
Customer profiles are indexed by hybrid retrieval. Future PRDs, PRFAQs, evidence briefs, and backlog proposals should search them before drafting.
|
|
27
|
+
## Release gate
|
|
28
|
+
|
|
29
|
+
Run `construct artifact validate <path> --type=<type>` before marking the artifact approved.
|
|
@@ -54,3 +54,6 @@ construct ingest ./data/export.xlsx --out=./notes/export.md
|
|
|
54
54
|
## Rules
|
|
55
55
|
|
|
56
56
|
Do not overwrite an existing markdown artifact unless the user explicitly asks for replacement. Prefer creating a suffixed filename instead. Keep original source files untouched.
|
|
57
|
+
## Release gate
|
|
58
|
+
|
|
59
|
+
Run `construct artifact validate <path> --type=<type>` before marking the artifact approved.
|
|
@@ -3,7 +3,7 @@ name: docs-evidence-ingest-workflow
|
|
|
3
3
|
description: "Use when: the user pastes customer notes, Slack threads, support tickets, sales notes, research snippets, RFCs, analytics summaries, or competitor signals."
|
|
4
4
|
inputs: [signal, document]
|
|
5
5
|
artifactType: evidence-brief
|
|
6
|
-
verificationBar: "
|
|
6
|
+
verificationBar: "Observed behavior weighted over self-report; sample size stated; no invented quotes; every load-bearing claim cites a verifiable source."
|
|
7
7
|
---
|
|
8
8
|
# Evidence Ingest Workflow
|
|
9
9
|
|
|
@@ -34,3 +34,6 @@ Always preserve:
|
|
|
34
34
|
## Storage
|
|
35
35
|
|
|
36
36
|
Files in `.cx/knowledge/` are indexed by Construct's hybrid retrieval path. The vector layer makes them semantically retrievable for future PRDs and Meta PRDs.
|
|
37
|
+
## Release gate
|
|
38
|
+
|
|
39
|
+
Run `construct artifact validate <path> --type=<type>` before marking the artifact approved.
|
|
@@ -37,7 +37,7 @@ docs/ ← human-readable project documentation
|
|
|
37
37
|
1. Treat `.cx/context.md`, `.cx/context.json`, `.cx/workflow.json`, `docs/README.md`, and `docs/architecture.md` as required project state.
|
|
38
38
|
2. Read them at the start of every meaningful session.
|
|
39
39
|
3. Update them whenever work changes active reality: decisions, workflow phase, architecture assumptions, or documentation contract.
|
|
40
|
-
4. Run `construct
|
|
40
|
+
4. Run `construct status` to review the project's current state (workflow phase, core docs, uncommitted changes).
|
|
41
41
|
|
|
42
42
|
## For cx-docs-keeper
|
|
43
43
|
At session start, check the core docs set. If missing, suggest running `construct init --docs-preset=lean` (or `construct init --docs-preset=full` for the full lane set).
|
|
@@ -39,7 +39,7 @@ Style constraint: do not produce a wall of bullets. Use paragraphs for reasoning
|
|
|
39
39
|
| `meta-prd` | `docs/meta-prd/{YYYY-MM-DD}-{slug}.md` |
|
|
40
40
|
| `rfc` | `docs/decisions/rfc/{YYYY-MM-DD}-{slug}.md` |
|
|
41
41
|
| `rfc-platform` | `docs/decisions/rfc/{YYYY-MM-DD}-{slug}.md` |
|
|
42
|
-
5. **cx-devil-advocate** runs the FMEA challenge pass (`roles/
|
|
42
|
+
5. **cx-devil-advocate** runs the FMEA challenge pass (`roles/devil-advocate`) on the draft; highest-RPN failure modes need a mitigation or explicit accept-with-rationale before ship. Their specialist id must appear in `.cx/agent-log.jsonl` (manifest `releaseGate.requiredReviewers` for PRD-family types).
|
|
43
43
|
6. **cx-docs-keeper** updates `.cx/context.md` with a link to the PRD
|
|
44
44
|
|
|
45
45
|
Run `construct artifact validate <path> --type=<type>` before marking the artifact approved.
|
|
@@ -27,3 +27,6 @@ Use when: the user asks for a PRFAQ, working-backwards doc, launch narrative, or
|
|
|
27
27
|
## Approval
|
|
28
28
|
|
|
29
29
|
Stop before marking a PRFAQ approved or publishing it as a document of record.
|
|
30
|
+
## Release gate
|
|
31
|
+
|
|
32
|
+
Run `construct artifact validate <path> --type=<type>` before marking the artifact approved.
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
name: docs-product-intelligence-workflow
|
|
3
3
|
description: "Use when: the request involves customer evidence, PM synthesis, product requirements, PRDs, PRFAQs, customer profiles, product signals, or backlog proposals."
|
|
4
4
|
inputs: [signal, evidence-brief]
|
|
5
|
-
artifactType:
|
|
5
|
+
artifactType: product-intelligence
|
|
6
6
|
verificationBar: "Every load-bearing claim cites a verifiable source; label inference confidence; satisfy template structure requirements."
|
|
7
7
|
---
|
|
8
8
|
# Product Intelligence Workflow
|
|
@@ -73,3 +73,6 @@ Stop and ask the primary persona before:
|
|
|
73
73
|
Product Intelligence output must cite evidence, distinguish observation from inference, name confidence, and avoid a wall of bullets. Keep em dashes rare. Use paragraphs for reasoning, tables for comparisons, and bullets for scanability.
|
|
74
74
|
|
|
75
75
|
For time-sensitive or externally sourced claims, include the date basis. For load-bearing claims, prefer two independent sources unless one authoritative primary source is enough.
|
|
76
|
+
## Release gate
|
|
77
|
+
|
|
78
|
+
Run `construct artifact validate <path> --type=<type>` before marking the artifact approved.
|
|
@@ -61,3 +61,6 @@ After grouping evidence, check `.cx/knowledge/decisions/strategy/` for any decla
|
|
|
61
61
|
| PRFAQ | `docs/prfaq/` |
|
|
62
62
|
| Meta PRD | `docs/meta-prd/` |
|
|
63
63
|
| Backlog proposal | pending approval gate: do not file until explicit user approval |
|
|
64
|
+
## Release gate
|
|
65
|
+
|
|
66
|
+
Run `construct artifact validate <path> --type=<type>` before marking the artifact approved.
|
|
@@ -18,7 +18,14 @@ Follow [rules/common/research.md](../../rules/common/research.md) as the default
|
|
|
18
18
|
1. **Clarify the question**: one specific, falsifiable question the research must answer.
|
|
19
19
|
2. **Apply recency discipline**: search from the most recent year backward. For fast-moving domains, treat sources older than 12 months as presumptively stale unless confirmed.
|
|
20
20
|
3. **Check internal evidence first**: `.cx/research/`, `.cx/knowledge/`, PRDs, ADRs, runbooks before going external.
|
|
21
|
-
4. **Choose
|
|
21
|
+
4. **Choose the tool path by intent, not habit**:
|
|
22
|
+
|
|
23
|
+
- Construct itself → `knowledge_search`
|
|
24
|
+
- Current repo / attached files / ingested artifacts → local evidence first
|
|
25
|
+
- Library / framework / API / cloud docs → Context7 when available, otherwise web-search and fetch official docs directly
|
|
26
|
+
- Everything else → domain-primary sources first, web search only as the locator
|
|
27
|
+
|
|
28
|
+
5. **Choose authoritative starting points** (external primary only):
|
|
22
29
|
|
|
23
30
|
| Domain | Starting points |
|
|
24
31
|
|---|---|
|
|
@@ -28,11 +35,11 @@ Follow [rules/common/research.md](../../rules/common/research.md) as the default
|
|
|
28
35
|
| Cloud / API / SDK | Official vendor docs for exact version, changelog, migration guide |
|
|
29
36
|
| Regulatory | Primary regulation text, official agency guidance |
|
|
30
37
|
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
38
|
+
6. **Source hierarchy**: primary → secondary → tertiary (tertiary never alone for load-bearing claims).
|
|
39
|
+
7. **Verify every URL** before citing. Mark unconfirmed as `[unverified]`.
|
|
40
|
+
8. **Tone**: resolve from artifact manifest (`direct`). See `specialists/tone-profiles.json`.
|
|
41
|
+
9. **Structure** with `get_template("research-brief")`; write to `.cx/research/{topic-slug}.md`.
|
|
42
|
+
10. **Reference** the research doc in the requesting agent's output.
|
|
36
43
|
|
|
37
44
|
## Distribution (publish pipeline)
|
|
38
45
|
|
|
@@ -24,3 +24,6 @@ Use when: creating operational procedures for services, alerts, or recurring ope
|
|
|
24
24
|
## Review cadence
|
|
25
25
|
- Runbooks should be tested (table-top or live) at least quarterly
|
|
26
26
|
- Update `Last updated` field after each use or review
|
|
27
|
+
## Release gate
|
|
28
|
+
|
|
29
|
+
Run `construct artifact validate <path> --type=<type>` before marking the artifact approved.
|
|
@@ -36,3 +36,6 @@ Given a product signal or PRD, check:
|
|
|
36
36
|
|---|---|---|
|
|
37
37
|
| User-global | `~/.cx/strategy.md` | No: local only |
|
|
38
38
|
| Project-local | `.cx/strategy.md` | Yes: source of truth for this repo |
|
|
39
|
+
## Release gate
|
|
40
|
+
|
|
41
|
+
Run `construct artifact validate <path> --type=<type>` before marking the artifact approved.
|
|
@@ -5,13 +5,13 @@ inputs: [user-research, interview-data]
|
|
|
5
5
|
artifactType: evidence-brief
|
|
6
6
|
toneDefault: pedagogical
|
|
7
7
|
toneAllowed: [pedagogical, direct, friendly]
|
|
8
|
-
verificationBar: "Observed behavior weighted over self-report; sample size stated; no invented quotes."
|
|
8
|
+
verificationBar: "Observed behavior weighted over self-report; sample size stated; no invented quotes; every load-bearing claim cites a verifiable source."
|
|
9
9
|
---
|
|
10
10
|
# User Research Workflow
|
|
11
11
|
|
|
12
12
|
Use when: cx-ux-researcher gathers or synthesizes **user** evidence. Do not use for CVE lookups, API version facts, or repo structure — use `docs/research-workflow` (cx-researcher) or `docs/codebase-research-workflow` (cx-explorer) instead.
|
|
13
13
|
|
|
14
|
-
Follow [rules/common/research.md](../../rules/common/research.md) and call `get_skill("roles/researcher
|
|
14
|
+
Follow [rules/common/research.md](../../rules/common/research.md) and call `get_skill("roles/ux-researcher")` before drafting.
|
|
15
15
|
|
|
16
16
|
## Steps
|
|
17
17
|
|
|
@@ -28,7 +28,7 @@ Follow [rules/common/research.md](../../rules/common/research.md) and call `get_
|
|
|
28
28
|
| Sales / CS summary | secondary | Trace to underlying tickets when possible |
|
|
29
29
|
|
|
30
30
|
4. **Sampling**: state segment, N, recruitment method. Behavioral claims need ≥5 per segment unless exploratory (flag as low confidence).
|
|
31
|
-
5. **Validity**: name the weakest validity threat (internal/external/construct/conclusion) per `roles/researcher
|
|
31
|
+
5. **Validity**: name the weakest validity threat (internal/external/construct/conclusion) per `roles/ux-researcher` — that threat is where the finding is most likely wrong.
|
|
32
32
|
6. **Inter-rater reliability**: when themes are coded from qualitative data, two coders code a sample independently; report agreement (or Cohen's κ when N permits). Persistent disagreement means the codebook is unfinished — fix the codebook before shipping themes.
|
|
33
33
|
7. **Tone**: default `pedagogical`; override via `.cx/brand-voice.json` if present.
|
|
34
34
|
8. **Output**: `get_template("evidence-brief")` or `signal-brief` when threshold not met; store under `.cx/knowledge/internal/evidence-briefs/`.
|
|
@@ -38,3 +38,6 @@ Follow [rules/common/research.md](../../rules/common/research.md) and call `get_
|
|
|
38
38
|
- No invented customer names, quotes, or ticket ids.
|
|
39
39
|
- Findings describe problems, not prescribed UI solutions.
|
|
40
40
|
- cx-ux-researcher must **not** cite blog posts for API version or security claims.
|
|
41
|
+
## Release gate
|
|
42
|
+
|
|
43
|
+
Run `construct artifact validate <path> --type=<type>` before marking the artifact approved.
|
|
@@ -118,7 +118,7 @@ If you reason about the same decision across two consecutive turns without a new
|
|
|
118
118
|
|
|
119
119
|
## Speculation rule
|
|
120
120
|
|
|
121
|
-
When choosing between named options (SDK vs SDK, library vs library, pattern vs pattern), the answer comes from
|
|
121
|
+
When choosing between named options (SDK vs SDK, library vs library, pattern vs pattern), the answer comes from the appropriate evidence path: Context7 for library/framework/API docs when available, direct fetch/search of official docs otherwise, local repo evidence when the question is project-local, the user, or an explicit default. Never from internal reasoning rounds alone.
|
|
122
122
|
|
|
123
123
|
## Dispatch-first test
|
|
124
124
|
|
|
@@ -3,12 +3,12 @@ name: roles-engineer-ai
|
|
|
3
3
|
description: Surfaces anti-patterns, failure modes, and counter-moves specific to the Engineer — AI role. Use when reviewing or generating work by cx-ai-engineer, or when an agent is acting in the Engineer — AI role.
|
|
4
4
|
inputs: [code-diff, prompt]
|
|
5
5
|
artifactType: role-guidance
|
|
6
|
-
role: engineer
|
|
6
|
+
role: ai-engineer
|
|
7
7
|
applies_to:
|
|
8
8
|
- cx-ai-engineer
|
|
9
9
|
inherits: engineer
|
|
10
10
|
version: 2
|
|
11
|
-
|
|
11
|
+
scopes:
|
|
12
12
|
- rnd
|
|
13
13
|
cap: 1
|
|
14
14
|
---
|
|
@@ -3,12 +3,12 @@ name: roles-product-manager-business-strategy
|
|
|
3
3
|
description: Surfaces anti-patterns, failure modes, and counter-moves specific to the Product Manager — Business Strategy role. Use when reviewing or generating work by cx-business-strategist, or when an agent is acting in the Product Manager — Business Strategy role.
|
|
4
4
|
inputs: [strategy-doc, competitive-analysis]
|
|
5
5
|
artifactType: guidance
|
|
6
|
-
role:
|
|
6
|
+
role: business-strategist
|
|
7
7
|
applies_to:
|
|
8
8
|
- cx-business-strategist
|
|
9
|
-
inherits:
|
|
9
|
+
inherits: null
|
|
10
10
|
version: 2
|
|
11
|
-
|
|
11
|
+
scopes:
|
|
12
12
|
- rnd
|
|
13
13
|
cap: 1
|
|
14
14
|
---
|
|
@@ -3,12 +3,12 @@ name: roles-engineer-data
|
|
|
3
3
|
description: Surfaces anti-patterns, failure modes, and counter-moves specific to the Engineer — Data role. Use when reviewing or generating work by cx-data-engineer, or when an agent is acting in the Engineer — Data role.
|
|
4
4
|
inputs: [code-diff, data-pipeline]
|
|
5
5
|
artifactType: role-guidance
|
|
6
|
-
role: engineer
|
|
6
|
+
role: data-engineer
|
|
7
7
|
applies_to:
|
|
8
8
|
- cx-data-engineer
|
|
9
9
|
inherits: engineer
|
|
10
10
|
version: 2
|
|
11
|
-
|
|
11
|
+
scopes:
|
|
12
12
|
- rnd
|
|
13
13
|
cap: 1
|
|
14
14
|
---
|
package/skills/roles/debugger.md
CHANGED
package/skills/roles/designer.md
CHANGED
|
@@ -3,12 +3,12 @@ name: roles-reviewer-devil-advocate
|
|
|
3
3
|
description: Surfaces anti-patterns, failure modes, and counter-moves specific to the Reviewer — Devil Advocate role. Use when reviewing or generating work by cx-devil-advocate, or when an agent is acting in the Reviewer — Devil Advocate role.
|
|
4
4
|
inputs: [plan, proposal]
|
|
5
5
|
artifactType: guidance
|
|
6
|
-
role:
|
|
6
|
+
role: devil-advocate
|
|
7
7
|
applies_to:
|
|
8
8
|
- cx-devil-advocate
|
|
9
9
|
inherits: reviewer
|
|
10
10
|
version: 2
|
|
11
|
-
|
|
11
|
+
scopes:
|
|
12
12
|
- rnd
|
|
13
13
|
cap: 1
|
|
14
14
|
---
|
|
@@ -3,12 +3,12 @@ name: roles-operator-docs
|
|
|
3
3
|
description: Surfaces anti-patterns, failure modes, and counter-moves specific to the Operator — Docs role. Use when reviewing or generating work by cx-docs-keeper, or when an agent is acting in the Operator — Docs role.
|
|
4
4
|
inputs: [docs, runbook]
|
|
5
5
|
artifactType: role-guidance
|
|
6
|
-
role:
|
|
6
|
+
role: docs-keeper
|
|
7
7
|
applies_to:
|
|
8
8
|
- cx-docs-keeper
|
|
9
|
-
inherits:
|
|
9
|
+
inherits: operations
|
|
10
10
|
version: 2
|
|
11
|
-
|
|
11
|
+
scopes:
|
|
12
12
|
- rnd
|
|
13
13
|
cap: 1
|
|
14
14
|
---
|
package/skills/roles/engineer.md
CHANGED
|
@@ -1,17 +1,14 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: roles-engineer
|
|
3
|
-
description: Surfaces anti-patterns, failure modes, and counter-moves specific to the Engineer role. Use when reviewing or generating work by cx-engineer,
|
|
3
|
+
description: Surfaces anti-patterns, failure modes, and counter-moves specific to the Engineer role. Use when reviewing or generating work by cx-engineer, or when an agent is acting in the Engineer role.
|
|
4
4
|
inputs: [code-diff, task-context]
|
|
5
5
|
artifactType: role-guidance
|
|
6
6
|
role: engineer
|
|
7
7
|
applies_to:
|
|
8
8
|
- cx-engineer
|
|
9
|
-
- cx-ai-engineer
|
|
10
|
-
- cx-data-engineer
|
|
11
|
-
- cx-platform-engineer
|
|
12
9
|
inherits: null
|
|
13
10
|
version: 2
|
|
14
|
-
|
|
11
|
+
scopes:
|
|
15
12
|
- rnd
|
|
16
13
|
cap: 1
|
|
17
14
|
---
|
|
@@ -68,7 +65,7 @@ Load this before drafting. These are the failure modes that separate strong role
|
|
|
68
65
|
### 10. Speculating across thinking turns
|
|
69
66
|
**Symptom**: reasoning about which library, pattern, or abstraction to use across multiple thinking turns without reading code, calling docs, or asking.
|
|
70
67
|
**Why it fails**: guesses compound; the eventual choice is made from context the model built about itself, not from the codebase or the library.
|
|
71
|
-
**Counter-move**: two unproductive passes is the cap. Next step is a targeted read,
|
|
68
|
+
**Counter-move**: two unproductive passes is the cap. Next step is a targeted read, the appropriate docs/evidence lookup path (Context7 for library docs when available, direct official-doc fetch otherwise), a NEEDS_MAIN_INPUT packet, or a default with a noted assumption.
|
|
72
69
|
|
|
73
70
|
### 11. Unbounded file reads
|
|
74
71
|
**Symptom**: reading files with large `limit` values without checking size first, or offset reads that fail with "out of range".
|
|
@@ -118,4 +115,3 @@ Shortcut: `npm run release:check`.
|
|
|
118
115
|
**Effective Action**: Before modifying a function, read the full file and grep for callers with `grep -r 'functionName' src/`...
|
|
119
116
|
**Evidence**: Score 0.89, used 8 times, 2 projects
|
|
120
117
|
*Last reinforced: 2026-05-04*
|
|
121
|
-
|
|
@@ -3,12 +3,12 @@ name: roles-reviewer-evaluator
|
|
|
3
3
|
description: Surfaces anti-patterns, failure modes, and counter-moves specific to the Reviewer — Evaluator role. Use when reviewing or generating work by cx-evaluator, or when an agent is acting in the Reviewer — Evaluator role.
|
|
4
4
|
inputs: [model-output, eval-set]
|
|
5
5
|
artifactType: guidance
|
|
6
|
-
role:
|
|
6
|
+
role: evaluator
|
|
7
7
|
applies_to:
|
|
8
8
|
- cx-evaluator
|
|
9
9
|
inherits: reviewer
|
|
10
10
|
version: 2
|
|
11
|
-
|
|
11
|
+
scopes:
|
|
12
12
|
- rnd
|
|
13
13
|
cap: 1
|
|
14
14
|
---
|
|
@@ -3,12 +3,12 @@ name: roles-researcher-explorer
|
|
|
3
3
|
description: Surfaces anti-patterns, failure modes, and counter-moves specific to the Researcher — Explorer role. Use when reviewing or generating work by cx-explorer, or when an agent is acting in the Researcher — Explorer role.
|
|
4
4
|
inputs: [repo, task-context]
|
|
5
5
|
artifactType: guidance
|
|
6
|
-
role:
|
|
6
|
+
role: explorer
|
|
7
7
|
applies_to:
|
|
8
8
|
- cx-explorer
|
|
9
9
|
inherits: researcher
|
|
10
10
|
version: 2
|
|
11
|
-
|
|
11
|
+
scopes:
|
|
12
12
|
- rnd
|
|
13
13
|
cap: 1
|
|
14
14
|
---
|
|
@@ -3,15 +3,12 @@ name: roles-operator
|
|
|
3
3
|
description: Surfaces anti-patterns, failure modes, and counter-moves specific to the Operator role. Use when reviewing or generating work by cx-sre, cx-operations, cx-release-manager, cx-docs-keeper, or when an agent is acting in the Operator role.
|
|
4
4
|
inputs: [runbook, deployment-plan]
|
|
5
5
|
artifactType: role-guidance
|
|
6
|
-
role:
|
|
6
|
+
role: operations
|
|
7
7
|
applies_to:
|
|
8
|
-
- cx-sre
|
|
9
8
|
- cx-operations
|
|
10
|
-
- cx-release-manager
|
|
11
|
-
- cx-docs-keeper
|
|
12
9
|
inherits: null
|
|
13
10
|
version: 2
|
|
14
|
-
|
|
11
|
+
scopes:
|
|
15
12
|
- rnd
|
|
16
13
|
cap: 1
|
|
17
14
|
---
|
|
@@ -3,12 +3,12 @@ name: roles-engineer-platform
|
|
|
3
3
|
description: Surfaces anti-patterns, failure modes, and counter-moves specific to the Engineer — Platform role. Use when reviewing or generating work by cx-platform-engineer, or when an agent is acting in the Engineer — Platform role.
|
|
4
4
|
inputs: [code-diff, internal-tooling]
|
|
5
5
|
artifactType: role-guidance
|
|
6
|
-
role: engineer
|
|
6
|
+
role: platform-engineer
|
|
7
7
|
applies_to:
|
|
8
8
|
- cx-platform-engineer
|
|
9
9
|
inherits: engineer
|
|
10
10
|
version: 2
|
|
11
|
-
|
|
11
|
+
scopes:
|
|
12
12
|
- rnd
|
|
13
13
|
cap: 1
|
|
14
14
|
---
|