memory-journal-mcp 7.7.0 → 8.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +126 -56
- package/dist/chunk-6OHRCNYW.js +3231 -0
- package/dist/chunk-JFMITANR.js +5168 -0
- package/dist/{chunk-QCQPAF4I.js → chunk-MWNLAEHR.js} +301 -4321
- package/dist/{chunk-ARLYSFSI.js → chunk-UHSO65A4.js} +4242 -6092
- package/dist/cli.js +21 -3
- package/dist/index.d.ts +16 -13
- package/dist/index.js +4 -2
- package/dist/resources-IJVKDFGS.js +2 -0
- package/dist/tools-44DGXE3V.js +2 -0
- package/dist/worker-script.js +201 -20
- package/package.json +7 -4
- package/skills/README.md +62 -25
- package/skills/adversarial-performance/SKILL.md +139 -0
- package/skills/adversarial-performance/references/audit-categories.md +462 -0
- package/skills/adversarial-performance/references/copilot-performance-prompts.md +44 -0
- package/skills/adversarial-performance/references/copilot-usage.md +16 -0
- package/skills/adversarial-performance/references/feedback-loop.md +177 -0
- package/skills/adversarial-performance/references/multi-pass-performance-protocol.md +398 -0
- package/skills/adversarial-planner/SKILL.md +23 -54
- package/skills/adversarial-planner/references/copilot-integration.md +25 -40
- package/skills/adversarial-planner/references/copilot-usage.md +16 -0
- package/skills/adversarial-planner/references/multi-pass-protocol.md +4 -0
- package/skills/adversarial-security/SKILL.md +149 -0
- package/skills/adversarial-security/references/adversarial-base-protocol.md +44 -0
- package/skills/adversarial-security/references/audit-categories.md +723 -0
- package/skills/adversarial-security/references/copilot-security-prompts.md +142 -0
- package/skills/adversarial-security/references/copilot-usage.md +16 -0
- package/skills/adversarial-security/references/feedback-loop.md +206 -0
- package/skills/adversarial-security/references/journal-opt-out.md +7 -0
- package/skills/adversarial-security/references/multi-pass-security-protocol.md +403 -0
- package/skills/adversarial-skill-audit/SKILL.md +118 -0
- package/skills/adversarial-skill-audit/references/audit-categories.md +308 -0
- package/skills/adversarial-skill-audit/references/copilot-skill-prompts.md +68 -0
- package/skills/adversarial-skill-audit/references/copilot-usage.md +16 -0
- package/skills/adversarial-skill-audit/references/feedback-loop.md +155 -0
- package/skills/adversarial-skill-audit/references/multi-pass-skill-protocol.md +367 -0
- package/skills/adversarial-skill-audit/scripts/check-skills.ps1 +48 -0
- package/skills/adversarial-skill-audit/scripts/run-copilot.ps1 +52 -0
- package/skills/adversarial-workflow-audit/SKILL.md +82 -0
- package/skills/adversarial-workflow-audit/references/audit-categories.md +28 -0
- package/skills/adversarial-workflow-audit/references/copilot-usage.md +16 -0
- package/skills/adversarial-workflow-audit/scripts/check-workflows.ps1 +24 -0
- package/skills/agents-sdk/SKILL.md +220 -0
- package/skills/agents-sdk/references/callable.md +92 -0
- package/skills/agents-sdk/references/codemode.md +209 -0
- package/skills/agents-sdk/references/email.md +144 -0
- package/skills/agents-sdk/references/mcp/SKILL.md +65 -0
- package/skills/agents-sdk/references/mcp/code-mode-reference.md +245 -0
- package/skills/agents-sdk/references/mcp/oauth-reference.md +359 -0
- package/skills/agents-sdk/references/mcp/references/architecture-reference.md +208 -0
- package/skills/agents-sdk/references/mcp/references/cloudflare-quickstart.md +156 -0
- package/skills/agents-sdk/references/mcp/references/error-handling.md +343 -0
- package/skills/agents-sdk/references/mcp/references/http-security.md +164 -0
- package/skills/agents-sdk/references/mcp/references/implementation-guide.md +507 -0
- package/skills/agents-sdk/references/mcp/references/testing-reference.md +171 -0
- package/skills/agents-sdk/references/mcp.md +157 -0
- package/skills/agents-sdk/references/state-scheduling.md +164 -0
- package/skills/agents-sdk/references/streaming-chat.md +168 -0
- package/skills/agents-sdk/references/workflows.md +136 -0
- package/skills/auth-identity/SKILL.md +48 -0
- package/skills/autonomous-dev/SKILL.md +46 -23
- package/skills/autonomous-dev/references/workflow_orchestration.md +22 -0
- package/skills/aws/SKILL.md +39 -0
- package/skills/azure/SKILL.md +38 -0
- package/skills/bin/sync.js +7 -1
- package/skills/biome/SKILL.md +59 -0
- package/skills/bun/SKILL.md +8 -2
- package/skills/cloudflare/SKILL.md +37 -0
- package/skills/cloudflare/references/agents-sdk/README.md +95 -0
- package/skills/cloudflare/references/agents-sdk/api.md +195 -0
- package/skills/cloudflare/references/agents-sdk/configuration.md +178 -0
- package/skills/cloudflare/references/agents-sdk/gotchas.md +173 -0
- package/skills/cloudflare/references/agents-sdk/patterns.md +215 -0
- package/skills/cloudflare/references/ai-gateway/README.md +176 -0
- package/skills/cloudflare/references/ai-gateway/configuration.md +117 -0
- package/skills/cloudflare/references/ai-gateway/dynamic-routing.md +88 -0
- package/skills/cloudflare/references/ai-gateway/features.md +96 -0
- package/skills/cloudflare/references/ai-gateway/sdk-integration.md +110 -0
- package/skills/cloudflare/references/ai-gateway/troubleshooting.md +90 -0
- package/skills/cloudflare/references/ai-search/README.md +145 -0
- package/skills/cloudflare/references/ai-search/api.md +87 -0
- package/skills/cloudflare/references/ai-search/configuration.md +91 -0
- package/skills/cloudflare/references/ai-search/gotchas.md +92 -0
- package/skills/cloudflare/references/ai-search/patterns.md +87 -0
- package/skills/cloudflare/references/analytics-engine/README.md +96 -0
- package/skills/cloudflare/references/analytics-engine/api.md +112 -0
- package/skills/cloudflare/references/analytics-engine/configuration.md +107 -0
- package/skills/cloudflare/references/analytics-engine/gotchas.md +87 -0
- package/skills/cloudflare/references/analytics-engine/patterns.md +83 -0
- package/skills/cloudflare/references/api/README.md +66 -0
- package/skills/cloudflare/references/api/api.md +205 -0
- package/skills/cloudflare/references/api/configuration.md +158 -0
- package/skills/cloudflare/references/api/gotchas.md +231 -0
- package/skills/cloudflare/references/api/patterns.md +208 -0
- package/skills/cloudflare/references/api-shield/README.md +44 -0
- package/skills/cloudflare/references/api-shield/api.md +153 -0
- package/skills/cloudflare/references/api-shield/configuration.md +210 -0
- package/skills/cloudflare/references/api-shield/gotchas.md +132 -0
- package/skills/cloudflare/references/api-shield/patterns.md +185 -0
- package/skills/cloudflare/references/argo-smart-routing/README.md +96 -0
- package/skills/cloudflare/references/argo-smart-routing/api.md +253 -0
- package/skills/cloudflare/references/argo-smart-routing/configuration.md +205 -0
- package/skills/cloudflare/references/argo-smart-routing/gotchas.md +115 -0
- package/skills/cloudflare/references/argo-smart-routing/patterns.md +107 -0
- package/skills/cloudflare/references/bindings/README.md +127 -0
- package/skills/cloudflare/references/bindings/api.md +214 -0
- package/skills/cloudflare/references/bindings/configuration.md +200 -0
- package/skills/cloudflare/references/bindings/gotchas.md +210 -0
- package/skills/cloudflare/references/bindings/patterns.md +205 -0
- package/skills/cloudflare/references/bot-management/README.md +95 -0
- package/skills/cloudflare/references/bot-management/api.md +175 -0
- package/skills/cloudflare/references/bot-management/configuration.md +175 -0
- package/skills/cloudflare/references/bot-management/gotchas.md +116 -0
- package/skills/cloudflare/references/bot-management/patterns.md +181 -0
- package/skills/cloudflare/references/browser-rendering/README.md +84 -0
- package/skills/cloudflare/references/browser-rendering/api.md +108 -0
- package/skills/cloudflare/references/browser-rendering/configuration.md +78 -0
- package/skills/cloudflare/references/browser-rendering/gotchas.md +91 -0
- package/skills/cloudflare/references/browser-rendering/patterns.md +93 -0
- package/skills/cloudflare/references/c3/README.md +111 -0
- package/skills/cloudflare/references/c3/api.md +71 -0
- package/skills/cloudflare/references/c3/configuration.md +85 -0
- package/skills/cloudflare/references/c3/gotchas.md +97 -0
- package/skills/cloudflare/references/c3/patterns.md +84 -0
- package/skills/cloudflare/references/cache-reserve/README.md +150 -0
- package/skills/cloudflare/references/cache-reserve/api.md +184 -0
- package/skills/cloudflare/references/cache-reserve/configuration.md +170 -0
- package/skills/cloudflare/references/cache-reserve/gotchas.md +136 -0
- package/skills/cloudflare/references/cache-reserve/patterns.md +197 -0
- package/skills/cloudflare/references/containers/README.md +87 -0
- package/skills/cloudflare/references/containers/api.md +197 -0
- package/skills/cloudflare/references/containers/configuration.md +191 -0
- package/skills/cloudflare/references/containers/gotchas.md +182 -0
- package/skills/cloudflare/references/containers/patterns.md +204 -0
- package/skills/cloudflare/references/cron-triggers/README.md +101 -0
- package/skills/cloudflare/references/cron-triggers/api.md +224 -0
- package/skills/cloudflare/references/cron-triggers/configuration.md +190 -0
- package/skills/cloudflare/references/cron-triggers/gotchas.md +207 -0
- package/skills/cloudflare/references/cron-triggers/patterns.md +274 -0
- package/skills/cloudflare/references/d1/README.md +137 -0
- package/skills/cloudflare/references/d1/api.md +213 -0
- package/skills/cloudflare/references/d1/configuration.md +198 -0
- package/skills/cloudflare/references/d1/gotchas.md +98 -0
- package/skills/cloudflare/references/d1/patterns.md +240 -0
- package/skills/cloudflare/references/ddos/README.md +42 -0
- package/skills/cloudflare/references/ddos/api.md +158 -0
- package/skills/cloudflare/references/ddos/configuration.md +94 -0
- package/skills/cloudflare/references/ddos/gotchas.md +114 -0
- package/skills/cloudflare/references/ddos/patterns.md +220 -0
- package/skills/cloudflare/references/decision-trees.md +95 -0
- package/skills/cloudflare/references/do-storage/README.md +79 -0
- package/skills/cloudflare/references/do-storage/api.md +107 -0
- package/skills/cloudflare/references/do-storage/configuration.md +114 -0
- package/skills/cloudflare/references/do-storage/gotchas.md +153 -0
- package/skills/cloudflare/references/do-storage/patterns.md +210 -0
- package/skills/cloudflare/references/do-storage/testing.md +186 -0
- package/skills/cloudflare/references/durable-objects/README.md +194 -0
- package/skills/cloudflare/references/durable-objects/api.md +205 -0
- package/skills/cloudflare/references/durable-objects/configuration.md +160 -0
- package/skills/cloudflare/references/durable-objects/gotchas.md +200 -0
- package/skills/cloudflare/references/durable-objects/patterns.md +205 -0
- package/skills/cloudflare/references/email-routing/README.md +89 -0
- package/skills/cloudflare/references/email-routing/api.md +192 -0
- package/skills/cloudflare/references/email-routing/configuration.md +187 -0
- package/skills/cloudflare/references/email-routing/gotchas.md +203 -0
- package/skills/cloudflare/references/email-routing/patterns.md +241 -0
- package/skills/cloudflare/references/email-workers/README.md +153 -0
- package/skills/cloudflare/references/email-workers/api.md +227 -0
- package/skills/cloudflare/references/email-workers/configuration.md +115 -0
- package/skills/cloudflare/references/email-workers/gotchas.md +133 -0
- package/skills/cloudflare/references/email-workers/patterns.md +108 -0
- package/skills/cloudflare/references/graphql-api/README.md +147 -0
- package/skills/cloudflare/references/graphql-api/api.md +175 -0
- package/skills/cloudflare/references/graphql-api/configuration.md +151 -0
- package/skills/cloudflare/references/graphql-api/gotchas.md +111 -0
- package/skills/cloudflare/references/graphql-api/patterns.md +276 -0
- package/skills/cloudflare/references/hyperdrive/README.md +84 -0
- package/skills/cloudflare/references/hyperdrive/api.md +149 -0
- package/skills/cloudflare/references/hyperdrive/configuration.md +166 -0
- package/skills/cloudflare/references/hyperdrive/gotchas.md +77 -0
- package/skills/cloudflare/references/hyperdrive/patterns.md +203 -0
- package/skills/cloudflare/references/images/README.md +65 -0
- package/skills/cloudflare/references/images/api.md +101 -0
- package/skills/cloudflare/references/images/configuration.md +206 -0
- package/skills/cloudflare/references/images/gotchas.md +106 -0
- package/skills/cloudflare/references/images/patterns.md +126 -0
- package/skills/cloudflare/references/kv/README.md +90 -0
- package/skills/cloudflare/references/kv/api.md +163 -0
- package/skills/cloudflare/references/kv/configuration.md +148 -0
- package/skills/cloudflare/references/kv/gotchas.md +133 -0
- package/skills/cloudflare/references/kv/patterns.md +195 -0
- package/skills/cloudflare/references/miniflare/README.md +113 -0
- package/skills/cloudflare/references/miniflare/api.md +204 -0
- package/skills/cloudflare/references/miniflare/configuration.md +174 -0
- package/skills/cloudflare/references/miniflare/gotchas.md +179 -0
- package/skills/cloudflare/references/miniflare/patterns.md +187 -0
- package/skills/cloudflare/references/network-interconnect/README.md +104 -0
- package/skills/cloudflare/references/network-interconnect/api.md +220 -0
- package/skills/cloudflare/references/network-interconnect/configuration.md +123 -0
- package/skills/cloudflare/references/network-interconnect/gotchas.md +175 -0
- package/skills/cloudflare/references/network-interconnect/patterns.md +174 -0
- package/skills/cloudflare/references/observability/README.md +93 -0
- package/skills/cloudflare/references/observability/api.md +168 -0
- package/skills/cloudflare/references/observability/configuration.md +178 -0
- package/skills/cloudflare/references/observability/gotchas.md +125 -0
- package/skills/cloudflare/references/observability/patterns.md +105 -0
- package/skills/cloudflare/references/pages/README.md +92 -0
- package/skills/cloudflare/references/pages/api.md +205 -0
- package/skills/cloudflare/references/pages/configuration.md +216 -0
- package/skills/cloudflare/references/pages/gotchas.md +218 -0
- package/skills/cloudflare/references/pages/patterns.md +215 -0
- package/skills/cloudflare/references/pages-functions/README.md +104 -0
- package/skills/cloudflare/references/pages-functions/api.md +159 -0
- package/skills/cloudflare/references/pages-functions/configuration.md +130 -0
- package/skills/cloudflare/references/pages-functions/gotchas.md +102 -0
- package/skills/cloudflare/references/pages-functions/patterns.md +148 -0
- package/skills/cloudflare/references/pipelines/README.md +109 -0
- package/skills/cloudflare/references/pipelines/api.md +214 -0
- package/skills/cloudflare/references/pipelines/configuration.md +98 -0
- package/skills/cloudflare/references/pipelines/gotchas.md +84 -0
- package/skills/cloudflare/references/pipelines/patterns.md +87 -0
- package/skills/cloudflare/references/product-index.md +112 -0
- package/skills/cloudflare/references/pulumi/README.md +113 -0
- package/skills/cloudflare/references/pulumi/api.md +230 -0
- package/skills/cloudflare/references/pulumi/configuration.md +213 -0
- package/skills/cloudflare/references/pulumi/gotchas.md +205 -0
- package/skills/cloudflare/references/pulumi/patterns.md +260 -0
- package/skills/cloudflare/references/queues/README.md +99 -0
- package/skills/cloudflare/references/queues/api.md +211 -0
- package/skills/cloudflare/references/queues/configuration.md +151 -0
- package/skills/cloudflare/references/queues/gotchas.md +210 -0
- package/skills/cloudflare/references/queues/patterns.md +220 -0
- package/skills/cloudflare/references/r2/README.md +97 -0
- package/skills/cloudflare/references/r2/api.md +235 -0
- package/skills/cloudflare/references/r2/configuration.md +176 -0
- package/skills/cloudflare/references/r2/gotchas.md +190 -0
- package/skills/cloudflare/references/r2/patterns.md +203 -0
- package/skills/cloudflare/references/r2-data-catalog/README.md +157 -0
- package/skills/cloudflare/references/r2-data-catalog/api.md +199 -0
- package/skills/cloudflare/references/r2-data-catalog/configuration.md +205 -0
- package/skills/cloudflare/references/r2-data-catalog/gotchas.md +170 -0
- package/skills/cloudflare/references/r2-data-catalog/patterns.md +191 -0
- package/skills/cloudflare/references/r2-sql/README.md +138 -0
- package/skills/cloudflare/references/r2-sql/SKILL.md.backup +512 -0
- package/skills/cloudflare/references/r2-sql/api.md +159 -0
- package/skills/cloudflare/references/r2-sql/configuration.md +152 -0
- package/skills/cloudflare/references/r2-sql/gotchas.md +228 -0
- package/skills/cloudflare/references/r2-sql/patterns.md +230 -0
- package/skills/cloudflare/references/realtime-sfu/README.md +66 -0
- package/skills/cloudflare/references/realtime-sfu/api.md +164 -0
- package/skills/cloudflare/references/realtime-sfu/configuration.md +141 -0
- package/skills/cloudflare/references/realtime-sfu/gotchas.md +138 -0
- package/skills/cloudflare/references/realtime-sfu/patterns.md +187 -0
- package/skills/cloudflare/references/realtimekit/README.md +118 -0
- package/skills/cloudflare/references/realtimekit/api.md +234 -0
- package/skills/cloudflare/references/realtimekit/configuration.md +226 -0
- package/skills/cloudflare/references/realtimekit/gotchas.md +206 -0
- package/skills/cloudflare/references/realtimekit/patterns.md +240 -0
- package/skills/cloudflare/references/sandbox/README.md +104 -0
- package/skills/cloudflare/references/sandbox/api.md +200 -0
- package/skills/cloudflare/references/sandbox/configuration.md +154 -0
- package/skills/cloudflare/references/sandbox/gotchas.md +201 -0
- package/skills/cloudflare/references/sandbox/patterns.md +195 -0
- package/skills/cloudflare/references/secrets-store/README.md +77 -0
- package/skills/cloudflare/references/secrets-store/api.md +199 -0
- package/skills/cloudflare/references/secrets-store/configuration.md +187 -0
- package/skills/cloudflare/references/secrets-store/gotchas.md +97 -0
- package/skills/cloudflare/references/secrets-store/patterns.md +218 -0
- package/skills/cloudflare/references/smart-placement/README.md +143 -0
- package/skills/cloudflare/references/smart-placement/api.md +192 -0
- package/skills/cloudflare/references/smart-placement/configuration.md +202 -0
- package/skills/cloudflare/references/smart-placement/gotchas.md +180 -0
- package/skills/cloudflare/references/smart-placement/patterns.md +190 -0
- package/skills/cloudflare/references/snippets/README.md +74 -0
- package/skills/cloudflare/references/snippets/api.md +214 -0
- package/skills/cloudflare/references/snippets/configuration.md +239 -0
- package/skills/cloudflare/references/snippets/gotchas.md +104 -0
- package/skills/cloudflare/references/snippets/patterns.md +135 -0
- package/skills/cloudflare/references/spectrum/README.md +52 -0
- package/skills/cloudflare/references/spectrum/api.md +184 -0
- package/skills/cloudflare/references/spectrum/configuration.md +203 -0
- package/skills/cloudflare/references/spectrum/gotchas.md +155 -0
- package/skills/cloudflare/references/spectrum/patterns.md +206 -0
- package/skills/cloudflare/references/static-assets/README.md +65 -0
- package/skills/cloudflare/references/static-assets/api.md +201 -0
- package/skills/cloudflare/references/static-assets/configuration.md +186 -0
- package/skills/cloudflare/references/static-assets/gotchas.md +164 -0
- package/skills/cloudflare/references/static-assets/patterns.md +189 -0
- package/skills/cloudflare/references/stream/README.md +123 -0
- package/skills/cloudflare/references/stream/api-live.md +202 -0
- package/skills/cloudflare/references/stream/api.md +206 -0
- package/skills/cloudflare/references/stream/configuration.md +151 -0
- package/skills/cloudflare/references/stream/gotchas.md +139 -0
- package/skills/cloudflare/references/stream/patterns.md +217 -0
- package/skills/cloudflare/references/tail-workers/README.md +92 -0
- package/skills/cloudflare/references/tail-workers/api.md +203 -0
- package/skills/cloudflare/references/tail-workers/configuration.md +178 -0
- package/skills/cloudflare/references/tail-workers/gotchas.md +206 -0
- package/skills/cloudflare/references/tail-workers/patterns.md +190 -0
- package/skills/cloudflare/references/terraform/README.md +100 -0
- package/skills/cloudflare/references/terraform/api.md +178 -0
- package/skills/cloudflare/references/terraform/configuration.md +197 -0
- package/skills/cloudflare/references/terraform/gotchas.md +150 -0
- package/skills/cloudflare/references/terraform/patterns.md +174 -0
- package/skills/cloudflare/references/tunnel/README.md +137 -0
- package/skills/cloudflare/references/tunnel/api.md +205 -0
- package/skills/cloudflare/references/tunnel/configuration.md +163 -0
- package/skills/cloudflare/references/tunnel/gotchas.md +159 -0
- package/skills/cloudflare/references/tunnel/networking.md +174 -0
- package/skills/cloudflare/references/tunnel/patterns.md +199 -0
- package/skills/cloudflare/references/turn/README.md +86 -0
- package/skills/cloudflare/references/turn/api.md +236 -0
- package/skills/cloudflare/references/turn/configuration.md +181 -0
- package/skills/cloudflare/references/turn/gotchas.md +236 -0
- package/skills/cloudflare/references/turn/patterns.md +228 -0
- package/skills/cloudflare/references/turnstile/README.md +102 -0
- package/skills/cloudflare/references/turnstile/api.md +253 -0
- package/skills/cloudflare/references/turnstile/configuration.md +242 -0
- package/skills/cloudflare/references/turnstile/gotchas.md +253 -0
- package/skills/cloudflare/references/turnstile/patterns.md +195 -0
- package/skills/cloudflare/references/vectorize/README.md +133 -0
- package/skills/cloudflare/references/vectorize/api.md +89 -0
- package/skills/cloudflare/references/vectorize/configuration.md +91 -0
- package/skills/cloudflare/references/vectorize/gotchas.md +83 -0
- package/skills/cloudflare/references/vectorize/patterns.md +92 -0
- package/skills/cloudflare/references/waf/README.md +125 -0
- package/skills/cloudflare/references/waf/api.md +203 -0
- package/skills/cloudflare/references/waf/configuration.md +215 -0
- package/skills/cloudflare/references/waf/gotchas.md +208 -0
- package/skills/cloudflare/references/waf/patterns.md +236 -0
- package/skills/cloudflare/references/web-analytics/README.md +149 -0
- package/skills/cloudflare/references/web-analytics/configuration.md +81 -0
- package/skills/cloudflare/references/web-analytics/gotchas.md +86 -0
- package/skills/cloudflare/references/web-analytics/integration.md +63 -0
- package/skills/cloudflare/references/web-analytics/patterns.md +98 -0
- package/skills/cloudflare/references/workerd/README.md +85 -0
- package/skills/cloudflare/references/workerd/api.md +219 -0
- package/skills/cloudflare/references/workerd/configuration.md +200 -0
- package/skills/cloudflare/references/workerd/gotchas.md +151 -0
- package/skills/cloudflare/references/workerd/patterns.md +205 -0
- package/skills/cloudflare/references/workers/README.md +110 -0
- package/skills/cloudflare/references/workers/api.md +197 -0
- package/skills/cloudflare/references/workers/configuration.md +184 -0
- package/skills/cloudflare/references/workers/frameworks.md +200 -0
- package/skills/cloudflare/references/workers/gotchas.md +145 -0
- package/skills/cloudflare/references/workers/patterns.md +220 -0
- package/skills/cloudflare/references/workers-ai/README.md +206 -0
- package/skills/cloudflare/references/workers-ai/api.md +115 -0
- package/skills/cloudflare/references/workers-ai/configuration.md +98 -0
- package/skills/cloudflare/references/workers-ai/gotchas.md +130 -0
- package/skills/cloudflare/references/workers-ai/patterns.md +122 -0
- package/skills/cloudflare/references/workers-for-platforms/README.md +95 -0
- package/skills/cloudflare/references/workers-for-platforms/api.md +212 -0
- package/skills/cloudflare/references/workers-for-platforms/configuration.md +178 -0
- package/skills/cloudflare/references/workers-for-platforms/gotchas.md +134 -0
- package/skills/cloudflare/references/workers-for-platforms/patterns.md +210 -0
- package/skills/cloudflare/references/workers-playground/README.md +131 -0
- package/skills/cloudflare/references/workers-playground/api.md +101 -0
- package/skills/cloudflare/references/workers-playground/configuration.md +169 -0
- package/skills/cloudflare/references/workers-playground/gotchas.md +88 -0
- package/skills/cloudflare/references/workers-playground/patterns.md +134 -0
- package/skills/cloudflare/references/workers-vpc/README.md +130 -0
- package/skills/cloudflare/references/workers-vpc/api.md +196 -0
- package/skills/cloudflare/references/workers-vpc/configuration.md +151 -0
- package/skills/cloudflare/references/workers-vpc/gotchas.md +171 -0
- package/skills/cloudflare/references/workers-vpc/patterns.md +235 -0
- package/skills/cloudflare/references/workflows/README.md +72 -0
- package/skills/cloudflare/references/workflows/api.md +237 -0
- package/skills/cloudflare/references/workflows/configuration.md +158 -0
- package/skills/cloudflare/references/workflows/gotchas.md +97 -0
- package/skills/cloudflare/references/workflows/patterns.md +245 -0
- package/skills/cloudflare/references/wrangler/README.md +143 -0
- package/skills/cloudflare/references/wrangler/api.md +188 -0
- package/skills/cloudflare/references/wrangler/configuration.md +198 -0
- package/skills/cloudflare/references/wrangler/gotchas.md +212 -0
- package/skills/cloudflare/references/wrangler/patterns.md +211 -0
- package/skills/cloudflare/references/zaraz/IMPLEMENTATION_SUMMARY.md +131 -0
- package/skills/cloudflare/references/zaraz/README.md +114 -0
- package/skills/cloudflare/references/zaraz/api.md +118 -0
- package/skills/cloudflare/references/zaraz/configuration.md +94 -0
- package/skills/cloudflare/references/zaraz/gotchas.md +88 -0
- package/skills/cloudflare/references/zaraz/patterns.md +77 -0
- package/skills/docker/SKILL.md +7 -101
- package/skills/docker/references/advanced-examples.md +71 -0
- package/skills/docker/references/templates.md +34 -0
- package/skills/docs-marketer/SKILL.md +178 -0
- package/skills/docs-marketer/references/audit-categories.md +328 -0
- package/skills/docs-marketer/references/copilot-docs-prompts.md +88 -0
- package/skills/docs-marketer/references/copilot-usage.md +16 -0
- package/skills/docs-marketer/references/feedback-loop.md +155 -0
- package/skills/docs-marketer/references/multi-pass-docs-protocol.md +410 -0
- package/skills/drizzle-orm/SKILL.md +82 -0
- package/skills/durable-objects/SKILL.md +167 -0
- package/skills/durable-objects/references/advanced_features.md +29 -0
- package/skills/durable-objects/references/rules.md +300 -0
- package/skills/durable-objects/references/testing.md +261 -0
- package/skills/durable-objects/references/workers.md +336 -0
- package/skills/gcp/SKILL.md +37 -0
- package/skills/github-actions/SKILL.md +5 -58
- package/skills/github-actions/references/templates.md +65 -0
- package/skills/github-commander/SKILL.md +13 -21
- package/skills/github-commander/workflows/copilot-audit.md +12 -12
- package/skills/github-copilot-cli/SKILL.md +21 -26
- package/skills/github-repo-setup/SKILL.md +136 -0
- package/skills/github-repo-setup/references/community-standards.md +136 -0
- package/skills/github-repo-setup/references/github-automation.md +490 -0
- package/skills/github-repo-setup/references/inline-templates.md +205 -0
- package/skills/github-repo-setup/references/project-config.md +320 -0
- package/skills/gitlab/SKILL.md +7 -2
- package/skills/gitlab/package-lock.json +389 -389
- package/skills/golang/SKILL.md +8 -1
- package/skills/graphql/SKILL.md +30 -0
- package/skills/hono/SKILL.md +82 -0
- package/skills/journal-optimizer/SKILL.md +206 -0
- package/skills/journal-optimizer/references/optimizer-scripts.md +169 -0
- package/skills/llm-app-engineering/SKILL.md +18 -0
- package/skills/monorepo/SKILL.md +56 -0
- package/skills/multi-agent-orchestration/SKILL.md +14 -0
- package/skills/mysql/SKILL.md +6 -2
- package/skills/next-best-practices/SKILL.md +86 -0
- package/skills/next-best-practices/references/cache-components-examples.md +234 -0
- package/skills/next-best-practices/references/cache-components.md +210 -0
- package/skills/next-best-practices/references/upgrade-decision-tree.md +33 -0
- package/skills/next-best-practices/references/upgrade.md +43 -0
- package/skills/next-cache-components/SKILL.md +441 -0
- package/skills/next-upgrade/SKILL.md +43 -0
- package/skills/next-upgrade/references/decision-tree.md +33 -0
- package/skills/nodejs/SKILL.md +46 -0
- package/skills/opentelemetry/SKILL.md +62 -0
- package/skills/package.json +39 -4
- package/skills/playwright-standard/SKILL.md +6 -11
- package/skills/playwright-standard/references/locators.md +7 -0
- package/skills/postgres/SKILL.md +6 -1
- package/skills/python/SKILL.md +8 -70
- package/skills/python/references/advanced-patterns.md +37 -0
- package/skills/python/references/config-templates.md +48 -0
- package/skills/rag-pipelines/SKILL.md +14 -0
- package/skills/redis/SKILL.md +31 -0
- package/skills/render/SKILL.md +35 -0
- package/skills/rust/SKILL.md +15 -25
- package/skills/rust/references/borrow-checker.md +13 -0
- package/skills/rust/references/ecosystem.md +11 -0
- package/skills/sandbox-sdk/SKILL.md +186 -0
- package/skills/sandbox-sdk/references/api-quick-ref.md +113 -0
- package/skills/sandbox-sdk/references/examples.md +52 -0
- package/skills/shadcn-ui/SKILL.md +22 -57
- package/skills/skill-builder/SKILL.md +23 -424
- package/skills/skill-builder/references/tutorial.md +457 -0
- package/skills/sqlite/SKILL.md +16 -5
- package/skills/table.md +59 -0
- package/skills/tailwind-css/SKILL.md +11 -60
- package/skills/tailwind-css/references/component-patterns.md +52 -0
- package/skills/trpc/SKILL.md +56 -0
- package/skills/typescript/SKILL.md +30 -433
- package/skills/typescript/references/tutorial.md +453 -0
- package/skills/vercel-ai-sdk/SKILL.md +48 -0
- package/skills/vitest-standard/SKILL.md +5 -11
- package/skills/vitest-standard/references/assertions.md +11 -0
- package/skills/web-perf/SKILL.md +207 -0
- package/skills/workers-best-practices/SKILL.md +120 -0
- package/skills/workers-best-practices/references/anti-patterns.md +18 -0
- package/skills/workers-best-practices/references/review.md +174 -0
- package/skills/workers-best-practices/references/rules.md +485 -0
- package/skills/wrangler/SKILL.md +43 -0
- package/skills/wrangler/references/cli-commands.md +861 -0
- package/skills/zod/SKILL.md +48 -0
- package/dist/tools-P4VGG4FH.js +0 -1
- package/skills/react-best-practices/AGENTS.md +0 -2883
- package/skills/react-best-practices/SKILL.md +0 -138
- /package/skills/{react-best-practices → next-best-practices}/README.md +0 -0
- /package/skills/{react-best-practices → next-best-practices}/metadata.json +0 -0
- /package/skills/{react-best-practices → next-best-practices}/rules/_sections.md +0 -0
- /package/skills/{react-best-practices → next-best-practices}/rules/_template.md +0 -0
- /package/skills/{react-best-practices → next-best-practices}/rules/advanced-event-handler-refs.md +0 -0
- /package/skills/{react-best-practices → next-best-practices}/rules/advanced-init-once.md +0 -0
- /package/skills/{react-best-practices → next-best-practices}/rules/advanced-use-latest.md +0 -0
- /package/skills/{react-best-practices → next-best-practices}/rules/async-api-routes.md +0 -0
- /package/skills/{react-best-practices → next-best-practices}/rules/async-defer-await.md +0 -0
- /package/skills/{react-best-practices → next-best-practices}/rules/async-dependencies.md +0 -0
- /package/skills/{react-best-practices → next-best-practices}/rules/async-parallel.md +0 -0
- /package/skills/{react-best-practices → next-best-practices}/rules/async-suspense-boundaries.md +0 -0
- /package/skills/{react-best-practices → next-best-practices}/rules/bundle-barrel-imports.md +0 -0
- /package/skills/{react-best-practices → next-best-practices}/rules/bundle-conditional.md +0 -0
- /package/skills/{react-best-practices → next-best-practices}/rules/bundle-defer-third-party.md +0 -0
- /package/skills/{react-best-practices → next-best-practices}/rules/bundle-dynamic-imports.md +0 -0
- /package/skills/{react-best-practices → next-best-practices}/rules/bundle-preload.md +0 -0
- /package/skills/{react-best-practices → next-best-practices}/rules/client-event-listeners.md +0 -0
- /package/skills/{react-best-practices → next-best-practices}/rules/client-localstorage-schema.md +0 -0
- /package/skills/{react-best-practices → next-best-practices}/rules/client-passive-event-listeners.md +0 -0
- /package/skills/{react-best-practices → next-best-practices}/rules/client-swr-dedup.md +0 -0
- /package/skills/{react-best-practices → next-best-practices}/rules/js-batch-dom-css.md +0 -0
- /package/skills/{react-best-practices → next-best-practices}/rules/js-cache-function-results.md +0 -0
- /package/skills/{react-best-practices → next-best-practices}/rules/js-cache-property-access.md +0 -0
- /package/skills/{react-best-practices → next-best-practices}/rules/js-cache-storage.md +0 -0
- /package/skills/{react-best-practices → next-best-practices}/rules/js-combine-iterations.md +0 -0
- /package/skills/{react-best-practices → next-best-practices}/rules/js-early-exit.md +0 -0
- /package/skills/{react-best-practices → next-best-practices}/rules/js-hoist-regexp.md +0 -0
- /package/skills/{react-best-practices → next-best-practices}/rules/js-index-maps.md +0 -0
- /package/skills/{react-best-practices → next-best-practices}/rules/js-length-check-first.md +0 -0
- /package/skills/{react-best-practices → next-best-practices}/rules/js-min-max-loop.md +0 -0
- /package/skills/{react-best-practices → next-best-practices}/rules/js-set-map-lookups.md +0 -0
- /package/skills/{react-best-practices → next-best-practices}/rules/js-tosorted-immutable.md +0 -0
- /package/skills/{react-best-practices → next-best-practices}/rules/rendering-activity.md +0 -0
- /package/skills/{react-best-practices → next-best-practices}/rules/rendering-animate-svg-wrapper.md +0 -0
- /package/skills/{react-best-practices → next-best-practices}/rules/rendering-conditional-render.md +0 -0
- /package/skills/{react-best-practices → next-best-practices}/rules/rendering-content-visibility.md +0 -0
- /package/skills/{react-best-practices → next-best-practices}/rules/rendering-hoist-jsx.md +0 -0
- /package/skills/{react-best-practices → next-best-practices}/rules/rendering-hydration-no-flicker.md +0 -0
- /package/skills/{react-best-practices → next-best-practices}/rules/rendering-hydration-suppress-warning.md +0 -0
- /package/skills/{react-best-practices → next-best-practices}/rules/rendering-svg-precision.md +0 -0
- /package/skills/{react-best-practices → next-best-practices}/rules/rendering-usetransition-loading.md +0 -0
- /package/skills/{react-best-practices → next-best-practices}/rules/rerender-defer-reads.md +0 -0
- /package/skills/{react-best-practices → next-best-practices}/rules/rerender-dependencies.md +0 -0
- /package/skills/{react-best-practices → next-best-practices}/rules/rerender-derived-state-no-effect.md +0 -0
- /package/skills/{react-best-practices → next-best-practices}/rules/rerender-derived-state.md +0 -0
- /package/skills/{react-best-practices → next-best-practices}/rules/rerender-functional-setstate.md +0 -0
- /package/skills/{react-best-practices → next-best-practices}/rules/rerender-lazy-state-init.md +0 -0
- /package/skills/{react-best-practices → next-best-practices}/rules/rerender-memo-with-default-value.md +0 -0
- /package/skills/{react-best-practices → next-best-practices}/rules/rerender-memo.md +0 -0
- /package/skills/{react-best-practices → next-best-practices}/rules/rerender-move-effect-to-event.md +0 -0
- /package/skills/{react-best-practices → next-best-practices}/rules/rerender-simple-expression-in-memo.md +0 -0
- /package/skills/{react-best-practices → next-best-practices}/rules/rerender-transitions.md +0 -0
- /package/skills/{react-best-practices → next-best-practices}/rules/rerender-use-ref-transient-values.md +0 -0
- /package/skills/{react-best-practices → next-best-practices}/rules/server-after-nonblocking.md +0 -0
- /package/skills/{react-best-practices → next-best-practices}/rules/server-auth-actions.md +0 -0
- /package/skills/{react-best-practices → next-best-practices}/rules/server-cache-lru.md +0 -0
- /package/skills/{react-best-practices → next-best-practices}/rules/server-cache-react.md +0 -0
- /package/skills/{react-best-practices → next-best-practices}/rules/server-dedup-props.md +0 -0
- /package/skills/{react-best-practices → next-best-practices}/rules/server-parallel-fetching.md +0 -0
- /package/skills/{react-best-practices → next-best-practices}/rules/server-serialization.md +0 -0
package/skills/golang/SKILL.md
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: golang
|
|
3
3
|
description: |
|
|
4
|
-
Master Go development using production-grade best practices merged from the Google and Uber style guides. Use whenever writing Go
|
|
4
|
+
Master Go development using production-grade best practices merged from the Google and Uber style guides. Use whenever writing backend Go microservices, designing APIs, handling errors, managing goroutines, or configuring linters.
|
|
5
|
+
Keywords: channels, context propagation, go.mod, Go generics. Do NOT trigger for generic 'build a server' requests unless the platform/language is explicitly specified as Go/Golang.
|
|
5
6
|
---
|
|
6
7
|
|
|
7
8
|
# Golang Engineering Standards
|
|
@@ -52,3 +53,9 @@ This skill synthesizes the absolute best practices from the ecosystem (Uber Guid
|
|
|
52
53
|
## 7. Tooling & Enforcement
|
|
53
54
|
|
|
54
55
|
- The agent should prioritize running `go fmt ./...` and `golangci-lint run` (if available) before confirming code completion.
|
|
56
|
+
|
|
57
|
+
## 8. Security
|
|
58
|
+
|
|
59
|
+
- **Command Injection**: Sanitize all inputs to `exec.Command`. Never pass unsanitized user input to the shell.
|
|
60
|
+
- **SQL Injection**: Always use parameterized queries (e.g. `db.QueryRow("SELECT * FROM users WHERE id = ?", id)`).
|
|
61
|
+
- **Path Traversal**: Validate and clean paths using `filepath.Clean` before `filepath.Join` to prevent directory escape vulnerabilities.
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: graphql
|
|
3
|
+
description: |
|
|
4
|
+
GraphQL best practices. Use when designing GraphQL schemas, writing resolvers, handling mutations, avoiding N+1 query problems (DataLoader), or configuring GraphQL servers. NOT for REST APIs, generic database design, or ORM setups.
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# GraphQL Best Practices
|
|
8
|
+
|
|
9
|
+
Standards for designing and implementing GraphQL APIs.
|
|
10
|
+
|
|
11
|
+
## 1. Schema Design
|
|
12
|
+
|
|
13
|
+
- **Business Logic Isolation**: Do not write business logic inside resolvers. Resolvers should only extract arguments and pass them to dedicated service/domain layer functions.
|
|
14
|
+
- **Nullability**: Be mindful of non-null (`!`) fields. Only mark fields as non-null if you are absolutely certain they will never be missing, as a single null in a non-null field will bubble up and destroy the entire parent object.
|
|
15
|
+
- **Custom Scalars**: Use custom scalars (e.g., `DateTime`, `Email`) to enforce type constraints at the schema level instead of raw `String`.
|
|
16
|
+
|
|
17
|
+
## 2. Mutations
|
|
18
|
+
|
|
19
|
+
- **Input Types**: Use a single, required `input` object argument for mutations instead of passing many individual arguments.
|
|
20
|
+
- **Payload Types**: Return a specific payload type (e.g., `UpdateUserPayload`) that includes the mutated object and any potential operation-specific errors, rather than just returning the object.
|
|
21
|
+
|
|
22
|
+
## 3. Performance (N+1 Problem)
|
|
23
|
+
|
|
24
|
+
- **DataLoader**: ALWAYS use Facebook's `dataloader` pattern (or equivalent) to batch and cache database requests for nested relationships. Never loop and await queries inside child resolvers.
|
|
25
|
+
- **Query Complexity**: Implement query complexity limits or depth limits on your GraphQL server to prevent malicious or accidental resource exhaustion.
|
|
26
|
+
|
|
27
|
+
## 4. Error Handling
|
|
28
|
+
|
|
29
|
+
- Use the standard `errors` array for unexpected exceptions.
|
|
30
|
+
- For business logic errors (e.g., "Email already taken"), model them as Union types in your schema (e.g., `union CreateUserResult = User | EmailAlreadyTakenError`) so clients can handle them gracefully.
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: hono
|
|
3
|
+
description: |
|
|
4
|
+
Hono framework best practices. Use when building, reviewing, or debugging Hono applications, especially on Cloudflare Workers. Covers routing, middleware, context (c), and RPC patterns. Do NOT trigger for generic 'build a server' requests unless Hono or Cloudflare Workers is explicitly requested.
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Hono Framework Guidelines
|
|
8
|
+
|
|
9
|
+
This skill defines the standards for building ultra-fast web applications using Hono, primarily targeted at edge runtimes like Cloudflare Workers.
|
|
10
|
+
|
|
11
|
+
## 1. Core Principles
|
|
12
|
+
|
|
13
|
+
- **Standard Request/Response**: Hono is built on Web Standards. Familiarize yourself with standard `Request` and `Response` objects.
|
|
14
|
+
- **Context (`c`)**: The `Context` object is central to Hono. It wraps the request, response, and environment bindings.
|
|
15
|
+
- **Middleware-First**: Prefer composing small, focused middleware over large handler functions.
|
|
16
|
+
- **RPC (`hono/client`)**: Use Hono's RPC feature for end-to-end type safety between backend routes and frontend clients.
|
|
17
|
+
|
|
18
|
+
## 2. Environment Variables & Bindings (Cloudflare Workers)
|
|
19
|
+
|
|
20
|
+
Always strictly type your environment bindings for Cloudflare Workers.
|
|
21
|
+
|
|
22
|
+
```typescript
|
|
23
|
+
import { Hono } from 'hono'
|
|
24
|
+
|
|
25
|
+
type Bindings = {
|
|
26
|
+
DB: D1Database
|
|
27
|
+
API_KEY: string
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
const app = new Hono<{ Bindings: Bindings }>()
|
|
31
|
+
|
|
32
|
+
app.get('/', (c) => {
|
|
33
|
+
const db = c.env.DB
|
|
34
|
+
return c.text('Hello Hono!')
|
|
35
|
+
})
|
|
36
|
+
```
|
|
37
|
+
|
|
38
|
+
## 3. Middleware Usage
|
|
39
|
+
|
|
40
|
+
Always use the built-in middleware for common tasks.
|
|
41
|
+
|
|
42
|
+
- `cors()` for CORS.
|
|
43
|
+
- `secureHeaders()` for security headers.
|
|
44
|
+
- `logger()` for request logging.
|
|
45
|
+
|
|
46
|
+
```typescript
|
|
47
|
+
import { cors } from 'hono/cors'
|
|
48
|
+
import { secureHeaders } from 'hono/secure-headers'
|
|
49
|
+
|
|
50
|
+
app.use('*', cors())
|
|
51
|
+
app.use('*', secureHeaders())
|
|
52
|
+
```
|
|
53
|
+
|
|
54
|
+
## 4. Routing & Validation
|
|
55
|
+
|
|
56
|
+
Use `zodValidator` from `@hono/zod-validator` to validate inputs securely.
|
|
57
|
+
|
|
58
|
+
```typescript
|
|
59
|
+
import { zValidator } from '@hono/zod-validator'
|
|
60
|
+
import { z } from 'zod'
|
|
61
|
+
|
|
62
|
+
app.post(
|
|
63
|
+
'/post',
|
|
64
|
+
zValidator(
|
|
65
|
+
'json',
|
|
66
|
+
z.object({
|
|
67
|
+
title: z.string(),
|
|
68
|
+
body: z.string(),
|
|
69
|
+
})
|
|
70
|
+
),
|
|
71
|
+
(c) => {
|
|
72
|
+
const { title, body } = c.req.valid('json')
|
|
73
|
+
return c.json({ title, body })
|
|
74
|
+
}
|
|
75
|
+
)
|
|
76
|
+
```
|
|
77
|
+
|
|
78
|
+
## 5. Security Gates
|
|
79
|
+
|
|
80
|
+
- **Input Validation**: Never trust client input. Always validate using Zod.
|
|
81
|
+
- **Secrets**: Do not hardcode secrets. Always use `c.env`.
|
|
82
|
+
- **SQL Injection**: When using D1 or SQLite, always use parameterized queries or an ORM like Drizzle. Never concatenate user input into SQL strings.
|
|
@@ -0,0 +1,206 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: journal-optimizer
|
|
3
|
+
description: |
|
|
4
|
+
Guided database pruning and optimization workflows for memory-journal-mcp.
|
|
5
|
+
Uses importance scores, relationship density, and entry metadata to identify
|
|
6
|
+
low-value entries for safe soft-deletion. Includes dry-run previews, backup
|
|
7
|
+
gates, and revert guidance. Use when the user says "clean up the database",
|
|
8
|
+
"optimize entries", "prune old entries", "database maintenance",
|
|
9
|
+
"what entries can I delete?", "my journal is getting too big", or "archive old entries".
|
|
10
|
+
---
|
|
11
|
+
|
|
12
|
+
# Journal Optimizer
|
|
13
|
+
|
|
14
|
+
Guided workflows for intelligently pruning, cleaning, and optimizing a
|
|
15
|
+
memory-journal-mcp database. Every operation uses the soft-delete system
|
|
16
|
+
as a safe first pass — entries remain recoverable via `restore_backup`
|
|
17
|
+
until explicitly purged.
|
|
18
|
+
|
|
19
|
+
## Prerequisites
|
|
20
|
+
|
|
21
|
+
The following tool groups must be enabled:
|
|
22
|
+
|
|
23
|
+
| Group | Required Tools | Purpose |
|
|
24
|
+
| --------------- | ----------------------------------------------------------- | ------------------------------ |
|
|
25
|
+
| `admin` | `delete_entry`, `update_entry` | Soft-delete entries |
|
|
26
|
+
| `analytics` | `get_statistics` | Importance scores, graph stats |
|
|
27
|
+
| `search` | `search_entries`, `search_by_date_range`, `semantic_search` | Find candidates |
|
|
28
|
+
| `backup` | `backup_journal`, `list_backups`, `restore_backup` | Safety net |
|
|
29
|
+
| `codemode` | `mj_execute_code` | Batch operations |
|
|
30
|
+
| `relationships` | `visualize_relationships` | Orphan detection |
|
|
31
|
+
|
|
32
|
+
If any required group is missing, inform the user and suggest adding it
|
|
33
|
+
via `--tool-filter` or `MEMORY_JOURNAL_MCP_TOOL_FILTER`.
|
|
34
|
+
|
|
35
|
+
## Importance Score Reference
|
|
36
|
+
|
|
37
|
+
The server computes importance scores (0.0–1.0) for every entry using
|
|
38
|
+
a weighted formula. Understanding this formula is essential for making
|
|
39
|
+
intelligent pruning decisions.
|
|
40
|
+
|
|
41
|
+
### Formula
|
|
42
|
+
|
|
43
|
+
| Component | Weight | Max Score | How It's Earned |
|
|
44
|
+
| ----------------- | ------ | --------- | ---------------------------------------------------------------------- |
|
|
45
|
+
| **Significance** | 0.30 | 0.30 | Entry has a `significance_type` (milestone, decision, release, etc.) |
|
|
46
|
+
| **Relationships** | 0.35 | 0.35 | Entry has ≥5 relationships (linear scale: 1 rel = 0.07) |
|
|
47
|
+
| **Causal** | 0.20 | 0.20 | Entry has ≥3 causal relationships (`blocked_by`, `resolved`, `caused`) |
|
|
48
|
+
| **Recency** | 0.15 | 0.15 | Created within the last 90 days (linear decay to 0 at day 90) |
|
|
49
|
+
|
|
50
|
+
### Threshold Guide
|
|
51
|
+
|
|
52
|
+
| Score | Label | Meaning |
|
|
53
|
+
| ----------- | ---------- | -------------------------------------------------------- |
|
|
54
|
+
| `0.00` | Expendable | No significance, no relationships, older than 90 days |
|
|
55
|
+
| `0.01–0.14` | Low | Minimal context — weak tags or a single old relationship |
|
|
56
|
+
| `0.15–0.29` | Moderate | Has some context but not structurally important |
|
|
57
|
+
| `0.30–0.49` | High | Well-connected or has significance markers |
|
|
58
|
+
| `0.50+` | Critical | Major decisions, densely linked entries, milestones |
|
|
59
|
+
|
|
60
|
+
> **Key insight**: Entries scoring `0.00` have zero structural value to the
|
|
61
|
+
> knowledge graph. They are safe to soft-delete in virtually all cases.
|
|
62
|
+
> Entries scoring `0.01–0.14` should be reviewed individually.
|
|
63
|
+
|
|
64
|
+
## Safety Rules
|
|
65
|
+
|
|
66
|
+
These rules are **mandatory** for all workflows:
|
|
67
|
+
|
|
68
|
+
1. **NEVER** use `permanent: true` unless the user explicitly says
|
|
69
|
+
"permanent delete" or "hard delete"
|
|
70
|
+
2. **ALWAYS** call `backup_journal` before any batch delete — abort if
|
|
71
|
+
the backup fails
|
|
72
|
+
3. **ALWAYS** show the user what will be deleted before deleting
|
|
73
|
+
4. **NEVER** delete entries with `significance_type` set without explicit
|
|
74
|
+
user approval, regardless of other scores
|
|
75
|
+
5. **Maximum batch size**: 50 entries per operation to prevent accidental
|
|
76
|
+
mass deletion
|
|
77
|
+
6. **Log all cleanup operations** as a journal entry with
|
|
78
|
+
`entry_type: 'maintenance'` and tag `database-optimizer`
|
|
79
|
+
|
|
80
|
+
## Safe Deletion Protocol
|
|
81
|
+
|
|
82
|
+
For all destructive workflows (2–5), execute this exact sequence once the candidate list is prepared:
|
|
83
|
+
|
|
84
|
+
1. **HITL Gate**: Ask the user to confirm the exact candidate list.
|
|
85
|
+
2. **Backup**: Call `backup_journal`. **ABORT** immediately if the backup fails.
|
|
86
|
+
3. **Execute**: Run the soft-delete batch script for the specific workflow (see [references/optimizer-scripts.md](references/optimizer-scripts.md)).
|
|
87
|
+
4. **Log & Report**: Log a maintenance entry and provide revert instructions.
|
|
88
|
+
|
|
89
|
+
---
|
|
90
|
+
|
|
91
|
+
## Workflow 1: Importance Audit (Dry Run)
|
|
92
|
+
|
|
93
|
+
Analyze the database to surface low-importance entries without modifying anything. This is the recommended starting point for all optimization work.
|
|
94
|
+
|
|
95
|
+
### Steps
|
|
96
|
+
|
|
97
|
+
**Step 1 & 2 — Gather stats and score entries:**
|
|
98
|
+
_Read and execute the Workflow 1 code block in [references/optimizer-scripts.md](references/optimizer-scripts.md)._
|
|
99
|
+
|
|
100
|
+
**Step 3 — Present results:**
|
|
101
|
+
|
|
102
|
+
Render the distribution as a table:
|
|
103
|
+
|
|
104
|
+
| Tier | Count | Action |
|
|
105
|
+
| -------------------- | ----- | --------------------------------------- |
|
|
106
|
+
| Critical (≥0.50) | N | Keep — these are structural anchors |
|
|
107
|
+
| High (0.30–0.49) | N | Keep — well-connected entries |
|
|
108
|
+
| Moderate (0.15–0.29) | N | Review individually if space is needed |
|
|
109
|
+
| Low (0.01–0.14) | N | Candidates for cleanup with user review |
|
|
110
|
+
| Expendable (0.00) | N | Safe to soft-delete |
|
|
111
|
+
|
|
112
|
+
Show the expendable sample with IDs, types, ages, and snippets.
|
|
113
|
+
Ask the user which tier(s) they want to target for cleanup.
|
|
114
|
+
|
|
115
|
+
---
|
|
116
|
+
|
|
117
|
+
## Workflow 2: Targeted Cleanup (Interactive)
|
|
118
|
+
|
|
119
|
+
Soft-delete entries matching user-selected criteria from the audit.
|
|
120
|
+
|
|
121
|
+
### Steps
|
|
122
|
+
|
|
123
|
+
1. Run **Workflow 1** if not already completed this session.
|
|
124
|
+
2. Present the candidate list with importance breakdowns.
|
|
125
|
+
3. Execute the **Safe Deletion Protocol** for user-selected entries.
|
|
126
|
+
|
|
127
|
+
---
|
|
128
|
+
|
|
129
|
+
## Workflow 3: Orphan Cleanup
|
|
130
|
+
|
|
131
|
+
Find and soft-delete entries with zero relationships.
|
|
132
|
+
|
|
133
|
+
### Steps
|
|
134
|
+
|
|
135
|
+
1. Retrieve orphaned statistics and entries:
|
|
136
|
+
_Read and execute the Workflow 3 code block in [references/optimizer-scripts.md](references/optimizer-scripts.md)._
|
|
137
|
+
2. Present the orphan list. Flag any with `significance_type` set — these should NOT be deleted without explicit approval.
|
|
138
|
+
3. Execute the **Safe Deletion Protocol**.
|
|
139
|
+
|
|
140
|
+
> **Alternative to deletion**: For orphans that have value but lack connections, suggest using `link_entries` to connect them to related entries instead of deleting them.
|
|
141
|
+
|
|
142
|
+
---
|
|
143
|
+
|
|
144
|
+
## Workflow 4: Duplicate Detection
|
|
145
|
+
|
|
146
|
+
> **WARN: High tool-call budget** — This workflow executes an N×N semantic search loop. Limit the search set to 50 entries to avoid exhausting rate limits.
|
|
147
|
+
|
|
148
|
+
Find entries with semantically similar content that may be redundant.
|
|
149
|
+
|
|
150
|
+
### Steps
|
|
151
|
+
|
|
152
|
+
1. Identify candidate duplicates using semantic search:
|
|
153
|
+
_Read and execute the Workflow 4 code block in [references/optimizer-scripts.md](references/optimizer-scripts.md)._
|
|
154
|
+
2. Present duplicate pairs side-by-side with recommendations.
|
|
155
|
+
3. Execute the **Safe Deletion Protocol** (targeting the lower-scoring entry of each pair).
|
|
156
|
+
|
|
157
|
+
> **Note**: Semantic search requires the vector index. If `get_vector_index_stats` shows zero indexed entries, suggest running `rebuild_vector_index` first.
|
|
158
|
+
|
|
159
|
+
---
|
|
160
|
+
|
|
161
|
+
## Workflow 5: Type-Based Cleanup
|
|
162
|
+
|
|
163
|
+
Clean up entries by `entry_type` — useful for removing bulk categories that were misclassified or have outlived their usefulness.
|
|
164
|
+
|
|
165
|
+
### Steps
|
|
166
|
+
|
|
167
|
+
1. Aggregate entry counts by type using `mj.analytics.getStatistics()`.
|
|
168
|
+
2. Present the type breakdown. Flag commonly low-value types (`personal_reflection`, `retrospective`, `note`).
|
|
169
|
+
3. User selects which types to target and an age threshold.
|
|
170
|
+
4. Preview matching entries:
|
|
171
|
+
_Read and execute the Workflow 5 code block in [references/optimizer-scripts.md](references/optimizer-scripts.md)._
|
|
172
|
+
5. Execute the **Safe Deletion Protocol**.
|
|
173
|
+
|
|
174
|
+
---
|
|
175
|
+
|
|
176
|
+
## Revert Guide
|
|
177
|
+
|
|
178
|
+
Every workflow creates a backup before mutations. To revert:
|
|
179
|
+
_Follow the restoration commands in [references/optimizer-scripts.md](references/optimizer-scripts.md)._
|
|
180
|
+
|
|
181
|
+
> **Important**: Soft-deleted entries are physically present but excluded from queries. They are only permanently removed via `permanent: true`, restoring an old backup, or rebuilding from an export.
|
|
182
|
+
|
|
183
|
+
---
|
|
184
|
+
|
|
185
|
+
## Post-Optimization
|
|
186
|
+
|
|
187
|
+
After completing any workflow, recommend these follow-up actions:
|
|
188
|
+
|
|
189
|
+
1. **Rebuild the vector index** to remove stale embeddings:
|
|
190
|
+
`rebuild_vector_index`
|
|
191
|
+
2. **Run a statistics check** to verify the database health:
|
|
192
|
+
`get_statistics`
|
|
193
|
+
3. **Log the optimization** as a journal entry for audit trail
|
|
194
|
+
4. **Review relationship density** — if density dropped below 2.0,
|
|
195
|
+
consider linking remaining orphans to related entries
|
|
196
|
+
|
|
197
|
+
## Synergies
|
|
198
|
+
|
|
199
|
+
| Tool/Workflow | Relationship |
|
|
200
|
+
| ---------------------- | ------------------------------------------------------------------ |
|
|
201
|
+
| Auto-Prune (startup) | Automated version of Workflow 2 with fixed thresholds |
|
|
202
|
+
| `get_statistics` | Primary data source for importance scores and graph metrics |
|
|
203
|
+
| `backup_journal` | Safety gate for all destructive operations |
|
|
204
|
+
| `restore_backup` | Revert mechanism for soft-deleted entries |
|
|
205
|
+
| `rebuild_vector_index` | Post-cleanup maintenance to clean stale embeddings |
|
|
206
|
+
| `link_entries` | Alternative to deletion — connect orphans instead of removing them |
|
|
@@ -0,0 +1,169 @@
|
|
|
1
|
+
# Journal Optimizer Scripts
|
|
2
|
+
|
|
3
|
+
Reference implementations for the workflows defined in `SKILL.md`. Use these code blocks via `mj_execute_code` when conducting database optimization.
|
|
4
|
+
|
|
5
|
+
## Workflow 1: Importance Audit
|
|
6
|
+
|
|
7
|
+
**Step 1 & 2 — Gather statistics and score entries:**
|
|
8
|
+
|
|
9
|
+
```javascript
|
|
10
|
+
const s = await mj.analytics.getStatistics()
|
|
11
|
+
const all = await mj.core.getRecentEntries({ limit: 500 })
|
|
12
|
+
const tiers = { critical: [], high: [], moderate: [], low: [], expendable: [] }
|
|
13
|
+
|
|
14
|
+
for (const e of all.entries) {
|
|
15
|
+
const score = e.importanceScore ?? 0
|
|
16
|
+
if (score >= 0.5) tiers.critical.push(e)
|
|
17
|
+
else if (score >= 0.3) tiers.high.push(e)
|
|
18
|
+
else if (score >= 0.15) tiers.moderate.push(e)
|
|
19
|
+
else if (score > 0) tiers.low.push(e)
|
|
20
|
+
else tiers.expendable.push(e)
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
return {
|
|
24
|
+
total: s.totalEntries,
|
|
25
|
+
density: s.relationshipComplexity?.avgPerEntry,
|
|
26
|
+
types: s.entriesByType,
|
|
27
|
+
distribution: Object.fromEntries(Object.entries(tiers).map(([k, v]) => [k, v.length])),
|
|
28
|
+
expendableSample: tiers.expendable.slice(0, 10).map((e) => ({
|
|
29
|
+
id: e.id,
|
|
30
|
+
type: e.entryType,
|
|
31
|
+
tags: e.tags,
|
|
32
|
+
age: Math.floor((Date.now() - new Date(e.timestamp).getTime()) / 86400000) + 'd',
|
|
33
|
+
snippet: e.content.substring(0, 80),
|
|
34
|
+
})),
|
|
35
|
+
lowSample: tiers.low.slice(0, 5).map((e) => ({
|
|
36
|
+
id: e.id,
|
|
37
|
+
score: e.importanceScore,
|
|
38
|
+
type: e.entryType,
|
|
39
|
+
snippet: e.content.substring(0, 80),
|
|
40
|
+
})),
|
|
41
|
+
}
|
|
42
|
+
```
|
|
43
|
+
|
|
44
|
+
## Workflow 2: Targeted Cleanup
|
|
45
|
+
|
|
46
|
+
**Execute soft-delete batch:**
|
|
47
|
+
|
|
48
|
+
```javascript
|
|
49
|
+
const ids = [
|
|
50
|
+
/* user-approved IDs */
|
|
51
|
+
]
|
|
52
|
+
const backup = await mj.backup.backupJournal()
|
|
53
|
+
if (!backup.success) return { error: 'Backup failed — aborting', backup }
|
|
54
|
+
|
|
55
|
+
const results = []
|
|
56
|
+
for (const id of ids) {
|
|
57
|
+
const r = await mj.admin.deleteEntry({ entry_id: id })
|
|
58
|
+
results.push({ id, success: r.success })
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
const ok = results.filter((r) => r.success).length
|
|
62
|
+
const fail = results.filter((r) => !r.success).length
|
|
63
|
+
|
|
64
|
+
await mj.core.createEntry({
|
|
65
|
+
content: `Database optimization: soft-deleted ${ok} entries (batch). Backup: ${backup.filename}`,
|
|
66
|
+
entry_type: 'maintenance',
|
|
67
|
+
tags: ['database-optimizer', 'cleanup'],
|
|
68
|
+
})
|
|
69
|
+
|
|
70
|
+
return { deleted: ok, failed: fail, backupFile: backup.filename }
|
|
71
|
+
```
|
|
72
|
+
|
|
73
|
+
## Workflow 3: Orphan Cleanup
|
|
74
|
+
|
|
75
|
+
**Get statistics and retrieve orphaned entries:**
|
|
76
|
+
|
|
77
|
+
```javascript
|
|
78
|
+
const s = await mj.analytics.getStatistics()
|
|
79
|
+
const all = await mj.core.getRecentEntries({ limit: 500, sort_by: 'importance' })
|
|
80
|
+
const orphans = all.entries.filter((e) => Object.keys(e.relationships || {}).length === 0)
|
|
81
|
+
return {
|
|
82
|
+
total: s.totalEntries,
|
|
83
|
+
orphans: orphans.slice(0, 50).map((e) => ({
|
|
84
|
+
id: e.id,
|
|
85
|
+
type: e.entryType,
|
|
86
|
+
tags: e.tags,
|
|
87
|
+
significance: e.significanceType,
|
|
88
|
+
age: Math.floor((Date.now() - new Date(e.timestamp).getTime()) / 86400000) + 'd',
|
|
89
|
+
snippet: e.content.substring(0, 80),
|
|
90
|
+
})),
|
|
91
|
+
}
|
|
92
|
+
```
|
|
93
|
+
|
|
94
|
+
## Workflow 4: Duplicate Detection
|
|
95
|
+
|
|
96
|
+
**Identify candidate duplicates:**
|
|
97
|
+
|
|
98
|
+
```javascript
|
|
99
|
+
const recent = await mj.core.getRecentEntries({ limit: 50 })
|
|
100
|
+
const candidates = []
|
|
101
|
+
|
|
102
|
+
for (const entry of recent.entries) {
|
|
103
|
+
const similar = await mj.search.semanticSearch({
|
|
104
|
+
query: entry.content.substring(0, 200),
|
|
105
|
+
limit: 5,
|
|
106
|
+
})
|
|
107
|
+
for (const match of similar.entries) {
|
|
108
|
+
if (match.id !== entry.id && match.similarity > 0.85) {
|
|
109
|
+
candidates.push({
|
|
110
|
+
entryA: {
|
|
111
|
+
id: entry.id,
|
|
112
|
+
score: entry.importanceScore,
|
|
113
|
+
snippet: entry.content.substring(0, 60),
|
|
114
|
+
},
|
|
115
|
+
entryB: {
|
|
116
|
+
id: match.id,
|
|
117
|
+
score: match.importanceScore,
|
|
118
|
+
snippet: match.content.substring(0, 60),
|
|
119
|
+
},
|
|
120
|
+
similarity: match.similarity,
|
|
121
|
+
})
|
|
122
|
+
}
|
|
123
|
+
}
|
|
124
|
+
}
|
|
125
|
+
|
|
126
|
+
const seen = new Set()
|
|
127
|
+
const unique = candidates.filter((c) => {
|
|
128
|
+
const key = [Math.min(c.entryA.id, c.entryB.id), Math.max(c.entryA.id, c.entryB.id)].join('-')
|
|
129
|
+
if (seen.has(key)) return false
|
|
130
|
+
seen.add(key)
|
|
131
|
+
return true
|
|
132
|
+
})
|
|
133
|
+
|
|
134
|
+
return { duplicatePairs: unique.length, pairs: unique.slice(0, 15) }
|
|
135
|
+
```
|
|
136
|
+
|
|
137
|
+
## Workflow 5: Type-Based Cleanup
|
|
138
|
+
|
|
139
|
+
**Preview matching entries:**
|
|
140
|
+
|
|
141
|
+
```javascript
|
|
142
|
+
const cutoff = new Date()
|
|
143
|
+
cutoff.setDate(cutoff.getDate() - 30) // user-specified days
|
|
144
|
+
const matches = await mj.search.searchByDateRange({
|
|
145
|
+
start_date: '2020-01-01',
|
|
146
|
+
end_date: cutoff.toISOString().split('T')[0],
|
|
147
|
+
entry_type: 'personal_reflection',
|
|
148
|
+
limit: 100, // Update type as needed
|
|
149
|
+
})
|
|
150
|
+
return matches.entries.map((e) => ({
|
|
151
|
+
id: e.id,
|
|
152
|
+
score: e.importanceScore,
|
|
153
|
+
tags: e.tags,
|
|
154
|
+
snippet: e.content.substring(0, 80),
|
|
155
|
+
}))
|
|
156
|
+
```
|
|
157
|
+
|
|
158
|
+
## Revert Guide
|
|
159
|
+
|
|
160
|
+
**Find and restore backup:**
|
|
161
|
+
|
|
162
|
+
```javascript
|
|
163
|
+
// Step 1: list backups
|
|
164
|
+
const backups = await mj.backup.listBackups()
|
|
165
|
+
console.log(backups.backups)
|
|
166
|
+
|
|
167
|
+
// Step 2: restore (uncomment and supply filename)
|
|
168
|
+
// await mj.backup.restoreBackup({ filename: 'pre-cleanup-backup-TIMESTAMP.db' });
|
|
169
|
+
```
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: llm-app-engineering
|
|
3
|
+
description: |
|
|
4
|
+
Master modern LLM application engineering patterns. Use when designing prompt chains, evaluating output quality, managing token limits, streaming responses, or integrating LLMs into full-stack applications. SECURITY: Always sanitize user input before passing to LLM prompts to prevent prompt injection.
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# LLM App Engineering
|
|
8
|
+
|
|
9
|
+
Core principles for building robust LLM applications.
|
|
10
|
+
|
|
11
|
+
## Key Patterns
|
|
12
|
+
|
|
13
|
+
- **Prompt Engineering**: Use few-shot, chain-of-thought, and clear system instructions.
|
|
14
|
+
- **Context Window Management**: Do not blindly append history to prompts. Implement sliding windows, summarization hooks, or token-based pruning to keep inputs within context limits and ensure high recall for recent instructions.
|
|
15
|
+
- **Token Management**: Track usage, handle limits gracefully, and summarize context dynamically.
|
|
16
|
+
- **Structured Outputs**: Always force structured outputs (e.g., JSON) using schema-guided generation or strict function calling rather than relying on prompt engineering to "ask nicely for JSON".
|
|
17
|
+
- **Streaming**: Always stream responses for perceived performance improvements in UX.
|
|
18
|
+
- **Evaluations (Evals)**: Build automated eval pipelines for your prompts to catch regressions. Do not rely solely on human vibe checks. Implement automated deterministic evals (e.g., regex matching, JSON validation) and LLM-as-a-judge evals for semantic quality.
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: monorepo
|
|
3
|
+
description: |
|
|
4
|
+
Monorepo architecture and configuration standards. Use when working with Turborepo, pnpm workspaces, npm workspaces, or configuring shared packages, tsconfig bases, and internal dependencies. NOT for generic package management or single-package repositories. Require explicit monorepo context.
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Monorepo Standards
|
|
8
|
+
|
|
9
|
+
Monorepos organize multiple applications and packages in a single repository, but require strict configuration to avoid dependency hell and build-time bottlenecks.
|
|
10
|
+
|
|
11
|
+
## 1. Workspace Configuration (pnpm workspaces)
|
|
12
|
+
|
|
13
|
+
- **Root Definition**: Define the `pnpm-workspace.yaml` explicitly at the root, separating applications (`apps/*`) from internal libraries (`packages/*`).
|
|
14
|
+
- **Internal Dependencies**: Link internal packages using the `workspace:*` protocol. This ensures that the package manager resolves to the local source rather than attempting to fetch from the npm registry.
|
|
15
|
+
|
|
16
|
+
```json
|
|
17
|
+
{
|
|
18
|
+
"dependencies": {
|
|
19
|
+
"@my-org/ui": "workspace:*",
|
|
20
|
+
"@my-org/tsconfig": "workspace:*"
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
## 2. Turborepo Configuration
|
|
26
|
+
|
|
27
|
+
- **Pipeline Definition**: Define dependencies in `turbo.json`. Ensure `build` depends on `^build` (meaning a package's build step waits for its dependencies to build first).
|
|
28
|
+
- **Caching**: Ensure `outputs` are correctly defined for cache hits (e.g., `.next/**`, `dist/**`).
|
|
29
|
+
- **Dev Tasks**: The `dev` task should typically be configured as `persistent: true` since it starts a long-running server.
|
|
30
|
+
|
|
31
|
+
```json
|
|
32
|
+
{
|
|
33
|
+
"$schema": "https://turbo.build/schema.json",
|
|
34
|
+
"tasks": {
|
|
35
|
+
"build": {
|
|
36
|
+
"dependsOn": ["^build"],
|
|
37
|
+
"outputs": ["dist/**", ".next/**"]
|
|
38
|
+
},
|
|
39
|
+
"dev": {
|
|
40
|
+
"cache": false,
|
|
41
|
+
"persistent": true
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
## 3. Shared Configurations
|
|
48
|
+
|
|
49
|
+
- **Shared TSConfig**: Create a `packages/tsconfig` containing `base.json`, `nextjs.json`, and `react-library.json`. Applications should extend these rather than duplicating compiler options.
|
|
50
|
+
- **Shared ESLint/Prettier**: Centralize linting rules in a `packages/eslint-config` workspace to guarantee consistency across all apps.
|
|
51
|
+
- **Entrypoints**: Use `"main"`, `"module"`, and `"types"` fields in `package.json` correctly for shared packages. Alternatively, rely on modern bundlers and Next.js transpile packages to consume raw TypeScript (`src/index.ts`).
|
|
52
|
+
|
|
53
|
+
## 4. CI/CD Integration
|
|
54
|
+
|
|
55
|
+
- **Remote Caching**: Always enable Vercel Remote Caching or an equivalent remote cache in CI to drastically reduce build times for unmodified packages.
|
|
56
|
+
- **Affected Builds**: Use `--filter` commands (`turbo run build --filter=...[origin/main]`) to only test and build packages that changed in the current PR.
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: multi-agent-orchestration
|
|
3
|
+
description: |
|
|
4
|
+
Patterns for multi-agent systems and agentic workflows. Use when designing systems where multiple AI agents collaborate, delegate tasks, or follow structured workflows (e.g. Plan-and-Execute).
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Multi-Agent Orchestration
|
|
8
|
+
|
|
9
|
+
## Architectural Patterns
|
|
10
|
+
|
|
11
|
+
- **Supervisor Pattern**: A top-level agent routes tasks to specialized worker agents. In a multi-agent setup, designate a Supervisor agent responsible for delegating sub-tasks to worker agents and synthesizing their final outputs.
|
|
12
|
+
- **Plan-and-Execute**: One agent plans steps, others execute, and a reviewer validates. For complex tasks, separate the planning phase (using a high-reasoning model) from the execution phase (using faster, specialized models or tools).
|
|
13
|
+
- **Tool Use**: Agents should have narrowly scoped, deterministic tools to interact with the environment. Worker agents should have the minimum tools required (Principle of Least Privilege). Do not give every agent access to file deletion or database writes.
|
|
14
|
+
- **State Management**: Use persistent state (e.g., graphs) to track the conversation and execution flow. Use graph-based state machines (e.g., LangGraph) to model agent interactions as predictable state transitions with explicit human-in-the-loop (HITL) checkpoints for destructive actions.
|
package/skills/mysql/SKILL.md
CHANGED
|
@@ -1,6 +1,10 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: mysql
|
|
3
|
-
description:
|
|
3
|
+
description: |
|
|
4
|
+
Use when designing, querying, or managing a MySQL or MariaDB database.
|
|
5
|
+
Enforces enterprise production rules for query safety (strict parameterization),
|
|
6
|
+
connection pooling, and strict schema configurations (STRICT_TRANS_TABLES).
|
|
7
|
+
MUST-ASK: Require explicit database engine name before triggering. Never guess. Do NOT trigger for generic "set up a database" requests. NOT for Postgres or SQLite. NOT for ORM-managed migrations.
|
|
4
8
|
---
|
|
5
9
|
|
|
6
10
|
# MySQL / MariaDB Production Standards
|
|
@@ -27,4 +31,4 @@ MySQL and MariaDB are powerful relationship-driven databases, but AI agents MUST
|
|
|
27
31
|
## 4. Ecosystem & Diagnostics
|
|
28
32
|
|
|
29
33
|
- **Error Handling**: When intercepting connection drops or authentication failures (e.g., ER_ACCESS_DENIED_ERROR), instruct the user to verify their `.env` configurations (`MYSQL_URL`, `MYSQL_HOST`, etc.). Do not hallucinate database names.
|
|
30
|
-
- **Using MCP**: If the `mysql-mcp` server is attached, prefer utilizing its formal
|
|
34
|
+
- **Using MCP**: If the `mysql-mcp` server is attached, prefer utilizing its formal structured tools over executing raw Bash CLI scripts (`mysql -h ...`) to guarantee payload optimizations and schema intelligence.
|