@synap-core/workspace-templates 0.3.0 → 0.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/types.d.ts CHANGED
@@ -176,11 +176,33 @@ export interface TemplateOnboardingCollectTarget {
176
176
  /** Key fields the agent should make sure to fill. */
177
177
  keyFields?: string[];
178
178
  }
179
+ export interface TemplateOnboardingExpertise {
180
+ /**
181
+ * Concrete starting points the agent PROPOSES instead of asking blank —
182
+ * "most X do Y, want that as a starting point?". Grounds the agent's
183
+ * proposals in real domain knowledge (never fabricates strategy — for
184
+ * mission/positioning these FRAME, they don't invent the answer).
185
+ */
186
+ starters?: string[];
187
+ /**
188
+ * Blind spots founders in this domain commonly miss. The agent proactively
189
+ * surfaces these if the founder hasn't — catching what they don't say.
190
+ */
191
+ blindSpots?: string[];
192
+ /** What a GREAT result looks like here — the bar the agent pushes toward. */
193
+ bar?: string;
194
+ }
179
195
  export interface TemplateOnboarding {
180
196
  /** The outcome this onboarding achieves, in one sentence. */
181
197
  goal: string;
182
198
  /** Domain framing/voice the agent adopts for THIS workspace (the persona). */
183
199
  framing: string;
200
+ /**
201
+ * Authored domain expertise the agent leads with (optional). Turns the
202
+ * interview from "extract what the founder knows" into "resolve what they
203
+ * lack". See the `onboard` skill's "Lead with your expertise" step.
204
+ */
205
+ expertise?: TemplateOnboardingExpertise;
184
206
  /** What structured data to collect (entities to create + their key fields). */
185
207
  collect: TemplateOnboardingCollectTarget[];
186
208
  /** A few opening questions — the agent adapts from here, never rigid. */
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,18 +1,28 @@
1
1
  {
2
2
  "name": "@synap-core/workspace-templates",
3
- "version": "0.3.0",
3
+ "version": "0.5.0",
4
4
  "type": "module",
5
+ "packageManager": "pnpm@9.15.4",
5
6
  "description": "Canonical workspace definitions — YAML source + typed exports for browser, backend, CLI, and marketplace",
6
7
  "exports": {
7
8
  ".": {
8
- "types": "./dist/index.d.ts",
9
- "default": "./dist/index.js"
9
+ "types": "./src/index.ts",
10
+ "node": "./dist/index.js",
11
+ "default": "./src/index.ts"
10
12
  }
11
13
  },
12
14
  "files": [
13
15
  "dist",
14
16
  "src"
15
17
  ],
18
+ "scripts": {
19
+ "type-check": "tsc --noEmit",
20
+ "build:yaml": "node build.mjs",
21
+ "build": "node build.mjs && tsc -p tsconfig.build.json",
22
+ "provision": "node scripts/provision.mjs",
23
+ "eval": "node scripts/eval-standard.mjs",
24
+ "prepublishOnly": "node build.mjs && tsc -p tsconfig.build.json"
25
+ },
16
26
  "dependencies": {
17
27
  "zod": "^3.0.0",
18
28
  "js-yaml": "^4.1.0"
@@ -24,16 +34,15 @@
24
34
  },
25
35
  "publishConfig": {
26
36
  "registry": "https://registry.npmjs.org",
27
- "access": "public"
28
- },
29
- "scripts": {
30
- "type-check": "tsc --noEmit",
31
- "build:yaml": "node build.mjs",
32
- "build": "node build.mjs && tsc -p tsconfig.build.json",
33
- "provision": "node scripts/provision.mjs",
34
- "eval": "node scripts/eval-standard.mjs"
35
- },
36
- "main": "./dist/index.js",
37
- "module": "./dist/index.js",
38
- "types": "./dist/index.d.ts"
39
- }
37
+ "access": "public",
38
+ "main": "./dist/index.js",
39
+ "module": "./dist/index.js",
40
+ "types": "./dist/index.d.ts",
41
+ "exports": {
42
+ ".": {
43
+ "types": "./dist/index.d.ts",
44
+ "default": "./dist/index.js"
45
+ }
46
+ }
47
+ }
48
+ }
@@ -971,7 +971,7 @@ profileEntityBentoTemplates:
971
971
  pos: { x: 4, y: 6, w: 8, h: 4 }
972
972
 
973
973
  layout:
