MatchBox Wiki

// LLM knowledge base for Organized-AI/MatchBox — founder/VC matching engine

How to use this wiki (for humans and LLMs) Every MatchBox concept has one node. Stable #id, type badge, one-paragraph description, chips to deps. MatchBox is a fork of ClawBox with the Signal feature bolted on — load the ClawBox wiki first for the base surface (Tauri / React / Bun / routes), then this wiki for what's new (Signal UI · FundProfile + CallSignal data model · Airtable sync · analyzer). Repo default branch: claude/founder-fund-matching-urzts.
 ┌─────────────────── MATCHBOX ───────────────────┐
 │                                                │
 │   v1 SIGNAL (shipping)                        │
 │      transcribe → sentiment · fit · red flags  │
 │      coaching-for-VC · call rating             │
 │                                                │
 │   v2 MATCHING (next)                         │
 │      founder ↔ fund pairings                   │
 │      cross-network deal sharing                │
 │                                                │
 │   v3 FOUNDER PREP (later)                    │
 │      AI avatar interview · due diligence       │
 │                                                │
 └────────────────────┬───────────────────────────┘
                      ▼
       delivered as an agent into Slack · WhatsApp · email
                      │
                      ▼
           Crowley Capital seed node · Jon Forbes primary

Product

v1 · Signalphase

Shipping surface today. Turns each VC-founder call into a structured CallSignal — rating, sentiment, red flags, coaching notes, fact-finding prompts for the next call. Captures the training corpus for v2 matching.

v2 · Matchingphase

The engine the product is named for. High-confidence founder ↔ fund pairings built from v1's training corpus plus Airtable intake. Cross-network deal sharing between subscribed funds. Match quality compounds fund-over-fund.

v3 · Founder Prepphase

AI avatar conducts the initial founder interview. Automated screening before the VC spends a minute. Due-diligence layer that cuts fraudulent claims and poor-fit calls.

strategystrategy

Upgrade a working 7/10 VC workflow into the 10/10 industry benchmark by wiring MatchBox into the partner fund's existing process. No forced platform migration.

agent-not-platformdelivery

MatchBox ships as an agent reachable where the VC already works — Slack, WhatsApp, email. The Tauri desktop shell in this repo is the internal operator surface; partner funds don't have to adopt it to get value.

curated VC networkmoat

Subscribed funds share high-confidence deals; the corpus grows, matching quality grows. Crowley Capital is the seed node. Closes the industry due-diligence gap.

People

Jakeperson

Business lead. Owns the Forbes relationship and the Friday compensation meeting. Runs founder intake through the Airtable form.

Jordanperson

Technical lead. Owns technical guides, development assets, and the Signal/Matching delivery surface. This wiki + the matchbox-guide are two of those assets.

Jon Forbespartner

Primary rollout partner at Crowley Capital. Proven software funding pipeline and infrastructure; wants to expand into ambiguous industries. MatchBox plugs in as the matching + signal layer on top of his existing deal flow.

Crowley Capitalfund

Seed node for the MatchBox network. Anchor fund for the case study. crowley-capital.com.

Forbes-first rolloutstrategy

Non-exclusive case-study rollout: Forbes first, other funds follow on subscription once the pattern is proven. Revenue model in negotiation — revenue share, deal participation, or subscription.

revenue model (open)business

Three options on the table: (1) revenue share on portfolio companies uplifted by MatchBox, (2) participation in successful post-implementation deals, (3) monthly subscription for network access by other funds. Terms finalised in the Friday meeting.

External surfaces

Airtable founder intakeform

Live founder-signup form. Rows sync into MatchBox's fund store via POST /api/signal/airtable/sync. airtable.com/appQJ4zSchyLKGYd4/shrVPWhw0QnhgIaDs.

Granola strategy calldoc

Canonical source for MatchBox positioning. notes.granola.ai/t/b9784c0c-…. README draws from here.

Slack deliverysurface

Coaching notes + call ratings posted directly into the fund's working channel. First delivery surface after the operator UI.

WhatsApp deliverysurface

Same signal, delivered where the partner already texts with founders.

Email deliverysurface

Follow-up + next-call prompts surfaced alongside the VC's existing thread.

OpenClaw Gatewaydep

