dreamcontext 0.6.0 → 0.7.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -1
- package/agents/sleep-product.md +19 -2
- package/agents/sleep-state.md +43 -22
- package/agents/sleep-tasks.md +18 -0
- package/dist/agents/sleep-product.md +19 -2
- package/dist/agents/sleep-state.md +43 -22
- package/dist/agents/sleep-tasks.md +18 -0
- package/dist/dashboard/assets/{BrainCanvas3D-LLqVeXtb.js → BrainCanvas3D-lFgJbbhZ.js} +1 -1
- package/dist/dashboard/assets/{_baseUniq-DW0uA0ty.js → _baseUniq-BpANgc_i.js} +1 -1
- package/dist/dashboard/assets/{arc-fVUGtlbL.js → arc-CX32Jm7E.js} +1 -1
- package/dist/dashboard/assets/{architectureDiagram-Q4EWVU46-Dz2PKBsS.js → architectureDiagram-Q4EWVU46-ARASlGxO.js} +1 -1
- package/dist/dashboard/assets/{blockDiagram-DXYQGD6D-ByWKxzhL.js → blockDiagram-DXYQGD6D-BBvsYm9E.js} +1 -1
- package/dist/dashboard/assets/{c4Diagram-AHTNJAMY-dpHsVM3D.js → c4Diagram-AHTNJAMY-ChSUfXR9.js} +1 -1
- package/dist/dashboard/assets/channel-w_Bp182N.js +1 -0
- package/dist/dashboard/assets/{chunk-4BX2VUAB-HEXb6Yg5.js → chunk-4BX2VUAB-COHoVEpt.js} +1 -1
- package/dist/dashboard/assets/{chunk-4TB4RGXK-DeVy5g6H.js → chunk-4TB4RGXK-DKJFLaTC.js} +1 -1
- package/dist/dashboard/assets/{chunk-55IACEB6-DGy3ZgDZ.js → chunk-55IACEB6-CKZPWZRu.js} +1 -1
- package/dist/dashboard/assets/{chunk-EDXVE4YY-CYJehjz4.js → chunk-EDXVE4YY-k1y4mGUJ.js} +1 -1
- package/dist/dashboard/assets/{chunk-FMBD7UC4-DKTOmvgZ.js → chunk-FMBD7UC4-ixXe5R10.js} +1 -1
- package/dist/dashboard/assets/{chunk-OYMX7WX6-mmtWyiDA.js → chunk-OYMX7WX6-NDFap7xg.js} +1 -1
- package/dist/dashboard/assets/{chunk-QZHKN3VN-DSdV0iwY.js → chunk-QZHKN3VN-vY0UpHjB.js} +1 -1
- package/dist/dashboard/assets/{chunk-YZCP3GAM-DbY-KoDn.js → chunk-YZCP3GAM-yztvsKR-.js} +1 -1
- package/dist/dashboard/assets/classDiagram-6PBFFD2Q-CcQxcqy9.js +1 -0
- package/dist/dashboard/assets/classDiagram-v2-HSJHXN6E-CcQxcqy9.js +1 -0
- package/dist/dashboard/assets/clone-_znoR_ci.js +1 -0
- package/dist/dashboard/assets/{cose-bilkent-S5V4N54A-p0t1DY88.js → cose-bilkent-S5V4N54A-DKXM5Fh5.js} +1 -1
- package/dist/dashboard/assets/{dagre-KV5264BT-DYE0WzHM.js → dagre-KV5264BT-DN1Nlsmy.js} +1 -1
- package/dist/dashboard/assets/{diagram-5BDNPKRD-D9EiQCOP.js → diagram-5BDNPKRD-DnoJFRqR.js} +1 -1
- package/dist/dashboard/assets/{diagram-G4DWMVQ6-poDXSAfu.js → diagram-G4DWMVQ6-CF1_jTNI.js} +1 -1
- package/dist/dashboard/assets/{diagram-MMDJMWI5-CHZ7wgN1.js → diagram-MMDJMWI5-D4-bZZEt.js} +1 -1
- package/dist/dashboard/assets/{diagram-TYMM5635-DVk6fYG7.js → diagram-TYMM5635-al8RqVgf.js} +1 -1
- package/dist/dashboard/assets/{erDiagram-SMLLAGMA-D2sqkGin.js → erDiagram-SMLLAGMA-MEcC0rwO.js} +1 -1
- package/dist/dashboard/assets/{flowDiagram-DWJPFMVM-DrMlKBYA.js → flowDiagram-DWJPFMVM-DCLyNpW8.js} +1 -1
- package/dist/dashboard/assets/{ganttDiagram-T4ZO3ILL-Cf4FbEFp.js → ganttDiagram-T4ZO3ILL-DfEvbbJK.js} +1 -1
- package/dist/dashboard/assets/{gitGraphDiagram-UUTBAWPF-BsbOq1C9.js → gitGraphDiagram-UUTBAWPF-C_YozdVL.js} +1 -1
- package/dist/dashboard/assets/{graph-CUxxgCtS.js → graph-DpIXS1G1.js} +1 -1
- package/dist/dashboard/assets/index-Bo5CUa_M.js +480 -0
- package/dist/dashboard/assets/index-DrqurW1c.css +1 -0
- package/dist/dashboard/assets/{infoDiagram-42DDH7IO-DTkMnZiD.js → infoDiagram-42DDH7IO-AdT6kjzj.js} +1 -1
- package/dist/dashboard/assets/{ishikawaDiagram-UXIWVN3A-CahQ348K.js → ishikawaDiagram-UXIWVN3A-B0_9IZVO.js} +1 -1
- package/dist/dashboard/assets/{journeyDiagram-VCZTEJTY-BDY2Nslc.js → journeyDiagram-VCZTEJTY-BveNBswQ.js} +1 -1
- package/dist/dashboard/assets/{kanban-definition-6JOO6SKY-CgrwoTjI.js → kanban-definition-6JOO6SKY-CFI8j4jR.js} +1 -1
- package/dist/dashboard/assets/{layout-IaUxkFkm.js → layout-DI7XjZy1.js} +1 -1
- package/dist/dashboard/assets/{linear-shc0iNFn.js → linear-CSjp56iw.js} +1 -1
- package/dist/dashboard/assets/{min-BIL7YgTN.js → min-pAGUJmEC.js} +1 -1
- package/dist/dashboard/assets/{mindmap-definition-QFDTVHPH-GmO0JRtA.js → mindmap-definition-QFDTVHPH-C2mBnknr.js} +1 -1
- package/dist/dashboard/assets/{pieDiagram-DEJITSTG-Bfm_toYA.js → pieDiagram-DEJITSTG-i_phWDqD.js} +1 -1
- package/dist/dashboard/assets/{quadrantDiagram-34T5L4WZ-DIjTM3lm.js → quadrantDiagram-34T5L4WZ-Dv7TGJjw.js} +1 -1
- package/dist/dashboard/assets/{requirementDiagram-MS252O5E-B9AEoGYh.js → requirementDiagram-MS252O5E-CB2Jl-O5.js} +1 -1
- package/dist/dashboard/assets/{sankeyDiagram-XADWPNL6-C_O5XLXm.js → sankeyDiagram-XADWPNL6-DxCoN-EI.js} +1 -1
- package/dist/dashboard/assets/{sequenceDiagram-FGHM5R23-CHSxSvmJ.js → sequenceDiagram-FGHM5R23-BeZyaehJ.js} +1 -1
- package/dist/dashboard/assets/{stateDiagram-FHFEXIEX-B0URrhHw.js → stateDiagram-FHFEXIEX-D3AjQzD1.js} +1 -1
- package/dist/dashboard/assets/stateDiagram-v2-QKLJ7IA2-Ci9v--xK.js +1 -0
- package/dist/dashboard/assets/{timeline-definition-GMOUNBTQ-CycU2gVC.js → timeline-definition-GMOUNBTQ-3l_8RFUg.js} +1 -1
- package/dist/dashboard/assets/{vennDiagram-DHZGUBPP-DcU2536G.js → vennDiagram-DHZGUBPP-2QiY25JD.js} +1 -1
- package/dist/dashboard/assets/{wardley-RL74JXVD-BWqqaX3S.js → wardley-RL74JXVD-DNLmFofz.js} +1 -1
- package/dist/dashboard/assets/{wardleyDiagram-NUSXRM2D-CUnIHJgd.js → wardleyDiagram-NUSXRM2D-BI0tupiS.js} +1 -1
- package/dist/dashboard/assets/{xychartDiagram-5P7HB3ND-b9fcOYTj.js → xychartDiagram-5P7HB3ND-CghXPE7_.js} +1 -1
- package/dist/dashboard/index.html +2 -2
- package/dist/index.js +1669 -1064
- package/dist/skill-packs/excalidraw/SKILL.md +82 -3
- package/dist/skill-packs/video-watching/SKILL.md +54 -13
- package/dist/skill-packs/video-watching/scripts/build_frame_index.py +61 -10
- package/dist/skill-packs/video-watching/scripts/transcribe.sh +147 -54
- package/dist/templates/init/data-structures/default.md +26 -24
- package/package.json +1 -1
- package/skill/SKILL.md +26 -12
- package/skill-packs/excalidraw/SKILL.md +82 -3
- package/skill-packs/video-watching/SKILL.md +54 -13
- package/skill-packs/video-watching/scripts/build_frame_index.py +61 -10
- package/skill-packs/video-watching/scripts/transcribe.sh +147 -54
- package/dist/dashboard/assets/channel-zrLwggBX.js +0 -1
- package/dist/dashboard/assets/classDiagram-6PBFFD2Q-BvejNiwH.js +0 -1
- package/dist/dashboard/assets/classDiagram-v2-HSJHXN6E-BvejNiwH.js +0 -1
- package/dist/dashboard/assets/clone-BFVdml6g.js +0 -1
- package/dist/dashboard/assets/index-CqSkXBSu.css +0 -1
- package/dist/dashboard/assets/index-flRpQtDj.js +0 -476
- package/dist/dashboard/assets/stateDiagram-v2-QKLJ7IA2-FdAb9MBo.js +0 -1
- package/dist/skill-packs/video-watching/scripts/gap_fill.py +0 -45
- package/skill-packs/video-watching/scripts/gap_fill.py +0 -45
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{s as t,b as r,a,S as s}from"./chunk-OYMX7WX6-mmtWyiDA.js";import{_ as i}from"./index-flRpQtDj.js";import"./chunk-55IACEB6-DGy3ZgDZ.js";import"./chunk-EDXVE4YY-CYJehjz4.js";var l={parser:a,get db(){return new s(2)},renderer:r,styles:t,init:i(e=>{e.state||(e.state={}),e.state.arrowMarkerAbsolute=e.arrowMarkerAbsolute},"init")};export{l as diagram};
|
|
@@ -1,45 +0,0 @@
|
|
|
1
|
-
#!/usr/bin/env python3
|
|
2
|
-
"""Print timestamps that keep every unsampled stretch of the video <= MAX_GAP.
|
|
3
|
-
|
|
4
|
-
Scene-detect fires on motion, not on meaning — so static-but-information-rich
|
|
5
|
-
sections (app demos, slides, talking heads) get no frame. This reads the scene
|
|
6
|
-
timestamps, bounds them with 0 and the video duration, and for any gap larger than
|
|
7
|
-
MAX_GAP emits evenly-spaced fill timestamps so no stretch goes unsampled.
|
|
8
|
-
|
|
9
|
-
Stdlib only. Usage: gap_fill.py <OUT_DIR> <DURATION_SEC> [MAX_GAP_SEC]
|
|
10
|
-
Prints one timestamp (seconds, 2dp) per line — transcribe.sh grabs each frame.
|
|
11
|
-
"""
|
|
12
|
-
import re
|
|
13
|
-
import sys
|
|
14
|
-
from pathlib import Path
|
|
15
|
-
|
|
16
|
-
FRAME_RE = re.compile(r"frame:(\d+)\b.*?pts_time:([\d.]+)", re.DOTALL)
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
def main() -> int:
|
|
20
|
-
if len(sys.argv) < 3:
|
|
21
|
-
print("usage: gap_fill.py <OUT_DIR> <DURATION_SEC> [MAX_GAP_SEC]", file=sys.stderr)
|
|
22
|
-
return 2
|
|
23
|
-
out_dir = Path(sys.argv[1])
|
|
24
|
-
duration = float(sys.argv[2])
|
|
25
|
-
max_gap = float(sys.argv[3]) if len(sys.argv) > 3 else 10.0
|
|
26
|
-
if duration <= 0 or max_gap <= 0:
|
|
27
|
-
return 0
|
|
28
|
-
|
|
29
|
-
meta = out_dir / "frames" / "scene_times.txt"
|
|
30
|
-
scene_times = []
|
|
31
|
-
if meta.exists():
|
|
32
|
-
scene_times = [round(float(t), 2)
|
|
33
|
-
for _, t in FRAME_RE.findall(meta.read_text(errors="replace"))]
|
|
34
|
-
|
|
35
|
-
bounds = sorted(set([0.0] + scene_times + [round(duration, 2)]))
|
|
36
|
-
for a, b in zip(bounds, bounds[1:]):
|
|
37
|
-
gap = b - a
|
|
38
|
-
n = int(gap // max_gap) # inserts that split the gap into <= max_gap pieces
|
|
39
|
-
for k in range(1, n + 1):
|
|
40
|
-
print(f"{a + gap * k / (n + 1):.2f}")
|
|
41
|
-
return 0
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
if __name__ == "__main__":
|
|
45
|
-
raise SystemExit(main())
|
|
@@ -1,45 +0,0 @@
|
|
|
1
|
-
#!/usr/bin/env python3
|
|
2
|
-
"""Print timestamps that keep every unsampled stretch of the video <= MAX_GAP.
|
|
3
|
-
|
|
4
|
-
Scene-detect fires on motion, not on meaning — so static-but-information-rich
|
|
5
|
-
sections (app demos, slides, talking heads) get no frame. This reads the scene
|
|
6
|
-
timestamps, bounds them with 0 and the video duration, and for any gap larger than
|
|
7
|
-
MAX_GAP emits evenly-spaced fill timestamps so no stretch goes unsampled.
|
|
8
|
-
|
|
9
|
-
Stdlib only. Usage: gap_fill.py <OUT_DIR> <DURATION_SEC> [MAX_GAP_SEC]
|
|
10
|
-
Prints one timestamp (seconds, 2dp) per line — transcribe.sh grabs each frame.
|
|
11
|
-
"""
|
|
12
|
-
import re
|
|
13
|
-
import sys
|
|
14
|
-
from pathlib import Path
|
|
15
|
-
|
|
16
|
-
FRAME_RE = re.compile(r"frame:(\d+)\b.*?pts_time:([\d.]+)", re.DOTALL)
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
def main() -> int:
|
|
20
|
-
if len(sys.argv) < 3:
|
|
21
|
-
print("usage: gap_fill.py <OUT_DIR> <DURATION_SEC> [MAX_GAP_SEC]", file=sys.stderr)
|
|
22
|
-
return 2
|
|
23
|
-
out_dir = Path(sys.argv[1])
|
|
24
|
-
duration = float(sys.argv[2])
|
|
25
|
-
max_gap = float(sys.argv[3]) if len(sys.argv) > 3 else 10.0
|
|
26
|
-
if duration <= 0 or max_gap <= 0:
|
|
27
|
-
return 0
|
|
28
|
-
|
|
29
|
-
meta = out_dir / "frames" / "scene_times.txt"
|
|
30
|
-
scene_times = []
|
|
31
|
-
if meta.exists():
|
|
32
|
-
scene_times = [round(float(t), 2)
|
|
33
|
-
for _, t in FRAME_RE.findall(meta.read_text(errors="replace"))]
|
|
34
|
-
|
|
35
|
-
bounds = sorted(set([0.0] + scene_times + [round(duration, 2)]))
|
|
36
|
-
for a, b in zip(bounds, bounds[1:]):
|
|
37
|
-
gap = b - a
|
|
38
|
-
n = int(gap // max_gap) # inserts that split the gap into <= max_gap pieces
|
|
39
|
-
for k in range(1, n + 1):
|
|
40
|
-
print(f"{a + gap * k / (n + 1):.2f}")
|
|
41
|
-
return 0
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
if __name__ == "__main__":
|
|
45
|
-
raise SystemExit(main())
|