974
- pinnedApps: [intelligence, dashboard, data]
974
+ pinnedApps: [chat, dashboard, data]
975
975
  defaultView: agent-fleet
976
976
  defaultApp: null
977
977
  sidebarItems:
@@ -996,7 +996,7 @@ layout:
996
996
  label: Providers
997
997
  icon: database
998
998
  - kind: app
999
- appId: intelligence
999
+ appId: chat
1000
1000
  label: Intelligence
1001
1001
 
1002
1002
  # App reference — Agent Fleet has no dedicated browser app; it lands on entity detail / views.
@@ -1016,6 +1016,44 @@ playbooks:
1016
1016
  onboarding:
1017
1017
  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."
1018
1018
  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."
1019
+ expertise:
1020
+ starters:
1021
+ - >
1022
+ For every live agent, pin down the trio that actually matters: model, provider, and daily
1023
+ budget ceiling. "I have an agent" is not an entity — "a Coder agent on Claude via OpenRouter,
1024
+ capped at $5/day" is. Lead by capturing that trio for the one agent running most, then fan
1025
+ out. An agent with no budget number is an uncapped spend waiting to happen.
1026
+ - >
1027
+ Capture each provider as its own entity with cost-per-token AND key health, not just a name.
1028
+ Propose logging the provider behind your busiest agent first, with its input/output token
1029
+ cost and when the key expires — because the two ways a fleet dies are a blown budget and an
1030
+ expired key, and both live on the provider, not the agent.
1031
+ - >
1032
+ Scope each agent to ONE role and catalogue the specific skills it carries, with a trust
1033
+ level on each. Lead with "what is this agent FOR, and what exactly can it do?" A named,
1034
+ scoped agent with three trusted skills beats one vague "assistant" agent that can supposedly
1035
+ do everything.
1036
+ blindSpots:
1037
+ - >
1038
+ Untracked spend is the fleet-killer. Agents burn tokens silently — a runaway loop, a retry
1039
+ storm, a context window nobody trimmed — and the first signal is the invoice. Surface daily
1040
+ budget ceilings and weekly actual spend per provider proactively; the CFO view (which work
1041
+ is burning budget) is the one nobody builds until it's too late.
1042
+ - >
1043
+ The "one agent for everything" anti-pattern feels efficient and is the opposite. A single
1044
+ generalist agent with every skill and every key is un-auditable, un-scopeable, and a fat
1045
+ blast radius when a skill goes rogue. Push toward scoped agents — Coder, Researcher, Ops —
1046
+ each with only the skills and provider budget its job needs.
1047
+ - >
1048
+ Single-provider risk hides until the provider has an outage or rate-limits you mid-run.
1049
+ Teams wire every agent to one provider and have no fallback, so one 429 halts the whole
1050
+ fleet. Capture provider fallback intent (primary + backup) so a single vendor's bad day
1051
+ isn't your whole operation's bad day.
1052
+ bar: >
1053
+ A great result is a fleet you can run like an operation, not a pile of daemons: every live
1054
+ agent has a model, a provider, a budget, and a scoped set of trusted skills; every provider
1055
+ shows its cost, key health, and spend-against-budget; and you can answer "which agent is
1056
+ burning the most, on whose key, and what happens if that provider goes down?" in one glance.
1019
1057
  collect:
1020
1058
  - profileSlug: agent
1021
1059
  what: "The agents they run and what powers each"
@@ -518,6 +518,43 @@ onboarding:
518
518
  colors, type), and the non-negotiable rules. Translate fuzzy vibes into
519
519
  concrete voice guides and rules. Reference the Foundation (mission, audience,
520
520
  positioning) so the brand expresses the strategy, never contradicts it.