Separate process (http://127.0.0.1:18789/v1). MatchBox's analyzer routes LLM calls through it via callOpenclawDefaultModelChatCompletion — inherited from the ClawBox base.

Signal data model

FundProfiletype

One row per fund. Fields: id · name · thesis · stage · checkSize · sectors[] · redFlags · notes · source ('manual' | 'airtable') · airtableRecordId? · createdAtMs · updatedAtMs. Source of truth lives in internal/signal/index.ts; Airtable sync writes the airtable-source rows.

CallSignaltype

One row per analysed call. Fields: id · fundId · fundName · founderName · callDate · transcriptExcerpt · rating · sentiment (SentimentScores) · redFlags[] · factFindingPrompts[] · coachingForVc · summary · model? · createdAtMs. Produced by analyzeTranscript.

SentimentScorestype

{ enthusiasm, thesisAlignment, concern } — three dimensions, each a number in [0, 10], rounded to 0.1. Clamped by clampScore() in the analyzer; bad values fall back to a passed default.

RedFlagHittype

{ quote, reason } pair. Quote must be a literal excerpt from the transcript; reason is the analyst note. Capped at 8 per call.

AirtableConfigViewtype

{ apiKey (masked), hasApiKey, baseId, tableName, viewName }. apiKey is returned as •••••• so the UI can display it without exposing the full key.

AnalyzeCallInputtype

{ fundId?, founderName, callDate, transcript }. Posted to POST /api/signal/calls. Transcript excerpt gets truncated to 4000 chars on the route side for storage; the analyzer sees up to 20,000 chars.

signal store (zustand)store

Client state at src/store/signal.ts: funds · calls · airtable config · loading / syncing / analyzing flags · error. Actions: loadFunds, syncAirtable, analyzeCall, fund CRUD, call delete.

signal service (fetch client)client

src/services/signal.ts. Thin fetch wrapper targeting http://127.0.0.1:13000. Exposes signalApi with getAirtableConfig, updateAirtableConfig, syncAirtable, fund CRUD, analyzeCall, deleteCall.

Backend — internal/routes/signal.ts

GET · PUT /api/signal/airtableroute

Read or patch the Airtable config. API key returned masked. PUT supports clearApiKey: true to wipe it.

POST /api/signal/airtable/syncroute

Fetch rows from the configured Airtable base / table / view, upsert into the fund store as source: 'airtable'. Returns { success, synced }. Implementation: internal/signal/airtable.tssyncFundsFromAirtable(cfg).

GET · POST · PUT · DELETE /api/signal/fundsroute

Manual fund CRUD. Coexists with the Airtable-sourced rows. POST assigns a nanoid and stamps timestamps.

GET · POST · DELETE /api/signal/callsroute

Call list + analyze + delete. POST accepts AnalyzeCallInput, calls analyzeTranscript(), stores the CallSignal with a transcriptExcerpt truncated to 4000 chars.

analyzeTranscript()function

internal/signal/analyzer.ts. Builds the prompt from the FundProfile + transcript, calls callOpenclawDefaultModelChatCompletion, parses + validates the JSON response. Score clamping, red-flag cap (8), prompt cap (8), transcript truncated to MAX_EXCERPT_CHARS = 20000 with an explicit "truncated N chars" footer.

callOpenclawDefaultModelChatCompletionfunction

Inherited from ClawBox. Routes the LLM call through the local OpenClaw Gateway using the user's configured default model. No provider key in MatchBox itself — model choice lives in the Gateway.

inherited routesroutes

Agents · channels · chat · config · cron · models · onboard · sessions · skills · soul · titles · tools. All from the ClawBox base — see the ClawBox wiki for per-route detail.

Frontend surface

SignalViewview

Single top-level component at src/components/SignalView.tsx. The v1 operator UI. Fund list + Airtable config + call analysis workspace. Reads state from signal-store; dispatches via signal-service.

inherited viewsviews

ChatView · CronView · OnboardView · PluginsView · SettingsView · SkillsView · SoulView · StartupScreen · GatewayRestartBanner · LanguageToggle · ThemeToggle · TypewriterText · SuggestedQuestions — all from the ClawBox base. See clawbox-wiki #views.

Concepts

signal (the noun)idea

The output of a call: a structured CallSignal. Legible (ratings + quotes), portable (JSON), actionable (coaching + prompts). Not just a transcript — a decision aid.

match (v2 deliverable)idea

A high-confidence pairing between a founder and a fund, justified by the call signal + intake data. Not a thesis-keyword search — a score-weighted recommendation.

v1-as-training-datadesign

Every analysed call feeds v2. The Signal phase is deliberately capturing labeled signal (rating + sentiment + red flags) so the matching model has real data before it's trained.

due-diligence gapthesis

Industry-wide: founders inflate claims, VCs burn partner time on poor matches. MatchBox closes the gap with the AI avatar screen in v3 and the red-flag capture in v1.

fork of ClawBoxlineage

MatchBox inherits the Tauri + React 18 + Bun/Hono + OpenClaw client base from ClawBox. package.json still reports name: clawbox. Cleanup is on the follow-up list; until then, everything in the ClawBox wiki applies to the base surface.

Commands

npm run devcmd

Frontend (:14200) + backend (:13000) together. Inherited from ClawBox.

npm run tauri:devcmd

Full desktop shell under Tauri. Includes the Signal view + all inherited surfaces.

npm run build:frontend · build:backend · cargo checkcmd

Three-step build: tsc -b && vite build, Bun bundle, Cargo sanity on src-tauri/Cargo.toml.

scan:repo · audit:licenses · audit:deps · smoke:backendcmd

Standing audits + the lightweight smoke test via scripts/mock-gateway.mjs. All inherited from ClawBox.

openclaw gateway run --dev --auth none --bind loopback --port 18789cmd

Spin up the OpenClaw Gateway for local MatchBox dev. The analyzer routes through this.

Related guides

matchbox-guideguide

Human-readable operator guide. Tabs: Overview · Strategy · Product Phases · Signal (v1) · Architecture · Delivery · Dev · Ops · Stakeholders.

clawbox-guide / clawbox-wikiguide

The base project MatchBox forked from. All non-Signal internals — backend routes, frontend views, onboarding wizard, build chain — trace back here.

openclaw-wiki / openclaw-educationguide

The OpenClaw Gateway MatchBox depends on for LLM calls. Any model-routing question lives here.

organized-market-archguide

Organized Market is the broader Organized AI project that MatchBox participates in. Sibling components include ClawBox (desktop surface) and OpenClaw (personal AI control plane).