Skip to content
You're viewing documentation for v1.0. It may be out of date.Go to latest
jalco-drop
Esc
↑↓navigate↵open⌘Jpreview
On this page

Agent sessions

Share a Claude Code or Pi session as a readable conversation, without its thinking or tool output.

Coding agents save every session as a .jsonl file. jalco-drop opens one as the conversation it was: your prompts, the agent’s replies rendered as markdown, and one line for each tool call with the command or file it touched. Failed tool calls are marked. A link like this shows a colleague how the agent got somewhere, not only where it ended up.

It reads sessions from Claude Code (~/.claude/projects/) and Pi (~/.pi/agent/sessions/).

Pass the session file to the CLI:

jalco-drop -e 7d ~/.claude/projects/<project>/<session>.jsonl

What leaves your machine

A raw session holds far more than the conversation: the model’s thinking, the full output of every tool call, file contents, images, token counts and your working directory. Before uploading, the CLI rewrites the file to keep only:

  • your prompts and the agent’s replies, with system reminders removed
  • each tool call’s name and one line of its input: the command, path, pattern, URL or query
  • whether each tool call failed

Everything else stays on your machine, and the raw bytes at /<slug>/<file> are the trimmed file, not the original. A 5 MB session is usually under 200 KB after trimming.

The one-line tool inputs and your prompts are still uploaded as written, so read the session before you send it. A command with a token in it is still a token.

A session uploaded another way, such as through the admin or the API, is not trimmed. The page still hides thinking and tool output, but the raw file has everything.

Other JSON Lines files

A .jsonl or .ndjson file that isn’t a session opens as a table, one row per line and a column per field. Nested values show as JSON in their cell.

Was this page helpful?