{"_id":"pi-interactive-shell","_rev":"50-17a471734f9b354b1adce9a7408726a2","name":"pi-interactive-shell","dist-tags":{"latest":"0.17.0"},"versions":{"0.3.0":{"name":"pi-interactive-shell","version":"0.3.0","keywords":["pi","pi-coding-agent","extension","interactive","shell","terminal","tui","subagent","claude","gemini","codex"],"author":{"name":"Nico Bailon"},"license":"MIT","_id":"pi-interactive-shell@0.3.0","maintainers":[{"name":"nicopreme","email":"nico.bailon@gmail.com"}],"homepage":"https://github.com/nicobailon/pi-interactive-shell#readme","bugs":{"url":"https://github.com/nicobailon/pi-interactive-shell/issues"},"pi":{"extensions":["./index.ts"]},"bin":{"pi-interactive-shell-install":"scripts/install.js"},"dist":{"shasum":"dca478fe1f41b48ade8813c51e1530d47ec07feb","tarball":"https://registry.npmjs.org/pi-interactive-shell/-/pi-interactive-shell-0.3.0.tgz","fileCount":11,"integrity":"sha512-3WKMrwy8NT2K59ijjNHp9Dj4x0u9BFmu0oKjadh/9V6s5wR/8sNh60hDNw0mCEY/c8SjnoXEpohMf6mjOrkE4w==","signatures":[{"sig":"MEYCIQDbqXZinXAjaynrR1W6lOYVsx5/n548uiscw77pksQypAIhAL5gmnX29Iz8LbuBnf9j1xJN2kVCAvLf/1S+T1rz//K7","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":114741},"type":"module","gitHead":"e9cab2691011aa11fc8c721b0f0484348ecbcb5d","scripts":{"postinstall":"node ./scripts/fix-spawn-helper.cjs"},"_npmUser":{"name":"nicopreme","email":"nico.bailon@gmail.com"},"repository":{"url":"git+https://github.com/nicobailon/pi-interactive-shell.git","type":"git"},"_npmVersion":"11.6.2","description":"Run AI coding agents as foreground subagents in pi TUI overlays with hands-free monitoring","directories":{},"_nodeVersion":"25.2.1","dependencies":{"node-pty":"^1.0.0","@xterm/headless":"^5.5.0","@xterm/addon-serialize":"^0.13.0"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/pi-interactive-shell_0.3.0_1768699749508_0.44017407398841457","host":"s3://npm-registry-packages-npm-production"}},"0.3.1":{"name":"pi-interactive-shell","version":"0.3.1","keywords":["pi","pi-coding-agent","extension","interactive","shell","terminal","tui","subagent","claude","gemini","codex"],"author":{"name":"Nico Bailon"},"license":"MIT","_id":"pi-interactive-shell@0.3.1","maintainers":[{"name":"nicopreme","email":"nico.bailon@gmail.com"}],"homepage":"https://github.com/nicobailon/pi-interactive-shell#readme","bugs":{"url":"https://github.com/nicobailon/pi-interactive-shell/issues"},"pi":{"extensions":["./index.ts"]},"bin":{"pi-interactive-shell":"scripts/install.js"},"dist":{"shasum":"f6993f820177ff9e911fdd243e250be3401b2c8c","tarball":"https://registry.npmjs.org/pi-interactive-shell/-/pi-interactive-shell-0.3.1.tgz","fileCount":11,"integrity":"sha512-DRGdGjIeO9gBMXXKG0CYutKNtF3FHP4xHlwAYcjO4T3MJ5EVYSToVPwExkOy3vHXnwo0tRPRzDU7u+P6U12OHQ==","signatures":[{"sig":"MEUCIQCNuuTKAuAkkaQsFkxBDL1F8fypqLU+e3vdm2OYYbZ0fgIgaogTbALP5RQvqfL1ES0EVXA7blk6z0gfYf8pLLzJK5I=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":114725},"type":"module","gitHead":"e19c0ec11d8ae45e918c3fb4b55ba7f33fee603a","scripts":{"postinstall":"node ./scripts/fix-spawn-helper.cjs"},"_npmUser":{"name":"nicopreme","email":"nico.bailon@gmail.com"},"repository":{"url":"git+https://github.com/nicobailon/pi-interactive-shell.git","type":"git"},"_npmVersion":"11.6.2","description":"Run AI coding agents as foreground subagents in pi TUI overlays with hands-free monitoring","directories":{},"_nodeVersion":"25.2.1","dependencies":{"node-pty":"^1.0.0","@xterm/headless":"^5.5.0","@xterm/addon-serialize":"^0.13.0"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/pi-interactive-shell_0.3.1_1768699797215_0.5929116031236363","host":"s3://npm-registry-packages-npm-production"}},"0.3.2":{"name":"pi-interactive-shell","version":"0.3.2","keywords":["pi","pi-coding-agent","extension","interactive","shell","terminal","tui","subagent","claude","gemini","codex"],"author":{"name":"Nico Bailon"},"license":"MIT","_id":"pi-interactive-shell@0.3.2","maintainers":[{"name":"nicopreme","email":"nico.bailon@gmail.com"}],"homepage":"https://github.com/nicobailon/pi-interactive-shell#readme","bugs":{"url":"https://github.com/nicobailon/pi-interactive-shell/issues"},"pi":{"extensions":["./index.ts"]},"bin":{"pi-interactive-shell":"scripts/install.js"},"dist":{"shasum":"7b8c3e784747689e2491f142b5a0f484d694efac","tarball":"https://registry.npmjs.org/pi-interactive-shell/-/pi-interactive-shell-0.3.2.tgz","fileCount":11,"integrity":"sha512-upXWnjb6AcY6mu16dguO/Zk/QD3hRXz6X2cKPyAF6CZmuatL6UjriQMNET2Ee6Cgj4yfvD7gQJNaLcV8DE0caQ==","signatures":[{"sig":"MEUCIQDepRIkmdS+BfE6Kl7xZGQMZqfQ0035cO+Kh4Dd8et99QIgGhasQH3ltAMNlOFs5SHU5y2mxGEMuFMm5tYgWGtSWmQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":114802},"type":"module","gitHead":"219de69a79087c2aca7ad53b15e1fdb61e01d18e","scripts":{"postinstall":"node ./scripts/fix-spawn-helper.cjs"},"_npmUser":{"name":"nicopreme","email":"nico.bailon@gmail.com"},"repository":{"url":"git+https://github.com/nicobailon/pi-interactive-shell.git","type":"git"},"_npmVersion":"11.6.2","description":"Run AI coding agents as foreground subagents in pi TUI overlays with hands-free monitoring","directories":{},"_nodeVersion":"25.2.1","dependencies":{"node-pty":"^1.0.0","@xterm/headless":"^5.5.0","@xterm/addon-serialize":"^0.13.0"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/pi-interactive-shell_0.3.2_1768699978840_0.7711495363394592","host":"s3://npm-registry-packages-npm-production"}},"0.3.3":{"name":"pi-interactive-shell","version":"0.3.3","keywords":["pi","pi-coding-agent","extension","interactive","shell","terminal","tui","subagent","claude","gemini","codex"],"author":{"name":"Nico Bailon"},"license":"MIT","_id":"pi-interactive-shell@0.3.3","maintainers":[{"name":"nicopreme","email":"nico.bailon@gmail.com"}],"homepage":"https://github.com/nicobailon/pi-interactive-shell#readme","bugs":{"url":"https://github.com/nicobailon/pi-interactive-shell/issues"},"pi":{"extensions":["./index.ts"]},"bin":{"pi-interactive-shell":"scripts/install.js"},"dist":{"shasum":"3774e515ec7ad76298d785be0a6fb69026a33de7","tarball":"https://registry.npmjs.org/pi-interactive-shell/-/pi-interactive-shell-0.3.3.tgz","fileCount":11,"integrity":"sha512-jqZGu0oqd6MDFIZR9K52k6ZWveF9NAfNBwC1UDiuFQrIDwC7Iy7BMRNVWoGcBeOcPiJdYQyU3KTJXNVu4W7dbA==","signatures":[{"sig":"MEUCIQC9889tUXAUvjZyPfZkpwG3Itcorq0JEbEZptMslYFzLQIgWZ0j0Biw0QSMozCFrriDb6iYdk2YQKbMZrSQKmP/sWs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":116058},"type":"module","gitHead":"52efa8cf50441f280eb18612881e59425a868317","scripts":{"postinstall":"node ./scripts/fix-spawn-helper.cjs"},"_npmUser":{"name":"nicopreme","email":"nico.bailon@gmail.com"},"repository":{"url":"git+https://github.com/nicobailon/pi-interactive-shell.git","type":"git"},"_npmVersion":"11.6.2","description":"Run AI coding agents as foreground subagents in pi TUI overlays with hands-free monitoring","directories":{},"_nodeVersion":"25.2.1","dependencies":{"node-pty":"^1.0.0","@xterm/headless":"^5.5.0","@xterm/addon-serialize":"^0.13.0"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/pi-interactive-shell_0.3.3_1768705128204_0.8359672053304721","host":"s3://npm-registry-packages-npm-production"}},"0.4.0":{"name":"pi-interactive-shell","version":"0.4.0","keywords":["pi","pi-coding-agent","extension","interactive","shell","terminal","tui","subagent","claude","gemini","codex"],"author":{"name":"Nico Bailon"},"license":"MIT","_id":"pi-interactive-shell@0.4.0","maintainers":[{"name":"nicopreme","email":"nico.bailon@gmail.com"}],"homepage":"https://github.com/nicobailon/pi-interactive-shell#readme","bugs":{"url":"https://github.com/nicobailon/pi-interactive-shell/issues"},"pi":{"extensions":["./index.ts"]},"bin":{"pi-interactive-shell":"scripts/install.js"},"dist":{"shasum":"c30083457a330ed4517a56bf8792ac0684ee812f","tarball":"https://registry.npmjs.org/pi-interactive-shell/-/pi-interactive-shell-0.4.0.tgz","fileCount":11,"integrity":"sha512-P4CqusHuVHnY/zyy4lNbTbMSFZpqtZVRqmUrStOapNGaWp2Xuzs9GVHPBG8kifKHndw8X/9Hy5bNo2vUUXTAvw==","signatures":[{"sig":"MEYCIQDr7wsseoEn68SQZh0N2NdSp1fmIEonu1WpABjxbKzsbwIhAI6bupEy9PpdzACwjLbUmoIBbBEW0PRxw2EksJGGmZDk","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":133760},"type":"module","gitHead":"e1ca20014944448868ee3ac17c66e42c550a830d","scripts":{"postinstall":"node ./scripts/fix-spawn-helper.cjs"},"_npmUser":{"name":"nicopreme","email":"nico.bailon@gmail.com"},"repository":{"url":"git+https://github.com/nicobailon/pi-interactive-shell.git","type":"git"},"_npmVersion":"11.6.2","description":"Run AI coding agents as foreground subagents in pi TUI overlays with hands-free monitoring","directories":{},"_nodeVersion":"25.2.1","dependencies":{"node-pty":"^1.0.0","@xterm/headless":"^5.5.0","@xterm/addon-serialize":"^0.13.0"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/pi-interactive-shell_0.4.0_1768708798997_0.6377115455869489","host":"s3://npm-registry-packages-npm-production"}},"0.4.1":{"name":"pi-interactive-shell","version":"0.4.1","keywords":["pi","pi-coding-agent","extension","interactive","shell","terminal","tui","subagent","claude","gemini","codex"],"author":{"name":"Nico Bailon"},"license":"MIT","_id":"pi-interactive-shell@0.4.1","maintainers":[{"name":"nicopreme","email":"nico.bailon@gmail.com"}],"homepage":"https://github.com/nicobailon/pi-interactive-shell#readme","bugs":{"url":"https://github.com/nicobailon/pi-interactive-shell/issues"},"pi":{"extensions":["./index.ts"]},"bin":{"pi-interactive-shell":"scripts/install.js"},"dist":{"shasum":"e7b19a135c318444557797657c9c9b6afa387590","tarball":"https://registry.npmjs.org/pi-interactive-shell/-/pi-interactive-shell-0.4.1.tgz","fileCount":11,"integrity":"sha512-pCPQeOkA81ehGswMH/I7ulx7LcTQAk2Q26XN1l4hhD4kZUdBSkTu09aKZBZ5IYNoJK2TSGjhLLEb9ClB4dVcxQ==","signatures":[{"sig":"MEUCIQD3XJn70w0AHpLWPBdaCHDabvSZrXkV92ielpKX8Qt3EwIgJ+mj0qXW7rbz2Fdd/JAOFBQgs5f1amBt+hftiZoJL+w=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":134224},"type":"module","gitHead":"7457b3fb9e7c6a8c49b16e158417a77534090a3b","scripts":{"postinstall":"node ./scripts/fix-spawn-helper.cjs"},"_npmUser":{"name":"nicopreme","email":"nico.bailon@gmail.com"},"repository":{"url":"git+https://github.com/nicobailon/pi-interactive-shell.git","type":"git"},"_npmVersion":"11.6.2","description":"Run AI coding agents as foreground subagents in pi TUI overlays with hands-free monitoring","directories":{},"_nodeVersion":"25.2.1","dependencies":{"node-pty":"^1.0.0","@xterm/headless":"^5.5.0","@xterm/addon-serialize":"^0.13.0"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/pi-interactive-shell_0.4.1_1768709476949_0.42068468052136154","host":"s3://npm-registry-packages-npm-production"}},"0.4.2":{"name":"pi-interactive-shell","version":"0.4.2","keywords":["pi","pi-coding-agent","extension","interactive","shell","terminal","tui","subagent","claude","gemini","codex"],"author":{"name":"Nico Bailon"},"license":"MIT","_id":"pi-interactive-shell@0.4.2","maintainers":[{"name":"nicopreme","email":"nico.bailon@gmail.com"}],"homepage":"https://github.com/nicobailon/pi-interactive-shell#readme","bugs":{"url":"https://github.com/nicobailon/pi-interactive-shell/issues"},"pi":{"extensions":["./index.ts"]},"bin":{"pi-interactive-shell":"scripts/install.js"},"dist":{"shasum":"955c718167b4916d1e832fecda50ef287fb41561","tarball":"https://registry.npmjs.org/pi-interactive-shell/-/pi-interactive-shell-0.4.2.tgz","fileCount":11,"integrity":"sha512-VwrVgUyQieavhYC2ang8eRaRSfnkL5DdTizGggW0rDA5FSY6EG1OQVsqAQdB/UNleRiSDzKTdm26XEyy/DZD7A==","signatures":[{"sig":"MEQCICm5ySQPZKSMQR4/n8uqJLcZiiSYxmcenCwOfduNZRxqAiAI+yri1+6postTLjbdVheZGZxI0ccikNS4VbxL83V9ig==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":143908},"type":"module","gitHead":"08d25606c4fa5924240cb8fd19a6a82e66b42822","scripts":{"postinstall":"node ./scripts/fix-spawn-helper.cjs"},"_npmUser":{"name":"nicopreme","email":"nico.bailon@gmail.com"},"repository":{"url":"git+https://github.com/nicobailon/pi-interactive-shell.git","type":"git"},"_npmVersion":"11.6.2","description":"Run AI coding agents as foreground subagents in pi TUI overlays with hands-free monitoring","directories":{},"_nodeVersion":"25.2.1","dependencies":{"node-pty":"^1.0.0","@xterm/headless":"^5.5.0","@xterm/addon-serialize":"^0.13.0"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/pi-interactive-shell_0.4.2_1768720631616_0.18956517074055435","host":"s3://npm-registry-packages-npm-production"}},"0.4.3":{"name":"pi-interactive-shell","version":"0.4.3","keywords":["pi","pi-coding-agent","extension","interactive","shell","terminal","tui","subagent","claude","gemini","codex"],"author":{"name":"Nico Bailon"},"license":"MIT","_id":"pi-interactive-shell@0.4.3","maintainers":[{"name":"nicopreme","email":"nico.bailon@gmail.com"}],"homepage":"https://github.com/nicobailon/pi-interactive-shell#readme","bugs":{"url":"https://github.com/nicobailon/pi-interactive-shell/issues"},"pi":{"extensions":["./index.ts"]},"bin":{"pi-interactive-shell":"scripts/install.js"},"dist":{"shasum":"888900e1c275940dbe6ea3184966a77cab7b9cd8","tarball":"https://registry.npmjs.org/pi-interactive-shell/-/pi-interactive-shell-0.4.3.tgz","fileCount":11,"integrity":"sha512-yeDTErLr/USB3Yhdb5mj6Zyi+0463TxtyfDkWOsJ1T4SWaj1mgntzjJRUfL+/WTa8CaDd5rNqmAmq9HA9aFWpw==","signatures":[{"sig":"MEQCICSIy8+QHwf6/th3FL+Eh/JtD3bRpjJ08bodxDBD0Y62AiA1RWIuj4J6k0X88yAEhN+CRcrGRBVUSxph3DSeAJmuIQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":149475},"type":"module","gitHead":"29be676882c8408ce8dbfaf03994660ec267bfe6","scripts":{"postinstall":"node ./scripts/fix-spawn-helper.cjs"},"_npmUser":{"name":"nicopreme","email":"nico.bailon@gmail.com"},"repository":{"url":"git+https://github.com/nicobailon/pi-interactive-shell.git","type":"git"},"_npmVersion":"11.6.2","description":"Run AI coding agents as foreground subagents in pi TUI overlays with hands-free monitoring","directories":{},"_nodeVersion":"25.2.1","dependencies":{"node-pty":"^1.0.0","@xterm/headless":"^5.5.0","@xterm/addon-serialize":"^0.13.0"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/pi-interactive-shell_0.4.3_1768725166846_0.01668704556915035","host":"s3://npm-registry-packages-npm-production"}},"0.4.4":{"name":"pi-interactive-shell","version":"0.4.4","keywords":["pi","pi-coding-agent","extension","interactive","shell","terminal","tui","subagent","claude","gemini","codex"],"author":{"name":"Nico Bailon"},"license":"MIT","_id":"pi-interactive-shell@0.4.4","maintainers":[{"name":"nicopreme","email":"nico.bailon@gmail.com"}],"homepage":"https://github.com/nicobailon/pi-interactive-shell#readme","bugs":{"url":"https://github.com/nicobailon/pi-interactive-shell/issues"},"pi":{"extensions":["./index.ts"]},"bin":{"pi-interactive-shell":"scripts/install.js"},"dist":{"shasum":"bdd4b2a795b359efccfaaf76d304f1db5b5e4007","tarball":"https://registry.npmjs.org/pi-interactive-shell/-/pi-interactive-shell-0.4.4.tgz","fileCount":11,"integrity":"sha512-k7Zv9gkJuyl0XIHjWDUTdCeu+t2C+VkiPbGQ5n/WrSfRC+6Rub3sQnPOCMshnBFfN0fZKH3tl59nDNZbsLwpSg==","signatures":[{"sig":"MEQCIDUMscSeIslx9/g4cTsrSmxSZVNVawjFIJxGDpmlHt//AiB3zdbaVDlkfNxgbyCmDf0mhtO5/UVTR9pkOC51j7bVRg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":147743},"type":"module","gitHead":"9ec24384ad119e37ec04adf670218300f0b0e8c1","scripts":{"postinstall":"node ./scripts/fix-spawn-helper.cjs"},"_npmUser":{"name":"nicopreme","email":"nico.bailon@gmail.com"},"repository":{"url":"git+https://github.com/nicobailon/pi-interactive-shell.git","type":"git"},"_npmVersion":"11.6.2","description":"Run AI coding agents as foreground subagents in pi TUI overlays with hands-free monitoring","directories":{},"_nodeVersion":"25.2.1","dependencies":{"node-pty":"^1.0.0","@xterm/headless":"^5.5.0","@xterm/addon-serialize":"^0.13.0"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/pi-interactive-shell_0.4.4_1768726578728_0.7214832561444919","host":"s3://npm-registry-packages-npm-production"}},"0.4.5":{"name":"pi-interactive-shell","version":"0.4.5","keywords":["pi","pi-coding-agent","extension","interactive","shell","terminal","tui","subagent","claude","gemini","codex"],"author":{"name":"Nico Bailon"},"license":"MIT","_id":"pi-interactive-shell@0.4.5","maintainers":[{"name":"nicopreme","email":"nico.bailon@gmail.com"}],"homepage":"https://github.com/nicobailon/pi-interactive-shell#readme","bugs":{"url":"https://github.com/nicobailon/pi-interactive-shell/issues"},"pi":{"extensions":["./index.ts"]},"bin":{"pi-interactive-shell":"scripts/install.js"},"dist":{"shasum":"eb64e2eb904c3edcdde65927e0daeed9bc8d98bc","tarball":"https://registry.npmjs.org/pi-interactive-shell/-/pi-interactive-shell-0.4.5.tgz","fileCount":11,"integrity":"sha512-56oywFJ36gBjl6p5N+9rdf6KJn08hgjgxcMEE98FMCm024heZEpFF3E7OqYFiugM4lHlP2ArsLT8nrHaEsIOuQ==","signatures":[{"sig":"MEYCIQCWNWAssXYbWYGgZx6TlAaNH6BHNJvc8zkpZsHLxghwUAIhAISoFNEi6E0QOuWiIfUvdofa/A2/x16gD1Fr2Za83Dcz","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":147822},"type":"module","gitHead":"b1c24d7ec99a63464e02cee76b3145c1d09d66bf","scripts":{"postinstall":"node ./scripts/fix-spawn-helper.cjs"},"_npmUser":{"name":"nicopreme","email":"nico.bailon@gmail.com"},"repository":{"url":"git+https://github.com/nicobailon/pi-interactive-shell.git","type":"git"},"_npmVersion":"11.6.2","description":"Run AI coding agents as foreground subagents in pi TUI overlays with hands-free monitoring","directories":{},"_nodeVersion":"25.2.1","dependencies":{"node-pty":"^1.0.0","@xterm/headless":"^5.5.0","@xterm/addon-serialize":"^0.13.0"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/pi-interactive-shell_0.4.5_1768726718935_0.10522784685126352","host":"s3://npm-registry-packages-npm-production"}},"0.4.6":{"name":"pi-interactive-shell","version":"0.4.6","keywords":["pi","pi-coding-agent","extension","interactive","shell","terminal","tui","subagent","claude","gemini","codex"],"author":{"name":"Nico Bailon"},"license":"MIT","_id":"pi-interactive-shell@0.4.6","maintainers":[{"name":"nicopreme","email":"nico.bailon@gmail.com"}],"homepage":"https://github.com/nicobailon/pi-interactive-shell#readme","bugs":{"url":"https://github.com/nicobailon/pi-interactive-shell/issues"},"pi":{"extensions":["./index.ts"]},"bin":{"pi-interactive-shell":"scripts/install.js"},"dist":{"shasum":"975e0b05ddc5505529799cb0124625a668c50ba5","tarball":"https://registry.npmjs.org/pi-interactive-shell/-/pi-interactive-shell-0.4.6.tgz","fileCount":11,"integrity":"sha512-OnlE6tPbq+5OVzLuIUODA83nq7VtqHGRzZtPObbRpz2a6UyXGM/qJTTPMmflDpOFI6PF3PUgCiYlXHnvtNlLeA==","signatures":[{"sig":"MEUCIQCFxOF6tIsRCySD1OHHrdtGUaaPf40rhWfy3OMmgOw/6QIgJJRqbH6Bax2HoN+QehJkqzoVitWxPkP2p4/uMPMkuxY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":153826},"type":"module","gitHead":"70a677d61f955ee2b5cdf31922589ec749510728","scripts":{"postinstall":"node ./scripts/fix-spawn-helper.cjs"},"_npmUser":{"name":"nicopreme","email":"nico.bailon@gmail.com"},"repository":{"url":"git+https://github.com/nicobailon/pi-interactive-shell.git","type":"git"},"_npmVersion":"11.6.2","description":"Run AI coding agents as foreground subagents in pi TUI overlays with hands-free monitoring","directories":{},"_nodeVersion":"25.2.1","dependencies":{"node-pty":"^1.0.0","@xterm/headless":"^5.5.0","@xterm/addon-serialize":"^0.13.0"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/pi-interactive-shell_0.4.6_1768727820536_0.12949270651182143","host":"s3://npm-registry-packages-npm-production"}},"0.4.7":{"name":"pi-interactive-shell","version":"0.4.7","keywords":["pi","pi-coding-agent","extension","interactive","shell","terminal","tui","subagent","claude","gemini","codex"],"author":{"name":"Nico Bailon"},"license":"MIT","_id":"pi-interactive-shell@0.4.7","maintainers":[{"name":"nicopreme","email":"nico.bailon@gmail.com"}],"homepage":"https://github.com/nicobailon/pi-interactive-shell#readme","bugs":{"url":"https://github.com/nicobailon/pi-interactive-shell/issues"},"pi":{"extensions":["./index.ts"]},"bin":{"pi-interactive-shell":"scripts/install.js"},"dist":{"shasum":"a4019231a4203485ed47527f4c80cc937bcb11ca","tarball":"https://registry.npmjs.org/pi-interactive-shell/-/pi-interactive-shell-0.4.7.tgz","fileCount":11,"integrity":"sha512-5GupCBmLGf/3OmJqZGqwd0WXrnfXcdVZnSIVktPnfWHcjZP4AJNjZYvSBomBqE9ugWhNyPwFgSy0DS6roI99Fw==","signatures":[{"sig":"MEQCICFx+JSSKPDc879V1yRCc+Gv7ZeJV6bNy4yQ9B5BfafFAiAz+3uSI5MN6Xitp/BUgXPeXE9FdJHTVXlzy2xV0N5W+w==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":153842},"type":"module","gitHead":"652e7164c7de2c1c9c9d30d951ca3470017d35cc","scripts":{"postinstall":"node ./scripts/fix-spawn-helper.cjs"},"_npmUser":{"name":"nicopreme","email":"nico.bailon@gmail.com"},"repository":{"url":"git+https://github.com/nicobailon/pi-interactive-shell.git","type":"git"},"_npmVersion":"11.6.2","description":"Run AI coding agents as foreground subagents in pi TUI overlays with hands-free monitoring","directories":{},"_nodeVersion":"25.2.1","dependencies":{"node-pty":"^1.0.0","@xterm/headless":"^5.5.0","@xterm/addon-serialize":"^0.13.0"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/pi-interactive-shell_0.4.7_1768728017923_0.5327532579089616","host":"s3://npm-registry-packages-npm-production"}},"0.4.8":{"name":"pi-interactive-shell","version":"0.4.8","keywords":["pi","pi-coding-agent","extension","interactive","shell","terminal","tui","subagent","claude","gemini","codex"],"author":{"name":"Nico Bailon"},"license":"MIT","_id":"pi-interactive-shell@0.4.8","maintainers":[{"name":"nicopreme","email":"nico.bailon@gmail.com"}],"homepage":"https://github.com/nicobailon/pi-interactive-shell#readme","bugs":{"url":"https://github.com/nicobailon/pi-interactive-shell/issues"},"pi":{"extensions":["./index.ts"]},"bin":{"pi-interactive-shell":"scripts/install.js"},"dist":{"shasum":"8e7110818ac82ae6476d9ab21278859d5f36ede1","tarball":"https://registry.npmjs.org/pi-interactive-shell/-/pi-interactive-shell-0.4.8.tgz","fileCount":11,"integrity":"sha512-ZrdJo226Z843WH1LOfA2UO0V2LlMDDvjM7ckmz4mf6vT/xH/4Avh+0IY3k+NWfQVsEpPI7E5wnv3BDoU3eb07Q==","signatures":[{"sig":"MEUCIAIwZk/C9cZy5DyuaKeaHWOQqn8HmuKkkWppekuZI8opAiEA0jq2BDcJ1qwKFJchfjEiFDGsgV7+6/jhaCeQ7J4sOPg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":128558},"type":"module","gitHead":"41c11817b476c014126f1c3ac7a353cc232b2c4a","scripts":{"postinstall":"node ./scripts/fix-spawn-helper.cjs"},"_npmUser":{"name":"nicopreme","email":"nico.bailon@gmail.com"},"repository":{"url":"git+https://github.com/nicobailon/pi-interactive-shell.git","type":"git"},"_npmVersion":"11.6.2","description":"Run AI coding agents as foreground subagents in pi TUI overlays with hands-free monitoring","directories":{},"_nodeVersion":"25.2.1","dependencies":{"node-pty":"^1.1.0","@xterm/headless":"^5.5.0","@xterm/addon-serialize":"^0.13.0"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/pi-interactive-shell_0.4.8_1768871205184_0.9801898642800575","host":"s3://npm-registry-packages-npm-production"}},"0.4.9":{"name":"pi-interactive-shell","version":"0.4.9","keywords":["pi","pi-coding-agent","extension","interactive","shell","terminal","tui","subagent","claude","gemini","codex"],"author":{"name":"Nico Bailon"},"license":"MIT","_id":"pi-interactive-shell@0.4.9","maintainers":[{"name":"nicopreme","email":"nico.bailon@gmail.com"}],"homepage":"https://github.com/nicobailon/pi-interactive-shell#readme","bugs":{"url":"https://github.com/nicobailon/pi-interactive-shell/issues"},"pi":{"extensions":["./index.ts"]},"bin":{"pi-interactive-shell":"scripts/install.js"},"dist":{"shasum":"0e5259a8b81064c1310e0b04e8842d5f1e354333","tarball":"https://registry.npmjs.org/pi-interactive-shell/-/pi-interactive-shell-0.4.9.tgz","fileCount":15,"integrity":"sha512-/WCJchaIprMQrw5uYsOZXYdTJI2c1cxhjiG79Y9glW9mWSbuSUppU77o8yChHVxYekCjbp0C5MsWEHVJOiWlGA==","signatures":[{"sig":"MEYCIQC8oKzxRG4q4DHHVHWbqAKDQOBcHqCZKyt6T1c4DI8fZAIhAJFjN59CeXBNwb+98NQfU9RaAraI5roEmKcWft0TMpmo","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":161492},"type":"module","gitHead":"aa80ac6c189945ac95b3ff467e6bc157d319978c","scripts":{"postinstall":"node ./scripts/fix-spawn-helper.cjs"},"_npmUser":{"name":"nicopreme","email":"nico.bailon@gmail.com"},"repository":{"url":"git+https://github.com/nicobailon/pi-interactive-shell.git","type":"git"},"_npmVersion":"11.6.2","description":"Run AI coding agents as foreground subagents in pi TUI overlays with hands-free monitoring","directories":{},"_nodeVersion":"25.2.1","dependencies":{"node-pty":"^1.1.0","@xterm/headless":"^5.5.0","@xterm/addon-serialize":"^0.13.0"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/pi-interactive-shell_0.4.9_1769048416371_0.10121456810070151","host":"s3://npm-registry-packages-npm-production"}},"0.5.0":{"name":"pi-interactive-shell","version":"0.5.0","keywords":["pi","pi-coding-agent","extension","interactive","shell","terminal","tui","subagent","claude","gemini","codex"],"author":{"name":"Nico Bailon"},"license":"MIT","_id":"pi-interactive-shell@0.5.0","maintainers":[{"name":"nicopreme","email":"nico.bailon@gmail.com"}],"homepage":"https://github.com/nicobailon/pi-interactive-shell#readme","bugs":{"url":"https://github.com/nicobailon/pi-interactive-shell/issues"},"pi":{"extensions":["./index.ts"]},"bin":{"pi-interactive-shell":"scripts/install.js"},"dist":{"shasum":"e18efbdc5f6789d6abe3cffc4684d600276f7bbf","tarball":"https://registry.npmjs.org/pi-interactive-shell/-/pi-interactive-shell-0.5.0.tgz","fileCount":15,"integrity":"sha512-eBV953wViGTKJ21yF5bZhh7DeUyK74WS3EKROm5GNaiO0L28mUkAF1BXMQGjhkmeXV4zw7k/QuwpQzJ6AIfHHQ==","signatures":[{"sig":"MEYCIQCApi+o2GVEcbkqBqZrfR9TVtTj0k3bIfrkSdCpCQaCzQIhAIy9suEfkjp8ACoC4MLXwSCWR4I8k5hkALcy177Urt8f","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":163449},"type":"module","gitHead":"f36e47d1b09c2fcee21401040b7dd1c119722d99","scripts":{"postinstall":"node ./scripts/fix-spawn-helper.cjs"},"_npmUser":{"name":"nicopreme","email":"nico.bailon@gmail.com"},"repository":{"url":"git+https://github.com/nicobailon/pi-interactive-shell.git","type":"git"},"_npmVersion":"11.6.2","description":"Run AI coding agents as foreground subagents in pi TUI overlays with hands-free monitoring","directories":{},"_nodeVersion":"25.2.1","dependencies":{"node-pty":"^1.1.0","@xterm/headless":"^5.5.0","@xterm/addon-serialize":"^0.13.0"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/pi-interactive-shell_0.5.0_1769097511876_0.5559147976607461","host":"s3://npm-registry-packages-npm-production"}},"0.5.1":{"name":"pi-interactive-shell","version":"0.5.1","keywords":["pi","pi-coding-agent","extension","interactive","shell","terminal","tui","subagent","claude","gemini","codex"],"author":{"name":"Nico Bailon"},"license":"MIT","_id":"pi-interactive-shell@0.5.1","maintainers":[{"name":"nicopreme","email":"nico.bailon@gmail.com"}],"homepage":"https://github.com/nicobailon/pi-interactive-shell#readme","bugs":{"url":"https://github.com/nicobailon/pi-interactive-shell/issues"},"pi":{"extensions":["./index.ts"]},"bin":{"pi-interactive-shell":"scripts/install.js"},"dist":{"shasum":"a1cf11fd9e59ebf559cd317c76eee4fd3d994e74","tarball":"https://registry.npmjs.org/pi-interactive-shell/-/pi-interactive-shell-0.5.1.tgz","fileCount":15,"integrity":"sha512-LKaYc4m55vQMvCPWblW09IdCUWVZS00l8Umd8eBNWIsfMWkmU07Lhh8ZIUe+w8Lec9frKZcJvVsvuCDjvktcBw==","signatures":[{"sig":"MEUCIQDIOnQVfpzcVqWyTmdfZtWvtpU8qLvikr9IoOSKbhht3QIgas3KrcKxrbNs2ZTZt6599XNF7LtH5tkC+TU2dp2N18w=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":164620},"type":"module","gitHead":"cd7b44a0188587dfc641f043110e411d7d701467","scripts":{"postinstall":"node ./scripts/fix-spawn-helper.cjs"},"_npmUser":{"name":"nicopreme","email":"nico.bailon@gmail.com"},"repository":{"url":"git+https://github.com/nicobailon/pi-interactive-shell.git","type":"git"},"_npmVersion":"11.6.2","description":"Run AI coding agents as foreground subagents in pi TUI overlays with hands-free monitoring","directories":{},"_nodeVersion":"25.2.1","dependencies":{"node-pty":"^1.1.0","@xterm/headless":"^5.5.0","@xterm/addon-serialize":"^0.13.0"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/pi-interactive-shell_0.5.1_1769098318289_0.9183384520535176","host":"s3://npm-registry-packages-npm-production"}},"0.5.2":{"name":"pi-interactive-shell","version":"0.5.2","keywords":["pi","pi-coding-agent","extension","interactive","shell","terminal","tui","subagent","claude","gemini","codex"],"author":{"name":"Nico Bailon"},"license":"MIT","_id":"pi-interactive-shell@0.5.2","maintainers":[{"name":"nicopreme","email":"nico.bailon@gmail.com"}],"homepage":"https://github.com/nicobailon/pi-interactive-shell#readme","bugs":{"url":"https://github.com/nicobailon/pi-interactive-shell/issues"},"pi":{"extensions":["./index.ts"]},"bin":{"pi-interactive-shell":"scripts/install.js"},"dist":{"shasum":"c0b0725e4a234240f353c2db4073647d3a7f4b80","tarball":"https://registry.npmjs.org/pi-interactive-shell/-/pi-interactive-shell-0.5.2.tgz","fileCount":15,"integrity":"sha512-0oUDXZFZg8hjRSTJmeNFE4D/KJfZloTkcSrq00e9/Euq4499l9qL1tQlgShddoFi33t6S9k9Lj/p1P1oQLMoCg==","signatures":[{"sig":"MEQCIFUMsHP1gqhBAXdhF1vUO6QWtefw9hJX7cO1R5doIQAsAiBi6Sr9MKnwaTY3SW9uBGXCkOB1ULW/A9qq+vYI0x7UAg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":165613},"type":"module","gitHead":"0935a36ff9094e183dd97400a9d4245602272667","scripts":{"postinstall":"node ./scripts/fix-spawn-helper.cjs"},"_npmUser":{"name":"nicopreme","email":"nico.bailon@gmail.com"},"repository":{"url":"git+https://github.com/nicobailon/pi-interactive-shell.git","type":"git"},"_npmVersion":"11.6.2","description":"Run AI coding agents as foreground subagents in pi TUI overlays with hands-free monitoring","directories":{},"_nodeVersion":"25.2.1","dependencies":{"node-pty":"^1.1.0","@xterm/headless":"^5.5.0","@xterm/addon-serialize":"^0.13.0"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/pi-interactive-shell_0.5.2_1769214479062_0.08995299167836901","host":"s3://npm-registry-packages-npm-production"}},"0.5.3":{"name":"pi-interactive-shell","version":"0.5.3","keywords":["pi-package","pi","pi-coding-agent","extension","interactive","shell","terminal","tui","subagent","claude","gemini","codex"],"author":{"name":"Nico Bailon"},"license":"MIT","_id":"pi-interactive-shell@0.5.3","maintainers":[{"name":"nicopreme","email":"nico.bailon@gmail.com"}],"homepage":"https://github.com/nicobailon/pi-interactive-shell#readme","bugs":{"url":"https://github.com/nicobailon/pi-interactive-shell/issues"},"pi":{"extensions":["./index.ts"]},"bin":{"pi-interactive-shell":"scripts/install.js"},"dist":{"shasum":"e901b976bfab1d3ed04bf3294983167fcc67a596","tarball":"https://registry.npmjs.org/pi-interactive-shell/-/pi-interactive-shell-0.5.3.tgz","fileCount":15,"integrity":"sha512-ONG1IkRPiM6eBU2CCiBQqTZXOQQWsNeAASge/NyebStwXj6pPtnXa250CNn0IGL2jLyMRgoN1IgP3RjFmJ68Hw==","signatures":[{"sig":"MEQCIGk7qzhhsy4CemjFWcEczJnCJQ3/vL0CYF7Pt3mswmkGAiAsyxW7LlDVFdClQke6CCZ5MbQGFgvYwTwI5zBslo/puQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":165742},"type":"module","gitHead":"8d0cf26505b33da1df0546a0b33edc10eb33e00b","scripts":{"postinstall":"node ./scripts/fix-spawn-helper.cjs"},"_npmUser":{"name":"nicopreme","email":"nico.bailon@gmail.com"},"repository":{"url":"git+https://github.com/nicobailon/pi-interactive-shell.git","type":"git"},"_npmVersion":"11.6.2","description":"Run AI coding agents as foreground subagents in pi TUI overlays with hands-free monitoring","directories":{},"_nodeVersion":"25.2.1","dependencies":{"node-pty":"^1.1.0","@xterm/headless":"^5.5.0","@xterm/addon-serialize":"^0.13.0"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/pi-interactive-shell_0.5.3_1769452692394_0.5930862991874286","host":"s3://npm-registry-packages-npm-production"}},"0.6.0":{"name":"pi-interactive-shell","version":"0.6.0","keywords":["pi-package","pi","pi-coding-agent","extension","interactive","shell","terminal","tui","subagent","claude","gemini","codex"],"author":{"name":"Nico Bailon"},"license":"MIT","_id":"pi-interactive-shell@0.6.0","maintainers":[{"name":"nicopreme","email":"nico.bailon@gmail.com"}],"homepage":"https://github.com/nicobailon/pi-interactive-shell#readme","bugs":{"url":"https://github.com/nicobailon/pi-interactive-shell/issues"},"pi":{"extensions":["./index.ts"]},"bin":{"pi-interactive-shell":"scripts/install.js"},"dist":{"shasum":"424c687638748fa31d51223f806b74e9fe211332","tarball":"https://registry.npmjs.org/pi-interactive-shell/-/pi-interactive-shell-0.6.0.tgz","fileCount":15,"integrity":"sha512-yBXZEiGN4WSRdhxTt1JNGwG/hEP0GsSbT1N20LyNJTeOeJhxXFPOQAeJzwJ6hL5alAqDqKIZMD2bKABuM20Ziw==","signatures":[{"sig":"MEUCIFHz8Azww6Sbsb54WR0zyRS5/K+hawLyGU2TxrijHLeAAiEAngx0ctuIzoJffNmy3bGgAlIJs59qxX7bW8LlP/K155M=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":173993},"type":"module","gitHead":"69a523679eba1f6a651f37929508f8b3071f9208","scripts":{"postinstall":"node ./scripts/fix-spawn-helper.cjs"},"_npmUser":{"name":"nicopreme","email":"nico.bailon@gmail.com"},"repository":{"url":"git+https://github.com/nicobailon/pi-interactive-shell.git","type":"git"},"_npmVersion":"11.6.2","description":"Run AI coding agents as foreground subagents in pi TUI overlays with hands-free monitoring","directories":{},"_nodeVersion":"25.2.1","dependencies":{"node-pty":"^1.1.0","@xterm/headless":"^5.5.0","@xterm/addon-serialize":"^0.13.0"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/pi-interactive-shell_0.6.0_1769538510127_0.5748270343622157","host":"s3://npm-registry-packages-npm-production"}},"0.6.1":{"name":"pi-interactive-shell","version":"0.6.1","keywords":["pi-package","pi","pi-coding-agent","extension","interactive","shell","terminal","tui","subagent","claude","gemini","codex"],"author":{"name":"Nico Bailon"},"license":"MIT","_id":"pi-interactive-shell@0.6.1","maintainers":[{"name":"nicopreme","email":"nico.bailon@gmail.com"}],"homepage":"https://github.com/nicobailon/pi-interactive-shell#readme","bugs":{"url":"https://github.com/nicobailon/pi-interactive-shell/issues"},"pi":{"extensions":["./index.ts"]},"bin":{"pi-interactive-shell":"scripts/install.js"},"dist":{"shasum":"357b02040fb09c4276f7ffd3d3ab3e7b261669e4","tarball":"https://registry.npmjs.org/pi-interactive-shell/-/pi-interactive-shell-0.6.1.tgz","fileCount":16,"integrity":"sha512-ICKttOR4jGbXZmxCz4bozwhNSz7NHSv4nqZOtn4YIDgeIRmYgbfppvfvFtUpNLJxBo3eP32b9rslmLJahjzvHQ==","signatures":[{"sig":"MEQCIBXyAScw03hzAkgHUOOhZZPE56VsbLEbzpf6GBv8qlFOAiBRgK7A4kDhbBXxWJ8twOvgHFYZ/+ZO7uQ+fCwcIOsINQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1358932},"type":"module","gitHead":"f6afe86bc05749f02c2c374b9d777b52245f71fe","scripts":{"postinstall":"node ./scripts/fix-spawn-helper.cjs"},"_npmUser":{"name":"nicopreme","email":"nico.bailon@gmail.com"},"repository":{"url":"git+https://github.com/nicobailon/pi-interactive-shell.git","type":"git"},"_npmVersion":"11.6.2","description":"Run AI coding agents as foreground subagents in pi TUI overlays with hands-free monitoring","directories":{},"_nodeVersion":"25.2.1","dependencies":{"node-pty":"^1.1.0","@xterm/headless":"^5.5.0","@xterm/addon-serialize":"^0.13.0"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/pi-interactive-shell_0.6.1_1769538872996_0.12996300894472412","host":"s3://npm-registry-packages-npm-production"}},"0.6.2":{"name":"pi-interactive-shell","version":"0.6.2","keywords":["pi-package","pi","pi-coding-agent","extension","interactive","shell","terminal","tui","subagent","claude","gemini","codex"],"author":{"name":"Nico Bailon"},"license":"MIT","_id":"pi-interactive-shell@0.6.2","maintainers":[{"name":"nicopreme","email":"nico.bailon@gmail.com"}],"homepage":"https://github.com/nicobailon/pi-interactive-shell#readme","bugs":{"url":"https://github.com/nicobailon/pi-interactive-shell/issues"},"pi":{"extensions":["./index.ts"]},"bin":{"pi-interactive-shell":"scripts/install.js"},"dist":{"shasum":"4379100f694fad8084cf8ac4bf1381ea199dc03c","tarball":"https://registry.npmjs.org/pi-interactive-shell/-/pi-interactive-shell-0.6.2.tgz","fileCount":16,"integrity":"sha512-IkJxXY7d3iuLg3sKC8iNa7U0k+3TJtpA2t4F+4+Q4ETsFlHCm36CLx+WlCC33IsWanq+Zy43jzjnekQR3vzk6g==","signatures":[{"sig":"MEYCIQD10zahLtYjRhy416KV6obANsJXZIg48mUhbR/Ts2KzxAIhAJhNWh5+rMxZ7i5ffSbwi9yuUdPNB2cWjxYeCQTCzqXR","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1361027},"type":"module","gitHead":"d7aa9f3be08b5e137e81050174c3ee23d0392b64","scripts":{"postinstall":"node ./scripts/fix-spawn-helper.cjs"},"_npmUser":{"name":"nicopreme","email":"nico.bailon@gmail.com"},"repository":{"url":"git+https://github.com/nicobailon/pi-interactive-shell.git","type":"git"},"_npmVersion":"11.6.2","description":"Run AI coding agents as foreground subagents in pi TUI overlays with hands-free monitoring","directories":{},"_nodeVersion":"25.2.1","dependencies":{"node-pty":"^1.1.0","@xterm/headless":"^5.5.0","@xterm/addon-serialize":"^0.13.0"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/pi-interactive-shell_0.6.2_1769624382856_0.41209150896418234","host":"s3://npm-registry-packages-npm-production"}},"0.6.3":{"name":"pi-interactive-shell","version":"0.6.3","keywords":["pi-package","pi","pi-coding-agent","extension","interactive","shell","terminal","tui","subagent","claude","gemini","codex"],"author":{"name":"Nico Bailon"},"license":"MIT","_id":"pi-interactive-shell@0.6.3","maintainers":[{"name":"nicopreme","email":"nico.bailon@gmail.com"}],"homepage":"https://github.com/nicobailon/pi-interactive-shell#readme","bugs":{"url":"https://github.com/nicobailon/pi-interactive-shell/issues"},"pi":{"extensions":["./index.ts"]},"bin":{"pi-interactive-shell":"scripts/install.js"},"dist":{"shasum":"8f2fd941d5ba4b6c6cadbb3b1593d9cb24b2bc5d","tarball":"https://registry.npmjs.org/pi-interactive-shell/-/pi-interactive-shell-0.6.3.tgz","fileCount":16,"integrity":"sha512-ODdFR4RajfNeYSMMf1eUSy5oSVJ88/FwMV2iEFfACDvGDnhpQ/6VC/l4lGW2u5CURSMlhEOW81iGUTOGQk4rqw==","signatures":[{"sig":"MEUCIBAZQuSPJzS8i/ME96cdKUgWNwUGAfYli+Xc9G9+mwY/AiEAgtwcNYkIj98ykQ8U793dGLoyrUsdg9FlxpQws6SVuHk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1359392},"type":"module","gitHead":"20bb171a7f4e4e3a2557b3e044eaf847adf8a38b","scripts":{"postinstall":"node ./scripts/fix-spawn-helper.cjs"},"_npmUser":{"name":"nicopreme","email":"nico.bailon@gmail.com"},"repository":{"url":"git+https://github.com/nicobailon/pi-interactive-shell.git","type":"git"},"_npmVersion":"11.6.2","description":"Run AI coding agents as foreground subagents in pi TUI overlays with hands-free monitoring","directories":{},"_nodeVersion":"25.2.1","dependencies":{"node-pty":"^1.1.0","@xterm/headless":"^5.5.0","@xterm/addon-serialize":"^0.13.0"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/pi-interactive-shell_0.6.3_1769786170946_0.1624695565493819","host":"s3://npm-registry-packages-npm-production"}},"0.6.4":{"name":"pi-interactive-shell","version":"0.6.4","keywords":["pi-package","pi","pi-coding-agent","extension","interactive","shell","terminal","tui","subagent","claude","gemini","codex"],"author":{"name":"Nico Bailon"},"license":"MIT","_id":"pi-interactive-shell@0.6.4","maintainers":[{"name":"nicopreme","email":"nico.bailon@gmail.com"}],"homepage":"https://github.com/nicobailon/pi-interactive-shell#readme","bugs":{"url":"https://github.com/nicobailon/pi-interactive-shell/issues"},"pi":{"extensions":["./index.ts"]},"bin":{"pi-interactive-shell":"scripts/install.js"},"dist":{"shasum":"76553e5c1556653e052f2ecc3c8c5b62bb3cb5ae","tarball":"https://registry.npmjs.org/pi-interactive-shell/-/pi-interactive-shell-0.6.4.tgz","fileCount":16,"integrity":"sha512-WM+Fmk87yGxHhf3wSPSrSvVmDIss0itRhhrrFNUev+E9fplmlrHCRUhlYvkc/zH53m0n3q/+e3NNQY6OJxNFRg==","signatures":[{"sig":"MEYCIQDfD7N2EXZgz/B3QQX1j/h9dESHe32VWpsNASDJpuNaVwIhAJjpNDc83xhoHIR6qwxjX/bEIMp/reu8ftO6pJeUVYUN","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1359509},"type":"module","gitHead":"fe2712b85f3eb583eab1f6c2e93e8f1a4a27e035","scripts":{"postinstall":"node ./scripts/fix-spawn-helper.cjs"},"_npmUser":{"name":"nicopreme","email":"nico.bailon@gmail.com"},"repository":{"url":"git+https://github.com/nicobailon/pi-interactive-shell.git","type":"git"},"_npmVersion":"11.6.2","description":"Run AI coding agents as foreground subagents in pi TUI overlays with hands-free monitoring","directories":{},"_nodeVersion":"25.2.1","dependencies":{"node-pty":"^1.1.0","@xterm/headless":"^5.5.0","@xterm/addon-serialize":"^0.13.0"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/pi-interactive-shell_0.6.4_1769992772900_0.7653815175509544","host":"s3://npm-registry-packages-npm-production"}},"0.7.0":{"name":"pi-interactive-shell","version":"0.7.0","keywords":["pi-package","pi","pi-coding-agent","extension","interactive","shell","terminal","tui","subagent","claude","gemini","codex"],"author":{"name":"Nico Bailon"},"license":"MIT","_id":"pi-interactive-shell@0.7.0","maintainers":[{"name":"nicopreme","email":"nico.bailon@gmail.com"}],"homepage":"https://github.com/nicobailon/pi-interactive-shell#readme","bugs":{"url":"https://github.com/nicobailon/pi-interactive-shell/issues"},"pi":{"extensions":["./index.ts"]},"bin":{"pi-interactive-shell":"scripts/install.js"},"dist":{"shasum":"fcf3dbf8f482cdcf90ef69dccfa647f9d2563332","tarball":"https://registry.npmjs.org/pi-interactive-shell/-/pi-interactive-shell-0.7.0.tgz","fileCount":17,"integrity":"sha512-e0xQ7U1mmKjNGQvAMCG0ntBL5UOh7Z7xBWiiTTpF9oO07Cn4vViw/1RiWUcmtu3eN12RKuCaju6JK6mg/Nmktg==","signatures":[{"sig":"MEUCIQDd4SMKZKTT/jyBASEE6IWfhM1K/SRp/FfN8hUuuJ7oKQIgDa1+f2xMbmZuv1maxK8fqYBQ6BdR6x1jbHqmDgWQ/dA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1401282},"type":"module","gitHead":"c7a0f7555c4b083241ca5fbf159f885dc8e52ce3","scripts":{"postinstall":"node ./scripts/fix-spawn-helper.cjs"},"_npmUser":{"name":"nicopreme","email":"nico.bailon@gmail.com"},"repository":{"url":"git+https://github.com/nicobailon/pi-interactive-shell.git","type":"git"},"_npmVersion":"11.6.2","description":"Run AI coding agents as foreground subagents in pi TUI overlays with hands-free monitoring","directories":{},"_nodeVersion":"25.2.1","dependencies":{"node-pty":"^1.1.0","@xterm/headless":"^5.5.0","@xterm/addon-serialize":"^0.13.0"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/pi-interactive-shell_0.7.0_1770137340105_0.6357784622337064","host":"s3://npm-registry-packages-npm-production"}},"0.7.1":{"name":"pi-interactive-shell","version":"0.7.1","keywords":["pi-package","pi","pi-coding-agent","extension","interactive","shell","terminal","tui","subagent","claude","gemini","codex"],"author":{"name":"Nico Bailon"},"license":"MIT","_id":"pi-interactive-shell@0.7.1","maintainers":[{"name":"nicopreme","email":"nico.bailon@gmail.com"}],"homepage":"https://github.com/nicobailon/pi-interactive-shell#readme","bugs":{"url":"https://github.com/nicobailon/pi-interactive-shell/issues"},"pi":{"video":"https://github.com/nicobailon/pi-interactive-shell/raw/refs/heads/main/pi-interactive-shell-extension.mp4","extensions":["./index.ts"]},"bin":{"pi-interactive-shell":"scripts/install.js"},"dist":{"shasum":"a23fc86f69ffff64a7d7d5a51ead5fc985ca9644","tarball":"https://registry.npmjs.org/pi-interactive-shell/-/pi-interactive-shell-0.7.1.tgz","fileCount":17,"integrity":"sha512-ef3WgToJ5bG1gsJ4qr0RgUu6gJDdl/97iYVQRIrFPBhIxSI8XmfibdEdycyChslV2pWaqCuNcE0kRiQ+AKCpYA==","signatures":[{"sig":"MEYCIQD9rrORF6k+xpyFLY/An2Y/WOYauTbJaUvf6tUYacZmxgIhALzlpUd95szAcnPQRWmcdG5ydMjgIWUEhoHMGJOr/PYk","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1401522},"type":"module","gitHead":"8da32511ae366885930bed66b317a14fc6d3a676","scripts":{"postinstall":"node ./scripts/fix-spawn-helper.cjs"},"_npmUser":{"name":"nicopreme","email":"nico.bailon@gmail.com"},"repository":{"url":"git+https://github.com/nicobailon/pi-interactive-shell.git","type":"git"},"_npmVersion":"11.6.2","description":"Run AI coding agents as foreground subagents in pi TUI overlays with hands-free monitoring","directories":{},"_nodeVersion":"25.2.1","dependencies":{"node-pty":"^1.1.0","@xterm/headless":"^5.5.0","@xterm/addon-serialize":"^0.13.0"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/pi-interactive-shell_0.7.1_1770146688309_0.43069116051947387","host":"s3://npm-registry-packages-npm-production"}},"0.8.0":{"name":"pi-interactive-shell","version":"0.8.0","keywords":["pi-package","pi","pi-coding-agent","extension","interactive","shell","terminal","tui","subagent","claude","gemini","codex"],"author":{"name":"Nico Bailon"},"license":"MIT","_id":"pi-interactive-shell@0.8.0","maintainers":[{"name":"nicopreme","email":"nico.bailon@gmail.com"}],"homepage":"https://github.com/nicobailon/pi-interactive-shell#readme","bugs":{"url":"https://github.com/nicobailon/pi-interactive-shell/issues"},"pi":{"video":"https://github.com/nicobailon/pi-interactive-shell/raw/refs/heads/main/pi-interactive-shell-extension.mp4","extensions":["./index.ts"]},"bin":{"pi-interactive-shell":"scripts/install.js"},"dist":{"shasum":"ae26929e9dcce478cb56532e9ce94c4d7035162f","tarball":"https://registry.npmjs.org/pi-interactive-shell/-/pi-interactive-shell-0.8.0.tgz","fileCount":17,"integrity":"sha512-ud25F25Egsx1npgegkK9kyF8Xn33xqfwGZBRsZ0uKIvVRIZFdaPylP7k+nam5kr0qQcgFJpNqzL7eIFN/8pCrA==","signatures":[{"sig":"MEUCIBxcLxkHHd5T4KduaazGJO08Wys1UaqBX19sQ0d6W67LAiEAj/lsFth8dzkfGnHfz2Ccxjlz8oiUq3zOjM9kdSzOevg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1404115},"type":"module","gitHead":"9c9ba681151c49856f4f1452a3e871087b42afa6","scripts":{"postinstall":"node ./scripts/fix-spawn-helper.cjs"},"_npmUser":{"name":"nicopreme","email":"nico.bailon@gmail.com"},"repository":{"url":"git+https://github.com/nicobailon/pi-interactive-shell.git","type":"git"},"_npmVersion":"11.6.2","description":"Run AI coding agents as foreground subagents in pi TUI overlays with hands-free monitoring","directories":{},"_nodeVersion":"25.2.1","dependencies":{"node-pty":"^1.1.0","@xterm/headless":"^5.5.0","@xterm/addon-serialize":"^0.13.0"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/pi-interactive-shell_0.8.0_1770539197864_0.6851374134928636","host":"s3://npm-registry-packages-npm-production"}},"0.8.1":{"name":"pi-interactive-shell","version":"0.8.1","keywords":["pi-package","pi","pi-coding-agent","extension","interactive","shell","terminal","tui","subagent","claude","gemini","codex"],"author":{"name":"Nico Bailon"},"license":"MIT","_id":"pi-interactive-shell@0.8.1","maintainers":[{"name":"nicopreme","email":"nico.bailon@gmail.com"}],"homepage":"https://github.com/nicobailon/pi-interactive-shell#readme","bugs":{"url":"https://github.com/nicobailon/pi-interactive-shell/issues"},"pi":{"video":"https://github.com/nicobailon/pi-interactive-shell/raw/refs/heads/main/pi-interactive-shell-extension.mp4","extensions":["./index.ts"]},"bin":{"pi-interactive-shell":"scripts/install.js"},"dist":{"shasum":"af005b3892d6506fa947e2caaa23cfeb90481b27","tarball":"https://registry.npmjs.org/pi-interactive-shell/-/pi-interactive-shell-0.8.1.tgz","fileCount":17,"integrity":"sha512-A69NCucSq0ZypwkXptcIM3wi9IuwvjoB/2SKwa7Qg8diXbkzb+MDkPedkUs6BsMJ1qVfY/L6NrhX9TVhvN9vQg==","signatures":[{"sig":"MEQCIFOD2zlHTW9Jgr3gJSq0OFln7vtS1WZV4Q8Gf1QYzswZAiA5sdoDIo0YehfkwVGQSA5q2UF8GgqUR/Z2qXo0GcG2jQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1405130},"type":"module","gitHead":"ecd39655d0dcff7d9f960bb47695010b9603b922","scripts":{"postinstall":"node ./scripts/fix-spawn-helper.cjs"},"_npmUser":{"name":"nicopreme","email":"nico.bailon@gmail.com"},"repository":{"url":"git+https://github.com/nicobailon/pi-interactive-shell.git","type":"git"},"_npmVersion":"11.6.2","description":"Run AI coding agents as foreground subagents in pi TUI overlays with hands-free monitoring","directories":{},"_nodeVersion":"25.2.1","dependencies":{"node-pty":"^1.1.0","@xterm/headless":"^5.5.0","@xterm/addon-serialize":"^0.13.0"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/pi-interactive-shell_0.8.1_1770615213095_0.9929335710518423","host":"s3://npm-registry-packages-npm-production"}},"0.8.2":{"name":"pi-interactive-shell","version":"0.8.2","keywords":["pi-package","pi","pi-coding-agent","extension","interactive","shell","terminal","tui","subagent","claude","gemini","codex"],"author":{"name":"Nico Bailon"},"license":"MIT","_id":"pi-interactive-shell@0.8.2","maintainers":[{"name":"nicopreme","email":"nico.bailon@gmail.com"}],"homepage":"https://github.com/nicobailon/pi-interactive-shell#readme","bugs":{"url":"https://github.com/nicobailon/pi-interactive-shell/issues"},"pi":{"video":"https://github.com/nicobailon/pi-interactive-shell/raw/refs/heads/main/pi-interactive-shell-extension.mp4","extensions":["./index.ts"]},"bin":{"pi-interactive-shell":"scripts/install.js"},"dist":{"shasum":"dc9386430e5c7e168e22d9eeedb4d1620b2d2a38","tarball":"https://registry.npmjs.org/pi-interactive-shell/-/pi-interactive-shell-0.8.2.tgz","fileCount":21,"integrity":"sha512-/10C6HayD6uv8oZLxL3OOTamCRWXVutvCUjZzip2Em+DMTY+b8lzXmUu9J3hMi2Qog1nxI7MGPllsxWJ47/I1A==","signatures":[{"sig":"MEUCICignPkrPIZIjNfvjGVuDM/C6HUWkBry7kxYIq9+nrY3AiEAkH8Ks1Qvgctbq+l5Jx47A5t0e8qN0xmWnFNK6gVhQcc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1420424},"type":"module","gitHead":"7af4f7f6aedc6ae8c5cdf30bd681449c97ea3316","scripts":{"postinstall":"node ./scripts/fix-spawn-helper.cjs"},"_npmUser":{"name":"nicopreme","email":"nico.bailon@gmail.com"},"repository":{"url":"git+https://github.com/nicobailon/pi-interactive-shell.git","type":"git"},"_npmVersion":"11.6.2","description":"Run AI coding agents as foreground subagents in pi TUI overlays with hands-free monitoring","directories":{},"_nodeVersion":"25.2.1","dependencies":{"node-pty":"^1.1.0","@xterm/headless":"^5.5.0","@xterm/addon-serialize":"^0.13.0"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/pi-interactive-shell_0.8.2_1770760109153_0.9999082354518243","host":"s3://npm-registry-packages-npm-production"}},"0.9.0":{"name":"pi-interactive-shell","version":"0.9.0","keywords":["pi-package","pi","pi-coding-agent","extension","interactive","shell","terminal","tui","subagent","claude","gemini","codex"],"author":{"name":"Nico Bailon"},"license":"MIT","_id":"pi-interactive-shell@0.9.0","maintainers":[{"name":"nicopreme","email":"nico.bailon@gmail.com"}],"homepage":"https://github.com/nicobailon/pi-interactive-shell#readme","bugs":{"url":"https://github.com/nicobailon/pi-interactive-shell/issues"},"pi":{"video":"https://github.com/nicobailon/pi-interactive-shell/raw/refs/heads/main/pi-interactive-shell-extension.mp4","extensions":["./index.ts"]},"bin":{"pi-interactive-shell":"scripts/install.js"},"dist":{"shasum":"391e525ce82868ad6604cbe1c36a366448daaee2","tarball":"https://registry.npmjs.org/pi-interactive-shell/-/pi-interactive-shell-0.9.0.tgz","fileCount":22,"integrity":"sha512-kmSRdkV6Q7YjC36xX46clN20xTYvh7Zi4Mc4F8giErOV/v75g2CKRyJYWhnbmfdYmAh7e+yLgt5u5ykvgJwt/A==","signatures":[{"sig":"MEUCIQDdYVn4wItWLOk+WHvaR8GOqtw/F+QinY/h0wR+9kalLwIgTjI49oz3+YCEYIBPkxee3WYOIH59tCeJOMw2qaumJSk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1436573},"type":"module","gitHead":"aeaed475b85a590ef8e8e2ef9b4eea49f54f93fe","scripts":{"postinstall":"node ./scripts/fix-spawn-helper.cjs"},"_npmUser":{"name":"nicopreme","email":"nico.bailon@gmail.com"},"repository":{"url":"git+https://github.com/nicobailon/pi-interactive-shell.git","type":"git"},"_npmVersion":"11.6.2","description":"Run AI coding agents as foreground subagents in pi TUI overlays with hands-free monitoring","directories":{},"_nodeVersion":"25.2.1","dependencies":{"node-pty":"^1.1.0","@xterm/headless":"^5.5.0","@xterm/addon-serialize":"^0.13.0"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/pi-interactive-shell_0.9.0_1771891356821_0.3645984100542534","host":"s3://npm-registry-packages-npm-production"}},"0.10.0":{"name":"pi-interactive-shell","version":"0.10.0","keywords":["pi-package","pi","pi-coding-agent","extension","interactive","shell","terminal","tui","subagent","claude","gemini","codex"],"author":{"name":"Nico Bailon"},"license":"MIT","_id":"pi-interactive-shell@0.10.0","maintainers":[{"name":"nicopreme","email":"nico.bailon@gmail.com"}],"homepage":"https://github.com/nicobailon/pi-interactive-shell#readme","bugs":{"url":"https://github.com/nicobailon/pi-interactive-shell/issues"},"pi":{"video":"https://github.com/nicobailon/pi-interactive-shell/raw/refs/heads/main/pi-interactive-shell-extension.mp4","skills":["./SKILL.md","./examples/skills"],"prompts":["./examples/prompts"],"extensions":["./index.ts"]},"bin":{"pi-interactive-shell":"scripts/install.js"},"dist":{"shasum":"9f243c3429e336fe078f1d3b09ece12f33c85622","tarball":"https://registry.npmjs.org/pi-interactive-shell/-/pi-interactive-shell-0.10.0.tgz","fileCount":31,"integrity":"sha512-bRF6t1Xgivj1/wmXjHmKyiijT6+Ki1hfjUPM2L5QyNckXOXpcSwhBfEE99HhfoAIhzt4qT4IiwVfS/vs8f99GQ==","signatures":[{"sig":"MEQCIA9m+hcwk+uQrXrVku2KVuBA1IV/fWpBwsMRAx6oNAMZAiAsWd+VeigiWIxidj71sqeRgRsnt+VAXcBiw0kS6e8V0Q==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1454289},"type":"module","gitHead":"94c57267b977d9b039f312c0d88ba2aac32fd109","scripts":{"test":"vitest run","postinstall":"node ./scripts/fix-spawn-helper.cjs"},"_npmUser":{"name":"nicopreme","email":"nico.bailon@gmail.com"},"repository":{"url":"git+https://github.com/nicobailon/pi-interactive-shell.git","type":"git"},"_npmVersion":"11.6.2","description":"Run AI coding agents in pi TUI overlays with interactive, hands-free, and dispatch supervision","directories":{},"_nodeVersion":"25.2.1","dependencies":{"node-pty":"^1.1.0","@xterm/headless":"^5.5.0","@sinclair/typebox":"^0.34.40","@xterm/addon-serialize":"^0.13.0"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^3.2.4"},"_npmOperationalInternal":{"tmp":"tmp/pi-interactive-shell_0.10.0_1773385089675_0.27829276003683123","host":"s3://npm-registry-packages-npm-production"}},"0.10.1":{"name":"pi-interactive-shell","version":"0.10.1","keywords":["pi-package","pi","pi-coding-agent","extension","interactive","shell","terminal","tui","subagent","claude","gemini","codex"],"author":{"name":"Nico Bailon"},"license":"MIT","_id":"pi-interactive-shell@0.10.1","maintainers":[{"name":"nicopreme","email":"nico.bailon@gmail.com"}],"homepage":"https://github.com/nicobailon/pi-interactive-shell#readme","bugs":{"url":"https://github.com/nicobailon/pi-interactive-shell/issues"},"pi":{"video":"https://github.com/nicobailon/pi-interactive-shell/raw/refs/heads/main/pi-interactive-shell-extension.mp4","skills":["./SKILL.md","./examples/skills"],"prompts":["./examples/prompts"],"extensions":["./index.ts"]},"bin":{"pi-interactive-shell":"scripts/install.js"},"dist":{"shasum":"da8f6651aaeb56d1e62519fe384d7360cfa74d15","tarball":"https://registry.npmjs.org/pi-interactive-shell/-/pi-interactive-shell-0.10.1.tgz","fileCount":31,"integrity":"sha512-gtFcA+7K8BIQrCHEIREgTw60lrea/ythET7PwdTd/5lO/31K9m+9uGWkuFocKNrxXDFIlgovgPn02LCW49a4xQ==","signatures":[{"sig":"MEYCIQDLzCymd9IkHkNs5dyKZWbTAh9gqnz4hsVZFbbGJvf5bwIhANdu3gaQu4iRHA6LHK8jvjjEeM8PwefJBsqk1ehM4Uzh","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1454513},"type":"module","gitHead":"b29eb8e4db1b68b0aa97e3518f2e2ec934fdd514","scripts":{"test":"vitest run","postinstall":"node ./scripts/fix-spawn-helper.cjs"},"_npmUser":{"name":"nicopreme","email":"nico.bailon@gmail.com"},"repository":{"url":"git+https://github.com/nicobailon/pi-interactive-shell.git","type":"git"},"_npmVersion":"11.6.2","description":"Run AI coding agents in pi TUI overlays with interactive, hands-free, and dispatch supervision","directories":{},"_nodeVersion":"25.2.1","dependencies":{"node-pty":"^1.1.0","@xterm/headless":"^5.5.0","@sinclair/typebox":"^0.34.40","@xterm/addon-serialize":"^0.13.0"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^3.2.4"},"_npmOperationalInternal":{"tmp":"tmp/pi-interactive-shell_0.10.1_1773415094688_0.9955016989213405","host":"s3://npm-registry-packages-npm-production"}},"0.10.2":{"name":"pi-interactive-shell","version":"0.10.2","keywords":["pi-package","pi","pi-coding-agent","extension","interactive","shell","terminal","tui","subagent","claude","gemini","codex"],"author":{"name":"Nico Bailon"},"license":"MIT","_id":"pi-interactive-shell@0.10.2","maintainers":[{"name":"nicopreme","email":"nico.bailon@gmail.com"}],"homepage":"https://github.com/nicobailon/pi-interactive-shell#readme","bugs":{"url":"https://github.com/nicobailon/pi-interactive-shell/issues"},"pi":{"video":"https://github.com/nicobailon/pi-interactive-shell/raw/refs/heads/main/pi-interactive-shell-extension.mp4","skills":["./SKILL.md","./examples/skills"],"prompts":["./examples/prompts"],"extensions":["./index.ts"]},"bin":{"pi-interactive-shell":"scripts/install.js"},"dist":{"shasum":"a057ba01f84d073ce2a4bf5ff7b10e2e983071d6","tarball":"https://registry.npmjs.org/pi-interactive-shell/-/pi-interactive-shell-0.10.2.tgz","fileCount":31,"integrity":"sha512-5j6pl75YbdAhGbxX4gTOsBKFXXjndqsDqsXlb40su4a6nPTcrXTewHXf/dD1yfRAiAELj+boBZBF6dCARCmXbA==","signatures":[{"sig":"MEQCIBMFYrgnnKjuZ6sM5tbdDqzJF0aO/WwzlMYUWm5I0dv3AiAtJU9NgZJRspx9eWrTDDfGMjFZdFvDs7Ay5FXAkLbqqA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1469027},"type":"module","gitHead":"5765a16636aae93193e3bba4181d7fb268773026","scripts":{"test":"vitest run","postinstall":"node ./scripts/fix-spawn-helper.cjs"},"_npmUser":{"name":"nicopreme","email":"nico.bailon@gmail.com"},"repository":{"url":"git+https://github.com/nicobailon/pi-interactive-shell.git","type":"git"},"_npmVersion":"11.6.2","description":"Run AI coding agents in pi TUI overlays with interactive, hands-free, and dispatch supervision","directories":{},"_nodeVersion":"25.2.1","dependencies":{"node-pty":"^1.1.0","@xterm/headless":"^5.5.0","@sinclair/typebox":"^0.34.40","@xterm/addon-serialize":"^0.13.0"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^3.2.4"},"_npmOperationalInternal":{"tmp":"tmp/pi-interactive-shell_0.10.2_1775267778267_0.6463959494070552","host":"s3://npm-registry-packages-npm-production"}},"0.10.3":{"name":"pi-interactive-shell","version":"0.10.3","keywords":["pi-package","pi","pi-coding-agent","extension","interactive","shell","terminal","tui","subagent","claude","gemini","codex"],"author":{"name":"Nico Bailon"},"license":"MIT","_id":"pi-interactive-shell@0.10.3","maintainers":[{"name":"nicopreme","email":"nico.bailon@gmail.com"}],"homepage":"https://github.com/nicobailon/pi-interactive-shell#readme","bugs":{"url":"https://github.com/nicobailon/pi-interactive-shell/issues"},"pi":{"video":"https://github.com/nicobailon/pi-interactive-shell/raw/refs/heads/main/pi-interactive-shell-extension.mp4","skills":["./SKILL.md","./examples/skills"],"prompts":["./examples/prompts"],"extensions":["./index.ts"]},"bin":{"pi-interactive-shell":"scripts/install.js"},"dist":{"shasum":"5669e24dc7206e5d6e09518ae6cd116aad1c7312","tarball":"https://registry.npmjs.org/pi-interactive-shell/-/pi-interactive-shell-0.10.3.tgz","fileCount":31,"integrity":"sha512-yX4ldLj48ujl0Kly7wcTnIsZpcczqjXirM9k0ReP2xDaB1j/bl3rtXvywL0JvHKQH7+O+b92ACyvWa/Sp5c6NQ==","signatures":[{"sig":"MEUCIG77Y1CdPjDKhQN85m46cuzytcrridCn1ff7MwnghMWWAiEAqwDsQ2NCiU8gI0Rg+Y6pBT6XxDoTqgKRLov7bHdK2zw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1469428},"type":"module","gitHead":"1955f94aa053934c9d334267e97830b7fe895baa","scripts":{"test":"vitest run","postinstall":"node ./scripts/fix-spawn-helper.cjs"},"_npmUser":{"name":"nicopreme","email":"nico.bailon@gmail.com"},"repository":{"url":"git+https://github.com/nicobailon/pi-interactive-shell.git","type":"git"},"_npmVersion":"11.6.2","description":"Run AI coding agents in pi TUI overlays with interactive, hands-free, and dispatch supervision","directories":{},"_nodeVersion":"25.2.1","dependencies":{"node-pty":"^1.1.0","@xterm/headless":"^5.5.0","@sinclair/typebox":"^0.34.40","@xterm/addon-serialize":"^0.13.0"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^3.2.4"},"_npmOperationalInternal":{"tmp":"tmp/pi-interactive-shell_0.10.3_1775268821424_0.9725348106181511","host":"s3://npm-registry-packages-npm-production"}},"0.10.4":{"name":"pi-interactive-shell","version":"0.10.4","keywords":["pi-package","pi","pi-coding-agent","extension","interactive","shell","terminal","tui","subagent","claude","gemini","codex"],"author":{"name":"Nico Bailon"},"license":"MIT","_id":"pi-interactive-shell@0.10.4","maintainers":[{"name":"nicopreme","email":"nico.bailon@gmail.com"}],"homepage":"https://github.com/nicobailon/pi-interactive-shell#readme","bugs":{"url":"https://github.com/nicobailon/pi-interactive-shell/issues"},"pi":{"video":"https://github.com/nicobailon/pi-interactive-shell/raw/refs/heads/main/pi-interactive-shell-extension.mp4","skills":["./SKILL.md","./examples/skills"],"prompts":["./examples/prompts"],"extensions":["./index.ts"]},"bin":{"pi-interactive-shell":"scripts/install.js"},"dist":{"shasum":"a56c4175ac421d77851b8f7417019e145e025129","tarball":"https://registry.npmjs.org/pi-interactive-shell/-/pi-interactive-shell-0.10.4.tgz","fileCount":31,"integrity":"sha512-WlHrlxYA7FDhxV5RhunhMYDayFEcahX5qJgJc9dhuptNzlVwzNJqJphGQ2/jLCiIuMeQ8c2dBVN/2BlI6derMQ==","signatures":[{"sig":"MEUCICMQch1udD9GXxZUuQuucW8N6iBPbgEP1PDHPTM50uGGAiEA+7u3pFeVJYItGec8KGCemKxgKTR5cAOw6/+2r4e6jWk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1472234},"type":"module","gitHead":"6ba6cd02fbead73e081a998fb41977c2f175aee2","scripts":{"test":"vitest run","postinstall":"node ./scripts/fix-spawn-helper.cjs"},"_npmUser":{"name":"nicopreme","email":"nico.bailon@gmail.com"},"repository":{"url":"git+https://github.com/nicobailon/pi-interactive-shell.git","type":"git"},"_npmVersion":"11.6.2","description":"Run AI coding agents in pi TUI overlays with interactive, hands-free, and dispatch supervision","directories":{},"_nodeVersion":"25.2.1","dependencies":{"node-pty":"^1.1.0","@xterm/headless":"^5.5.0","@sinclair/typebox":"^0.34.40","@xterm/addon-serialize":"^0.13.0"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^3.2.4"},"_npmOperationalInternal":{"tmp":"tmp/pi-interactive-shell_0.10.4_1775276171875_0.40456422927235236","host":"s3://npm-registry-packages-npm-production"}},"0.10.5":{"name":"pi-interactive-shell","version":"0.10.5","keywords":["pi-package","pi","pi-coding-agent","extension","interactive","shell","terminal","tui","subagent","claude","gemini","codex"],"author":{"name":"Nico Bailon"},"license":"MIT","_id":"pi-interactive-shell@0.10.5","maintainers":[{"name":"nicopreme","email":"nico.bailon@gmail.com"}],"homepage":"https://github.com/nicobailon/pi-interactive-shell#readme","bugs":{"url":"https://github.com/nicobailon/pi-interactive-shell/issues"},"pi":{"video":"https://github.com/nicobailon/pi-interactive-shell/raw/refs/heads/main/pi-interactive-shell-extension.mp4","skills":["./SKILL.md","./examples/skills"],"prompts":["./examples/prompts"],"extensions":["./index.ts"]},"bin":{"pi-interactive-shell":"scripts/install.js"},"dist":{"shasum":"c3bdc483bf01a17cf42e4a22deb49108e4b55e3c","tarball":"https://registry.npmjs.org/pi-interactive-shell/-/pi-interactive-shell-0.10.5.tgz","fileCount":31,"integrity":"sha512-mszP/q8zrN9Vnr0yXvtR9u9NB3O1/aN4tsly++fiwERPLXPrwJBm8sTZT6qTK6KnizqKh7L9V4QPIhuKUoLRQQ==","signatures":[{"sig":"MEUCIHC8pth+a+eNxyaNv8r9J8CmVYOlRIskmljsWuX1PMWyAiEAwWibcxBdG0lvTr9E1BCJ4tx9bPBevGbnAS3cfmIwKjY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1473695},"type":"module","gitHead":"7f657861273cc8dfc06882e86b6011153a4f6035","scripts":{"test":"vitest run","postinstall":"node ./scripts/fix-spawn-helper.cjs"},"_npmUser":{"name":"nicopreme","email":"nico.bailon@gmail.com"},"repository":{"url":"git+https://github.com/nicobailon/pi-interactive-shell.git","type":"git"},"_npmVersion":"11.6.2","description":"Run AI coding agents in pi TUI overlays with interactive, hands-free, and dispatch supervision","directories":{},"_nodeVersion":"25.2.1","dependencies":{"node-pty":"^1.1.0","@xterm/headless":"^5.5.0","@sinclair/typebox":"^0.34.40","@xterm/addon-serialize":"^0.13.0"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^3.2.4"},"_npmOperationalInternal":{"tmp":"tmp/pi-interactive-shell_0.10.5_1775278191390_0.7712707357328581","host":"s3://npm-registry-packages-npm-production"}},"0.10.6":{"name":"pi-interactive-shell","version":"0.10.6","keywords":["pi-package","pi","pi-coding-agent","extension","interactive","shell","terminal","tui","subagent","claude","gemini","codex"],"author":{"name":"Nico Bailon"},"license":"MIT","_id":"pi-interactive-shell@0.10.6","maintainers":[{"name":"nicopreme","email":"nico.bailon@gmail.com"}],"homepage":"https://github.com/nicobailon/pi-interactive-shell#readme","bugs":{"url":"https://github.com/nicobailon/pi-interactive-shell/issues"},"pi":{"video":"https://github.com/nicobailon/pi-interactive-shell/raw/refs/heads/main/pi-interactive-shell-extension.mp4","skills":["./SKILL.md","./examples/skills"],"prompts":["./examples/prompts"],"extensions":["./index.ts"]},"bin":{"pi-interactive-shell":"scripts/install.js"},"dist":{"shasum":"c90dc014cd52e15daf7c7f0ad3550fd478e6d6c6","tarball":"https://registry.npmjs.org/pi-interactive-shell/-/pi-interactive-shell-0.10.6.tgz","fileCount":32,"integrity":"sha512-X0Q9TWTRa1GycZEXzo5L7K41b/yb74mzqnnxVHdLXqRTPDMRL3SMCpWuKGZIjJ8bYP6T0o8++kdELoNNr4ZsGw==","signatures":[{"sig":"MEUCIQDmF7mD9PHTotL51DXSu9auHjk9PmtP333CdwNHGopbAgIgCOyWH4uc8oGFwd6wh9vsCygJbvfaZGtaWkgI/HHFBiw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1488944},"type":"module","gitHead":"edd649739d3cc01a714d9b062746364dea90b7a1","scripts":{"test":"vitest run","postinstall":"node ./scripts/fix-spawn-helper.cjs"},"_npmUser":{"name":"nicopreme","email":"nico.bailon@gmail.com"},"repository":{"url":"git+https://github.com/nicobailon/pi-interactive-shell.git","type":"git"},"_npmVersion":"11.6.2","description":"Run AI coding agents in pi TUI overlays with interactive, hands-free, and dispatch supervision","directories":{},"_nodeVersion":"25.2.1","dependencies":{"node-pty":"^1.1.0","@xterm/headless":"^5.5.0","@sinclair/typebox":"^0.34.40","@xterm/addon-serialize":"^0.13.0"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^3.2.4"},"_npmOperationalInternal":{"tmp":"tmp/pi-interactive-shell_0.10.6_1775325709942_0.402837033389597","host":"s3://npm-registry-packages-npm-production"}},"0.10.7":{"name":"pi-interactive-shell","version":"0.10.7","keywords":["pi-package","pi","pi-coding-agent","extension","interactive","shell","terminal","tui","subagent","claude","gemini","codex"],"author":{"name":"Nico Bailon"},"license":"MIT","_id":"pi-interactive-shell@0.10.7","maintainers":[{"name":"nicopreme","email":"nico.bailon@gmail.com"}],"homepage":"https://github.com/nicobailon/pi-interactive-shell#readme","bugs":{"url":"https://github.com/nicobailon/pi-interactive-shell/issues"},"pi":{"video":"https://github.com/nicobailon/pi-interactive-shell/raw/refs/heads/main/pi-interactive-shell-extension.mp4","skills":["./SKILL.md","./examples/skills"],"prompts":["./examples/prompts"],"extensions":["./index.ts"]},"bin":{"pi-interactive-shell":"scripts/install.js"},"dist":{"shasum":"7bcc36b9bb64895a560060a90f9f8ebbf8678bce","tarball":"https://registry.npmjs.org/pi-interactive-shell/-/pi-interactive-shell-0.10.7.tgz","fileCount":32,"integrity":"sha512-VxLFpP0V+lnJ4c1Xlq357C5BZKc2VklkDuszp0IMasTZldex7Sa9zsD5KFAF0J1oU2teo2HD1qWE+tx4SyyYhg==","signatures":[{"sig":"MEUCIQC6ZQLaYZztZESBNmFRBnIcZ4El0OH73yPNQiEdltYW5wIgBlkbn3V2Jmcqtd5H+vrPqAD69nDa7V5MyPSIYNWi+BU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1495577},"type":"module","gitHead":"210f18d709b8cadfc848f5f7ab3632e548d1d25a","scripts":{"test":"vitest run","postinstall":"node ./scripts/fix-spawn-helper.cjs"},"_npmUser":{"name":"nicopreme","email":"nico.bailon@gmail.com"},"repository":{"url":"git+https://github.com/nicobailon/pi-interactive-shell.git","type":"git"},"_npmVersion":"11.6.2","description":"Run AI coding agents in pi TUI overlays with interactive, hands-free, and dispatch supervision","directories":{},"_nodeVersion":"25.2.1","dependencies":{"node-pty":"^1.1.0","@xterm/headless":"^5.5.0","@sinclair/typebox":"^0.34.40","@xterm/addon-serialize":"^0.13.0"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^3.2.4"},"_npmOperationalInternal":{"tmp":"tmp/pi-interactive-shell_0.10.7_1775328837417_0.10058375033658895","host":"s3://npm-registry-packages-npm-production"}},"0.10.8":{"name":"pi-interactive-shell","version":"0.10.8","keywords":["pi-package","pi","pi-coding-agent","extension","interactive","shell","terminal","tui","subagent","claude","gemini","codex"],"author":{"name":"Nico Bailon"},"license":"MIT","_id":"pi-interactive-shell@0.10.8","maintainers":[{"name":"nicopreme","email":"nico.bailon@gmail.com"}],"homepage":"https://github.com/nicobailon/pi-interactive-shell#readme","bugs":{"url":"https://github.com/nicobailon/pi-interactive-shell/issues"},"pi":{"video":"https://github.com/nicobailon/pi-interactive-shell/raw/refs/heads/main/pi-interactive-shell-extension.mp4","skills":["./SKILL.md","./examples/skills"],"prompts":["./examples/prompts"],"extensions":["./index.ts"]},"bin":{"pi-interactive-shell":"scripts/install.js"},"dist":{"shasum":"883476cd75dfe8dfcaa933d5c70508d165933a59","tarball":"https://registry.npmjs.org/pi-interactive-shell/-/pi-interactive-shell-0.10.8.tgz","fileCount":31,"integrity":"sha512-qgYdhjg43lyW/xWgtSNQgYGKa17XVVT/pIO96GvdhqGWtSxbOOjhwlnKF//jjKR8/v7U0YhnRYC7TRCt6YgNbQ==","signatures":[{"sig":"MEQCIBihWQVAGekDRF6HcUc+E3ryCYXJNjNa14MeCbRZobWoAiBmUrCGTDx8vY0Tnrku0mnZHXTKAMmwYv8bu/vdJlbpdw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1518823},"type":"module","gitHead":"4688321041175d93ecec95c613d95781261d80a8","scripts":{"test":"vitest run"},"_npmUser":{"name":"nicopreme","email":"nico.bailon@gmail.com"},"repository":{"url":"git+https://github.com/nicobailon/pi-interactive-shell.git","type":"git"},"_npmVersion":"11.6.2","description":"Run AI coding agents in pi TUI overlays with interactive, hands-free, and dispatch supervision","directories":{},"_nodeVersion":"25.2.1","dependencies":{"zigpty":"^0.0.6","@xterm/headless":"^5.5.0","@sinclair/typebox":"^0.34.40","@xterm/addon-serialize":"^0.13.0"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^3.2.4"},"_npmOperationalInternal":{"tmp":"tmp/pi-interactive-shell_0.10.8_1775717725573_0.8478362562115802","host":"s3://npm-registry-packages-npm-production"}},"0.11.0":{"name":"pi-interactive-shell","version":"0.11.0","keywords":["pi-package","pi","pi-coding-agent","extension","interactive","shell","terminal","tui","subagent","claude","gemini","codex"],"author":{"name":"Nico Bailon"},"license":"MIT","_id":"pi-interactive-shell@0.11.0","maintainers":[{"name":"nicopreme","email":"nico.bailon@gmail.com"}],"homepage":"https://github.com/nicobailon/pi-interactive-shell#readme","bugs":{"url":"https://github.com/nicobailon/pi-interactive-shell/issues"},"pi":{"video":"https://github.com/nicobailon/pi-interactive-shell/raw/refs/heads/main/pi-interactive-shell-extension.mp4","skills":["./SKILL.md","./examples/skills"],"prompts":["./examples/prompts"],"extensions":["./index.ts"]},"bin":{"pi-interactive-shell":"scripts/install.js"},"dist":{"shasum":"3654fcce2e93405c9225ff092a970b4e0737804b","tarball":"https://registry.npmjs.org/pi-interactive-shell/-/pi-interactive-shell-0.11.0.tgz","fileCount":31,"integrity":"sha512-kHQOlTQdAsgPoDz4gIsyqYrx4xJ75KxnKaNgwX834yYEwl6IConHn55iUsZ4WrIMNFIzYpTkkTs2/BvEOEQVRA==","signatures":[{"sig":"MEQCICxWt7HS8wFpGTGCSwd6jshYN6Wn9JTlucZVho3OERnyAiASdvq5FmbcZrSMB1rIPytTcsg+AsvFGGEPiTM2klFmpA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1528917},"type":"module","gitHead":"4a9df1f46009afa8ee82117bd5d97eb8af45f0b0","scripts":{"test":"vitest run"},"_npmUser":{"name":"nicopreme","email":"nico.bailon@gmail.com"},"repository":{"url":"git+https://github.com/nicobailon/pi-interactive-shell.git","type":"git"},"_npmVersion":"11.6.2","description":"Run AI coding agents in pi TUI overlays with interactive, hands-free, and dispatch supervision","directories":{},"_nodeVersion":"25.2.1","dependencies":{"zigpty":"^0.0.6","@xterm/headless":"^5.5.0","@sinclair/typebox":"^0.34.40","@xterm/addon-serialize":"^0.13.0"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^3.2.4"},"_npmOperationalInternal":{"tmp":"tmp/pi-interactive-shell_0.11.0_1775939715922_0.6785662010124542","host":"s3://npm-registry-packages-npm-production"}},"0.11.1":{"name":"pi-interactive-shell","version":"0.11.1","keywords":["pi-package","pi","pi-coding-agent","extension","interactive","shell","terminal","tui","subagent","claude","gemini","codex"],"author":{"name":"Nico Bailon"},"license":"MIT","_id":"pi-interactive-shell@0.11.1","maintainers":[{"name":"nicopreme","email":"nico.bailon@gmail.com"}],"homepage":"https://github.com/nicobailon/pi-interactive-shell#readme","bugs":{"url":"https://github.com/nicobailon/pi-interactive-shell/issues"},"pi":{"video":"https://github.com/nicobailon/pi-interactive-shell/raw/refs/heads/main/pi-interactive-shell-extension.mp4","skills":["./SKILL.md","./examples/skills"],"prompts":["./examples/prompts"],"extensions":["./index.ts"]},"bin":{"pi-interactive-shell":"scripts/install.js"},"dist":{"shasum":"1cf1b4d7ae41a0684924bd6444943aeaf0823823","tarball":"https://registry.npmjs.org/pi-interactive-shell/-/pi-interactive-shell-0.11.1.tgz","fileCount":31,"integrity":"sha512-r7pvWsBMaofpYNYI0yFS1M2r/b1ULbOa9fr0WyvvK+TNFE4TDuuR5O5quQ7iTBlOGO/hQtY6TO/VAd3TxZHjjQ==","signatures":[{"sig":"MEUCIDXWcr6zc6vJUV81CUDPv1OXRXRRilccexXTEWm0hHe+AiEApvamIUioVyXvH4ObzPdXGFjnbjJYZV/sjHf71/+d+po=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1552364},"type":"module","gitHead":"dba4d394e4a54b0276813414fb177c486c7f95f5","scripts":{"test":"vitest run"},"_npmUser":{"name":"nicopreme","email":"nico.bailon@gmail.com"},"repository":{"url":"git+https://github.com/nicobailon/pi-interactive-shell.git","type":"git"},"_npmVersion":"11.6.2","description":"Run AI coding agents in pi TUI overlays with interactive, hands-free, and dispatch supervision","directories":{},"_nodeVersion":"25.2.1","dependencies":{"zigpty":"^0.0.6","@xterm/headless":"^5.5.0","@sinclair/typebox":"^0.34.40","@xterm/addon-serialize":"^0.13.0"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^3.2.4"},"_npmOperationalInternal":{"tmp":"tmp/pi-interactive-shell_0.11.1_1775955153356_0.5938907101114261","host":"s3://npm-registry-packages-npm-production"}},"0.12.0":{"name":"pi-interactive-shell","version":"0.12.0","keywords":["pi-package","pi","pi-coding-agent","extension","interactive","shell","terminal","tui","subagent","claude","gemini","codex"],"author":{"name":"Nico Bailon"},"license":"MIT","_id":"pi-interactive-shell@0.12.0","maintainers":[{"name":"nicopreme","email":"nico.bailon@gmail.com"}],"homepage":"https://github.com/nicobailon/pi-interactive-shell#readme","bugs":{"url":"https://github.com/nicobailon/pi-interactive-shell/issues"},"pi":{"video":"https://github.com/nicobailon/pi-interactive-shell/raw/refs/heads/main/pi-interactive-shell-extension.mp4","skills":["./SKILL.md","./examples/skills"],"prompts":["./examples/prompts"],"extensions":["./index.ts"]},"bin":{"pi-interactive-shell":"scripts/install.js"},"dist":{"shasum":"be07b3500254e82e5da1cce2317d141570f6bd3f","tarball":"https://registry.npmjs.org/pi-interactive-shell/-/pi-interactive-shell-0.12.0.tgz","fileCount":31,"integrity":"sha512-vreboCaQO+kPsoZQGUOJQeuskMNCUyT1efOM82/TG9gemXyt0zD4CqoFgbDG2C9L5SbmnVWbChBT3tfT3eYLjQ==","signatures":[{"sig":"MEQCICStvR4CSdLQqw92ajxJcaqFVCbGpXqhaVE6sJVHEZfaAiBmXMI2kNdGrsFjSQ5Te6dRzWCHhgHRhADQe8Db89eYbw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1571036},"type":"module","gitHead":"be63ee5de46c264798f04273722d9e616403875f","scripts":{"test":"vitest run"},"_npmUser":{"name":"nicopreme","email":"nico.bailon@gmail.com"},"repository":{"url":"git+https://github.com/nicobailon/pi-interactive-shell.git","type":"git"},"_npmVersion":"11.6.2","description":"Run AI coding agents in pi TUI overlays with interactive, hands-free, and dispatch supervision","directories":{},"_nodeVersion":"25.2.1","dependencies":{"zigpty":"^0.0.6","@xterm/headless":"^5.5.0","@sinclair/typebox":"^0.34.40","@xterm/addon-serialize":"^0.13.0"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^3.2.4"},"_npmOperationalInternal":{"tmp":"tmp/pi-interactive-shell_0.12.0_1775966230414_0.7379630186839303","host":"s3://npm-registry-packages-npm-production"}},"0.13.0":{"name":"pi-interactive-shell","version":"0.13.0","keywords":["pi-package","pi","pi-coding-agent","extension","interactive","shell","terminal","tui","subagent","claude","gemini","codex"],"author":{"name":"Nico Bailon"},"license":"MIT","_id":"pi-interactive-shell@0.13.0","maintainers":[{"name":"nicopreme","email":"nico.bailon@gmail.com"}],"homepage":"https://github.com/nicobailon/pi-interactive-shell#readme","bugs":{"url":"https://github.com/nicobailon/pi-interactive-shell/issues"},"pi":{"video":"https://github.com/nicobailon/pi-interactive-shell/raw/refs/heads/main/pi-interactive-shell-extension.mp4","skills":["./skills"],"extensions":["./index.ts"]},"dist":{"shasum":"b113ba6d4a2b3568e354a339009c520077a46783","tarball":"https://registry.npmjs.org/pi-interactive-shell/-/pi-interactive-shell-0.13.0.tgz","fileCount":30,"integrity":"sha512-0EGpE6C+wnAApbR3HEjVQSNi2g1axPst8hsKgcIVMvhDJinhgdhdAXdT2E+PPz8YexJT2L8NLnBiu+lfXA6cxg==","signatures":[{"sig":"MEYCIQDhoo/JxDQs9A2zyHTgRHTQxMfY+7tFJV1RSj1JBbG3cwIhAO1ZHS+jfS/tKCdwnC+niBi9OmgzHRJeMOkomxSOXDf2","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1555938},"type":"module","gitHead":"df4771e9105d29bde9b8f32858df6139c1c90605","scripts":{"test":"vitest run"},"_npmUser":{"name":"nicopreme","email":"nico.bailon@gmail.com"},"repository":{"url":"git+https://github.com/nicobailon/pi-interactive-shell.git","type":"git"},"_npmVersion":"11.6.2","description":"Run AI coding agents in pi TUI overlays with interactive, hands-free, and dispatch supervision","directories":{},"_nodeVersion":"25.2.1","dependencies":{"zigpty":"^0.1.6","typebox":"^1.1.24","@xterm/headless":"^5.5.0","@xterm/addon-serialize":"^0.13.0"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^3.2.4"},"_npmOperationalInternal":{"tmp":"tmp/pi-interactive-shell_0.13.0_1776972145588_0.4068442710953395","host":"s3://npm-registry-packages-npm-production"}},"0.14.0":{"name":"pi-interactive-shell","version":"0.14.0","keywords":["pi-package","pi","pi-coding-agent","extension","interactive","shell","terminal","tui","subagent","claude","gemini","codex"],"author":{"name":"Nico Bailon"},"license":"MIT","_id":"pi-interactive-shell@0.14.0","maintainers":[{"name":"nicopreme","email":"nico.bailon@gmail.com"}],"homepage":"https://github.com/nicobailon/pi-interactive-shell#readme","bugs":{"url":"https://github.com/nicobailon/pi-interactive-shell/issues"},"pi":{"video":"https://github.com/nicobailon/pi-interactive-shell/raw/refs/heads/main/pi-interactive-shell-extension.mp4","skills":["./skills"],"extensions":["./index.ts"]},"dist":{"shasum":"1ec7e991c32b391455a4171b7623d914b4dc277f","tarball":"https://registry.npmjs.org/pi-interactive-shell/-/pi-interactive-shell-0.14.0.tgz","fileCount":30,"integrity":"sha512-SUpVXTF1V3q7yLNboHB9RfclNXXt1flEm8jZKXi3XDGw+kTede2DKXUagF82ioFm0d7KH5JYq4kvpB8OBjW44g==","signatures":[{"sig":"MEUCIElSA4+gOw9TUUaaC0vTW0BRcIeM3fJMTtlkPQerrcYzAiEA2ZhXHuYbCBvl0iRnyeebULJ44eETh0vja0PsxEp9KkQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1563753},"type":"module","engines":{"node":">=22.19.0"},"gitHead":"2e08518898d540a3a1b3b7c9a58022b058262877","scripts":{"test":"vitest run","typecheck":"tsc -p tsconfig.json"},"_npmUser":{"name":"nicopreme","email":"nico.bailon@gmail.com"},"repository":{"url":"git+https://github.com/nicobailon/pi-interactive-shell.git","type":"git"},"_npmVersion":"11.6.2","description":"Run AI coding agents in pi TUI overlays with interactive, hands-free, and dispatch supervision","directories":{},"_nodeVersion":"25.2.1","dependencies":{"zigpty":"^0.1.6","@xterm/headless":"^5.5.0","@xterm/addon-serialize":"^0.13.0"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^3.2.4","typescript":"^5.9.3","@types/node":"^22.20.1"},"peerDependencies":{"typebox":"*","@earendil-works/pi-tui":"*","@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-interactive-shell_0.14.0_1785304839319_0.7948271973281376","host":"s3://npm-registry-packages-npm-production"}},"0.14.1":{"name":"pi-interactive-shell","version":"0.14.1","keywords":["pi-package","pi","pi-coding-agent","extension","interactive","shell","terminal","tui","subagent","claude","gemini","codex"],"author":{"name":"Nico Bailon"},"license":"MIT","_id":"pi-interactive-shell@0.14.1","maintainers":[{"name":"nicopreme","email":"nico.bailon@gmail.com"}],"homepage":"https://github.com/nicobailon/pi-interactive-shell#readme","bugs":{"url":"https://github.com/nicobailon/pi-interactive-shell/issues"},"pi":{"video":"https://github.com/nicobailon/pi-interactive-shell/raw/refs/heads/main/pi-interactive-shell-extension.mp4","skills":["./skills"],"extensions":["./index.ts"]},"dist":{"shasum":"7bcaf55c7f33f8b18cb835cbc8474ee865d5bf90","tarball":"https://registry.npmjs.org/pi-interactive-shell/-/pi-interactive-shell-0.14.1.tgz","fileCount":30,"integrity":"sha512-kcNqLtgHBl/HT48Fu7QMBVsSIjc1PMxuisLYW2Gfe0fw8eu+9+TF0xEdV9X2/Cc+xHNCFGE4PoAYzGgcMRVE0A==","signatures":[{"sig":"MEUCIQDQmdbqfpBRULWrdajvr8LOyX9Db9d7LCZhmG7hn8B9awIgbgs9MaYzdA8pUKoz8bARHdlfvafIaEkJlW+PW5QEl8s=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1569027},"type":"module","engines":{"node":">=22.19.0"},"gitHead":"c5dac7836f6886ed001697acddc15d56fbefe199","scripts":{"test":"vitest run","typecheck":"tsc -p tsconfig.json"},"_npmUser":{"name":"nicopreme","email":"nico.bailon@gmail.com"},"repository":{"url":"git+https://github.com/nicobailon/pi-interactive-shell.git","type":"git"},"_npmVersion":"11.6.2","description":"Run AI coding agents in pi TUI overlays with interactive, hands-free, and dispatch supervision","directories":{},"_nodeVersion":"25.2.1","dependencies":{"zigpty":"^0.1.6","@xterm/headless":"^5.5.0","@xterm/addon-serialize":"^0.13.0"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^3.2.4","typescript":"^5.9.3","@types/node":"^22.20.1"},"peerDependencies":{"typebox":"*","@earendil-works/pi-tui":"*","@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-interactive-shell_0.14.1_1786261409522_0.9518851988349855","host":"s3://npm-registry-packages-npm-production"}},"0.15.0":{"name":"pi-interactive-shell","version":"0.15.0","keywords":["pi-package","pi","pi-coding-agent","extension","interactive","shell","terminal","tui","subagent","claude","gemini","codex"],"author":{"name":"Nico Bailon"},"license":"MIT","_id":"pi-interactive-shell@0.15.0","maintainers":[{"name":"nicopreme","email":"nico.bailon@gmail.com"}],"homepage":"https://github.com/nicobailon/pi-interactive-shell#readme","bugs":{"url":"https://github.com/nicobailon/pi-interactive-shell/issues"},"pi":{"video":"https://github.com/nicobailon/pi-interactive-shell/raw/refs/heads/main/pi-interactive-shell-extension.mp4","skills":["./skills"],"extensions":["./index.ts"]},"dist":{"shasum":"70d784fb87a20c1c92d2eaa007b309865d0149d4","tarball":"https://registry.npmjs.org/pi-interactive-shell/-/pi-interactive-shell-0.15.0.tgz","fileCount":30,"integrity":"sha512-Iil+EKeNgNRbZOyRCndZmpHGMtrgp7OSiu8lmaBqiSlxt3rsZB692jgcTXll2Mhrh/M0k7nfVgMiCdn8xWHnww==","signatures":[{"sig":"MEQCIHQ6/m2c2fU/llu1gGMPod/PvP7jApw/5DSV3G8vcABYAiBy9DIIkDYIowooIgQFnuZc5cFIoh1/nt2EUAmF8/gutQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1574529},"type":"module","engines":{"node":">=22.19.0"},"gitHead":"87938caaaffe9f9c53642741971596100c387e50","scripts":{"test":"vitest run","typecheck":"tsc -p tsconfig.json"},"_npmUser":{"name":"nicopreme","email":"nico.bailon@gmail.com"},"repository":{"url":"git+https://github.com/nicobailon/pi-interactive-shell.git","type":"git"},"_npmVersion":"11.6.2","description":"Run AI coding agents in pi TUI overlays with interactive, hands-free, and dispatch supervision","directories":{},"_nodeVersion":"25.2.1","dependencies":{"zigpty":"^0.1.6","@xterm/headless":"^5.5.0","@xterm/addon-serialize":"^0.13.0"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^3.2.4","typescript":"^5.9.3","@types/node":"^22.20.1"},"peerDependencies":{"typebox":"*","@earendil-works/pi-tui":"*","@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-interactive-shell_0.15.0_1786636910996_0.7900613670483498","host":"s3://npm-registry-packages-npm-production"}},"0.15.1":{"name":"pi-interactive-shell","version":"0.15.1","keywords":["pi-package","pi","pi-coding-agent","extension","interactive","shell","terminal","tui","subagent","claude","gemini","codex"],"author":{"name":"Nico Bailon"},"license":"MIT","_id":"pi-interactive-shell@0.15.1","maintainers":[{"name":"nicopreme","email":"nico.bailon@gmail.com"}],"homepage":"https://github.com/nicobailon/pi-interactive-shell#readme","bugs":{"url":"https://github.com/nicobailon/pi-interactive-shell/issues"},"pi":{"video":"https://github.com/nicobailon/pi-interactive-shell/raw/refs/heads/main/pi-interactive-shell-extension.mp4","skills":["./skills"],"extensions":["./index.ts"]},"dist":{"shasum":"c4637cda2221db2bd7caea9f356c6e98957b225f","tarball":"https://registry.npmjs.org/pi-interactive-shell/-/pi-interactive-shell-0.15.1.tgz","fileCount":30,"integrity":"sha512-n9CyYrOSUYWgrdpzTBegpxYexG6bExeTk/hFKcrBHwA40kxcCCh+DH7XCEheDE+wszzWI6N5aNn7SZEhz8LGvg==","signatures":[{"sig":"MEUCICH9JVveyMmdx/s/plXejtBJTL/ndELrHNpN0toDSul+AiEA/TCWsAWKFBYh90oZNZ8rcmFAnqJjRPdo4YtSJ+2fEys=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1574410},"type":"module","engines":{"node":">=22.19.0"},"gitHead":"d363e9a162c60be463871ac2132c582e654621c3","scripts":{"test":"vitest run","typecheck":"tsc -p tsconfig.json"},"_npmUser":{"name":"nicopreme","email":"nico.bailon@gmail.com"},"repository":{"url":"git+https://github.com/nicobailon/pi-interactive-shell.git","type":"git"},"_npmVersion":"11.6.2","description":"Run AI coding agents in pi TUI overlays with interactive, hands-free, and dispatch supervision","directories":{},"_nodeVersion":"25.2.1","dependencies":{"zigpty":"^0.1.6","@xterm/headless":"^5.5.0","@xterm/addon-serialize":"^0.13.0"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^3.2.4","typescript":"^5.9.3","@types/node":"^22.20.1"},"peerDependencies":{"typebox":"*","@earendil-works/pi-tui":"*","@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-interactive-shell_0.15.1_1787774190045_0.38741530156034854","host":"s3://npm-registry-packages-npm-production"}},"0.15.2":{"name":"pi-interactive-shell","version":"0.15.2","keywords":["pi-package","pi","pi-coding-agent","extension","interactive","shell","terminal","tui","subagent","claude","gemini","codex"],"author":{"name":"Nico Bailon"},"license":"MIT","_id":"pi-interactive-shell@0.15.2","maintainers":[{"name":"nicopreme","email":"nico.bailon@gmail.com"}],"homepage":"https://github.com/nicobailon/pi-interactive-shell#readme","bugs":{"url":"https://github.com/nicobailon/pi-interactive-shell/issues"},"pi":{"video":"https://github.com/nicobailon/pi-interactive-shell/raw/refs/heads/main/pi-interactive-shell-extension.mp4","skills":["./skills"],"extensions":["./index.ts"]},"dist":{"shasum":"7ece5b9c57206b982ad75de7e3edd044ac6ba644","tarball":"https://registry.npmjs.org/pi-interactive-shell/-/pi-interactive-shell-0.15.2.tgz","fileCount":31,"integrity":"sha512-OQS4ny+8peBJBHoW/L2XyVn3zUrkhC/b8Qtc0aASk1lOeJMOgdrOX44GUmbNGQr5mYJ5waITT5pANzqvJe3VbA==","signatures":[{"sig":"MEUCIQD/jngcCRYVW0ndn54H8JdDAizJuEG06MDOgreqmiu/bQIgJt0FUAne9cGlcSJkhv9X+IFuEEKfqJ4JG3FQGp86tjo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1579517},"type":"module","engines":{"node":">=22.19.0"},"gitHead":"eedb89a9e4618d7416326d9387085a756a2125ee","scripts":{"test":"vitest run","typecheck":"tsc -p tsconfig.json"},"_npmUser":{"name":"nicopreme","email":"nico.bailon@gmail.com"},"repository":{"url":"git+https://github.com/nicobailon/pi-interactive-shell.git","type":"git"},"_npmVersion":"11.6.2","description":"Run AI coding agents in pi TUI overlays with interactive, hands-free, and dispatch supervision","directories":{},"_nodeVersion":"25.2.1","dependencies":{"zigpty":"^0.1.6","@xterm/headless":"^5.5.0","@xterm/addon-serialize":"^0.13.0"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^3.2.4","typescript":"^5.9.3","@types/node":"^22.20.1"},"peerDependencies":{"typebox":"*","@earendil-works/pi-tui":"*","@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-interactive-shell_0.15.2_1788586132877_0.4146206888762878","host":"s3://npm-registry-packages-npm-production"}},"0.16.0":{"name":"pi-interactive-shell","version":"0.16.0","keywords":["pi-package","pi","pi-coding-agent","extension","interactive","shell","terminal","tui","subagent","claude","gemini","codex"],"author":{"name":"Nico Bailon"},"license":"MIT","_id":"pi-interactive-shell@0.16.0","maintainers":[{"name":"nicopreme","email":"nico.bailon@gmail.com"}],"homepage":"https://github.com/nicobailon/pi-interactive-shell#readme","bugs":{"url":"https://github.com/nicobailon/pi-interactive-shell/issues"},"pi":{"video":"https://github.com/nicobailon/pi-interactive-shell/raw/refs/heads/main/pi-interactive-shell-extension.mp4","skills":["./skills"],"extensions":["./index.ts"]},"dist":{"shasum":"6310b7cb00555ed2381c31048742e646a9d7d218","tarball":"https://registry.npmjs.org/pi-interactive-shell/-/pi-interactive-shell-0.16.0.tgz","fileCount":48,"integrity":"sha512-GS9A3JWdGpvHtJe5b22wV2VcSjMliMyhun7cCw866ejOgiw/q5/3JNBmV2oYP6UA48uc+S8aY3xDgsNdp7gujQ==","signatures":[{"sig":"MEUCIQD662eG0RutvEoAIvE4czf7jQybZEMZqRuSg0IBeJSQIQIgSl8GI6EXWL9ileRFoIGctVuLxmQehXZdW+S0MdiHrYo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIGbJ/2W3kmo/i2ec1tW3QpnZVAWcwa3TX26KtAglTxOmAiEAwe9OlvBC1Oaekko8deNhtDqhrbTqaH0Pv4fXt9l/qeI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1835169},"type":"module","engines":{"node":">=22.19.0"},"gitHead":"314a99d49910b57030bb60c56eeb47602c21ccb1","scripts":{"test":"vitest run","eval:jev":"node --experimental-strip-types scripts/evaluate-jev.ts","typecheck":"tsc -p tsconfig.json","eval:jev:selector":"node --experimental-strip-types scripts/evaluate-jev-selector.ts"},"_npmUser":{"name":"nicopreme","email":"nico.bailon@gmail.com"},"repository":{"url":"git+https://github.com/nicobailon/pi-interactive-shell.git","type":"git"},"_npmVersion":"11.6.2","description":"Run AI coding agents in pi TUI overlays with interactive, hands-free, and dispatch supervision","directories":{},"_nodeVersion":"25.2.1","dependencies":{"re2js":"2.8.6","zigpty":"^0.1.6","@xterm/headless":"^5.5.0","@typesafe-ai/sdk":"0.6.0","@xterm/addon-serialize":"^0.13.0"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^3.2.4","typescript":"^5.9.3","@types/node":"^22.20.1"},"peerDependencies":{"typebox":"*","@earendil-works/pi-tui":"*","@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-interactive-shell_0.16.0_1789975634267_0.2463006120183049","host":"s3://npm-registry-packages-npm-production"}},"0.16.1":{"name":"pi-interactive-shell","version":"0.16.1","keywords":["pi-package","pi","pi-coding-agent","extension","interactive","shell","terminal","tui","subagent","claude","gemini","codex"],"author":{"name":"Nico Bailon"},"license":"MIT","_id":"pi-interactive-shell@0.16.1","maintainers":[{"name":"nicopreme","email":"nico.bailon@gmail.com"}],"homepage":"https://github.com/nicobailon/pi-interactive-shell#readme","bugs":{"url":"https://github.com/nicobailon/pi-interactive-shell/issues"},"pi":{"video":"https://github.com/nicobailon/pi-interactive-shell/raw/refs/heads/main/pi-interactive-shell-extension.mp4","skills":["./skills"],"extensions":["./index.ts"]},"dist":{"shasum":"fdd7b9de2f43e13b9c9530869ff0b634631f2487","tarball":"https://registry.npmjs.org/pi-interactive-shell/-/pi-interactive-shell-0.16.1.tgz","fileCount":48,"integrity":"sha512-YqlUoKsQZt+EKNuLY7+1IMx6P3Sz9LDFGbNY4tw8NcPPj8R4iICu7uipwJrevx0e9OXqEvpgKBMZnw5jjNLyIQ==","signatures":[{"sig":"MEUCIQDH8t/9DQsGVZlr9cf7Np0Fonq4HBRrvXi/SB6DA+nJNAIgSL8LFOHHxMkecKNl/MgbRZTCbVr7x1Ae/HrlpnBGsI0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQD+FQnVmdmIk5NyXHgxJ/ywqfGB2SgPuiz8ohc0QPgGBAIhAP9jhQSNI3A90BIpsGfOi27X3ZpINJdS81fwWAy83Ge1","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1835560},"type":"module","engines":{"node":">=22.19.0"},"gitHead":"ccae5debbab5a5567b7009946ca43ce71583fa9c","scripts":{"test":"vitest run","eval:jev":"node --experimental-strip-types scripts/evaluate-jev.ts","typecheck":"tsc -p tsconfig.json","eval:jev:selector":"node --experimental-strip-types scripts/evaluate-jev-selector.ts"},"_npmUser":{"name":"nicopreme","email":"nico.bailon@gmail.com"},"repository":{"url":"git+https://github.com/nicobailon/pi-interactive-shell.git","type":"git"},"_npmVersion":"11.6.2","description":"Run AI coding agents in pi TUI overlays with interactive, hands-free, and dispatch supervision","directories":{},"_nodeVersion":"25.2.1","dependencies":{"re2js":"2.8.6","zigpty":"^0.1.6","@xterm/headless":"^5.5.0","@typesafe-ai/sdk":"0.6.0","@xterm/addon-serialize":"^0.13.0"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^3.2.4","typescript":"^5.9.3","@types/node":"^22.20.1"},"peerDependencies":{"typebox":"*","@earendil-works/pi-tui":"*","@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-interactive-shell_0.16.1_1790008094759_0.8385150793423257","host":"s3://npm-registry-packages-npm-production"}},"0.17.0":{"pi":{"video":"https://github.com/nicobailon/pi-interactive-shell/raw/refs/heads/main/pi-interactive-shell-extension.mp4","skills":["./skills"],"extensions":["./index.ts"]},"_id":"pi-interactive-shell@0.17.0","bugs":{"url":"https://github.com/nicobailon/pi-interactive-shell/issues"},"dist":{"shasum":"2b254924afb2628d24b809e3baf63d95b51294d1","tarball":"https://registry.npmjs.org/pi-interactive-shell/-/pi-interactive-shell-0.17.0.tgz","fileCount":49,"integrity":"sha512-GRNitYwNpJMG8Kcg9heaD//4aT6taWyCt1ZOkvhgCFI/zPkpARJ8nefrX2URHG5RytRAvss09ZsTg7rM5NaPDQ==","signatures":[{"sig":"MEQCIF7qC8hb79Knl1Nktev1x99nTC3VF5oI0hwEderXtyhrAiB9ZdTnIt1iXrOccPPPWGvCDOZ0u1OBmCFpdGXFXrF35Q==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIHxgA055lIq08GuviNWssKXFAH+KjIIrN+sauNsnG1e5AiA0j8VFtTrvNAz8z/Sns2H8KBwgBc14U1Pb3h3UQe5cbQ=="}],"unpackedSize":1851567},"name":"pi-interactive-shell","type":"module","author":{"name":"Nico Bailon"},"engines":{"node":">=22.19.0"},"gitHead":"77df9a8142a2f731635a4c5a01d68feecb5cced4","license":"MIT","scripts":{"test":"vitest run","eval:jev":"node --experimental-strip-types scripts/evaluate-jev.ts","typecheck":"tsc -p tsconfig.json","eval:jev:selector":"node --experimental-strip-types scripts/evaluate-jev-selector.ts"},"version":"0.17.0","_npmUser":{"name":"nicopreme","email":"nico.bailon@gmail.com"},"homepage":"https://github.com/nicobailon/pi-interactive-shell#readme","keywords":["pi-package","pi","pi-coding-agent","extension","interactive","shell","terminal","tui","subagent","claude","gemini","codex"],"repository":{"url":"git+https://github.com/nicobailon/pi-interactive-shell.git","type":"git"},"_npmVersion":"11.6.2","description":"Run AI coding agents in pi TUI overlays with interactive, hands-free, and dispatch supervision","directories":{},"maintainers":[{"name":"nicopreme","email":"nico.bailon@gmail.com"}],"_nodeVersion":"25.2.1","dependencies":{"re2js":"2.8.6","zigpty":"^0.1.6","@xterm/headless":"^5.5.0","@typesafe-ai/sdk":"0.6.0","@xterm/addon-serialize":"^0.13.0"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^3.2.4","typescript":"^5.9.3","@types/node":"^22.20.1"},"peerDependencies":{"typebox":"*","@earendil-works/pi-tui":"*","@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/pi-interactive-shell_0.17.0_1790148162156_0.18684047411840643"}}},"time":{"created":"2026-01-18T01:29:09.419Z","modified":"2026-09-23T07:22:42.444Z","0.3.0":"2026-01-18T01:29:09.651Z","0.3.1":"2026-01-18T01:29:57.351Z","0.3.2":"2026-01-18T01:32:58.996Z","0.3.3":"2026-01-18T02:58:48.355Z","0.4.0":"2026-01-18T03:59:59.142Z","0.4.1":"2026-01-18T04:11:17.097Z","0.4.2":"2026-01-18T07:17:11.759Z","0.4.3":"2026-01-18T08:32:46.996Z","0.4.4":"2026-01-18T08:56:18.895Z","0.4.5":"2026-01-18T08:58:39.078Z","0.4.6":"2026-01-18T09:17:00.676Z","0.4.7":"2026-01-18T09:20:18.059Z","0.4.8":"2026-01-20T01:06:45.363Z","0.4.9":"2026-01-22T02:20:16.528Z","0.5.0":"2026-01-22T15:58:32.036Z","0.5.1":"2026-01-22T16:11:58.434Z","0.5.2":"2026-01-24T00:27:59.222Z","0.5.3":"2026-01-26T18:38:12.555Z","0.6.0":"2026-01-27T18:28:30.324Z","0.6.1":"2026-01-27T18:34:33.245Z","0.6.2":"2026-01-28T18:19:43.063Z","0.6.3":"2026-01-30T15:16:11.228Z","0.6.4":"2026-02-02T00:39:33.105Z","0.7.0":"2026-02-03T16:49:00.341Z","0.7.1":"2026-02-03T19:24:48.562Z","0.8.0":"2026-02-08T08:26:38.070Z","0.8.1":"2026-02-09T05:33:33.272Z","0.8.2":"2026-02-10T21:48:29.402Z","0.9.0":"2026-02-24T00:02:37.036Z","0.10.0":"2026-03-13T06:58:09.910Z","0.10.1":"2026-03-13T15:18:14.976Z","0.10.2":"2026-04-04T01:56:18.556Z","0.10.3":"2026-04-04T02:13:41.616Z","0.10.4":"2026-04-04T04:16:12.131Z","0.10.5":"2026-04-04T04:49:51.640Z","0.10.6":"2026-04-04T18:01:50.224Z","0.10.7":"2026-04-04T18:53:57.681Z","0.10.8":"2026-04-09T06:55:25.804Z","0.11.0":"2026-04-11T20:35:16.141Z","0.11.1":"2026-04-12T00:52:33.607Z","0.12.0":"2026-04-12T03:57:10.607Z","0.13.0":"2026-04-23T19:22:25.995Z","0.14.0":"2026-07-29T06:00:39.539Z","0.14.1":"2026-08-09T07:43:29.719Z","0.15.0":"2026-08-13T16:01:51.222Z","0.15.1":"2026-08-26T19:56:30.254Z","0.15.2":"2026-09-05T05:28:53.043Z","0.16.0":"2026-09-21T07:27:14.432Z","0.16.1":"2026-09-21T16:28:14.907Z","0.17.0":"2026-09-23T07:22:42.276Z"},"bugs":{"url":"https://github.com/nicobailon/pi-interactive-shell/issues"},"author":{"name":"Nico Bailon"},"license":"MIT","homepage":"https://github.com/nicobailon/pi-interactive-shell#readme","keywords":["pi-package","pi","pi-coding-agent","extension","interactive","shell","terminal","tui","subagent","claude","gemini","codex"],"repository":{"url":"git+https://github.com/nicobailon/pi-interactive-shell.git","type":"git"},"description":"Run AI coding agents in pi TUI overlays with interactive, hands-free, and dispatch supervision","maintainers":[{"name":"nicopreme","email":"nico.bailon@gmail.com"}],"readme":"<p>\n  <img src=\"banner.png\" alt=\"pi-interactive-shell\" width=\"1100\">\n</p>\n\n# Pi Interactive Shell\n\nAn extension for [Pi coding agent](https://github.com/badlogic/pi-mono/) that lets Pi autonomously run interactive CLIs in an observable TUI overlay. Pi controls the subprocess while you watch - take over anytime.\n\nhttps://github.com/user-attachments/assets/76f56ecd-fc12-4d92-a01e-e6ae9ba65ff4\n\n```typescript\ninteractive_shell({ command: 'vim config.yaml' })\n```\n\nImportant: the `interactive_shell({...})` snippets in this README are tool calls made by Pi (or extension/prompt authors). End users do not type these directly into chat. As a user, ask Pi to run something (for example: \"run this in dispatch mode\") or use `/spawn`, `/attach`, and `/dismiss` commands.\n\n## Why\n\nSome tasks need interactive CLIs - editors, REPLs, database shells, long-running processes. Pi can launch them in an overlay where:\n\n- **User watches** - See exactly what's happening in real-time\n- **User takes over** - Type anything to gain control\n- **Agent monitors** - Query status, send input, decide when done\n\nWorks with any CLI: `vim`, `htop`, `psql`, `ssh`, `docker logs -f`, `npm run dev`, `git rebase -i`, etc.\n\n## Install\n\n```bash\npi install npm:pi-interactive-shell\n```\n\nThe `interactive-shell` skill is automatically symlinked to `~/.pi/agent/skills/interactive-shell/`.\n\n**Requires:** Node.js. PTY support uses `zigpty` prebuilt binaries (no `node-gyp` toolchain required on supported platforms).\n\n## Modes\n\n| Mode | Agent waits? | How output reaches agent | Best for |\n|---|---|---|---|\n| **Interactive** (default) | No | Stable `sessionId` for input/status | Editors, REPLs, SSH — when the agent or user will drive the shell |\n| **Hands-free** | No | Poll with `sessionId` plus quiet updates | Dev servers, builds — when you want to watch progress and send follow-up commands |\n| **Dispatch** | No | Notification on completion via `triggerTurn` | Delegating tasks to subagents — fire and forget |\n| **Monitor** | No | Notification on structured monitor trigger events | Watchers, logs, tests, and state checks — wake only when something specific happens |\n\n**Interactive** — The overlay opens and returns a stable `sessionId` immediately. The user can type directly, and the agent can send `input` with `submit: true`, check status, or background the same id. Use for editors (`vim`), database shells (`psql`), SSH, or manual CLI flows where the next step is still interactive.\n\n**Hands-free** — The overlay opens and returns a stable `sessionId` immediately. The agent polls periodically with `sessionId` and also receives quiet/output updates. Good for long-running builds or dev servers where you want to react mid-flight (send input, check logs, or locally cancel supervision when ready).\n\n**Dispatch** — Returns immediately. No polling. The agent gets woken up via `triggerTurn` only when the session completes or local supervision ends (natural exit, timeout, quiet detection, or user cancellation). The notification includes a captured tail of the output. This is the default for delegating work to subagents. Add `background: true` to skip the overlay entirely.\n\n**Monitor** — Returns immediately. The agent gets woken up when a configured monitor trigger emits an event, and when the monitor lifecycle stops. Supports stream triggers, poll-diff checks, first-class file watching, optional cooldowns, persistence controls, detector commands, and event history queries. Runs headless; attach to inspect if needed.\n\n## Quick Start\n\nThe examples below show agent-side tool calls. They are not chat commands for end users.\n\n### Structured Spawn\n\nFor Pi, Codex, Claude, and Cursor, the agent can use structured spawn params instead of building command strings by hand:\n\n```typescript\n// User says: \"Spawn pi so I can edit files interactively\"\ninteractive_shell({ spawn: { agent: \"pi\" }, mode: \"interactive\" })\n\n// User says: \"Delegate this refactor to codex and notify me when it's done\"\ninteractive_shell({ spawn: { agent: \"codex\" }, mode: \"dispatch\" })\n\n// User says: \"Ask cursor to review the diffs in dispatch mode\"\ninteractive_shell({ spawn: { agent: \"cursor\", prompt: \"Review the diffs\" }, mode: \"dispatch\" })\n\n// User says: \"Ask claude to review the diffs in dispatch mode\"\ninteractive_shell({ spawn: { agent: \"claude\", prompt: \"Review the diffs\" }, mode: \"dispatch\" })\n\n// User says: \"Start claude in a worktree for hands-free monitoring\"\ninteractive_shell({ spawn: { agent: \"claude\", worktree: true }, mode: \"hands-free\" })\n\n// User says: \"Fork my current pi session\" (Pi-only)\ninteractive_shell({ spawn: { mode: \"fork\" }, mode: \"interactive\" })\n```\n\nStructured `spawn` uses the same resolver and config defaults as the user-facing `/spawn` command. Raw `command` is still supported for arbitrary CLIs and custom launch strings. For unattended coding-agent work in a repository, prefer structured `spawn` with `worktree: true` or set an explicitly isolated `cwd`; a raw agent command runs in the supplied working directory and can change its Git state.\n\nAny extra key you add under `spawn.commands` becomes a first-class spawn agent, usable as `spawn: { agent: \"aider\" }` and `/spawn aider`, with its own `spawn.defaultArgs` entry, worktree support, and prompt passthrough. `fork` stays Pi-only. Agent names must start with a letter or digit, may contain letters, digits, `.`, `_`, and `-`, and cannot be `fresh` or `fork`, because those are `/spawn` keywords.\n\nFor Codex image or design work, Codex can invoke `gpt-image-2` directly from the prompt. Natural language is usually enough, and `$imagegen` forces the image-generation tool when you need it. Attach references with `-i` for edits and iterations. See the bundled `codex-cli` skill for concrete examples. For Cursor CLI-specific command references, see the optional `examples/skills/cursor-cli` skill. Cursor structured spawn defaults to `--model composer-2-fast`, which explicitly selects Cursor's Composer 2 Fast model.\n\n### Interactive\n\n```typescript\n// User says: \"Open package.json in vim\"\ninteractive_shell({ command: 'vim package.json' })\n\n// User says: \"Connect to the postgres database\"\ninteractive_shell({ command: 'psql -d mydb' })\n\n// User says: \"SSH into the server\"\ninteractive_shell({ command: 'ssh user@server' })\n```\n\nThe tool returns a stable `sessionId` immediately. The agent can drive the same shell with `interactive_shell({ sessionId, input, submit: true })`, while the user can still type directly in the focused overlay.\n\n### Hands-Free\n\n```typescript\n// Start a long-running process\ninteractive_shell({\n  command: 'npm run dev',\n  mode: \"hands-free\",\n  reason: \"Dev server\"\n})\n// → { sessionId: \"calm-reef\", status: \"running\" }\n\n// User says: \"Check on the dev server status\"\ninteractive_shell({ sessionId: \"calm-reef\" })\n// → { status: \"running\", output: \"Server ready on :3000\", runtime: 45000 }\n\n// Send input when needed\ninteractive_shell({ sessionId: \"calm-reef\", input: \"/run review\", submit: true })\ninteractive_shell({ sessionId: \"calm-reef\", inputKeys: [\"ctrl+c\"] })\n\n// Cancel local supervision when done (termination is best-effort)\ninteractive_shell({ sessionId: \"calm-reef\", kill: true })\n// → { status: \"killed\", output: \"...\" } // locally cancelled; subprocess exit is not confirmed\n```\n\nThe overlay opens for the user to watch. The agent checks in periodically. User can type anything to take over control. After taking over a monitored hands-free or dispatch session, press `Ctrl+G` to return control to the agent.\n\n### Dispatch\n\n```typescript\n// User says: \"Delegate refactoring the auth module to pi and notify me when done\"\ninteractive_shell({\n  command: 'pi \"Refactor the auth module\"',\n  mode: \"dispatch\",\n  reason: \"Auth refactor\"\n})\n// → Returns immediately: { sessionId: \"calm-reef\" }\n// → Agent ends turn or does other work.\n```\n\nWhen the session completes, the agent receives a compact notification on a new turn:\n\n```\nSession calm-reef completed successfully (5m 23s). 847 lines of output.\n\nStep 9 of 10\nStep 10 of 10\nAll tasks completed.\n\nAttach to review full output: interactive_shell({ attach: \"calm-reef\" })\n```\n\nThe notification includes a brief tail (last 5 lines) and a reattach instruction. The PTY is preserved for 5 minutes so the agent can attach to review full scrollback.\n\nDispatch defaults `autoExitOnQuiet: true` — the session gets a 15s startup grace period, then auto-closes after output goes silent (8s by default). The completion notification and details set `completionReason: \"auto-close-quiet\"`; this is not a terminal command verdict. Tune the grace period with `handsFree: { gracePeriod: 60000 }` or opt out entirely with `handsFree: { autoExitOnQuiet: false }`.\n\n### Recoverable selected output (explicit opt-in)\n\nRecoverable selection is deliberately narrow: it supports only a raw `command` launched as a headless `mode: \"dispatch\"` session with `background: true`. It does not filter live TUI output, coding-agent/spawn sessions, auth flows, monitor or hands-free sessions, completion notifications, or ordinary output queries. It does not authorize commands or terminal input, and it does not generate a summary.\n\n```typescript\nconst launch = await interactive_shell({\n  command: \"npm test -- --runInBand\",\n  mode: \"dispatch\",\n  background: true,\n  outputSelection: {\n    enabled: true,\n    goal: \"retain failing test details, totals, and report paths\"\n  }\n})\n// launch.details.outputSource = {\n//   sourceId: \"<stable source id>\",\n//   representation: \"normalized-merged-pty-text-v1\",\n//   available: true\n// }\n\ninteractive_shell({ sourceId: launch.details.outputSource.sourceId, outputView: \"selected\" })\ninteractive_shell({ sourceId: launch.details.outputSource.sourceId, outputView: \"status\" })\ninteractive_shell({\n  sourceId: launch.details.outputSource.sourceId,\n  outputView: \"raw\",\n  sourceOffset: 0,\n  sourceLimit: 5120\n})\n```\n\nCapture starts only from the per-launch `outputSelection` consent above. Capture, `status`, and local-only `raw` reads do not call Jev. An eligible completed-log block reaches TypeSafe only when an agent explicitly queries `outputView: \"selected\"` and the other two consent gates are also open: the user's **global** config has `jev.enabled: true`, and `TYPESAFE_API_KEY` was inherited by the Pi process. Project config, a credential by itself, and `monitor.semantic` cannot enable selected-output transmission. Never put the credential in a tool call, config example, or project file.\n\nSelected queries return `selected`, `unchanged`, `unavailable`, or `pagination-required`. Semantic omission ranges identify blocks omitted after evaluation; physical recovery ranges identify retained evidence that does not fit the selected display budget. In every case, use `outputView: \"raw\"` with the stable source ID to recover the local source. Short, exact/exhaustive, JSON/XML/YAML/diff, binary/control-heavy, interactive/auth, secret-like, or incomplete sources conservatively bypass transmission. Disabled configuration, a missing credential, provider/parse/timeout/abort failure, or request-cap exhaustion never authorizes omission: the response is unavailable with the bounded ordinary completion fallback and raw recovery metadata.\n\nThe raw source representation, `normalized-merged-pty-text-v1`, is the exact merged PTY JavaScript text received after terminal device-query removal. It preserves ANSI and carriage returns and uses half-open UTF-16 ranges; it is not original bytes and does not separate stdout from stderr. Provider/model and selected display text use `safe-normalized-terminal-text-v1`: controls are removed and carriage returns apply narrow same-line overwrite semantics, while every excerpt retains its exact raw range.\n\nFixed safety/retention bounds are not configuration knobs: 8 MiB per complete source, 64 MiB process-local aggregate storage, one-hour completed-source recovery, and at most 51,200 UTF-16 characters per raw read. Selection has a 5,120-visible-character budget, uses `jev-1.13.0`, and permits at most eight logical/sixteen possible physical attempts, 10 seconds per call, and one 90-second outer deadline. Canonical UTF-8 preflight stays strictly below 24 KiB for state plus a full single question and below 48 KiB for state plus all questions, conservative headroom under the provider's official 32K/64K token limits. Returned token usage is audit evidence only; this integration does not expose an authoritative price.\n\nSelection requires process-retained launch consent/goal metadata. After a Pi process restart, selected view is explicitly unavailable, but raw recovery by `sourceId` remains available until expiry. The frozen calibration corpus (`747b075e4ad3d49411a12c3775d5316e7ad32bdd3e3ef231670b750facd37a45`) is kept as a reproducible regression: three accepted frozen live runs each scored held-out 15/15 versus deterministic 14/15 and tail 11/15; all 18/18 requests succeeded with no failure/retry statuses, p50 216.5 ms/p95 309 ms, and 17,993 input plus 2,660 output tokens per run. Cost was unavailable. This bounded corpus evidence does not establish universal accuracy or generalization.\n\nFor an external gate, use this provider-agnostic watch-until-terminal pattern. The watcher must print one of the terminal lines and exit only after it has a verdict:\n\n```typescript\ninteractive_shell({\n  command: \"your-watch-command\",\n  mode: \"monitor\",\n  handsFree: { autoExitOnQuiet: false },\n  timeout: 20 * 60_000,\n  monitor: {\n    strategy: \"stream\",\n    triggers: [\n      { id: \"ready\", literal: \"ready\" },\n      { id: \"blocked\", literal: \"blocked\" },\n      { id: \"stale-head\", literal: \"stale-head\" }\n    ]\n  }\n})\n```\n\nThis works with CI, deploy, health, and custom CLI watchers. If raw dispatch is required, disable quiet auto-close and treat `completionReason: \"auto-close-quiet\"` as non-terminal.\n\nThe overlay still shows for the user, who can Ctrl+T to transfer output, Ctrl+B to background, take over by typing, or Ctrl+Q for more options. `Ctrl+G` only becomes meaningful after the user has taken over a monitored hands-free or dispatch session.\n\n### Background Dispatch (Headless)\n\n```typescript\n// No overlay — runs completely invisibly\ninteractive_shell({\n  command: 'pi \"Fix all lint errors\"',\n  mode: \"dispatch\",\n  background: true\n})\n// → { sessionId: \"calm-reef\" }\n// → User can /attach calm-reef to peek\n// → Agent notified on completion, same as regular dispatch\n```\n\nMultiple headless dispatches can run concurrently alongside a single interactive overlay. This is how you parallelize subagent work — fire off three background dispatches and process results as each completion notification arrives.\n\n### Monitor (Event-Driven)\n\nThese examples are **agent tool calls**. End users should ask in natural language (for example: \"watch my tests and alert me on failures\"), and Pi should invoke `interactive_shell` with the monitor config.\n\nWake the agent when monitor triggers emit events — no polling and no waiting for process completion.\n\n```typescript\n// User says: \"Watch my tests and alert me on failures or errors\"\ninteractive_shell({\n  command: 'npm test --watch',\n  mode: \"monitor\",\n  monitor: {\n    strategy: \"stream\",\n    triggers: [\n      { id: \"failed\", literal: \"FAIL\" },\n      { id: \"error\", regex: \"/error|exception/i\" }\n    ],\n    throttle: { dedupeExactLine: true },\n    persistence: { stopAfterFirstEvent: false }\n  }\n})\n\n// User says: \"Monitor the health endpoint and tell me when it changes\"\ninteractive_shell({\n  command: 'curl -sf http://localhost:3000/health',\n  mode: \"monitor\",\n  monitor: {\n    strategy: \"poll-diff\",\n    triggers: [{ id: \"changed\", regex: \"/./\" }],\n    poll: { intervalMs: 5000 }\n  }\n})\n\n// User says: \"Alert me when NVDA drops below $120\"\ninteractive_shell({\n  command: 'curl -s https://api.example.com/quote/NVDA',\n  mode: \"monitor\",\n  monitor: {\n    strategy: \"stream\",\n    triggers: [\n      {\n        id: \"nvda-below-120\",\n        regex: \"/NVDA:\\\\s*\\\\$?(\\\\d+(?:\\\\.\\\\d+)?)/\",\n        threshold: { captureGroup: 1, op: \"lt\", value: 120 }\n      }\n    ]\n  }\n})\n\n// User says: \"Watch the uploads folder for new PDF files and notify me\"\ninteractive_shell({\n  mode: \"monitor\",\n  monitor: {\n    strategy: \"file-watch\",\n    fileWatch: { path: \"./uploads\", recursive: true, events: [\"rename\", \"change\"] },\n    triggers: [{ id: \"pdf\", regex: \"/\\\\.pdf$/i\" }]\n  }\n})\n```\n\n`file-watch` generates and authorizes its own watcher command. Do not combine it with top-level `command` or `spawn`; mixed requests are rejected before spawn resolution or worktree creation.\n\nMonitor mode emits structured payloads (`sessionId`, `eventId`, `timestamp`, `strategy`, `triggerId`, `matchedText`, `lineOrDiff`, `stream`) and now also emits lifecycle notifications when a monitor stops (stream ended, script failed, stopped, or timed out). `monitorFilter` was removed in favor of the structured `monitor` object.\n\n```typescript\ninteractive_shell({ monitorStatus: true, monitorSessionId: \"calm-reef\" })\ninteractive_shell({ monitorEvents: true, monitorSessionId: \"calm-reef\" })\ninteractive_shell({ monitorEvents: true, monitorSessionId: \"calm-reef\", monitorSinceEventId: 42 })\ninteractive_shell({ monitorEvents: true, monitorSessionId: \"calm-reef\", monitorTriggerId: \"error\" })\ninteractive_shell({ monitorEvents: true, monitorSessionId: \"calm-reef\", monitorEventLimit: 50, monitorEventOffset: 20 })\n```\n\nMonitor sessions run headless and can be managed like other background sessions (`listBackground`, `/attach`, `dismissBackground`).\n\n### Timeout\n\nCapture output from TUI apps that don't exit cleanly:\n\n```typescript\ninteractive_shell({\n  command: \"htop\",\n  mode: \"hands-free\",\n  timeout: 3000  // Cancel after 3s, attempt termination, return captured output\n})\n```\n\n## Features\n\n### Auto-Exit on Quiet\n\nFor fire-and-forget single-task delegations, enable auto-exit to cancel local supervision after 8s of output silence and attempt termination:\n\n```typescript\ninteractive_shell({\n  command: 'pi \"Fix the bug in auth.ts\"',\n  mode: \"hands-free\",\n  handsFree: { autoExitOnQuiet: true }\n})\n```\n\nA 15s startup grace period prevents local cancellation before the subprocess has time to produce output. Customize it per-call with `gracePeriod`:\n\n```typescript\ninteractive_shell({\n  command: 'pi \"Run the full test suite\"',\n  mode: \"hands-free\",\n  handsFree: { autoExitOnQuiet: true, gracePeriod: 60000 }\n})\n```\n\nThe default grace period is also configurable globally via `autoExitGracePeriod` in the config file.\n\nFor multi-turn sessions where you need back-and-forth interaction, leave it disabled (default) and use `kill: true` to cancel local supervision when done.\n\n### Send Input\n\n```typescript\n// Text only (types text but does not submit)\ninteractive_shell({ sessionId: \"calm-reef\", input: \"SELECT * FROM users;\" })\n\n// Type text and press Enter\ninteractive_shell({ sessionId: \"calm-reef\", input: \"SELECT * FROM users;\", submit: true })\n\n// Named keys\ninteractive_shell({ sessionId: \"calm-reef\", inputKeys: [\"ctrl+c\"] })\ninteractive_shell({ sessionId: \"calm-reef\", inputKeys: [\"down\", \"down\", \"enter\"] })\n\n// Bracketed paste (multiline without execution)\ninteractive_shell({ sessionId: \"calm-reef\", inputPaste: \"line1\\nline2\\nline3\" })\n\n// Hex bytes (raw escape sequences)\ninteractive_shell({ sessionId: \"calm-reef\", inputHex: [\"0x1b\", \"0x5b\", \"0x41\"] })\n\n// Combine text with keys\ninteractive_shell({ sessionId: \"calm-reef\", input: \"y\", inputKeys: [\"enter\"] })\n```\n\nFor editor-based TUIs like pi, raw `input` only types text. It does not submit the prompt. Prefer `submit: true` or `inputKeys: [\"enter\"]` instead of relying on `\\n`.\n\n### Configurable Output\n\n```typescript\n// Default: 20 lines, 5KB\ninteractive_shell({ sessionId: \"calm-reef\" })\n\n// More lines (max: 200)\ninteractive_shell({ sessionId: \"calm-reef\", outputLines: 100 })\n\n// Incremental pagination (server tracks position)\ninteractive_shell({ sessionId: \"calm-reef\", outputLines: 50, incremental: true })\n\n// Drain mode (raw stream since last query)\ninteractive_shell({ sessionId: \"calm-reef\", drain: true })\n```\n\n### Transfer Output to Agent\n\nWhen a subagent finishes work, press **Ctrl+T** to capture its output and send it directly to the main agent:\n\n```\n[Subagent finishes work]\n        ↓\n[Press Ctrl+T]\n        ↓\n[Overlay closes, main agent receives full output]\n```\n\nThe main agent then has the subagent's response in context and can continue working with that information.\n\n**Configuration:**\n- `transferLines`: Max lines to capture (default: 200)\n- `transferMaxChars`: Max characters (default: 20KB)\n\n### Background Sessions\n\nSessions can be backgrounded by the user (Ctrl+B, or Ctrl+Q → \"Run in background\") or by the agent:\n\n```typescript\n// Agent backgrounds an active session\ninteractive_shell({ sessionId: \"calm-reef\", background: true })\n// → Overlay closes, process keeps running\n\n// List background sessions\ninteractive_shell({ listBackground: true })\n\n// Reattach with a specific mode\ninteractive_shell({ attach: \"calm-reef\" })                      // interactive (blocking)\ninteractive_shell({ attach: \"calm-reef\", mode: \"hands-free\" })  // hands-free (poll)\ninteractive_shell({ attach: \"calm-reef\", mode: \"dispatch\" })    // dispatch (notified)\n\n// Dismiss background sessions\ninteractive_shell({ dismissBackground: true })               // all sessions\ninteractive_shell({ dismissBackground: \"calm-reef\" })        // specific session\n```\n\nMonitor sessions work the same way — they're headless background sessions that wake you on monitor events instead of completion.\n\nThe background-session list below the editor shows only running sessions, uses at most 20% of the terminal height (up to six rows), and collapses overflow into a summary. Completed sessions disappear from the widget immediately but remain temporarily queryable. Use `/attach` to view the retained full list.\n\nRunning background sessions and monitors survive `/reload` and reappear under the new extension instance. Quitting Pi or switching sessions still terminates them.\n\nUser can also `/spawn` to launch the configured default spawn agent, `/spawn codex`, `/spawn cursor`, `/spawn claude`, `/spawn pi`, `/spawn fork`, `/spawn pi fork`, or `/spawn <custom-agent>` for any agent added to `spawn.commands`. Add `--worktree` to spawn in a separate git worktree, for example `/spawn cursor --worktree`, `/spawn codex --worktree`, or `/spawn pi fork --worktree`. Plain `/spawn cursor` stays a normal interactive overlay. `fork` is Pi-only. Worktrees are left in place and the overlay will tell you where they were created. `/attach` or `/attach <id>` reattaches, and `/dismiss` or `/dismiss <id>` cleans up from the chat. The keyboard spawn shortcut is separate from `/spawn` and uses `spawn.shortcut`.\n\n### Prompt-Bearing `/spawn`\n\nQuoted prompt text plus `--hands-free` or `--dispatch` turns `/spawn` into a monitored delegated run instead of a plain interactive overlay. This shares the same resolver and defaults as structured `interactive_shell({ spawn: ... })`. Plain `/spawn` stays interactive. `Ctrl+G` only applies after you take over one of these monitored sessions.\n\n```bash\n/spawn cursor \"review the diffs\" --dispatch\n/spawn claude \"review the diffs\" --dispatch\n/spawn codex \"fix the failing tests\" --hands-free\n/spawn pi fork \"continue from here\" --dispatch\n```\n\n## Keys\n\n| Key | Action |\n|-----|--------|\n| Ctrl+T | **Transfer & close** - capture output and send to main agent |\n| Ctrl+B | Background session (dismiss overlay, keep running) |\n| Ctrl+Q | Session menu (transfer/background/kill/cancel) |\n| Shift+Up/Down | Scroll history |\n| Alt+Shift+F (default) | Toggle focus between overlay and main chat (`focusShortcut`) |\n| Ctrl+G | Return to agent monitoring (only after taking over a monitored hands-free or dispatch session) |\n| Alt+Shift+P (default) | Launch the configured default spawn agent (`spawn.shortcut`) |\n| Any key (hands-free) | Take over control |\n\n## Deferred tool loading\n\n`interactive_shell` is active by default. Set `\"defer\": true` to keep its large tool definition out of the initial model request:\n\n```json\n{\n  \"defer\": true\n}\n```\n\nPi then exposes the small `enable_interactive_shell` loader. When a task needs the shell, the agent calls the loader and `interactive_shell` becomes available on the next model turn. `/spawn`, `/attach`, `/dismiss`, and the keyboard shortcuts continue to work directly.\n\nEach reloaded, new, resumed, or forked session starts with `interactive_shell` inactive again. Pi versions without the active-tool API print a warning and keep the tool active. A CLI `--tools` allowlist must include both `enable_interactive_shell` and `interactive_shell`; deferred activation cannot override an allowlist that excludes the target tool.\n\nDeferred mode omits `interactive_shell`'s `promptSnippet`; the same operating guidance remains in the tool description. This keeps the system-prompt prefix stable when Pi uses native deferred loading.\n\n## Optional Jev semantic supervision\n\nJev integration is optional and off by default. Terminal data reaches TypeSafe AI only when all three gates are open: the user enables `jev.enabled` in the **global** config, `TYPESAFE_API_KEY` exists in Pi's process environment, and a tool call explicitly supplies `monitor.semantic`. Put the environment variable in the shell that starts Pi or inject it with your secret manager; it is never a tool argument or an `interactive-shell.json` field. A project config cannot enable Jev or switch its model.\n\nExample global opt-in (the default is `false`):\n\n```json\n{\n  \"jev\": {\n    \"enabled\": true,\n    \"model\": \"jev-1.13.0\",\n    \"requestTimeoutMs\": 10000,\n    \"maxRetries\": 1,\n    \"maxViewportLines\": 40,\n    \"maxRecentChars\": 4000,\n    \"redactionPatterns\": [],\n    \"diagnostics\": { \"enabled\": false, \"retentionDays\": 14, \"maxBytes\": 20000000 }\n  }\n}\n```\n\n| Jev field | Default | Implemented bounds/ownership |\n|---|---:|---|\n| `enabled` | `false` | Global config only |\n| `model` | `jev-1.13.0` | Nonempty global value only; project model is ignored |\n| `requestTimeoutMs` | `10000` | 1,000–30,000; project may only lower the global value |\n| `maxRetries` | `1` | 0–2; project may only lower the global value |\n| `maxViewportLines` | `40` | 5–80; project may only lower the global value |\n| `maxRecentChars` | `4000` | 500–8,000; project may only lower the global value |\n| `redactionPatterns` | `[]` | Up to 50 global-first, project-added RE2-compatible patterns; each source is 1–512 characters |\n| `diagnostics.enabled` | `false` | Global config only; records local structured metadata without another model call |\n| `diagnostics.retentionDays` | `14` | 1–90 days; global config only |\n| `diagnostics.maxBytes` | `20000000` | 1–100 MB per process across its retained journals; global config only |\n\nPer-session `monitor.semantic` supports: `goal` (optional task context, sent bounded to 1,000 characters), `attention` (built-in events, default `false`), `watches` (safe unique IDs, nonempty conditions, optional threshold 0–1 with default `0.8`), `minIntervalMs` (default `1000`, clamped 250–60,000), `quietIntervalMs` (below), `uncertain` (`\"continue\"` by default or `\"notify\"`), and optional `actions`. Actions require literal `enabled: true`, 1–10 items, session `maxActions` default 1/max 10, safe unique IDs, descriptions up to 500 characters, exactly one text input (1–2,000 characters, optional `submit`) or strict key array (1–32 keys), encoded bytes up to 4,096, cooldown 0–86,400,000 ms, and per-action executions 1–10. A code-owned process-wide cap permits at most 10 semantic action attempts across all sessions; refused or throwing writes consume an attempt, and the cap is not caller-configurable.\n\nQuiet-state integration adds `quietIntervalMs`: one observe-only reassessment per inactivity episode (default 2,000ms, bounded 250–60,000 and still subject to `minIntervalMs`). It also covers sessions that produce no output. An unchanged quiet observation can notify but cannot execute actions or write terminal bytes.\n\nBounded viewport/recent terminal text is sent to TypeSafe AI. ANSI/control text is stripped and built-in plus configured redaction runs first, but redaction is defense in depth—not a promise to identify every secret. Custom patterns use linear-time RE2-compatible syntax (no backreferences, lookaround, or nested repetition), are validated at config load, and replace every case-insensitive match with literal `[REDACTED]`. Invalid selected patterns reject configuration rather than being skipped. Full scrollback, request bodies, exact action input/bytes, and the API key are not stored in semantic history. Provider failures, uncertainty, stale responses, or a visible result never imply process completion or permission to act; PTY exit remains deterministic authority.\n\nBuilt-in attention notifications use the model's confident, mutually exclusive primary state. Confident `working` continues silently, confident `other` remains uncertain, and confident input, approval, result, or blocked states emit their corresponding bounded event. The same attention event is suppressed until the primary state changes or new input is written to the session, so screen churn such as token counters or timers does not wake Pi again while a follow-up question after an answer does. Independent watches and action-control events retain their own delivery semantics. Independent Noul answers remain inspectable metadata and drive watches or action readiness where configured; they do not duplicate-veto the primary attention event. This routing never grants terminal-action authority.\n\nObserve a hands-free or dispatch session without authorizing input:\n\n```typescript\ninteractive_shell({\n  command: 'pi \"Review the changes\"',\n  mode: \"hands-free\", // mode: \"dispatch\" also works\n  monitor: { semantic: { goal: \"Review changes and report blockers\" } }\n})\n```\n\nEmit built-in attention events and an independent watch:\n\n```typescript\ninteractive_shell({\n  command: \"npm test -- --watch\",\n  mode: \"monitor\",\n  monitor: {\n    strategy: \"semantic\",\n    semantic: {\n      attention: true,\n      uncertain: \"notify\",\n      watches: [{ id: \"tests-failed\", condition: \"A test failure is visibly present\", threshold: 0.85 }]\n    }\n  }\n})\n```\n\nAuthorize one bounded, immutable exact response:\n\n```typescript\ninteractive_shell({\n  command: \"deploy-tool\",\n  mode: \"monitor\",\n  monitor: {\n    strategy: \"semantic\",\n    semantic: {\n      attention: true,\n      actions: {\n        enabled: true,\n        maxActions: 1,\n        items: [{ id: \"confirm\", description: \"Confirm the visible ordinary deployment prompt\", input: \"yes\", submit: true, maxExecutions: 1 }]\n      }\n    }\n  }\n})\n```\n\nActions are predeclared immutable `input` (+ optional `submit`) or strict `inputKeys`, never generated text, hex, paste, credentials, secret/payment entry, or lifecycle commands. Confidence is one required safety gate, not authorization. User takeover pauses supervision; returning control requires fresh rendered output before evaluation/action resumes. Semantic events never mark a process exited.\n\nSemantic events carry a bounded, already-redacted excerpt of the screen Jev evaluated. Answer a question with ordinary `input` or `inputKeys` on the session.\n\nInspect semantic decisions with `interactive_shell({ semanticDecisions: true, semanticSessionId: sessionId })`. Inspect delivered events with `interactive_shell({ monitorEvents: true, monitorSessionId: sessionId })`; `monitorStatus: true` returns monitor lifecycle state.\n\nOptional diagnostics write private per-process JSONL journals under Pi's agent directory. Each process owns and bounds its own files, so writers need no shared lock. Records contain only fixed schema/version identifiers, random run and incident IDs, timestamps, bounded timing/token counts, fixed decision/event/outcome categories, and sanitized model names. They never contain terminal text, commands, paths, session IDs, observation hashes, configured goals or watches, credentials, API keys, raw provider responses, or free-form notes. Files are mode `0600`; expired records are excluded from summaries immediately, and old journals are pruned on later writes. Diagnostics add no terminal polling, provider request, notification, action, or automatic tuning.\n\nSummarize recent diagnostics without reading terminal content:\n\n```typescript\ninteractive_shell({ semanticDiagnostics: true, semanticDiagnosticDays: 7 })\n```\n\nWhen ordinary task handling supplies observable evidence of a discrepancy, the agent can attach one fixed-category incident to a live semantic run:\n\n```typescript\ninteractive_shell({\n  semanticSessionId: sessionId,\n  semanticIncident: {\n    kind: \"wrong-notification-type\",\n    decisionId: 12,\n    expectedEvent: \"input-required\",\n    observedEvent: \"result-ready\"\n  }\n})\n```\n\nSupported incident categories are `missed-notification`, `unnecessary-notification`, `wrong-notification-type`, `duplicate-notification`, `premature-result`, and `stale-notification`. A report is a suspected problem, not ground truth. Confirm recurring incidents with an observable outcome or sanitized reproduction, add the reproduction to the corpus, then run `npm run eval:jev` before changing calibration. Diagnostics cannot discover a silent missed notification unless normal work or an explicit check causes the terminal state to be observed.\n\nTroubleshooting:\n- **Disabled globally:** set global `jev.enabled: true`; project configuration cannot enable transmission.\n- **Missing credential:** start Pi from an environment containing `TYPESAFE_API_KEY`; do not put it in tool or project configuration.\n- **Timeout/rate limit/provider failure:** the decision fails closed with a bounded diagnostic; increase only the global timeout within its bound or retry after provider recovery.\n- **Uncertain result:** default behavior is continue silently; set `uncertain: \"notify\"` to emit a bounded event. Uncertainty never authorizes input.\n- **Model change:** run the repository corpus explicitly with `npm run eval:jev` before relying on the new globally configured model. This command reads only packaged fixtures, requires the same global enablement and environment credential, and never runs in normal tests/CI. Its pass gate measures the expected attention state and default user-visible event outcome; `atomicAccuracy` separately reports agreement with every secondary Noul.\n\nTypeSafe states that customer requests/responses are not used to train Jev; see [Models](https://docs.typesafe.ai/models) and [Legal](https://docs.typesafe.ai/legal). Its [public privacy policy](https://typesafe.ai/legal/privacy-policy) says personal data is retained as reasonably necessary, so do not assume default zero retention. Enterprise zero-data-retention is a separate arrangement described by TypeSafe and is not enabled by this direct SDK integration.\n\n## Config\n\nConfiguration files (project overrides global):\n- **Global:** `~/.pi/agent/interactive-shell.json`\n- **Project:** `.pi/interactive-shell.json`\n\n### Launch policy\n\nGlobal `launchPolicy` lets you allow, deny, or require confirmation for commands launched through `interactive_shell` and `/spawn`. It is off unless the field is present, and only the global config can set it; a project config that defines it is rejected.\n\n```json\n{\n  \"launchPolicy\": [\n    { \"command\": \"npm test\", \"decision\": \"allow\" },\n    { \"command\": \"deploy --production\", \"decision\": \"deny\" }\n  ]\n}\n```\n\nEach raw command, or the final resolved structured-spawn command including configured default arguments and prompt, is matched exactly before any PTY, session, process, or worktree is created. `deny` blocks, `ask` requires Pi's confirmation dialog, and `allow` proceeds. Unmatched commands ask, and when several rules match, `deny` wins over `ask`, which wins over `allow`. An empty array asks for every launch. Unavailable UI, rejection, or dialog failure blocks an `ask`. Queries, input, attach, and lifecycle calls for existing sessions are unaffected.\n\nThe policy is local and needs no Jev setup, API key, or model call. It is an `interactive_shell` launch check, not a shell, Bash, Pi, or operating-system sandbox.\n\n### Shell selection\n\nNew sessions use the same Bash resolver as Pi rather than the ambient `$SHELL`\nor `COMSPEC`. On Unix, this changes the default from `$SHELL`/`/bin/sh` to\nPi's Bash selection (`/bin/bash`, then `bash` on `PATH`, with Pi's documented\nfallback). On Windows, Pi discovers Git Bash in its standard install\nlocations, then `bash.exe` on `PATH`.\n\nTo choose a specific Bash executable, set Pi's `shellPath` in\n`~/.pi/agent/settings.json` (or trusted project `.pi/settings.json`):\n\n```json\n{\n  \"shellPath\": \"C:/Program Files/Git/bin/bash.exe\"\n}\n```\n\nProject settings follow Pi's trust rules: a trusted project's `shellPath`\noverrides the global setting, while an untrusted project's setting is ignored.\n`shellPath` must select a Bash-compatible executable; PowerShell and `cmd.exe`\nare not interactive-shell transports. Pi's legacy WSL `bash.exe` uses\nstdin-only command transport and is rejected for interactive PTYs; select Git\nBash instead.\n\nDeferred loading and shortcut settings are pinned at startup. If you change `defer`, `focusShortcut`, or `spawn.shortcut`, reload or restart Pi to apply them.\n\n```json\n{\n  \"defer\": false,\n  \"overlayWidthPercent\": 95,\n  \"overlayHeightPercent\": 60,\n  \"overlayAnchor\": \"center\",\n  \"focusShortcut\": \"alt+shift+f\",\n  \"spawn\": {\n    \"defaultAgent\": \"pi\",\n    \"shortcut\": \"alt+shift+p\",\n    \"commands\": {\n      \"pi\": \"pi\",\n      \"codex\": \"codex\",\n      \"claude\": \"claude\",\n      \"cursor\": \"agent\",\n      \"aider\": \"aider\"\n    },\n    \"defaultArgs\": {\n      \"pi\": [],\n      \"codex\": [],\n      \"claude\": [],\n      \"cursor\": [\"--model\", \"composer-2-fast\"],\n      \"aider\": [\"--yes-always\"]\n    },\n    \"worktree\": false,\n    \"worktreeBaseDir\": \"../repo-worktrees\"\n  },\n  \"scrollbackLines\": 5000,\n  \"exitAutoCloseDelay\": 10,\n  \"minQueryIntervalSeconds\": 60,\n  \"transferLines\": 200,\n  \"transferMaxChars\": 20000,\n  \"completionNotifyLines\": 50,\n  \"completionNotifyMaxChars\": 5000,\n  \"handsFreeUpdateMode\": \"on-quiet\",\n  \"handsFreeUpdateInterval\": 60000,\n  \"handsFreeQuietThreshold\": 8000,\n  \"autoExitGracePeriod\": 15000,\n  \"handsFreeUpdateMaxChars\": 1500,\n  \"handsFreeMaxTotalChars\": 100000,\n  \"handoffPreviewEnabled\": true,\n  \"handoffPreviewLines\": 30,\n  \"handoffPreviewMaxChars\": 2000,\n  \"handoffSnapshotEnabled\": false,\n  \"ansiReemit\": true\n}\n```\n\n| Setting | Default | Description |\n|---------|---------|-------------|\n| `defer` | `false` | Start each session with only `enable_interactive_shell`; the full tool loads on demand |\n| `overlayWidthPercent` | 95 | Overlay width (10-100%) |\n| `overlayHeightPercent` | 60 | Overlay height (20-90%) |\n| `overlayAnchor` | \"center\" | Overlay position: `center`, `top-left`, `top-center`, `top-right`, `left-center`, `right-center`, `bottom-left`, `bottom-center`, `bottom-right` |\n| `focusShortcut` | \"alt+shift+f\" | Toggle focus between overlay and main chat |\n| `spawn.defaultAgent` | \"pi\" | Configured default spawn agent for `/spawn`, the spawn shortcut, and agent-side structured spawn |\n| `spawn.shortcut` | \"alt+shift+p\" | Keyboard shortcut that launches the configured default spawn agent |\n| `spawn.commands.<agent>` | `pi` / `codex` / `claude` / `agent` (cursor) | Executable or path per spawn agent. Extra keys define custom spawn agents |\n| `spawn.defaultArgs.<agent>` | `[]` (Cursor defaults to `--model composer-2-fast`) | Extra default CLI args per spawn agent |\n| `spawn.worktree` | `false` | Launch spawns in a separate git worktree by default |\n| `spawn.worktreeBaseDir` | unset | Optional base directory for generated worktrees |\n| `scrollbackLines` | 5000 | Terminal scrollback buffer |\n| `exitAutoCloseDelay` | 10 | Seconds before auto-close after exit |\n| `minQueryIntervalSeconds` | 60 | Rate limit between agent queries |\n| `transferLines` | 200 | Lines to capture on Ctrl+T transfer (10-1000) |\n| `transferMaxChars` | 20000 | Max chars for transfer (1KB-100KB) |\n| `completionNotifyLines` | 50 | Lines in dispatch completion notification (10-500) |\n| `completionNotifyMaxChars` | 5000 | Max chars in completion notification (1KB-50KB) |\n| `handsFreeUpdateMode` | \"on-quiet\" | \"on-quiet\" or \"interval\" |\n| `handsFreeQuietThreshold` | 8000 | Silence duration before update (ms) |\n| `autoExitGracePeriod` | 15000 | Startup grace before `autoExitOnQuiet` cancellation (ms) |\n| `handsFreeUpdateInterval` | 60000 | Max interval between updates (ms) |\n| `handsFreeUpdateMaxChars` | 1500 | Max chars per update |\n| `handsFreeMaxTotalChars` | 100000 | Total char budget for updates |\n| `handoffPreviewEnabled` | true | Include tail in tool result |\n| `handoffPreviewLines` | 30 | Lines in tail preview (0-500) |\n| `handoffPreviewMaxChars` | 2000 | Max chars in tail preview (0-50KB) |\n| `handoffSnapshotEnabled` | false | Write transcript on detach/exit |\n| `ansiReemit` | true | Preserve ANSI colors in output |\n\n## How It Works\n\n```\ninteractive_shell → zigpty → subprocess\n                  ↓\n            xterm-headless (terminal emulation)\n                  ↓\n            TUI overlay (pi rendering)\n```\n\nFull PTY. The subprocess thinks it's in a real terminal.\n\n## Example Workflow: Plan, Implement, Review\n\nThe `examples/prompts/` directory includes three opt-in prompt templates that chain together into a complete development workflow using Codex CLI. Each template loads the example `gpt-5-4-prompting` skill by default, falls back to `codex-5-3-prompting` when the user explicitly asks for Codex 5.3, and launches Codex in an interactive overlay with Codex CLI's preferred `gpt-5.5` model.\n\n### The Pipeline\n\n```\nWrite a plan\n    ↓\n/codex-review-plan path/to/plan.md        ← Codex verifies every assumption against the codebase\n    ↓\n/codex-implement-plan path/to/plan.md     ← Codex implements the reviewed plan faithfully\n    ↓\n/codex-review-impl path/to/plan.md        ← Codex reviews the diff against the plan, fixes issues\n```\n\n### Installing the Templates\n\nInstall the package first for the extension and core `pi-interactive-shell` skill:\n\n```bash\npi install npm:pi-interactive-shell\n```\n\nThe Codex workflow prompts and supporting skills are opt-in examples. Copy them into your agent config if you want to use them:\n\n```bash\n# Prompt templates (slash commands)\ncp ~/.pi/agent/extensions/pi-interactive-shell/examples/prompts/*.md ~/.pi/agent/prompts/\n\n# Optional skills used by the templates\ncp -r ~/.pi/agent/extensions/pi-interactive-shell/examples/skills/codex-cli ~/.pi/agent/skills/\ncp -r ~/.pi/agent/extensions/pi-interactive-shell/examples/skills/gpt-5-4-prompting ~/.pi/agent/skills/\ncp -r ~/.pi/agent/extensions/pi-interactive-shell/examples/skills/codex-5-3-prompting ~/.pi/agent/skills/\n\n# Optional CLI reference skill\ncp -r ~/.pi/agent/extensions/pi-interactive-shell/examples/skills/cursor-cli ~/.pi/agent/skills/\n```\n\n### Usage\n\nSay you have a plan at `docs/auth-redesign-plan.md`:\n\n**Step 1: Review the plan** — Codex reads your plan, then verifies every file path, API shape, data flow, and integration point against the actual codebase. Fixes issues directly in the plan file.\n\n```\n/codex-review-plan docs/auth-redesign-plan.md\n/codex-review-plan docs/auth-redesign-plan.md pay attention to the migration steps\n```\n\n**Step 2: Implement the plan** — Codex reads all relevant code first, then implements bottom-up: shared utilities first, then dependent modules, then integration code. No stubs, no TODOs.\n\n```\n/codex-implement-plan docs/auth-redesign-plan.md\n/codex-implement-plan docs/auth-redesign-plan.md skip test files for now\n```\n\n**Step 3: Review the implementation** — Codex diffs the changes, reads every changed file in full (plus imports and dependents), traces code paths across file boundaries, and fixes every issue it finds. Pass the plan to verify completeness, or omit it to just review the diff.\n\n```\n/codex-review-impl docs/auth-redesign-plan.md              # review diff against plan\n/codex-review-impl docs/auth-redesign-plan.md check cleanup ordering\n/codex-review-impl                                          # just review the diff, no plan\n/codex-review-impl focus on error handling and race conditions\n```\n\n### How They Work\n\nThese templates demonstrate a \"meta-prompt generation\" pattern:\n\n1. **Pi gathers context** — reads the plan, runs git diff, and loads the copied local `gpt-5-4-prompting` or `codex-5-3-prompting` skill\n2. **Pi generates a calibrated prompt** — tailored to the specific plan/diff, following the selected skill's best practices\n3. **Pi launches Codex in the overlay** — defaulting to `-m gpt-5.5 -a never` and switching to `-m gpt-5.3-codex -a never` only when the user explicitly asks for Codex 5.3\n\nThe user watches Codex work in the overlay and can take over anytime (type to intervene, Ctrl+T to transfer output back to pi, Ctrl+Q for options).\n\n### Customizing\n\nThese are starting points. Fork them and adjust:\n\n- **Model/flags** — swap `gpt-5.3-codex` for another model, change reasoning effort\n- **Review criteria** — add project-specific checks (security policies, style rules)\n- **Implementation rules** — change the 500-line file limit, add framework-specific patterns\n- **Other agents** — adapt the pattern for Claude (`claude \"prompt\"`), Gemini (`gemini -i \"prompt\"`), or any CLI\n\nSee the [pi prompt templates docs](https://github.com/badlogic/pi-mono/) for the full `$1`, `$@` placeholder syntax.\n\n## Advanced: Multi-Agent Workflows\n\nFor orchestrating multi-agent chains (scout → planner → worker → reviewer) with file-based handoff and auto-continue support, see:\n\n**[pi-foreground-chains](https://github.com/nicobailon/pi-foreground-chains)** - A separate skill that builds on interactive-shell for complex agent workflows.\n\n## Limitations\n\n- macOS tested, Linux experimental\n- 60s rate limit between queries (configurable)\n- Some TUI apps may have rendering quirks\n","readmeFilename":"README.md"}