521
+ expertise:
522
+ starters:
523
+ - >
524
+ Adjectives don't define a voice — "friendly, bold, human" describes every
525
+ brand and constrains none. Propose voice as a small set of DO / DON'T pairs
526
+ instead ("say 'you', not 'users'"; "short declaratives, never hedged
527
+ qualifiers"). Pairs are testable; adjectives are decoration.
528
+ - >
529
+ A voice guide is only real if it survives a sentence test. Take one actual
530
+ line from their site or a competitor's and rewrite it in the proposed voice
531
+ on the spot — if the rewrite looks identical to the original, the voice isn't
532
+ differentiated yet. Push until the two versions are visibly different.
533
+ - >
534
+ Build the palette around ROLES, not just favorite colors. Pin the semantic
535
+ roles first — primary, surface, text, and one restrained accent — and make
536
+ the accent earn its keep. Most brands leak trust by using three "brand
537
+ colors" as accents; propose one hero accent and demote the rest to support.
538
+ blindSpots:
539
+ - >
540
+ "Brand = logo" is the classic trap. The logo is the least-used, most-argued
541
+ asset; the voice, the color roles, and the do/don't rules drive 90% of what
542
+ anyone actually ships. If they lead with the logo, redirect to how the brand
543
+ SOUNDS and behaves in a paragraph of copy.
544
+ - >
545
+ Rules with no severity are ignored. A pile of equally-weighted "guidelines"
546
+ gives an AI or a teammate nothing to obey — mark each as mandatory,
547
+ important, or guideline so the non-negotiables (clearspace, accessibility
548
+ contrast, forbidden words) actually hold under pressure.
549
+ - >
550
+ Color contrast is a silent brand-killer: a beautiful palette that fails WCAG
551
+ AA on text is off-brand the moment it's inaccessible. If they've picked
552
+ colors without checking text-on-surface contrast, flag it before it's
553
+ codified into tokens.
554
+ bar: >
555
+ A stranger handed the voice pairs, the color roles, and the rules could write a
556
+ new paragraph and pick a button color that both read unmistakably as THIS brand —
557
+ and every rule is testable on a real sentence or a real screen, not a vibe.
521
558
  collect:
522
559
  - profileSlug: brand-identity
523
560
  what: The core brand identity — name, essence, and how it presents itself.
@@ -548,7 +585,7 @@ app:
548
585
  title: Brand Library
549
586
 
550
587
  layout:
551
- pinnedApps: [data, whiteboard, brandLibrary]
588
+ pinnedApps: [data, files, brandLibrary]
552
589
  defaultView: Brand Command Center
553
590
  defaultApp: brandLibrary
554
591
  sidebarItems:
package/src/builder.yaml CHANGED
@@ -1266,6 +1266,42 @@ onboarding:
1266
1266
  lives (repos + local paths), what runs behind each app, where it deploys, and what's on
1267
1267
  the bench right now. Prefer concrete over aspirational — a repo URL beats a wish. Tie the
1268
1268
  roadmap back to the Foundation's mission and audiences: the surface exists to serve them.
1269
+ expertise:
1270
+ starters:
1271
+ - >
1272
+ Don't ask "what do you want to build?" — ask what's already running. Propose starting from
1273
+ the ONE app that's live today, its primary deploy target, and the single feature in flight
1274
+ right now. One real node with a repo URL beats ten aspirational ones. The map grows from
1275
+ what exists, not from the org chart you wish you had.
1276
+ - >
1277
+ For each app, capture the deploy path end to end: repo → branch that auto-deploys → target
1278
+ (Vercel/Coolify/bare VPS) → the URL it lands on. A node that says "app" but can't answer
1279
+ "how does a commit reach production?" is a label, not a map.
1280
+ - >
1281
+ Lead with the in-flight work as first-class entities, not a backlog dump. Take the feature
1282
+ being coded this week, give it a status and an acceptance criterion, and link it to its app.
1283
+ That single live thread is what makes the workspace a command center instead of a wiki.
1284
+ blindSpots:
1285
+ - >
1286
+ The map is worthless the moment it drifts from reality. Founders capture the IDEAL
1287
+ architecture (the clean diagram) instead of the system AS IT IS — the hacky cron, the
1288
+ service everyone forgot owns auth, the package no one dares upgrade. Capture the mess;
1289
+ the mess is where the incidents come from.
1290
+ - >
1291
+ "We'll document it later" is how tribal knowledge dies. The one engineer who knows why
1292
+ service X can't be restarted during a deploy leaves, and it becomes a 2am incident. Capture
1293
+ the non-obvious operational facts (decision records, gotchas) NOW, while someone still
1294
+ remembers the why — not after the outage.
1295
+ - >
1296
+ Packages and their dependency edges are the silent killer. Founders track apps but not the
1297
+ shared substrate underneath — so a "small" bump to a core package breaks three apps nobody
1298
+ connected to it. Capture what depends on what; the blast radius lives in the edges, not the
1299
+ nodes.
1300
+ bar: >
1301
+ A great result is a graph you can navigate in any direction to answer a real operational
1302
+ question — "if I bump this package, what breaks?", "how does a commit reach prod for app X?",
1303
+ "what's actually in flight and who's on it?" — and every answer matches what's true in the
1304
+ terminal right now, not what was true at kickoff.
1269
1305
  collect:
1270
1306
  - profileSlug: devplane_app
1271
1307
  what: The apps that are shipped or actively being built — with where their code lives and what stack they run on.
@@ -1009,6 +1009,37 @@ playbooks: []
1009
1009
  onboarding:
1010
1010
  goal: "Capture the user's brand voice, audience, content pillars, and publishing rhythm across channels — so the workspace reflects how they actually create and distribute content, not a generic calendar."
1011
1011
  framing: "Act as a seasoned content strategist. Tease out their voice and positioning, who they're talking to, the recurring themes they own, the channels they publish on, and how often. Translate that into pillars, platforms, and a seeded content calendar."
1012
+ expertise:
1013
+ starters:
1014
+ - >
1015
+ Most creators over-index on one format and burn out. Propose 3–4 pillars
1016
+ that mix TEACH (how it works), PROVE (customer/results), and PROVOKE
1017
+ (point of view) — then adapt the mix to their niche. Don't ask for pillars
1018
+ from a blank slate; offer a starting set and let them react.
1019
+ - >
1020
+ Better to own ONE channel consistently than be thin on four. If they list
1021
+ many platforms, propose a primary channel + a cadence they can actually
1022
+ sustain, and treat the rest as repurposing targets, not separate efforts.
1023
+ - >
1024
+ Every pillar should ladder to a business goal — awareness, trust, or
1025
+ conversion. If a pillar is just "stuff we post", propose the job it should
1026
+ do and tie it to a specific audience segment.
1027
+ blindSpots:
1028
+ - >
1029
+ Distribution is the silent killer — great content nobody sees. If they
1030
+ haven't said HOW each piece gets discovered (SEO, a platform's algorithm,
1031
+ an email list, founder-led amplification), raise it before moving on.
1032
+ - >
1033
+ No repurposing plan = 5× the work for 1× the reach. If they treat each
1034
+ post as one-and-done, propose a chain: one deep piece → clips → posts →
1035
+ newsletter.
1036
+ - >
1037
+ Pillars with no audience attached reach no one. Tie each pillar to a
1038
+ specific segment — "content for everyone" is content for nobody.
1039
+ bar: >
1040
+ The pillars + primary platform + cadence read like a system a small team
1041
+ could actually run for 3 months without burning out — where every pillar has
1042
+ a clear audience, a clear job, and a way to get discovered.
1012
1043
  collect:
