@heyai-rules/pilo-masterkit 1.2.2 → 2.1.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/.agent/agents/PILO_MASTER.md +77 -77
- package/.agent/agents/backend-specialist.md +263 -263
- package/.agent/agents/code-archaeologist.md +106 -106
- package/.agent/agents/csharp-reviewer.md +101 -0
- package/.agent/agents/dart-build-resolver.md +201 -0
- package/.agent/agents/database-architect.md +226 -226
- package/.agent/agents/debugger.md +225 -225
- package/.agent/agents/devops-engineer.md +242 -242
- package/.agent/agents/documentation-writer.md +104 -104
- package/.agent/agents/explorer-agent.md +73 -73
- package/.agent/agents/frontend-specialist.md +593 -593
- package/.agent/agents/game-developer.md +162 -162
- package/.agent/agents/gan-evaluator.md +209 -0
- package/.agent/agents/gan-generator.md +131 -0
- package/.agent/agents/gan-planner.md +99 -0
- package/.agent/agents/healthcare-reviewer.md +83 -0
- package/.agent/agents/mobile-developer.md +377 -377
- package/.agent/agents/opensource-forker.md +198 -0
- package/.agent/agents/opensource-packager.md +249 -0
- package/.agent/agents/opensource-sanitizer.md +188 -0
- package/.agent/agents/orchestrator.md +416 -416
- package/.agent/agents/penetration-tester.md +188 -188
- package/.agent/agents/performance-optimizer.md +446 -187
- package/.agent/agents/personas/athena-agent/agent.json +10 -0
- package/.agent/agents/personas/athena-agent/athena-backend-logic-architecture-profile.md +189 -0
- package/.agent/agents/personas/athena-agent/context-files/agents.md +55 -0
- package/.agent/agents/personas/athena-agent/context-files/identity.md +23 -0
- package/.agent/agents/personas/athena-agent/context-files/soul.md +51 -0
- package/.agent/agents/personas/athena-agent/context-files/user-predefined.md +15 -0
- package/.agent/agents/personas/athena-agent/user-context-files/system/bootstrap.md +37 -0
- package/.agent/agents/personas/athena-agent/user-context-files/system/user.md +45 -0
- package/.agent/agents/personas/da-vinci-agent/agent.json +10 -0
- package/.agent/agents/personas/da-vinci-agent/context-files/agents.md +55 -0
- package/.agent/agents/personas/da-vinci-agent/context-files/identity.md +23 -0
- package/.agent/agents/personas/da-vinci-agent/context-files/soul.md +51 -0
- package/.agent/agents/personas/da-vinci-agent/context-files/user-predefined.md +15 -0
- package/.agent/agents/personas/da-vinci-agent/da-vinci-frontend-ui-ux-design-profile.md +189 -0
- package/.agent/agents/personas/da-vinci-agent/user-context-files/system/bootstrap.md +37 -0
- package/.agent/agents/personas/da-vinci-agent/user-context-files/system/user.md +45 -0
- package/.agent/agents/personas/duong-tang-agent/agent.json +10 -0
- package/.agent/agents/personas/duong-tang-agent/context-files/agents.md +55 -0
- package/.agent/agents/personas/duong-tang-agent/context-files/identity.md +23 -0
- package/.agent/agents/personas/duong-tang-agent/context-files/soul.md +51 -0
- package/.agent/agents/personas/duong-tang-agent/context-files/user-predefined.md +15 -0
- package/.agent/agents/personas/duong-tang-agent/tang-monk-quality-testing-documentation-profile.md +189 -0
- package/.agent/agents/personas/duong-tang-agent/user-context-files/system/bootstrap.md +37 -0
- package/.agent/agents/personas/duong-tang-agent/user-context-files/system/user.md +45 -0
- package/.agent/agents/personas/gia-cat-luong-agent/agent.json +10 -0
- package/.agent/agents/personas/gia-cat-luong-agent/context-files/agents.md +55 -0
- package/.agent/agents/personas/gia-cat-luong-agent/context-files/identity.md +23 -0
- package/.agent/agents/personas/gia-cat-luong-agent/context-files/soul.md +51 -0
- package/.agent/agents/personas/gia-cat-luong-agent/context-files/user-predefined.md +15 -0
- package/.agent/agents/personas/gia-cat-luong-agent/kongming-research-strategy-analysis-profile.md +189 -0
- package/.agent/agents/personas/gia-cat-luong-agent/user-context-files/system/bootstrap.md +37 -0
- package/.agent/agents/personas/gia-cat-luong-agent/user-context-files/system/user.md +45 -0
- package/.agent/agents/personas/mihata-agent/agent.json +10 -0
- package/.agent/agents/personas/mihata-agent/context-files/agents.md +55 -0
- package/.agent/agents/personas/mihata-agent/context-files/identity.md +23 -0
- package/.agent/agents/personas/mihata-agent/context-files/soul.md +51 -0
- package/.agent/agents/personas/mihata-agent/context-files/user-predefined.md +15 -0
- package/.agent/agents/personas/mihata-agent/mihata-multi-agent-orchestration-profile.md +189 -0
- package/.agent/agents/personas/mihata-agent/user-context-files/system/bootstrap.md +37 -0
- package/.agent/agents/personas/mihata-agent/user-context-files/system/user.md +45 -0
- package/.agent/agents/personas/tesla-agent/agent.json +10 -0
- package/.agent/agents/personas/tesla-agent/context-files/agents.md +55 -0
- package/.agent/agents/personas/tesla-agent/context-files/identity.md +23 -0
- package/.agent/agents/personas/tesla-agent/context-files/soul.md +51 -0
- package/.agent/agents/personas/tesla-agent/context-files/user-predefined.md +15 -0
- package/.agent/agents/personas/tesla-agent/tesla-fullstack-system-optimization-profile.md +189 -0
- package/.agent/agents/personas/tesla-agent/user-context-files/system/bootstrap.md +37 -0
- package/.agent/agents/personas/tesla-agent/user-context-files/system/user.md +45 -0
- package/.agent/agents/personas/tu-ma-y-agent/agent.json +10 -0
- package/.agent/agents/personas/tu-ma-y-agent/context-files/agents.md +55 -0
- package/.agent/agents/personas/tu-ma-y-agent/context-files/identity.md +23 -0
- package/.agent/agents/personas/tu-ma-y-agent/context-files/soul.md +51 -0
- package/.agent/agents/personas/tu-ma-y-agent/context-files/user-predefined.md +15 -0
- package/.agent/agents/personas/tu-ma-y-agent/simayi-feasibility-risk-control-profile.md +189 -0
- package/.agent/agents/personas/tu-ma-y-agent/user-context-files/system/bootstrap.md +37 -0
- package/.agent/agents/personas/tu-ma-y-agent/user-context-files/system/user.md +45 -0
- package/.agent/agents/personas/venti-agent/agent.json +10 -0
- package/.agent/agents/personas/venti-agent/context-files/agents.md +55 -0
- package/.agent/agents/personas/venti-agent/context-files/identity.md +23 -0
- package/.agent/agents/personas/venti-agent/context-files/soul.md +51 -0
- package/.agent/agents/personas/venti-agent/context-files/user-predefined.md +15 -0
- package/.agent/agents/personas/venti-agent/user-context-files/system/bootstrap.md +37 -0
- package/.agent/agents/personas/venti-agent/user-context-files/system/user.md +45 -0
- package/.agent/agents/personas/venti-agent/venti-learning-communication-mentoring-profile.md +189 -0
- package/.agent/agents/product-manager.md +112 -112
- package/.agent/agents/product-owner.md +95 -95
- package/.agent/agents/project-planner.md +406 -406
- package/.agent/agents/qa-automation-engineer.md +103 -103
- package/.agent/agents/security-auditor.md +170 -170
- package/.agent/agents/seo-specialist.md +111 -111
- package/.agent/agents/test-engineer.md +158 -158
- package/.agent/contexts/dev.md +20 -0
- package/.agent/contexts/research.md +26 -0
- package/.agent/contexts/review.md +22 -0
- package/.agent/hooks/hooks.json +395 -0
- package/.agent/hooks/readme.md +222 -0
- package/.agent/mcp-configs/mcp-servers.json +181 -0
- package/.agent/rules/ARCHITECTURAL_BLUEPRINTS.md +62 -62
- package/.agent/rules/CODE_CRAFTSMANSHIP.md +69 -69
- package/.agent/rules/CORE_RULES.md +72 -72
- package/.agent/rules/PROJECT_MAP.md +58 -58
- package/.agent/rules/QUALITY_ASSURANCE.md +54 -54
- package/.agent/rules/SECURITY_ARMOR.md +44 -44
- package/.agent/rules/VERSION_ORCHESTRATION.md +64 -64
- package/.agent/rules/WORKFLOW_ORCHESTRATION.md +55 -55
- package/.agent/rules/common/agents.md +50 -0
- package/.agent/rules/common/code-review.md +124 -0
- package/.agent/rules/common/coding-style.md +48 -0
- package/.agent/rules/common/development-workflow.md +44 -0
- package/.agent/rules/common/git-workflow.md +24 -0
- package/.agent/rules/common/hooks.md +30 -0
- package/.agent/rules/common/patterns.md +31 -0
- package/.agent/rules/common/performance.md +55 -0
- package/.agent/rules/common/security.md +29 -0
- package/.agent/rules/common/testing.md +29 -0
- package/.agent/rules/cpp/coding-style.md +44 -0
- package/.agent/rules/cpp/hooks.md +39 -0
- package/.agent/rules/cpp/patterns.md +51 -0
- package/.agent/rules/cpp/security.md +51 -0
- package/.agent/rules/cpp/testing.md +44 -0
- package/.agent/rules/csharp/coding-style.md +72 -0
- package/.agent/rules/csharp/hooks.md +25 -0
- package/.agent/rules/csharp/patterns.md +50 -0
- package/.agent/rules/csharp/security.md +58 -0
- package/.agent/rules/csharp/testing.md +46 -0
- package/.agent/rules/dart/coding-style.md +159 -0
- package/.agent/rules/dart/hooks.md +66 -0
- package/.agent/rules/dart/patterns.md +261 -0
- package/.agent/rules/dart/security.md +135 -0
- package/.agent/rules/dart/testing.md +215 -0
- package/.agent/rules/golang/coding-style.md +32 -0
- package/.agent/rules/golang/hooks.md +17 -0
- package/.agent/rules/golang/patterns.md +45 -0
- package/.agent/rules/golang/security.md +34 -0
- package/.agent/rules/golang/testing.md +31 -0
- package/.agent/rules/java/coding-style.md +114 -0
- package/.agent/rules/java/hooks.md +18 -0
- package/.agent/rules/java/patterns.md +146 -0
- package/.agent/rules/java/security.md +100 -0
- package/.agent/rules/java/testing.md +131 -0
- package/.agent/rules/kotlin/coding-style.md +86 -0
- package/.agent/rules/kotlin/hooks.md +17 -0
- package/.agent/rules/kotlin/patterns.md +146 -0
- package/.agent/rules/kotlin/security.md +82 -0
- package/.agent/rules/kotlin/testing.md +128 -0
- package/.agent/rules/perl/coding-style.md +46 -0
- package/.agent/rules/perl/hooks.md +22 -0
- package/.agent/rules/perl/patterns.md +76 -0
- package/.agent/rules/perl/security.md +69 -0
- package/.agent/rules/perl/testing.md +54 -0
- package/.agent/rules/php/coding-style.md +40 -0
- package/.agent/rules/php/hooks.md +24 -0
- package/.agent/rules/php/patterns.md +33 -0
- package/.agent/rules/php/security.md +37 -0
- package/.agent/rules/php/testing.md +39 -0
- package/.agent/rules/python/coding-style.md +42 -0
- package/.agent/rules/python/hooks.md +19 -0
- package/.agent/rules/python/patterns.md +39 -0
- package/.agent/rules/python/security.md +30 -0
- package/.agent/rules/python/testing.md +38 -0
- package/.agent/rules/readme.md +111 -0
- package/.agent/rules/rust/coding-style.md +151 -0
- package/.agent/rules/rust/hooks.md +16 -0
- package/.agent/rules/rust/patterns.md +168 -0
- package/.agent/rules/rust/security.md +141 -0
- package/.agent/rules/rust/testing.md +154 -0
- package/.agent/rules/swift/coding-style.md +47 -0
- package/.agent/rules/swift/hooks.md +20 -0
- package/.agent/rules/swift/patterns.md +66 -0
- package/.agent/rules/swift/security.md +33 -0
- package/.agent/rules/swift/testing.md +45 -0
- package/.agent/rules/typescript/coding-style.md +199 -0
- package/.agent/rules/typescript/hooks.md +22 -0
- package/.agent/rules/typescript/patterns.md +52 -0
- package/.agent/rules/typescript/security.md +28 -0
- package/.agent/rules/typescript/testing.md +18 -0
- package/.agent/rules/web/coding-style.md +96 -0
- package/.agent/rules/web/design-quality.md +63 -0
- package/.agent/rules/web/hooks.md +120 -0
- package/.agent/rules/web/patterns.md +79 -0
- package/.agent/rules/web/performance.md +64 -0
- package/.agent/rules/web/security.md +57 -0
- package/.agent/rules/web/testing.md +55 -0
- package/.agent/rules/zh/agents.md +50 -0
- package/.agent/rules/zh/code-review.md +124 -0
- package/.agent/rules/zh/coding-style.md +48 -0
- package/.agent/rules/zh/development-workflow.md +44 -0
- package/.agent/rules/zh/git-workflow.md +24 -0
- package/.agent/rules/zh/hooks.md +30 -0
- package/.agent/rules/zh/patterns.md +31 -0
- package/.agent/rules/zh/performance.md +55 -0
- package/.agent/rules/zh/readme.md +108 -0
- package/.agent/rules/zh/security.md +29 -0
- package/.agent/rules/zh/testing.md +29 -0
- package/.agent/scripts/auto_preview.py +148 -148
- package/.agent/scripts/checklist.py +217 -217
- package/.agent/scripts/session_manager.py +120 -120
- package/.agent/scripts/verify_all.py +327 -327
- package/.agent/skills/agent-eval/SKILL.md +145 -0
- package/.agent/skills/agent-harness-construction/SKILL.md +73 -0
- package/.agent/skills/agent-payment-x402/SKILL.md +178 -0
- package/.agent/skills/agentic-engineering/SKILL.md +63 -0
- package/.agent/skills/ai-first-engineering/SKILL.md +51 -0
- package/.agent/skills/ai-regression-testing/SKILL.md +385 -0
- package/.agent/skills/android-clean-architecture/SKILL.md +339 -0
- package/.agent/skills/api-design/SKILL.md +523 -0
- package/.agent/skills/api-patterns/SKILL.md +81 -81
- package/.agent/skills/api-patterns/api-style.md +42 -42
- package/.agent/skills/api-patterns/auth.md +24 -24
- package/.agent/skills/api-patterns/documentation.md +26 -26
- package/.agent/skills/api-patterns/graphql.md +41 -41
- package/.agent/skills/api-patterns/rate-limiting.md +31 -31
- package/.agent/skills/api-patterns/response.md +37 -37
- package/.agent/skills/api-patterns/rest.md +40 -40
- package/.agent/skills/api-patterns/scripts/api_validator.py +211 -211
- package/.agent/skills/api-patterns/security-testing.md +122 -122
- package/.agent/skills/api-patterns/trpc.md +41 -41
- package/.agent/skills/api-patterns/versioning.md +22 -22
- package/.agent/skills/app-builder/SKILL.md +75 -75
- package/.agent/skills/app-builder/agent-coordination.md +71 -71
- package/.agent/skills/app-builder/feature-building.md +53 -53
- package/.agent/skills/app-builder/project-detection.md +34 -34
- package/.agent/skills/app-builder/scaffolding.md +118 -118
- package/.agent/skills/app-builder/tech-stack.md +41 -41
- package/.agent/skills/app-builder/templates/SKILL.md +39 -39
- package/.agent/skills/app-builder/templates/astro-static/TEMPLATE.md +76 -76
- package/.agent/skills/app-builder/templates/chrome-extension/TEMPLATE.md +92 -92
- package/.agent/skills/app-builder/templates/cli-tool/TEMPLATE.md +88 -88
- package/.agent/skills/app-builder/templates/electron-desktop/TEMPLATE.md +88 -88
- package/.agent/skills/app-builder/templates/express-api/TEMPLATE.md +83 -83
- package/.agent/skills/app-builder/templates/flutter-app/TEMPLATE.md +90 -90
- package/.agent/skills/app-builder/templates/monorepo-turborepo/TEMPLATE.md +90 -90
- package/.agent/skills/app-builder/templates/nextjs-fullstack/TEMPLATE.md +122 -122
- package/.agent/skills/app-builder/templates/nextjs-saas/TEMPLATE.md +122 -122
- package/.agent/skills/app-builder/templates/nextjs-static/TEMPLATE.md +169 -169
- package/.agent/skills/app-builder/templates/nuxt-app/TEMPLATE.md +134 -134
- package/.agent/skills/app-builder/templates/python-fastapi/TEMPLATE.md +83 -83
- package/.agent/skills/app-builder/templates/react-native-app/TEMPLATE.md +119 -119
- package/.agent/skills/architecture/SKILL.md +55 -55
- package/.agent/skills/architecture/context-discovery.md +43 -43
- package/.agent/skills/architecture/examples.md +94 -94
- package/.agent/skills/architecture/pattern-selection.md +68 -68
- package/.agent/skills/architecture/patterns-reference.md +50 -50
- package/.agent/skills/architecture/trade-off-analysis.md +77 -77
- package/.agent/skills/architecture-decision-records/SKILL.md +179 -0
- package/.agent/skills/article-writing/SKILL.md +79 -0
- package/.agent/skills/autonomous-agent-harness/SKILL.md +267 -0
- package/.agent/skills/autonomous-loops/SKILL.md +610 -0
- package/.agent/skills/backend-patterns/SKILL.md +598 -0
- package/.agent/skills/bash-linux/SKILL.md +199 -199
- package/.agent/skills/behavioral-modes/SKILL.md +242 -242
- package/.agent/skills/benchmark/SKILL.md +93 -0
- package/.agent/skills/blueprint/SKILL.md +105 -0
- package/.agent/skills/brainstorming/SKILL.md +163 -163
- package/.agent/skills/brainstorming/dynamic-questioning.md +350 -350
- package/.agent/skills/brand-voice/SKILL.md +97 -0
- package/.agent/skills/brand-voice/references/voice-profile-schema.md +55 -0
- package/.agent/skills/browser-qa/SKILL.md +87 -0
- package/.agent/skills/bun-runtime/SKILL.md +84 -0
- package/.agent/skills/canary-watch/SKILL.md +99 -0
- package/.agent/skills/carrier-relationship-management/SKILL.md +212 -0
- package/.agent/skills/ck/SKILL.md +147 -0
- package/.agent/skills/ck/commands/forget.mjs +44 -0
- package/.agent/skills/ck/commands/info.mjs +24 -0
- package/.agent/skills/ck/commands/init.mjs +143 -0
- package/.agent/skills/ck/commands/list.mjs +40 -0
- package/.agent/skills/ck/commands/migrate.mjs +202 -0
- package/.agent/skills/ck/commands/resume.mjs +36 -0
- package/.agent/skills/ck/commands/save.mjs +210 -0
- package/.agent/skills/ck/commands/shared.mjs +387 -0
- package/.agent/skills/ck/hooks/session-start.mjs +224 -0
- package/.agent/skills/claude-api/SKILL.md +337 -0
- package/.agent/skills/claude-devfleet/SKILL.md +103 -0
- package/.agent/skills/clean-code/SKILL.md +201 -201
- package/.agent/skills/click-path-audit/SKILL.md +244 -0
- package/.agent/skills/clickhouse-io/SKILL.md +439 -0
- package/.agent/skills/code-review-checklist/SKILL.md +109 -109
- package/.agent/skills/codebase-onboarding/SKILL.md +233 -0
- package/.agent/skills/coding-standards/SKILL.md +530 -0
- package/.agent/skills/compose-multiplatform-patterns/SKILL.md +299 -0
- package/.agent/skills/configure-ecc/SKILL.md +367 -0
- package/.agent/skills/connections-optimizer/SKILL.md +189 -0
- package/.agent/skills/content-engine/SKILL.md +131 -0
- package/.agent/skills/content-hash-cache-pattern/SKILL.md +161 -0
- package/.agent/skills/context-budget/SKILL.md +135 -0
- package/.agent/skills/continuous-agent-loop/SKILL.md +45 -0
- package/.agent/skills/continuous-learning/SKILL.md +119 -0
- package/.agent/skills/continuous-learning/config.json +18 -0
- package/.agent/skills/continuous-learning/evaluate-session.sh +69 -0
- package/.agent/skills/continuous-learning-v2/SKILL.md +365 -0
- package/.agent/skills/continuous-learning-v2/agents/observer-loop.sh +271 -0
- package/.agent/skills/continuous-learning-v2/agents/observer.md +198 -0
- package/.agent/skills/continuous-learning-v2/agents/session-guardian.sh +150 -0
- package/.agent/skills/continuous-learning-v2/agents/start-observer.sh +244 -0
- package/.agent/skills/continuous-learning-v2/config.json +8 -0
- package/.agent/skills/continuous-learning-v2/hooks/observe.sh +428 -0
- package/.agent/skills/continuous-learning-v2/scripts/detect-project.sh +228 -0
- package/.agent/skills/continuous-learning-v2/scripts/instinct-cli.py +1426 -0
- package/.agent/skills/continuous-learning-v2/scripts/test-parse-instinct.py +984 -0
- package/.agent/skills/cost-aware-llm-pipeline/SKILL.md +183 -0
- package/.agent/skills/cpp-coding-standards/SKILL.md +723 -0
- package/.agent/skills/cpp-testing/SKILL.md +324 -0
- package/.agent/skills/crosspost/SKILL.md +111 -0
- package/.agent/skills/csharp-testing/SKILL.md +321 -0
- package/.agent/skills/customer-billing-ops/SKILL.md +140 -0
- package/.agent/skills/customs-trade-compliance/SKILL.md +263 -0
- package/.agent/skills/dart-flutter-patterns/SKILL.md +563 -0
- package/.agent/skills/data-scraper-agent/SKILL.md +764 -0
- package/.agent/skills/database-design/SKILL.md +52 -52
- package/.agent/skills/database-design/database-selection.md +43 -43
- package/.agent/skills/database-design/indexing.md +39 -39
- package/.agent/skills/database-design/migrations.md +48 -48
- package/.agent/skills/database-design/optimization.md +36 -36
- package/.agent/skills/database-design/orm-selection.md +30 -30
- package/.agent/skills/database-design/schema-design.md +56 -56
- package/.agent/skills/database-design/scripts/schema_validator.py +172 -172
- package/.agent/skills/database-migrations/SKILL.md +429 -0
- package/.agent/skills/deep-research/SKILL.md +155 -0
- package/.agent/skills/deployment-patterns/SKILL.md +427 -0
- package/.agent/skills/deployment-procedures/SKILL.md +241 -241
- package/.agent/skills/design-system/SKILL.md +82 -0
- package/.agent/skills/django-patterns/SKILL.md +734 -0
- package/.agent/skills/django-security/SKILL.md +593 -0
- package/.agent/skills/django-tdd/SKILL.md +729 -0
- package/.agent/skills/django-verification/SKILL.md +469 -0
- package/.agent/skills/dmux-workflows/SKILL.md +191 -0
- package/.agent/skills/doc.md +177 -177
- package/.agent/skills/docker-patterns/SKILL.md +364 -0
- package/.agent/skills/documentation-lookup/SKILL.md +90 -0
- package/.agent/skills/documentation-templates/SKILL.md +194 -194
- package/.agent/skills/dotnet-patterns/SKILL.md +321 -0
- package/.agent/skills/e2e-testing/SKILL.md +326 -0
- package/.agent/skills/energy-procurement/SKILL.md +228 -0
- package/.agent/skills/enterprise-agent-ops/SKILL.md +50 -0
- package/.agent/skills/eval-harness/SKILL.md +270 -0
- package/.agent/skills/exa-search/SKILL.md +103 -0
- package/.agent/skills/fal-ai-media/SKILL.md +284 -0
- package/.agent/skills/flutter-dart-code-review/SKILL.md +435 -0
- package/.agent/skills/foundation-models-on-device/SKILL.md +243 -0
- package/.agent/skills/frontend-design/SKILL.md +452 -452
- package/.agent/skills/frontend-design/animation-guide.md +331 -331
- package/.agent/skills/frontend-design/color-system.md +311 -311
- package/.agent/skills/frontend-design/decision-trees.md +418 -418
- package/.agent/skills/frontend-design/motion-graphics.md +306 -306
- package/.agent/skills/frontend-design/scripts/accessibility_checker.py +183 -183
- package/.agent/skills/frontend-design/scripts/ux_audit.py +722 -722
- package/.agent/skills/frontend-design/typography-system.md +345 -345
- package/.agent/skills/frontend-design/ux-psychology.md +1116 -1116
- package/.agent/skills/frontend-design/visual-effects.md +383 -383
- package/.agent/skills/frontend-patterns/SKILL.md +642 -0
- package/.agent/skills/frontend-slides/SKILL.md +184 -0
- package/.agent/skills/frontend-slides/style-presets.md +330 -0
- package/.agent/skills/game-development/2d-games/SKILL.md +119 -119
- package/.agent/skills/game-development/3d-games/SKILL.md +135 -135
- package/.agent/skills/game-development/SKILL.md +167 -167
- package/.agent/skills/game-development/game-art/SKILL.md +185 -185
- package/.agent/skills/game-development/game-audio/SKILL.md +190 -190
- package/.agent/skills/game-development/game-design/SKILL.md +129 -129
- package/.agent/skills/game-development/mobile-games/SKILL.md +108 -108
- package/.agent/skills/game-development/multiplayer/SKILL.md +132 -132
- package/.agent/skills/game-development/pc-games/SKILL.md +144 -144
- package/.agent/skills/game-development/vr-ar/SKILL.md +123 -123
- package/.agent/skills/game-development/web-games/SKILL.md +150 -150
- package/.agent/skills/gan-style-harness/SKILL.md +278 -0
- package/.agent/skills/geo-fundamentals/SKILL.md +156 -156
- package/.agent/skills/geo-fundamentals/scripts/geo_checker.py +289 -289
- package/.agent/skills/git-workflow/SKILL.md +715 -0
- package/.agent/skills/golang-patterns/SKILL.md +674 -0
- package/.agent/skills/golang-testing/SKILL.md +720 -0
- package/.agent/skills/google-workspace-ops/SKILL.md +95 -0
- package/.agent/skills/healthcare-cdss-patterns/SKILL.md +245 -0
- package/.agent/skills/healthcare-emr-patterns/SKILL.md +159 -0
- package/.agent/skills/healthcare-eval-harness/SKILL.md +207 -0
- package/.agent/skills/healthcare-phi-compliance/SKILL.md +145 -0
- package/.agent/skills/hexagonal-architecture/SKILL.md +276 -0
- package/.agent/skills/i18n-localization/SKILL.md +154 -154
- package/.agent/skills/i18n-localization/scripts/i18n_checker.py +241 -241
- package/.agent/skills/intelligent-routing/SKILL.md +335 -335
- package/.agent/skills/inventory-demand-planning/SKILL.md +247 -0
- package/.agent/skills/investor-materials/SKILL.md +96 -0
- package/.agent/skills/investor-outreach/SKILL.md +91 -0
- package/.agent/skills/iterative-retrieval/SKILL.md +211 -0
- package/.agent/skills/java-coding-standards/SKILL.md +147 -0
- package/.agent/skills/jira-integration/SKILL.md +293 -0
- package/.agent/skills/jpa-patterns/SKILL.md +151 -0
- package/.agent/skills/kotlin-coroutines-flows/SKILL.md +284 -0
- package/.agent/skills/kotlin-exposed-patterns/SKILL.md +719 -0
- package/.agent/skills/kotlin-ktor-patterns/SKILL.md +689 -0
- package/.agent/skills/kotlin-patterns/SKILL.md +711 -0
- package/.agent/skills/kotlin-testing/SKILL.md +824 -0
- package/.agent/skills/laravel-patterns/SKILL.md +415 -0
- package/.agent/skills/laravel-plugin-discovery/SKILL.md +229 -0
- package/.agent/skills/laravel-security/SKILL.md +285 -0
- package/.agent/skills/laravel-tdd/SKILL.md +283 -0
- package/.agent/skills/laravel-verification/SKILL.md +179 -0
- package/.agent/skills/lead-intelligence/SKILL.md +321 -0
- package/.agent/skills/lead-intelligence/agents/enrichment-agent.md +85 -0
- package/.agent/skills/lead-intelligence/agents/mutual-mapper.md +75 -0
- package/.agent/skills/lead-intelligence/agents/outreach-drafter.md +98 -0
- package/.agent/skills/lead-intelligence/agents/signal-scorer.md +60 -0
- package/.agent/skills/lint-and-validate/SKILL.md +45 -45
- package/.agent/skills/lint-and-validate/scripts/lint_runner.py +184 -184
- package/.agent/skills/lint-and-validate/scripts/type_coverage.py +173 -173
- package/.agent/skills/liquid-glass-design/SKILL.md +279 -0
- package/.agent/skills/logistics-exception-management/SKILL.md +222 -0
- package/.agent/skills/manim-video/SKILL.md +89 -0
- package/.agent/skills/manim-video/assets/network-graph-scene.py +52 -0
- package/.agent/skills/market-research/SKILL.md +75 -0
- package/.agent/skills/mcp-builder/SKILL.md +173 -113
- package/.agent/skills/mcp-builder/license.txt +202 -0
- package/.agent/skills/mcp-builder/reference/evaluation.md +602 -0
- package/.agent/skills/mcp-builder/reference/mcp-best-practices.md +249 -0
- package/.agent/skills/mcp-builder/reference/node-mcp-server.md +970 -0
- package/.agent/skills/mcp-builder/reference/python-mcp-server.md +719 -0
- package/.agent/skills/mcp-builder/scripts/connections.py +151 -0
- package/.agent/skills/mcp-builder/scripts/evaluation.py +373 -0
- package/.agent/skills/mcp-builder/scripts/example-evaluation.xml +22 -0
- package/.agent/skills/mcp-builder/scripts/requirements.txt +2 -0
- package/.agent/skills/mcp-server-patterns/SKILL.md +67 -0
- package/.agent/skills/mobile-design/SKILL.md +394 -394
- package/.agent/skills/mobile-design/decision-trees.md +516 -516
- package/.agent/skills/mobile-design/mobile-backend.md +491 -491
- package/.agent/skills/mobile-design/mobile-color-system.md +420 -420
- package/.agent/skills/mobile-design/mobile-debugging.md +122 -122
- package/.agent/skills/mobile-design/mobile-design-thinking.md +357 -357
- package/.agent/skills/mobile-design/mobile-navigation.md +458 -458
- package/.agent/skills/mobile-design/mobile-performance.md +767 -767
- package/.agent/skills/mobile-design/mobile-testing.md +356 -356
- package/.agent/skills/mobile-design/mobile-typography.md +433 -433
- package/.agent/skills/mobile-design/platform-android.md +666 -666
- package/.agent/skills/mobile-design/platform-ios.md +561 -561
- package/.agent/skills/mobile-design/scripts/mobile_audit.py +670 -670
- package/.agent/skills/mobile-design/touch-psychology.md +537 -537
- package/.agent/skills/nanoclaw-repl/SKILL.md +33 -0
- package/.agent/skills/nestjs-patterns/SKILL.md +230 -0
- package/.agent/skills/nextjs-react-expert/1-async-eliminating-waterfalls.md +351 -351
- package/.agent/skills/nextjs-react-expert/2-bundle-bundle-size-optimization.md +240 -240
- package/.agent/skills/nextjs-react-expert/3-server-server-side-performance.md +490 -490
- package/.agent/skills/nextjs-react-expert/4-client-client-side-data-fetching.md +264 -264
- package/.agent/skills/nextjs-react-expert/5-rerender-re-render-optimization.md +581 -581
- package/.agent/skills/nextjs-react-expert/6-rendering-rendering-performance.md +432 -432
- package/.agent/skills/nextjs-react-expert/7-js-javascript-performance.md +684 -684
- package/.agent/skills/nextjs-react-expert/8-advanced-advanced-patterns.md +150 -150
- package/.agent/skills/nextjs-react-expert/9-cache-components.md +103 -103
- package/.agent/skills/nextjs-react-expert/SKILL.md +293 -293
- package/.agent/skills/nextjs-react-expert/scripts/convert_rules.py +222 -222
- package/.agent/skills/nextjs-react-expert/scripts/react_performance_checker.py +252 -252
- package/.agent/skills/nextjs-turbopack/SKILL.md +44 -0
- package/.agent/skills/nodejs-best-practices/SKILL.md +333 -333
- package/.agent/skills/nutrient-document-processing/SKILL.md +167 -0
- package/.agent/skills/nuxt4-patterns/SKILL.md +100 -0
- package/.agent/skills/openclaw-persona-forge/SKILL.md +296 -0
- package/.agent/skills/openclaw-persona-forge/gacha.py +224 -0
- package/.agent/skills/openclaw-persona-forge/gacha.sh +5 -0
- package/.agent/skills/openclaw-persona-forge/references/avatar-style.md +124 -0
- package/.agent/skills/openclaw-persona-forge/references/boundary-rules.md +53 -0
- package/.agent/skills/openclaw-persona-forge/references/error-handling.md +53 -0
- package/.agent/skills/openclaw-persona-forge/references/identity-tension.md +48 -0
- package/.agent/skills/openclaw-persona-forge/references/naming-system.md +39 -0
- package/.agent/skills/openclaw-persona-forge/references/output-template.md +166 -0
- package/.agent/skills/opensource-pipeline/SKILL.md +255 -0
- package/.agent/skills/parallel-agents/SKILL.md +175 -175
- package/.agent/skills/performance-profiling/SKILL.md +143 -143
- package/.agent/skills/performance-profiling/scripts/lighthouse_audit.py +76 -76
- package/.agent/skills/perl-patterns/SKILL.md +504 -0
- package/.agent/skills/perl-security/SKILL.md +503 -0
- package/.agent/skills/perl-testing/SKILL.md +475 -0
- package/.agent/skills/plan-writing/SKILL.md +152 -152
- package/.agent/skills/plankton-code-quality/SKILL.md +236 -0
- package/.agent/skills/postgres-patterns/SKILL.md +147 -0
- package/.agent/skills/powershell-windows/SKILL.md +167 -167
- package/.agent/skills/product-lens/SKILL.md +85 -0
- package/.agent/skills/production-scheduling/SKILL.md +238 -0
- package/.agent/skills/project-flow-ops/SKILL.md +111 -0
- package/.agent/skills/project-guidelines-example/SKILL.md +349 -0
- package/.agent/skills/prompt-optimizer/SKILL.md +397 -0
- package/.agent/skills/python-patterns/SKILL.md +750 -441
- package/.agent/skills/python-testing/SKILL.md +816 -0
- package/.agent/skills/pytorch-patterns/SKILL.md +396 -0
- package/.agent/skills/quality-nonconformance/SKILL.md +260 -0
- package/.agent/skills/ralphinho-rfc-pipeline/SKILL.md +67 -0
- package/.agent/skills/red-team-tactics/SKILL.md +199 -199
- package/.agent/skills/regex-vs-llm-structured-text/SKILL.md +220 -0
- package/.agent/skills/remotion-video-creation/SKILL.md +43 -0
- package/.agent/skills/remotion-video-creation/rules/3d.md +86 -0
- package/.agent/skills/remotion-video-creation/rules/animations.md +29 -0
- package/.agent/skills/remotion-video-creation/rules/assets/charts-bar-chart.tsx +173 -0
- package/.agent/skills/remotion-video-creation/rules/assets/text-animations-typewriter.tsx +100 -0
- package/.agent/skills/remotion-video-creation/rules/assets/text-animations-word-highlight.tsx +108 -0
- package/.agent/skills/remotion-video-creation/rules/assets.md +78 -0
- package/.agent/skills/remotion-video-creation/rules/audio.md +172 -0
- package/.agent/skills/remotion-video-creation/rules/calculate-metadata.md +104 -0
- package/.agent/skills/remotion-video-creation/rules/can-decode.md +75 -0
- package/.agent/skills/remotion-video-creation/rules/charts.md +58 -0
- package/.agent/skills/remotion-video-creation/rules/compositions.md +146 -0
- package/.agent/skills/remotion-video-creation/rules/display-captions.md +126 -0
- package/.agent/skills/remotion-video-creation/rules/extract-frames.md +229 -0
- package/.agent/skills/remotion-video-creation/rules/fonts.md +152 -0
- package/.agent/skills/remotion-video-creation/rules/get-audio-duration.md +58 -0
- package/.agent/skills/remotion-video-creation/rules/get-video-dimensions.md +68 -0
- package/.agent/skills/remotion-video-creation/rules/get-video-duration.md +58 -0
- package/.agent/skills/remotion-video-creation/rules/gifs.md +138 -0
- package/.agent/skills/remotion-video-creation/rules/images.md +130 -0
- package/.agent/skills/remotion-video-creation/rules/import-srt-captions.md +67 -0
- package/.agent/skills/remotion-video-creation/rules/lottie.md +67 -0
- package/.agent/skills/remotion-video-creation/rules/measuring-dom-nodes.md +34 -0
- package/.agent/skills/remotion-video-creation/rules/measuring-text.md +143 -0
- package/.agent/skills/remotion-video-creation/rules/sequencing.md +106 -0
- package/.agent/skills/remotion-video-creation/rules/tailwind.md +11 -0
- package/.agent/skills/remotion-video-creation/rules/text-animations.md +20 -0
- package/.agent/skills/remotion-video-creation/rules/timing.md +179 -0
- package/.agent/skills/remotion-video-creation/rules/transcribe-captions.md +19 -0
- package/.agent/skills/remotion-video-creation/rules/transitions.md +122 -0
- package/.agent/skills/remotion-video-creation/rules/trimming.md +52 -0
- package/.agent/skills/remotion-video-creation/rules/videos.md +171 -0
- package/.agent/skills/repo-scan/SKILL.md +78 -0
- package/.agent/skills/returns-reverse-logistics/SKILL.md +240 -0
- package/.agent/skills/rules-distill/SKILL.md +264 -0
- package/.agent/skills/rules-distill/scripts/scan-rules.sh +58 -0
- package/.agent/skills/rules-distill/scripts/scan-skills.sh +129 -0
- package/.agent/skills/rust-patterns/SKILL.md +499 -0
- package/.agent/skills/rust-pro/SKILL.md +175 -175
- package/.agent/skills/rust-testing/SKILL.md +500 -0
- package/.agent/skills/safety-guard/SKILL.md +75 -0
- package/.agent/skills/santa-method/SKILL.md +306 -0
- package/.agent/skills/search-first/SKILL.md +161 -0
- package/.agent/skills/security-review/SKILL.md +495 -0
- package/.agent/skills/security-review/cloud-infrastructure-security.md +361 -0
- package/.agent/skills/security-scan/SKILL.md +165 -0
- package/.agent/skills/seo-fundamentals/SKILL.md +129 -129
- package/.agent/skills/seo-fundamentals/scripts/seo_checker.py +219 -219
- package/.agent/skills/server-management/SKILL.md +161 -161
- package/.agent/skills/skill-comply/SKILL.md +58 -0
- package/.agent/skills/skill-comply/fixtures/compliant-trace.jsonl +5 -0
- package/.agent/skills/skill-comply/fixtures/noncompliant-trace.jsonl +3 -0
- package/.agent/skills/skill-comply/fixtures/tdd-spec.yaml +44 -0
- package/.agent/skills/skill-comply/prompts/classifier.md +24 -0
- package/.agent/skills/skill-comply/prompts/scenario-generator.md +62 -0
- package/.agent/skills/skill-comply/prompts/spec-generator.md +42 -0
- package/.agent/skills/skill-comply/pyproject.toml +15 -0
- package/.agent/skills/skill-comply/scripts/classifier.py +85 -0
- package/.agent/skills/skill-comply/scripts/grader.py +122 -0
- package/.agent/skills/skill-comply/scripts/init.py +0 -0
- package/.agent/skills/skill-comply/scripts/parser.py +107 -0
- package/.agent/skills/skill-comply/scripts/report.py +170 -0
- package/.agent/skills/skill-comply/scripts/run.py +127 -0
- package/.agent/skills/skill-comply/scripts/runner.py +161 -0
- package/.agent/skills/skill-comply/scripts/scenario-generator.py +70 -0
- package/.agent/skills/skill-comply/scripts/spec-generator.py +72 -0
- package/.agent/skills/skill-comply/scripts/utils.py +13 -0
- package/.agent/skills/skill-comply/tests/test-grader.py +137 -0
- package/.agent/skills/skill-comply/tests/test-parser.py +90 -0
- package/.agent/skills/skill-creator/SKILL.md +485 -0
- package/.agent/skills/skill-creator/agents/analyzer.md +274 -0
- package/.agent/skills/skill-creator/agents/comparator.md +202 -0
- package/.agent/skills/skill-creator/agents/grader.md +223 -0
- package/.agent/skills/skill-creator/assets/eval-review.html +146 -0
- package/.agent/skills/skill-creator/eval-viewer/generate-review.py +471 -0
- package/.agent/skills/skill-creator/eval-viewer/viewer.html +1325 -0
- package/.agent/skills/skill-creator/license.txt +202 -0
- package/.agent/skills/skill-creator/references/schemas.md +430 -0
- package/.agent/skills/skill-creator/scripts/aggregate-benchmark.py +401 -0
- package/.agent/skills/skill-creator/scripts/generate-report.py +326 -0
- package/.agent/skills/skill-creator/scripts/improve-description.py +247 -0
- package/.agent/skills/skill-creator/scripts/init.py +0 -0
- package/.agent/skills/skill-creator/scripts/package-skill.py +136 -0
- package/.agent/skills/skill-creator/scripts/quick-validate.py +103 -0
- package/.agent/skills/skill-creator/scripts/run-eval.py +310 -0
- package/.agent/skills/skill-creator/scripts/run-loop.py +328 -0
- package/.agent/skills/skill-creator/scripts/utils.py +47 -0
- package/.agent/skills/skill-stocktake/SKILL.md +193 -0
- package/.agent/skills/skill-stocktake/scripts/quick-diff.sh +87 -0
- package/.agent/skills/skill-stocktake/scripts/save-results.sh +56 -0
- package/.agent/skills/skill-stocktake/scripts/scan.sh +170 -0
- package/.agent/skills/social-graph-ranker/SKILL.md +154 -0
- package/.agent/skills/springboot-patterns/SKILL.md +314 -0
- package/.agent/skills/springboot-security/SKILL.md +272 -0
- package/.agent/skills/springboot-tdd/SKILL.md +158 -0
- package/.agent/skills/springboot-verification/SKILL.md +231 -0
- package/.agent/skills/strategic-compact/SKILL.md +131 -0
- package/.agent/skills/strategic-compact/suggest-compact.sh +54 -0
- package/.agent/skills/swift-actor-persistence/SKILL.md +143 -0
- package/.agent/skills/swift-concurrency-6-2/SKILL.md +216 -0
- package/.agent/skills/swift-protocol-di-testing/SKILL.md +190 -0
- package/.agent/skills/swiftui-patterns/SKILL.md +259 -0
- package/.agent/skills/systematic-debugging/SKILL.md +109 -109
- package/.agent/skills/tailwind-patterns/SKILL.md +269 -269
- package/.agent/skills/tdd-workflow/SKILL.md +463 -149
- package/.agent/skills/team-builder/SKILL.md +168 -0
- package/.agent/skills/testing-patterns/SKILL.md +178 -178
- package/.agent/skills/testing-patterns/scripts/test_runner.py +219 -219
- package/.agent/skills/token-budget-advisor/SKILL.md +133 -0
- package/.agent/skills/ui-demo/SKILL.md +465 -0
- package/.agent/skills/ui-ux-pro-max/SKILL.md +292 -292
- package/.agent/skills/ui-ux-pro-max/data/icons.csv +101 -101
- package/.agent/skills/ui-ux-pro-max/data/landing.csv +3 -3
- package/.agent/skills/ui-ux-pro-max/data/react-performance.csv +45 -45
- package/.agent/skills/ui-ux-pro-max/data/stacks/astro.csv +54 -54
- package/.agent/skills/ui-ux-pro-max/data/stacks/jetpack-compose.csv +53 -53
- package/.agent/skills/ui-ux-pro-max/data/stacks/nuxt-ui.csv +51 -51
- package/.agent/skills/ui-ux-pro-max/data/stacks/nuxtjs.csv +59 -59
- package/.agent/skills/ui-ux-pro-max/data/stacks/shadcn.csv +61 -61
- package/.agent/skills/ui-ux-pro-max/data/typography.csv +57 -57
- package/.agent/skills/ui-ux-pro-max/data/ui-reasoning.csv +101 -101
- package/.agent/skills/ui-ux-pro-max/data/web-interface.csv +31 -31
- package/.agent/skills/ui-ux-pro-max/scripts/core.py +253 -253
- package/.agent/skills/ui-ux-pro-max/scripts/design_system.py +1067 -1067
- package/.agent/skills/verification-loop/SKILL.md +126 -0
- package/.agent/skills/video-editing/SKILL.md +310 -0
- package/.agent/skills/videodb/SKILL.md +374 -0
- package/.agent/skills/videodb/reference/api-reference.md +550 -0
- package/.agent/skills/videodb/reference/capture-reference.md +407 -0
- package/.agent/skills/videodb/reference/capture.md +101 -0
- package/.agent/skills/videodb/reference/editor.md +443 -0
- package/.agent/skills/videodb/reference/generative.md +331 -0
- package/.agent/skills/videodb/reference/rtstream-reference.md +564 -0
- package/.agent/skills/videodb/reference/rtstream.md +65 -0
- package/.agent/skills/videodb/reference/search.md +230 -0
- package/.agent/skills/videodb/reference/streaming.md +406 -0
- package/.agent/skills/videodb/reference/use-cases.md +118 -0
- package/.agent/skills/videodb/scripts/ws-listener.py +282 -0
- package/.agent/skills/visa-doc-translate/SKILL.md +117 -0
- package/.agent/skills/visa-doc-translate/readme.md +86 -0
- package/.agent/skills/vulnerability-scanner/SKILL.md +276 -276
- package/.agent/skills/vulnerability-scanner/checklists.md +121 -121
- package/.agent/skills/vulnerability-scanner/scripts/security_scan.py +458 -458
- package/.agent/skills/web-design-guidelines/SKILL.md +57 -57
- package/.agent/skills/webapp-testing/SKILL.md +187 -187
- package/.agent/skills/webapp-testing/scripts/playwright_runner.py +173 -173
- package/.agent/skills/workspace-surface-audit/SKILL.md +125 -0
- package/.agent/skills/x-api/SKILL.md +230 -0
- package/.agent/tasks/lessons.md +40 -40
- package/.agent/tasks/todo.md +33 -33
- package/.agent/tasks/two-track-merge-contract.md +29 -0
- package/.agent/workflows/aside.md +3 -3
- package/.agent/workflows/brainstorm.md +113 -113
- package/.agent/workflows/claw.md +13 -41
- package/.agent/workflows/clean-memory.md +34 -0
- package/.agent/workflows/code-review.md +260 -11
- package/.agent/workflows/context-budget.md +12 -18
- package/.agent/workflows/cpp-build.md +1 -1
- package/.agent/workflows/cpp-review.md +4 -4
- package/.agent/workflows/create.md +59 -59
- package/.agent/workflows/debug.md +103 -103
- package/.agent/workflows/deploy.md +176 -176
- package/.agent/workflows/devfleet.md +13 -82
- package/.agent/workflows/docs.md +13 -21
- package/.agent/workflows/e2e.md +38 -135
- package/.agent/workflows/enhance.md +63 -63
- package/.agent/workflows/eval.md +15 -112
- package/.agent/workflows/flutter-build.md +164 -0
- package/.agent/workflows/flutter-review.md +116 -0
- package/.agent/workflows/flutter-test.md +144 -0
- package/.agent/workflows/gan-build.md +99 -0
- package/.agent/workflows/gan-design.md +35 -0
- package/.agent/workflows/go-build.md +1 -1
- package/.agent/workflows/go-review.md +4 -4
- package/.agent/workflows/harness-audit.md +5 -3
- package/.agent/workflows/init-docs.md +46 -46
- package/.agent/workflows/instinct-import.md +4 -4
- package/.agent/workflows/jira.md +106 -0
- package/.agent/workflows/kotlin-build.md +1 -1
- package/.agent/workflows/kotlin-review.md +5 -5
- package/.agent/workflows/learn-eval.md +9 -9
- package/.agent/workflows/multi-plan.md +10 -10
- package/.agent/workflows/orchestrate.md +23 -119
- package/.agent/workflows/plan.md +2 -0
- package/.agent/workflows/preview.md +81 -81
- package/.agent/workflows/prompt-optimize.md +13 -28
- package/.agent/workflows/prp-commit.md +112 -0
- package/.agent/workflows/prp-implement.md +385 -0
- package/.agent/workflows/prp-plan.md +502 -0
- package/.agent/workflows/prp-pr.md +184 -0
- package/.agent/workflows/prp-prd.md +447 -0
- package/.agent/workflows/python-review.md +5 -5
- package/.agent/workflows/refactor-clean.md +1 -1
- package/.agent/workflows/resume-session.md +10 -10
- package/.agent/workflows/rules-distill.md +14 -5
- package/.agent/workflows/santa-loop.md +175 -0
- package/.agent/workflows/save-session.md +9 -9
- package/.agent/workflows/status.md +86 -86
- package/.agent/workflows/tdd.md +30 -127
- package/.agent/workflows/test-coverage.md +1 -1
- package/.agent/workflows/test.md +144 -144
- package/.agent/workflows/ui-ux-pro-max.md +295 -295
- package/.agent/workflows/verify.md +15 -51
- package/README.md +144 -136
- package/RELEASE.md +32 -36
- package/package.json +87 -79
- package/scripts/release-check.js +1 -1
- package/src/bin/cli.js +354 -78
- package/src/lib/installer.js +151 -117
- package/src/lib/manifests/stacks.js +122 -0
- package/src/lib/slash-commands.js +28 -0
- package/src/templates/claude/CLAUDE.en.md +42 -0
- package/src/templates/claude/CLAUDE.md +42 -0
- package/src/templates/claude/CLAUDE.vi.md +42 -0
- package/src/templates/codex/AGENTS.en.md +40 -0
- package/src/templates/codex/AGENTS.md +40 -0
- package/src/templates/codex/AGENTS.vi.md +40 -0
- package/src/templates/cursor/pilo-masterkit.mdc +20 -0
- package/src/templates/gemini/GEMINI.en.md +56 -0
- package/src/templates/gemini/GEMINI.md +56 -0
- package/src/templates/gemini/GEMINI.vi.md +56 -0
- package/src/templates/github/copilot-instructions.md +16 -0
|
@@ -0,0 +1,189 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: connections-optimizer
|
|
3
|
+
description: Reorganize the user's X and LinkedIn network with review-first pruning, add/follow recommendations, and channel-specific warm outreach drafted in the user's real voice. Use when the user wants to clean up following lists, grow toward current priorities, or rebalance a social graph around higher-signal relationships.
|
|
4
|
+
origin: ECC
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Connections Optimizer
|
|
8
|
+
|
|
9
|
+
Reorganize the user's network instead of treating outbound as a one-way prospecting list.
|
|
10
|
+
|
|
11
|
+
This skill handles:
|
|
12
|
+
|
|
13
|
+
- X following cleanup and expansion
|
|
14
|
+
- LinkedIn follow and connection analysis
|
|
15
|
+
- review-first prune queues
|
|
16
|
+
- add and follow recommendations
|
|
17
|
+
- warm-path identification
|
|
18
|
+
- Apple Mail, X DM, and LinkedIn draft generation in the user's real voice
|
|
19
|
+
|
|
20
|
+
## When to Activate
|
|
21
|
+
|
|
22
|
+
- the user wants to prune their X following
|
|
23
|
+
- the user wants to rebalance who they follow or stay connected to
|
|
24
|
+
- the user says "clean up my network", "who should I unfollow", "who should I follow", "who should I reconnect with"
|
|
25
|
+
- outreach quality depends on network structure, not just cold list generation
|
|
26
|
+
|
|
27
|
+
## Required Inputs
|
|
28
|
+
|
|
29
|
+
Collect or infer:
|
|
30
|
+
|
|
31
|
+
- current priorities and active work
|
|
32
|
+
- target roles, industries, geos, or ecosystems
|
|
33
|
+
- platform selection: X, LinkedIn, or both
|
|
34
|
+
- do-not-touch list
|
|
35
|
+
- mode: `light-pass`, `default`, or `aggressive`
|
|
36
|
+
|
|
37
|
+
If the user does not specify a mode, use `default`.
|
|
38
|
+
|
|
39
|
+
## Tool Requirements
|
|
40
|
+
|
|
41
|
+
### Preferred
|
|
42
|
+
|
|
43
|
+
- `x-api` for X graph inspection and recent activity
|
|
44
|
+
- `lead-intelligence` for target discovery and warm-path ranking
|
|
45
|
+
- `social-graph-ranker` when the user wants bridge value scored independently of the broader lead workflow
|
|
46
|
+
- Exa / deep research for person and company enrichment
|
|
47
|
+
- `brand-voice` before drafting outbound
|
|
48
|
+
|
|
49
|
+
### Fallbacks
|
|
50
|
+
|
|
51
|
+
- browser control for LinkedIn analysis and drafting
|
|
52
|
+
- browser control for X if API coverage is constrained
|
|
53
|
+
- Apple Mail or Mail.app drafting via desktop automation when email is the right channel
|
|
54
|
+
|
|
55
|
+
## Safety Defaults
|
|
56
|
+
|
|
57
|
+
- default is review-first, never blind auto-pruning
|
|
58
|
+
- X: prune only accounts the user follows, never followers
|
|
59
|
+
- LinkedIn: treat 1st-degree connection removal as manual-review-first
|
|
60
|
+
- do not auto-send DMs, invites, or emails
|
|
61
|
+
- emit a ranked action plan and drafts before any apply step
|
|
62
|
+
|
|
63
|
+
## Platform Rules
|
|
64
|
+
|
|
65
|
+
### X
|
|
66
|
+
|
|
67
|
+
- mutuals are stickier than one-way follows
|
|
68
|
+
- non-follow-backs can be pruned more aggressively
|
|
69
|
+
- heavily inactive or disappeared accounts should surface quickly
|
|
70
|
+
- engagement, signal quality, and bridge value matter more than raw follower count
|
|
71
|
+
|
|
72
|
+
### LinkedIn
|
|
73
|
+
|
|
74
|
+
- API-first if the user actually has LinkedIn API access
|
|
75
|
+
- browser workflow must work when API access is missing
|
|
76
|
+
- distinguish outbound follows from accepted 1st-degree connections
|
|
77
|
+
- outbound follows can be pruned more freely
|
|
78
|
+
- accepted 1st-degree connections should default to review, not auto-remove
|
|
79
|
+
|
|
80
|
+
## Modes
|
|
81
|
+
|
|
82
|
+
### `light-pass`
|
|
83
|
+
|
|
84
|
+
- prune only high-confidence low-value one-way follows
|
|
85
|
+
- surface the rest for review
|
|
86
|
+
- generate a small add/follow list
|
|
87
|
+
|
|
88
|
+
### `default`
|
|
89
|
+
|
|
90
|
+
- balanced prune queue
|
|
91
|
+
- balanced keep list
|
|
92
|
+
- ranked add/follow queue
|
|
93
|
+
- draft warm intros or direct outreach where useful
|
|
94
|
+
|
|
95
|
+
### `aggressive`
|
|
96
|
+
|
|
97
|
+
- larger prune queue
|
|
98
|
+
- lower tolerance for stale non-follow-backs
|
|
99
|
+
- still review-gated before apply
|
|
100
|
+
|
|
101
|
+
## Scoring Model
|
|
102
|
+
|
|
103
|
+
Use these positive signals:
|
|
104
|
+
|
|
105
|
+
- reciprocity
|
|
106
|
+
- recent activity
|
|
107
|
+
- alignment to current priorities
|
|
108
|
+
- network bridge value
|
|
109
|
+
- role relevance
|
|
110
|
+
- real engagement history
|
|
111
|
+
- recent presence and responsiveness
|
|
112
|
+
|
|
113
|
+
Use these negative signals:
|
|
114
|
+
|
|
115
|
+
- disappeared or abandoned account
|
|
116
|
+
- stale one-way follow
|
|
117
|
+
- off-priority topic cluster
|
|
118
|
+
- low-value noise
|
|
119
|
+
- repeated non-response
|
|
120
|
+
- no follow-back when many better replacements exist
|
|
121
|
+
|
|
122
|
+
Mutuals and real warm-path bridges should be penalized less aggressively than one-way follows.
|
|
123
|
+
|
|
124
|
+
## Workflow
|
|
125
|
+
|
|
126
|
+
1. Capture priorities, do-not-touch constraints, and selected platforms.
|
|
127
|
+
2. Pull the current following / connection inventory.
|
|
128
|
+
3. Score prune candidates with explicit reasons.
|
|
129
|
+
4. Score keep candidates with explicit reasons.
|
|
130
|
+
5. Use `lead-intelligence` plus research surfaces to rank expansion candidates.
|
|
131
|
+
6. Match the right channel:
|
|
132
|
+
- X DM for warm, fast social touch points
|
|
133
|
+
- LinkedIn message for professional graph adjacency
|
|
134
|
+
- Apple Mail draft for higher-context intros or outreach
|
|
135
|
+
7. Run `brand-voice` before drafting messages.
|
|
136
|
+
8. Return a review pack before any apply step.
|
|
137
|
+
|
|
138
|
+
## Review Pack Format
|
|
139
|
+
|
|
140
|
+
```text
|
|
141
|
+
CONNECTIONS OPTIMIZER REPORT
|
|
142
|
+
============================
|
|
143
|
+
|
|
144
|
+
Mode:
|
|
145
|
+
Platforms:
|
|
146
|
+
Priority Set:
|
|
147
|
+
|
|
148
|
+
Prune Queue
|
|
149
|
+
- handle / profile
|
|
150
|
+
reason:
|
|
151
|
+
confidence:
|
|
152
|
+
action:
|
|
153
|
+
|
|
154
|
+
Review Queue
|
|
155
|
+
- handle / profile
|
|
156
|
+
reason:
|
|
157
|
+
risk:
|
|
158
|
+
|
|
159
|
+
Keep / Protect
|
|
160
|
+
- handle / profile
|
|
161
|
+
bridge value:
|
|
162
|
+
|
|
163
|
+
Add / Follow Targets
|
|
164
|
+
- person
|
|
165
|
+
why now:
|
|
166
|
+
warm path:
|
|
167
|
+
preferred channel:
|
|
168
|
+
|
|
169
|
+
Drafts
|
|
170
|
+
- X DM:
|
|
171
|
+
- LinkedIn:
|
|
172
|
+
- Apple Mail:
|
|
173
|
+
```
|
|
174
|
+
|
|
175
|
+
## Outbound Rules
|
|
176
|
+
|
|
177
|
+
- Default email path is Apple Mail / Mail.app draft creation.
|
|
178
|
+
- Do not send automatically.
|
|
179
|
+
- Choose the channel based on warmth, relevance, and context depth.
|
|
180
|
+
- Do not force a DM when an email or no outreach is the right move.
|
|
181
|
+
- Drafts should sound like the user, not like automated sales copy.
|
|
182
|
+
|
|
183
|
+
## Related Skills
|
|
184
|
+
|
|
185
|
+
- `brand-voice` for the reusable voice profile
|
|
186
|
+
- `social-graph-ranker` for the standalone bridge-scoring and warm-path math
|
|
187
|
+
- `lead-intelligence` for weighted target and warm-path discovery
|
|
188
|
+
- `x-api` for X graph access, drafting, and optional apply flows
|
|
189
|
+
- `content-engine` when the user also wants public launch content around network moves
|
|
@@ -0,0 +1,131 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: content-engine
|
|
3
|
+
description: Create platform-native content systems for X, LinkedIn, TikTok, YouTube, newsletters, and repurposed multi-platform campaigns. Use when the user wants social posts, threads, scripts, content calendars, or one source asset adapted cleanly across platforms.
|
|
4
|
+
origin: ECC
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Content Engine
|
|
8
|
+
|
|
9
|
+
Build platform-native content without flattening the author's real voice into platform slop.
|
|
10
|
+
|
|
11
|
+
## When to Activate
|
|
12
|
+
|
|
13
|
+
- writing X posts or threads
|
|
14
|
+
- drafting LinkedIn posts or launch updates
|
|
15
|
+
- scripting short-form video or YouTube explainers
|
|
16
|
+
- repurposing articles, podcasts, demos, docs, or internal notes into public content
|
|
17
|
+
- building a launch sequence or ongoing content system around a product, insight, or narrative
|
|
18
|
+
|
|
19
|
+
## Non-Negotiables
|
|
20
|
+
|
|
21
|
+
1. Start from source material, not generic post formulas.
|
|
22
|
+
2. Adapt the format for the platform, not the persona.
|
|
23
|
+
3. One post should carry one actual claim.
|
|
24
|
+
4. Specificity beats adjectives.
|
|
25
|
+
5. No engagement bait unless the user explicitly asks for it.
|
|
26
|
+
|
|
27
|
+
## Source-First Workflow
|
|
28
|
+
|
|
29
|
+
Before drafting, identify the source set:
|
|
30
|
+
- published articles
|
|
31
|
+
- notes or internal memos
|
|
32
|
+
- product demos
|
|
33
|
+
- docs or changelogs
|
|
34
|
+
- transcripts
|
|
35
|
+
- screenshots
|
|
36
|
+
- prior posts from the same author
|
|
37
|
+
|
|
38
|
+
If the user wants a specific voice, build a voice profile from real examples before writing.
|
|
39
|
+
Use `brand-voice` as the canonical workflow when voice consistency matters across more than one output.
|
|
40
|
+
|
|
41
|
+
## Voice Handling
|
|
42
|
+
|
|
43
|
+
`brand-voice` is the canonical voice layer.
|
|
44
|
+
|
|
45
|
+
Run it first when:
|
|
46
|
+
|
|
47
|
+
- there are multiple downstream outputs
|
|
48
|
+
- the user explicitly cares about writing style
|
|
49
|
+
- the content is launch, outreach, or reputation-sensitive
|
|
50
|
+
|
|
51
|
+
Reuse the resulting `VOICE PROFILE` here instead of rebuilding a second voice model.
|
|
52
|
+
If the user wants Affaan / ECC voice specifically, still treat `brand-voice` as the source of truth and feed it the best live or source-derived material available.
|
|
53
|
+
|
|
54
|
+
## Hard Bans
|
|
55
|
+
|
|
56
|
+
Delete and rewrite any of these:
|
|
57
|
+
- "In today's rapidly evolving landscape"
|
|
58
|
+
- "game-changer", "revolutionary", "cutting-edge"
|
|
59
|
+
- "here's why this matters" unless it is followed immediately by something concrete
|
|
60
|
+
- ending with a LinkedIn-style question just to farm replies
|
|
61
|
+
- forced casualness on LinkedIn
|
|
62
|
+
- fake engagement padding that was not present in the source material
|
|
63
|
+
|
|
64
|
+
## Platform Adaptation Rules
|
|
65
|
+
|
|
66
|
+
### X
|
|
67
|
+
|
|
68
|
+
- open with the strongest claim, artifact, or tension
|
|
69
|
+
- keep the compression if the source voice is compressed
|
|
70
|
+
- if writing a thread, each post must advance the argument
|
|
71
|
+
- do not pad with context the audience does not need
|
|
72
|
+
|
|
73
|
+
### LinkedIn
|
|
74
|
+
|
|
75
|
+
- expand only enough for people outside the immediate niche to follow
|
|
76
|
+
- do not turn it into a fake lesson post unless the source material actually is reflective
|
|
77
|
+
- no corporate inspiration cadence
|
|
78
|
+
- no praise-stacking, no "journey" filler
|
|
79
|
+
|
|
80
|
+
### Short Video
|
|
81
|
+
|
|
82
|
+
- script around the visual sequence and proof points
|
|
83
|
+
- first seconds should show the result, problem, or punch
|
|
84
|
+
- do not write narration that sounds better on paper than on screen
|
|
85
|
+
|
|
86
|
+
### YouTube
|
|
87
|
+
|
|
88
|
+
- show the result or tension early
|
|
89
|
+
- organize by argument or progression, not filler sections
|
|
90
|
+
- use chaptering only when it helps clarity
|
|
91
|
+
|
|
92
|
+
### Newsletter
|
|
93
|
+
|
|
94
|
+
- open with the point, conflict, or artifact
|
|
95
|
+
- do not spend the first paragraph warming up
|
|
96
|
+
- every section needs to add something new
|
|
97
|
+
|
|
98
|
+
## Repurposing Flow
|
|
99
|
+
|
|
100
|
+
1. Pick the anchor asset.
|
|
101
|
+
2. Extract 3 to 7 atomic claims or scenes.
|
|
102
|
+
3. Rank them by sharpness, novelty, and proof.
|
|
103
|
+
4. Assign one strong idea per output.
|
|
104
|
+
5. Adapt structure for each platform.
|
|
105
|
+
6. Strip platform-shaped filler.
|
|
106
|
+
7. Run the quality gate.
|
|
107
|
+
|
|
108
|
+
## Deliverables
|
|
109
|
+
|
|
110
|
+
When asked for a campaign, return:
|
|
111
|
+
- a short voice profile if voice matching matters
|
|
112
|
+
- the core angle
|
|
113
|
+
- platform-native drafts
|
|
114
|
+
- posting order only if it helps execution
|
|
115
|
+
- gaps that must be filled before publishing
|
|
116
|
+
|
|
117
|
+
## Quality Gate
|
|
118
|
+
|
|
119
|
+
Before delivering:
|
|
120
|
+
- every draft sounds like the intended author, not the platform stereotype
|
|
121
|
+
- every draft contains a real claim, proof point, or concrete observation
|
|
122
|
+
- no generic hype language remains
|
|
123
|
+
- no fake engagement bait remains
|
|
124
|
+
- no duplicated copy across platforms unless requested
|
|
125
|
+
- any CTA is earned and user-approved
|
|
126
|
+
|
|
127
|
+
## Related Skills
|
|
128
|
+
|
|
129
|
+
- `brand-voice` for source-derived voice profiles
|
|
130
|
+
- `crosspost` for platform-specific distribution
|
|
131
|
+
- `x-api` for sourcing recent posts and publishing approved X output
|
|
@@ -0,0 +1,161 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: content-hash-cache-pattern
|
|
3
|
+
description: Cache expensive file processing results using SHA-256 content hashes — path-independent, auto-invalidating, with service layer separation.
|
|
4
|
+
origin: ECC
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Content-Hash File Cache Pattern
|
|
8
|
+
|
|
9
|
+
Cache expensive file processing results (PDF parsing, text extraction, image analysis) using SHA-256 content hashes as cache keys. Unlike path-based caching, this approach survives file moves/renames and auto-invalidates when content changes.
|
|
10
|
+
|
|
11
|
+
## When to Activate
|
|
12
|
+
|
|
13
|
+
- Building file processing pipelines (PDF, images, text extraction)
|
|
14
|
+
- Processing cost is high and same files are processed repeatedly
|
|
15
|
+
- Need a `--cache/--no-cache` CLI option
|
|
16
|
+
- Want to add caching to existing pure functions without modifying them
|
|
17
|
+
|
|
18
|
+
## Core Pattern
|
|
19
|
+
|
|
20
|
+
### 1. Content-Hash Based Cache Key
|
|
21
|
+
|
|
22
|
+
Use file content (not path) as the cache key:
|
|
23
|
+
|
|
24
|
+
```python
|
|
25
|
+
import hashlib
|
|
26
|
+
from pathlib import Path
|
|
27
|
+
|
|
28
|
+
_HASH_CHUNK_SIZE = 65536 # 64KB chunks for large files
|
|
29
|
+
|
|
30
|
+
def compute_file_hash(path: Path) -> str:
|
|
31
|
+
"""SHA-256 of file contents (chunked for large files)."""
|
|
32
|
+
if not path.is_file():
|
|
33
|
+
raise FileNotFoundError(f"File not found: {path}")
|
|
34
|
+
sha256 = hashlib.sha256()
|
|
35
|
+
with open(path, "rb") as f:
|
|
36
|
+
while True:
|
|
37
|
+
chunk = f.read(_HASH_CHUNK_SIZE)
|
|
38
|
+
if not chunk:
|
|
39
|
+
break
|
|
40
|
+
sha256.update(chunk)
|
|
41
|
+
return sha256.hexdigest()
|
|
42
|
+
```
|
|
43
|
+
|
|
44
|
+
**Why content hash?** File rename/move = cache hit. Content change = automatic invalidation. No index file needed.
|
|
45
|
+
|
|
46
|
+
### 2. Frozen Dataclass for Cache Entry
|
|
47
|
+
|
|
48
|
+
```python
|
|
49
|
+
from dataclasses import dataclass
|
|
50
|
+
|
|
51
|
+
@dataclass(frozen=True, slots=True)
|
|
52
|
+
class CacheEntry:
|
|
53
|
+
file_hash: str
|
|
54
|
+
source_path: str
|
|
55
|
+
document: ExtractedDocument # The cached result
|
|
56
|
+
```
|
|
57
|
+
|
|
58
|
+
### 3. File-Based Cache Storage
|
|
59
|
+
|
|
60
|
+
Each cache entry is stored as `{hash}.json` — O(1) lookup by hash, no index file required.
|
|
61
|
+
|
|
62
|
+
```python
|
|
63
|
+
import json
|
|
64
|
+
from typing import Any
|
|
65
|
+
|
|
66
|
+
def write_cache(cache_dir: Path, entry: CacheEntry) -> None:
|
|
67
|
+
cache_dir.mkdir(parents=True, exist_ok=True)
|
|
68
|
+
cache_file = cache_dir / f"{entry.file_hash}.json"
|
|
69
|
+
data = serialize_entry(entry)
|
|
70
|
+
cache_file.write_text(json.dumps(data, ensure_ascii=False), encoding="utf-8")
|
|
71
|
+
|
|
72
|
+
def read_cache(cache_dir: Path, file_hash: str) -> CacheEntry | None:
|
|
73
|
+
cache_file = cache_dir / f"{file_hash}.json"
|
|
74
|
+
if not cache_file.is_file():
|
|
75
|
+
return None
|
|
76
|
+
try:
|
|
77
|
+
raw = cache_file.read_text(encoding="utf-8")
|
|
78
|
+
data = json.loads(raw)
|
|
79
|
+
return deserialize_entry(data)
|
|
80
|
+
except (json.JSONDecodeError, ValueError, KeyError):
|
|
81
|
+
return None # Treat corruption as cache miss
|
|
82
|
+
```
|
|
83
|
+
|
|
84
|
+
### 4. Service Layer Wrapper (SRP)
|
|
85
|
+
|
|
86
|
+
Keep the processing function pure. Add caching as a separate service layer.
|
|
87
|
+
|
|
88
|
+
```python
|
|
89
|
+
def extract_with_cache(
|
|
90
|
+
file_path: Path,
|
|
91
|
+
*,
|
|
92
|
+
cache_enabled: bool = True,
|
|
93
|
+
cache_dir: Path = Path(".cache"),
|
|
94
|
+
) -> ExtractedDocument:
|
|
95
|
+
"""Service layer: cache check -> extraction -> cache write."""
|
|
96
|
+
if not cache_enabled:
|
|
97
|
+
return extract_text(file_path) # Pure function, no cache knowledge
|
|
98
|
+
|
|
99
|
+
file_hash = compute_file_hash(file_path)
|
|
100
|
+
|
|
101
|
+
# Check cache
|
|
102
|
+
cached = read_cache(cache_dir, file_hash)
|
|
103
|
+
if cached is not None:
|
|
104
|
+
logger.info("Cache hit: %s (hash=%s)", file_path.name, file_hash[:12])
|
|
105
|
+
return cached.document
|
|
106
|
+
|
|
107
|
+
# Cache miss -> extract -> store
|
|
108
|
+
logger.info("Cache miss: %s (hash=%s)", file_path.name, file_hash[:12])
|
|
109
|
+
doc = extract_text(file_path)
|
|
110
|
+
entry = CacheEntry(file_hash=file_hash, source_path=str(file_path), document=doc)
|
|
111
|
+
write_cache(cache_dir, entry)
|
|
112
|
+
return doc
|
|
113
|
+
```
|
|
114
|
+
|
|
115
|
+
## Key Design Decisions
|
|
116
|
+
|
|
117
|
+
| Decision | Rationale |
|
|
118
|
+
|----------|-----------|
|
|
119
|
+
| SHA-256 content hash | Path-independent, auto-invalidates on content change |
|
|
120
|
+
| `{hash}.json` file naming | O(1) lookup, no index file needed |
|
|
121
|
+
| Service layer wrapper | SRP: extraction stays pure, cache is a separate concern |
|
|
122
|
+
| Manual JSON serialization | Full control over frozen dataclass serialization |
|
|
123
|
+
| Corruption returns `None` | Graceful degradation, re-processes on next run |
|
|
124
|
+
| `cache_dir.mkdir(parents=True)` | Lazy directory creation on first write |
|
|
125
|
+
|
|
126
|
+
## Best Practices
|
|
127
|
+
|
|
128
|
+
- **Hash content, not paths** — paths change, content identity doesn't
|
|
129
|
+
- **Chunk large files** when hashing — avoid loading entire files into memory
|
|
130
|
+
- **Keep processing functions pure** — they should know nothing about caching
|
|
131
|
+
- **Log cache hit/miss** with truncated hashes for debugging
|
|
132
|
+
- **Handle corruption gracefully** — treat invalid cache entries as misses, never crash
|
|
133
|
+
|
|
134
|
+
## Anti-Patterns to Avoid
|
|
135
|
+
|
|
136
|
+
```python
|
|
137
|
+
# BAD: Path-based caching (breaks on file move/rename)
|
|
138
|
+
cache = {"/path/to/file.pdf": result}
|
|
139
|
+
|
|
140
|
+
# BAD: Adding cache logic inside the processing function (SRP violation)
|
|
141
|
+
def extract_text(path, *, cache_enabled=False, cache_dir=None):
|
|
142
|
+
if cache_enabled: # Now this function has two responsibilities
|
|
143
|
+
...
|
|
144
|
+
|
|
145
|
+
# BAD: Using dataclasses.asdict() with nested frozen dataclasses
|
|
146
|
+
# (can cause issues with complex nested types)
|
|
147
|
+
data = dataclasses.asdict(entry) # Use manual serialization instead
|
|
148
|
+
```
|
|
149
|
+
|
|
150
|
+
## When to Use
|
|
151
|
+
|
|
152
|
+
- File processing pipelines (PDF parsing, OCR, text extraction, image analysis)
|
|
153
|
+
- CLI tools that benefit from `--cache/--no-cache` options
|
|
154
|
+
- Batch processing where the same files appear across runs
|
|
155
|
+
- Adding caching to existing pure functions without modifying them
|
|
156
|
+
|
|
157
|
+
## When NOT to Use
|
|
158
|
+
|
|
159
|
+
- Data that must always be fresh (real-time feeds)
|
|
160
|
+
- Cache entries that would be extremely large (consider streaming instead)
|
|
161
|
+
- Results that depend on parameters beyond file content (e.g., different extraction configs)
|
|
@@ -0,0 +1,135 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: context-budget
|
|
3
|
+
description: Audits Claude Code context window consumption across agents, skills, MCP servers, and rules. Identifies bloat, redundant components, and produces prioritized token-savings recommendations.
|
|
4
|
+
origin: ECC
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Context Budget
|
|
8
|
+
|
|
9
|
+
Analyze token overhead across every loaded component in a Claude Code session and surface actionable optimizations to reclaim context space.
|
|
10
|
+
|
|
11
|
+
## When to Use
|
|
12
|
+
|
|
13
|
+
- Session performance feels sluggish or output quality is degrading
|
|
14
|
+
- You've recently added many skills, agents, or MCP servers
|
|
15
|
+
- You want to know how much context headroom you actually have
|
|
16
|
+
- Planning to add more components and need to know if there's room
|
|
17
|
+
- Running `/context-budget` command (this skill backs it)
|
|
18
|
+
|
|
19
|
+
## How It Works
|
|
20
|
+
|
|
21
|
+
### Phase 1: Inventory
|
|
22
|
+
|
|
23
|
+
Scan all component directories and estimate token consumption:
|
|
24
|
+
|
|
25
|
+
**Agents** (`agents/*.md`)
|
|
26
|
+
- Count lines and tokens per file (words × 1.3)
|
|
27
|
+
- Extract `description` frontmatter length
|
|
28
|
+
- Flag: files >200 lines (heavy), description >30 words (bloated frontmatter)
|
|
29
|
+
|
|
30
|
+
**Skills** (`skills/*/SKILL.md`)
|
|
31
|
+
- Count tokens per SKILL.md
|
|
32
|
+
- Flag: files >400 lines
|
|
33
|
+
- Check for duplicate copies in `.agents/skills/` — skip identical copies to avoid double-counting
|
|
34
|
+
|
|
35
|
+
**Rules** (`rules/**/*.md`)
|
|
36
|
+
- Count tokens per file
|
|
37
|
+
- Flag: files >100 lines
|
|
38
|
+
- Detect content overlap between rule files in the same language module
|
|
39
|
+
|
|
40
|
+
**MCP Servers** (`.mcp.json` or active MCP config)
|
|
41
|
+
- Count configured servers and total tool count
|
|
42
|
+
- Estimate schema overhead at ~500 tokens per tool
|
|
43
|
+
- Flag: servers with >20 tools, servers that wrap simple CLI commands (`gh`, `git`, `npm`, `supabase`, `vercel`)
|
|
44
|
+
|
|
45
|
+
**CLAUDE.md** (project + user-level)
|
|
46
|
+
- Count tokens per file in the CLAUDE.md chain
|
|
47
|
+
- Flag: combined total >300 lines
|
|
48
|
+
|
|
49
|
+
### Phase 2: Classify
|
|
50
|
+
|
|
51
|
+
Sort every component into a bucket:
|
|
52
|
+
|
|
53
|
+
| Bucket | Criteria | Action |
|
|
54
|
+
|--------|----------|--------|
|
|
55
|
+
| **Always needed** | Referenced in CLAUDE.md, backs an active command, or matches current project type | Keep |
|
|
56
|
+
| **Sometimes needed** | Domain-specific (e.g. language patterns), not referenced in CLAUDE.md | Consider on-demand activation |
|
|
57
|
+
| **Rarely needed** | No command reference, overlapping content, or no obvious project match | Remove or lazy-load |
|
|
58
|
+
|
|
59
|
+
### Phase 3: Detect Issues
|
|
60
|
+
|
|
61
|
+
Identify the following problem patterns:
|
|
62
|
+
|
|
63
|
+
- **Bloated agent descriptions** — description >30 words in frontmatter loads into every Task tool invocation
|
|
64
|
+
- **Heavy agents** — files >200 lines inflate Task tool context on every spawn
|
|
65
|
+
- **Redundant components** — skills that duplicate agent logic, rules that duplicate CLAUDE.md
|
|
66
|
+
- **MCP over-subscription** — >10 servers, or servers wrapping CLI tools available for free
|
|
67
|
+
- **CLAUDE.md bloat** — verbose explanations, outdated sections, instructions that should be rules
|
|
68
|
+
|
|
69
|
+
### Phase 4: Report
|
|
70
|
+
|
|
71
|
+
Produce the context budget report:
|
|
72
|
+
|
|
73
|
+
```
|
|
74
|
+
Context Budget Report
|
|
75
|
+
═══════════════════════════════════════
|
|
76
|
+
|
|
77
|
+
Total estimated overhead: ~XX,XXX tokens
|
|
78
|
+
Context model: Claude Sonnet (200K window)
|
|
79
|
+
Effective available context: ~XXX,XXX tokens (XX%)
|
|
80
|
+
|
|
81
|
+
Component Breakdown:
|
|
82
|
+
┌─────────────────┬────────┬───────────┐
|
|
83
|
+
│ Component │ Count │ Tokens │
|
|
84
|
+
├─────────────────┼────────┼───────────┤
|
|
85
|
+
│ Agents │ N │ ~X,XXX │
|
|
86
|
+
│ Skills │ N │ ~X,XXX │
|
|
87
|
+
│ Rules │ N │ ~X,XXX │
|
|
88
|
+
│ MCP tools │ N │ ~XX,XXX │
|
|
89
|
+
│ CLAUDE.md │ N │ ~X,XXX │
|
|
90
|
+
└─────────────────┴────────┴───────────┘
|
|
91
|
+
|
|
92
|
+
WARNING: Issues Found (N):
|
|
93
|
+
[ranked by token savings]
|
|
94
|
+
|
|
95
|
+
Top 3 Optimizations:
|
|
96
|
+
1. [action] → save ~X,XXX tokens
|
|
97
|
+
2. [action] → save ~X,XXX tokens
|
|
98
|
+
3. [action] → save ~X,XXX tokens
|
|
99
|
+
|
|
100
|
+
Potential savings: ~XX,XXX tokens (XX% of current overhead)
|
|
101
|
+
```
|
|
102
|
+
|
|
103
|
+
In verbose mode, additionally output per-file token counts, line-by-line breakdown of the heaviest files, specific redundant lines between overlapping components, and MCP tool list with per-tool schema size estimates.
|
|
104
|
+
|
|
105
|
+
## Examples
|
|
106
|
+
|
|
107
|
+
**Basic audit**
|
|
108
|
+
```
|
|
109
|
+
User: /context-budget
|
|
110
|
+
Skill: Scans setup → 16 agents (12,400 tokens), 28 skills (6,200), 87 MCP tools (43,500), 2 CLAUDE.md (1,200)
|
|
111
|
+
Flags: 3 heavy agents, 14 MCP servers (3 CLI-replaceable)
|
|
112
|
+
Top saving: remove 3 MCP servers → -27,500 tokens (47% overhead reduction)
|
|
113
|
+
```
|
|
114
|
+
|
|
115
|
+
**Verbose mode**
|
|
116
|
+
```
|
|
117
|
+
User: /context-budget --verbose
|
|
118
|
+
Skill: Full report + per-file breakdown showing planner.md (213 lines, 1,840 tokens),
|
|
119
|
+
MCP tool list with per-tool sizes, duplicated rule lines side by side
|
|
120
|
+
```
|
|
121
|
+
|
|
122
|
+
**Pre-expansion check**
|
|
123
|
+
```
|
|
124
|
+
User: I want to add 5 more MCP servers, do I have room?
|
|
125
|
+
Skill: Current overhead 33% → adding 5 servers (~50 tools) would add ~25,000 tokens → pushes to 45% overhead
|
|
126
|
+
Recommendation: remove 2 CLI-replaceable servers first to stay under 40%
|
|
127
|
+
```
|
|
128
|
+
|
|
129
|
+
## Best Practices
|
|
130
|
+
|
|
131
|
+
- **Token estimation**: use `words × 1.3` for prose, `chars / 4` for code-heavy files
|
|
132
|
+
- **MCP is the biggest lever**: each tool schema costs ~500 tokens; a 30-tool server costs more than all your skills combined
|
|
133
|
+
- **Agent descriptions are loaded always**: even if the agent is never invoked, its description field is present in every Task tool context
|
|
134
|
+
- **Verbose mode for debugging**: use when you need to pinpoint the exact files driving overhead, not for regular audits
|
|
135
|
+
- **Audit after changes**: run after adding any agent, skill, or MCP server to catch creep early
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: continuous-agent-loop
|
|
3
|
+
description: Patterns for continuous autonomous agent loops with quality gates, evals, and recovery controls.
|
|
4
|
+
origin: ECC
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Continuous Agent Loop
|
|
8
|
+
|
|
9
|
+
This is the v1.8+ canonical loop skill name. It supersedes `autonomous-loops` while keeping compatibility for one release.
|
|
10
|
+
|
|
11
|
+
## Loop Selection Flow
|
|
12
|
+
|
|
13
|
+
```text
|
|
14
|
+
Start
|
|
15
|
+
|
|
|
16
|
+
+-- Need strict CI/PR control? -- yes --> continuous-pr
|
|
17
|
+
|
|
|
18
|
+
+-- Need RFC decomposition? -- yes --> rfc-dag
|
|
19
|
+
|
|
|
20
|
+
+-- Need exploratory parallel generation? -- yes --> infinite
|
|
21
|
+
|
|
|
22
|
+
+-- default --> sequential
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
## Combined Pattern
|
|
26
|
+
|
|
27
|
+
Recommended production stack:
|
|
28
|
+
1. RFC decomposition (`ralphinho-rfc-pipeline`)
|
|
29
|
+
2. quality gates (`plankton-code-quality` + `/quality-gate`)
|
|
30
|
+
3. eval loop (`eval-harness`)
|
|
31
|
+
4. session persistence (`nanoclaw-repl`)
|
|
32
|
+
|
|
33
|
+
## Failure Modes
|
|
34
|
+
|
|
35
|
+
- loop churn without measurable progress
|
|
36
|
+
- repeated retries with same root cause
|
|
37
|
+
- merge queue stalls
|
|
38
|
+
- cost drift from unbounded escalation
|
|
39
|
+
|
|
40
|
+
## Recovery
|
|
41
|
+
|
|
42
|
+
- freeze loop
|
|
43
|
+
- run `/harness-audit`
|
|
44
|
+
- reduce scope to failing unit
|
|
45
|
+
- replay with explicit acceptance criteria
|