Plaza Orchestration v1

Every capture earns the same 4-section shape.

Inside CaptureX BO, every persisted capture body is composed of exactly four top-level H2 sections, in canonical order.

  • ## Audit Trail — the steps and models that ran
  • ## Capture File — source, attachments, geo, lineage tags
  • ## Summary — one paragraph, written by the crafter
  • ## Note — the reusable content, structured with H3+

The schema is enforced at the BO layer (composePlazaCaptureNoteBody), defended at the mobile chat-render layer, and asserted by the auditor before persistence.

multi-realm

Realms keep your worlds apart.

A realm is your personal partition: work, research, family, side-project, client A, client B. Each realm has its own Plaza skill bundle, its own default Inbox and Memory space, its own mirror folder, and its own data driver.

  • Synthetic Inbox always short-circuits orchestration — raw capture, no router
  • Synthetic Memory runs a single memory-organizer skill
  • Custom spaces opt-in to multi-space fan-out (up to 4 results)
  • Switch realms anywhere; AppBar auto-loads the right skill plaza
R

Realm · work

~/capturex/work · 14 spaces · 1,243 captures

R

Realm · research

~/capturex/research · 6 spaces · 482 captures

R

Realm · family

~/capturex/family · 3 spaces · 67 captures

All three coexist; one click in the AppBar switches the active realm, refreshes the skill plaza, and re-scopes search.

local-first

One folder, your entire knowledge base.

Pick a realm to use the local_git data driver and CaptureX will mirror that realm into a single absolute folder on disk — as plain markdown, with a deterministic layout.

  • Full coverage — captures, spaces, skills, books, tags, compilations
  • No auto-commit, no auto-push — operator-driven SCM panel
  • Auto pull / fetch keeps the working tree current
  • Batched, resumable import scales to 10k+ captures
  • Bring your own remote (GitHub, Gitea, GitLab, file:// share)

The git mirror is the canonical store in v1 — read it with any text editor, version it like code, and back it up wherever you back up your code.

books & wiki

From scattered captures to a governed wiki.

Books are first-class long-form documents inside every realm. Feed captures into nested chapters, let the RealmAgent compose and refine content, and mirror the full tree back to git — reversible, diffable, agent-maintainable.

  • Wiki bookType for curated reference knowledge bases — lecture digests, paper notes, teaching corpora
  • Nested chapters with domain prompts, feed / refine / rewrite modes, and source-capture lineage
  • Auto TOC, heading numbering templates, and special pages (cover, abstract, preface, index)
  • CaptureW Books panel — outline tree, full-screen editor, chapter search, one-click open
  • Full git mirror under books/ with manifest, chapters, and format spec for LLM agents
Open Books in CaptureW
1

Capture lectures & papers

Mobile, desktop, web clipper → structured captures in a research realm

2

Create a wiki Book

bookType: wiki · global AI instruction · chapter outline with domain prompts

3

Feed captures into chapters

RealmAgent integrates new notes, preserves lineage, updates chapter bodies

4

Mirror to git as OKF concepts

books/<bookId>/chapters/*.md · typed frontmatter · agent-readable _FORMAT.md

OKF v0.1

Google Open Knowledge Format, native in your git folder.

Every local_git realm folder is a self-contained OKF v0.1 bundle. Captures, spaces, tasks, memories, sessions, links, and books are typed concept documents with YAML frontmatter — so external tools and LLM agents can read, validate, and evolve your knowledge without proprietary lock-in.

  • Root index.md declares okf_version 0.1; _okf/CONFORMANCE.md documents every section
  • Every non-reserved .md file carries non-empty type (LarkCatch Capture, Book, Chapter, Space, …)
  • Books subtree adds index.md, _OKF_EVOLUTION.md, and per-book indexes with okf_profile metadata
  • Legacy imports stay tolerant; re-encode upgrades files to OKF without changing stable ids
  • JSON sidecars (skill-plaza.json, compilations.json) remain machine-readable companions
architecture

Built for operators who own their stack.

CaptureX is not a generic note app with a bolt-on sync layer. The backend (CaptureX BO) is a NestJS service you run locally or on your own infra — mobile and desktop clients talk to it over HTTP only.

  • Identity via your Service Profile — no shared SaaS tenant
  • Storage (v1) = per-realm git repository you choose
  • Ingestion = mobile FAB, desktop, share-sheet, capture API
  • Event hooks for messenger bots and custom connectors (roadmap)
  • App secrets live in a Service Profile JSON, never in env vars

Pair it with your own LLM keys and the deployment is one operator running python ops.py restart.

Capture clients

Mobile FAB, desktop hotkey, share-sheet → capture endpoint

CaptureX BO (NestJS)

Service Profile JSON · Gemini · TTS · orchestration

Mobile + Desktop apps (Flutter)

Catch-everywhere FAB · realm switcher · capture detail

Per-realm git repository

Plain markdown, your remote, your backups

Multimodal capture

Photo-first, but every modality is first class.

Receipts, whiteboards, voice memos, screenshots, forwarded chats, PDFs — all funnel through the same orchestrator with the right vendor and the right prompt.

Photo

CamScanner-style filter strip (Original, Omnifix, Enhance, No-shadow, Eco, B&W, …), AI deblur / enhance text / remove background, default 1280px JPEG q65 preset.

Audio

Voice memos transcribed and summarized; cloud TTS through BO HTTP only — default Volcengine / Doubao, OpenAI-compat fallback. Read-aloud on every capture.

Documents

Drag, paste, or share PDFs and Office docs into the AgentSheet composer. BO extracts text + structure; the auditor flags low-quality extraction.

Forwarded chats

Forward a chat thread from any messenger and it lands as a capture with the original quotes preserved, the senders tagged, and the action items extracted.

Geo & lineage

Photo EXIF GPS + text auto-parse + map-picker (Google / Apple / Amap / inline OSM). Every capture remembers where it came from.

Vendor-neutral

Vision LLM through a vendor-slot (Gemini default), TTS through Volcengine/Doubao with OpenAI-compat fallback, and keys via Service Profile or external secrets file — never client-to-vendor.

scale & durability

From 10 captures to 10,000+ on the same engine.

We design for the long arc. The GET /v1/captures endpoint supports cursor pagination with stub / full include modes; the local-git driver imports in batches with a resumable checkpoint.

  • Cursor pagination (1..200) · keyset index per realm/space
  • Stub mode omits heavy body fields; detail endpoint hydrates on demand
  • Async sync session: start, poll progress, cancel via DELETE
  • Re-runs preserve attachments and lineage — no silent data loss
  • Revision log appends, never overwrites

Bring your workflow. We'll bring the capture layer.

CaptureX is in active design-partner pilots. If you care about owning your knowledge, we'd love to hear from you.