From 868cb4478af00f416aba5b644333ee61bd58a2ff Mon Sep 17 00:00:00 2001 From: bowenliang123 Date: Fri, 14 Aug 2026 16:08:55 +0800 Subject: [PATCH] init version --- README.md | 68 ++++++ client.js | 509 ++++++++++++++++++++++++++++++++++++++++++++ docs/screenshot.png | Bin 0 -> 252036 bytes host.js | 342 +++++++++++++++++++++++++++++ 4 files changed, 919 insertions(+) create mode 100644 README.md create mode 100644 client.js create mode 100644 docs/screenshot.png create mode 100644 host.js diff --git a/README.md b/README.md new file mode 100644 index 0000000..69fa994 --- /dev/null +++ b/README.md @@ -0,0 +1,68 @@ +# last-context + +A [DeepSeek Harness](https://github.com/deepseek-ai/DeepSeek-Harness) (dsh) plugin that adds a **Context** tab to the web UI — right beside **Chat** and **Trajectory** — so you can see what the model's context window is actually made of, and how it evolves across the conversation. + +![last-context screenshot](docs/screenshot.png) + +## Why + +Every model request packs the same window from six sources: the system prompt, tool schemas, your messages, injected context (skills, AGENTS.md, runtime snapshots), assistant replies, and tool results. When a conversation degrades or gets compacted, *which part ate the budget* is usually invisible. last-context makes it observable: + +- **Current composition** — a stacked bar of the six categories, scaled against the model's context window (the gray track is your remaining headroom), plus the top-5 most expensive tool schemas. +- **History** — one stacked bar per model request (finer than per-turn), with Y-axis ticks and gridlines. Click any bar for its full breakdown, including the **provider-reported** prompt/output tokens next to the estimate. ✂ marks where compaction/pruning happened — watch the bars drop. +- **Context events** — compactions, tool-output prunes, skill injections (`Skill injected (code-review)`), plugin context injections, model switches — each with its token delta and timestamp. +- **Messages** — the currently model-visible surface, message by message, with per-message token costs. + +The UI is bilingual (中文/English) and follows the dsh locale automatically. + +## Install + +last-context is a **dynamic Cordis plugin**: two plain-JavaScript halves (`host.js`, `client.js`) loaded into a running dsh process — no build step, no restart. + +### Option 1: ask the agent (easiest) + +In any dsh session with the Cordis tools available, say: + +> 加载 ~/dev/last-context 里的 dsh 插件(host.js + client.js),用 cordis_define 和 cordis_run 运行 + +The agent will define the package and run it; approve the client bundle when prompted, and the **Context** tab appears in every session view. + +### Option 2: load it yourself + +Call `cordis_define` with the file contents as `code.host` / `code.client`, then `cordis_run`: + +```js +// code.host = contents of host.js +// code.client = contents of client.js +cordis_define({ plugin: { kind: 'new', idPrefix: 'lctx' }, name: 'last-context', purpose: '…', code }) +cordis_run({ pluginId, packageId, mode: 'run' }) +``` + +> Dynamic plugins are process-local: they disappear when dsh restarts. To make it permanent, wrap the two halves as a plugin package (a `package.json` with a `dsh` field, like [`@deepseek-ai/dsh-client-ui-trajectory`](https://github.com/deepseek-ai/DeepSeek-Harness/tree/master/packages/client/ui-trajectory)) and add a row to your agent preset's `cordis.yml` — see the [dsh plugin docs](https://deepseek-harness.github.io/deepseek-harness/develop/). + +## Usage + +Open any session and click **上下文 / Context** (to the right of Chat and Trajectory). Data refreshes every 2 seconds while the tab is open; switching sessions switches the view to that session's log — including historical, persisted sessions. + +- **Hover** a history bar for a quick tooltip; **click** it to pin the breakdown below the chart. +- The overview bar is scaled to the model's context window, so ~13% full means ~13% of the window is spoken for. +- Numbers are estimates using the *same fixed-density heuristic as dsh's built-in tokenMeter* (~4 chars ≈ 1 token), so they match the harness's own stats. Wherever the provider reported real usage, it's shown alongside as "actual". + +## How it works + +- **Data source**: the session's durable event log. Live sessions are folded straight from the in-memory log (`sessions.get(id).events` — no clone, no disk parse); persisted sessions fall back to `sessionQuery.readSession`. +- **Incremental fold**: per-session fold state lives in the Host half, so each poll only processes newly appended events — reopening the tab is instant. +- **Events decoded**: `request/header` (system prompt + tool schemas), surface events with `surfaceOp` (append/replace — compaction rewrites history in place), `compaction/summary|prune`, `assistant/message.usage` (real provider tokens), and message `source` metadata (`plugin` forms, `skill-invocation`) for injection events. +- **Architecture**: `host.js` folds the log and serves a package-private `snapshot` RPC; `client.js` registers the tab in the `conversation.view` slot and renders with bare `React.createElement` — zero dependencies, theme-native via dsh CSS variables. + +## Files + +| File | Role | +| --- | --- | +| `host.js` | Host half: incremental log fold, category accounting, `snapshot` RPC | +| `client.js` | Client half: tab registration, bilingual chart UI | +| `docs/screenshot.png` | The UI in action | + +## License + +MIT diff --git a/client.js b/client.js new file mode 100644 index 0000000..b09f1fe --- /dev/null +++ b/client.js @@ -0,0 +1,509 @@ +/** + * last-context — Client half. + * + * Registers a "上下文/Context" tab in the conversation view ring + * (`conversation.view` slot, beside Chat/Trajectory) and renders the + * context-composition timeline served by the Host half: current makeup, + * per-request stacked-bar history, context events, and the live message list. + * + * UI text is bilingual (zh/en) through the client `locale` service; the Host + * sends structured event/node records and this half localizes the labels. + */ + +var h = React.createElement + +var DICT_ZH = { + 'tab': '上下文', + 'cat.system': '系统提示', 'cat.tools': '工具定义', 'cat.user': '用户消息', + 'cat.inject': '注入上下文', 'cat.assistant': '助手回复', 'cat.tool': '工具结果', + 'overview.title': '当前构成', + 'overview.ofWindow': 'tokens(约 {p}%)', + 'overview.estimate': 'tokens(估算)', + 'tools.top': '工具定义 Top:', + 'tools.more': '等 {n} 个', + 'trend.title': '历史趋势', + 'trend.hint': '每次模型请求一段;点击柱子查看详情,✂ 表示压缩/剪枝', + 'trend.empty': '发起一轮对话后,这里会展示每次模型请求的上下文构成', + 'detail.step': 'T{t} · 第 {s} 步', + 'detail.estTotal': '估算合计 ≈ {n}', + 'detail.actual': '实际 prompt {n}', + 'detail.output': '输出 {n}', + 'events.title': '上下文事件', + 'events.empty': '暂无上下文事件(压缩、注入、模型切换会出现在这里)', + 'nodes.title': '消息构成', + 'nodes.hint': '当前模型可见的消息,最新在前', + 'nodes.more': '… 更早的 {n} 条消息已省略', + 'nodes.empty': '当前没有模型可见的消息', + 'loading': '正在读取会话日志…', + 'error': '上下文数据读取失败:', + 'footer': '估算口径:与 dsh 内置 tokenMeter 相同的固定密度启发式(约 4 字符 ≈ 1 token);「实际」为供应商上报用量。', + 'tip.step': 'T{t} · 第{s}步', + 'tip.total': '合计 ≈ {n}', + 'tip.actual': '(实际 {n})', + 'ev.compaction': '压缩上下文(摘要替换 {n} 条消息)', + 'ev.prune': '剪枝工具输出', + 'ev.skill': 'Skill 注入({name})', + 'ev.model': '模型切换:{a} → {b}', + 'form.instructions': '指令注入', 'form.catalog': '目录更新', 'form.snapshot': '状态快照', + 'form.notice': '通知', 'form.relay': '代理转发', 'form.recall': '历史召回', 'form.context': '上下文注入', + 'node.toolResult': '工具结果', + 'node.calls': '调用 ', + 'node.empty': '(空回复)', + 'node.nonText': '(非文本消息)', + 'node.snapshot': '快照: ', +} + +var DICT_EN = { + 'tab': 'Context', + 'cat.system': 'System', 'cat.tools': 'Tool schemas', 'cat.user': 'User', + 'cat.inject': 'Injected', 'cat.assistant': 'Assistant', 'cat.tool': 'Tool results', + 'overview.title': 'Current composition', + 'overview.ofWindow': 'tokens (~{p}%)', + 'overview.estimate': 'tokens (estimated)', + 'tools.top': 'Top tool schemas:', + 'tools.more': 'of {n}', + 'trend.title': 'History', + 'trend.hint': 'one bar per model request; click a bar for details, ✂ marks compaction/prune', + 'trend.empty': 'Send a message and each model request’s context makeup shows up here', + 'detail.step': 'T{t} · step {s}', + 'detail.estTotal': 'estimated ≈ {n}', + 'detail.actual': 'actual prompt {n}', + 'detail.output': 'output {n}', + 'events.title': 'Context events', + 'events.empty': 'No context events yet (compaction, injections, model switches appear here)', + 'nodes.title': 'Messages', + 'nodes.hint': 'currently model-visible, newest first', + 'nodes.more': '… {n} earlier messages omitted', + 'nodes.empty': 'No model-visible messages right now', + 'loading': 'Reading the session log…', + 'error': 'Failed to read context data: ', + 'footer': 'Estimate: same fixed-density heuristic as dsh’s built-in tokenMeter (~4 chars ≈ 1 token); “actual” is provider-reported usage.', + 'tip.step': 'T{t} · step {s}', + 'tip.total': 'total ≈ {n}', + 'tip.actual': ' (actual {n})', + 'ev.compaction': 'Context compacted (summary replaced {n} messages)', + 'ev.prune': 'Tool output pruned', + 'ev.skill': 'Skill injected ({name})', + 'ev.model': 'Model switched: {a} → {b}', + 'form.instructions': 'Instructions', 'form.catalog': 'Catalog update', 'form.snapshot': 'State snapshot', + 'form.notice': 'Notice', 'form.relay': 'Agent relay', 'form.recall': 'Recall', 'form.context': 'Context injection', + 'node.toolResult': 'Tool result', + 'node.calls': 'calls ', + 'node.empty': '(empty reply)', + 'node.nonText': '(non-text message)', + 'node.snapshot': 'snapshot: ', +} + +var EVENT_ICONS = { compaction: '✂', prune: '✂', inject: '+', model: '⇄' } + +function fmt(n) { + if (n === undefined || n === null || isNaN(n)) return '—' + if (n >= 1000) return (n / 1000).toFixed(1) + 'k' + return String(Math.round(n)) +} + +function fmtTime(t) { + var d = new Date(t) + function p(x) { return (x < 10 ? '0' : '') + x } + return p(d.getHours()) + ':' + p(d.getMinutes()) + ':' + p(d.getSeconds()) +} + +function makeView(ctx, t, localeSvc) { + function tr(key, vars) { + var s = t(key) + if (vars) for (var k in vars) s = s.replace('{' + k + '}', String(vars[k])) + return s + } + + var CATS = [ + { key: 'system', color: '#6366f1' }, + { key: 'tools', color: '#f59e0b' }, + { key: 'user', color: '#22c55e' }, + { key: 'inject', color: '#a855f7' }, + { key: 'assistant', color: '#3b82f6' }, + { key: 'tool', color: '#14b8a6' }, + ] + + function catLabel(key) { return t('cat.' + key) } + + function eventLabel(ev) { + if (ev.kind === 'compaction') return tr('ev.compaction', { n: ev.count || 0 }) + if (ev.kind === 'prune') return t('ev.prune') + if (ev.kind === 'model') return tr('ev.model', { a: ev.from || '?', b: ev.to || '?' }) + if (ev.kind === 'inject') { + if (ev.sub === 'skill') return tr('ev.skill', { name: ev.name || '?' }) + var base = t('form.' + (ev.form || 'context')) + return ev.name ? base + ' · ' + ev.name : base + } + return ev.kind + } + + function nodeText(n) { + if (n.cat === 'tool') { + return t('node.toolResult') + (n.tool ? ' ← ' + n.tool : '') + (n.err ? ' ⚠' : '') + } + if (n.skill) return 'Skill: ' + n.skill + if (n.calls) return t('node.calls') + n.calls.join(', ') + if (n.text) return n.form === 'snapshot' ? t('node.snapshot') + n.text : n.text + if (n.cat === 'assistant') return t('node.empty') + if (n.cat === 'inject') return t('form.' + (n.form || 'context')) + return t('node.nonText') + } + + function StackedBar(props) { + // props.parts: [{key,color,value}]; optional props.max: when max exceeds + // the parts' total, the remainder shows as empty track. + var total = 0 + for (var i = 0; i < props.parts.length; i++) total += props.parts[i].value + var scale = props.max !== undefined && props.max > total ? props.max : total + return h('div', { className: 'lc-stacked', style: { height: (props.height || 14) + 'px' } }, + total <= 0 + ? null + : props.parts.map(function (p) { + if (!p.value) return null + return h('div', { + key: p.key, + title: catLabel(p.key) + ' ' + fmt(p.value) + ' (' + Math.round(p.value / total * 100) + '%)', + style: { width: (p.value / scale * 100) + '%', background: p.color }, + }) + })) + } + + function Legend(props) { + var total = 0 + for (var i = 0; i < props.parts.length; i++) total += props.parts[i].value + return h('div', { className: 'lc-legend' }, + props.parts.map(function (p) { + return h('span', { key: p.key, className: 'lc-chip' }, + h('i', { style: { background: p.color } }), + catLabel(p.key) + ' ' + fmt(p.value), + total > 0 ? h('em', null, Math.round(p.value / total * 100) + '%') : null) + })) + } + + function partsOf(breakdown) { + return CATS.map(function (c) { + return { key: c.key, color: c.color, value: breakdown[c.key] || 0 } + }) + } + + // Plot height in px (the marker lane above it is 18px). + var CHART_H = 112 + + function TrendChart(props) { + var requests = props.requests + var maxTotal = 1 + for (var i = 0; i < requests.length; i++) if (requests[i].total > maxTotal) maxTotal = requests[i].total + + // Compaction/prune markers: attach each to the first request logged after it. + var markers = {} + for (var m = 0; m < props.events.length; m++) { + var ev = props.events[m] + if (ev.kind !== 'compaction' && ev.kind !== 'prune') continue + for (var r = 0; r < requests.length; r++) { + if (requests[r].seq >= ev.seq) { + if (!markers[r]) markers[r] = ev + break + } + } + } + + return h('div', { className: 'lc-chartrow' }, + h('div', { className: 'lc-axis' }, + h('span', { className: 'lc-axis-top' }, fmt(maxTotal)), + h('span', { className: 'lc-axis-mid' }, fmt(Math.round(maxTotal / 2))), + h('span', { className: 'lc-axis-bot' }, '0')), + h('div', { className: 'lc-chart' }, + h('div', { className: 'lc-grid lc-grid-top' }), + h('div', { className: 'lc-grid lc-grid-mid' }), + requests.map(function (req, i) { + var selected = props.selectedSeq === req.seq + var tip = tr('tip.step', { t: req.turn, s: req.step }) + ' · ' + fmtTime(req.time) + '\n' + + tr('tip.total', { n: fmt(req.total) }) + + (req.prompt !== undefined ? tr('tip.actual', { n: fmt(req.prompt) }) : '') + '\n' + + CATS.map(function (c) { return catLabel(c.key) + ' ' + fmt(req[c.key] || 0) }).join(' / ') + return h('div', { + key: req.seq, + className: 'lc-bar' + (selected ? ' lc-bar-selected' : ''), + title: tip, + onClick: function () { props.onSelect(selected ? null : req.seq) }, + }, + markers[i] ? h('span', { className: 'lc-bar-marker', title: eventLabel(markers[i]) }, '✂') : null, + h('div', { className: 'lc-bar-stack' }, + CATS.map(function (c) { + var v = req[c.key] || 0 + if (!v) return null + // px heights: the stack's height is content-driven, so + // percentage heights would collapse against an indefinite base. + return h('div', { key: c.key, style: { height: Math.max(1, Math.round(v / maxTotal * CHART_H)) + 'px', background: c.color } }) + }))) + }))) + } + + function RequestDetail(props) { + var req = props.request + if (!req) return null + return h('div', { className: 'lc-detail' }, + h('div', { className: 'lc-detail-head' }, + h('b', null, tr('detail.step', { t: req.turn, s: req.step })), + h('span', null, fmtTime(req.time)), + h('span', null, tr('detail.estTotal', { n: fmt(req.total) })), + req.prompt !== undefined ? h('span', { className: 'lc-actual' }, tr('detail.actual', { n: fmt(req.prompt) })) : null, + req.output !== undefined ? h('span', null, tr('detail.output', { n: fmt(req.output) })) : null), + h(StackedBar, { parts: partsOf(req), height: 10 }), + h('div', { className: 'lc-detail-rows' }, + CATS.map(function (c) { + var v = req[c.key] || 0 + return h('div', { key: c.key, className: 'lc-detail-row' }, + h('i', { style: { background: c.color } }), + h('span', { className: 'lc-detail-label' }, catLabel(c.key)), + h('span', { className: 'lc-bar-track' }, + h('span', { className: 'lc-bar-fill', style: { width: (req.total > 0 ? v / req.total * 100 : 0) + '%', background: c.color } })), + h('span', { className: 'lc-detail-num' }, fmt(v)), + h('span', { className: 'lc-detail-pct' }, req.total > 0 ? Math.round(v / req.total * 100) + '%' : '')) + }))) + } + + function EventList(props) { + if (props.events.length === 0) { + return h('div', { className: 'lc-empty' }, t('events.empty')) + } + var sorted = props.events.slice().reverse() + return h('div', { className: 'lc-events' }, + sorted.map(function (ev, i) { + var label = eventLabel(ev) + return h('div', { key: ev.seq + '-' + i, className: 'lc-event' }, + h('span', { className: 'lc-event-icon lc-event-' + ev.kind }, EVENT_ICONS[ev.kind] || '•'), + h('span', { className: 'lc-event-label', title: label }, label), + ev.tokens ? h('span', { className: 'lc-event-tokens' + (ev.kind === 'inject' ? ' lc-up' : ' lc-down') }, + (ev.kind === 'inject' ? '+' : '−') + fmt(ev.tokens)) : null, + h('span', { className: 'lc-event-time' }, fmtTime(ev.time))) + })) + } + + function NodeList(props) { + if (props.nodes.length === 0) { + return h('div', { className: 'lc-empty' }, t('nodes.empty')) + } + var catColor = {} + CATS.forEach(function (c) { catColor[c.key] = c.color }) + var rows = props.nodes.slice().reverse() + return h('div', { className: 'lc-nodes' }, + props.dropped > 0 ? h('div', { className: 'lc-nodes-more' }, tr('nodes.more', { n: props.dropped })) : null, + rows.map(function (n) { + var text = nodeText(n) + return h('div', { key: n.seq, className: 'lc-node' }, + h('i', { style: { background: catColor[n.cat] || '#999' } }), + h('span', { className: 'lc-node-preview', title: text }, text), + h('span', { className: 'lc-node-tokens' }, fmt(n.tokens))) + })) + } + + function ContextView(props) { + var sessionId = props.sessionId + var state = React.useState(null) + var data = state[0] + var setData = state[1] + var errState = React.useState(null) + var error = errState[0] + var setError = errState[1] + var selState = React.useState(null) + var selectedSeq = selState[0] + var setSelectedSeq = selState[1] + var tickState = React.useState(0) + var setTick = tickState[1] + + React.useEffect(function () { + if (typeof sessionId !== 'string' || sessionId === '') return undefined + var alive = true + var load = function () { + host.call('snapshot', { sessionId: sessionId }).then(function (res) { + if (!alive) return + if (res && res.ok) { setData(res); setError(null) } + else setError(res && res.error ? String(res.error) : 'failed') + }, function (err) { + if (alive) setError(String(err && err.message ? err.message : err)) + }) + } + load() + var dispose = ctx.interval(load, 2000) + return function () { alive = false; dispose() } + }, [sessionId]) + + // Re-render on locale switch. + React.useEffect(function () { + if (!localeSvc) return undefined + return localeSvc.subscribe(function () { setTick(function (x) { return x + 1 }) }) + }, []) + + if (error) { + return h('div', { className: 'lc-root' }, h('div', { className: 'lc-empty' }, t('error') + error)) + } + if (!data) { + return h('div', { className: 'lc-root' }, h('div', { className: 'lc-empty' }, t('loading'))) + } + + var current = data.current + var requests = data.requests || [] + var events = data.events || [] + var nodes = data.nodes || [] + + var selReq = null + for (var i = 0; i < requests.length; i++) if (requests[i].seq === selectedSeq) selReq = requests[i] + if (!selReq && requests.length > 0) selReq = requests[requests.length - 1] + + var windowPct = data.contextWindow ? Math.min(100, Math.round(current.total / data.contextWindow * 100)) : null + + return h('div', { className: 'lc-root' }, + + // ---- overview ---- + h('div', { className: 'lc-card' }, + h('div', { className: 'lc-card-title' }, + t('overview.title'), + h('span', { className: 'lc-card-sub' }, + (data.model ? data.model : '') + (data.provider ? ' · ' + data.provider : ''))), + h('div', { className: 'lc-overview-num' }, + h('b', null, fmt(current.total)), + h('span', null, data.contextWindow + ? ' / ' + fmt(data.contextWindow) + ' ' + tr('overview.ofWindow', { p: windowPct }) + : ' ' + t('overview.estimate'))), + h(StackedBar, { parts: partsOf(current), height: 16, max: data.contextWindow }), + h(Legend, { parts: partsOf(current) }), + (data.toolList && data.toolList.length > 0) ? h('div', { className: 'lc-tools' }, + t('tools.top'), + data.toolList.slice().sort(function (a, b) { return b.tokens - a.tokens }).slice(0, 5).map(function (tool) { + return h('span', { key: tool.name, className: 'lc-tool-chip' }, tool.name + ' ' + fmt(tool.tokens)) + }), + data.toolList.length > 5 ? h('span', { className: 'lc-card-sub' }, ' ' + tr('tools.more', { n: data.toolList.length })) : null) : null), + + // ---- trend ---- + h('div', { className: 'lc-card' }, + h('div', { className: 'lc-card-title' }, + t('trend.title'), + h('span', { className: 'lc-card-sub' }, t('trend.hint'))), + requests.length === 0 + ? h('div', { className: 'lc-empty' }, t('trend.empty')) + : h('div', null, + h(TrendChart, { requests: requests.slice(-80), events: events, selectedSeq: selReq ? selReq.seq : null, onSelect: setSelectedSeq }), + h(RequestDetail, { request: selReq }))), + + // ---- events + messages ---- + h('div', { className: 'lc-cols' }, + h('div', { className: 'lc-card lc-col' }, + h('div', { className: 'lc-card-title' }, t('events.title')), + h(EventList, { events: events })), + h('div', { className: 'lc-card lc-col' }, + h('div', { className: 'lc-card-title' }, + t('nodes.title'), + h('span', { className: 'lc-card-sub' }, t('nodes.hint'))), + h(NodeList, { nodes: nodes, dropped: data.droppedNodes || 0 }))), + + h('div', { className: 'lc-foot' }, t('footer'))) + } + + return ContextView +} + +return { + inject: ['timer'], + apply(ctx) { + var slots = ctx.get('slots') + if (slots === undefined) return + + // Bilingual dictionaries; the tab label thunk and all UI text follow the + // active locale (missing keys fall back to zh, then the key itself). + // Registrations ride ctx.effect so a stop/update disposes them; the catch + // tolerates dictionaries leaked by an earlier run of this same plugin + // (re-registering a live (ns, locale) pair throws). + var localeSvc = ctx.get('locale') + var t + if (localeSvc !== undefined) { + try { + ctx.effect(function () { + var d1 = localeSvc.register('last-context', 'zh', DICT_ZH) + var d2 = localeSvc.register('last-context', 'en', DICT_EN) + return function () { d1(); d2() } + }, 'locale-dicts') + } catch (e) { /* dictionaries from an earlier run are still live; reuse them */ } + t = localeSvc.bind('last-context') + } else { + t = function (key) { return DICT_ZH[key] !== undefined ? DICT_ZH[key] : key } + } + + styles.insert([ + '.lc-root { padding: 16px 20px 32px; overflow-y: auto; height: 100%; box-sizing: border-box; color: var(--dsw-alias-label-primary); font-size: 13px; }', + '.lc-card { background: var(--dsw-alias-bg-layer-1); border: 1px solid var(--dsw-alias-border-l1); border-radius: 10px; padding: 14px 16px; margin-bottom: 14px; }', + '.lc-card-title { font-weight: 600; margin-bottom: 10px; display: flex; align-items: baseline; gap: 8px; }', + '.lc-card-sub { font-weight: 400; color: var(--dsw-alias-label-secondary); font-size: 12px; }', + '.lc-overview-num { margin-bottom: 8px; }', + '.lc-overview-num b { font-size: 20px; }', + '.lc-overview-num span { color: var(--dsw-alias-label-secondary); }', + '.lc-stacked { display: flex; width: 100%; border-radius: 5px; overflow: hidden; background: rgba(128,128,128,0.18); }', + '.lc-stacked > div { height: 100%; }', + '.lc-legend { display: flex; flex-wrap: wrap; gap: 6px 14px; margin-top: 10px; }', + '.lc-chip { display: inline-flex; align-items: center; gap: 5px; color: var(--dsw-alias-label-primary); }', + '.lc-chip i, .lc-detail-row i, .lc-node i { display: inline-block; width: 8px; height: 8px; border-radius: 2px; }', + '.lc-chip em { font-style: normal; color: var(--dsw-alias-label-secondary); }', + '.lc-tools { margin-top: 10px; color: var(--dsw-alias-label-secondary); display: flex; flex-wrap: wrap; gap: 6px; align-items: center; }', + '.lc-tool-chip { background: var(--dsw-alias-bg-layer-2); border-radius: 4px; padding: 1px 7px; font-size: 12px; color: var(--dsw-alias-label-primary); }', + '.lc-chartrow { display: flex; gap: 6px; align-items: stretch; }', + '.lc-axis { position: relative; width: 40px; height: 130px; padding-top: 18px; box-sizing: border-box; color: var(--dsw-alias-label-secondary); font-size: 11px; }', + '.lc-axis span { position: absolute; right: 0; line-height: 1; }', + '.lc-axis-top { top: 13px; }', + '.lc-axis-mid { top: 69px; }', + '.lc-axis-bot { top: 125px; }', + '.lc-chart { position: relative; flex: 1; display: flex; align-items: flex-end; gap: 2px; height: 130px; padding-top: 18px; box-sizing: border-box; }', + '.lc-grid { position: absolute; left: 0; right: 0; border-top: 1px dashed var(--dsw-alias-border-l1); pointer-events: none; }', + '.lc-grid-top { top: 18px; }', + '.lc-grid-mid { top: 74px; }', + '.lc-bar { position: relative; flex: 1; min-width: 5px; height: 100%; display: flex; align-items: flex-end; cursor: pointer; border-radius: 2px; }', + '.lc-bar:hover { background: var(--dsw-alias-bg-layer-2); }', + '.lc-bar-selected { outline: 2px solid var(--dsw-alias-brand-primary); outline-offset: 1px; }', + '.lc-bar-stack { display: flex; flex-direction: column-reverse; width: 100%; }', + '.lc-bar-stack > div { width: 100%; }', + '.lc-bar-marker { position: absolute; top: -16px; left: 50%; transform: translateX(-50%); font-size: 11px; color: var(--dsw-alias-state-warn-primary); }', + '.lc-detail { margin-top: 12px; border-top: 1px solid var(--dsw-alias-border-l1); padding-top: 12px; }', + '.lc-detail-head { display: flex; flex-wrap: wrap; gap: 6px 16px; margin-bottom: 8px; color: var(--dsw-alias-label-secondary); }', + '.lc-detail-head b { color: var(--dsw-alias-label-primary); }', + '.lc-detail-head .lc-actual { color: var(--dsw-alias-state-success-primary); }', + '.lc-detail-rows { margin-top: 10px; display: grid; grid-template-columns: 1fr 1fr; gap: 4px 24px; }', + '.lc-detail-row { display: flex; align-items: center; gap: 8px; }', + '.lc-detail-label { min-width: 70px; white-space: nowrap; color: var(--dsw-alias-label-secondary); }', + '.lc-bar-track { flex: 1; height: 5px; border-radius: 3px; background: rgba(128,128,128,0.18); overflow: hidden; display: block; }', + '.lc-bar-fill { display: block; height: 100%; border-radius: 3px; }', + '.lc-detail-num { width: 44px; text-align: right; }', + '.lc-detail-pct { width: 34px; text-align: right; color: var(--dsw-alias-label-secondary); }', + '.lc-cols { display: flex; gap: 14px; flex-wrap: wrap; }', + '.lc-col { flex: 1; min-width: 280px; }', + '.lc-events, .lc-nodes { display: flex; flex-direction: column; gap: 2px; max-height: 320px; overflow-y: auto; }', + '.lc-event { display: flex; align-items: center; gap: 8px; padding: 3px 0; }', + '.lc-event-icon { width: 18px; text-align: center; color: var(--dsw-alias-state-warn-primary); }', + '.lc-event-icon.lc-event-inject { color: #a855f7; }', + '.lc-event-icon.lc-event-model { color: var(--dsw-alias-brand-primary); }', + '.lc-event-label { flex: 1; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }', + '.lc-event-tokens { color: var(--dsw-alias-state-success-primary); }', + '.lc-event-tokens.lc-up { color: var(--dsw-alias-state-warn-primary); }', + '.lc-event-time { color: var(--dsw-alias-label-secondary); font-size: 12px; }', + '.lc-node { display: flex; align-items: center; gap: 8px; padding: 3px 0; }', + '.lc-node-preview { flex: 1; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; color: var(--dsw-alias-label-primary); }', + '.lc-node-tokens { color: var(--dsw-alias-label-secondary); }', + '.lc-nodes-more { color: var(--dsw-alias-label-secondary); padding: 3px 0; }', + '.lc-empty { color: var(--dsw-alias-label-secondary); padding: 18px 0; text-align: center; }', + '.lc-foot { color: var(--dsw-alias-label-secondary); font-size: 12px; margin-top: 4px; }', + ].join('\n')) + + var ContextView = makeView(ctx, t, localeSvc) + slots.inject('conversation.view', function () { + return slots.register( + // NOTE: for dynamic packages the client Guard overrides `priority` + // with its own page-local rank (negative), so dynamic tabs always sort + // BEFORE the shipped priority-0 tabs — the tab currently renders + // leftmost by sandbox design. The priority/order pair below takes + // effect (right of Trajectory) once the plugin is installed as a real + // package in a preset composition instead of dynamically. + { name: 'conversation.view', id: 'context', order: 20, priority: 10, label: function () { return t('tab') } }, + function (props) { return h(ContextView, props) }, + ) + }) + }, +} diff --git a/docs/screenshot.png b/docs/screenshot.png new file mode 100644 index 0000000000000000000000000000000000000000..500fe64a8242a0179d658a88de7c69e6de7b9e3d GIT binary patch literal 252036 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­|rIQGGOV?}Aw=#x6csne*xHY$2LfZ#ex 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≷4eqW@@0PYU+oy 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

