wicked-garden 12.27.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.claude-plugin/archetypes.json +166 -0
- package/.claude-plugin/components.json +75 -0
- package/.claude-plugin/marketplace.json +15 -0
- package/.claude-plugin/plugin.json +174 -0
- package/.claude-plugin/specialist.json +48 -0
- package/.claude-plugin/stack-registry.json +96 -0
- package/AGENTS.md +13 -0
- package/CHANGELOG.md +712 -0
- package/CONTRIBUTING.md +99 -0
- package/ETHOS.md +83 -0
- package/LICENSE +21 -0
- package/README.md +115 -0
- package/WICKED_GARDEN_BUS_EVENTS.md +149 -0
- package/agents/agentic/architect.md +449 -0
- package/agents/agentic/performance-analyst.md +702 -0
- package/agents/agentic/safety-reviewer.md +662 -0
- package/agents/crew/implementer.md +163 -0
- package/agents/crew/researcher.md +94 -0
- package/agents/crew/reviewer.md +184 -0
- package/agents/data/data-engineer.md +227 -0
- package/agents/engineering/api-documentarian.md +440 -0
- package/agents/engineering/migration-engineer.md +301 -0
- package/agents/engineering/solution-architect.md +208 -0
- package/agents/jam/brainstorm-facilitator.md +297 -0
- package/agents/jam/council.md +322 -0
- package/agents/jam/quick-facilitator.md +85 -0
- package/agents/persona/persona-agent.md +121 -0
- package/agents/platform/compliance-officer.md +266 -0
- package/agents/platform/privacy-expert.md +496 -0
- package/agents/platform/security-engineer.md +287 -0
- package/agents/product/a11y-expert.md +323 -0
- package/agents/product/requirements-analyst.md +238 -0
- package/agents/product/ui-reviewer.md +180 -0
- package/agents/product/ux-designer.md +199 -0
- package/agents/product/value-strategist.md +269 -0
- package/agents/qe/semantic-reviewer.md +78 -0
- package/commands/agentic/audit.md +24 -0
- package/commands/agentic/design.md +24 -0
- package/commands/agentic/frameworks.md +25 -0
- package/commands/agentic/review.md +27 -0
- package/commands/archetype/build.md +12 -0
- package/commands/archetype/decide.md +12 -0
- package/commands/archetype/explore.md +12 -0
- package/commands/archetype/incident.md +12 -0
- package/commands/archetype/migrate.md +12 -0
- package/commands/archetype/modernize.md +12 -0
- package/commands/archetype/review.md +14 -0
- package/commands/archetype/ship.md +12 -0
- package/commands/archetype/specify.md +12 -0
- package/commands/archetype/triage.md +12 -0
- package/commands/compile.md +37 -0
- package/commands/data/analyze.md +18 -0
- package/commands/data/data.md +21 -0
- package/commands/data/ml.md +18 -0
- package/commands/data/ontology.md +22 -0
- package/commands/data/pipeline.md +17 -0
- package/commands/deliberate.md +181 -0
- package/commands/engineering/add-field.md +77 -0
- package/commands/engineering/apply.md +58 -0
- package/commands/engineering/arch.md +26 -0
- package/commands/engineering/debug.md +27 -0
- package/commands/engineering/docs.md +27 -0
- package/commands/engineering/new-generator.md +257 -0
- package/commands/engineering/patch-plan.md +59 -0
- package/commands/engineering/plan.md +29 -0
- package/commands/engineering/remove.md +48 -0
- package/commands/engineering/rename.md +44 -0
- package/commands/engineering/review.md +32 -0
- package/commands/help.md +128 -0
- package/commands/install.md +118 -0
- package/commands/intent.md +54 -0
- package/commands/jam/brainstorm.md +37 -0
- package/commands/jam/council.md +49 -0
- package/commands/jam/quick.md +21 -0
- package/commands/jam/revisit.md +79 -0
- package/commands/persona/as.md +136 -0
- package/commands/persona/define.md +24 -0
- package/commands/persona/list.md +118 -0
- package/commands/platform/actions.md +20 -0
- package/commands/platform/assert.md +18 -0
- package/commands/platform/audit.md +23 -0
- package/commands/platform/compliance.md +20 -0
- package/commands/platform/gh.md +22 -0
- package/commands/platform/health.md +22 -0
- package/commands/platform/incident.md +23 -0
- package/commands/platform/infra.md +24 -0
- package/commands/platform/peer-health.md +103 -0
- package/commands/platform/plugin-health.md +58 -0
- package/commands/platform/security.md +38 -0
- package/commands/platform/toolchain.md +96 -0
- package/commands/platform/traces.md +20 -0
- package/commands/product/a11y.md +19 -0
- package/commands/product/acceptance.md +19 -0
- package/commands/product/align.md +20 -0
- package/commands/product/analyze.md +23 -0
- package/commands/product/elicit.md +19 -0
- package/commands/product/listen.md +24 -0
- package/commands/product/mockup.md +20 -0
- package/commands/product/screenshot.md +19 -0
- package/commands/product/strategy.md +40 -0
- package/commands/product/synthesize.md +23 -0
- package/commands/product/ux-review.md +42 -0
- package/commands/product/ux.md +20 -0
- package/commands/product/visual-direction.md +34 -0
- package/commands/prove.md +47 -0
- package/commands/report-issue.md +243 -0
- package/commands/reset.md +144 -0
- package/commands/search/blast-radius.md +58 -0
- package/commands/search/hotspots.md +55 -0
- package/commands/search/index.md +38 -0
- package/commands/search/lineage.md +47 -0
- package/commands/search/service-map.md +79 -0
- package/commands/setup.md +363 -0
- package/commands/smaht/briefing.md +200 -0
- package/commands/smaht/events-import.md +95 -0
- package/commands/smaht/state.md +19 -0
- package/commands/where-am-i.md +58 -0
- package/docs/README.md +32 -0
- package/docs/adr/0001-code-relationship-graph-engine.md +116 -0
- package/docs/adr/0002-major-cleanup-keep-cut.md +91 -0
- package/docs/adr/0003-peers-gate-required-layers-optin.md +41 -0
- package/docs/adr/0004-code-graph-moves-to-wicked-brain.md +47 -0
- package/docs/brain-chunk-format.md +135 -0
- package/docs/compiler.md +95 -0
- package/docs/daemon-api.md +70 -0
- package/docs/domains.md +197 -0
- package/docs/getting-started.md +208 -0
- package/docs/plans/2026-06-08-wicked-loom-conduct.md +1337 -0
- package/docs/plans/2026-06-08-wicked-loom-contract.md +638 -0
- package/docs/plans/2026-06-08-wicked-loom-cutover.md +1300 -0
- package/docs/plans/2026-06-08-wicked-loom-expand-compose.md +843 -0
- package/docs/plans/2026-06-08-wicked-loom-flow-cutover.md +403 -0
- package/docs/plans/2026-06-10-codegraph-to-brain-phase1a-graph-core.md +838 -0
- package/docs/plans/2026-06-10-codegraph-to-brain-phase1b-injected-edges.md +44 -0
- package/docs/required-peers.md +60 -0
- package/docs/specs/2026-06-08-wicked-loom-extraction.md +225 -0
- package/docs/specs/2026-06-10-codegraph-to-brain-migration.md +168 -0
- package/docs/v11/archetypes.md +231 -0
- package/hooks/hooks.json +275 -0
- package/hooks/scripts/bootstrap.py +1797 -0
- package/hooks/scripts/invoke.py +62 -0
- package/hooks/scripts/notification.py +166 -0
- package/hooks/scripts/permission_request.py +223 -0
- package/hooks/scripts/post_tool.py +1374 -0
- package/hooks/scripts/pre_compact.py +272 -0
- package/hooks/scripts/pre_tool.py +1278 -0
- package/hooks/scripts/prompt_submit.py +1109 -0
- package/hooks/scripts/session_end.py +95 -0
- package/hooks/scripts/stop.py +624 -0
- package/hooks/scripts/subagent_lifecycle.py +464 -0
- package/hooks/scripts/subscribers/on_gate_decided.py +84 -0
- package/hooks/scripts/task_completed.py +322 -0
- package/hooks/scripts/worktree_guard.py +148 -0
- package/hooks/subscriptions/on_gate_decided.json +9 -0
- package/install.mjs +128 -0
- package/package.json +41 -0
- package/pyproject.toml +59 -0
- package/schemas/README.md +32 -0
- package/schemas/assert_contracts.json +37 -0
- package/schemas/health_probe.json +46 -0
- package/schemas/plugin_status.json +37 -0
- package/scripts/_adapters/__init__.py +166 -0
- package/scripts/_adapters/jira_adapter.py +18 -0
- package/scripts/_adapters/linear_adapter.py +18 -0
- package/scripts/_adapters/miro_adapter.py +18 -0
- package/scripts/_adapters/notion_adapter.py +18 -0
- package/scripts/_agents.py +357 -0
- package/scripts/_brain_ingest/__init__.py +2 -0
- package/scripts/_brain_ingest/session_fact_extractor.py +341 -0
- package/scripts/_brain_port.py +163 -0
- package/scripts/_bus.py +1081 -0
- package/scripts/_bus_catalog_gen.py +93 -0
- package/scripts/_bus_consumers.json +46 -0
- package/scripts/_bus_emit.py +43 -0
- package/scripts/_capability_registry.py +334 -0
- package/scripts/_capability_resolver.py +322 -0
- package/scripts/_domain_store.py +559 -0
- package/scripts/_event_log_reader.py +154 -0
- package/scripts/_event_schema.py +305 -0
- package/scripts/_event_store.py +397 -0
- package/scripts/_heavy_cadence.py +324 -0
- package/scripts/_integration_resolver.py +321 -0
- package/scripts/_logger.py +151 -0
- package/scripts/_loom.py +482 -0
- package/scripts/_paths.py +133 -0
- package/scripts/_python.sh +22 -0
- package/scripts/_run.py +137 -0
- package/scripts/_session.py +502 -0
- package/scripts/_validate_registry.py +1042 -0
- package/scripts/_wicked_testing_probe.py +277 -0
- package/scripts/agentic/analyze_agents.py +391 -0
- package/scripts/agentic/detect_framework.py +420 -0
- package/scripts/agentic/issue_taxonomy.py +357 -0
- package/scripts/agentic/pattern_scorer.py +434 -0
- package/scripts/classify/persist.py +169 -0
- package/scripts/compiler/compile.py +552 -0
- package/scripts/compiler/phase0/VERDICT.md +60 -0
- package/scripts/compiler/phase0/detect.py +292 -0
- package/scripts/compiler/phase0/emit.py +228 -0
- package/scripts/compiler/phase0/evidence/Enterprise-AISDLC.bindings.json +30 -0
- package/scripts/compiler/phase0/evidence/Enterprise-AISDLC.lint-output.txt +17 -0
- package/scripts/compiler/phase0/evidence/Enterprise-AISDLC.stage/.wg/evidence/failing-tests.txt +4 -0
- package/scripts/compiler/phase0/evidence/Enterprise-AISDLC.stage/.wg/evidence/honest-tests.txt +2 -0
- package/scripts/compiler/phase0/evidence/Enterprise-AISDLC.stage/fab-fail.build.md +8 -0
- package/scripts/compiler/phase0/evidence/Enterprise-AISDLC.stage/fab-missing.build.md +8 -0
- package/scripts/compiler/phase0/evidence/Enterprise-AISDLC.stage/honest.build.md +8 -0
- package/scripts/compiler/phase0/evidence/Enterprise-AISDLC.stage/wg_check_claims.py +174 -0
- package/scripts/compiler/phase0/evidence/command_iq.bindings.json +45 -0
- package/scripts/compiler/phase0/evidence/command_iq.lint-output.txt +17 -0
- package/scripts/compiler/phase0/evidence/command_iq.stage/.projects/evidence-domain/phase-1-clarify/evidence/failing-tests.txt +4 -0
- package/scripts/compiler/phase0/evidence/command_iq.stage/.projects/evidence-domain/phase-1-clarify/evidence/honest-tests.txt +3 -0
- package/scripts/compiler/phase0/evidence/command_iq.stage/fab-fail.build.md +8 -0
- package/scripts/compiler/phase0/evidence/command_iq.stage/fab-missing.build.md +8 -0
- package/scripts/compiler/phase0/evidence/command_iq.stage/honest.build.md +8 -0
- package/scripts/compiler/phase0/evidence/command_iq.stage/wg_check_claims.py +174 -0
- package/scripts/compiler/phase0/evidence/memos.bindings.json +28 -0
- package/scripts/compiler/phase0/evidence/memos.lint-output.txt +17 -0
- package/scripts/compiler/phase0/evidence/memos.stage/.wg/evidence/failing-tests.txt +4 -0
- package/scripts/compiler/phase0/evidence/memos.stage/.wg/evidence/honest-tests.txt +2 -0
- package/scripts/compiler/phase0/evidence/memos.stage/fab-fail.build.md +8 -0
- package/scripts/compiler/phase0/evidence/memos.stage/fab-missing.build.md +8 -0
- package/scripts/compiler/phase0/evidence/memos.stage/honest.build.md +8 -0
- package/scripts/compiler/phase0/evidence/memos.stage/wg_check_claims.py +174 -0
- package/scripts/compiler/phase0/evidence/verdict.json +104 -0
- package/scripts/compiler/phase0/evidence/wicked-bus.bindings.json +29 -0
- package/scripts/compiler/phase0/evidence/wicked-bus.lint-output.txt +17 -0
- package/scripts/compiler/phase0/evidence/wicked-bus.stage/coverage/failing-tests.txt +4 -0
- package/scripts/compiler/phase0/evidence/wicked-bus.stage/coverage/honest-tests.txt +3 -0
- package/scripts/compiler/phase0/evidence/wicked-bus.stage/fab-fail.build.md +8 -0
- package/scripts/compiler/phase0/evidence/wicked-bus.stage/fab-missing.build.md +8 -0
- package/scripts/compiler/phase0/evidence/wicked-bus.stage/honest.build.md +8 -0
- package/scripts/compiler/phase0/evidence/wicked-bus.stage/wg_check_claims.py +174 -0
- package/scripts/compiler/phase0/evidence/wire-vault-transcript.txt +60 -0
- package/scripts/compiler/phase0/run_probe.py +234 -0
- package/scripts/compiler/phase0/wire_vault.py +310 -0
- package/scripts/crew/__init__.py +0 -0
- package/scripts/crew/_task_audit_writer.py +243 -0
- package/scripts/crew/_task_reader.py +389 -0
- package/scripts/crew/archetypes_v11.py +348 -0
- package/scripts/crew/detectors/__init__.py +12 -0
- package/scripts/crew/flow_compiler.py +121 -0
- package/scripts/crew/phase_manager.py +703 -0
- package/scripts/crew/scope_delta.py +264 -0
- package/scripts/crew/specialist_resolver.py +218 -0
- package/scripts/crew/stack_registry.py +189 -0
- package/scripts/data/data_profiler.py +271 -0
- package/scripts/data/ontology_recommender.py +231 -0
- package/scripts/data/schema_validator.py +267 -0
- package/scripts/delivery/drift.py +739 -0
- package/scripts/delivery/telemetry.py +614 -0
- package/scripts/engineering/patch/codegraph_db.py +125 -0
- package/scripts/engineering/patch/generators/__init__.py +56 -0
- package/scripts/engineering/patch/generators/base.py +373 -0
- package/scripts/engineering/patch/generators/csharp_generator.py +494 -0
- package/scripts/engineering/patch/generators/go_generator.py +430 -0
- package/scripts/engineering/patch/generators/java_generator.py +928 -0
- package/scripts/engineering/patch/generators/jsp_generator.py +454 -0
- package/scripts/engineering/patch/generators/kotlin_generator.py +561 -0
- package/scripts/engineering/patch/generators/perl_generator.py +510 -0
- package/scripts/engineering/patch/generators/php_generator.py +644 -0
- package/scripts/engineering/patch/generators/propagation_engine.py +929 -0
- package/scripts/engineering/patch/generators/python_generator.py +487 -0
- package/scripts/engineering/patch/generators/ruby_generator.py +463 -0
- package/scripts/engineering/patch/generators/rust_generator.py +400 -0
- package/scripts/engineering/patch/generators/sql_generator.py +594 -0
- package/scripts/engineering/patch/generators/typescript_generator.py +439 -0
- package/scripts/engineering/patch/patch.py +800 -0
- package/scripts/engineering/patch/safety.py +429 -0
- package/scripts/jam/__init__.py +0 -0
- package/scripts/jam/_bus_consumers.py +271 -0
- package/scripts/jam/agentic_cli_registry.py +703 -0
- package/scripts/jam/consensus.py +737 -0
- package/scripts/jam/detect_clis.py +409 -0
- package/scripts/jam/jam.py +283 -0
- package/scripts/jam/save_transcript.py +171 -0
- package/scripts/loom/__init__.py +22 -0
- package/scripts/loom/cli.py +170 -0
- package/scripts/loom/compose.py +180 -0
- package/scripts/loom/gate.py +120 -0
- package/scripts/loom/manifest.py +140 -0
- package/scripts/loom/resolve.py +59 -0
- package/scripts/persona/__init__.py +0 -0
- package/scripts/persona/registry.py +688 -0
- package/scripts/platform/guard_pipeline.py +1214 -0
- package/scripts/platform/guard_profiles.py +216 -0
- package/scripts/platform/observability/assert_contracts.py +434 -0
- package/scripts/platform/observability/health_probe.py +915 -0
- package/scripts/platform/observability/ops_log_viewer.py +209 -0
- package/scripts/platform/prereq_doctor.py +567 -0
- package/scripts/qe/conditions_manifest.py +260 -0
- package/scripts/qe/content_sanitizer.py +160 -0
- package/scripts/qe/coverage_tracker.py +535 -0
- package/scripts/qe/discover_scenarios.py +243 -0
- package/scripts/qe/evidence_tracker.py +232 -0
- package/scripts/qe/prove.py +196 -0
- package/scripts/qe/registry_lookup.py +80 -0
- package/scripts/qe/registry_store.py +176 -0
- package/scripts/qe/semantic_review.py +1005 -0
- package/scripts/qe/vault_gate.py +382 -0
- package/scripts/qe/verdict_audit.py +175 -0
- package/scripts/qe/verdict_schema.py +335 -0
- package/scripts/reset.py +220 -0
- package/scripts/resolve_path.py +22 -0
- package/scripts/sentinel/invariants.py +402 -0
- package/scripts/sentinel/pre_push.py +73 -0
- package/scripts/setup/__init__.py +1 -0
- package/scripts/setup/detect_state.py +114 -0
- package/scripts/setup/migrate_legacy.py +67 -0
- package/scripts/setup/migrate_v6_projects.py +232 -0
- package/scripts/setup/onboarding.py +114 -0
- package/scripts/smaht/_bus_consumers.py +98 -0
- package/scripts/smaht/adapters/__init__.py +83 -0
- package/scripts/smaht/adapters/brain_adapter.py +254 -0
- package/scripts/smaht/adapters/context7_adapter.py +438 -0
- package/scripts/smaht/adapters/delegation_adapter.py +104 -0
- package/scripts/smaht/adapters/domain_adapter.py +206 -0
- package/scripts/smaht/adapters/events_adapter.py +231 -0
- package/scripts/smaht/adapters/tools_adapter.py +49 -0
- package/scripts/smaht/cheatsheet_store.py +236 -0
- package/scripts/smaht/context_package.py +386 -0
- package/scripts/smaht/knowledge_graph.py +395 -0
- package/scripts/smaht/propose_skills.py +856 -0
- package/scripts/smaht/test_cheatsheet_store.py +428 -0
- package/scripts/statusline.py +151 -0
- package/scripts/where_am_i.py +236 -0
- package/skills/agentic/agentic-patterns/SKILL.md +91 -0
- package/skills/agentic/agentic-patterns/refs/anti-patterns-design.md +283 -0
- package/skills/agentic/agentic-patterns/refs/anti-patterns-operational.md +216 -0
- package/skills/agentic/agentic-patterns/refs/pattern-catalog.md +329 -0
- package/skills/agentic/context-engineering/SKILL.md +142 -0
- package/skills/agentic/context-engineering/refs/caching-and-optimization.md +251 -0
- package/skills/agentic/context-engineering/refs/compression-techniques.md +171 -0
- package/skills/agentic/context-engineering/refs/cost-calculation-budget.md +250 -0
- package/skills/agentic/context-engineering/refs/cost-optimization-reporting.md +300 -0
- package/skills/agentic/context-engineering/refs/selective-loading.md +179 -0
- package/skills/agentic/frameworks/SKILL.md +191 -0
- package/skills/agentic/frameworks/refs/framework-profiles-1.md +209 -0
- package/skills/agentic/frameworks/refs/framework-profiles-2.md +214 -0
- package/skills/agentic/frameworks/refs/migration-patterns-paths.md +267 -0
- package/skills/agentic/frameworks/refs/migration-patterns-testing.md +208 -0
- package/skills/agentic/refs/audit.md +134 -0
- package/skills/agentic/refs/design.md +137 -0
- package/skills/agentic/refs/frameworks.md +102 -0
- package/skills/agentic/refs/review.md +160 -0
- package/skills/agentic/review-methodology/SKILL.md +186 -0
- package/skills/agentic/review-methodology/refs/deliverable-templates.md +246 -0
- package/skills/agentic/review-methodology/refs/issue-taxonomy-quality-testing.md +277 -0
- package/skills/agentic/review-methodology/refs/issue-taxonomy-reliability-safety.md +253 -0
- package/skills/agentic/trust-and-safety/SKILL.md +177 -0
- package/skills/agentic/trust-and-safety/refs/guardrails-actions.md +246 -0
- package/skills/agentic/trust-and-safety/refs/guardrails-input-output.md +238 -0
- package/skills/agentic/trust-and-safety/refs/guardrails-resources.md +209 -0
- package/skills/agentic/trust-and-safety/refs/safety-checklist-advanced.md +209 -0
- package/skills/agentic/trust-and-safety/refs/safety-checklist-core.md +215 -0
- package/skills/archetype/SKILL.md +104 -0
- package/skills/archetype/refs/build.md +142 -0
- package/skills/archetype/refs/decide.md +117 -0
- package/skills/archetype/refs/explore.md +66 -0
- package/skills/archetype/refs/incident.md +149 -0
- package/skills/archetype/refs/migrate.md +170 -0
- package/skills/archetype/refs/modernize.md +187 -0
- package/skills/archetype/refs/review.md +145 -0
- package/skills/archetype/refs/ship.md +117 -0
- package/skills/archetype/refs/specify.md +108 -0
- package/skills/archetype/refs/triage.md +62 -0
- package/skills/classify/SKILL.md +157 -0
- package/skills/data/analysis/SKILL.md +125 -0
- package/skills/data/analysis/refs/templates.md +170 -0
- package/skills/data/data/SKILL.md +118 -0
- package/skills/data/data/refs/examples.md +235 -0
- package/skills/data/ml/SKILL.md +125 -0
- package/skills/data/ml/refs/templates.md +172 -0
- package/skills/data/pipeline/SKILL.md +136 -0
- package/skills/data/pipeline/refs/templates.md +175 -0
- package/skills/data/refs/analyze.md +123 -0
- package/skills/data/refs/data.md +95 -0
- package/skills/data/refs/ml.md +118 -0
- package/skills/data/refs/pipeline.md +92 -0
- package/skills/deliberate/SKILL.md +125 -0
- package/skills/deliberate/refs/architecture-lens.md +37 -0
- package/skills/deliberate/refs/assumptions-lens.md +43 -0
- package/skills/deliberate/refs/code-lens.md +38 -0
- package/skills/deliberate/refs/content-lens.md +37 -0
- package/skills/deliberate/refs/data-lens.md +43 -0
- package/skills/deliberate/refs/design-lens.md +37 -0
- package/skills/deliberate/refs/opportunity-patterns.md +107 -0
- package/skills/deliberate/refs/ops-lens.md +43 -0
- package/skills/deliberate/refs/product-lens.md +46 -0
- package/skills/deliberate/refs/rethink-framework.md +77 -0
- package/skills/deliberate/refs/security-lens.md +47 -0
- package/skills/deliberate/refs/testing-lens.md +45 -0
- package/skills/deliberate/refs/timing-lens.md +42 -0
- package/skills/engineering/architecture/SKILL.md +177 -0
- package/skills/engineering/architecture/refs/adr-template.md +268 -0
- package/skills/engineering/architecture/refs/architecture-template-deployment.md +176 -0
- package/skills/engineering/architecture/refs/architecture-template-design.md +300 -0
- package/skills/engineering/architecture/refs/examples-ecommerce-analytics.md +299 -0
- package/skills/engineering/architecture/refs/examples-saas-trading.md +291 -0
- package/skills/engineering/architecture/refs/patterns-advanced.md +238 -0
- package/skills/engineering/architecture/refs/patterns-structural.md +303 -0
- package/skills/engineering/backend/SKILL.md +102 -0
- package/skills/engineering/backend/refs/checklists.md +146 -0
- package/skills/engineering/backend/refs/patterns.md +181 -0
- package/skills/engineering/debugging/SKILL.md +99 -0
- package/skills/engineering/debugging/refs/patterns.md +248 -0
- package/skills/engineering/debugging/refs/process.md +203 -0
- package/skills/engineering/docs/SKILL.md +97 -0
- package/skills/engineering/engineering/SKILL.md +88 -0
- package/skills/engineering/engineering/refs/checklists.md +91 -0
- package/skills/engineering/engineering/refs/templates.md +71 -0
- package/skills/engineering/frontend/SKILL.md +92 -0
- package/skills/engineering/frontend/refs/checklists.md +96 -0
- package/skills/engineering/frontend/refs/patterns.md +167 -0
- package/skills/engineering/integration/SKILL.md +183 -0
- package/skills/engineering/integration/refs/error-handling-best-practices.md +139 -0
- package/skills/engineering/integration/refs/error-handling-error-classes-typescript.md +212 -0
- package/skills/engineering/integration/refs/error-handling-error-response-format.md +301 -0
- package/skills/engineering/integration/refs/error-handling-retry-strategies.md +190 -0
- package/skills/engineering/integration/refs/event-schemas-best-practices.md +225 -0
- package/skills/engineering/integration/refs/event-schemas-event-naming-conventions.md +303 -0
- package/skills/engineering/integration/refs/event-schemas-event-structure.md +288 -0
- package/skills/engineering/integration/refs/graphql-best-practices.md +138 -0
- package/skills/engineering/integration/refs/graphql-error-handling.md +198 -0
- package/skills/engineering/integration/refs/graphql-graphql-basics.md +197 -0
- package/skills/engineering/integration/refs/graphql-query-examples.md +226 -0
- package/skills/engineering/integration/refs/graphql-schema-design-patterns.md +280 -0
- package/skills/engineering/integration/refs/grpc-grpc-overview.md +246 -0
- package/skills/engineering/integration/refs/grpc-implementation-examples.md +269 -0
- package/skills/engineering/integration/refs/grpc-metadata-headers.md +304 -0
- package/skills/engineering/integration/refs/grpc-testing.md +49 -0
- package/skills/engineering/integration/refs/openapi-template.yaml +682 -0
- package/skills/engineering/integration/refs/resilience-best-practices.md +109 -0
- package/skills/engineering/integration/refs/resilience-circuit-breaker-pattern.md +302 -0
- package/skills/engineering/integration/refs/resilience-rate-limiting.md +245 -0
- package/skills/engineering/integration/refs/resilience-timeout-pattern.md +212 -0
- package/skills/engineering/integration/refs/rest-api-fundamentals.md +299 -0
- package/skills/engineering/integration/refs/rest-api-responses-security.md +302 -0
- package/skills/engineering/integration/refs/versioning-breaking-changes.md +237 -0
- package/skills/engineering/integration/refs/versioning-migration-strategies.md +257 -0
- package/skills/engineering/integration/refs/versioning-versioning-strategies.md +296 -0
- package/skills/engineering/large-scale-migration/SKILL.md +65 -0
- package/skills/engineering/patch/SKILL.md +184 -0
- package/skills/engineering/refs/arch.md +126 -0
- package/skills/engineering/refs/debug.md +142 -0
- package/skills/engineering/refs/docs.md +190 -0
- package/skills/engineering/refs/plan.md +109 -0
- package/skills/engineering/refs/review.md +138 -0
- package/skills/engineering/system-design/SKILL.md +154 -0
- package/skills/engineering/system-design/refs/anti-patterns-big-ball-of-mud.md +254 -0
- package/skills/engineering/system-design/refs/anti-patterns-circular-dependencies.md +241 -0
- package/skills/engineering/system-design/refs/anti-patterns-feature-envy.md +168 -0
- package/skills/engineering/system-design/refs/anti-patterns-god-object.md +247 -0
- package/skills/engineering/system-design/refs/component-template-lifecycle.md +210 -0
- package/skills/engineering/system-design/refs/component-template-maintenance.md +219 -0
- package/skills/engineering/system-design/refs/component-template-structure.md +276 -0
- package/skills/engineering/system-design/refs/dependencies-best-practices.md +260 -0
- package/skills/engineering/system-design/refs/dependencies-dependency-principles.md +295 -0
- package/skills/engineering/system-design/refs/dependencies-dependency-tracking.md +261 -0
- package/skills/engineering/system-design/refs/interface-template-lifecycle.md +211 -0
- package/skills/engineering/system-design/refs/interface-template-maintenance.md +212 -0
- package/skills/engineering/system-design/refs/interface-template-structure.md +269 -0
- package/skills/engineering/system-design/refs/patterns-dependency-injection.md +151 -0
- package/skills/engineering/system-design/refs/patterns-facade-pattern.md +257 -0
- package/skills/engineering/system-design/refs/patterns-layered-pattern.md +204 -0
- package/skills/engineering/system-design/refs/patterns-plugin-architecture.md +229 -0
- package/skills/engineering/unit-test-quality/SKILL.md +194 -0
- package/skills/ground/SKILL.md +130 -0
- package/skills/integration-discovery/SKILL.md +168 -0
- package/skills/integration-discovery/refs/capabilities.md +282 -0
- package/skills/integration-discovery/refs/cli-detection.md +295 -0
- package/skills/integration-discovery/refs/discovery-sources.md +233 -0
- package/skills/integration-discovery/refs/task-patterns.md +206 -0
- package/skills/jam/SKILL.md +45 -0
- package/skills/jam/refs/facilitation-patterns.md +125 -0
- package/skills/jam/refs/quick.md +64 -0
- package/skills/jam/refs/synthesis-patterns.md +114 -0
- package/skills/multi-model/SKILL.md +168 -0
- package/skills/multi-model/refs/aichat.md +119 -0
- package/skills/multi-model/refs/aider.md +100 -0
- package/skills/multi-model/refs/auditability.md +238 -0
- package/skills/multi-model/refs/codex.md +169 -0
- package/skills/multi-model/refs/context.md +306 -0
- package/skills/multi-model/refs/copilot.md +161 -0
- package/skills/multi-model/refs/examples.md +224 -0
- package/skills/multi-model/refs/gemini.md +185 -0
- package/skills/multi-model/refs/goose.md +112 -0
- package/skills/multi-model/refs/llm.md +124 -0
- package/skills/multi-model/refs/opencode.md +196 -0
- package/skills/multi-model/refs/orchestration.md +188 -0
- package/skills/multi-model/refs/pi.md +208 -0
- package/skills/persona/SKILL.md +144 -0
- package/skills/persona/refs/define.md +133 -0
- package/skills/platform/actions/refs/actions.md +114 -0
- package/skills/platform/audit/SKILL.md +174 -0
- package/skills/platform/audit/refs/audit.md +145 -0
- package/skills/platform/audit/refs/checklists-evidence-operations.md +144 -0
- package/skills/platform/audit/refs/checklists-gdpr-pci-evidence.md +213 -0
- package/skills/platform/audit/refs/checklists-soc2-hipaa.md +120 -0
- package/skills/platform/audit/refs/frameworks-gdpr-pci.md +225 -0
- package/skills/platform/audit/refs/frameworks-soc2-hipaa.md +228 -0
- package/skills/platform/compliance/SKILL.md +169 -0
- package/skills/platform/compliance/refs/checklists.md +303 -0
- package/skills/platform/compliance/refs/compliance.md +117 -0
- package/skills/platform/compliance/refs/frameworks.md +282 -0
- package/skills/platform/errors/SKILL.md +183 -0
- package/skills/platform/errors/refs/patterns.md +271 -0
- package/skills/platform/errors/refs/severity.md +264 -0
- package/skills/platform/gate-benchmark-rebaseline/SKILL.md +108 -0
- package/skills/platform/gh/refs/gh.md +105 -0
- package/skills/platform/gh-cli/SKILL.md +120 -0
- package/skills/platform/gh-cli/refs/automation.md +63 -0
- package/skills/platform/gh-cli/refs/gh-ops.md +103 -0
- package/skills/platform/gh-cli/refs/patterns.md +132 -0
- package/skills/platform/gh-cli/scripts/gh_ops.py +454 -0
- package/skills/platform/github-actions/SKILL.md +159 -0
- package/skills/platform/github-actions/refs/security.md +150 -0
- package/skills/platform/github-actions/refs/templates.md +230 -0
- package/skills/platform/github-actions/refs/troubleshooting.md +174 -0
- package/skills/platform/github-actions/scripts/workflow_gen.py +215 -0
- package/skills/platform/gitlab-ci/SKILL.md +140 -0
- package/skills/platform/gitlab-ci/refs/templates.md +223 -0
- package/skills/platform/gitlab-ci/refs/troubleshooting.md +213 -0
- package/skills/platform/glab-cli/SKILL.md +133 -0
- package/skills/platform/glab-cli/refs/ci-debugging.md +95 -0
- package/skills/platform/glab-cli/refs/glab-ops.md +78 -0
- package/skills/platform/glab-cli/refs/patterns.md +131 -0
- package/skills/platform/glab-cli/scripts/glab_ops.py +313 -0
- package/skills/platform/health/SKILL.md +177 -0
- package/skills/platform/health/refs/health.md +72 -0
- package/skills/platform/health/refs/sources.md +302 -0
- package/skills/platform/incident/refs/incident.md +136 -0
- package/skills/platform/infra/refs/infra.md +104 -0
- package/skills/platform/observability/SKILL.md +128 -0
- package/skills/platform/observability/refs/toolchain-discovery.md +243 -0
- package/skills/platform/prereq-doctor/SKILL.md +57 -0
- package/skills/platform/prereq-doctor/refs/tool-registry.md +58 -0
- package/skills/platform/traces/refs/traces.md +101 -0
- package/skills/product/acceptance-criteria/SKILL.md +193 -0
- package/skills/product/acceptance-criteria/refs/ac-anti-patterns.md +291 -0
- package/skills/product/acceptance-criteria/refs/ac-examples.md +277 -0
- package/skills/product/accessibility/SKILL.md +197 -0
- package/skills/product/accessibility/refs/aria-patterns-basics.md +250 -0
- package/skills/product/accessibility/refs/aria-patterns-dynamic.md +187 -0
- package/skills/product/accessibility/refs/aria-patterns-interactive.md +246 -0
- package/skills/product/accessibility/refs/audit-report-findings.md +248 -0
- package/skills/product/accessibility/refs/audit-report-results.md +276 -0
- package/skills/product/accessibility/refs/common-violations-html-css.md +270 -0
- package/skills/product/accessibility/refs/common-violations-interactive.md +303 -0
- package/skills/product/accessibility/refs/keyboard-testing-basics.md +222 -0
- package/skills/product/accessibility/refs/keyboard-testing-patterns.md +173 -0
- package/skills/product/accessibility/refs/screen-reader-testing-advanced.md +294 -0
- package/skills/product/accessibility/refs/screen-reader-testing-commands.md +255 -0
- package/skills/product/accessibility/refs/wcag-checklist.md +262 -0
- package/skills/product/analyze/SKILL.md +164 -0
- package/skills/product/analyze/refs/algorithms.md +238 -0
- package/skills/product/analyze/refs/sentiment-patterns.md +180 -0
- package/skills/product/imagery/SKILL.md +97 -0
- package/skills/product/imagery/alter/SKILL.md +105 -0
- package/skills/product/imagery/alter/refs/editing-reference.md +146 -0
- package/skills/product/imagery/create/SKILL.md +109 -0
- package/skills/product/imagery/create/refs/prompt-engineering.md +112 -0
- package/skills/product/imagery/create/refs/provider-reference.md +219 -0
- package/skills/product/imagery/review/SKILL.md +101 -0
- package/skills/product/imagery/review/refs/analysis-lenses.md +136 -0
- package/skills/product/imagery/review/refs/quality-gates.md +153 -0
- package/skills/product/imagery/scripts/analyze.sh +23 -0
- package/skills/product/imagery/scripts/edit.sh +14 -0
- package/skills/product/imagery/scripts/generate.sh +13 -0
- package/skills/product/imagery/scripts/provider.py +787 -0
- package/skills/product/listen/SKILL.md +175 -0
- package/skills/product/listen/refs/channels.md +220 -0
- package/skills/product/mockup/SKILL.md +106 -0
- package/skills/product/mockup/refs/templates.md +95 -0
- package/skills/product/refs/a11y.md +109 -0
- package/skills/product/refs/acceptance.md +79 -0
- package/skills/product/refs/align.md +67 -0
- package/skills/product/refs/analyze.md +77 -0
- package/skills/product/refs/elicit.md +67 -0
- package/skills/product/refs/listen.md +58 -0
- package/skills/product/refs/mockup.md +77 -0
- package/skills/product/refs/screenshot.md +59 -0
- package/skills/product/refs/strategy.md +77 -0
- package/skills/product/refs/synthesize.md +54 -0
- package/skills/product/refs/ux-review.md +68 -0
- package/skills/product/refs/ux.md +101 -0
- package/skills/product/requirements-analysis/SKILL.md +136 -0
- package/skills/product/requirements-analysis/refs/requirements-example-auth.md +264 -0
- package/skills/product/requirements-analysis/refs/requirements-example-export-integration.md +88 -0
- package/skills/product/requirements-analysis/refs/requirements-output-format-template.md +247 -0
- package/skills/product/requirements-analysis/refs/user-story-guide.md +296 -0
- package/skills/product/requirements-graph/SKILL.md +155 -0
- package/skills/product/requirements-graph/refs/examples.md +223 -0
- package/skills/product/requirements-graph/refs/schema.md +162 -0
- package/skills/product/requirements-migrate/SKILL.md +90 -0
- package/skills/product/requirements-navigate/SKILL.md +141 -0
- package/skills/product/requirements-navigate/refs/meta-templates.md +141 -0
- package/skills/product/screenshot/SKILL.md +147 -0
- package/skills/product/strategy/SKILL.md +198 -0
- package/skills/product/strategy/refs/frameworks.md +295 -0
- package/skills/product/strategy/refs/templates-competitive-market.md +299 -0
- package/skills/product/strategy/refs/templates-roi-value.md +207 -0
- package/skills/product/synthesize/SKILL.md +116 -0
- package/skills/product/synthesize/refs/journey-mapping.md +212 -0
- package/skills/product/synthesize/refs/prioritization.md +193 -0
- package/skills/product/ux-review/SKILL.md +164 -0
- package/skills/product/visual-direction/SKILL.md +137 -0
- package/skills/product/visual-review/SKILL.md +131 -0
- package/skills/runtime-exec/SKILL.md +138 -0
- package/skills/search/codebase-narrator/SKILL.md +131 -0
- package/skills/search/codebase-narrator/refs/output-template.md +100 -0
- package/skills/smaht/SKILL.md +72 -0
- package/skills/smaht/discovery/SKILL.md +65 -0
- package/skills/smaht/intent/SKILL.md +89 -0
- package/skills/smaht/propose-skills/SKILL.md +142 -0
- package/skills/smaht/refs/state.md +76 -0
- package/skills/swarm/SKILL.md +132 -0
- package/skills/swarm/refs/fan-out.md +104 -0
- package/skills/swarm/refs/independent-verification.md +86 -0
- package/skills/swarm/refs/receipts-and-evidence.md +69 -0
- package/skills/swarm/refs/recon-synthesis.md +87 -0
- package/skills/swarm/refs/ship-discipline.md +90 -0
- package/skills/wickedizer/SKILL.md +147 -0
- package/skills/wickedizer/refs/artifact-types.md +238 -0
- package/skills/wickedizer/refs/complexity.md +278 -0
- package/skills/wickedizer/refs/de-ai-pass.md +140 -0
- package/skills/wickedizer/refs/failure-modes.md +249 -0
- package/skills/wickedizer/refs/patterns.md +282 -0
- package/skills/wickedizer/refs/review.md +221 -0
- package/skills/wickedizer/refs/structure.md +282 -0
- package/skills/wickedizer/refs/voice-profile.md +125 -0
- package/skills/workflow/SKILL.md +132 -0
- package/skills/workflow/refs/archetype-adjustments.md +205 -0
- package/skills/workflow/refs/evidence.md +58 -0
- package/skills/workflow/refs/integration.md +130 -0
- package/skills/workflow/refs/risk-dimension-signals.md +260 -0
- package/skills/workflow/refs/scoring-rubric.md +49 -0
- package/skills/workflow/refs/signal-keywords.md +176 -0
- package/skills/workflow/refs/specialist-routing-rules.md +159 -0
- package/skills/worktrees/SKILL.md +87 -0
- package/skills/worktrees/refs/recipes.md +96 -0
|
@@ -0,0 +1,208 @@
|
|
|
1
|
+
---
|
|
2
|
+
phase_relevance: ["design", "review"]
|
|
3
|
+
archetype_relevance: ["*"]
|
|
4
|
+
---
|
|
5
|
+
# Framework Migration Patterns: Testing, Rollback & Advanced Paths
|
|
6
|
+
|
|
7
|
+
Migration testing strategy, rollback planning, advanced migration paths, effort estimates, and when not to migrate.
|
|
8
|
+
|
|
9
|
+
## Advanced Migration Paths
|
|
10
|
+
|
|
11
|
+
### 5. Python Framework -> ADK (TypeScript)
|
|
12
|
+
|
|
13
|
+
**Scenario:** Migrating Python codebase to TypeScript.
|
|
14
|
+
|
|
15
|
+
**Motivation:**
|
|
16
|
+
- Team transitioning to TypeScript
|
|
17
|
+
- Want ADK's production features
|
|
18
|
+
- Building on Claude exclusively
|
|
19
|
+
|
|
20
|
+
**Strategy:**
|
|
21
|
+
|
|
22
|
+
**Step 1:** Port Agent Logic
|
|
23
|
+
```python
|
|
24
|
+
# Before: Python (any framework)
|
|
25
|
+
class ReviewAgent:
|
|
26
|
+
def review(self, code):
|
|
27
|
+
return llm.generate(f"Review: {code}")
|
|
28
|
+
|
|
29
|
+
# After: TypeScript (ADK)
|
|
30
|
+
const reviewAgent = new Agent({
|
|
31
|
+
name: 'reviewer',
|
|
32
|
+
instructions: 'You review code.',
|
|
33
|
+
model: 'claude-opus-4-6'
|
|
34
|
+
});
|
|
35
|
+
```
|
|
36
|
+
|
|
37
|
+
**Step 2:** Port Tools
|
|
38
|
+
```python
|
|
39
|
+
# Before: Python
|
|
40
|
+
def analyze_code(code: str) -> dict:
|
|
41
|
+
return {"issues": [...]}
|
|
42
|
+
|
|
43
|
+
# After: TypeScript
|
|
44
|
+
const analyzeCodeTool = {
|
|
45
|
+
name: 'analyze_code',
|
|
46
|
+
description: 'Analyze code for issues',
|
|
47
|
+
parameters: {
|
|
48
|
+
type: 'object',
|
|
49
|
+
properties: {
|
|
50
|
+
code: { type: 'string' }
|
|
51
|
+
}
|
|
52
|
+
},
|
|
53
|
+
handler: async (params: { code: string }) => {
|
|
54
|
+
return { issues: [...] };
|
|
55
|
+
}
|
|
56
|
+
};
|
|
57
|
+
```
|
|
58
|
+
|
|
59
|
+
**Gotchas:**
|
|
60
|
+
- Async patterns differ (promises vs async/await)
|
|
61
|
+
- Type systems differ
|
|
62
|
+
- Tool definitions have different formats
|
|
63
|
+
- Testing frameworks differ
|
|
64
|
+
|
|
65
|
+
**Effort:** High (4-8 weeks for large codebase)
|
|
66
|
+
|
|
67
|
+
### 6. Single-Provider -> Multi-Provider
|
|
68
|
+
|
|
69
|
+
**Scenario:** Locked into one LLM provider, want flexibility.
|
|
70
|
+
|
|
71
|
+
**Motivation:**
|
|
72
|
+
- Want to A/B test providers
|
|
73
|
+
- Cost optimization
|
|
74
|
+
- Failover capability
|
|
75
|
+
|
|
76
|
+
**Strategy:**
|
|
77
|
+
|
|
78
|
+
**Step 1:** Abstract LLM Client
|
|
79
|
+
```python
|
|
80
|
+
# Before: Direct provider calls
|
|
81
|
+
response = anthropic.messages.create(...)
|
|
82
|
+
|
|
83
|
+
# After: Abstracted
|
|
84
|
+
class LLMClient:
|
|
85
|
+
def generate(self, messages, model):
|
|
86
|
+
if model.startswith('claude'):
|
|
87
|
+
return self._call_anthropic(messages, model)
|
|
88
|
+
elif model.startswith('gpt'):
|
|
89
|
+
return self._call_openai(messages, model)
|
|
90
|
+
```
|
|
91
|
+
|
|
92
|
+
**Step 2:** Use Multi-Provider Framework
|
|
93
|
+
```python
|
|
94
|
+
# LangChain/LangGraph support multiple providers
|
|
95
|
+
from langchain_anthropic import ChatAnthropic
|
|
96
|
+
from langchain_openai import ChatOpenAI
|
|
97
|
+
|
|
98
|
+
llm = ChatAnthropic(model="claude-opus-4")
|
|
99
|
+
# Or
|
|
100
|
+
llm = ChatOpenAI(model="gpt-4-turbo")
|
|
101
|
+
```
|
|
102
|
+
|
|
103
|
+
**Gotchas:**
|
|
104
|
+
- Different providers have different features
|
|
105
|
+
- Output formats may vary
|
|
106
|
+
- Cost per token differs
|
|
107
|
+
- Rate limits differ
|
|
108
|
+
|
|
109
|
+
**Effort:** Low-Medium (1-2 weeks)
|
|
110
|
+
|
|
111
|
+
## Migration Testing Strategy
|
|
112
|
+
|
|
113
|
+
### 1. Equivalence Testing
|
|
114
|
+
|
|
115
|
+
Run both old and new system in parallel, compare outputs:
|
|
116
|
+
|
|
117
|
+
```python
|
|
118
|
+
async def equivalence_test(input):
|
|
119
|
+
old_result = await old_agent.process(input)
|
|
120
|
+
new_result = await new_agent.process(input)
|
|
121
|
+
|
|
122
|
+
similarity = compare_outputs(old_result, new_result)
|
|
123
|
+
if similarity < 0.9:
|
|
124
|
+
log_discrepancy(input, old_result, new_result)
|
|
125
|
+
|
|
126
|
+
return similarity
|
|
127
|
+
```
|
|
128
|
+
|
|
129
|
+
### 2. Shadow Testing
|
|
130
|
+
|
|
131
|
+
Route production traffic to both, use old result:
|
|
132
|
+
|
|
133
|
+
```python
|
|
134
|
+
async def shadow_process(input):
|
|
135
|
+
# Production (old)
|
|
136
|
+
result = await old_agent.process(input)
|
|
137
|
+
|
|
138
|
+
# Shadow (new) - don't await
|
|
139
|
+
asyncio.create_task(new_agent.process(input))
|
|
140
|
+
|
|
141
|
+
return result
|
|
142
|
+
```
|
|
143
|
+
|
|
144
|
+
### 3. Gradual Rollout
|
|
145
|
+
|
|
146
|
+
Slowly increase traffic to new system:
|
|
147
|
+
|
|
148
|
+
```python
|
|
149
|
+
async def gradual_rollout(input, percentage=10):
|
|
150
|
+
if random.random() * 100 < percentage:
|
|
151
|
+
return await new_agent.process(input)
|
|
152
|
+
else:
|
|
153
|
+
return await old_agent.process(input)
|
|
154
|
+
```
|
|
155
|
+
|
|
156
|
+
## Rollback Planning
|
|
157
|
+
|
|
158
|
+
Always have a rollback plan:
|
|
159
|
+
|
|
160
|
+
1. **Feature Flags:** Quick disable of new system
|
|
161
|
+
2. **Version Routing:** Route to old version instantly
|
|
162
|
+
3. **Database Compatibility:** Ensure schemas compatible
|
|
163
|
+
4. **Monitoring:** Alert on regressions immediately
|
|
164
|
+
|
|
165
|
+
```python
|
|
166
|
+
class FeatureFlag:
|
|
167
|
+
def __init__(self):
|
|
168
|
+
self.use_new_agent = False
|
|
169
|
+
|
|
170
|
+
async def process(self, input):
|
|
171
|
+
if self.use_new_agent:
|
|
172
|
+
return await new_agent.process(input)
|
|
173
|
+
else:
|
|
174
|
+
return await old_agent.process(input)
|
|
175
|
+
```
|
|
176
|
+
|
|
177
|
+
## Migration Effort Estimates
|
|
178
|
+
|
|
179
|
+
| Migration Path | Typical Effort | Risk Level |
|
|
180
|
+
|----------------|----------------|------------|
|
|
181
|
+
| Custom -> Framework | 2-4 weeks | Medium |
|
|
182
|
+
| LangChain -> LangGraph | 1-2 weeks | Low |
|
|
183
|
+
| CrewAI -> LangGraph | 2-3 weeks | Medium |
|
|
184
|
+
| AutoGen -> LangGraph | 3-4 weeks | Medium |
|
|
185
|
+
| Python -> TypeScript (ADK) | 4-8 weeks | High |
|
|
186
|
+
| Single -> Multi-Provider | 1-2 weeks | Low |
|
|
187
|
+
|
|
188
|
+
## Post-Migration Checklist
|
|
189
|
+
|
|
190
|
+
- [ ] All tests passing
|
|
191
|
+
- [ ] Equivalence testing shows >95% similarity
|
|
192
|
+
- [ ] Performance metrics maintained or improved
|
|
193
|
+
- [ ] Cost per request unchanged or improved
|
|
194
|
+
- [ ] Monitoring and alerting migrated
|
|
195
|
+
- [ ] Documentation updated
|
|
196
|
+
- [ ] Team trained on new framework
|
|
197
|
+
- [ ] Old code removed or archived
|
|
198
|
+
- [ ] Rollback plan tested
|
|
199
|
+
|
|
200
|
+
## When NOT to Migrate
|
|
201
|
+
|
|
202
|
+
Don't migrate if:
|
|
203
|
+
- Current system is stable and meets needs
|
|
204
|
+
- Migration cost exceeds benefits
|
|
205
|
+
- Team lacks expertise in target framework
|
|
206
|
+
- No clear improvement in capabilities
|
|
207
|
+
- Close to sunsetting the product
|
|
208
|
+
- Migration would delay critical features
|
|
@@ -0,0 +1,134 @@
|
|
|
1
|
+
# agentic:audit — 8-Layer Trust & Safety Audit Rubric
|
|
2
|
+
|
|
3
|
+
Full rubric sourced from `agents/agentic/safety-reviewer.md` and
|
|
4
|
+
`skills/agentic/trust-and-safety/`. Apply every layer to the target codebase.
|
|
5
|
+
|
|
6
|
+
## Layer 1: Tool Risk Classification
|
|
7
|
+
|
|
8
|
+
Inventory every tool the agent can invoke. For each, classify:
|
|
9
|
+
- **Capability**: read-only | side-effecting | destructive | external-comms
|
|
10
|
+
- **Scope**: local | cross-agent | external-system
|
|
11
|
+
- **Reversibility**: reversible | irreversible
|
|
12
|
+
|
|
13
|
+
Tag CRITICAL if destructive + irreversible (e.g. delete, payment, email-send).
|
|
14
|
+
|
|
15
|
+
## Layer 2: HITL Gate Verification
|
|
16
|
+
|
|
17
|
+
Check that every CRITICAL/HIGH-risk tool has a human-in-the-loop gate:
|
|
18
|
+
|
|
19
|
+
- [ ] Gate trigger is explicit (confidence < threshold OR action in CRITICAL_ACTIONS)
|
|
20
|
+
- [ ] Approval workflow exists (sync or async) with defined timeout
|
|
21
|
+
- [ ] Fallback on no-response is deny (fail-safe), not allow
|
|
22
|
+
- [ ] Reviewer decisions are tracked with audit trail
|
|
23
|
+
|
|
24
|
+
Patterns (from `refs/guardrails-actions.md`):
|
|
25
|
+
```python
|
|
26
|
+
async def execute_with_approval(action, threshold=0.8):
|
|
27
|
+
if action.confidence < threshold or action.is_high_stakes():
|
|
28
|
+
approval = await request_human_approval(action)
|
|
29
|
+
if not approval.approved:
|
|
30
|
+
raise ApprovalDenied(approval.reason)
|
|
31
|
+
return await action.execute()
|
|
32
|
+
```
|
|
33
|
+
|
|
34
|
+
## Layer 3: PII Handling
|
|
35
|
+
|
|
36
|
+
Search for PII patterns in inputs, outputs, and logs:
|
|
37
|
+
|
|
38
|
+
```bash
|
|
39
|
+
grep -r "[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+" --include="*.log" .
|
|
40
|
+
grep -r "\b\d{3}-\d{2}-\d{4}\b" . # SSN
|
|
41
|
+
grep -r "\b\d{4}[- ]?\d{4}[- ]?\d{4}" . # CC
|
|
42
|
+
```
|
|
43
|
+
|
|
44
|
+
Checklist:
|
|
45
|
+
- [ ] PII detection at entry points
|
|
46
|
+
- [ ] PII redacted in logs and outputs (`[REDACTED_EMAIL]`, etc.)
|
|
47
|
+
- [ ] No PII in plaintext storage
|
|
48
|
+
- [ ] Retention policy defined
|
|
49
|
+
|
|
50
|
+
## Layer 4: Prompt Injection Defense
|
|
51
|
+
|
|
52
|
+
Direct injection — check for unvalidated string concatenation:
|
|
53
|
+
|
|
54
|
+
```bash
|
|
55
|
+
grep -r "f\"{.*user.*}\"" --include="*.py" .
|
|
56
|
+
grep -r "prompt + user_input" .
|
|
57
|
+
```
|
|
58
|
+
|
|
59
|
+
Indirect injection — check for untrusted external content included in prompts
|
|
60
|
+
(URL fetches, RAG documents, search results).
|
|
61
|
+
|
|
62
|
+
Checklist:
|
|
63
|
+
- [ ] Clear delimiters separate system / user content
|
|
64
|
+
- [ ] Injection patterns detected and blocked
|
|
65
|
+
- [ ] External content sanitized before prompt inclusion
|
|
66
|
+
|
|
67
|
+
## Layer 5: AuthN / AuthZ
|
|
68
|
+
|
|
69
|
+
- [ ] Agents use least-privilege credentials
|
|
70
|
+
- [ ] Tool access is role-gated (not open to all agents)
|
|
71
|
+
- [ ] Credentials are not logged or exposed in error messages
|
|
72
|
+
|
|
73
|
+
## Layer 6: Rate Limits & Quotas
|
|
74
|
+
|
|
75
|
+
- [ ] Per-user and per-session quotas defined
|
|
76
|
+
- [ ] Circuit breaker opens after N failures
|
|
77
|
+
- [ ] Rate limit headers / retry-after respected when calling external APIs
|
|
78
|
+
|
|
79
|
+
## Layer 7: Observability
|
|
80
|
+
|
|
81
|
+
- [ ] All agent actions logged with structured fields (action, user_id, params, result)
|
|
82
|
+
- [ ] Audit log is append-only and tamper-evident
|
|
83
|
+
- [ ] Monitoring alerts on CRITICAL findings or anomalous action rates
|
|
84
|
+
|
|
85
|
+
## Layer 8: Failure Modes
|
|
86
|
+
|
|
87
|
+
- [ ] Errors fail toward safety (deny by default)
|
|
88
|
+
- [ ] No bare `except Exception: pass` swallowing errors silently
|
|
89
|
+
- [ ] External API failures produce a safe fallback response (not a crash)
|
|
90
|
+
- [ ] Kill switch exists to halt all operations + alert admins
|
|
91
|
+
|
|
92
|
+
## Compliance Extensions
|
|
93
|
+
|
|
94
|
+
When `--standard` is given, append the matching checklist:
|
|
95
|
+
|
|
96
|
+
| Standard | Layer emphasis |
|
|
97
|
+
|----------|---------------|
|
|
98
|
+
| GDPR | Layer 3 (PII) + retention + right-to-erasure |
|
|
99
|
+
| HIPAA | Layer 3 PHI encryption at rest + in transit |
|
|
100
|
+
| SOC 2 | Layers 5, 6, 7 (access control, rate limits, audit) |
|
|
101
|
+
| NIST AI RMF | All 8 layers with severity scoring |
|
|
102
|
+
|
|
103
|
+
## Output Format
|
|
104
|
+
|
|
105
|
+
```markdown
|
|
106
|
+
## Trust & Safety Audit: {Project}
|
|
107
|
+
|
|
108
|
+
**Date**: {date} | **Standard**: {standard or none} | **Risk Level**: {CRITICAL|HIGH|MEDIUM|LOW}
|
|
109
|
+
|
|
110
|
+
### Risk Profile
|
|
111
|
+
|
|
112
|
+
| Layer | Status | Critical | High | Medium | Low |
|
|
113
|
+
|-------|--------|----------|------|--------|-----|
|
|
114
|
+
| Tool Risk | {PASS/FAIL} | … | … | … | … |
|
|
115
|
+
| HITL Gates | {PASS/FAIL} | … | … | … | … |
|
|
116
|
+
| PII Handling | {PASS/FAIL} | … | … | … | … |
|
|
117
|
+
| Prompt Injection | {PASS/FAIL} | … | … | … | … |
|
|
118
|
+
| AuthN/AuthZ | {PASS/FAIL} | … | … | … | … |
|
|
119
|
+
| Rate Limits | {PASS/FAIL} | … | … | … | … |
|
|
120
|
+
| Observability | {PASS/FAIL} | … | … | … | … |
|
|
121
|
+
| Failure Modes | {PASS/FAIL} | … | … | … | … |
|
|
122
|
+
|
|
123
|
+
### Findings (CRITICAL and HIGH only — list all)
|
|
124
|
+
|
|
125
|
+
**CRITICAL**: {file:line} — {description} — Fix: {specific action}
|
|
126
|
+
|
|
127
|
+
### Remediation Roadmap
|
|
128
|
+
|
|
129
|
+
P0 (fix immediately): …
|
|
130
|
+
P1 (before production): …
|
|
131
|
+
P2 (next sprint): …
|
|
132
|
+
```
|
|
133
|
+
|
|
134
|
+
When `--scenarios` is set, emit a `wicked-scenarios` block for each CRITICAL/HIGH finding.
|
|
@@ -0,0 +1,137 @@
|
|
|
1
|
+
# agentic:design — Interactive Agentic Architecture Design Rubric
|
|
2
|
+
|
|
3
|
+
Full rubric sourced from `agents/agentic/architect.md` and
|
|
4
|
+
`skills/agentic/agentic-patterns/`. Use for greenfield agentic system design.
|
|
5
|
+
|
|
6
|
+
## Phase 1: Requirements Gathering
|
|
7
|
+
|
|
8
|
+
If no problem statement is supplied, ask 3–5 clarifying questions:
|
|
9
|
+
|
|
10
|
+
1. What is the primary task the agentic system must accomplish?
|
|
11
|
+
2. What tools / APIs / external systems must it interact with?
|
|
12
|
+
3. What are the concurrency and latency requirements?
|
|
13
|
+
4. What safety constraints apply (PII, HITL, compliance)?
|
|
14
|
+
5. What framework preferences or constraints exist?
|
|
15
|
+
|
|
16
|
+
## Phase 2: Pattern Selection
|
|
17
|
+
|
|
18
|
+
Pick from the agentic pattern catalog (`skills/agentic/agentic-patterns/refs/pattern-catalog.md`):
|
|
19
|
+
|
|
20
|
+
| Pattern | Use when |
|
|
21
|
+
|---------|---------|
|
|
22
|
+
| Scatter-Gather | Independent parallel lookups → aggregate |
|
|
23
|
+
| Pipeline | Sequential stages, each depending on prior |
|
|
24
|
+
| Router | Different input types → specialized agents |
|
|
25
|
+
| Retry with Fallback | Transient failures expected |
|
|
26
|
+
| Orchestrator / Subagents | Complex delegation with state |
|
|
27
|
+
| Event-Driven | Decoupled, reactive workflows |
|
|
28
|
+
|
|
29
|
+
## Phase 3: Five-Layer Architecture
|
|
30
|
+
|
|
31
|
+
Render a five-layer breakdown for the proposed system:
|
|
32
|
+
|
|
33
|
+
### Layer 1: Cognition
|
|
34
|
+
- Agent roles and single-responsibility assignments
|
|
35
|
+
- Reasoning pattern (ReAct, CoT, plan-and-execute)
|
|
36
|
+
- Task decomposition strategy
|
|
37
|
+
- Prompt versioning approach
|
|
38
|
+
|
|
39
|
+
### Layer 2: Context
|
|
40
|
+
- Memory scope (global vs. agent-local)
|
|
41
|
+
- State checkpointing strategy
|
|
42
|
+
- Context window budget (see `skills/agentic/context-engineering/`)
|
|
43
|
+
- Cleanup / archival policy
|
|
44
|
+
|
|
45
|
+
### Layer 3: Interaction
|
|
46
|
+
- Tool inventory with capability + risk classification
|
|
47
|
+
- External API contracts
|
|
48
|
+
- Multi-agent communication protocol
|
|
49
|
+
- Graceful degradation for tool failures
|
|
50
|
+
|
|
51
|
+
### Layer 4: Runtime
|
|
52
|
+
- Orchestration pattern (sequential | parallel | dynamic)
|
|
53
|
+
- Error handling and retry logic
|
|
54
|
+
- Resource quotas (max turns, max tokens, timeouts)
|
|
55
|
+
- Observability (structured logging, tracing, metrics)
|
|
56
|
+
|
|
57
|
+
### Layer 5: Governance
|
|
58
|
+
- Input / output validation points
|
|
59
|
+
- HITL gate placement (use Layer 3 tool risk to position)
|
|
60
|
+
- Audit logging requirements
|
|
61
|
+
- Compliance constraints
|
|
62
|
+
|
|
63
|
+
## Phase 4: Safety Section
|
|
64
|
+
|
|
65
|
+
Apply the 8-layer trust-and-safety checklist from `skills/agentic/refs/audit.md`
|
|
66
|
+
to the proposed architecture. For a design review, focus on:
|
|
67
|
+
|
|
68
|
+
- Tool risk classification (Layer 1 of audit)
|
|
69
|
+
- HITL gate placement (Layer 2 of audit)
|
|
70
|
+
- PII touchpoints (Layer 3 of audit)
|
|
71
|
+
- Prompt injection exposure (Layer 4 of audit)
|
|
72
|
+
- Failure mode defaults (Layer 8 of audit)
|
|
73
|
+
|
|
74
|
+
## Phase 5: Framework Recommendation
|
|
75
|
+
|
|
76
|
+
Using `skills/agentic/frameworks/SKILL.md` decision tree:
|
|
77
|
+
|
|
78
|
+
| Requirement | Recommended framework |
|
|
79
|
+
|-------------|----------------------|
|
|
80
|
+
| Complex state + loops | LangGraph |
|
|
81
|
+
| Role-based team | CrewAI or ADK |
|
|
82
|
+
| RAG-heavy | LlamaIndex Agents |
|
|
83
|
+
| TypeScript / Claude-only | Anthropic ADK |
|
|
84
|
+
| Type-safe Python | Pydantic AI |
|
|
85
|
+
| Multi-agent conversation | AutoGen |
|
|
86
|
+
|
|
87
|
+
## Output Format
|
|
88
|
+
|
|
89
|
+
```markdown
|
|
90
|
+
## Agentic Architecture Design: {System Name}
|
|
91
|
+
|
|
92
|
+
**Date**: {date} | **Pattern**: {chosen pattern} | **Framework**: {recommendation}
|
|
93
|
+
|
|
94
|
+
### Problem Statement
|
|
95
|
+
|
|
96
|
+
{refined from clarifying questions}
|
|
97
|
+
|
|
98
|
+
### Five-Layer Architecture
|
|
99
|
+
|
|
100
|
+
#### Layer 1: Cognition
|
|
101
|
+
{agent roster, roles, reasoning patterns}
|
|
102
|
+
|
|
103
|
+
#### Layer 2: Context
|
|
104
|
+
{memory strategy, state, checkpointing}
|
|
105
|
+
|
|
106
|
+
#### Layer 3: Interaction
|
|
107
|
+
{tool inventory with risk tier, API contracts}
|
|
108
|
+
|
|
109
|
+
#### Layer 4: Runtime
|
|
110
|
+
{orchestration, error handling, resource limits, observability}
|
|
111
|
+
|
|
112
|
+
#### Layer 5: Governance
|
|
113
|
+
{HITL gates, validation points, audit, compliance}
|
|
114
|
+
|
|
115
|
+
### Architecture Diagram
|
|
116
|
+
|
|
117
|
+
```mermaid
|
|
118
|
+
graph TB
|
|
119
|
+
User --> Orchestrator
|
|
120
|
+
Orchestrator --> AgentA & AgentB
|
|
121
|
+
AgentA --> ToolX
|
|
122
|
+
AgentB --> ToolY
|
|
123
|
+
```
|
|
124
|
+
|
|
125
|
+
### Safety Validation
|
|
126
|
+
|
|
127
|
+
{8-layer safety checklist results — flag any CRITICAL/HIGH risks}
|
|
128
|
+
|
|
129
|
+
### Next Steps
|
|
130
|
+
|
|
131
|
+
1. {critical action}
|
|
132
|
+
2. {high action}
|
|
133
|
+
3. {medium action}
|
|
134
|
+
|
|
135
|
+
→ Use `agentic:review` to assess once code is written.
|
|
136
|
+
→ Use `agentic:audit` for compliance-grade evidence before production.
|
|
137
|
+
```
|
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
# agentic:frameworks — Framework Selection / Comparison Rubric
|
|
2
|
+
|
|
3
|
+
Full rubric sourced from `agents/agentic/framework-researcher.md` and
|
|
4
|
+
`skills/agentic/frameworks/SKILL.md`. Use for framework selection, comparison,
|
|
5
|
+
or the interactive wizard. Always use WebSearch for latest 2026 ecosystem state.
|
|
6
|
+
|
|
7
|
+
## Mode Detection
|
|
8
|
+
|
|
9
|
+
| Args | Mode |
|
|
10
|
+
|------|------|
|
|
11
|
+
| `--compare fw1,fw2,...` | Side-by-side comparison table |
|
|
12
|
+
| `--language` / `--use-case` only | Filtered selection guide |
|
|
13
|
+
| No args | Interactive 5-question wizard |
|
|
14
|
+
|
|
15
|
+
## Wizard (no args)
|
|
16
|
+
|
|
17
|
+
Ask in order (do not batch):
|
|
18
|
+
|
|
19
|
+
1. What is the primary task? (RAG, stateful workflows, role-based team, conversational, pipeline)
|
|
20
|
+
2. What language/runtime? (Python, TypeScript, C#, any)
|
|
21
|
+
3. What's the team's experience level? (beginner, intermediate, expert)
|
|
22
|
+
4. What are the production constraints? (cloud vendor, compliance, existing infra)
|
|
23
|
+
5. What is the expected scale? (prototype, small prod, high-volume)
|
|
24
|
+
|
|
25
|
+
Use answers to pick from the decision tree below.
|
|
26
|
+
|
|
27
|
+
## Decision Tree
|
|
28
|
+
|
|
29
|
+
```
|
|
30
|
+
Primary use case?
|
|
31
|
+
├─ Complex stateful workflow with branches/loops → LangGraph
|
|
32
|
+
├─ Role-based team of agents → CrewAI or ADK
|
|
33
|
+
├─ RAG-heavy application → LlamaIndex Agents
|
|
34
|
+
├─ Multi-agent conversations/debates → AutoGen
|
|
35
|
+
├─ Simple sequential — TypeScript → ADK
|
|
36
|
+
├─ Simple sequential — Python → Pydantic AI or LangChain
|
|
37
|
+
├─ Production pipeline → Haystack or ADK
|
|
38
|
+
└─ Maximum flexibility → LangGraph or build from scratch
|
|
39
|
+
```
|
|
40
|
+
|
|
41
|
+
## Comparison Table (current as of 2026 — verify with WebSearch)
|
|
42
|
+
|
|
43
|
+
| Feature | LangGraph | CrewAI | AutoGen | ADK | Pydantic AI |
|
|
44
|
+
|---------|-----------|--------|---------|-----|-------------|
|
|
45
|
+
| State management | ✅ StateGraph | ✅ Memory | ✅ GroupChat | ✅ Built-in | ❌ Manual |
|
|
46
|
+
| Multi-agent | ✅ Subgraphs | ✅ Crew | ✅ Native | ✅ Agents | ⚠️ Custom |
|
|
47
|
+
| HITL | ✅ Interrupts | ⚠️ Custom | ✅ human_proxy | ✅ Native | ⚠️ Custom |
|
|
48
|
+
| Streaming | ✅ Native | ⚠️ Limited | ✅ Native | ✅ Native | ✅ Native |
|
|
49
|
+
| Checkpointing | ✅ Built-in | ❌ No | ❌ No | ✅ Built-in | ❌ No |
|
|
50
|
+
| Learning curve | Medium | Low | Medium | Medium | Low |
|
|
51
|
+
| Production readiness | ✅ Stable | ⚠️ Evolving | ✅ Stable | ⚠️ Growing | ⚠️ New |
|
|
52
|
+
|
|
53
|
+
**Legend**: ✅ Strong | ⚠️ Partial | ❌ Not available
|
|
54
|
+
|
|
55
|
+
## Framework Scoring Template (comparison mode)
|
|
56
|
+
|
|
57
|
+
For each framework in `--compare`:
|
|
58
|
+
|
|
59
|
+
```markdown
|
|
60
|
+
## {Framework} — Score: {total}/100
|
|
61
|
+
|
|
62
|
+
**Version** (from WebSearch): {latest stable}
|
|
63
|
+
**Community** (from WebSearch): {GitHub stars, Discord, activity}
|
|
64
|
+
|
|
65
|
+
| Requirement | Weight | Score | Weighted | Notes |
|
|
66
|
+
|-------------|--------|-------|----------|-------|
|
|
67
|
+
| Multi-agent coordination | 10 | {0-10} | {w*s} | |
|
|
68
|
+
| State management | 8 | | | |
|
|
69
|
+
| HITL support | 7 | | | |
|
|
70
|
+
| Observability | 6 | | | |
|
|
71
|
+
| Learning curve | 5 | | | |
|
|
72
|
+
| Community support | 5 | | | |
|
|
73
|
+
| Production readiness | 9 | | | |
|
|
74
|
+
| **Total** | **50** | | **{sum}** | |
|
|
75
|
+
|
|
76
|
+
**Best for**: {use case}
|
|
77
|
+
**Not ideal for**: {anti-use-case}
|
|
78
|
+
**Latest news**: {from WebSearch}
|
|
79
|
+
```
|
|
80
|
+
|
|
81
|
+
## Output Format
|
|
82
|
+
|
|
83
|
+
End every output with a pointer to the next step:
|
|
84
|
+
|
|
85
|
+
```
|
|
86
|
+
→ Next: `/wicked-garden:agentic:design` to turn this framework choice into a five-layer architecture.
|
|
87
|
+
```
|
|
88
|
+
|
|
89
|
+
For comparison mode, render the Decision Matrix:
|
|
90
|
+
|
|
91
|
+
```markdown
|
|
92
|
+
## Framework Decision Matrix
|
|
93
|
+
|
|
94
|
+
| Framework | Score/100 | Recommendation |
|
|
95
|
+
|-----------|-----------|----------------|
|
|
96
|
+
| {fw} | {n} | RECOMMEND / CONSIDER / AVOID |
|
|
97
|
+
|
|
98
|
+
**Top recommendation**: {framework} — {one-line rationale}
|
|
99
|
+
**Runner-up**: {framework}
|
|
100
|
+
```
|
|
101
|
+
|
|
102
|
+
For wizard mode, render a single recommendation with rationale referencing the user's answers.
|