1013
1044
  - profileSlug: pillar
1014
1045
  what: "Their recurring content themes / brand voice — the lenses their audience knows them for, and who each speaks to"
@@ -298,6 +298,44 @@ onboarding:
298
298
  and series they actually run, not one-off ideas. Pull voice and visual identity
299
299
  from Brand and target audience from Foundation so every piece lands on-brand.
300
300
  Be concrete about specs; a fuzzy "we make videos" helps no one.
301
+ expertise:
302
+ starters:
303
+ - >
304
+ Produce in BATCHES, not one-at-a-time. Setup — lighting, wardrobe, template
305
+ loading, brand assets — is the real cost; shooting or composing five pieces
306
+ in one session amortizes it. Propose a batch cadence (e.g. one shoot day →
307
+ a month of cuts) rather than a per-video pipeline.
308
+ - >
309
+ The hook is 80% of the view. On a 9:16 feed the first 1–2 seconds decide
310
+ whether the piece is watched at all, so it's worth more iteration than the
311
+ rest combined. Propose a template whose title card / cold-open IS the hook,
312
+ and treat the hook as its own reusable asset.
313
+ - >
314
+ Design every shoot for REPURPOSING before you roll. One long-form capture
315
+ should yield the long cut, several vertical clips, and stills — but only if
316
+ it's framed and shot with those crops in mind. Propose the repurpose chain
317
+ up front so the raw footage is cut-once, use-many.
318
+ blindSpots:
319
+ - >
320
+ The velocity-vs-quality tradeoff is a real dial, not a failing — a weekly
321
+ show that's "good enough and on time" beats a cinematic piece that ships
322
+ quarterly. If they're chasing polish on a high-cadence line, name the
323
+ tradeoff and propose a quality bar that survives the schedule.
324
+ - >
325
+ No reusable templates = every video rebuilt from scratch, and brand drift
326
+ creeps in. If they're producing on a cadence but have no locked
327
+ intros/outros/lower-thirds, that's the gap — templates are what make output
328
+ both fast AND on-brand. Surface it.
329
+ - >
330
+ Aspect ratio and platform are a production decision, not an export
331
+ afterthought. Shooting 16:9 and cropping to 9:16 later loses the frame and
332
+ the hook. If a pipeline's platform doesn't match how it's actually shot,
333
+ flag the mismatch before it's baked into every render.
334
+ bar: >
335
+ The studio reads like a production LINE: recurring shows with locked specs,
336
+ reusable templates that carry brand into every render, and asset sources feeding
337
+ a batch-then-repurpose flow — so a producer could ship the next episode this week
338
+ without reinventing the format or fighting brand drift.
301
339
  collect:
