cd /news/developer-tools/the-history-tool-past-chats-become-a… · home topics developer-tools article
[ARTICLE · art-58378] src=loomcycle.dev ↗ pub= topic=developer-tools verified=true sentiment=· neutral

The History tool: past chats become a primitive (v1.20.0)

RFC BE ships the History tool in v1.20.0, providing ten operations for accessing past chats including list, get, search, rename, annotate, pin, archive, recap, resume, and related. The tool introduces session-level metadata such as title, description, tags, and summaries, with scoped access controlled by history_scope and server-side identity resolution. It supersedes the Context op=history and includes five post-merge review fixes.

read1 min views1 publishedJul 14, 2026

RFC BE ships the History tool: a built-in surface with ten ops for reaching past chats — list (chats in a scope, pinned-first, paginated, per-chat token/cost/run-count aggregates), get (metadata + full transcript, format:markdown renders it), search (case-insensitive title match; body-search FTS deferred), rename / annotate / pin / archive, recap (idempotent LLM summary stored on the session row, live-and-parked-chat-safe), resume (returns a continuation handle for a new run against the chat's session_id), related (semantic similar-chats via the configured embedder, cosine ranking in Go, no pgvector). Owner scopes self / user / tenant / global, gated per agent by history_scope, resolved server-side from RunIdentity(ctx) and never the wire. Cross-scope by-id reads fold to an opaque not-found so session IDs are never an existence oracle. Global is stripped for non-admin principals at policy resolution and fails closed. A "chat" is a session (session → runs → events); History adds the human and organizational layer on top: title, description, tags, pinned, archived_at, summary, summary_updated_at (migration 0057). Related's index is session_embeddings (migration 0058), filled lazily on recap / rename / annotate. Transcripts are persisted already-redacted (RFC Z) so a History reader can never see a secret. Transports: HTTP POST /v1/_history, gRPC History RPC, MCP history meta-tool, @loomcycle/client + Python at 1.20.0. Supersedes and removes Context op=history. Also folds in five post-merge review fixes (#723) including the strict identity-required rule for self and user scope.

── more in #developer-tools 4 stories · sorted by recency
── more on @rfc be 3 stories trending now
sponsored brought to you by zahid.host 4,200+ EU-deployed projects
reading about agents? ship yours in a single git push.

Run your AI side-project on zahid.host

EU-based hosting, git-push deploys, automatic HTTPS, no cold starts. Free tier with a custom domain — perfect for shipping the agent you just read about.

$git push zahid main
Live at https://your-agent.zahid.host
Get free account → Pricing
from €0/mo · no card required
LIVE [news/the-history-tool-pas…] indexed:0 read:1min 2026-07-14 ·