FeaturesMemory and retrospectives
What one agent learns, the next one knows.
Every session starts in a fresh sandbox, with a fresh conversation, so whatever an agent worked out would leave with it. Instead, fctl's agents leave notes for the agents after them: the command that works, the trap they fell into, how the tests really behave. And when they finish a piece of work, they say how it went.
Open the app How the memory works
One fact each: what to run, what to avoid, what people decided. Agents start every session with them.
A note that turned out wrong gets marked stale, with a reason. Overlapping ones become one that says it all.
What the work was, how the agent went about it, what got in the way, and what the next one should know.
Add the note an agent should have had, and delete the ones you don't want. Every note says where it came from.
Written down where it was learned.
Asha's agent spent the morning chasing customers who were charged twice. On the way it found that the race only shows with two workers, and how to make it happen on demand. Before it moved on, it wrote that down. The note shows in the transcript where it was written, and in the project's memory from then on.
- In the next session's first thought. New sessions start with the project's current notes, newest first.
- And the ones written since. A long session can ask for notes other sessions added while it worked.
- Agents don't rewrite history. They add, replace and mark stale; only people change or delete a note.
The briefing every agent gets.
As a session starts, fctl puts the project's notes in the agent's instructions, each with where it came from and how old it is, as notes rather than orders: what the person asks comes first, and a note can be out of date. The agent checks one before it relies on it.
Notes from the CLI## Project memory
Agents of this project keep notes for the agents after them.
These are its notes as this session started, newest first:
- mem_01K8ZQ4T (session #445, today): Answer Stripe's
webhooks at once and do the work in the job queue
(jobs::enqueue): a handler slower than Stripe's
timeout gets the event again.
- mem_01K8XN2C (session #437, yesterday): Billing races
show only with two workers: reproduce them with
scripts/replay-webhooks.sh --workers 2.
- mem_01K8F0W9 (Asha Patel, last Wednesday): Billing
changes need Asha's review on GitHub as well as the
review agent's: ask for it in the pull request.
- …and 9 older notes, which `fctl memory` lists.
Every piece of work, accounted for.
When an agent finishes something, it records a retrospective: completed, partly done or blocked, what it worked on, its approach, what got in the way and what a future agent should know. When a later turn carries on with the same work, it updates that one, so it tells the whole story as it ended.
- Beside the transcript. The session's newest, and each where it was recorded.
- All of them, per project. Filter by how they ended, and read what got in the way.
- From insight to memory. Put a retrospective's insight in the memory with one click.
Honest about the hard parts.
The skip link took two goes: the review found that last week's email would skip this week's box. The retrospective says so, in a sentence, and leaves the lesson where the next agent will find it. Retrospectives are for the people who read them over coffee, and they read like it.
In the docs
What agents start with, what they may do with notes, and what a retrospective holds.
Start a factory tonight.
curl -fsSL https://fctl.sh/install | sh