@notis_ai/cli 0.2.7 → 0.2.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.
Files changed (177) hide show
  1. package/README.md +15 -0
  2. package/dist/scaffolds/notis-database/app/page.tsx +38 -41
  3. package/dist/scaffolds/notis-database/lib/types.ts +5 -7
  4. package/dist/scaffolds/notis-database/metadata/screenshot-1.png +0 -0
  5. package/dist/scaffolds/notis-database/metadata/screenshot-2.png +0 -0
  6. package/dist/scaffolds/notis-database/metadata/screenshot-3.png +0 -0
  7. package/dist/scaffolds/notis-database/metadata/screenshot-4.png +0 -0
  8. package/dist/scaffolds/notis-database/metadata/screenshot-5.png +0 -0
  9. package/dist/scaffolds/notis-database/metadata/screenshot-fixtures.json +1839 -0
  10. package/dist/scaffolds/notis-database/notis.config.ts +48 -1
  11. package/dist/scaffolds/notis-database/package-lock.json +3935 -0
  12. package/dist/scaffolds/notis-database/package.json +2 -1
  13. package/dist/scaffolds/{notis-affiliate-prospects → notis-database}/packages/sdk/package.json +4 -0
  14. package/dist/scaffolds/notis-database/packages/sdk/src/components/DocumentEditor.tsx +93 -0
  15. package/dist/scaffolds/notis-database/packages/sdk/src/components/Markdown.tsx +60 -0
  16. package/dist/scaffolds/{notis-affiliate-prospects → notis-database}/packages/sdk/src/components/MultiSelectActionBar.tsx +7 -2
  17. package/dist/scaffolds/notis-database/packages/sdk/src/config.ts +196 -0
  18. package/dist/scaffolds/notis-database/packages/sdk/src/documents.ts +229 -0
  19. package/dist/scaffolds/notis-database/packages/sdk/src/hooks/useDatabaseSchema.ts +85 -0
  20. package/dist/scaffolds/notis-database/packages/sdk/src/hooks/useDocument.ts +78 -0
  21. package/dist/scaffolds/notis-database/packages/sdk/src/hooks/useDocuments.ts +121 -0
  22. package/dist/scaffolds/{notis-affiliate-prospects → notis-database}/packages/sdk/src/hooks/useMultiSelect.ts +38 -2
  23. package/dist/scaffolds/notis-database/packages/sdk/src/hooks/useUpsertDocument.ts +95 -0
  24. package/dist/scaffolds/{notis-affiliate-prospects → notis-database}/packages/sdk/src/index.ts +30 -1
  25. package/dist/scaffolds/{notis-affiliate-prospects → notis-database}/packages/sdk/src/runtime.ts +76 -17
  26. package/dist/scaffolds/notis-database/packages/sdk/src/styles.css +186 -0
  27. package/dist/scaffolds/notis-database/src/mock-runtime.ts +4 -1
  28. package/dist/scaffolds/notis-journal/CHANGELOG.md +4 -0
  29. package/dist/scaffolds/notis-journal/app/page.tsx +1 -0
  30. package/dist/scaffolds/notis-journal/package-lock.json +4615 -0
  31. package/dist/scaffolds/notis-journal/package.json +2 -2
  32. package/dist/scaffolds/notis-journal/packages/sdk/src/config.ts +52 -1
  33. package/dist/scaffolds/notis-notes/app/page.tsx +39 -46
  34. package/dist/scaffolds/notis-notes/app/phosphor-icons.ts +596 -0
  35. package/dist/scaffolds/notis-notes/lib/visible-properties.ts +144 -0
  36. package/dist/scaffolds/notis-notes/metadata/screenshot-1.png +0 -0
  37. package/dist/scaffolds/notis-notes/metadata/screenshot-2.png +0 -0
  38. package/dist/scaffolds/notis-notes/metadata/screenshot-3.png +0 -0
  39. package/dist/scaffolds/notis-notes/metadata/screenshot-4.png +0 -0
  40. package/dist/scaffolds/notis-notes/metadata/screenshot-5.png +0 -0
  41. package/dist/scaffolds/notis-notes/metadata/screenshot-fixtures.json +752 -0
  42. package/dist/scaffolds/notis-notes/notis.config.ts +48 -3
  43. package/dist/scaffolds/notis-notes/package-lock.json +4636 -0
  44. package/dist/scaffolds/notis-notes/package.json +7 -3
  45. package/dist/scaffolds/notis-notes/packages/sdk/package.json +36 -0
  46. package/dist/scaffolds/notis-notes/packages/sdk/src/components/DocumentEditor.tsx +93 -0
  47. package/dist/scaffolds/notis-notes/packages/sdk/src/components/Markdown.tsx +60 -0
  48. package/dist/scaffolds/notis-notes/packages/sdk/src/components/MultiSelectActionBar.tsx +278 -0
  49. package/dist/scaffolds/notis-notes/packages/sdk/src/components/MultiSelectCheckbox.tsx +91 -0
  50. package/dist/scaffolds/notis-notes/packages/sdk/src/components/MultiSelectDragOverlay.tsx +39 -0
  51. package/dist/scaffolds/notis-notes/packages/sdk/src/config.ts +196 -0
  52. package/dist/scaffolds/notis-notes/packages/sdk/src/documents.ts +229 -0
  53. package/dist/scaffolds/notis-notes/packages/sdk/src/hooks/useBackend.ts +41 -0
  54. package/dist/scaffolds/notis-notes/packages/sdk/src/hooks/useDatabaseSchema.ts +85 -0
  55. package/dist/scaffolds/notis-notes/packages/sdk/src/hooks/useDocument.ts +78 -0
  56. package/dist/scaffolds/notis-notes/packages/sdk/src/hooks/useDocuments.ts +121 -0
  57. package/dist/scaffolds/notis-notes/packages/sdk/src/hooks/useMultiSelect.ts +539 -0
  58. package/dist/scaffolds/notis-notes/packages/sdk/src/hooks/useNotis.ts +34 -0
  59. package/dist/scaffolds/notis-notes/packages/sdk/src/hooks/useNotisNavigation.ts +49 -0
  60. package/dist/scaffolds/notis-notes/packages/sdk/src/hooks/useTool.ts +64 -0
  61. package/dist/scaffolds/notis-notes/packages/sdk/src/hooks/useTools.ts +56 -0
  62. package/dist/scaffolds/notis-notes/packages/sdk/src/hooks/useTopBarSearch.ts +73 -0
  63. package/dist/scaffolds/notis-notes/packages/sdk/src/hooks/useUpsertDocument.ts +95 -0
  64. package/dist/scaffolds/notis-notes/packages/sdk/src/index.ts +83 -0
  65. package/dist/scaffolds/notis-notes/packages/sdk/src/provider.tsx +43 -0
  66. package/dist/scaffolds/notis-notes/packages/sdk/src/runtime.ts +220 -0
  67. package/dist/scaffolds/notis-notes/packages/sdk/src/styles.css +186 -0
  68. package/dist/scaffolds/notis-notes/packages/sdk/src/ui.ts +15 -0
  69. package/dist/scaffolds/notis-notes/packages/sdk/src/vite.ts +56 -0
  70. package/dist/scaffolds/notis-notes/packages/sdk/tsconfig.json +15 -0
  71. package/dist/scaffolds/notis-random/CHANGELOG.md +12 -2
  72. package/dist/scaffolds/notis-random/app/history/page.tsx +5 -4
  73. package/dist/scaffolds/notis-random/app/page.tsx +141 -74
  74. package/dist/scaffolds/notis-random/components/ui/button.tsx +50 -0
  75. package/dist/scaffolds/notis-random/components/ui/card.tsx +16 -0
  76. package/dist/scaffolds/notis-random/components/ui/input.tsx +23 -0
  77. package/dist/scaffolds/notis-random/lib/notis-tools.ts +26 -7
  78. package/dist/scaffolds/notis-random/lib/rng.ts +179 -19
  79. package/dist/scaffolds/notis-random/lib/roll-record.ts +103 -16
  80. package/dist/scaffolds/notis-random/metadata/screenshot-1.png +0 -0
  81. package/dist/scaffolds/notis-random/metadata/screenshot-2.png +0 -0
  82. package/dist/scaffolds/notis-random/metadata/screenshot-3.png +0 -0
  83. package/dist/scaffolds/notis-random/metadata/screenshot-4.png +0 -0
  84. package/dist/scaffolds/notis-random/metadata/screenshot-5.png +0 -0
  85. package/dist/scaffolds/notis-random/metadata/screenshot-fixtures.json +753 -0
  86. package/dist/scaffolds/notis-random/notis.config.ts +47 -3
  87. package/dist/scaffolds/notis-random/package-lock.json +4513 -0
  88. package/dist/scaffolds/notis-random/package.json +6 -2
  89. package/dist/scaffolds/notis-random/packages/sdk/package.json +36 -0
  90. package/dist/scaffolds/notis-random/packages/sdk/src/components/DocumentEditor.tsx +93 -0
  91. package/dist/scaffolds/notis-random/packages/sdk/src/components/Markdown.tsx +60 -0
  92. package/dist/scaffolds/notis-random/packages/sdk/src/components/MultiSelectActionBar.tsx +278 -0
  93. package/dist/scaffolds/notis-random/packages/sdk/src/components/MultiSelectCheckbox.tsx +91 -0
  94. package/dist/scaffolds/notis-random/packages/sdk/src/components/MultiSelectDragOverlay.tsx +39 -0
  95. package/dist/scaffolds/notis-random/packages/sdk/src/config.ts +196 -0
  96. package/dist/scaffolds/notis-random/packages/sdk/src/documents.ts +229 -0
  97. package/dist/scaffolds/notis-random/packages/sdk/src/hooks/useBackend.ts +41 -0
  98. package/dist/scaffolds/notis-random/packages/sdk/src/hooks/useDatabaseSchema.ts +85 -0
  99. package/dist/scaffolds/notis-random/packages/sdk/src/hooks/useDocument.ts +78 -0
  100. package/dist/scaffolds/notis-random/packages/sdk/src/hooks/useDocuments.ts +121 -0
  101. package/dist/scaffolds/notis-random/packages/sdk/src/hooks/useMultiSelect.ts +539 -0
  102. package/dist/scaffolds/notis-random/packages/sdk/src/hooks/useNotis.ts +34 -0
  103. package/dist/scaffolds/notis-random/packages/sdk/src/hooks/useNotisNavigation.ts +49 -0
  104. package/dist/scaffolds/notis-random/packages/sdk/src/hooks/useTool.ts +64 -0
  105. package/dist/scaffolds/notis-random/packages/sdk/src/hooks/useTools.ts +56 -0
  106. package/dist/scaffolds/notis-random/packages/sdk/src/hooks/useTopBarSearch.ts +73 -0
  107. package/dist/scaffolds/notis-random/packages/sdk/src/hooks/useUpsertDocument.ts +95 -0
  108. package/dist/scaffolds/notis-random/packages/sdk/src/index.ts +83 -0
  109. package/dist/scaffolds/notis-random/packages/sdk/src/provider.tsx +43 -0
  110. package/dist/scaffolds/notis-random/packages/sdk/src/runtime.ts +220 -0
  111. package/dist/scaffolds/notis-random/packages/sdk/src/styles.css +186 -0
  112. package/dist/scaffolds/notis-random/packages/sdk/src/ui.ts +15 -0
  113. package/dist/scaffolds/notis-random/packages/sdk/src/vite.ts +56 -0
  114. package/dist/scaffolds/notis-random/packages/sdk/tsconfig.json +15 -0
  115. package/dist/scaffolds/notis-random/tailwind.config.ts +8 -1
  116. package/dist/scaffolds.json +8 -17
  117. package/package.json +2 -1
  118. package/skills/notis-apps/SKILL.md +449 -144
  119. package/skills/notis-apps/cli.md +15 -0
  120. package/skills/notis-cli/SKILL.md +8 -4
  121. package/skills/notis-onboarding/BRIEF.md +93 -0
  122. package/src/cli.js +50 -12
  123. package/src/command-specs/apps.js +154 -21
  124. package/src/command-specs/index.js +2 -0
  125. package/src/command-specs/onboarding.js +216 -0
  126. package/src/command-specs/tools.js +8 -4
  127. package/src/runtime/app-platform.js +65 -4
  128. package/src/runtime/desktop-auth.js +66 -17
  129. package/src/runtime/errors.js +1 -0
  130. package/src/runtime/output.js +9 -2
  131. package/src/runtime/profiles.js +179 -17
  132. package/src/runtime/telemetry.js +92 -0
  133. package/src/runtime/transport.js +26 -1
  134. package/template/.harness/index.html.tmpl +30 -2
  135. package/template/packages/sdk/src/config.ts +38 -1
  136. package/dist/scaffolds/notis-affiliate-prospects/CHANGELOG.md +0 -7
  137. package/dist/scaffolds/notis-affiliate-prospects/README.md +0 -20
  138. package/dist/scaffolds/notis-affiliate-prospects/app/globals.css +0 -42
  139. package/dist/scaffolds/notis-affiliate-prospects/app/layout.tsx +0 -7
  140. package/dist/scaffolds/notis-affiliate-prospects/app/page.tsx +0 -248
  141. package/dist/scaffolds/notis-affiliate-prospects/app/prospects/page.tsx +0 -134
  142. package/dist/scaffolds/notis-affiliate-prospects/app/segments/page.tsx +0 -108
  143. package/dist/scaffolds/notis-affiliate-prospects/components/ui/card.tsx +0 -35
  144. package/dist/scaffolds/notis-affiliate-prospects/index.html +0 -12
  145. package/dist/scaffolds/notis-affiliate-prospects/lib/affiliate-data.ts +0 -218
  146. package/dist/scaffolds/notis-affiliate-prospects/lib/demo-prospects.ts +0 -52
  147. package/dist/scaffolds/notis-affiliate-prospects/lib/notis-tools.ts +0 -100
  148. package/dist/scaffolds/notis-affiliate-prospects/lib/utils.ts +0 -25
  149. package/dist/scaffolds/notis-affiliate-prospects/metadata/screenshot-1.png +0 -0
  150. package/dist/scaffolds/notis-affiliate-prospects/metadata/screenshot-2.png +0 -0
  151. package/dist/scaffolds/notis-affiliate-prospects/metadata/screenshot-3.png +0 -0
  152. package/dist/scaffolds/notis-affiliate-prospects/metadata/screenshot-fixtures.json +0 -187
  153. package/dist/scaffolds/notis-affiliate-prospects/notis.config.ts +0 -65
  154. package/dist/scaffolds/notis-affiliate-prospects/package.json +0 -32
  155. package/dist/scaffolds/notis-affiliate-prospects/packages/sdk/src/config.ts +0 -90
  156. package/dist/scaffolds/notis-affiliate-prospects/packages/sdk/src/hooks/useDatabase.ts +0 -76
  157. package/dist/scaffolds/notis-affiliate-prospects/packages/sdk/src/hooks/useUpsertDocument.ts +0 -50
  158. package/dist/scaffolds/notis-affiliate-prospects/packages/sdk/src/styles.css +0 -38
  159. package/dist/scaffolds/notis-affiliate-prospects/postcss.config.mjs +0 -6
  160. package/dist/scaffolds/notis-affiliate-prospects/src/dev-main.tsx +0 -72
  161. package/dist/scaffolds/notis-affiliate-prospects/src/mock-runtime.ts +0 -242
  162. package/dist/scaffolds/notis-affiliate-prospects/tailwind.config.ts +0 -51
  163. package/dist/scaffolds/notis-affiliate-prospects/tsconfig.json +0 -23
  164. package/dist/scaffolds/notis-affiliate-prospects/vite.config.ts +0 -11
  165. /package/dist/scaffolds/{notis-affiliate-prospects → notis-database}/packages/sdk/src/components/MultiSelectCheckbox.tsx +0 -0
  166. /package/dist/scaffolds/{notis-affiliate-prospects → notis-database}/packages/sdk/src/components/MultiSelectDragOverlay.tsx +0 -0
  167. /package/dist/scaffolds/{notis-affiliate-prospects → notis-database}/packages/sdk/src/hooks/useBackend.ts +0 -0
  168. /package/dist/scaffolds/{notis-affiliate-prospects → notis-database}/packages/sdk/src/hooks/useNotis.ts +0 -0
  169. /package/dist/scaffolds/{notis-affiliate-prospects → notis-database}/packages/sdk/src/hooks/useNotisNavigation.ts +0 -0
  170. /package/dist/scaffolds/{notis-affiliate-prospects → notis-database}/packages/sdk/src/hooks/useTool.ts +0 -0
  171. /package/dist/scaffolds/{notis-affiliate-prospects → notis-database}/packages/sdk/src/hooks/useTools.ts +0 -0
  172. /package/dist/scaffolds/{notis-affiliate-prospects → notis-database}/packages/sdk/src/hooks/useTopBarSearch.ts +0 -0
  173. /package/dist/scaffolds/{notis-affiliate-prospects → notis-database}/packages/sdk/src/provider.tsx +0 -0
  174. /package/dist/scaffolds/{notis-affiliate-prospects → notis-database}/packages/sdk/src/ui.ts +0 -0
  175. /package/dist/scaffolds/{notis-affiliate-prospects → notis-database}/packages/sdk/src/vite.ts +0 -0
  176. /package/dist/scaffolds/{notis-affiliate-prospects → notis-database}/packages/sdk/tsconfig.json +0 -0
  177. /package/dist/scaffolds/{notis-affiliate-prospects → notis-random}/components.json +0 -0
