Shared Office

Research

Four years of research.

Shared Office is the culmination of over four years of dedicated research into distributed systems and agentic control, supported by government innovation grants. The operating philosophy is laid out in The Next Big Solution in AI; the convergent synthesis — where type theory, distributed scheduling, service contracts, and agent harnesses meet — is audited in For Posterity.

Along the way we built consoleone.ai and storylens.one. We’ve now packaged and released the most coherent libraries from across the effort as public repositories under github.com/console-one. This is not the entire Shared Office product — but it is all the materialized research convergent to its synthesis, and the frameworks that differentiated everything we built before it.

Four years, three products, one discovery

Console One’s founder spent seven years at Amazon building planning, scheduling, and control systems for a million-person fulfillment workforce — mixed-integer optimization, discrete-event simulation, event-driven architecture — before turning the same class of problem on AI. What followed was the same kernel, discovered three times from three directions:

Console One (2022–2025) — “the network as one computer”: a browser IDE, a computational meta-language, and a custom version-control system that linked, versioned, and self-deployed itself. It proved the underlying kernel had to exist.

StoryLens (2025–2026) — “one workspace for your AI coworkers.” Meant to be the simple one, it independently re-derived the very same kernel from a completely different direction. It proved the kernel could be built.

Shared Office (2026–) — the kernel finally extracted into the standalone libraries below, and the product built on them.

“The components stopped looking like components. They looked like one object photographed from five bad angles.”

The convergence, in brief

Large language models are stateless — every turn re-sends the whole story. The unit of capability isn’t the model; it’s the harness around it: what gets shown each turn, what it can do, what it can reach. Scale that to a team and the harnesses multiply across machines — and whether any agent can run depends on shared state: token budgets, machine capacity, quotas, deadlines. Coordinating an organization’s AI becomes a planning and scheduling problem over one shared, priced account of what is true.

The surprise was that the pieces aren’t separate. A team’s memory, its calendar, its scheduler, and an agent’s context window are four reads of the sameappend-only log of facts: read backward it’s memory, forward it’s a calendar, inverted it’s a schedule, budgeted it’s the prompt. Billing, access control, and monitoring stop being subsystems and become derivations. No existing type system carries what that needs — time, belief, cost, and provenance as first-class properties of a value — so we built one, and rebuilt it five times. These repositories are its materialized pieces.

The kernel & type language

The heart: a type language where values carry validity, time, cost, and provenance — and the prototype product that proved it.

sequence · v1

superseded design-intent

Append-only behavioral type kernel — types and values as one continuum.

The first crystallization (2026): types that carry deadlines and confidence (P(done ≤ deadline) ≥ conf), time-conditioned gap priority, RBAC derived from state, and backward tool search. Mined, not run.

sequence · v2

active kernel · ~1,054 tests · 0 deps

One lattice, one operation (insert), every feature an installed rule.

The decided semantic kernel Shared Office is built on: constraints-as-data, one generic evaluator, where-gated blocks that suspend and watch, belief distributions with Bayesian updates, commitment election, and the mutual-rendering planner. Backlinks, gates, budgets, scheduling are all mounted rules — not kernel code.

fieldtype

concept absorbed into sequence v2 · still in prod

A CUE-inspired structural type system that doubles as a reactive rule engine.

The type IS the fold function — no separate ORM or query engine. Carried belief-suspension, the draft/preflight/gaps lifecycle, and read-visibility as a type-level concern. The “type = fold” thesis sequence later subsumed.

scope

sibling kernel · port-shelf

A constraint-propagation kernel over multi-dimensional anchors — one kernel for access control, typing, gates, and lifecycle.

Three-valued verdicts (met / unmet / undetermined) with a per-verdict policy — continue, preempt (kill the change), or hoist (escalate a suspended judgment to the scope that owns its resumption). Proved hoisting is its own rule.

substrate

archived prototype — informs the product

Event orchestration across agents and users — the original working Office Space.

The end-to-end proof that memory, calendar, scheduler, and context-window are four projections of one append-only fact space. Server, permanent agents, env adapters (unix / docker / lambda / browser), bilateral gap exchange over WebSocket — the shape the shipped product re-materializes.

Cost, control & execution

Budgets as prices, not caps — and the machinery that turns a typed value into a live, metered, controllable process.

Versioned data & lineage

Append-only truth, deterministic replay, and the patch-plus-inverse machinery that makes belief revision possible.

Language, parsing & structure

Why “features are vocabulary, not subsystems” — grammars and addresses that compose at runtime instead of forking the engine.

parser

archived

A pushdown parser whose grammars compose at runtime — a guest language parses on the host's stack, no sub-parsers.

The mechanism behind “features are vocabulary”: you extend one grammar by registering transitions into a shared table, not by building a new engine. Built to embed templating/meta-languages into markdown or JSON.

segment

archived

A multi-format composite path grammar — one engine walks paths, streams, and cross-regime references.

The single addressing primitive for a multi-dimensional lattice (structure, time, identity, partition, stage, type). The shipped `as` operator is its single-boundary special case.

disambiguator

archived

A heap-based probabilistic decision-tree executor — evaluate next whatever prunes the most expected work.

Recovered the rule that inference order is itself a judgment under budget (weight = expected work pruned). The in-kernel echo is `office gaps`, ranked by what each unknown blocks.

walker

archived · utility

A path-based tree-walker — register handlers on dotted paths, walk once, get per-path callbacks.

A corroborating echo of indexSpec: one-pass multi-path extraction with subscriptions-as-handlers, O(n) instead of O(n × paths).

namespace

archived

A multi-dimensional temporal artifact index — address anything across identity, version, and stage in one path.

Taught the version-pin vs. live-stage distinction with fallback chains (LIVE → INTEG → STAGING), now articulated as `topic@seq` pins vs. head semantics. Indexes declared as metrics, not schemas.

Distributed plumbing & addressing

The wire-level pieces: compound identity, structural serialization, live values, and the data structures the rest sits on.

address

live

Multi-dimensional addresses — one stable anchor plus N per-dimension coordinates, round-trippable as a compact string.

Seeded the interpretation-carrying address ({ server, uri, as }) and per-caller dimensional projection — audience-projected identity, the reader applied to naming.

wire

live

A dictionary-based structural codec with delta encoding, a graph bundler, and a hoist/inline code generator. Zero deps.

Independently re-derived the hoist-vs-inline decision first seen in compile — confirming that rendering under a bound is a universal operation. Measures encoding cost per value, not per type.

subscription

live

An observable/promise hybrid — a late-bound value that resolves like a promise but fires repeatedly and replays to late subscribers.

The live-push / subscriptions-as-state pattern; replay plus demand-gated dequeue prefigure flow-controlled fan-out — the lesson a WebSocket fan-out defect later paid for in production.

collections

live · utility

Collection structures distinguished by referencing and observation — observable queues, index maps, heap maps.

Handle-based identity and in-place priority update() — the reusable idea behind schedulers, subscription registries, and reactive UIs.

multimap

live · utility

Minimal list / set / heap multimaps — order-preserving, deduped, or priority buckets behind one API.

The recurring “each key holds a collection” need (event → handlers, entity → tags, key → priority queue), without re-rolling per-bucket bookkeeping.

Browse the source.

Every repository above is public, MIT-licensed, and zero- or low-dependency. Read the thesis, fork what’s useful, or get in touch.