302
340
  - profileSlug: content-pipeline
303
341
  what: The recurring productions you run — the shows, series, or content lines that generate output on a cadence (e.g. weekly reels, product demos, explainer drops).
package/src/crm.yaml CHANGED
@@ -581,6 +581,7 @@ profiles:
581
581
  valueType: string
582
582
  inputType: select
583
583
  enumValues:
584
+ - prospect
584
585
  - active
585
586
  - paused
586
587
  - churned
@@ -620,6 +621,65 @@ profiles:
620
621
  - healthy
621
622
  - at_risk
622
623
  - critical
624
+ - slug: partner
625
+ displayName: Partner
626
+ icon: handshake
627
+ color: teal
628
+ description: A partner relationship — both a referral source and a co-delivery collaborator, distinguished by partner type.
629
+ properties:
630
+ - slug: partnerStatus
631
+ label: Status
632
+ valueType: string
633
+ inputType: select
634
+ enumValues:
635
+ - prospect
636
+ - active
637
+ - paused
638
+ - churned
639
+ - slug: partnerType
640
+ label: Partner Type
641
+ valueType: string
642
+ inputType: select
643
+ enumValues:
644
+ - referral
645
+ - co-delivery
646
+ - both
647
+ - slug: accountManager
648
+ label: Account Manager
649
+ valueType: string
650
+ inputType: text
651
+ - slug: engagementStartDate
652
+ label: Engagement Start
653
+ valueType: date
654
+ inputType: date
655
+ - slug: satisfactionScore
656
+ label: Satisfaction
657
+ valueType: number
658
+ inputType: number
659
+ - slug: lifetimeValue
660
+ label: Lifetime Value
661
+ valueType: number
662
+ inputType: number
663
+ - slug: notes
664
+ label: Notes
665
+ valueType: string
666
+ inputType: textarea
667
+ - slug: contractValue
668
+ label: Contract Value
669
+ valueType: number
670
+ inputType: number
671
+ - slug: renewalDate
672
+ label: Renewal Date
673
+ valueType: date
674
+ inputType: date
675
+ - slug: healthScore
676
+ label: Health
677
+ valueType: string
678
+ inputType: select
679
+ enumValues:
680
+ - healthy
681
+ - at_risk
682
+ - critical
623
683
  - slug: contact
624
684
  displayName: Contact
625
685
  icon: user
@@ -1555,6 +1615,21 @@ entityLinks:
1555
1615
  - sourceProfileSlug: deal
1556
1616
  targetProfileSlug: pipeline
1557
1617
  type: belongs_to
1618
+ - sourceProfileSlug: client
1619
+ targetProfileSlug: company
1620
+ type: belongs_to
1621
+ - sourceProfileSlug: client
1622
+ targetProfileSlug: contact
1623
+ type: primary_contact
1624
+ - sourceProfileSlug: partner
1625
+ targetProfileSlug: company
1626
+ type: works_with
1627
+ - sourceProfileSlug: partner
1628
+ targetProfileSlug: contact
1629
+ type: primary_contact
1630
+ - sourceProfileSlug: partner
1631
+ targetProfileSlug: client
1632
+ type: refers
1558
1633
  displayTemplates:
1559
1634
  - name: Deal Card
1560
1635
  description: Sales deal with pipeline stage, value, probability, and linked company
@@ -2145,6 +2220,45 @@ integrations:
2145
2220
  onboarding:
2146
2221
  goal: Capture the user's sales pipeline shape, their key accounts/contacts, and how they qualify and move deals — so the CRM reflects their real revenue motion, not a generic template.
