No description
Find a file
Vincent Batts 6751ef1503 Initial gosh-claude plugin
Reports Claude Code session activity to gosh: one event per prompt typed
and per assistant turn, using each record's own cwd. Prompt text is never
reported; the only free text is the session title and tool names.
2026-10-15 13:52:27 -04:00
.gitignore Initial gosh-claude plugin 2026-10-15 13:52:27 -04:00
go.mod Initial gosh-claude plugin 2026-10-15 13:52:27 -04:00
LICENSE Initial gosh-claude plugin 2026-10-15 13:52:27 -04:00
main.go Initial gosh-claude plugin 2026-10-15 13:52:27 -04:00
main_test.go Initial gosh-claude plugin 2026-10-15 13:52:27 -04:00
README.md Initial gosh-claude plugin 2026-10-15 13:52:27 -04:00

gosh-claude

A gosh plugin that reports Claude Code session activity: when you were working with Claude, and in which directories.

Claude Code logs every session to ~/.claude/projects/*/*.jsonl, one record per line, each with a timestamp and the working directory. gosh-claude collect turns those into gosh activity events:

kind one event per
prompt prompt you typed (detail: the session title)
assistant assistant turn (detail: the tools it called, e.g. Bash,Read)

Tool results, attachments and other bookkeeping records are not reported. Prompt text is never reported; session logs can contain secrets, so the only free text sent is the session title. The directory of each event is the record's own cwd, so a session that moves between directories or worktrees is attributed correctly.

Install

go install git.batts.cloud/vbatts/gosh-claude@latest   # puts gosh-claude in $(go env GOPATH)/bin
gosh plugin add claude
gosh collect

Then gosh report and gosh timeline include Claude activity (@claude lines). CLAUDE_CONFIG_DIR is honoured; gosh-claude collect --dir overrides it.

Protocol

gosh-claude describe
gosh-claude collect --since <unix seconds> [--dir <claude config dir>]

Output is JSON lines; the full protocol and a guide to writing plugins are in gosh's docs/PLUGINS.md. Events are keyed by the record's uuid, so collecting twice is harmless. Only the standard library is used.

License

MIT, see LICENSE.