Inspector, Conversations & turns

Conversations and turns reconstruct the chat history Neotoma has captured. Every turn is stored as a conversation_message entity (alias agent_message) with role, sender kind, content, attachments, and a stable turn_key; the parent conversation entity glues them together with a topic title and participant kind.

Inspector renders these rows back into a familiar transcript-style view, then layers the underlying graph on top, so you can see not just what was said, but every entity each turn produced or cited, and the agent that wrote it.

Conversation list

The list view groups all conversation entities with their turn count, last activity, primary participants, and thread_kind (human_agent, agent_agent, multi_party). It supports filters by thread kind, agent identity, and time range, and deep-links into individual turns.

inspector.neotoma.io/conversations
Conversations
312 threads · 8,240 turns
human_agent (260)agent_agent (38)multi_party (14)
TitleThread kindTurnsAgentsLast activity
Q2 budget reviewhuman_agent24claude-code12:41
Vercel migration planhuman_agent18cursor-agent11:08
Receipt triage (April)human_agent9ingest-pipeline10:55
Planner ↔ Executor syncagent_agent42planner, executorApr 26
Customer interview · Sarah P.multi_party31user, claude-code, gpt-5.5Apr 24
Per-conversation summary: title, turn count, last activity, primary agents, and thread kind.

Conversation transcript

Open a conversation and Inspector reconstructs the transcript by ordering its conversation_message children by turn_key. Each turn shows role (user / assistant / agent / system / tool), sender_kind, the verbatim content, attached files via EMBEDS, and the entities the turn REFERS_TO.

inspector.neotoma.io/conversations/conv_3a2
Q2 budget review
conversation · 24 turns · human_agent
claude-code · swapr 24 → apr 27
useroperator12:30

What did we spend on subscriptions this quarter?

REFERS_TO · transaction (3)
assistantclaude-code12:30

Top categories: Vercel ($420), Linear ($96), Notion ($60). I cited 124 transactions.

REFERS_TO · report · Q2 spend patternREFERS_TO · transaction (124)
useroperatorEMBEDS · 111:08

Here's the Vercel invoice, confirm the period.

REFERS_TO · receipt · vercel-2026-04
assistantclaude-code11:08

Period 2026-04-01 → 2026-04-30. Stored as receipt; matched to transaction tx_4b1.

REFERS_TO · transaction · tx_4b1
Per-turn transcript with role, agent, content, embedded files, and the entities each turn referred to.

Sender kind and agent-to-agent

Every conversation_message carries sender_kind alongside the legacy role field. For agent-to-agent traffic the sender is agent with a stable sender_agent_id (and optional recipient_agent_id) so multi-agent chains can be reconstructed exactly. The transcript view colour-codes turns by sender kind and surfaces the agent identifier inline.

Embedded files and references

Files attached to a turn (PDFs, screenshots, CSVs) become file_asset entities linked to the message via EMBEDS. Inspector renders an inline preview where it can and a "View source" link via GET /sources/:id/content when it can't. Entities each turn cited or produced are listed inline as REFERS_TO chips, each clickable to the entity detail.

Compliance view

The Compliance tab on a conversation re-renders the same turns with per-row trust tier, signing key thumbprint, and "did the assistant store its reply?" indicators, so you can audit whether agents are following the per-turn persistence contract described in the agent instructions. Missing assistant turns or anonymous-tier writes show up in red.

inspector.neotoma.io/conversations/conv_3a2/compliance
Compliance · Q2 budget review
24 turns · 0 anonymous · 2 missing assistant stores
22 / 24 ok2 missing
TurnRoleTierSigned byReply stored
#4userinfooperator (sw)ok
#4assistantsoftwareclaude-code (sw · ed25519)ok
#5userinfooperator (sw)ok
#5assistantsoftwareclaude-code (sw · ed25519)missing
Per-turn compliance view: trust tier, signed-by, and whether the agent persisted its reply.