From 0d893435d7f2444abad2c45a4038506cd21c1d48 Mon Sep 17 00:00:00 2001 From: Ali Mohammad Date: Thu, 29 Oct 2026 02:57:40 +0300 Subject: [PATCH 1/2] docs(changelog): observe and Studio round 2 Co-Authored-By: Claude Opus 5.5 --- CHANGELOG.md | 36 +++++++++++++++++++++++++++++++++--- 1 file changed, 33 insertions(+), 3 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index b0dc7b4d3..18d6260dc 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -14,19 +14,49 @@ opt-out. ### Added - The `lousho observe` daemon: a local collector (loopback, `http://127.0.0.1:7777`, SQLite at `~/.lousho/observe.db`) that gathers every agent's traces, heartbeats and eval scores when `LOUSHO_OBSERVE` is set — no per-agent code changes. `lousho observe start|status|stop|rebuild-rollups|token create`; a second `start` on a busy port attaches when it is already the observe daemon. See [Observability](docs/observability.md#the-observe-daemon). -- Agent Forge gains Observe tabs — Traces, Insights, Monitoring, Scores — reading the daemon through a token-gated `/observe/**` proxy on the studio server. +- Agent Forge is rebuilt around a left navigation grouped Build (Agents, Playground), Observe (Traces, Threads, Monitoring), Evaluate (Evaluations: Scores, Datasets, Evaluators, Annotation queues) and Assets (Prompts, Context Hub), plus Settings, replacing the Build/Observe toggle and the old Observe tabs. Every screen has a hash route with its filters in the query string (`#/traces?agent=…&status=error`, `#/traces/?obs=`), so reloads, bookmarks, pasted links and back/forward land on the same view; the Build toolbar shows only on Agents. `Ctrl+K` / `Cmd+K` opens a command palette (go to a screen, open an agent, paste a trace id, toggle the light/dark theme), `?` lists the shortcuts, and `j`/`k`/`Enter` move through and open table rows. The last nav item shows whether the collector answers; while the daemon is down each daemon screen shows the command to start it and fills in once it is back. Daemon screens read it through the token-gated `/observe/**` proxy on the studio server, which forwards reads plus only the writes the screens make. See [Agent Forge](docs/agent-forge.md#navigation). +- Studio Traces and Trace screens: the list filters by search (name, input, output), agent, status, model, project, prompt and time range (15m to 30d or custom, default 24 h), sorts by duration, tokens or cost, and shows input/output previews, the error message and the model. A trace opens in one viewer (tree or waterfall, the failed step selected by default) whose inspector shows the error, input and output as chat bubbles with tool-call chips (Rendered, Raw or JSON), thumbs up/down feedback, usage and attributes; the header links the agent and thread and has **Copy link**, **Add to dataset** and **Add to queue**. Model-call steps carry **Open in Playground**. See [Traces](docs/agent-forge.md#traces). +- Studio Threads (`#/threads`, one row per session, a session's turns oldest first), Monitoring (`#/monitoring`: the fleet table with status, last heartbeat, runs today, error rate, p95 latency and dropped events, plus Runs, Latency p95, Error rate, Cost and Tokens charts over 1h to 30d whose buckets open the matching traces) and Scores (`#/evals/scores`: one row per eval with pass rate, trend, per-check pass rates and latest failures, filtered by eval, agent, source and range). See [Monitoring](docs/agent-forge.md#monitoring). +- Studio Playground (`#/playground`): system, user and assistant messages with `{name}` variables, a provider and model (`mock` with no key), tools borrowed from a saved agent, a streamed run with **Stop**, **Open trace** when it finishes, and **Save as new prompt version**. `#/playground?trace=&fromObs=` loads a model call from a trace and `#/playground?prompt=[@]` loads a registry prompt. Runs go through `POST /playground/run` (SSE `delta`, `tool_call`, `done`, `error` events) and report to the daemon as agent `playground`. See [Playground](docs/agent-forge.md#playground) and [Playground run endpoint](docs/agent-forge.md#playground-run-endpoint). +- Studio Prompts (`#/prompts`: versions, labels, runs that used each version, a side-by-side diff, **Move `