@@ -0,0 +1,752 @@
1
+ {
2
+ "tools": {
3
+ "LOCAL_NOTIS_DATABASE_GET_DATABASE#database_slug=notes": {
4
+ "database": {
5
+ "slug": "notes",
6
+ "name": "Notes",
7
+ "description": "Every note captured by voice, chat, or the portal.",
8
+ "schema": {
9
+ "properties": [
10
+ {
11
+ "id": "p-title",
12
+ "name": "Title",
13
+ "type": "title",
14
+ "order": 0
15
+ },
16
+ {
17
+ "id": "p-folder",
18
+ "name": "Folder",
19
+ "type": "relation",
20
+ "order": 1,
21
+ "relation_target": {
22
+ "database_slug": "note_folders",
23
+ "database_name": "Folders"
24
+ }
25
+ },
26
+ {
27
+ "id": "p-status",
28
+ "name": "Status",
29
+ "type": "status",
30
+ "order": 2,
31
+ "options": [
32
+ {
33
+ "id": "s-todo",
34
+ "name": "Todo",
35
+ "color": "gray",
36
+ "order": 0
37
+ },
38
+ {
39
+ "id": "s-prog",
40
+ "name": "In progress",
41
+ "color": "yellow",
42
+ "order": 1
43
+ },
44
+ {
45
+ "id": "s-done",
46
+ "name": "Done",
47
+ "color": "green",
48
+ "order": 2
49
+ }
50
+ ]
51
+ },
52
+ {
53
+ "id": "p-due",
54
+ "name": "Due",
55
+ "type": "date",
56
+ "order": 3
57
+ }
58
+ ]
59
+ }
60
+ }
61
+ },
62
+ "LOCAL_NOTIS_DATABASE_QUERY#database_slug=notes": {
63
+ "status": "success",
64
+ "documents": [
65
+ {
66
+ "id": "note-01",
67
+ "title": "Launch week runbook",
68
+ "created_time": "2026-07-28T08:10:00.000Z",
69
+ "last_edited_time": "2026-07-28T08:10:00.000Z",
70
+ "content_markdown": "Sequence for launch week: changelog Monday, Slack + TAAFT Tuesday, social Wednesday through Friday. Every asset needs a light and a dark variant before scheduling.",
71
+ "plain_text": "Sequence for launch week: changelog Monday, Slack + TAAFT Tuesday, social Wednesday through Friday. Every asset needs a light and a dark variant before scheduling.",
72
+ "properties": {
73
+ "Title": {
74
+ "type": "title",
75
+ "title": [
76
+ {
77
+ "type": "text",
78
+ "text": {
79
+ "content": "Launch week runbook"
80
+ }
81
+ }
82
+ ]
83
+ },
84
+ "Folder": {
85
+ "type": "relation",
86
+ "relation": [
87
+ {
88
+ "id": "fld-launch"
89
+ }
90
+ ]
91
+ },
92
+ "Due": {
93
+ "type": "date",
94
+ "date": {
95
+ "start": "2026-07-28",
96
+ "end": null
97
+ }
98
+ },
99
+ "Status": {
100
+ "type": "status",
101
+ "status": {
102
+ "name": "In progress",
103
+ "color": "yellow"
104
+ }
105
+ }
106
+ }
107
+ },
108
+ {
109
+ "id": "note-02",
110
+ "title": "Pricing page rewrite",
111
+ "created_time": "2026-07-27T16:45:00.000Z",
112
+ "last_edited_time": "2026-07-27T16:45:00.000Z",
113
+ "content_markdown": "Lead with the outcome, not the feature list. One dollar amount per block. Move the comparison table below the fold.",
114
+ "plain_text": "Lead with the outcome, not the feature list. One dollar amount per block. Move the comparison table below the fold.",
115
+ "properties": {
116
+ "Title": {
117
+ "type": "title",
118
+ "title": [
119
+ {
120
+ "type": "text",
121
+ "text": {
122
+ "content": "Pricing page rewrite"
123
+ }
124
+ }
125
+ ]
126
+ },
127
+ "Folder": {
128
+ "type": "relation",
129
+ "relation": [
130
+ {
131
+ "id": "fld-launch"
132
+ }
133
+ ]
134
+ },
135
+ "Due": {
136
+ "type": "date",
137
+ "date": {
138
+ "start": "2026-07-29",
139
+ "end": null
140
+ }
141
+ },
142
+ "Status": {
143
+ "type": "status",
144
+ "status": {
145
+ "name": "In progress",
146
+ "color": "yellow"
147
+ }
148
+ }
149
+ }
150
+ },
151
+ {
152
+ "id": "note-03",
153
+ "title": "Interview: Camille (ops lead)",
154
+ "created_time": "2026-07-24T11:20:00.000Z",
155
+ "last_edited_time": "2026-07-24T11:20:00.000Z",
156
+ "content_markdown": "Lives in Slack, not email. Wants the digest at 08:00 local. Called the current search 'the part I avoid'.",
157
+ "plain_text": "Lives in Slack, not email. Wants the digest at 08:00 local. Called the current search 'the part I avoid'.",
158
+ "properties": {
159
+ "Title": {
160
+ "type": "title",
161
+ "title": [
162
+ {
163
+ "type": "text",
164
+ "text": {
165
+ "content": "Interview: Camille (ops lead)"
166
+ }
167
+ }
168
+ ]
169
+ },
170
+ "Folder": {
171
+ "type": "relation",
172
+ "relation": [
173
+ {
174
+ "id": "fld-research"
175
+ }
176
+ ]
177
+ },
178
+ "Due": {
179
+ "type": "date",
180
+ "date": {
181
+ "start": "2026-07-24",
182
+ "end": null
183
+ }
184
+ },
185
+ "Status": {
186
+ "type": "status",
187
+ "status": {
188
+ "name": "Done",
189
+ "color": "green"
190
+ }
191
+ }
192
+ }
193
+ },
194
+ {
195
+ "id": "note-04",
196
+ "title": "Competitive teardown",
197
+ "created_time": "2026-07-21T14:05:00.000Z",
198
+ "last_edited_time": "2026-07-21T14:05:00.000Z",
199
+ "content_markdown": "Three of the four competitors gate integrations behind the top tier. None of them do voice capture.",
200
+ "plain_text": "Three of the four competitors gate integrations behind the top tier. None of them do voice capture.",
201
+ "properties": {
202
+ "Title": {
203
+ "type": "title",
204
+ "title": [
205
+ {
206
+ "type": "text",
207
+ "text": {
208
+ "content": "Competitive teardown"
209
+ }
210
+ }
211
+ ]
212
+ },
213
+ "Folder": {
214
+ "type": "relation",
215
+ "relation": [
216
+ {
217
+ "id": "fld-research"
218
+ }
219
+ ]
220
+ },
221
+ "Due": {
222
+ "type": "date",
223
+ "date": {
224
+ "start": "2026-07-21",
225
+ "end": null
226
+ }
227
+ },
228
+ "Status": {
229
+ "type": "status",
230
+ "status": {
231
+ "name": "Done",
232
+ "color": "green"
233
+ }
234
+ }
235
+ }
236
+ },
237
+ {
238
+ "id": "note-05",
239
+ "title": "Q3 hiring plan",
240
+ "created_time": "2026-07-26T09:30:00.000Z",
241
+ "last_edited_time": "2026-07-26T09:30:00.000Z",
242
+ "content_markdown": "Two engineers and one designer. Designer first \u2014 the backlog is blocked on design, not on throughput.",
243
+ "plain_text": "Two engineers and one designer. Designer first \u2014 the backlog is blocked on design, not on throughput.",
244
+ "properties": {
245
+ "Title": {
246
+ "type": "title",
247
+ "title": [
248
+ {
249
+ "type": "text",
250
+ "text": {
251
+ "content": "Q3 hiring plan"
252
+ }
253
+ }
254
+ ]
255
+ },
256
+ "Folder": {
257
+ "type": "relation",
258
+ "relation": [
259
+ {
260
+ "id": "fld-work"
261
+ }
262
+ ]
263
+ },
264
+ "Due": {
265
+ "type": "date",
266
+ "date": {
267
+ "start": "2026-08-04",
268
+ "end": null
269
+ }
270
+ },
271
+ "Status": {
272
+ "type": "status",
273
+ "status": {
274
+ "name": "Todo",
275
+ "color": "gray"
276
+ }
277
+ }
278
+ }
279
+ },
280
+ {
281
+ "id": "note-06",
282
+ "title": "Onboarding drop-off notes",
283
+ "created_time": "2026-07-25T13:15:00.000Z",
284
+ "last_edited_time": "2026-07-25T13:15:00.000Z",
285
+ "content_markdown": "Most people stall on connecting the second integration. The first one converts fine.",
286
+ "plain_text": "Most people stall on connecting the second integration. The first one converts fine.",
287
+ "properties": {
288
+ "Title": {
289
+ "type": "title",
290
+ "title": [
291
+ {
292
+ "type": "text",
293
+ "text": {
294
+ "content": "Onboarding drop-off notes"
295
+ }
296
+ }
297
+ ]
298
+ },
299
+ "Folder": {
300
+ "type": "relation",
301
+ "relation": [
302
+ {
303
+ "id": "fld-research"
304
+ }
305
+ ]
306
+ },
307
+ "Due": {
308
+ "type": "date",
309
+ "date": {
310
+ "start": "2026-07-30",
311
+ "end": null
312
+ }
313
+ },
314
+ "Status": {
315
+ "type": "status",
316
+ "status": {
317
+ "name": "In progress",
318
+ "color": "yellow"
319
+ }
320
+ }
321
+ }
322
+ },
323
+ {
324
+ "id": "note-07",
325
+ "title": "Weeknight ragu",
326
+ "created_time": "2026-07-19T19:40:00.000Z",
327
+ "last_edited_time": "2026-07-19T19:40:00.000Z",
328
+ "content_markdown": "Soffritto low and slow for 20 minutes. Milk before the wine. Ninety minutes minimum, two hours is better.",
329
+ "plain_text": "Soffritto low and slow for 20 minutes. Milk before the wine. Ninety minutes minimum, two hours is better.",
330
+ "properties": {
331
+ "Title": {
332
+ "type": "title",
333
+ "title": [
334
+ {
335
+ "type": "text",
336
+ "text": {
337
+ "content": "Weeknight ragu"
338
+ }
339
+ }
340
+ ]
341
+ },
342
+ "Folder": {
343
+ "type": "relation",
344
+ "relation": [
345
+ {
346
+ "id": "fld-recipes"
347
+ }
348
+ ]
349
+ },
350
+ "Due": {
351
+ "type": "date",
352
+ "date": {
353
+ "start": "2026-07-19",
354
+ "end": null
355
+ }
356
+ }
357
+ }
358
+ },
359
+ {
360
+ "id": "note-08",
361
+ "title": "Sourdough timings",
362
+ "created_time": "2026-07-12T07:25:00.000Z",
363
+ "last_edited_time": "2026-07-12T07:25:00.000Z",
364
+ "content_markdown": "Levain at 21:00, autolyse at 08:00, bulk until 11:30, shape and cold retard overnight.",
365
+ "plain_text": "Levain at 21:00, autolyse at 08:00, bulk until 11:30, shape and cold retard overnight.",
366
+ "properties": {
367
+ "Title": {
368
+ "type": "title",
369
+ "title": [
370
+ {
371
+ "type": "text",
372
+ "text": {
373
+ "content": "Sourdough timings"
374
+ }
375
+ }
376
+ ]
377
+ },
378
+ "Folder": {
379
+ "type": "relation",
380
+ "relation": [
381
+ {
382
+ "id": "fld-recipes"
383
+ }
384
+ ]
385
+ },
386
+ "Due": {
387
+ "type": "date",
388
+ "date": {
389
+ "start": "2026-07-12",
390
+ "end": null
391
+ }
392
+ }
393
+ }
394
+ },
395
+ {
396
+ "id": "note-09",
397
+ "title": "The Beginning of Infinity",
398
+ "created_time": "2026-07-15T21:10:00.000Z",
399
+ "last_edited_time": "2026-07-15T21:10:00.000Z",
400
+ "content_markdown": "Good explanations are hard to vary. That single idea reframes most of what I thought was rigour.",
401
+ "plain_text": "Good explanations are hard to vary. That single idea reframes most of what I thought was rigour.",
402
+ "properties": {
403
+ "Title": {
404
+ "type": "title",
405
+ "title": [
406
+ {
407
+ "type": "text",
408
+ "text": {
409
+ "content": "The Beginning of Infinity"
410
+ }
411
+ }
412
+ ]
413
+ },
414
+ "Folder": {
415
+ "type": "relation",
416
+ "relation": [
417
+ {
418
+ "id": "fld-reading"
419
+ }
420
+ ]
421
+ },
422
+ "Due": {
423
+ "type": "date",
424
+ "date": {
425
+ "start": "2026-07-27",
426
+ "end": null
427
+ }
428
+ },
429
+ "Status": {
430
+ "type": "status",
431
+ "status": {
432
+ "name": "In progress",
433
+ "color": "yellow"
434
+ }
435
+ }
436
+ }
437
+ },
438
+ {
439
+ "id": "note-10",
440
+ "title": "Reading queue",
441
+ "created_time": "2026-07-10T18:00:00.000Z",
442
+ "last_edited_time": "2026-07-10T18:00:00.000Z",
443
+ "content_markdown": "Seeing Like a State, The Art of Doing Science and Engineering, and the Bell Labs history everyone keeps citing.",
444
+ "plain_text": "Seeing Like a State, The Art of Doing Science and Engineering, and the Bell Labs history everyone keeps citing.",
445
+ "properties": {
446
+ "Title": {
447
+ "type": "title",
448
+ "title": [
449
+ {
450
+ "type": "text",
451
+ "text": {
452
+ "content": "Reading queue"
453
+ }
454
+ }
455
+ ]
456
+ },
457
+ "Folder": {
458
+ "type": "relation",
459
+ "relation": [
460
+ {
461
+ "id": "fld-reading"
462
+ }
463
+ ]
464
+ },
465
+ "Due": {
466
+ "type": "date",
467
+ "date": {
468
+ "start": "2026-08-02",
469
+ "end": null
470
+ }
471
+ },
472
+ "Status": {
473
+ "type": "status",
474
+ "status": {
475
+ "name": "Todo",
476
+ "color": "gray"
477
+ }
478
+ }
479
+ }
480
+ },
481
+ {
482
+ "id": "note-11",
483
+ "title": "Apartment checklist",
484
+ "created_time": "2026-07-08T10:50:00.000Z",
485
+ "last_edited_time": "2026-07-08T10:50:00.000Z",
486
+ "content_markdown": "Chase the deposit, book the locksmith, cancel the old internet line before the 15th.",
487
+ "plain_text": "Chase the deposit, book the locksmith, cancel the old internet line before the 15th.",
488
+ "properties": {
489
+ "Title": {
490
+ "type": "title",
491
+ "title": [
492
+ {
493
+ "type": "text",
494
+ "text": {
495
+ "content": "Apartment checklist"
496
+ }
497
+ }
498
+ ]
499
+ },
500
+ "Folder": {
501
+ "type": "relation",
502
+ "relation": [
503
+ {
504
+ "id": "fld-personal"
505
+ }
506
+ ]
507
+ },
508
+ "Due": {
509
+ "type": "date",
510
+ "date": {
511
+ "start": "2026-08-09",
512
+ "end": null
513
+ }
514
+ },
515
+ "Status": {
516
+ "type": "status",
517
+ "status": {
518
+ "name": "Todo",
519
+ "color": "gray"
520
+ }
521
+ }
522
+ }
523
+ },
524
+ {
525
+ "id": "note-12",
526
+ "title": "Marathon block, week 6",
527
+ "created_time": "2026-07-23T06:45:00.000Z",
528
+ "last_edited_time": "2026-07-23T06:45:00.000Z",
529
+ "content_markdown": "Long run at 32k this weekend. Cut the Tuesday session if the calf still complains.",
530
+ "plain_text": "Long run at 32k this weekend. Cut the Tuesday session if the calf still complains.",
531
+ "properties": {
532
+ "Title": {
533
+ "type": "title",
534
+ "title": [
535
+ {
536
+ "type": "text",
537
+ "text": {
538
+ "content": "Marathon block, week 6"
539
+ }
540
+ }
541
+ ]
542
+ },
543
+ "Folder": {
544
+ "type": "relation",
545
+ "relation": [
546
+ {
547
+ "id": "fld-personal"
548
+ }
549
+ ]
550
+ },
551
+ "Due": {
552
+ "type": "date",
553
+ "date": {
554
+ "start": "2026-07-31",
555
+ "end": null
556
+ }
557
+ },
558
+ "Status": {
559
+ "type": "status",
560
+ "status": {
561
+ "name": "In progress",
562
+ "color": "yellow"
563
+ }
564
+ }
565
+ }
566
+ }
567
+ ],
568
+ "results_count": 12,
569
+ "total_matching": 12,
570
+ "has_more": false,
571
+ "next_offset": null
572
+ },
573
+ "LOCAL_NOTIS_DATABASE_QUERY#database_slug=note_folders": {
574
+ "status": "success",
575
+ "documents": [
576
+ {
577
+ "id": "fld-work",
578
+ "title": "Work",
579
+ "icon": "phosphor:briefcase",
580
+ "created_time": "2026-05-02T09:00:00.000Z",
581
+ "properties": {
582
+ "Name": {
583
+ "type": "title",
584
+ "title": [
585
+ {
586
+ "type": "text",
587
+ "text": {
588
+ "content": "Work"
589
+ }
590
+ }
591
+ ]
592
+ }
593
+ }
594
+ },
595
+ {
596
+ "id": "fld-launch",
597
+ "title": "Launch",
598
+ "icon": "phosphor:rocket",
599
+ "created_time": "2026-05-02T09:00:00.000Z",
600
+ "properties": {
601
+ "Name": {
602
+ "type": "title",
603
+ "title": [
604
+ {
605
+ "type": "text",
606
+ "text": {
607
+ "content": "Launch"
608
+ }
609
+ }
610
+ ]
611
+ },
612
+ "Parent": {
613
+ "type": "relation",
614
+ "relation": [
615
+ {
616
+ "id": "fld-work"
617
+ }
618
+ ]
619
+ }
620
+ }
621
+ },
622
+ {
623
+ "id": "fld-research",
624
+ "title": "Research",
625
+ "icon": "phosphor:magnifying-glass",
626
+ "created_time": "2026-05-02T09:00:00.000Z",
627
+ "properties": {
628
+ "Name": {
629
+ "type": "title",
630
+ "title": [
631
+ {
632
+ "type": "text",
633
+ "text": {
634
+ "content": "Research"
635
+ }
636
+ }
637
+ ]
638
+ },
639
+ "Parent": {
640
+ "type": "relation",
641
+ "relation": [
642
+ {
643
+ "id": "fld-work"
644
+ }
645
+ ]
646
+ }
647
+ }
648
+ },
649
+ {
650
+ "id": "fld-personal",
651
+ "title": "Personal",
652
+ "icon": "phosphor:house",
653
+ "created_time": "2026-05-02T09:00:00.000Z",
654
+ "properties": {
655
+ "Name": {
656
+ "type": "title",
657
+ "title": [
658
+ {
659
+ "type": "text",
660
+ "text": {
661
+ "content": "Personal"
662
+ }
663
+ }
664
+ ]
665
+ }
666
+ }
667
+ },
668
+ {
669
+ "id": "fld-reading",
670
+ "title": "Reading",
671
+ "icon": "phosphor:book-open",
672
+ "created_time": "2026-05-02T09:00:00.000Z",
673
+ "properties": {
674
+ "Name": {
675
+ "type": "title",
676
+ "title": [
677
+ {
678
+ "type": "text",
679
+ "text": {
680
+ "content": "Reading"
681
+ }
682
+ }
683
+ ]
684
+ },
685
+ "Parent": {
686
+ "type": "relation",
687
+ "relation": [
688
+ {
689
+ "id": "fld-personal"
690
+ }
691
+ ]
692
+ }
693
+ }
694
+ },
695
+ {
696
+ "id": "fld-recipes",
697
+ "title": "Recipes",
698
+ "icon": "phosphor:fork-knife",
699
+ "created_time": "2026-05-02T09:00:00.000Z",
700
+ "properties": {
701
+ "Name": {
702
+ "type": "title",
703
+ "title": [
704
+ {
705
+ "type": "text",
706
+ "text": {
707
+ "content": "Recipes"
708
+ }
709
+ }
710
+ ]
711
+ },
712
+ "Parent": {
713
+ "type": "relation",
714
+ "relation": [
715
+ {
716
+ "id": "fld-personal"
717
+ }
718
+ ]
719
+ }
720
+ }
721
+ }
722
+ ],
723
+ "results_count": 6,
724
+ "total_matching": 6,
725
+ "has_more": false,
726
+ "next_offset": null
727
+ }
728
+ },
729
+ "scenarios": {
730
+ "notes-gallery": {
731
+ "actions": []
732
+ },
733
+ "notes-table": {
734
+ "actions": [
735
+ {
736
+ "type": "click",
737
+ "selector": "[data-view='table']",
738
+ "settle_ms": 600
739
+ }
740
+ ]
741
+ },
742
+ "notes-calendar": {
743
+ "actions": [
744
+ {
745
+ "type": "click",
746
+ "selector": "[data-view='calendar']",
747
+ "settle_ms": 700
748
+ }
749
+ ]
750
+ }
751
+ }
752
+ }