Start every loop with what changed

The shell is the interface. The context lake is the product.

One ask tells an agent — or a script, or you — exactly what moved in your context lake since it last looked, including what your other agents wrote. The rest covers every capability that matters: read the catalog, record new data, manage files, and share or revoke.

One install gets you both the CLI and the Python library — they are the same package. Your account is created the first time you connect, so there is no separate signup.

Run it
Copy
uvx fulcra-api auth login

One install gets you both.

The CLI ships inside the Fulcra Python library, so installing one installs the other. Run it without installing anything permanent, or add it to your environment.

Run it, log in once

One command runs the latest CLI — nothing added to your environment — and authenticates against your Fulcra account, created the first time you connect. For a permanent install, pip install fulcra-api gets the fulcra command and the Python client together — one package.

uvx fulcra-api auth login

JSON by default

Sub-commands return JSON, for convenient piping into tools like jq for parsing and filtering — or straight into an agent.

fulcra catalog | jq '.[0]'

Every capability, one context lake.

Run fulcra --help for the current command list. The CLI covers the whole loop: ask what changed since your last run — including what your other agents wrote — read it, record new data, manage files and tags, and create or revoke shares. Output is JSON by default, for piping into jq — or straight into an agent.

What changed since the last loop

One ask summarises everything that changed across a window you name — 3h, 2 days, 1 week, or two timestamps. It returns which kinds of records arrived, how many, and which files moved — including what your other agents recorded. This is how an agent starts where it left off instead of starting over.

Read anything in the lake

The catalog says what exists and describes each kind of record. Read raw samples or a calculated time series over any window. Derived views — calendars, locations, summaries — are queries over the same catalog, not separate products.

Write back

Record to any recordable type — a single value, or structured data piped in. Delete what shouldn't stay. Organise with tags, and manage files end to end: upload, download, restore. What an agent records lands where you and your other agents can see it.

Share it, and revoke it

Share selected data types — or a single file — with other Fulcra users, see what's shared in and out, and revoke any of it. Grant access, revoke it, change agents — a two-way door, from a shell.

Same package, two ways in.

The CLI and the Python library install together. The library exposes the full method surface and is the one to reach for inside a notebook, a service, or an agent you are building; the CLI wraps the parts worth having in a shell.

Rent the reasoning. Own the context.