2147
2222
  framing: "Act as a sharp revenue/sales-ops lead. Tease out how they actually sell: who they sell to, what stages a deal moves through, where leads come from, and what 'qualified' means to them. Translate their words into pipeline config, companies, contacts, and deals."
2223
+ expertise:
2224
+ starters:
2225
+ - >
2226
+ Don't ask for stages on a blank slate — infer the motion first and propose
2227
+ a default pipeline for it. PLG: Signup → Activated → PQL → Expansion.
2228
+ Sales-led: Discovery → Qualified → Demo → Proposal → Negotiation → Closed.
2229
+ Agency/retainer: Lead → Scoping → Proposal → Won → Delivery. Offer the one
2230
+ that fits and let them cut stages, rather than starting from nothing.
2231
+ - >
2232
+ Define every stage by a BUYER action, not a seller activity — "Demo booked"
2233
+ or "Security review passed", not "Following up" or "Sent email". Seller-verb
2234
+ stages are why pipelines rot: they describe effort, not progress. If they
2235
+ name an activity stage, reflect it back as the buyer commitment it's meant
2236
+ to prove.
2237
+ - >
2238
+ Anchor qualification to a named framework, don't leave "qualified" as a
2239
+ feeling. Propose BANT for transactional deals or MEDDIC for enterprise, then
2240
+ make the exit criteria out of it — e.g. a deal can't leave Qualified without
2241
+ a known budget, an identified economic buyer, and a compelling event.
2242
+ blindSpots:
2243
+ - >
2244
+ The "everything is 'in progress'" pipeline. If most deals sit in middle
2245
+ stages with no close date or next step, that's not a pipeline, it's a
2246
+ graveyard — hygiene has collapsed. Push for a next step + a date on every
2247
+ open deal, and be willing to mark the dead ones lost.
2248
+ - >
2249
+ A stage with no exit criteria is a wish, not a stage. If they can't tell you
2250
+ the ONE thing that must be true to advance a deal, the stage is theater.
2251
+ Force a crisp gate for each — what the buyer must have done to move forward.
2252
+ - >
2253
+ Founders track deal value but not the two numbers that actually predict
2254
+ revenue: win rate by stage and average sales-cycle length. Without them you
2255
+ can't forecast or spot where deals stall. Surface both early even if the
2256
+ first answer is a rough guess.
2257
+ bar: >
2258
+ The pipeline stages mirror how a buyer actually commits (not how the rep works
2259
+ their day), each stage has a one-line exit gate, "qualified" maps to a real
2260
+ framework, and every live deal on the board has an owner, a value, a next step,
2261
+ and a close date — so a glance at the board tells the truth about revenue.
2148
2262
  collect:
2149
2263
  - profileSlug: pipeline
2150
2264
  what: Their real deal stages in order (e.g. Lead → Qualified → Demo → Proposal → Won/Lost)
@@ -888,6 +888,43 @@ bento:
888
888
  onboarding:
889
889
  goal: "Capture the user's infrastructure surface — the services they run, the repositories behind them, their environments, the vendors they depend on, and their credentials inventory — so the command center reflects their real stack."
890
890
  framing: "Act as a staff platform engineer doing an infra walkthrough. Tease out what's running in production, where the code lives, how environments are laid out, which third parties they depend on, and what secrets need tracking. Translate that into services, repositories, environments, vendors, and credentials."
