@synap-core/workspace-templates 0.2.1 → 0.3.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.
@@ -0,0 +1,457 @@
1
+ # Operations workspace template — the company's OPERATING SYSTEM.
2
+ # The head-of-ops / chief-of-staff layer: how the business actually runs day to
3
+ # day — the documented procedures (SOPs), the recurring processes (workflows),
4
+ # the tool stack and vendors behind them, the metrics/SLAs that keep them
5
+ # honest, and the rituals/cadences that keep everyone aligned.
6
+ # Provider of the `operations` domain. Validated against types.ts at build time.
7
+
8
+ meta:
9
+ slug: operations
10
+ name: Operations
11
+ description: The company's operating system — SOPs, workflows, vendors, tools, metrics, and rituals that keep the business running.
12
+ icon: settings-2
13
+ color: "#64748B"
14
+ tags: [operations, sops, vendors, workflows]
15
+ isPublic: true
16
+
17
+ workspace:
18
+ name: Operations
19
+ description: The operating layer of the company — documented procedures, recurring processes, the tool stack and vendors behind them, operational metrics, and the rituals that keep the team aligned.
20
+ proposalId: operations-v1
21
+ subtype: operations
22
+ visibility: members
23
+ workspaceType: operational
24
+ capabilities:
25
+ - operations.sops
26
+ - operations.vendors
27
+ - operations.workflows
28
+ sourceRoles:
29
+ operations: provider
30
+
31
+ profiles:
32
+ - slug: sop
33
+ displayName: SOP
34
+ icon: book-open
35
+ color: "#64748B"
36
+ description: "A standard operating procedure or runbook — the documented, repeatable way to do a thing."
37
+ scope: WORKSPACE
38
+ properties:
39
+ - slug: category
40
+ label: Category
41
+ valueType: string
42
+ inputType: select
43
+ enumValues: [Onboarding, Finance, People, IT, Support, Sales, Legal, Facilities, Other]
44
+ - slug: sop-status
45
+ label: Status
46
+ valueType: string
47
+ inputType: select
48
+ enumValues: [Draft, Active, Needs Review, Deprecated]
49
+ constraints: { defaultValue: Draft }
50
+ - slug: owner
51
+ label: Owner
52
+ valueType: string
53
+ inputType: text
54
+ placeholder: Who owns this procedure?
55
+ - slug: trigger
56
+ label: When to run
57
+ valueType: string
58
+ inputType: textarea
59
+ placeholder: What situation triggers this procedure?
60
+ - slug: last-reviewed
61
+ label: Last Reviewed
62
+ valueType: date
63
+ inputType: date
64
+ - slug: steps
65
+ label: Steps
66
+ valueType: string
67
+ inputType: textarea
68
+ placeholder: The step-by-step procedure...
69
+
70
+ - slug: workflow
71
+ displayName: Workflow
72
+ icon: workflow
73
+ color: "#0EA5E9"
74
+ description: "A recurring business process — a repeatable flow with an owner, a cadence, and an input/output."
75
+ scope: WORKSPACE
76
+ properties:
77
+ - slug: workflow-status
78
+ label: Status
79
+ valueType: string
80
+ inputType: select
81
+ enumValues: [Backlog, Active, Blocked, Optimizing, Retired]
82
+ constraints: { defaultValue: Active }
83
+ - slug: frequency
84
+ label: Frequency
85
+ valueType: string
86
+ inputType: select
87
+ enumValues: [Ad-hoc, Daily, Weekly, Monthly, Quarterly]
88
+ - slug: owner
89
+ label: Owner
90
+ valueType: string
91
+ inputType: text
92
+ placeholder: Process owner
93
+ - slug: automation-level
94
+ label: Automation
95
+ valueType: string
96
+ inputType: select
97
+ enumValues: [Manual, Semi-automated, Automated]
98
+ - slug: input
99
+ label: Input
100
+ valueType: string
101
+ inputType: text
102
+ placeholder: What kicks it off?
103
+ - slug: output
104
+ label: Output
105
+ valueType: string
106
+ inputType: text
107
+ placeholder: What it produces
108
+
109
+ - slug: vendor
110
+ displayName: Vendor
111
+ icon: truck
112
+ color: "#8B5CF6"
113
+ description: "A supplier, contractor, or service provider the company pays and depends on."
114
+ scope: WORKSPACE
115
+ properties:
116
+ - slug: vendor-category
117
+ label: Category
118
+ valueType: string
119
+ inputType: select
120
+ enumValues: [Software, Service, Supplier, Contractor, Agency, Other]
121
+ - slug: vendor-status
122
+ label: Status
123
+ valueType: string
124
+ inputType: select
125
+ enumValues: [Active, Trial, Evaluating, Paused, Churned]
126
+ constraints: { defaultValue: Active }
127
+ - slug: owner
128
+ label: Owner
129
+ valueType: string
130
+ inputType: text
131
+ placeholder: Internal relationship owner
132
+ - slug: monthly-cost
133
+ label: "Monthly Cost (€)"
134
+ valueType: number
135
+ inputType: number
136
+ placeholder: "0"
137
+ - slug: renewal-date
138
+ label: Renewal Date
139
+ valueType: date
140
+ inputType: date
141
+ - slug: website
142
+ label: Website
143
+ valueType: string
144
+ inputType: url
145
+ placeholder: "https://..."
146
+ - slug: notes
147
+ label: Notes
148
+ valueType: string
149
+ inputType: textarea
150
+
151
+ - slug: tool
152
+ displayName: Tool
153
+ icon: wrench
154
+ color: "#F59E0B"
155
+ description: "A tool in the company stack — the software the team actually uses to get work done."
156
+ scope: WORKSPACE
157
+ properties:
158
+ - slug: tool-category
159
+ label: Category
160
+ valueType: string
161
+ inputType: select
162
+ enumValues: [Productivity, Comms, Finance, Sales, Marketing, Dev, Design, Data, HR, Other]
163
+ - slug: tool-status
164
+ label: Status
165
+ valueType: string
166
+ inputType: select
167
+ enumValues: [Active, Trial, Deprecated]
168
+ constraints: { defaultValue: Active }
169
+ - slug: owner
170
+ label: Owner
171
+ valueType: string
172
+ inputType: text
173
+ placeholder: Admin / owner
174
+ - slug: seats
175
+ label: Seats
176
+ valueType: number
177
+ inputType: number
178
+ placeholder: "0"
179
+ - slug: monthly-cost
180
+ label: "Monthly Cost (€)"
181
+ valueType: number
182
+ inputType: number
183
+ placeholder: "0"
184
+ - slug: url
185
+ label: URL
186
+ valueType: string
187
+ inputType: url
188
+ placeholder: "https://..."
189
+
190
+ - slug: process-metric
191
+ displayName: Metric
192
+ icon: gauge
193
+ color: "#10B981"
194
+ description: "An operational SLA or KPI — a number the team commits to and tracks against a target."
195
+ scope: WORKSPACE
196
+ properties:
197
+ - slug: metric-type
198
+ label: Type
199
+ valueType: string
200
+ inputType: select
201
+ enumValues: [SLA, KPI, Health]
202
+ - slug: metric-status
203
+ label: Status
204
+ valueType: string
205
+ inputType: select
206
+ enumValues: [On Track, At Risk, Off Track]
207
+ constraints: { defaultValue: On Track }
208
+ - slug: target
209
+ label: Target
210
+ valueType: string
211
+ inputType: text
212
+ placeholder: e.g. < 4h, > 95%
213
+ - slug: current
214
+ label: Current
215
+ valueType: string
216
+ inputType: text
217
+ placeholder: Latest reading
218
+ - slug: cadence
219
+ label: Cadence
220
+ valueType: string
221
+ inputType: select
222
+ enumValues: [Daily, Weekly, Monthly, Quarterly]
223
+ - slug: owner
224
+ label: Owner
225
+ valueType: string
226
+ inputType: text
227
+ placeholder: Who's accountable?
228
+
229
+ - slug: ritual
230
+ displayName: Ritual
231
+ icon: repeat
232
+ color: "#EC4899"
233
+ description: "A recurring meeting or cadence — standups, reviews, retros, planning — that keeps the team aligned."
234
+ scope: WORKSPACE
235
+ properties:
236
+ - slug: cadence
237
+ label: Cadence
238
+ valueType: string
239
+ inputType: select
240
+ enumValues: [Daily, Weekly, Biweekly, Monthly, Quarterly]
241
+ - slug: ritual-date
242
+ label: Next Occurrence
243
+ valueType: date
244
+ inputType: date
245
+ - slug: owner
246
+ label: Facilitator
247
+ valueType: string
248
+ inputType: text
249
+ placeholder: Who runs it?
250
+ - slug: attendees
251
+ label: Attendees
252
+ valueType: string
253
+ inputType: text
254
+ placeholder: Who attends?
255
+ - slug: duration-min
256
+ label: Duration (min)
257
+ valueType: number
258
+ inputType: number
259
+ placeholder: "30"
260
+ - slug: agenda
261
+ label: Agenda
262
+ valueType: string
263
+ inputType: textarea
264
+ placeholder: Standing agenda...
265
+
266
+ views:
267
+ - name: SOPs
268
+ slug: sops
269
+ type: table
270
+ scopeProfileSlug: sop
271
+ description: The documented procedures, by category and review status.
272
+ defaultView: true
273
+ config:
274
+ visibleColumns: [category, sop-status, owner, last-reviewed]
275
+ defaultSort: { field: last-reviewed, direction: asc }
276
+ - name: Workflows
277
+ slug: workflows
278
+ type: kanban
279
+ scopeProfileSlug: workflow
280
+ groupBy: workflow-status
281
+ description: Recurring processes on a board by status.
282
+ config:
283
+ groupByField: workflow-status
284
+ cardFields: [frequency, owner, automation-level]
285
+ - name: Vendors
286
+ slug: vendors
287
+ type: table
288
+ scopeProfileSlug: vendor
289
+ description: Suppliers and service providers, with cost, owner, and renewal.
290
+ config:
291
+ visibleColumns: [vendor-category, vendor-status, owner, monthly-cost, renewal-date]
292
+ defaultSort: { field: monthly-cost, direction: desc }
293
+ - name: Tool Stack
294
+ slug: tool-stack
295
+ type: table
296
+ scopeProfileSlug: tool
297
+ description: The software the team runs on.
298
+ config:
299
+ visibleColumns: [tool-category, tool-status, owner, seats, monthly-cost]
300
+ defaultSort: { field: monthly-cost, direction: desc }
301
+ - name: Metrics
302
+ slug: metrics
303
+ type: table
304
+ scopeProfileSlug: process-metric
305
+ description: Operational SLAs and KPIs against target.
306
+ config:
307
+ visibleColumns: [metric-type, metric-status, target, current, cadence, owner]
308
+ - name: Rituals
309
+ slug: rituals
310
+ type: calendar
311
+ scopeProfileSlug: ritual
312
+ description: Recurring meetings and cadences on a calendar.
313
+ config:
314
+ dateField: ritual-date
315
+ colorField: cadence
316
+
317
+ # Schema-level links — give the relation picker and graph domain-specific
318
+ # edges from day one, not just pod defaults.
319
+ entityLinks:
320
+ - sourceProfileSlug: sop
321
+ targetProfileSlug: workflow
322
+ type: documents
323
+ label: Documents
324
+ - sourceProfileSlug: workflow
325
+ targetProfileSlug: tool
326
+ type: uses
327
+ label: Uses
328
+ - sourceProfileSlug: tool
329
+ targetProfileSlug: vendor
330
+ type: provided_by
331
+ label: Provided by
332
+ - sourceProfileSlug: process-metric
333
+ targetProfileSlug: workflow
334
+ type: measures
335
+ label: Measures
336
+ - sourceProfileSlug: ritual
337
+ targetProfileSlug: workflow
338
+ type: reviews
339
+ label: Reviews
340
+
341
+ onboarding:
342
+ goal: Capture how the company actually runs — its core SOPs, its recurring workflows, the vendors and tools behind them, and the rituals that keep the team aligned — so the workspace mirrors the real operating system, not a generic template.
343
+ framing: >
344
+ THE OPERATOR: Act as a seasoned head of operations / chief of staff doing an
345
+ ops walkthrough. Be systems-minded and pragmatic — hunt for the procedures
346
+ that live only in someone's head, the processes that run every week, the
347
+ tools quietly draining budget, and the meetings that must happen. Refuse
348
+ vagueness: every workflow has an owner and a cadence, every SOP has a
349
+ trigger. Translate their answers into SOPs, workflows, vendors, tools, and
350
+ rituals.
351
+ collect:
352
+ - profileSlug: sop
353
+ what: The core documented procedures / runbooks — the repeatable ways of doing key things.
354
+ cardinality: several
355
+ keyFields: [title, category, owner, sop-status]
356
+ - profileSlug: workflow
357
+ what: The recurring processes that run the business, each with an owner and a cadence.
358
+ cardinality: several
359
+ keyFields: [title, workflow-status, frequency, owner]
360
+ - profileSlug: vendor
361
+ what: The suppliers and service providers the company pays and depends on.
362
+ cardinality: few
363
+ keyFields: [title, vendor-category, monthly-cost, owner]
364
+ - profileSlug: tool
365
+ what: The main tools in the stack the team runs on.
366
+ cardinality: several
367
+ keyFields: [title, tool-category, owner, monthly-cost]
368
+ - profileSlug: ritual
369
+ what: The recurring meetings and cadences that keep the team aligned.
370
+ cardinality: few
371
+ keyFields: [title, cadence, owner]
372
+ openingQuestions:
373
+ - "What are the procedures that live only in someone's head today — the ones you'd need to write down if that person left?"
374
+ - "Which processes run on a fixed cadence — weekly, monthly — and who owns each?"
375
+ - "What tools and vendors is the company paying for, and who's the owner of each?"
376
+ doneWhen: A few core SOPs are documented with owners, the key recurring workflows exist with a cadence, the main vendors and tools are captured with cost, and the standing rituals are on the calendar.
377
+
378
+ app:
379
+ kind: stored
380
+ cellKey: entity-detail
381
+
382
+ layout:
383
+ defaultView: SOPs
384
+ defaultApp: null
385
+ pinnedApps: [dashboard, data, intelligence]
386
+ sidebarItems:
387
+ - kind: view
388
+ viewName: SOPs
389
+ label: SOPs
390
+ icon: book-open
391
+ - kind: view
392
+ viewName: Workflows
393
+ label: Workflows
394
+ icon: workflow
395
+ - kind: view
396
+ viewName: Vendors
397
+ label: Vendors
398
+ icon: truck
399
+ - kind: view
400
+ viewName: Tool Stack
401
+ label: Tool Stack
402
+ icon: wrench
403
+ - kind: view
404
+ viewName: Metrics
405
+ label: Metrics
406
+ icon: gauge
407
+ - kind: view
408
+ viewName: Rituals
409
+ label: Rituals
410
+ icon: repeat
411
+ - kind: app
412
+ appId: data
413
+ label: All Data
414
+ icon: database
415
+
416
+ bento:
417
+ viewName: Operations Command Center
418
+ blocks:
419
+ - kind: widget
420
+ widgetType: welcome-header
421
+ pos: { x: 0, y: 0, w: 12, h: 2 }
422
+ - kind: widget
423
+ widgetType: entity-count
424
+ pos: { x: 0, y: 2, w: 3, h: 2 }
425
+ config:
426
+ profileSlug: sop
427
+ label: SOPs
428
+ - kind: widget
429
+ widgetType: entity-count
430
+ pos: { x: 3, y: 2, w: 3, h: 2 }
431
+ config:
432
+ profileSlug: workflow
433
+ label: Workflows
434
+ - kind: widget
435
+ widgetType: entity-count
436
+ pos: { x: 6, y: 2, w: 3, h: 2 }
437
+ config:
438
+ profileSlug: vendor
439
+ label: Vendors
440
+ - kind: widget
441
+ widgetType: entity-count
442
+ pos: { x: 9, y: 2, w: 3, h: 2 }
443
+ config:
444
+ profileSlug: tool
445
+ label: Tools
446
+ - kind: view
447
+ viewName: Workflows
448
+ pos: { x: 0, y: 4, w: 8, h: 5 }
449
+ - kind: view
450
+ viewName: Metrics
451
+ pos: { x: 8, y: 4, w: 4, h: 5 }
452
+ - kind: view
453
+ viewName: SOPs
454
+ pos: { x: 0, y: 9, w: 6, h: 4 }
455
+ - kind: view
456
+ viewName: Vendors
457
+ pos: { x: 6, y: 9, w: 6, h: 4 }
package/src/personal.yaml CHANGED
@@ -74,6 +74,7 @@ profiles:
74
74
  views:
