internal/

directory
v0.29.2 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 30, 2026 License: CC0-1.0

Directories

Path Synopsis
Package buildinfo exposes version metadata injected by release builds.
Package buildinfo exposes version metadata injected by release builds.
cli
Package cli wires up the prosa CLI: cobra command tree, persistent flags, and the dispatcher for sub-commands.
Package cli wires up the prosa CLI: cobra command tree, persistent flags, and the dispatcher for sub-commands.
browser
Package browser opens URLs in the system default browser.
Package browser opens URLs in the system default browser.
render
Package render formats the prosa timeline for both interactive terminals (Lipgloss colors, day-grouped headers, active markers) and non-interactive sinks (pipes/redirects/scripts — plain tab-separated rows without escape codes).
Package render formats the prosa timeline for both interactive terminals (Lipgloss colors, day-grouped headers, active markers) and non-interactive sinks (pipes/redirects/scripts — plain tab-separated rows without escape codes).
rpc
Package rpc loads the saved auth.json and constructs Connect clients that automatically attach the Bearer token.
Package rpc loads the saved auth.json and constructs Connect clients that automatically attach the Bearer token.
schedule
Package schedule installs and removes the prosa-sync background job using the OS-native scheduler: launchd on macOS, systemd user timers on Linux.
Package schedule installs and removes the prosa-sync background job using the OS-native scheduler: launchd on macOS, systemd user timers on Linux.
spinner
Package spinner provides a Bubble Tea progress display for `prosa sync`.
Package spinner provides a Bubble Tea progress display for `prosa sync`.
Package device resolves the stable per-machine identity prosa uses for the sessions.device_id column and the future server-side device row.
Package device resolves the stable per-machine identity prosa uses for the sessions.device_id column and the future server-side device row.
Package httpserver runs an *http.Server bound to a context, with a bounded graceful shutdown and a force-close fallback so CTRL+C always returns the prompt — even when long-lived handlers (SSE, streaming proxies) ignore request-context cancellation.
Package httpserver runs an *http.Server bound to a context, with a bounded graceful shutdown and a force-close fallback so CTRL+C always returns the prompt — even when long-lived handlers (SSE, streaming proxies) ignore request-context cancellation.
importers
antigravity
Package antigravity implements the prosa importer for the Antigravity CLI (Google's `agy`, the successor to Gemini CLI).
Package antigravity implements the prosa importer for the Antigravity CLI (Google's `agy`, the successor to Gemini CLI).
claudecode
Package claudecode implements the prosa importer for Claude Code JSONL transcripts stored under ~/.claude/projects/.
Package claudecode implements the prosa importer for Claude Code JSONL transcripts stored under ~/.claude/projects/.
codex
Package codex implements the prosa importer for Codex CLI session JSONL transcripts stored under ~/.codex/sessions/<YYYY>/<MM>/<DD>/ rollout-*.jsonl.
Package codex implements the prosa importer for Codex CLI session JSONL transcripts stored under ~/.codex/sessions/<YYYY>/<MM>/<DD>/ rollout-*.jsonl.
cursor
Package cursor implements the prosa importer for Cursor "agent" chats preserved as SQLite databases under ~/.cursor/chats/<workspace>/<agent>/ store.db.
Package cursor implements the prosa importer for Cursor "agent" chats preserved as SQLite databases under ~/.cursor/chats/<workspace>/<agent>/ store.db.
gemini
Package gemini implements the prosa importer for Gemini CLI chat histories preserved under ~/.gemini/tmp/<projectHash>/.
Package gemini implements the prosa importer for Gemini CLI chat histories preserved under ~/.gemini/tmp/<projectHash>/.
grokbuild
Package grokbuild implements the prosa importer for Grok Build (xAI's CLI agent, binary `grok`) sessions stored under ~/.grok/sessions/<percent-encoded-cwd>/<uuidv7>/.
Package grokbuild implements the prosa importer for Grok Build (xAI's CLI agent, binary `grok`) sessions stored under ~/.grok/sessions/<percent-encoded-cwd>/<uuidv7>/.
hermes
Package hermes implements the prosa importer for Hermes CLI session histories preserved under ~/.hermes/.
Package hermes implements the prosa importer for Hermes CLI session histories preserved under ~/.hermes/.
Package legacy reads the prosa v1 ".prosa" data bundle (a SQLite catalog + content-addressed zstd-compressed raw source files) so the v3 importers can re-ingest historical sessions whose original source files have since disappeared from the filesystem (e.g., Claude Code retention deleted ~/.claude/projects/.../*.jsonl past a few weeks).
Package legacy reads the prosa v1 ".prosa" data bundle (a SQLite catalog + content-addressed zstd-compressed raw source files) so the v3 importers can re-ingest historical sessions whose original source files have since disappeared from the filesystem (e.g., Claude Code retention deleted ~/.claude/projects/.../*.jsonl past a few weeks).
Package panel hosts the web UI for prosa.
Package panel hosts the web UI for prosa.
assets
Package assets embeds the panel's static files.
Package assets embeds the panel's static files.
charts
Package charts builds chart specs serialized to a JSON island and rendered client-side by Frappe Charts (see assets/charts-init.js).
Package charts builds chart specs serialized to a JSON island and rendered client-side by Frappe Charts (see assets/charts-init.js).
oauth
Package oauth speaks the minimal GitHub OAuth web flow needed by the panel: build the consent URL, exchange the code, fetch the primary verified email.
Package oauth speaks the minimal GitHub OAuth web flow needed by the panel: build the consent URL, exchange the code, fetch the primary verified email.
render
Package render turns canonical session content into the HTML the sidepanel template ships.
Package render turns canonical session content into the HTML the sidepanel template ships.
rpc
Package rpc wraps Connect clients that call prosa-server, pre-injecting "Authorization: Admin <token>" so callers never need to remember it.
Package rpc wraps Connect clients that call prosa-server, pre-injecting "Authorization: Admin <token>" so callers never need to remember it.
session
Package session implements the panel's HMAC-signed cookie.
Package session implements the panel's HMAC-signed cookie.
templates
Package templates holds the html/template sources rendered by the panel handlers.
Package templates holds the html/template sources rendered by the panel handlers.
Package paths centralizes resolution of prosa's on-disk locations so the rest of the codebase never hard-codes ~/...
Package paths centralizes resolution of prosa's on-disk locations so the rest of the codebase never hard-codes ~/...
Package profiles loads and saves the local per-agent profile config (profiles.json).
Package profiles loads and saves the local per-agent profile config (profiles.json).
Package projectid resolves the canonical identity of the project a prosa session ran in.
Package projectid resolves the canonical identity of the project a prosa session ran in.
Package server hosts the prosa server runtime: config, HTTP wiring, Connect handlers, and storage adapters (Postgres + S3-compatible).
Package server hosts the prosa server runtime: config, HTTP wiring, Connect handlers, and storage adapters (Postgres + S3-compatible).
auth
Package auth implements PKCE + localhost-callback login for the CLI and bearer middleware for all other RPCs.
Package auth implements PKCE + localhost-callback login for the CLI and bearer middleware for all other RPCs.
handlers
Package handlers binds the Connect-generated service interfaces to the prosa internal/server services (auth, sessions, devices).
Package handlers binds the Connect-generated service interfaces to the prosa internal/server services (auth, sessions, devices).
storage
Package storage wraps the Postgres pool and the S3-compatible object store.
Package storage wraps the Postgres pool and the S3-compatible object store.
Package sessionkind classifies a session into zero-or-more "special session" kinds from the turns and tool counters an importer already projected.
Package sessionkind classifies a session into zero-or-more "special session" kinds from the turns and tool counters an importer already projected.
Package sessiontext classifies and cleans the operational/meta blocks agents inject as user-role messages of a session.
Package sessiontext classifies and cleans the operational/meta blocks agents inject as user-role messages of a session.
Package store wraps the local SQLite database that holds the canonical session metadata projected from raw agent transcripts.
Package store wraps the local SQLite database that holds the canonical session metadata projected from raw agent transcripts.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL