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.
Files changed (531) hide show
  1. package/README.md +126 -56
  2. package/dist/chunk-6OHRCNYW.js +3231 -0
  3. package/dist/chunk-JFMITANR.js +5168 -0
  4. package/dist/{chunk-QCQPAF4I.js → chunk-MWNLAEHR.js} +301 -4321
  5. package/dist/{chunk-ARLYSFSI.js → chunk-UHSO65A4.js} +4242 -6092
  6. package/dist/cli.js +21 -3
  7. package/dist/index.d.ts +16 -13
  8. package/dist/index.js +4 -2
  9. package/dist/resources-IJVKDFGS.js +2 -0
  10. package/dist/tools-44DGXE3V.js +2 -0
  11. package/dist/worker-script.js +201 -20
  12. package/package.json +7 -4
  13. package/skills/README.md +62 -25
  14. package/skills/adversarial-performance/SKILL.md +139 -0
  15. package/skills/adversarial-performance/references/audit-categories.md +462 -0
  16. package/skills/adversarial-performance/references/copilot-performance-prompts.md +44 -0
  17. package/skills/adversarial-performance/references/copilot-usage.md +16 -0
  18. package/skills/adversarial-performance/references/feedback-loop.md +177 -0
  19. package/skills/adversarial-performance/references/multi-pass-performance-protocol.md +398 -0
  20. package/skills/adversarial-planner/SKILL.md +23 -54
  21. package/skills/adversarial-planner/references/copilot-integration.md +25 -40
  22. package/skills/adversarial-planner/references/copilot-usage.md +16 -0
  23. package/skills/adversarial-planner/references/multi-pass-protocol.md +4 -0
  24. package/skills/adversarial-security/SKILL.md +149 -0
  25. package/skills/adversarial-security/references/adversarial-base-protocol.md +44 -0
  26. package/skills/adversarial-security/references/audit-categories.md +723 -0
  27. package/skills/adversarial-security/references/copilot-security-prompts.md +142 -0
  28. package/skills/adversarial-security/references/copilot-usage.md +16 -0
  29. package/skills/adversarial-security/references/feedback-loop.md +206 -0
  30. package/skills/adversarial-security/references/journal-opt-out.md +7 -0
  31. package/skills/adversarial-security/references/multi-pass-security-protocol.md +403 -0
  32. package/skills/adversarial-skill-audit/SKILL.md +118 -0
  33. package/skills/adversarial-skill-audit/references/audit-categories.md +308 -0
  34. package/skills/adversarial-skill-audit/references/copilot-skill-prompts.md +68 -0
  35. package/skills/adversarial-skill-audit/references/copilot-usage.md +16 -0
  36. package/skills/adversarial-skill-audit/references/feedback-loop.md +155 -0
  37. package/skills/adversarial-skill-audit/references/multi-pass-skill-protocol.md +367 -0
  38. package/skills/adversarial-skill-audit/scripts/check-skills.ps1 +48 -0
  39. package/skills/adversarial-skill-audit/scripts/run-copilot.ps1 +52 -0
  40. package/skills/adversarial-workflow-audit/SKILL.md +82 -0
  41. package/skills/adversarial-workflow-audit/references/audit-categories.md +28 -0
  42. package/skills/adversarial-workflow-audit/references/copilot-usage.md +16 -0
  43. package/skills/adversarial-workflow-audit/scripts/check-workflows.ps1 +24 -0
  44. package/skills/agents-sdk/SKILL.md +220 -0
  45. package/skills/agents-sdk/references/callable.md +92 -0
  46. package/skills/agents-sdk/references/codemode.md +209 -0
  47. package/skills/agents-sdk/references/email.md +144 -0
  48. package/skills/agents-sdk/references/mcp/SKILL.md +65 -0
  49. package/skills/agents-sdk/references/mcp/code-mode-reference.md +245 -0
  50. package/skills/agents-sdk/references/mcp/oauth-reference.md +359 -0
  51. package/skills/agents-sdk/references/mcp/references/architecture-reference.md +208 -0
  52. package/skills/agents-sdk/references/mcp/references/cloudflare-quickstart.md +156 -0
  53. package/skills/agents-sdk/references/mcp/references/error-handling.md +343 -0
  54. package/skills/agents-sdk/references/mcp/references/http-security.md +164 -0
  55. package/skills/agents-sdk/references/mcp/references/implementation-guide.md +507 -0
  56. package/skills/agents-sdk/references/mcp/references/testing-reference.md +171 -0
  57. package/skills/agents-sdk/references/mcp.md +157 -0
  58. package/skills/agents-sdk/references/state-scheduling.md +164 -0
  59. package/skills/agents-sdk/references/streaming-chat.md +168 -0
  60. package/skills/agents-sdk/references/workflows.md +136 -0
  61. package/skills/auth-identity/SKILL.md +48 -0
  62. package/skills/autonomous-dev/SKILL.md +46 -23
  63. package/skills/autonomous-dev/references/workflow_orchestration.md +22 -0
  64. package/skills/aws/SKILL.md +39 -0
  65. package/skills/azure/SKILL.md +38 -0
  66. package/skills/bin/sync.js +7 -1
  67. package/skills/biome/SKILL.md +59 -0
  68. package/skills/bun/SKILL.md +8 -2
  69. package/skills/cloudflare/SKILL.md +37 -0
  70. package/skills/cloudflare/references/agents-sdk/README.md +95 -0
  71. package/skills/cloudflare/references/agents-sdk/api.md +195 -0
  72. package/skills/cloudflare/references/agents-sdk/configuration.md +178 -0
  73. package/skills/cloudflare/references/agents-sdk/gotchas.md +173 -0
  74. package/skills/cloudflare/references/agents-sdk/patterns.md +215 -0
  75. package/skills/cloudflare/references/ai-gateway/README.md +176 -0
  76. package/skills/cloudflare/references/ai-gateway/configuration.md +117 -0
  77. package/skills/cloudflare/references/ai-gateway/dynamic-routing.md +88 -0
  78. package/skills/cloudflare/references/ai-gateway/features.md +96 -0
  79. package/skills/cloudflare/references/ai-gateway/sdk-integration.md +110 -0
  80. package/skills/cloudflare/references/ai-gateway/troubleshooting.md +90 -0
  81. package/skills/cloudflare/references/ai-search/README.md +145 -0
  82. package/skills/cloudflare/references/ai-search/api.md +87 -0
  83. package/skills/cloudflare/references/ai-search/configuration.md +91 -0
  84. package/skills/cloudflare/references/ai-search/gotchas.md +92 -0
  85. package/skills/cloudflare/references/ai-search/patterns.md +87 -0
  86. package/skills/cloudflare/references/analytics-engine/README.md +96 -0
  87. package/skills/cloudflare/references/analytics-engine/api.md +112 -0
  88. package/skills/cloudflare/references/analytics-engine/configuration.md +107 -0
  89. package/skills/cloudflare/references/analytics-engine/gotchas.md +87 -0
  90. package/skills/cloudflare/references/analytics-engine/patterns.md +83 -0
  91. package/skills/cloudflare/references/api/README.md +66 -0
  92. package/skills/cloudflare/references/api/api.md +205 -0
  93. package/skills/cloudflare/references/api/configuration.md +158 -0
  94. package/skills/cloudflare/references/api/gotchas.md +231 -0
  95. package/skills/cloudflare/references/api/patterns.md +208 -0
  96. package/skills/cloudflare/references/api-shield/README.md +44 -0
  97. package/skills/cloudflare/references/api-shield/api.md +153 -0
  98. package/skills/cloudflare/references/api-shield/configuration.md +210 -0
  99. package/skills/cloudflare/references/api-shield/gotchas.md +132 -0
  100. package/skills/cloudflare/references/api-shield/patterns.md +185 -0
  101. package/skills/cloudflare/references/argo-smart-routing/README.md +96 -0
  102. package/skills/cloudflare/references/argo-smart-routing/api.md +253 -0
  103. package/skills/cloudflare/references/argo-smart-routing/configuration.md +205 -0
  104. package/skills/cloudflare/references/argo-smart-routing/gotchas.md +115 -0
  105. package/skills/cloudflare/references/argo-smart-routing/patterns.md +107 -0
  106. package/skills/cloudflare/references/bindings/README.md +127 -0
  107. package/skills/cloudflare/references/bindings/api.md +214 -0
  108. package/skills/cloudflare/references/bindings/configuration.md +200 -0
  109. package/skills/cloudflare/references/bindings/gotchas.md +210 -0
  110. package/skills/cloudflare/references/bindings/patterns.md +205 -0
  111. package/skills/cloudflare/references/bot-management/README.md +95 -0
  112. package/skills/cloudflare/references/bot-management/api.md +175 -0
  113. package/skills/cloudflare/references/bot-management/configuration.md +175 -0
  114. package/skills/cloudflare/references/bot-management/gotchas.md +116 -0
  115. package/skills/cloudflare/references/bot-management/patterns.md +181 -0
  116. package/skills/cloudflare/references/browser-rendering/README.md +84 -0
  117. package/skills/cloudflare/references/browser-rendering/api.md +108 -0
  118. package/skills/cloudflare/references/browser-rendering/configuration.md +78 -0
  119. package/skills/cloudflare/references/browser-rendering/gotchas.md +91 -0
  120. package/skills/cloudflare/references/browser-rendering/patterns.md +93 -0
  121. package/skills/cloudflare/references/c3/README.md +111 -0
  122. package/skills/cloudflare/references/c3/api.md +71 -0
  123. package/skills/cloudflare/references/c3/configuration.md +85 -0
  124. package/skills/cloudflare/references/c3/gotchas.md +97 -0
  125. package/skills/cloudflare/references/c3/patterns.md +84 -0
  126. package/skills/cloudflare/references/cache-reserve/README.md +150 -0
  127. package/skills/cloudflare/references/cache-reserve/api.md +184 -0
  128. package/skills/cloudflare/references/cache-reserve/configuration.md +170 -0
  129. package/skills/cloudflare/references/cache-reserve/gotchas.md +136 -0
  130. package/skills/cloudflare/references/cache-reserve/patterns.md +197 -0
  131. package/skills/cloudflare/references/containers/README.md +87 -0
  132. package/skills/cloudflare/references/containers/api.md +197 -0
  133. package/skills/cloudflare/references/containers/configuration.md +191 -0
  134. package/skills/cloudflare/references/containers/gotchas.md +182 -0
  135. package/skills/cloudflare/references/containers/patterns.md +204 -0
  136. package/skills/cloudflare/references/cron-triggers/README.md +101 -0
  137. package/skills/cloudflare/references/cron-triggers/api.md +224 -0
  138. package/skills/cloudflare/references/cron-triggers/configuration.md +190 -0
  139. package/skills/cloudflare/references/cron-triggers/gotchas.md +207 -0
  140. package/skills/cloudflare/references/cron-triggers/patterns.md +274 -0
  141. package/skills/cloudflare/references/d1/README.md +137 -0
  142. package/skills/cloudflare/references/d1/api.md +213 -0
  143. package/skills/cloudflare/references/d1/configuration.md +198 -0
  144. package/skills/cloudflare/references/d1/gotchas.md +98 -0
  145. package/skills/cloudflare/references/d1/patterns.md +240 -0
  146. package/skills/cloudflare/references/ddos/README.md +42 -0
  147. package/skills/cloudflare/references/ddos/api.md +158 -0
  148. package/skills/cloudflare/references/ddos/configuration.md +94 -0
  149. package/skills/cloudflare/references/ddos/gotchas.md +114 -0
  150. package/skills/cloudflare/references/ddos/patterns.md +220 -0
  151. package/skills/cloudflare/references/decision-trees.md +95 -0
  152. package/skills/cloudflare/references/do-storage/README.md +79 -0
  153. package/skills/cloudflare/references/do-storage/api.md +107 -0
  154. package/skills/cloudflare/references/do-storage/configuration.md +114 -0
  155. package/skills/cloudflare/references/do-storage/gotchas.md +153 -0
  156. package/skills/cloudflare/references/do-storage/patterns.md +210 -0
  157. package/skills/cloudflare/references/do-storage/testing.md +186 -0
  158. package/skills/cloudflare/references/durable-objects/README.md +194 -0
  159. package/skills/cloudflare/references/durable-objects/api.md +205 -0
  160. package/skills/cloudflare/references/durable-objects/configuration.md +160 -0
  161. package/skills/cloudflare/references/durable-objects/gotchas.md +200 -0
  162. package/skills/cloudflare/references/durable-objects/patterns.md +205 -0
  163. package/skills/cloudflare/references/email-routing/README.md +89 -0
  164. package/skills/cloudflare/references/email-routing/api.md +192 -0
  165. package/skills/cloudflare/references/email-routing/configuration.md +187 -0
  166. package/skills/cloudflare/references/email-routing/gotchas.md +203 -0
  167. package/skills/cloudflare/references/email-routing/patterns.md +241 -0
  168. package/skills/cloudflare/references/email-workers/README.md +153 -0
  169. package/skills/cloudflare/references/email-workers/api.md +227 -0
  170. package/skills/cloudflare/references/email-workers/configuration.md +115 -0
  171. package/skills/cloudflare/references/email-workers/gotchas.md +133 -0
  172. package/skills/cloudflare/references/email-workers/patterns.md +108 -0
  173. package/skills/cloudflare/references/graphql-api/README.md +147 -0
  174. package/skills/cloudflare/references/graphql-api/api.md +175 -0
  175. package/skills/cloudflare/references/graphql-api/configuration.md +151 -0
  176. package/skills/cloudflare/references/graphql-api/gotchas.md +111 -0
  177. package/skills/cloudflare/references/graphql-api/patterns.md +276 -0
  178. package/skills/cloudflare/references/hyperdrive/README.md +84 -0
  179. package/skills/cloudflare/references/hyperdrive/api.md +149 -0
  180. package/skills/cloudflare/references/hyperdrive/configuration.md +166 -0
  181. package/skills/cloudflare/references/hyperdrive/gotchas.md +77 -0
  182. package/skills/cloudflare/references/hyperdrive/patterns.md +203 -0
  183. package/skills/cloudflare/references/images/README.md +65 -0
  184. package/skills/cloudflare/references/images/api.md +101 -0
  185. package/skills/cloudflare/references/images/configuration.md +206 -0
  186. package/skills/cloudflare/references/images/gotchas.md +106 -0
  187. package/skills/cloudflare/references/images/patterns.md +126 -0
  188. package/skills/cloudflare/references/kv/README.md +90 -0
  189. package/skills/cloudflare/references/kv/api.md +163 -0
  190. package/skills/cloudflare/references/kv/configuration.md +148 -0
  191. package/skills/cloudflare/references/kv/gotchas.md +133 -0
  192. package/skills/cloudflare/references/kv/patterns.md +195 -0
  193. package/skills/cloudflare/references/miniflare/README.md +113 -0
  194. package/skills/cloudflare/references/miniflare/api.md +204 -0
  195. package/skills/cloudflare/references/miniflare/configuration.md +174 -0
  196. package/skills/cloudflare/references/miniflare/gotchas.md +179 -0
  197. package/skills/cloudflare/references/miniflare/patterns.md +187 -0
  198. package/skills/cloudflare/references/network-interconnect/README.md +104 -0
  199. package/skills/cloudflare/references/network-interconnect/api.md +220 -0
  200. package/skills/cloudflare/references/network-interconnect/configuration.md +123 -0
  201. package/skills/cloudflare/references/network-interconnect/gotchas.md +175 -0
  202. package/skills/cloudflare/references/network-interconnect/patterns.md +174 -0
  203. package/skills/cloudflare/references/observability/README.md +93 -0
  204. package/skills/cloudflare/references/observability/api.md +168 -0
  205. package/skills/cloudflare/references/observability/configuration.md +178 -0
  206. package/skills/cloudflare/references/observability/gotchas.md +125 -0
  207. package/skills/cloudflare/references/observability/patterns.md +105 -0
  208. package/skills/cloudflare/references/pages/README.md +92 -0
  209. package/skills/cloudflare/references/pages/api.md +205 -0
  210. package/skills/cloudflare/references/pages/configuration.md +216 -0
  211. package/skills/cloudflare/references/pages/gotchas.md +218 -0
  212. package/skills/cloudflare/references/pages/patterns.md +215 -0
  213. package/skills/cloudflare/references/pages-functions/README.md +104 -0
  214. package/skills/cloudflare/references/pages-functions/api.md +159 -0
  215. package/skills/cloudflare/references/pages-functions/configuration.md +130 -0
  216. package/skills/cloudflare/references/pages-functions/gotchas.md +102 -0
  217. package/skills/cloudflare/references/pages-functions/patterns.md +148 -0
  218. package/skills/cloudflare/references/pipelines/README.md +109 -0
  219. package/skills/cloudflare/references/pipelines/api.md +214 -0
  220. package/skills/cloudflare/references/pipelines/configuration.md +98 -0
  221. package/skills/cloudflare/references/pipelines/gotchas.md +84 -0
  222. package/skills/cloudflare/references/pipelines/patterns.md +87 -0
  223. package/skills/cloudflare/references/product-index.md +112 -0
  224. package/skills/cloudflare/references/pulumi/README.md +113 -0
  225. package/skills/cloudflare/references/pulumi/api.md +230 -0
  226. package/skills/cloudflare/references/pulumi/configuration.md +213 -0
  227. package/skills/cloudflare/references/pulumi/gotchas.md +205 -0
  228. package/skills/cloudflare/references/pulumi/patterns.md +260 -0
  229. package/skills/cloudflare/references/queues/README.md +99 -0
  230. package/skills/cloudflare/references/queues/api.md +211 -0
  231. package/skills/cloudflare/references/queues/configuration.md +151 -0
  232. package/skills/cloudflare/references/queues/gotchas.md +210 -0
  233. package/skills/cloudflare/references/queues/patterns.md +220 -0
  234. package/skills/cloudflare/references/r2/README.md +97 -0
  235. package/skills/cloudflare/references/r2/api.md +235 -0
  236. package/skills/cloudflare/references/r2/configuration.md +176 -0
  237. package/skills/cloudflare/references/r2/gotchas.md +190 -0
  238. package/skills/cloudflare/references/r2/patterns.md +203 -0
  239. package/skills/cloudflare/references/r2-data-catalog/README.md +157 -0
  240. package/skills/cloudflare/references/r2-data-catalog/api.md +199 -0
  241. package/skills/cloudflare/references/r2-data-catalog/configuration.md +205 -0
  242. package/skills/cloudflare/references/r2-data-catalog/gotchas.md +170 -0
  243. package/skills/cloudflare/references/r2-data-catalog/patterns.md +191 -0
  244. package/skills/cloudflare/references/r2-sql/README.md +138 -0
  245. package/skills/cloudflare/references/r2-sql/SKILL.md.backup +512 -0
  246. package/skills/cloudflare/references/r2-sql/api.md +159 -0
  247. package/skills/cloudflare/references/r2-sql/configuration.md +152 -0
  248. package/skills/cloudflare/references/r2-sql/gotchas.md +228 -0
  249. package/skills/cloudflare/references/r2-sql/patterns.md +230 -0
  250. package/skills/cloudflare/references/realtime-sfu/README.md +66 -0
  251. package/skills/cloudflare/references/realtime-sfu/api.md +164 -0
  252. package/skills/cloudflare/references/realtime-sfu/configuration.md +141 -0
  253. package/skills/cloudflare/references/realtime-sfu/gotchas.md +138 -0
  254. package/skills/cloudflare/references/realtime-sfu/patterns.md +187 -0
  255. package/skills/cloudflare/references/realtimekit/README.md +118 -0
  256. package/skills/cloudflare/references/realtimekit/api.md +234 -0
  257. package/skills/cloudflare/references/realtimekit/configuration.md +226 -0
  258. package/skills/cloudflare/references/realtimekit/gotchas.md +206 -0
  259. package/skills/cloudflare/references/realtimekit/patterns.md +240 -0
  260. package/skills/cloudflare/references/sandbox/README.md +104 -0
  261. package/skills/cloudflare/references/sandbox/api.md +200 -0
  262. package/skills/cloudflare/references/sandbox/configuration.md +154 -0
  263. package/skills/cloudflare/references/sandbox/gotchas.md +201 -0
  264. package/skills/cloudflare/references/sandbox/patterns.md +195 -0
  265. package/skills/cloudflare/references/secrets-store/README.md +77 -0
  266. package/skills/cloudflare/references/secrets-store/api.md +199 -0
  267. package/skills/cloudflare/references/secrets-store/configuration.md +187 -0
  268. package/skills/cloudflare/references/secrets-store/gotchas.md +97 -0
  269. package/skills/cloudflare/references/secrets-store/patterns.md +218 -0
  270. package/skills/cloudflare/references/smart-placement/README.md +143 -0
  271. package/skills/cloudflare/references/smart-placement/api.md +192 -0
  272. package/skills/cloudflare/references/smart-placement/configuration.md +202 -0
  273. package/skills/cloudflare/references/smart-placement/gotchas.md +180 -0
  274. package/skills/cloudflare/references/smart-placement/patterns.md +190 -0
  275. package/skills/cloudflare/references/snippets/README.md +74 -0
  276. package/skills/cloudflare/references/snippets/api.md +214 -0
  277. package/skills/cloudflare/references/snippets/configuration.md +239 -0
  278. package/skills/cloudflare/references/snippets/gotchas.md +104 -0
  279. package/skills/cloudflare/references/snippets/patterns.md +135 -0
  280. package/skills/cloudflare/references/spectrum/README.md +52 -0
  281. package/skills/cloudflare/references/spectrum/api.md +184 -0
  282. package/skills/cloudflare/references/spectrum/configuration.md +203 -0
  283. package/skills/cloudflare/references/spectrum/gotchas.md +155 -0
  284. package/skills/cloudflare/references/spectrum/patterns.md +206 -0
  285. package/skills/cloudflare/references/static-assets/README.md +65 -0
  286. package/skills/cloudflare/references/static-assets/api.md +201 -0
  287. package/skills/cloudflare/references/static-assets/configuration.md +186 -0
  288. package/skills/cloudflare/references/static-assets/gotchas.md +164 -0
  289. package/skills/cloudflare/references/static-assets/patterns.md +189 -0
  290. package/skills/cloudflare/references/stream/README.md +123 -0
  291. package/skills/cloudflare/references/stream/api-live.md +202 -0
  292. package/skills/cloudflare/references/stream/api.md +206 -0
  293. package/skills/cloudflare/references/stream/configuration.md +151 -0
  294. package/skills/cloudflare/references/stream/gotchas.md +139 -0
  295. package/skills/cloudflare/references/stream/patterns.md +217 -0
  296. package/skills/cloudflare/references/tail-workers/README.md +92 -0
  297. package/skills/cloudflare/references/tail-workers/api.md +203 -0
  298. package/skills/cloudflare/references/tail-workers/configuration.md +178 -0
  299. package/skills/cloudflare/references/tail-workers/gotchas.md +206 -0
  300. package/skills/cloudflare/references/tail-workers/patterns.md +190 -0
  301. package/skills/cloudflare/references/terraform/README.md +100 -0
  302. package/skills/cloudflare/references/terraform/api.md +178 -0
  303. package/skills/cloudflare/references/terraform/configuration.md +197 -0
  304. package/skills/cloudflare/references/terraform/gotchas.md +150 -0
  305. package/skills/cloudflare/references/terraform/patterns.md +174 -0
  306. package/skills/cloudflare/references/tunnel/README.md +137 -0
  307. package/skills/cloudflare/references/tunnel/api.md +205 -0
  308. package/skills/cloudflare/references/tunnel/configuration.md +163 -0
  309. package/skills/cloudflare/references/tunnel/gotchas.md +159 -0
  310. package/skills/cloudflare/references/tunnel/networking.md +174 -0
  311. package/skills/cloudflare/references/tunnel/patterns.md +199 -0
  312. package/skills/cloudflare/references/turn/README.md +86 -0
  313. package/skills/cloudflare/references/turn/api.md +236 -0
  314. package/skills/cloudflare/references/turn/configuration.md +181 -0
  315. package/skills/cloudflare/references/turn/gotchas.md +236 -0
  316. package/skills/cloudflare/references/turn/patterns.md +228 -0
  317. package/skills/cloudflare/references/turnstile/README.md +102 -0
  318. package/skills/cloudflare/references/turnstile/api.md +253 -0
  319. package/skills/cloudflare/references/turnstile/configuration.md +242 -0
  320. package/skills/cloudflare/references/turnstile/gotchas.md +253 -0
  321. package/skills/cloudflare/references/turnstile/patterns.md +195 -0
  322. package/skills/cloudflare/references/vectorize/README.md +133 -0
  323. package/skills/cloudflare/references/vectorize/api.md +89 -0
  324. package/skills/cloudflare/references/vectorize/configuration.md +91 -0
  325. package/skills/cloudflare/references/vectorize/gotchas.md +83 -0
  326. package/skills/cloudflare/references/vectorize/patterns.md +92 -0
  327. package/skills/cloudflare/references/waf/README.md +125 -0
  328. package/skills/cloudflare/references/waf/api.md +203 -0
  329. package/skills/cloudflare/references/waf/configuration.md +215 -0
  330. package/skills/cloudflare/references/waf/gotchas.md +208 -0
  331. package/skills/cloudflare/references/waf/patterns.md +236 -0
  332. package/skills/cloudflare/references/web-analytics/README.md +149 -0
  333. package/skills/cloudflare/references/web-analytics/configuration.md +81 -0
  334. package/skills/cloudflare/references/web-analytics/gotchas.md +86 -0
  335. package/skills/cloudflare/references/web-analytics/integration.md +63 -0
  336. package/skills/cloudflare/references/web-analytics/patterns.md +98 -0
  337. package/skills/cloudflare/references/workerd/README.md +85 -0
  338. package/skills/cloudflare/references/workerd/api.md +219 -0
  339. package/skills/cloudflare/references/workerd/configuration.md +200 -0
  340. package/skills/cloudflare/references/workerd/gotchas.md +151 -0
  341. package/skills/cloudflare/references/workerd/patterns.md +205 -0
  342. package/skills/cloudflare/references/workers/README.md +110 -0
  343. package/skills/cloudflare/references/workers/api.md +197 -0
  344. package/skills/cloudflare/references/workers/configuration.md +184 -0
  345. package/skills/cloudflare/references/workers/frameworks.md +200 -0
  346. package/skills/cloudflare/references/workers/gotchas.md +145 -0
  347. package/skills/cloudflare/references/workers/patterns.md +220 -0
  348. package/skills/cloudflare/references/workers-ai/README.md +206 -0
  349. package/skills/cloudflare/references/workers-ai/api.md +115 -0
  350. package/skills/cloudflare/references/workers-ai/configuration.md +98 -0
  351. package/skills/cloudflare/references/workers-ai/gotchas.md +130 -0
  352. package/skills/cloudflare/references/workers-ai/patterns.md +122 -0
  353. package/skills/cloudflare/references/workers-for-platforms/README.md +95 -0
  354. package/skills/cloudflare/references/workers-for-platforms/api.md +212 -0
  355. package/skills/cloudflare/references/workers-for-platforms/configuration.md +178 -0
  356. package/skills/cloudflare/references/workers-for-platforms/gotchas.md +134 -0
  357. package/skills/cloudflare/references/workers-for-platforms/patterns.md +210 -0
  358. package/skills/cloudflare/references/workers-playground/README.md +131 -0
  359. package/skills/cloudflare/references/workers-playground/api.md +101 -0
  360. package/skills/cloudflare/references/workers-playground/configuration.md +169 -0
  361. package/skills/cloudflare/references/workers-playground/gotchas.md +88 -0
  362. package/skills/cloudflare/references/workers-playground/patterns.md +134 -0
  363. package/skills/cloudflare/references/workers-vpc/README.md +130 -0
  364. package/skills/cloudflare/references/workers-vpc/api.md +196 -0
  365. package/skills/cloudflare/references/workers-vpc/configuration.md +151 -0
  366. package/skills/cloudflare/references/workers-vpc/gotchas.md +171 -0
  367. package/skills/cloudflare/references/workers-vpc/patterns.md +235 -0
  368. package/skills/cloudflare/references/workflows/README.md +72 -0
  369. package/skills/cloudflare/references/workflows/api.md +237 -0
  370. package/skills/cloudflare/references/workflows/configuration.md +158 -0
  371. package/skills/cloudflare/references/workflows/gotchas.md +97 -0
  372. package/skills/cloudflare/references/workflows/patterns.md +245 -0
  373. package/skills/cloudflare/references/wrangler/README.md +143 -0
  374. package/skills/cloudflare/references/wrangler/api.md +188 -0
  375. package/skills/cloudflare/references/wrangler/configuration.md +198 -0
  376. package/skills/cloudflare/references/wrangler/gotchas.md +212 -0
  377. package/skills/cloudflare/references/wrangler/patterns.md +211 -0
  378. package/skills/cloudflare/references/zaraz/IMPLEMENTATION_SUMMARY.md +131 -0
  379. package/skills/cloudflare/references/zaraz/README.md +114 -0
  380. package/skills/cloudflare/references/zaraz/api.md +118 -0
  381. package/skills/cloudflare/references/zaraz/configuration.md +94 -0
  382. package/skills/cloudflare/references/zaraz/gotchas.md +88 -0
  383. package/skills/cloudflare/references/zaraz/patterns.md +77 -0
  384. package/skills/docker/SKILL.md +7 -101
  385. package/skills/docker/references/advanced-examples.md +71 -0
  386. package/skills/docker/references/templates.md +34 -0
  387. package/skills/docs-marketer/SKILL.md +178 -0
  388. package/skills/docs-marketer/references/audit-categories.md +328 -0
  389. package/skills/docs-marketer/references/copilot-docs-prompts.md +88 -0
  390. package/skills/docs-marketer/references/copilot-usage.md +16 -0
  391. package/skills/docs-marketer/references/feedback-loop.md +155 -0
  392. package/skills/docs-marketer/references/multi-pass-docs-protocol.md +410 -0
  393. package/skills/drizzle-orm/SKILL.md +82 -0
  394. package/skills/durable-objects/SKILL.md +167 -0
  395. package/skills/durable-objects/references/advanced_features.md +29 -0
  396. package/skills/durable-objects/references/rules.md +300 -0
  397. package/skills/durable-objects/references/testing.md +261 -0
  398. package/skills/durable-objects/references/workers.md +336 -0
  399. package/skills/gcp/SKILL.md +37 -0
  400. package/skills/github-actions/SKILL.md +5 -58
  401. package/skills/github-actions/references/templates.md +65 -0
  402. package/skills/github-commander/SKILL.md +13 -21
  403. package/skills/github-commander/workflows/copilot-audit.md +12 -12
  404. package/skills/github-copilot-cli/SKILL.md +21 -26
  405. package/skills/github-repo-setup/SKILL.md +136 -0
  406. package/skills/github-repo-setup/references/community-standards.md +136 -0
  407. package/skills/github-repo-setup/references/github-automation.md +490 -0
  408. package/skills/github-repo-setup/references/inline-templates.md +205 -0
  409. package/skills/github-repo-setup/references/project-config.md +320 -0
  410. package/skills/gitlab/SKILL.md +7 -2
  411. package/skills/gitlab/package-lock.json +389 -389
  412. package/skills/golang/SKILL.md +8 -1
  413. package/skills/graphql/SKILL.md +30 -0
  414. package/skills/hono/SKILL.md +82 -0
  415. package/skills/journal-optimizer/SKILL.md +206 -0
  416. package/skills/journal-optimizer/references/optimizer-scripts.md +169 -0
  417. package/skills/llm-app-engineering/SKILL.md +18 -0
  418. package/skills/monorepo/SKILL.md +56 -0
  419. package/skills/multi-agent-orchestration/SKILL.md +14 -0
  420. package/skills/mysql/SKILL.md +6 -2
  421. package/skills/next-best-practices/SKILL.md +86 -0
  422. package/skills/next-best-practices/references/cache-components-examples.md +234 -0
  423. package/skills/next-best-practices/references/cache-components.md +210 -0
  424. package/skills/next-best-practices/references/upgrade-decision-tree.md +33 -0
  425. package/skills/next-best-practices/references/upgrade.md +43 -0
  426. package/skills/next-cache-components/SKILL.md +441 -0
  427. package/skills/next-upgrade/SKILL.md +43 -0
  428. package/skills/next-upgrade/references/decision-tree.md +33 -0
  429. package/skills/nodejs/SKILL.md +46 -0
  430. package/skills/opentelemetry/SKILL.md +62 -0
  431. package/skills/package.json +39 -4
  432. package/skills/playwright-standard/SKILL.md +6 -11
  433. package/skills/playwright-standard/references/locators.md +7 -0
  434. package/skills/postgres/SKILL.md +6 -1
  435. package/skills/python/SKILL.md +8 -70
  436. package/skills/python/references/advanced-patterns.md +37 -0
  437. package/skills/python/references/config-templates.md +48 -0
  438. package/skills/rag-pipelines/SKILL.md +14 -0
  439. package/skills/redis/SKILL.md +31 -0
  440. package/skills/render/SKILL.md +35 -0
  441. package/skills/rust/SKILL.md +15 -25
  442. package/skills/rust/references/borrow-checker.md +13 -0
  443. package/skills/rust/references/ecosystem.md +11 -0
  444. package/skills/sandbox-sdk/SKILL.md +186 -0
  445. package/skills/sandbox-sdk/references/api-quick-ref.md +113 -0
  446. package/skills/sandbox-sdk/references/examples.md +52 -0
  447. package/skills/shadcn-ui/SKILL.md +22 -57
  448. package/skills/skill-builder/SKILL.md +23 -424
  449. package/skills/skill-builder/references/tutorial.md +457 -0
  450. package/skills/sqlite/SKILL.md +16 -5
  451. package/skills/table.md +59 -0
  452. package/skills/tailwind-css/SKILL.md +11 -60
  453. package/skills/tailwind-css/references/component-patterns.md +52 -0
  454. package/skills/trpc/SKILL.md +56 -0
  455. package/skills/typescript/SKILL.md +30 -433
  456. package/skills/typescript/references/tutorial.md +453 -0
  457. package/skills/vercel-ai-sdk/SKILL.md +48 -0
  458. package/skills/vitest-standard/SKILL.md +5 -11
  459. package/skills/vitest-standard/references/assertions.md +11 -0
  460. package/skills/web-perf/SKILL.md +207 -0
  461. package/skills/workers-best-practices/SKILL.md +120 -0
  462. package/skills/workers-best-practices/references/anti-patterns.md +18 -0
  463. package/skills/workers-best-practices/references/review.md +174 -0
  464. package/skills/workers-best-practices/references/rules.md +485 -0
  465. package/skills/wrangler/SKILL.md +43 -0
  466. package/skills/wrangler/references/cli-commands.md +861 -0
  467. package/skills/zod/SKILL.md +48 -0
  468. package/dist/tools-P4VGG4FH.js +0 -1
  469. package/skills/react-best-practices/AGENTS.md +0 -2883
  470. package/skills/react-best-practices/SKILL.md +0 -138
  471. /package/skills/{react-best-practices → next-best-practices}/README.md +0 -0
  472. /package/skills/{react-best-practices → next-best-practices}/metadata.json +0 -0
  473. /package/skills/{react-best-practices → next-best-practices}/rules/_sections.md +0 -0
  474. /package/skills/{react-best-practices → next-best-practices}/rules/_template.md +0 -0
  475. /package/skills/{react-best-practices → next-best-practices}/rules/advanced-event-handler-refs.md +0 -0
  476. /package/skills/{react-best-practices → next-best-practices}/rules/advanced-init-once.md +0 -0
  477. /package/skills/{react-best-practices → next-best-practices}/rules/advanced-use-latest.md +0 -0
  478. /package/skills/{react-best-practices → next-best-practices}/rules/async-api-routes.md +0 -0
  479. /package/skills/{react-best-practices → next-best-practices}/rules/async-defer-await.md +0 -0
  480. /package/skills/{react-best-practices → next-best-practices}/rules/async-dependencies.md +0 -0
  481. /package/skills/{react-best-practices → next-best-practices}/rules/async-parallel.md +0 -0
  482. /package/skills/{react-best-practices → next-best-practices}/rules/async-suspense-boundaries.md +0 -0
  483. /package/skills/{react-best-practices → next-best-practices}/rules/bundle-barrel-imports.md +0 -0
  484. /package/skills/{react-best-practices → next-best-practices}/rules/bundle-conditional.md +0 -0
  485. /package/skills/{react-best-practices → next-best-practices}/rules/bundle-defer-third-party.md +0 -0
  486. /package/skills/{react-best-practices → next-best-practices}/rules/bundle-dynamic-imports.md +0 -0
  487. /package/skills/{react-best-practices → next-best-practices}/rules/bundle-preload.md +0 -0
  488. /package/skills/{react-best-practices → next-best-practices}/rules/client-event-listeners.md +0 -0
  489. /package/skills/{react-best-practices → next-best-practices}/rules/client-localstorage-schema.md +0 -0
  490. /package/skills/{react-best-practices → next-best-practices}/rules/client-passive-event-listeners.md +0 -0
  491. /package/skills/{react-best-practices → next-best-practices}/rules/client-swr-dedup.md +0 -0
  492. /package/skills/{react-best-practices → next-best-practices}/rules/js-batch-dom-css.md +0 -0
  493. /package/skills/{react-best-practices → next-best-practices}/rules/js-cache-function-results.md +0 -0
  494. /package/skills/{react-best-practices → next-best-practices}/rules/js-cache-property-access.md +0 -0
  495. /package/skills/{react-best-practices → next-best-practices}/rules/js-cache-storage.md +0 -0
  496. /package/skills/{react-best-practices → next-best-practices}/rules/js-combine-iterations.md +0 -0
  497. /package/skills/{react-best-practices → next-best-practices}/rules/js-early-exit.md +0 -0
  498. /package/skills/{react-best-practices → next-best-practices}/rules/js-hoist-regexp.md +0 -0
  499. /package/skills/{react-best-practices → next-best-practices}/rules/js-index-maps.md +0 -0
  500. /package/skills/{react-best-practices → next-best-practices}/rules/js-length-check-first.md +0 -0
  501. /package/skills/{react-best-practices → next-best-practices}/rules/js-min-max-loop.md +0 -0
  502. /package/skills/{react-best-practices → next-best-practices}/rules/js-set-map-lookups.md +0 -0
  503. /package/skills/{react-best-practices → next-best-practices}/rules/js-tosorted-immutable.md +0 -0
  504. /package/skills/{react-best-practices → next-best-practices}/rules/rendering-activity.md +0 -0
  505. /package/skills/{react-best-practices → next-best-practices}/rules/rendering-animate-svg-wrapper.md +0 -0
  506. /package/skills/{react-best-practices → next-best-practices}/rules/rendering-conditional-render.md +0 -0
  507. /package/skills/{react-best-practices → next-best-practices}/rules/rendering-content-visibility.md +0 -0
  508. /package/skills/{react-best-practices → next-best-practices}/rules/rendering-hoist-jsx.md +0 -0
  509. /package/skills/{react-best-practices → next-best-practices}/rules/rendering-hydration-no-flicker.md +0 -0
  510. /package/skills/{react-best-practices → next-best-practices}/rules/rendering-hydration-suppress-warning.md +0 -0
  511. /package/skills/{react-best-practices → next-best-practices}/rules/rendering-svg-precision.md +0 -0
  512. /package/skills/{react-best-practices → next-best-practices}/rules/rendering-usetransition-loading.md +0 -0
  513. /package/skills/{react-best-practices → next-best-practices}/rules/rerender-defer-reads.md +0 -0
  514. /package/skills/{react-best-practices → next-best-practices}/rules/rerender-dependencies.md +0 -0
  515. /package/skills/{react-best-practices → next-best-practices}/rules/rerender-derived-state-no-effect.md +0 -0
  516. /package/skills/{react-best-practices → next-best-practices}/rules/rerender-derived-state.md +0 -0
  517. /package/skills/{react-best-practices → next-best-practices}/rules/rerender-functional-setstate.md +0 -0
  518. /package/skills/{react-best-practices → next-best-practices}/rules/rerender-lazy-state-init.md +0 -0
  519. /package/skills/{react-best-practices → next-best-practices}/rules/rerender-memo-with-default-value.md +0 -0
  520. /package/skills/{react-best-practices → next-best-practices}/rules/rerender-memo.md +0 -0
  521. /package/skills/{react-best-practices → next-best-practices}/rules/rerender-move-effect-to-event.md +0 -0
  522. /package/skills/{react-best-practices → next-best-practices}/rules/rerender-simple-expression-in-memo.md +0 -0
  523. /package/skills/{react-best-practices → next-best-practices}/rules/rerender-transitions.md +0 -0
  524. /package/skills/{react-best-practices → next-best-practices}/rules/rerender-use-ref-transient-values.md +0 -0
  525. /package/skills/{react-best-practices → next-best-practices}/rules/server-after-nonblocking.md +0 -0
  526. /package/skills/{react-best-practices → next-best-practices}/rules/server-auth-actions.md +0 -0
  527. /package/skills/{react-best-practices → next-best-practices}/rules/server-cache-lru.md +0 -0
  528. /package/skills/{react-best-practices → next-best-practices}/rules/server-cache-react.md +0 -0
  529. /package/skills/{react-best-practices → next-best-practices}/rules/server-dedup-props.md +0 -0
  530. /package/skills/{react-best-practices → next-best-practices}/rules/server-parallel-fetching.md +0 -0
  531. /package/skills/{react-best-practices → next-best-practices}/rules/server-serialization.md +0 -0