*84tHHz%e!s$`H}dJruJ^gkJXt1ppS7yozAQ~4 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 HqoDr<#DErz literal 0 HcmV?d00001 diff --git a/host.js b/host.js new file mode 100644 index 0000000..02ba6d5 --- /dev/null +++ b/host.js @@ -0,0 +1,342 @@ +/** + * last-context — Host half. + * + * Replays a session's durable event log into a per-request context-composition + * timeline, and serves it to the Client half over a Package-private + * `snapshot` RPC. + * + * Performance: live sessions are folded straight from the in-memory log + * (`sessions.get(id).events` — no clone, no parse) and the fold is + * INCREMENTAL: per-session state advances only over newly appended events. + * Cold (persisted, not live) sessions fall back to `sessionQuery` and are + * served from cache once folded, since their logs never grow. + * + * Token figures use the same fixed-density heuristic as the harness's own + * token-meter (4 chars ≈ 1 token, +4 per content block, +4 role framing). + * Labels are sent structured (kind/form/name/count) so the Client localizes. + */ + +// ---- harness token-meter heuristic (mirrors dsh-token-meter/estimate.ts) ---- +var CHARS_PER_TOKEN = 4 +var BLOCK_OVERHEAD = 4 +var ROLE_OVERHEAD = 4 + +function estimateBlocks(blocks) { + var tokens = 0 + if (!Array.isArray(blocks)) return 0 + for (var i = 0; i < blocks.length; i++) { + var block = blocks[i] + if (block === null || typeof block !== 'object') continue + switch (block.type) { + case 'text': + case 'reasoning': + tokens += Math.ceil(String(block.text || '').length / CHARS_PER_TOKEN) + BLOCK_OVERHEAD + break + case 'tool-call': + tokens += Math.ceil(String(block.name || '').length / CHARS_PER_TOKEN) + + Math.ceil(String(block.arguments || '').length / CHARS_PER_TOKEN) + BLOCK_OVERHEAD + break + case 'tool-result': + tokens += estimateBlocks(block.content) + BLOCK_OVERHEAD + break + default: + tokens += BLOCK_OVERHEAD + Math.ceil(JSON.stringify(block).length / CHARS_PER_TOKEN) + } + } + return tokens +} + +function estimateMessage(message) { + return estimateBlocks(message && message.content) + ROLE_OVERHEAD +} + +function estimateSystem(text) { + if (typeof text !== 'string' || text.length === 0) return 0 + return Math.ceil(text.length / CHARS_PER_TOKEN) + ROLE_OVERHEAD +} + +function estimateToolSchema(tool) { + return Math.ceil(JSON.stringify(tool).length / CHARS_PER_TOKEN) + BLOCK_OVERHEAD +} + +// ---- content extraction ----------------------------------------------------- + +function firstText(blocks) { + if (!Array.isArray(blocks)) return '' + for (var i = 0; i < blocks.length; i++) { + var b = blocks[i] + if (b && b.type === 'text' && typeof b.text === 'string' && b.text.trim() !== '') { + return b.text.replace(/\s+/g, ' ').trim().slice(0, 80) + } + } + return '' +} + +function toolCallNames(blocks) { + var names = [] + if (!Array.isArray(blocks)) return names + for (var i = 0; i < blocks.length; i++) { + var b = blocks[i] + if (b && b.type === 'tool-call' && typeof b.name === 'string') names.push(b.name) + } + return names +} + +function isInjection(source) { + // plugin context (AGENTS.md, snapshots, notices, …) and user-explicit skill + // invocations both ride user-role messages with a declared form. + return source !== null && typeof source === 'object' + && (source.kind === 'plugin' || source.kind === 'skill-invocation' || typeof source.form === 'string') +} + +// ---- the incremental fold ----------------------------------------------------- + +function createFold() { + return { + n: 0, // number of log events already folded + surface: [], // { seq, cat, tokens, form?, text?, tool?, err?, skill?, calls? } + sums: { user: 0, inject: 0, assistant: 0, tool: 0 }, + systemTokens: 0, + toolsTokens: 0, + toolList: [], // { name, tokens } + model: undefined, + provider: undefined, + lastModel: undefined, + contextWindow: undefined, + requests: [], // one entry per answered model call + events: [], // notable context events (structured; the Client labels them) + callNames: {}, // callId -> tool name + } +} + +function categoryOf(type, message) { + if (type === 'assistant/message') return 'assistant' + if (type === 'tool/result') return 'tool' + if (isInjection(message && message.source)) return 'inject' + return 'user' +} + +function applySurface(st, ev, type, data, message) { + var cat = categoryOf(type, message) + var node = { seq: ev.seq, cat: cat, tokens: estimateMessage(message) } + var source = message && message.source + var form = source && source.form + if (typeof form === 'string') node.form = form + if (type === 'assistant/message') { + var text = firstText(message && message.content) + if (text !== '') node.text = text + else { + var names = toolCallNames(message && message.content) + if (names.length > 0) node.calls = names.slice(0, 3) + } + } else if (type === 'tool/result') { + var block = message && message.content && message.content[0] + var name = block && block.callId !== undefined ? st.callNames[block.callId] : undefined + if (name) node.tool = name + if (data && data.error) node.err = true + } else if (source && source.kind === 'skill-invocation') { + node.skill = typeof source.name === 'string' ? source.name : '?' + } else if (source && source.kind === 'plugin') { + if (source.form === 'notice' && typeof source.summary === 'string') node.text = source.summary + else if (source.form === 'snapshot' && Array.isArray(source.sections)) { + node.text = source.sections.map(function (s) { return s && s.name }).filter(Boolean).join(', ').slice(0, 80) + } else { + var ptext = firstText(message && message.content) + if (ptext !== '') node.text = ptext + } + } else { + var utext = firstText(message && message.content) + if (utext !== '') node.text = utext + } + + var op = ev.surfaceOp + if (op !== null && typeof op === 'object' && op.op === 'replace') { + var si = -1 + var ei = -1 + for (var i = 0; i < st.surface.length; i++) { + if (si < 0 && st.surface[i].seq === op.start) si = i + if (st.surface[i].seq === op.end) { ei = i; break } + } + if (si >= 0 && ei >= si) { + var removed = st.surface.splice(si, ei - si + 1, node) + for (var r = 0; r < removed.length; r++) st.sums[removed[r].cat] -= removed[r].tokens + st.sums[cat] += node.tokens + return node + } + } + st.surface.push(node) + st.sums[cat] += node.tokens + return node +} + +function foldInto(st, events) { + for (var e = st.n; e < events.length; e++) { + var ev = events[e] + if (ev === null || typeof ev !== 'object') continue + var data = ev.data + switch (ev.type) { + case 'request/header': { + var header = data && data.header ? data.header : {} + var tools = Array.isArray(header.tools) ? header.tools : [] + st.toolList = tools.map(function (t) { + return { name: typeof t.name === 'string' ? t.name : '?', tokens: estimateToolSchema(t) } + }) + st.toolsTokens = st.toolList.reduce(function (a, t) { return a + t.tokens }, 0) + if (tools.length > 0) st.toolsTokens += BLOCK_OVERHEAD + st.systemTokens = estimateSystem(header.system) + if (header.config && typeof header.config.model === 'string') st.model = header.config.model + if (header.config && typeof header.config.provider === 'string') st.provider = header.config.provider + if (data && data.reason === 'change' && st.model && st.lastModel && st.model !== st.lastModel) { + st.events.push({ seq: ev.seq, time: ev.time, kind: 'model', from: st.lastModel, to: st.model }) + } + if (st.model) st.lastModel = st.model + break + } + case 'request/context': + if (data && typeof data.contextWindow === 'number') st.contextWindow = data.contextWindow + if (data && typeof data.model === 'string') st.model = data.model + if (data && typeof data.provider === 'string') st.provider = data.provider + break + case 'tool/call': + if (data && data.callId !== undefined && typeof data.name === 'string') st.callNames[data.callId] = data.name + break + case 'user/message': { + var node = applySurface(st, ev, ev.type, data, data) + var source = data && data.source + if (isInjection(source)) { + var rec = { seq: ev.seq, time: ev.time, kind: 'inject', form: source.form || 'context', tokens: node.tokens } + if (source.kind === 'skill-invocation') { + rec.sub = 'skill' + rec.name = typeof source.name === 'string' ? source.name : '?' + } else if (typeof source.plugin === 'string' && source.plugin !== '') { + rec.name = source.plugin + } + st.events.push(rec) + } + break + } + case 'tool/result': + applySurface(st, ev, ev.type, data, data && data.message) + break + case 'assistant/message': { + // Snapshot the request exactly as dispatched: current surface + header, + // before this response joins the surface. + var usage = data && data.usage + var record = { + turn: data && data.turn, step: data && data.step, time: ev.time, seq: ev.seq, + system: st.systemTokens, + tools: st.toolsTokens, + user: st.sums.user, + inject: st.sums.inject, + assistant: st.sums.assistant, + tool: st.sums.tool, + } + record.total = record.system + record.tools + record.user + record.inject + record.assistant + record.tool + if (usage && typeof usage.inputTokens === 'number') { + record.prompt = usage.inputTokens + (usage.cacheReadTokens || 0) + (usage.cacheWriteTokens || 0) + if (typeof usage.outputTokens === 'number') record.output = usage.outputTokens + } + st.requests.push(record) + applySurface(st, ev, ev.type, data, data && data.message) + break + } + case 'compaction/summary': + st.events.push({ + seq: ev.seq, time: ev.time, kind: 'compaction', + tokens: data && typeof data.shadowedTokenCount === 'number' ? data.shadowedTokenCount : 0, + count: data && Array.isArray(data.shadowedSeqs) ? data.shadowedSeqs.length : 0, + }) + break + case 'compaction/prune': + st.events.push({ + seq: ev.seq, time: ev.time, kind: 'prune', + tokens: data && typeof data.shadowedTokenCount === 'number' ? data.shadowedTokenCount : 0, + }) + break + default: + break + } + } + st.n = events.length + if (st.requests.length > 160) st.requests = st.requests.slice(-160) + if (st.events.length > 150) st.events = st.events.slice(-150) +} + +function buildResult(st) { + var surfaceTotal = st.sums.user + st.sums.inject + st.sums.assistant + st.sums.tool + var result = { + ok: true, + model: st.model, + provider: st.provider, + contextWindow: st.contextWindow, + current: { + system: st.systemTokens, + tools: st.toolsTokens, + user: st.sums.user, + inject: st.sums.inject, + assistant: st.sums.assistant, + tool: st.sums.tool, + total: surfaceTotal + st.systemTokens + st.toolsTokens, + }, + toolList: st.toolList, + requests: st.requests, + events: st.events, + } + // Bound the payload: the newest surface nodes carry the most signal. + var MAX_NODES = 200 + result.droppedNodes = Math.max(0, st.surface.length - MAX_NODES) + result.nodes = st.surface.slice(-MAX_NODES) + return result +} + +return { + apply(ctx) { + var sessionQuery = ctx.get('sessionQuery') + var sessions = ctx.get('sessions') + if (sessionQuery === undefined && sessions === undefined) { + console.error('last-context: neither sessions nor sessionQuery is available; snapshot RPC disabled') + return + } + + // sessionId -> { fold state + last built result + the count it reflects }. + var states = new Map() + + harness.handle('snapshot', async function (args) { + try { + var sessionId = args !== null && typeof args === 'object' ? args.sessionId : undefined + if (typeof sessionId !== 'string' || sessionId === '') return { ok: false, error: 'missing sessionId' } + + var st = states.get(sessionId) + if (st === undefined) { + st = { fold: createFold(), count: -1, result: null } + states.set(sessionId, st) + } + + // Live sessions fold from the in-memory log — no clone, no disk parse. + var live = sessions !== undefined ? sessions.get(sessionId) : undefined + var events + if (live !== undefined) { + events = live.events + } else { + if (sessionQuery === undefined) return { ok: false, error: 'session is not live and sessionQuery is unavailable' } + if (st.result !== null && st.count >= 0) { + // Cold logs never grow: probe the lightweight record count only. + var records = await sessionQuery.listEvents(sessionId) + if (records.length === st.count) return st.result + } + var snapshot = await sessionQuery.readSession(sessionId) + events = snapshot && Array.isArray(snapshot.events) ? snapshot.events : [] + } + + if (events.length === st.count && st.result !== null) return st.result + if (events.length < st.fold.n) st.fold = createFold() // defensive: log replaced + foldInto(st.fold, events) + st.count = events.length + st.result = buildResult(st.fold) + return st.result + } catch (err) { + return { ok: false, error: String(err && err.message ? err.message : err) } + } + }) + }, +}