Production Log
The agent-maintained artifact registry that tracks every URL and id produced by Kolbo MCP tools during multi-step media workflows.
When you run multi-step media workflows through Kolbo Code ("make a character → visual DNA → 8 scenes → animate each → combine the videos"), the agent maintains a single markdown file in your workspace that records every artifact it produces:
.kolbo/production.md
This file is the source of truth for prior URLs and ids — not the chat history. Even if the conversation gets compacted (which can happen on long sessions and wipes old tool results), the agent can keep working from the log.
What's in it
A ## 🎯 Now header at the top — rewritten every turn — that holds the project brief and the immediate next step, followed by an append-only body that the agent updates after each generation:
<!-- .kolbo/production.md — agent-managed artifact registry -->
# Production Log
## 🎯 Now
**Brief:** Short film with Maya, an urban photographer. 8 scenes through her day.
**Now working on:** Animating scene 3 (rainy street walk).
**Last updated:** 2026-05-13
---
## Production: Maya short film
### Cast
- **Maya** — female, 30, urban photographer, leather jacket
- portrait: https://...characters/maya.png (nano-banana-2, 2026-05-13)
- visual DNA: vdna_8f2c (@maya)
### Scenes
1. **Coffee shop morning** — Maya at counter, soft light
- still: https://...scenes/01-coffee.png (flux-2-pro, 2026-05-13)
- video: https://...videos/01-coffee.mp4 (kling-2, 2026-05-13)
2. **Rainy street walk** — neon reflections, slow dolly
- still: https://...scenes/02-rain.png (flux-2-pro, 2026-05-13)
- video: (pending)Why it exists
URLs returned by generate_image, generate_video, and the other generation tools live inside tool_result JSON blobs scattered through the conversation. On long productions the agent cannot reliably re-scan dozens of prior outputs to find "the rainy scene" or "the female character" — and once context compaction triggers, those URLs are simply gone.
The production log fixes both problems with one file:
- Durable artifact registry — every URL is captured under a human-readable label the way you would reference it next time ("the rainy one"), not the model's internal name.
- Brief continuity — the
## 🎯 Nowheader gets rewritten each turn, which keeps the project's overall goal near the model's recency window. This is the same pattern the Manus agent uses to avoid "drift" on long autonomous runs.
You can hand-edit it
Treat it like any other file in your workspace. Rename Maya. Add a section. Mark a scene as "approved." The agent uses a Read-before-Edit rule, so on its next turn it will pick up your changes and reconcile them.
The one rule the agent follows: it never deletes old artifact entries. When it supersedes something (e.g., you ask it to redo scene 2), it marks the old entry (superseded YYYY-MM-DD) and adds the new one underneath — so you can always compare versions or roll back.
Production Log vs the regular task list
These are two different tools that work together:
.kolbo/production.md | TodoWrite | |
|---|---|---|
| Purpose | Durable artifact registry | Ephemeral step plan |
| Lifetime | Persists across sessions | Per turn / request |
| Content | URLs, ids, briefs | "Do X, then Y, then Z" |
| Example entry | still: https://...01-coffee.png | Generate visual DNA for Maya |
For "make a character, visual DNA, 8 scenes, animate, combine" — TodoWrite captures the 5-step plan; production.md captures the resulting 1 portrait + 1 DNA + 8 stills + 8 videos + 1 final.
Multiple productions in one workspace
If you have several concurrent productions in the same workspace (a logo set for client A and a music album for client B), the agent keeps them in the same file under separate ## Production: <name> headings. The ## 🎯 Now header always names the active one.
This is intentional: the single-file layout is what keeps the brief near the model's recency horizon. If your file grows past a few hundred lines, archive the completed productions yourself — or ask the agent to.