how it's built*
The architecture context every other tab assumes. Seven building block types, one shared shell, one universal floor. The vault mirrors this structure: where the product has a Capability Module, the vault has a Box or Acid folder. Understanding this makes everything else legible.
Every product is an Application sharing a common shell library and universal floor. The shell, floor, and services are shared. Only the module set differs. Building product two is not twice the work of product one.
Every component in Cloudworkz OS belongs to exactly one type. The type determines where it lives in the monorepo, how it deploys, what it can import, and what its vault counterpart is.
unlock cloudworkz-internal future client appspackages/. Bug fixes ship as version bumps — no copies to drift. The shell library is the most important Library in the system.packages/ in monorepo — never deployed independently@cloudworkz/app-shell @cloudworkz/agent-shell @cloudworkz/uipackages/modules/{module-name}/services/agents/{agent-name}/a-mtgsynth a-doc-control a-friday-prep a-cost-trackerservices/{service-name}/ — own deploymentservices/mcp/{server-name}/mcp-cloudworkz-os mcp-whoami mcp-brainpackages/adapters/{adapter-name}/agent system*
What an agent is at Cloudworkz, the eleven components every agent declares, the build pipeline that replaces the manual workflow, how agents are built and run, and the first goal: the mini CLOUDZ interface. Adapted from Werner's Agent explainer and extended with the 2026-06-05 product-session decisions. This explainer is canonical: if our agent design conflicts with what is written here, the explainer wins or we update it.
An agent at Cloudworkz is a bounded process: it takes a defined input artefact, loops with an LLM and tools until a defined done-criterion is met, and hands a defined output artefact to the next step, all under explicit guardrails, with deliberate human checkpoints where judgement matters.
Three things follow. An agent is a loop, not a single inference. Every agent has a defined shape: input artefact in, output artefact out, with explicit scope. And humans are not an afterthought; checkpoints sit deliberately at the steps where judgement matters more than throughput.
Every agent declares the same eleven components. They are how we describe an agent, debug it, and judge whether it is world-class or mediocre.
| # | Component | What it is |
|---|---|---|
| 1 | The loop | The engine. Model reasons, emits a tool call or final answer, the runtime executes the tool, the result feeds back, the model reasons again. A stateful iteration, not a single inference. |
| 2 | The model call | The LLM doing the reasoning. One choice per agent (Sonnet or Haiku, per cost tier), set in config, not improvised. |
| 3 | The system prompt | The role the model plays, what is allowed, what good output looks like. Long-lived; it does not change per run. |
| 4 | The task brief | The specific input for this run, the artefact handed in by the previous step. It has a schema: what fields, what shape, what is required. |
| 5 | Tools | What the model can call (file read/write, GitHub API, web fetch, sub-agent invocation, tracker update). Explicitly allowlisted, never "everything available." |
| 6 | Context | What the model sees each turn: system prompt + task brief + this run's history + curated background (relevant ADRs, related files). Curated, not stuffed. |
| 7 | Done condition | What terminates the loop. Strong done-conditions are observable ("tests pass", "output matches schema", "human approves"). Weak ones let it lie to itself. |
| 8 | Guardrails | Cost budget per run, step budget per run, tool allowlist, output schema. Hard limits set at the agent-shell level with per-agent overrides. |
| 9 | Memory | Working memory within a run is automatic (the conversation). Persistent memory across runs is rare and usually wrong: the artefact in the tracker is the memory. |
| 10 | Observability | Transcripts, cost meters, intermediate state. Without these you cannot debug, audit, or watch. Provided by the agent-shell; every agent gets it for free. |
| 11 | Escalation paths | What it does when stuck (call a human, call another agent, abort). Defined upfront, not improvised. This is the human-checkpoint mechanism. |
@cloudworkz/agent-shell library. If we are writing new loops or LLM-calling code per agent, something is wrong.The agent team replaces the cycle Werner runs by hand today: a problem surfaces, gets sharpened into a spec, an ADR is drafted if architectural, a brief is written, a build happens, tests run, the PR is reviewed and merged, the tracker is updated. The manual workflow is the spec for the agents. Fourteen agents sit in the linear flow (four conditional), with three cross-cutting agents and three supporting services. Human checkpoints (★) are blocking sign-offs.
| # | Linear agent | Input → output (★ = checkpoint) |
|---|---|---|
| 1 | a-problem-clarifier | Vague problem → sharpened problem. Originator confirms. |
| 2 | a-spec-writer | Sharpened problem → Build Spec (BS card). ★ Werner sign-off. |
| 3 | a-adr-detector | Spec → decision on whether an ADR is needed. Always runs; escalates on uncertainty. |
| 4 | a-adr-drafter cond. | Spec + architectural context → ADR draft. ★ Werner sign-off always. |
| 5 | a-ux-mockup cond. | Spec + component library → SVG/HTML/code-prototype mockup. ★ Werner + Tom before code. |
| 6 | a-brief-writer | Spec + ADRs + mockup → builder brief (the kind handed to Claude Code/Roy today). |
| 7 | a-env-setup cond. | Brief + component catalogue → environment-ready. Auto-provisions what it can; human steps for what it cannot. Pauses until ready. |
| 8 | a-builder | Brief → branch + PR. Claude Code, invoked headlessly. Already the engine we want. |
| 9 | a-test-writer | Spec + PR diff → tests. Separate from the builder to reduce "tests that pass for this code" bias. |
| 10 | a-test-runner | Runs tests, parses output, classifies pass/fail. Mostly automation, thin LLM use. |
| 11 | a-bug-triager cond. | Failing tests → classification (real bug / flake / spec mismatch) + routing upstream. |
| 12 | a-pr-reviewer | PR + spec + ADRs → findings (changes requested / approved / concerns). ★ Werner approves. |
| 13 | a-merge-gatekeeper | All-gates-passed PR → merged. Enforces gate state. Some auto-merge; some need Werner. |
| 14 | a-tracker-curator | Merged code + PR description → tracker updates + follow-ups + learnings captured. |
At the technical level an agent is a program that loops with an LLM:
state = { messages: [systemPrompt, taskBrief] }
while not done(state):
response = LLM.call(state.messages, tools=allowlist)
if response.is_tool_call:
result = execute_tool(response.tool, response.args)
state.messages.append(response, result)
else:
state.final = response; break
if cost > budget or steps > limit: escalate(); break
return state.final
The runtime is whatever program hosts this loop and provides the LLM connection and the tools. Three runtimes, increasing in production-readiness:
| Runtime | Shape | Good for |
|---|---|---|
| R1 — Cowork | User prompt triggers; Cowork holds the loop; tools are file ops, connectors, skills; LLM is Claude. | Prototyping, human-driven runs. Weak for scheduled/event work. |
| R2 — Claude Code (CLI) | A developer process; tools are file ops, bash, MCPs; LLM is Claude. | What a-builder uses. Already a working builder. |
| R3 — Custom service | Node/Python service in the monorepo importing @cloudworkz/agent-shell, calling the Anthropic API directly. Event / queue / schedule / HTTP triggered. | The production target. |
The commitment is R3 for production. The pipeline-engine knows the pipeline shape and invokes the right agent at the right time; the agent-shell provides everything universal (loop, model call, tool execution, cost tracking, transcripts, escalation routing). Each agent is a thin config + prompts + tool list on top. Sequencing: prototype in Cowork or Claude Code, prove the prompt/tools/contracts, then migrate the config to a monorepo service. Cheapest to start with: a-spec-writer and a-tracker-curator.
| Tech stack catalogue Agents/Tech_Stack_Catalogue/ | One file per technology (what it is, why chosen, approved use cases, gotchas). An agent needing something outside the stack produces a tech-stack delta proposal; Werner reviews; the catalogue updates or the agent finds another way. |
| Component catalogue Agents/Component_Catalogue/ | One file per registered component (what it does, public interface, configuration, dependencies, environment requirements). Lets the pipeline assemble apps from existing parts, not just build new modules. |
| Gold standards Agents/Gold_Standards/ | A canonical example of each agent's output (gold BS, ADR, mockup, builder brief, PR description, PR review, tracker entry, UX-conformance review). Few-shot example + validation template + calibration target. Built alongside the first real run of each agent. |
| Observability Agents/Runs/<wo-id>/transcripts/ | The factory floor: one Build Spec = one work order; each agent = a station. Real-time view shows active station, queue, cumulative cost, blocks, completed artefacts, anomalies; historical view holds transcripts for troubleshooting, cost attribution, reproducibility. Event schema locked early. Credentials never enter transcripts; customer data redacted by default. |
The architecture is enforced by what is in the agent's context plus how its system prompt constrains it. Four mechanisms keep agents aligned: curated context (a-context-curator injects the relevant ADRs and architecture), constrained system prompts ("align with signed ADRs; if you see a conflict, flag it, do not override"), the conflict detector as a handoff safety net, and human sign-off on high-stakes work (Werner approves every ADR; no machine-generated architecture lands unreviewed).
vault structure*
The working-substrate hierarchy: Tenant → Box layer → Acid layer → Document → Atom. What each layer IS, what its test is, how working/locked/archive applies, and what documents live where. This is the canonical authoring and knowledge model — the vault's implementation of the product architecture.
Every Box and Acid folder follows the same three-layer discipline. This is the propose-then-apply bridge between human authoring and canonical content.
Four boxes per tenant. Each answers a different question. Acid reads Box via wikilink — Brand-Box never copies into Acid. The moment a Brain-Box document acquires a committed number, a new Biz-Box document is created — the Brain-Box origin stays.
Five Acid folders per tenant. Each is the production counterpart to the Box strategy it executes. Acid reads Box via wikilink. Acid produces outputs and routes them to their destination — Acid never retains finished outputs.
Every file in the vault is a Doc. The type determines where it lives, what frontmatter it carries, and what consumes it. Every canonical (locked) doc carries universal frontmatter.
type: acu | rendering | persona | script | strategy | decision...
id: globally-unique-kebab-slug
status: LOCKED | APPROVED | PROHIBITED | PENDING
tenant_id: unlock | cloudworkz | euk | parent
version: 1 (increments on supersession)
is_current: true
superseded_by: null (or id of successor)
decision_id: links to authorising decision record
owner: tom-king
lifecycle_stage: concept | drafted | ratified | deployed | retired
next_review_date: YYYY-MM-DD
---
| Doc type | What it is | Vault path | Consumed by |
|---|---|---|---|
| Acid-Content molecules | |||
| ACU | Atomic Content Unit — one locked fact, framing, or phrase. The smallest indivisible content unit. | Acid-Content/locked/acus/ | Renderings, brain skill, stop-gate-review |
| Rendering | Assembled content piece (article, email, script, deck) declaring its ACU dependencies in frontmatter. | Acid-Content/locked/renderings/ | Acid-Design (for formatting), external distribution |
| Recipe | Atom-construction methodology. One recipe per atom type. Required sources, composition order, output shape, compliance requirements. | Acid-Content/locked/recipes/ | Content assembly, brain skill |
| Compliance atom | LOCKED disclaimer wording, FCA-perimeter framing, or PROHIBITED phrase. Every rendering touching regulated content must reference applicable atoms. | Acid-Content/locked/compliance/ | All renderings, stop-gate-review |
| Box layer documents | |||
| Strategy doc | Answers "what should we do, and why?" No committed number. Stays as origin even when Biz-Box or Brand-Box docs are derived from it. | Brain-Box/locked/ | Biz-Box, Brand-Box, Intelligence/ |
| Persona | P-code archetype (P1-P10) × 4 motivational engines, 5-levels analysis cascade. Governs voice and content targeting for the persona. | Brand-Box/_frameworks/personas/ | Acid-Content via wikilink, investor briefing |
| Script | Call script, objection handler, outreach sequence. Built by Script Builder Skill. Reads Brand-Box voice + Acid-Content molecules via wikilink. | Acid-Sales/locked/scripts/ | Marie / bookers, live-call-coaching |
| Decision record | What was decided, context, rationale, consequences. Every locked doc should have a decision_id pointing to one of these. | Intelligence/decisions/ | All surfaces — the audit trail |
| Investor CRM documents | |||
| Investor status | Per-investor living document. Stage, last contact, next action, key concerns, asset links, transcript links, Pipedrive link. Primary pipeline query target. | Fun-Box/investors/{name}/status.md | Tom, Fiorella, pipeline query |
| Transcript summary | Processed .md summary of an Aircall/Fireflies/Google Meet transcript. Raw stays in Google Drive; summary lives in vault per investor. | Fun-Box/investors/{name}/transcripts/ | Investor status update, coaching |
| Layer | Template | Rule / Criteria | Skill | Engine / Automation | Critical gap |
|---|---|---|---|---|---|
| Box layer | |||||
| Brain-Box | EXISTS Discovery brief, decision record, research stub, workshop output | EXISTS Brain/Biz boundary filed: biz-box-rule-V1 (thinking vs plans) | EXISTS discover-orchestrator, pain-pattern-aggregator, grill-with-docs, scope-framer | NEEDED No scheduled brain-box engine | F1-F9 in Resources/principles/ — migrate to Parent/Library/ |
| Brand-Box | EXISTS Six-doc stack, persona card P1-P10, pillar template CP1-CP8, channel template | PARTIAL "Brand-Box → Acid = wikilink only" stated, not filed | EXISTS brand-foundation-builder, persona-depth, html-design-system-extractor | NEEDED | Personas + pillars in UCB — must move to Brand-Box before UCB migration |
| Biz-Box | PARTIAL V13 Unlock model exists. No generic cross-tenant template. | EXISTS Brain/Biz rule filed: biz-box-rule-V1 (any committed plan + numbers = Biz) | NEEDED No financial analysis skill | NEEDED | Generic financial model template needed in Parent/Library/ |
| Fun-Box | PARTIAL Investor status, profile, transcript summary — designed, not yet built | NEEDED Send approval rule not filed | EXISTS investor-briefing-book, live-call-coaching, brain skill | NEEDED Aircall ingest engine (Werner + Roy) | Per-investor folder model designed — needs building in P0-A |
| Acid layer | |||||
| Acid-Content | EXISTS ACU, rendering, recipe, compliance atom — all in UCB schema | EXISTS LOCKED/APPROVED/PROHIBITED/PENDING vocabulary in UCB README | EXISTS brain skill (strict mode), transcript-ingest, stop-gate-review | NEEDED Content assembly engine | Content assembly skill: manual today. Building block missing. |
| Acid-Sales | EXISTS Booker scripts V1-V2. VQL framework. GG rubric. | PARTIAL 3-call structure decision record exists — not a filed rule doc | BRIEF Script-builder brief exists in renders/. Not built in Parent/Library/. | NEEDED | Script Builder Skill (NOT an Engine) is the biggest missing Acid-Sales item |
| Acid-Marketing | PARTIAL Cold email template in UCB/05. No editorial calendar template. | NEEDED | BRIEF ×7 7 EUK campaign agents briefed — none built | NEEDED | Most underdeveloped Acid layer. 7 agents briefed, zero built. |
| Acid-Design | EXISTS HTML render families (5), PDF template, build-html SKILL.md | EXISTS Six-criteria gate, artefact-registry rule, family inheritance rule | EXISTS build-html, pdf-builder, canvas-design, html-design-system-extractor, pptx | EXISTS Renders engine + launchd pipeline | Config gap: "open [thing]" must resolve to local Relay mirror path, not rebuild (CG1) |
| Acid-Data | PARTIAL Transcript summary, investor status, profile templates — designed this session, not built | NEEDED "Write-once, automated ingest only" not filed | EXISTS transcript-ingest, Fireflies skill | PARTIAL Vault Operator ingests some. Aircall engine not built. | Aircall ingest engine (name extraction → investor folder → status.md update) not built |
how things connect*
Normal authoring flow, wikilink rules, ingestion trigger (automated — mechanism TBD Werner), and failure modes. Understanding the bridges between layers is what makes the system predictable.
how the surfaces work*
Cowork · Obsidian · GitHub · Google Drive · Slack — what each surface is for, who uses it, what it owns, how data flows between them. This is the current operating model, not the desired state.
Surface map
What it owns: All canonical locked/ content. Intelligence/. Projects/. Resources/.
What feeds it: Cowork sessions, Claude.ai chat sessions, Vault Operator, manual Tom authoring
What reads from it: Claude.ai Projects (Drive mirror), Notion sync, HTML renders, Cowork sessions
Key rule: working/ is the staging area. locked/ is canonical. Nothing canonical lives anywhere else.
What it owns: Nothing permanently — it reads and writes TO the vault.
What it can do: vault_read, vault_write, vault_search, vault_list. File system operations. Run Python/bash. Invoke skills. Produce HTML outputs.
What it cannot do: Send investor messages without Tom approval. Write to locked/ without explicit Tom instruction. Access browser sessions natively (uses Claude in Chrome for that).
Key rule: Cowork is the execution arm. The vault is the memory. Output left only in Cowork session without a vault write is a leak.
What it owns: Nothing — outputs must be written to vault via Cowork or Tom manual action.
Connected to: Google Drive MCP, Gmail MCP, Slack MCP, Fireflies MCP, Notion MCP, Pipedrive MCP (via WhatsApp MCP bridge).
Key limitation: No direct vault write. Outputs produced here that Tom doesn't route to vault are lost between sessions.
Key rule: Thinking surface → Cowork execution surface → vault. Not: thinking surface → vault directly.
What it owns: Code lives in GitHub (not vault). Config lives in system files (e.g. ~/.claude.json).
Used for: CG1-CG4 config sessions. MCP server installs. Pipedrive + WhatsApp MCP builds. Operator prompt engineering. CLAUDE.md authoring for Code-specific rules.
Key rule: Code → GitHub. Config → system files. Vault CLAUDE.md docs for Code are authored in Claude.ai or Cowork, then used by Claude Code — not the reverse.
What it owns: All production code. Applications, modules, MCP servers, adapters, agents.
Does NOT own: Strategy docs, brand docs, content molecules, financial models — those are vault.
Key rule: If Werner builds something that affects vault behaviour (e.g. ingestion engine, approval gate), the specification lives in the vault; the implementation lives in GitHub. Never the reverse.
What should migrate to vault: All legacy framework and template docs that aren't in Parent/Library/ yet. See Frameworks and Templates tabs.
What stays in Drive permanently: Raw transcripts (source of record). The vault holds processed .md summaries; Drive holds the original files.
Key rule: Drive is source of record for raw transcripts only. Everything else should have a vault canonical version.
What it owns: Nothing canonical — Slack is ephemeral. Anything important must be extracted to vault.
Connected to: Claude.ai chat via Slack MCP. Vault Operator via Slack Ingest automation.
Key failure mode: Decisions made and confirmed in Slack but never written to Intelligence/decisions/ become invisible to future sessions. The record-decision skill exists to prevent this.
Key rule: Slack = communications surface. Vault = memory. If it happened in Slack and matters, it needs a decision record.
What it owns: Nothing canonical. It is a synced read layer.
What syncs to it: Intelligence/decisions/ via notion-decisions-sync. Team task lists via notion-tasks-sync.
Key rule: If something is in Notion but not in the vault, it does not exist canonically. Notion is downstream of the vault, not upstream.
What it owns: Pipeline stage, contact data, deal stage, activity log.
What the vault owns: Per-investor context: transcripts, asset send history, key concerns, next actions, relationship narrative.
Key rule: Pipedrive = pipeline state. Vault = relationship intelligence. "Status on investor X" reads vault status.md. "Pipeline overview" queries Pipedrive via MCP.
Feeds: Intelligence/meetings/ (meeting notes), Fun-Box/investors/{name}/transcripts/ (investor call summaries), Intelligence/decisions/ (decisions), team task lists.
Key rule: Fireflies is the source. The vault holds the processed intelligence extracted from it. Raw transcript stays in Fireflies; processed .md summary goes to vault.
Hosts: HTML renders + future Cloudworkz application frontends.
Deploy:
npx wrangler pages deploy . --project-name {slug}URL:
{slug}.pages.dev (stable) + hash preview per deployment.Key rule: Vault holds source index.html. Cloudflare holds deployed copy. "open [thing]" = local Relay mirror. "rebuild" = regenerate source then redeploy.
How data flows between surfaces
| From | To | Mechanism | What travels | Who controls |
|---|---|---|---|---|
| Cowork session | Obsidian vault | Brain MCP vault_write | Documents, decisions, templates, meeting notes | Tom (approval gate) |
| Claude.ai chat | Obsidian vault | Tom copies output → Cowork vault_write | Strategy docs, designs, decisions from chat sessions | Tom (manual routing) |
| Obsidian vault | Notion | notion-decisions-sync + notion-tasks-sync (automated) | Decision records + team task lists | Vault Operator (automated) |
| Obsidian vault | Google Drive (mirror) | Relay curated export (selected folders) | Claude Projects read layer — curated subset of vault | Relay config |
| Obsidian vault | Cloudflare Pages | Wrangler deploy pipeline | HTML renders (OS Walk, product map, vault map) | Tom / Werner deploy trigger |
| Fireflies | Obsidian vault | Fireflies MCP → transcript-ingest skill → vault_write | Meeting summaries, decisions, investor transcript summaries | Vault Operator (scheduled) or Tom (manual) |
| Google Drive (aircall/) | Obsidian vault | Drive MCP → transcript-ingest → vault_write (Aircall ingest engine — not yet built) | Investor call summaries → Fun-Box/investors/{name}/transcripts/ | Vault Operator (Werner + Roy P1 build) |
| Slack channels | Obsidian vault | slack-ingest automation → Acid-Data/comms/slack/ | Selected channel content as signal data | Slack Ingest automation |
| Pipedrive | Claude.ai chat | Pipedrive MCP (Unlock email authenticated) | Pipeline stage, contact data, deal data (read only) | Tom / Fiorella query |
| GitHub | Cloudworkz OS applications | CI/CD deploy pipeline (Werner) | Application code, module updates, MCP server deploys | Werner (deploy gate) |
Which surface for which job
| Job | Correct surface | Common mis-routing |
|---|---|---|
| Reasoning through a problem, designing a system | Claude.ai chat | Using Cowork for thinking (wastes vault context budget) |
| Writing to the vault, running skills, migrations | Cowork | Using Claude.ai chat and expecting outputs to auto-save |
| Installing MCP servers, amending operator prompts, writing CLAUDE.md rules | Claude Code | Trying to configure MCP from Claude.ai chat |
| Building application features, writing production code | Claude Code → GitHub | Putting code in vault markdown files |
| Reading investor pipeline stage | Pipedrive MCP via Claude.ai chat | Searching vault for pipeline data that only lives in Pipedrive |
| Reading investor relationship context (transcripts, concerns, next actions) | Vault Fun-Box/investors/ via Cowork | Reading Pipedrive for context that only the vault holds |
| Processing a new meeting transcript | Cowork → transcript-ingest skill | Manually summarising in Claude.ai chat with no vault write |
| Team member checking their tasks | Notion (synced) or mini-CW/Cloudz/Individual-Clouds/ (desired state) | Asking Tom directly instead of reading their Individual Cloud |
| Capturing a decision made in Slack | record-decision skill in Cowork → Intelligence/decisions/ | Leaving the decision in Slack only — it becomes invisible to future sessions |
command grammar*
How the team drives the OS in natural language. One small verb set, one consistent slot set, the commands that work today, and the honest list of what is still being built. Describe the job, not the plumbing.
The seven verbs
Keep to these seven. If a request does not fit one, that is a signal the intent is new and should be discussed before a verb is added.
| Verb | Means | Reads / writes | Typical output |
|---|---|---|---|
| review | QA or assess something that already exists | reads | summary, score, pass/fail + flags |
| pull | fetch or extract data into a readout | reads | list, number, report |
| update | refresh a living artefact in place | reads + writes | updated model, clean state |
| make (alias: draft) | produce new content | writes | draft, piece, sequence |
| create | produce structured records | writes | feature request, decision, task |
| run | execute a defined skill, engine, or loop | reads + writes | whatever the engine emits |
| check | verify state or compliance | reads | findings, pass/fail |
Role-specific verbs, used sparingly only where the seven do not carry the meaning: coach and grade (Marie, live and post-call), ingest (Roy / Tom, the transcript fan-out, already an alias).
The slot set
Slots are the variables. Same name everywhere, so "campaign" never appears as "promo" in someone else's command.
| Slot | Values / form | Notes |
|---|---|---|
| {tenant} | unlock, cloudworkz, euk, xlr8, yachay, schoolvbe, mini-cloudworkz, parent | Routes to Companies/{tenant}/. Defaults to the session's tenant if omitted |
| {period} | "today", "last week", "May", "2026-06-01..2026-06-04" | Defaults to today if omitted |
| {campaign} | named campaign | |
| {dataset} | named data source or list (Axiom dataset, GG / Opulence lead pool) | |
| {person} / {investor} | named contact | {investor} routes to Companies/{tenant}/Fun-Box/ |
| {channel} | email, whatsapp, linkedin, call, landing | |
| {belief-stage} | team-capability, market-gap, mechanics | The investor-belief layer over Pipedrive |
| {product} | Roxi, Axiom, Signalz, ACID Sales, ACID Content, ACID Marketing, Cloudz | Canonical names per the product taxonomy |
| {output} | list, summary, report, draft, brief, record, dashboard | The shape, not the surface |
The command pattern
Worked parses
| Person | What they say | How it parses |
|---|---|---|
| Roy | "run the morning snapshot" | run + daily-pipedrive-snapshot + {period}=today, output who-to-call list |
| Fiorella | "pull investors due this week for cloudworkz, then make a market-gap piece for {investor}" | pull (Fun-Box + call-due) then make (belief-gated-article) {belief-stage}=market-gap |
| Werner | "create feature requests from the {period} demos" | create + feature requests + {period}. Engine is a gap (see snapshot) |
Registered commands (work today)
The stable, works-now set from the alias registry. PARTIAL and NO commands are not registered here, they sit in the gap list until built.
| Say this | Runs |
|---|---|
| "who do I call today" | daily-pipedrive-snapshot who-to-call list |
| "draft WhatsApp follow-ups" | WhatsApp draft-review-send loop |
| "run the compliance drift scan" | euk-compliance / prohibited-content-cataloguing check |
| "build a mini-app brief for {topic}" | mini-app-brief skill |
| "coordinate EUK assets for {campaign}" | euk-asset-coord skill |
| "UAT-check this {tenant} content" | fca-guidance-checker + unlock-hnw-reviewer |
| "build the investor pack for {round}" | investor-briefing-book + xlsx / pdf-builder |
| "set up a nurture sequence for {audience}" | behavioural-email-sequence skill |
| "intake this transcript" | 10-pass transcript-ingest skill |
| "signing off" / "clean up" | end-of-day boilerdown / mid-session re-anchor |
Capability gaps snapshot
Across 42 commands mapped over 7 seats. The honest state of what works versus what is still being built.
| Tier | Focus | Headline gaps |
|---|---|---|
| 1 | Unblocks the daily heartbeat | Pipedrive call-due query, Aircall ingest reliability, overnight fault-digest |
| 2 | Unblocks the investor raise + content lane | Fun-Box population, per-investor belief-state, funnel-metric engine, usage-report puller |
| 3 | Product + substrate-gated (Werner lane) | feature-request generator, dev-agent handoff, Roxi re-run trigger, spec auto-handoff |
| 4 | Lower frequency, deferred | cost-review feed, month-end auto-feed, booker metric, atomic-system engine, tenant-wide drift sweep |
Full per-person lexicon and ranked build list live in the vault: Projects/Cloudworkz-OS/reports/2026-06-04-team-command-lexicon-V1 and ...command-capability-gaps-V1.
Resources/frameworks/team-shorthand-grammar-V1) is the source of truth. It feeds the alias registry (Resources/aliases, the quick-reference loaded at session start), which feeds the root CLAUDE.md Shortcuts section (routing). A verb or slot is defined once, here, and never redefined downstream.tenant map*
Every tenant inside Companies/ · identical 5-folder structure · RAG status per layer · four pips = Template · Rule · Skill · Engine
Products/ axis (scaffolded 2026-06-01), peer of Companies. Products are sold by the platform and consumed across every brand plus external clients, so they live once here and tenants wikilink to them. These are the modules in the two-application build model (Tab 1). Placement is pending Werner ratification, see the Open questions section in the Build backlog tab.Companies/SchoolVBE/. Content population is the open work, not structure.engines & skills*
Full classified inventory. Every automated actor and reusable skill named, typed, described, and mapped to its vault location. Classification uses the 4-type taxonomy: Engine (scheduled automated process) · Automation (fixed script, on-demand) · Agent (AI-powered autonomous actor with actor record) · Skill (reusable prompt capability invoked by name). Note: Script Builder is a Skill, not an Engine.
engines*
Every automated actor classified by type: Engine · Automation · Agent · Skill — resolves the Resources/engines/ naming question
Resources/engines/vault-operator/Resources/engines/daily-audit/Resources/engines/slack-ingest/Resources/engines/master-tasks-html/Resources/engines/notion-decisions-sync/ + notion-tasks-sync/Resources/engines/os-dreaming/aircall/ folder · confirmed existsUnlock/Box/Fun-Box/investors/{name}/transcripts/Skills/transcript-ingest/SKILL.mdParent/Library/_skills/script-builder/Skills/live-call-coaching/SKILL.mdSkills/brain/SKILL.mdinvestor crm*
Per-investor folders inside Fun-Box · transcript aggregation from three sources · status tracking · Pipedrive bridge
Folder Structure
Transcript Sources
aircall/ in Google DriveFiles named: "Duncan Stewart - 2026-04-03.txt"
Investor name extractable from filename automatically
Meeting Transcripts/ in DriveGoogle Docs format · readable via Drive MCP
Register Drive ID as alias
Structured transcript + summary
transcript-ingest skill processes
Storage Model + Wider System Feed
vault_search Fun-Box/investors/*/status.mducb lens*
Unlock-Content-Brain reviewed through the lens of what we need · what becomes templates · what feeds Brand-Box vs Acid-Content
skills*
Every vault-authored reusable prompt-based capability. 69 skills in 11 clusters as of 2026-06-10. Each skill is an invocable protocol with a trigger phrase and pass sequence, living in Skills/{skill-name}/SKILL.md. Source: Skills/CLAUDE.md (rebuilt 2026-06-10).
Skills/ directory scan. 11 clusters cover OS operations, code and quality, build and render, stakeholder/investor, transcript and intelligence, AI-native discovery, Acid-Content compliance spine, sales operations, Unlock regulated domain reviewers, learning and education, incubator and ideation. Live inventory at Skills/CLAUDE.md. The skills-available Cowork artefact shows live scores per skill via MCP.Cluster 1 — OS operations (9)
Day-to-day OS maintenance, session management, and vault governance.
| Skill | Job |
|---|---|
| daily-system-audit | V2 audit of all engines, profiles, projects, and CLAUDE.md routing; auto-discovers new entities; diffs against yesterday's state |
| file-router | File routing + QC: ingests a file or batch, runs 5 QC lenses (content-type, tenant match, recency, live-vs-retired, sensitivity) to determine vault destination |
| handoff | Compact the current conversation into a handoff document for another agent or session |
| map-rebuild | Regenerate the Cloudworkz OS Vault Map HTML from manifest + current vault; auto-refresh tabs scanned; decision-only tabs carried forward |
| portal-audit | Scores each Cloudworkz OS Portal section on a 4-point rubric (freshness, completeness, source alignment, audience fit); scouts vault content with no portal representation |
| record-decision | Capture a confirmed decision to Intelligence/decisions/ with full frontmatter, wikilinks, and propagation note |
| session-handoff | Cloudworkz-native session end protocol; produces structured handover with pending jobs, state, and next-session priming |
| transcript-ingest | 10-pass multi-extraction from any transcript (Fireflies, Gemini, audio note, paste); fans out to meeting note, decisions, tasks, context, competitor intel |
| vault-manager | Vault-wide hygiene pass: orphan detection, frontmatter audit, em-dash sweep, wikilink repair, routing-table consistency check |
Cluster 2 — Code and quality (7)
Code review, debugging, structured grilling, and thinking quality.
| Skill | Job |
|---|---|
| diagnose | Disciplined debug loop: reproduce, minimise, hypothesise, instrument, fix, regression-test |
| grill-with-docs | Challenge a plan against the existing domain model; sharpens terminology and updates ADRs inline as decisions land |
| grilling-agent | Component 5 of AI-native discovery; adversarial interrogation of assumptions in a solution or plan |
| karpathy-guidelines | Behavioural guidelines reducing common LLM coding mistakes: surgical edits, surface assumptions, define verifiable success criteria |
| stop-gate-review | Pre-flight gate before committing a significant change; seven-criterion check; APPROVE / REVISE / BLOCK verdict |
| thinking-quality | Evaluate reasoning quality in a document or plan; flags leaps, unexamined assumptions, circular logic |
| triage | Issue triage state machine driven by triage roles; creates, routes, prepares issues for agents or human review |
Cluster 3 — Build and render (10)
Document creation, HTML renders, and artefact production.
| Skill | Job |
|---|---|
| build-a-skill | 8-step Cloudworkz skill build protocol; produces SKILL.md + notes.md + strategy.md + references/ from a brief |
| build-html | Self-contained index.html in one of five named families (idea-presentation, render, canvas, script, report); inherits family CSS |
| build-stakeholder-handover | Single-stakeholder handover pack with narrative spine, prior-conversation delta, and named-concern response |
| canvas-evaluate | Review an HTML or Cowork canvas against a six-criteria rubric; outputs scored verdict with fix suggestions |
| html-design-system-extractor | Extract brand colour, typography, spacing, component patterns from a website or PDF; produces tokens.css + design-system spec |
| iterate-copy-to-render | Take a draft copy and produce a polished final render (HTML, markdown, or docx); enforces brand voice and em-dash sweep |
| mini-app-brief | Werner-sign-off-ready one-page brief in the five-element format (Job, Inputs, Outputs, Integrations, Systems diagram) |
| pdf-builder | HTML-to-PDF in print-ready (CMYK, bleed, high-res) or read-ready (live links, bookmarks, TOC) flavour |
| report-writing | Structured long-form report from a research brief or raw notes; enforces document voice, Obsidian syntax, frontmatter |
| web-artifacts-builder | Multi-component Claude.ai HTML artifacts using React, Tailwind, shadcn/ui; for complex state-managed UIs |
Cluster 4 — Stakeholder and investor (2)
| Skill | Job |
|---|---|
| investor-briefing-book | Multi-investor pack: one master narrative spine + per-investor delta pages tailored to each investor's thesis and named concerns |
| investor-outreach-daily-analysis | Daily scan of investor activity, warm signals, outreach performance; prioritised action list for Tom |
Cluster 5 — Transcript and intelligence (3)
| Skill | Job |
|---|---|
| brain | Unlock content brain query interface; surfaces belief-stage content, signal-system data, compliance atoms on demand |
| cloudworkz-brain | Unlock content brain, strict mode (/brain prefix): curated-only answers from cloudworkz-os MCP, verbatim LOCKED wordings, auto compliance disclaimers, cited sources |
| pain-pattern-aggregator | Multi-corpus scan for pain mentions across transcripts, Daily/, research, inbox; clusters into named pain-shapes ranked by frequency, recency, and severity |
Cluster 6 — AI-native discovery (11)
The ten-component AI-native discovery framework plus orchestrator.
| Skill | Job |
|---|---|
| architecture-diagrammer | Component 7; system architecture diagram from a product or service description |
| back-office-process-mapper | Component 8; six-section back-office blueprint (process flow, tooling table, Mermaid service blueprint, integrations, failure modes) |
| brainbox | Idea capture and maturation store; intakes a raw idea, structures it, queues it for the weekly candidates pass |
| competitor-profile | Component 3; single-competitor deep-profile (positioning, pricing, moat, weaknesses, signals) |
| data-architecture | Component 9; data model and schema design from a product or feature description |
| discover-orchestrator | Walks any discovery target through all 10 components in sequence; manages structured handoffs between component skills |
| ia-diagrammer | Component 6; information architecture diagram from a product scope description |
| persona-depth | Component 4; deep persona profile with jobs-to-be-done, belief stage, emotional triggers, and objection map |
| roadmap-builder | Component 10; milestone-based roadmap with dependency graph from a product brief |
| scope-framer | Component 1; bounds the discovery target; names the job, the user, the outcome, and what's explicitly out of scope |
| section-rhythm-walk | Walks a document section-by-section for rhythm, coherence, and progression; flags gaps and reorder suggestions |
Cluster 7 — Acid-Content compliance spine (10)
End-to-end regulated content production from claim verification to channel-ready copy.
| Skill | Job |
|---|---|
| behavioural-email-sequence | 5-email sequence with behaviour-triggered Day-4 branching (opened-not-clicked vs clicked-not-booked); emits T05 brief |
| belief-gated-article-brief | Long-form article brief gated at the correct belief stage; maps to ACUs and expression variants |
| brand-foundation-builder | Produces a brand-foundation document (master-brand, play-to-win, comms-guidelines, brand-narrative, storybrand-sb7, tone-of-voice) per brand |
| compliance-register-schema-design | Designs the schema for a compliance register; field definitions, validation rules, and tooling recommendations |
| content-programme-orchestration | Plans a full content programme across channels and belief stages from a campaign brief and ACU set |
| event-template-content-brief | Brief for event-specific content (webinar, roundtable, conference); maps to belief stage and persona |
| expression-variant-generator | Takes a LOCKED ACU and generates channel-specific expression variants preserving all mandatory qualifiers; emits PENDING T08 atoms |
| multi-channel-outreach-brief | 5-piece first-contact system (cold email + variant, voicemail, LinkedIn InMail, cold call x3 persona variants); emits T03 brief |
| prohibited-content-cataloguing | Catalogues prohibited claims and phrases as T09 atoms with detection rules (literal/pattern/semantic) |
| research-verify-lock | Research-Verify-Lock gate; verifies a candidate factual claim against a primary source; locks as ACU (T07) or rejects as PROHIBITED |
Cluster 8 — Sales operations (3)
| Skill | Job |
|---|---|
| brief-gate | Pre-flight seven-criterion check on task briefs; APPROVE/REVISE/BLOCK verdict; auto-fires on the BRIEF GATE literal |
| euk-campaign | EUK campaign orchestration: script management, variant rotation, compliance pass, Marie/Roy booker coordination |
| live-call-coaching | Real-time coaching prompts while a booker is on a live call; fires off the locked script; surfaces next-move and objection-handler |
Cluster 9 — Unlock regulated domain reviewers (7)
Unlock-specific compliance and regulated-advice reviewers.
| Skill | Job |
|---|---|
| behavioural-finance-reviewer | Reviews content against behavioural finance principles; flags nudges that may be misleading or exploitative |
| bloom-taxonomy-reviewer | Reviews educational content against Bloom's taxonomy levels; flags misaligned outcomes and assessment criteria |
| consumer-duty-reviewer | Reviews content and processes against FCA Consumer Duty (2023); flags good-outcome gaps |
| decumulation-specialist-reviewer | Reviews decumulation content for accuracy, completeness, and regulatory alignment |
| fca-guidance-checker | Checks content against named FCA guidance documents; returns verbatim references and compliance verdict |
| financial-domain-reviewer | Generalist financial content review; checks accuracy, terminology, regulatory alignment, and perimeter status |
| unlock-hnw-reviewer | Reviews content against the Unlock HNW subscriber profile; flags belief-stage mismatches and claim risks |
Cluster 10 — Learning and education (3)
| Skill | Job |
|---|---|
| curriculum-coherence-auditor | Audits a learning programme for coherence across modules; flags scope gaps, sequencing errors, prerequisite mismatches |
| instructional-design-reviewer | Reviews a module or lesson against instructional design principles; flags Bloom misalignment and active-learning gaps |
| learning-centre-audit-orchestrator | End-to-end audit of the EUK learning centre; sequences the three reviewer skills; produces consolidated gap report |
Cluster 11 — Incubator and ideation (4)
| Skill | Job |
|---|---|
| brainbox-candidates-weekly | Friday morning pass: scans last 14 days for unfinished ideas and near-functional apps; produces a candidates ledger for the Werner session |
| call-grading | Post-call async scoring of a booker call against the locked campaign script; emits a graded rubric with per-section scores |
| incubator | Cloudworkz idea incubator protocol; intake, develop, promote, archive, and compare entries in Incubator/ |
| incubator-candidates-weekly | Sunday/Monday pass: surfaces incubator entries ready to develop or promote; distinct from brainbox-candidates (different cadence and source corpus) |
Skills/CLAUDE.md (rebuilt from live directory scan this session). Live quality scores available in the skills-available Cowork artefact (V5, MCP-discovered). Supersedes the partial 9-skill list from 2026-06-04.frameworks*
Every analytical or structural framework available in the vault — plus those surfaced by the UCB FST Audit (June 2026). Frameworks govern how thinking is done. All should live in Parent/Library/_frameworks/. Two flagged as currently undocumented — rules assumed rather than written. Source: Unlock FST Audit V1 + vault inventory.
From UCB audit — frameworks applied to produce Content Matrix + ACU Register
| ID | Framework | What it does | Documented where | Generic or Unlock-specific | Vault status |
|---|---|---|---|---|---|
| F01 | Belief Stage Journey Model | Maps every content piece to a numbered belief state (U1-U4, L1-L2, G1, P1-P3, F0-F3) so content advances investor conviction in sequence rather than broadcasting indiscriminately. | 545_FRAMEWORK_Belief_Map_V4_CURRENT.md (Tier 1 — fully documented) | UNLOCK-SPECIFIC | In UCB — promote to Brand-Box/locked/ |
| F02 | Signal-Based Content Routing | Routes content delivery based on behavioural signals and coded belief states (QT, QL, C1-C4, S1-S6) rather than a fixed funnel sequence. | 546_SPEC_Signal_System_V1_CURRENT.md + Belief Map | UNLOCK-SPECIFIC | In UCB — promote to Brand-Box/locked/ |
| F03 | StoryBrand SB7 | Positions investor as the hero, Unlock as the guide. Every content piece identifies problem, internal fear, philosophical injustice, offers a plan and clear CTA. | 560_STRATEGY_StoryBrand_SB7_V3_CURRENT.md (Tier 1) | GENERIC — UNLOCK ADAPTED Donald Miller methodology | In UCB — also in Brand-Box foundation stack |
| F04 | 19-Persona Segmentation Framework | Assigns every content piece to one or more of 19 named investor personas (P001-P019) so messaging, urgency triggers, belief progression, and format choices are persona-accurate. | 520_GUIDE_Investor_Personas_19_V2_CURRENT.md (Tier 1) | UNLOCK-SPECIFIC labels. Generic: persona-based targeting pattern. | In Drive — migrate to Brand-Box/_frameworks/personas/ |
| F05 | Multi-Touch Outbound Sequencing | Coordinates cold email, voicemail drop, LinkedIn InMail, and cold call across days 0-5 as a simultaneous multi-channel first-contact system — same hook, format-appropriate register per channel. | 992_CRM_Touchpoint_Map_DayByDay_V4_CURRENT.md + 549_PLAN_ThreeCall_System_V2_CURRENT.md — no single document owns the multi-channel rationale. | GENERIC PATTERN — UNLOCK ADAPTED | ⚠️ Not named anywhere in the matrix — applied implicitly. Should be codified. |
| F06 | Behavioural Branching Email Architecture | Splits email follow-up into behaviour-triggered branches (opened/not clicked vs clicked/not booked at Day 4) rather than a single linear sequence — improving relevance, reducing unsubscribes. | 992_CRM_Touchpoint_Map + 830_SEQUENCE_SandboxChase | GENERIC PATTERN — UNLOCK ADAPTED Standard CRM practice; Unlock's belief-stage routing is the differentiating layer. | In UCB — promote generic structure to Parent/Library/_frameworks/ |
| F07 | ACU Compliance Classification System | Assigns every content piece an ACU status (LOCKED / MISSING / PENDING / LOCKED+VARIANT) gating production — no brief proceeds without a locked or pending ACU for its factual claims. | ACU Register v1.0 (self-documenting) + 701_COMPLIANCE_Language_V4_CURRENT.md | UNLOCK-SPECIFIC | In UCB — this IS the compliance backbone. Promote schema to Parent/Library/. |
| F08 | Verbatim Lock / Expression Variant Two-Layer Compliance | Separates immutable factual claims (LOCKED, verbatim-use only) from approved marketing expressions of those claims (expression_variants, require separate approval) — ensures facts are never distorted by copywriting. | ACU Register v1.0 (self-documenting) — appears to be original Unlock design with no external named precedent. | ORIGINAL UNLOCK DESIGN | In ACU Register — promote schema to Parent/Library/_frameworks/ |
| F09 | Prohibited Content Auto-Fail System | Maintains a list of specific figures and framings that trigger automatic QC failure if detected in any document — negative compliance gate parallel to the positive ACU locks. | ACU Register v1.0 + 601_SPEC_UAT_Team_V2_CURRENT.md (UAT agent Q2) | UNLOCK-SPECIFIC | In ACU Register — currently only 2 entries. Register may need expanding. |
| F10 | Source-Traceability Citation Standard | Every locked ACU cites its source with publication, date, and specific reference — creating an audit trail that means every factual claim can be traced to a verified external source. | ACU Register v1.0 + 010_INSTRUCTIONS_Project_Governance_V5_1_CURRENT.md | GENERIC — UNLOCK IMPLEMENTED Journalism/compliance practice. | In ACU Register — no stated source hierarchy policy. Primary > secondary > tertiary policy NEEDED. |
| F11 | Primary / Derivative Format Architecture | Separates each content piece into a primary format (long-form source of truth) and derivative formats (LinkedIn post, PDF, call leave-behind) produced from it to maximise production efficiency. | ⚠️ Assumed knowledge — NO Tier 1 document owns this framework. Applied implicitly through the matrix column structure. | GENERIC — CONTENT REPURPOSING BEST PRACTICE | ⚠️ UNDOCUMENTED — should be codified. Build framework doc in Parent/Library/. |
| F12 | Reactive Trigger Content Model | Defines content pieces that exist as templates awaiting a macro event (Budget, MPC decision) with a 48-hour turnaround protocol — always-on but blank until triggered. | ⚠️ Assumed knowledge — NO Tier 1 document governs the reactive trigger protocol. Werner owns operationally but no written brief exists. | GENERIC — NEWSROOM/REACTIVE PR MODEL | ⚠️ UNDOCUMENTED — should be codified. Build framework doc in Parent/Library/. |
Parent/Library/_frameworks/ — on-disk scan additions (2026-06-10 rebuild)
Framework files present in Companies/Parent/Library/_frameworks/ but absent from the 2026-06-07 render. Regenerated from directory scan.
| File | What it is |
|---|---|
| four-box-completion-catalogue-V2 | Required-artefact set per box and engine; V2 adds Legal/Compliance class, RAG statuses, de-duplicated cross-box artefacts |
| content-propagation-matrix-V2 | What content can be produced from current substrate and the minimum root set; V2 adds Acid-Data substrate + vault-to-Supabase layer |
| cloudworkz-document-standard-V2 | The standard every missing-doc production inherits: ACU gate scoped to content, MECE rubric, named UAT panels, reconciled frontmatter |
| missing-docs-production-plan-V2 | Production plan for the missing-document set; binding constraint is external lead time (counsel + EIS specialist by Q4 2026) and Tom review capacity |
| critical-path-map-V1 | The single binding chain: cap-table → EIS → term sheet → instruments → close, gated by counsel + EIS specialist + DPO |
| production-toolkit-register-V1 | Register of the production toolkit: Biz/Fun/Legal template packs, per-doc prompt packs, critical-path map; open gap is the Acid-Data ingestion spec |
| doc-qc-rubric-V1 | Runtime rubric for the doc-qc-gate; producer and grader must be different passes; version bump propagates to the gate automatically |
| design-ready-render-bar-V1 | The bar build-html and pdf-builder render to after QC; tokens from tenant Branding/, never hardcoded; checked as G7 in the QC rubric |
| template-grading-rubric-V1 | Grading rubric for template quality (reference) |
| consulting-grade-business-plan-schema-V1 | Section-and-framework schema that makes a business plan consulting-grade; read by produce-to-standard for business-plan documents |
Pre-existing vault frameworks — confirmed before UCB audit
Resources/frameworks/ai-native-discovery-V1.md → Parent/Library/Resources/frameworks/cynefin-V1.mdResources/frameworks/pyramid-principle-V1.mdResources/frameworks/rapid-decision-rights-V1.mdResources/frameworks/three-horizons-V1.mdUCB/10_methodology/PERSONA_FRAMEWORK.md → Parent/Library/UCB/08_recipes/ → generic structure to Parent/Library/Resources/principles/ → Parent/Library/_frameworks/templates*
Every reusable document shape in the vault. Source: UCB FST Audit V1 (June 2026) — 9 templates extracted from Unlock Content Matrix v2.1 and ACU Register v1.0, all fully built and in the audit export. Plus pre-existing vault templates. Destination: Parent/Library/_templates/.
Templates from UCB FST Audit — built and ready to file
| ID | Template name | What it produces | Generic structure | Framework it implements | Priority | File |
|---|---|---|---|---|---|---|
| T01 | Content Programme Matrix | Multi-section content programme for a 20-30 piece programme across 6-7 campaign sections — the planning backbone of any content-led business. | 14-column schema: Item ID · Title · Belief(s) Addressed · Persona · Primary Format · Derivative Formats · Funnel Stage · Send Timing · Depends On · Compliance Status · UAT Status · Review Status · Hook · Brief Notes. Section dividers. Status key. Footer. | F01 Belief Stage Journey + F04 Persona Segmentation + F07 ACU Compliance Classification | IMMEDIATE | T01_Content_Programme_Matrix_TEMPLATE.md |
| T02 | ACU Compliance Register | Three-section compliance register for any content programme in a regulated sector — LOCKED facts, expression variants, prohibited content. | 3 sections: (1) LOCKED facts — ACU ID · Type · Status · Verbatim Content · Source · Approver · Date · Blocks Lifted · Variants Needed · Pieces Using. (2) Expression Variants — same schema, PENDING status. (3) PROHIBITED — same schema, auto-fail scope. | F07 ACU Compliance + F08 Verbatim Lock / Variant Two-Layer + F09 Prohibited Auto-Fail + F10 Source-Traceability | IMMEDIATE | T02_ACU_Compliance_Register_TEMPLATE.md |
| T03 | Multi-Channel First-Contact Brief | 5-piece coordinated first-contact system — one row per channel (cold email universal, cold email variant, voicemail, LinkedIn InMail, cold call ×3 persona variants). | 5-row block: channel type · hard format limit · hook type · CTA type · compliance gate · delivery mechanism · dependency rule. Simultaneous deployment logic. Behaviour-triggered follow-up begins after Day 0. | F05 Multi-Touch Outbound Sequencing + F01 Belief Stage + F04 Persona Segmentation | HIGH | T03_MultiChannel_FirstContact_Brief_TEMPLATE.md |
| T04 | Long-Form Article Brief (single piece) | Single-piece content brief: belief transition targeted, persona(s), primary + derivative format specs, timing, dependency, compliance gate, attention hook, production notes. | Single-row brief schema: Belief(s) addressed · Target persona(s) · Primary format + length · Derivative formats · Funnel stage · Send timing · Predecessor dependency · ACU/compliance gate · Attention hook · Production notes. | F01 Belief Stage + F04 Persona Segmentation + F07 ACU Compliance + F11 Primary/Derivative Format | HIGH | T04_LongForm_Article_Brief_TEMPLATE.md |
| T05 | Behavioural Email Sequence Brief | 5-email behavioural sequence with behaviour-triggered branching, belief progression arc, per-email word limits, timing cadence, exit conditions. | Sequence schema: Email ID · Trigger condition · Belief transition · Audience · Format + word limit · Preceding emails · Brief notes. Branching logic at Day 4. Escalating urgency arc. Final email protocol. | F06 Behavioural Branching Email Architecture + F01 Belief Stage + F07 ACU Compliance | HIGH | T05_Behavioural_Email_Sequence_Brief_TEMPLATE.md |
| T06 | Reactive Event Content Template | Standing brief that sits blank until a trigger event fires. Structure, format, compliance gate, ownership, and turnaround time pre-defined. Content fields blank until event day. | Template row: Trigger event type · Turnaround time · Primary format + word limit · Derivative format · Audience · Compliance gate · Content owner · Blank hook + blank notes fields. | F12 Reactive Trigger Content Model + F07 ACU Compliance | MEDIUM | T06_Reactive_Event_Content_TEMPLATE.md |
| T07 | ACU Locked Fact Atom | Single locked-fact atom: one verified, source-attributed, verbatim-use factual claim with approval record, block-lift tracking, expression variant roadmap, and content piece cross-reference. | Atom schema: ACU ID (kebab-case) · Type (fact/framing/qualifier/prohibited) · Status (LOCKED/PENDING) · Verbatim content (full sentence, all mandatory qualifiers embedded) · Source (publication, date, specific reference) · Approver · Date locked · Blocks lifted · Variants needed · Pieces using. | F07 ACU Compliance + F08 Verbatim Lock / Variant Two-Layer + F10 Source-Traceability | IMMEDIATE | T07_ACU_Locked_Fact_Atom_TEMPLATE.md |
| T08 | ACU Expression Variant Atom | Marketing-friendly, channel-specific version of a LOCKED factual claim. Preserves all mandatory qualifiers from parent ACU. Draft until approved. Format-specific word limits. | Variant schema: ACU ID (parent_id + _ev suffix) · Type = expression_variant · Status = PENDING · Draft content with DRAFT prefix · Derivation source · Approver = PENDING · Date = PENDING · Blocks lifted (if approved) · Approval instructions · Target pieces. | F08 Verbatim Lock / Expression Variant Two-Layer + F07 ACU Compliance | IMMEDIATE | T08_ACU_Expression_Variant_TEMPLATE.md |
| T09 | ACU Prohibited Content Atom | Specific string or figure that triggers automatic QC failure if detected anywhere in the content programme. Negative compliance gate with correct alternative stated. | Prohibited schema: ACU ID (acu_prohibited_[label]) · Type = prohibited · Status = LOCKED · Prohibited content (exact string + why incorrect) · Correct alternative (reference to correct ACU ID) · Approver · Date · Scope (ALL / specific pieces). | F09 Prohibited Content Auto-Fail + F07 ACU Compliance | HIGH | T09_ACU_Prohibited_Atom_TEMPLATE.md |
Pre-existing vault templates
| Template | Produces | Framework | Location | Layer |
|---|---|---|---|---|
| Brand-Box | ||||
| Six-doc brand foundation stack | Complete brand foundation (6 docs) | Six-doc stack + SB7 | EXISTS Branding/_template/foundation/ | Brand-Box |
| Persona archetype template | One P-code archetype card (P1-P10) | Five-levels persona cascade | EXISTS UCB/03 schema → Parent/Library/_templates/ | Brand-Box |
| Content pillar template | One CP-code pillar (canonical wording + problem + proof) | Content pillar framework | EXISTS UCB/04 schema → Parent/Library/_templates/ | Brand-Box |
| Channel definition template | Per-channel rules (max_length, voice_lock, disclaimers) | Channel constraint framework | EXISTS UCB/05 schema → Parent/Library/_templates/ | Brand-Box |
| Fun-Box — designed this session, not yet built | ||||
| Investor status template | Per-investor status.md (stage, last contact, next action) | Investor lifecycle framework | DESIGNED → Parent/Library/_templates/investor-status.md | Fun-Box |
| Investor profile template | Per-investor profile.md (who they are, source, ICP match) | Investor lifecycle + persona cascade | DESIGNED → Parent/Library/_templates/investor-profile.md | Fun-Box |
| Transcript summary template | Processed .md summary of a call transcript | transcript-ingest 10-pass skill | DESIGNED → Parent/Library/_templates/transcript-summary.md | Acid-Data → Fun-Box |
| Decision record template | Canonical decision record (context, decision, rationale, consequences) | RAPID Decision Rights | EXISTS via record-decision skill → Parent/Library/_templates/ | Intelligence/decisions/ |
| Parent/Library/_templates/ — pack files on disk (2026-06-10 scan) | ||||
| Generic financial model | Tenant-agnostic financial model document | Biz-Box financial framework | EXISTS Generic_Financial_Model_TEMPLATE.md | Biz-Box |
| Biz-Box template pack | Plan/KPI/budget document shapes for any tenant Biz-Box | Box completion catalogue | EXISTS biz-box-template-pack-V1.md | Biz-Box |
| Fun-Box instrument pack | Investor instrument document shapes (term sheet, instruments) | Investor lifecycle + critical path | EXISTS fun-box-instrument-template-pack-V1.md | Fun-Box |
| Legal/compliance pack | Legal + compliance document shapes | Four-box catalogue V2 Legal class | EXISTS legal-compliance-template-pack-V1.md | Legal |
| Template registry | Index of all template files in _templates/ | — | EXISTS _registry.md | Library |
Companies/Parent/Library/_templates/ (15 files on disk including the financial, Biz-Box, Fun-Box instrument and legal/compliance packs, tracked by _registry.md). The 2026-06-04 blocker (Library/ → Companies/Parent/Library/ move) is cleared.build backlog*
What needs building, in priority order, with dependencies and owners. Updated post FST audit (June 2026). P0 = blocks everything. P1 = blocks a person or workflow. P2 = improvement. Code = Claude Code session.
Backlog — all open items
| Priority | Item | Type | Blocks | Depends on | Effort | Who |
|---|---|---|---|---|---|---|
| P0 — Vault structure (Cowork · P0-A session) | ||||||
| P0 | working/locked convention document | Rule | Approval gate, every vault write | Nothing | 30 min | Cowork |
| P0 | Alias registry Resources/aliases.md | Rule | All shorthand commands | Nothing | 20 min | Cowork |
| P0 | Approval gate protocol + vault-write-log | Rule | All vault writes | Nothing | 20 min | Cowork |
| P0 | Resolve BrainBox/ naming collision → mini-Cloudworkz/Box/Brain-Box/ | Move | All tenant structure work | Nothing | 1 hr | Cowork |
| P0 | Create full tenant structure (Cloudz/ Box/ Acid/ Library/ System/) for all 8 tenants | Structure | Everything in vault | BrainBox collision resolved | 1 hr | Cowork |
| P0 | Move vault-level Library/ → Companies/Parent/Library/ | Move | All wikilink patterns | Tenant structure created | 30 min | Cowork |
| P0 | Move tenant CLAUDE.md files → {tenant}/System/CLAUDE.md | Move | Correct routing per tenant | System/ folders created | 30 min | Cowork |
| P0 | Update root CLAUDE.md (alias load, approval gate, Library/ path) | Rule | Session startup behaviour | Alias registry + approval gate written | 20 min | Cowork |
| P0 — Content skills (Cowork · highest leverage from FST audit) | ||||||
| P0 | SK03 Belief-Gated Article Brief Production | Skill | Any content programme brief production | Belief map + ACU register exist for tenant | 2 hr | Cowork |
| P0 | SK06 Research-Verify-Lock (RVL) | Skill | Every future ACU addition | ACU register template (T02) (pending) | 2 hr | Cowork |
| P0 | SK07 Expression Variant Generator | Skill | All content production in regulated context | LOCKED ACU exists + T08 template (pending) | 2 hr | Cowork |
| P1 — People and navigation (Cowork) | ||||||
| P1 | Individual Cloud per person (7 people) | Build | Every team member's entry point | P0-A structure complete | 4 hr | Cowork |
| P1 | User guides per role (Tom, Werner, Roy, Fiorella, Marie) | Build | Team adoption | Individual Clouds built | 4 hr | Cowork |
| P1 | Fun-Box send-log.md + hard send rule document | Rule | Investor send tracking | Fun-Box structure created | 30 min | Cowork |
| P1 | Move UCB personas + pillars → Brand-Box/_frameworks/ (before UCB migration) | Move | All content production — brain skill reads Brand-Box | Brand-Box structure created | 1 hr | Cowork |
| P1 | Retire Sales-Loop project → Acid-Sales + Fun-Box + EUK/Brand-Box | Move | Sales team operating correctly from vault | Acid-Sales structure created | 2 hr | Cowork |
| P1 — Content skills (Cowork · from FST audit) | ||||||
| P1 | SK01 Content Programme Orchestration | Skill | Future content programme builds | SK03 + T01 template (pending) | 3 hr | Cowork |
| P1 | SK02 Multi-Channel Outreach Brief Assembly | Skill | Outreach campaign production | T03 template (pending) | 2 hr | Cowork |
| P1 | SK04 Behavioural Email Sequence Constructor | Skill | Book 2 subscriber sequences | T05 template (pending) | 2 hr | Cowork |
| P1 | SK08 Prohibited Content Cataloguing | Skill | Compliance programme scaling | T09 template (pending) | 2 hr | Cowork |
| P1 | Script builder skill in Parent/Library/ | Skill | Reusable call script production | Acid-Sales structure created | 2 hr | Cowork |
| P1 | F11 Primary/Derivative Format Architecture — write framework doc | Framework | Content programme schema | Parent/Library/ structure (pending) | 1 hr | Cowork |
| P1 | F12 Reactive Trigger Content Model — write framework doc | Framework | Reactive content production | Parent/Library/ structure (pending) | 1 hr | Cowork |
| P1 | 7 EUK campaign agents (briefed in EUK-Campaign/brief-V2.md) | Skill ×7 | EUK campaign execution | Acid-Marketing structure created | 14 hr | Cowork |
| P1 — Build (Werner + Roy) | ||||||
| P1 | Aircall transcript ingest engine (name extraction → investor folder → status.md update) | Engine | Automated investor CRM population | Fun-Box/investors/ structure + T07 template (pending) | TBD | Werner + Roy |
| P1 | Two-substrate ingestion trigger (automated mechanism for vault locked/ → Supabase) | Engine | Canonical DB reflects vault | Vault working/locked pattern live | TBD | Werner |
| P2 — Improvements (Cowork) | ||||||
| P2 | UCB full redistribution (12 sections, 200+ files) | Migration | UCB content reaching correct vault layers | P0-A structure + personas/pillars moved first | 4 hr | Cowork |
| P2 | Resources/engines/ classification audit (Engine vs Automation vs Agent vs Skill) | Rule | Correct naming and placement | Parent/Library/ structure (pending) | 1 hr | Cowork |
| P2 | Financial model template (generic, Biz-Box) → Parent/Library/ | Template | Biz-Box population cross-tenant | Granular_Template_Plan_V4 in Drive | 2 hr | Cowork |
| P2 | SK05 Event-Template Content Brief skill | Skill | Reactive content programme | T06 template (pending) + F12 framework | 2 hr | Cowork |
| P2 | SK09 Compliance Register Schema Design skill | Skill | Any regulated content programme | T02 template (pending) | 2 hr | Cowork |
| Code — Claude Code sessions (separate from Cowork) | ||||||
| Code | CG1 — HTML open → local Relay mirror path (not rebuild) | Config | File interaction model | Nothing | TBD | Claude Code |
| Code | CG2 — PDF/HTML vault sharing fix (Relay binary config) | Config | File sharing between team | Nothing | TBD | Claude Code |
| Code | CG3 — Approval gate hardened in operator prompt | Config | Consistent gate enforcement | Approval gate doc written | TBD | Claude Code |
| Code | CG4 — Alias registry loaded at session start | Config | All shorthand commands | Alias registry written | TBD | Claude Code |
Open questions — for Werner
- Q1 — Products axis. Does the five-axis structure rewrite ratify
Products/as a top-level peer of Companies? Scaffolded provisionally 2026-06-01; lean = yes, because products are sold and consumed across every brand. - Q2 — Tenant-specific product strategy. When a product's strategy / working docs are tenant-specific, do they live in
Products/{product}/with their own working/locked discipline, or stay in the consuming tenant's Box with theProducts/record pointing to them? - Q3 — Naming disambiguation. Resolve the three-way collision: the
Acid-Datavault folder vs the "ACID Data" product vs the Axiom product (all touch ingestion / data). Confirm Axiom's commercial name and tiering (currently TBD). - Q4 — Dev. Confirmed a product, not a company: record lives in
Products/Dev/, the build lives in GitHub, pre-commercial instances (mini-Cloudz etc.) are Code. Werner presentation owed.
team*
Who runs Cloudworkz and where each person's working context lives. Employees under Team/cloudworkz/Profiles/, contractors under Team/External/contractors/. Each profile folder holds the profile note, daily notes, and task list. Scanned from Team/; governed by Team/CLAUDE.md.
Employees
| Name | Workstream / role | Profile folder |
|---|---|---|
| Tom King | Sales-Loop, OS-Optimization | Team/cloudworkz/Profiles/tom-king/ |
| Werner Snyman | Unlock (product + content) | .../werner-snyman/ |
| Juanes Cifuentes | Unlock | .../juanes-cifuentes/ |
| Juan-David Suaza | Unlock | .../juan-david-suaza/ |
| Claudia Chavez | Branding | .../claudia-chavez/ |
| Fiorella Ravelo Dávila | Investor pipeline | .../fiorella-ravelo-davila/ |
| Marie Mooney | Sales booker | .../marie-mooney/ |
| Marie Ducher Clark | Cloudworkz | .../marie-ducher-clark/ |
| Roy Mendoza | Cloudworkz | .../roy-mendoza/ |
| Sophia (Unlock DD) | Cloudworkz | .../sophia-unlockdd/ |
| Vanessa Chavez | Cloudworkz | .../vanessa-chavez/ |
| William Corke | Cloudworkz | .../william-corke/ |
| vault-operator | Synthetic agent (not a person) | .../vault-operator/ |
Contractors
| Name | Role | Profile folder |
|---|---|---|
| Diego Chavez | Design / brand | Team/External/contractors/diego-chavez/ |
| Ruslan | Design / brand | .../ruslan/ |
| Tony Vine-Lott | Compliance / language sign-off | .../tony-vine-lott/ |
| Sharlene Bornstein | Contractor | .../sharlene-bornstein/ |
source map*
Where every tab pulls its information from. Rendered from the binding manifest at Resources/renders/cloudworkz-os-vault-map/manifest.md. Each tab resolves to a concrete vault folder (scan target or home) plus a concrete governing file (the canonical doc behind the tab). auto tabs regenerate by scanning the vault; decision tabs change only when a decision changes them. This is what keeps the map a live representation of truth rather than a hand-maintained snapshot.
daily-system-audit flags manifest-vs-vault drift between rebuilds. Governance: the Vault Map as live truth decision (Intelligence/decisions/2026-06-04). Rebuild: the map-rebuild skill. Deploy to pages.dev: a Code/wrangler step.Per-tab source map
| Tab | Purpose | Source folder | Governing file | Volatility | Owner |
|---|---|---|---|---|---|
| How it's built | Build philosophy + layer model | Intelligence/decisions/ | 2026-06-04-os-structure-canonical-V1.md (scaffold: Parent/Library/_frameworks/tenant-structure-scaffold-V1.md) | decision | tom-king |
| Agent system | Agent anatomy, build pipeline, runtimes, the mini-CLOUDZ first goal | Products/agent-system/ | Products/agent-system/source.md (interim home; canonical home pending Werner's reorg) | decision | werner-snyman |
| Vault structure | The tenant tree + the Brain/Biz box-routing rule (thinking vs plans) | Companies/ | 2026-06-04-os-structure-canonical-V1.md · Parent/System/biz-box-rule-V1.md · Parent/Library/_frameworks/box-propagation-matrix-V2.md | auto (tree) + decision (model) | tom-king |
| How things connect | Surface map, data-flow, which-surface | Resources/frameworks/ | which-surface-V1.md (surface decision: root CLAUDE.md V2) | decision | tom-king |
| How surfaces work | Per-surface roles + data flow | Resources/frameworks/ | which-surface-V1.md | decision | tom-king |
| Command grammar | How the team drives the OS in natural language | Resources/frameworks/ | team-shorthand-grammar-V1.md (registry: Resources/aliases.md; lexicon + capability-gaps in Projects/Cloudworkz-OS/reports/) | mixed | tom-king |
| Tenant map | Per-tenant Box/Acid + RAG | Companies/ | Parent/Library/_frameworks/tenant-structure-scaffold-V1.md | mixed | tom-king |
| Engines & skills | Classified actor/skill inventory | Resources/engines/ | Resources/engines/CLAUDE.md (skills index: Skills/CLAUDE.md) | auto + decision | tom-king |
| Investor CRM | Fun-Box lifecycle + storage model | Companies/Unlock/Fun-Box/ | Parent/Library/_templates/FunBox_Investor_TEMPLATES_V1.md | mixed | tom-king |
| UCB lens | Unlock-Content-Brain map | Projects/Unlock-Content-Brain/ | Projects/Unlock-Content-Brain/CLAUDE.md (verify on next rebuild) | auto + decision | werner / tom |
| Skills | Confirmed + surfaced skills | Skills/ | Skills/CLAUDE.md | auto | tom-king |
| Frameworks | F1-F12 + applied | Companies/Parent/Library/_frameworks/ | Parent/Library/CLAUDE.md | auto + decision | tom-king |
| Templates | T01-T09 + financial + Fun-Box | Companies/Parent/Library/_templates/ | Parent/Library/CLAUDE.md | auto | tom-king |
| Build backlog | Open items | Projects/Cloudworkz-OS/ | system-backlog (tasks: system-tasks) | decision | tom-king |
| Team | Org roster, profiles, task surface | Team/ | Team/CLAUDE.md | auto | tom-king |
| Source map | This manifest, rendered | Resources/renders/cloudworkz-os-vault-map/ | manifest.md (this file) | auto (self) | tom-king |
| How to use | Team guide: vault orientation, folder routing, non-negotiable rules, working patterns, strategic context | Resources/renders/cloudworkz-os-vault-map/ | manifest.md | decision | tom-king |
| Submit | Feedback/request form — generates a structured Slack message for Tom in the correct vault format | Resources/renders/cloudworkz-os-vault-map/ | manifest.md | decision | tom-king |
how to use*
For the team. This vault is the OS — the canonical source of truth for Cloudworkz, Unlock, and every brand we operate. Everything else (Notion, Slack, HTML pages) is derived from it. Knowing where things live and how to interact with Claude correctly is the operating skill.
The vault is not a documentation site. It is the operating system. Cloudworkz OS mirrors the intended product: vault folders map to product Boxes (Brain-Box, Biz-Box, Brand-Box, etc). When Tom and Claude work here, they are simultaneously operating the business AND building the product. Every structural decision in the vault is a design decision for what Unlock will be.
One rule: everything has a home. Nothing in root. If unsure, check Tom or use the Submit tab to ask.
| What you're saving | Where it goes | Notes |
|---|---|---|
| Meeting notes | Intelligence/meetings/ | All recorded meetings. Intake via "intake this transcript" command. |
| Decisions | Intelligence/decisions/ | Any commitment or call that changes how we work. |
| Research / briefs | Intelligence/research/ | One-off investigation outputs. TTL 90 days unless promoted. |
| Project work | Projects/{name}/ | Multi-session deliverables with an owner and deadline. |
| Person notes / tasks | Team/cloudworkz/Profiles/{name}/ | Profile folder: daily notes, task list, outbox. |
| Brand assets, design rules | Branding/{brand}/ | Visual identity. Populate-first per 24 May decision. |
| Reusable content, prompts | Resources/ | Frameworks, aliases, engines, renders, skill references. |
| Draft emails / posts to send | Team/.../{name}/Outbox/ | Active profile outbox. Draft until sent. |
| Developed ideas (HTML) | Incubator/{slug}/ | Seed through to promotion. See incubator shortcuts. |
| Company / tenant files | Companies/{tenant}/ | 12-subfolder Box schema per tenant (Brain, Biz, Brand, etc). |
| Unsure / scratch | _scratch/ | TTL 30 days. Claude classifies on next session. |
Claude operates this vault as the org AI assistant in Cowork mode. Every session starts by identifying who you are (profile selection). Your active profile determines where your outputs land: daily notes, tasks, drafts all route to your Team profile folder.
submit*
Generate a structured message to send Tom via Slack — for feedback, questions, requests, or flags. Fill the three fields, copy the output, paste it in Slack. The format is fixed so it routes correctly into the vault.