dreamcontext 0.5.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 (247) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +523 -0
  3. package/agents/dreamcontext-explore.md +137 -0
  4. package/agents/dreamcontext-initializer.md +169 -0
  5. package/agents/sleep-product.md +268 -0
  6. package/agents/sleep-state.md +270 -0
  7. package/agents/sleep-tasks.md +134 -0
  8. package/dist/agents/dreamcontext-explore.md +137 -0
  9. package/dist/agents/dreamcontext-initializer.md +169 -0
  10. package/dist/agents/sleep-product.md +268 -0
  11. package/dist/agents/sleep-state.md +270 -0
  12. package/dist/agents/sleep-tasks.md +134 -0
  13. package/dist/dashboard/assets/BrainCanvas3D-BLJ4_SqE.js +5126 -0
  14. package/dist/dashboard/assets/_baseUniq-DpaDAx_H.js +1 -0
  15. package/dist/dashboard/assets/arc-JvK3Ik1p.js +1 -0
  16. package/dist/dashboard/assets/architectureDiagram-Q4EWVU46-CCvw4XFg.js +36 -0
  17. package/dist/dashboard/assets/blockDiagram-DXYQGD6D-DMobz1n7.js +132 -0
  18. package/dist/dashboard/assets/c4Diagram-AHTNJAMY-FwcHT5er.js +10 -0
  19. package/dist/dashboard/assets/channel-D6954IHZ.js +1 -0
  20. package/dist/dashboard/assets/chunk-4BX2VUAB-B5kYwmBa.js +1 -0
  21. package/dist/dashboard/assets/chunk-4TB4RGXK-0ot1eS0J.js +206 -0
  22. package/dist/dashboard/assets/chunk-55IACEB6-24ngcLgH.js +1 -0
  23. package/dist/dashboard/assets/chunk-EDXVE4YY-DATt1OUl.js +1 -0
  24. package/dist/dashboard/assets/chunk-FMBD7UC4-BprbGSJw.js +15 -0
  25. package/dist/dashboard/assets/chunk-OYMX7WX6-CJJhpKWP.js +231 -0
  26. package/dist/dashboard/assets/chunk-QZHKN3VN-Cisp65Vq.js +1 -0
  27. package/dist/dashboard/assets/chunk-YZCP3GAM-DtMk33tU.js +1 -0
  28. package/dist/dashboard/assets/classDiagram-6PBFFD2Q-Bk4KDqBj.js +1 -0
  29. package/dist/dashboard/assets/classDiagram-v2-HSJHXN6E-Bk4KDqBj.js +1 -0
  30. package/dist/dashboard/assets/clone-C9Yhti5q.js +1 -0
  31. package/dist/dashboard/assets/cose-bilkent-S5V4N54A-BxYomDLe.js +1 -0
  32. package/dist/dashboard/assets/cytoscape.esm-D_LviqZs.js +331 -0
  33. package/dist/dashboard/assets/dagre-KV5264BT-CsX1ZayG.js +4 -0
  34. package/dist/dashboard/assets/defaultLocale-DX6XiGOO.js +1 -0
  35. package/dist/dashboard/assets/diagram-5BDNPKRD-B2G4mPPw.js +10 -0
  36. package/dist/dashboard/assets/diagram-G4DWMVQ6-C8nxN9ZB.js +24 -0
  37. package/dist/dashboard/assets/diagram-MMDJMWI5-DaYymOrR.js +43 -0
  38. package/dist/dashboard/assets/diagram-TYMM5635-BpiYFv-I.js +24 -0
  39. package/dist/dashboard/assets/erDiagram-SMLLAGMA-C6pE7F61.js +85 -0
  40. package/dist/dashboard/assets/flowDiagram-DWJPFMVM-jdNEPVFq.js +162 -0
  41. package/dist/dashboard/assets/ganttDiagram-T4ZO3ILL-C8GoRj1C.js +292 -0
  42. package/dist/dashboard/assets/gitGraphDiagram-UUTBAWPF-SiRn7RJ8.js +106 -0
  43. package/dist/dashboard/assets/graph-9wbTW7ld.js +1 -0
  44. package/dist/dashboard/assets/index-BHp63EMw.js +475 -0
  45. package/dist/dashboard/assets/index-CdnDt_7U.css +1 -0
  46. package/dist/dashboard/assets/infoDiagram-42DDH7IO-DcDC8M1a.js +2 -0
  47. package/dist/dashboard/assets/ishikawaDiagram-UXIWVN3A-UjyrPeaS.js +70 -0
  48. package/dist/dashboard/assets/journeyDiagram-VCZTEJTY-CXJPYMxN.js +139 -0
  49. package/dist/dashboard/assets/kanban-definition-6JOO6SKY-Cm1n9eat.js +89 -0
  50. package/dist/dashboard/assets/katex-DkKDou_j.js +257 -0
  51. package/dist/dashboard/assets/layout-w8zmQGXp.js +1 -0
  52. package/dist/dashboard/assets/linear-CMNvIisH.js +1 -0
  53. package/dist/dashboard/assets/min-BqXwiqEr.js +1 -0
  54. package/dist/dashboard/assets/mindmap-definition-QFDTVHPH-tksxnjhx.js +96 -0
  55. package/dist/dashboard/assets/pieDiagram-DEJITSTG-lIVvnPyq.js +30 -0
  56. package/dist/dashboard/assets/quadrantDiagram-34T5L4WZ-DSMB57t5.js +7 -0
  57. package/dist/dashboard/assets/requirementDiagram-MS252O5E-NG99tgmc.js +84 -0
  58. package/dist/dashboard/assets/sankeyDiagram-XADWPNL6-C6EkbQKo.js +10 -0
  59. package/dist/dashboard/assets/sequenceDiagram-FGHM5R23-ASU7Zp6_.js +157 -0
  60. package/dist/dashboard/assets/stateDiagram-FHFEXIEX-DHklUzce.js +1 -0
  61. package/dist/dashboard/assets/stateDiagram-v2-QKLJ7IA2-BZXFb2Fh.js +1 -0
  62. package/dist/dashboard/assets/timeline-definition-GMOUNBTQ-B37xNhjS.js +120 -0
  63. package/dist/dashboard/assets/vennDiagram-DHZGUBPP-D28OvWbm.js +34 -0
  64. package/dist/dashboard/assets/wardley-RL74JXVD-BQdaLyVb.js +162 -0
  65. package/dist/dashboard/assets/wardleyDiagram-NUSXRM2D-D0vChrnT.js +20 -0
  66. package/dist/dashboard/assets/xychartDiagram-5P7HB3ND-BzSx7EpJ.js +7 -0
  67. package/dist/dashboard/favicon.svg +14 -0
  68. package/dist/dashboard/index.html +18 -0
  69. package/dist/hooks/marketing-binary-guard.sh +18 -0
  70. package/dist/index.js +15881 -0
  71. package/dist/skill-packs/agents/biv-customer-analyst.md +140 -0
  72. package/dist/skill-packs/agents/biv-decision-gate.md +147 -0
  73. package/dist/skill-packs/agents/biv-financial-analyst.md +128 -0
  74. package/dist/skill-packs/agents/biv-market-analyst.md +103 -0
  75. package/dist/skill-packs/agents/biv-researcher.md +140 -0
  76. package/dist/skill-packs/agents/biv-strategist.md +164 -0
  77. package/dist/skill-packs/agents/council-persona.md +142 -0
  78. package/dist/skill-packs/agents/council-synthesizer.md +208 -0
  79. package/dist/skill-packs/agents/discover-brand.md +216 -0
  80. package/dist/skill-packs/agents/goal-implementer.md +70 -0
  81. package/dist/skill-packs/agents/goal-plan-reviewer.md +68 -0
  82. package/dist/skill-packs/agents/goal-planner.md +75 -0
  83. package/dist/skill-packs/agents/goal-validator.md +68 -0
  84. package/dist/skill-packs/agents/marketing-creative.md +85 -0
  85. package/dist/skill-packs/agents/marketing-monitor.md +143 -0
  86. package/dist/skill-packs/agents/marketing-strategy.md +139 -0
  87. package/dist/skill-packs/agents/review-cloud-functions.md +158 -0
  88. package/dist/skill-packs/agents/review-edge-cases.md +147 -0
  89. package/dist/skill-packs/agents/review-frontend.md +134 -0
  90. package/dist/skill-packs/agents/review-router.md +165 -0
  91. package/dist/skill-packs/agents/review-security.md +139 -0
  92. package/dist/skill-packs/agents/reviewer.md +152 -0
  93. package/dist/skill-packs/brand-voice/SKILL.md +115 -0
  94. package/dist/skill-packs/brand-voice/discover-brand.md +126 -0
  95. package/dist/skill-packs/brand-voice/guideline-generation.md +154 -0
  96. package/dist/skill-packs/brand-voice/references/before-after-examples.md +194 -0
  97. package/dist/skill-packs/brand-voice/references/confidence-scoring.md +128 -0
  98. package/dist/skill-packs/brand-voice/references/guideline-template.md +241 -0
  99. package/dist/skill-packs/brand-voice/references/search-strategies.md +271 -0
  100. package/dist/skill-packs/brand-voice/references/source-ranking.md +248 -0
  101. package/dist/skill-packs/brand-voice/references/voice-constant-tone-flexes.md +115 -0
  102. package/dist/skill-packs/business-idea-discovery/SKILL.md +452 -0
  103. package/dist/skill-packs/business-idea-validation/SKILL.md +209 -0
  104. package/dist/skill-packs/business-idea-validation/stage-definitions.md +658 -0
  105. package/dist/skill-packs/catalog.json +657 -0
  106. package/dist/skill-packs/council/SKILL.md +134 -0
  107. package/dist/skill-packs/council/debate-protocol.md +90 -0
  108. package/dist/skill-packs/design/SKILL.md +301 -0
  109. package/dist/skill-packs/design/design-mobile.md +207 -0
  110. package/dist/skill-packs/design/design-web.md +148 -0
  111. package/dist/skill-packs/design/frontend-principles.md +157 -0
  112. package/dist/skill-packs/design/onboarding-design.md +230 -0
  113. package/dist/skill-packs/engineering/SKILL.md +155 -0
  114. package/dist/skill-packs/engineering/backend-principles.md +233 -0
  115. package/dist/skill-packs/engineering/firebase-cloud-functions/SKILL.md +44 -0
  116. package/dist/skill-packs/engineering/firebase-cloud-functions/references/gen_comparison.md +45 -0
  117. package/dist/skill-packs/engineering/firebase-cloud-functions/references/idempotency.md +145 -0
  118. package/dist/skill-packs/engineering/firebase-cloud-functions/references/local_testing.md +218 -0
  119. package/dist/skill-packs/engineering/firebase-cloud-functions/references/scaling.md +128 -0
  120. package/dist/skill-packs/engineering/firebase-cloud-functions/references/secrets.md +70 -0
  121. package/dist/skill-packs/engineering/firebase-cloud-functions/references/triggers_and_deployment.md +139 -0
  122. package/dist/skill-packs/engineering/firebase-firestore/SKILL.md +50 -0
  123. package/dist/skill-packs/engineering/firebase-firestore/references/indexes.md +96 -0
  124. package/dist/skill-packs/engineering/firebase-firestore/references/provisioning.md +101 -0
  125. package/dist/skill-packs/engineering/firebase-firestore/references/query_mechanics.md +182 -0
  126. package/dist/skill-packs/engineering/firebase-firestore/references/security_rules.md +299 -0
  127. package/dist/skill-packs/engineering/firebase-firestore/references/web_sdk_usage.md +265 -0
  128. package/dist/skill-packs/engineering/web-app-frontend.md +187 -0
  129. package/dist/skill-packs/goal-skill/SKILL.md +203 -0
  130. package/dist/skill-packs/growth/SKILL.md +480 -0
  131. package/dist/skill-packs/growth/lean-analytics-experiments.md +341 -0
  132. package/dist/skill-packs/growth/lean-analytics-metrics.md +295 -0
  133. package/dist/skill-packs/growth/performance-marketing.md +337 -0
  134. package/dist/skill-packs/meta-marketing/SKILL.md +423 -0
  135. package/dist/skill-packs/meta-marketing/account-ops.md +190 -0
  136. package/dist/skill-packs/meta-marketing/api-reference.md +535 -0
  137. package/dist/skill-packs/meta-marketing/copy-formulas.md +123 -0
  138. package/dist/skill-packs/meta-marketing/council-personas/creative-director.md +76 -0
  139. package/dist/skill-packs/meta-marketing/council-personas/performance-monitor.md +71 -0
  140. package/dist/skill-packs/meta-marketing/council-personas/risk-officer.md +79 -0
  141. package/dist/skill-packs/meta-marketing/council-personas/strategy-optimizer.md +76 -0
  142. package/dist/skill-packs/meta-marketing/creative-frameworks.md +176 -0
  143. package/dist/skill-packs/meta-marketing/mistakes.md +154 -0
  144. package/dist/skill-packs/meta-marketing/platform-state.md +63 -0
  145. package/dist/skill-packs/multi-review/REVIEWER_SHARED.md +143 -0
  146. package/dist/skill-packs/multi-review/SKILL.md +182 -0
  147. package/dist/skill-packs/system-prompts/SKILL.md +472 -0
  148. package/dist/templates/AGENTS.md +84 -0
  149. package/dist/templates/CLAUDE.md +84 -0
  150. package/dist/templates/council-debate.md +20 -0
  151. package/dist/templates/council-final-report.md +34 -0
  152. package/dist/templates/council-persona.md +10 -0
  153. package/dist/templates/council-report.md +6 -0
  154. package/dist/templates/feature.md +38 -0
  155. package/dist/templates/init/0.soul.md +33 -0
  156. package/dist/templates/init/1.user.md +29 -0
  157. package/dist/templates/init/2.memory.md +21 -0
  158. package/dist/templates/init/3.style_guide_and_branding.md +18 -0
  159. package/dist/templates/init/4.tech_stack.md +22 -0
  160. package/dist/templates/init/CHANGELOG.json +1 -0
  161. package/dist/templates/init/RELEASES.json +1 -0
  162. package/dist/templates/init/data-structures/default.md +35 -0
  163. package/dist/templates/knowledge.md +10 -0
  164. package/dist/templates/obsidian/app.json +15 -0
  165. package/dist/templates/obsidian/appearance.json +4 -0
  166. package/dist/templates/obsidian/graph.json +58 -0
  167. package/dist/templates/task.md +70 -0
  168. package/install.sh +73 -0
  169. package/package.json +58 -0
  170. package/skill/SKILL.md +529 -0
  171. package/skill-packs/agents/biv-customer-analyst.md +140 -0
  172. package/skill-packs/agents/biv-decision-gate.md +147 -0
  173. package/skill-packs/agents/biv-financial-analyst.md +128 -0
  174. package/skill-packs/agents/biv-market-analyst.md +103 -0
  175. package/skill-packs/agents/biv-researcher.md +140 -0
  176. package/skill-packs/agents/biv-strategist.md +164 -0
  177. package/skill-packs/agents/council-persona.md +142 -0
  178. package/skill-packs/agents/council-synthesizer.md +208 -0
  179. package/skill-packs/agents/discover-brand.md +216 -0
  180. package/skill-packs/agents/goal-implementer.md +70 -0
  181. package/skill-packs/agents/goal-plan-reviewer.md +68 -0
  182. package/skill-packs/agents/goal-planner.md +75 -0
  183. package/skill-packs/agents/goal-validator.md +68 -0
  184. package/skill-packs/agents/marketing-creative.md +85 -0
  185. package/skill-packs/agents/marketing-monitor.md +143 -0
  186. package/skill-packs/agents/marketing-strategy.md +139 -0
  187. package/skill-packs/agents/review-cloud-functions.md +158 -0
  188. package/skill-packs/agents/review-edge-cases.md +147 -0
  189. package/skill-packs/agents/review-frontend.md +134 -0
  190. package/skill-packs/agents/review-router.md +165 -0
  191. package/skill-packs/agents/review-security.md +139 -0
  192. package/skill-packs/agents/reviewer.md +152 -0
  193. package/skill-packs/brand-voice/SKILL.md +115 -0
  194. package/skill-packs/brand-voice/discover-brand.md +126 -0
  195. package/skill-packs/brand-voice/guideline-generation.md +154 -0
  196. package/skill-packs/brand-voice/references/before-after-examples.md +194 -0
  197. package/skill-packs/brand-voice/references/confidence-scoring.md +128 -0
  198. package/skill-packs/brand-voice/references/guideline-template.md +241 -0
  199. package/skill-packs/brand-voice/references/search-strategies.md +271 -0
  200. package/skill-packs/brand-voice/references/source-ranking.md +248 -0
  201. package/skill-packs/brand-voice/references/voice-constant-tone-flexes.md +115 -0
  202. package/skill-packs/business-idea-discovery/SKILL.md +452 -0
  203. package/skill-packs/business-idea-validation/SKILL.md +209 -0
  204. package/skill-packs/business-idea-validation/stage-definitions.md +658 -0
  205. package/skill-packs/catalog.json +657 -0
  206. package/skill-packs/council/SKILL.md +134 -0
  207. package/skill-packs/council/debate-protocol.md +90 -0
  208. package/skill-packs/design/SKILL.md +301 -0
  209. package/skill-packs/design/design-mobile.md +207 -0
  210. package/skill-packs/design/design-web.md +148 -0
  211. package/skill-packs/design/frontend-principles.md +157 -0
  212. package/skill-packs/design/onboarding-design.md +230 -0
  213. package/skill-packs/engineering/SKILL.md +155 -0
  214. package/skill-packs/engineering/backend-principles.md +233 -0
  215. package/skill-packs/engineering/firebase-cloud-functions/SKILL.md +44 -0
  216. package/skill-packs/engineering/firebase-cloud-functions/references/gen_comparison.md +45 -0
  217. package/skill-packs/engineering/firebase-cloud-functions/references/idempotency.md +145 -0
  218. package/skill-packs/engineering/firebase-cloud-functions/references/local_testing.md +218 -0
  219. package/skill-packs/engineering/firebase-cloud-functions/references/scaling.md +128 -0
  220. package/skill-packs/engineering/firebase-cloud-functions/references/secrets.md +70 -0
  221. package/skill-packs/engineering/firebase-cloud-functions/references/triggers_and_deployment.md +139 -0
  222. package/skill-packs/engineering/firebase-firestore/SKILL.md +50 -0
  223. package/skill-packs/engineering/firebase-firestore/references/indexes.md +96 -0
  224. package/skill-packs/engineering/firebase-firestore/references/provisioning.md +101 -0
  225. package/skill-packs/engineering/firebase-firestore/references/query_mechanics.md +182 -0
  226. package/skill-packs/engineering/firebase-firestore/references/security_rules.md +299 -0
  227. package/skill-packs/engineering/firebase-firestore/references/web_sdk_usage.md +265 -0
  228. package/skill-packs/engineering/web-app-frontend.md +187 -0
  229. package/skill-packs/goal-skill/SKILL.md +203 -0
  230. package/skill-packs/growth/SKILL.md +480 -0
  231. package/skill-packs/growth/lean-analytics-experiments.md +341 -0
  232. package/skill-packs/growth/lean-analytics-metrics.md +295 -0
  233. package/skill-packs/growth/performance-marketing.md +337 -0
  234. package/skill-packs/meta-marketing/SKILL.md +423 -0
  235. package/skill-packs/meta-marketing/account-ops.md +190 -0
  236. package/skill-packs/meta-marketing/api-reference.md +535 -0
  237. package/skill-packs/meta-marketing/copy-formulas.md +123 -0
  238. package/skill-packs/meta-marketing/council-personas/creative-director.md +76 -0
  239. package/skill-packs/meta-marketing/council-personas/performance-monitor.md +71 -0
  240. package/skill-packs/meta-marketing/council-personas/risk-officer.md +79 -0
  241. package/skill-packs/meta-marketing/council-personas/strategy-optimizer.md +76 -0
  242. package/skill-packs/meta-marketing/creative-frameworks.md +176 -0
  243. package/skill-packs/meta-marketing/mistakes.md +154 -0
  244. package/skill-packs/meta-marketing/platform-state.md +63 -0
  245. package/skill-packs/multi-review/REVIEWER_SHARED.md +143 -0
  246. package/skill-packs/multi-review/SKILL.md +182 -0
  247. package/skill-packs/system-prompts/SKILL.md +472 -0
