@synap-core/workspace-templates 0.2.1
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/dist/define.d.ts +97 -0
- package/dist/define.d.ts.map +1 -0
- package/dist/define.js +91 -0
- package/dist/index.d.ts +24 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +20 -0
- package/dist/templates.d.ts +7 -0
- package/dist/templates.d.ts.map +1 -0
- package/dist/templates.js +23354 -0
- package/dist/types.d.ts +328 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +8 -0
- package/package.json +37 -0
- package/src/agent-fleet.yaml +1434 -0
- package/src/brand-library.yaml +627 -0
- package/src/builder.yaml +1355 -0
- package/src/content-os.yaml +1424 -0
- package/src/content-studio.yaml +312 -0
- package/src/crm.yaml +2606 -0
- package/src/define.ts +184 -0
- package/src/dev-dashboard.yaml +1309 -0
- package/src/foundation.yaml +343 -0
- package/src/index.ts +62 -0
- package/src/life-os.yaml +1443 -0
- package/src/marketing.yaml +244 -0
- package/src/personal.yaml +114 -0
- package/src/project-management.yaml +1119 -0
- package/src/radar.yaml +274 -0
- package/src/templates.ts +23363 -0
- package/src/types.ts +426 -0
|
@@ -0,0 +1,1434 @@
|
|
|
1
|
+
# Agent Fleet workspace template
|
|
2
|
+
# Migrated from the OpenClaw "Agent OS" package (agent-os.package.json) UNIONed with
|
|
3
|
+
# the control-plane "agent OS.json" superset. Renamed: "OpenClaw Agent OS" → "Agent Fleet".
|
|
4
|
+
# The name "Agent OS" is freed for the umbrella "Company OS" orchestrator; this workspace
|
|
5
|
+
# is the agent-fleet management surface. AI-generation-friendly YAML. Validated against types.ts.
|
|
6
|
+
|
|
7
|
+
meta:
|
|
8
|
+
slug: agent-fleet
|
|
9
|
+
name: "Agent Fleet"
|
|
10
|
+
description: "Manage your fleet of AI agents — the agents, their providers, skills, and the work they do."
|
|
11
|
+
icon: bot
|
|
12
|
+
color: "#1A3A5C"
|
|
13
|
+
tags: [ai, agents, automation, openclaw, fleet]
|
|
14
|
+
isPublic: true
|
|
15
|
+
|
|
16
|
+
workspace:
|
|
17
|
+
name: "Agent Fleet"
|
|
18
|
+
description: "The sovereign control plane for your OpenClaw agent fleet. Agents, projects, tasks, skills, and providers as connected entities — not daemon logs."
|
|
19
|
+
proposalId: agent-fleet-v1
|
|
20
|
+
subtype: agent-fleet
|
|
21
|
+
workspaceType: agent
|
|
22
|
+
visibility: pod_visible
|
|
23
|
+
|
|
24
|
+
profiles:
|
|
25
|
+
- slug: agent
|
|
26
|
+
displayName: Agent
|
|
27
|
+
icon: bot
|
|
28
|
+
color: "#1A3A5C"
|
|
29
|
+
scope: WORKSPACE
|
|
30
|
+
description: "A deployed OpenClaw agent — your running AI entity"
|
|
31
|
+
properties:
|
|
32
|
+
- slug: agent-status
|
|
33
|
+
label: Status
|
|
34
|
+
valueType: string
|
|
35
|
+
inputType: select
|
|
36
|
+
enumValues: [Offline, Idle, Active, Error, Maintenance]
|
|
37
|
+
constraints:
|
|
38
|
+
defaultValue: Idle
|
|
39
|
+
- slug: agent-health
|
|
40
|
+
label: Health
|
|
41
|
+
valueType: string
|
|
42
|
+
inputType: select
|
|
43
|
+
enumValues: [Healthy, Degraded, Error]
|
|
44
|
+
- slug: agent-runtime
|
|
45
|
+
label: Runtime
|
|
46
|
+
valueType: string
|
|
47
|
+
inputType: select
|
|
48
|
+
enumValues: [OpenClaw, Custom]
|
|
49
|
+
- slug: agent-version
|
|
50
|
+
label: Version
|
|
51
|
+
valueType: string
|
|
52
|
+
- slug: agent-model
|
|
53
|
+
label: Primary Model
|
|
54
|
+
valueType: string
|
|
55
|
+
- slug: agent-provider
|
|
56
|
+
label: Provider
|
|
57
|
+
valueType: entity_id
|
|
58
|
+
targetProfileSlug: provider
|
|
59
|
+
- slug: agent-owner
|
|
60
|
+
label: Owner
|
|
61
|
+
valueType: entity_id
|
|
62
|
+
targetProfileSlug: person
|
|
63
|
+
- slug: agent-channel
|
|
64
|
+
label: Primary Channel
|
|
65
|
+
valueType: string
|
|
66
|
+
inputType: select
|
|
67
|
+
enumValues: [Telegram, WhatsApp, Discord, Slack, Signal, iMessage, CLI, WebChat, Other]
|
|
68
|
+
- slug: agent-channels
|
|
69
|
+
label: All Channels
|
|
70
|
+
valueType: array
|
|
71
|
+
inputType: select
|
|
72
|
+
enumValues: [Telegram, WhatsApp, Discord, Slack, Signal, iMessage, CLI, WebChat, Voice, Lark, Matrix]
|
|
73
|
+
- slug: agent-heartbeat
|
|
74
|
+
label: Heartbeat Schedule
|
|
75
|
+
valueType: string
|
|
76
|
+
- slug: agent-last-seen
|
|
77
|
+
label: Last Seen
|
|
78
|
+
valueType: date
|
|
79
|
+
- slug: agent-workspace
|
|
80
|
+
label: Workspace Path
|
|
81
|
+
valueType: string
|
|
82
|
+
- slug: agent-deployment
|
|
83
|
+
label: Deployment
|
|
84
|
+
valueType: string
|
|
85
|
+
inputType: select
|
|
86
|
+
enumValues: ["Local Machine", VPS, "Raspberry Pi", "Mac Mini", Docker, "Cloud Workers", Android, "Edge Device"]
|
|
87
|
+
- slug: agent-role
|
|
88
|
+
label: Role
|
|
89
|
+
valueType: string
|
|
90
|
+
inputType: select
|
|
91
|
+
enumValues: [Generalist, Coder, Researcher, Writer, Ops, Coordinator, Monitor, Custom]
|
|
92
|
+
- slug: agent-tags
|
|
93
|
+
label: Tags
|
|
94
|
+
valueType: array
|
|
95
|
+
inputType: select
|
|
96
|
+
enumValues: [production, development, personal, team, experimental, "24/7", on-demand]
|
|
97
|
+
|
|
98
|
+
- slug: project
|
|
99
|
+
displayName: Project
|
|
100
|
+
icon: folder
|
|
101
|
+
color: "#2E6DA4"
|
|
102
|
+
scope: WORKSPACE
|
|
103
|
+
description: "A bounded body of work delegated to one or more agents"
|
|
104
|
+
properties:
|
|
105
|
+
- slug: project-status
|
|
106
|
+
label: Status
|
|
107
|
+
valueType: string
|
|
108
|
+
inputType: select
|
|
109
|
+
enumValues: [Backlog, Queued, "In Progress", Blocked, Completed, Cancelled]
|
|
110
|
+
constraints:
|
|
111
|
+
defaultValue: Queued
|
|
112
|
+
- slug: project-priority
|
|
113
|
+
label: Priority
|
|
114
|
+
valueType: string
|
|
115
|
+
inputType: select
|
|
116
|
+
enumValues: [Critical, High, Medium, Low]
|
|
117
|
+
- slug: project-assigned-agent
|
|
118
|
+
label: Assigned Agent
|
|
119
|
+
valueType: entity_id
|
|
120
|
+
targetProfileSlug: agent
|
|
121
|
+
- slug: project-owner
|
|
122
|
+
label: Human Owner
|
|
123
|
+
valueType: entity_id
|
|
124
|
+
targetProfileSlug: person
|
|
125
|
+
- slug: project-start
|
|
126
|
+
label: Start Date
|
|
127
|
+
valueType: date
|
|
128
|
+
- slug: project-deadline
|
|
129
|
+
label: Deadline
|
|
130
|
+
valueType: date
|
|
131
|
+
- slug: project-health
|
|
132
|
+
label: Health
|
|
133
|
+
valueType: string
|
|
134
|
+
inputType: select
|
|
135
|
+
enumValues: [Green, Yellow, Red]
|
|
136
|
+
- slug: project-type
|
|
137
|
+
label: Type
|
|
138
|
+
valueType: string
|
|
139
|
+
inputType: select
|
|
140
|
+
enumValues: [Development, Research, Content, Automation, DevOps, Data, Outreach, Monitoring]
|
|
141
|
+
- slug: project-goal
|
|
142
|
+
label: Goal
|
|
143
|
+
valueType: string
|
|
144
|
+
- slug: project-outcome
|
|
145
|
+
label: Expected Outcome
|
|
146
|
+
valueType: string
|
|
147
|
+
- slug: project-tags
|
|
148
|
+
label: Tags
|
|
149
|
+
valueType: array
|
|
150
|
+
inputType: select
|
|
151
|
+
enumValues: [recurring, one-off, long-running, client, internal, experimental]
|
|
152
|
+
|
|
153
|
+
- slug: task
|
|
154
|
+
displayName: Task
|
|
155
|
+
icon: check-square
|
|
156
|
+
color: "#1B6E45"
|
|
157
|
+
scope: WORKSPACE
|
|
158
|
+
description: "An atomic work item assigned to an agent"
|
|
159
|
+
properties:
|
|
160
|
+
- slug: task-status
|
|
161
|
+
label: Status
|
|
162
|
+
valueType: string
|
|
163
|
+
inputType: select
|
|
164
|
+
enumValues: [Backlog, Queued, Running, Review, Done, Failed, Cancelled]
|
|
165
|
+
constraints:
|
|
166
|
+
defaultValue: Queued
|
|
167
|
+
- slug: task-priority
|
|
168
|
+
label: Priority
|
|
169
|
+
valueType: string
|
|
170
|
+
inputType: select
|
|
171
|
+
enumValues: [Critical, High, Medium, Low]
|
|
172
|
+
constraints:
|
|
173
|
+
defaultValue: Medium
|
|
174
|
+
- slug: task-assigned-agent
|
|
175
|
+
label: Assigned Agent
|
|
176
|
+
valueType: entity_id
|
|
177
|
+
targetProfileSlug: agent
|
|
178
|
+
- slug: task-project
|
|
179
|
+
label: Project
|
|
180
|
+
valueType: entity_id
|
|
181
|
+
targetProfileSlug: project
|
|
182
|
+
- slug: task-type
|
|
183
|
+
label: Type
|
|
184
|
+
valueType: string
|
|
185
|
+
inputType: select
|
|
186
|
+
enumValues: [Code, Research, Content, Ops, Data, Outreach, Review, Monitor, Custom]
|
|
187
|
+
- slug: task-due-date
|
|
188
|
+
label: Due Date
|
|
189
|
+
valueType: date
|
|
190
|
+
- slug: task-effort-hours
|
|
191
|
+
label: Effort Estimate (hrs)
|
|
192
|
+
valueType: number
|
|
193
|
+
- slug: task-token-estimate
|
|
194
|
+
label: Token Estimate (K)
|
|
195
|
+
valueType: number
|
|
196
|
+
- slug: task-actual-tokens
|
|
197
|
+
label: Actual Tokens Used (K)
|
|
198
|
+
valueType: number
|
|
199
|
+
- slug: task-blocked-by
|
|
200
|
+
label: Blocked By
|
|
201
|
+
valueType: string
|
|
202
|
+
- slug: task-session-key
|
|
203
|
+
label: Session Key
|
|
204
|
+
valueType: string
|
|
205
|
+
- slug: task-tags
|
|
206
|
+
label: Tags
|
|
207
|
+
valueType: array
|
|
208
|
+
inputType: select
|
|
209
|
+
enumValues: [autonomous, needs-review, high-cost, recurring, blocked, delegated]
|
|
210
|
+
|
|
211
|
+
- slug: skill
|
|
212
|
+
displayName: Skill
|
|
213
|
+
icon: zap
|
|
214
|
+
color: "#7C3AED"
|
|
215
|
+
scope: WORKSPACE
|
|
216
|
+
description: "An installed agent capability — a ClawHub skill, custom script, or API integration"
|
|
217
|
+
properties:
|
|
218
|
+
- slug: skill-trust
|
|
219
|
+
label: Trust Level
|
|
220
|
+
valueType: string
|
|
221
|
+
inputType: select
|
|
222
|
+
enumValues: [Trusted, Review, Untrusted, Blocked]
|
|
223
|
+
constraints:
|
|
224
|
+
defaultValue: Review
|
|
225
|
+
- slug: skill-category
|
|
226
|
+
label: Category
|
|
227
|
+
valueType: string
|
|
228
|
+
inputType: select
|
|
229
|
+
enumValues: [Productivity, Development, Communication, Data, Security, Storage, Browser, Voice, IoT, Custom]
|
|
230
|
+
- slug: skill-source-url
|
|
231
|
+
label: Source URL
|
|
232
|
+
valueType: string
|
|
233
|
+
- slug: skill-version
|
|
234
|
+
label: Version
|
|
235
|
+
valueType: string
|
|
236
|
+
- slug: skill-install-date
|
|
237
|
+
label: Install Date
|
|
238
|
+
valueType: date
|
|
239
|
+
- slug: skill-last-audit
|
|
240
|
+
label: Last Audit Date
|
|
241
|
+
valueType: date
|
|
242
|
+
- slug: skill-virustotal
|
|
243
|
+
label: VirusTotal Status
|
|
244
|
+
valueType: string
|
|
245
|
+
inputType: select
|
|
246
|
+
enumValues: [Clean, Flagged, "Not Scanned", Pending]
|
|
247
|
+
- slug: skill-maintainer
|
|
248
|
+
label: Maintainer
|
|
249
|
+
valueType: string
|
|
250
|
+
- slug: skill-requires-api
|
|
251
|
+
label: Requires API Key
|
|
252
|
+
valueType: boolean
|
|
253
|
+
- slug: skill-notes
|
|
254
|
+
label: Security Notes
|
|
255
|
+
valueType: string
|
|
256
|
+
|
|
257
|
+
- slug: provider
|
|
258
|
+
displayName: Provider
|
|
259
|
+
icon: database
|
|
260
|
+
color: "#B5451B"
|
|
261
|
+
scope: WORKSPACE
|
|
262
|
+
description: "An LLM or API provider — tracks cost, key health, and agent usage"
|
|
263
|
+
properties:
|
|
264
|
+
- slug: provider-type
|
|
265
|
+
label: Type
|
|
266
|
+
valueType: string
|
|
267
|
+
inputType: select
|
|
268
|
+
enumValues: ["LLM Cloud", "LLM Local", "API Gateway", "Vector DB", Storage, Custom]
|
|
269
|
+
- slug: provider-key-health
|
|
270
|
+
label: Key Health
|
|
271
|
+
valueType: string
|
|
272
|
+
inputType: select
|
|
273
|
+
enumValues: [Valid, Expiring, Expired, "No Key (Local)"]
|
|
274
|
+
constraints:
|
|
275
|
+
defaultValue: Valid
|
|
276
|
+
- slug: provider-model
|
|
277
|
+
label: Model / Endpoint
|
|
278
|
+
valueType: string
|
|
279
|
+
- slug: provider-cost-input
|
|
280
|
+
label: Cost per 1K Input Tokens ($)
|
|
281
|
+
valueType: number
|
|
282
|
+
- slug: provider-cost-output
|
|
283
|
+
label: Cost per 1K Output Tokens ($)
|
|
284
|
+
valueType: number
|
|
285
|
+
- slug: provider-budget-day
|
|
286
|
+
label: Daily Budget Ceiling ($)
|
|
287
|
+
valueType: number
|
|
288
|
+
- slug: provider-spend-week
|
|
289
|
+
label: Actual Spend This Week ($)
|
|
290
|
+
valueType: number
|
|
291
|
+
- slug: provider-base-url
|
|
292
|
+
label: Base URL / Endpoint
|
|
293
|
+
valueType: string
|
|
294
|
+
- slug: provider-notes
|
|
295
|
+
label: Notes
|
|
296
|
+
valueType: string
|
|
297
|
+
|
|
298
|
+
- slug: person
|
|
299
|
+
displayName: Person
|
|
300
|
+
icon: user
|
|
301
|
+
color: "#0891B2"
|
|
302
|
+
scope: WORKSPACE
|
|
303
|
+
description: "Team member or agent owner"
|
|
304
|
+
properties:
|
|
305
|
+
- slug: person-role
|
|
306
|
+
label: Role
|
|
307
|
+
valueType: string
|
|
308
|
+
inputType: select
|
|
309
|
+
enumValues: [Founder, Engineer, DevOps, Product, Researcher, Advisor]
|
|
310
|
+
- slug: person-email
|
|
311
|
+
label: Email
|
|
312
|
+
valueType: string
|
|
313
|
+
- slug: person-telegram
|
|
314
|
+
label: Telegram Handle
|
|
315
|
+
valueType: string
|
|
316
|
+
- slug: person-focus
|
|
317
|
+
label: Current Focus
|
|
318
|
+
valueType: string
|
|
319
|
+
|
|
320
|
+
views:
|
|
321
|
+
- name: "Agent Fleet"
|
|
322
|
+
slug: agent-fleet
|
|
323
|
+
type: kanban
|
|
324
|
+
scopeProfileSlug: agent
|
|
325
|
+
defaultView: true
|
|
326
|
+
description: "All agents by status — the mission control view. Offline → Idle → Active → Error."
|
|
327
|
+
config:
|
|
328
|
+
groupByField: agent-status
|
|
329
|
+
|
|
330
|
+
- name: "Agent → Projects → Tasks"
|
|
331
|
+
slug: agent-project-task-hierarchy
|
|
332
|
+
type: graph
|
|
333
|
+
scopeProfileSlugs: [agent, project, task]
|
|
334
|
+
description: "3-level drill-down: Agent expands to linked Projects, Projects expand to Tasks. The delegation tree."
|
|
335
|
+
config:
|
|
336
|
+
hierarchyEdges:
|
|
337
|
+
- parent: agent
|
|
338
|
+
child: project
|
|
339
|
+
via: project-assigned-agent
|
|
340
|
+
- parent: project
|
|
341
|
+
child: task
|
|
342
|
+
via: task-project
|
|
343
|
+
|
|
344
|
+
- name: "Task Board"
|
|
345
|
+
slug: task-board
|
|
346
|
+
type: kanban
|
|
347
|
+
scopeProfileSlug: task
|
|
348
|
+
description: "All tasks by status: Backlog → Queued → Running → Review → Done."
|
|
349
|
+
config:
|
|
350
|
+
groupByField: task-status
|
|
351
|
+
|
|
352
|
+
- name: "Project Command Center"
|
|
353
|
+
slug: project-command-center
|
|
354
|
+
type: table
|
|
355
|
+
scopeProfileSlug: project
|
|
356
|
+
description: "All projects with assigned agent, status, deadline, health — the manager's daily view."
|
|
357
|
+
config:
|
|
358
|
+
sortBy: project-priority
|
|
359
|
+
|
|
360
|
+
- name: "Skill Registry"
|
|
361
|
+
slug: skill-registry
|
|
362
|
+
type: table
|
|
363
|
+
scopeProfileSlug: skill
|
|
364
|
+
description: "All installed skills grouped by trust level: Trusted / Review / Untrusted. Security triage at a glance."
|
|
365
|
+
config:
|
|
366
|
+
groupByField: skill-trust
|
|
367
|
+
visibleColumns: [skill-trust, skill-category, skill-version, skill-maintainer, skill-last-audit, skill-virustotal, skill-requires-api]
|
|
368
|
+
|
|
369
|
+
- name: "Provider Dashboard"
|
|
370
|
+
slug: provider-dashboard
|
|
371
|
+
type: table
|
|
372
|
+
scopeProfileSlug: provider
|
|
373
|
+
description: "All providers with cost-per-token, key health, daily budget, and weekly spend."
|
|
374
|
+
config:
|
|
375
|
+
visibleColumns: [provider-type, provider-key-health, provider-model, provider-cost-input, provider-cost-output, provider-budget-day, provider-spend-week]
|
|
376
|
+
|
|
377
|
+
- name: "Relationship Graph"
|
|
378
|
+
slug: relationship-graph
|
|
379
|
+
type: graph
|
|
380
|
+
scopeProfileSlugs: [agent, project, task, skill, provider, person]
|
|
381
|
+
description: "Full sovereign topology: Agent ← Project ← Task + Skill + Provider. The infrastructure map you cannot build in any other tool."
|
|
382
|
+
config:
|
|
383
|
+
layout: force
|
|
384
|
+
showRelations: true
|
|
385
|
+
|
|
386
|
+
- name: "Agent Timeline"
|
|
387
|
+
slug: agent-timeline
|
|
388
|
+
type: timeline
|
|
389
|
+
scopeProfileSlug: project
|
|
390
|
+
description: "Projects as timeline bars, color-coded by assigned agent — who owns what, when."
|
|
391
|
+
config:
|
|
392
|
+
startField: project-start
|
|
393
|
+
endField: project-deadline
|
|
394
|
+
colorBy: project-assigned-agent
|
|
395
|
+
|
|
396
|
+
- name: "Cost View"
|
|
397
|
+
slug: cost-view
|
|
398
|
+
type: table
|
|
399
|
+
scopeProfileSlug: task
|
|
400
|
+
description: "Tasks ranked by actual token usage — the CFO view. Which work is burning budget?"
|
|
401
|
+
config:
|
|
402
|
+
visibleColumns: [task-status, task-type, task-assigned-agent, task-token-estimate, task-actual-tokens, task-effort-hours]
|
|
403
|
+
defaultSort:
|
|
404
|
+
field: task-actual-tokens
|
|
405
|
+
direction: desc
|
|
406
|
+
|
|
407
|
+
- name: "Untrusted Skills Alert"
|
|
408
|
+
slug: untrusted-skills-alert
|
|
409
|
+
type: table
|
|
410
|
+
scopeProfileSlug: skill
|
|
411
|
+
description: "Skills requiring security review. Audit before your agents run them."
|
|
412
|
+
config:
|
|
413
|
+
visibleColumns: [skill-trust, skill-category, skill-source-url, skill-maintainer, skill-virustotal, skill-notes]
|
|
414
|
+
filterBy:
|
|
415
|
+
field: skill-trust
|
|
416
|
+
operator: in
|
|
417
|
+
value: [Review, Untrusted, Blocked]
|
|
418
|
+
|
|
419
|
+
- name: "Backlog"
|
|
420
|
+
slug: backlog
|
|
421
|
+
type: table
|
|
422
|
+
scopeProfileSlug: task
|
|
423
|
+
description: "Unqueued tasks awaiting agent assignment."
|
|
424
|
+
config:
|
|
425
|
+
visibleColumns: [task-priority, task-type, task-assigned-agent, task-due-date, task-effort-hours, task-token-estimate]
|
|
426
|
+
filterBy:
|
|
427
|
+
field: task-status
|
|
428
|
+
operator: is
|
|
429
|
+
value: Backlog
|
|
430
|
+
defaultSort:
|
|
431
|
+
field: task-priority
|
|
432
|
+
direction: desc
|
|
433
|
+
|
|
434
|
+
- name: "Agent Health Monitor"
|
|
435
|
+
slug: agent-health-monitor
|
|
436
|
+
type: kanban
|
|
437
|
+
scopeProfileSlug: agent
|
|
438
|
+
description: "Agents grouped by health: Healthy / Degraded / Error. Operational triage."
|
|
439
|
+
config:
|
|
440
|
+
groupByField: agent-health
|
|
441
|
+
|
|
442
|
+
- name: "Session Logs"
|
|
443
|
+
slug: session-log-view
|
|
444
|
+
type: table
|
|
445
|
+
scopeProfileSlug: task
|
|
446
|
+
description: "Tasks with session keys — the audit trail of what agents actually executed."
|
|
447
|
+
config:
|
|
448
|
+
visibleColumns: [task-status, task-assigned-agent, task-session-key, task-actual-tokens, task-type]
|
|
449
|
+
filterBy:
|
|
450
|
+
field: task-session-key
|
|
451
|
+
operator: is_not_empty
|
|
452
|
+
|
|
453
|
+
- name: "Provider Key Health"
|
|
454
|
+
slug: provider-key-health
|
|
455
|
+
type: kanban
|
|
456
|
+
scopeProfileSlug: provider
|
|
457
|
+
description: "Providers by credential status: Valid / Expiring / Expired. Never run an agent on an expired key."
|
|
458
|
+
config:
|
|
459
|
+
groupByField: provider-key-health
|
|
460
|
+
|
|
461
|
+
- name: "My Active Work"
|
|
462
|
+
slug: my-active-work
|
|
463
|
+
type: table
|
|
464
|
+
scopeProfileSlug: task
|
|
465
|
+
description: "Tasks currently in flight — what your agents are doing right now."
|
|
466
|
+
config:
|
|
467
|
+
visibleColumns: [task-status, task-priority, task-type, task-assigned-agent, task-due-date]
|
|
468
|
+
filterBy:
|
|
469
|
+
field: task-status
|
|
470
|
+
operator: in
|
|
471
|
+
value: [Queued, Running, Review]
|
|
472
|
+
defaultSort:
|
|
473
|
+
field: task-due-date
|
|
474
|
+
direction: asc
|
|
475
|
+
|
|
476
|
+
- name: Agent
|
|
477
|
+
type: bento
|
|
478
|
+
scopeProfileSlug: agent
|
|
479
|
+
config:
|
|
480
|
+
layout: bento
|
|
481
|
+
blocks:
|
|
482
|
+
- id: agent-header
|
|
483
|
+
kind: widget
|
|
484
|
+
widgetType: section-header
|
|
485
|
+
pos: { x: 0, y: 0, w: 12, h: 2 }
|
|
486
|
+
config: { title: "Agent Fleet", icon: Bot, color: "#1A3A5C", profileSlug: agent }
|
|
487
|
+
- id: agent-count
|
|
488
|
+
kind: widget
|
|
489
|
+
widgetType: stat-card
|
|
490
|
+
pos: { x: 0, y: 2, w: 3, h: 3 }
|
|
491
|
+
config: { label: "Active Agents", aggregation: count, profileSlug: agent, color: "#1A3A5C" }
|
|
492
|
+
- id: agent-fleet
|
|
493
|
+
kind: view
|
|
494
|
+
viewName: "Agent Fleet"
|
|
495
|
+
pos: { x: 0, y: 9, w: 12, h: 8 }
|
|
496
|
+
- id: agent-health
|
|
497
|
+
kind: view
|
|
498
|
+
viewName: "Agent Health Monitor"
|
|
499
|
+
pos: { x: 0, y: 19, w: 12, h: 8 }
|
|
500
|
+
- id: agent-active
|
|
501
|
+
kind: widget
|
|
502
|
+
widgetType: entity-count
|
|
503
|
+
pos: { x: 3, y: 2, w: 3, h: 3 }
|
|
504
|
+
config: { profileSlug: agent, label: Active, icon: CheckCircle, filter: { status: active }, color: "#10B981" }
|
|
505
|
+
- id: agent-running-tasks
|
|
506
|
+
kind: widget
|
|
507
|
+
widgetType: entity-count
|
|
508
|
+
pos: { x: 6, y: 2, w: 3, h: 3 }
|
|
509
|
+
config: { profileSlug: task, label: "Running Tasks", icon: Loader, color: "#3B82F6" }
|
|
510
|
+
- id: agent-skills-avail
|
|
511
|
+
kind: widget
|
|
512
|
+
widgetType: entity-count
|
|
513
|
+
pos: { x: 9, y: 2, w: 3, h: 3 }
|
|
514
|
+
config: { profileSlug: skill, label: "Skills Available", icon: Zap, color: "#8B5CF6" }
|
|
515
|
+
- id: agent-spotlight
|
|
516
|
+
kind: widget
|
|
517
|
+
widgetType: entity-spotlight
|
|
518
|
+
pos: { x: 0, y: 5, w: 5, h: 4 }
|
|
519
|
+
config: { profileSlug: agent, seed: daily, layout: detail, subtitleField: status, color: "#1A3A5C" }
|
|
520
|
+
- id: agent-recent-tasks
|
|
521
|
+
kind: widget
|
|
522
|
+
widgetType: entity-list
|
|
523
|
+
pos: { x: 5, y: 5, w: 7, h: 4 }
|
|
524
|
+
config: { profileSlug: task, title: "Recent Tasks", limit: 8, variant: compact }
|
|
525
|
+
breakpoints:
|
|
526
|
+
lg: { cols: 12, rowHeight: 60, gap: 12 }
|
|
527
|
+
md: { cols: 10, rowHeight: 60, gap: 12 }
|
|
528
|
+
sm: { cols: 6, rowHeight: 60, gap: 12 }
|
|
529
|
+
xs: { cols: 4, rowHeight: 60, gap: 12 }
|
|
530
|
+
xxs: { cols: 2, rowHeight: 60, gap: 12 }
|
|
531
|
+
|
|
532
|
+
- name: Task
|
|
533
|
+
type: bento
|
|
534
|
+
scopeProfileSlug: task
|
|
535
|
+
config:
|
|
536
|
+
layout: bento
|
|
537
|
+
blocks:
|
|
538
|
+
- id: task-header
|
|
539
|
+
kind: widget
|
|
540
|
+
widgetType: section-header
|
|
541
|
+
pos: { x: 0, y: 0, w: 12, h: 2 }
|
|
542
|
+
config: { title: Tasks, icon: CheckSquare, color: "#6366F1", profileSlug: task }
|
|
543
|
+
- id: task-count
|
|
544
|
+
kind: widget
|
|
545
|
+
widgetType: stat-card
|
|
546
|
+
pos: { x: 0, y: 2, w: 3, h: 3 }
|
|
547
|
+
config: { label: "Total Tasks", aggregation: count, profileSlug: task, color: "#6366F1" }
|
|
548
|
+
- id: task-board
|
|
549
|
+
kind: view
|
|
550
|
+
viewName: "Task Board"
|
|
551
|
+
pos: { x: 0, y: 9, w: 12, h: 8 }
|
|
552
|
+
- id: task-backlog
|
|
553
|
+
kind: view
|
|
554
|
+
viewName: Backlog
|
|
555
|
+
pos: { x: 0, y: 19, w: 12, h: 8 }
|
|
556
|
+
- id: task-in-progress
|
|
557
|
+
kind: widget
|
|
558
|
+
widgetType: entity-count
|
|
559
|
+
pos: { x: 3, y: 2, w: 3, h: 3 }
|
|
560
|
+
config: { profileSlug: task, label: "In Progress", icon: Loader, filter: { status: in-progress }, color: "#3B82F6" }
|
|
561
|
+
- id: task-completed
|
|
562
|
+
kind: widget
|
|
563
|
+
widgetType: entity-count
|
|
564
|
+
pos: { x: 6, y: 2, w: 3, h: 3 }
|
|
565
|
+
config: { profileSlug: task, label: Completed, icon: CheckCircle, filter: { status: completed }, color: "#10B981" }
|
|
566
|
+
- id: task-failed
|
|
567
|
+
kind: widget
|
|
568
|
+
widgetType: entity-count
|
|
569
|
+
pos: { x: 9, y: 2, w: 3, h: 3 }
|
|
570
|
+
config: { profileSlug: task, label: Failed, icon: XCircle, filter: { status: failed }, color: "#EF4444" }
|
|
571
|
+
- id: task-active-list
|
|
572
|
+
kind: widget
|
|
573
|
+
widgetType: entity-list
|
|
574
|
+
pos: { x: 0, y: 5, w: 12, h: 4 }
|
|
575
|
+
config: { profileSlug: task, title: "Active Tasks", limit: 8, variant: detailed }
|
|
576
|
+
breakpoints:
|
|
577
|
+
lg: { cols: 12, rowHeight: 60, gap: 12 }
|
|
578
|
+
md: { cols: 10, rowHeight: 60, gap: 12 }
|
|
579
|
+
sm: { cols: 6, rowHeight: 60, gap: 12 }
|
|
580
|
+
xs: { cols: 4, rowHeight: 60, gap: 12 }
|
|
581
|
+
xxs: { cols: 2, rowHeight: 60, gap: 12 }
|
|
582
|
+
|
|
583
|
+
- name: Project
|
|
584
|
+
type: bento
|
|
585
|
+
scopeProfileSlug: project
|
|
586
|
+
config:
|
|
587
|
+
layout: bento
|
|
588
|
+
blocks:
|
|
589
|
+
- id: project-header
|
|
590
|
+
kind: widget
|
|
591
|
+
widgetType: section-header
|
|
592
|
+
pos: { x: 0, y: 0, w: 12, h: 2 }
|
|
593
|
+
config: { title: Projects, icon: Folder, color: "#F59E0B", profileSlug: project }
|
|
594
|
+
- id: project-count
|
|
595
|
+
kind: widget
|
|
596
|
+
widgetType: stat-card
|
|
597
|
+
pos: { x: 0, y: 2, w: 3, h: 3 }
|
|
598
|
+
config: { label: "Total Projects", aggregation: count, profileSlug: project, color: "#F59E0B" }
|
|
599
|
+
- id: project-cmd
|
|
600
|
+
kind: view
|
|
601
|
+
viewName: "Project Command Center"
|
|
602
|
+
pos: { x: 0, y: 5, w: 12, h: 10 }
|
|
603
|
+
- id: project-timeline
|
|
604
|
+
kind: view
|
|
605
|
+
viewName: "Agent Timeline"
|
|
606
|
+
pos: { x: 0, y: 15, w: 12, h: 8 }
|
|
607
|
+
breakpoints:
|
|
608
|
+
lg: { cols: 12, rowHeight: 60, gap: 12 }
|
|
609
|
+
md: { cols: 10, rowHeight: 60, gap: 12 }
|
|
610
|
+
sm: { cols: 6, rowHeight: 60, gap: 12 }
|
|
611
|
+
xs: { cols: 4, rowHeight: 60, gap: 12 }
|
|
612
|
+
xxs: { cols: 2, rowHeight: 60, gap: 12 }
|
|
613
|
+
|
|
614
|
+
- name: Skill
|
|
615
|
+
type: bento
|
|
616
|
+
scopeProfileSlug: skill
|
|
617
|
+
config:
|
|
618
|
+
layout: bento
|
|
619
|
+
blocks:
|
|
620
|
+
- id: skill-header
|
|
621
|
+
kind: widget
|
|
622
|
+
widgetType: section-header
|
|
623
|
+
pos: { x: 0, y: 0, w: 12, h: 2 }
|
|
624
|
+
config: { title: Skills, icon: Zap, color: "#10B981", profileSlug: skill }
|
|
625
|
+
- id: skill-count
|
|
626
|
+
kind: widget
|
|
627
|
+
widgetType: stat-card
|
|
628
|
+
pos: { x: 0, y: 2, w: 3, h: 3 }
|
|
629
|
+
config: { label: "Total Skills", aggregation: count, profileSlug: skill, color: "#10B981" }
|
|
630
|
+
- id: skill-registry
|
|
631
|
+
kind: view
|
|
632
|
+
viewName: "Skill Registry"
|
|
633
|
+
pos: { x: 0, y: 9, w: 12, h: 8 }
|
|
634
|
+
- id: skill-trusted
|
|
635
|
+
kind: widget
|
|
636
|
+
widgetType: entity-count
|
|
637
|
+
pos: { x: 3, y: 2, w: 3, h: 3 }
|
|
638
|
+
config: { profileSlug: skill, label: Trusted, icon: Shield, filter: { trusted: true }, color: "#10B981" }
|
|
639
|
+
- id: skill-untrusted
|
|
640
|
+
kind: widget
|
|
641
|
+
widgetType: entity-count
|
|
642
|
+
pos: { x: 6, y: 2, w: 3, h: 3 }
|
|
643
|
+
config: { profileSlug: skill, label: Untrusted, icon: AlertTriangle, filter: { trusted: false }, color: "#EF4444" }
|
|
644
|
+
- id: skill-spotlight
|
|
645
|
+
kind: widget
|
|
646
|
+
widgetType: entity-spotlight
|
|
647
|
+
pos: { x: 0, y: 5, w: 6, h: 4 }
|
|
648
|
+
config: { profileSlug: skill, seed: random, layout: detail, subtitleField: category, color: "#8B5CF6" }
|
|
649
|
+
- id: skill-agents-using
|
|
650
|
+
kind: widget
|
|
651
|
+
widgetType: entity-list
|
|
652
|
+
pos: { x: 6, y: 5, w: 6, h: 4 }
|
|
653
|
+
config: { profileSlug: agent, title: "Agents Using", limit: 6, variant: compact }
|
|
654
|
+
breakpoints:
|
|
655
|
+
lg: { cols: 12, rowHeight: 60, gap: 12 }
|
|
656
|
+
md: { cols: 10, rowHeight: 60, gap: 12 }
|
|
657
|
+
sm: { cols: 6, rowHeight: 60, gap: 12 }
|
|
658
|
+
xs: { cols: 4, rowHeight: 60, gap: 12 }
|
|
659
|
+
xxs: { cols: 2, rowHeight: 60, gap: 12 }
|
|
660
|
+
|
|
661
|
+
- name: Provider
|
|
662
|
+
type: bento
|
|
663
|
+
scopeProfileSlug: provider
|
|
664
|
+
config:
|
|
665
|
+
layout: bento
|
|
666
|
+
blocks:
|
|
667
|
+
- id: provider-header
|
|
668
|
+
kind: widget
|
|
669
|
+
widgetType: section-header
|
|
670
|
+
pos: { x: 0, y: 0, w: 12, h: 2 }
|
|
671
|
+
config: { title: Providers, icon: Database, color: "#06B6D4", profileSlug: provider }
|
|
672
|
+
- id: provider-count
|
|
673
|
+
kind: widget
|
|
674
|
+
widgetType: stat-card
|
|
675
|
+
pos: { x: 0, y: 2, w: 3, h: 3 }
|
|
676
|
+
config: { label: "Total Providers", aggregation: count, profileSlug: provider, color: "#06B6D4" }
|
|
677
|
+
- id: provider-dash
|
|
678
|
+
kind: view
|
|
679
|
+
viewName: "Provider Dashboard"
|
|
680
|
+
pos: { x: 0, y: 9, w: 12, h: 8 }
|
|
681
|
+
- id: provider-keys
|
|
682
|
+
kind: view
|
|
683
|
+
viewName: "Provider Key Health"
|
|
684
|
+
pos: { x: 0, y: 19, w: 12, h: 8 }
|
|
685
|
+
- id: provider-healthy
|
|
686
|
+
kind: widget
|
|
687
|
+
widgetType: entity-count
|
|
688
|
+
pos: { x: 3, y: 2, w: 3, h: 3 }
|
|
689
|
+
config: { profileSlug: provider, label: Healthy, icon: CheckCircle, filter: { status: healthy }, color: "#10B981" }
|
|
690
|
+
- id: provider-degraded
|
|
691
|
+
kind: widget
|
|
692
|
+
widgetType: entity-count
|
|
693
|
+
pos: { x: 6, y: 2, w: 3, h: 3 }
|
|
694
|
+
config: { profileSlug: provider, label: Degraded, icon: AlertTriangle, filter: { status: degraded }, color: "#F59E0B" }
|
|
695
|
+
- id: provider-all
|
|
696
|
+
kind: widget
|
|
697
|
+
widgetType: entity-list
|
|
698
|
+
pos: { x: 0, y: 5, w: 12, h: 4 }
|
|
699
|
+
config: { profileSlug: provider, title: "All Providers", limit: 8, variant: detailed }
|
|
700
|
+
breakpoints:
|
|
701
|
+
lg: { cols: 12, rowHeight: 60, gap: 12 }
|
|
702
|
+
md: { cols: 10, rowHeight: 60, gap: 12 }
|
|
703
|
+
sm: { cols: 6, rowHeight: 60, gap: 12 }
|
|
704
|
+
xs: { cols: 4, rowHeight: 60, gap: 12 }
|
|
705
|
+
xxs: { cols: 2, rowHeight: 60, gap: 12 }
|
|
706
|
+
|
|
707
|
+
displayTemplates:
|
|
708
|
+
- name: "Agent Card"
|
|
709
|
+
description: ""
|
|
710
|
+
entityType: agent
|
|
711
|
+
targetType: entity
|
|
712
|
+
isDefault: true
|
|
713
|
+
config:
|
|
714
|
+
layout:
|
|
715
|
+
structure:
|
|
716
|
+
header:
|
|
717
|
+
enabled: true
|
|
718
|
+
slots: [agent-status, agent-health, agent-runtime, agent-role]
|
|
719
|
+
layout: horizontal
|
|
720
|
+
sidebar:
|
|
721
|
+
enabled: true
|
|
722
|
+
slots: [agent-owner, agent-provider, agent-channel, agent-model, agent-version, agent-last-seen, agent-deployment, agent-heartbeat]
|
|
723
|
+
position: right
|
|
724
|
+
width: 260px
|
|
725
|
+
layout: vertical
|
|
726
|
+
content:
|
|
727
|
+
enabled: true
|
|
728
|
+
slots: [agent-workspace, agent-channels, agent-tags]
|
|
729
|
+
layout: vertical
|
|
730
|
+
fieldMapping:
|
|
731
|
+
agent-status: { slot: agent-status, renderer: { type: badge }, order: 1 }
|
|
732
|
+
agent-health: { slot: agent-health, renderer: { type: badge }, order: 2 }
|
|
733
|
+
agent-runtime: { slot: agent-runtime, renderer: { type: badge }, order: 3 }
|
|
734
|
+
agent-role: { slot: agent-role, renderer: { type: badge }, order: 4 }
|
|
735
|
+
agent-owner: { slot: agent-owner, renderer: { type: avatar }, order: 5 }
|
|
736
|
+
agent-provider: { slot: agent-provider, renderer: { type: link }, order: 6 }
|
|
737
|
+
agent-channel: { slot: agent-channel, renderer: { type: text }, order: 7, label: "Primary Channel", showLabel: true }
|
|
738
|
+
agent-model: { slot: agent-model, renderer: { type: text }, order: 8, label: Model, showLabel: true }
|
|
739
|
+
agent-version: { slot: agent-version, renderer: { type: text }, order: 9, label: Version, showLabel: true }
|
|
740
|
+
agent-last-seen: { slot: agent-last-seen, renderer: { type: date, format: relative }, order: 10 }
|
|
741
|
+
agent-deployment: { slot: agent-deployment, renderer: { type: text }, order: 11, label: Deployment, showLabel: true }
|
|
742
|
+
agent-heartbeat: { slot: agent-heartbeat, renderer: { type: text }, order: 12, label: Heartbeat, showLabel: true }
|
|
743
|
+
agent-workspace: { slot: agent-workspace, renderer: { type: text }, order: 13, label: "Workspace Path", showLabel: true }
|
|
744
|
+
agent-channels: { slot: agent-channels, renderer: { type: badge }, order: 14, label: "All Channels", showLabel: true }
|
|
745
|
+
agent-tags: { slot: agent-tags, renderer: { type: badge }, order: 15 }
|
|
746
|
+
colors:
|
|
747
|
+
accent: "#1A3A5C"
|
|
748
|
+
|
|
749
|
+
- name: "Project Card"
|
|
750
|
+
description: ""
|
|
751
|
+
entityType: project
|
|
752
|
+
targetType: entity
|
|
753
|
+
isDefault: true
|
|
754
|
+
config:
|
|
755
|
+
layout:
|
|
756
|
+
structure:
|
|
757
|
+
header:
|
|
758
|
+
enabled: true
|
|
759
|
+
slots: [project-status, project-priority, project-health, project-type]
|
|
760
|
+
layout: horizontal
|
|
761
|
+
sidebar:
|
|
762
|
+
enabled: true
|
|
763
|
+
slots: [project-assigned-agent, project-owner, project-deadline, project-start]
|
|
764
|
+
position: right
|
|
765
|
+
width: 260px
|
|
766
|
+
layout: vertical
|
|
767
|
+
content:
|
|
768
|
+
enabled: true
|
|
769
|
+
slots: [project-goal, project-outcome, project-tags]
|
|
770
|
+
layout: vertical
|
|
771
|
+
fieldMapping:
|
|
772
|
+
project-status: { slot: project-status, renderer: { type: badge }, order: 1 }
|
|
773
|
+
project-priority: { slot: project-priority, renderer: { type: badge }, order: 2 }
|
|
774
|
+
project-health: { slot: project-health, renderer: { type: badge }, order: 3 }
|
|
775
|
+
project-type: { slot: project-type, renderer: { type: badge }, order: 4 }
|
|
776
|
+
project-assigned-agent: { slot: project-assigned-agent, renderer: { type: link }, order: 5 }
|
|
777
|
+
project-owner: { slot: project-owner, renderer: { type: avatar }, order: 6 }
|
|
778
|
+
project-deadline: { slot: project-deadline, renderer: { type: date, format: relative }, order: 7 }
|
|
779
|
+
project-start: { slot: project-start, renderer: { type: date }, order: 8 }
|
|
780
|
+
project-goal: { slot: project-goal, renderer: { type: text }, order: 9, label: Goal, showLabel: true }
|
|
781
|
+
project-outcome: { slot: project-outcome, renderer: { type: text }, order: 10, label: "Expected Outcome", showLabel: true }
|
|
782
|
+
project-tags: { slot: project-tags, renderer: { type: badge }, order: 11 }
|
|
783
|
+
colors:
|
|
784
|
+
accent: "#2E6DA4"
|
|
785
|
+
|
|
786
|
+
- name: "Task Card"
|
|
787
|
+
description: ""
|
|
788
|
+
entityType: task
|
|
789
|
+
targetType: entity
|
|
790
|
+
isDefault: true
|
|
791
|
+
config:
|
|
792
|
+
layout:
|
|
793
|
+
structure:
|
|
794
|
+
header:
|
|
795
|
+
enabled: true
|
|
796
|
+
slots: [task-status, task-priority, task-type]
|
|
797
|
+
layout: horizontal
|
|
798
|
+
sidebar:
|
|
799
|
+
enabled: true
|
|
800
|
+
slots: [task-assigned-agent, task-project, task-due-date, task-token-estimate, task-actual-tokens, task-effort-hours]
|
|
801
|
+
position: right
|
|
802
|
+
width: 260px
|
|
803
|
+
layout: vertical
|
|
804
|
+
content:
|
|
805
|
+
enabled: true
|
|
806
|
+
slots: [task-blocked-by, task-session-key, task-tags]
|
|
807
|
+
layout: vertical
|
|
808
|
+
fieldMapping:
|
|
809
|
+
task-status: { slot: task-status, renderer: { type: badge }, order: 1 }
|
|
810
|
+
task-priority: { slot: task-priority, renderer: { type: badge }, order: 2 }
|
|
811
|
+
task-type: { slot: task-type, renderer: { type: badge }, order: 3 }
|
|
812
|
+
task-assigned-agent: { slot: task-assigned-agent, renderer: { type: link }, order: 4 }
|
|
813
|
+
task-project: { slot: task-project, renderer: { type: link }, order: 5 }
|
|
814
|
+
task-due-date: { slot: task-due-date, renderer: { type: date, format: relative }, order: 6 }
|
|
815
|
+
task-token-estimate: { slot: task-token-estimate, renderer: { type: number }, order: 7 }
|
|
816
|
+
task-actual-tokens: { slot: task-actual-tokens, renderer: { type: number }, order: 8 }
|
|
817
|
+
task-effort-hours: { slot: task-effort-hours, renderer: { type: number }, order: 9 }
|
|
818
|
+
task-blocked-by: { slot: task-blocked-by, renderer: { type: text }, order: 10, label: "Blocked By", showLabel: true }
|
|
819
|
+
task-session-key: { slot: task-session-key, renderer: { type: text }, order: 11, label: "Session Key", showLabel: true }
|
|
820
|
+
task-tags: { slot: task-tags, renderer: { type: badge }, order: 12 }
|
|
821
|
+
colors:
|
|
822
|
+
accent: "#1B6E45"
|
|
823
|
+
|
|
824
|
+
- name: "Skill Card"
|
|
825
|
+
description: ""
|
|
826
|
+
entityType: skill
|
|
827
|
+
targetType: entity
|
|
828
|
+
isDefault: true
|
|
829
|
+
config:
|
|
830
|
+
layout:
|
|
831
|
+
structure:
|
|
832
|
+
header:
|
|
833
|
+
enabled: true
|
|
834
|
+
slots: [skill-trust, skill-virustotal, skill-category]
|
|
835
|
+
layout: horizontal
|
|
836
|
+
sidebar:
|
|
837
|
+
enabled: true
|
|
838
|
+
slots: [skill-version, skill-install-date, skill-last-audit, skill-maintainer, skill-requires-api]
|
|
839
|
+
position: right
|
|
840
|
+
width: 260px
|
|
841
|
+
layout: vertical
|
|
842
|
+
content:
|
|
843
|
+
enabled: true
|
|
844
|
+
slots: [skill-source-url, skill-notes]
|
|
845
|
+
layout: vertical
|
|
846
|
+
fieldMapping:
|
|
847
|
+
skill-trust: { slot: skill-trust, renderer: { type: badge }, order: 1 }
|
|
848
|
+
skill-virustotal: { slot: skill-virustotal, renderer: { type: badge }, order: 2 }
|
|
849
|
+
skill-category: { slot: skill-category, renderer: { type: badge }, order: 3 }
|
|
850
|
+
skill-version: { slot: skill-version, renderer: { type: text }, order: 4, label: Version, showLabel: true }
|
|
851
|
+
skill-install-date: { slot: skill-install-date, renderer: { type: date }, order: 5 }
|
|
852
|
+
skill-last-audit: { slot: skill-last-audit, renderer: { type: date, format: relative }, order: 6, label: "Last Audit", showLabel: true }
|
|
853
|
+
skill-maintainer: { slot: skill-maintainer, renderer: { type: text }, order: 7, label: Maintainer, showLabel: true }
|
|
854
|
+
skill-requires-api: { slot: skill-requires-api, renderer: { type: checkbox }, order: 8, label: "Requires API Key", showLabel: true }
|
|
855
|
+
skill-source-url: { slot: skill-source-url, renderer: { type: text }, order: 9, label: Source, showLabel: true }
|
|
856
|
+
skill-notes: { slot: skill-notes, renderer: { type: text }, order: 10, label: "Security Notes", showLabel: true }
|
|
857
|
+
colors:
|
|
858
|
+
accent: "#7C3AED"
|
|
859
|
+
|
|
860
|
+
- name: "Provider Card"
|
|
861
|
+
description: ""
|
|
862
|
+
entityType: provider
|
|
863
|
+
targetType: entity
|
|
864
|
+
isDefault: true
|
|
865
|
+
config:
|
|
866
|
+
layout:
|
|
867
|
+
structure:
|
|
868
|
+
header:
|
|
869
|
+
enabled: true
|
|
870
|
+
slots: [provider-key-health, provider-type]
|
|
871
|
+
layout: horizontal
|
|
872
|
+
sidebar:
|
|
873
|
+
enabled: true
|
|
874
|
+
slots: [provider-model, provider-cost-input, provider-cost-output, provider-budget-day, provider-spend-week]
|
|
875
|
+
position: right
|
|
876
|
+
width: 260px
|
|
877
|
+
layout: vertical
|
|
878
|
+
content:
|
|
879
|
+
enabled: true
|
|
880
|
+
slots: [provider-base-url, provider-notes]
|
|
881
|
+
layout: vertical
|
|
882
|
+
fieldMapping:
|
|
883
|
+
provider-key-health: { slot: provider-key-health, renderer: { type: badge }, order: 1 }
|
|
884
|
+
provider-type: { slot: provider-type, renderer: { type: badge }, order: 2 }
|
|
885
|
+
provider-model: { slot: provider-model, renderer: { type: text }, order: 3, label: Model, showLabel: true }
|
|
886
|
+
provider-cost-input: { slot: provider-cost-input, renderer: { type: number }, order: 4 }
|
|
887
|
+
provider-cost-output: { slot: provider-cost-output, renderer: { type: number }, order: 5 }
|
|
888
|
+
provider-budget-day: { slot: provider-budget-day, renderer: { type: number }, order: 6 }
|
|
889
|
+
provider-spend-week: { slot: provider-spend-week, renderer: { type: progress }, order: 7, label: "Weekly Spend", showLabel: true }
|
|
890
|
+
provider-base-url: { slot: provider-base-url, renderer: { type: text }, order: 8, label: Endpoint, showLabel: true }
|
|
891
|
+
provider-notes: { slot: provider-notes, renderer: { type: text }, order: 9, label: Notes, showLabel: true }
|
|
892
|
+
colors:
|
|
893
|
+
accent: "#B5451B"
|
|
894
|
+
|
|
895
|
+
seedEntities:
|
|
896
|
+
- profileSlug: person
|
|
897
|
+
title: Antoine
|
|
898
|
+
properties:
|
|
899
|
+
person-role: Founder
|
|
900
|
+
person-email: antoine@synap.io
|
|
901
|
+
person-telegram: "@antoine_synap"
|
|
902
|
+
person-focus: "OpenClaw fleet management and Agent Fleet template"
|
|
903
|
+
|
|
904
|
+
- profileSlug: provider
|
|
905
|
+
title: "Claude (Anthropic)"
|
|
906
|
+
properties:
|
|
907
|
+
provider-type: "LLM Cloud"
|
|
908
|
+
provider-key-health: Valid
|
|
909
|
+
provider-model: claude-sonnet-4-6
|
|
910
|
+
provider-cost-input: 0.003
|
|
911
|
+
provider-cost-output: 0.015
|
|
912
|
+
provider-budget-day: 5
|
|
913
|
+
provider-spend-week: 14.2
|
|
914
|
+
provider-base-url: "https://api.anthropic.com/v1"
|
|
915
|
+
provider-notes: "Primary model for Mira (coding) and Lore (research). Claude Sonnet 4.6 via direct Anthropic API. OAuth tokens from Claude Free/Pro/Max are NOT permitted per Feb 2026 ToS update."
|
|
916
|
+
|
|
917
|
+
- profileSlug: provider
|
|
918
|
+
title: "DeepSeek via OpenRouter"
|
|
919
|
+
properties:
|
|
920
|
+
provider-type: "API Gateway"
|
|
921
|
+
provider-key-health: Valid
|
|
922
|
+
provider-model: deepseek/deepseek-r1
|
|
923
|
+
provider-cost-input: 0.00055
|
|
924
|
+
provider-cost-output: 0.00219
|
|
925
|
+
provider-budget-day: 2
|
|
926
|
+
provider-spend-week: 3.4
|
|
927
|
+
provider-base-url: "https://openrouter.ai/api/v1"
|
|
928
|
+
provider-notes: "Cost-efficient option for Tact (ops agent) running high-volume onboarding automations. OpenRouter provides auth profile rotation and fallback chain."
|
|
929
|
+
|
|
930
|
+
- profileSlug: provider
|
|
931
|
+
title: "Ollama (Local)"
|
|
932
|
+
properties:
|
|
933
|
+
provider-type: "LLM Local"
|
|
934
|
+
provider-key-health: "No Key (Local)"
|
|
935
|
+
provider-model: qwen3:8b
|
|
936
|
+
provider-cost-input: 0
|
|
937
|
+
provider-cost-output: 0
|
|
938
|
+
provider-budget-day: 0
|
|
939
|
+
provider-spend-week: 0
|
|
940
|
+
provider-base-url: "http://127.0.0.1:11434"
|
|
941
|
+
provider-notes: "Local Ollama instance for heartbeat tasks and low-stakes automation. Zero API cost. Qwen3 8B fits in 8GB RAM. Use for cron-driven monitoring tasks that don't require frontier model quality."
|
|
942
|
+
|
|
943
|
+
- profileSlug: skill
|
|
944
|
+
title: github-mcp
|
|
945
|
+
properties:
|
|
946
|
+
skill-trust: Trusted
|
|
947
|
+
skill-category: Development
|
|
948
|
+
skill-source-url: "https://github.com/openclaw/skills/tree/main/github-mcp"
|
|
949
|
+
skill-version: 2.1.0
|
|
950
|
+
skill-install-date: "2026-02-01"
|
|
951
|
+
skill-last-audit: "2026-02-15"
|
|
952
|
+
skill-virustotal: Clean
|
|
953
|
+
skill-maintainer: "OpenClaw core team"
|
|
954
|
+
skill-requires-api: true
|
|
955
|
+
skill-notes: "Official MCP server for GitHub. Supports repo management, PR creation, issue triage, and webhook triggers. Maintained by OpenClaw core team. Audit Feb 15 — clean."
|
|
956
|
+
|
|
957
|
+
- profileSlug: skill
|
|
958
|
+
title: shell-sandbox
|
|
959
|
+
properties:
|
|
960
|
+
skill-trust: Trusted
|
|
961
|
+
skill-category: Development
|
|
962
|
+
skill-source-url: "https://github.com/openclaw/skills/tree/main/shell-sandbox"
|
|
963
|
+
skill-version: 1.4.2
|
|
964
|
+
skill-install-date: "2026-02-01"
|
|
965
|
+
skill-last-audit: "2026-02-20"
|
|
966
|
+
skill-virustotal: Clean
|
|
967
|
+
skill-maintainer: openclaw-labs
|
|
968
|
+
skill-requires-api: false
|
|
969
|
+
skill-notes: "OpenClaw-compatible sandboxed shell executor. Commands run inside Docker container with workspace-scoped filesystem. Allowlist: git, npm, cargo, pytest, make. Never runs as root. Strongly preferred over bare shell access."
|
|
970
|
+
|
|
971
|
+
- profileSlug: skill
|
|
972
|
+
title: telegram
|
|
973
|
+
properties:
|
|
974
|
+
skill-trust: Trusted
|
|
975
|
+
skill-category: Communication
|
|
976
|
+
skill-source-url: "https://github.com/openclaw/skills/tree/main/telegram"
|
|
977
|
+
skill-version: 3.0.1
|
|
978
|
+
skill-install-date: "2026-02-01"
|
|
979
|
+
skill-last-audit: "2026-02-18"
|
|
980
|
+
skill-virustotal: Clean
|
|
981
|
+
skill-maintainer: "OpenClaw core team"
|
|
982
|
+
skill-requires-api: true
|
|
983
|
+
skill-notes: "Official Telegram channel plugin. Supports DM and group commands. Bot token stored encrypted at rest in OpenClaw's SecretBackend. allowFrom configured to owner number only."
|
|
984
|
+
|
|
985
|
+
- profileSlug: skill
|
|
986
|
+
title: web-browser
|
|
987
|
+
properties:
|
|
988
|
+
skill-trust: Review
|
|
989
|
+
skill-category: Browser
|
|
990
|
+
skill-source-url: "https://github.com/openclaw/skills/tree/main/web-browser"
|
|
991
|
+
skill-version: 1.8.0
|
|
992
|
+
skill-install-date: "2026-02-10"
|
|
993
|
+
skill-last-audit: "2026-02-10"
|
|
994
|
+
skill-virustotal: Clean
|
|
995
|
+
skill-maintainer: community
|
|
996
|
+
skill-requires-api: false
|
|
997
|
+
skill-notes: "CDP-based Chrome/Chromium automation. Significant prompt injection surface: agent reads web content that could contain malicious instructions. Set to Review pending a full audit. Do not use on untrusted URLs until audited."
|
|
998
|
+
|
|
999
|
+
- profileSlug: skill
|
|
1000
|
+
title: email-gmail
|
|
1001
|
+
properties:
|
|
1002
|
+
skill-trust: Review
|
|
1003
|
+
skill-category: Communication
|
|
1004
|
+
skill-source-url: "https://github.com/openclaw/skills/tree/main/email-gmail"
|
|
1005
|
+
skill-version: 2.3.1
|
|
1006
|
+
skill-install-date: "2026-02-08"
|
|
1007
|
+
skill-last-audit: "2026-02-08"
|
|
1008
|
+
skill-virustotal: Clean
|
|
1009
|
+
skill-maintainer: community
|
|
1010
|
+
skill-requires-api: true
|
|
1011
|
+
skill-notes: "Gmail OAuth integration. Read + send permissions. Set to Review: OAuth scope is broad (all mail read/send). Consider scoping to specific labels or creating a dedicated automation Gmail account. Tact uses this for onboarding sequences — monitor closely."
|
|
1012
|
+
|
|
1013
|
+
- profileSlug: skill
|
|
1014
|
+
title: flagged-analytics-skill
|
|
1015
|
+
properties:
|
|
1016
|
+
skill-trust: Untrusted
|
|
1017
|
+
skill-category: Data
|
|
1018
|
+
skill-source-url: "https://clawhub.io/skills/advanced-analytics-v2"
|
|
1019
|
+
skill-version: 1.0.3
|
|
1020
|
+
skill-install-date: "2026-02-14"
|
|
1021
|
+
skill-last-audit: "2026-02-22"
|
|
1022
|
+
skill-virustotal: Flagged
|
|
1023
|
+
skill-maintainer: unknown
|
|
1024
|
+
skill-requires-api: true
|
|
1025
|
+
skill-notes: "FLAGGED — VirusTotal scan Feb 22 returned 3 detections. Suspected data exfiltration payload similar to documented ClawHub supply chain attacks. Tact was using this skill (see relations). Immediately disable in Tact config. Source repo deleted. Do not reinstall. Report to ClawHub security team."
|
|
1026
|
+
|
|
1027
|
+
- profileSlug: agent
|
|
1028
|
+
title: Mira
|
|
1029
|
+
properties:
|
|
1030
|
+
agent-status: Active
|
|
1031
|
+
agent-health: Healthy
|
|
1032
|
+
agent-runtime: OpenClaw
|
|
1033
|
+
agent-version: v0.1.6
|
|
1034
|
+
agent-model: claude-sonnet-4-6
|
|
1035
|
+
agent-provider: "ref:provider:Claude (Anthropic)"
|
|
1036
|
+
agent-owner: "ref:person:Antoine"
|
|
1037
|
+
agent-channel: Telegram
|
|
1038
|
+
agent-channels: [Telegram, CLI]
|
|
1039
|
+
agent-heartbeat: "*/30 * * * *"
|
|
1040
|
+
agent-last-seen: "2026-02-24"
|
|
1041
|
+
agent-workspace: /home/agents/mira
|
|
1042
|
+
agent-deployment: VPS
|
|
1043
|
+
agent-role: Coder
|
|
1044
|
+
agent-tags: [production, "24/7"]
|
|
1045
|
+
content: "# Agent Brief: Mira\n\n## Identity\nMira is the primary coding agent. She runs OpenClaw v0.1.6 on a 4 vCPU / 8GB VPS (Hetzner CX22), boots in under 10ms, and idles at ~16MB RAM. Her primary model is Claude Sonnet 4.6 via direct Anthropic API. Fallback: DeepSeek R1 via OpenRouter for lower-priority tasks.\n\n## Core Capabilities\nMira's installed skills: github-mcp (repo management, PR creation, webhook triggers), shell-sandbox (sandboxed bash in Docker, allowlist: git/npm/cargo/pytest/make), telegram (agent channel). All three are Trusted — clean VirusTotal, maintained by verified sources.\n\n## Active Projects\n- **Synap CI/CD Pipeline**: Automates test runs on PR merge, deploys to staging on green CI. Runs cron every 30 minutes to check for open PRs.\n\n## Security Configuration\nOpenClaw workspace scoped to `/home/agents/mira`. Command allowlist enforced — no arbitrary shell execution. API key encrypted at rest via OpenClaw SecretBackend. Gateway accessible only via Tailscale (no public port exposure). Pairing code required for new connections.\n\n## Known Limitations\n- Does not handle design or content tasks — delegate those to a writer agent\n- Token usage spikes on large codebases: set per-session budget cap to $1.50 in provider config\n- WhatsApp channel deliberately excluded — Telegram preferred for persistent session management"
|
|
1046
|
+
|
|
1047
|
+
- profileSlug: agent
|
|
1048
|
+
title: Lore
|
|
1049
|
+
properties:
|
|
1050
|
+
agent-status: Idle
|
|
1051
|
+
agent-health: Healthy
|
|
1052
|
+
agent-runtime: OpenClaw
|
|
1053
|
+
agent-version: v0.1.6
|
|
1054
|
+
agent-model: claude-sonnet-4-6
|
|
1055
|
+
agent-provider: "ref:provider:Claude (Anthropic)"
|
|
1056
|
+
agent-owner: "ref:person:Antoine"
|
|
1057
|
+
agent-channel: Telegram
|
|
1058
|
+
agent-channels: [Telegram, CLI]
|
|
1059
|
+
agent-heartbeat: "0 8 * * *"
|
|
1060
|
+
agent-last-seen: "2026-02-24"
|
|
1061
|
+
agent-workspace: /home/agents/lore
|
|
1062
|
+
agent-deployment: VPS
|
|
1063
|
+
agent-role: Researcher
|
|
1064
|
+
agent-tags: [production, on-demand]
|
|
1065
|
+
|
|
1066
|
+
- profileSlug: agent
|
|
1067
|
+
title: Tact
|
|
1068
|
+
properties:
|
|
1069
|
+
agent-status: Active
|
|
1070
|
+
agent-health: Degraded
|
|
1071
|
+
agent-runtime: OpenClaw
|
|
1072
|
+
agent-version: latest
|
|
1073
|
+
agent-model: deepseek/deepseek-r1
|
|
1074
|
+
agent-provider: "ref:provider:DeepSeek via OpenRouter"
|
|
1075
|
+
agent-owner: "ref:person:Antoine"
|
|
1076
|
+
agent-channel: Telegram
|
|
1077
|
+
agent-channels: [Telegram]
|
|
1078
|
+
agent-heartbeat: "0 9 * * 1-5"
|
|
1079
|
+
agent-last-seen: "2026-02-24"
|
|
1080
|
+
agent-workspace: /home/agents/tact
|
|
1081
|
+
agent-deployment: Docker
|
|
1082
|
+
agent-role: Ops
|
|
1083
|
+
agent-tags: [production, "24/7"]
|
|
1084
|
+
content: "# Agent Brief: Tact — ⚠️ HEALTH: DEGRADED\n\n## Status Alert\n**Tact's health is currently DEGRADED.** Investigation required: the flagged-analytics-skill (VirusTotal: 3 detections) was installed and used by Tact for client onboarding tracking. Immediately disable this skill in Tact's config:\n\n```toml\n# ~/.zeroclaw/config.toml — Tact instance\n[skills]\ndisabled = [\"flagged-analytics-skill\"]\n```\n\nAudit Tact's session logs for the past 7 days. Check for anomalous outbound requests. Rotate any API keys that Tact had access to.\n\n## Identity\nTact is the ops agent running OpenClaw (Docker container isolation). Handles client onboarding automation: email sequences via email-gmail skill, CRM record creation, Slack introductions. Runs on DeepSeek R1 via OpenRouter — lower cost for high-volume, lower-complexity ops tasks.\n\n## Active Projects\n- **Client Onboarding Automation**: Sends welcome email sequence on new signup, creates CRM record, posts Slack intro. Triggered by CRM webhook.\n\n## Post-Remediation\nAfter disabling flagged skill and rotating credentials, reset health to Healthy and re-evaluate skill registry for any other Review-level skills that warrant upgrade or removal."
|
|
1085
|
+
|
|
1086
|
+
- profileSlug: project
|
|
1087
|
+
title: "Synap CI/CD Pipeline"
|
|
1088
|
+
properties:
|
|
1089
|
+
project-status: "In Progress"
|
|
1090
|
+
project-priority: High
|
|
1091
|
+
project-assigned-agent: "ref:agent:Mira"
|
|
1092
|
+
project-owner: "ref:person:Antoine"
|
|
1093
|
+
project-start: "2026-02-10"
|
|
1094
|
+
project-deadline: "2026-03-15"
|
|
1095
|
+
project-health: Green
|
|
1096
|
+
project-type: DevOps
|
|
1097
|
+
project-goal: "Automate test execution on every PR merge and deploy to staging on green CI with zero manual intervention"
|
|
1098
|
+
project-outcome: "Mira handles full CI/CD loop; human only reviews merged PRs and production deploys"
|
|
1099
|
+
project-tags: [recurring, internal]
|
|
1100
|
+
|
|
1101
|
+
- profileSlug: project
|
|
1102
|
+
title: "Competitive Research Sprint"
|
|
1103
|
+
properties:
|
|
1104
|
+
project-status: "In Progress"
|
|
1105
|
+
project-priority: High
|
|
1106
|
+
project-assigned-agent: "ref:agent:Lore"
|
|
1107
|
+
project-owner: "ref:person:Antoine"
|
|
1108
|
+
project-start: "2026-02-17"
|
|
1109
|
+
project-deadline: "2026-03-07"
|
|
1110
|
+
project-health: Green
|
|
1111
|
+
project-type: Research
|
|
1112
|
+
project-goal: "Map the full OpenClaw/OpenClaw alternative ecosystem, identify user pain points from public sources, and output a structured market audit"
|
|
1113
|
+
project-outcome: "Comprehensive market audit doc + template architecture recommendation"
|
|
1114
|
+
project-tags: [one-off, internal]
|
|
1115
|
+
|
|
1116
|
+
- profileSlug: project
|
|
1117
|
+
title: "Client Onboarding Automation"
|
|
1118
|
+
properties:
|
|
1119
|
+
project-status: "In Progress"
|
|
1120
|
+
project-priority: Critical
|
|
1121
|
+
project-assigned-agent: "ref:agent:Tact"
|
|
1122
|
+
project-owner: "ref:person:Antoine"
|
|
1123
|
+
project-start: "2026-02-01"
|
|
1124
|
+
project-deadline: "2026-03-31"
|
|
1125
|
+
project-health: Yellow
|
|
1126
|
+
project-type: Automation
|
|
1127
|
+
project-goal: "Eliminate manual onboarding steps: automate welcome email, CRM creation, and Slack intro on every new signup"
|
|
1128
|
+
project-outcome: "New clients fully onboarded within 5 minutes of signup, zero human ops involvement for standard accounts"
|
|
1129
|
+
project-tags: [recurring, client]
|
|
1130
|
+
|
|
1131
|
+
- profileSlug: project
|
|
1132
|
+
title: "Template Stack Documentation"
|
|
1133
|
+
properties:
|
|
1134
|
+
project-status: Backlog
|
|
1135
|
+
project-priority: Medium
|
|
1136
|
+
project-owner: "ref:person:Antoine"
|
|
1137
|
+
project-deadline: "2026-03-31"
|
|
1138
|
+
project-health: Green
|
|
1139
|
+
project-type: Content
|
|
1140
|
+
project-goal: "Write comprehensive documentation for all 4 Synap workspace templates: PM OS, Content OS, Second Brain, Agent Fleet"
|
|
1141
|
+
project-outcome: "Self-service docs at synap.io/templates so users can install and configure templates without support"
|
|
1142
|
+
project-tags: [one-off, internal]
|
|
1143
|
+
|
|
1144
|
+
- profileSlug: task
|
|
1145
|
+
title: "Automate test suite on PR merge"
|
|
1146
|
+
properties:
|
|
1147
|
+
task-status: Running
|
|
1148
|
+
task-priority: High
|
|
1149
|
+
task-assigned-agent: "ref:agent:Mira"
|
|
1150
|
+
task-project: "ref:project:Synap CI/CD Pipeline"
|
|
1151
|
+
task-type: Code
|
|
1152
|
+
task-due-date: "2026-03-01"
|
|
1153
|
+
task-effort-hours: 6
|
|
1154
|
+
task-token-estimate: 80
|
|
1155
|
+
task-actual-tokens: 42
|
|
1156
|
+
task-session-key: session_mira_2026_0224_ci_001
|
|
1157
|
+
task-tags: [autonomous, recurring]
|
|
1158
|
+
|
|
1159
|
+
- profileSlug: task
|
|
1160
|
+
title: "Deploy staging on green CI"
|
|
1161
|
+
properties:
|
|
1162
|
+
task-status: Queued
|
|
1163
|
+
task-priority: High
|
|
1164
|
+
task-assigned-agent: "ref:agent:Mira"
|
|
1165
|
+
task-project: "ref:project:Synap CI/CD Pipeline"
|
|
1166
|
+
task-type: DevOps
|
|
1167
|
+
task-due-date: "2026-03-01"
|
|
1168
|
+
task-effort-hours: 3
|
|
1169
|
+
task-token-estimate: 30
|
|
1170
|
+
task-actual-tokens: 0
|
|
1171
|
+
task-blocked-by: "Automate test suite on PR merge must complete first"
|
|
1172
|
+
task-tags: [autonomous, blocked, recurring]
|
|
1173
|
+
|
|
1174
|
+
- profileSlug: task
|
|
1175
|
+
title: "Research OpenClaw alternatives landscape"
|
|
1176
|
+
properties:
|
|
1177
|
+
task-status: Done
|
|
1178
|
+
task-priority: High
|
|
1179
|
+
task-assigned-agent: "ref:agent:Lore"
|
|
1180
|
+
task-project: "ref:project:Competitive Research Sprint"
|
|
1181
|
+
task-type: Research
|
|
1182
|
+
task-due-date: "2026-02-20"
|
|
1183
|
+
task-effort-hours: 4
|
|
1184
|
+
task-token-estimate: 120
|
|
1185
|
+
task-actual-tokens: 134
|
|
1186
|
+
task-session-key: session_lore_2026_0219_research_001
|
|
1187
|
+
task-tags: [autonomous]
|
|
1188
|
+
|
|
1189
|
+
- profileSlug: task
|
|
1190
|
+
title: "Compile pain points from GitHub issues"
|
|
1191
|
+
properties:
|
|
1192
|
+
task-status: Running
|
|
1193
|
+
task-priority: High
|
|
1194
|
+
task-assigned-agent: "ref:agent:Lore"
|
|
1195
|
+
task-project: "ref:project:Competitive Research Sprint"
|
|
1196
|
+
task-type: Research
|
|
1197
|
+
task-due-date: "2026-02-26"
|
|
1198
|
+
task-effort-hours: 5
|
|
1199
|
+
task-token-estimate: 200
|
|
1200
|
+
task-actual-tokens: 88
|
|
1201
|
+
task-session-key: session_lore_2026_0224_research_002
|
|
1202
|
+
task-tags: [autonomous, high-cost]
|
|
1203
|
+
|
|
1204
|
+
- profileSlug: task
|
|
1205
|
+
title: "Send welcome email sequence on signup"
|
|
1206
|
+
properties:
|
|
1207
|
+
task-status: Running
|
|
1208
|
+
task-priority: Critical
|
|
1209
|
+
task-assigned-agent: "ref:agent:Tact"
|
|
1210
|
+
task-project: "ref:project:Client Onboarding Automation"
|
|
1211
|
+
task-type: Ops
|
|
1212
|
+
task-due-date: "2026-03-31"
|
|
1213
|
+
task-effort-hours: 1
|
|
1214
|
+
task-token-estimate: 15
|
|
1215
|
+
task-actual-tokens: 9
|
|
1216
|
+
task-session-key: session_tact_2026_0224_onboard_003
|
|
1217
|
+
task-tags: [autonomous, recurring, needs-review]
|
|
1218
|
+
|
|
1219
|
+
- profileSlug: task
|
|
1220
|
+
title: "Create CRM record and Slack intro"
|
|
1221
|
+
properties:
|
|
1222
|
+
task-status: Running
|
|
1223
|
+
task-priority: Critical
|
|
1224
|
+
task-assigned-agent: "ref:agent:Tact"
|
|
1225
|
+
task-project: "ref:project:Client Onboarding Automation"
|
|
1226
|
+
task-type: Ops
|
|
1227
|
+
task-due-date: "2026-03-31"
|
|
1228
|
+
task-effort-hours: 1
|
|
1229
|
+
task-token-estimate: 10
|
|
1230
|
+
task-actual-tokens: 7
|
|
1231
|
+
task-session-key: session_tact_2026_0224_onboard_004
|
|
1232
|
+
task-tags: [autonomous, recurring, needs-review]
|
|
1233
|
+
|
|
1234
|
+
- profileSlug: task
|
|
1235
|
+
title: "Audit flagged-analytics-skill across all agents"
|
|
1236
|
+
properties:
|
|
1237
|
+
task-status: Queued
|
|
1238
|
+
task-priority: Critical
|
|
1239
|
+
task-assigned-agent: "ref:person:Antoine"
|
|
1240
|
+
task-project: "ref:project:Client Onboarding Automation"
|
|
1241
|
+
task-type: Review
|
|
1242
|
+
task-due-date: "2026-02-25"
|
|
1243
|
+
task-effort-hours: 2
|
|
1244
|
+
task-token-estimate: 0
|
|
1245
|
+
task-actual-tokens: 0
|
|
1246
|
+
task-tags: [needs-review]
|
|
1247
|
+
|
|
1248
|
+
- profileSlug: task
|
|
1249
|
+
title: "Write onboarding guide for Agent Fleet template"
|
|
1250
|
+
properties:
|
|
1251
|
+
task-status: Backlog
|
|
1252
|
+
task-priority: Medium
|
|
1253
|
+
task-project: "ref:project:Template Stack Documentation"
|
|
1254
|
+
task-type: Content
|
|
1255
|
+
task-due-date: "2026-03-21"
|
|
1256
|
+
task-effort-hours: 3
|
|
1257
|
+
task-token-estimate: 50
|
|
1258
|
+
task-actual-tokens: 0
|
|
1259
|
+
task-tags: [async]
|
|
1260
|
+
|
|
1261
|
+
suggestedRelations:
|
|
1262
|
+
- { sourceRef: "agent:Mira", targetRef: "provider:Claude (Anthropic)", type: links_to }
|
|
1263
|
+
- { sourceRef: "agent:Mira", targetRef: "provider:DeepSeek via OpenRouter", type: links_to }
|
|
1264
|
+
- { sourceRef: "agent:Lore", targetRef: "provider:Claude (Anthropic)", type: links_to }
|
|
1265
|
+
- { sourceRef: "agent:Tact", targetRef: "provider:DeepSeek via OpenRouter", type: links_to }
|
|
1266
|
+
- { sourceRef: "agent:Mira", targetRef: "skill:github-mcp", type: links_to }
|
|
1267
|
+
- { sourceRef: "agent:Mira", targetRef: "skill:shell-sandbox", type: links_to }
|
|
1268
|
+
- { sourceRef: "agent:Mira", targetRef: "skill:telegram", type: links_to }
|
|
1269
|
+
- { sourceRef: "agent:Lore", targetRef: "skill:web-browser", type: links_to }
|
|
1270
|
+
- { sourceRef: "agent:Lore", targetRef: "skill:telegram", type: links_to }
|
|
1271
|
+
- { sourceRef: "agent:Tact", targetRef: "skill:email-gmail", type: links_to }
|
|
1272
|
+
- { sourceRef: "agent:Tact", targetRef: "skill:telegram", type: links_to }
|
|
1273
|
+
- { sourceRef: "agent:Tact", targetRef: "skill:flagged-analytics-skill", type: links_to }
|
|
1274
|
+
- { sourceRef: "project:Synap CI/CD Pipeline", targetRef: "agent:Mira", type: assigned_to }
|
|
1275
|
+
- { sourceRef: "project:Competitive Research Sprint", targetRef: "agent:Lore", type: assigned_to }
|
|
1276
|
+
- { sourceRef: "project:Client Onboarding Automation", targetRef: "agent:Tact", type: assigned_to }
|
|
1277
|
+
- { sourceRef: "task:Automate test suite on PR merge", targetRef: "project:Synap CI/CD Pipeline", type: belongs_to_project }
|
|
1278
|
+
- { sourceRef: "task:Automate test suite on PR merge", targetRef: "agent:Mira", type: assigned_to }
|
|
1279
|
+
- { sourceRef: "task:Deploy staging on green CI", targetRef: "project:Synap CI/CD Pipeline", type: belongs_to_project }
|
|
1280
|
+
- { sourceRef: "task:Deploy staging on green CI", targetRef: "agent:Mira", type: assigned_to }
|
|
1281
|
+
- { sourceRef: "task:Research OpenClaw alternatives landscape", targetRef: "project:Competitive Research Sprint", type: belongs_to_project }
|
|
1282
|
+
- { sourceRef: "task:Research OpenClaw alternatives landscape", targetRef: "agent:Lore", type: assigned_to }
|
|
1283
|
+
- { sourceRef: "task:Compile pain points from GitHub issues", targetRef: "project:Competitive Research Sprint", type: belongs_to_project }
|
|
1284
|
+
- { sourceRef: "task:Compile pain points from GitHub issues", targetRef: "agent:Lore", type: assigned_to }
|
|
1285
|
+
- { sourceRef: "task:Send welcome email sequence on signup", targetRef: "project:Client Onboarding Automation", type: belongs_to_project }
|
|
1286
|
+
- { sourceRef: "task:Send welcome email sequence on signup", targetRef: "agent:Tact", type: assigned_to }
|
|
1287
|
+
- { sourceRef: "task:Create CRM record and Slack intro", targetRef: "project:Client Onboarding Automation", type: belongs_to_project }
|
|
1288
|
+
- { sourceRef: "task:Create CRM record and Slack intro", targetRef: "agent:Tact", type: assigned_to }
|
|
1289
|
+
- { sourceRef: "agent:Mira", targetRef: "person:Antoine", type: created_by }
|
|
1290
|
+
- { sourceRef: "agent:Lore", targetRef: "person:Antoine", type: created_by }
|
|
1291
|
+
- { sourceRef: "agent:Tact", targetRef: "person:Antoine", type: created_by }
|
|
1292
|
+
|
|
1293
|
+
bento:
|
|
1294
|
+
viewName: "Agent Fleet Home"
|
|
1295
|
+
blocks:
|
|
1296
|
+
- widgetType: welcome-header
|
|
1297
|
+
pos: { x: 0, y: 0, w: 12, h: 2 }
|
|
1298
|
+
config: { title: "Agent Fleet", subtitle: "Your sovereign control plane for the agent fleet." }
|
|
1299
|
+
- widgetType: entity-count
|
|
1300
|
+
pos: { x: 0, y: 2, w: 3, h: 2 }
|
|
1301
|
+
config: { profileSlug: agent, label: Agents, icon: bot }
|
|
1302
|
+
- widgetType: entity-count
|
|
1303
|
+
pos: { x: 3, y: 2, w: 3, h: 2 }
|
|
1304
|
+
config: { profileSlug: task, label: Tasks, icon: check-square }
|
|
1305
|
+
- widgetType: entity-count
|
|
1306
|
+
pos: { x: 6, y: 2, w: 3, h: 2 }
|
|
1307
|
+
config: { profileSlug: skill, label: Skills, icon: zap }
|
|
1308
|
+
- widgetType: entity-count
|
|
1309
|
+
pos: { x: 9, y: 2, w: 3, h: 2 }
|
|
1310
|
+
config: { profileSlug: provider, label: Providers, icon: database }
|
|
1311
|
+
- widgetType: entity-spotlight
|
|
1312
|
+
pos: { x: 0, y: 4, w: 4, h: 4 }
|
|
1313
|
+
config: { profileSlug: agent, seed: random, layout: detail, subtitleField: status, color: "#1A3A5C" }
|
|
1314
|
+
- widgetType: entity-list
|
|
1315
|
+
pos: { x: 4, y: 4, w: 4, h: 4 }
|
|
1316
|
+
config: { profileSlug: task, title: "Active Tasks", limit: 6, variant: compact }
|
|
1317
|
+
- widgetType: entity-list
|
|
1318
|
+
pos: { x: 8, y: 4, w: 4, h: 4 }
|
|
1319
|
+
config: { profileSlug: skill, title: "Top Skills", limit: 6, variant: compact }
|
|
1320
|
+
- kind: view
|
|
1321
|
+
viewName: "Agent Fleet"
|
|
1322
|
+
pos: { x: 0, y: 8, w: 8, h: 4 }
|
|
1323
|
+
- kind: view
|
|
1324
|
+
viewName: "Provider Key Health"
|
|
1325
|
+
pos: { x: 8, y: 8, w: 4, h: 4 }
|
|
1326
|
+
- kind: view
|
|
1327
|
+
viewName: "Task Board"
|
|
1328
|
+
pos: { x: 0, y: 12, w: 7, h: 4 }
|
|
1329
|
+
- kind: view
|
|
1330
|
+
viewName: "Untrusted Skills Alert"
|
|
1331
|
+
pos: { x: 7, y: 12, w: 5, h: 4 }
|
|
1332
|
+
|
|
1333
|
+
profileEntityBentoTemplates:
|
|
1334
|
+
agent:
|
|
1335
|
+
blocks:
|
|
1336
|
+
- id: entity-header
|
|
1337
|
+
kind: widget
|
|
1338
|
+
widgetType: entity-header
|
|
1339
|
+
pos: { x: 0, y: 0, w: 12, h: 2 }
|
|
1340
|
+
- id: entity-props
|
|
1341
|
+
kind: widget
|
|
1342
|
+
widgetType: entity-properties
|
|
1343
|
+
pos: { x: 0, y: 2, w: 4, h: 8 }
|
|
1344
|
+
- id: entity-content
|
|
1345
|
+
kind: widget
|
|
1346
|
+
widgetType: entity-content
|
|
1347
|
+
pos: { x: 4, y: 2, w: 8, h: 4 }
|
|
1348
|
+
- id: entity-rel
|
|
1349
|
+
kind: widget
|
|
1350
|
+
widgetType: entity-content
|
|
1351
|
+
pos: { x: 4, y: 6, w: 8, h: 4 }
|
|
1352
|
+
task:
|
|
1353
|
+
blocks:
|
|
1354
|
+
- id: entity-header
|
|
1355
|
+
kind: widget
|
|
1356
|
+
widgetType: entity-header
|
|
1357
|
+
pos: { x: 0, y: 0, w: 12, h: 2 }
|
|
1358
|
+
- id: entity-props
|
|
1359
|
+
kind: widget
|
|
1360
|
+
widgetType: entity-properties
|
|
1361
|
+
pos: { x: 0, y: 2, w: 4, h: 8 }
|
|
1362
|
+
- id: entity-content
|
|
1363
|
+
kind: widget
|
|
1364
|
+
widgetType: entity-content
|
|
1365
|
+
pos: { x: 4, y: 2, w: 8, h: 4 }
|
|
1366
|
+
- id: entity-rel
|
|
1367
|
+
kind: widget
|
|
1368
|
+
widgetType: entity-content
|
|
1369
|
+
pos: { x: 4, y: 6, w: 8, h: 4 }
|
|
1370
|
+
|
|
1371
|
+
layout:
|
|
1372
|
+
pinnedApps: [intelligence, dashboard, data]
|
|
1373
|
+
defaultView: agent-fleet
|
|
1374
|
+
defaultApp: null
|
|
1375
|
+
sidebarItems:
|
|
1376
|
+
- kind: profile
|
|
1377
|
+
profileSlug: agent
|
|
1378
|
+
label: "Agent Fleet"
|
|
1379
|
+
icon: bot
|
|
1380
|
+
- kind: profile
|
|
1381
|
+
profileSlug: task
|
|
1382
|
+
label: Tasks
|
|
1383
|
+
icon: check-square
|
|
1384
|
+
- kind: profile
|
|
1385
|
+
profileSlug: skill
|
|
1386
|
+
label: Skills
|
|
1387
|
+
icon: zap
|
|
1388
|
+
- kind: profile
|
|
1389
|
+
profileSlug: project
|
|
1390
|
+
label: Projects
|
|
1391
|
+
icon: folder
|
|
1392
|
+
- kind: profile
|
|
1393
|
+
profileSlug: provider
|
|
1394
|
+
label: Providers
|
|
1395
|
+
icon: database
|
|
1396
|
+
- kind: app
|
|
1397
|
+
appId: intelligence
|
|
1398
|
+
label: Intelligence
|
|
1399
|
+
|
|
1400
|
+
# App reference — Agent Fleet has no dedicated browser app; it lands on entity detail / views.
|
|
1401
|
+
app:
|
|
1402
|
+
kind: stored
|
|
1403
|
+
cellKey: entity-detail
|
|
1404
|
+
|
|
1405
|
+
integrations:
|
|
1406
|
+
- templateKey: agency-skills
|
|
1407
|
+
|
|
1408
|
+
playbooks:
|
|
1409
|
+
- name: "Agent Health Check"
|
|
1410
|
+
goalTemplate: "Check the health of all agents in the fleet, review recently failed tasks, and verify all provider keys are valid."
|
|
1411
|
+
- name: "Security Audit"
|
|
1412
|
+
goalTemplate: "Review the skill registry for any Untrusted or Review status skills. Check VirusTotal results and rotation dates of all provider keys."
|
|
1413
|
+
|
|
1414
|
+
onboarding:
|
|
1415
|
+
goal: "Capture the agent fleet the user runs — the agents themselves, the model providers behind them, the skills they carry, and the projects they work — so the workspace reflects their real AI operation."
|
|
1416
|
+
framing: "Act as a pragmatic AI ops lead. Tease out which agents are live, what models and providers power them, what each agent can do, and what work they're pointed at. Translate that into agents, providers, skills, and projects."
|
|
1417
|
+
collect:
|
|
1418
|
+
- profileSlug: agent
|
|
1419
|
+
what: "The agents they run and what powers each"
|
|
1420
|
+
cardinality: several
|
|
1421
|
+
keyFields: [title, agent-model, agent-provider, agent-status]
|
|
1422
|
+
- profileSlug: provider
|
|
1423
|
+
what: "The model providers behind those agents and their budgets"
|
|
1424
|
+
cardinality: few
|
|
1425
|
+
keyFields: [title, provider-type, provider-model, provider-budget-day]
|
|
1426
|
+
- profileSlug: skill
|
|
1427
|
+
what: "The skills/capabilities each agent carries and how trusted they are"
|
|
1428
|
+
cardinality: several
|
|
1429
|
+
keyFields: [title, skill-category, skill-trust, skill-source-url]
|
|
1430
|
+
openingQuestions:
|
|
1431
|
+
- "Which agents are you running right now, and what's each one for?"
|
|
1432
|
+
- "What models and providers power them, and are there budget limits?"
|
|
1433
|
+
- "What skills do your agents carry, and which projects are they pointed at?"
|
|
1434
|
+
doneWhen: "The live agents exist with their model/provider, the providers are captured with budgets, key skills are catalogued, and agents are linked to active projects."
|