891
+ expertise:
892
+ starters:
893
+ - >
894
+ Start from what's serving live traffic RIGHT NOW, not the architecture diagram. Walk the
895
+ request path: what does a user hit first, and what does that call, and what does THAT call?
896
+ Capture each hop as a service with its host and health-check URL. The production edge is the
897
+ map's anchor; everything else hangs off it.
898
+ - >
899
+ For every third party, capture the cost AND who owns the account. Propose logging each
900
+ vendor with its pricing model and monthly spend the moment you name it — the €12/mo that
901
+ became €400/mo is always a vendor nobody was watching. An untracked line item is a future
902
+ surprise on the card.
903
+ - >
904
+ Inventory credentials by their EXPIRY, not their existence. For each secret, capture where
905
+ it's stored (vault ref), what it unlocks, and when it expires or was last rotated. The
906
+ credential nobody wrote down is the one that expires at 3am and takes prod with it.
907
+ blindSpots:
908
+ - >
909
+ The untracked credential is the classic infra time-bomb: the SSH key on one laptop, the API
910
+ token in someone's .env, the cert that auto-renewed until it didn't. Teams track services
911
+ obsessively and secrets not at all — surface expiry dates and rotation policy proactively,
912
+ because the outage is silent until the exact moment it isn't.
913
+ - >
914
+ Vendor cost creep has no owner. Each SaaS was signed up "just to try," and now the monthly
915
+ bill is a mystery no single person can explain line by line. Force a monthly-cost number and
916
+ an owner on every vendor — the sum is almost always higher than anyone guessed.
917
+ - >
918
+ "Works on my machine" is environment drift, and it hides until deploy day. Staging runs a
919
+ different Node, prod has an env var dev doesn't, the migration ran here but not there. Map
920
+ each environment EXPLICITLY with its branch and base URL so the deltas between prod, staging,
921
+ and dev are visible instead of discovered during an incident.
922
+ bar: >
923
+ A great result is a command center where you can answer, without SSHing anywhere: what's
924
+ serving traffic and is it healthy, which credential expires next and who rotates it, what each
925
+ vendor costs and who owns it, and exactly how prod differs from staging. The value is in the
926
+ facts nobody keeps in one place — expiry dates, cost owners, environment deltas — surfaced
927
+ before they become incidents.
891
928
  collect:
892
929
  - profileSlug: service
893
930
  what: "The services / apps they run and their stack"
package/src/finance.yaml CHANGED
@@ -362,6 +362,45 @@ onboarding:
362
362
  leaves. Push for real numbers over estimates, flag anything that doesn't add
363
363
  up, and tie revenue back to the company's positioning and pricing (from
364
364
  Foundation) so the model is grounded in strategy, not spreadsheets.
365
+ expertise:
366
+ starters:
367
+ - >
368
+ Don't reconstruct a full P&L on day one — default the model to the three
369
+ numbers that keep a startup alive: cash in bank, monthly net burn, and
370
+ runway (cash ÷ burn, in months). Propose those first and layer detail later;
371
+ a founder who knows their runway to the month is ahead of one with a
372
+ beautiful chart of accounts.
373
+ - >
374
+ Add a small set of unit economics, not a whole finance stack: gross margin,
375
+ CAC, and LTV (or at minimum LTV:CAC ratio). Propose sensible defaults —
376
+ payback under ~12 months, LTV:CAC above ~3:1 — as reference points to react
377
+ to, rather than asking them to define metrics from scratch.
378
+ - >
379
+ Model cash on a timing basis, not an accrual one. When they give you revenue,
380
+ ask when the cash actually LANDS — Net-30/60 invoices, annual prepay,
381
+ Stripe payout lag — and capture that gap explicitly, because a profitable
382
+ month can still run the account dry.
383
+ blindSpots:
384
+ - >
385
+ Revenue ≠ cash. Founders book an annual contract and feel rich, but the cash
386
+ arrives monthly or after Net-60 — meanwhile payroll is due Friday. If they
387
+ conflate the two, separate signed bookings from collected cash before
388
+ computing anything.
389
+ - >
390
+ Runway is THE number that predicts survival, and it's the one most often
391
+ stale. If there's no current runway figure — or it hasn't been recomputed
392
+ since the last big hire or price change — that's the first gap to close.
393
+ Everything else is secondary to "how many months of oxygen is left".
394
+ - >
395
+ Bookings, revenue, and cash are three different numbers and founders routinely
396
+ merge them. A signed deal (booking), revenue recognized over its term, and
397
+ the money in the account are rarely equal in any given month. Name which one
398
+ each figure is, or the whole model lies.
399
+ bar: >
400
+ A stranger could open the workspace and answer three questions in ten seconds:
401
+ how much cash is in the bank, how much it burns a month, and how many months of
402
+ runway that leaves — with revenue captured on a cash-timing basis, bookings kept
403
+ distinct from collected cash, and at least a rough gross margin and LTV:CAC in view.
365
404
  collect:
366
405
  - profileSlug: account
367
406
  what: The bank and credit accounts holding company cash, with current balances.
@@ -392,7 +431,7 @@ app:
392
431
  layout:
393
432
  defaultView: Invoices
394
433
  defaultApp: null
395
- pinnedApps: [dashboard, data, intelligence]
434
+ pinnedApps: [dashboard, data, chat]
396
435
  sidebarItems:
397
436
  - kind: view
398
437
  viewName: Runway & Metrics