ConceptsIngest
Concepts

Ingest

You just came out of a meeting, or someone sent you a spec, or a competitor shipped something that changes your plans. Hand it to your agent and it goes into the record — not as a pasted blob, but folded into what the project already knows: decisions updated, commitments captured, and anything the material just made wrong, retired.

Reading the material is the easy half

Your agent already knows how to read a transcript. The part that has no obvious answer is the record: your project already holds decisions, open tasks, and risks about the exact things that meeting was about. Every fact in the new material has to be placed against them.

So ingest recalls before it writes, every time. It pulls what the record already says about each subject the material touches, and only then asks what this new thing does to it. That is the difference between adding knowledge and adding noise on top of it — a record that asserts two contradictory things, with nothing to say which one is live.

the transcripttoday's meetingnewKNOW-152decision: Postgres over Dynamonew taskTASK-153Serkan: benchmark by Jul 20growsKNOW-88event-store optionssupersedesKNOW-45we're going with Dynamo
What new material doesAdding is only one of the four things a piece of material can do to a record that already holds facts.

It decides two things about everything it finds

What shape is it? A durable fact is knowledge — a decision, a risk, a lesson, a gap. Something a person committed to doing is a task, with their name on it and the date they said. A real spec is a document, kept whole. A structure or a flow becomes a diagram. Most of the material — the chatter, the scheduling, the restatement — is nothing, and it says nothing about it.

And what does it do to what's already there? That's the question in the diagram above:

EffectWhen
NewNothing on record is about this.
GrowsThe fact is already recorded, and the material adds specifics — a date, a number, an outcome. The node gets bigger, rather than getting a near-duplicate next to it.
CorrectsWhat was recorded was never true. The text is fixed.
SupersedesIt was true, and this material makes it wrong to act on — a decision the room just reversed. The old node is retired: still there, still findable, marked superseded, ranked below what's live.

The reversals are the whole reason this is worth doing. A decision that quietly stopped being true, with nothing marking it, is the single most expensive thing a record can contain — every agent that reads it afterwards does the wrong thing with total confidence.

A meeting is the case it was built for

Point it at a call transcript and your agent does what the person taking the notes was supposed to do: what did we actually decide, what's still open, and who said they'd do what.

your agent
big meeting on the event store today — here's the transcript
# reads the record for what it already knows about the event store
this reverses a decision you already have. here's what I'd write:
· new decision — Postgres over DynamoDB (4x cost at 10k writes/sec)
· new task — Serkan: benchmark Postgres at 10k/sec, target Jul 20
· grows KNOW-88 "event-store options" — adds the cost numbers
· retires KNOW-45 "we're going with DynamoDB" — reversed today
· 1 open question: nobody settled the migration window
written and linked ✓

Note the last two lines. The commitment became a real task with a name and a date, because "I'll take that" is the highest-value thing in any meeting and the thing most likely to evaporate into a document nobody reopens. And the thing the room didn't settle was recorded as an open question — not smoothed into a decision that was never made.

It asks before it retires

Anything that retires a node, rewrites one, or puts someone's name on a task gets shown to you first. You were in the room; it wasn't. When everything it found is purely additive, it just writes it and tells you what it did.

Anything you can hand it

A path, a URL, or something pasted straight into the chat. Your agent reads it on your machine — nothing is uploaded and no crawler runs on a server. If the material is too big for one pass, it splits it up and reads the pieces in parallel.

A meeting

We had a big meeting about the new billing flow today — lots of opinions. Get it into the graph: what we locked in, what's still open, and who took what. Here's the transcript.

Something that changes your plans

This announcement affects our launch. Read it, and tell me what it means for what we've already decided.

A spec someone wrote

Jason wrote a full design for the export feature. Read it, check it against what we've already got, and set up the work.

You can also call it by name — /stele:ingest — but you rarely need to. Handing over material and saying what you want done with it is enough.