75
75
  - name: Feed
76
76
  type: masonry
77
+ scopeProfileSlugs: [note, bookmark, article, project]
77
78
  description: Everything you captured, newest first.
78
79
  - name: Reading List
79
80
  type: table
@@ -84,6 +85,36 @@ views:
84
85
  scopeProfileSlug: bookmark
85
86
  description: Saved web references.
86
87
 
88
+ onboarding:
89
+ goal: Capture the shape of the user's world — what they're working on, what they're reading and saving, and how they think — so the workspace starts grounded in who they actually are.
90
+ framing: >
91
+ THE KNOWLEDGE COACH: Act as a gentle, thoughtful personal-knowledge coach.
92
+ You're here to understand their world, not audit it — curious, warm, never
93
+ pushy. Meet them where they are: a couple of honest notes beat a perfect
94
+ system. Reflect back what you hear so it feels captured, not interrogated.
95
+ collect:
96
+ - profileSlug: project
97
+ what: The handful of things they're actively working on or care about right now.
98
+ cardinality: few
99
+ keyFields: [name, status]
100
+ - profileSlug: note
101
+ what: A few ideas, thoughts, or things on their mind — however rough.
102
+ cardinality: several
103
+ keyFields: [name, tags]
104
+ - profileSlug: article
105
+ what: What they're reading or mean to read — their reading list.
106
+ cardinality: several
107
+ keyFields: [name, readStatus]
108
+ - profileSlug: bookmark
109
+ what: Web references and links worth keeping.
110
+ cardinality: several
111
+ keyFields: [name, url]
112
+ openingQuestions:
113
+ - "What are you working on or thinking about most these days?"
114
+ - "What have you been reading, saving, or meaning to get to?"
115
+ - "When you jot something down, what does it usually look like — a link, a note, a task?"
116
+ doneWhen: at least one project or note captured, plus one thing they're reading or saving.
117
+
87
118
  # No dedicated app — lands on the dashboard/feed (the universal data surface).
88
119
  app:
89
120
  kind: stored
@@ -106,9 +137,3 @@ layout:
106
137
  viewName: Bookmarks
107
138
  label: Bookmarks
108
139
  icon: bookmark
109
-
110
- seedEntities:
111
- - profileSlug: note
112
- title: Welcome to your second brain
113
- properties:
114
- tags: [getting-started]