@@ -0,0 +1,410 @@
1
+ # Multi-Pass Docs Marketing Protocol
2
+
3
+ Detailed reference for the documentation marketability audit pipeline. This
4
+ document defines the full review dimensions, scoring system, and output
5
+ templates for both standard (single-pass) and adversarial (dual-agent) modes.
6
+
7
+ ## Phase 0 — Research (Agent A: The Marketer)
8
+
9
+ Before starting the audit, gather context:
10
+
11
+ 0. **Target repository resolution** — determine which repository to audit:
12
+ - If the user specified a repository, resolve its absolute path via
13
+ workspace roots or `PROJECT_REGISTRY`.
14
+ - If the user invoked the skill without specifying a target (e.g., via a
15
+ slash command or "run the docs audit"), follow the resolution logic in
16
+ `SKILL.md § Target Resolution`: check workspace context, infer from
17
+ conversation, or ask the user.
18
+ - Confirm the target path in your output before proceeding (e.g.,
19
+ "Auditing: `C:\Users\chris\Desktop\memory-journal-mcp`").
20
+ - `Set-Location` (or `cd`) to the target repository for all subsequent
21
+ file reads and Copilot invocations.
22
+ 1. **Documentation surface discovery** — identify all doc targets:
23
+ - `README.md` (primary)
24
+ - `DOCKER_README.md` (Docker Hub — 25,000 char limit)
25
+ - Wiki clone (`.wiki/` directory — check `<repo>.wiki/` sibling path)
26
+ - npm package README (may differ from repo README)
27
+ - MCP Registry listing (`server.json`)
28
+ - GitHub repository description and topics
29
+ 2. **Source code capabilities** — enumerate features the project actually has:
30
+ - Tool groups and tool counts (from `tool-filter.ts` or `tool-constants.ts`)
31
+ - Environment variables (from CLI flags and `.env.example`)
32
+ - Resources, prompts, transport modes
33
+ - Security features (OAuth, rate limiting, CORS)
34
+ - Unique differentiators (Code Mode, briefing system, etc.)
35
+ 3. **Prior audits** — search the journal:
36
+ ```
37
+ search_entries({
38
+ query: "docs marketing audit",
39
+ entry_type: "docs_marketing_profile",
40
+ tags: ["docs-marketer"]
41
+ })
42
+ ```
43
+ 4. **Competitor landscape** — if the project has an MCP Registry listing,
44
+ briefly research similar projects to understand competitive positioning.
45
+
46
+ ---
47
+
48
+ ## Phase 1 — Document Surface Inventory (Agent A: The Marketer)
49
+
50
+ ### Inputs
51
+
52
+ For each discovered documentation surface, read its full content and evaluate
53
+ against all 10 audit categories.
54
+
55
+ ### Per-Surface Scorecard
56
+
57
+ ```markdown
58
+ ### [Surface Name] (e.g., README.md)
59
+
60
+ **Size**: X lines, Y KB
61
+ **Last Modified**: [date if available]
62
+ **Platform Constraints**: [e.g., Docker Hub 25K char limit]
63
+
64
+ | Category | Score (1–5) | Notes |
65
+ | ------------------------------ | ----------- | ----- |
66
+ | 1. Feature Visibility | | |
67
+ | 2. First Impression | | |
68
+ | 3. Information Architecture | | |
69
+ | 4. Visual Assets | | |
70
+ | 5. Competitive Differentiation | | |
71
+ | 6. Onboarding Friction | | |
72
+ | 7. Platform Presence | | |
73
+ | 8. Cross-Document Consistency | | |
74
+ | 9. Tone & Voice | | |
75
+ | 10. SEO & Discoverability | | |
76
+ | **Average** | **X.X** | |
77
+
78
+ **Top Opportunity**: [Single highest-impact marketing improvement]
79
+ **Grade**: [A–F]
80
+ ```
81
+
82
+ ### Feature Visibility Gap Analysis
83
+
84
+ Cross-reference discovered capabilities against documentation mentions:
85
+
86
+ ```markdown
87
+ ### Feature Visibility Gaps
88
+
89
+ | Capability | In Source? | In README? | In Wiki? | In Docker? | Marketing Status |
90
+ | ----------------------------- | ---------- | ---------- | -------- | ---------- | ------------------------ |
91
+ | Code Mode (90% token savings) | ✅ | ✅ | ✅ | ❌ | Under-marketed in Docker |
92
+ | Hush Protocol flags | ✅ | ✅ | ⚠️ Brief | ❌ | Under-marketed |
93
+ | OAuth 2.1 (RFC 9728) | ✅ | ✅ | ❌ | ❌ | Missing from Wiki/Docker |
94
+ ```
95
+
96
+ ### Scoring Guide
97
+
98
+ | Score | Meaning |
99
+ | ----- | ---------------------------------------------------------------- |
100
+ | 5 | Excellent — compelling, well-structured, clearly differentiating |
101
+ | 4 | Good — solid coverage, minor marketing opportunities missed |
102
+ | 3 | Acceptable — features documented but not effectively marketed |
103
+ | 2 | Poor — significant capabilities buried or poorly presented |
104
+ | 1 | Failing — misleading, empty, or actively harmful to adoption |
105
+
106
+ ### Portfolio Overview
107
+
108
+ After scoring all surfaces individually, produce a portfolio-level overview:
109
+
110
+ ```markdown
111
+ ## Documentation Portfolio Overview
112
+
113
+ **Surfaces Audited**: N
114
+ **Average Marketing Score**: X.X / 5.0
115
+ **Portfolio Grade**: [A–F]
116
+
117
+ ### Score Distribution
118
+
119
+ | Grade | Surfaces |
120
+ | ----------- | ---------------- |
121
+ | A (4.5–5.0) | README.md |
122
+ | B (3.5–4.4) | Wiki Home |
123
+ | C (2.5–3.4) | DOCKER_README.md |
124
+ | D (1.5–2.4) | — |
125
+ | F (1.0–1.4) | — |
126
+
127
+ ### Cross-Surface Properties
128
+
129
+ - **Feature gaps**: [capabilities missing from specific surfaces]
130
+ - **Consistency issues**: [conflicting counts, outdated version numbers]
131
+ - **Platform violations**: [Docker Hub char limit, npm README truncation]
132
+ - **Strongest surface**: [which document best markets the project]
133
+ - **Weakest surface**: [which needs the most marketing improvement]
134
+ ```
135
+
136
+ ### Journal (Phase 1)
137
+
138
+ ```
139
+ create_entry({
140
+ content: "<full inventory with all scorecards + gap analysis>",
141
+ entry_type: "docs_marketing_profile",
142
+ tags: ["docs-marketer", "profile"],
143
+ project_number: <project number>
144
+ })
145
+ ```
146
+
147
+ ### Standard Mode: Skip to Phase 3
148
+
149
+ In **standard mode** (`AUDIT_DEPTH: standard`), skip Phase 2 entirely and
150
+ proceed directly to Phase 3 (Improvement Plan) using the Phase 1 findings.
151
+
152
+ ---
153
+
154
+ ## Phase 2 — Skeptical Reader Review (Agent B: The First-Time Evaluator)
155
+
156
+ > **Only runs in adversarial mode** (`AUDIT_DEPTH: adversarial`).
157
+
158
+ Switch mental models. You are now a developer who has never seen this project
159
+ before. You have 5 minutes to decide whether to adopt it or move on. Your job
160
+ is to find where the documentation fails to sell the project.
161
+
162
+ ### Review Dimensions
163
+
164
+ Score each dimension on a 1–5 scale:
165
+
166
+ | Dimension | Weight | Focus Areas |
167
+ | ------------------------ | ------ | ------------------------------------------------------------------------------------------------------------------------------ |
168
+ | **30-Second Test** | 4 | Can someone understand the value proposition in 30 seconds of scanning? Is the tagline clear? Does the badge row convey trust? |
169
+ | **Competitive Survival** | 3 | If choosing between this and an alternative, what would make you leave? What claims feel weak? |
170
+ | **Onboarding Friction** | 3 | Follow the Quick Start literally — where do you get stuck, confused, or need to context-switch? |
171
+ | **Feature Discovery** | 2 | What powerful capabilities are buried? What would surprise a user who only read the first 3 sections? |
172
+ | **Trust Signals** | 2 | Test coverage badges, security claims, maintenance signals — do they feel authentic? |
173
+
174
+ ### The 30-Second Test
175
+
176
+ Read only the first screen (~40 lines) of the README. Answer:
177
+
178
+ 1. What does this project do?
179
+ 2. Why should I use it instead of alternatives?
180
+ 3. How do I get started?
181
+
182
+ If any answer is unclear, that's a finding.
183
+
184
+ ### Competitive Evaluation
185
+
186
+ ```markdown
187
+ ### Competitive Survival Test
188
+
189
+ | Question | Answer | Score (1–5) |
190
+ | ------------------------------------------------------- | ------ | ----------- |
191
+ | Is the value prop clear in the tagline? | | |
192
+ | Does the feature table differentiate or just list? | | |
193
+ | Are comparisons to alternatives explicit or implied? | | |
194
+ | Would a skeptic find the claims credible? | | |
195
+ | Is there social proof (stars, downloads, testimonials)? | | |
196
+ ```
197
+
198
+ ### Under-Marketed Features Audit
199
+
200
+ Identify capabilities that exist in source code but are:
201
+
202
+ - **Buried**: Mentioned only deep in the README (below fold)
203
+ - **Understated**: Mentioned briefly without explaining impact
204
+ - **Missing**: Not documented at all in any surface
205
+ - **Poorly positioned**: Documented but framed as technical detail instead of
206
+ user benefit
207
+
208
+ ### Oversold Features Audit
209
+
210
+ Identify claims that:
211
+
212
+ - Use superlatives without evidence ("best", "fastest", "most comprehensive")
213
+ - Quote metrics without context (e.g., "90% token savings" — compared to what?)
214
+ - Claim features that are opt-in or require significant setup as defaults
215
+
216
+ ### Critique Output Format
217
+
218
+ ```markdown
219
+ ## Skeptical Reader Review — [Repository Name]
220
+
221
+ **Overall Marketing Score:** [weighted average] / 5.0
222
+ **Portfolio Grade:** [A–F]
223
+
224
+ ### Findings
225
+
226
+ | # | Surface | Category | Severity | Finding | Recommendation |
227
+ | --- | ------- | ------------------ | -------- | ---------------------------------- | ----------------------------------------- |
228
+ | 1 | README | First Impression | High | Value prop unclear in tagline | Rewrite tagline to lead with user benefit |
229
+ | 2 | Docker | Feature Visibility | Critical | Missing Code Mode section entirely | Add condensed Code Mode section |
230
+ | 3 | Wiki | Onboarding | Medium | Quick Start assumes GitHub token | Add minimal non-GitHub path |
231
+
232
+ ### Dimension Scores
233
+
234
+ | Dimension | Score | Weight | Weighted |
235
+ | -------------------- | ----- | ------ | -------------------- |
236
+ | 30-Second Test | [1–5] | 4 | [score × 4] |
237
+ | Competitive Survival | [1–5] | 3 | [score × 3] |
238
+ | Onboarding Friction | [1–5] | 3 | [score × 3] |
239
+ | Feature Discovery | [1–5] | 2 | [score × 2] |
240
+ | Trust Signals | [1–5] | 2 | [score × 2] |
241
+ | **Total** | | **14** | **[sum]/70 = [avg]** |
242
+
243
+ ### Blocking Issues
244
+
245
+ Findings that are actively hurting adoption or creating misleading impressions.
246
+ ```
247
+
248
+ ### Journal (Phase 2)
249
+
250
+ ```
251
+ create_entry({
252
+ content: "<full skeptical reader review>",
253
+ entry_type: "docs_marketing_critique",
254
+ tags: ["docs-marketer", "critique"],
255
+ project_number: <project number>
256
+ })
257
+ ```
258
+
259
+ ---
260
+
261
+ ## Phase 3 — Improvement Plan (Agent A: The Marketer)
262
+
263
+ Switch back to the Marketer. Address every finding with a disposition.
264
+
265
+ ### Disposition Table
266
+
267
+ | Disposition | Meaning |
268
+ | ----------- | ------------------------------------------------- |
269
+ | **Accept** | Implement the improvement |
270
+ | **Reject** | Finding doesn't apply or trade-off isn't worth it |
271
+ | **Modify** | Accept the spirit but implement differently |
272
+ | **Defer** | Acknowledge but defer (document why) |
273
+
274
+ ### Improvement Plan Output
275
+
276
+ ```markdown
277
+ ## Improvement Plan — [Repository Name]
278
+
279
+ ### Disposition Summary
280
+
281
+ | # | Surface | Finding | Disposition | Rationale |
282
+ | --- | ------- | ----------------- | ----------- | --------------------------------- |
283
+ | 1 | README | Tagline unclear | Accept | Rewrite to lead with user benefit |
284
+ | 2 | Docker | Missing Code Mode | Accept | Add condensed section |
285
+ | 3 | Wiki | Assumes GitHub | Modify | Add note instead of full rewrite |
286
+
287
+ ### Priority 1 — Quick Wins (<15 minutes per fix)
288
+
289
+ | Surface | Fix | Impact |
290
+ | ------- | ----------------------- | ---------------- |
291
+ | README | Update stale badge URLs | Trust |
292
+ | GitHub | Add missing topics | SEO |
293
+ | README | Strengthen tagline | First Impression |
294
+
295
+ ### Priority 2 — Structural Improvements (30–60 minutes)
296
+
297
+ | Surface | Fix | Impact |
298
+ | ------- | ------------------------------------------- | ------------------ |
299
+ | README | Reorder sections for progressive disclosure | IA |
300
+ | Docker | Add Code Mode summary section | Feature Visibility |
301
+ | Wiki | Create comparison table vs. alternatives | Differentiation |
302
+
303
+ ### Priority 3 — Strategic Improvements (1–2 hours)
304
+
305
+ | Surface | Fix | Impact |
306
+ | ------- | -------------------------------------------------- | --------------- |
307
+ | README | Rewrite "What Sets Us Apart" with concrete metrics | Differentiation |
308
+ | Wiki | Create onboarding guide for non-GitHub users | Onboarding |
309
+ | All | Unify tone and voice across all surfaces | Consistency |
310
+
311
+ ### Projected Marketing Improvement
312
+
313
+ | Metric | Before | After |
314
+ | ----------------------------- | ------ | ----- |
315
+ | Average marketing score | X.X | X.X |
316
+ | Surfaces graded A/B | N/M | N/M |
317
+ | Feature visibility gaps | N | N |
318
+ | Cross-surface inconsistencies | N | N |
319
+ ```
320
+
321
+ ### Iteration Control
322
+
323
+ Check: has `MAX_AUDIT_PASSES` been reached?
324
+
325
+ - **No** → return to Phase 2 (stress-test the improvement plan itself)
326
+ - **Yes** → proceed to Phase 4
327
+
328
+ ### Journal (Phase 3)
329
+
330
+ ```
331
+ create_entry({
332
+ content: "<improvement plan with dispositions>",
333
+ entry_type: "docs_marketing_remediation",
334
+ tags: ["docs-marketer", "remediation"],
335
+ project_number: <project number>
336
+ })
337
+ ```
338
+
339
+ ---
340
+
341
+ ## Phase 4 — Copilot Validation (External)
342
+
343
+ If available, invoke Copilot CLI. See
344
+ [copilot-docs-prompts.md](copilot-docs-prompts.md).
345
+
346
+ If unavailable, skip gracefully.
347
+
348
+ ### Journal (Phase 4)
349
+
350
+ ```
351
+ create_entry({
352
+ content: "<copilot findings + final dispositions>",
353
+ entry_type: "docs_marketing_copilot",
354
+ tags: ["docs-marketer", "copilot"],
355
+ project_number: <project number>
356
+ })
357
+ ```
358
+
359
+ ---
360
+
361
+ ## Final Report Assembly
362
+
363
+ ```markdown
364
+ # Documentation Marketing Audit — [Repository Name]
365
+
366
+ **Date**: [ISO date]
367
+ **Audit Depth**: [standard | adversarial]
368
+ **Surfaces Audited**: N
369
+ **Passes Completed**: N
370
+ **Copilot Validation**: [yes | skipped]
371
+
372
+ ## Executive Summary
373
+
374
+ [2–3 sentences: overall marketing quality, critical gaps, top recommendation]
375
+
376
+ **Portfolio Marketing Score**: [X.X] / 5.0 — Grade [A–F]
377
+
378
+ ## Surface Scoreboard
379
+
380
+ | Surface | Score | Grade | Top Opportunity |
381
+ | ---------------- | ----- | ----- | ----------------------------------- |
382
+ | README.md | 4.2 | B | Strengthen competitive positioning |
383
+ | DOCKER_README.md | 3.0 | C | Missing Code Mode and Hush Protocol |
384
+ | Wiki Home | 3.8 | B | Improve onboarding flow |
385
+
386
+ ## Feature Visibility Gap Map
387
+
388
+ [From Phase 1 — capabilities vs. documentation coverage]
389
+
390
+ ## Top 5 Marketing Improvements (by impact)
391
+
392
+ 1. [Highest-impact improvement]
393
+ 2. ...
394
+
395
+ ## Cross-Surface Consistency Issues
396
+
397
+ [Conflicting information across surfaces]
398
+
399
+ ## Full Findings (by severity)
400
+
401
+ [All findings from Phases 1–2]
402
+
403
+ ## Improvement Plan
404
+
405
+ [From Phase 3 — prioritized with dispositions]
406
+
407
+ ## Per-Surface Scorecards
408
+
409
+ [From Phase 1 — all individual scorecards]
410
+ ```
@@ -0,0 +1,82 @@
1
+ ---
2
+ name: drizzle-orm
3
+ description: |
4
+ Drizzle ORM best practices. Use when configuring databases, designing schemas, writing queries, or handling migrations with Drizzle ORM, particularly with Cloudflare D1 or SQLite. NOT for database setup without an explicit engine. Require engine specification (Postgres/MySQL/SQLite). Use for ORM-managed migrations.
5
+ ---
6
+
7
+ # Drizzle ORM Guidelines
8
+
9
+ This skill provides opinionated standards for using Drizzle ORM, optimized for TypeScript and edge databases like Cloudflare D1.
10
+
11
+ ## 1. Core Principles
12
+
13
+ - **Single Source of Truth**: Define your database schema in TypeScript. Let Drizzle generate the SQL migrations.
14
+ - **Explicit Returns**: Always explicitly select the columns you need using `.select({ id: table.id })`. Avoid `select *` in production queries to minimize payload size and improve performance.
15
+ - **Relational Queries**: Use Drizzle's Relational Query API (`db.query`) for complex joined data fetching, but use the Core API (`db.select().from()`) for mutations and simple lookups.
16
+ - **Type Inference**: Use `typeof schema.table.$inferSelect` and `$inferInsert` to generate application types directly from the schema.
17
+
18
+ ## 2. Schema Definition
19
+
20
+ Always define schemas with precise types and constraints.
21
+
22
+ ```typescript
23
+ import { sqliteTable, text, integer } from 'drizzle-orm/sqlite-core'
24
+
25
+ export const users = sqliteTable('users', {
26
+ id: integer('id').primaryKey({ autoIncrement: true }),
27
+ email: text('email').notNull().unique(),
28
+ name: text('name').notNull(),
29
+ createdAt: integer('created_at', { mode: 'timestamp' })
30
+ .notNull()
31
+ .$defaultFn(() => new Date()),
32
+ })
33
+
34
+ export type User = typeof users.$inferSelect
35
+ export type NewUser = typeof users.$inferInsert
36
+ ```
37
+
38
+ ## 3. Querying Patterns
39
+
40
+ ### Inserts and Returning
41
+
42
+ ```typescript
43
+ const result = await db
44
+ .insert(users)
45
+ .values({ email: 'test@example.com', name: 'Test' })
46
+ .returning() // Supported in D1
47
+ ```
48
+
49
+ ### Relational Queries (Read-Heavy)
50
+
51
+ Ensure you define relations in your schema file:
52
+
53
+ ```typescript
54
+ export const usersRelations = relations(users, ({ many }) => ({
55
+ posts: many(posts),
56
+ }))
57
+ ```
58
+
59
+ Fetch deeply nested data easily:
60
+
61
+ ```typescript
62
+ const userWithPosts = await db.query.users.findFirst({
63
+ where: eq(users.id, 1),
64
+ with: {
65
+ posts: true,
66
+ },
67
+ })
68
+ ```
69
+
70
+ ## 4. Migrations (Cloudflare D1)
71
+
72
+ Always generate migrations locally and apply them via Wrangler. Never execute `db.execute()` with raw migration SQL at runtime.
73
+
74
+ 1. Generate: `npx drizzle-kit generate`
75
+ 2. Apply Locally: `npx wrangler d1 migrations apply my-db --local`
76
+ 3. Apply Remote: `npx wrangler d1 migrations apply my-db --remote`
77
+
78
+ ## 5. Security & Safety
79
+
80
+ - **SQL Injection**: Drizzle is inherently safe against SQL injection as long as you use its builder functions (`eq()`, `like()`, `insert()`). Do not use `sql\`\`` with raw unescaped input.
81
+ - **Transactions**: Use `db.transaction()` for multi-step operations to ensure data integrity.
82
+ - **Migration Commits**: Always commit the generated `.sql` migration files to version control.
@@ -0,0 +1,167 @@
1
+ ---
2
+ name: durable-objects
3
+ description: Create and review Cloudflare Durable Objects. Use when building stateful coordination (chat rooms, multiplayer games, booking systems), implementing RPC methods, SQLite storage, alarms, WebSockets, or reviewing DO code for best practices. Covers Workers integration, wrangler config, and testing with Vitest.
4
+ ---
5
+
6
+ # Durable Objects
7
+
8
+ Build stateful, coordinated applications on Cloudflare's edge using Durable Objects.
9
+
10
+ ## Retrieval-First Development
11
+
12
+ **Prefer retrieval from official docs over pre-training for Durable Objects tasks.**
13
+
14
+ | Resource | URL |
15
+ | -------------- | ----------------------------------------------------------------- |
16
+ | Docs | https://developers.cloudflare.com/durable-objects/ |
17
+ | API Reference | https://developers.cloudflare.com/durable-objects/api/ |
18
+ | Best Practices | https://developers.cloudflare.com/durable-objects/best-practices/ |
19
+ | Examples | https://developers.cloudflare.com/durable-objects/examples/ |
20
+
21
+ Fetch the relevant doc page when implementing features.
22
+
23
+ ## When to Use
24
+
25
+ - Creating new Durable Object classes for stateful coordination
26
+ - Implementing RPC methods, alarms, or WebSocket handlers
27
+ - Reviewing existing DO code for best practices
28
+ - Configuring wrangler.jsonc/toml for DO bindings and migrations
29
+ - Writing tests with `@cloudflare/vitest-pool-workers`
30
+ - Designing sharding strategies and parent-child relationships
31
+
32
+ ## Reference Documentation
33
+
34
+ - `./references/rules.md` - Core rules, storage, concurrency, RPC, alarms
35
+ - `./references/testing.md` - Vitest setup, unit/integration tests, alarm testing
36
+ - `./references/workers.md` - Workers handlers, types, wrangler config, observability
37
+
38
+ Search: `blockConcurrencyWhile`, `idFromName`, `getByName`, `setAlarm`, `sql.exec`
39
+
40
+ ## Core Principles
41
+
42
+ ### Use Durable Objects For
43
+
44
+ | Need | Example |
45
+ | ------------------------- | ------------------------------------------------- |
46
+ | Coordination | Chat rooms, multiplayer games, collaborative docs |
47
+ | Strong consistency | Inventory, booking systems, turn-based games |
48
+ | Per-entity storage | Multi-tenant SaaS, per-user data |
49
+ | Persistent connections | WebSockets, real-time notifications |
50
+ | Scheduled work per entity | Subscription renewals, game timeouts |
51
+
52
+ ### Do NOT Use For
53
+
54
+ - Stateless request handling (use plain Workers)
55
+ - Maximum global distribution needs
56
+ - High fan-out independent requests
57
+
58
+ ## Quick Reference
59
+
60
+ ### Wrangler Configuration
61
+
62
+ ```jsonc
63
+ // wrangler.jsonc
64
+ {
65
+ "durable_objects": {
66
+ "bindings": [{ "name": "MY_DO", "class_name": "MyDurableObject" }],
67
+ },
68
+ "migrations": [{ "tag": "v1", "new_sqlite_classes": ["MyDurableObject"] }],
69
+ }
70
+ ```
71
+
72
+ ### Basic Durable Object Pattern
73
+
74
+ ```typescript
75
+ import { DurableObject } from 'cloudflare:workers'
76
+
77
+ export interface Env {
78
+ MY_DO: DurableObjectNamespace<MyDurableObject>
79
+ }
80
+
81
+ export class MyDurableObject extends DurableObject<Env> {
82
+ constructor(ctx: DurableObjectState, env: Env) {
83
+ super(ctx, env)
84
+ ctx.blockConcurrencyWhile(async () => {
85
+ this.ctx.storage.sql.exec(`
86
+ CREATE TABLE IF NOT EXISTS items (
87
+ id INTEGER PRIMARY KEY AUTOINCREMENT,
88
+ data TEXT NOT NULL
89
+ )
90
+ `)
91
+ })
92
+ }
93
+
94
+ async addItem(data: string): Promise<number> {
95
+ const result = this.ctx.storage.sql.exec<{ id: number }>(
96
+ 'INSERT INTO items (data) VALUES (?) RETURNING id',
97
+ data
98
+ )
99
+ return result.one().id
100
+ }
101
+ }
102
+
103
+ export default {
104
+ async fetch(request: Request, env: Env): Promise<Response> {
105
+ const stub = env.MY_DO.getByName('my-instance')
106
+ const id = await stub.addItem('hello')
107
+ return Response.json({ id })
108
+ },
109
+ }
110
+ ```
111
+
112
+ ## Critical Rules
113
+
114
+ 1. **Model around coordination atoms** - One DO per chat room/game/user, not one global DO
115
+ 2. **Use `getByName()` for deterministic routing** - Same input = same DO instance
116
+ 3. **Use SQLite storage** - Configure `new_sqlite_classes` in migrations
117
+ 4. **Initialize in constructor** - Use `blockConcurrencyWhile()` for schema setup only
118
+ 5. **Use RPC methods** - Use RPC for DO-to-DO communication (compatibility date >= 2024-04-03). The outer Worker can still use the standard `fetch()` handler to route to the DO stub.
119
+ 6. **Persist first, cache second** - Always write to storage before updating in-memory state
120
+ 7. **One alarm per DO** - `setAlarm()` replaces any existing alarm
121
+
122
+ ## Anti-Patterns (NEVER)
123
+
124
+ - Single global DO handling all requests (bottleneck)
125
+ - Using `blockConcurrencyWhile()` on every request (kills throughput)
126
+ - Storing critical state only in memory (lost on eviction/crash)
127
+ - Using `await` between related storage writes (breaks atomicity)
128
+ - Holding `blockConcurrencyWhile()` across `fetch()` or external I/O
129
+
130
+ ## Stub Creation
131
+
132
+ ```typescript
133
+ // Deterministic - preferred for most cases
134
+ const stub = env.MY_DO.getByName('room-123')
135
+
136
+ // From existing ID string
137
+ const id = env.MY_DO.idFromString(storedIdString)
138
+ const stub = env.MY_DO.get(id)
139
+
140
+ // New unique ID - store mapping externally
141
+ const id = env.MY_DO.newUniqueId()
142
+ const stub = env.MY_DO.get(id)
143
+ ```
144
+
145
+ ## Advanced Features
146
+
147
+ See [references/advanced_features.md](references/advanced_features.md) for detailed examples of Storage Operations (SQL and KV) and Alarms scheduling.
148
+
149
+ ## Security
150
+
151
+ - **RPC Access Control**: RPC methods are public to any caller with a stub. Implement authorization inside the method body (e.g., check `this.env.AUTH_TOKEN`).
152
+ - **WebSockets**: Validate WebSocket origin in `onConnect()` to prevent cross-site hijacking.
153
+
154
+ ## Testing Quick Start
155
+
156
+ ```typescript
157
+ import { env } from 'cloudflare:test'
158
+ import { describe, it, expect } from 'vitest'
159
+
160
+ describe('MyDO', () => {
161
+ it('should work', async () => {
162
+ const stub = env.MY_DO.getByName('test')
163
+ const result = await stub.addItem('test')
164
+ expect(result).toBe(1)
165
+ })
166
+ })
167
+ ```
@@ -0,0 +1,29 @@
1
+ # Advanced Durable Object Features
2
+
3
+ ## Storage Operations
4
+
5
+ ```typescript
6
+ // SQL (synchronous, recommended)
7
+ this.ctx.storage.sql.exec('INSERT INTO t (c) VALUES (?)', value)
8
+ const rows = this.ctx.storage.sql.exec<Row>('SELECT * FROM t').toArray()
9
+
10
+ // KV (async)
11
+ await this.ctx.storage.put('key', value)
12
+ const val = await this.ctx.storage.get<Type>('key')
13
+ ```
14
+
15
+ ## Alarms
16
+
17
+ ```typescript
18
+ // Schedule (replaces existing)
19
+ await this.ctx.storage.setAlarm(Date.now() + 60_000);
20
+
21
+ // Handler
22
+ async alarm(): Promise<void> {
23
+ // Process scheduled work
24
+ // Optionally reschedule: await this.ctx.storage.setAlarm(...)
25
+ }
26
+
27
+ // Cancel
28
+ await this.ctx.storage.deleteAlarm();
29
+ ```