pi-turnlog
Compact Pi extension for recording turnlog provenance with low prompt overhead.
Package details
Install pi-turnlog from npm and Pi will load the resources declared by the package manifest.
$ pi install npm:pi-turnlog- Package
pi-turnlog- Version
0.1.2- Published
- Jun 4, 2026
- Downloads
- not available
- Author
- probabilityengineer
- License
- MIT
- Types
- extension
- Size
- 22.1 KB
- Dependencies
- 2 dependencies · 2 peers
Pi manifest JSON
{
"extensions": [
"./index.ts"
]
}Security note
Pi packages can execute code and influence agent behavior. Review the source before installing third-party packages.
README
pi-turnlog
Pi extension layer for turnlog.
Goal
Provide a thin Pi-facing wrapper around the turnlog CLI for durable session and turn provenance.
Install
Install the Rust CLI first:
cargo install turnlog
Then install the Pi extension:
pi install npm:pi-turnlog
From GitHub:
pi install git:github.com/ProbabilityEngineer/pi-turnlog
For local testing:
pi -e ./index.ts
Commands
The slash-command surface is intentionally compact:
/turnlog-status [--cwd /path/to/repo]— show current turnlog/VCS status./turnlog-start --goal "..." [--ticket ...] [--cwd /path/to/repo]— initialize.turnlog/if needed and start a new session./turnlog-record [--summary "..."] [--auto-init] [--auto-start] [--goal "..."] [--cwd /path/to/repo]— record the latest assistant turn only when repository changes make it meaningful.
Tool
One compact model-visible tool:
turnlog action: status/init/start/record/report/auto [cwd=/path/to/repo]
Use the tool when the user wants durable provenance, handoff records, or a session report. Agents should also use it proactively for meaningful repository work: code/docs/ticket changes, commits/pushes, ticket closures, multi-repo work, validation, and handoff context. Do not record routine chat-only turns. Before the final commit/push for a coherent repo change, record what changed, why, validation performed, tickets touched, and intended VCS finalization; if .turnlog/ is tracked in that repo, include those changes in the same commit. Do not record again after push unless committing that follow-up provenance record too. If a record attempt finds turnlog uninitialized, initialize it; auto-start a session for meaningful repo work unless the user forbids persistence.
Missing CLI behavior
pi-turnlog is a thin wrapper and does not install the Rust CLI for you. If the turnlog executable is missing, commands and tools print an explicit install hint:
cargo install turnlog
If turnlog is installed outside PATH, start Pi with:
TURNLOG_BIN=/absolute/path/to/turnlog pi
Notes
- quoted arguments are supported
TURNLOG_BINoverrides the executable path- stdout/stderr are surfaced in Pi
- auto-recording is off by default and can be enabled with
turnlog action=auto enabled=true - pass
cwd(tool) or--cwd/-C(commands) when Pi is running in one directory but the agent is changing another repository - auto-record automatically initializes turnlog and starts a conservative session when meaningful repository changes exist in Pi's current cwd
- auto-record and
/turnlog-recordskip chat-only turns when no repository change is detected turnlog initthrough this extension adds.turnlog/to.gitignoreso local provenance is not pushed to GitHub by default/turnlog-record --goal "..." --summary "..."initializes turnlog and starts a session when needed before recording meaningful repo changes; use--no-auto-initor--no-auto-startonly when explicitly desired- source entrypoint is
index.ts