{"id":"history","repo":"stevecastaneda/paseo-plugins","url":"https://github.com/stevecastaneda/paseo-plugins/tree/main/history","package":"@stevecastaneda/paseo-history","npm":{"package":"@stevecastaneda/paseo-history","version":"0.4.0","integrity":"sha512-j/2/immzCsmbxwZ90LuijvT9wgq0Hq2jDeFKGliOn6gZgkhRiP16aj60jW3xu6ZcNk791NxrMrnWEUBnErL8LQ==","publishedAt":"2026-09-30T21:03:54.716Z","downloadsLast30Days":0},"name":"history","description":"Inspect chat messages, tools, and raw session records from a composer pill in Paseo.","categories":["monitoring","productivity"],"platforms":[],"caveats":["Supports Codex, Claude Code, and OpenCode","Reads saved session files on the daemon host and never rewrites them","OpenCode history needs the opencode command on the daemon PATH"],"images":[],"themes":[],"health":{"manifestValid":true,"hasReadme":true,"hasLicense":true,"hasTests":true,"hasTypecheckScript":true,"updatedRecently":true},"scannedAt":"2026-10-01T18:36:09.943Z","addedAt":"2026-10-01T21:32:21+03:00","npmSecurity":{"status":"passed","blockingFindings":0,"advisoryFindings":0,"scannedAt":"2026-10-01T18:35:35.656Z","version":"0.4.0","integrity":"sha512-j/2/immzCsmbxwZ90LuijvT9wgq0Hq2jDeFKGliOn6gZgkhRiP16aj60jW3xu6ZcNk791NxrMrnWEUBnErL8LQ=="},"path":"history","version":"0.4.0","security":{"status":"passed","blockingFindings":0,"advisoryFindings":0,"scannedAt":"2026-10-01T18:35:35.656Z","commit":"11832dda662c62cb9b00ad93ef913d939f8591b0"},"author":"Steve Castaneda","license":"MIT","paseoVersionRequirement":">=0.9.0","descriptionNodes":[{"type":"text","text":"Inspect chat messages, tools, and raw session records from a composer pill in Paseo."}],"caveatNodes":[[{"type":"text","text":"Supports Codex, Claude Code, and OpenCode"}],[{"type":"text","text":"Reads saved session files on the daemon host and never rewrites them"}],[{"type":"text","text":"OpenCode history needs the opencode command on the daemon PATH"}]],"manifest":{"id":"history","requirements":{"paseo":">=0.9.0"},"build":[["npm","ci","--omit=dev"]]},"repoMeta":{"stars":1,"defaultBranch":"main","pushedAt":"2026-10-01T12:59:52Z"},"owner":{"login":"stevecastaneda","avatarUrl":"https://avatars.githubusercontent.com/u/171488?v=4"},"installNotesHtml":"<p>Enable plugins in <strong>Settings → Plugins</strong>, then:</p>\n<pre><code class=\"language-sh\">paseo plugin add npm:@stevecastaneda/paseo-history\n</code></pre>\n<p>Or from GitHub: <code>paseo plugin add stevecastaneda/paseo-plugins --path history</code>.</p>","readmeText":"# History\n\nA **History** composer pill with Paseo’s built-in Gallery Vertical End icon opens a dialog for inspecting a chat's saved history.\n\nThe default **Conversation** view groups saved records into turns and displays user and assistant messages. Use the footer’s up/down arrows to scroll to the previous or next loaded turn. Tags reveal tools, reasoning, context, and other events. Each message has **Copy message** and an expandable **Raw** view with **Copy JSON**. **Raw source** shows the original JSONL records and their file path.\n\nMessages render Markdown, including headings, emphasis, lists, links, and tables. Code blocks scroll horizontally and have a **Copy code** action. **Copy message** keeps the original Markdown. Internal citation metadata is hidden in the readable view and preserved in Raw; HTML stays plain text. Web links open normally, while local file links copy their destination. Images appear as labeled links rather than loading remote files.\n\nRecognized task notifications show their status, summary, and Markdown result immediately, with token/tool/duration statistics when available. **Details** reveals task IDs, output paths, and notes; **Copy task result** copies just the result. Original notifications remain in Raw. Unknown or incomplete wrappers stay as ordinary message text.\n\nThe dialog automatically reads past introductory context to show conversation messages. Use **More** to continue through the history. Related records merge into their turn as they load. **Refresh** rereads from the beginning. The last loaded turn may have more records until the file is fully loaded. Files are never rewritten.\n\nSupports **Codex**, **Claude Code**, and **OpenCode**. History is read on the Paseo daemon host using the chat's native session ID. Codex uses `CODEX_HOME` (default `~/.codex`), including archived sessions. Claude uses `CLAUDE_CONFIG_DIR` (default `~/.claude`). Unsupported providers and missing or ambiguous files show an explanation. A single entry larger than 4 MiB must be inspected externally.\n\nOpenCode uses its [session export command](https://opencode.ai/docs/cli/#export), with external plugins disabled (`--pure`). It requires an OpenCode version supporting that flag on the daemon's `PATH` (verified with 1.18.18), and inherits the daemon's OpenCode/XDG environment. Raw source shows the export command and JSONL-formatted session metadata and complete message records, preserving their parts and metadata. Export requests are limited to 64 MiB and 30 seconds. Each page checks the exported content; if the session changes while paging, use **Refresh** to reread it. Text, file labels, tool inputs/results/errors, and reasoning are recognized; unknown parts remain in Raw.\n\nThe viewer shows what the harness saved, which can differ from Paseo's displayed chat. Tool results and mirrored transport events stay behind tags rather than appearing as additional conversation messages.\n\n## Install\n\nEnable plugins in **Settings → Plugins**, then:\n\n```sh\npaseo plugin add npm:@stevecastaneda/paseo-history\n```\n\nOr from GitHub: `paseo plugin add stevecastaneda/paseo-plugins --path history`.\n\n## Local install\n\nWith plugins enabled in Paseo:\n\n```sh\ncd history\nnpm install\nnpm run typecheck\nnpm test\npaseo plugin install \"$PWD\"\n```\n\nAfter edits, run the checks and `paseo plugin reload history`.\n"}