@baselane/packs 0.1.5 → 0.1.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +2 -2
- package/packs/full-harness/pack.json +3093 -0
- package/packs/full-harness/rendered/.claude/agents/a11y-architect.md +138 -0
- package/packs/full-harness/rendered/.claude/agents/agent-evaluator.md +206 -0
- package/packs/full-harness/rendered/.claude/agents/architect.md +209 -0
- package/packs/full-harness/rendered/.claude/agents/build-error-resolver.md +114 -0
- package/packs/full-harness/rendered/.claude/agents/chief-of-staff.md +149 -0
- package/packs/full-harness/rendered/.claude/agents/code-architect.md +71 -0
- package/packs/full-harness/rendered/.claude/agents/code-explorer.md +69 -0
- package/packs/full-harness/rendered/.claude/agents/code-reviewer.md +312 -0
- package/packs/full-harness/rendered/.claude/agents/code-simplifier.md +47 -0
- package/packs/full-harness/rendered/.claude/agents/comment-analyzer.md +45 -0
- package/packs/full-harness/rendered/.claude/agents/conversation-analyzer.md +52 -0
- package/packs/full-harness/rendered/.claude/agents/cpp-build-resolver.md +90 -0
- package/packs/full-harness/rendered/.claude/agents/cpp-reviewer.md +64 -0
- package/packs/full-harness/rendered/.claude/agents/csharp-reviewer.md +93 -0
- package/packs/full-harness/rendered/.claude/agents/dart-build-resolver.md +201 -0
- package/packs/full-harness/rendered/.claude/agents/database-reviewer.md +91 -0
- package/packs/full-harness/rendered/.claude/agents/django-build-resolver.md +243 -0
- package/packs/full-harness/rendered/.claude/agents/django-reviewer.md +149 -0
- package/packs/full-harness/rendered/.claude/agents/doc-updater.md +107 -0
- package/packs/full-harness/rendered/.claude/agents/docs-lookup.md +64 -0
- package/packs/full-harness/rendered/.claude/agents/e2e-runner.md +107 -0
- package/packs/full-harness/rendered/.claude/agents/fastapi-reviewer.md +68 -0
- package/packs/full-harness/rendered/.claude/agents/flutter-reviewer.md +241 -0
- package/packs/full-harness/rendered/.claude/agents/fsharp-reviewer.md +92 -0
- package/packs/full-harness/rendered/.claude/agents/gan-evaluator.md +206 -0
- package/packs/full-harness/rendered/.claude/agents/gan-generator.md +128 -0
- package/packs/full-harness/rendered/.claude/agents/gan-planner.md +96 -0
- package/packs/full-harness/rendered/.claude/agents/go-build-resolver.md +94 -0
- package/packs/full-harness/rendered/.claude/agents/go-reviewer.md +68 -0
- package/packs/full-harness/rendered/.claude/agents/harmonyos-app-resolver.md +173 -0
- package/packs/full-harness/rendered/.claude/agents/harness-optimizer.md +32 -0
- package/packs/full-harness/rendered/.claude/agents/healthcare-reviewer.md +83 -0
- package/packs/full-harness/rendered/.claude/agents/homelab-architect.md +94 -0
- package/packs/full-harness/rendered/.claude/agents/java-build-resolver.md +266 -0
- package/packs/full-harness/rendered/.claude/agents/java-reviewer.md +179 -0
- package/packs/full-harness/rendered/.claude/agents/kotlin-build-resolver.md +118 -0
- package/packs/full-harness/rendered/.claude/agents/kotlin-reviewer.md +157 -0
- package/packs/full-harness/rendered/.claude/agents/loop-operator.md +33 -0
- package/packs/full-harness/rendered/.claude/agents/marketing-agent.md +141 -0
- package/packs/full-harness/rendered/.claude/agents/mle-reviewer.md +153 -0
- package/packs/full-harness/rendered/.claude/agents/network-architect.md +92 -0
- package/packs/full-harness/rendered/.claude/agents/network-config-reviewer.md +94 -0
- package/packs/full-harness/rendered/.claude/agents/network-troubleshooter.md +116 -0
- package/packs/full-harness/rendered/.claude/agents/opensource-forker.md +198 -0
- package/packs/full-harness/rendered/.claude/agents/opensource-packager.md +249 -0
- package/packs/full-harness/rendered/.claude/agents/opensource-sanitizer.md +188 -0
- package/packs/full-harness/rendered/.claude/agents/performance-optimizer.md +446 -0
- package/packs/full-harness/rendered/.claude/agents/php-reviewer.md +92 -0
- package/packs/full-harness/rendered/.claude/agents/planner.md +210 -0
- package/packs/full-harness/rendered/.claude/agents/pr-test-analyzer.md +45 -0
- package/packs/full-harness/rendered/.claude/agents/python-reviewer.md +90 -0
- package/packs/full-harness/rendered/.claude/agents/pytorch-build-resolver.md +120 -0
- package/packs/full-harness/rendered/.claude/agents/react-build-resolver.md +206 -0
- package/packs/full-harness/rendered/.claude/agents/react-reviewer.md +156 -0
- package/packs/full-harness/rendered/.claude/agents/refactor-cleaner.md +85 -0
- package/packs/full-harness/rendered/.claude/agents/rust-build-resolver.md +148 -0
- package/packs/full-harness/rendered/.claude/agents/rust-reviewer.md +85 -0
- package/packs/full-harness/rendered/.claude/agents/security-reviewer.md +108 -0
- package/packs/full-harness/rendered/.claude/agents/seo-specialist.md +54 -0
- package/packs/full-harness/rendered/.claude/agents/silent-failure-hunter.md +50 -0
- package/packs/full-harness/rendered/.claude/agents/spec-miner.md +207 -0
- package/packs/full-harness/rendered/.claude/agents/swift-build-resolver.md +161 -0
- package/packs/full-harness/rendered/.claude/agents/swift-reviewer.md +98 -0
- package/packs/full-harness/rendered/.claude/agents/tdd-guide.md +89 -0
- package/packs/full-harness/rendered/.claude/agents/type-design-analyzer.md +41 -0
- package/packs/full-harness/rendered/.claude/agents/typescript-reviewer.md +96 -0
- package/packs/full-harness/rendered/.claude/agents/vue-reviewer.md +195 -0
- package/packs/full-harness/rendered/.claude/commands/aside.md +6 -0
- package/packs/full-harness/rendered/.claude/commands/auto-update.md +6 -0
- package/packs/full-harness/rendered/.claude/commands/build-fix.md +6 -0
- package/packs/full-harness/rendered/.claude/commands/checkpoint.md +6 -0
- package/packs/full-harness/rendered/.claude/commands/code-review.md +6 -0
- package/packs/full-harness/rendered/.claude/commands/cost-report.md +6 -0
- package/packs/full-harness/rendered/.claude/commands/cpp-build.md +6 -0
- package/packs/full-harness/rendered/.claude/commands/cpp-review.md +6 -0
- package/packs/full-harness/rendered/.claude/commands/cpp-test.md +6 -0
- package/packs/full-harness/rendered/.claude/commands/ecc-guide.md +6 -0
- package/packs/full-harness/rendered/.claude/commands/epic-claim.md +6 -0
- package/packs/full-harness/rendered/.claude/commands/epic-decompose.md +6 -0
- package/packs/full-harness/rendered/.claude/commands/epic-publish.md +6 -0
- package/packs/full-harness/rendered/.claude/commands/epic-review.md +6 -0
- package/packs/full-harness/rendered/.claude/commands/epic-sync.md +6 -0
- package/packs/full-harness/rendered/.claude/commands/epic-unblock.md +6 -0
- package/packs/full-harness/rendered/.claude/commands/epic-validate.md +6 -0
- package/packs/full-harness/rendered/.claude/commands/evolve.md +6 -0
- package/packs/full-harness/rendered/.claude/commands/fastapi-review.md +6 -0
- package/packs/full-harness/rendered/.claude/commands/feature-dev.md +6 -0
- package/packs/full-harness/rendered/.claude/commands/flutter-build.md +6 -0
- package/packs/full-harness/rendered/.claude/commands/flutter-review.md +6 -0
- package/packs/full-harness/rendered/.claude/commands/flutter-test.md +6 -0
- package/packs/full-harness/rendered/.claude/commands/gan-build.md +6 -0
- package/packs/full-harness/rendered/.claude/commands/gan-design.md +6 -0
- package/packs/full-harness/rendered/.claude/commands/go-build.md +6 -0
- package/packs/full-harness/rendered/.claude/commands/go-review.md +6 -0
- package/packs/full-harness/rendered/.claude/commands/go-test.md +6 -0
- package/packs/full-harness/rendered/.claude/commands/gradle-build.md +6 -0
- package/packs/full-harness/rendered/.claude/commands/harness-audit.md +6 -0
- package/packs/full-harness/rendered/.claude/commands/hookify-configure.md +6 -0
- package/packs/full-harness/rendered/.claude/commands/hookify-help.md +6 -0
- package/packs/full-harness/rendered/.claude/commands/hookify-list.md +6 -0
- package/packs/full-harness/rendered/.claude/commands/hookify.md +6 -0
- package/packs/full-harness/rendered/.claude/commands/instinct-export.md +6 -0
- package/packs/full-harness/rendered/.claude/commands/instinct-import.md +6 -0
- package/packs/full-harness/rendered/.claude/commands/instinct-status.md +6 -0
- package/packs/full-harness/rendered/.claude/commands/jira.md +6 -0
- package/packs/full-harness/rendered/.claude/commands/kotlin-build.md +6 -0
- package/packs/full-harness/rendered/.claude/commands/kotlin-review.md +6 -0
- package/packs/full-harness/rendered/.claude/commands/kotlin-test.md +6 -0
- package/packs/full-harness/rendered/.claude/commands/learn-eval.md +6 -0
- package/packs/full-harness/rendered/.claude/commands/learn.md +6 -0
- package/packs/full-harness/rendered/.claude/commands/loop-start.md +6 -0
- package/packs/full-harness/rendered/.claude/commands/loop-status.md +6 -0
- package/packs/full-harness/rendered/.claude/commands/marketing-campaign.md +6 -0
- package/packs/full-harness/rendered/.claude/commands/model-route.md +6 -0
- package/packs/full-harness/rendered/.claude/commands/multi-backend.md +6 -0
- package/packs/full-harness/rendered/.claude/commands/multi-execute.md +6 -0
- package/packs/full-harness/rendered/.claude/commands/multi-frontend.md +6 -0
- package/packs/full-harness/rendered/.claude/commands/multi-plan.md +6 -0
- package/packs/full-harness/rendered/.claude/commands/multi-workflow.md +6 -0
- package/packs/full-harness/rendered/.claude/commands/orch-add-feature.md +6 -0
- package/packs/full-harness/rendered/.claude/commands/orch-build-mvp.md +6 -0
- package/packs/full-harness/rendered/.claude/commands/orch-change-feature.md +6 -0
- package/packs/full-harness/rendered/.claude/commands/orch-fix-defect.md +6 -0
- package/packs/full-harness/rendered/.claude/commands/orch-refine-code.md +6 -0
- package/packs/full-harness/rendered/.claude/commands/orch-review.md +6 -0
- package/packs/full-harness/rendered/.claude/commands/plan-canvas.md +6 -0
- package/packs/full-harness/rendered/.claude/commands/plan-prd.md +6 -0
- package/packs/full-harness/rendered/.claude/commands/plan.md +6 -0
- package/packs/full-harness/rendered/.claude/commands/pm2.md +6 -0
- package/packs/full-harness/rendered/.claude/commands/pr.md +6 -0
- package/packs/full-harness/rendered/.claude/commands/project-init.md +6 -0
- package/packs/full-harness/rendered/.claude/commands/projects.md +6 -0
- package/packs/full-harness/rendered/.claude/commands/promote.md +6 -0
- package/packs/full-harness/rendered/.claude/commands/prp-commit.md +6 -0
- package/packs/full-harness/rendered/.claude/commands/prp-implement.md +6 -0
- package/packs/full-harness/rendered/.claude/commands/prp-plan.md +6 -0
- package/packs/full-harness/rendered/.claude/commands/prp-pr.md +6 -0
- package/packs/full-harness/rendered/.claude/commands/prp-prd.md +6 -0
- package/packs/full-harness/rendered/.claude/commands/prune.md +6 -0
- package/packs/full-harness/rendered/.claude/commands/python-review.md +6 -0
- package/packs/full-harness/rendered/.claude/commands/quality-gate.md +6 -0
- package/packs/full-harness/rendered/.claude/commands/react-build.md +6 -0
- package/packs/full-harness/rendered/.claude/commands/react-review.md +6 -0
- package/packs/full-harness/rendered/.claude/commands/react-test.md +6 -0
- package/packs/full-harness/rendered/.claude/commands/refactor-clean.md +6 -0
- package/packs/full-harness/rendered/.claude/commands/resume-session.md +6 -0
- package/packs/full-harness/rendered/.claude/commands/review-pr.md +6 -0
- package/packs/full-harness/rendered/.claude/commands/rust-build.md +6 -0
- package/packs/full-harness/rendered/.claude/commands/rust-review.md +6 -0
- package/packs/full-harness/rendered/.claude/commands/rust-test.md +6 -0
- package/packs/full-harness/rendered/.claude/commands/santa-loop.md +6 -0
- package/packs/full-harness/rendered/.claude/commands/save-session.md +6 -0
- package/packs/full-harness/rendered/.claude/commands/security-scan.md +6 -0
- package/packs/full-harness/rendered/.claude/commands/sessions.md +6 -0
- package/packs/full-harness/rendered/.claude/commands/setup-pm.md +6 -0
- package/packs/full-harness/rendered/.claude/commands/skill-create.md +6 -0
- package/packs/full-harness/rendered/.claude/commands/skill-health.md +6 -0
- package/packs/full-harness/rendered/.claude/commands/test-coverage.md +6 -0
- package/packs/full-harness/rendered/.claude/commands/update-codemaps.md +6 -0
- package/packs/full-harness/rendered/.claude/commands/update-docs.md +6 -0
- package/packs/full-harness/rendered/.claude/commands/vue-review.md +6 -0
- package/packs/full-harness/rendered/.claude/skills/accessibility/SKILL.md +144 -0
- package/packs/full-harness/rendered/.claude/skills/agent-architecture-audit/SKILL.md +254 -0
- package/packs/full-harness/rendered/.claude/skills/agent-eval/SKILL.md +143 -0
- package/packs/full-harness/rendered/.claude/skills/agent-harness-construction/SKILL.md +72 -0
- package/packs/full-harness/rendered/.claude/skills/agent-introspection-debugging/SKILL.md +152 -0
- package/packs/full-harness/rendered/.claude/skills/agent-payment-x402/SKILL.md +223 -0
- package/packs/full-harness/rendered/.claude/skills/agent-self-evaluation/SKILL.md +181 -0
- package/packs/full-harness/rendered/.claude/skills/agent-sort/SKILL.md +214 -0
- package/packs/full-harness/rendered/.claude/skills/agentic-engineering/SKILL.md +62 -0
- package/packs/full-harness/rendered/.claude/skills/agentic-os/SKILL.md +386 -0
- package/packs/full-harness/rendered/.claude/skills/ai-first-engineering/SKILL.md +50 -0
- package/packs/full-harness/rendered/.claude/skills/ai-regression-testing/SKILL.md +384 -0
- package/packs/full-harness/rendered/.claude/skills/android-clean-architecture/SKILL.md +338 -0
- package/packs/full-harness/rendered/.claude/skills/angular-developer/SKILL.md +153 -0
- package/packs/full-harness/rendered/.claude/skills/api-connector-builder/SKILL.md +118 -0
- package/packs/full-harness/rendered/.claude/skills/api-design/SKILL.md +522 -0
- package/packs/full-harness/rendered/.claude/skills/architecture-decision-records/SKILL.md +178 -0
- package/packs/full-harness/rendered/.claude/skills/article-writing/SKILL.md +78 -0
- package/packs/full-harness/rendered/.claude/skills/automation-audit-ops/SKILL.md +141 -0
- package/packs/full-harness/rendered/.claude/skills/autonomous-agent-harness/SKILL.md +272 -0
- package/packs/full-harness/rendered/.claude/skills/autonomous-loops/SKILL.md +609 -0
- package/packs/full-harness/rendered/.claude/skills/backend-patterns/SKILL.md +560 -0
- package/packs/full-harness/rendered/.claude/skills/benchmark/SKILL.md +92 -0
- package/packs/full-harness/rendered/.claude/skills/benchmark-methodology/SKILL.md +185 -0
- package/packs/full-harness/rendered/.claude/skills/benchmark-optimization-loop/SKILL.md +67 -0
- package/packs/full-harness/rendered/.claude/skills/blender-motion-state-inspection/SKILL.md +162 -0
- package/packs/full-harness/rendered/.claude/skills/blueprint/SKILL.md +95 -0
- package/packs/full-harness/rendered/.claude/skills/brand-discovery/SKILL.md +140 -0
- package/packs/full-harness/rendered/.claude/skills/brand-voice/SKILL.md +96 -0
- package/packs/full-harness/rendered/.claude/skills/browser-qa/SKILL.md +103 -0
- package/packs/full-harness/rendered/.claude/skills/bun-runtime/SKILL.md +83 -0
- package/packs/full-harness/rendered/.claude/skills/canary-watch/SKILL.md +106 -0
- package/packs/full-harness/rendered/.claude/skills/carrier-relationship-management/SKILL.md +198 -0
- package/packs/full-harness/rendered/.claude/skills/cisco-ios-patterns/SKILL.md +162 -0
- package/packs/full-harness/rendered/.claude/skills/ck/SKILL.md +143 -0
- package/packs/full-harness/rendered/.claude/skills/claude-devfleet/SKILL.md +110 -0
- package/packs/full-harness/rendered/.claude/skills/click-path-audit/SKILL.md +243 -0
- package/packs/full-harness/rendered/.claude/skills/clickhouse-io/SKILL.md +443 -0
- package/packs/full-harness/rendered/.claude/skills/code-tour/SKILL.md +252 -0
- package/packs/full-harness/rendered/.claude/skills/codebase-onboarding/SKILL.md +232 -0
- package/packs/full-harness/rendered/.claude/skills/codehealth-mcp/SKILL.md +165 -0
- package/packs/full-harness/rendered/.claude/skills/coding-standards/SKILL.md +549 -0
- package/packs/full-harness/rendered/.claude/skills/competitive-platform-analysis/SKILL.md +209 -0
- package/packs/full-harness/rendered/.claude/skills/competitive-report-structure/SKILL.md +157 -0
- package/packs/full-harness/rendered/.claude/skills/compose-multiplatform-patterns/SKILL.md +298 -0
- package/packs/full-harness/rendered/.claude/skills/config-gc/SKILL.md +118 -0
- package/packs/full-harness/rendered/.claude/skills/configure-ecc/SKILL.md +383 -0
- package/packs/full-harness/rendered/.claude/skills/connections-optimizer/SKILL.md +188 -0
- package/packs/full-harness/rendered/.claude/skills/content-engine/SKILL.md +130 -0
- package/packs/full-harness/rendered/.claude/skills/content-hash-cache-pattern/SKILL.md +160 -0
- package/packs/full-harness/rendered/.claude/skills/context-budget/SKILL.md +134 -0
- package/packs/full-harness/rendered/.claude/skills/continuous-agent-loop/SKILL.md +44 -0
- package/packs/full-harness/rendered/.claude/skills/continuous-learning/SKILL.md +130 -0
- package/packs/full-harness/rendered/.claude/skills/continuous-learning-v2/SKILL.md +358 -0
- package/packs/full-harness/rendered/.claude/skills/cost-aware-llm-pipeline/SKILL.md +182 -0
- package/packs/full-harness/rendered/.claude/skills/cost-tracking/SKILL.md +95 -0
- package/packs/full-harness/rendered/.claude/skills/council/SKILL.md +202 -0
- package/packs/full-harness/rendered/.claude/skills/cpp-coding-standards/SKILL.md +722 -0
- package/packs/full-harness/rendered/.claude/skills/cpp-testing/SKILL.md +323 -0
- package/packs/full-harness/rendered/.claude/skills/crosspost/SKILL.md +110 -0
- package/packs/full-harness/rendered/.claude/skills/csharp-testing/SKILL.md +320 -0
- package/packs/full-harness/rendered/.claude/skills/customer-billing-ops/SKILL.md +139 -0
- package/packs/full-harness/rendered/.claude/skills/customs-trade-compliance/SKILL.md +248 -0
- package/packs/full-harness/rendered/.claude/skills/dart-flutter-patterns/SKILL.md +562 -0
- package/packs/full-harness/rendered/.claude/skills/dashboard-builder/SKILL.md +106 -0
- package/packs/full-harness/rendered/.claude/skills/data-scraper-agent/SKILL.md +763 -0
- package/packs/full-harness/rendered/.claude/skills/data-throughput-accelerator/SKILL.md +70 -0
- package/packs/full-harness/rendered/.claude/skills/database-migrations/SKILL.md +428 -0
- package/packs/full-harness/rendered/.claude/skills/deep-research/SKILL.md +158 -0
- package/packs/full-harness/rendered/.claude/skills/defi-amm-security/SKILL.md +164 -0
- package/packs/full-harness/rendered/.claude/skills/delivery-gate/SKILL.md +123 -0
- package/packs/full-harness/rendered/.claude/skills/deployment-patterns/SKILL.md +426 -0
- package/packs/full-harness/rendered/.claude/skills/design-system/SKILL.md +81 -0
- package/packs/full-harness/rendered/.claude/skills/django-celery/SKILL.md +456 -0
- package/packs/full-harness/rendered/.claude/skills/django-patterns/SKILL.md +733 -0
- package/packs/full-harness/rendered/.claude/skills/django-security/SKILL.md +642 -0
- package/packs/full-harness/rendered/.claude/skills/django-tdd/SKILL.md +728 -0
- package/packs/full-harness/rendered/.claude/skills/django-verification/SKILL.md +468 -0
- package/packs/full-harness/rendered/.claude/skills/dmux-workflows/SKILL.md +190 -0
- package/packs/full-harness/rendered/.claude/skills/docker-patterns/SKILL.md +363 -0
- package/packs/full-harness/rendered/.claude/skills/documentation-lookup/SKILL.md +89 -0
- package/packs/full-harness/rendered/.claude/skills/dotnet-patterns/SKILL.md +320 -0
- package/packs/full-harness/rendered/.claude/skills/dynamic-workflow-mode/SKILL.md +122 -0
- package/packs/full-harness/rendered/.claude/skills/e2e-testing/SKILL.md +325 -0
- package/packs/full-harness/rendered/.claude/skills/ecc-guide/SKILL.md +188 -0
- package/packs/full-harness/rendered/.claude/skills/ecc-recipes/SKILL.md +145 -0
- package/packs/full-harness/rendered/.claude/skills/ecc-tools-cost-audit/SKILL.md +159 -0
- package/packs/full-harness/rendered/.claude/skills/email-ops/SKILL.md +120 -0
- package/packs/full-harness/rendered/.claude/skills/energy-procurement/SKILL.md +213 -0
- package/packs/full-harness/rendered/.claude/skills/enterprise-agent-ops/SKILL.md +49 -0
- package/packs/full-harness/rendered/.claude/skills/error-handling/SKILL.md +375 -0
- package/packs/full-harness/rendered/.claude/skills/eval-harness/SKILL.md +268 -0
- package/packs/full-harness/rendered/.claude/skills/evm-token-decimals/SKILL.md +128 -0
- package/packs/full-harness/rendered/.claude/skills/exa-search/SKILL.md +106 -0
- package/packs/full-harness/rendered/.claude/skills/fal-ai-media/SKILL.md +287 -0
- package/packs/full-harness/rendered/.claude/skills/fastapi-patterns/SKILL.md +512 -0
- package/packs/full-harness/rendered/.claude/skills/finance-billing-ops/SKILL.md +126 -0
- package/packs/full-harness/rendered/.claude/skills/flox-environments/SKILL.md +495 -0
- package/packs/full-harness/rendered/.claude/skills/flutter-dart-code-review/SKILL.md +434 -0
- package/packs/full-harness/rendered/.claude/skills/foundation-models-on-device/SKILL.md +243 -0
- package/packs/full-harness/rendered/.claude/skills/frontend-a11y/SKILL.md +441 -0
- package/packs/full-harness/rendered/.claude/skills/frontend-design-direction/SKILL.md +91 -0
- package/packs/full-harness/rendered/.claude/skills/frontend-patterns/SKILL.md +655 -0
- package/packs/full-harness/rendered/.claude/skills/frontend-slides/SKILL.md +183 -0
- package/packs/full-harness/rendered/.claude/skills/fsharp-testing/SKILL.md +279 -0
- package/packs/full-harness/rendered/.claude/skills/gan-style-harness/SKILL.md +276 -0
- package/packs/full-harness/rendered/.claude/skills/gateguard/SKILL.md +131 -0
- package/packs/full-harness/rendered/.claude/skills/generating-python-installer/SKILL.md +820 -0
- package/packs/full-harness/rendered/.claude/skills/gget/SKILL.md +165 -0
- package/packs/full-harness/rendered/.claude/skills/git-workflow/SKILL.md +714 -0
- package/packs/full-harness/rendered/.claude/skills/github-ops/SKILL.md +143 -0
- package/packs/full-harness/rendered/.claude/skills/golang-patterns/SKILL.md +674 -0
- package/packs/full-harness/rendered/.claude/skills/golang-testing/SKILL.md +719 -0
- package/packs/full-harness/rendered/.claude/skills/google-workspace-ops/SKILL.md +94 -0
- package/packs/full-harness/rendered/.claude/skills/growth-log/SKILL.md +125 -0
- package/packs/full-harness/rendered/.claude/skills/healthcare-cdss-patterns/SKILL.md +243 -0
- package/packs/full-harness/rendered/.claude/skills/healthcare-emr-patterns/SKILL.md +157 -0
- package/packs/full-harness/rendered/.claude/skills/healthcare-eval-harness/SKILL.md +205 -0
- package/packs/full-harness/rendered/.claude/skills/healthcare-phi-compliance/SKILL.md +143 -0
- package/packs/full-harness/rendered/.claude/skills/hermes-imports/SKILL.md +87 -0
- package/packs/full-harness/rendered/.claude/skills/hexagonal-architecture/SKILL.md +275 -0
- package/packs/full-harness/rendered/.claude/skills/hipaa-compliance/SKILL.md +76 -0
- package/packs/full-harness/rendered/.claude/skills/homelab-network-readiness/SKILL.md +168 -0
- package/packs/full-harness/rendered/.claude/skills/homelab-network-setup/SKILL.md +128 -0
- package/packs/full-harness/rendered/.claude/skills/homelab-pihole-dns/SKILL.md +273 -0
- package/packs/full-harness/rendered/.claude/skills/homelab-vlan-segmentation/SKILL.md +310 -0
- package/packs/full-harness/rendered/.claude/skills/homelab-wireguard-vpn/SKILL.md +304 -0
- package/packs/full-harness/rendered/.claude/skills/hookify-rules/SKILL.md +128 -0
- package/packs/full-harness/rendered/.claude/skills/inherit-legacy-style/SKILL.md +154 -0
- package/packs/full-harness/rendered/.claude/skills/intent-driven-development/SKILL.md +360 -0
- package/packs/full-harness/rendered/.claude/skills/inventory-demand-planning/SKILL.md +232 -0
- package/packs/full-harness/rendered/.claude/skills/investor-materials/SKILL.md +95 -0
- package/packs/full-harness/rendered/.claude/skills/investor-outreach/SKILL.md +90 -0
- package/packs/full-harness/rendered/.claude/skills/ios-icon-gen/SKILL.md +156 -0
- package/packs/full-harness/rendered/.claude/skills/iterative-retrieval/SKILL.md +210 -0
- package/packs/full-harness/rendered/.claude/skills/ito-basket-compare/SKILL.md +62 -0
- package/packs/full-harness/rendered/.claude/skills/ito-data-atlas-agent/SKILL.md +62 -0
- package/packs/full-harness/rendered/.claude/skills/ito-market-intelligence/SKILL.md +59 -0
- package/packs/full-harness/rendered/.claude/skills/ito-trade-planner/SKILL.md +66 -0
- package/packs/full-harness/rendered/.claude/skills/java-coding-standards/SKILL.md +382 -0
- package/packs/full-harness/rendered/.claude/skills/jira-integration/SKILL.md +301 -0
- package/packs/full-harness/rendered/.claude/skills/jpa-patterns/SKILL.md +150 -0
- package/packs/full-harness/rendered/.claude/skills/knowledge-ops/SKILL.md +153 -0
- package/packs/full-harness/rendered/.claude/skills/kotlin-coroutines-flows/SKILL.md +283 -0
- package/packs/full-harness/rendered/.claude/skills/kotlin-exposed-patterns/SKILL.md +718 -0
- package/packs/full-harness/rendered/.claude/skills/kotlin-ktor-patterns/SKILL.md +688 -0
- package/packs/full-harness/rendered/.claude/skills/kotlin-patterns/SKILL.md +710 -0
- package/packs/full-harness/rendered/.claude/skills/kotlin-testing/SKILL.md +823 -0
- package/packs/full-harness/rendered/.claude/skills/kubernetes-patterns/SKILL.md +754 -0
- package/packs/full-harness/rendered/.claude/skills/laravel-patterns/SKILL.md +414 -0
- package/packs/full-harness/rendered/.claude/skills/laravel-plugin-discovery/SKILL.md +228 -0
- package/packs/full-harness/rendered/.claude/skills/laravel-security/SKILL.md +946 -0
- package/packs/full-harness/rendered/.claude/skills/laravel-tdd/SKILL.md +673 -0
- package/packs/full-harness/rendered/.claude/skills/laravel-verification/SKILL.md +178 -0
- package/packs/full-harness/rendered/.claude/skills/latency-critical-systems/SKILL.md +71 -0
- package/packs/full-harness/rendered/.claude/skills/lead-intelligence/SKILL.md +320 -0
- package/packs/full-harness/rendered/.claude/skills/liquid-glass-design/SKILL.md +279 -0
- package/packs/full-harness/rendered/.claude/skills/literature-review/SKILL.md +191 -0
- package/packs/full-harness/rendered/.claude/skills/llm-trading-agent-security/SKILL.md +144 -0
- package/packs/full-harness/rendered/.claude/skills/logistics-exception-management/SKILL.md +208 -0
- package/packs/full-harness/rendered/.claude/skills/loop-design-check/SKILL.md +141 -0
- package/packs/full-harness/rendered/.claude/skills/mailtrap-email-integration/SKILL.md +76 -0
- package/packs/full-harness/rendered/.claude/skills/make-interfaces-feel-better/SKILL.md +150 -0
- package/packs/full-harness/rendered/.claude/skills/manim-video/SKILL.md +88 -0
- package/packs/full-harness/rendered/.claude/skills/market-research/SKILL.md +74 -0
- package/packs/full-harness/rendered/.claude/skills/marketing-campaign/SKILL.md +112 -0
- package/packs/full-harness/rendered/.claude/skills/mcp-server-patterns/SKILL.md +68 -0
- package/packs/full-harness/rendered/.claude/skills/messages-ops/SKILL.md +103 -0
- package/packs/full-harness/rendered/.claude/skills/ml-adoption-playbook/SKILL.md +56 -0
- package/packs/full-harness/rendered/.claude/skills/mle-workflow/SKILL.md +345 -0
- package/packs/full-harness/rendered/.claude/skills/motion-advanced/SKILL.md +592 -0
- package/packs/full-harness/rendered/.claude/skills/motion-foundations/SKILL.md +295 -0
- package/packs/full-harness/rendered/.claude/skills/motion-patterns/SKILL.md +430 -0
- package/packs/full-harness/rendered/.claude/skills/motion-ui/SKILL.md +574 -0
- package/packs/full-harness/rendered/.claude/skills/mysql-patterns/SKILL.md +411 -0
- package/packs/full-harness/rendered/.claude/skills/nanoclaw-repl/SKILL.md +32 -0
- package/packs/full-harness/rendered/.claude/skills/nestjs-patterns/SKILL.md +229 -0
- package/packs/full-harness/rendered/.claude/skills/netmiko-ssh-automation/SKILL.md +172 -0
- package/packs/full-harness/rendered/.claude/skills/network-bgp-diagnostics/SKILL.md +166 -0
- package/packs/full-harness/rendered/.claude/skills/network-config-validation/SKILL.md +209 -0
- package/packs/full-harness/rendered/.claude/skills/network-interface-health/SKILL.md +151 -0
- package/packs/full-harness/rendered/.claude/skills/nextjs-turbopack/SKILL.md +56 -0
- package/packs/full-harness/rendered/.claude/skills/nodejs-keccak256/SKILL.md +100 -0
- package/packs/full-harness/rendered/.claude/skills/nutrient-document-processing/SKILL.md +166 -0
- package/packs/full-harness/rendered/.claude/skills/nuxt4-patterns/SKILL.md +99 -0
- package/packs/full-harness/rendered/.claude/skills/openclaw-persona-forge/SKILL.md +287 -0
- package/packs/full-harness/rendered/.claude/skills/opensource-pipeline/SKILL.md +254 -0
- package/packs/full-harness/rendered/.claude/skills/orch-add-feature/SKILL.md +43 -0
- package/packs/full-harness/rendered/.claude/skills/orch-build-mvp/SKILL.md +47 -0
- package/packs/full-harness/rendered/.claude/skills/orch-change-feature/SKILL.md +41 -0
- package/packs/full-harness/rendered/.claude/skills/orch-fix-defect/SKILL.md +41 -0
- package/packs/full-harness/rendered/.claude/skills/orch-pipeline/SKILL.md +119 -0
- package/packs/full-harness/rendered/.claude/skills/orch-refine-code/SKILL.md +42 -0
- package/packs/full-harness/rendered/.claude/skills/parallel-execution-optimizer/SKILL.md +70 -0
- package/packs/full-harness/rendered/.claude/skills/perl-patterns/SKILL.md +503 -0
- package/packs/full-harness/rendered/.claude/skills/perl-security/SKILL.md +502 -0
- package/packs/full-harness/rendered/.claude/skills/perl-testing/SKILL.md +474 -0
- package/packs/full-harness/rendered/.claude/skills/plan-canvas/SKILL.md +150 -0
- package/packs/full-harness/rendered/.claude/skills/plan-orchestrate/SKILL.md +261 -0
- package/packs/full-harness/rendered/.claude/skills/plankton-code-quality/SKILL.md +235 -0
- package/packs/full-harness/rendered/.claude/skills/postgres-patterns/SKILL.md +146 -0
- package/packs/full-harness/rendered/.claude/skills/prediction-market-oracle-research/SKILL.md +62 -0
- package/packs/full-harness/rendered/.claude/skills/prediction-market-risk-review/SKILL.md +59 -0
- package/packs/full-harness/rendered/.claude/skills/prisma-patterns/SKILL.md +399 -0
- package/packs/full-harness/rendered/.claude/skills/product-capability/SKILL.md +140 -0
- package/packs/full-harness/rendered/.claude/skills/product-lens/SKILL.md +91 -0
- package/packs/full-harness/rendered/.claude/skills/production-audit/SKILL.md +205 -0
- package/packs/full-harness/rendered/.claude/skills/production-scheduling/SKILL.md +223 -0
- package/packs/full-harness/rendered/.claude/skills/project-flow-ops/SKILL.md +110 -0
- package/packs/full-harness/rendered/.claude/skills/prompt-optimizer/SKILL.md +383 -0
- package/packs/full-harness/rendered/.claude/skills/pubmed-database/SKILL.md +174 -0
- package/packs/full-harness/rendered/.claude/skills/python-patterns/SKILL.md +749 -0
- package/packs/full-harness/rendered/.claude/skills/python-testing/SKILL.md +815 -0
- package/packs/full-harness/rendered/.claude/skills/pytorch-patterns/SKILL.md +395 -0
- package/packs/full-harness/rendered/.claude/skills/quality-nonconformance/SKILL.md +245 -0
- package/packs/full-harness/rendered/.claude/skills/quarkus-patterns/SKILL.md +721 -0
- package/packs/full-harness/rendered/.claude/skills/quarkus-security/SKILL.md +466 -0
- package/packs/full-harness/rendered/.claude/skills/quarkus-tdd/SKILL.md +810 -0
- package/packs/full-harness/rendered/.claude/skills/quarkus-verification/SKILL.md +478 -0
- package/packs/full-harness/rendered/.claude/skills/ralphinho-rfc-pipeline/SKILL.md +66 -0
- package/packs/full-harness/rendered/.claude/skills/react-native-patterns/SKILL.md +325 -0
- package/packs/full-harness/rendered/.claude/skills/react-patterns/SKILL.md +340 -0
- package/packs/full-harness/rendered/.claude/skills/react-performance/SKILL.md +573 -0
- package/packs/full-harness/rendered/.claude/skills/react-testing/SKILL.md +422 -0
- package/packs/full-harness/rendered/.claude/skills/recsys-pipeline-architect/SKILL.md +113 -0
- package/packs/full-harness/rendered/.claude/skills/recursive-decision-ledger/SKILL.md +77 -0
- package/packs/full-harness/rendered/.claude/skills/redis-patterns/SKILL.md +402 -0
- package/packs/full-harness/rendered/.claude/skills/regex-vs-llm-structured-text/SKILL.md +219 -0
- package/packs/full-harness/rendered/.claude/skills/remotion-video-creation/SKILL.md +41 -0
- package/packs/full-harness/rendered/.claude/skills/repo-scan/SKILL.md +77 -0
- package/packs/full-harness/rendered/.claude/skills/research-ops/SKILL.md +111 -0
- package/packs/full-harness/rendered/.claude/skills/returns-reverse-logistics/SKILL.md +225 -0
- package/packs/full-harness/rendered/.claude/skills/rules-distill/SKILL.md +263 -0
- package/packs/full-harness/rendered/.claude/skills/rust-patterns/SKILL.md +498 -0
- package/packs/full-harness/rendered/.claude/skills/rust-testing/SKILL.md +499 -0
- package/packs/full-harness/rendered/.claude/skills/safety-guard/SKILL.md +74 -0
- package/packs/full-harness/rendered/.claude/skills/santa-method/SKILL.md +305 -0
- package/packs/full-harness/rendered/.claude/skills/scholar-evaluation/SKILL.md +159 -0
- package/packs/full-harness/rendered/.claude/skills/search-first/SKILL.md +181 -0
- package/packs/full-harness/rendered/.claude/skills/security-bounty-hunter/SKILL.md +97 -0
- package/packs/full-harness/rendered/.claude/skills/security-review/SKILL.md +502 -0
- package/packs/full-harness/rendered/.claude/skills/security-scan/SKILL.md +164 -0
- package/packs/full-harness/rendered/.claude/skills/seo/SKILL.md +153 -0
- package/packs/full-harness/rendered/.claude/skills/skill-comply/SKILL.md +56 -0
- package/packs/full-harness/rendered/.claude/skills/skill-scout/SKILL.md +139 -0
- package/packs/full-harness/rendered/.claude/skills/skill-stocktake/SKILL.md +193 -0
- package/packs/full-harness/rendered/.claude/skills/social-graph-ranker/SKILL.md +153 -0
- package/packs/full-harness/rendered/.claude/skills/social-publisher/SKILL.md +128 -0
- package/packs/full-harness/rendered/.claude/skills/springboot-patterns/SKILL.md +313 -0
- package/packs/full-harness/rendered/.claude/skills/springboot-security/SKILL.md +271 -0
- package/packs/full-harness/rendered/.claude/skills/springboot-tdd/SKILL.md +157 -0
- package/packs/full-harness/rendered/.claude/skills/springboot-verification/SKILL.md +230 -0
- package/packs/full-harness/rendered/.claude/skills/strategic-compact/SKILL.md +136 -0
- package/packs/full-harness/rendered/.claude/skills/swift-actor-persistence/SKILL.md +142 -0
- package/packs/full-harness/rendered/.claude/skills/swift-concurrency-6-2/SKILL.md +216 -0
- package/packs/full-harness/rendered/.claude/skills/swift-protocol-di-testing/SKILL.md +189 -0
- package/packs/full-harness/rendered/.claude/skills/swiftui-patterns/SKILL.md +259 -0
- package/packs/full-harness/rendered/.claude/skills/taste/SKILL.md +263 -0
- package/packs/full-harness/rendered/.claude/skills/tdd-workflow/SKILL.md +580 -0
- package/packs/full-harness/rendered/.claude/skills/team-agent-orchestration/SKILL.md +109 -0
- package/packs/full-harness/rendered/.claude/skills/team-builder/SKILL.md +167 -0
- package/packs/full-harness/rendered/.claude/skills/terminal-ops/SKILL.md +108 -0
- package/packs/full-harness/rendered/.claude/skills/tinystruct-patterns/SKILL.md +277 -0
- package/packs/full-harness/rendered/.claude/skills/token-budget-advisor/SKILL.md +120 -0
- package/packs/full-harness/rendered/.claude/skills/ui-demo/SKILL.md +464 -0
- package/packs/full-harness/rendered/.claude/skills/ui-to-vue/SKILL.md +133 -0
- package/packs/full-harness/rendered/.claude/skills/uncloud/SKILL.md +342 -0
- package/packs/full-harness/rendered/.claude/skills/unified-notifications-ops/SKILL.md +186 -0
- package/packs/full-harness/rendered/.claude/skills/uspto-database/SKILL.md +176 -0
- package/packs/full-harness/rendered/.claude/skills/verification-loop/SKILL.md +126 -0
- package/packs/full-harness/rendered/.claude/skills/video-editing/SKILL.md +309 -0
- package/packs/full-harness/rendered/.claude/skills/videodb/SKILL.md +371 -0
- package/packs/full-harness/rendered/.claude/skills/visa-doc-translate/SKILL.md +117 -0
- package/packs/full-harness/rendered/.claude/skills/vite-patterns/SKILL.md +448 -0
- package/packs/full-harness/rendered/.claude/skills/vue-patterns/SKILL.md +470 -0
- package/packs/full-harness/rendered/.claude/skills/windows-desktop-e2e/SKILL.md +886 -0
- package/packs/full-harness/rendered/.claude/skills/workspace-surface-audit/SKILL.md +124 -0
- package/packs/full-harness/rendered/.claude/skills/x-api/SKILL.md +233 -0
- package/packs/full-harness/rendered/.github/copilot-instructions.md +89529 -0
- package/packs/full-harness/rendered/AGENTS.md +9663 -0
- package/packs/full-harness/rendered/CLAUDE.md +444 -0
- package/packs/full-harness/rendered/GEMINI.md +71959 -0
|
@@ -0,0 +1,164 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: security-scan
|
|
3
|
+
description: Scan your Claude Code configuration (.claude/ directory) for security vulnerabilities, misconfigurations, and injection risks using AgentShield. Checks CLAUDE.md, settings.json, MCP servers, hooks, and agent definitions.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Security Scan Skill
|
|
7
|
+
|
|
8
|
+
Audit your Claude Code configuration for security issues using [AgentShield](https://github.com/affaan-m/agentshield).
|
|
9
|
+
|
|
10
|
+
## When to Activate
|
|
11
|
+
|
|
12
|
+
- Setting up a new Claude Code project
|
|
13
|
+
- After modifying `.claude/settings.json`, `CLAUDE.md`, or MCP configs
|
|
14
|
+
- Before committing configuration changes
|
|
15
|
+
- When onboarding to a new repository with existing Claude Code configs
|
|
16
|
+
- Periodic security hygiene checks
|
|
17
|
+
|
|
18
|
+
## What It Scans
|
|
19
|
+
|
|
20
|
+
| File | Checks |
|
|
21
|
+
|------|--------|
|
|
22
|
+
| `CLAUDE.md` | Hardcoded secrets, auto-run instructions, prompt injection patterns |
|
|
23
|
+
| `settings.json` | Overly permissive allow lists, missing deny lists, dangerous bypass flags |
|
|
24
|
+
| `mcp.json` | Risky MCP servers, hardcoded env secrets, npx supply chain risks |
|
|
25
|
+
| `hooks/` | Command injection via interpolation, data exfiltration, silent error suppression |
|
|
26
|
+
| `agents/*.md` | Unrestricted tool access, prompt injection surface, missing model specs |
|
|
27
|
+
|
|
28
|
+
## Prerequisites
|
|
29
|
+
|
|
30
|
+
AgentShield must be installed. Check and install if needed:
|
|
31
|
+
|
|
32
|
+
```bash
|
|
33
|
+
# Check if installed
|
|
34
|
+
npx ecc-agentshield --version
|
|
35
|
+
|
|
36
|
+
# Install globally (recommended)
|
|
37
|
+
npm install -g ecc-agentshield
|
|
38
|
+
|
|
39
|
+
# Or run directly via npx (no install needed)
|
|
40
|
+
npx ecc-agentshield scan .
|
|
41
|
+
```
|
|
42
|
+
|
|
43
|
+
## Usage
|
|
44
|
+
|
|
45
|
+
### Basic Scan
|
|
46
|
+
|
|
47
|
+
Run against the current project's `.claude/` directory:
|
|
48
|
+
|
|
49
|
+
```bash
|
|
50
|
+
# Scan current project
|
|
51
|
+
npx ecc-agentshield scan
|
|
52
|
+
|
|
53
|
+
# Scan a specific path
|
|
54
|
+
npx ecc-agentshield scan --path /path/to/.claude
|
|
55
|
+
|
|
56
|
+
# Scan with minimum severity filter
|
|
57
|
+
npx ecc-agentshield scan --min-severity medium
|
|
58
|
+
```
|
|
59
|
+
|
|
60
|
+
### Output Formats
|
|
61
|
+
|
|
62
|
+
```bash
|
|
63
|
+
# Terminal output (default) — colored report with grade
|
|
64
|
+
npx ecc-agentshield scan
|
|
65
|
+
|
|
66
|
+
# JSON — for CI/CD integration
|
|
67
|
+
npx ecc-agentshield scan --format json
|
|
68
|
+
|
|
69
|
+
# Markdown — for documentation
|
|
70
|
+
npx ecc-agentshield scan --format markdown
|
|
71
|
+
|
|
72
|
+
# HTML — self-contained dark-theme report
|
|
73
|
+
npx ecc-agentshield scan --format html > security-report.html
|
|
74
|
+
```
|
|
75
|
+
|
|
76
|
+
### Auto-Fix
|
|
77
|
+
|
|
78
|
+
Apply safe fixes automatically (only fixes marked as auto-fixable):
|
|
79
|
+
|
|
80
|
+
```bash
|
|
81
|
+
npx ecc-agentshield scan --fix
|
|
82
|
+
```
|
|
83
|
+
|
|
84
|
+
This will:
|
|
85
|
+
- Replace hardcoded secrets with environment variable references
|
|
86
|
+
- Tighten wildcard permissions to scoped alternatives
|
|
87
|
+
- Never modify manual-only suggestions
|
|
88
|
+
|
|
89
|
+
### Opus 4.6 Deep Analysis
|
|
90
|
+
|
|
91
|
+
Run the adversarial three-agent pipeline for deeper analysis:
|
|
92
|
+
|
|
93
|
+
```bash
|
|
94
|
+
# Requires ANTHROPIC_API_KEY
|
|
95
|
+
export ANTHROPIC_API_KEY=your-key
|
|
96
|
+
npx ecc-agentshield scan --opus --stream
|
|
97
|
+
```
|
|
98
|
+
|
|
99
|
+
This runs:
|
|
100
|
+
1. **Attacker (Red Team)** — finds attack vectors
|
|
101
|
+
2. **Defender (Blue Team)** — recommends hardening
|
|
102
|
+
3. **Auditor (Final Verdict)** — synthesizes both perspectives
|
|
103
|
+
|
|
104
|
+
### Initialize Secure Config
|
|
105
|
+
|
|
106
|
+
Scaffold a new secure `.claude/` configuration from scratch:
|
|
107
|
+
|
|
108
|
+
```bash
|
|
109
|
+
npx ecc-agentshield init
|
|
110
|
+
```
|
|
111
|
+
|
|
112
|
+
Creates:
|
|
113
|
+
- `settings.json` with scoped permissions and deny list
|
|
114
|
+
- `CLAUDE.md` with security best practices
|
|
115
|
+
- `mcp.json` placeholder
|
|
116
|
+
|
|
117
|
+
### GitHub Action
|
|
118
|
+
|
|
119
|
+
Add to your CI pipeline:
|
|
120
|
+
|
|
121
|
+
```yaml
|
|
122
|
+
- uses: affaan-m/agentshield@v1
|
|
123
|
+
with:
|
|
124
|
+
path: '.'
|
|
125
|
+
min-severity: 'medium'
|
|
126
|
+
fail-on-findings: true
|
|
127
|
+
```
|
|
128
|
+
|
|
129
|
+
## Severity Levels
|
|
130
|
+
|
|
131
|
+
| Grade | Score | Meaning |
|
|
132
|
+
|-------|-------|---------|
|
|
133
|
+
| A | 90-100 | Secure configuration |
|
|
134
|
+
| B | 75-89 | Minor issues |
|
|
135
|
+
| C | 60-74 | Needs attention |
|
|
136
|
+
| D | 40-59 | Significant risks |
|
|
137
|
+
| F | 0-39 | Critical vulnerabilities |
|
|
138
|
+
|
|
139
|
+
## Interpreting Results
|
|
140
|
+
|
|
141
|
+
### Critical Findings (fix immediately)
|
|
142
|
+
- Hardcoded API keys or tokens in config files
|
|
143
|
+
- `Bash(*)` in the allow list (unrestricted shell access)
|
|
144
|
+
- Command injection in hooks via `${file}` interpolation
|
|
145
|
+
- Shell-running MCP servers
|
|
146
|
+
|
|
147
|
+
### High Findings (fix before production)
|
|
148
|
+
- Auto-run instructions in CLAUDE.md (prompt injection vector)
|
|
149
|
+
- Missing deny lists in permissions
|
|
150
|
+
- Agents with unnecessary Bash access
|
|
151
|
+
|
|
152
|
+
### Medium Findings (recommended)
|
|
153
|
+
- Silent error suppression in hooks (`2>/dev/null`, `|| true`)
|
|
154
|
+
- Missing PreToolUse security hooks
|
|
155
|
+
- `npx -y` auto-install in MCP server configs
|
|
156
|
+
|
|
157
|
+
### Info Findings (awareness)
|
|
158
|
+
- Missing descriptions on MCP servers
|
|
159
|
+
- Prohibitive instructions correctly flagged as good practice
|
|
160
|
+
|
|
161
|
+
## Links
|
|
162
|
+
|
|
163
|
+
- **GitHub**: [github.com/affaan-m/agentshield](https://github.com/affaan-m/agentshield)
|
|
164
|
+
- **npm**: [npmjs.com/package/ecc-agentshield](https://www.npmjs.com/package/ecc-agentshield)
|
|
@@ -0,0 +1,153 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: seo
|
|
3
|
+
description: Audit, plan, and implement SEO improvements across technical SEO, on-page optimization, structured data, Core Web Vitals, and content strategy. Use when the user wants better search visibility, SEO remediation, schema markup, sitemap/robots work, or keyword mapping.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# SEO
|
|
7
|
+
|
|
8
|
+
Improve search visibility through technical correctness, performance, and content relevance, not gimmicks.
|
|
9
|
+
|
|
10
|
+
## When to Use
|
|
11
|
+
|
|
12
|
+
Use this skill when:
|
|
13
|
+
- auditing crawlability, indexability, canonicals, or redirects
|
|
14
|
+
- improving title tags, meta descriptions, and heading structure
|
|
15
|
+
- adding or validating structured data
|
|
16
|
+
- improving Core Web Vitals
|
|
17
|
+
- doing keyword research and mapping keywords to URLs
|
|
18
|
+
- planning internal linking or sitemap / robots changes
|
|
19
|
+
|
|
20
|
+
## How It Works
|
|
21
|
+
|
|
22
|
+
### Principles
|
|
23
|
+
|
|
24
|
+
1. Fix technical blockers before content optimization.
|
|
25
|
+
2. One page should have one clear primary search intent.
|
|
26
|
+
3. Prefer long-term quality signals over manipulative patterns.
|
|
27
|
+
4. Mobile-first assumptions matter because indexing is mobile-first.
|
|
28
|
+
5. Recommendations should be page-specific and implementable.
|
|
29
|
+
|
|
30
|
+
### Technical SEO checklist
|
|
31
|
+
|
|
32
|
+
#### Crawlability
|
|
33
|
+
|
|
34
|
+
- `robots.txt` should allow important pages and block low-value surfaces
|
|
35
|
+
- no important page should be unintentionally `noindex`
|
|
36
|
+
- important pages should be reachable within a shallow click depth
|
|
37
|
+
- avoid redirect chains longer than two hops
|
|
38
|
+
- canonical tags should be self-consistent and non-looping
|
|
39
|
+
|
|
40
|
+
#### Indexability
|
|
41
|
+
|
|
42
|
+
- preferred URL format should be consistent
|
|
43
|
+
- multilingual pages need correct hreflang if used
|
|
44
|
+
- sitemaps should reflect the intended public surface
|
|
45
|
+
- no duplicate URLs should compete without canonical control
|
|
46
|
+
|
|
47
|
+
#### Performance
|
|
48
|
+
|
|
49
|
+
- LCP < 2.5s
|
|
50
|
+
- INP < 200ms
|
|
51
|
+
- CLS < 0.1
|
|
52
|
+
- common fixes: preload hero assets, reduce render-blocking work, reserve layout space, trim heavy JS
|
|
53
|
+
|
|
54
|
+
#### Structured data
|
|
55
|
+
|
|
56
|
+
- homepage: organization or business schema where appropriate
|
|
57
|
+
- editorial pages: `Article` / `BlogPosting`
|
|
58
|
+
- product pages: `Product` and `Offer`
|
|
59
|
+
- interior pages: `BreadcrumbList`
|
|
60
|
+
- Q&A sections: `FAQPage` only when the content truly matches
|
|
61
|
+
|
|
62
|
+
### On-page rules
|
|
63
|
+
|
|
64
|
+
#### Title tags
|
|
65
|
+
|
|
66
|
+
- aim for roughly 50-60 characters
|
|
67
|
+
- put the primary keyword or concept near the front
|
|
68
|
+
- make the title legible to humans, not stuffed for bots
|
|
69
|
+
|
|
70
|
+
#### Meta descriptions
|
|
71
|
+
|
|
72
|
+
- aim for roughly 120-160 characters
|
|
73
|
+
- describe the page honestly
|
|
74
|
+
- include the main topic naturally
|
|
75
|
+
|
|
76
|
+
#### Heading structure
|
|
77
|
+
|
|
78
|
+
- one clear `H1`
|
|
79
|
+
- `H2` and `H3` should reflect actual content hierarchy
|
|
80
|
+
- do not skip structure just for visual styling
|
|
81
|
+
|
|
82
|
+
### Keyword mapping
|
|
83
|
+
|
|
84
|
+
1. define the search intent
|
|
85
|
+
2. gather realistic keyword variants
|
|
86
|
+
3. prioritize by intent match, likely value, and competition
|
|
87
|
+
4. map one primary keyword/theme to one URL
|
|
88
|
+
5. detect and avoid cannibalization
|
|
89
|
+
|
|
90
|
+
### Internal linking
|
|
91
|
+
|
|
92
|
+
- link from strong pages to pages you want to rank
|
|
93
|
+
- use descriptive anchor text
|
|
94
|
+
- avoid generic anchors when a more specific one is possible
|
|
95
|
+
- backfill links from new pages to relevant existing ones
|
|
96
|
+
|
|
97
|
+
## Examples
|
|
98
|
+
|
|
99
|
+
### Title formula
|
|
100
|
+
|
|
101
|
+
```text
|
|
102
|
+
Primary Topic - Specific Modifier | Brand
|
|
103
|
+
```
|
|
104
|
+
|
|
105
|
+
### Meta description formula
|
|
106
|
+
|
|
107
|
+
```text
|
|
108
|
+
Action + topic + value proposition + one supporting detail
|
|
109
|
+
```
|
|
110
|
+
|
|
111
|
+
### JSON-LD example
|
|
112
|
+
|
|
113
|
+
```json
|
|
114
|
+
{
|
|
115
|
+
"@context": "https://schema.org",
|
|
116
|
+
"@type": "Article",
|
|
117
|
+
"headline": "Page Title Here",
|
|
118
|
+
"author": {
|
|
119
|
+
"@type": "Person",
|
|
120
|
+
"name": "Author Name"
|
|
121
|
+
},
|
|
122
|
+
"publisher": {
|
|
123
|
+
"@type": "Organization",
|
|
124
|
+
"name": "Brand Name"
|
|
125
|
+
}
|
|
126
|
+
}
|
|
127
|
+
```
|
|
128
|
+
|
|
129
|
+
### Audit output shape
|
|
130
|
+
|
|
131
|
+
```text
|
|
132
|
+
[HIGH] Duplicate title tags on product pages
|
|
133
|
+
Location: src/routes/products/[slug].tsx
|
|
134
|
+
Issue: Dynamic titles collapse to the same default string, which weakens relevance and creates duplicate signals.
|
|
135
|
+
Fix: Generate a unique title per product using the product name and primary category.
|
|
136
|
+
```
|
|
137
|
+
|
|
138
|
+
## Anti-Patterns
|
|
139
|
+
|
|
140
|
+
| Anti-pattern | Fix |
|
|
141
|
+
| --- | --- |
|
|
142
|
+
| keyword stuffing | write for users first |
|
|
143
|
+
| thin near-duplicate pages | consolidate or differentiate them |
|
|
144
|
+
| schema for content that is not actually present | match schema to reality |
|
|
145
|
+
| content advice without checking the actual page | read the real page first |
|
|
146
|
+
| generic “improve SEO” outputs | tie every recommendation to a page or asset |
|
|
147
|
+
|
|
148
|
+
## Related Skills
|
|
149
|
+
|
|
150
|
+
- `seo-specialist`
|
|
151
|
+
- `frontend-patterns`
|
|
152
|
+
- `brand-voice`
|
|
153
|
+
- `market-research`
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: skill-comply
|
|
3
|
+
description: Visualize whether skills, rules, and agent definitions are actually followed — auto-generates scenarios at 3 prompt strictness levels, runs agents, classifies behavioral sequences, and reports compliance rates with full tool call timelines
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# skill-comply: Automated Compliance Measurement
|
|
7
|
+
|
|
8
|
+
Measures whether coding agents actually follow skills, rules, or agent definitions by:
|
|
9
|
+
1. Auto-generating expected behavioral sequences (specs) from any .md file
|
|
10
|
+
2. Auto-generating scenarios with decreasing prompt strictness (supportive → neutral → competing)
|
|
11
|
+
3. Running `claude -p` and capturing tool call traces via stream-json
|
|
12
|
+
4. Classifying tool calls against spec steps using LLM (not regex)
|
|
13
|
+
5. Checking temporal ordering deterministically
|
|
14
|
+
6. Generating self-contained reports with spec, prompts, and timelines
|
|
15
|
+
|
|
16
|
+
## Supported Targets
|
|
17
|
+
|
|
18
|
+
- **Skills** (`skills/*/SKILL.md`): Workflow skills like search-first, TDD guides
|
|
19
|
+
- **Rules** (`rules/common/*.md`): Mandatory rules like testing.md, security.md, git-workflow.md
|
|
20
|
+
- **Agent definitions** (`agents/*.md`): Whether an agent gets invoked when expected (internal workflow verification not yet supported)
|
|
21
|
+
|
|
22
|
+
## When to Activate
|
|
23
|
+
|
|
24
|
+
- User runs `/skill-comply <path>`
|
|
25
|
+
- User asks "is this rule actually being followed?"
|
|
26
|
+
- After adding new rules/skills, to verify agent compliance
|
|
27
|
+
- Periodically as part of quality maintenance
|
|
28
|
+
|
|
29
|
+
## Usage
|
|
30
|
+
|
|
31
|
+
```bash
|
|
32
|
+
# Full run
|
|
33
|
+
uv run python -m scripts.run ~/.claude/rules/common/testing.md
|
|
34
|
+
|
|
35
|
+
# Dry run (no cost, spec + scenarios only)
|
|
36
|
+
uv run python -m scripts.run --dry-run ~/.claude/skills/search-first/SKILL.md
|
|
37
|
+
|
|
38
|
+
# Custom models
|
|
39
|
+
uv run python -m scripts.run --gen-model haiku --model sonnet <path>
|
|
40
|
+
```
|
|
41
|
+
|
|
42
|
+
## Key Concept: Prompt Independence
|
|
43
|
+
|
|
44
|
+
Measures whether a skill/rule is followed even when the prompt doesn't explicitly support it.
|
|
45
|
+
|
|
46
|
+
## Report Contents
|
|
47
|
+
|
|
48
|
+
Reports are self-contained and include:
|
|
49
|
+
1. Expected behavioral sequence (auto-generated spec)
|
|
50
|
+
2. Scenario prompts (what was asked at each strictness level)
|
|
51
|
+
3. Compliance scores per scenario
|
|
52
|
+
4. Tool call timelines with LLM classification labels
|
|
53
|
+
|
|
54
|
+
### Advanced (optional)
|
|
55
|
+
|
|
56
|
+
For users familiar with hooks, reports also include hook promotion recommendations for steps with low compliance. This is informational — the main value is the compliance visibility itself.
|
|
@@ -0,0 +1,139 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: skill-scout
|
|
3
|
+
description: Search existing local, marketplace, GitHub, and web skill sources before creating a new skill. Use when the user wants to create, build, fork, or find a skill for a workflow.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Skill Scout
|
|
7
|
+
|
|
8
|
+
Use this skill before creating a new skill. The goal is to avoid duplicating
|
|
9
|
+
existing community or marketplace work, while still vetting anything external
|
|
10
|
+
before adoption.
|
|
11
|
+
|
|
12
|
+
Source: salvaged from stale community PR #1232 by `redminwang`.
|
|
13
|
+
|
|
14
|
+
## When to Use
|
|
15
|
+
|
|
16
|
+
- The user says "create a skill", "build a skill", "make a skill", or "new
|
|
17
|
+
skill".
|
|
18
|
+
- The user asks "is there a skill for X?" or "does a skill exist that does Y?"
|
|
19
|
+
- The user describes a workflow and you are about to suggest creating a new
|
|
20
|
+
skill.
|
|
21
|
+
- The user wants to fork or extend an existing skill.
|
|
22
|
+
|
|
23
|
+
If the user explicitly says to skip search or create from scratch, acknowledge
|
|
24
|
+
that and proceed with the requested creation workflow.
|
|
25
|
+
|
|
26
|
+
## How It Works
|
|
27
|
+
|
|
28
|
+
### Step 1 - Capture Intent
|
|
29
|
+
|
|
30
|
+
Extract:
|
|
31
|
+
|
|
32
|
+
- The task the skill should perform.
|
|
33
|
+
- The trigger conditions for using it.
|
|
34
|
+
- The domain, tools, frameworks, or data sources involved.
|
|
35
|
+
- Three to five search keywords plus useful synonyms.
|
|
36
|
+
|
|
37
|
+
### Step 2 - Search Local Sources
|
|
38
|
+
|
|
39
|
+
Search installed and marketplace skill names first. Local sources are preferred
|
|
40
|
+
because they are already part of the user's environment.
|
|
41
|
+
|
|
42
|
+
```bash
|
|
43
|
+
find ~/.claude/skills -maxdepth 2 -name SKILL.md 2>/dev/null | grep -iE "keyword|synonym"
|
|
44
|
+
find ~/.claude/plugins/marketplaces -path '*/skills/*/SKILL.md' 2>/dev/null | grep -iE "keyword|synonym"
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
Then search frontmatter descriptions:
|
|
48
|
+
|
|
49
|
+
```bash
|
|
50
|
+
grep -RilE "keyword|synonym" ~/.claude/skills ~/.claude/plugins/marketplaces 2>/dev/null
|
|
51
|
+
```
|
|
52
|
+
|
|
53
|
+
### Step 3 - Search Remote Sources
|
|
54
|
+
|
|
55
|
+
Use available GitHub and web search tools. Prefer concise queries:
|
|
56
|
+
|
|
57
|
+
```bash
|
|
58
|
+
gh search repos "claude code skill keyword" --limit 10 --sort stars
|
|
59
|
+
gh search code "name: keyword" --filename SKILL.md --limit 10
|
|
60
|
+
```
|
|
61
|
+
|
|
62
|
+
For web search, use at most three targeted queries such as:
|
|
63
|
+
|
|
64
|
+
```text
|
|
65
|
+
"claude code skill" keyword
|
|
66
|
+
"SKILL.md" keyword
|
|
67
|
+
"everything-claude-code" keyword
|
|
68
|
+
```
|
|
69
|
+
|
|
70
|
+
### Step 4 - Vet External Matches
|
|
71
|
+
|
|
72
|
+
Before recommending any external skill for adoption or forking:
|
|
73
|
+
|
|
74
|
+
- Read the `SKILL.md` frontmatter and instructions.
|
|
75
|
+
- Look for unexpected shell commands, file writes, network calls, credential
|
|
76
|
+
handling, or package installs.
|
|
77
|
+
- Check whether the repository appears maintained.
|
|
78
|
+
- Prefer copying into a fresh local branch and reviewing the diff over editing
|
|
79
|
+
marketplace originals.
|
|
80
|
+
|
|
81
|
+
### Step 5 - Rank Results
|
|
82
|
+
|
|
83
|
+
Rank candidates by:
|
|
84
|
+
|
|
85
|
+
1. Exact keyword match in the skill name.
|
|
86
|
+
2. Keyword or synonym match in description.
|
|
87
|
+
3. Local installed or marketplace source.
|
|
88
|
+
4. Maintained GitHub source with recent activity.
|
|
89
|
+
5. Web-only mention.
|
|
90
|
+
|
|
91
|
+
Cap the final list at 10 results.
|
|
92
|
+
|
|
93
|
+
### Step 6 - Present Decision Options
|
|
94
|
+
|
|
95
|
+
Give the user a short table:
|
|
96
|
+
|
|
97
|
+
| Option | Meaning |
|
|
98
|
+
| --- | --- |
|
|
99
|
+
| Use existing | Invoke or install a matching skill as-is. |
|
|
100
|
+
| Fork or extend | Copy the closest skill and modify it. |
|
|
101
|
+
| Create fresh | Build a new skill after confirming no close match exists. |
|
|
102
|
+
|
|
103
|
+
Only create a new skill after the user chooses that path or after the search
|
|
104
|
+
finds no close match.
|
|
105
|
+
|
|
106
|
+
## Examples
|
|
107
|
+
|
|
108
|
+
### Result Table
|
|
109
|
+
|
|
110
|
+
```markdown
|
|
111
|
+
| # | Skill | Source | Why it matches | Gap |
|
|
112
|
+
| --- | --- | --- | --- | --- |
|
|
113
|
+
| 1 | article-writing | Local ECC | Drafts articles and guides | Not focused on release notes |
|
|
114
|
+
| 2 | content-engine | Local ECC | Multi-format content workflow | Heavier than needed |
|
|
115
|
+
| 3 | blog-writer | GitHub | Blog writing skill with recent commits | Needs security review |
|
|
116
|
+
```
|
|
117
|
+
|
|
118
|
+
### User-Facing Summary
|
|
119
|
+
|
|
120
|
+
```markdown
|
|
121
|
+
I found two close local matches and one external candidate. The closest fit is
|
|
122
|
+
`article-writing`; it covers drafting and revision, but it does not include the
|
|
123
|
+
release-note checklist you asked for. I can either use it as-is, fork it into a
|
|
124
|
+
release-note variant, or create a fresh skill.
|
|
125
|
+
```
|
|
126
|
+
|
|
127
|
+
## Anti-Patterns
|
|
128
|
+
|
|
129
|
+
- Do not jump directly to new skill creation when a search is reasonable.
|
|
130
|
+
- Do not install external skills without reading them first.
|
|
131
|
+
- Do not present a long unranked list of weak matches.
|
|
132
|
+
- Do not treat web-only mentions as trusted sources.
|
|
133
|
+
- Do not edit installed marketplace originals in place.
|
|
134
|
+
|
|
135
|
+
## Related
|
|
136
|
+
|
|
137
|
+
- `search-first` - General search-before-building workflow.
|
|
138
|
+
- `skill-stocktake` - Audit installed skills for health, duplicates, and gaps.
|
|
139
|
+
- `agent-sort` - Categorize and organize existing agents and skills.
|
|
@@ -0,0 +1,193 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: skill-stocktake
|
|
3
|
+
description: Use when auditing Claude skills and commands for quality. Supports Quick Scan (changed skills only) and Full Stocktake modes with sequential subagent batch evaluation.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# skill-stocktake
|
|
7
|
+
|
|
8
|
+
Slash command (`/skill-stocktake`) that audits all Claude skills and commands using a quality checklist + AI holistic judgment. Supports two modes: Quick Scan for recently changed skills, and Full Stocktake for a complete review.
|
|
9
|
+
|
|
10
|
+
## Scope
|
|
11
|
+
|
|
12
|
+
The command targets the following paths **relative to the directory where it is invoked**:
|
|
13
|
+
|
|
14
|
+
| Path | Description |
|
|
15
|
+
|------|-------------|
|
|
16
|
+
| `~/.claude/skills/` | Global skills (all projects) |
|
|
17
|
+
| `{cwd}/.claude/skills/` | Project-level skills (if the directory exists) |
|
|
18
|
+
|
|
19
|
+
**At the start of Phase 1, the command explicitly lists which paths were found and scanned.**
|
|
20
|
+
|
|
21
|
+
### Targeting a specific project
|
|
22
|
+
|
|
23
|
+
To include project-level skills, run from that project's root directory:
|
|
24
|
+
|
|
25
|
+
```bash
|
|
26
|
+
cd ~/path/to/my-project
|
|
27
|
+
/skill-stocktake
|
|
28
|
+
```
|
|
29
|
+
|
|
30
|
+
If the project has no `.claude/skills/` directory, only global skills and commands are evaluated.
|
|
31
|
+
|
|
32
|
+
## Modes
|
|
33
|
+
|
|
34
|
+
| Mode | Trigger | Duration |
|
|
35
|
+
|------|---------|---------|
|
|
36
|
+
| Quick Scan | `results.json` exists (default) | 5–10 min |
|
|
37
|
+
| Full Stocktake | `results.json` absent, or `/skill-stocktake full` | 20–30 min |
|
|
38
|
+
|
|
39
|
+
**Results cache:** `~/.claude/skills/skill-stocktake/results.json`
|
|
40
|
+
|
|
41
|
+
## Quick Scan Flow
|
|
42
|
+
|
|
43
|
+
Re-evaluate only skills that have changed since the last run (5–10 min).
|
|
44
|
+
|
|
45
|
+
1. Read `~/.claude/skills/skill-stocktake/results.json`
|
|
46
|
+
2. Run: `bash ~/.claude/skills/skill-stocktake/scripts/quick-diff.sh \
|
|
47
|
+
~/.claude/skills/skill-stocktake/results.json`
|
|
48
|
+
(Project dir is auto-detected from `$PWD/.claude/skills`; pass it explicitly only if needed)
|
|
49
|
+
3. If output is `[]`: report "No changes since last run." and stop
|
|
50
|
+
4. Re-evaluate only those changed files using the same Phase 2 criteria
|
|
51
|
+
5. Carry forward unchanged skills from previous results
|
|
52
|
+
6. Output only the diff
|
|
53
|
+
7. Run: `bash ~/.claude/skills/skill-stocktake/scripts/save-results.sh \
|
|
54
|
+
~/.claude/skills/skill-stocktake/results.json <<< "$EVAL_RESULTS"`
|
|
55
|
+
|
|
56
|
+
## Full Stocktake Flow
|
|
57
|
+
|
|
58
|
+
### Phase 1 — Inventory
|
|
59
|
+
|
|
60
|
+
Run: `bash ~/.claude/skills/skill-stocktake/scripts/scan.sh`
|
|
61
|
+
|
|
62
|
+
The script enumerates skill files, extracts frontmatter, and collects UTC mtimes.
|
|
63
|
+
Project dir is auto-detected from `$PWD/.claude/skills`; pass it explicitly only if needed.
|
|
64
|
+
Present the scan summary and inventory table from the script output:
|
|
65
|
+
|
|
66
|
+
```
|
|
67
|
+
Scanning:
|
|
68
|
+
✓ ~/.claude/skills/ (17 files)
|
|
69
|
+
✗ {cwd}/.claude/skills/ (not found — global skills only)
|
|
70
|
+
```
|
|
71
|
+
|
|
72
|
+
| Skill | 7d use | 30d use | Description |
|
|
73
|
+
|-------|--------|---------|-------------|
|
|
74
|
+
|
|
75
|
+
### Phase 2 — Quality Evaluation
|
|
76
|
+
|
|
77
|
+
Launch an Agent tool subagent (**general-purpose agent**) with the full inventory and checklist:
|
|
78
|
+
|
|
79
|
+
```text
|
|
80
|
+
Agent(
|
|
81
|
+
subagent_type="general-purpose",
|
|
82
|
+
prompt="
|
|
83
|
+
Evaluate the following skill inventory against the checklist.
|
|
84
|
+
|
|
85
|
+
[INVENTORY]
|
|
86
|
+
|
|
87
|
+
[CHECKLIST]
|
|
88
|
+
|
|
89
|
+
Return JSON for each skill:
|
|
90
|
+
{ \"verdict\": \"Keep\"|\"Improve\"|\"Update\"|\"Retire\"|\"Merge into [X]\", \"reason\": \"...\" }
|
|
91
|
+
"
|
|
92
|
+
)
|
|
93
|
+
```
|
|
94
|
+
|
|
95
|
+
The subagent reads each skill, applies the checklist, and returns per-skill JSON:
|
|
96
|
+
|
|
97
|
+
`{ "verdict": "Keep"|"Improve"|"Update"|"Retire"|"Merge into [X]", "reason": "..." }`
|
|
98
|
+
|
|
99
|
+
**Chunk guidance:** Process ~20 skills per subagent invocation to keep context manageable. Save intermediate results to `results.json` (`status: "in_progress"`) after each chunk.
|
|
100
|
+
|
|
101
|
+
After all skills are evaluated: set `status: "completed"`, proceed to Phase 3.
|
|
102
|
+
|
|
103
|
+
**Resume detection:** If `status: "in_progress"` is found on startup, resume from the first unevaluated skill.
|
|
104
|
+
|
|
105
|
+
Each skill is evaluated against this checklist:
|
|
106
|
+
|
|
107
|
+
```
|
|
108
|
+
- [ ] Content overlap with other skills checked
|
|
109
|
+
- [ ] Overlap with MEMORY.md / CLAUDE.md checked
|
|
110
|
+
- [ ] Freshness of technical references verified (use WebSearch if tool names / CLI flags / APIs are present)
|
|
111
|
+
- [ ] Usage frequency considered
|
|
112
|
+
```
|
|
113
|
+
|
|
114
|
+
Verdict criteria:
|
|
115
|
+
|
|
116
|
+
| Verdict | Meaning |
|
|
117
|
+
|---------|---------|
|
|
118
|
+
| Keep | Useful and current |
|
|
119
|
+
| Improve | Worth keeping, but specific improvements needed |
|
|
120
|
+
| Update | Referenced technology is outdated (verify with WebSearch) |
|
|
121
|
+
| Retire | Low quality, stale, or cost-asymmetric |
|
|
122
|
+
| Merge into [X] | Substantial overlap with another skill; name the merge target |
|
|
123
|
+
|
|
124
|
+
Evaluation is **holistic AI judgment** — not a numeric rubric. Guiding dimensions:
|
|
125
|
+
- **Actionability**: code examples, commands, or steps that let you act immediately
|
|
126
|
+
- **Scope fit**: name, trigger, and content are aligned; not too broad or narrow
|
|
127
|
+
- **Uniqueness**: value not replaceable by MEMORY.md / CLAUDE.md / another skill
|
|
128
|
+
- **Currency**: technical references work in the current environment
|
|
129
|
+
|
|
130
|
+
**Reason quality requirements** — the `reason` field must be self-contained and decision-enabling:
|
|
131
|
+
- Do NOT write "unchanged" alone — always restate the core evidence
|
|
132
|
+
- For **Retire**: state (1) what specific defect was found, (2) what covers the same need instead
|
|
133
|
+
- Bad: `"Superseded"`
|
|
134
|
+
- Good: `"disable-model-invocation: true already set; superseded by continuous-learning-v2 which covers all the same patterns plus confidence scoring. No unique content remains."`
|
|
135
|
+
- For **Merge**: name the target and describe what content to integrate
|
|
136
|
+
- Bad: `"Overlaps with X"`
|
|
137
|
+
- Good: `"42-line thin content; Step 4 of chatlog-to-article already covers the same workflow. Integrate the 'article angle' tip as a note in that skill."`
|
|
138
|
+
- For **Improve**: describe the specific change needed (what section, what action, target size if relevant)
|
|
139
|
+
- Bad: `"Too long"`
|
|
140
|
+
- Good: `"276 lines; Section 'Framework Comparison' (L80–140) duplicates ai-era-architecture-principles; delete it to reach ~150 lines."`
|
|
141
|
+
- For **Keep** (mtime-only change in Quick Scan): restate the original verdict rationale, do not write "unchanged"
|
|
142
|
+
- Bad: `"Unchanged"`
|
|
143
|
+
- Good: `"mtime updated but content unchanged. Unique Python reference explicitly imported by rules/python/; no overlap found."`
|
|
144
|
+
|
|
145
|
+
### Phase 3 — Summary Table
|
|
146
|
+
|
|
147
|
+
| Skill | 7d use | Verdict | Reason |
|
|
148
|
+
|-------|--------|---------|--------|
|
|
149
|
+
|
|
150
|
+
### Phase 4 — Consolidation
|
|
151
|
+
|
|
152
|
+
1. **Retire / Merge**: present detailed justification per file before confirming with user:
|
|
153
|
+
- What specific problem was found (overlap, staleness, broken references, etc.)
|
|
154
|
+
- What alternative covers the same functionality (for Retire: which existing skill/rule; for Merge: the target file and what content to integrate)
|
|
155
|
+
- Impact of removal (any dependent skills, MEMORY.md references, or workflows affected)
|
|
156
|
+
2. **Improve**: present specific improvement suggestions with rationale:
|
|
157
|
+
- What to change and why (e.g., "trim 430→200 lines because sections X/Y duplicate python-patterns")
|
|
158
|
+
- User decides whether to act
|
|
159
|
+
3. **Update**: present updated content with sources checked
|
|
160
|
+
4. Check MEMORY.md line count; propose compression if >100 lines
|
|
161
|
+
|
|
162
|
+
## Results File Schema
|
|
163
|
+
|
|
164
|
+
`~/.claude/skills/skill-stocktake/results.json`:
|
|
165
|
+
|
|
166
|
+
**`evaluated_at`**: Must be set to the actual UTC time of evaluation completion.
|
|
167
|
+
Obtain via Bash: `date -u +%Y-%m-%dT%H:%M:%SZ`. Never use a date-only approximation like `T00:00:00Z`.
|
|
168
|
+
|
|
169
|
+
```json
|
|
170
|
+
{
|
|
171
|
+
"evaluated_at": "2026-02-21T10:00:00Z",
|
|
172
|
+
"mode": "full",
|
|
173
|
+
"batch_progress": {
|
|
174
|
+
"total": 80,
|
|
175
|
+
"evaluated": 80,
|
|
176
|
+
"status": "completed"
|
|
177
|
+
},
|
|
178
|
+
"skills": {
|
|
179
|
+
"skill-name": {
|
|
180
|
+
"path": "~/.claude/skills/skill-name/SKILL.md",
|
|
181
|
+
"verdict": "Keep",
|
|
182
|
+
"reason": "Concrete, actionable, unique value for X workflow",
|
|
183
|
+
"mtime": "2026-01-15T08:30:00Z"
|
|
184
|
+
}
|
|
185
|
+
}
|
|
186
|
+
}
|
|
187
|
+
```
|
|
188
|
+
|
|
189
|
+
## Notes
|
|
190
|
+
|
|
191
|
+
- Evaluation is blind: the same checklist applies to all skills regardless of origin (ECC, self-authored, auto-extracted)
|
|
192
|
+
- Archive / delete operations always require explicit user confirmation
|
|
193
|
+
- No verdict branching by skill origin
|