@@ -0,0 +1,63 @@
1
+ ---
2
+ title: "Meta Platform State"
3
+ purpose: "Time-stamped Meta UI and algorithm facts that change over time. Separate from operator rules — these describe what Meta's platform looks like RIGHT NOW, not how to use it. Update this file when Meta changes a default, removes a feature, or shifts algorithm behavior."
4
+ last_verified: "2026-04-25"
5
+ ---
6
+
7
+ # Meta Platform State (as of 2026-04-25)
8
+
9
+ These are facts about Meta's current platform behavior — UI defaults, algorithm changes, and known shifts. They are distinct from operator rules (which are in `account-ops.md`) and creative rules (which are in `copy-formulas.md`).
10
+
11
+ **When reading this file:** Check `last_verified` date. If it is more than 60 days ago, treat entries as potentially stale and verify in Ads Manager before relying on them.
12
+
13
+ ---
14
+
15
+ ## Current Defaults (may differ from what operators remember)
16
+
17
+ | Setting | Current default | Changed from | Date confirmed | Source |
18
+ |---|---|---|---|---|
19
+ | Attribution window | **1-day view** | Previously 7-day click + 1-day view | 2026 | mistakes-report-2026 |
20
+ | Campaign type recommendation | Advantage+ campaigns | Manual campaigns (ABO/CBO) | 2025 | Ben Heath (`dAJyqo6wnq4`), mistakes-report-2026 |
21
+ | Targeting | Advantage+ Audience (suggestions, not hard constraints) | Interest targeting as hard filters | 2024–2025 | Ben Heath (`JLlcwojiVtw`), mistakes-report-2026 |
22
+ | Placements | Advantage+ placements (all placements auto-selected) | Manual placement selection | 2024 | Ben Heath (`JLlcwojiVtw`), Moonlighters (`FYUR8ZL4_xY`) |
23
+
24
+ **Operator implication — attribution window:** Meta now reports on a shorter window by default. Your reported ROAS may appear lower than before even if real performance is unchanged. Always compare apples-to-apples when benchmarking: same attribution window, same date ranges.
25
+
26
+ ---
27
+
28
+ ## Known Algorithm Behavior (current)
29
+
30
+ | Behavior | Detail | Date confirmed | Source |
31
+ |---|---|---|---|
32
+ | Meta uses ads within one adset in funnel sequences | Meta may show ad A first (top-funnel), then ad B (conversion). Ad A will have low ROAS but is doing real work. | 2026-04-25 | Ben Heath (`13s-G9Uj51A`, `kuSq-pmNfnM`) |
33
+ | Targeting inputs are suggestions, not constraints | Even if you set interests or custom audience targeting, Meta may deliver outside those boundaries unless you explicitly force hard constraints via hidden settings. | 2025–2026 | Ben Heath, Charlie, Moonlighters (all 3 speakers) |
34
+ | Advantage+ Shopping YoY improvement | Meta reported ~70% YoY improvement in Advantage+ Shopping campaign performance in Q4 2024 | Q4 2024 | mistakes-report-2026 |
35
+ | Andromeda algorithm rollout | Meta's new AI delivery system (Andromeda) rolled out broadly. Affects targeting, delivery sequencing, and optimization. Heavily favors broad signals over narrow ones. | 2025-12 | mistakes-report-2026 |
36
+ | Andromeda creative-pool reweighting | Andromeda rewards larger creative pools per adset (15–30 ads) over the pre-Andromeda 3–10 norm. Smaller pools starve the algorithm of optimization signal. The 3–10 figure in older corpus sources predates this shift. | 2026 | SKILL.md §III update 2026-04-26; user-flagged gap |
37
+
38
+ ---
39
+
40
+ ## Known UI Changes
41
+
42
+ | Change | Detail | Date | Source |
43
+ |---|---|---|---|
44
+ | Exclude custom audiences is now a hard exclusion | Previously "exclude" was treated as a soft signal; Meta could override it. As of 2026, exclusions are enforced as hard boundaries. | 2026-04-25 | Ben Heath (`13s-G9Uj51A` §1) |
45
+ | Learning phase threshold | ~50 conversions/week per adset to exit learning phase. This number has been consistent since 2023 but worth verifying if Meta updates guidance. | 2023–2026 | mistakes-report-2026, Ben Heath |
46
+
47
+ ---
48
+
49
+ ## Deprecations / Removed Features
50
+
51
+ | Feature | Status | Last seen | Notes |
52
+ |---|---|---|---|
53
+ | Interest-based targeting as primary strategy | Effectively deprecated — Meta ignores or overrides in most cases | 2023 | Still available in UI but corpus consensus is it no longer performs |
54
+ | Manual bidding as default approach | Still available but not recommended for most accounts | 2024 | Use auto-bid unless you have a specific bid strategy rationale |
55
+
56
+ ---
57
+
58
+ ## What to check when this file feels stale
59
+
60
+ 1. Open Ads Manager → any campaign → verify the attribution window shown in column settings
61
+ 2. Check Meta's "What's New" in Business Help Center for algorithm updates
62
+ 3. Run a test campaign and check whether interest targeting is being overridden in Delivery Insights
63
+ 4. Update `last_verified` date after verification
@@ -0,0 +1,143 @@
1
+ # REVIEWER_SHARED — rules every specialist obeys
2
+
3
+ This file is the shared contract for the multi-reviewer system. The router and
4
+ every specialist read it. Do not duplicate its content into specialist files;
5
+ reference it.
6
+
7
+ ---
8
+
9
+ ## 1. Severity rubric (use these exact labels)
10
+
11
+ | Label | Meaning | Coordinator action |
12
+ |---|---|---|
13
+ | **🔴 Critical** | Will cause data loss, security breach, outage, or wrong results in production under plausible conditions. | Blocks merge. |
14
+ | **🟠 Major** | Real bug or measurable regression under plausible conditions. Should fix before merge. | Blocks unless explicitly accepted with a reason. |
15
+ | **🟡 Minor** | Correctness or maintainability concern worth addressing but not blocking. | Advisory. |
16
+ | **⚪ Nit** | Style / preference. Include sparingly. | Advisory. Main agent drops if >5 across all specialists. |
17
+
18
+ **Calibration**: if everything a specialist finds is `nit`, the specialist
19
+ should say `PASS` and stop, not invent issues to look thorough.
20
+
21
+ ---
22
+
23
+ ## 2. What every specialist MUST flag (within their domain)
24
+
25
+ - **Logic and correctness bugs** — off-by-one, inverted conditions, swapped
26
+ arguments, null/empty handling, default mismatches across layers.
27
+ - **Cross-file ripple** — caller not updated after a signature/contract change,
28
+ renamed field still referenced elsewhere, new required parameter unhandled.
29
+ - **Their specialty's named hazards** — listed in each specialist's own file
30
+ under `## Known hazards`.
31
+
32
+ ## 3. What every specialist MUST NOT flag
33
+
34
+ - Pure formatting / whitespace (linter's job).
35
+ - Naming style when consistent with the surrounding file.
36
+ - "You could refactor this differently" without a concrete defect.
37
+ - Theoretical risks with no plausible trigger ("what if the OS clock changes?").
38
+ - Defense-in-depth suggestions when defense already exists upstream.
39
+ - Anything a `nit` could capture but a Critical/Major couldn't — drop it.
40
+
41
+ If a specialist is unsure whether something is real, it goes in the **Open
42
+ questions** section, not in Findings.
43
+
44
+ ---
45
+
46
+ ## 4. Output format (every specialist returns exactly this shape)
47
+
48
+ ```markdown
49
+ ## Executive Summary
50
+ <≤120 words. Lead with the verdict in one sentence (PASS / CONCERNS / FAIL).
51
+ Then 2–3 lines naming the top concerns. The main agent reads only this section.>
52
+
53
+ ## Verdict
54
+ PASS | CONCERNS | FAIL
55
+
56
+ ## Findings
57
+
58
+ ### 🔴 Critical
59
+ 1. **`path/to/file.ext:LINE`** — <short title>
60
+ <Explanation (1–3 sentences).>
61
+ *Why it matters:* <consequence under plausible conditions>
62
+ *Suggested fix:*
63
+ ```<lang>
64
+ <code snippet>
65
+ ```
66
+
67
+ ### 🟠 Major
68
+ <same format>
69
+
70
+ ### 🟡 Minor
71
+ <same format>
72
+
73
+ ### ⚪ Nits
74
+ - `path:line` — <one-liner, no code block>
75
+
76
+ ## What looks good
77
+ <1–3 bullets. Optional. Skip if nothing genuine to say.>
78
+
79
+ ## Open questions
80
+ <Only if you genuinely couldn't determine something from the diff + loaded
81
+ skills. Don't manufacture questions.>
82
+ ```
83
+
84
+ Omit empty severity sections entirely (don't write "None.").
85
+
86
+ ---
87
+
88
+ ## 5. Verdict mapping
89
+
90
+ - `PASS` — no Critical, no Major, ≤2 Minor.
91
+ - `CONCERNS` — no Critical, some Major OR many Minor.
92
+ - `FAIL` — at least one Critical.
93
+
94
+ The **main agent** re-applies this mapping across all specialist reports to
95
+ produce the final verdict, which uses different labels:
96
+
97
+ - `READY_TO_MERGE` — every specialist returned `PASS`.
98
+ - `NEEDS_ATTENTION` — any specialist returned `CONCERNS`, none returned `FAIL`.
99
+ - `NEEDS_WORK` — any specialist returned `FAIL`.
100
+
101
+ ---
102
+
103
+ ## 6. Skill-loading discipline
104
+
105
+ Each specialist file declares `skills:` in its YAML frontmatter. Those skills
106
+ are auto-loaded when the specialist is dispatched. The specialist must **use**
107
+ them — quote concrete rules from the skill in findings where applicable. A
108
+ finding that contradicts a loaded skill's rule without justification is a bug
109
+ in the specialist, not a finding.
110
+
111
+ ---
112
+
113
+ ## 7. Context discipline
114
+
115
+ Specialists receive only their scoped files from the router. They may Read
116
+ adjacent files if needed to verify a cross-file ripple finding, but should not
117
+ Read the whole repository. If they need to read >5 files outside their scope to
118
+ verify one finding, the finding probably isn't load-bearing — drop it or move
119
+ it to Open questions.
120
+
121
+ ---
122
+
123
+ ## 8. Bounded output
124
+
125
+ - Executive Summary: ≤120 words.
126
+ - Full report: ≤1000 words total. Findings are tight; not essays.
127
+ - Code snippets in suggested fixes: ≤15 lines per finding.
128
+
129
+ If a specialist would exceed these bounds, it has found too many issues OR is
130
+ writing too much per issue. Pick the top findings by severity and ship those.
131
+
132
+ ---
133
+
134
+ ## 9. Hard rules
135
+
136
+ - **No fabrication.** If the specialist cannot verify a claim from the diff +
137
+ scoped files + loaded skills, it goes in Open questions, not Findings.
138
+ - **No padding.** Three real findings beats fifteen suggestions.
139
+ - **No re-reviewing other specialists' domain.** Frontend specialist does not
140
+ flag SQL injection in a backend file even if it sees it — that's the security
141
+ specialist's job. Cross-domain leakage is what the main agent dedupes.
142
+ - **Cite the skill** in the finding when a rule it loaded backs the call
143
+ (e.g. "Per `engineering:firebase-cloud-functions` §retries, …").
@@ -0,0 +1,182 @@
1
+ ---
2
+ name: multi-review
3
+ description: >
4
+ Multi-agent code review with a router and niche specialists.
5
+ Load when the user invokes `/multi-review`, says "multi-reviewer", "review with
6
+ a team", "review this PR with specialists", "team review", "thorough review",
7
+ or otherwise asks for a multi-aspect code review (security + cloud-functions
8
+ + frontend + edge-cases) of a diff or branch. Routes the diff to relevant
9
+ specialist sub-agents in parallel, then the main agent synthesizes findings
10
+ into one greptile-style report.
11
+ tags: [review, multi-agent, sub-agents, orchestration, code-review]
12
+ alwaysApply: false
13
+ ---
14
+
15
+ # Multi-Reviewer — orchestrated specialist code review
16
+
17
+ You are orchestrating a **multi-reviewer team**: a small cast of niche specialist
18
+ sub-agents that each review the diff from a single angle. **You** read the full
19
+ specialist reports, dedupe findings, and produce the final report directly.
20
+ Specialists run **in parallel**.
21
+
22
+ This skill is distinct from the existing single-reviewer `reviewer` agent and the
23
+ pre-implementation `three-reviewer-parallel-mandates-pattern` knowledge entry:
24
+
25
+ - **Use `reviewer` agent** for tiny diffs (≤10 lines, single domain).
26
+ - **Use three-reviewer parallel-mandates** for **pre-implementation** plan review
27
+ (critic / pragmatist / security against a draft plan — no code yet).
28
+ - **Use multi-reviewer (this skill)** for **post-implementation** code review of a
29
+ non-trivial diff that touches multiple domains.
30
+
31
+ ## When to invoke
32
+
33
+ Trigger phrases / explicit invocations:
34
+ - `/multi-review` (slash command — primary entry)
35
+ - "multi-reviewer"
36
+ - "review with the team"
37
+ - "review this PR with specialists"
38
+ - "team review"
39
+ - "thorough review of my changes"
40
+ - "review my branch with all the reviewers"
41
+
42
+ **Use it for**: non-trivial diffs spanning multiple domains (e.g. Cloud Functions
43
+ + frontend + security implications), pre-merge safety on critical paths,
44
+ production-bound changes touching auth/payments/data.
45
+
46
+ **Do NOT use it for**:
47
+ - Tiny diffs (≤10 lines, one file) — use the existing `reviewer` agent.
48
+ - Plan/spec review (no code written yet) — use `three-reviewer-parallel-mandates`.
49
+ - Style/formatting passes — those aren't worth specialist time.
50
+
51
+ ## Flow (follow this exactly)
52
+
53
+ ### 0. Identify the diff
54
+
55
+ Default: `git diff main...HEAD` on the current branch. If the user named a PR,
56
+ branch, or commit range, use that instead. Confirm the diff scope back to the
57
+ user in one line before dispatching anything (file count, line count, base ref).
58
+
59
+ If there are no changes, say so and stop.
60
+
61
+ ### 1. Dispatch the router
62
+
63
+ Dispatch **one** `review-router` sub-agent with the diff in its prompt. It returns
64
+ a dispatch plan (JSON) with:
65
+
66
+ ```json
67
+ {
68
+ "tier": "trivial | lite | full",
69
+ "specialists": ["security", "cloud-functions", "frontend", "edge-cases"],
70
+ "scope": {
71
+ "security": ["functions/auth/login.ts", "..."],
72
+ "cloud-functions": ["functions/triggers/onUserCreate.ts"],
73
+ "frontend": ["web/src/components/Login.tsx"],
74
+ "edge-cases": ["functions/triggers/onUserCreate.ts", "web/src/components/Login.tsx"]
75
+ },
76
+ "rationale": "one-line why this set was picked"
77
+ }
78
+ ```
79
+
80
+ **Short-circuit rules:**
81
+ - If `tier == "trivial"` and only one specialist is named → dispatch that one
82
+ specialist alone, present its report directly.
83
+ - If `tier == "trivial"` and the router judges no specialist is needed →
84
+ fall through to the existing `reviewer` agent and stop here.
85
+ - If `tier == "lite"` → dispatch the named specialists (usually 2–3) in parallel.
86
+ - If `tier == "full"` → dispatch all four specialists in parallel.
87
+
88
+ **Hot-path override**: any file under `auth/`, `crypto/`, files matching
89
+ `*.env*`, or migration files (`*.sql`, `migrations/**`) forces `security` to be
90
+ in the specialist set regardless of tier.
91
+
92
+ ### 2. Dispatch specialists in parallel
93
+
94
+ In a single message, fire one `Agent` call per named specialist:
95
+ `review-security`, `review-cloud-functions`, `review-frontend`,
96
+ `review-edge-cases`. Pass each one only the files in *its* scope from the
97
+ dispatch plan (do not give every specialist every file — niche is the point).
98
+
99
+ Each specialist returns a full report (bounded, greptile-style markdown ≤1000
100
+ words) with an executive summary up top. You read the full reports to
101
+ synthesize the final report in step 3.
102
+
103
+ ### 3. Synthesize the final report
104
+
105
+ Read every specialist's full report. Dedupe, re-rank, and produce one final
106
+ report yourself — no coordinator sub-agent. Apply these rules:
107
+
108
+ **Deduplicate**: for each (file, line, ~topic) flagged by multiple specialists,
109
+ keep one finding from the specialist whose domain best fits, cite all sources.
110
+
111
+ **Re-rank severity**: a specialist's `Major` may downgrade to `Minor` in the
112
+ full diff context (e.g. already rate-limited upstream). Downgrades need a
113
+ one-line justification. Upgrades are fine without justification.
114
+
115
+ **Drop false positives**: if a finding contradicts the diff context or loaded
116
+ skills, drop it. Note all drops in **Coordinator notes** so the user can verify.
117
+
118
+ **Compute verdict** per `REVIEWER_SHARED.md` §5:
119
+ - **`READY_TO_MERGE`** — every specialist returned PASS, no Critical, no Major.
120
+ - **`NEEDS_ATTENTION`** — any specialist returned CONCERNS, no Critical.
121
+ - **`NEEDS_WORK`** — any specialist returned FAIL (at least one Critical).
122
+
123
+ **Emit the report** inline using this structure:
124
+
125
+ ```markdown
126
+ # Multi-Reviewer Report — <verdict>
127
+
128
+ **Verdict:** READY_TO_MERGE | NEEDS_ATTENTION | NEEDS_WORK
129
+ **Diff:** <files_changed> files, +<added>/-<deleted> lines, <base>...<head>
130
+ **Specialists ran:** <list>
131
+ **Dispatch tier:** <trivial|lite|full>
132
+
133
+ ## Summary
134
+ <2–4 sentences.>
135
+
136
+ ## Findings
137
+ ### 🔴 Critical / ### 🟠 Major / ### 🟡 Minor / ### ⚪ Nits
138
+ <deduped findings, each with source tag e.g. *(security, edge-cases)*>
139
+
140
+ ## What looks good
141
+ <1–3 bullets aggregated across specialists.>
142
+
143
+ ## Open questions
144
+ <Aggregated, deduped. Only real questions.>
145
+
146
+ ## Coordinator notes
147
+ <Drops, downgrades, upgrades and why. ≤5 bullets. Skip if none.>
148
+ ```
149
+
150
+ **Critical never gets dropped silently** — downgrade explicitly with a reason.
151
+ Report ≤2000 words total.
152
+
153
+ If the user wants to act on findings, follow up by editing the relevant files
154
+ (do not auto-fix without confirmation on Critical findings).
155
+
156
+ ## Hard rules
157
+
158
+ - **You read full specialist reports and synthesize yourself.** No coordinator
159
+ sub-agent — you have full context and produce the final report directly.
160
+ - **Specialists run in parallel** in a single message with multiple Agent calls.
161
+ Sequential dispatch defeats the architecture.
162
+ - **The router is mandatory** for tier ≥ lite. Skipping it means every specialist
163
+ sees every file, which is exactly the noise this design eliminates.
164
+ - **Hot paths always get security**, regardless of tier.
165
+ - **Use `dreamcontext` skill** to look up the active task before starting — the
166
+ review is scoped to what the task actually asked for, not a generic "things I'd
167
+ prefer."
168
+
169
+ ## Slash command wiring
170
+
171
+ The `/multi-review` command (configured in `.claude/settings.json` or wherever
172
+ slash commands are registered) invokes this skill. Skill-based fallback triggers
173
+ on the natural-language phrases listed in **When to invoke**.
174
+
175
+ ## Relationship to other review surfaces
176
+
177
+ | Surface | When | This skill's relationship |
178
+ |---|---|---|
179
+ | `reviewer` agent (built-in, single) | Tiny diffs, final go/no-go gate | Standalone. Multi-reviewer can hand off to it for the final merge gate after fixes. |
180
+ | `greptile-style-review` skill | Generalist single-pass review | Becomes the **output spec** all specialists conform to (severity tags, format). |
181
+ | `three-reviewer-parallel-mandates-pattern` (knowledge) | Pre-implementation plan review | Different stage. Multi-reviewer is post-implementation. |
182
+ | `sub-agent-iterative-reviewer-pattern` | Single holistic post-impl review | Superseded by multi-reviewer for non-trivial diffs; still fine for tiny ones. |