{"_id":"@bytetrue/pi-background-terminal","_rev":"13-185ab27c40dd6b251cdd835e78b02ba0","name":"@bytetrue/pi-background-terminal","dist-tags":{"latest":"0.11.0"},"versions":{"0.1.0":{"name":"@bytetrue/pi-background-terminal","version":"0.1.0","keywords":["pi-package","pi-extension","pty","terminal","background-process","interactive","web-monitor"],"author":{"name":"byte"},"license":"MIT","_id":"@bytetrue/pi-background-terminal@0.1.0","maintainers":[{"name":"bytetrue","email":"bytetrue@outlook.com"}],"homepage":"https://github.com/ByteTrue/pi-package-mono#readme","bugs":{"url":"https://github.com/ByteTrue/pi-package-mono/issues"},"pi":{"extensions":["./src/index.ts"]},"dist":{"shasum":"cfce422474259f1de5764ecd9503e1ab65ba4d0d","tarball":"https://registry.npmjs.org/@bytetrue/pi-background-terminal/-/pi-background-terminal-0.1.0.tgz","fileCount":35,"integrity":"sha512-6BSz0cNSShWU+uo0OZt8fIsF8jy1IFxC6zZjrOZY+HN5+aB85u7e8fULWSieRbWypsAS3tCpG9EQq3LXFK80vw==","signatures":[{"sig":"MEYCIQDT81TBRfnD2eFp6reuimmTanRrG/rlvJ6LHoYXPfzPmAIhAIoPMSV7+yzza19wX6AVk0quLlJ8MsB5/4pnnYzHGcEn","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":534589},"type":"module","scripts":{"test":"npm run build:web && vitest run","prepack":"npm run build:web","build:web":"node src/web/build.mjs","typecheck":"tsc --noEmit"},"_npmUser":{"name":"bytetrue","email":"bytetrue@outlook.com"},"repository":{"url":"git+https://github.com/ByteTrue/pi-package-mono.git","type":"git","directory":"packages/pi-background-terminal"},"_npmVersion":"12.0.1","description":"Pi extension for OpenCode-style background PTY sessions, tools, and web monitor.","directories":{},"_nodeVersion":"24.15.0","dependencies":{"ws":"^8.18.0","@lydell/node-pty":"1.2.0-beta.12"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^3.0.0","esbuild":"^0.27.7","@types/ws":"^8.18.1","typescript":"^5.0.0","@types/node":"^22.0.0","@xterm/xterm":"^6.0.0","@xterm/addon-fit":"^0.11.0"},"peerDependencies":{"typebox":"*","@earendil-works/pi-tui":"*","@earendil-works/pi-coding-agent":">=0.79.10"},"_npmOperationalInternal":{"tmp":"tmp/pi-background-terminal_0.1.0_1784828827510_0.5499256279367795","host":"s3://npm-registry-packages-npm-production"}},"0.2.0":{"name":"@bytetrue/pi-background-terminal","version":"0.2.0","keywords":["pi-package","pi-extension","background-process"],"author":{"name":"byte"},"license":"MIT","_id":"@bytetrue/pi-background-terminal@0.2.0","maintainers":[{"name":"bytetrue","email":"bytetrue@outlook.com"}],"homepage":"https://github.com/ByteTrue/pi-package-mono#readme","bugs":{"url":"https://github.com/ByteTrue/pi-package-mono/issues"},"pi":{"extensions":["./src/index.ts"]},"dist":{"shasum":"1199814e4be9588091ccd97bd920d148e98b2d23","tarball":"https://registry.npmjs.org/@bytetrue/pi-background-terminal/-/pi-background-terminal-0.2.0.tgz","fileCount":7,"integrity":"sha512-7aUuwCCqyx0wxaHWHN3es+/uHN5yIz2HWcpXa3+eQuzZiusR6kS8MBWju8B1eMvkTzH6pfTa6UYSOHvBz1RRPw==","signatures":[{"sig":"MEUCIGA4MYUSuCgCqvLaC8bCcsRY7a9Wkzioa/dZaMN2o8OWAiEAue4ftnUuYi6IVqg5qpi+jsukBzwJ7gPv4U7NJg093fU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bytetrue%2fpi-background-terminal@0.2.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":18326},"type":"module","gitHead":"1768df12d9811a7adba7d32b76771b564ab972fb","scripts":{"test":"vitest run","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:90abcd59-c344-46ec-add9-788ca88281ce"}},"repository":{"url":"git+https://github.com/ByteTrue/pi-package-mono.git","type":"git","directory":"packages/pi-background-terminal"},"_npmVersion":"12.0.2","description":"Pi extension: run a shell command in the background, check on it, stop it, get notified when it finishes. Does not override bash.","directories":{},"_nodeVersion":"24.18.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^3.0.0","typescript":"^5.0.0","@types/node":"^22.0.0"},"peerDependencies":{"typebox":"*","@earendil-works/pi-coding-agent":">=0.79.10"},"_npmOperationalInternal":{"tmp":"tmp/pi-background-terminal_0.2.0_1785599788547_0.30079853216534813","host":"s3://npm-registry-packages-npm-production"}},"0.3.0":{"name":"@bytetrue/pi-background-terminal","version":"0.3.0","keywords":["pi-package","pi-extension","background-process"],"author":{"name":"byte"},"license":"MIT","_id":"@bytetrue/pi-background-terminal@0.3.0","maintainers":[{"name":"bytetrue","email":"bytetrue@outlook.com"}],"homepage":"https://github.com/ByteTrue/pi-package-mono#readme","bugs":{"url":"https://github.com/ByteTrue/pi-package-mono/issues"},"pi":{"extensions":["./src/index.ts"]},"dist":{"shasum":"6795f44707ee93da53d2e97ef03cc17264f98cd7","tarball":"https://registry.npmjs.org/@bytetrue/pi-background-terminal/-/pi-background-terminal-0.3.0.tgz","fileCount":8,"integrity":"sha512-gDEI1wAfziCNto7l3lJycpLsCfrOIJzmi9jukmCvKZSBk54LKwMRNSXqXnsBG26Cub7rrwnN0ievTbci3vFyvQ==","signatures":[{"sig":"MEUCIFFuAfN9BYC6af3XUQoztraE25w3b65aEwOrXPcafR3UAiEAwTX//PlGfIkw0g/0IVO34BDtNxxJ0h2ob+M+1PmfCy0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bytetrue%2fpi-background-terminal@0.3.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":22468},"type":"module","gitHead":"43bd680aaee29a77b5e3119a1e39cb74e63dfafb","scripts":{"test":"vitest run","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:90abcd59-c344-46ec-add9-788ca88281ce"}},"repository":{"url":"git+https://github.com/ByteTrue/pi-package-mono.git","type":"git","directory":"packages/pi-background-terminal"},"_npmVersion":"12.0.2","description":"Pi extension: run a shell command in the background, check on it, stop it, get notified when it finishes. Does not override bash.","directories":{},"_nodeVersion":"24.18.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^3.0.0","typescript":"^5.0.0","@types/node":"^22.0.0"},"peerDependencies":{"typebox":"*","@earendil-works/pi-coding-agent":">=0.79.10"},"_npmOperationalInternal":{"tmp":"tmp/pi-background-terminal_0.3.0_1785779274102_0.43305545765571973","host":"s3://npm-registry-packages-npm-production"}},"0.3.1":{"name":"@bytetrue/pi-background-terminal","version":"0.3.1","keywords":["pi-package","pi-extension","background-process"],"author":{"name":"byte"},"license":"MIT","_id":"@bytetrue/pi-background-terminal@0.3.1","maintainers":[{"name":"bytetrue","email":"bytetrue@outlook.com"}],"homepage":"https://github.com/ByteTrue/pi-package-mono#readme","bugs":{"url":"https://github.com/ByteTrue/pi-package-mono/issues"},"pi":{"extensions":["./src/index.ts"]},"dist":{"shasum":"32fbc8b2c0bb10ff444bda88c5ca152020e6fb16","tarball":"https://registry.npmjs.org/@bytetrue/pi-background-terminal/-/pi-background-terminal-0.3.1.tgz","fileCount":8,"integrity":"sha512-vB3WTFL3I2Yn82Fucj6Iz3+KTyy411vw1HvNMoMbSAbyQwAtWEeTwRwz5EPupHPxbCrKutg3K6g9zw4XiaG3mw==","signatures":[{"sig":"MEUCIDSLkhzG4Xxn79I2ABJa+XfTfbpys3b9xhHCtWUkHSpLAiEAtF7tudNZpp6Nj3SUXHBWsd3gzwR5ehAjFuCKIXRCIY0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bytetrue%2fpi-background-terminal@0.3.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":23510},"type":"module","gitHead":"6db0125a7fc78f1c80698c6dfb26e68afa22c987","scripts":{"test":"vitest run","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:90abcd59-c344-46ec-add9-788ca88281ce"}},"repository":{"url":"git+https://github.com/ByteTrue/pi-package-mono.git","type":"git","directory":"packages/pi-background-terminal"},"_npmVersion":"12.0.2","description":"Pi extension: run a shell command in the background, check on it, stop it, get notified when it finishes. Does not override bash.","directories":{},"_nodeVersion":"24.18.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^3.0.0","typescript":"^5.0.0","@types/node":"^22.0.0"},"peerDependencies":{"typebox":"*","@earendil-works/pi-coding-agent":">=0.79.10"},"_npmOperationalInternal":{"tmp":"tmp/pi-background-terminal_0.3.1_1785955563813_0.8429081776529317","host":"s3://npm-registry-packages-npm-production"}},"0.4.0":{"name":"@bytetrue/pi-background-terminal","version":"0.4.0","keywords":["pi-package","pi-extension","background-process"],"author":{"name":"byte"},"license":"MIT","_id":"@bytetrue/pi-background-terminal@0.4.0","maintainers":[{"name":"bytetrue","email":"bytetrue@outlook.com"}],"homepage":"https://github.com/ByteTrue/pi-package-mono#readme","bugs":{"url":"https://github.com/ByteTrue/pi-package-mono/issues"},"pi":{"extensions":["./src/index.ts"]},"dist":{"shasum":"57450ba9ba0e2a061bf85b9b1fd5fd473ed03537","tarball":"https://registry.npmjs.org/@bytetrue/pi-background-terminal/-/pi-background-terminal-0.4.0.tgz","fileCount":8,"integrity":"sha512-4EelTflQ5bS6h1v+FSCSIQSwU2xtwbF37zI2CorGQ6HLlG6uw3CRf6JVR84VanDUB4kheIj7VOv1UwrDrYVK/g==","signatures":[{"sig":"MEQCIEUvIXZTFhBuvhwef/ey8Sn7iv0wNBDS6A0ymcikswvKAiAFbTL1QMLYKNm0+hCBq3LzB4ZshZTMDVC6XgfapglgNw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bytetrue%2fpi-background-terminal@0.4.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":20543},"type":"module","gitHead":"2e8d31687f2efddde450cb473f44a95d97db86bc","scripts":{"test":"vitest run","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:90abcd59-c344-46ec-add9-788ca88281ce"}},"repository":{"url":"git+https://github.com/ByteTrue/pi-package-mono.git","type":"git","directory":"packages/pi-background-terminal"},"_npmVersion":"12.0.2","description":"Pi extension: run a shell command in the background, check on it, stop it, get notified when it finishes. Does not override bash.","directories":{},"_nodeVersion":"24.18.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^3.0.0","typescript":"^5.0.0","@types/node":"^22.0.0"},"peerDependencies":{"typebox":"*","@earendil-works/pi-coding-agent":">=0.79.10"},"_npmOperationalInternal":{"tmp":"tmp/pi-background-terminal_0.4.0_1786461848736_0.3495393093040049","host":"s3://npm-registry-packages-npm-production"}},"0.5.0":{"name":"@bytetrue/pi-background-terminal","version":"0.5.0","keywords":["pi-package","pi-extension","background-process"],"author":{"name":"byte"},"license":"MIT","_id":"@bytetrue/pi-background-terminal@0.5.0","maintainers":[{"name":"bytetrue","email":"bytetrue@outlook.com"}],"homepage":"https://github.com/ByteTrue/pi-package-mono#readme","bugs":{"url":"https://github.com/ByteTrue/pi-package-mono/issues"},"pi":{"extensions":["./src/index.ts"]},"dist":{"shasum":"36c287158d01e24fe741f33ab9a5e771fbe57dcf","tarball":"https://registry.npmjs.org/@bytetrue/pi-background-terminal/-/pi-background-terminal-0.5.0.tgz","fileCount":9,"integrity":"sha512-wYZraNZA9neq17yAg+j2bi0D7V5aMezvXRMo/TZwj1vBJXZ7F0LvudzjwJBMv8Zn1AsrC4EWrccj6fSvOCCgeQ==","signatures":[{"sig":"MEYCIQCM/SFiVSykvics9o3AOffIGd4YZ8uKfnR6h4qF4/I5DwIhAJ0SvwPjud/CJaGEHecBrJTYTuAjyM6fkzDmV0cfyWd9","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bytetrue%2fpi-background-terminal@0.5.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":59587},"type":"module","gitHead":"d50a02aa86f11ffc15dd59a94aa1f8d33f69d80d","scripts":{"test":"vitest run","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:90abcd59-c344-46ec-add9-788ca88281ce"}},"repository":{"url":"git+https://github.com/ByteTrue/pi-package-mono.git","type":"git","directory":"packages/pi-background-terminal"},"_npmVersion":"12.0.2","description":"Pi extension: run a shell command in the background, check on it, stop it, get notified when it finishes. Does not override bash.","directories":{},"_nodeVersion":"24.19.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^3.0.0","typescript":"^5.0.0","@types/node":"^22.0.0"},"peerDependencies":{"typebox":"*","@earendil-works/pi-coding-agent":">=0.80.4"},"_npmOperationalInternal":{"tmp":"tmp/pi-background-terminal_0.5.0_1787930250623_0.22442016334154746","host":"s3://npm-registry-packages-npm-production"}},"0.6.0":{"name":"@bytetrue/pi-background-terminal","version":"0.6.0","keywords":["pi-package","pi-extension","background-process"],"author":{"name":"byte"},"license":"MIT","_id":"@bytetrue/pi-background-terminal@0.6.0","maintainers":[{"name":"bytetrue","email":"bytetrue@outlook.com"}],"homepage":"https://github.com/ByteTrue/pi-package-mono#readme","bugs":{"url":"https://github.com/ByteTrue/pi-package-mono/issues"},"pi":{"extensions":["./src/index.ts"]},"dist":{"shasum":"c02fcc6db29f4fffa8938e5c6a1b292a98e6cdf5","tarball":"https://registry.npmjs.org/@bytetrue/pi-background-terminal/-/pi-background-terminal-0.6.0.tgz","fileCount":10,"integrity":"sha512-TcBK3gUlE9LlmxwhnVyTIdNGhO1dB6ys0m6k1X+IHtwFo5xehdQq1HawhTkSdWbJI7O2xpls2w51tODqy0zVJA==","signatures":[{"sig":"MEUCIQDHjYe6c30OL7RRPR4TWTnyyW5v+kTSRH3webCYAjNUIwIgSxLINpQ2VKhldTM5e3ptOmHB/8am7rlHpHx9eQ2P7f4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bytetrue%2fpi-background-terminal@0.6.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":61462},"type":"module","gitHead":"2dca53911cb623051884621840baa5b167fd2c26","scripts":{"test":"vitest run","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:90abcd59-c344-46ec-add9-788ca88281ce"}},"repository":{"url":"git+https://github.com/ByteTrue/pi-package-mono.git","type":"git","directory":"packages/pi-background-terminal"},"_npmVersion":"12.0.2","description":"Pi extension: run a shell command in the background, check on it, stop it, get notified when it finishes. Also gives the built-in bash/powershell tools a default timeout without overriding them.","directories":{},"_nodeVersion":"24.19.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^3.0.0","typescript":"^5.0.0","@types/node":"^22.0.0"},"peerDependencies":{"typebox":"*","@earendil-works/pi-coding-agent":">=0.80.4"},"_npmOperationalInternal":{"tmp":"tmp/pi-background-terminal_0.6.0_1788457307658_0.3505169999932387","host":"s3://npm-registry-packages-npm-production"}},"0.7.0":{"name":"@bytetrue/pi-background-terminal","version":"0.7.0","keywords":["pi-package","pi-extension","background-process"],"author":{"name":"byte"},"license":"MIT","_id":"@bytetrue/pi-background-terminal@0.7.0","maintainers":[{"name":"bytetrue","email":"bytetrue@outlook.com"}],"homepage":"https://github.com/ByteTrue/pi-package-mono#readme","bugs":{"url":"https://github.com/ByteTrue/pi-package-mono/issues"},"pi":{"extensions":["./src/index.ts"]},"dist":{"shasum":"8b79f5899ee23f71a8863eda1b2631abea1b0104","tarball":"https://registry.npmjs.org/@bytetrue/pi-background-terminal/-/pi-background-terminal-0.7.0.tgz","fileCount":10,"integrity":"sha512-Mva4qDEi7pp6PxvfmwX+q1VGag+aWRmzzQ07oQp8e4r82ZfJagC2scMGwdk4jGTlzJL3SF6DNuHy1R39n7Vurg==","signatures":[{"sig":"MEYCIQDQJVbiLQlR7wX4BBBbnvobr2ByyVwAvBODSgcoBOjk3gIhAMjBQfhbJsxxlrMXxjeasdgoma4HAfxnmrQZMHOpXQFQ","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bytetrue%2fpi-background-terminal@0.7.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":77669},"type":"module","gitHead":"864152c9831f165fe91a44cda1acdaa9e1359db5","scripts":{"test":"vitest run","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:90abcd59-c344-46ec-add9-788ca88281ce"}},"repository":{"url":"git+https://github.com/ByteTrue/pi-package-mono.git","type":"git","directory":"packages/pi-background-terminal"},"_npmVersion":"12.0.2","description":"Pi extension: bash override where waitSeconds moves still-running commands to the background with exit notifications, plus a default timeout for foreground calls.","directories":{},"_nodeVersion":"24.20.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^3.0.0","typescript":"^5.0.0","@types/node":"^22.0.0"},"peerDependencies":{"typebox":"*","@earendil-works/pi-coding-agent":">=0.80.5"},"_npmOperationalInternal":{"tmp":"tmp/pi-background-terminal_0.7.0_1789057697415_0.5810485899831903","host":"s3://npm-registry-packages-npm-production"}},"0.8.0":{"name":"@bytetrue/pi-background-terminal","version":"0.8.0","keywords":["pi-package","pi-extension","background-process"],"author":{"name":"byte"},"license":"MIT","_id":"@bytetrue/pi-background-terminal@0.8.0","maintainers":[{"name":"bytetrue","email":"bytetrue@outlook.com"}],"homepage":"https://github.com/ByteTrue/pi-package-mono#readme","bugs":{"url":"https://github.com/ByteTrue/pi-package-mono/issues"},"pi":{"extensions":["./src/index.ts"]},"dist":{"shasum":"2b8e802fe62f28cac19e285268cf38399baca24c","tarball":"https://registry.npmjs.org/@bytetrue/pi-background-terminal/-/pi-background-terminal-0.8.0.tgz","fileCount":10,"integrity":"sha512-jHT4SSlVKK+cNC89EjRr3RCmmzqMA6q+Odl5ovWkoON3gnLBB+W27pp6ze4zjLkiuElInY3Mb41Fw3Ebtdke2w==","signatures":[{"sig":"MEQCIG2N6vRg5S11ZWUtoEt/EF4uJjU+OmgMjNM8kTCRHzM5AiAxG21Ly0/5SLiI2dU3sUkDGG5umas8BuJJZcis8zyvKA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bytetrue%2fpi-background-terminal@0.8.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":74174},"type":"module","gitHead":"f20927e6d38daba35872acaf0869e029f9fed2f0","scripts":{"test":"vitest run","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:90abcd59-c344-46ec-add9-788ca88281ce"}},"repository":{"url":"git+https://github.com/ByteTrue/pi-package-mono.git","type":"git","directory":"packages/pi-background-terminal"},"_npmVersion":"12.0.2","description":"Pi extension: background_run starts shell commands hands-off with automatic exit notifications, plus a 600s default timeout for the built-in bash/powershell tools.","directories":{},"_nodeVersion":"24.20.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^3.0.0","typescript":"^5.0.0","@types/node":"^22.0.0"},"peerDependencies":{"typebox":"*","@earendil-works/pi-coding-agent":">=0.80.5"},"_npmOperationalInternal":{"tmp":"tmp/pi-background-terminal_0.8.0_1789371520988_0.9245848992535497","host":"s3://npm-registry-packages-npm-production"}},"0.8.1":{"name":"@bytetrue/pi-background-terminal","version":"0.8.1","keywords":["pi-package","pi-extension","background-process"],"author":{"name":"byte"},"license":"MIT","_id":"@bytetrue/pi-background-terminal@0.8.1","maintainers":[{"name":"bytetrue","email":"bytetrue@outlook.com"}],"homepage":"https://github.com/ByteTrue/pi-package-mono#readme","bugs":{"url":"https://github.com/ByteTrue/pi-package-mono/issues"},"pi":{"extensions":["./src/index.ts"]},"dist":{"shasum":"c34a1c9ba715be48ed61f020cb7c4757d86048f7","tarball":"https://registry.npmjs.org/@bytetrue/pi-background-terminal/-/pi-background-terminal-0.8.1.tgz","fileCount":10,"integrity":"sha512-eV0+phYa5SeUdaLJiDHFTxq0qdkpKRAAF6uasXe8IdTO3qzXV9ZhL2XeyZ+B+erMsQ23AEFtVr+QbylhqFImig==","signatures":[{"sig":"MEUCIBK9GUnD4ChXaytb1B0ndA/XN9CibExDY2IjYg/io+iuAiEAloiJseKwOcRqDzX0SVW4h0VqmIitHYgUEfWqvdbQvY8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQCFQutPSb8JQ36I6EDZKENP5oVSS/aKm33ZOKTrRRHrhgIhAM0R9ZLd9viTEmCA2s0YPGCMpMX4vyfdOWadArUq2vZE","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bytetrue%2fpi-background-terminal@0.8.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":74767},"type":"module","gitHead":"7d7889882089d0d6d6bb48a3dfd8916cbdf8d84c","scripts":{"test":"vitest run","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:90abcd59-c344-46ec-add9-788ca88281ce"}},"repository":{"url":"git+https://github.com/ByteTrue/pi-package-mono.git","type":"git","directory":"packages/pi-background-terminal"},"_npmVersion":"12.0.2","description":"Pi extension: background_run starts shell commands hands-off with automatic exit notifications, plus a 600s default timeout for the built-in bash/powershell tools.","directories":{},"_nodeVersion":"24.20.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^3.0.0","typescript":"^5.0.0","@types/node":"^22.0.0"},"peerDependencies":{"typebox":"*","@earendil-works/pi-coding-agent":">=0.80.5"},"_npmOperationalInternal":{"tmp":"tmp/pi-background-terminal_0.8.1_1789631238720_0.4448807977980691","host":"s3://npm-registry-packages-npm-production"}},"0.9.0":{"name":"@bytetrue/pi-background-terminal","version":"0.9.0","keywords":["pi-package","pi-extension","background-process"],"author":{"name":"byte"},"license":"MIT","_id":"@bytetrue/pi-background-terminal@0.9.0","maintainers":[{"name":"bytetrue","email":"bytetrue@outlook.com"}],"homepage":"https://github.com/ByteTrue/pi-package-mono#readme","bugs":{"url":"https://github.com/ByteTrue/pi-package-mono/issues"},"pi":{"extensions":["./src/index.ts"]},"dist":{"shasum":"8905875592787b551f3a46addb3bd9dee9e9c4e6","tarball":"https://registry.npmjs.org/@bytetrue/pi-background-terminal/-/pi-background-terminal-0.9.0.tgz","fileCount":10,"integrity":"sha512-jb+U1HnmaxCh3qQIlqq25LxnzH51GZhyCFd64wGgTEf8DvmAss6PCEFapR8A4/I2IaFP+mCoWenAPTYFqg9Btg==","signatures":[{"sig":"MEYCIQC8BT7ZD8uBBJQgXd4dGpHPHdGwGsZtexIh97eqFbTeBQIhAIm0TjGm4cEbxFoPmpwWXoi5U0hiZTycBKuDP5Iyrgqk","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIHaEQ1tMytpuUZixUVIRbvYsFfNZ9d+/+kPT1J+YhFWUAiBSCDv0xtTdSSJSLPMLcQxy+6oxWX9ha0brR0gFg5VZug==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bytetrue%2fpi-background-terminal@0.9.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":79550},"type":"module","gitHead":"334510a440df964eda22ec1a59b4491ee808e6b2","scripts":{"test":"vitest run","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"90abcd59-c344-46ec-add9-788ca88281ce"}},"repository":{"url":"git+https://github.com/ByteTrue/pi-package-mono.git","type":"git","directory":"packages/pi-background-terminal"},"_npmVersion":"12.1.0","description":"Pi extension: background_run starts shell commands hands-off with automatic exit notifications, plus hard timeouts for shell tools (bash/powershell capped at 600s, background tasks at 3600s with renewal via restart).","directories":{},"_nodeVersion":"24.21.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.1.11","typescript":"^5.0.0","@types/node":"^22.0.0"},"peerDependencies":{"typebox":"*","@earendil-works/pi-coding-agent":">=0.80.5"},"_npmOperationalInternal":{"tmp":"tmp/pi-background-terminal_0.9.0_1790651838559_0.5421650788836831","host":"s3://npm-registry-packages-npm-production"}},"0.10.0":{"name":"@bytetrue/pi-background-terminal","version":"0.10.0","keywords":["pi-package","pi-extension","background-process"],"author":{"name":"byte"},"license":"MIT","_id":"@bytetrue/pi-background-terminal@0.10.0","maintainers":[{"name":"bytetrue","email":"bytetrue@outlook.com"}],"homepage":"https://github.com/ByteTrue/pi-package-mono#readme","bugs":{"url":"https://github.com/ByteTrue/pi-package-mono/issues"},"pi":{"extensions":["./src/index.ts"]},"dist":{"shasum":"5eaadbc6c6848aae726e77f068db3e891a887538","tarball":"https://registry.npmjs.org/@bytetrue/pi-background-terminal/-/pi-background-terminal-0.10.0.tgz","fileCount":10,"integrity":"sha512-sk64d1NeziIub5lv/GqV65UxfaO4m75jvhOgRPsPTcDeaBd3fykL+udmV6uudUqKIGig8itmI0hM2vin1ki2rQ==","signatures":[{"sig":"MEUCIQD3M4kq7zvFIp2kMewun17KIOawIBTBwqecIDZlUUM8wQIgD/Tr/iDzfJRGxNTAs0QvuFPtqhnHsJjHehJFalpxmmY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQCWUtG4tXwBx9V2p0MJxG6eGM5m9KJV8A1ISsXxatzBtAIhAL2p1gbpY4G21dcrFYMrJKCryIQTmI3y1KLwVzFM3PyL","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bytetrue%2fpi-background-terminal@0.10.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":79714},"type":"module","gitHead":"c74b7d5cec3962ea35c08db758bdf7d04725eaca","scripts":{"test":"vitest run","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"90abcd59-c344-46ec-add9-788ca88281ce"}},"repository":{"url":"git+https://github.com/ByteTrue/pi-package-mono.git","type":"git","directory":"packages/pi-background-terminal"},"_npmVersion":"12.2.0","description":"Pi extension: background_run starts shell commands hands-off with automatic exit notifications, plus hard timeouts for shell tools (bash/powershell capped at 300s, background tasks at 3600s with renewal via restart).","directories":{},"_nodeVersion":"24.21.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.1.11","typescript":"^5.0.0","@types/node":"^22.0.0"},"peerDependencies":{"typebox":"*","@earendil-works/pi-coding-agent":">=0.80.5"},"_npmOperationalInternal":{"tmp":"tmp/pi-background-terminal_0.10.0_1790824646888_0.5175303350360025","host":"s3://npm-registry-packages-npm-production"}},"0.11.0":{"pi":{"extensions":["./src/index.ts"]},"_id":"@bytetrue/pi-background-terminal@0.11.0","bugs":{"url":"https://github.com/ByteTrue/pi-package-mono/issues"},"dist":{"shasum":"b316c393af67cbe09ac62a2d5d541ddeec69b69e","tarball":"https://registry.npmjs.org/@bytetrue/pi-background-terminal/-/pi-background-terminal-0.11.0.tgz","fileCount":10,"integrity":"sha512-i90KCBw+g7MyLDY8aYh+7CKiDaURwR8nFyrGXt/4FOrFPe9e75pSzUX7GRepXXYdxjib/86IcWpsI21RDlAeBQ==","signatures":[{"sig":"MEUCIB1m/X/D0YDpVSQOsHy06Ach4iu2t2PvThu5k7BWAwQnAiEA1N6IKFUSj++mc4qjrMsPcxwkoIrw3nugmDevGIzvKBY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQCx/LC60cegzFSGqPh6Kcy2vpF6vX0ksiyZb7SO6qyW7gIhALcJknFwB7M6FaoykTjgxFv57ujBoPT4s8l0NY3bsDhD"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bytetrue%2fpi-background-terminal@0.11.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":79913},"name":"@bytetrue/pi-background-terminal","type":"module","author":{"name":"byte"},"gitHead":"bc385fdd326f2b41c08e68cbe6a063baee3448ec","license":"MIT","scripts":{"test":"vitest run","typecheck":"tsc --noEmit"},"version":"0.11.0","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"90abcd59-c344-46ec-add9-788ca88281ce"}},"homepage":"https://github.com/ByteTrue/pi-package-mono#readme","keywords":["pi-package","pi-extension","background-process"],"repository":{"url":"git+https://github.com/ByteTrue/pi-package-mono.git","type":"git","directory":"packages/pi-background-terminal"},"_npmVersion":"12.2.0","description":"Pi extension: background_run starts shell commands hands-off with automatic exit notifications, plus hard timeouts for shell tools (bash/powershell capped at 300s, background tasks at 28800s with renewal via restart).","directories":{},"maintainers":[{"name":"bytetrue","email":"bytetrue@outlook.com"}],"_nodeVersion":"24.21.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.1.11","typescript":"^5.0.0","@types/node":"^22.0.0"},"peerDependencies":{"typebox":"*","@earendil-works/pi-coding-agent":">=0.80.5"},"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/pi-background-terminal_0.11.0_1790877909745_0.28908980504984516"}}},"time":{"created":"2026-07-23T17:47:07.368Z","modified":"2026-10-01T18:05:10.268Z","0.1.0":"2026-07-23T17:47:07.660Z","0.2.0":"2026-08-01T15:56:28.691Z","0.3.0":"2026-08-03T17:47:54.234Z","0.3.1":"2026-08-05T18:46:03.941Z","0.4.0":"2026-08-11T15:24:08.888Z","0.5.0":"2026-08-28T15:17:30.762Z","0.6.0":"2026-09-03T17:41:47.832Z","0.7.0":"2026-09-10T16:28:17.560Z","0.8.0":"2026-09-14T07:38:41.114Z","0.8.1":"2026-09-17T07:47:18.804Z","0.9.0":"2026-09-29T03:17:18.659Z","0.10.0":"2026-10-01T03:17:26.959Z","0.11.0":"2026-10-01T18:05:09.857Z"},"bugs":{"url":"https://github.com/ByteTrue/pi-package-mono/issues"},"author":{"name":"byte"},"license":"MIT","homepage":"https://github.com/ByteTrue/pi-package-mono#readme","keywords":["pi-package","pi-extension","background-process"],"repository":{"url":"git+https://github.com/ByteTrue/pi-package-mono.git","type":"git","directory":"packages/pi-background-terminal"},"description":"Pi extension: background_run starts shell commands hands-off with automatic exit notifications, plus hard timeouts for shell tools (bash/powershell capped at 300s, background tasks at 28800s with renewal via restart).","maintainers":[{"name":"bytetrue","email":"bytetrue@outlook.com"}],"readme":"<p align=\"center\">\n  <img src=\"./docs/banner.webp\" alt=\"A command stream continuing through a suspended terminal plane\" width=\"100%\">\n</p>\n\n<h1 align=\"center\">@bytetrue/pi-background-terminal</h1>\n\n<p align=\"center\">Pure background execution: <code>background_run</code> starts a command, returns a task id immediately, and notifies you when it exits.</p>\n\n<p align=\"center\">\n  <a href=\"https://www.npmjs.com/package/@bytetrue/pi-background-terminal\"><img src=\"https://img.shields.io/npm/v/@bytetrue/pi-background-terminal?style=flat-square\" alt=\"npm version\"></a>\n</p>\n\nPi's built-in `bash` is the foreground executor — and this package never touches it. It adds one standalone tool for the other half of the decision:\n\n- **Need the command's output to continue?** Use `bash` — it blocks and returns the result.\n- **Should it run hands-off (builds, test suites, dev servers, watch mode)?** Use `background_run` — it returns a task id immediately, and the Agent keeps working or ends its turn, and the command's exit arrives as a new message (exit code + last output line) that starts the next turn. That notification is how the Agent waits.\n\n`background_run(command, timeout?)`:\n\n- **`timeout` defaults to 600 seconds, hard cap 28800 (8 hours)** — a hard lifetime cap so nothing lingers forever; larger explicit values are clamped. Long-running services renew: when the timeout notification arrives, restart them with background_run.\n- Full stdout/stderr stream live to an output file (path in the result); the Agent reads it with Pi's built-in `read` only when needed.\n- In TUI/RPC sessions the exit notification fires normally. In `pi -p` the process exits with the turn, so a task started there dies before its exit can be reported — hands-off backgrounding belongs in interactive sessions (subagent children are killed by their own `session_shutdown`).\n\n## Install\n\n```bash\npi install npm:@bytetrue/pi-background-terminal\n```\n\nRestart or reload Pi, then ask naturally:\n\n> Start the test suite running hands-off — get back to me when it finishes.\n\nThe Agent calls `background_run`, keeps working or waits, and reports the outcome when the exit notification arrives. Completions that pile up while the Agent is busy arrive as one batched follow-up, not one turn per task.\n\n## Tools\n\n| Tool | Required input | Result |\n| --- | --- | --- |\n| `background_run` | `command` | Task id + output file path, immediately; exit reported via follow-up; optional `timeout` (default 600s) |\n| `background_status` | `id` | Status, exit code, line count, output path, and recent output |\n| `background_kill` | `id` | Stops a running task |\n\nNo built-in tool is overridden, shadowed, or registered under a built-in name.\n\n## Staying out of the built-ins' way\n\n- `bash` (and `powershell`) keep their exact built-in behavior; the only touches are two event hooks — a `tool_call` hook injecting `timeout: 300` when a call passes none and clamping explicit values above 300s down to it, and a `tool_result` hook appending one steering block (\"long commands belong in background_run\") to timeout errors. A safety net for runaway foreground commands, not a coupling.\n- The `background_run` path applies your `shellPath` / `shellCommandPrefix` settings (read through Pi's own `SettingsManager`, honoring project trust) and the same session environment the built-in tools set (`PI_*` variables plus the agent bin dir on `PATH`).\n- Uninstalling removes exactly the three tools above; the built-ins were never touched.\n\nRequires `@earendil-works/pi-coding-agent >= 0.80.5`.\n\n## Lifecycle\n\nA task ends when:\n\n- the command exits (the agent is woken with the outcome);\n- `background_kill` stops it (silent);\n- its hard `timeout` expires (status `timed_out`, the agent is woken); or\n- the owning Pi session shuts down — or the Pi process dies by any path (signal, crash): tasks spawn through Pi's own shell backend and are killed with it (verified against SIGTERM; only a command that daemonizes itself escapes, same as built-in bash).\n\nManual stops and session cleanup are silent. Tasks survive `/reload` inside the same session, but they do not survive Pi exiting.\n\nOutput is stored under `$TMPDIR/pi-background-terminal/` and removed at real session shutdown. Output files cap at 50 MiB: beyond that the file stops growing and a marker records what was dropped (the task itself keeps running). Tasks are isolated by session id. If Pi itself crashes, stale logs older than 24 hours are swept the next time the extension loads.\n\n## Deliberate limits\n\n- Pure background: no foreground wait, no inline output (that is `bash`'s job)\n- No override of any built-in tool (the 300s input default is the only touch)\n- No PTY or interactive stdin\n- No custom `cwd` or environment input\n- No configurable defaults (300s shell cap, 600s task lifetime / 50 MiB cap are fixed)\n- No daemon, tmux dependency, Web UI, or cross-session persistence\n- No output pagination in tool results—`read` handles large output\n\n## Development\n\n```bash\nnpm --workspace @bytetrue/pi-background-terminal test\nnpm --workspace @bytetrue/pi-background-terminal run typecheck\nnpm pack --workspace @bytetrue/pi-background-terminal --dry-run\n```\n","readmeFilename":"README.md"}