pi-jj-auto

Automatic jj revision management โ€” guards file edits to keep Jujutsu revisions focused

Package details

extensionskill

Install pi-jj-auto from npm and Pi will load the resources declared by the package manifest.

$ pi install npm:pi-jj-auto
Package
pi-jj-auto
Version
0.1.6
Published
May 5, 2026
Downloads
571/mo ยท 571/wk
Author
darkawower
License
MIT
Types
extension, skill
Size
31.2 KB
Dependencies
0 dependencies ยท 0 peers
Pi manifest JSON
{
  "extensions": [
    "./extensions"
  ],
  "skills": [
    "./skills"
  ]
}

Security note

Pi packages can execute code and influence agent behavior. Review the source before installing third-party packages.

README

pi-jj-auto

Automatic jj revision management for pi coding agent.

What it does

  • ๐Ÿ›ก๏ธ Guards file edits โ€” blocks write/edit when the current jj revision already has work
  • ๐Ÿท๏ธ Auto-describes โ€” sets revision description from your prompt when work finishes on an empty revision
  • ๐Ÿค– LLM decides โ€” blocked edits show clear instructions, the model chooses jj new or jj desc

Install

pi install npm:pi-jj-auto

How it works

  1. You send a prompt
  2. LLM tries to edit a file
  3. Extension checks the current jj revision:
    • Empty description โ†’ pass through (fresh revision)
    • Description + no diff โ†’ pass through (revision just created via jj new -m)
    • Description + diff โ†’ block with guidance: new task โ†’ jj new -m "...", same task โ†’ jj desc -m "..."
  4. LLM runs the right jj command and retries the edit
  5. When done, auto-describes the revision from your prompt if description is still empty

Configuration

Global: ~/.pi/agent/pi-jj-auto.json
Project: .pi/pi-jj-auto.json

{
  "enabled": true,
  "blockOnMismatch": true,
  "autoDescribe": true,
  "maxPromptLength": 72
}
Field Type Default Description
enabled boolean true Enable/disable
blockOnMismatch boolean true Block edits or just notify
autoDescribe boolean true Warn at turn end when revision has diff but no description
maxPromptLength number 72 Max task length in guard messages

Debug

Run pi with debug logging to verify activation, skill injection, and bash classification:

PI_JJ_AUTO_DEBUG=1 pi