@wassname2/pi-annotated-journal

Annotate recent Pi conversation turns and keep the feedback in a Markdown journal

Packages

Package details

extension

Install @wassname2/pi-annotated-journal from npm and Pi will load the resources declared by the package manifest.

$ pi install npm:@wassname2/pi-annotated-journal
Package
@wassname2/pi-annotated-journal
Version
0.1.1
Published
Sep 9, 2026
Downloads
280/mo · 280/wk
Author
wassname2
License
MIT
Types
extension
Size
27.7 KB
Dependencies
0 dependencies · 1 peer
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

@wassname2/pi-annotated-journal

Annotate recent Pi messages in $VISUAL or $EDITOR, and keep the feedback in a Markdown journal.

pi install npm:@wassname2/pi-annotated-journal
/annotate       # last 6 user/assistant messages
/annotate 10    # last 10

Pi opens a Markdown transcript with every source line blockquoted. Write feedback as unquoted text near the line it refers to, then save and close. The extension then:

  1. appends the annotated transcript to docs/human_journal.md;
  2. records the entry in the Pi session;
  3. sends the transcript to the model as hidden context and starts the next turn.

Nothing is saved or sent if you add no unquoted text. An editor error cancels the operation. Without $VISUAL or $EDITOR, Pi's built-in editor is used.

Every interactive or RPC prompt is also appended as a quoted User message record. Extension-injected messages are excluded. The journal is not added to model context automatically; ask Pi to read it when it is useful.

PI_ANNOTATE_JOURNAL sets the journal path. Relative paths resolve from Pi's working directory.

Export supervision data

pi-supervision-export --journal docs/human_journal.md --output supervision.jsonl

Reads the session files referenced by the journal. --session PATH, repeatable, restricts the export. Records are typed user_message or human_annotation; an annotation carries the message ID and the source line it follows.

Development

npm install
npm run check

The external-editor flow is adapted from pi-annotated-reply.