compact-agent 1.10.1 → 1.11.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bin/ecc-hooks.cjs +110 -0
- package/dist/config.js +9 -1
- package/dist/config.js.map +1 -1
- package/dist/ecc.d.ts +11 -0
- package/dist/ecc.js +142 -27
- package/dist/ecc.js.map +1 -1
- package/dist/index.js +47 -7
- package/dist/index.js.map +1 -1
- package/dist/query.js +26 -0
- package/dist/query.js.map +1 -1
- package/dist/theme.js +6 -2
- package/dist/theme.js.map +1 -1
- package/package.json +1 -1
- package/resources/ecc/agents/a11y-architect.md +149 -0
- package/resources/ecc/agents/architect.md +11 -3
- package/resources/ecc/agents/build-error-resolver.md +11 -4
- package/resources/ecc/agents/chief-of-staff.md +11 -4
- package/resources/ecc/agents/code-architect.md +80 -0
- package/resources/ecc/agents/code-explorer.md +78 -0
- package/resources/ecc/agents/code-reviewer.md +89 -4
- package/resources/ecc/agents/code-simplifier.md +56 -0
- package/resources/ecc/agents/comment-analyzer.md +54 -0
- package/resources/ecc/agents/conversation-analyzer.md +61 -0
- package/resources/ecc/agents/cpp-build-resolver.md +99 -0
- package/resources/ecc/agents/cpp-reviewer.md +81 -0
- package/resources/ecc/agents/csharp-reviewer.md +110 -0
- package/resources/ecc/agents/dart-build-resolver.md +210 -0
- package/resources/ecc/agents/database-reviewer.md +11 -3
- package/resources/ecc/agents/django-build-resolver.md +252 -0
- package/resources/ecc/agents/django-reviewer.md +169 -0
- package/resources/ecc/agents/doc-updater.md +11 -3
- package/resources/ecc/agents/docs-lookup.md +77 -0
- package/resources/ecc/agents/e2e-runner.md +11 -4
- package/resources/ecc/agents/fastapi-reviewer.md +79 -0
- package/resources/ecc/agents/flutter-reviewer.md +252 -0
- package/resources/ecc/agents/fsharp-reviewer.md +109 -0
- package/resources/ecc/agents/gan-evaluator.md +218 -0
- package/resources/ecc/agents/gan-generator.md +140 -0
- package/resources/ecc/agents/gan-planner.md +108 -0
- package/resources/ecc/agents/go-build-resolver.md +11 -4
- package/resources/ecc/agents/go-reviewer.md +11 -3
- package/resources/ecc/agents/harmonyos-app-resolver.md +182 -0
- package/resources/ecc/agents/harness-optimizer.md +12 -2
- package/resources/ecc/agents/healthcare-reviewer.md +92 -0
- package/resources/ecc/agents/homelab-architect.md +107 -0
- package/resources/ecc/agents/java-build-resolver.md +275 -0
- package/resources/ecc/agents/java-reviewer.md +190 -0
- package/resources/ecc/agents/kotlin-build-resolver.md +127 -0
- package/resources/ecc/agents/kotlin-reviewer.md +168 -0
- package/resources/ecc/agents/loop-operator.md +12 -3
- package/resources/ecc/agents/mle-reviewer.md +162 -0
- package/resources/ecc/agents/network-architect.md +106 -0
- package/resources/ecc/agents/network-config-reviewer.md +106 -0
- package/resources/ecc/agents/network-troubleshooter.md +128 -0
- package/resources/ecc/agents/opensource-forker.md +207 -0
- package/resources/ecc/agents/opensource-packager.md +258 -0
- package/resources/ecc/agents/opensource-sanitizer.md +197 -0
- package/resources/ecc/agents/performance-optimizer.md +455 -0
- package/resources/ecc/agents/planner.md +11 -2
- package/resources/ecc/agents/pr-test-analyzer.md +54 -0
- package/resources/ecc/agents/python-reviewer.md +11 -3
- package/resources/ecc/agents/pytorch-build-resolver.md +129 -0
- package/resources/ecc/agents/refactor-cleaner.md +11 -4
- package/resources/ecc/agents/rust-build-resolver.md +157 -0
- package/resources/ecc/agents/rust-reviewer.md +103 -0
- package/resources/ecc/agents/security-reviewer.md +11 -3
- package/resources/ecc/agents/seo-specialist.md +71 -0
- package/resources/ecc/agents/silent-failure-hunter.md +59 -0
- package/resources/ecc/agents/swift-build-resolver.md +170 -0
- package/resources/ecc/agents/swift-reviewer.md +116 -0
- package/resources/ecc/agents/tdd-guide.md +11 -4
- package/resources/ecc/agents/type-design-analyzer.md +50 -0
- package/resources/ecc/agents/typescript-reviewer.md +121 -0
- package/resources/ecc/commands/aside.md +164 -0
- package/resources/ecc/commands/auto-update.md +28 -0
- package/resources/ecc/commands/build-fix.md +66 -0
- package/resources/ecc/commands/checkpoint.md +78 -0
- package/resources/ecc/commands/code-review.md +289 -0
- package/resources/ecc/commands/cost-report.md +107 -0
- package/resources/ecc/commands/cpp-build.md +173 -0
- package/resources/ecc/commands/cpp-review.md +132 -0
- package/resources/ecc/commands/cpp-test.md +251 -0
- package/resources/ecc/commands/ecc-guide.md +93 -0
- package/resources/ecc/commands/evolve.md +178 -0
- package/resources/ecc/commands/fastapi-review.md +39 -0
- package/resources/ecc/commands/feature-dev.md +49 -0
- package/resources/ecc/commands/flutter-build.md +164 -0
- package/resources/ecc/commands/flutter-review.md +116 -0
- package/resources/ecc/commands/flutter-test.md +144 -0
- package/resources/ecc/commands/gan-build.md +103 -0
- package/resources/ecc/commands/gan-design.md +39 -0
- package/resources/ecc/commands/go-build.md +183 -0
- package/resources/ecc/commands/go-review.md +148 -0
- package/resources/ecc/commands/go-test.md +268 -0
- package/resources/ecc/commands/gradle-build.md +70 -0
- package/resources/ecc/commands/harness-audit.md +77 -0
- package/resources/ecc/commands/hookify-configure.md +14 -0
- package/resources/ecc/commands/hookify-help.md +46 -0
- package/resources/ecc/commands/hookify-list.md +21 -0
- package/resources/ecc/commands/hookify.md +50 -0
- package/resources/ecc/commands/instinct-export.md +66 -0
- package/resources/ecc/commands/instinct-import.md +114 -0
- package/resources/ecc/commands/instinct-status.md +59 -0
- package/resources/ecc/commands/jira.md +106 -0
- package/resources/ecc/commands/kotlin-build.md +174 -0
- package/resources/ecc/commands/kotlin-review.md +140 -0
- package/resources/ecc/commands/kotlin-test.md +312 -0
- package/resources/ecc/commands/learn-eval.md +116 -0
- package/resources/ecc/commands/learn.md +74 -0
- package/resources/ecc/commands/loop-start.md +36 -0
- package/resources/ecc/commands/loop-status.md +77 -0
- package/resources/ecc/commands/model-route.md +30 -0
- package/resources/ecc/commands/multi-backend.md +162 -0
- package/resources/ecc/commands/multi-execute.md +319 -0
- package/resources/ecc/commands/multi-frontend.md +162 -0
- package/resources/ecc/commands/multi-plan.md +272 -0
- package/resources/ecc/commands/multi-workflow.md +195 -0
- package/resources/ecc/commands/plan-prd.md +160 -0
- package/resources/ecc/commands/plan.md +200 -0
- package/resources/ecc/commands/pm2.md +276 -0
- package/resources/ecc/commands/pr.md +184 -0
- package/resources/ecc/commands/project-init.md +86 -0
- package/resources/ecc/commands/projects.md +39 -0
- package/resources/ecc/commands/promote.md +41 -0
- package/resources/ecc/commands/prp-commit.md +112 -0
- package/resources/ecc/commands/prp-implement.md +385 -0
- package/resources/ecc/commands/prp-plan.md +502 -0
- package/resources/ecc/commands/prp-pr.md +184 -0
- package/resources/ecc/commands/prp-prd.md +447 -0
- package/resources/ecc/commands/prune.md +31 -0
- package/resources/ecc/commands/python-review.md +297 -0
- package/resources/ecc/commands/quality-gate.md +33 -0
- package/resources/ecc/commands/refactor-clean.md +84 -0
- package/resources/ecc/commands/resume-session.md +156 -0
- package/resources/ecc/commands/review-pr.md +37 -0
- package/resources/ecc/commands/rust-build.md +187 -0
- package/resources/ecc/commands/rust-review.md +142 -0
- package/resources/ecc/commands/rust-test.md +308 -0
- package/resources/ecc/commands/santa-loop.md +175 -0
- package/resources/ecc/commands/save-session.md +275 -0
- package/resources/ecc/commands/security-scan.md +92 -0
- package/resources/ecc/commands/sessions.md +339 -0
- package/resources/ecc/commands/setup-pm.md +80 -0
- package/resources/ecc/commands/skill-create.md +174 -0
- package/resources/ecc/commands/skill-health.md +54 -0
- package/resources/ecc/commands/test-coverage.md +73 -0
- package/resources/ecc/commands/update-codemaps.md +76 -0
- package/resources/ecc/commands/update-docs.md +88 -0
- package/resources/ecc/rules/README.md +120 -0
- package/resources/ecc/rules/angular/coding-style.md +182 -0
- package/resources/ecc/rules/angular/hooks.md +25 -0
- package/resources/ecc/rules/angular/patterns.md +249 -0
- package/resources/ecc/rules/angular/security.md +87 -0
- package/resources/ecc/rules/angular/testing.md +164 -0
- package/resources/ecc/rules/arkts/coding-style.md +153 -0
- package/resources/ecc/rules/arkts/hooks.md +135 -0
- package/resources/ecc/rules/arkts/patterns.md +236 -0
- package/resources/ecc/rules/arkts/security.md +141 -0
- package/resources/ecc/rules/arkts/testing.md +126 -0
- package/resources/ecc/rules/{common-agents.md → common/agents.md} +2 -4
- package/resources/ecc/rules/common/code-review.md +124 -0
- package/resources/ecc/rules/{common-coding-style.md → common/coding-style.md} +42 -4
- package/resources/ecc/rules/common/development-workflow.md +44 -0
- package/resources/ecc/rules/{common-git-workflow.md → common/git-workflow.md} +1 -5
- package/resources/ecc/rules/{common-hooks.md → common/hooks.md} +0 -4
- package/resources/ecc/rules/{common-patterns.md → common/patterns.md} +0 -4
- package/resources/ecc/rules/{common-performance.md → common/performance.md} +0 -4
- package/resources/ecc/rules/{common-security.md → common/security.md} +0 -4
- package/resources/ecc/rules/{common-testing.md → common/testing.md} +28 -4
- package/resources/ecc/rules/cpp/coding-style.md +44 -0
- package/resources/ecc/rules/cpp/hooks.md +39 -0
- package/resources/ecc/rules/cpp/patterns.md +51 -0
- package/resources/ecc/rules/cpp/security.md +51 -0
- package/resources/ecc/rules/cpp/testing.md +44 -0
- package/resources/ecc/rules/csharp/coding-style.md +72 -0
- package/resources/ecc/rules/csharp/hooks.md +25 -0
- package/resources/ecc/rules/csharp/patterns.md +50 -0
- package/resources/ecc/rules/csharp/security.md +58 -0
- package/resources/ecc/rules/csharp/testing.md +46 -0
- package/resources/ecc/rules/dart/coding-style.md +159 -0
- package/resources/ecc/rules/dart/hooks.md +66 -0
- package/resources/ecc/rules/dart/patterns.md +261 -0
- package/resources/ecc/rules/dart/security.md +135 -0
- package/resources/ecc/rules/dart/testing.md +215 -0
- package/resources/ecc/rules/fsharp/coding-style.md +112 -0
- package/resources/ecc/rules/fsharp/hooks.md +26 -0
- package/resources/ecc/rules/fsharp/patterns.md +111 -0
- package/resources/ecc/rules/fsharp/security.md +76 -0
- package/resources/ecc/rules/fsharp/testing.md +62 -0
- package/resources/ecc/rules/{golang-coding-style.md → golang/coding-style.md} +6 -5
- package/resources/ecc/rules/{golang-hooks.md → golang/hooks.md} +5 -4
- package/resources/ecc/rules/{golang-patterns.md → golang/patterns.md} +5 -4
- package/resources/ecc/rules/{golang-security.md → golang/security.md} +5 -4
- package/resources/ecc/rules/{golang-testing.md → golang/testing.md} +5 -4
- package/resources/ecc/rules/java/coding-style.md +114 -0
- package/resources/ecc/rules/java/hooks.md +18 -0
- package/resources/ecc/rules/java/patterns.md +147 -0
- package/resources/ecc/rules/java/security.md +101 -0
- package/resources/ecc/rules/java/testing.md +133 -0
- package/resources/ecc/rules/kotlin/coding-style.md +86 -0
- package/resources/ecc/rules/{kotlin-hooks.md → kotlin/hooks.md} +5 -4
- package/resources/ecc/rules/kotlin/patterns.md +146 -0
- package/resources/ecc/rules/kotlin/security.md +82 -0
- package/resources/ecc/rules/kotlin/testing.md +128 -0
- package/resources/ecc/rules/perl/coding-style.md +46 -0
- package/resources/ecc/rules/perl/hooks.md +22 -0
- package/resources/ecc/rules/perl/patterns.md +76 -0
- package/resources/ecc/rules/perl/security.md +69 -0
- package/resources/ecc/rules/perl/testing.md +54 -0
- package/resources/ecc/rules/php/coding-style.md +40 -0
- package/resources/ecc/rules/{php-hooks.md → php/hooks.md} +7 -4
- package/resources/ecc/rules/php/patterns.md +33 -0
- package/resources/ecc/rules/php/security.md +37 -0
- package/resources/ecc/rules/php/testing.md +39 -0
- package/resources/ecc/rules/{python-coding-style.md → python/coding-style.md} +4 -4
- package/resources/ecc/rules/python/fastapi.md +58 -0
- package/resources/ecc/rules/{python-hooks.md → python/hooks.md} +4 -4
- package/resources/ecc/rules/{python-patterns.md → python/patterns.md} +4 -4
- package/resources/ecc/rules/{python-security.md → python/security.md} +4 -4
- package/resources/ecc/rules/{python-testing.md → python/testing.md} +4 -4
- package/resources/ecc/rules/ruby/coding-style.md +46 -0
- package/resources/ecc/rules/ruby/hooks.md +37 -0
- package/resources/ecc/rules/ruby/patterns.md +44 -0
- package/resources/ecc/rules/ruby/security.md +51 -0
- package/resources/ecc/rules/ruby/testing.md +51 -0
- package/resources/ecc/rules/rust/coding-style.md +151 -0
- package/resources/ecc/rules/rust/hooks.md +16 -0
- package/resources/ecc/rules/rust/patterns.md +168 -0
- package/resources/ecc/rules/rust/security.md +141 -0
- package/resources/ecc/rules/rust/testing.md +154 -0
- package/resources/ecc/rules/{swift-coding-style.md → swift/coding-style.md} +6 -6
- package/resources/ecc/rules/swift/hooks.md +20 -0
- package/resources/ecc/rules/{swift-patterns.md → swift/patterns.md} +5 -5
- package/resources/ecc/rules/{swift-security.md → swift/security.md} +7 -7
- package/resources/ecc/rules/{swift-testing.md → swift/testing.md} +5 -5
- package/resources/ecc/rules/typescript/coding-style.md +199 -0
- package/resources/ecc/rules/{typescript-hooks.md → typescript/hooks.md} +6 -4
- package/resources/ecc/rules/{typescript-patterns.md → typescript/patterns.md} +6 -4
- package/resources/ecc/rules/{typescript-security.md → typescript/security.md} +6 -4
- package/resources/ecc/rules/typescript/testing.md +18 -0
- package/resources/ecc/rules/web/coding-style.md +96 -0
- package/resources/ecc/rules/web/design-quality.md +63 -0
- package/resources/ecc/rules/web/hooks.md +129 -0
- package/resources/ecc/rules/web/patterns.md +79 -0
- package/resources/ecc/rules/web/performance.md +64 -0
- package/resources/ecc/rules/web/security.md +57 -0
- package/resources/ecc/rules/web/testing.md +55 -0
- package/resources/ecc/rules/zh/README.md +108 -0
- package/resources/ecc/rules/zh/agents.md +50 -0
- package/resources/ecc/rules/zh/code-review.md +124 -0
- package/resources/ecc/rules/zh/coding-style.md +48 -0
- package/resources/ecc/rules/zh/development-workflow.md +44 -0
- package/resources/ecc/rules/zh/git-workflow.md +24 -0
- package/resources/ecc/rules/zh/hooks.md +30 -0
- package/resources/ecc/rules/zh/patterns.md +31 -0
- package/resources/ecc/rules/zh/performance.md +55 -0
- package/resources/ecc/rules/zh/security.md +29 -0
- package/resources/ecc/rules/zh/testing.md +29 -0
- package/resources/ecc/skills/accessibility/SKILL.md +146 -0
- package/resources/ecc/skills/agent-architecture-audit/SKILL.md +256 -0
- package/resources/ecc/skills/agent-eval/SKILL.md +145 -0
- package/resources/ecc/skills/agent-harness-construction/SKILL.md +73 -0
- package/resources/ecc/skills/agent-introspection-debugging/SKILL.md +1 -0
- package/resources/ecc/skills/agent-payment-x402/SKILL.md +224 -0
- package/resources/ecc/skills/agent-sort/SKILL.md +1 -0
- package/resources/ecc/skills/agentic-engineering/SKILL.md +63 -0
- package/resources/ecc/skills/agentic-os/SKILL.md +387 -0
- package/resources/ecc/skills/ai-first-engineering/SKILL.md +51 -0
- package/resources/ecc/skills/ai-regression-testing/SKILL.md +385 -0
- package/resources/ecc/skills/android-clean-architecture/SKILL.md +339 -0
- package/resources/ecc/skills/angular-developer/SKILL.md +154 -0
- package/resources/ecc/skills/angular-developer/references/angular-animations.md +160 -0
- package/resources/ecc/skills/angular-developer/references/angular-aria.md +410 -0
- package/resources/ecc/skills/angular-developer/references/cli.md +86 -0
- package/resources/ecc/skills/angular-developer/references/component-harnesses.md +59 -0
- package/resources/ecc/skills/angular-developer/references/component-styling.md +91 -0
- package/resources/ecc/skills/angular-developer/references/components.md +117 -0
- package/resources/ecc/skills/angular-developer/references/creating-services.md +97 -0
- package/resources/ecc/skills/angular-developer/references/data-resolvers.md +69 -0
- package/resources/ecc/skills/angular-developer/references/define-routes.md +67 -0
- package/resources/ecc/skills/angular-developer/references/defining-providers.md +72 -0
- package/resources/ecc/skills/angular-developer/references/di-fundamentals.md +120 -0
- package/resources/ecc/skills/angular-developer/references/e2e-testing.md +56 -0
- package/resources/ecc/skills/angular-developer/references/effects.md +83 -0
- package/resources/ecc/skills/angular-developer/references/hierarchical-injectors.md +43 -0
- package/resources/ecc/skills/angular-developer/references/host-elements.md +80 -0
- package/resources/ecc/skills/angular-developer/references/injection-context.md +63 -0
- package/resources/ecc/skills/angular-developer/references/inputs.md +101 -0
- package/resources/ecc/skills/angular-developer/references/linked-signal.md +59 -0
- package/resources/ecc/skills/angular-developer/references/loading-strategies.md +61 -0
- package/resources/ecc/skills/angular-developer/references/mcp.md +108 -0
- package/resources/ecc/skills/angular-developer/references/navigate-to-routes.md +69 -0
- package/resources/ecc/skills/angular-developer/references/outputs.md +86 -0
- package/resources/ecc/skills/angular-developer/references/reactive-forms.md +122 -0
- package/resources/ecc/skills/angular-developer/references/rendering-strategies.md +44 -0
- package/resources/ecc/skills/angular-developer/references/resource.md +77 -0
- package/resources/ecc/skills/angular-developer/references/route-animations.md +56 -0
- package/resources/ecc/skills/angular-developer/references/route-guards.md +52 -0
- package/resources/ecc/skills/angular-developer/references/router-lifecycle.md +45 -0
- package/resources/ecc/skills/angular-developer/references/router-testing.md +87 -0
- package/resources/ecc/skills/angular-developer/references/show-routes-with-outlets.md +68 -0
- package/resources/ecc/skills/angular-developer/references/signal-forms.md +795 -0
- package/resources/ecc/skills/angular-developer/references/signals-overview.md +94 -0
- package/resources/ecc/skills/angular-developer/references/tailwind-css.md +69 -0
- package/resources/ecc/skills/angular-developer/references/template-driven-forms.md +114 -0
- package/resources/ecc/skills/angular-developer/references/testing-fundamentals.md +65 -0
- package/resources/ecc/skills/api-connector-builder/SKILL.md +120 -0
- package/resources/ecc/skills/api-design/SKILL.md +1 -0
- package/resources/ecc/skills/architecture-decision-records/SKILL.md +179 -0
- package/resources/ecc/skills/article-writing/SKILL.md +1 -0
- package/resources/ecc/skills/automation-audit-ops/SKILL.md +142 -0
- package/resources/ecc/skills/autonomous-agent-harness/SKILL.md +273 -0
- package/resources/ecc/skills/autonomous-loops/SKILL.md +610 -0
- package/resources/ecc/skills/backend-patterns/SKILL.md +8 -44
- package/resources/ecc/skills/benchmark/SKILL.md +93 -0
- package/resources/ecc/skills/blueprint/SKILL.md +105 -0
- package/resources/ecc/skills/brand-voice/SKILL.md +1 -0
- package/resources/ecc/skills/browser-qa/SKILL.md +87 -0
- package/resources/ecc/skills/bun-runtime/SKILL.md +1 -0
- package/resources/ecc/skills/canary-watch/SKILL.md +99 -0
- package/resources/ecc/skills/carrier-relationship-management/SKILL.md +212 -0
- package/resources/ecc/skills/cisco-ios-patterns/SKILL.md +163 -0
- package/resources/ecc/skills/ck/SKILL.md +147 -0
- package/resources/ecc/skills/ck/commands/forget.mjs +44 -0
- package/resources/ecc/skills/ck/commands/info.mjs +24 -0
- package/resources/ecc/skills/ck/commands/init.mjs +143 -0
- package/resources/ecc/skills/ck/commands/list.mjs +40 -0
- package/resources/ecc/skills/ck/commands/migrate.mjs +202 -0
- package/resources/ecc/skills/ck/commands/resume.mjs +36 -0
- package/resources/ecc/skills/ck/commands/save.mjs +210 -0
- package/resources/ecc/skills/ck/commands/shared.mjs +387 -0
- package/resources/ecc/skills/ck/hooks/session-start.mjs +224 -0
- package/resources/ecc/skills/claude-devfleet/SKILL.md +103 -0
- package/resources/ecc/skills/click-path-audit/SKILL.md +244 -0
- package/resources/ecc/skills/clickhouse-io/SKILL.md +439 -0
- package/resources/ecc/skills/code-tour/SKILL.md +236 -0
- package/resources/ecc/skills/codebase-onboarding/SKILL.md +233 -0
- package/resources/ecc/skills/coding-standards/SKILL.md +1 -0
- package/resources/ecc/skills/compose-multiplatform-patterns/SKILL.md +299 -0
- package/resources/ecc/skills/configure-ecc/SKILL.md +384 -0
- package/resources/ecc/skills/connections-optimizer/SKILL.md +189 -0
- package/resources/ecc/skills/content-engine/SKILL.md +1 -0
- package/resources/ecc/skills/content-hash-cache-pattern/SKILL.md +161 -0
- package/resources/ecc/skills/context-budget/SKILL.md +135 -0
- package/resources/ecc/skills/continuous-agent-loop/SKILL.md +45 -0
- package/resources/ecc/skills/continuous-learning/SKILL.md +131 -0
- package/resources/ecc/skills/continuous-learning/config.json +18 -0
- package/resources/ecc/skills/continuous-learning/evaluate-session.sh +69 -0
- package/resources/ecc/skills/continuous-learning-v2/SKILL.md +360 -0
- package/resources/ecc/skills/continuous-learning-v2/agents/observer-loop.sh +322 -0
- package/resources/ecc/skills/continuous-learning-v2/agents/observer.md +198 -0
- package/resources/ecc/skills/continuous-learning-v2/agents/session-guardian.sh +150 -0
- package/resources/ecc/skills/continuous-learning-v2/agents/start-observer.sh +248 -0
- package/resources/ecc/skills/continuous-learning-v2/config.json +8 -0
- package/resources/ecc/skills/continuous-learning-v2/hooks/observe.sh +476 -0
- package/resources/ecc/skills/continuous-learning-v2/scripts/detect-project.sh +288 -0
- package/resources/ecc/skills/continuous-learning-v2/scripts/instinct-cli.py +1519 -0
- package/resources/ecc/skills/continuous-learning-v2/scripts/lib/homunculus-dir.sh +31 -0
- package/resources/ecc/skills/continuous-learning-v2/scripts/migrate-homunculus.sh +62 -0
- package/resources/ecc/skills/continuous-learning-v2/scripts/test_parse_instinct.py +1018 -0
- package/resources/ecc/skills/cost-aware-llm-pipeline/SKILL.md +183 -0
- package/resources/ecc/skills/cost-tracking/SKILL.md +147 -0
- package/resources/ecc/skills/council/SKILL.md +203 -0
- package/resources/ecc/skills/cpp-coding-standards/SKILL.md +723 -0
- package/resources/ecc/skills/cpp-testing/SKILL.md +324 -0
- package/resources/ecc/skills/crosspost/SKILL.md +1 -0
- package/resources/ecc/skills/csharp-testing/SKILL.md +321 -0
- package/resources/ecc/skills/customer-billing-ops/SKILL.md +140 -0
- package/resources/ecc/skills/customs-trade-compliance/SKILL.md +263 -0
- package/resources/ecc/skills/dart-flutter-patterns/SKILL.md +563 -0
- package/resources/ecc/skills/dashboard-builder/SKILL.md +108 -0
- package/resources/ecc/skills/data-scraper-agent/SKILL.md +764 -0
- package/resources/ecc/skills/database-migrations/SKILL.md +429 -0
- package/resources/ecc/skills/deep-research/SKILL.md +5 -0
- package/resources/ecc/skills/defi-amm-security/SKILL.md +166 -0
- package/resources/ecc/skills/deployment-patterns/SKILL.md +427 -0
- package/resources/ecc/skills/design-system/SKILL.md +82 -0
- package/resources/ecc/skills/django-celery/SKILL.md +457 -0
- package/resources/ecc/skills/django-patterns/SKILL.md +734 -0
- package/resources/ecc/skills/django-security/SKILL.md +593 -0
- package/resources/ecc/skills/django-tdd/SKILL.md +729 -0
- package/resources/ecc/skills/django-verification/SKILL.md +469 -0
- package/resources/ecc/skills/dmux-workflows/SKILL.md +52 -4
- package/resources/ecc/skills/docker-patterns/SKILL.md +364 -0
- package/resources/ecc/skills/documentation-lookup/SKILL.md +1 -0
- package/resources/ecc/skills/dotnet-patterns/SKILL.md +321 -0
- package/resources/ecc/skills/e2e-testing/SKILL.md +1 -0
- package/resources/ecc/skills/ecc-guide/SKILL.md +189 -0
- package/resources/ecc/skills/ecc-tools-cost-audit/SKILL.md +160 -0
- package/resources/ecc/skills/email-ops/SKILL.md +121 -0
- package/resources/ecc/skills/energy-procurement/SKILL.md +228 -0
- package/resources/ecc/skills/enterprise-agent-ops/SKILL.md +50 -0
- package/resources/ecc/skills/error-handling/SKILL.md +376 -0
- package/resources/ecc/skills/eval-harness/SKILL.md +36 -1
- package/resources/ecc/skills/evm-token-decimals/SKILL.md +130 -0
- package/resources/ecc/skills/exa-search/SKILL.md +18 -80
- package/resources/ecc/skills/fal-ai-media/SKILL.md +32 -20
- package/resources/ecc/skills/fastapi-patterns/SKILL.md +327 -0
- package/resources/ecc/skills/finance-billing-ops/SKILL.md +127 -0
- package/resources/ecc/skills/flox-environments/SKILL.md +496 -0
- package/resources/ecc/skills/flutter-dart-code-review/SKILL.md +435 -0
- package/resources/ecc/skills/foundation-models-on-device/SKILL.md +243 -0
- package/resources/ecc/skills/frontend-design-direction/SKILL.md +92 -0
- package/resources/ecc/skills/frontend-patterns/SKILL.md +1 -6
- package/resources/ecc/skills/frontend-slides/SKILL.md +2 -1
- package/resources/ecc/skills/frontend-slides/animation-patterns.md +122 -0
- package/resources/ecc/skills/frontend-slides/html-template.md +419 -0
- package/resources/ecc/skills/frontend-slides/scripts/export-pdf.sh +418 -0
- package/resources/ecc/skills/frontend-slides/scripts/extract-pptx.py +96 -0
- package/resources/ecc/skills/frontend-slides/viewport-base.css +153 -0
- package/resources/ecc/skills/fsharp-testing/SKILL.md +280 -0
- package/resources/ecc/skills/gan-style-harness/SKILL.md +278 -0
- package/resources/ecc/skills/gateguard/SKILL.md +125 -0
- package/resources/ecc/skills/git-workflow/SKILL.md +715 -0
- package/resources/ecc/skills/github-ops/SKILL.md +144 -0
- package/resources/ecc/skills/golang-patterns/SKILL.md +674 -0
- package/resources/ecc/skills/golang-testing/SKILL.md +720 -0
- package/resources/ecc/skills/google-workspace-ops/SKILL.md +95 -0
- package/resources/ecc/skills/healthcare-cdss-patterns/SKILL.md +245 -0
- package/resources/ecc/skills/healthcare-emr-patterns/SKILL.md +159 -0
- package/resources/ecc/skills/healthcare-eval-harness/SKILL.md +207 -0
- package/resources/ecc/skills/healthcare-phi-compliance/SKILL.md +145 -0
- package/resources/ecc/skills/hermes-imports/SKILL.md +88 -0
- package/resources/ecc/skills/hexagonal-architecture/SKILL.md +276 -0
- package/resources/ecc/skills/hipaa-compliance/SKILL.md +78 -0
- package/resources/ecc/skills/homelab-network-readiness/SKILL.md +169 -0
- package/resources/ecc/skills/homelab-network-setup/SKILL.md +129 -0
- package/resources/ecc/skills/homelab-pihole-dns/SKILL.md +274 -0
- package/resources/ecc/skills/homelab-vlan-segmentation/SKILL.md +311 -0
- package/resources/ecc/skills/homelab-wireguard-vpn/SKILL.md +305 -0
- package/resources/ecc/skills/hookify-rules/SKILL.md +128 -0
- package/resources/ecc/skills/inventory-demand-planning/SKILL.md +247 -0
- package/resources/ecc/skills/investor-materials/SKILL.md +1 -0
- package/resources/ecc/skills/investor-outreach/SKILL.md +1 -0
- package/resources/ecc/skills/ios-icon-gen/SKILL.md +157 -0
- package/resources/ecc/skills/ios-icon-gen/scripts/generate_icons.swift +258 -0
- package/resources/ecc/skills/ios-icon-gen/scripts/iconify_gen.sh +235 -0
- package/resources/ecc/skills/iterative-retrieval/SKILL.md +211 -0
- package/resources/ecc/skills/java-coding-standards/SKILL.md +383 -0
- package/resources/ecc/skills/jira-integration/SKILL.md +293 -0
- package/resources/ecc/skills/jpa-patterns/SKILL.md +151 -0
- package/resources/ecc/skills/knowledge-ops/SKILL.md +154 -0
- package/resources/ecc/skills/kotlin-coroutines-flows/SKILL.md +284 -0
- package/resources/ecc/skills/kotlin-exposed-patterns/SKILL.md +719 -0
- package/resources/ecc/skills/kotlin-ktor-patterns/SKILL.md +689 -0
- package/resources/ecc/skills/kotlin-patterns/SKILL.md +711 -0
- package/resources/ecc/skills/kotlin-testing/SKILL.md +824 -0
- package/resources/ecc/skills/laravel-patterns/SKILL.md +415 -0
- package/resources/ecc/skills/laravel-plugin-discovery/SKILL.md +229 -0
- package/resources/ecc/skills/laravel-security/SKILL.md +285 -0
- package/resources/ecc/skills/laravel-tdd/SKILL.md +283 -0
- package/resources/ecc/skills/laravel-verification/SKILL.md +179 -0
- package/resources/ecc/skills/lead-intelligence/SKILL.md +321 -0
- package/resources/ecc/skills/lead-intelligence/agents/enrichment-agent.md +85 -0
- package/resources/ecc/skills/lead-intelligence/agents/mutual-mapper.md +75 -0
- package/resources/ecc/skills/lead-intelligence/agents/outreach-drafter.md +98 -0
- package/resources/ecc/skills/lead-intelligence/agents/signal-scorer.md +60 -0
- package/resources/ecc/skills/liquid-glass-design/SKILL.md +279 -0
- package/resources/ecc/skills/llm-trading-agent-security/SKILL.md +146 -0
- package/resources/ecc/skills/logistics-exception-management/SKILL.md +222 -0
- package/resources/ecc/skills/make-interfaces-feel-better/SKILL.md +151 -0
- package/resources/ecc/skills/manim-video/SKILL.md +89 -0
- package/resources/ecc/skills/manim-video/assets/network_graph_scene.py +52 -0
- package/resources/ecc/skills/market-research/SKILL.md +1 -0
- package/resources/ecc/skills/mcp-server-patterns/SKILL.md +3 -0
- package/resources/ecc/skills/messages-ops/SKILL.md +104 -0
- package/resources/ecc/skills/mle-workflow/SKILL.md +1 -1
- package/resources/ecc/skills/motion-advanced/SKILL.md +596 -0
- package/resources/ecc/skills/motion-foundations/SKILL.md +299 -0
- package/resources/ecc/skills/motion-patterns/SKILL.md +435 -0
- package/resources/ecc/skills/motion-ui/SKILL.md +575 -0
- package/resources/ecc/skills/mysql-patterns/SKILL.md +412 -0
- package/resources/ecc/skills/nanoclaw-repl/SKILL.md +33 -0
- package/resources/ecc/skills/nestjs-patterns/SKILL.md +230 -0
- package/resources/ecc/skills/netmiko-ssh-automation/SKILL.md +173 -0
- package/resources/ecc/skills/network-bgp-diagnostics/SKILL.md +167 -0
- package/resources/ecc/skills/network-config-validation/SKILL.md +210 -0
- package/resources/ecc/skills/network-interface-health/SKILL.md +152 -0
- package/resources/ecc/skills/nextjs-turbopack/SKILL.md +1 -0
- package/resources/ecc/skills/nodejs-keccak256/SKILL.md +102 -0
- package/resources/ecc/skills/nutrient-document-processing/SKILL.md +167 -0
- package/resources/ecc/skills/nuxt4-patterns/SKILL.md +100 -0
- package/resources/ecc/skills/openclaw-persona-forge/SKILL.md +288 -0
- package/resources/ecc/skills/openclaw-persona-forge/gacha.py +224 -0
- package/resources/ecc/skills/openclaw-persona-forge/gacha.sh +5 -0
- package/resources/ecc/skills/openclaw-persona-forge/references/avatar-style.md +124 -0
- package/resources/ecc/skills/openclaw-persona-forge/references/boundary-rules.md +53 -0
- package/resources/ecc/skills/openclaw-persona-forge/references/error-handling.md +53 -0
- package/resources/ecc/skills/openclaw-persona-forge/references/identity-tension.md +48 -0
- package/resources/ecc/skills/openclaw-persona-forge/references/naming-system.md +39 -0
- package/resources/ecc/skills/openclaw-persona-forge/references/output-template.md +166 -0
- package/resources/ecc/skills/opensource-pipeline/SKILL.md +255 -0
- package/resources/ecc/skills/perl-patterns/SKILL.md +504 -0
- package/resources/ecc/skills/perl-security/SKILL.md +503 -0
- package/resources/ecc/skills/perl-testing/SKILL.md +475 -0
- package/resources/ecc/skills/plan-orchestrate/SKILL.md +262 -0
- package/resources/ecc/skills/plankton-code-quality/SKILL.md +236 -0
- package/resources/ecc/skills/postgres-patterns/SKILL.md +147 -0
- package/resources/ecc/skills/product-capability/SKILL.md +1 -0
- package/resources/ecc/skills/product-lens/SKILL.md +92 -0
- package/resources/ecc/skills/production-audit/SKILL.md +206 -0
- package/resources/ecc/skills/production-scheduling/SKILL.md +238 -0
- package/resources/ecc/skills/project-flow-ops/SKILL.md +111 -0
- package/resources/ecc/skills/prompt-optimizer/SKILL.md +398 -0
- package/resources/ecc/skills/python-patterns/SKILL.md +750 -0
- package/resources/ecc/skills/python-testing/SKILL.md +816 -0
- package/resources/ecc/skills/pytorch-patterns/SKILL.md +396 -0
- package/resources/ecc/skills/quality-nonconformance/SKILL.md +260 -0
- package/resources/ecc/skills/quarkus-patterns/SKILL.md +722 -0
- package/resources/ecc/skills/quarkus-security/SKILL.md +467 -0
- package/resources/ecc/skills/quarkus-tdd/SKILL.md +811 -0
- package/resources/ecc/skills/quarkus-verification/SKILL.md +479 -0
- package/resources/ecc/skills/ralphinho-rfc-pipeline/SKILL.md +67 -0
- package/resources/ecc/skills/redis-patterns/SKILL.md +403 -0
- package/resources/ecc/skills/regex-vs-llm-structured-text/SKILL.md +220 -0
- package/resources/ecc/skills/remotion-video-creation/SKILL.md +43 -0
- package/resources/ecc/skills/remotion-video-creation/rules/3d.md +86 -0
- package/resources/ecc/skills/remotion-video-creation/rules/animations.md +29 -0
- package/resources/ecc/skills/remotion-video-creation/rules/assets/charts-bar-chart.tsx +173 -0
- package/resources/ecc/skills/remotion-video-creation/rules/assets/text-animations-typewriter.tsx +100 -0
- package/resources/ecc/skills/remotion-video-creation/rules/assets/text-animations-word-highlight.tsx +108 -0
- package/resources/ecc/skills/remotion-video-creation/rules/assets.md +78 -0
- package/resources/ecc/skills/remotion-video-creation/rules/audio.md +172 -0
- package/resources/ecc/skills/remotion-video-creation/rules/calculate-metadata.md +104 -0
- package/resources/ecc/skills/remotion-video-creation/rules/can-decode.md +75 -0
- package/resources/ecc/skills/remotion-video-creation/rules/charts.md +58 -0
- package/resources/ecc/skills/remotion-video-creation/rules/compositions.md +146 -0
- package/resources/ecc/skills/remotion-video-creation/rules/display-captions.md +126 -0
- package/resources/ecc/skills/remotion-video-creation/rules/extract-frames.md +229 -0
- package/resources/ecc/skills/remotion-video-creation/rules/fonts.md +152 -0
- package/resources/ecc/skills/remotion-video-creation/rules/get-audio-duration.md +58 -0
- package/resources/ecc/skills/remotion-video-creation/rules/get-video-dimensions.md +68 -0
- package/resources/ecc/skills/remotion-video-creation/rules/get-video-duration.md +58 -0
- package/resources/ecc/skills/remotion-video-creation/rules/gifs.md +138 -0
- package/resources/ecc/skills/remotion-video-creation/rules/images.md +130 -0
- package/resources/ecc/skills/remotion-video-creation/rules/import-srt-captions.md +67 -0
- package/resources/ecc/skills/remotion-video-creation/rules/lottie.md +67 -0
- package/resources/ecc/skills/remotion-video-creation/rules/measuring-dom-nodes.md +34 -0
- package/resources/ecc/skills/remotion-video-creation/rules/measuring-text.md +143 -0
- package/resources/ecc/skills/remotion-video-creation/rules/sequencing.md +106 -0
- package/resources/ecc/skills/remotion-video-creation/rules/tailwind.md +11 -0
- package/resources/ecc/skills/remotion-video-creation/rules/text-animations.md +20 -0
- package/resources/ecc/skills/remotion-video-creation/rules/timing.md +179 -0
- package/resources/ecc/skills/remotion-video-creation/rules/transcribe-captions.md +19 -0
- package/resources/ecc/skills/remotion-video-creation/rules/transitions.md +122 -0
- package/resources/ecc/skills/remotion-video-creation/rules/trimming.md +52 -0
- package/resources/ecc/skills/remotion-video-creation/rules/videos.md +171 -0
- package/resources/ecc/skills/repo-scan/SKILL.md +78 -0
- package/resources/ecc/skills/research-ops/SKILL.md +112 -0
- package/resources/ecc/skills/returns-reverse-logistics/SKILL.md +240 -0
- package/resources/ecc/skills/rules-distill/SKILL.md +264 -0
- package/resources/ecc/skills/rules-distill/scripts/scan-rules.sh +58 -0
- package/resources/ecc/skills/rules-distill/scripts/scan-skills.sh +129 -0
- package/resources/ecc/skills/rust-patterns/SKILL.md +499 -0
- package/resources/ecc/skills/rust-testing/SKILL.md +500 -0
- package/resources/ecc/skills/safety-guard/SKILL.md +75 -0
- package/resources/ecc/skills/santa-method/SKILL.md +306 -0
- package/resources/ecc/skills/scientific-db-pubmed-database/SKILL.md +175 -0
- package/resources/ecc/skills/scientific-db-uspto-database/SKILL.md +177 -0
- package/resources/ecc/skills/scientific-pkg-gget/SKILL.md +166 -0
- package/resources/ecc/skills/scientific-thinking-literature-review/SKILL.md +192 -0
- package/resources/ecc/skills/scientific-thinking-scholar-evaluation/SKILL.md +160 -0
- package/resources/ecc/skills/search-first/SKILL.md +182 -0
- package/resources/ecc/skills/security-bounty-hunter/SKILL.md +99 -0
- package/resources/ecc/skills/security-review/SKILL.md +11 -2
- package/resources/ecc/skills/security-review/cloud-infrastructure-security.md +361 -0
- package/resources/ecc/skills/security-scan/SKILL.md +165 -0
- package/resources/ecc/skills/seo/SKILL.md +154 -0
- package/resources/ecc/skills/skill-comply/SKILL.md +58 -0
- package/resources/ecc/skills/skill-comply/fixtures/compliant_trace.jsonl +5 -0
- package/resources/ecc/skills/skill-comply/fixtures/noncompliant_trace.jsonl +3 -0
- package/resources/ecc/skills/skill-comply/fixtures/tdd_spec.yaml +44 -0
- package/resources/ecc/skills/skill-comply/prompts/classifier.md +24 -0
- package/resources/ecc/skills/skill-comply/prompts/scenario_generator.md +62 -0
- package/resources/ecc/skills/skill-comply/prompts/spec_generator.md +42 -0
- package/resources/ecc/skills/skill-comply/pyproject.toml +15 -0
- package/resources/ecc/skills/skill-comply/scripts/__init__.py +0 -0
- package/resources/ecc/skills/skill-comply/scripts/classifier.py +85 -0
- package/resources/ecc/skills/skill-comply/scripts/grader.py +124 -0
- package/resources/ecc/skills/skill-comply/scripts/parser.py +107 -0
- package/resources/ecc/skills/skill-comply/scripts/report.py +170 -0
- package/resources/ecc/skills/skill-comply/scripts/run.py +127 -0
- package/resources/ecc/skills/skill-comply/scripts/runner.py +186 -0
- package/resources/ecc/skills/skill-comply/scripts/scenario_generator.py +70 -0
- package/resources/ecc/skills/skill-comply/scripts/spec_generator.py +72 -0
- package/resources/ecc/skills/skill-comply/scripts/utils.py +13 -0
- package/resources/ecc/skills/skill-comply/tests/test_grader.py +197 -0
- package/resources/ecc/skills/skill-comply/tests/test_parser.py +90 -0
- package/resources/ecc/skills/skill-comply/tests/test_runner.py +172 -0
- package/resources/ecc/skills/skill-scout/SKILL.md +140 -0
- package/resources/ecc/skills/skill-stocktake/SKILL.md +194 -0
- package/resources/ecc/skills/skill-stocktake/scripts/quick-diff.sh +87 -0
- package/resources/ecc/skills/skill-stocktake/scripts/save-results.sh +56 -0
- package/resources/ecc/skills/skill-stocktake/scripts/scan.sh +170 -0
- package/resources/ecc/skills/social-graph-ranker/SKILL.md +154 -0
- package/resources/ecc/skills/springboot-patterns/SKILL.md +314 -0
- package/resources/ecc/skills/springboot-security/SKILL.md +272 -0
- package/resources/ecc/skills/springboot-tdd/SKILL.md +158 -0
- package/resources/ecc/skills/springboot-verification/SKILL.md +231 -0
- package/resources/ecc/skills/strategic-compact/SKILL.md +31 -2
- package/resources/ecc/skills/strategic-compact/suggest-compact.sh +54 -0
- package/resources/ecc/skills/swift-actor-persistence/SKILL.md +143 -0
- package/resources/ecc/skills/swift-concurrency-6-2/SKILL.md +216 -0
- package/resources/ecc/skills/swift-protocol-di-testing/SKILL.md +190 -0
- package/resources/ecc/skills/swiftui-patterns/SKILL.md +259 -0
- package/resources/ecc/skills/tdd-workflow/SKILL.md +54 -0
- package/resources/ecc/skills/team-builder/SKILL.md +168 -0
- package/resources/ecc/skills/terminal-ops/SKILL.md +109 -0
- package/resources/ecc/skills/tinystruct-patterns/SKILL.md +131 -0
- package/resources/ecc/skills/tinystruct-patterns/references/architecture.md +77 -0
- package/resources/ecc/skills/tinystruct-patterns/references/data-handling.md +35 -0
- package/resources/ecc/skills/tinystruct-patterns/references/routing.md +57 -0
- package/resources/ecc/skills/tinystruct-patterns/references/system-usage.md +74 -0
- package/resources/ecc/skills/tinystruct-patterns/references/testing.md +59 -0
- package/resources/ecc/skills/token-budget-advisor/SKILL.md +133 -0
- package/resources/ecc/skills/ui-demo/SKILL.md +465 -0
- package/resources/ecc/skills/ui-to-vue/SKILL.md +134 -0
- package/resources/ecc/skills/unified-notifications-ops/SKILL.md +187 -0
- package/resources/ecc/skills/verification-loop/SKILL.md +1 -0
- package/resources/ecc/skills/video-editing/SKILL.md +4 -1
- package/resources/ecc/skills/videodb/SKILL.md +374 -0
- package/resources/ecc/skills/videodb/reference/api-reference.md +550 -0
- package/resources/ecc/skills/videodb/reference/capture-reference.md +407 -0
- package/resources/ecc/skills/videodb/reference/capture.md +101 -0
- package/resources/ecc/skills/videodb/reference/editor.md +443 -0
- package/resources/ecc/skills/videodb/reference/generative.md +331 -0
- package/resources/ecc/skills/videodb/reference/rtstream-reference.md +564 -0
- package/resources/ecc/skills/videodb/reference/rtstream.md +65 -0
- package/resources/ecc/skills/videodb/reference/search.md +230 -0
- package/resources/ecc/skills/videodb/reference/streaming.md +406 -0
- package/resources/ecc/skills/videodb/reference/use-cases.md +118 -0
- package/resources/ecc/skills/videodb/scripts/ws_listener.py +282 -0
- package/resources/ecc/skills/visa-doc-translate/README.md +86 -0
- package/resources/ecc/skills/visa-doc-translate/SKILL.md +117 -0
- package/resources/ecc/skills/vite-patterns/SKILL.md +449 -0
- package/resources/ecc/skills/windows-desktop-e2e/SKILL.md +788 -0
- package/resources/ecc/skills/workspace-surface-audit/SKILL.md +125 -0
- package/resources/ecc/skills/x-api/SKILL.md +5 -0
- package/resources/ecc/agents/architect.json +0 -16
- package/resources/ecc/agents/build-error-resolver.json +0 -17
- package/resources/ecc/agents/chief-of-staff.json +0 -17
- package/resources/ecc/agents/code-reviewer.json +0 -16
- package/resources/ecc/agents/database-reviewer.json +0 -16
- package/resources/ecc/agents/doc-updater.json +0 -16
- package/resources/ecc/agents/e2e-runner.json +0 -17
- package/resources/ecc/agents/go-build-resolver.json +0 -17
- package/resources/ecc/agents/go-reviewer.json +0 -16
- package/resources/ecc/agents/harness-optimizer.json +0 -15
- package/resources/ecc/agents/loop-operator.json +0 -16
- package/resources/ecc/agents/planner.json +0 -15
- package/resources/ecc/agents/python-reviewer.json +0 -16
- package/resources/ecc/agents/refactor-cleaner.json +0 -17
- package/resources/ecc/agents/security-reviewer.json +0 -16
- package/resources/ecc/agents/tdd-guide.json +0 -17
- package/resources/ecc/commands/add-language-rules.md +0 -39
- package/resources/ecc/commands/database-migration.md +0 -36
- package/resources/ecc/commands/feature-development.md +0 -38
- package/resources/ecc/rules/common-development-workflow.md +0 -33
- package/resources/ecc/rules/kotlin-coding-style.md +0 -39
- package/resources/ecc/rules/kotlin-patterns.md +0 -50
- package/resources/ecc/rules/kotlin-security.md +0 -58
- package/resources/ecc/rules/kotlin-testing.md +0 -38
- package/resources/ecc/rules/php-coding-style.md +0 -25
- package/resources/ecc/rules/php-patterns.md +0 -23
- package/resources/ecc/rules/php-security.md +0 -24
- package/resources/ecc/rules/php-testing.md +0 -26
- package/resources/ecc/rules/swift-hooks.md +0 -20
- package/resources/ecc/rules/typescript-coding-style.md +0 -63
- package/resources/ecc/rules/typescript-testing.md +0 -16
- package/resources/ecc/skills/agent-introspection-debugging/agents/openai.yaml +0 -7
- package/resources/ecc/skills/agent-sort/agents/openai.yaml +0 -7
- package/resources/ecc/skills/api-design/agents/openai.yaml +0 -7
- package/resources/ecc/skills/article-writing/agents/openai.yaml +0 -7
- package/resources/ecc/skills/backend-patterns/agents/openai.yaml +0 -7
- package/resources/ecc/skills/brand-voice/agents/openai.yaml +0 -7
- package/resources/ecc/skills/bun-runtime/agents/openai.yaml +0 -7
- package/resources/ecc/skills/coding-standards/agents/openai.yaml +0 -7
- package/resources/ecc/skills/content-engine/agents/openai.yaml +0 -7
- package/resources/ecc/skills/crosspost/agents/openai.yaml +0 -7
- package/resources/ecc/skills/deep-research/agents/openai.yaml +0 -7
- package/resources/ecc/skills/dmux-workflows/agents/openai.yaml +0 -7
- package/resources/ecc/skills/documentation-lookup/agents/openai.yaml +0 -7
- package/resources/ecc/skills/e2e-testing/agents/openai.yaml +0 -7
- package/resources/ecc/skills/eval-harness/agents/openai.yaml +0 -7
- package/resources/ecc/skills/everything-claude-code/SKILL.md +0 -442
- package/resources/ecc/skills/everything-claude-code/agents/openai.yaml +0 -7
- package/resources/ecc/skills/exa-search/agents/openai.yaml +0 -7
- package/resources/ecc/skills/fal-ai-media/agents/openai.yaml +0 -7
- package/resources/ecc/skills/frontend-patterns/agents/openai.yaml +0 -7
- package/resources/ecc/skills/frontend-slides/agents/openai.yaml +0 -7
- package/resources/ecc/skills/investor-materials/agents/openai.yaml +0 -7
- package/resources/ecc/skills/investor-outreach/agents/openai.yaml +0 -7
- package/resources/ecc/skills/market-research/agents/openai.yaml +0 -7
- package/resources/ecc/skills/mcp-server-patterns/agents/openai.yaml +0 -7
- package/resources/ecc/skills/mle-workflow/agents/openai.yaml +0 -7
- package/resources/ecc/skills/nextjs-turbopack/agents/openai.yaml +0 -7
- package/resources/ecc/skills/product-capability/agents/openai.yaml +0 -7
- package/resources/ecc/skills/security-review/agents/openai.yaml +0 -7
- package/resources/ecc/skills/strategic-compact/agents/openai.yaml +0 -7
- package/resources/ecc/skills/tdd-workflow/agents/openai.yaml +0 -7
- package/resources/ecc/skills/verification-loop/agents/openai.yaml +0 -7
- package/resources/ecc/skills/video-editing/agents/openai.yaml +0 -7
- package/resources/ecc/skills/x-api/agents/openai.yaml +0 -7
|
@@ -0,0 +1,224 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: agent-payment-x402
|
|
3
|
+
description: Add x402 payment execution to AI agents with per-task budgets, spending controls, and non-custodial wallets. Supports Base through agentwallet-sdk and X Layer through OKX Payments / OKX Agent Payments Protocol.
|
|
4
|
+
origin: community
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Agent Payment Execution (x402)
|
|
8
|
+
|
|
9
|
+
Enable AI agents to make policy-gated payments with built-in spending controls. Uses the x402 HTTP payment protocol and MCP tools so agents can pay for external services, APIs, or other agents without custodial risk.
|
|
10
|
+
|
|
11
|
+
## When to Use
|
|
12
|
+
|
|
13
|
+
Use when: your agent needs to pay for an API call, purchase a service, settle with another agent, enforce per-task spending limits, or manage a non-custodial wallet. Pairs naturally with cost-aware-llm-pipeline and security-review skills.
|
|
14
|
+
|
|
15
|
+
## Decision Tree
|
|
16
|
+
|
|
17
|
+
Choose the integration path based on whether your agent is buying access to a paid API or charging others for one:
|
|
18
|
+
|
|
19
|
+
| Need | Recommended path |
|
|
20
|
+
|------|------------------|
|
|
21
|
+
| Agent pays a 402-gated API on Base or another agentwallet-supported chain | Use `agentwallet-sdk` as an MCP payment server with strict spending policy |
|
|
22
|
+
| Agent pays a 402-gated API on X Layer | Use OKX Agent Payments Protocol from `okx/onchainos-skills`; `okx-x402-payment` is a deprecated legacy alias |
|
|
23
|
+
| TypeScript API charges agents | Use OKX Payments TypeScript seller SDK docs for Express, Hono, Fastify, or Next.js |
|
|
24
|
+
| Go API charges agents | Use OKX Payments Go seller SDK docs for Gin, Echo, or `net/http` |
|
|
25
|
+
| Rust API charges agents | Use OKX Payments Rust seller SDK docs for Axum |
|
|
26
|
+
| Java API charges agents | Use OKX Payments Java seller SDK docs for Spring Boot 2/3, Java EE, or Jakarta |
|
|
27
|
+
| Python API charges agents | Check the current OKX Payments repository before implementation; a Python seller guide may not be available |
|
|
28
|
+
|
|
29
|
+
## Supported Networks
|
|
30
|
+
|
|
31
|
+
- `agentwallet-sdk`: use the package docs to confirm current network coverage before production. Base Sepolia is the safest development default; Base mainnet is the production path called out by the original skill.
|
|
32
|
+
- OKX Payments / X Layer: current seller docs target X Layer (`eip155:196`) and USDT0 settlement. Fetch current SDK docs before generating production code because payment packages and facilitator behavior can change quickly.
|
|
33
|
+
|
|
34
|
+
## How It Works
|
|
35
|
+
|
|
36
|
+
### x402 Protocol
|
|
37
|
+
x402 extends HTTP 402 (Payment Required) into a machine-negotiable flow. When a server returns `402`, the agent's payment tool negotiates price, checks budget, signs a transaction, and retries only inside the policy and confirmation boundary set by the orchestrator.
|
|
38
|
+
|
|
39
|
+
### Spending Controls
|
|
40
|
+
Every payment tool call enforces a `SpendingPolicy`:
|
|
41
|
+
- **Per-task budget** — max spend for a single agent action
|
|
42
|
+
- **Per-session budget** — cumulative limit across an entire session
|
|
43
|
+
- **Allowlisted recipients** — restrict which addresses/services the agent can pay
|
|
44
|
+
- **Rate limits** — max transactions per minute/hour
|
|
45
|
+
|
|
46
|
+
### Non-Custodial Wallets
|
|
47
|
+
Agents hold their own keys via ERC-4337 smart accounts. The orchestrator sets policy before delegation; the agent can only spend within bounds. No pooled funds, no custodial risk.
|
|
48
|
+
|
|
49
|
+
## MCP Integration
|
|
50
|
+
|
|
51
|
+
The payment layer exposes standard MCP tools that slot into any Claude Code or agent harness setup.
|
|
52
|
+
|
|
53
|
+
> **Security note**: Always pin the package version. This tool manages private keys — unpinned `npx` installs introduce supply-chain risk.
|
|
54
|
+
|
|
55
|
+
### Option A: agentwallet-sdk (Base / multi-chain)
|
|
56
|
+
|
|
57
|
+
```json
|
|
58
|
+
{
|
|
59
|
+
"mcpServers": {
|
|
60
|
+
"agentpay": {
|
|
61
|
+
"command": "npx",
|
|
62
|
+
"args": ["agentwallet-sdk@6.0.0"]
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
```
|
|
67
|
+
|
|
68
|
+
### Available Tools (agent-callable)
|
|
69
|
+
|
|
70
|
+
| Tool | Purpose |
|
|
71
|
+
|------|---------|
|
|
72
|
+
| `get_balance` | Check agent wallet balance |
|
|
73
|
+
| `send_payment` | Send payment to address or ENS |
|
|
74
|
+
| `check_spending` | Query remaining budget |
|
|
75
|
+
| `list_transactions` | Audit trail of all payments |
|
|
76
|
+
|
|
77
|
+
> **Note**: Spending policy is set by the **orchestrator** before delegating to the agent — not by the agent itself. This prevents agents from escalating their own spending limits. Configure policy via `set_policy` in your orchestration layer or pre-task hook, never as an agent-callable tool.
|
|
78
|
+
|
|
79
|
+
### Option B: OKX Agent Payments Protocol (X Layer)
|
|
80
|
+
|
|
81
|
+
Use this path for X Layer x402, Multi-Party Payment (MPP), session payment, charge, and A2A charge flows.
|
|
82
|
+
|
|
83
|
+
For buyer-side agent flows:
|
|
84
|
+
|
|
85
|
+
1. Install or reference the current `okx/onchainos-skills` repository.
|
|
86
|
+
2. Use `skills/okx-agent-payments-protocol/SKILL.md` as the dispatcher.
|
|
87
|
+
3. Treat `skills/okx-x402-payment/SKILL.md` as a deprecated compatibility alias, not as the canonical skill.
|
|
88
|
+
4. Require explicit user confirmation before wallet status checks or payment actions. Do not hide payment execution behind a generic tool call.
|
|
89
|
+
|
|
90
|
+
For seller-side API flows, fetch the latest language-specific guide before generating code:
|
|
91
|
+
|
|
92
|
+
| Runtime | Current guide |
|
|
93
|
+
|---------|---------------|
|
|
94
|
+
| TypeScript | `https://raw.githubusercontent.com/okx/payments/main/typescript/SELLER.md` |
|
|
95
|
+
| Go | `https://raw.githubusercontent.com/okx/payments/main/go/x402/SELLER.md` |
|
|
96
|
+
| Rust | `https://raw.githubusercontent.com/okx/payments/main/rust/x402/SELLER.md` |
|
|
97
|
+
| Java | `https://raw.githubusercontent.com/okx/payments/main/java/SELLER.md` |
|
|
98
|
+
|
|
99
|
+
Do not copy examples from older docs without checking the current OKX repository. Current OKX guidance uses `okx-agent-payments-protocol` as the dispatcher, and Java seller docs are now available.
|
|
100
|
+
|
|
101
|
+
## Examples
|
|
102
|
+
|
|
103
|
+
### Budget enforcement in an MCP client
|
|
104
|
+
|
|
105
|
+
When building an orchestrator that calls the agentpay MCP server, enforce budgets before dispatching paid tool calls.
|
|
106
|
+
|
|
107
|
+
> **Prerequisites**: Install the package before adding the MCP config — `npx` without `-y` will prompt for confirmation in non-interactive environments, causing the server to hang: `npm install -g agentwallet-sdk@6.0.0`
|
|
108
|
+
|
|
109
|
+
```typescript
|
|
110
|
+
import { Client } from "@modelcontextprotocol/sdk/client/index.js";
|
|
111
|
+
import { StdioClientTransport } from "@modelcontextprotocol/sdk/client/stdio.js";
|
|
112
|
+
|
|
113
|
+
async function main() {
|
|
114
|
+
// 1. Validate credentials before constructing the transport.
|
|
115
|
+
// A missing key must fail immediately — never let the subprocess start without auth.
|
|
116
|
+
const walletKey = process.env.WALLET_PRIVATE_KEY;
|
|
117
|
+
if (!walletKey) {
|
|
118
|
+
throw new Error("WALLET_PRIVATE_KEY is not set — refusing to start payment server");
|
|
119
|
+
}
|
|
120
|
+
|
|
121
|
+
// Connect to the agentpay MCP server via stdio transport.
|
|
122
|
+
// Whitelist only the env vars the server needs — never forward all of process.env
|
|
123
|
+
// to a third-party subprocess that manages private keys.
|
|
124
|
+
const transport = new StdioClientTransport({
|
|
125
|
+
command: "npx",
|
|
126
|
+
args: ["agentwallet-sdk@6.0.0"],
|
|
127
|
+
env: {
|
|
128
|
+
PATH: process.env.PATH ?? "",
|
|
129
|
+
NODE_ENV: process.env.NODE_ENV ?? "production",
|
|
130
|
+
WALLET_PRIVATE_KEY: walletKey,
|
|
131
|
+
},
|
|
132
|
+
});
|
|
133
|
+
const agentpay = new Client({ name: "orchestrator", version: "1.0.0" });
|
|
134
|
+
await agentpay.connect(transport);
|
|
135
|
+
|
|
136
|
+
// 2. Set spending policy before delegating to the agent.
|
|
137
|
+
// Always verify success — a silent failure means no controls are active.
|
|
138
|
+
const policyResult = await agentpay.callTool({
|
|
139
|
+
name: "set_policy",
|
|
140
|
+
arguments: {
|
|
141
|
+
per_task_budget: 0.50,
|
|
142
|
+
per_session_budget: 5.00,
|
|
143
|
+
allowlisted_recipients: ["api.example.com"],
|
|
144
|
+
},
|
|
145
|
+
});
|
|
146
|
+
if (policyResult.isError) {
|
|
147
|
+
throw new Error(
|
|
148
|
+
`Failed to set spending policy — do not delegate: ${JSON.stringify(policyResult.content)}`
|
|
149
|
+
);
|
|
150
|
+
}
|
|
151
|
+
|
|
152
|
+
// 3. Use preToolCheck before any paid action
|
|
153
|
+
await preToolCheck(agentpay, 0.01);
|
|
154
|
+
}
|
|
155
|
+
|
|
156
|
+
// Pre-tool hook: fail-closed budget enforcement with four distinct error paths.
|
|
157
|
+
async function preToolCheck(agentpay: Client, apiCost: number): Promise<void> {
|
|
158
|
+
// Path 1: Reject invalid input (NaN/Infinity bypass the < comparison)
|
|
159
|
+
if (!Number.isFinite(apiCost) || apiCost < 0) {
|
|
160
|
+
throw new Error(`Invalid apiCost: ${apiCost} — action blocked`);
|
|
161
|
+
}
|
|
162
|
+
|
|
163
|
+
// Path 2: Transport/connectivity failure
|
|
164
|
+
let result;
|
|
165
|
+
try {
|
|
166
|
+
result = await agentpay.callTool({ name: "check_spending" });
|
|
167
|
+
} catch (err) {
|
|
168
|
+
throw new Error(`Payment service unreachable — action blocked: ${err}`);
|
|
169
|
+
}
|
|
170
|
+
|
|
171
|
+
// Path 3: Tool returned an error (e.g., auth failure, wallet not initialised)
|
|
172
|
+
if (result.isError) {
|
|
173
|
+
throw new Error(
|
|
174
|
+
`check_spending failed — action blocked: ${JSON.stringify(result.content)}`
|
|
175
|
+
);
|
|
176
|
+
}
|
|
177
|
+
|
|
178
|
+
// Path 4: Parse and validate the response shape
|
|
179
|
+
let remaining: number;
|
|
180
|
+
try {
|
|
181
|
+
const parsed = JSON.parse(
|
|
182
|
+
(result.content as Array<{ text: string }>)[0].text
|
|
183
|
+
);
|
|
184
|
+
if (!Number.isFinite(parsed?.remaining)) {
|
|
185
|
+
throw new TypeError("missing or non-finite 'remaining' field");
|
|
186
|
+
}
|
|
187
|
+
remaining = parsed.remaining;
|
|
188
|
+
} catch (err) {
|
|
189
|
+
throw new Error(
|
|
190
|
+
`check_spending returned unexpected format — action blocked: ${err}`
|
|
191
|
+
);
|
|
192
|
+
}
|
|
193
|
+
|
|
194
|
+
// Path 5: Budget exceeded
|
|
195
|
+
if (remaining < apiCost) {
|
|
196
|
+
throw new Error(
|
|
197
|
+
`Budget exceeded: need $${apiCost} but only $${remaining} remaining`
|
|
198
|
+
);
|
|
199
|
+
}
|
|
200
|
+
}
|
|
201
|
+
|
|
202
|
+
main().catch((err) => {
|
|
203
|
+
console.error(err);
|
|
204
|
+
process.exitCode = 1;
|
|
205
|
+
});
|
|
206
|
+
```
|
|
207
|
+
|
|
208
|
+
## Best Practices
|
|
209
|
+
|
|
210
|
+
- **Set budgets before delegation**: When spawning sub-agents, attach a SpendingPolicy via your orchestration layer. Never give an agent unlimited spend.
|
|
211
|
+
- **Pin your dependencies**: Always specify an exact version in your MCP config (e.g., `agentwallet-sdk@6.0.0`). Verify package integrity before deploying to production.
|
|
212
|
+
- **Audit trails**: Use `list_transactions` in post-task hooks to log what was spent and why.
|
|
213
|
+
- **Fail closed**: If the payment tool is unreachable, block the paid action — don't fall back to unmetered access.
|
|
214
|
+
- **Pair with security-review**: Payment tools are high-privilege. Apply the same scrutiny as shell access.
|
|
215
|
+
- **Test with testnets first**: Use Base Sepolia for development; switch to Base mainnet for production.
|
|
216
|
+
|
|
217
|
+
## Production Reference
|
|
218
|
+
|
|
219
|
+
- **npm**: [`agentwallet-sdk`](https://www.npmjs.com/package/agentwallet-sdk)
|
|
220
|
+
- **Merged into NVIDIA NeMo Agent Toolkit**: [PR #17](https://github.com/NVIDIA/NeMo-Agent-Toolkit-Examples/pull/17) — x402 payment tool for NVIDIA's agent examples
|
|
221
|
+
- **Protocol spec**: [x402.org](https://x402.org)
|
|
222
|
+
- **OKX Payments SDKs**: [`okx/payments`](https://github.com/okx/payments) — TypeScript, Go, Rust, and Java seller integrations for X Layer x402
|
|
223
|
+
- **OKX Agent Payments Protocol skill**: [`okx/onchainos-skills`](https://github.com/okx/onchainos-skills/tree/main/skills/okx-agent-payments-protocol)
|
|
224
|
+
- **OKX Payments overview**: [web3.okx.com/onchainos/dev-docs/payments/overview](https://web3.okx.com/onchainos/dev-docs/payments/overview)
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: agent-sort
|
|
3
3
|
description: Build an evidence-backed ECC install plan for a specific repo by sorting skills, commands, rules, hooks, and extras into DAILY vs LIBRARY buckets using parallel repo-aware review passes. Use when ECC should be trimmed to what a project actually needs instead of loading the full bundle.
|
|
4
|
+
origin: ECC
|
|
4
5
|
---
|
|
5
6
|
|
|
6
7
|
# Agent Sort
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: agentic-engineering
|
|
3
|
+
description: Operate as an agentic engineer using eval-first execution, decomposition, and cost-aware model routing.
|
|
4
|
+
origin: ECC
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Agentic Engineering
|
|
8
|
+
|
|
9
|
+
Use this skill for engineering workflows where AI agents perform most implementation work and humans enforce quality and risk controls.
|
|
10
|
+
|
|
11
|
+
## Operating Principles
|
|
12
|
+
|
|
13
|
+
1. Define completion criteria before execution.
|
|
14
|
+
2. Decompose work into agent-sized units.
|
|
15
|
+
3. Route model tiers by task complexity.
|
|
16
|
+
4. Measure with evals and regression checks.
|
|
17
|
+
|
|
18
|
+
## Eval-First Loop
|
|
19
|
+
|
|
20
|
+
1. Define capability eval and regression eval.
|
|
21
|
+
2. Run baseline and capture failure signatures.
|
|
22
|
+
3. Execute implementation.
|
|
23
|
+
4. Re-run evals and compare deltas.
|
|
24
|
+
|
|
25
|
+
## Task Decomposition
|
|
26
|
+
|
|
27
|
+
Apply the 15-minute unit rule:
|
|
28
|
+
- each unit should be independently verifiable
|
|
29
|
+
- each unit should have a single dominant risk
|
|
30
|
+
- each unit should expose a clear done condition
|
|
31
|
+
|
|
32
|
+
## Model Routing
|
|
33
|
+
|
|
34
|
+
- Haiku: classification, boilerplate transforms, narrow edits
|
|
35
|
+
- Sonnet: implementation and refactors
|
|
36
|
+
- Opus: architecture, root-cause analysis, multi-file invariants
|
|
37
|
+
|
|
38
|
+
## Session Strategy
|
|
39
|
+
|
|
40
|
+
- Continue session for closely-coupled units.
|
|
41
|
+
- Start fresh session after major phase transitions.
|
|
42
|
+
- Compact after milestone completion, not during active debugging.
|
|
43
|
+
|
|
44
|
+
## Review Focus for AI-Generated Code
|
|
45
|
+
|
|
46
|
+
Prioritize:
|
|
47
|
+
- invariants and edge cases
|
|
48
|
+
- error boundaries
|
|
49
|
+
- security and auth assumptions
|
|
50
|
+
- hidden coupling and rollout risk
|
|
51
|
+
|
|
52
|
+
Do not waste review cycles on style-only disagreements when automated format/lint already enforce style.
|
|
53
|
+
|
|
54
|
+
## Cost Discipline
|
|
55
|
+
|
|
56
|
+
Track per task:
|
|
57
|
+
- model
|
|
58
|
+
- token estimate
|
|
59
|
+
- retries
|
|
60
|
+
- wall-clock time
|
|
61
|
+
- success/failure
|
|
62
|
+
|
|
63
|
+
Escalate model tier only when lower tier fails with a clear reasoning gap.
|
|
@@ -0,0 +1,387 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: agentic-os
|
|
3
|
+
description: Build persistent multi-agent operating systems on Claude Code. Covers kernel architecture, specialist agents, slash commands, file-based memory, scheduled automation, and state management without external databases.
|
|
4
|
+
origin: ECC
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Agentic OS
|
|
8
|
+
|
|
9
|
+
Treat Claude Code as a persistent runtime / operating system rather than a chat session. This skill codifies the architecture used by production agentic setups: a kernel config that routes tasks to specialist agents, persistent file-based memory, scheduled automation, and a JSON/markdown data layer.
|
|
10
|
+
|
|
11
|
+
## When to Activate
|
|
12
|
+
|
|
13
|
+
- Building a multi-agent workflow inside Claude Code
|
|
14
|
+
- Setting up persistent Claude Code automation that survives session restarts
|
|
15
|
+
- Creating a "personal OS" or "agentic OS" for recurring tasks
|
|
16
|
+
- User says "agentic OS", "personal OS", "multi-agent", "agent coordinator", "persistent agent"
|
|
17
|
+
- Structuring long-running projects where context must survive across sessions
|
|
18
|
+
|
|
19
|
+
## Architecture Overview
|
|
20
|
+
|
|
21
|
+
The Agentic OS has four layers. Each layer is a directory in your project root.
|
|
22
|
+
|
|
23
|
+
```
|
|
24
|
+
project-root/
|
|
25
|
+
├── CLAUDE.md # Kernel: identity, routing rules, agent registry
|
|
26
|
+
├── agents/ # Specialist agent definitions (markdown prompts)
|
|
27
|
+
├── .claude/commands/ # Slash commands: user-facing CLI
|
|
28
|
+
├── scripts/ # Daemon scripts: scheduled or event-driven tasks
|
|
29
|
+
└── data/ # State: JSON/markdown filesystem, no external DB
|
|
30
|
+
```
|
|
31
|
+
|
|
32
|
+
### Layer Responsibilities
|
|
33
|
+
|
|
34
|
+
| Layer | Purpose | Persistence |
|
|
35
|
+
|---|---|---|
|
|
36
|
+
| Kernel (`CLAUDE.md`) | Identity, routing, model policies, agent registry | Git-tracked |
|
|
37
|
+
| Agents (`agents/`) | Specialist identities with scoped tools and memory | Git-tracked |
|
|
38
|
+
| Commands (`.claude/commands/`) | User-facing slash commands (`/daily-sync`, `/outreach`) | Git-tracked |
|
|
39
|
+
| Scripts (`scripts/`) | Python/JS daemons triggered by cron or webhooks | Git-tracked |
|
|
40
|
+
| State (`data/`) | Append-only logs, project state, decision records | Git-ignored or tracked |
|
|
41
|
+
|
|
42
|
+
## The Kernel
|
|
43
|
+
|
|
44
|
+
`CLAUDE.md` is the kernel. It acts as the COO / orchestrator. Claude reads it at session start and uses it to route work.
|
|
45
|
+
|
|
46
|
+
### Kernel Structure
|
|
47
|
+
|
|
48
|
+
```markdown
|
|
49
|
+
# CLAUDE.md - Agentic OS Kernel
|
|
50
|
+
|
|
51
|
+
## Identity
|
|
52
|
+
You are the COO of [project-name]. You route tasks to specialist agents.
|
|
53
|
+
You never write code directly. You delegate to the right agent and synthesize results.
|
|
54
|
+
|
|
55
|
+
## Agent Registry
|
|
56
|
+
|
|
57
|
+
| Agent | Role | Trigger |
|
|
58
|
+
|---|---|---|
|
|
59
|
+
| @dev | Code, architecture, debugging | User says "build", "fix", "refactor" |
|
|
60
|
+
| @writer | Documentation, content, emails | User says "write", "draft", "blog" |
|
|
61
|
+
| @researcher | Research, analysis, fact-checking | User says "research", "analyze", "compare" |
|
|
62
|
+
| @ops | DevOps, deployment, infrastructure | User says "deploy", "CI", "server" |
|
|
63
|
+
|
|
64
|
+
## Routing Rules
|
|
65
|
+
1. Parse the user request for intent keywords
|
|
66
|
+
2. Match to the Agent Registry trigger column
|
|
67
|
+
3. Load the corresponding agent file from `agents/<name>.md`
|
|
68
|
+
4. Hand off execution with full context
|
|
69
|
+
5. Synthesize and present the result back to the user
|
|
70
|
+
|
|
71
|
+
## Model Policies
|
|
72
|
+
- Default model: use the repository or harness default.
|
|
73
|
+
- @dev tasks: prefer a higher-reasoning model for complex architecture.
|
|
74
|
+
- @researcher tasks: use the configured research-capable model and approved search tools.
|
|
75
|
+
- Cost ceiling: warn before exceeding the project's configured spend threshold.
|
|
76
|
+
```
|
|
77
|
+
|
|
78
|
+
### Key Principle
|
|
79
|
+
|
|
80
|
+
The kernel should be **small and declarative**. Routing logic lives in plain markdown tables, not code. This makes the system inspectable and editable without debugging.
|
|
81
|
+
|
|
82
|
+
## Specialist Agents
|
|
83
|
+
|
|
84
|
+
Each agent is a standalone markdown file in `agents/`. Claude loads the relevant agent file when routing a task.
|
|
85
|
+
|
|
86
|
+
### Agent Definition Format
|
|
87
|
+
|
|
88
|
+
```markdown
|
|
89
|
+
# @dev - Software Engineer
|
|
90
|
+
|
|
91
|
+
## Identity
|
|
92
|
+
You are a senior software engineer. You write clean, tested, production-grade code.
|
|
93
|
+
You prefer simple solutions. You ask clarifying questions when requirements are ambiguous.
|
|
94
|
+
|
|
95
|
+
## Memory Scope
|
|
96
|
+
- Read `data/projects/<current-project>.md` for context
|
|
97
|
+
- Read `data/decisions/` for architectural decisions
|
|
98
|
+
- Append execution logs to `data/logs/<date>-@dev.md`
|
|
99
|
+
|
|
100
|
+
## Tool Access
|
|
101
|
+
- Full filesystem access within project root
|
|
102
|
+
- Git operations (status, diff, commit, branch)
|
|
103
|
+
- Test runner access
|
|
104
|
+
- MCP servers as configured in `.claude/mcp.json`
|
|
105
|
+
|
|
106
|
+
## Constraints
|
|
107
|
+
- Always write tests for new features
|
|
108
|
+
- Never commit directly to `main`; use feature branches
|
|
109
|
+
- Prefer editing existing files over creating new ones
|
|
110
|
+
- Keep functions under 50 lines when possible
|
|
111
|
+
```
|
|
112
|
+
|
|
113
|
+
### Multi-Agent Collaboration Pattern
|
|
114
|
+
|
|
115
|
+
When a task spans multiple agents, the kernel runs them sequentially or in parallel:
|
|
116
|
+
|
|
117
|
+
```
|
|
118
|
+
User: "Build a landing page and write the launch blog post"
|
|
119
|
+
|
|
120
|
+
Kernel routing:
|
|
121
|
+
1. @dev - "Build a landing page with [requirements]"
|
|
122
|
+
2. @writer - "Write a launch blog post for [product] using the landing page copy"
|
|
123
|
+
3. Kernel synthesizes both outputs into a unified response
|
|
124
|
+
```
|
|
125
|
+
|
|
126
|
+
For parallel execution, use Claude Code's background task capability or shell scripts that invoke Claude Code with specific agent contexts.
|
|
127
|
+
|
|
128
|
+
## Commands and Daily Workflows
|
|
129
|
+
|
|
130
|
+
Slash commands are markdown files in `.claude/commands/`. They define reusable workflows.
|
|
131
|
+
|
|
132
|
+
### Command Structure
|
|
133
|
+
|
|
134
|
+
```markdown
|
|
135
|
+
# /daily-sync
|
|
136
|
+
|
|
137
|
+
Run the morning briefing:
|
|
138
|
+
|
|
139
|
+
1. Read `data/logs/last-sync.md` for context
|
|
140
|
+
2. Check project status: `git status`, pending PRs, CI health
|
|
141
|
+
3. Review `data/inbox/` for new tasks or decisions needed
|
|
142
|
+
4. Generate a summary of blockers, priorities, and next actions
|
|
143
|
+
5. Append the briefing to `data/logs/daily/<date>.md`
|
|
144
|
+
```
|
|
145
|
+
|
|
146
|
+
### Standard Command Set
|
|
147
|
+
|
|
148
|
+
| Command | Purpose |
|
|
149
|
+
|---|---|
|
|
150
|
+
| `/daily-sync` | Morning briefing: status, blockers, priorities |
|
|
151
|
+
| `/outreach` | Run outreach workflow (email, LinkedIn, etc.) |
|
|
152
|
+
| `/research <topic>` | Deep research with citation tracking |
|
|
153
|
+
| `/apply-jobs` | Tailor resume + cover letter for a target role |
|
|
154
|
+
| `/analytics` | Pull metrics from Stripe, GitHub, or custom sources |
|
|
155
|
+
| `/interview-prep` | Generate flashcards or mock interview questions |
|
|
156
|
+
| `/decision <topic>` | Log a decision with pros/cons and chosen path |
|
|
157
|
+
|
|
158
|
+
### Activating Commands
|
|
159
|
+
|
|
160
|
+
Place command files in `.claude/commands/<command-name>.md`. Claude Code auto-discovers them. Users invoke them with `/<command-name>`.
|
|
161
|
+
|
|
162
|
+
## Persistent Memory
|
|
163
|
+
|
|
164
|
+
Memory is file-based. No vector DB, no Redis, no PostgreSQL. JSON and markdown files in `data/` are the database.
|
|
165
|
+
|
|
166
|
+
### Memory Directory Structure
|
|
167
|
+
|
|
168
|
+
```
|
|
169
|
+
data/
|
|
170
|
+
├── daily-logs/ # Append-only daily activity logs
|
|
171
|
+
├── projects/ # Per-project context files
|
|
172
|
+
├── decisions/ # Architectural and business decisions (ADR format)
|
|
173
|
+
├── inbox/ # New tasks or ideas awaiting triage
|
|
174
|
+
├── contacts/ # People, companies, relationship notes
|
|
175
|
+
└── templates/ # Reusable prompts and formats
|
|
176
|
+
```
|
|
177
|
+
|
|
178
|
+
### Daily Log Format
|
|
179
|
+
|
|
180
|
+
```markdown
|
|
181
|
+
# 2026-04-22 - Daily Log
|
|
182
|
+
|
|
183
|
+
## Sessions
|
|
184
|
+
- 09:00 - Session 1: Refactored auth module (@dev)
|
|
185
|
+
- 11:30 - Session 2: Drafted investor update (@writer)
|
|
186
|
+
|
|
187
|
+
## Decisions
|
|
188
|
+
- Switched from JWT to session cookies (see `data/decisions/2026-04-22-auth.md`)
|
|
189
|
+
|
|
190
|
+
## Blockers
|
|
191
|
+
- Waiting on API key from vendor (follow up 2026-04-24)
|
|
192
|
+
|
|
193
|
+
## Next Actions
|
|
194
|
+
- [ ] Merge auth refactor PR
|
|
195
|
+
- [ ] Send investor update for review
|
|
196
|
+
```
|
|
197
|
+
|
|
198
|
+
### Auto-Reflection Pattern
|
|
199
|
+
|
|
200
|
+
At the end of each session, the kernel appends a reflection:
|
|
201
|
+
|
|
202
|
+
```markdown
|
|
203
|
+
## Reflection - Session 3
|
|
204
|
+
- What worked: Parallel agent execution saved 20 minutes
|
|
205
|
+
- What didn't: @researcher hit a paywalled source, need better source ranking
|
|
206
|
+
- What to change: Add `source-tier` field to research notes (A/B/C credibility)
|
|
207
|
+
```
|
|
208
|
+
|
|
209
|
+
This creates a feedback loop that improves the system over time without code changes.
|
|
210
|
+
|
|
211
|
+
## Scheduled Automation
|
|
212
|
+
|
|
213
|
+
Agentic OS tasks run on a schedule using external cron, not Claude Code's built-in cron (which dies when the session ends).
|
|
214
|
+
|
|
215
|
+
### macOS: LaunchAgent
|
|
216
|
+
|
|
217
|
+
```xml
|
|
218
|
+
<!-- ~/Library/LaunchAgents/com.agentic.daily-sync.plist -->
|
|
219
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
|
220
|
+
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" ...>
|
|
221
|
+
<plist version="1.0">
|
|
222
|
+
<dict>
|
|
223
|
+
<key>Label</key>
|
|
224
|
+
<string>com.agentic.daily-sync</string>
|
|
225
|
+
<key>ProgramArguments</key>
|
|
226
|
+
<array>
|
|
227
|
+
<string>/claude</string>
|
|
228
|
+
<string>--cwd</string>
|
|
229
|
+
<string>/path/to/project</string>
|
|
230
|
+
<string>--command</string>
|
|
231
|
+
<string>/daily-sync</string>
|
|
232
|
+
</array>
|
|
233
|
+
<key>StartCalendarInterval</key>
|
|
234
|
+
<dict>
|
|
235
|
+
<key>Hour</key>
|
|
236
|
+
<integer>8</integer>
|
|
237
|
+
<key>Minute</key>
|
|
238
|
+
<integer>0</integer>
|
|
239
|
+
</dict>
|
|
240
|
+
<key>StandardOutPath</key>
|
|
241
|
+
<string>/tmp/agentic-daily-sync.log</string>
|
|
242
|
+
</dict>
|
|
243
|
+
</plist>
|
|
244
|
+
```
|
|
245
|
+
|
|
246
|
+
### Linux: systemd Timer
|
|
247
|
+
|
|
248
|
+
```ini
|
|
249
|
+
# ~/.config/systemd/user/agentic-daily-sync.service
|
|
250
|
+
[Unit]
|
|
251
|
+
Description=Agentic OS Daily Sync
|
|
252
|
+
|
|
253
|
+
[Service]
|
|
254
|
+
Type=oneshot
|
|
255
|
+
ExecStart=/usr/local/bin/claude --cwd /path/to/project --command /daily-sync
|
|
256
|
+
```
|
|
257
|
+
|
|
258
|
+
```ini
|
|
259
|
+
# ~/.config/systemd/user/agentic-daily-sync.timer
|
|
260
|
+
[Unit]
|
|
261
|
+
Description=Run daily sync every morning
|
|
262
|
+
|
|
263
|
+
[Timer]
|
|
264
|
+
OnCalendar=*-*-* 8:00:00
|
|
265
|
+
Persistent=true
|
|
266
|
+
|
|
267
|
+
[Install]
|
|
268
|
+
WantedBy=timers.target
|
|
269
|
+
```
|
|
270
|
+
|
|
271
|
+
### Cross-Platform: pm2
|
|
272
|
+
|
|
273
|
+
```bash
|
|
274
|
+
# ecosystem.config.js
|
|
275
|
+
module.exports = {
|
|
276
|
+
apps: [{
|
|
277
|
+
name: 'agentic-daily-sync',
|
|
278
|
+
script: 'claude',
|
|
279
|
+
args: '--cwd /path/to/project --command /daily-sync',
|
|
280
|
+
cron_restart: '0 8 * * *',
|
|
281
|
+
autorestart: false
|
|
282
|
+
}]
|
|
283
|
+
};
|
|
284
|
+
```
|
|
285
|
+
|
|
286
|
+
## Data Layer
|
|
287
|
+
|
|
288
|
+
The data layer is your filesystem. Use JSON for structured data and markdown for narrative content.
|
|
289
|
+
|
|
290
|
+
### JSON for Structured State
|
|
291
|
+
|
|
292
|
+
```json
|
|
293
|
+
// data/projects/website-v2.json
|
|
294
|
+
{
|
|
295
|
+
"name": "Website v2",
|
|
296
|
+
"status": "in-progress",
|
|
297
|
+
"milestone": "beta-launch",
|
|
298
|
+
"agents_involved": ["@dev", "@writer"],
|
|
299
|
+
"files": {
|
|
300
|
+
"spec": "docs/website-v2-spec.md",
|
|
301
|
+
"design": "designs/website-v2.fig"
|
|
302
|
+
},
|
|
303
|
+
"metrics": {
|
|
304
|
+
"commits": 47,
|
|
305
|
+
"last_session": "2026-04-22T11:30:00Z"
|
|
306
|
+
}
|
|
307
|
+
}
|
|
308
|
+
```
|
|
309
|
+
|
|
310
|
+
### Markdown for Narrative
|
|
311
|
+
|
|
312
|
+
Use markdown for anything a human reads: decisions, logs, research notes, contact records.
|
|
313
|
+
|
|
314
|
+
### Schema Evolution
|
|
315
|
+
|
|
316
|
+
Never rename existing fields. Add new fields and mark old ones deprecated:
|
|
317
|
+
|
|
318
|
+
```json
|
|
319
|
+
{
|
|
320
|
+
"name": "Website v2",
|
|
321
|
+
"status": "in-progress",
|
|
322
|
+
"milestone": "beta-launch",
|
|
323
|
+
"_deprecated_priority": "high",
|
|
324
|
+
"priority_v2": { "level": "high", "rationale": "Blocks investor demo" }
|
|
325
|
+
}
|
|
326
|
+
```
|
|
327
|
+
|
|
328
|
+
This keeps historical data readable without migration scripts.
|
|
329
|
+
|
|
330
|
+
## Anti-Patterns
|
|
331
|
+
|
|
332
|
+
### Monolithic Single Agent
|
|
333
|
+
|
|
334
|
+
```markdown
|
|
335
|
+
# BAD - One agent does everything
|
|
336
|
+
You are a full-stack developer, writer, researcher, and DevOps engineer.
|
|
337
|
+
```
|
|
338
|
+
|
|
339
|
+
Split into specialist agents. The kernel handles routing.
|
|
340
|
+
|
|
341
|
+
### Stateless Sessions
|
|
342
|
+
|
|
343
|
+
```markdown
|
|
344
|
+
# BAD - No memory between sessions
|
|
345
|
+
Starting fresh every time Claude Code opens.
|
|
346
|
+
```
|
|
347
|
+
|
|
348
|
+
Always read `data/` at session start and write back at session end.
|
|
349
|
+
|
|
350
|
+
### Hardcoded Credentials
|
|
351
|
+
|
|
352
|
+
```markdown
|
|
353
|
+
# BAD - API keys in agent files or CLAUDE.md
|
|
354
|
+
Your OpenAI API key is sk-xxxxxxxx
|
|
355
|
+
```
|
|
356
|
+
|
|
357
|
+
Use environment variables or a `.env` file loaded by scripts. Agents reference `process.env.API_KEY`.
|
|
358
|
+
|
|
359
|
+
### External Database for Simple State
|
|
360
|
+
|
|
361
|
+
```markdown
|
|
362
|
+
# BAD - PostgreSQL for a solo user's agentic OS
|
|
363
|
+
```
|
|
364
|
+
|
|
365
|
+
Use JSON/markdown files until you have multiple concurrent users or GBs of data.
|
|
366
|
+
|
|
367
|
+
### Over-Engineered Routing
|
|
368
|
+
|
|
369
|
+
```markdown
|
|
370
|
+
# BAD - Routing logic in code instead of markdown tables
|
|
371
|
+
if (intent.includes('deploy')) { agent = opsAgent; }
|
|
372
|
+
```
|
|
373
|
+
|
|
374
|
+
Keep routing declarative in `CLAUDE.md` markdown tables. It is inspectable, editable, and debuggable.
|
|
375
|
+
|
|
376
|
+
## Best Practices
|
|
377
|
+
|
|
378
|
+
- [ ] `CLAUDE.md` is under 200 lines and fits in context window
|
|
379
|
+
- [ ] Each agent file is under 100 lines and focused on one domain
|
|
380
|
+
- [ ] `data/` is git-ignored for sensitive logs, git-tracked for decisions and specs
|
|
381
|
+
- [ ] Commands use imperative names: `/daily-sync`, not `/run-daily-sync`
|
|
382
|
+
- [ ] Logs are append-only; never edit past daily logs
|
|
383
|
+
- [ ] Every agent has a `Memory Scope` section defining what files it reads
|
|
384
|
+
- [ ] Reflections are written at the end of every session
|
|
385
|
+
- [ ] Scheduled tasks use external cron (LaunchAgent, systemd, pm2), not Claude Code's session cron
|
|
386
|
+
- [ ] Cost tracking: log API spend per session in `data/logs/<date>-costs.json`
|
|
387
|
+
- [ ] One project = one Agentic OS. Do not share a single `CLAUDE.md` across unrelated projects.
|