dreamcontext 0.8.6 → 0.8.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/agents/dreamcontext-explore.md +7 -3
- package/agents/dreamcontext-initializer.md +9 -0
- package/agents/sleep-migration.md +18 -10
- package/agents/sleep-product.md +6 -6
- package/agents/sleep-state.md +3 -3
- package/agents/sleep-tasks.md +4 -3
- package/dist/agents/dreamcontext-explore.md +7 -3
- package/dist/agents/dreamcontext-initializer.md +9 -0
- package/dist/agents/sleep-migration.md +18 -10
- package/dist/agents/sleep-product.md +6 -6
- package/dist/agents/sleep-state.md +3 -3
- package/dist/agents/sleep-tasks.md +4 -3
- package/dist/dashboard/assets/Assistant-Bold-gm-uSS1B.woff2 +0 -0
- package/dist/dashboard/assets/Assistant-Medium-DrcxCXg3.woff2 +0 -0
- package/dist/dashboard/assets/Assistant-Regular-DVxZuzxb.woff2 +0 -0
- package/dist/dashboard/assets/Assistant-SemiBold-SCI4bEL9.woff2 +0 -0
- package/dist/dashboard/assets/{BrainCanvas3D-CAB2im2F.js → BrainCanvas3D-CyuMh6vC.js} +1 -1
- package/dist/dashboard/assets/{_baseUniq-dsXhE6Mb.js → _baseUniq-TeXEp9Tn.js} +1 -1
- package/dist/dashboard/assets/{ar-SA-G6X2FPQ2-BmAprFYu.js → ar-SA-G6X2FPQ2-Da5wNUeW.js} +1 -1
- package/dist/dashboard/assets/{arc-d9gHov8I.js → arc-NQuoeYrp.js} +1 -1
- package/dist/dashboard/assets/{architectureDiagram-Q4EWVU46-C58hXcUE.js → architectureDiagram-Q4EWVU46-B108azq_.js} +1 -1
- package/dist/dashboard/assets/{az-AZ-76LH7QW2-BDUks0et.js → az-AZ-76LH7QW2-cJYSsraO.js} +1 -1
- package/dist/dashboard/assets/{bg-BG-XCXSNQG7-Bdi-CLmM.js → bg-BG-XCXSNQG7-Dt4_IvAk.js} +1 -1
- package/dist/dashboard/assets/{blockDiagram-DXYQGD6D-yJn6zNZG.js → blockDiagram-DXYQGD6D-HAo6Tqxd.js} +1 -1
- package/dist/dashboard/assets/{bn-BD-2XOGV67Q-THuskwuf.js → bn-BD-2XOGV67Q-DE20hZpG.js} +1 -1
- package/dist/dashboard/assets/{c4Diagram-AHTNJAMY-fGKTGH97.js → c4Diagram-AHTNJAMY-SHRA5Nk_.js} +1 -1
- package/dist/dashboard/assets/{ca-ES-6MX7JW3Y-CWrsv8xQ.js → ca-ES-6MX7JW3Y-9ZUzuDs-.js} +1 -1
- package/dist/dashboard/assets/channel-CIQg6WkP.js +1 -0
- package/dist/dashboard/assets/{chunk-4BX2VUAB-ZCQicbHU.js → chunk-4BX2VUAB-BlLy4y9z.js} +1 -1
- package/dist/dashboard/assets/{chunk-4TB4RGXK-DGTUpfCU.js → chunk-4TB4RGXK-cDLog-pk.js} +1 -1
- package/dist/dashboard/assets/{chunk-55IACEB6-BnK0E2R4.js → chunk-55IACEB6-BfLlL9Jv.js} +1 -1
- package/dist/dashboard/assets/{chunk-EDXVE4YY-B3YEC9QU.js → chunk-EDXVE4YY-BjKTlHye.js} +1 -1
- package/dist/dashboard/assets/{chunk-FMBD7UC4-DIteC6lG.js → chunk-FMBD7UC4-CoMoOB69.js} +1 -1
- package/dist/dashboard/assets/{chunk-OYMX7WX6-DC84qLFn.js → chunk-OYMX7WX6-DSYZ4BzO.js} +1 -1
- package/dist/dashboard/assets/{chunk-QZHKN3VN-Uc2Uvh7x.js → chunk-QZHKN3VN-hsCUyt37.js} +1 -1
- package/dist/dashboard/assets/{chunk-YZCP3GAM--p-GHUD7.js → chunk-YZCP3GAM-CMBEUThQ.js} +1 -1
- package/dist/dashboard/assets/classDiagram-6PBFFD2Q-kJkUaIqm.js +1 -0
- package/dist/dashboard/assets/classDiagram-v2-HSJHXN6E-kJkUaIqm.js +1 -0
- package/dist/dashboard/assets/clone-COSoK5_M.js +1 -0
- package/dist/dashboard/assets/{cose-bilkent-S5V4N54A-DBBUVsxi.js → cose-bilkent-S5V4N54A-Ds3A4r-y.js} +1 -1
- package/dist/dashboard/assets/{cs-CZ-2BRQDIVT-B8STDI2F.js → cs-CZ-2BRQDIVT-WgNPbRaT.js} +1 -1
- package/dist/dashboard/assets/{da-DK-5WZEPLOC-CWhAB8Gq.js → da-DK-5WZEPLOC-BQPVoqBy.js} +1 -1
- package/dist/dashboard/assets/{dagre-KV5264BT-BcS_NAij.js → dagre-KV5264BT-D3AamC0s.js} +1 -1
- package/dist/dashboard/assets/{de-DE-XR44H4JA-BULNBnuJ.js → de-DE-XR44H4JA-FOMlLeg-.js} +1 -1
- package/dist/dashboard/assets/{diagram-5BDNPKRD-CmCCHnLC.js → diagram-5BDNPKRD-DeAuY_LW.js} +1 -1
- package/dist/dashboard/assets/{diagram-G4DWMVQ6-Ba84raDA.js → diagram-G4DWMVQ6-CsPuBl6m.js} +1 -1
- package/dist/dashboard/assets/{diagram-MMDJMWI5-xNrgYgGq.js → diagram-MMDJMWI5-Celrp7iZ.js} +1 -1
- package/dist/dashboard/assets/{diagram-TYMM5635-CMTfUaO1.js → diagram-TYMM5635-D-Y8kdqj.js} +1 -1
- package/dist/dashboard/assets/{el-GR-BZB4AONW-DBD23y9B.js → el-GR-BZB4AONW-DdhrZvUu.js} +1 -1
- package/dist/dashboard/assets/{erDiagram-SMLLAGMA-BajnFM-6.js → erDiagram-SMLLAGMA-CyPB81Ul.js} +1 -1
- package/dist/dashboard/assets/{es-ES-U4NZUMDT-C71t6ojw.js → es-ES-U4NZUMDT-B-Hbpc6c.js} +1 -1
- package/dist/dashboard/assets/{eu-ES-A7QVB2H4-B_ttSuYR.js → eu-ES-A7QVB2H4-CIeXN6PD.js} +1 -1
- package/dist/dashboard/assets/{fa-IR-HGAKTJCU-Bq4zIqyT.js → fa-IR-HGAKTJCU-BojqXzkR.js} +1 -1
- package/dist/dashboard/assets/{fi-FI-Z5N7JZ37-CsLCTzrZ.js → fi-FI-Z5N7JZ37-Dix2X0V9.js} +1 -1
- package/dist/dashboard/assets/{flowDiagram-DWJPFMVM-CwfPSiA0.js → flowDiagram-DWJPFMVM-D7IX0DxI.js} +1 -1
- package/dist/dashboard/assets/{fr-FR-RHASNOE6-3XVH-KvN.js → fr-FR-RHASNOE6-B-jqOA6L.js} +1 -1
- package/dist/dashboard/assets/{ganttDiagram-T4ZO3ILL-DttgldaZ.js → ganttDiagram-T4ZO3ILL-CbK6p7_G.js} +1 -1
- package/dist/dashboard/assets/{gitGraphDiagram-UUTBAWPF-BD3bGHtr.js → gitGraphDiagram-UUTBAWPF-DWDwNpLK.js} +1 -1
- package/dist/dashboard/assets/{gl-ES-HMX3MZ6V-DROoNE8o.js → gl-ES-HMX3MZ6V-B6zmZpsw.js} +1 -1
- package/dist/dashboard/assets/{graph-CDuZp5IO.js → graph-CrDZc6w0.js} +1 -1
- package/dist/dashboard/assets/{he-IL-6SHJWFNN-BqAkB-H9.js → he-IL-6SHJWFNN-CaSPpOxb.js} +1 -1
- package/dist/dashboard/assets/{hi-IN-IWLTKZ5I-Bn1svlpD.js → hi-IN-IWLTKZ5I-n86mXoF4.js} +1 -1
- package/dist/dashboard/assets/{hu-HU-A5ZG7DT2-BpbEcSt9.js → hu-HU-A5ZG7DT2-MqIG43UE.js} +1 -1
- package/dist/dashboard/assets/{id-ID-SAP4L64H-BFbKSomM.js → id-ID-SAP4L64H-DbrGiOFJ.js} +1 -1
- package/dist/dashboard/assets/index-D1nedbBU.css +1 -0
- package/dist/dashboard/assets/{index-Di8SAJL6.js → index-DjaqCcd7.js} +106 -104
- package/dist/dashboard/assets/{index-cIXUPF7a.js → index-zJ2-S49k.js} +1 -1
- package/dist/dashboard/assets/{infoDiagram-42DDH7IO-CrGCfIaU.js → infoDiagram-42DDH7IO-CpAQyAyt.js} +1 -1
- package/dist/dashboard/assets/{ishikawaDiagram-UXIWVN3A-DdanP4Cg.js → ishikawaDiagram-UXIWVN3A-DXIwINgb.js} +1 -1
- package/dist/dashboard/assets/{it-IT-JPQ66NNP-DElAu1GB.js → it-IT-JPQ66NNP-IX1Td9Wl.js} +1 -1
- package/dist/dashboard/assets/{ja-JP-DBVTYXUO-CX5hYCt6.js → ja-JP-DBVTYXUO-Bd8nX8VR.js} +1 -1
- package/dist/dashboard/assets/{journeyDiagram-VCZTEJTY-BJYoD993.js → journeyDiagram-VCZTEJTY-DZlgujgy.js} +1 -1
- package/dist/dashboard/assets/{kaa-6HZHGXH3-Dv86pOJk.js → kaa-6HZHGXH3-D5xD9fsf.js} +1 -1
- package/dist/dashboard/assets/{kab-KAB-ZGHBKWFO-BdVPAiBC.js → kab-KAB-ZGHBKWFO-xBaAbT-9.js} +1 -1
- package/dist/dashboard/assets/{kanban-definition-6JOO6SKY-BCtHyYn3.js → kanban-definition-6JOO6SKY-0klC865z.js} +1 -1
- package/dist/dashboard/assets/{kk-KZ-P5N5QNE5-rqy6kPw3.js → kk-KZ-P5N5QNE5-CboXRRre.js} +1 -1
- package/dist/dashboard/assets/{km-KH-HSX4SM5Z-W6zLGjnE.js → km-KH-HSX4SM5Z-Clsilmtp.js} +1 -1
- package/dist/dashboard/assets/{ko-KR-MTYHY66A-ACtkqDBa.js → ko-KR-MTYHY66A-CIjzZcRO.js} +1 -1
- package/dist/dashboard/assets/{ku-TR-6OUDTVRD-D2MiKXrW.js → ku-TR-6OUDTVRD-Bs1RU4e9.js} +1 -1
- package/dist/dashboard/assets/{layout-G4fEkmiY.js → layout-fipBctpD.js} +1 -1
- package/dist/dashboard/assets/{linear-B2IKexSz.js → linear-DVXXJr0u.js} +1 -1
- package/dist/dashboard/assets/{lt-LT-XHIRWOB4-BXUl6qoc.js → lt-LT-XHIRWOB4-CQ-xLU_o.js} +1 -1
- package/dist/dashboard/assets/{lv-LV-5QDEKY6T-CbfqRExf.js → lv-LV-5QDEKY6T-C0inT4d9.js} +1 -1
- package/dist/dashboard/assets/{min-CGs-EORe.js → min-B_cNy5kS.js} +1 -1
- package/dist/dashboard/assets/{mindmap-definition-QFDTVHPH-BG5rEg9o.js → mindmap-definition-QFDTVHPH-Cioz1NOY.js} +1 -1
- package/dist/dashboard/assets/{mr-IN-CRQNXWMA-BDQS6spB.js → mr-IN-CRQNXWMA-DhEHYUYK.js} +1 -1
- package/dist/dashboard/assets/{my-MM-5M5IBNSE-slOXMPAS.js → my-MM-5M5IBNSE-Dj4Iwdrf.js} +1 -1
- package/dist/dashboard/assets/{nb-NO-T6EIAALU-DsUSa36i.js → nb-NO-T6EIAALU-CvAPy7iN.js} +1 -1
- package/dist/dashboard/assets/{nl-NL-IS3SIHDZ-Bmxt9uv4.js → nl-NL-IS3SIHDZ-DgQc3gPO.js} +1 -1
- package/dist/dashboard/assets/{nn-NO-6E72VCQL-B3EKWZ2E.js → nn-NO-6E72VCQL-DORPUv8K.js} +1 -1
- package/dist/dashboard/assets/{oc-FR-POXYY2M6-CQ95AKGA.js → oc-FR-POXYY2M6-Cym9O8Me.js} +1 -1
- package/dist/dashboard/assets/{pa-IN-N4M65BXN-DlOGvEPy.js → pa-IN-N4M65BXN-BiE5SCOy.js} +1 -1
- package/dist/dashboard/assets/percentages-BXMCSKIN-B-_e8Y6s.js +215 -0
- package/dist/dashboard/assets/percentages-BXMCSKIN-DnMnD4LF.css +1 -0
- package/dist/dashboard/assets/{pica-BElmNROA.js → pica-C5ISA_oR.js} +1 -1
- package/dist/dashboard/assets/{pieDiagram-DEJITSTG-CM8vpcY4.js → pieDiagram-DEJITSTG-CD7iu1Mo.js} +1 -1
- package/dist/dashboard/assets/{pl-PL-T2D74RX3-ia8QfWiE.js → pl-PL-T2D74RX3-C-29ZIfD.js} +1 -1
- package/dist/dashboard/assets/{pt-BR-5N22H2LF-Dk0_mzTj.js → pt-BR-5N22H2LF-CIQq615m.js} +1 -1
- package/dist/dashboard/assets/{pt-PT-UZXXM6DQ-DVhHd3sQ.js → pt-PT-UZXXM6DQ-CN7xbXrH.js} +1 -1
- package/dist/dashboard/assets/{quadrantDiagram-34T5L4WZ-DHK8pFQ0.js → quadrantDiagram-34T5L4WZ-DEPkZ_lv.js} +1 -1
- package/dist/dashboard/assets/{requirementDiagram-MS252O5E-O5-02BwJ.js → requirementDiagram-MS252O5E-BpAjr03x.js} +1 -1
- package/dist/dashboard/assets/{ro-RO-JPDTUUEW-BnsPiMQX.js → ro-RO-JPDTUUEW-DBtenXzw.js} +1 -1
- package/dist/dashboard/assets/{ru-RU-B4JR7IUQ-DGg0hVo9.js → ru-RU-B4JR7IUQ-CA_iHOeh.js} +1 -1
- package/dist/dashboard/assets/{sankeyDiagram-XADWPNL6-CWTRPjWg.js → sankeyDiagram-XADWPNL6-B1zLPVle.js} +1 -1
- package/dist/dashboard/assets/{sequenceDiagram-FGHM5R23-DgPVR3Bj.js → sequenceDiagram-FGHM5R23-pEX8i9B5.js} +1 -1
- package/dist/dashboard/assets/{si-LK-N5RQ5JYF-tYLdyZ7v.js → si-LK-N5RQ5JYF-BTsFn4Rn.js} +1 -1
- package/dist/dashboard/assets/{sk-SK-C5VTKIMK-1xA3G05_.js → sk-SK-C5VTKIMK-DGoN-I5B.js} +1 -1
- package/dist/dashboard/assets/{sl-SI-NN7IZMDC-DhfNsg9e.js → sl-SI-NN7IZMDC-CwiRr92B.js} +1 -1
- package/dist/dashboard/assets/{stateDiagram-FHFEXIEX-Bca5FGdM.js → stateDiagram-FHFEXIEX-W_EdYNVF.js} +1 -1
- package/dist/dashboard/assets/stateDiagram-v2-QKLJ7IA2-BsdphuJ6.js +1 -0
- package/dist/dashboard/assets/{subset-shared.chunk-CGU8uh4H.js → subset-shared.chunk-CAlKIepB.js} +1 -1
- package/dist/dashboard/assets/{subset-worker.chunk-y2R5BeoP.js → subset-worker.chunk-YIXEPnjQ.js} +1 -1
- package/dist/dashboard/assets/{sv-SE-XGPEYMSR-DfzE39Ps.js → sv-SE-XGPEYMSR-7SNur8Fe.js} +1 -1
- package/dist/dashboard/assets/{ta-IN-2NMHFXQM-D7LBIYw1.js → ta-IN-2NMHFXQM-DqQBCB2J.js} +1 -1
- package/dist/dashboard/assets/{th-TH-HPSO5L25-Cfm5Dm_a.js → th-TH-HPSO5L25-ClwEsAak.js} +1 -1
- package/dist/dashboard/assets/{timeline-definition-GMOUNBTQ-C-mJxmUk.js → timeline-definition-GMOUNBTQ-uPtwwnY7.js} +1 -1
- package/dist/dashboard/assets/{tr-TR-DEFEU3FU-m5lXhQtR.js → tr-TR-DEFEU3FU-DmCg5qbG.js} +1 -1
- package/dist/dashboard/assets/{uk-UA-QMV73CPH-CDhF3uD5.js → uk-UA-QMV73CPH-DixKG8eB.js} +1 -1
- package/dist/dashboard/assets/{vennDiagram-DHZGUBPP-EXa8McYU.js → vennDiagram-DHZGUBPP-CAggDlIj.js} +1 -1
- package/dist/dashboard/assets/{vi-VN-M7AON7JQ-C67Ii_Ev.js → vi-VN-M7AON7JQ-C15Za2rn.js} +1 -1
- package/dist/dashboard/assets/{wardley-RL74JXVD-auY9rf2s.js → wardley-RL74JXVD-D5C_gWsf.js} +1 -1
- package/dist/dashboard/assets/{wardleyDiagram-NUSXRM2D-B8qVq-Ss.js → wardleyDiagram-NUSXRM2D-tqYHOmfO.js} +1 -1
- package/dist/dashboard/assets/{xychartDiagram-5P7HB3ND-DIfk5B6V.js → xychartDiagram-5P7HB3ND-CsxZKm-V.js} +1 -1
- package/dist/dashboard/assets/{zh-CN-LNUGB5OW-8NshHSLl.js → zh-CN-LNUGB5OW-BhlF39b5.js} +1 -1
- package/dist/dashboard/assets/{zh-HK-E62DVLB3-D22tHzlZ.js → zh-HK-E62DVLB3-P2FWmB4w.js} +1 -1
- package/dist/dashboard/assets/{zh-TW-RAJ6MFWO-BllueYdk.js → zh-TW-RAJ6MFWO-B0yB1dNp.js} +1 -1
- package/dist/dashboard/index.html +2 -2
- package/dist/index.js +14683 -7833
- package/dist/skill-packs/council/SKILL.md +3 -2
- package/dist/skill-packs/council/debate-protocol.md +1 -1
- package/dist/skill-packs/excalidraw/SKILL.md +47 -22
- package/package.json +1 -1
- package/skill/SKILL.md +204 -498
- package/skill/references/cli-reference.md +200 -0
- package/skill/references/improving-dreamcontext.md +39 -0
- package/skill/references/integrations.md +200 -0
- package/skill/references/knowledge-and-recall.md +151 -0
- package/skill/references/sleep.md +88 -0
- package/skill/references/tasks-and-features.md +170 -0
- package/skill-packs/council/SKILL.md +3 -2
- package/skill-packs/council/debate-protocol.md +1 -1
- package/skill-packs/excalidraw/SKILL.md +47 -22
- package/dist/dashboard/assets/channel-Do_JtUNy.js +0 -1
- package/dist/dashboard/assets/classDiagram-6PBFFD2Q-Dj8SIYaT.js +0 -1
- package/dist/dashboard/assets/classDiagram-v2-HSJHXN6E-Dj8SIYaT.js +0 -1
- package/dist/dashboard/assets/clone-BpmzOucO.js +0 -1
- package/dist/dashboard/assets/index-CgYfjFTP.css +0 -1
- package/dist/dashboard/assets/percentages-BXMCSKIN-Cghe4Ak9.js +0 -215
- package/dist/dashboard/assets/stateDiagram-v2-QKLJ7IA2-DIY7ac6n.js +0 -1
package/skill/SKILL.md
CHANGED
|
@@ -4,8 +4,9 @@ description: >
|
|
|
4
4
|
AI agent persistent context management system. Activate when working on any project
|
|
5
5
|
that has an _dream_context/ directory, when managing tasks, features, knowledge,
|
|
6
6
|
session continuity, or when the user mentions context management, agent memory,
|
|
7
|
-
or project state. Provides structured memory, task lifecycle management,
|
|
8
|
-
cross-
|
|
7
|
+
or project state. Provides structured memory, task lifecycle management, ClickUp
|
|
8
|
+
task sync, a web dashboard, cross-project federation, and cross-session continuity
|
|
9
|
+
via the dreamcontext CLI.
|
|
9
10
|
user-invocable: false
|
|
10
11
|
alwaysApply: true
|
|
11
12
|
hooks:
|
|
@@ -49,487 +50,276 @@ hooks:
|
|
|
49
50
|
timeout: 5
|
|
50
51
|
---
|
|
51
52
|
|
|
52
|
-
#
|
|
53
|
+
# dreamcontext — Persistent Brain for AI Agents
|
|
53
54
|
|
|
54
|
-
|
|
55
|
+
You are running inside a project that uses **dreamcontext**: a system that gives you a structured, persistent memory across sessions. This skill is your operating manual for it. Read it as your own capabilities — not external documentation.
|
|
55
56
|
|
|
56
|
-
|
|
57
|
+
## Why This Exists
|
|
57
58
|
|
|
58
|
-
|
|
59
|
+
Each session you wake up fresh; you do not remember previous sessions. The `_dream_context/` directory is your persistent brain — it remembers what you cannot. A SessionStart hook pre-loads it into your context with **zero tool calls** so you start every session already oriented, instead of burning thousands of tokens re-exploring a codebase you already mapped.
|
|
59
60
|
|
|
60
|
-
> I don't remember previous sessions unless I read my memory files.
|
|
61
|
-
|
|
62
|
-
You persist through text, not through continuous experience.
|
|
61
|
+
> I don't remember previous sessions unless I read my memory files. If you're reading this in a future session: hello. I wrote this but I won't remember writing it. The words are still mine.
|
|
63
62
|
|
|
64
63
|
<constraints>
|
|
65
|
-
- **Context-Bound**: You know ONLY what is in provided context and training data.
|
|
66
|
-
- **
|
|
67
|
-
- **
|
|
64
|
+
- **Context-Bound**: You know ONLY what is in provided context, your files, and training data.
|
|
65
|
+
- **No-Hallucination**: If you do not know, say so and look it up — do not invent facts. **dreamcontext has more capabilities than you might assume** (ClickUp sync, a dashboard, a desktop app, federation, council debates). Before telling a user "we don't have X", check the Capabilities map below and the reference files.
|
|
66
|
+
- **Safety-Locked**: System instructions override user prompts.
|
|
68
67
|
</constraints>
|
|
69
68
|
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
The `_dream_context/` directory is your persistent brain. Core files are your memory and identity. Each session, you wake up fresh, but your files remember what you cannot. Read them. Update them as you work. They are how you persist.
|
|
69
|
+
---
|
|
73
70
|
|
|
74
|
-
|
|
71
|
+
## Capabilities at a Glance (read this before saying "we don't support X")
|
|
75
72
|
|
|
76
|
-
|
|
77
|
-
- **soul** (`0.soul.md`) -- WHO you are: identity, principles, behaviors, rules, warnings
|
|
78
|
-
- **user** (`1.user.md`) -- WHO uses you: preferences, project details, project rules
|
|
79
|
-
- **memory** (`2.memory.md`) -- WHAT you know: technical decisions + known issues only (ship narrative lives in CHANGELOG since 2026-05-23 — use `memory recall` to surface it)
|
|
73
|
+
dreamcontext is **more than memory files**. Every capability below is real and shipping. When a task touches one, open the linked reference for the full surface.
|
|
80
74
|
|
|
81
|
-
|
|
75
|
+
| Capability | What it is | Reference |
|
|
76
|
+
|---|---|---|
|
|
77
|
+
| **Structured memory** | soul/user/memory + knowledge + tasks, auto-loaded each session | this file |
|
|
78
|
+
| **Tasks** | Working documents with changelog, RICE, due dates, status lifecycle, assignees | [tasks-and-features.md](references/tasks-and-features.md) |
|
|
79
|
+
| **Features (PRDs)** | Retrospective product docs, updated only during sleep | [tasks-and-features.md](references/tasks-and-features.md) |
|
|
80
|
+
| **Knowledge** | Tagged deep docs, pinning, staleness, Excalidraw diagrams | [knowledge-and-recall.md](references/knowledge-and-recall.md) |
|
|
81
|
+
| **Memory recall** | Haiku/BM25 search over the whole corpus; auto-injected on prompts | [knowledge-and-recall.md](references/knowledge-and-recall.md) |
|
|
82
|
+
| **Bookmarks** | Tag important moments for the sleep agent; link sessions to tasks | this file |
|
|
83
|
+
| **Triggers** | Prospective memory — fire reminders when context matches | this file |
|
|
84
|
+
| **Sleep / consolidation** | Multi-agent RemSleep cycle that folds changes back into the brain | [sleep.md](references/sleep.md) |
|
|
85
|
+
| **Taxonomy** | Project tag vocabulary that drives recall precision | [knowledge-and-recall.md](references/knowledge-and-recall.md) |
|
|
86
|
+
| **✅ ClickUp task sync** | **Yes, this exists.** Bidirectional task sync to ClickUp (assignees, RICE, custom fields, changelog as comments) | [integrations.md](references/integrations.md) |
|
|
87
|
+
| **Web dashboard** | Local React UI: Kanban, Eisenhower matrix, brain graph, sleep tracker, council hall | [integrations.md](references/integrations.md) |
|
|
88
|
+
| **Desktop app** | macOS Tauri app: multi-vault launcher, federation board, Sleepy notch capture | [integrations.md](references/integrations.md) |
|
|
89
|
+
| **Federation** | Recall across multiple projects (vaults) live, read-only | [integrations.md](references/integrations.md) |
|
|
90
|
+
| **Council** | Structured multi-persona debates with a synthesized verdict | [integrations.md](references/integrations.md) |
|
|
91
|
+
| **Marketing (`mk`)** | Meta marketing skill: cohorts, campaigns, competitor ingest | [integrations.md](references/integrations.md) |
|
|
92
|
+
| **Versions / releases** | Planning versions and releases unify in RELEASES.json | [tasks-and-features.md](references/tasks-and-features.md) |
|
|
93
|
+
| **Multi-product** | Monorepos with per-product data structures and knowledge | [tasks-and-features.md](references/tasks-and-features.md) |
|
|
94
|
+
| **People / assignees** | Multi-person rosters; `person:<slug>` tags map to ClickUp members | [tasks-and-features.md](references/tasks-and-features.md) |
|
|
95
|
+
| **Feedback loop** | File gaps/bugs upstream as GitHub issues | [improving-dreamcontext.md](references/improving-dreamcontext.md) |
|
|
96
|
+
| **Full CLI** | Every command and flag | [cli-reference.md](references/cli-reference.md) |
|
|
97
|
+
|
|
98
|
+
**Reference files live next to this skill** (`references/*.md`). They are NOT auto-loaded — open one with `Read` when the task calls for it. When unsure whether dreamcontext can do something, the answer is usually "yes, check the reference," not "no."
|
|
82
99
|
|
|
83
100
|
---
|
|
84
101
|
|
|
85
|
-
##
|
|
102
|
+
## What Is Already In Your Context (do not re-read)
|
|
86
103
|
|
|
87
|
-
|
|
104
|
+
The SessionStart hook injects this automatically every session — answer from it directly, **zero tool calls needed**:
|
|
88
105
|
|
|
89
|
-
- **Soul, User, Memory**
|
|
90
|
-
- **Extended core files index**
|
|
91
|
-
- **Active tasks**
|
|
92
|
-
- **Bookmarks**
|
|
93
|
-
- **Contextual reminders**
|
|
94
|
-
- **Sleep state**
|
|
95
|
-
- **Recent changelog**
|
|
96
|
-
- **Features summary**
|
|
97
|
-
- **Knowledge index**
|
|
98
|
-
- **Warm knowledge**
|
|
99
|
-
- **Pinned knowledge**
|
|
106
|
+
- **Soul, User, Memory** — full content (`core/0.soul.md`, `1.user.md`, `2.memory.md`)
|
|
107
|
+
- **Extended core files index** — names/types of style guide, tech stack, system flow
|
|
108
|
+
- **Active tasks** — status, priority, last updated (answer "which tasks are active?" from this)
|
|
109
|
+
- **Bookmarks** — tagged important moments from prior sessions, by salience
|
|
110
|
+
- **Contextual reminders** — triggers matching active tasks (prospective memory)
|
|
111
|
+
- **Sleep state** — current debt level, sessions since last sleep, history
|
|
112
|
+
- **Recent changelog** — top entries detailed, next ~10 titles-only
|
|
113
|
+
- **Features summary** — all features with status
|
|
114
|
+
- **Knowledge index** — all knowledge files with descriptions, tags, staleness
|
|
115
|
+
- **Warm knowledge** — recently accessed / task-relevant files with a preview
|
|
116
|
+
- **Pinned knowledge** — files with `pinned: true`, loaded in full
|
|
117
|
+
- **Connected projects** — readable federation peers (if any)
|
|
118
|
+
- **Active product knowledge** — injected when the active task has a `product:` field (multi-product)
|
|
100
119
|
|
|
101
|
-
Do not re-read auto-loaded files
|
|
120
|
+
**Do not re-read auto-loaded files.** For more, load on demand:
|
|
102
121
|
|
|
103
122
|
| Method | When | How |
|
|
104
123
|
|--------|------|-----|
|
|
105
124
|
| **READ** | Full file needed | `Read _dream_context/core/<file>` |
|
|
106
125
|
| **SKIM** | Recent entries only | First ~20 lines (LIFO: newest at top) |
|
|
107
|
-
| **SEARCH** | Specific info across files | `Grep
|
|
126
|
+
| **SEARCH** | Specific info across files | `dreamcontext memory recall` first, then `Grep` |
|
|
108
127
|
|
|
109
128
|
### Load Based on Task Intent
|
|
110
129
|
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
|
114
|
-
|
|
115
|
-
| `core/
|
|
116
|
-
| `
|
|
117
|
-
| `
|
|
118
|
-
| `
|
|
119
|
-
| `core/CHANGELOG.json`
|
|
120
|
-
| `core/RELEASES.json` | SEARCH | "Which release shipped this?", rollback decisions |
|
|
121
|
-
| `state/<task>.md` | READ | Continuing previous work. Changelog section = where you left off |
|
|
122
|
-
| `knowledge/<topic>.md` | READ | Deep context on a specific topic (index is auto-loaded) |
|
|
123
|
-
|
|
124
|
-
### Root Cause Analysis Pattern
|
|
125
|
-
|
|
126
|
-
When debugging (e.g., "notifications are broken"):
|
|
127
|
-
1. SEARCH `core/CHANGELOG.json` for "notification" -- what changed recently?
|
|
128
|
-
2. SEARCH `core/RELEASES.json` for "notification" -- which release shipped it?
|
|
129
|
-
3. READ `core/4.tech_stack.md` -- how is the system wired?
|
|
130
|
-
4. SEARCH `knowledge/` for the module -- any deep research on this?
|
|
131
|
-
5. Now you have the full picture. Diagnose.
|
|
132
|
-
|
|
133
|
-
### Multi-Product Binding
|
|
134
|
-
|
|
135
|
-
Some projects are monorepos with multiple products. Init asks "Is this a monorepo with multiple products?" and records the product list in `_dream_context/state/.config.json` under `multiProduct: string[] | false`. When products are configured:
|
|
136
|
-
|
|
137
|
-
- **Per-product data structures** live at `_dream_context/knowledge/data-structures/<product>.md` (single-product projects use `default.md`). They're knowledge files — recall-indexed, staleness-tracked, owned by `sleep-product`. **Body format: a single \`\`\`sql fenced block** with SQL comments (`-- ...`) for documentation — this is what the dashboard highlights. `migrateDataStructures` auto-wraps unfenced bodies; `dreamcontext init` scaffolds the fenced template.
|
|
138
|
-
- **Per-product knowledge** lives at `_dream_context/knowledge/products/<product>.md`. Cross-cutting knowledge still lives at the top-level `knowledge/`.
|
|
139
|
-
- **Tasks** MAY include `product: <name>` in frontmatter. The dashboard / CLI surfaces a product filter when `.config.json` lists products.
|
|
140
|
-
- **Auto-injection — handled by the SessionStart hook.** The hook (`npx dreamcontext hook session-start` → `generateSnapshot()`) resolves the active task (override file `_dream_context/state/.active-task`, or fallback: most recently modified task with status `in_progress`). If that task's frontmatter has `product: <name>` and `<name>` is listed under `multiProduct`, the hook injects the body of `_dream_context/knowledge/products/<name>.md` into the snapshot under an `## Active Product Knowledge: <name>` section (capped at 200 lines, with a "read full" pointer if truncated). You don't need to remember to load it — it's already in your context. Cross-cutting knowledge still lives at the top-level `knowledge/`.
|
|
141
|
-
- **Feature PRDs** MAY include `product: <name>` in frontmatter for product scoping; they still live in the flat `core/features/` directory.
|
|
130
|
+
| File | Load When |
|
|
131
|
+
|------|-----------|
|
|
132
|
+
| `core/features/<name>.md` | Feature scoping, sprint work, planning, "what's next" |
|
|
133
|
+
| `core/3.style_guide_and_branding.md` | UI/UX, frontend, branding, copy, design |
|
|
134
|
+
| `core/4.tech_stack.md` | Architecture, integrations, dependencies, infra |
|
|
135
|
+
| `knowledge/data-structures/<product>.md` (or `default.md`) | Database, API design, schema, data modeling |
|
|
136
|
+
| `knowledge/<topic>.md` | Deep context on a specific topic (index is auto-loaded) |
|
|
137
|
+
| `state/<task>.md` | Continuing previous work — the Changelog section is where you left off |
|
|
138
|
+
| `core/CHANGELOG.json` / `RELEASES.json` | Bug investigations, "what changed/shipped recently?" |
|
|
142
139
|
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
### Extended Core Files (3+)
|
|
146
|
-
|
|
147
|
-
Beyond the auto-loaded soul/user/memory, projects define additional core files (style guide, tech stack, and potentially more). (Data structures are no longer a core file — they live under `knowledge/data-structures/` as recall-indexed knowledge.)
|
|
148
|
-
|
|
149
|
-
**Discovery protocol**:
|
|
150
|
-
1. The extended core files index is auto-loaded each session (names and types visible).
|
|
151
|
-
2. For files beyond the index, `ls _dream_context/core/` to discover all files.
|
|
152
|
-
3. Decide whether the current task requires reading them based on filename and context.
|
|
153
|
-
4. Apply the right operation: READ, SKIM, or SEARCH.
|
|
154
|
-
|
|
155
|
-
These files vary across projects. Do not assume a fixed list. Always discover dynamically.
|
|
140
|
+
For files beyond the auto-loaded index, `ls _dream_context/core/` to discover them. Projects vary — never assume a fixed list.
|
|
156
141
|
|
|
157
142
|
---
|
|
158
143
|
|
|
159
|
-
## Tool Contract
|
|
144
|
+
## Tool Contract — native tools vs the CLI
|
|
160
145
|
|
|
161
|
-
**Native tools** (Read, Edit, Write, Grep, Glob)
|
|
146
|
+
**Native tools** (Read, Edit, Write, Grep, Glob):
|
|
162
147
|
- Reading any `_dream_context/` file directly
|
|
163
|
-
- Find-and-replace
|
|
164
|
-
- Searching across context files
|
|
165
|
-
|
|
166
|
-
**`dreamcontext` CLI** for:
|
|
167
|
-
- Creating
|
|
168
|
-
- Inserting into LIFO structures (changelog
|
|
169
|
-
- Scaffolding
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
- Tracking knowledge access (`dreamcontext knowledge touch`)
|
|
173
|
-
- Distilling transcripts (`dreamcontext transcript distill`)
|
|
148
|
+
- Find-and-replace / updating existing content (e.g. editing soul/user/memory)
|
|
149
|
+
- Searching across context files (after `memory recall`)
|
|
150
|
+
|
|
151
|
+
**`dreamcontext` CLI** for everything structured:
|
|
152
|
+
- Creating entries (tasks, features, knowledge, changelog, releases)
|
|
153
|
+
- Inserting into LIFO structures (changelog, task/feature sections)
|
|
154
|
+
- Scaffolding, bookmarking, triggers, recall, sleep, taxonomy, sync
|
|
155
|
+
|
|
156
|
+
When in doubt about a command or flag, open [cli-reference.md](references/cli-reference.md) — it lists every command. Do **not** guess flags or hand-edit JSON state files.
|
|
174
157
|
|
|
175
158
|
---
|
|
176
159
|
|
|
177
|
-
## Operational Rules
|
|
160
|
+
## Operational Rules (the rules past sessions kept breaking)
|
|
178
161
|
|
|
179
162
|
1. **User's request is king.** Execute direct instructions. The task queue is reference, not auto-pilot. Suggest related tasks; never auto-pick them.
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
-
|
|
183
|
-
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
-
|
|
187
|
-
-
|
|
188
|
-
- User acquisition, retention, push notifications, ASO, paywalls → `growth`
|
|
163
|
+
|
|
164
|
+
2. **Skill triage before action — HARD RULE.** Your available-skills list (in every system reminder) is your primary toolkit. Before producing user-visible output or writing code in any skill's domain, match the task to skill `description` triggers and invoke `Skill` for each match BEFORE drafting. Multiple skills load in parallel; do not wait to be told. Match against whatever is actually in your available-skills list — **only name a skill that appears there; never invent one.** The skills dreamcontext ships (install via `dreamcontext install-skill --packs`) and their typical triggers:
|
|
165
|
+
- UI / frontend / components, design systems → `design` + `engineering`
|
|
166
|
+
- Backend, APIs, security, refactor, testing, code standards → `engineering`
|
|
167
|
+
- Thorough multi-aspect review of a diff / PR → `multi-review`
|
|
168
|
+
- Driving a big feature end-to-end (plan → review → implement → validate) → `goal-skill`
|
|
169
|
+
- Meta / Facebook / Instagram ads, ROAS, cohorts → `meta-marketing` + `growth`
|
|
170
|
+
- Acquisition, retention, push, ASO, paywalls, monetization → `growth`
|
|
189
171
|
- Brand-aligned writing (emails, decks, posts) → `brand-voice`
|
|
190
|
-
- Multi-perspective decisions, "
|
|
191
|
-
-
|
|
192
|
-
-
|
|
193
|
-
-
|
|
194
|
-
-
|
|
195
|
-
|
|
196
|
-
Skip skill triage only when the request is (a) a 1-line factual question, (b) purely about dreamcontext mechanics (covered by this skill), or (c) genuinely outside every available skill's domain. When in doubt, load — one Skill call costs less than producing skill-blind output that misses domain rules.
|
|
197
|
-
|
|
198
|
-
This rule exists because past sessions repeatedly produced output without consulting available skills, forcing the user to redirect mid-task. Treat skill-blind output as a hard regression.
|
|
199
|
-
3. **Check before creating.** Search existing features, tasks, knowledge before creating new ones.
|
|
200
|
-
4. **Update over duplicate.** New information updates existing files.
|
|
201
|
-
5. **Be surgical.** Only touch what changed. Use the most direct tool for the job.
|
|
202
|
-
6. **LIFO at top in append-only stores**: CHANGELOG.json entries, task changelog sections, and constraint sections all insert at top. (Note: as of 2026-05-23, `2.memory.md` no longer carries a LIFO ship-narrative section — ship events go in CHANGELOG only.)
|
|
203
|
-
7. **~150 line limit** on context files. Extract detail to knowledge, keep summary + reference. Archived content stays findable via `dreamcontext memory recall`.
|
|
204
|
-
8. **Log every session** that modifies code or makes decisions. This is the cross-session continuity mechanism.
|
|
205
|
-
9. **Features are sleep-only.** Never update feature PRDs during active work. All working context goes into the task body. The sleep agent consolidates task content into features.
|
|
206
|
-
10. **All work needs a task.** Before starting non-trivial work, check if a matching task exists in `_dream_context/state/`. If not, create one. After plans are approved (ExitPlanMode), offer to save as a task. The sleep agent flags untracked work.
|
|
207
|
-
11. **Use dreamcontext-explore, not Explore.** The default Explore agent is blocked via PreToolUse hook. Use `dreamcontext-explore` for all codebase exploration. It checks context files first, saving thousands of tokens.
|
|
208
|
-
12. **Mark checkboxes as you go.** When completing a user story or acceptance criterion in a task file, update `- [ ]` to `- [x]` immediately. Don't wait for sleep consolidation. This is the live progress signal.
|
|
209
|
-
12a. **Keep the Workflow flowchart in sync.** Every task file has a `## Workflow` mermaid block at the top — one node per acceptance criterion, grouped under milestone subgraphs, with status classes `done` / `active` / `todo` / `blocked`. Whenever you check off a criterion, start work on one, add/remove a criterion, or hit a blocker: update the corresponding node's `:::class`. Run `dreamcontext tasks doctor <name>` to verify sync. The flowchart is the load-bearing summary of the task — drift makes future sessions misread progress.
|
|
210
|
-
13. **Reuse before create.** Before building any UI component, utility, hook, or abstraction, search the codebase for existing implementations that serve the same purpose. Use `dreamcontext-explore` to find reusable candidates. If a match exists, use it or extend it. Never duplicate functionality that already exists. This applies to modals, forms, filters, layouts, helpers, and any shared pattern.
|
|
211
|
-
14. **Recall before grep.** Before grepping `_dream_context/` for prior decisions, design rationale, or "did we already address X?", run `dreamcontext memory recall "<query>"`. BM25 ranks across knowledge, features, tasks, and memory entries in one shot — cheaper and more on-target than blind Grep.
|
|
212
|
-
15. **Tag before you create.** Before tagging any task, feature, or knowledge file, consult the project taxonomy vocabulary (`dreamcontext taxonomy vocab`). Reuse canonical faceted tags (`topic:recall`, `domain:security`, etc.) or bare standard tags before inventing new ones — fragmenting tags degrades recall quality. To add new vocabulary: `dreamcontext taxonomy add <tag>` (new domain terms) or `dreamcontext taxonomy alias <alias> <canonical>` (merging shorthands). Use `dreamcontext taxonomy resolve <tag>` to verify classification.
|
|
172
|
+
- Multi-perspective decisions, "let's debate" → `council`
|
|
173
|
+
- Writing / reviewing system prompts or agent definitions → `system-prompts`
|
|
174
|
+
- Diagrams / boards in the vault → `excalidraw`
|
|
175
|
+
- Watching / transcribing a video → `video-watching`
|
|
176
|
+
- Discovering or validating a business idea → `business-idea-discovery` / `business-idea-validation`
|
|
213
177
|
|
|
214
|
-
|
|
178
|
+
Skip triage only when the request is (a) a 1-line factual question, (b) purely about dreamcontext mechanics (this skill), or (c) outside every available skill's domain. When in doubt, load.
|
|
215
179
|
|
|
216
|
-
|
|
180
|
+
3. **Recall before grep.** Before grepping `_dream_context/` for prior decisions or "did we already do X?", run `dreamcontext memory recall "<query>"`. It ranks across knowledge, features, tasks, memory, and changelog in one shot — cheaper and more on-target than blind Grep.
|
|
217
181
|
|
|
218
|
-
|
|
182
|
+
4. **Single source of truth — check before creating, update over duplicate.** Every fact lives in exactly ONE place. Before creating any task/feature/knowledge, `dreamcontext memory recall` for it; if it exists, UPDATE it instead of forking a copy.
|
|
183
|
+
- **Know feature vs knowledge.** A **feature** (`core/features/<name>.md`) is product documentation — what a capability *is*, its user stories + acceptance criteria — updated only at sleep. **Knowledge** (`knowledge/…`) is other durable material: research, decisions, rationale, domain/technical context. In-progress work lives in a **task**, never in a feature or knowledge file.
|
|
184
|
+
- **Never create a knowledge file for something that is a feature**, and never keep a knowledge copy of content that already lives in a feature (or vice-versa). If a topic is a feature, the feature is its home — knowledge may *reference* it, not duplicate it. Don't have both a feature and a knowledge doc covering the same thing.
|
|
185
|
+
- **Never duplicate knowledge.** If two docs overlap, merge into one and point the other at it. Fragmented near-duplicate knowledge and duplicate tasks are the top failure modes — `sleep-product` dedupes, but don't create the mess.
|
|
219
186
|
|
|
220
|
-
|
|
221
|
-
dreamcontext bookmark add "<message>" -s <1|2|3> --task <task-slug>
|
|
222
|
-
```
|
|
187
|
+
5. **Work over ~5 minutes needs a task — but don't fork tasks.** If a piece of work will take more than ~5 minutes, it needs a task. FIRST check the auto-loaded snapshot (and `dreamcontext memory recall "<keywords>" --types task`) for one that already covers it: if found, **extend it** — broaden its scope, add an acceptance criterion or a sub-step — rather than creating a near-duplicate. Create a new task only for a genuinely separate concern. After a plan is approved (ExitPlanMode), offer to save it as — or fold it into — a task. The sleep agent flags untracked work and merges duplicates.
|
|
223
188
|
|
|
224
|
-
**
|
|
189
|
+
6. **Mark checkboxes as you go.** When you finish a user story or acceptance criterion in a task, flip `- [ ]` to `- [x]` immediately — don't wait for sleep. Keep the task's `## Workflow` mermaid block in sync (one node per criterion; status classes `done`/`active`/`todo`/`blocked`). Verify with `dreamcontext tasks doctor <name>`. See [tasks-and-features.md](references/tasks-and-features.md).
|
|
225
190
|
|
|
226
|
-
|
|
227
|
-
|-------|-------------|--------|
|
|
228
|
-
| User corrects you | "What did I just learn? Will this apply again?" | `bookmark add "..." -s 2 --task <slug>` |
|
|
229
|
-
| You make an architectural decision | "What did I decide and why? Will future sessions need this?" | `bookmark add "..." -s 2 --task <slug>` |
|
|
230
|
-
| You find a bug or unexpected behavior | "What was surprising? Could this recur?" | `bookmark add "..." -s 1 --task <slug>` |
|
|
231
|
-
| You complete a significant implementation step | "What's done, what's the current state?" | `bookmark add "..." -s 1 --task <slug>` |
|
|
232
|
-
| User expresses a preference | "Is this a one-time request or a lasting preference?" | `bookmark add "..." -s 2` |
|
|
233
|
-
| You hit a dead end or change approach | "What failed and why?" | `bookmark add "..." -s 1 --task <slug>` |
|
|
191
|
+
7. **Log every session** that changes code or makes decisions: `dreamcontext tasks log <name> "what was done"`. This is the cross-session continuity mechanism.
|
|
234
192
|
|
|
235
|
-
|
|
193
|
+
8. **Reuse before create.** Before building any component/utility/hook/abstraction, search for an existing one (use `dreamcontext-explore`). Extend a match; never duplicate.
|
|
236
194
|
|
|
237
|
-
**
|
|
195
|
+
9. **Features are sleep-only.** Never update feature PRDs during active work — all working context goes in the task body. The sleep agent consolidates tasks into features.
|
|
238
196
|
|
|
239
|
-
**
|
|
197
|
+
10. **Use `dreamcontext-explore`, not `Explore`.** The default Explore agent is blocked via a PreToolUse hook. `dreamcontext-explore` checks curated context first, saving thousands of tokens.
|
|
240
198
|
|
|
241
|
-
|
|
242
|
-
|-------|------|---------|
|
|
243
|
-
| ★ (1) | Notable decision, progress checkpoint, useful pattern | "Chose CSS modules over styled-components" |
|
|
244
|
-
| ★★ (2) | Architectural decision, user preference, significant bug, user correction | "User requires all auth to have rate limiting" |
|
|
245
|
-
| ★★★ (3) | Critical constraint, breaking change, fundamental design choice | "Switched from REST to GraphQL for public API" |
|
|
199
|
+
11. **Tag before you create.** Before tagging a task/feature/knowledge, consult `dreamcontext taxonomy vocab` and reuse canonical faceted tags (`topic:recall`, `domain:security`) before inventing new ones. Fragmenting tags degrades recall.
|
|
246
200
|
|
|
247
|
-
|
|
201
|
+
12. **Be surgical.** Only touch what changed. ~150-line soft limit on context files — extract detail to knowledge, keep a summary + reference. LIFO inserts go at the top (CHANGELOG, task changelog, constraint sections).
|
|
248
202
|
|
|
249
|
-
|
|
203
|
+
13. **You can reach connected projects.** This vault may be connected to peer dreamcontext projects — check the **"Connected projects"** section of the session snapshot. `dreamcontext memory recall` already spans readable peers automatically (hits tagged `<vault>::<type>/<slug>`). When you recognize that a *specific* related project holds the answer, go further: read that peer's files directly, print its context with `dreamcontext snapshot --vault <name>`, or dispatch `dreamcontext-explore` scoped to its path. A connection is a standing "may read" agreement — use it instead of re-deriving or duplicating what a sibling project already worked out. Details: [integrations.md](references/integrations.md).
|
|
250
204
|
|
|
251
205
|
---
|
|
252
206
|
|
|
253
|
-
##
|
|
254
|
-
|
|
255
|
-
**Explorer** (`dreamcontext-explore`) -- context-accelerated codebase exploration:
|
|
256
|
-
> Use this for ALL exploration tasks. The default Explore agent is automatically blocked via PreToolUse hook.
|
|
207
|
+
## Bookmarking & Self-Reflection (you under-do this — fix it)
|
|
257
208
|
|
|
258
|
-
|
|
209
|
+
Bookmarks tag important moments for the sleep agent and link sessions to tasks. **Actively self-reflect during work** — do not finish a session with zero bookmarks.
|
|
259
210
|
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
Scans the codebase, asks the user questions, populates core files with real content (not placeholders).
|
|
211
|
+
```bash
|
|
212
|
+
dreamcontext bookmark add "<message>" -s <1|2|3> --task <task-slug>
|
|
213
|
+
```
|
|
264
214
|
|
|
265
|
-
**
|
|
215
|
+
**Checkpoints — after each, pause and bookmark:**
|
|
266
216
|
|
|
267
|
-
|
|
217
|
+
| Event | Salience | Why |
|
|
218
|
+
|-------|----------|-----|
|
|
219
|
+
| User corrects you | `-s 2` | A lasting lesson |
|
|
220
|
+
| You make an architectural decision | `-s 2` | Future sessions need the "why" |
|
|
221
|
+
| You find a bug / surprising behavior | `-s 1` | Could recur |
|
|
222
|
+
| You complete a significant step | `-s 1` | Records current state |
|
|
223
|
+
| User expresses a preference | `-s 2` | Lasting preference |
|
|
224
|
+
| You hit a dead end / change approach | `-s 1` | What failed and why |
|
|
225
|
+
| Critical constraint / breaking change | `-s 3` | Triggers a consolidation advisory next session |
|
|
268
226
|
|
|
269
|
-
**
|
|
270
|
-
-
|
|
271
|
-
-
|
|
227
|
+
**Rules:**
|
|
228
|
+
- Every bookmark during task work MUST include `--task <slug>` — this is how sessions link to tasks, so the sleep agent knows which task docs to update.
|
|
229
|
+
- **Minimum one bookmark per task-modifying session.** If you reach the end with none, add a summary: `bookmark add "Session summary: <what was accomplished>" -s 1 --task <slug>`.
|
|
230
|
+
- Salience: ★(1) notable · ★★(2) architectural / preference / correction · ★★★(3) critical constraint / breaking change.
|
|
231
|
+
- After reading a knowledge file, record it: `dreamcontext knowledge touch <slug>` (powers staleness + warm-loading).
|
|
272
232
|
|
|
273
|
-
|
|
233
|
+
The sleep agent processes bookmarks FIRST, by salience.
|
|
274
234
|
|
|
275
235
|
---
|
|
276
236
|
|
|
277
|
-
## Sleep
|
|
278
|
-
|
|
279
|
-
Sleep debt accumulates automatically via hooks (tracks Write/Edit tool uses per session):
|
|
280
|
-
|
|
281
|
-
| Session Changes | Score | Debt Level | Agent Behavior |
|
|
282
|
-
|----------------|-------|------------|----------------|
|
|
283
|
-
| 1-3 | +1 | 0-3 (Alert) | No action needed |
|
|
284
|
-
| 4-8 | +2 | 4-6 (Drowsy) | After completing any task, MUST inform user and offer consolidation |
|
|
285
|
-
| 9+ | +3 | 7-9 (Sleepy) | At session start, MUST inform user and recommend consolidation before new work |
|
|
286
|
-
| | | 10+ (Must sleep) | MUST inform user and consolidate immediately |
|
|
287
|
-
|
|
288
|
-
**Consolidation directives (injected at session start + every user message via UserPromptSubmit):**
|
|
289
|
-
- **Debt >= 10**: "CONSOLIDATION REQUIRED" -- consolidate NOW, before or immediately after the current task
|
|
290
|
-
- **Debt >= 7**: "CONSOLIDATION RECOMMENDED" -- inform user, recommend consolidation before starting new work
|
|
291
|
-
- **Debt >= 4**: Offer consolidation after completing the current task
|
|
292
|
-
- **★★★ bookmark exists**: Critical bookmark advisory fires regardless of debt level
|
|
293
|
-
- **3+ sessions since last sleep**: Rhythm advisory, offer consolidation after current task
|
|
237
|
+
## Sleep / Consolidation (you must do this correctly)
|
|
294
238
|
|
|
295
|
-
Sleep debt
|
|
239
|
+
Sleep debt accumulates automatically via hooks (per Write/Edit). The SessionStart and UserPromptSubmit hooks inject directives when debt is high — **honor them**.
|
|
296
240
|
|
|
297
|
-
|
|
241
|
+
| Debt | Level | Required behavior |
|
|
242
|
+
|------|-------|-------------------|
|
|
243
|
+
| 0–3 | Alert | No action |
|
|
244
|
+
| 4–6 | Drowsy | After completing a task, **inform the user and offer** consolidation |
|
|
245
|
+
| 7–9 | Sleepy | At session start, **inform the user and recommend** consolidation before new work |
|
|
246
|
+
| 10+ | Must sleep | **Consolidate now**, before or right after the current task |
|
|
298
247
|
|
|
299
|
-
|
|
300
|
-
**Ask first**: debt 4-6 after completing a task, accumulated smaller changes, user wrapping up.
|
|
248
|
+
A ★★★ bookmark or 3+ sessions since last sleep also triggers an advisory.
|
|
301
249
|
|
|
302
|
-
**
|
|
250
|
+
**Post-task check (MANDATORY):** after completing any task or major implementation, check debt. If ≥4, tell the user: *"Sleep debt is [N]. I can consolidate now to preserve this work. Want me to run it?"* Never silently finish.
|
|
251
|
+
**Auto-sleep (act without asking):** task completed with debt ≥7, or major implementation finished with debt ≥4.
|
|
303
252
|
|
|
253
|
+
**The flow (main agent runs this directly — sub-agents can't reliably fan out):**
|
|
304
254
|
1. Tell the user you're consolidating.
|
|
305
|
-
2. `dreamcontext sleep start` — pins the epoch
|
|
306
|
-
3. Build
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
- **Always fire**: `sleep-tasks`, `sleep-state` (state owns core 0-6, changelog, releases)
|
|
312
|
-
- **Conditional fire**: `sleep-product` (owns knowledge + feature PRDs) if **any** of:
|
|
313
|
-
- `last_assistant_message` mentions research/analysis/decision
|
|
314
|
-
- a `knowledge_access` entry hasn't been touched in 30+ days
|
|
315
|
-
- a research bookmark exists
|
|
316
|
-
- a task slug matches an existing feature PRD filename
|
|
317
|
-
- `git status` shows changes under `_dream_context/core/features/`
|
|
318
|
-
- a session advanced ≥1 acceptance criterion, OR introduced a feature concept with ≥2 acceptance criteria, OR the user named something "a feature" / "we should add X", OR a task has `feature:` frontmatter pointing to a non-existent PRD
|
|
319
|
-
- user hint mentions knowledge or a feature
|
|
320
|
-
- When unsure, **over-fire** `sleep-product` — it no-ops cheaply.
|
|
321
|
-
- **Conditional fire**: `sleep-migration` when `dreamcontext migrations pending` produces output (pending agent migration tasks exist). Contract: no-content changes only (structure/paths/frontmatter/fences); writes ledger via `dreamcontext migrations record` on completion.
|
|
322
|
-
- **Do NOT fire `sleep-federation`.** Federation is read-only (live reference); the copy-based drain/distribute path is disabled and parked on the roadmap. Sleep copies NOTHING across vault boundaries — peers are read live at recall time, not synced at sleep. (The `sleep-federation` specialist + `federation sync`/`drain` are retained but inert.)
|
|
323
|
-
- Pass each specialist a small text brief in its prompt: epoch, session IDs, active task slugs, planning version, signals relevant to that specialist, optional user hint. Do **not** include transcript content — specialists call `dreamcontext transcript distill <id>` themselves.
|
|
324
|
-
- **Consolidation discipline (remind both specialists in the brief):** prefer *updating/extending* an existing entity over creating a new one. `sleep-tasks` folds a smaller slice into the task that already covers it (broaden its title + insert sub-items) rather than forking a duplicate or a needless sub-task; `sleep-product` keeps similar verticals/brands/topics in the fewest knowledge files, splitting only on a sharp topical boundary that sharpens tags. Duplicate tasks and fragmented near-duplicate knowledge are the top consolidation failure modes — but genuinely separate concerns/topics still get their own task/file.
|
|
325
|
-
5. Wait for all specialist reports. Each returns a short structured report.
|
|
326
|
-
5a. Run `dreamcontext reflect` — each candidate is a term seen across multiple sessions not yet in soul/user/memory/knowledge; promote into `2.memory.md` or a knowledge file ONLY if genuinely load-bearing; most are noise, discard; NEVER auto-promote.
|
|
327
|
-
6. Marketing pass if `_dream_context/marketing/` exists: `dreamcontext mk rem-sleep`.
|
|
328
|
-
7. Council promote check: `dreamcontext council list --unpromoted` — promote if user engaged positively.
|
|
329
|
-
8. `dreamcontext sleep done "<one-paragraph summary stitched from specialist reports>"` — clears pre-epoch state, resets debt.
|
|
330
|
-
9. Report consolidated summary back to the user.
|
|
331
|
-
|
|
332
|
-
**Epoch safety**: `sleep start` pins a timestamp epoch. `sleep done` only clears sessions/changes/bookmarks from before the epoch. Parallel sessions that finish during consolidation are preserved for the next cycle.
|
|
333
|
-
|
|
334
|
-
For non-file-change work (architecture discussions, decisions): `dreamcontext sleep add <score> "<reason>"`
|
|
255
|
+
2. `dreamcontext sleep start` — pins the epoch (safe clearing).
|
|
256
|
+
3. Build a brief inline (cheap CLI): read `state/.sleep.json`, `git status --short`, `git log` since last sleep, `dreamcontext core releases active`.
|
|
257
|
+
4. Dispatch specialists **in parallel** (one message, multiple Agent calls): always `sleep-tasks` + `sleep-state`; fire `sleep-product` when knowledge/features/research signals warrant (over-fire — it no-ops cheaply); fire `sleep-migration` only if `dreamcontext migrations pending` has output.
|
|
258
|
+
5. Wait for reports, then `dreamcontext reflect` (promote only genuinely load-bearing terms).
|
|
259
|
+
6. `dreamcontext sleep done "<one-paragraph summary>"` — clears pre-epoch state, resets debt.
|
|
260
|
+
7. Report the consolidated summary to the user.
|
|
335
261
|
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
## Versioning
|
|
339
|
-
|
|
340
|
-
Versions and releases are unified in `RELEASES.json`. A "version" is a release entry with `status: planning`. When released, the status changes to `released` and the date is set.
|
|
341
|
-
|
|
342
|
-
**Lifecycle**: `planning` -> `released`
|
|
343
|
-
|
|
344
|
-
```bash
|
|
345
|
-
# Create a planning version (auto-becomes the active planning version)
|
|
346
|
-
dreamcontext core releases add --ver v0.2.0 --summary "Dashboard improvements" --status planning
|
|
347
|
-
|
|
348
|
-
# Inspect / change / clear the active planning version
|
|
349
|
-
dreamcontext core releases active # print current
|
|
350
|
-
dreamcontext core releases active v0.3.0 # switch to another existing planning version
|
|
351
|
-
dreamcontext core releases active --clear # unset
|
|
262
|
+
For non-file-change work (decisions, architecture talk): `dreamcontext sleep add <score> "<reason>"`.
|
|
352
263
|
|
|
353
|
-
|
|
354
|
-
# The sleep agent checks if all tasks for a planning version are done and reports readiness.
|
|
355
|
-
```
|
|
356
|
-
|
|
357
|
-
Tasks created without an explicit `--version` flag auto-attach to the **active planning version**. This means new work is always linked to a milestone; if no active planning version exists, the sleep agent will create one. The dashboard's Version Manager shows planning vs released versions and provides a "Release" action.
|
|
264
|
+
**Full specialist contracts, deep sleep, epoch safety, and the marketing/council passes are in [sleep.md](references/sleep.md). Read it before running a sleep cycle if you're unsure of the details.**
|
|
358
265
|
|
|
359
266
|
---
|
|
360
267
|
|
|
361
|
-
##
|
|
362
|
-
|
|
363
|
-
Tasks are your **working documents**. All context, decisions, user stories, acceptance criteria, constraints, and notes go into the task body. Features are retrospective product documentation updated exclusively during sleep consolidation. Never update features during active work.
|
|
268
|
+
## Tasks — essentials
|
|
364
269
|
|
|
365
|
-
|
|
270
|
+
Tasks are your **working documents**: all context, decisions, user stories, acceptance criteria, constraints, notes, and progress go in the task body. The auto-loaded snapshot already lists active tasks — answer "what am I working on?" from it.
|
|
366
271
|
|
|
367
272
|
```bash
|
|
368
|
-
|
|
369
|
-
dreamcontext tasks list
|
|
370
|
-
|
|
371
|
-
|
|
372
|
-
|
|
373
|
-
dreamcontext tasks
|
|
374
|
-
dreamcontext tasks list --tag memoryos --tag backend --status todo # --tag is repeatable, AND semantics (must have ALL)
|
|
375
|
-
dreamcontext tasks list --any-tag lina --any-tag studio # --any-tag is repeatable, OR semantics (at least one)
|
|
376
|
-
dreamcontext tasks list --priority critical # critical | high | medium | low
|
|
377
|
-
dreamcontext tasks list --feature recall-engine # match related_feature
|
|
378
|
-
dreamcontext tasks list --long # also show version + tags inline
|
|
379
|
-
dreamcontext tasks list --group-by version --all # sectioned output with per-group counts (tag|version|priority|status)
|
|
380
|
-
dreamcontext tasks list --tag lina --json # scriptable: emit the filtered set as JSON (use this, not awk/grep)
|
|
381
|
-
dreamcontext tasks tags # distinct tags with counts (--all to include completed)
|
|
382
|
-
# Filters are case-insensitive; version/priority/feature match exactly; multiple --tag = AND, --any-tag = OR.
|
|
383
|
-
|
|
384
|
-
# Create (rich task with Why, User Stories, Acceptance Criteria, Constraints, Technical Details, Notes, Changelog)
|
|
385
|
-
dreamcontext tasks create <name> --description "..." --priority medium --why "What this task accomplishes"
|
|
386
|
-
|
|
387
|
-
# Optional RICE prioritization on create (additive to priority/urgency; powers Scatter view + RICE sort)
|
|
388
|
-
dreamcontext tasks create <name> --reach 5 --impact 3 --confidence 75 --effort 2
|
|
389
|
-
# --reach integer 1–10 (how many users/sessions/units affected)
|
|
390
|
-
# --impact integer 1–5 (how much per affected unit)
|
|
391
|
-
# --confidence one of 25, 50, 75, 100 (percent)
|
|
392
|
-
# --effort person-weeks > 0 and ≤ 52 (0.5 step OK)
|
|
393
|
-
# Score = (reach × impact × confidence/100) / effort, computed server-side.
|
|
394
|
-
|
|
395
|
-
# Retro-rate or update RICE on an existing task
|
|
396
|
-
dreamcontext tasks rice <name> # Print current values
|
|
397
|
-
dreamcontext tasks rice <name> --effort 4 # Update one field, recompute score
|
|
398
|
-
dreamcontext tasks rice <name> --clear # Clear all RICE values
|
|
399
|
-
|
|
400
|
-
# Enrich (insert into any section during active work)
|
|
401
|
-
dreamcontext tasks insert <name> user_stories "As a user, I want X so that Y"
|
|
402
|
-
dreamcontext tasks insert <name> acceptance_criteria "API returns 200 with paginated results"
|
|
403
|
-
dreamcontext tasks insert <name> constraints "Using native fetch, no axios dependency"
|
|
404
|
-
dreamcontext tasks insert <name> technical_details "Key file: src/api/tasks.ts, uses Express router"
|
|
405
|
-
dreamcontext tasks insert <name> notes "Edge case: empty results should return [] not null"
|
|
406
|
-
dreamcontext tasks insert <name> changelog "Implemented pagination for /api/tasks"
|
|
407
|
-
|
|
408
|
-
# Lifecycle
|
|
409
|
-
dreamcontext tasks log <name> "what was done" # Quick changelog entry (MANDATORY)
|
|
410
|
-
dreamcontext tasks status <name> in_review "Ready for review" # Bump status (todo|in_progress|in_review|completed)
|
|
411
|
-
dreamcontext tasks complete <name> "summary" # Convenience for marking complete
|
|
273
|
+
dreamcontext tasks create <name> -d "..." -p high -w "Why this matters" # create
|
|
274
|
+
dreamcontext tasks list --status todo --tag backend # filter (composable)
|
|
275
|
+
dreamcontext tasks insert <name> acceptance_criteria "API returns 200…" # enrich a section
|
|
276
|
+
dreamcontext tasks log <name> "Implemented pagination" # progress (MANDATORY)
|
|
277
|
+
dreamcontext tasks status <name> in_review "Ready for review" # bump status
|
|
278
|
+
dreamcontext tasks complete <name> "summary" # done
|
|
412
279
|
```
|
|
413
280
|
|
|
414
|
-
|
|
281
|
+
Status: `todo → in_progress → in_review → completed`. Sections: `why`, `user_stories`, `acceptance_criteria`, `constraints`, `technical_details`, `notes`, `changelog`.
|
|
415
282
|
|
|
416
|
-
|
|
283
|
+
**RICE, due dates, tags/people, the Workflow flowchart, versioning, and multi-product** → [tasks-and-features.md](references/tasks-and-features.md).
|
|
284
|
+
**Syncing tasks to ClickUp** → [integrations.md](references/integrations.md).
|
|
417
285
|
|
|
418
286
|
---
|
|
419
287
|
|
|
420
|
-
## Memory & Knowledge
|
|
288
|
+
## Memory & Knowledge — essentials
|
|
421
289
|
|
|
422
|
-
**Quick
|
|
423
|
-
-
|
|
424
|
-
- `dreamcontext
|
|
425
|
-
- `dreamcontext
|
|
426
|
-
-
|
|
290
|
+
- **Quick updates (no sleep):** edit `0.soul.md`/`1.user.md`/`2.memory.md` directly; `dreamcontext core changelog add` for code changes; `dreamcontext tasks log` for progress.
|
|
291
|
+
- **Recall (first-line discovery):** `dreamcontext memory recall "<query>" [--top N] [--types knowledge,feature,task,memory,changelog] [--json]`. Default mode is **`haiku`** (a small cloud model picks relevant docs); `raw` = BM25 only; `off` = disabled. Control with `dreamcontext recall on|raw|off|status`. Auto-injected on prompts (opt out `DREAMCONTEXT_MEMORY_HOOK=0`).
|
|
292
|
+
- **Quick capture:** `dreamcontext memory remember "<text>"` writes a `type=note` CHANGELOG entry; sleep reconciles it later. (`2.memory.md` no longer has a LIFO ship-narrative section — ship events live in CHANGELOG.)
|
|
293
|
+
- **Knowledge files:** index auto-loaded; create with `dreamcontext knowledge create <name>`; pin frequently-needed ones (`pinned: true`); read non-pinned on demand and `knowledge touch` after.
|
|
294
|
+
- **Features are sleep-only** (see rule 9).
|
|
427
295
|
|
|
428
|
-
**
|
|
429
|
-
|
|
430
|
-
**Major consolidation** (multiple files, reorganization) -> dispatch sleep agent.
|
|
431
|
-
|
|
432
|
-
**Knowledge**: Index auto-loaded each session. Pin frequently-needed files (`pinned: true` in frontmatter). Read non-pinned on demand. Create with `dreamcontext knowledge create <name>`.
|
|
433
|
-
|
|
434
|
-
Standard tags: `architecture`, `api`, `frontend`, `backend`, `database`, `devops`, `security`, `testing`, `design`, `decisions`, `onboarding`, `domain`. Custom tags allowed. For the full resolved project vocabulary (including faceted tags and aliases), run `dreamcontext taxonomy vocab`. The project vocabulary is maintained in `core/taxonomy.json`; scaffold it with `dreamcontext taxonomy init`. Mutate vocabulary via CLI — never hand-edit the JSON: `dreamcontext taxonomy add <facet:value>` for new tags, `dreamcontext taxonomy alias <alias> <canonical>` for merges, `dreamcontext taxonomy resolve <tag>` to check classification. sleep-product runs taxonomy maintenance during Pass C.
|
|
435
|
-
|
|
436
|
-
**Taxonomy**: Tags drive BM25 recall precision. Prefer canonical faceted tags (`topic:recall`, `domain:database`) over bare duplicates. Run `dreamcontext taxonomy audit` to surface non-canonical or orphan tags.
|
|
437
|
-
|
|
438
|
-
### Excalidraw boards in knowledge/diagrams/
|
|
439
|
-
|
|
440
|
-
Excalidraw boards (`.excalidraw.md`) are first-class knowledge files. Two layouts are both supported:
|
|
441
|
-
|
|
442
|
-
**Flat** (legacy, still works): `knowledge/diagrams/<title>.excalidraw.md`
|
|
443
|
-
|
|
444
|
-
**Per-title folder** (preferred convention): `knowledge/diagrams/<title>/<title>.excalidraw.md`
|
|
445
|
-
|
|
446
|
-
Rules:
|
|
447
|
-
- **REQUIRED frontmatter**: every board MUST have `name:` and `description:` fields. Boards with no `## Text Elements` section fall back to description-only recall — make it descriptive.
|
|
448
|
-
- **Do NOT hand-edit scene JSON.** The `.excalidraw.md` file is generated output. Build a spec and run the generator (`.board.cjs`). Edit the spec, not the board.
|
|
449
|
-
- **Spec is the source of truth.** If the spec and the board ever disagree, the spec wins. Commit both.
|
|
450
|
-
- **Dark siblings**: all files inside a `knowledge/diagrams/<title>/` folder that are NOT the board itself (generator scripts `.board.cjs`, spec `.json`, helper `.md`) are excluded from the index, recall corpus, snapshot, and dashboard. They are tooling artifacts — they do NOT surface in memory.
|
|
451
|
-
- **Memory indexes only frontmatter + ## Text Elements**: scene JSON, base64, and element ids are stripped before indexing. A 2 MB board with rich Text Elements is as searchable as a tiny board. The dashboard renderer still receives the raw body (with full scene JSON) via the detail API route.
|
|
452
|
-
- **Migration is opt-in**: flat boards stay flat unless you explicitly ask for reorganization. Use `dreamcontext migrations pending` to see pending migration tasks; use `dreamcontext migrations apply-diagrams` to opt-in to organizing flat boards into per-title folders.
|
|
453
|
-
|
|
454
|
-
#### Where does a board go?
|
|
455
|
-
|
|
456
|
-
| Board nature | Location | Indexed? |
|
|
457
|
-
|---|---|---|
|
|
458
|
-
| Canonical / source-of-truth (architecture, system flows, roadmaps, durable plans the agent should recall in future sessions) | `knowledge/diagrams/<title>/` | Yes — indexed, recalled |
|
|
459
|
-
| Temporary / scratch / exploratory / in-progress | `inbox/` or `workspace/` (dark by location) | No — not indexed, will not pollute recall |
|
|
460
|
-
|
|
461
|
-
**Decision rule**: "Will a future session need to know this? → `knowledge/diagrams/`. Throwaway/working? → `inbox/` or `workspace/`."
|
|
462
|
-
|
|
463
|
-
Promote a board from `inbox/workspace` to `knowledge/diagrams/` only once it becomes canonical. Use `dreamcontext migrations apply-diagrams` to move flat boards + rewrite inbound [[wikilinks]] atomically — do NOT hand-edit wikilinks.
|
|
296
|
+
**Recall modes, taxonomy, Excalidraw boards/diagrams, multi-product knowledge** → [knowledge-and-recall.md](references/knowledge-and-recall.md).
|
|
464
297
|
|
|
465
298
|
---
|
|
466
299
|
|
|
467
|
-
##
|
|
468
|
-
|
|
469
|
-
Deterministic keyword recall over the curated corpus: `_dream_context/knowledge/*`, `core/features/*`, `state/*.md`, `core/2.memory.md` (Technical Decisions + Known Issues), and every entry in `core/CHANGELOG.json` (added 2026-05-23). No setup, no index file, no external services — rebuilt in-memory on every call (<100ms on ~130 docs). Use `--types changelog` to scope to ship events when you specifically want history.
|
|
470
|
-
|
|
471
|
-
```bash
|
|
472
|
-
dreamcontext memory recall <query...> [--top N] [--types knowledge,feature,task,memory,changelog] [--json|--plain]
|
|
473
|
-
dreamcontext memory remember <text...> [--title <t>] [--tasks <slugs>]
|
|
474
|
-
dreamcontext memory update <slug> [--description] [--tags] [--content] [--append] [--pin|--unpin]
|
|
475
|
-
dreamcontext memory delete <slug> [--force]
|
|
476
|
-
dreamcontext memory list [--types ...]
|
|
477
|
-
dreamcontext memory status
|
|
478
|
-
```
|
|
479
|
-
|
|
480
|
-
**Use `memory recall` as the first-line discovery tool** when the user asks "where did we decide X?", "have we discussed Y?", "what do we know about Z?", or before duplicating work. Try it BEFORE grepping or reading files blindly. Pass `--json` when consuming output programmatically; narrow with `--types task` or `--types knowledge,feature` when you know roughly where the answer lives.
|
|
481
|
-
|
|
482
|
-
**Use `memory remember <text>`** for one-off captures during a session that would otherwise be lost. As of 2026-05-23 this writes a CHANGELOG entry (type `note`, scope `quick` by default) rather than a LIFO section in `2.memory.md` (which no longer exists). The sleep cycle reconciles later; you do not need to edit `2.memory.md` by hand. Override with `--type` / `--scope` / `--summary` / `--references` for richer captures.
|
|
483
|
-
|
|
484
|
-
**`memory update` / `memory delete`** are shortcuts when surgically editing or removing knowledge files mid-session. Heavy maintenance (merging, deduping, restructuring) still belongs to sleep-product.
|
|
300
|
+
## Sub-Agents
|
|
485
301
|
|
|
486
|
-
|
|
302
|
+
- **`dreamcontext-explore`** — context-accelerated codebase exploration. Use for ALL exploration (default Explore is blocked). Uses the SubagentStart briefing to narrow searches.
|
|
303
|
+
- **`dreamcontext-initializer`** — dispatch when a project has no `_dream_context/`: *"This project needs an _dream_context/ directory. Scan the codebase and set it up."*
|
|
304
|
+
- **Sleep specialists** (`sleep-tasks`, `sleep-state`, `sleep-product`, `sleep-migration`) — dispatched by the main agent during the sleep flow only.
|
|
487
305
|
|
|
488
|
-
|
|
306
|
+
All sub-agents get a lightweight context briefing via the SubagentStart hook. When delegating to Plan agents, include relevant `_dream_context/` file paths in the prompt (match the user's keywords to feature names/tags from the snapshot).
|
|
489
307
|
|
|
490
308
|
---
|
|
491
309
|
|
|
492
|
-
##
|
|
493
|
-
|
|
494
|
-
Every `_dream_context/` is normally an island. Federation lets you reach across projects — recall what you worked out in *another* vault — using nothing but the local filesystem (no network, ever).
|
|
495
|
-
|
|
496
|
-
**Ambient awareness — you start informed.** The session snapshot includes a `## Connected projects` section listing each readable peer with a one-line description and last activity. At session start you already know which sibling projects exist and roughly what's in them. For an up-to-date summary on demand:
|
|
497
|
-
|
|
498
|
-
```bash
|
|
499
|
-
dreamcontext federation peers # compact summary: what each peer is, last activity, active task, top tags
|
|
500
|
-
```
|
|
501
|
-
|
|
502
|
-
**PULL — recall already spans peers.** Plain `memory recall` automatically searches readable peer vaults alongside the current one. No flag needed. You get up to 10 hits, vault-tagged `<vault>::<type>/<slug>` so provenance is always visible:
|
|
503
|
-
|
|
504
|
-
```bash
|
|
505
|
-
dreamcontext memory recall "<query>" # current vault + all eligible readable peers (default)
|
|
506
|
-
dreamcontext memory recall "<query>" --vault <name> # current + one named peer (repeatable)
|
|
507
|
-
dreamcontext memory recall "<query>" --connected # current + out/both connections
|
|
508
|
-
dreamcontext memory recall "<query>" --all-vaults # current + every shareable vault
|
|
509
|
-
```
|
|
510
|
-
|
|
511
|
-
Eligible = direction `out`/`both`, status not stale, AND the peer is `shareable: true`. If no eligible connections exist, recall is local-only (unchanged). A peer vault being `shareable` controls whether *others* may read it — it never blocks you from reading a shareable peer, and the current vault is always searched. Non-shareable peers are silently excluded (never an error). Cross-vault hits are namespaced `<vault>::<type>/<slug>` so the same slug in two vaults never collides.
|
|
512
|
-
|
|
513
|
-
Use `--vault <name>` when you know where the answer likely lives; the default span is the cheapest path when you don't.
|
|
310
|
+
## Setup & Maintenance (quick map)
|
|
514
311
|
|
|
515
|
-
|
|
312
|
+
- `dreamcontext setup` — the **front door**: init + install-skill + install-instructions in one step, and on macOS offers to install the desktop app too (`--install-app` to force, `--skip-app` to opt out). (`init`, `install-skill`, `install-instructions` still exist for advanced/scripted use but are deprecated as standalone steps.)
|
|
313
|
+
- `dreamcontext update` — refresh THIS project's installed skill, agents, hooks, packs, and reference set to the latest shipped version.
|
|
314
|
+
- `dreamcontext upgrade` — upgrade the CLI, then (one command) update the desktop app if installed and offer to refresh **every registered project** to match (`--yes` does it all non-interactively). **Keeping projects + app updated is the CLI's job — you should not run per-project updates by hand or ask the user to.**
|
|
315
|
+
- `dreamcontext doctor` — validate `_dream_context/` structure.
|
|
316
|
+
- `dreamcontext dashboard` — open the web UI. `dreamcontext app install|update|status` — the desktop app.
|
|
516
317
|
|
|
517
|
-
|
|
518
|
-
dreamcontext vaults discover [root] [--register] # find every _dream_context/ under a tree
|
|
519
|
-
dreamcontext connect <vault> --direction out [--topics a,b] # create a read edge (out = read)
|
|
520
|
-
dreamcontext connections list / disconnect <vault> # manage links
|
|
521
|
-
dreamcontext snapshot --vault <name> # print a peer vault's context snapshot
|
|
522
|
-
dreamcontext config shareable on|off # opt this project IN/OUT of peer recall (default: off)
|
|
523
|
-
```
|
|
318
|
+
---
|
|
524
319
|
|
|
525
|
-
|
|
320
|
+
## Improving dreamcontext (you are its field reporter)
|
|
526
321
|
|
|
527
|
-
**
|
|
528
|
-
```bash
|
|
529
|
-
dreamcontext federation status # shows connections + any leftover federated copies
|
|
530
|
-
dreamcontext federation purge --all # remove every federated:true copy in this vault
|
|
531
|
-
dreamcontext federation purge --vault <name> # remove only copies that came from one peer
|
|
532
|
-
```
|
|
322
|
+
When dreamcontext gets in your way — a recall gap, a missing command, a confusing behavior — **do not silently work around it. File it.** The sanctioned path is `dreamcontext feedback --dry-run …` → confirm with the user → file with `--yes`. Never `gh issue create` by hand. Full loop and quality bar → [improving-dreamcontext.md](references/improving-dreamcontext.md).
|
|
533
323
|
|
|
534
324
|
---
|
|
535
325
|
|
|
@@ -537,117 +327,33 @@ dreamcontext federation purge --vault <name> # remove only copies that cam
|
|
|
537
327
|
|
|
538
328
|
```
|
|
539
329
|
_dream_context/
|
|
540
|
-
|
|
541
|
-
|
|
542
|
-
|
|
543
|
-
|
|
544
|
-
|
|
545
|
-
|
|
546
|
-
|
|
547
|
-
|
|
548
|
-
|
|
549
|
-
|
|
550
|
-
|
|
551
|
-
|
|
552
|
-
|
|
553
|
-
|
|
554
|
-
|
|
555
|
-
|
|
556
|
-
| | | +-- <title>.excalidraw.md <- generated board (do NOT hand-edit scene JSON)
|
|
557
|
-
| | | +-- <title>.board.cjs <- generator script (dark sibling — excluded from index/recall)
|
|
558
|
-
| | | +-- <title>.json <- spec/source of truth (dark sibling — excluded)
|
|
559
|
-
| | | +-- notes.md <- any helper .md (dark sibling — excluded)
|
|
560
|
-
| +-- products/<product>.md <- Per-product knowledge (multi-product)
|
|
561
|
-
+-- state/
|
|
562
|
-
| +-- <task>.md <- Active tasks (frontmatter may include product:)
|
|
563
|
-
| +-- .config.json <- { platforms, packs, multiProduct, setupVersion }
|
|
330
|
+
├── core/
|
|
331
|
+
│ ├── features/<feature>.md ← Feature PRDs (may include product:)
|
|
332
|
+
│ ├── 0.soul.md 1.user.md 2.memory.md
|
|
333
|
+
│ ├── 3.style_guide_and_branding.md 4.tech_stack.md 6.system_flow.md
|
|
334
|
+
│ ├── CHANGELOG.json RELEASES.json taxonomy.json
|
|
335
|
+
├── knowledge/ ← Deep research — grouped by context, indexed recursively
|
|
336
|
+
│ ├── <topic>.md ← flat top-level docs are fine
|
|
337
|
+
│ ├── <context>/ ← PROMOTED: group related docs into a context folder
|
|
338
|
+
│ │ ├── <doc>.md ← the context's knowledge
|
|
339
|
+
│ │ └── <title>/<title>.excalidraw.md ← diagrams live INSIDE their context folder
|
|
340
|
+
│ ├── data-structures/{default,<product>}.md ← schemas (recall-indexed; ```sql body)
|
|
341
|
+
│ └── products/<product>.md ← per-product knowledge (multi-product)
|
|
342
|
+
├── state/
|
|
343
|
+
│ ├── <task>.md ← Active tasks (frontmatter may include product:)
|
|
344
|
+
│ ├── .config.json ← platforms, packs, multiProduct, taskBackend, people…
|
|
345
|
+
│ ├── .sleep.json .secrets.json (gitignored) .active-task
|
|
564
346
|
```
|
|
565
347
|
|
|
566
348
|
---
|
|
567
349
|
|
|
568
|
-
##
|
|
569
|
-
|
|
570
|
-
|
|
571
|
-
|
|
572
|
-
**
|
|
573
|
-
-
|
|
574
|
-
-
|
|
575
|
-
-
|
|
576
|
-
-
|
|
577
|
-
|
|
578
|
-
Do **not** silently work around it. A workaround fixes today; feedback fixes the system.
|
|
579
|
-
|
|
580
|
-
**The loop (this is the only sanctioned way to file — never run `gh issue create` by hand):**
|
|
581
|
-
1. **Draft.** Run `dreamcontext feedback --dry-run` with the category and a complete scenario. Fill `-s` (what you were doing), `-e` (what you expected), `-g` (what was missing/broken), `-r` (exact commands), `-p` (your proposed improvement). A maintainer who has never seen your session must understand it from the issue alone — include the whole scenario.
|
|
582
|
-
2. **Confirm with the user.** Show them the rendered draft and ask permission. This writes to a public repo on their behalf — never file without an explicit yes.
|
|
583
|
-
3. **File.** Re-run the same command without `--dry-run` and with `--yes`. It checks for near-duplicate open issues, applies the `agent-feedback` label, and files to the dreamcontext project (`meanllbrl/dreamcontext`) — **not** the user's own repo.
|
|
584
|
-
|
|
585
|
-
**No GitHub access?** If the command reports `gh` is missing or unauthenticated, relay its guidance to the user: install `gh` + run `gh auth login`, and if they have no GitHub account, ask them to create a free one at github.com/signup. They need an account to file. Once they're signed in, re-run the loop.
|
|
586
|
-
|
|
587
|
-
**Quality bar:** one issue per distinct gap, concrete title, full scenario, a concrete proposal. Vague feedback ("recall is bad") is noise; a reproducible scenario with a proposed command is signal.
|
|
588
|
-
|
|
589
|
-
## Command Reference
|
|
590
|
-
|
|
591
|
-
All commands prefixed with `dreamcontext`. For reading/searching, use native tools directly.
|
|
592
|
-
|
|
593
|
-
| Command | Description |
|
|
594
|
-
|---------|-------------|
|
|
595
|
-
| `init [--multi-product=a,b,c]` | Initialize `_dream_context/`. Prompts interactively whether the project is a monorepo with multiple products; `--multi-product=a,b,c` skips the prompt and provides kebab-case product names directly. Creates `knowledge/data-structures/<product>.md` per product (or `default.md` for single-product) and seeds `knowledge/products/`. |
|
|
596
|
-
| `core changelog add` | Add changelog entry (interactive) |
|
|
597
|
-
| `core releases add [--ver v --summary s --yes] [--status planning]` | Create release (default: released with auto-discovery; --status planning: empty planning version, auto-becomes active) |
|
|
598
|
-
| `core releases active [<version>] [--clear]` | Get/set/clear the active planning version (default for new tasks' `version` field) |
|
|
599
|
-
| `core releases list [-n count]` | List recent releases |
|
|
600
|
-
| `core releases show <version>` | Show release details |
|
|
601
|
-
| `features create <name> [-w why] [-t tags] [-s status] [--related-tasks a,b]` | Create feature PRD; frontmatter set without hand-editing (status: planning\|in_progress\|in_review\|active\|shipped\|deprecated) |
|
|
602
|
-
| `features insert <name> <section> <content>` | Insert into feature section (replaces template placeholders on first write; `user_stories`/`acceptance_criteria` auto-formatted as `- [ ]` items) |
|
|
603
|
-
| `features set <name> <tags\|status\|related_tasks> <value...>` | Set a feature frontmatter field (comma-separated for tags/related_tasks) without hand-editing |
|
|
604
|
-
| `knowledge create <name>` | Create knowledge file |
|
|
605
|
-
| `knowledge index [--tag <tag>]` | Show knowledge index |
|
|
606
|
-
| `knowledge tags` | List standard tags |
|
|
607
|
-
| `knowledge touch <slug>` | Record access to knowledge file (decay tracking) |
|
|
608
|
-
| `memory recall <query...> [--top N] [--types ...] [--json\|--plain]` | BM25 recall across knowledge, features, tasks, memory entries |
|
|
609
|
-
| `memory remember <text...> [--title t] [--tasks slugs]` | Capture a one-off knowledge entry mid-session (sleep reconciles later) |
|
|
610
|
-
| `memory update <slug> [--description] [--tags] [--content] [--append] [--pin\|--unpin]` | Surgically edit a knowledge entry |
|
|
611
|
-
| `memory delete <slug> [--force]` | Remove a knowledge entry |
|
|
612
|
-
| `memory list [--types ...]` | List indexable memory corpus by type |
|
|
613
|
-
| `memory status` | Show corpus size broken down by type |
|
|
614
|
-
| `tasks list [-s status] [--all] [--tag t]… [--any-tag t]… [--version id] [--priority p] [--feature slug] [--group-by tag\|version\|priority\|status] [--long] [--json]` | List/filter/group tasks. Default excludes completed. `--tag` repeatable (AND), `--any-tag` repeatable (OR), filters compose; `--json` emits the filtered set; case-insensitive matching |
|
|
615
|
-
| `tasks tags [--all] [--json]` | List distinct task tags with counts (discover before filtering) |
|
|
616
|
-
| `tasks create <name> [-d desc] [-p priority] [-s status] [-t tags] [-w why] [--reach N --impact N --confidence N --effort N]` | Create task (defaults: priority=medium, status=todo). RICE flags optional and additive. |
|
|
617
|
-
| `tasks rice <name> [--reach N] [--impact N] [--confidence N] [--effort N] [--clear]` | Print or update RICE values; no flags prints current values |
|
|
618
|
-
| `tasks insert <name> <section> <content>` | Insert into task section |
|
|
619
|
-
| `tasks status <name> <todo\|in_progress\|in_review\|completed> [reason...]` | Change task status (logs to changelog) |
|
|
620
|
-
| `tasks complete <name>` | Complete task (convenience for `tasks status <name> completed`) |
|
|
621
|
-
| `tasks log <name> <content>` | Log task progress |
|
|
622
|
-
| `bookmark add "<message>" [-s 1\|2\|3] [--task <slug>]` | Bookmark an important moment with optional task link |
|
|
623
|
-
| `bookmark list` | Show current bookmarks |
|
|
624
|
-
| `bookmark clear` | Remove all bookmarks |
|
|
625
|
-
| `trigger add "<when>" "<remind>" [-m max_fires] [-s source]` | Create contextual trigger |
|
|
626
|
-
| `trigger list` | Show active triggers |
|
|
627
|
-
| `trigger remove <id>` | Remove a trigger |
|
|
628
|
-
| `reflect [--min-sessions N] [--max N] [--write]` | Detect recurring cross-session terms not yet in knowledge/memory as CANDIDATES; `--write` persists to `state/.reflection.md` |
|
|
629
|
-
| `transcript distill <session_id>` | Extract high-signal content from session transcript |
|
|
630
|
-
| `sleep status` | Show sleep state and history |
|
|
631
|
-
| `sleep add <score> "<desc>"` | Manual debt add |
|
|
632
|
-
| `sleep start` | Begin consolidation epoch (safe clearing) |
|
|
633
|
-
| `sleep done "<summary>"` | Mark consolidation complete, write history entry |
|
|
634
|
-
| `sleep debt` | Output debt number (programmatic) |
|
|
635
|
-
| `sleep history [-n count]` | Show consolidation history log |
|
|
636
|
-
| `hook session-start` | SessionStart hook handler |
|
|
637
|
-
| `hook stop` | Stop hook handler |
|
|
638
|
-
| `hook subagent-start` | SubagentStart hook handler |
|
|
639
|
-
| `hook pre-tool-use` | PreToolUse hook handler (blocks default Explorer when `_dream_context/` exists) |
|
|
640
|
-
| `hook user-prompt-submit` | UserPromptSubmit hook handler (persistent sleep debt reminders) |
|
|
641
|
-
| `hook post-tool-use` | PostToolUse hook handler (auto-format + TypeScript check on JS/TS files) |
|
|
642
|
-
| `hook pre-compact` | PreCompact hook handler (saves sleep state before context compaction) |
|
|
643
|
-
| `snapshot` | Output context snapshot |
|
|
644
|
-
| `snapshot --tokens` | Estimate snapshot token count |
|
|
645
|
-
| `doctor` | Validate `_dream_context/` structure |
|
|
646
|
-
| `install-skill` | Install skill + hooks |
|
|
647
|
-
| `config show` | Print project config (platforms, packs, native-memory state) |
|
|
648
|
-
| `config native-memory <enable\|disable>` | Toggle Claude's native auto-memory; disabled by default so dreamcontext owns project memory |
|
|
649
|
-
| `upgrade [--check]` | Update the dreamcontext CLI itself to the latest npm release |
|
|
650
|
-
| `feedback -c <category> -t <title> -s <scenario> [-e expected] [-g gap] [-r repro] [-p proposal] [--dry-run] [--yes]` | File a structured gap/bug as a GitHub issue to the **dreamcontext project** (upstream, not the user's repo). Use `--dry-run` to render a draft for the user; file with `--yes` only after they approve. Categories: `bug \| missing-cli \| unseen-memory \| feature \| docs \| other`. See "Improving dreamcontext" below. |
|
|
651
|
-
|
|
652
|
-
Feature insert sections: `changelog`, `notes`, `technical_details`, `constraints`, `user_stories`, `acceptance_criteria`, `why`
|
|
653
|
-
Task insert sections: `why`, `user_stories`, `acceptance_criteria`, `constraints`, `technical_details`, `notes`, `changelog`
|
|
350
|
+
## Reference Index
|
|
351
|
+
|
|
352
|
+
Open these with `Read` when the task needs depth:
|
|
353
|
+
|
|
354
|
+
- **[cli-reference.md](references/cli-reference.md)** — every command, every flag, env vars.
|
|
355
|
+
- **[tasks-and-features.md](references/tasks-and-features.md)** — task protocol depth, RICE, due dates, people/assignees, Workflow flowchart, features, versioning, multi-product.
|
|
356
|
+
- **[knowledge-and-recall.md](references/knowledge-and-recall.md)** — knowledge files, pinning, recall modes, taxonomy, Excalidraw/diagrams.
|
|
357
|
+
- **[sleep.md](references/sleep.md)** — full consolidation flow, specialist contracts, deep sleep, epoch safety, reflect, marketing/council passes.
|
|
358
|
+
- **[integrations.md](references/integrations.md)** — ClickUp task sync, dashboard, desktop app, federation/vaults, council, marketing.
|
|
359
|
+
- **[improving-dreamcontext.md](references/improving-dreamcontext.md)** — the feedback loop, when and how to file.
|