claudecode-omc 5.6.5 → 5.6.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.local/commands/code-review.md +416 -0
- package/.local/commands/pr.md +250 -0
- package/.local/commands/prp-pr.md +244 -0
- package/.local/guidelines/CLAUDE.md +47 -0
- package/.local/skills/h5-to-swiftui/SKILL.md +201 -0
- package/.local/skills/h5-to-swiftui/assets/calibration/README.md +176 -0
- package/.local/skills/h5-to-swiftui/assets/calibration/h5-twin/index.html +52 -0
- package/.local/skills/h5-to-swiftui/assets/calibration/h5-twin/style.css +133 -0
- package/.local/skills/h5-to-swiftui/assets/calibration/swiftui-twin/Package.swift +26 -0
- package/.local/skills/h5-to-swiftui/assets/calibration/swiftui-twin/Sources/CalibrationScreen/CalibrationScreen.swift +142 -0
- package/.local/skills/h5-to-swiftui/assets/calibration/swiftui-twin-divergent/Package.swift +32 -0
- package/.local/skills/h5-to-swiftui/assets/calibration/swiftui-twin-divergent/Sources/CalibrationScreenDivergent/CalibrationScreenDivergent.swift +122 -0
- package/.local/skills/h5-to-swiftui/assets/calibration/tokens.json +42 -0
- package/.local/skills/h5-to-swiftui/assets/sample-h5-react/index.html +14 -0
- package/.local/skills/h5-to-swiftui/assets/sample-h5-react/package.json +20 -0
- package/.local/skills/h5-to-swiftui/assets/sample-h5-react/public/api/articles/001.json +96 -0
- package/.local/skills/h5-to-swiftui/assets/sample-h5-react/public/api/articles/index.json +89 -0
- package/.local/skills/h5-to-swiftui/assets/sample-h5-react/src/App.jsx +22 -0
- package/.local/skills/h5-to-swiftui/assets/sample-h5-react/src/App.module.css +11 -0
- package/.local/skills/h5-to-swiftui/assets/sample-h5-react/src/components/ArticleCard.jsx +53 -0
- package/.local/skills/h5-to-swiftui/assets/sample-h5-react/src/components/ArticleCard.module.css +139 -0
- package/.local/skills/h5-to-swiftui/assets/sample-h5-react/src/components/NavBar.jsx +37 -0
- package/.local/skills/h5-to-swiftui/assets/sample-h5-react/src/components/NavBar.module.css +72 -0
- package/.local/skills/h5-to-swiftui/assets/sample-h5-react/src/components/TagCloud.jsx +30 -0
- package/.local/skills/h5-to-swiftui/assets/sample-h5-react/src/components/TagCloud.module.css +50 -0
- package/.local/skills/h5-to-swiftui/assets/sample-h5-react/src/components/TrendChart.jsx +159 -0
- package/.local/skills/h5-to-swiftui/assets/sample-h5-react/src/components/TrendChart.module.css +21 -0
- package/.local/skills/h5-to-swiftui/assets/sample-h5-react/src/main.jsx +12 -0
- package/.local/skills/h5-to-swiftui/assets/sample-h5-react/src/screens/ArticleScreen.jsx +182 -0
- package/.local/skills/h5-to-swiftui/assets/sample-h5-react/src/screens/ArticleScreen.module.css +294 -0
- package/.local/skills/h5-to-swiftui/assets/sample-h5-react/src/screens/FeedScreen.jsx +147 -0
- package/.local/skills/h5-to-swiftui/assets/sample-h5-react/src/screens/FeedScreen.module.css +161 -0
- package/.local/skills/h5-to-swiftui/assets/sample-h5-react/src/styles/global.css +50 -0
- package/.local/skills/h5-to-swiftui/assets/sample-h5-react/src/styles/tokens.css +103 -0
- package/.local/skills/h5-to-swiftui/assets/sample-h5-react/vite.config.js +6 -0
- package/.local/skills/h5-to-swiftui/assets/sample-h5-vanilla/data/tasks.js +67 -0
- package/.local/skills/h5-to-swiftui/assets/sample-h5-vanilla/index.html +26 -0
- package/.local/skills/h5-to-swiftui/assets/sample-h5-vanilla/router.js +73 -0
- package/.local/skills/h5-to-swiftui/assets/sample-h5-vanilla/screens/detail.js +164 -0
- package/.local/skills/h5-to-swiftui/assets/sample-h5-vanilla/screens/home.js +53 -0
- package/.local/skills/h5-to-swiftui/assets/sample-h5-vanilla/screens/list.js +87 -0
- package/.local/skills/h5-to-swiftui/assets/sample-h5-vanilla/styles/app.css +342 -0
- package/.local/skills/h5-to-swiftui/assets/sample-h5-vanilla/styles/tokens.css +68 -0
- package/.local/skills/h5-to-swiftui/references/css-to-swiftui-map.md +205 -0
- package/.local/skills/h5-to-swiftui/references/design-token-extraction.md +209 -0
- package/.local/skills/h5-to-swiftui/references/high-risk-triage.md +209 -0
- package/.local/skills/h5-to-swiftui/references/render-equivalence-calibration.md +193 -0
- package/.local/skills/h5-to-swiftui/references/stack-detection.md +160 -0
- package/.local/skills/h5-to-swiftui/references/visual-diff-loop-protocol.md +365 -0
- package/.local/skills/h5-to-swiftui/scripts/_calib-consts.mjs +150 -0
- package/.local/skills/h5-to-swiftui/scripts/_imglib.mjs +547 -0
- package/.local/skills/h5-to-swiftui/scripts/_provenance.mjs +123 -0
- package/.local/skills/h5-to-swiftui/scripts/calibrate-render.mjs +625 -0
- package/.local/skills/h5-to-swiftui/scripts/capture-reference.mjs +386 -0
- package/.local/skills/h5-to-swiftui/scripts/detect-stack.mjs +305 -0
- package/.local/skills/h5-to-swiftui/scripts/evaluate-convergence.mjs +1093 -0
- package/.local/skills/h5-to-swiftui/scripts/extract-tokens.mjs +600 -0
- package/.local/skills/h5-to-swiftui/scripts/mark-overlay.mjs +379 -0
- package/.local/skills/h5-to-swiftui/scripts/pixel-diff.mjs +530 -0
- package/.local/skills/h5-to-swiftui/scripts/sim-screenshot.sh +544 -0
- package/bundled/manifest.json +4 -4
- package/bundled/upstream/anthropic-skills/skills/algorithmic-art/LICENSE.txt +1 -1
- package/bundled/upstream/anthropic-skills/skills/brand-guidelines/LICENSE.txt +1 -1
- package/bundled/upstream/anthropic-skills/skills/canvas-design/LICENSE.txt +1 -1
- package/bundled/upstream/anthropic-skills/skills/claude-api/LICENSE.txt +1 -1
- package/bundled/upstream/anthropic-skills/skills/claude-api/SKILL.md +120 -58
- package/bundled/upstream/anthropic-skills/skills/claude-api/curl/examples.md +9 -9
- package/bundled/upstream/anthropic-skills/skills/claude-api/curl/managed-agents.md +336 -0
- package/bundled/upstream/anthropic-skills/skills/claude-api/go/managed-agents/README.md +561 -0
- package/bundled/upstream/anthropic-skills/skills/claude-api/java/claude-api.md +2 -2
- package/bundled/upstream/anthropic-skills/skills/claude-api/java/managed-agents/README.md +442 -0
- package/bundled/upstream/anthropic-skills/skills/claude-api/php/claude-api.md +10 -10
- package/bundled/upstream/anthropic-skills/skills/claude-api/php/managed-agents/README.md +435 -0
- package/bundled/upstream/anthropic-skills/skills/claude-api/python/claude-api/README.md +16 -16
- package/bundled/upstream/anthropic-skills/skills/claude-api/python/claude-api/batches.md +3 -3
- package/bundled/upstream/anthropic-skills/skills/claude-api/python/claude-api/files-api.md +3 -3
- package/bundled/upstream/anthropic-skills/skills/claude-api/python/claude-api/streaming.md +7 -7
- package/bundled/upstream/anthropic-skills/skills/claude-api/python/claude-api/tool-use.md +19 -19
- package/bundled/upstream/anthropic-skills/skills/claude-api/python/managed-agents/README.md +332 -0
- package/bundled/upstream/anthropic-skills/skills/claude-api/ruby/claude-api.md +4 -4
- package/bundled/upstream/anthropic-skills/skills/claude-api/ruby/managed-agents/README.md +389 -0
- package/bundled/upstream/anthropic-skills/skills/claude-api/shared/agent-design.md +101 -0
- package/bundled/upstream/anthropic-skills/skills/claude-api/shared/error-codes.md +11 -4
- package/bundled/upstream/anthropic-skills/skills/claude-api/shared/live-sources.md +60 -48
- package/bundled/upstream/anthropic-skills/skills/claude-api/shared/managed-agents-api-reference.md +372 -0
- package/bundled/upstream/anthropic-skills/skills/claude-api/shared/managed-agents-client-patterns.md +209 -0
- package/bundled/upstream/anthropic-skills/skills/claude-api/shared/managed-agents-core.md +220 -0
- package/bundled/upstream/anthropic-skills/skills/claude-api/shared/managed-agents-environments.md +211 -0
- package/bundled/upstream/anthropic-skills/skills/claude-api/shared/managed-agents-events.md +195 -0
- package/bundled/upstream/anthropic-skills/skills/claude-api/shared/managed-agents-memory.md +197 -0
- package/bundled/upstream/anthropic-skills/skills/claude-api/shared/managed-agents-multiagent.md +99 -0
- package/bundled/upstream/anthropic-skills/skills/claude-api/shared/managed-agents-onboarding.md +114 -0
- package/bundled/upstream/anthropic-skills/skills/claude-api/shared/managed-agents-outcomes.md +106 -0
- package/bundled/upstream/anthropic-skills/skills/claude-api/shared/managed-agents-overview.md +67 -0
- package/bundled/upstream/anthropic-skills/skills/claude-api/shared/managed-agents-tools.md +315 -0
- package/bundled/upstream/anthropic-skills/skills/claude-api/shared/managed-agents-webhooks.md +110 -0
- package/bundled/upstream/anthropic-skills/skills/claude-api/shared/model-migration.md +779 -0
- package/bundled/upstream/anthropic-skills/skills/claude-api/shared/models.md +16 -14
- package/bundled/upstream/anthropic-skills/skills/claude-api/shared/prompt-caching.md +45 -2
- package/bundled/upstream/anthropic-skills/skills/claude-api/shared/tool-use-concepts.md +28 -6
- package/bundled/upstream/anthropic-skills/skills/claude-api/typescript/claude-api/README.md +15 -15
- package/bundled/upstream/anthropic-skills/skills/claude-api/typescript/claude-api/batches.md +2 -2
- package/bundled/upstream/anthropic-skills/skills/claude-api/typescript/claude-api/files-api.md +1 -1
- package/bundled/upstream/anthropic-skills/skills/claude-api/typescript/claude-api/streaming.md +5 -5
- package/bundled/upstream/anthropic-skills/skills/claude-api/typescript/claude-api/tool-use.md +15 -15
- package/bundled/upstream/anthropic-skills/skills/claude-api/typescript/managed-agents/README.md +359 -0
- package/bundled/upstream/anthropic-skills/skills/internal-comms/LICENSE.txt +1 -1
- package/bundled/upstream/anthropic-skills/skills/mcp-builder/LICENSE.txt +1 -1
- package/bundled/upstream/anthropic-skills/skills/skill-creator/LICENSE.txt +1 -1
- package/bundled/upstream/anthropic-skills/skills/slack-gif-creator/LICENSE.txt +1 -1
- package/bundled/upstream/anthropic-skills/skills/theme-factory/LICENSE.txt +1 -1
- package/bundled/upstream/anthropic-skills/skills/web-artifacts-builder/LICENSE.txt +1 -1
- package/bundled/upstream/anthropic-skills/skills/webapp-testing/LICENSE.txt +1 -1
- package/bundled/upstream/ecc/.omc-source/bundle.json +2 -3
- package/bundled/upstream/ecc/.omc-source/manifests/.claude-plugin/marketplace.json +4 -4
- package/bundled/upstream/ecc/agents/a11y-architect.md +10 -2
- package/bundled/upstream/ecc/agents/architect.md +9 -0
- package/bundled/upstream/ecc/agents/build-error-resolver.md +9 -0
- package/bundled/upstream/ecc/agents/chief-of-staff.md +9 -0
- package/bundled/upstream/ecc/agents/code-architect.md +9 -0
- package/bundled/upstream/ecc/agents/code-explorer.md +10 -1
- package/bundled/upstream/ecc/agents/code-reviewer.md +87 -1
- package/bundled/upstream/ecc/agents/code-simplifier.md +9 -0
- package/bundled/upstream/ecc/agents/comment-analyzer.md +10 -1
- package/bundled/upstream/ecc/agents/conversation-analyzer.md +9 -0
- package/bundled/upstream/ecc/agents/cpp-build-resolver.md +9 -0
- package/bundled/upstream/ecc/agents/cpp-reviewer.md +9 -0
- package/bundled/upstream/ecc/agents/csharp-reviewer.md +9 -0
- package/bundled/upstream/ecc/agents/dart-build-resolver.md +9 -0
- package/bundled/upstream/ecc/agents/database-reviewer.md +9 -0
- package/bundled/upstream/ecc/agents/django-build-resolver.md +252 -0
- package/bundled/upstream/ecc/agents/django-reviewer.md +169 -0
- package/bundled/upstream/ecc/agents/doc-updater.md +9 -0
- package/bundled/upstream/ecc/agents/docs-lookup.md +9 -0
- package/bundled/upstream/ecc/agents/e2e-runner.md +9 -0
- package/bundled/upstream/ecc/agents/fastapi-reviewer.md +79 -0
- package/bundled/upstream/ecc/agents/flutter-reviewer.md +9 -0
- package/bundled/upstream/ecc/agents/fsharp-reviewer.md +109 -0
- package/bundled/upstream/ecc/agents/gan-evaluator.md +9 -0
- package/bundled/upstream/ecc/agents/gan-generator.md +9 -0
- package/bundled/upstream/ecc/agents/gan-planner.md +9 -0
- package/bundled/upstream/ecc/agents/go-build-resolver.md +9 -0
- package/bundled/upstream/ecc/agents/go-reviewer.md +9 -0
- package/bundled/upstream/ecc/agents/harmonyos-app-resolver.md +182 -0
- package/bundled/upstream/ecc/agents/harness-optimizer.md +9 -0
- package/bundled/upstream/ecc/agents/healthcare-reviewer.md +9 -0
- package/bundled/upstream/ecc/agents/homelab-architect.md +107 -0
- package/bundled/upstream/ecc/agents/java-build-resolver.md +133 -11
- package/bundled/upstream/ecc/agents/java-reviewer.md +130 -32
- package/bundled/upstream/ecc/agents/kotlin-build-resolver.md +9 -0
- package/bundled/upstream/ecc/agents/kotlin-reviewer.md +9 -0
- package/bundled/upstream/ecc/agents/loop-operator.md +9 -0
- package/bundled/upstream/ecc/agents/mle-reviewer.md +162 -0
- package/bundled/upstream/ecc/agents/network-architect.md +106 -0
- package/bundled/upstream/ecc/agents/network-config-reviewer.md +106 -0
- package/bundled/upstream/ecc/agents/network-troubleshooter.md +128 -0
- package/bundled/upstream/ecc/agents/opensource-forker.md +9 -0
- package/bundled/upstream/ecc/agents/opensource-packager.md +9 -0
- package/bundled/upstream/ecc/agents/opensource-sanitizer.md +9 -0
- package/bundled/upstream/ecc/agents/performance-optimizer.md +9 -0
- package/bundled/upstream/ecc/agents/planner.md +9 -0
- package/bundled/upstream/ecc/agents/pr-test-analyzer.md +9 -0
- package/bundled/upstream/ecc/agents/python-reviewer.md +9 -0
- package/bundled/upstream/ecc/agents/pytorch-build-resolver.md +12 -3
- package/bundled/upstream/ecc/agents/refactor-cleaner.md +9 -0
- package/bundled/upstream/ecc/agents/rust-build-resolver.md +9 -0
- package/bundled/upstream/ecc/agents/rust-reviewer.md +9 -0
- package/bundled/upstream/ecc/agents/security-reviewer.md +9 -0
- package/bundled/upstream/ecc/agents/seo-specialist.md +10 -1
- package/bundled/upstream/ecc/agents/silent-failure-hunter.md +9 -0
- package/bundled/upstream/ecc/agents/swift-build-resolver.md +170 -0
- package/bundled/upstream/ecc/agents/swift-reviewer.md +116 -0
- package/bundled/upstream/ecc/agents/tdd-guide.md +9 -0
- package/bundled/upstream/ecc/agents/type-design-analyzer.md +10 -1
- package/bundled/upstream/ecc/agents/typescript-reviewer.md +9 -0
- package/bundled/upstream/ecc/commands/auto-update.md +28 -0
- package/bundled/upstream/ecc/commands/build-fix.md +4 -0
- package/bundled/upstream/ecc/commands/checkpoint.md +4 -0
- package/bundled/upstream/ecc/commands/code-review.md +3 -3
- package/bundled/upstream/ecc/commands/cost-report.md +107 -0
- package/bundled/upstream/ecc/commands/cpp-build.md +1 -1
- package/bundled/upstream/ecc/commands/cpp-test.md +1 -1
- package/bundled/upstream/ecc/commands/ecc-guide.md +93 -0
- package/bundled/upstream/ecc/commands/fastapi-review.md +39 -0
- package/bundled/upstream/ecc/commands/flutter-build.md +1 -1
- package/bundled/upstream/ecc/commands/flutter-test.md +1 -1
- package/bundled/upstream/ecc/commands/gan-build.md +4 -0
- package/bundled/upstream/ecc/commands/gan-design.md +4 -0
- package/bundled/upstream/ecc/commands/go-build.md +1 -1
- package/bundled/upstream/ecc/commands/go-test.md +1 -1
- package/bundled/upstream/ecc/commands/harness-audit.md +4 -0
- package/bundled/upstream/ecc/commands/jira.md +2 -2
- package/bundled/upstream/ecc/commands/kotlin-build.md +1 -1
- package/bundled/upstream/ecc/commands/kotlin-test.md +1 -1
- package/bundled/upstream/ecc/commands/learn.md +4 -0
- package/bundled/upstream/ecc/commands/loop-start.md +4 -0
- package/bundled/upstream/ecc/commands/loop-status.md +54 -1
- package/bundled/upstream/ecc/commands/model-route.md +4 -0
- package/bundled/upstream/ecc/commands/multi-backend.md +4 -0
- package/bundled/upstream/ecc/commands/multi-execute.md +4 -0
- package/bundled/upstream/ecc/commands/multi-frontend.md +4 -0
- package/bundled/upstream/ecc/commands/multi-plan.md +4 -0
- package/bundled/upstream/ecc/commands/multi-workflow.md +4 -0
- package/bundled/upstream/ecc/commands/plan-prd.md +160 -0
- package/bundled/upstream/ecc/commands/plan.md +96 -13
- package/bundled/upstream/ecc/commands/pm2.md +4 -0
- package/bundled/upstream/ecc/commands/pr.md +184 -0
- package/bundled/upstream/ecc/commands/project-init.md +86 -0
- package/bundled/upstream/ecc/commands/python-review.md +1 -1
- package/bundled/upstream/ecc/commands/quality-gate.md +4 -0
- package/bundled/upstream/ecc/commands/refactor-clean.md +4 -0
- package/bundled/upstream/ecc/commands/rust-build.md +1 -1
- package/bundled/upstream/ecc/commands/rust-test.md +1 -1
- package/bundled/upstream/ecc/commands/security-scan.md +92 -0
- package/bundled/upstream/ecc/commands/sessions.md +6 -6
- package/bundled/upstream/ecc/commands/skill-health.md +3 -3
- package/bundled/upstream/ecc/commands/test-coverage.md +4 -0
- package/bundled/upstream/ecc/commands/update-codemaps.md +4 -0
- package/bundled/upstream/ecc/commands/update-docs.md +4 -0
- package/bundled/upstream/ecc/skills/accessibility/SKILL.md +1 -1
- package/bundled/upstream/ecc/skills/agent-architecture-audit/SKILL.md +256 -0
- package/bundled/upstream/ecc/skills/agent-payment-x402/SKILL.md +49 -3
- package/bundled/upstream/ecc/skills/agentic-os/SKILL.md +387 -0
- package/bundled/upstream/ecc/skills/angular-developer/SKILL.md +154 -0
- package/bundled/upstream/ecc/skills/angular-developer/references/angular-animations.md +160 -0
- package/bundled/upstream/ecc/skills/angular-developer/references/angular-aria.md +410 -0
- package/bundled/upstream/ecc/skills/angular-developer/references/cli.md +86 -0
- package/bundled/upstream/ecc/skills/angular-developer/references/component-harnesses.md +59 -0
- package/bundled/upstream/ecc/skills/angular-developer/references/component-styling.md +91 -0
- package/bundled/upstream/ecc/skills/angular-developer/references/components.md +117 -0
- package/bundled/upstream/ecc/skills/angular-developer/references/creating-services.md +97 -0
- package/bundled/upstream/ecc/skills/angular-developer/references/data-resolvers.md +69 -0
- package/bundled/upstream/ecc/skills/angular-developer/references/define-routes.md +67 -0
- package/bundled/upstream/ecc/skills/angular-developer/references/defining-providers.md +72 -0
- package/bundled/upstream/ecc/skills/angular-developer/references/di-fundamentals.md +120 -0
- package/bundled/upstream/ecc/skills/angular-developer/references/e2e-testing.md +56 -0
- package/bundled/upstream/ecc/skills/angular-developer/references/effects.md +83 -0
- package/bundled/upstream/ecc/skills/angular-developer/references/hierarchical-injectors.md +43 -0
- package/bundled/upstream/ecc/skills/angular-developer/references/host-elements.md +80 -0
- package/bundled/upstream/ecc/skills/angular-developer/references/injection-context.md +63 -0
- package/bundled/upstream/ecc/skills/angular-developer/references/inputs.md +101 -0
- package/bundled/upstream/ecc/skills/angular-developer/references/linked-signal.md +59 -0
- package/bundled/upstream/ecc/skills/angular-developer/references/loading-strategies.md +61 -0
- package/bundled/upstream/ecc/skills/angular-developer/references/mcp.md +108 -0
- package/bundled/upstream/ecc/skills/angular-developer/references/navigate-to-routes.md +69 -0
- package/bundled/upstream/ecc/skills/angular-developer/references/outputs.md +86 -0
- package/bundled/upstream/ecc/skills/angular-developer/references/reactive-forms.md +122 -0
- package/bundled/upstream/ecc/skills/angular-developer/references/rendering-strategies.md +44 -0
- package/bundled/upstream/ecc/skills/angular-developer/references/resource.md +77 -0
- package/bundled/upstream/ecc/skills/angular-developer/references/route-animations.md +56 -0
- package/bundled/upstream/ecc/skills/angular-developer/references/route-guards.md +52 -0
- package/bundled/upstream/ecc/skills/angular-developer/references/router-lifecycle.md +45 -0
- package/bundled/upstream/ecc/skills/angular-developer/references/router-testing.md +87 -0
- package/bundled/upstream/ecc/skills/angular-developer/references/show-routes-with-outlets.md +68 -0
- package/bundled/upstream/ecc/skills/angular-developer/references/signal-forms.md +795 -0
- package/bundled/upstream/ecc/skills/angular-developer/references/signals-overview.md +94 -0
- package/bundled/upstream/ecc/skills/angular-developer/references/tailwind-css.md +69 -0
- package/bundled/upstream/ecc/skills/angular-developer/references/template-driven-forms.md +114 -0
- package/bundled/upstream/ecc/skills/angular-developer/references/testing-fundamentals.md +65 -0
- package/bundled/upstream/ecc/skills/autonomous-agent-harness/SKILL.md +6 -0
- package/bundled/upstream/ecc/skills/backend-patterns/SKILL.md +8 -45
- package/bundled/upstream/ecc/skills/cisco-ios-patterns/SKILL.md +163 -0
- package/bundled/upstream/ecc/skills/configure-ecc/SKILL.md +31 -14
- package/bundled/upstream/ecc/skills/continuous-learning/SKILL.md +10 -2
- package/bundled/upstream/ecc/skills/continuous-learning-v2/SKILL.md +19 -5
- package/bundled/upstream/ecc/skills/continuous-learning-v2/agents/observer-loop.sh +44 -4
- package/bundled/upstream/ecc/skills/continuous-learning-v2/agents/observer.md +4 -4
- package/bundled/upstream/ecc/skills/continuous-learning-v2/agents/start-observer.sh +5 -1
- package/bundled/upstream/ecc/skills/continuous-learning-v2/hooks/observe.sh +21 -5
- package/bundled/upstream/ecc/skills/continuous-learning-v2/scripts/detect-project.sh +58 -13
- package/bundled/upstream/ecc/skills/continuous-learning-v2/scripts/instinct-cli.py +97 -4
- package/bundled/upstream/ecc/skills/continuous-learning-v2/scripts/lib/homunculus-dir.sh +31 -0
- package/bundled/upstream/ecc/skills/continuous-learning-v2/scripts/migrate-homunculus.sh +62 -0
- package/bundled/upstream/ecc/skills/continuous-learning-v2/scripts/test_parse_instinct.py +34 -0
- package/bundled/upstream/ecc/skills/cost-tracking/SKILL.md +147 -0
- package/bundled/upstream/ecc/skills/deep-research/SKILL.md +4 -0
- package/bundled/upstream/ecc/skills/defi-amm-security/SKILL.md +6 -0
- package/bundled/upstream/ecc/skills/django-celery/SKILL.md +457 -0
- package/bundled/upstream/ecc/skills/ecc-guide/SKILL.md +189 -0
- package/bundled/upstream/ecc/skills/error-handling/SKILL.md +376 -0
- package/bundled/upstream/ecc/skills/exa-search/SKILL.md +4 -0
- package/bundled/upstream/ecc/skills/fal-ai-media/SKILL.md +4 -0
- package/bundled/upstream/ecc/skills/fastapi-patterns/SKILL.md +327 -0
- package/bundled/upstream/ecc/skills/flox-environments/SKILL.md +496 -0
- package/bundled/upstream/ecc/skills/frontend-design-direction/SKILL.md +92 -0
- package/bundled/upstream/ecc/skills/frontend-slides/animation-patterns.md +122 -0
- package/bundled/upstream/ecc/skills/frontend-slides/html-template.md +419 -0
- package/bundled/upstream/ecc/skills/frontend-slides/scripts/export-pdf.sh +418 -0
- package/bundled/upstream/ecc/skills/frontend-slides/scripts/extract-pptx.py +96 -0
- package/bundled/upstream/ecc/skills/frontend-slides/viewport-base.css +153 -0
- package/bundled/upstream/ecc/skills/fsharp-testing/SKILL.md +280 -0
- package/bundled/upstream/ecc/skills/gateguard/SKILL.md +4 -0
- package/bundled/upstream/ecc/skills/hermes-imports/SKILL.md +88 -0
- package/bundled/upstream/ecc/skills/homelab-network-readiness/SKILL.md +169 -0
- package/bundled/upstream/ecc/skills/homelab-network-setup/SKILL.md +129 -0
- package/bundled/upstream/ecc/skills/homelab-pihole-dns/SKILL.md +274 -0
- package/bundled/upstream/ecc/skills/homelab-vlan-segmentation/SKILL.md +311 -0
- package/bundled/upstream/ecc/skills/homelab-wireguard-vpn/SKILL.md +305 -0
- package/bundled/upstream/ecc/skills/ios-icon-gen/SKILL.md +157 -0
- package/bundled/upstream/ecc/skills/ios-icon-gen/scripts/generate_icons.swift +258 -0
- package/bundled/upstream/ecc/skills/ios-icon-gen/scripts/iconify_gen.sh +235 -0
- package/bundled/upstream/ecc/skills/java-coding-standards/SKILL.md +241 -5
- package/bundled/upstream/ecc/skills/make-interfaces-feel-better/SKILL.md +151 -0
- package/bundled/upstream/ecc/skills/mle-workflow/SKILL.md +346 -0
- package/bundled/upstream/ecc/skills/motion-advanced/SKILL.md +596 -0
- package/bundled/upstream/ecc/skills/motion-foundations/SKILL.md +299 -0
- package/bundled/upstream/ecc/skills/motion-patterns/SKILL.md +435 -0
- package/bundled/upstream/ecc/skills/motion-ui/SKILL.md +575 -0
- package/bundled/upstream/ecc/skills/mysql-patterns/SKILL.md +412 -0
- package/bundled/upstream/ecc/skills/netmiko-ssh-automation/SKILL.md +173 -0
- package/bundled/upstream/ecc/skills/network-bgp-diagnostics/SKILL.md +167 -0
- package/bundled/upstream/ecc/skills/network-config-validation/SKILL.md +210 -0
- package/bundled/upstream/ecc/skills/network-interface-health/SKILL.md +152 -0
- package/bundled/upstream/ecc/skills/openclaw-persona-forge/SKILL.md +1 -9
- package/bundled/upstream/ecc/skills/plan-orchestrate/SKILL.md +262 -0
- package/bundled/upstream/ecc/skills/prisma-patterns/SKILL.md +371 -0
- package/bundled/upstream/ecc/skills/production-audit/SKILL.md +206 -0
- package/bundled/upstream/ecc/skills/prompt-optimizer/SKILL.md +24 -400
- package/bundled/upstream/ecc/skills/quarkus-patterns/SKILL.md +722 -0
- package/bundled/upstream/ecc/skills/quarkus-security/SKILL.md +467 -0
- package/bundled/upstream/ecc/skills/quarkus-tdd/SKILL.md +811 -0
- package/bundled/upstream/ecc/skills/quarkus-verification/SKILL.md +479 -0
- package/bundled/upstream/ecc/skills/redis-patterns/SKILL.md +403 -0
- package/bundled/upstream/ecc/skills/scientific-db-pubmed-database/SKILL.md +175 -0
- package/bundled/upstream/ecc/skills/scientific-db-uspto-database/SKILL.md +177 -0
- package/bundled/upstream/ecc/skills/scientific-pkg-gget/SKILL.md +166 -0
- package/bundled/upstream/ecc/skills/scientific-thinking-literature-review/SKILL.md +192 -0
- package/bundled/upstream/ecc/skills/scientific-thinking-scholar-evaluation/SKILL.md +160 -0
- package/bundled/upstream/ecc/skills/search-first/SKILL.md +23 -2
- package/bundled/upstream/ecc/skills/security-review/SKILL.md +10 -2
- package/bundled/upstream/ecc/skills/skill-comply/scripts/runner.py +28 -3
- package/bundled/upstream/ecc/skills/skill-comply/tests/test_runner.py +172 -0
- package/bundled/upstream/ecc/skills/skill-scout/SKILL.md +140 -0
- package/bundled/upstream/ecc/skills/skill-stocktake/SKILL.md +1 -0
- package/bundled/upstream/ecc/skills/strategic-compact/SKILL.md +2 -2
- package/bundled/upstream/ecc/skills/tinystruct-patterns/SKILL.md +203 -0
- package/bundled/upstream/ecc/skills/tinystruct-patterns/references/architecture.md +90 -0
- package/bundled/upstream/ecc/skills/tinystruct-patterns/references/data-handling.md +60 -0
- package/bundled/upstream/ecc/skills/tinystruct-patterns/references/database.md +99 -0
- package/bundled/upstream/ecc/skills/tinystruct-patterns/references/routing.md +64 -0
- package/bundled/upstream/ecc/skills/tinystruct-patterns/references/system-usage.md +97 -0
- package/bundled/upstream/ecc/skills/tinystruct-patterns/references/testing.md +72 -0
- package/bundled/upstream/ecc/skills/ui-to-vue/SKILL.md +134 -0
- package/bundled/upstream/ecc/skills/vite-patterns/SKILL.md +449 -0
- package/bundled/upstream/ecc/skills/windows-desktop-e2e/SKILL.md +788 -0
- package/bundled/upstream/ecc/skills/x-api/SKILL.md +4 -0
- package/bundled/upstream/oh-my-claudecode/.omc-source/bundle.json +20 -0
- package/bundled/upstream/oh-my-claudecode/agents/analyst.md +2 -1
- package/bundled/upstream/oh-my-claudecode/agents/architect.md +2 -1
- package/bundled/upstream/oh-my-claudecode/agents/code-reviewer.md +26 -7
- package/bundled/upstream/oh-my-claudecode/agents/critic.md +2 -1
- package/bundled/upstream/oh-my-claudecode/agents/debugger.md +2 -1
- package/bundled/upstream/oh-my-claudecode/agents/designer.md +14 -1
- package/bundled/upstream/oh-my-claudecode/agents/document-specialist.md +1 -1
- package/bundled/upstream/oh-my-claudecode/agents/executor.md +2 -1
- package/bundled/upstream/oh-my-claudecode/agents/explore.md +2 -1
- package/bundled/upstream/oh-my-claudecode/agents/git-master.md +2 -1
- package/bundled/upstream/oh-my-claudecode/agents/planner.md +2 -1
- package/bundled/upstream/oh-my-claudecode/agents/qa-tester.md +2 -1
- package/bundled/upstream/oh-my-claudecode/agents/scientist.md +2 -1
- package/bundled/upstream/oh-my-claudecode/agents/security-reviewer.md +2 -1
- package/bundled/upstream/oh-my-claudecode/agents/test-engineer.md +2 -1
- package/bundled/upstream/oh-my-claudecode/agents/tracer.md +2 -1
- package/bundled/upstream/oh-my-claudecode/agents/verifier.md +2 -1
- package/bundled/upstream/oh-my-claudecode/agents/writer.md +2 -1
- package/bundled/upstream/oh-my-claudecode/skills/AGENTS.md +4 -3
- package/bundled/upstream/oh-my-claudecode/skills/ai-slop-cleaner/SKILL.md +12 -0
- package/bundled/upstream/oh-my-claudecode/skills/deep-dive/SKILL.md +69 -13
- package/bundled/upstream/oh-my-claudecode/skills/deep-interview/SKILL.md +176 -63
- package/bundled/upstream/oh-my-claudecode/skills/learner/SKILL.md +3 -1
- package/bundled/upstream/oh-my-claudecode/skills/omc-doctor/SKILL.md +22 -3
- package/bundled/upstream/oh-my-claudecode/skills/omc-reference/SKILL.md +1 -1
- package/bundled/upstream/oh-my-claudecode/skills/omc-setup/phases/01-install-claude-md.md +2 -2
- package/bundled/upstream/oh-my-claudecode/skills/omc-setup/phases/02-configure.md +45 -2
- package/bundled/upstream/oh-my-claudecode/skills/omc-setup/phases/03-integrations.md +46 -5
- package/bundled/upstream/oh-my-claudecode/skills/plan/SKILL.md +19 -17
- package/bundled/upstream/oh-my-claudecode/skills/project-session-manager/lib/config.sh +1 -1
- package/bundled/upstream/oh-my-claudecode/skills/project-session-manager/lib/parse.sh +1 -1
- package/bundled/upstream/oh-my-claudecode/skills/project-session-manager/lib/providers/azure-devops.sh +1 -1
- package/bundled/upstream/oh-my-claudecode/skills/project-session-manager/lib/providers/bitbucket.sh +1 -1
- package/bundled/upstream/oh-my-claudecode/skills/project-session-manager/lib/providers/gitea.sh +1 -1
- package/bundled/upstream/oh-my-claudecode/skills/project-session-manager/lib/providers/github.sh +1 -1
- package/bundled/upstream/oh-my-claudecode/skills/project-session-manager/lib/providers/gitlab.sh +1 -1
- package/bundled/upstream/oh-my-claudecode/skills/project-session-manager/lib/providers/interface.sh +1 -1
- package/bundled/upstream/oh-my-claudecode/skills/project-session-manager/lib/providers/jira.sh +1 -1
- package/bundled/upstream/oh-my-claudecode/skills/project-session-manager/lib/session.sh +1 -1
- package/bundled/upstream/oh-my-claudecode/skills/project-session-manager/lib/tmux.sh +1 -1
- package/bundled/upstream/oh-my-claudecode/skills/project-session-manager/lib/worktree.sh +1 -1
- package/bundled/upstream/oh-my-claudecode/skills/project-session-manager/psm.sh +1 -1
- package/bundled/upstream/oh-my-claudecode/skills/project-session-manager/tests/test-psm-prompt-injection.sh +1 -1
- package/bundled/upstream/oh-my-claudecode/skills/ralph/SKILL.md +8 -8
- package/bundled/upstream/oh-my-claudecode/skills/ralplan/SKILL.md +9 -5
- package/bundled/upstream/oh-my-claudecode/skills/skill/SKILL.md +6 -6
- package/bundled/upstream/oh-my-claudecode/skills/skillify/SKILL.md +19 -3
- package/bundled/upstream/oh-my-claudecode/skills/trace/SKILL.md +3 -1
- package/bundled/upstream/oh-my-claudecode/skills/ultrawork/SKILL.md +20 -7
- package/bundled/upstream/superpowers/.omc-source/bundle.json +21 -0
- package/bundled/upstream/superpowers/hooks/hooks-cursor.json +1 -1
- package/bundled/upstream/superpowers/skills/executing-plans/SKILL.md +1 -1
- package/bundled/upstream/superpowers/skills/finishing-a-development-branch/SKILL.md +93 -42
- package/bundled/upstream/superpowers/skills/requesting-code-review/SKILL.md +7 -9
- package/bundled/upstream/superpowers/skills/requesting-code-review/code-reviewer.md +107 -85
- package/bundled/upstream/superpowers/skills/subagent-driven-development/SKILL.md +3 -1
- package/bundled/upstream/superpowers/skills/subagent-driven-development/code-quality-reviewer-prompt.md +2 -3
- package/bundled/upstream/superpowers/skills/systematic-debugging/CREATION-LOG.md +1 -1
- package/bundled/upstream/superpowers/skills/systematic-debugging/root-cause-tracing.md +1 -1
- package/bundled/upstream/superpowers/skills/using-git-worktrees/SKILL.md +95 -98
- package/bundled/upstream/superpowers/skills/using-superpowers/references/codex-tools.md +7 -48
- package/bundled/upstream/superpowers/skills/using-superpowers/references/copilot-tools.md +1 -11
- package/bundled/upstream/superpowers/skills/using-superpowers/references/gemini-tools.md +21 -3
- package/bundled/upstream/superpowers/skills/writing-plans/SKILL.md +1 -1
- package/package.json +1 -1
- package/bundled/upstream/anthropic-skills/skills/claude-api/python/agent-sdk/README.md +0 -355
- package/bundled/upstream/anthropic-skills/skills/claude-api/python/agent-sdk/patterns.md +0 -359
- package/bundled/upstream/anthropic-skills/skills/claude-api/typescript/agent-sdk/README.md +0 -297
- package/bundled/upstream/anthropic-skills/skills/claude-api/typescript/agent-sdk/patterns.md +0 -209
- package/bundled/upstream/ecc/commands/agent-sort.md +0 -23
- package/bundled/upstream/ecc/commands/claw.md +0 -23
- package/bundled/upstream/ecc/commands/context-budget.md +0 -23
- package/bundled/upstream/ecc/commands/devfleet.md +0 -23
- package/bundled/upstream/ecc/commands/docs.md +0 -23
- package/bundled/upstream/ecc/commands/e2e.md +0 -268
- package/bundled/upstream/ecc/commands/eval.md +0 -23
- package/bundled/upstream/ecc/commands/orchestrate.md +0 -135
- package/bundled/upstream/ecc/commands/prompt-optimize.md +0 -23
- package/bundled/upstream/ecc/commands/rules-distill.md +0 -20
- package/bundled/upstream/ecc/commands/tdd.md +0 -231
- package/bundled/upstream/ecc/commands/verify.md +0 -23
- package/bundled/upstream/ecc/skills/claude-api/SKILL.md +0 -337
- package/bundled/upstream/ecc/skills/frontend-design/SKILL.md +0 -145
- package/bundled/upstream/superpowers/agents/code-reviewer.md +0 -48
- package/bundled/upstream/superpowers/commands/brainstorm.md +0 -5
- package/bundled/upstream/superpowers/commands/execute-plan.md +0 -5
- package/bundled/upstream/superpowers/commands/write-plan.md +0 -5
|
@@ -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.
|
|
@@ -0,0 +1,154 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: angular-developer
|
|
3
|
+
description: Generates Angular code and provides architectural guidance. Trigger when creating projects, components, or services, or for best practices on reactivity (signals, linkedSignal, resource), forms, dependency injection, routing, SSR, accessibility (ARIA), animations, styling (component styles, Tailwind CSS), testing, or CLI tooling.
|
|
4
|
+
origin: ECC
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Angular Developer Guidelines
|
|
8
|
+
|
|
9
|
+
## When to Activate
|
|
10
|
+
|
|
11
|
+
- Working in any Angular project or codebase
|
|
12
|
+
- Creating or scaffolding a new Angular project, application, or library
|
|
13
|
+
- Generating components, services, directives, pipes, guards, or resolvers
|
|
14
|
+
- Implementing reactivity with Angular Signals, `linkedSignal`, or `resource`
|
|
15
|
+
- Working with Angular forms (signal forms, reactive forms, or template-driven)
|
|
16
|
+
- Setting up dependency injection, routing, lazy loading, or route guards
|
|
17
|
+
- Adding accessibility (ARIA), animations, or component styling
|
|
18
|
+
- Writing or debugging Angular-specific tests (unit, component harness, E2E)
|
|
19
|
+
- Configuring Angular CLI tooling or the Angular MCP server
|
|
20
|
+
|
|
21
|
+
1. Always analyze the project's Angular version before providing guidance, as best practices and available features can vary significantly between versions. If creating a new project with Angular CLI, do not specify a version unless prompted by the user.
|
|
22
|
+
|
|
23
|
+
2. When generating code, follow Angular's style guide and best practices for maintainability and performance. Use the Angular CLI for scaffolding components, services, directives, pipes, and routes to ensure consistency.
|
|
24
|
+
|
|
25
|
+
3. Once you finish generating code, run `ng build` to ensure there are no build errors. If there are errors, analyze the error messages and fix them before proceeding. Do not skip this step, as it is critical for ensuring the generated code is correct and functional.
|
|
26
|
+
|
|
27
|
+
## Creating New Projects
|
|
28
|
+
|
|
29
|
+
If no guidelines are provided by the user, use these defaults when creating a new Angular project:
|
|
30
|
+
|
|
31
|
+
1. Use the latest stable version of Angular unless the user specifies otherwise.
|
|
32
|
+
2. Prefer Signal Forms for new projects only when the target Angular version supports them. [Find out more](references/signal-forms.md).
|
|
33
|
+
|
|
34
|
+
**Execution Rules for `ng new`:**
|
|
35
|
+
When asked to create a new Angular project, you must determine the correct execution command by following these strict steps:
|
|
36
|
+
|
|
37
|
+
**Step 1: Check for an explicit user version.**
|
|
38
|
+
|
|
39
|
+
- **IF** the user requests a specific version (e.g., Angular 15), bypass local installations and strictly use `npx`.
|
|
40
|
+
- **Command:** `npx @angular/cli@<requested_version> new <project-name>`
|
|
41
|
+
|
|
42
|
+
**Step 2: Check for an existing Angular installation.**
|
|
43
|
+
|
|
44
|
+
- **IF** no specific version is requested, run `ng version` in the terminal to check if the Angular CLI is already installed on the system.
|
|
45
|
+
- **IF** the command succeeds and returns an installed version, use the local/global installation directly.
|
|
46
|
+
- **Command:** `ng new <project-name>`
|
|
47
|
+
|
|
48
|
+
**Step 3: Fallback to Latest.**
|
|
49
|
+
|
|
50
|
+
- **IF** no specific version is requested AND the `ng version` command fails (indicating no Angular installation exists), you must use `npx` to fetch the latest version.
|
|
51
|
+
- **Command:** `npx @angular/cli@latest new <project-name>`
|
|
52
|
+
|
|
53
|
+
## Components
|
|
54
|
+
|
|
55
|
+
When working with Angular components, consult the following references based on the task:
|
|
56
|
+
|
|
57
|
+
- **Fundamentals**: Anatomy, metadata, core concepts, and template control flow (@if, @for, @switch). Read [components.md](references/components.md)
|
|
58
|
+
- **Inputs**: Signal-based inputs, transforms, and model inputs. Read [inputs.md](references/inputs.md)
|
|
59
|
+
- **Outputs**: Signal-based outputs and custom event best practices. Read [outputs.md](references/outputs.md)
|
|
60
|
+
- **Host Elements**: Host bindings and attribute injection. Read [host-elements.md](references/host-elements.md)
|
|
61
|
+
|
|
62
|
+
If you require deeper documentation not found in the references above, read the documentation at `https://angular.dev/guide/components`.
|
|
63
|
+
|
|
64
|
+
## Reactivity and Data Management
|
|
65
|
+
|
|
66
|
+
When managing state and data reactivity, use Angular Signals and consult the following references:
|
|
67
|
+
|
|
68
|
+
- **Signals Overview**: Core signal concepts (`signal`, `computed`), reactive contexts, and `untracked`. Read [signals-overview.md](references/signals-overview.md)
|
|
69
|
+
- **Dependent State (`linkedSignal`)**: Creating writable state linked to source signals. Read [linked-signal.md](references/linked-signal.md)
|
|
70
|
+
- **Async Reactivity (`resource`)**: Fetching asynchronous data directly into signal state. Read [resource.md](references/resource.md)
|
|
71
|
+
- **Side Effects (`effect`)**: Logging, third-party DOM manipulation (`afterRenderEffect`), and when NOT to use effects. Read [effects.md](references/effects.md)
|
|
72
|
+
|
|
73
|
+
## Forms
|
|
74
|
+
|
|
75
|
+
In most cases for new apps, **prefer signal forms**. When making a forms decision, analyze the project and consider the following guidelines:
|
|
76
|
+
|
|
77
|
+
- If the application version supports Signal Forms and this is a new form, **prefer signal forms**.
|
|
78
|
+
- For older applications or existing forms, match the application's current form strategy.
|
|
79
|
+
|
|
80
|
+
- **Signal Forms**: Use signals for form state management. Read [signal-forms.md](references/signal-forms.md)
|
|
81
|
+
- **Template-driven forms**: Use for simple forms. Read [template-driven-forms.md](references/template-driven-forms.md)
|
|
82
|
+
- **Reactive forms**: Use for complex forms. Read [reactive-forms.md](references/reactive-forms.md)
|
|
83
|
+
|
|
84
|
+
## Dependency Injection
|
|
85
|
+
|
|
86
|
+
When implementing dependency injection in Angular, follow these guidelines:
|
|
87
|
+
|
|
88
|
+
- **Fundamentals**: Overview of Dependency Injection, services, and the `inject()` function. Read [di-fundamentals.md](references/di-fundamentals.md)
|
|
89
|
+
- **Creating and Using Services**: Creating services, the `providedIn: 'root'` option, and injecting into components or other services. Read [creating-services.md](references/creating-services.md)
|
|
90
|
+
- **Defining Dependency Providers**: Automatic vs manual provision, `InjectionToken`, `useClass`, `useValue`, `useFactory`, and scopes. Read [defining-providers.md](references/defining-providers.md)
|
|
91
|
+
- **Injection Context**: Where `inject()` is allowed, `runInInjectionContext`, and `assertInInjectionContext`. Read [injection-context.md](references/injection-context.md)
|
|
92
|
+
- **Hierarchical Injectors**: The `EnvironmentInjector` vs `ElementInjector`, resolution rules, modifiers (`optional`, `skipSelf`), and `providers` vs `viewProviders`. Read [hierarchical-injectors.md](references/hierarchical-injectors.md)
|
|
93
|
+
|
|
94
|
+
## Angular Aria
|
|
95
|
+
|
|
96
|
+
When building accessible custom components for any of the following patterns: Accordion, Listbox, Combobox, Menu, Tabs, Toolbar, Tree, Grid, consult the following reference:
|
|
97
|
+
|
|
98
|
+
- **Angular Aria Components**: Building headless, accessible components (Accordion, Listbox, Combobox, Menu, Tabs, Toolbar, Tree, Grid) and styling ARIA attributes. Read [angular-aria.md](references/angular-aria.md)
|
|
99
|
+
|
|
100
|
+
## Routing
|
|
101
|
+
|
|
102
|
+
When implementing navigation in Angular, consult the following references:
|
|
103
|
+
|
|
104
|
+
- **Define Routes**: URL paths, static vs dynamic segments, wildcards, and redirects. Read [define-routes.md](references/define-routes.md)
|
|
105
|
+
- **Route Loading Strategies**: Eager vs lazy loading, and context-aware loading. Read [loading-strategies.md](references/loading-strategies.md)
|
|
106
|
+
- **Show Routes with Outlets**: Using `<router-outlet>`, nested outlets, and named outlets. Read [show-routes-with-outlets.md](references/show-routes-with-outlets.md)
|
|
107
|
+
- **Navigate to Routes**: Declarative navigation with `RouterLink` and programmatic navigation with `Router`. Read [navigate-to-routes.md](references/navigate-to-routes.md)
|
|
108
|
+
- **Control Route Access with Guards**: Implementing `CanActivate`, `CanMatch`, and other guards for security. Read [route-guards.md](references/route-guards.md)
|
|
109
|
+
- **Data Resolvers**: Pre-fetching data before route activation with `ResolveFn`. Read [data-resolvers.md](references/data-resolvers.md)
|
|
110
|
+
- **Router Lifecycle and Events**: Chronological order of navigation events and debugging. Read [router-lifecycle.md](references/router-lifecycle.md)
|
|
111
|
+
- **Rendering Strategies**: CSR, SSG (Prerendering), and SSR with hydration. Read [rendering-strategies.md](references/rendering-strategies.md)
|
|
112
|
+
- **Route Transition Animations**: Enabling and customizing the View Transitions API. Read [route-animations.md](references/route-animations.md)
|
|
113
|
+
|
|
114
|
+
If you require deeper documentation or more context, visit the [official Angular Routing guide](https://angular.dev/guide/routing).
|
|
115
|
+
|
|
116
|
+
## Styling and Animations
|
|
117
|
+
|
|
118
|
+
When implementing styling and animations in Angular, consult the following references:
|
|
119
|
+
|
|
120
|
+
- **Using Tailwind CSS with Angular**: Integrating Tailwind CSS into Angular projects. Read [tailwind-css.md](references/tailwind-css.md)
|
|
121
|
+
- **Angular Animations**: Using native CSS (recommended) or the legacy DSL for dynamic effects. Read [angular-animations.md](references/angular-animations.md)
|
|
122
|
+
- **Styling components**: Best practices for component styles and encapsulation. Read [component-styling.md](references/component-styling.md)
|
|
123
|
+
|
|
124
|
+
## Testing
|
|
125
|
+
|
|
126
|
+
When writing or updating tests, consult the following references based on the task:
|
|
127
|
+
|
|
128
|
+
- **Fundamentals**: Best practices for unit testing, async patterns, and `TestBed`. Read [testing-fundamentals.md](references/testing-fundamentals.md)
|
|
129
|
+
- **Component Harnesses**: Standard patterns for robust component interaction. Read [component-harnesses.md](references/component-harnesses.md)
|
|
130
|
+
- **Router Testing**: Using `RouterTestingHarness` for reliable navigation tests. Read [router-testing.md](references/router-testing.md)
|
|
131
|
+
- **End-to-End (E2E) Testing**: Best practices for E2E tests with Cypress or Playwright. Read [e2e-testing.md](references/e2e-testing.md)
|
|
132
|
+
|
|
133
|
+
## Tooling
|
|
134
|
+
|
|
135
|
+
When working with Angular tooling, consult the following references:
|
|
136
|
+
|
|
137
|
+
- **Angular CLI**: Creating applications, generating code (components, routes, services), serving, and building. Read [cli.md](references/cli.md)
|
|
138
|
+
- **Angular MCP Server**: Available tools, configuration, and experimental features. Read [mcp.md](references/mcp.md)
|
|
139
|
+
|
|
140
|
+
## Anti-Patterns
|
|
141
|
+
|
|
142
|
+
- Using `null` or `undefined` as initial signal form field values — use `''`, `0`, or `[]` instead
|
|
143
|
+
- Accessing form field state flags without calling the field first: `form.field.valid()` — use `form.field().valid()`
|
|
144
|
+
- Starting new forms with older form APIs when the target Angular version supports Signal Forms
|
|
145
|
+
- Setting `min`, `max`, `value`, `disabled`, or `readonly` HTML attributes on `[formField]` inputs — define these as schema rules instead
|
|
146
|
+
- Calling `inject()` outside an injection context — use `runInInjectionContext` when needed
|
|
147
|
+
- Using `effect()` for derived state that should use `computed()`
|
|
148
|
+
- Referencing `$parent.$index` in nested `@for` loops — Angular does not support `$parent`; use `let outerIdx = $index` instead
|
|
149
|
+
|
|
150
|
+
## Related Skills
|
|
151
|
+
|
|
152
|
+
- `tdd-workflow` — test-driven development workflow applicable to Angular components and services
|
|
153
|
+
- `security-review` — security checklist for web applications including Angular-specific concerns
|
|
154
|
+
- `frontend-patterns` — general frontend patterns for context on React/Next.js approaches
|