{"_id":"@porcupineai/porcupineai","_rev":"35-8e6877a1a2d8c59fd13bcf72c4b2999f","name":"@porcupineai/porcupineai","dist-tags":{"latest":"0.1.79"},"versions":{"0.1.2":{"name":"@porcupineai/porcupineai","version":"0.1.2","keywords":["ai","agent","cli","terminal","coding-agent","mcp","tui","porcupine"],"license":"MIT","_id":"@porcupineai/porcupineai@0.1.2","maintainers":[{"name":"abd0r","email":"ra2157218@gmail.com"}],"bin":{"porcupine":"Porcupine/packages/coding-agent/dist/cli.js"},"dist":{"shasum":"1cd5408134bb57f8c5f0404e6297a5cbee2cff46","tarball":"https://registry.npmjs.org/@porcupineai/porcupineai/-/porcupineai-0.1.2.tgz","fileCount":9666,"integrity":"sha512-1AqZ63DhaS8nd5owTmsGLoTTIxenXrQNSHhCKbygSxSC4A7/ypckNl6Kc1XEw5ty8Qyus9rsGsmBCnUrfVcLFA==","signatures":[{"sig":"MEQCIB0p53+jUN5SAaNxgG11IG8nyDnlFyZBwn7temQvK2wVAiATW6u27WMCGCgWMG4TfI4QE8j+vE7VrI8nqVgn1WCP3Q==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":49304559},"main":"Porcupine/packages/coding-agent/dist/index.js","_from":"file:/tmp/porcupineai-filesonly.tgz","types":"./Porcupine/packages/coding-agent/dist/index.d.ts","engines":{"node":">=22.19.0"},"_npmUser":{"name":"abd0r","email":"ra2157218@gmail.com"},"_resolved":"/tmp/porcupineai-filesonly.tgz","_integrity":"sha512-1AqZ63DhaS8nd5owTmsGLoTTIxenXrQNSHhCKbygSxSC4A7/ypckNl6Kc1XEw5ty8Qyus9rsGsmBCnUrfVcLFA==","_npmVersion":"10.9.8","description":"Porcupine — a terminal coding agent that plans, acts inside explicit permission modes, and verifies its work. The whole Porcupine codebase ships as one package.","directories":{},"_nodeVersion":"22.23.1","dependencies":{"diff":"8.0.4","glob":"13.0.6","jiti":"2.7.0","yaml":"2.9.0","chalk":"5.6.2","ignore":"7.0.5","marked":"18.0.5","openai":"6.26.0","semver":"7.8.0","undici":"8.5.0","typebox":"1.3.7","kokoro-js":"1.2.1","minimatch":"10.2.5","cross-spawn":"7.0.6","highlight.js":"10.7.3","partial-json":"0.1.7","@google/genai":"1.52.0","@porcupineai/ai":"*","hosted-git-info":"9.0.3","proper-lockfile":"4.1.2","@porcupineai/tui":"*","http-proxy-agent":"7.0.2","@anthropic-ai/sdk":"0.91.1","https-proxy-agent":"7.0.6","@opentelemetry/api":"1.9.0","@porcupineai/client":"*","@mistralai/mistralai":"2.2.6","get-east-asian-width":"1.6.0","@porcupineai/protocol":"*","@mariozechner/clipboard":"0.3.9","@porcupineai/agent-core":"*","@modelcontextprotocol/sdk":"1.25.2","@smithy/node-http-handler":"4.7.3","@moonshine-ai/moonshine-js":"0.1.29","@silvia-odwyer/photon-node":"0.3.4","@aws-sdk/client-bedrock-runtime":"3.1048.0"},"_hasShrinkwrap":false,"bundleDependencies":["@porcupineai/ai","@porcupineai/agent-core","@porcupineai/client","@porcupineai/protocol","@porcupineai/tui"],"_npmOperationalInternal":{"tmp":"tmp/porcupineai_0.1.2_1786028541967_0.3944589934417102","host":"s3://npm-registry-packages-npm-production"}},"0.1.3":{"name":"@porcupineai/porcupineai","version":"0.1.3","keywords":["ai","agent","cli","terminal","coding-agent","mcp","tui","porcupine"],"license":"MIT","_id":"@porcupineai/porcupineai@0.1.3","maintainers":[{"name":"abd0r","email":"ra2157218@gmail.com"}],"bin":{"porcupine":"Porcupine/packages/coding-agent/dist/cli.js"},"dist":{"shasum":"a49205d01dbb942c7091a4715da7ba3c29f92ad1","tarball":"https://registry.npmjs.org/@porcupineai/porcupineai/-/porcupineai-0.1.3.tgz","fileCount":9666,"integrity":"sha512-PboB5RD2bHeyOgDWXdW2sIpjfV82WiKK5yWn72FQapCOCGHmK0XgP1Lu4nXRc/UvoN6sOtot4vCcU38c41hqbw==","signatures":[{"sig":"MEQCIBo4xE4jYpQR6Gi4K1s6SQNbAuGIgA2hKf5dpvIy3qGxAiBpHpSfNjS8fc7gQhA6pEd0e5uq+yY6jEqDP+iAhkz5eA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":49304642},"main":"Porcupine/packages/coding-agent/dist/index.js","_from":"file:/tmp/porcupineai-v013.tgz","types":"./Porcupine/packages/coding-agent/dist/index.d.ts","engines":{"node":">=22.19.0"},"_npmUser":{"name":"abd0r","email":"ra2157218@gmail.com"},"_resolved":"/tmp/porcupineai-v013.tgz","_integrity":"sha512-PboB5RD2bHeyOgDWXdW2sIpjfV82WiKK5yWn72FQapCOCGHmK0XgP1Lu4nXRc/UvoN6sOtot4vCcU38c41hqbw==","_npmVersion":"10.9.8","description":"Porcupine — a terminal coding agent that plans, acts inside explicit permission modes, and verifies its work. The whole Porcupine codebase ships as one package.","directories":{},"_nodeVersion":"22.23.1","dependencies":{"diff":"8.0.4","glob":"13.0.6","jiti":"2.7.0","yaml":"2.9.0","chalk":"5.6.2","ignore":"7.0.5","marked":"18.0.5","openai":"6.26.0","semver":"7.8.0","undici":"8.5.0","typebox":"1.3.7","kokoro-js":"1.2.1","minimatch":"10.2.5","cross-spawn":"7.0.6","highlight.js":"10.7.3","partial-json":"0.1.7","@google/genai":"1.52.0","@porcupineai/ai":"*","hosted-git-info":"9.0.3","proper-lockfile":"4.1.2","@porcupineai/tui":"*","http-proxy-agent":"7.0.2","@anthropic-ai/sdk":"0.91.1","https-proxy-agent":"7.0.6","@opentelemetry/api":"1.9.0","@porcupineai/client":"*","@mistralai/mistralai":"2.2.6","get-east-asian-width":"1.6.0","@porcupineai/protocol":"*","@mariozechner/clipboard":"0.3.9","@porcupineai/agent-core":"*","@modelcontextprotocol/sdk":"1.25.2","@smithy/node-http-handler":"4.7.3","@moonshine-ai/moonshine-js":"0.1.29","@silvia-odwyer/photon-node":"0.3.4","@aws-sdk/client-bedrock-runtime":"3.1048.0"},"_hasShrinkwrap":false,"bundleDependencies":["@porcupineai/ai","@porcupineai/agent-core","@porcupineai/client","@porcupineai/protocol","@porcupineai/tui"],"_npmOperationalInternal":{"tmp":"tmp/porcupineai_0.1.3_1786029242282_0.5844896277344285","host":"s3://npm-registry-packages-npm-production"}},"0.1.4":{"name":"@porcupineai/porcupineai","version":"0.1.4","keywords":["ai","agent","cli","terminal","coding-agent","mcp","tui","porcupine"],"license":"MIT","_id":"@porcupineai/porcupineai@0.1.4","maintainers":[{"name":"abd0r","email":"ra2157218@gmail.com"}],"bin":{"porcupine":"Porcupine/packages/coding-agent/dist/cli.js"},"dist":{"shasum":"0aa003a00d43ae2c1843e1753899e4c9b641ad94","tarball":"https://registry.npmjs.org/@porcupineai/porcupineai/-/porcupineai-0.1.4.tgz","fileCount":9666,"integrity":"sha512-amzFN/hOwf4Beh3EPOD/O90bmwGX3jQupLlGGQZzTM8Z2BSe2Bl5uOMimggoiNXjjFW5RjHCvR/19XRR5bNmhg==","signatures":[{"sig":"MEYCIQCM0KevSL0tNIM7ASaJqqzZJf3YQWTnihXkPCe5b8FxxgIhAJelDQP4Uos47t27P5bvXB6tcMKhm2dvcmE3gjL6FBce","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":49304849},"main":"Porcupine/packages/coding-agent/dist/index.js","_from":"file:/tmp/porcupineai-v014.tgz","types":"./Porcupine/packages/coding-agent/dist/index.d.ts","engines":{"node":">=22.19.0"},"_npmUser":{"name":"abd0r","email":"ra2157218@gmail.com"},"_resolved":"/tmp/porcupineai-v014.tgz","_integrity":"sha512-amzFN/hOwf4Beh3EPOD/O90bmwGX3jQupLlGGQZzTM8Z2BSe2Bl5uOMimggoiNXjjFW5RjHCvR/19XRR5bNmhg==","_npmVersion":"10.9.8","description":"Porcupine — a terminal coding agent that plans, acts inside explicit permission modes, and verifies its work. The whole Porcupine codebase ships as one package.","directories":{},"_nodeVersion":"22.23.1","dependencies":{"diff":"8.0.4","glob":"13.0.6","jiti":"2.7.0","yaml":"2.9.0","chalk":"5.6.2","ignore":"7.0.5","marked":"18.0.5","openai":"6.26.0","semver":"7.8.0","undici":"8.5.0","typebox":"1.3.7","kokoro-js":"1.2.1","minimatch":"10.2.5","cross-spawn":"7.0.6","highlight.js":"10.7.3","partial-json":"0.1.7","@google/genai":"1.52.0","@porcupineai/ai":"*","hosted-git-info":"9.0.3","proper-lockfile":"4.1.2","@porcupineai/tui":"*","http-proxy-agent":"7.0.2","@anthropic-ai/sdk":"0.91.1","https-proxy-agent":"7.0.6","@opentelemetry/api":"1.9.0","@porcupineai/client":"*","@mistralai/mistralai":"2.2.6","get-east-asian-width":"1.6.0","@porcupineai/protocol":"*","@mariozechner/clipboard":"0.3.9","@porcupineai/agent-core":"*","@modelcontextprotocol/sdk":"1.25.2","@smithy/node-http-handler":"4.7.3","@moonshine-ai/moonshine-js":"0.1.29","@silvia-odwyer/photon-node":"0.3.4","@aws-sdk/client-bedrock-runtime":"3.1048.0"},"_hasShrinkwrap":false,"bundleDependencies":["@porcupineai/ai","@porcupineai/agent-core","@porcupineai/client","@porcupineai/protocol","@porcupineai/tui"],"_npmOperationalInternal":{"tmp":"tmp/porcupineai_0.1.4_1786029319382_0.11590397926761775","host":"s3://npm-registry-packages-npm-production"}},"0.1.41":{"name":"@porcupineai/porcupineai","version":"0.1.41","keywords":["ai","agent","cli","terminal","coding-agent","mcp","tui","porcupine"],"license":"MIT","_id":"@porcupineai/porcupineai@0.1.41","maintainers":[{"name":"abd0r","email":"ra2157218@gmail.com"}],"bin":{"porcupine":"Porcupine/packages/coding-agent/dist/cli.js"},"dist":{"shasum":"b617271ddf1adfaf637a9de74f8cf99d34eeacea","tarball":"https://registry.npmjs.org/@porcupineai/porcupineai/-/porcupineai-0.1.41.tgz","fileCount":9668,"integrity":"sha512-fJkIggJpJK0Nh7fRHaNpgy82fLgPIRARvw0hmPRl/mjAsZ/eIN+6wMJl/Y59I8f8v8ZpTh4zWxfhZiyyOAqj/A==","signatures":[{"sig":"MEQCIAthOgKEElZ7n78vR3fX71kiN2RMwqkgAv5/tfGvds4cAiAMXcWDbNe96CJ9g9MS9f278gJ871vC4aD+1bW65oTRzA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":49311998},"main":"Porcupine/packages/coding-agent/dist/index.js","_from":"file:/tmp/porcupineai-v0141.tgz","types":"./Porcupine/packages/coding-agent/dist/index.d.ts","engines":{"node":">=22.19.0"},"_npmUser":{"name":"abd0r","email":"ra2157218@gmail.com"},"_resolved":"/tmp/porcupineai-v0141.tgz","_integrity":"sha512-fJkIggJpJK0Nh7fRHaNpgy82fLgPIRARvw0hmPRl/mjAsZ/eIN+6wMJl/Y59I8f8v8ZpTh4zWxfhZiyyOAqj/A==","_npmVersion":"10.9.8","description":"Porcupine — a terminal coding agent that plans, acts inside explicit permission modes, and verifies its work. The whole Porcupine codebase ships as one package.","directories":{},"_nodeVersion":"22.23.1","dependencies":{"diff":"8.0.4","glob":"13.0.6","jiti":"2.7.0","yaml":"2.9.0","chalk":"5.6.2","ignore":"7.0.5","marked":"18.0.5","openai":"6.26.0","semver":"7.8.0","undici":"8.5.0","typebox":"1.3.7","kokoro-js":"1.2.1","minimatch":"10.2.5","cross-spawn":"7.0.6","highlight.js":"10.7.3","partial-json":"0.1.7","@google/genai":"1.52.0","@porcupineai/ai":"*","hosted-git-info":"9.0.3","proper-lockfile":"4.1.2","@porcupineai/tui":"*","http-proxy-agent":"7.0.2","@anthropic-ai/sdk":"0.91.1","https-proxy-agent":"7.0.6","@opentelemetry/api":"1.9.0","@porcupineai/client":"*","@mistralai/mistralai":"2.2.6","get-east-asian-width":"1.6.0","@porcupineai/protocol":"*","@mariozechner/clipboard":"0.3.9","@porcupineai/agent-core":"*","@modelcontextprotocol/sdk":"1.25.2","@smithy/node-http-handler":"4.7.3","@moonshine-ai/moonshine-js":"0.1.29","@silvia-odwyer/photon-node":"0.3.4","@aws-sdk/client-bedrock-runtime":"3.1048.0"},"_hasShrinkwrap":false,"bundleDependencies":["@porcupineai/ai","@porcupineai/agent-core","@porcupineai/client","@porcupineai/protocol","@porcupineai/tui"],"_npmOperationalInternal":{"tmp":"tmp/porcupineai_0.1.41_1786030616038_0.5043094158869386","host":"s3://npm-registry-packages-npm-production"}},"0.1.45":{"name":"@porcupineai/porcupineai","version":"0.1.45","keywords":["ai","agent","cli","terminal","coding-agent","mcp","tui","porcupine"],"license":"MIT","_id":"@porcupineai/porcupineai@0.1.45","maintainers":[{"name":"abd0r","email":"ra2157218@gmail.com"}],"bin":{"porcupine":"Porcupine/packages/coding-agent/dist/cli.js"},"dist":{"shasum":"e71a2cab4a75c3a9363d5cb0bbdf73024c071405","tarball":"https://registry.npmjs.org/@porcupineai/porcupineai/-/porcupineai-0.1.45.tgz","fileCount":9718,"integrity":"sha512-EO6T0LSiP/beoKNdYzf/CFSjys4bTdJI2Ya5CCJ2ygMa7bw3lSvTVVguIboaqLYLbhpWBbAzCkITSFMO3fgDcg==","signatures":[{"sig":"MEUCICTpq50FB0KMO6sVeZ6DH1TY94NQ1yRvGbLqXk+zBwtDAiEAmGQjJ8fOYvSXL70MMPJDzcSUMnc6xurkhqQ+5wEagL0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":49740207},"main":"Porcupine/packages/coding-agent/dist/index.js","_from":"file:/tmp/pkg-0.1.45.tgz","types":"./Porcupine/packages/coding-agent/dist/index.d.ts","engines":{"node":">=22.19.0"},"_npmUser":{"name":"abd0r","email":"ra2157218@gmail.com"},"_resolved":"/tmp/pkg-0.1.45.tgz","_integrity":"sha512-EO6T0LSiP/beoKNdYzf/CFSjys4bTdJI2Ya5CCJ2ygMa7bw3lSvTVVguIboaqLYLbhpWBbAzCkITSFMO3fgDcg==","_npmVersion":"10.9.8","description":"Porcupine — a terminal coding agent that plans, acts inside explicit permission modes, and verifies its work. The whole Porcupine codebase ships as one package.","directories":{},"_nodeVersion":"22.23.1","dependencies":{"diff":"8.0.4","glob":"13.0.6","jiti":"2.7.0","yaml":"2.9.0","chalk":"5.6.2","ignore":"7.0.5","marked":"18.0.5","openai":"6.26.0","semver":"7.8.0","undici":"8.5.0","typebox":"1.3.7","kokoro-js":"1.2.1","minimatch":"10.2.5","cross-spawn":"7.0.6","highlight.js":"10.7.3","partial-json":"0.1.7","@google/genai":"1.52.0","@porcupineai/ai":"*","hosted-git-info":"9.0.3","proper-lockfile":"4.1.2","@porcupineai/tui":"*","http-proxy-agent":"7.0.2","@anthropic-ai/sdk":"0.91.1","https-proxy-agent":"7.0.6","@opentelemetry/api":"1.9.0","@porcupineai/client":"*","@mistralai/mistralai":"2.2.6","get-east-asian-width":"1.6.0","@porcupineai/protocol":"*","@mariozechner/clipboard":"0.3.9","@porcupineai/agent-core":"*","@modelcontextprotocol/sdk":"1.25.2","@smithy/node-http-handler":"4.7.3","@moonshine-ai/moonshine-js":"0.1.29","@silvia-odwyer/photon-node":"0.3.4","@aws-sdk/client-bedrock-runtime":"3.1048.0"},"_hasShrinkwrap":false,"bundleDependencies":["@porcupineai/ai","@porcupineai/agent-core","@porcupineai/client","@porcupineai/protocol","@porcupineai/tui"],"_npmOperationalInternal":{"tmp":"tmp/porcupineai_0.1.45_1786054014373_0.6156764929848577","host":"s3://npm-registry-packages-npm-production"}},"0.1.50":{"name":"@porcupineai/porcupineai","version":"0.1.50","keywords":["ai","agent","coding-agent","cli","terminal","autonomous","mcp"],"license":"MIT","_id":"@porcupineai/porcupineai@0.1.50","maintainers":[{"name":"abd0r","email":"ra2157218@gmail.com"}],"bin":{"porcupine":"Porcupine/packages/coding-agent/dist/cli.js"},"dist":{"shasum":"1e3cb710aeed0dec745d23a39cab1c57696f7e05","tarball":"https://registry.npmjs.org/@porcupineai/porcupineai/-/porcupineai-0.1.50.tgz","fileCount":3256,"integrity":"sha512-TJY9aqXzmW1nakQfW5yGGRta+/LSlUuh4eQEyF/Gvvehg8hOkYD54hFUUoUOSK29nsOaoWeLG8eDQVd9wYq7LQ==","signatures":[{"sig":"MEUCIHwwbuo/Ro5sArs45Jm0/xAOEe3/P2A+thwWHGcx/fxTAiEArq8XdqehIW4Eau3/fweFoJwx6MbTGo7Eve9H8WvJGu8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":33539134},"main":"Porcupine/packages/coding-agent/dist/index.js","type":"module","_from":"file:/tmp/porcupineai-porcupineai-0.1.50.tgz","types":"./Porcupine/packages/coding-agent/dist/index.d.ts","engines":{"node":">=22.19.0"},"_npmUser":{"name":"abd0r","email":"ra2157218@gmail.com"},"_resolved":"/tmp/porcupineai-porcupineai-0.1.50.tgz","_integrity":"sha512-TJY9aqXzmW1nakQfW5yGGRta+/LSlUuh4eQEyF/Gvvehg8hOkYD54hFUUoUOSK29nsOaoWeLG8eDQVd9wYq7LQ==","_npmVersion":"10.9.8","description":"Porcupine - a terminal AI agent that reads your repo, runs commands, fixes bugs, and verifies the result, inside a permission mode you control. Email, X, browser, bridges, sub-agents, serve API.","directories":{},"_nodeVersion":"22.23.1","dependencies":{"diff":"8.0.4","glob":"13.0.6","jiti":"2.7.0","yaml":"2.9.0","chalk":"5.6.2","ignore":"7.0.5","marked":"18.0.5","openai":"6.26.0","semver":"7.8.0","undici":"8.5.0","typebox":"1.3.7","imapflow":"1.6.6","kokoro-js":"1.2.1","minimatch":"10.2.5","nodemailer":"9.0.5","playwright":"1.55.0","cross-spawn":"7.0.6","highlight.js":"10.7.3","partial-json":"0.1.7","@google/genai":"1.52.0","@porcupineai/ai":"*","hosted-git-info":"9.0.3","proper-lockfile":"4.1.2","@porcupineai/tui":"*","http-proxy-agent":"7.0.2","@anthropic-ai/sdk":"0.91.1","https-proxy-agent":"7.0.6","@opentelemetry/api":"1.9.0","@porcupineai/client":"*","@mistralai/mistralai":"2.2.6","get-east-asian-width":"1.6.0","@porcupineai/protocol":"*","@mariozechner/clipboard":"0.3.9","@porcupineai/agent-core":"*","@modelcontextprotocol/sdk":"1.25.2","@smithy/node-http-handler":"4.7.3","@moonshine-ai/moonshine-js":"0.1.29","@silvia-odwyer/photon-node":"0.3.4","@aws-sdk/client-bedrock-runtime":"3.1048.0"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/porcupineai_0.1.50_1786146032741_0.15500615847186783","host":"s3://npm-registry-packages-npm-production"}},"0.1.51":{"name":"@porcupineai/porcupineai","version":"0.1.51","keywords":["ai","agent","coding-agent","cli","terminal","autonomous","mcp"],"license":"MIT","_id":"@porcupineai/porcupineai@0.1.51","maintainers":[{"name":"abd0r","email":"ra2157218@gmail.com"}],"bin":{"porcupine":"Porcupine/packages/coding-agent/dist/cli.js"},"dist":{"shasum":"544fbfdf38449d507a53aa1e3763fc716a67aedb","tarball":"https://registry.npmjs.org/@porcupineai/porcupineai/-/porcupineai-0.1.51.tgz","fileCount":3256,"integrity":"sha512-Pki4ijq2DOG9xj9nyiXM2qQ/amt18LdbP+7DmlfLHwGSzF3Si4/mKdrx92ImVBBx8CKuD4IqVreBoplWQP1Wpw==","signatures":[{"sig":"MEQCIBNqgUq7NLKy3fN3gk3PddCaNYPyv5cw3H0GOw/vJ+VCAiA6ImMAvCVBYx4S1Qe6k+Y7UcoF9XmKeNj7YdnUU7ccaA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":33539137},"main":"Porcupine/packages/coding-agent/dist/index.js","type":"module","_from":"file:/tmp/porcupineai-porcupineai-0.1.51.tgz","types":"./Porcupine/packages/coding-agent/dist/index.d.ts","engines":{"node":">=22.19.0"},"_npmUser":{"name":"abd0r","email":"ra2157218@gmail.com"},"_resolved":"/tmp/porcupineai-porcupineai-0.1.51.tgz","_integrity":"sha512-Pki4ijq2DOG9xj9nyiXM2qQ/amt18LdbP+7DmlfLHwGSzF3Si4/mKdrx92ImVBBx8CKuD4IqVreBoplWQP1Wpw==","_npmVersion":"10.9.8","description":"Porcupine - a terminal AI agent that reads your repo, runs commands, fixes bugs, and verifies the result, inside a permission mode you control. Email, X, browser, bridges, sub-agents, serve API.","directories":{},"_nodeVersion":"22.23.1","dependencies":{"diff":"8.0.4","glob":"13.0.6","jiti":"2.7.0","yaml":"2.9.0","chalk":"5.6.2","ignore":"7.0.5","marked":"18.0.5","openai":"6.26.0","semver":"7.8.0","undici":"8.5.0","typebox":"1.3.7","imapflow":"1.6.6","kokoro-js":"1.2.1","minimatch":"10.2.5","nodemailer":"9.0.5","playwright":"1.55.0","cross-spawn":"7.0.6","highlight.js":"10.7.3","partial-json":"0.1.7","@google/genai":"1.52.0","@porcupineai/ai":"*","hosted-git-info":"9.0.3","proper-lockfile":"4.1.2","@porcupineai/tui":"*","http-proxy-agent":"7.0.2","@anthropic-ai/sdk":"0.91.1","https-proxy-agent":"7.0.6","@opentelemetry/api":"1.9.0","@porcupineai/client":"*","@mistralai/mistralai":"2.2.6","get-east-asian-width":"1.6.0","@porcupineai/protocol":"*","@mariozechner/clipboard":"0.3.9","@porcupineai/agent-core":"*","@modelcontextprotocol/sdk":"1.25.2","@smithy/node-http-handler":"4.7.3","@moonshine-ai/moonshine-js":"0.1.29","@silvia-odwyer/photon-node":"0.3.4","@aws-sdk/client-bedrock-runtime":"3.1048.0"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/porcupineai_0.1.51_1786146195210_0.817999270263537","host":"s3://npm-registry-packages-npm-production"}},"0.1.52":{"name":"@porcupineai/porcupineai","version":"0.1.52","keywords":["ai","agent","coding-agent","cli","terminal","autonomous","mcp"],"license":"MIT","_id":"@porcupineai/porcupineai@0.1.52","maintainers":[{"name":"abd0r","email":"ra2157218@gmail.com"}],"bin":{"porcupine":"Porcupine/packages/coding-agent/dist/cli.js"},"dist":{"shasum":"26fa56d6e10284afd27b9a41672ead8a0dabb9bb","tarball":"https://registry.npmjs.org/@porcupineai/porcupineai/-/porcupineai-0.1.52.tgz","fileCount":3256,"integrity":"sha512-qdWrFlhnKHyQnWruKRfCHkv5Rv7vJPP0tO88YdcBypqJLwLvG9n6BJCw8WqA2PAi4plBh2OZ5Ssi9ns2YeBI6A==","signatures":[{"sig":"MEUCIQCobN84qk/7b8lTsAuY4AYPTCz/EmVlE+ZaCWJ8eADhDAIgGt0gZvY7LM5m68lnrmm+XUt0nTeexSVqowtylZvCyrw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":33540585},"main":"Porcupine/packages/coding-agent/dist/index.js","type":"module","_from":"file:/tmp/porcupineai-porcupineai-0.1.52.tgz","types":"./Porcupine/packages/coding-agent/dist/index.d.ts","engines":{"node":">=22.19.0"},"_npmUser":{"name":"abd0r","email":"ra2157218@gmail.com"},"_resolved":"/tmp/porcupineai-porcupineai-0.1.52.tgz","_integrity":"sha512-qdWrFlhnKHyQnWruKRfCHkv5Rv7vJPP0tO88YdcBypqJLwLvG9n6BJCw8WqA2PAi4plBh2OZ5Ssi9ns2YeBI6A==","_npmVersion":"10.9.8","description":"Porcupine - a terminal AI agent that reads your repo, runs commands, fixes bugs, and verifies the result, inside a permission mode you control. Email, X, browser, bridges, sub-agents, serve API.","directories":{},"_nodeVersion":"22.23.1","dependencies":{"diff":"8.0.4","glob":"13.0.6","jiti":"2.7.0","yaml":"2.9.0","chalk":"5.6.2","ignore":"7.0.5","marked":"18.0.5","openai":"6.26.0","semver":"7.8.0","undici":"8.5.0","typebox":"1.3.7","imapflow":"1.6.6","kokoro-js":"1.2.1","minimatch":"10.2.5","nodemailer":"9.0.5","playwright":"1.55.0","cross-spawn":"7.0.6","highlight.js":"10.7.3","partial-json":"0.1.7","@google/genai":"1.52.0","@porcupineai/ai":"*","hosted-git-info":"9.0.3","proper-lockfile":"4.1.2","@porcupineai/tui":"*","http-proxy-agent":"7.0.2","@anthropic-ai/sdk":"0.91.1","https-proxy-agent":"7.0.6","@opentelemetry/api":"1.9.0","@porcupineai/client":"*","@mistralai/mistralai":"2.2.6","get-east-asian-width":"1.6.0","@porcupineai/protocol":"*","@mariozechner/clipboard":"0.3.9","@porcupineai/agent-core":"*","@modelcontextprotocol/sdk":"1.25.2","@smithy/node-http-handler":"4.7.3","@moonshine-ai/moonshine-js":"0.1.29","@silvia-odwyer/photon-node":"0.3.4","@aws-sdk/client-bedrock-runtime":"3.1048.0"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/porcupineai_0.1.52_1786153045344_0.22779120085274096","host":"s3://npm-registry-packages-npm-production"}},"0.1.53":{"name":"@porcupineai/porcupineai","version":"0.1.53","keywords":["ai","agent","coding-agent","cli","terminal","autonomous","mcp"],"license":"MIT","_id":"@porcupineai/porcupineai@0.1.53","maintainers":[{"name":"abd0r","email":"ra2157218@gmail.com"}],"bin":{"porcupine":"Porcupine/packages/coding-agent/dist/cli.js"},"dist":{"shasum":"f16569e10332ae7aa4fb79754d077a56948ec63e","tarball":"https://registry.npmjs.org/@porcupineai/porcupineai/-/porcupineai-0.1.53.tgz","fileCount":3262,"integrity":"sha512-hvTgi4oTlhkbQKhbx96moxBuBt/mY/ryL8m3+iEHuR1EHK3ojxOb2Zt40k8RHCUa1CasSwaLnmQ/4tGktVDRzg==","signatures":[{"sig":"MEQCIA/Hm8J4Ttgqhg/ZKqLYI2lwgtnoB50YzXXEwFlI/ftwAiAkFteNJvkS3yjmIkYVvFzfA8q3afxBXztc251a6udDPw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":33571852},"main":"Porcupine/packages/coding-agent/dist/index.js","type":"module","_from":"file:/tmp/porcupineai-porcupineai-0.1.53.tgz","types":"./Porcupine/packages/coding-agent/dist/index.d.ts","engines":{"node":">=22.19.0"},"_npmUser":{"name":"abd0r","email":"ra2157218@gmail.com"},"_resolved":"/tmp/porcupineai-porcupineai-0.1.53.tgz","_integrity":"sha512-hvTgi4oTlhkbQKhbx96moxBuBt/mY/ryL8m3+iEHuR1EHK3ojxOb2Zt40k8RHCUa1CasSwaLnmQ/4tGktVDRzg==","_npmVersion":"10.9.8","description":"Porcupine - a terminal AI agent that reads your repo, runs commands, fixes bugs, and verifies the result, inside a permission mode you control. Email, X, browser, bridges, sub-agents, serve API.","directories":{},"_nodeVersion":"22.23.1","dependencies":{"diff":"8.0.4","glob":"13.0.6","jiti":"2.7.0","yaml":"2.9.0","chalk":"5.6.2","ignore":"7.0.5","marked":"18.0.5","openai":"6.26.0","semver":"7.8.0","undici":"8.5.0","typebox":"1.3.7","imapflow":"1.6.6","kokoro-js":"1.2.1","minimatch":"10.2.5","nodemailer":"9.0.5","playwright":"1.55.0","cross-spawn":"7.0.6","highlight.js":"10.7.3","partial-json":"0.1.7","@google/genai":"1.52.0","@porcupineai/ai":"*","hosted-git-info":"9.0.3","proper-lockfile":"4.1.2","@porcupineai/tui":"*","http-proxy-agent":"7.0.2","@anthropic-ai/sdk":"0.91.1","https-proxy-agent":"7.0.6","@opentelemetry/api":"1.9.0","@porcupineai/client":"*","@mistralai/mistralai":"2.2.6","get-east-asian-width":"1.6.0","@porcupineai/protocol":"*","@mariozechner/clipboard":"0.3.9","@porcupineai/agent-core":"*","@modelcontextprotocol/sdk":"1.25.2","@smithy/node-http-handler":"4.7.3","@moonshine-ai/moonshine-js":"0.1.29","@silvia-odwyer/photon-node":"0.3.4","@aws-sdk/client-bedrock-runtime":"3.1048.0"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/porcupineai_0.1.53_1786161022271_0.6489925691943503","host":"s3://npm-registry-packages-npm-production"}},"0.1.54":{"name":"@porcupineai/porcupineai","version":"0.1.54","keywords":["ai","agent","coding-agent","cli","terminal","autonomous","mcp"],"license":"MIT","_id":"@porcupineai/porcupineai@0.1.54","maintainers":[{"name":"abd0r","email":"ra2157218@gmail.com"}],"bin":{"porcupine":"Porcupine/packages/coding-agent/dist/cli.js"},"dist":{"shasum":"767cd9293911065cd3a7727d56099a27468a9223","tarball":"https://registry.npmjs.org/@porcupineai/porcupineai/-/porcupineai-0.1.54.tgz","fileCount":3262,"integrity":"sha512-NoY4F8jCoifppn/8nQfU6eLLW1+j28aAcJ9AL7/apwN62/nnwy7aynUqQtGycE5q3O+iOaEri5pgFfbobarbyQ==","signatures":[{"sig":"MEUCIBJaMnffZ+bCOWpzMiDF4odyIjG16CwVtJsC1ibbmR5EAiEAki1QkSKnW/BheZyRX38+Frbw58AQ65xiX9j8qyKME7U=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":33572118},"main":"Porcupine/packages/coding-agent/dist/index.js","type":"module","_from":"file:/tmp/porcupineai-porcupineai-0.1.54.tgz","types":"./Porcupine/packages/coding-agent/dist/index.d.ts","engines":{"node":">=22.19.0"},"_npmUser":{"name":"abd0r","email":"ra2157218@gmail.com"},"_resolved":"/tmp/porcupineai-porcupineai-0.1.54.tgz","_integrity":"sha512-NoY4F8jCoifppn/8nQfU6eLLW1+j28aAcJ9AL7/apwN62/nnwy7aynUqQtGycE5q3O+iOaEri5pgFfbobarbyQ==","_npmVersion":"10.9.8","description":"Porcupine - a terminal AI agent that reads your repo, runs commands, fixes bugs, and verifies the result, inside a permission mode you control. Email, X, browser, bridges, sub-agents, serve API.","directories":{},"_nodeVersion":"22.23.1","dependencies":{"diff":"8.0.4","glob":"13.0.6","jiti":"2.7.0","yaml":"2.9.0","chalk":"5.6.2","ignore":"7.0.5","marked":"18.0.5","openai":"6.26.0","semver":"7.8.0","undici":"8.5.0","typebox":"1.3.7","imapflow":"1.6.6","kokoro-js":"1.2.1","minimatch":"10.2.5","nodemailer":"9.0.5","playwright":"1.55.0","cross-spawn":"7.0.6","highlight.js":"10.7.3","partial-json":"0.1.7","@google/genai":"1.52.0","@porcupineai/ai":"*","hosted-git-info":"9.0.3","proper-lockfile":"4.1.2","@porcupineai/tui":"*","http-proxy-agent":"7.0.2","@anthropic-ai/sdk":"0.91.1","https-proxy-agent":"7.0.6","@opentelemetry/api":"1.9.0","@porcupineai/client":"*","@mistralai/mistralai":"2.2.6","get-east-asian-width":"1.6.0","@porcupineai/protocol":"*","@mariozechner/clipboard":"0.3.9","@porcupineai/agent-core":"*","@modelcontextprotocol/sdk":"1.25.2","@smithy/node-http-handler":"4.7.3","@moonshine-ai/moonshine-js":"0.1.29","@silvia-odwyer/photon-node":"0.3.4","@aws-sdk/client-bedrock-runtime":"3.1048.0"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/porcupineai_0.1.54_1786161159784_0.31683005212814797","host":"s3://npm-registry-packages-npm-production"}},"0.1.55":{"name":"@porcupineai/porcupineai","version":"0.1.55","keywords":["ai","agent","coding-agent","cli","terminal","autonomous","mcp"],"license":"MIT","_id":"@porcupineai/porcupineai@0.1.55","maintainers":[{"name":"abd0r","email":"ra2157218@gmail.com"}],"bin":{"porcupine":"Porcupine/packages/coding-agent/dist/cli.js"},"dist":{"shasum":"16e081298795c4d64510fb37bd38b10352a5bc46","tarball":"https://registry.npmjs.org/@porcupineai/porcupineai/-/porcupineai-0.1.55.tgz","fileCount":3273,"integrity":"sha512-nDUhdYw/cXDYJD8gOhAd8JCDRXzuQuZF5fiid6UJ9+RbcqF3GT0CvFXbMHJdf7jqlpzpD2SwDsHxJsY3emJLzw==","signatures":[{"sig":"MEQCH3fdqMTGcT2w7PbbU3vxkeNV+FNYoxROEYQiBHKcIqYCIQCnCcSWq9+tZcE/3QJoCGQULpdyqf2JKoRKvCgJam2Cqg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":33661711},"main":"Porcupine/packages/coding-agent/dist/index.js","type":"module","_from":"file:/tmp/porcupineai-porcupineai-0.1.55.tgz","types":"./Porcupine/packages/coding-agent/dist/index.d.ts","engines":{"node":">=22.19.0"},"_npmUser":{"name":"abd0r","email":"ra2157218@gmail.com"},"_resolved":"/tmp/porcupineai-porcupineai-0.1.55.tgz","_integrity":"sha512-nDUhdYw/cXDYJD8gOhAd8JCDRXzuQuZF5fiid6UJ9+RbcqF3GT0CvFXbMHJdf7jqlpzpD2SwDsHxJsY3emJLzw==","_npmVersion":"10.9.8","description":"Porcupine - a terminal AI agent that reads your repo, runs commands, fixes bugs, and verifies the result, inside a permission mode you control. Email, X, browser, bridges, sub-agents, serve API.","directories":{},"_nodeVersion":"22.23.1","dependencies":{"diff":"8.0.4","glob":"13.0.6","jiti":"2.7.0","yaml":"2.9.0","chalk":"5.6.2","ignore":"7.0.5","marked":"18.0.5","openai":"6.26.0","semver":"7.8.0","undici":"8.5.0","typebox":"1.3.7","imapflow":"1.6.6","kokoro-js":"1.2.1","minimatch":"10.2.5","nodemailer":"9.0.5","playwright":"1.55.0","cross-spawn":"7.0.6","highlight.js":"10.7.3","partial-json":"0.1.7","@google/genai":"1.52.0","@porcupineai/ai":"*","hosted-git-info":"9.0.3","proper-lockfile":"4.1.2","@porcupineai/tui":"*","http-proxy-agent":"7.0.2","@anthropic-ai/sdk":"0.91.1","https-proxy-agent":"7.0.6","@opentelemetry/api":"1.9.0","@porcupineai/client":"*","@mistralai/mistralai":"2.2.6","get-east-asian-width":"1.6.0","@porcupineai/protocol":"*","@mariozechner/clipboard":"0.3.9","@porcupineai/agent-core":"*","@modelcontextprotocol/sdk":"1.25.2","@smithy/node-http-handler":"4.7.3","@moonshine-ai/moonshine-js":"0.1.29","@silvia-odwyer/photon-node":"0.3.4","@aws-sdk/client-bedrock-runtime":"3.1048.0"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/porcupineai_0.1.55_1786169534933_0.14819003756107718","host":"s3://npm-registry-packages-npm-production"}},"0.1.56":{"name":"@porcupineai/porcupineai","version":"0.1.56","keywords":["ai","agent","coding-agent","cli","terminal","autonomous","mcp"],"license":"MIT","_id":"@porcupineai/porcupineai@0.1.56","maintainers":[{"name":"abd0r","email":"ra2157218@gmail.com"}],"bin":{"porcupine":"Porcupine/packages/coding-agent/dist/cli.js"},"dist":{"shasum":"4ab9f3145f155ba2f9f8a937e4e9da30d9a4a726","tarball":"https://registry.npmjs.org/@porcupineai/porcupineai/-/porcupineai-0.1.56.tgz","fileCount":3274,"integrity":"sha512-EkYKJ9F+UQrWDmk3jDICIiGblxqwziVkjGVC3z/rFmrYjUAi2LLk4qUemtNIDSfkpfOuS+dojpP0FmmyGgloGw==","signatures":[{"sig":"MEYCIQCu4EYYwjkxZCoTT2peQ0w25fHe0WeLJ+CnDemOmH0GLAIhAOTgk/6qVheC0h4JUzdm8PmXBTlA/+AjLrYVog4ghcdR","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":33681288},"main":"Porcupine/packages/coding-agent/dist/index.js","type":"module","_from":"file:/tmp/porcupineai-porcupineai-0.1.56.tgz","types":"./Porcupine/packages/coding-agent/dist/index.d.ts","engines":{"node":">=22.19.0"},"_npmUser":{"name":"abd0r","email":"ra2157218@gmail.com"},"_resolved":"/tmp/porcupineai-porcupineai-0.1.56.tgz","_integrity":"sha512-EkYKJ9F+UQrWDmk3jDICIiGblxqwziVkjGVC3z/rFmrYjUAi2LLk4qUemtNIDSfkpfOuS+dojpP0FmmyGgloGw==","_npmVersion":"10.9.8","description":"Porcupine - a terminal AI agent that reads your repo, runs commands, fixes bugs, and verifies the result, inside a permission mode you control. Email, X, browser, bridges, sub-agents, serve API.","directories":{},"_nodeVersion":"22.23.1","dependencies":{"diff":"8.0.4","glob":"13.0.6","jiti":"2.7.0","yaml":"2.9.0","chalk":"5.6.2","ignore":"7.0.5","marked":"18.0.5","openai":"6.26.0","semver":"7.8.0","undici":"8.5.0","typebox":"1.3.7","imapflow":"1.6.6","kokoro-js":"1.2.1","minimatch":"10.2.5","nodemailer":"9.0.5","playwright":"1.55.0","cross-spawn":"7.0.6","highlight.js":"10.7.3","partial-json":"0.1.7","@google/genai":"1.52.0","@porcupineai/ai":"*","hosted-git-info":"9.0.3","proper-lockfile":"4.1.2","@porcupineai/tui":"*","http-proxy-agent":"7.0.2","@anthropic-ai/sdk":"0.91.1","https-proxy-agent":"7.0.6","@opentelemetry/api":"1.9.0","@porcupineai/client":"*","@mistralai/mistralai":"2.2.6","get-east-asian-width":"1.6.0","@porcupineai/protocol":"*","@mariozechner/clipboard":"0.3.9","@porcupineai/agent-core":"*","@modelcontextprotocol/sdk":"1.25.2","@smithy/node-http-handler":"4.7.3","@moonshine-ai/moonshine-js":"0.1.29","@silvia-odwyer/photon-node":"0.3.4","@aws-sdk/client-bedrock-runtime":"3.1048.0"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/porcupineai_0.1.56_1786177680625_0.725551505879205","host":"s3://npm-registry-packages-npm-production"}},"0.1.57":{"name":"@porcupineai/porcupineai","version":"0.1.57","keywords":["ai","agent","coding-agent","cli","terminal","autonomous","mcp"],"license":"MIT","_id":"@porcupineai/porcupineai@0.1.57","maintainers":[{"name":"abd0r","email":"ra2157218@gmail.com"}],"bin":{"porcupine":"Porcupine/packages/coding-agent/dist/cli.js"},"dist":{"shasum":"a676a76f843e90c6f34da7b0e95a89324efcb356","tarball":"https://registry.npmjs.org/@porcupineai/porcupineai/-/porcupineai-0.1.57.tgz","fileCount":3406,"integrity":"sha512-O+DnG6u1QEQe5n5TMq7+46ce3zRvZSFS5zlrw0Byf7D/4PHdetsUYld7suJNhmgqKB3xrj8OqIRbjcZoR/4ipg==","signatures":[{"sig":"MEUCIQD8KOn84FEOB6Fsh4lSNWPtfL8uKq23sL+YOKNosm+KKAIgUTXMRLAaULbO4bkuhdwX9e6A4mPFCzIeaE0wjVx2/m4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":35558861},"main":"Porcupine/packages/coding-agent/dist/index.js","type":"module","_from":"file:/tmp/porcupineai-porcupineai-0.1.57.tgz","types":"./Porcupine/packages/coding-agent/dist/index.d.ts","engines":{"node":">=22.19.0"},"_npmUser":{"name":"abd0r","email":"ra2157218@gmail.com"},"_resolved":"/tmp/porcupineai-porcupineai-0.1.57.tgz","_integrity":"sha512-O+DnG6u1QEQe5n5TMq7+46ce3zRvZSFS5zlrw0Byf7D/4PHdetsUYld7suJNhmgqKB3xrj8OqIRbjcZoR/4ipg==","_npmVersion":"10.9.8","description":"Porcupine - a terminal AI agent that reads your repo, runs commands, fixes bugs, and verifies the result, inside a permission mode you control. Email, X, browser, bridges, sub-agents, serve API.","directories":{},"_nodeVersion":"22.23.1","dependencies":{"diff":"8.0.4","glob":"13.0.6","jiti":"2.7.0","yaml":"2.9.0","chalk":"5.6.2","ignore":"7.0.5","marked":"18.0.5","openai":"6.26.0","semver":"7.8.0","undici":"8.5.0","typebox":"1.3.7","imapflow":"1.6.6","kokoro-js":"1.2.1","minimatch":"10.2.5","nodemailer":"9.0.5","playwright":"1.55.0","cross-spawn":"7.0.6","highlight.js":"10.7.3","partial-json":"0.1.7","@google/genai":"1.52.0","@porcupineai/ai":"*","hosted-git-info":"9.0.3","proper-lockfile":"4.1.2","@porcupineai/tui":"*","http-proxy-agent":"7.0.2","@anthropic-ai/sdk":"0.91.1","https-proxy-agent":"7.0.6","@opentelemetry/api":"1.9.0","@porcupineai/client":"*","@mistralai/mistralai":"2.2.6","get-east-asian-width":"1.6.0","@porcupineai/protocol":"*","@mariozechner/clipboard":"0.3.9","@porcupineai/agent-core":"*","@modelcontextprotocol/sdk":"1.25.2","@smithy/node-http-handler":"4.7.3","@moonshine-ai/moonshine-js":"0.1.29","@silvia-odwyer/photon-node":"0.3.4","@aws-sdk/client-bedrock-runtime":"3.1048.0"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/porcupineai_0.1.57_1786228061042_0.3388482230258263","host":"s3://npm-registry-packages-npm-production"}},"0.1.58":{"name":"@porcupineai/porcupineai","version":"0.1.58","keywords":["ai","agent","coding-agent","cli","terminal","autonomous","mcp"],"license":"MIT","_id":"@porcupineai/porcupineai@0.1.58","maintainers":[{"name":"abd0r","email":"ra2157218@gmail.com"}],"bin":{"porcupine":"Porcupine/packages/coding-agent/dist/cli.js"},"dist":{"shasum":"ea151de71307ac4a227ed5a4a47eb393483a861f","tarball":"https://registry.npmjs.org/@porcupineai/porcupineai/-/porcupineai-0.1.58.tgz","fileCount":3406,"integrity":"sha512-t0tsYwB3PqPCoB3LJKL0rZbbqEom7EkfcX/IL8/GfiiALlTLWyCVwgQVzt9y8EbkL+RFudB9GwET1dan4NS2kQ==","signatures":[{"sig":"MEUCIQCdQ31HAUxjXZ3nqC/hKhT14jfsskP2c2SZARTkaCl/KwIgEaXQYST9JV2jeJPSMe2IByITMJY3JPEWfANJFNFQHVA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":35589297},"main":"Porcupine/packages/coding-agent/dist/index.js","type":"module","_from":"file:/tmp/porcupineai-porcupineai-0.1.58.tgz","types":"./Porcupine/packages/coding-agent/dist/index.d.ts","engines":{"node":">=22.19.0"},"_npmUser":{"name":"abd0r","email":"ra2157218@gmail.com"},"_resolved":"/tmp/porcupineai-porcupineai-0.1.58.tgz","_integrity":"sha512-t0tsYwB3PqPCoB3LJKL0rZbbqEom7EkfcX/IL8/GfiiALlTLWyCVwgQVzt9y8EbkL+RFudB9GwET1dan4NS2kQ==","_npmVersion":"10.9.8","description":"Porcupine - a terminal AI agent that reads your repo, runs commands, fixes bugs, and verifies the result, inside a permission mode you control. Email, X, browser, bridges, sub-agents, serve API.","directories":{},"_nodeVersion":"22.23.1","dependencies":{"diff":"8.0.4","glob":"13.0.6","jiti":"2.7.0","yaml":"2.9.0","chalk":"5.6.2","ignore":"7.0.5","marked":"18.0.5","openai":"6.26.0","semver":"7.8.0","undici":"8.5.0","typebox":"1.3.7","imapflow":"1.6.6","kokoro-js":"1.2.1","minimatch":"10.2.5","nodemailer":"9.0.5","playwright":"1.55.0","cross-spawn":"7.0.6","highlight.js":"10.7.3","partial-json":"0.1.7","@google/genai":"1.52.0","@porcupineai/ai":"*","hosted-git-info":"9.0.3","proper-lockfile":"4.1.2","@porcupineai/tui":"*","http-proxy-agent":"7.0.2","@anthropic-ai/sdk":"0.91.1","https-proxy-agent":"7.0.6","@opentelemetry/api":"1.9.0","@porcupineai/client":"*","@mistralai/mistralai":"2.2.6","get-east-asian-width":"1.6.0","@porcupineai/protocol":"*","@mariozechner/clipboard":"0.3.9","@porcupineai/agent-core":"*","@modelcontextprotocol/sdk":"1.25.2","@smithy/node-http-handler":"4.7.3","@moonshine-ai/moonshine-js":"0.1.29","@silvia-odwyer/photon-node":"0.3.4","@aws-sdk/client-bedrock-runtime":"3.1048.0"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/porcupineai_0.1.58_1786230364684_0.3390731221102852","host":"s3://npm-registry-packages-npm-production"}},"0.1.59":{"name":"@porcupineai/porcupineai","version":"0.1.59","keywords":["ai","agent","coding-agent","cli","terminal","autonomous","mcp"],"license":"MIT","_id":"@porcupineai/porcupineai@0.1.59","maintainers":[{"name":"abd0r","email":"ra2157218@gmail.com"}],"bin":{"porcupine":"Porcupine/packages/coding-agent/dist/cli.js"},"dist":{"shasum":"a6350cab23cb3127053415e7914d266694da540d","tarball":"https://registry.npmjs.org/@porcupineai/porcupineai/-/porcupineai-0.1.59.tgz","fileCount":3406,"integrity":"sha512-LenOnCRUFljUPERnVbYbju01poId4NE5vDv3R8gvtO0IpVhdcLqsPU6BGkzfCNK/0hkQ/GMDHo3T/l3PDk+cKQ==","signatures":[{"sig":"MEUCIQC3v110L+Jse996PdyVNY0ox9GUYagycxAeKbON3jGKiwIgJBlMVL/18FmHvD5tuNvdYe8vD6PQpJGZ8Adz161HUns=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":35602301},"main":"Porcupine/packages/coding-agent/dist/index.js","type":"module","_from":"file:/tmp/porcupineai-porcupineai-0.1.59.tgz","types":"./Porcupine/packages/coding-agent/dist/index.d.ts","engines":{"node":">=22.19.0"},"_npmUser":{"name":"abd0r","email":"ra2157218@gmail.com"},"_resolved":"/tmp/porcupineai-porcupineai-0.1.59.tgz","_integrity":"sha512-LenOnCRUFljUPERnVbYbju01poId4NE5vDv3R8gvtO0IpVhdcLqsPU6BGkzfCNK/0hkQ/GMDHo3T/l3PDk+cKQ==","_npmVersion":"10.9.8","description":"Porcupine - a terminal AI agent that reads your repo, runs commands, fixes bugs, and verifies the result, inside a permission mode you control. Email, X, browser, bridges, sub-agents, serve API.","directories":{},"_nodeVersion":"22.23.1","dependencies":{"diff":"8.0.4","glob":"13.0.6","jiti":"2.7.0","yaml":"2.9.0","chalk":"5.6.2","ignore":"7.0.5","marked":"18.0.5","openai":"6.26.0","semver":"7.8.0","undici":"8.5.0","typebox":"1.3.7","imapflow":"1.6.6","kokoro-js":"1.2.1","minimatch":"10.2.5","nodemailer":"9.0.5","playwright":"1.55.0","cross-spawn":"7.0.6","highlight.js":"10.7.3","partial-json":"0.1.7","@google/genai":"1.52.0","@porcupineai/ai":"*","hosted-git-info":"9.0.3","proper-lockfile":"4.1.2","@porcupineai/tui":"*","http-proxy-agent":"7.0.2","@anthropic-ai/sdk":"0.91.1","https-proxy-agent":"7.0.6","@opentelemetry/api":"1.9.0","@porcupineai/client":"*","@mistralai/mistralai":"2.2.6","get-east-asian-width":"1.6.0","@porcupineai/protocol":"*","@mariozechner/clipboard":"0.3.9","@porcupineai/agent-core":"*","@modelcontextprotocol/sdk":"1.25.2","@smithy/node-http-handler":"4.7.3","@moonshine-ai/moonshine-js":"0.1.29","@silvia-odwyer/photon-node":"0.3.4","@aws-sdk/client-bedrock-runtime":"3.1048.0"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/porcupineai_0.1.59_1786234265541_0.9674681116079658","host":"s3://npm-registry-packages-npm-production"}},"0.1.60":{"name":"@porcupineai/porcupineai","version":"0.1.60","keywords":["ai","agent","coding-agent","cli","terminal","autonomous","mcp"],"license":"MIT","_id":"@porcupineai/porcupineai@0.1.60","maintainers":[{"name":"abd0r","email":"ra2157218@gmail.com"}],"bin":{"porcupine":"Porcupine/packages/coding-agent/dist/cli.js"},"dist":{"shasum":"50c6e34fd27b4c6131d1cbfa30a2e83b25186343","tarball":"https://registry.npmjs.org/@porcupineai/porcupineai/-/porcupineai-0.1.60.tgz","fileCount":3406,"integrity":"sha512-zu+eN0yH6J1gQB2hwKQL6hfR/VQuNgH8jhtEVY4t+Mr7KBfdGMHcn2qkSSoVRhBgKohUcYtLFFShy0jMetmo5g==","signatures":[{"sig":"MEUCIQCGRYqtOUv4O2ZxyK/2him/mV+KyGezNA3oixILHkeJZgIgfXUXT5jS2QHvRs5g/+rVpHCoVxrS/UJ2fbPlBt0AR/o=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":35617680},"main":"Porcupine/packages/coding-agent/dist/index.js","type":"module","_from":"file:/tmp/porcupineai-porcupineai-0.1.60.tgz","types":"./Porcupine/packages/coding-agent/dist/index.d.ts","engines":{"node":">=22.19.0"},"_npmUser":{"name":"abd0r","email":"ra2157218@gmail.com"},"_resolved":"/tmp/porcupineai-porcupineai-0.1.60.tgz","_integrity":"sha512-zu+eN0yH6J1gQB2hwKQL6hfR/VQuNgH8jhtEVY4t+Mr7KBfdGMHcn2qkSSoVRhBgKohUcYtLFFShy0jMetmo5g==","_npmVersion":"10.9.8","description":"Porcupine - a terminal AI agent that reads your repo, runs commands, fixes bugs, and verifies the result, inside a permission mode you control. Email, X, browser, bridges, sub-agents, serve API.","directories":{},"_nodeVersion":"22.23.1","dependencies":{"diff":"8.0.4","glob":"13.0.6","jiti":"2.7.0","yaml":"2.9.0","chalk":"5.6.2","ignore":"7.0.5","marked":"18.0.5","openai":"6.26.0","semver":"7.8.0","undici":"8.5.0","typebox":"1.3.7","imapflow":"1.6.6","kokoro-js":"1.2.1","minimatch":"10.2.5","nodemailer":"9.0.5","playwright":"1.55.0","cross-spawn":"7.0.6","highlight.js":"10.7.3","partial-json":"0.1.7","@google/genai":"1.52.0","@porcupineai/ai":"*","hosted-git-info":"9.0.3","proper-lockfile":"4.1.2","@porcupineai/tui":"*","http-proxy-agent":"7.0.2","@anthropic-ai/sdk":"0.91.1","https-proxy-agent":"7.0.6","@opentelemetry/api":"1.9.0","@porcupineai/client":"*","@mistralai/mistralai":"2.2.6","get-east-asian-width":"1.6.0","@porcupineai/protocol":"*","@mariozechner/clipboard":"0.3.9","@porcupineai/agent-core":"*","@modelcontextprotocol/sdk":"1.25.2","@smithy/node-http-handler":"4.7.3","@moonshine-ai/moonshine-js":"0.1.29","@silvia-odwyer/photon-node":"0.3.4","@aws-sdk/client-bedrock-runtime":"3.1048.0"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/porcupineai_0.1.60_1786405565917_0.7389512449773887","host":"s3://npm-registry-packages-npm-production"}},"0.1.61":{"name":"@porcupineai/porcupineai","version":"0.1.61","keywords":["ai","agent","coding-agent","cli","terminal","autonomous","mcp"],"license":"MIT","_id":"@porcupineai/porcupineai@0.1.61","maintainers":[{"name":"abd0r","email":"ra2157218@gmail.com"}],"bin":{"porcupine":"Porcupine/packages/coding-agent/dist/cli.js"},"dist":{"shasum":"24feb326e2b515a06a5a3faa5121ad6117eb0844","tarball":"https://registry.npmjs.org/@porcupineai/porcupineai/-/porcupineai-0.1.61.tgz","fileCount":3408,"integrity":"sha512-xP9tBWc4wlzFERFzHdRCF1WY8f8+SH+BibCH1J9TYsLhlE+Yrof06zJwTfaRkosnZSgs06WDq23zxivXHr13xA==","signatures":[{"sig":"MEQCIFMyIEK8qczDhxGztz0voOlrS0J7wae7FwH9cUFOWXjTAiBbq6u87uTt79sAlX1DIO2CPs9nAjuDT+ha6bMo3aMmTQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":35660812},"main":"Porcupine/packages/coding-agent/dist/index.js","type":"module","_from":"file:/tmp/porcupineai-porcupineai-0.1.61.tgz","types":"./Porcupine/packages/coding-agent/dist/index.d.ts","engines":{"node":">=22.19.0"},"_npmUser":{"name":"abd0r","email":"ra2157218@gmail.com"},"_resolved":"/tmp/porcupineai-porcupineai-0.1.61.tgz","_integrity":"sha512-xP9tBWc4wlzFERFzHdRCF1WY8f8+SH+BibCH1J9TYsLhlE+Yrof06zJwTfaRkosnZSgs06WDq23zxivXHr13xA==","_npmVersion":"10.9.8","description":"Porcupine - a terminal AI agent that reads your repo, runs commands, fixes bugs, and verifies the result, inside a permission mode you control. Email, X, browser, bridges, sub-agents, serve API.","directories":{},"_nodeVersion":"22.23.1","dependencies":{"diff":"8.0.4","glob":"13.0.6","jiti":"2.7.0","yaml":"2.9.0","chalk":"5.6.2","ignore":"7.0.5","marked":"18.0.5","openai":"6.26.0","semver":"7.8.0","undici":"8.5.0","typebox":"1.3.7","imapflow":"1.6.6","kokoro-js":"1.2.1","minimatch":"10.2.5","nodemailer":"9.0.5","playwright":"1.55.0","cross-spawn":"7.0.6","highlight.js":"10.7.3","partial-json":"0.1.7","@google/genai":"1.52.0","@porcupineai/ai":"*","hosted-git-info":"9.0.3","proper-lockfile":"4.1.2","@porcupineai/tui":"*","http-proxy-agent":"7.0.2","@anthropic-ai/sdk":"0.91.1","https-proxy-agent":"7.0.6","@opentelemetry/api":"1.9.0","@porcupineai/client":"*","@mistralai/mistralai":"2.2.6","get-east-asian-width":"1.6.0","@porcupineai/protocol":"*","@mariozechner/clipboard":"0.3.9","@porcupineai/agent-core":"*","@modelcontextprotocol/sdk":"1.25.2","@smithy/node-http-handler":"4.7.3","@moonshine-ai/moonshine-js":"0.1.29","@silvia-odwyer/photon-node":"0.3.4","@aws-sdk/client-bedrock-runtime":"3.1048.0"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/porcupineai_0.1.61_1786412969782_0.4056934655113069","host":"s3://npm-registry-packages-npm-production"}},"0.1.62":{"name":"@porcupineai/porcupineai","version":"0.1.62","keywords":["ai","agent","coding-agent","cli","terminal","autonomous","mcp"],"license":"MIT","_id":"@porcupineai/porcupineai@0.1.62","maintainers":[{"name":"abd0r","email":"ra2157218@gmail.com"}],"bin":{"porcupine":"Porcupine/packages/coding-agent/dist/cli.js"},"dist":{"shasum":"858d324448ae593b95cfa1071129f2f211d4c2b5","tarball":"https://registry.npmjs.org/@porcupineai/porcupineai/-/porcupineai-0.1.62.tgz","fileCount":3412,"integrity":"sha512-S5wKWjWAgTnnOUSBYpEO+7vvoooyY1fXY0gdRhekO8L0lzMUNfihZN1Ktj6GKB6HWP277EMmovU4ZAkVyR4FPw==","signatures":[{"sig":"MEUCIEAAH3FfC2GUDQpfAxTRfXV+gp//n6E4PTNgRs8lFXtyAiEAv6zIbKHNb5xDKlvSPq8pgmZsS9HvIe+ifxl9bEx1SAk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":35671154},"main":"Porcupine/packages/coding-agent/dist/index.js","type":"module","_from":"file:/tmp/porcupineai-porcupineai-0.1.62.tgz","types":"./Porcupine/packages/coding-agent/dist/index.d.ts","engines":{"node":">=22.19.0"},"_npmUser":{"name":"abd0r","email":"ra2157218@gmail.com"},"_resolved":"/tmp/porcupineai-porcupineai-0.1.62.tgz","_integrity":"sha512-S5wKWjWAgTnnOUSBYpEO+7vvoooyY1fXY0gdRhekO8L0lzMUNfihZN1Ktj6GKB6HWP277EMmovU4ZAkVyR4FPw==","_npmVersion":"10.9.8","description":"Porcupine - a terminal AI agent that reads your repo, runs commands, fixes bugs, and verifies the result, inside a permission mode you control. Email, X, browser, bridges, sub-agents, serve API.","directories":{},"_nodeVersion":"22.23.1","dependencies":{"diff":"8.0.4","glob":"13.0.6","jiti":"2.7.0","yaml":"2.9.0","chalk":"5.6.2","ignore":"7.0.5","marked":"18.0.5","openai":"6.26.0","semver":"7.8.0","undici":"8.5.0","typebox":"1.3.7","imapflow":"1.6.6","kokoro-js":"1.2.1","minimatch":"10.2.5","nodemailer":"9.0.5","playwright":"1.55.0","cross-spawn":"7.0.6","highlight.js":"10.7.3","partial-json":"0.1.7","@google/genai":"1.52.0","@porcupineai/ai":"*","hosted-git-info":"9.0.3","proper-lockfile":"4.1.2","@porcupineai/tui":"*","http-proxy-agent":"7.0.2","@anthropic-ai/sdk":"0.91.1","https-proxy-agent":"7.0.6","@opentelemetry/api":"1.9.0","@porcupineai/client":"*","@mistralai/mistralai":"2.2.6","get-east-asian-width":"1.6.0","@porcupineai/protocol":"*","@mariozechner/clipboard":"0.3.9","@porcupineai/agent-core":"*","@modelcontextprotocol/sdk":"1.25.2","@smithy/node-http-handler":"4.7.3","@moonshine-ai/moonshine-js":"0.1.29","@silvia-odwyer/photon-node":"0.3.4","@aws-sdk/client-bedrock-runtime":"3.1048.0"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/porcupineai_0.1.62_1786417150420_0.19561144897057026","host":"s3://npm-registry-packages-npm-production"}},"0.1.63":{"name":"@porcupineai/porcupineai","version":"0.1.63","keywords":["ai","agent","cli","terminal","coding-agent","mcp","tui","porcupine"],"license":"MIT","_id":"@porcupineai/porcupineai@0.1.63","maintainers":[{"name":"abd0r","email":"ra2157218@gmail.com"}],"bin":{"porcupine":"Porcupine/packages/coding-agent/dist/cli.js"},"dist":{"shasum":"13389814c0ec5116eb242625a6e900bfa8267616","tarball":"https://registry.npmjs.org/@porcupineai/porcupineai/-/porcupineai-0.1.63.tgz","fileCount":4294,"integrity":"sha512-XGpwc+ewBuoeQVlyleoFY8j75+9UqvN0OSVAhGUXoGv6jcmytgTFLLQnRCon/IKr0sjNni0Vp6JdUSgYIe3yEg==","signatures":[{"sig":"MEYCIQDo2mAOvZa/jRaq9acXIxzauTmtymJeC0KTIJYEnZv8JQIhAK2325P3KNYEXITVg18nw2auM173bGbUcV+cZi6E3pWG","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":45219347},"main":"Porcupine/packages/coding-agent/dist/index.js","types":"./Porcupine/packages/coding-agent/dist/index.d.ts","engines":{"node":">=22.19.0"},"gitHead":"ccb77abdcfb7cc46cc632a75f2d6e325420eafb9","_npmUser":{"name":"abd0r","email":"ra2157218@gmail.com"},"_npmVersion":"10.9.8","description":"Porcupine — a terminal coding agent that plans, acts inside explicit permission modes, and verifies its work. The whole Porcupine codebase ships as one package.","directories":{},"_nodeVersion":"22.23.1","dependencies":{"diff":"8.0.4","glob":"13.0.6","jiti":"2.7.0","yaml":"2.9.0","chalk":"5.6.2","ignore":"7.0.5","marked":"18.0.5","openai":"6.26.0","semver":"7.8.0","undici":"8.5.0","typebox":"1.3.7","kokoro-js":"1.2.1","minimatch":"10.2.5","cross-spawn":"7.0.6","highlight.js":"10.7.3","partial-json":"0.1.7","@google/genai":"1.52.0","@porcupineai/ai":"*","hosted-git-info":"9.0.3","proper-lockfile":"4.1.2","@porcupineai/tui":"*","http-proxy-agent":"7.0.2","@anthropic-ai/sdk":"0.91.1","https-proxy-agent":"7.0.6","@opentelemetry/api":"1.9.0","@porcupineai/client":"*","@mistralai/mistralai":"2.2.6","get-east-asian-width":"1.6.0","@porcupineai/protocol":"*","@mariozechner/clipboard":"0.3.9","@porcupineai/agent-core":"*","@modelcontextprotocol/sdk":"1.25.2","@smithy/node-http-handler":"4.7.3","@moonshine-ai/moonshine-js":"0.1.29","@silvia-odwyer/photon-node":"0.3.4","@aws-sdk/client-bedrock-runtime":"3.1048.0"},"_hasShrinkwrap":false,"bundleDependencies":["@porcupineai/ai","@porcupineai/agent-core","@porcupineai/client","@porcupineai/protocol","@porcupineai/tui"],"_npmOperationalInternal":{"tmp":"tmp/porcupineai_0.1.63_1786444056991_0.17419341101359542","host":"s3://npm-registry-packages-npm-production"}},"0.1.64":{"name":"@porcupineai/porcupineai","version":"0.1.64","keywords":["ai","agent","cli","terminal","coding-agent","mcp","tui","porcupine"],"license":"MIT","_id":"@porcupineai/porcupineai@0.1.64","maintainers":[{"name":"abd0r","email":"ra2157218@gmail.com"}],"bin":{"porcupine":"Porcupine/packages/coding-agent/dist/cli.js"},"dist":{"shasum":"84d02523b0f33ec76a6de9371d37a3fadbf6219c","tarball":"https://registry.npmjs.org/@porcupineai/porcupineai/-/porcupineai-0.1.64.tgz","fileCount":4303,"integrity":"sha512-YmZ0pDTSkBjS8BXHDvuuhRLDzfeffmbviXBMRQKVLR5+OlAWbrNpSGRFkKjKhomRVlrxCBCTz4bBQOblzSKxGA==","signatures":[{"sig":"MEUCICOSjtEvCWKFN0NHUkAQkkOGKDMRuXq8DPasvayElOd0AiEAsgHrhxc/HNlhudAqJsn2TgKgEfvqtWAYlBSMp/IEgx0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":45352898},"main":"Porcupine/packages/coding-agent/dist/index.js","types":"./Porcupine/packages/coding-agent/dist/index.d.ts","engines":{"node":">=22.19.0"},"gitHead":"f58697a522cf5f77813955f35a2d085897ff5b49","_npmUser":{"name":"abd0r","email":"ra2157218@gmail.com"},"_npmVersion":"10.9.8","description":"Porcupine — a terminal coding agent that plans, acts inside explicit permission modes, and verifies its work. The whole Porcupine codebase ships as one package.","directories":{},"_nodeVersion":"22.23.1","dependencies":{"diff":"8.0.4","glob":"13.0.6","jiti":"2.7.0","yaml":"2.9.0","chalk":"5.6.2","ignore":"7.0.5","marked":"18.0.5","openai":"6.26.0","semver":"7.8.0","undici":"8.5.0","typebox":"1.3.7","kokoro-js":"1.2.1","minimatch":"10.2.5","cross-spawn":"7.0.6","highlight.js":"10.7.3","partial-json":"0.1.7","@google/genai":"1.52.0","@porcupineai/ai":"*","hosted-git-info":"9.0.3","proper-lockfile":"4.1.2","@porcupineai/tui":"*","http-proxy-agent":"7.0.2","@anthropic-ai/sdk":"0.91.1","https-proxy-agent":"7.0.6","@opentelemetry/api":"1.9.0","@porcupineai/client":"*","@mistralai/mistralai":"2.2.6","get-east-asian-width":"1.6.0","@porcupineai/protocol":"*","@mariozechner/clipboard":"0.3.9","@porcupineai/agent-core":"*","@modelcontextprotocol/sdk":"1.25.2","@smithy/node-http-handler":"4.7.3","@moonshine-ai/moonshine-js":"0.1.29","@silvia-odwyer/photon-node":"0.3.4","@aws-sdk/client-bedrock-runtime":"3.1048.0"},"_hasShrinkwrap":false,"bundleDependencies":["@porcupineai/ai","@porcupineai/agent-core","@porcupineai/client","@porcupineai/protocol","@porcupineai/tui"],"_npmOperationalInternal":{"tmp":"tmp/porcupineai_0.1.64_1786449760187_0.7666603611465181","host":"s3://npm-registry-packages-npm-production"}},"0.1.65":{"name":"@porcupineai/porcupineai","version":"0.1.65","keywords":["ai","agent","cli","terminal","ai-agent","mcp","tui","porcupine"],"license":"MIT","_id":"@porcupineai/porcupineai@0.1.65","maintainers":[{"name":"abd0r","email":"ra2157218@gmail.com"}],"bin":{"porcupine":"Porcupine/packages/coding-agent/dist/cli.js"},"dist":{"shasum":"dd530adc9498f0cdee0b45570c38ec82d84bac0d","tarball":"https://registry.npmjs.org/@porcupineai/porcupineai/-/porcupineai-0.1.65.tgz","fileCount":15472,"integrity":"sha512-EGUojFhBZ0l6UrAcMDG8Oy0qxKq7eEjv8oRz1tfoQLh0G0a1ibc9n6t1Yqm4ekYRRjRMuK2OaC6jMIpj7Ofh7w==","signatures":[{"sig":"MEUCIBOQMtXd21F1p/LeLCv5ai8LqV6YP5xcnPMkGaJWpZCjAiEA2p82wXTqfAO91FkwQ+MFXUNNpsiYU995pTh5FMV/Hmw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":98004400},"main":"Porcupine/packages/coding-agent/dist/index.js","types":"./Porcupine/packages/coding-agent/dist/index.d.ts","engines":{"node":">=22.19.0"},"gitHead":"a082f229c3c47c220db877691d478bdb882adc41","_npmUser":{"name":"abd0r","email":"ra2157218@gmail.com"},"_npmVersion":"10.9.8","description":"Porcupine — a terminal AI agent that plans, acts inside explicit permission modes, and verifies its work. The whole Porcupine codebase ships as one package.","directories":{},"_nodeVersion":"22.23.1","dependencies":{"diff":"8.0.4","glob":"13.0.6","jiti":"2.7.0","yaml":"2.9.0","chalk":"5.6.2","ignore":"7.0.5","marked":"18.0.5","openai":"6.26.0","semver":"7.8.0","undici":"8.10.0","typebox":"1.3.7","kokoro-js":"1.2.1","minimatch":"10.2.5","cross-spawn":"7.0.6","highlight.js":"10.7.3","partial-json":"0.1.7","@google/genai":"1.52.0","@porcupineai/ai":"^0.1.65","hosted-git-info":"9.0.3","proper-lockfile":"4.1.2","@porcupineai/tui":"^0.1.65","http-proxy-agent":"7.0.2","@anthropic-ai/sdk":"0.91.1","https-proxy-agent":"7.0.6","@opentelemetry/api":"1.9.0","@porcupineai/client":"^0.1.65","@mistralai/mistralai":"2.2.6","get-east-asian-width":"1.6.0","@porcupineai/protocol":"^0.1.65","@mariozechner/clipboard":"0.3.9","@porcupineai/agent-core":"^0.1.65","@modelcontextprotocol/sdk":"1.30.0","@smithy/node-http-handler":"4.7.3","@moonshine-ai/moonshine-js":"0.1.29","@silvia-odwyer/photon-node":"0.3.4","@aws-sdk/client-bedrock-runtime":"3.1048.0"},"_hasShrinkwrap":false,"bundleDependencies":["@porcupineai/ai","@porcupineai/agent-core","@porcupineai/client","@porcupineai/protocol","@porcupineai/tui"],"_npmOperationalInternal":{"tmp":"tmp/porcupineai_0.1.65_1786510936008_0.1285070970010953","host":"s3://npm-registry-packages-npm-production"}},"0.1.66":{"name":"@porcupineai/porcupineai","version":"0.1.66","keywords":["ai","agent","cli","terminal","ai-agent","mcp","tui","porcupine"],"license":"MIT","_id":"@porcupineai/porcupineai@0.1.66","maintainers":[{"name":"abd0r","email":"ra2157218@gmail.com"}],"bin":{"porcupine":"Porcupine/packages/coding-agent/dist/cli.js"},"dist":{"shasum":"3c1aa0643fe1ba9d62bceadb9b95bc3106643cd8","tarball":"https://registry.npmjs.org/@porcupineai/porcupineai/-/porcupineai-0.1.66.tgz","fileCount":18443,"integrity":"sha512-aCVd+H9MCfFynSqsrykdZrBllNivYXcfL2WevgmdXoVtD5DiS4PQxnIKDV3qWyllpaVvGYLpF7tJswx3geGoGg==","signatures":[{"sig":"MEUCIDJRhvGpWVUDWEoaqTig6nB/iKypoijC+meOuiNo1tbyAiEAmNA1sSUhCihTCTvEJfKwxBK1d69DOAj1u6R/0HH+psQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":129204358},"main":"Porcupine/packages/coding-agent/dist/index.js","types":"./Porcupine/packages/coding-agent/dist/index.d.ts","engines":{"node":">=22.19.0"},"gitHead":"238d609cef5807ac6095d6d4d5d5abb6f6152c85","_npmUser":{"name":"abd0r","email":"ra2157218@gmail.com"},"_npmVersion":"10.9.8","description":"Porcupine — a terminal AI agent that plans, acts inside explicit permission modes, and verifies its work. The whole Porcupine codebase ships as one package.","directories":{},"_nodeVersion":"22.23.1","dependencies":{"diff":"8.0.4","glob":"13.0.6","jiti":"2.7.0","yaml":"2.9.0","chalk":"5.6.2","ignore":"7.0.5","marked":"18.0.5","openai":"6.26.0","semver":"7.8.0","undici":"8.10.0","typebox":"1.3.7","kokoro-js":"1.2.1","minimatch":"10.2.5","cross-spawn":"7.0.6","highlight.js":"10.7.3","partial-json":"0.1.7","@google/genai":"1.52.0","@porcupineai/ai":"^0.1.65","hosted-git-info":"9.0.3","proper-lockfile":"4.1.2","@porcupineai/tui":"^0.1.65","http-proxy-agent":"7.0.2","@anthropic-ai/sdk":"0.91.1","https-proxy-agent":"7.0.6","@opentelemetry/api":"1.9.0","@porcupineai/client":"^0.1.65","@mistralai/mistralai":"2.2.6","get-east-asian-width":"1.6.0","@porcupineai/protocol":"^0.1.65","@mariozechner/clipboard":"0.3.9","@porcupineai/agent-core":"^0.1.65","@modelcontextprotocol/sdk":"1.30.0","@smithy/node-http-handler":"4.7.3","@moonshine-ai/moonshine-js":"0.1.29","@silvia-odwyer/photon-node":"0.3.4","@aws-sdk/client-bedrock-runtime":"3.1048.0"},"_hasShrinkwrap":false,"bundleDependencies":["@porcupineai/ai","@porcupineai/agent-core","@porcupineai/client","@porcupineai/protocol","@porcupineai/tui"],"_npmOperationalInternal":{"tmp":"tmp/porcupineai_0.1.66_1786511961116_0.7788666240363451","host":"s3://npm-registry-packages-npm-production"}},"0.1.67":{"name":"@porcupineai/porcupineai","version":"0.1.67","keywords":["ai","agent","cli","terminal","ai-agent","mcp","tui","porcupine"],"license":"MIT","_id":"@porcupineai/porcupineai@0.1.67","maintainers":[{"name":"abd0r","email":"ra2157218@gmail.com"}],"bin":{"porcupine":"Porcupine/packages/coding-agent/dist/cli.js"},"dist":{"shasum":"f593e252218e099e45809e5dbc8185b1b8d3047b","tarball":"https://registry.npmjs.org/@porcupineai/porcupineai/-/porcupineai-0.1.67.tgz","fileCount":15473,"integrity":"sha512-084/HFcA/84jipBLLY8RernInPlqo34KJufAbRJ15Drmzhd1bliSWxuyZ7rcoolLScq0vxtt7SLscZoGszgWBg==","signatures":[{"sig":"MEQCIF0+u6jca5QJ9IGbFfrSqYlvkkF064eJQnKbL9K6wXpcAiBRMvteTCfp3Qk9z73Sps/pSnX0OtssjKcThzUPIfUPQg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":100010779},"main":"Porcupine/packages/coding-agent/dist/index.js","types":"./Porcupine/packages/coding-agent/dist/index.d.ts","engines":{"node":">=22.19.0"},"gitHead":"55bf87dacb3ad8bd856f827d2c0aae58d2f8aba3","_npmUser":{"name":"abd0r","email":"ra2157218@gmail.com"},"_npmVersion":"10.9.8","description":"Porcupine — a terminal AI agent that plans, acts inside explicit permission modes, and verifies its work. The whole Porcupine codebase ships as one package.","directories":{},"_nodeVersion":"22.23.1","dependencies":{"diff":"8.0.4","glob":"13.0.6","jiti":"2.7.0","yaml":"2.9.0","chalk":"5.6.2","ignore":"7.0.5","marked":"18.0.5","openai":"6.26.0","semver":"7.8.0","undici":"8.10.0","typebox":"1.3.7","kokoro-js":"1.2.1","minimatch":"10.2.5","cross-spawn":"7.0.6","highlight.js":"10.7.3","partial-json":"0.1.7","@google/genai":"1.52.0","@porcupineai/ai":"^0.1.65","hosted-git-info":"9.0.3","proper-lockfile":"4.1.2","@porcupineai/tui":"^0.1.65","http-proxy-agent":"7.0.2","@anthropic-ai/sdk":"0.91.1","https-proxy-agent":"7.0.6","@opentelemetry/api":"1.9.0","@porcupineai/client":"^0.1.65","@mistralai/mistralai":"2.2.6","get-east-asian-width":"1.6.0","@porcupineai/protocol":"^0.1.65","@mariozechner/clipboard":"0.3.9","@porcupineai/agent-core":"^0.1.65","@modelcontextprotocol/sdk":"1.30.0","@smithy/node-http-handler":"4.7.3","@moonshine-ai/moonshine-js":"0.1.29","@silvia-odwyer/photon-node":"0.3.4","@aws-sdk/client-bedrock-runtime":"3.1048.0"},"_hasShrinkwrap":false,"bundleDependencies":["@porcupineai/ai","@porcupineai/agent-core","@porcupineai/client","@porcupineai/protocol","@porcupineai/tui"],"_npmOperationalInternal":{"tmp":"tmp/porcupineai_0.1.67_1786610740313_0.4774028744403982","host":"s3://npm-registry-packages-npm-production"}},"0.1.68":{"name":"@porcupineai/porcupineai","version":"0.1.68","keywords":["ai","agent","cli","terminal","ai-agent","mcp","tui","porcupine"],"license":"MIT","_id":"@porcupineai/porcupineai@0.1.68","maintainers":[{"name":"abd0r","email":"ra2157218@gmail.com"}],"bin":{"porcupine":"Porcupine/packages/coding-agent/dist/cli.js"},"dist":{"shasum":"b461c2973365dfaf93b188f6d13e8cc41344daf4","tarball":"https://registry.npmjs.org/@porcupineai/porcupineai/-/porcupineai-0.1.68.tgz","fileCount":18468,"integrity":"sha512-Rkh4sAgBsqXM4bQhbWrMIPay6zvyVTPeLLNyldieJIuIAF7RtxP1/7fb7UA9FMEFifP9FX1AXATEkC5tR/Knqw==","signatures":[{"sig":"MEYCIQCXw4VhMipfAXWIsyEUF4WN+HUR9dsg/2XwFTH0jnwVAwIhANftpvbPug1k+5Z1hwhDqqZnZgyyjIHJmrkl5lX6G3PY","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":131466401},"main":"Porcupine/packages/coding-agent/dist/index.js","types":"./Porcupine/packages/coding-agent/dist/index.d.ts","engines":{"node":">=22.19.0"},"gitHead":"a46f0125846115007bef8307203e836dd5d66984","_npmUser":{"name":"abd0r","email":"ra2157218@gmail.com"},"_npmVersion":"10.9.8","description":"Porcupine — a terminal AI agent that plans, acts inside explicit permission modes, and verifies its work. The whole Porcupine codebase ships as one package.","directories":{},"_nodeVersion":"22.23.1","dependencies":{"diff":"8.0.4","glob":"13.0.6","jiti":"2.7.0","yaml":"2.9.0","chalk":"5.6.2","ignore":"7.0.5","marked":"18.0.5","openai":"6.26.0","semver":"7.8.0","undici":"8.10.0","typebox":"1.3.7","kokoro-js":"1.2.1","minimatch":"10.2.5","cross-spawn":"7.0.6","highlight.js":"10.7.3","partial-json":"0.1.7","@google/genai":"1.52.0","@porcupineai/ai":"^0.1.65","hosted-git-info":"9.0.3","proper-lockfile":"4.1.2","@porcupineai/tui":"^0.1.65","http-proxy-agent":"7.0.2","@anthropic-ai/sdk":"0.91.1","https-proxy-agent":"7.0.6","@opentelemetry/api":"1.9.0","@porcupineai/client":"^0.1.65","@mistralai/mistralai":"2.2.6","get-east-asian-width":"1.6.0","@porcupineai/protocol":"^0.1.65","@mariozechner/clipboard":"0.3.9","@porcupineai/agent-core":"^0.1.65","@modelcontextprotocol/sdk":"1.30.0","@smithy/node-http-handler":"4.7.3","@moonshine-ai/moonshine-js":"0.1.29","@silvia-odwyer/photon-node":"0.3.4","@aws-sdk/client-bedrock-runtime":"3.1048.0"},"_hasShrinkwrap":false,"bundleDependencies":["@porcupineai/ai","@porcupineai/agent-core","@porcupineai/client","@porcupineai/protocol","@porcupineai/tui"],"_npmOperationalInternal":{"tmp":"tmp/porcupineai_0.1.68_1786690696582_0.7407487686971519","host":"s3://npm-registry-packages-npm-production"}},"0.1.69":{"name":"@porcupineai/porcupineai","version":"0.1.69","keywords":["ai","agent","cli","terminal","ai-agent","mcp","tui","porcupine"],"license":"MIT","_id":"@porcupineai/porcupineai@0.1.69","maintainers":[{"name":"abd0r","email":"ra2157218@gmail.com"}],"bin":{"porcupine":"Porcupine/packages/coding-agent/dist/cli.js"},"dist":{"shasum":"d31271dfbcb7a1501ecfc8cb037de468a2b0e9db","tarball":"https://registry.npmjs.org/@porcupineai/porcupineai/-/porcupineai-0.1.69.tgz","fileCount":18498,"integrity":"sha512-Q/xWMCMzobXBwzGWZ3L2m6IQymJ+KPTlbGgXSQHBW/ExDOhVzBjyY2bR7j4uzE3whkV/sPjpq1PQrBKvpKx/Ig==","signatures":[{"sig":"MEQCIB24FrxTHlHNxuA/APto6tFGlzoQMhFDwSSOxI+MxjFcAiB2u3++DAnM+RoLZkbf/HJcfYzl4rQX72dHsOFD1htyIQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":131761501},"main":"Porcupine/packages/coding-agent/dist/index.js","types":"./Porcupine/packages/coding-agent/dist/index.d.ts","engines":{"node":">=22.19.0"},"gitHead":"fd248f49ae6fb2e0c9712787f3c379f792e68f9a","_npmUser":{"name":"abd0r","email":"ra2157218@gmail.com"},"_npmVersion":"10.9.8","description":"Porcupine — a terminal AI agent that plans, acts inside explicit permission modes, and verifies its work. The whole Porcupine codebase ships as one package.","directories":{},"_nodeVersion":"22.23.1","dependencies":{"diff":"8.0.4","glob":"13.0.6","jiti":"2.7.0","yaml":"2.9.0","chalk":"5.6.2","ignore":"7.0.5","marked":"18.0.5","openai":"6.26.0","semver":"7.8.0","undici":"8.10.0","typebox":"1.3.7","kokoro-js":"1.2.1","minimatch":"10.2.5","cross-spawn":"7.0.6","highlight.js":"10.7.3","partial-json":"0.1.7","@google/genai":"1.52.0","@porcupineai/ai":"^0.1.65","hosted-git-info":"9.0.3","proper-lockfile":"4.1.2","@porcupineai/tui":"^0.1.65","http-proxy-agent":"7.0.2","@anthropic-ai/sdk":"0.91.1","https-proxy-agent":"7.0.6","@opentelemetry/api":"1.9.0","@porcupineai/client":"^0.1.65","@mistralai/mistralai":"2.2.6","get-east-asian-width":"1.6.0","@porcupineai/protocol":"^0.1.65","@mariozechner/clipboard":"0.3.9","@porcupineai/agent-core":"^0.1.65","@modelcontextprotocol/sdk":"1.30.0","@smithy/node-http-handler":"4.7.3","@moonshine-ai/moonshine-js":"0.1.29","@silvia-odwyer/photon-node":"0.3.4","@aws-sdk/client-bedrock-runtime":"3.1048.0"},"_hasShrinkwrap":false,"bundleDependencies":["@porcupineai/ai","@porcupineai/agent-core","@porcupineai/client","@porcupineai/protocol","@porcupineai/tui"],"_npmOperationalInternal":{"tmp":"tmp/porcupineai_0.1.69_1786723523145_0.11097339080515822","host":"s3://npm-registry-packages-npm-production"}},"0.1.70":{"name":"@porcupineai/porcupineai","version":"0.1.70","keywords":["ai","agent","cli","terminal","ai-agent","mcp","tui","porcupine"],"license":"MIT","_id":"@porcupineai/porcupineai@0.1.70","maintainers":[{"name":"abd0r","email":"ra2157218@gmail.com"}],"bin":{"porcupine":"Porcupine/packages/coding-agent/dist/cli.js"},"dist":{"shasum":"1b177ec09a050fe79c6ae053428c3aa10b0ae2a7","tarball":"https://registry.npmjs.org/@porcupineai/porcupineai/-/porcupineai-0.1.70.tgz","fileCount":18532,"integrity":"sha512-35GdZvOwRboaExwvo6T3wGjRAKc8jatnBOhyMcApTstyQqQf0c1u2VyEbcEslrP3cVMVSdtjMWG3jhbbN/MABg==","signatures":[{"sig":"MEQCIAE48Y7eeocfLYPJORV7zl6paOfoCnUegCFWih3dnkIqAiAJkYMSgLjtFEqrc6FfYmaMh6r0X9HOxPOuEIl8uMlLLw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":132089625},"main":"Porcupine/packages/coding-agent/dist/index.js","types":"./Porcupine/packages/coding-agent/dist/index.d.ts","engines":{"node":">=22.19.0"},"gitHead":"ccad35df683d269a5f0c7989250065d357e99054","_npmUser":{"name":"abd0r","email":"ra2157218@gmail.com"},"_npmVersion":"10.9.8","description":"Porcupine — a terminal AI agent that plans, acts inside explicit permission modes, and verifies its work. The whole Porcupine codebase ships as one package.","directories":{},"_nodeVersion":"22.23.1","dependencies":{"diff":"8.0.4","glob":"13.0.6","jiti":"2.7.0","yaml":"2.9.0","chalk":"5.6.2","ignore":"7.0.5","marked":"18.0.5","openai":"6.26.0","semver":"7.8.0","undici":"8.10.0","typebox":"1.3.7","kokoro-js":"1.2.1","minimatch":"10.2.5","cross-spawn":"7.0.6","highlight.js":"10.7.3","partial-json":"0.1.7","@google/genai":"1.52.0","@porcupineai/ai":"^0.1.65","hosted-git-info":"9.0.3","proper-lockfile":"4.1.2","@porcupineai/tui":"^0.1.65","http-proxy-agent":"7.0.2","@anthropic-ai/sdk":"0.91.1","https-proxy-agent":"7.0.6","@opentelemetry/api":"1.9.0","@porcupineai/client":"^0.1.65","@mistralai/mistralai":"2.2.6","get-east-asian-width":"1.6.0","@porcupineai/protocol":"^0.1.65","@mariozechner/clipboard":"0.3.9","@porcupineai/agent-core":"^0.1.65","@modelcontextprotocol/sdk":"1.30.0","@smithy/node-http-handler":"4.7.3","@moonshine-ai/moonshine-js":"0.1.29","@silvia-odwyer/photon-node":"0.3.4","@aws-sdk/client-bedrock-runtime":"3.1048.0"},"_hasShrinkwrap":false,"bundleDependencies":["@porcupineai/ai","@porcupineai/agent-core","@porcupineai/client","@porcupineai/protocol","@porcupineai/tui"],"_npmOperationalInternal":{"tmp":"tmp/porcupineai_0.1.70_1786786633400_0.06788717086099805","host":"s3://npm-registry-packages-npm-production"}},"0.1.71":{"name":"@porcupineai/porcupineai","version":"0.1.71","keywords":["ai","agent","cli","terminal","ai-agent","mcp","tui","porcupine"],"license":"MIT","_id":"@porcupineai/porcupineai@0.1.71","maintainers":[{"name":"abd0r","email":"ra2157218@gmail.com"}],"bin":{"porcupine":"Porcupine/packages/coding-agent/dist/cli.js"},"dist":{"shasum":"36fd8b7b2c354993b232f926042fefb097332eb4","tarball":"https://registry.npmjs.org/@porcupineai/porcupineai/-/porcupineai-0.1.71.tgz","fileCount":18540,"integrity":"sha512-EHoISrIDJ6CGoz343Nz9JhE7vaECJOAlaYVFuYEFOZ6zYHUbsdOwcZqsl0HGusg8ixFtnFi0Y+/k9VJDKZt5Kw==","signatures":[{"sig":"MEUCIDC+q8bbeoYhBT0i9yfl0cjHm3ZNb6qZOzmFmWAjdNt/AiEAr+9lFUZZlP9CiqgILUMY7HaG53YaFhpTMTOCupcEc68=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":132153590},"main":"Porcupine/packages/coding-agent/dist/index.js","types":"./Porcupine/packages/coding-agent/dist/index.d.ts","engines":{"node":">=22.19.0"},"gitHead":"b0fb24469d4ae5acef4aa86f4a838b5451576676","_npmUser":{"name":"abd0r","email":"ra2157218@gmail.com"},"_npmVersion":"10.9.8","description":"Porcupine — a terminal AI agent that plans, acts inside explicit permission modes, and verifies its work. The whole Porcupine codebase ships as one package.","directories":{},"_nodeVersion":"22.23.1","dependencies":{"diff":"8.0.4","glob":"13.0.6","jiti":"2.7.0","yaml":"2.9.0","chalk":"5.6.2","ignore":"7.0.5","marked":"18.0.5","openai":"6.26.0","semver":"7.8.0","undici":"8.10.0","typebox":"1.3.7","kokoro-js":"1.2.1","minimatch":"10.2.5","cross-spawn":"7.0.6","highlight.js":"10.7.3","partial-json":"0.1.7","@google/genai":"1.52.0","@porcupineai/ai":"^0.1.65","hosted-git-info":"9.0.3","proper-lockfile":"4.1.2","@porcupineai/tui":"^0.1.65","http-proxy-agent":"7.0.2","@anthropic-ai/sdk":"0.91.1","https-proxy-agent":"7.0.6","@opentelemetry/api":"1.9.0","@porcupineai/client":"^0.1.65","@mistralai/mistralai":"2.2.6","get-east-asian-width":"1.6.0","@porcupineai/protocol":"^0.1.65","@mariozechner/clipboard":"0.3.9","@porcupineai/agent-core":"^0.1.65","@modelcontextprotocol/sdk":"1.30.0","@smithy/node-http-handler":"4.7.3","@moonshine-ai/moonshine-js":"0.1.29","@silvia-odwyer/photon-node":"0.3.4","@aws-sdk/client-bedrock-runtime":"3.1048.0"},"_hasShrinkwrap":false,"bundleDependencies":["@porcupineai/ai","@porcupineai/agent-core","@porcupineai/client","@porcupineai/protocol","@porcupineai/tui"],"_npmOperationalInternal":{"tmp":"tmp/porcupineai_0.1.71_1786873602552_0.4864117985383991","host":"s3://npm-registry-packages-npm-production"}},"0.1.72":{"name":"@porcupineai/porcupineai","version":"0.1.72","keywords":["ai","agent","cli","terminal","ai-agent","mcp","tui","porcupine"],"license":"MIT","_id":"@porcupineai/porcupineai@0.1.72","maintainers":[{"name":"abd0r","email":"ra2157218@gmail.com"}],"bin":{"porcupine":"Porcupine/packages/coding-agent/dist/cli.js"},"dist":{"shasum":"d4266a1f67219501d4445160da5719cd019c42c9","tarball":"https://registry.npmjs.org/@porcupineai/porcupineai/-/porcupineai-0.1.72.tgz","fileCount":18544,"integrity":"sha512-KEGDTT2y14Rp7PwBl2Qb+Jg6w3/0RpdBlMSAWHEPlHiIOaEctOOkX8SQcZcN3pebYj+lpShejHCMEHLsdykrKQ==","signatures":[{"sig":"MEQCIG215AdLdefuh714sXzlv9qQS29SrEJPd4i/V6pVtf5wAiBrwn9DAdCdKk3iMWrZLFTP2v6XuLwCX7QaDfHfqGi+GA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":132321304},"main":"Porcupine/packages/coding-agent/dist/index.js","types":"./Porcupine/packages/coding-agent/dist/index.d.ts","engines":{"node":">=22.19.0"},"gitHead":"7337ad481839672c5f4826f7d16c8e5d67363926","_npmUser":{"name":"abd0r","email":"ra2157218@gmail.com"},"_npmVersion":"10.9.8","description":"Porcupine — a terminal AI agent that plans, acts inside explicit permission modes, and verifies its work. The whole Porcupine codebase ships as one package.","directories":{},"_nodeVersion":"22.23.1","dependencies":{"diff":"8.0.4","glob":"13.0.6","jiti":"2.7.0","yaml":"2.9.0","chalk":"5.6.2","ignore":"7.0.5","marked":"18.0.5","openai":"6.26.0","semver":"7.8.0","undici":"8.10.0","typebox":"1.3.7","kokoro-js":"1.2.1","minimatch":"10.2.5","cross-spawn":"7.0.6","highlight.js":"10.7.3","partial-json":"0.1.7","@google/genai":"1.52.0","@porcupineai/ai":"^0.1.65","hosted-git-info":"9.0.3","proper-lockfile":"4.1.2","@porcupineai/tui":"^0.1.65","http-proxy-agent":"7.0.2","@anthropic-ai/sdk":"0.91.1","https-proxy-agent":"7.0.6","@opentelemetry/api":"1.9.0","@porcupineai/client":"^0.1.65","@mistralai/mistralai":"2.2.6","get-east-asian-width":"1.6.0","@porcupineai/protocol":"^0.1.65","@mariozechner/clipboard":"0.3.9","@porcupineai/agent-core":"^0.1.65","@modelcontextprotocol/sdk":"1.30.0","@smithy/node-http-handler":"4.7.3","@moonshine-ai/moonshine-js":"0.1.29","@silvia-odwyer/photon-node":"0.3.4","@aws-sdk/client-bedrock-runtime":"3.1048.0"},"_hasShrinkwrap":false,"bundleDependencies":["@porcupineai/ai","@porcupineai/agent-core","@porcupineai/client","@porcupineai/protocol","@porcupineai/tui"],"_npmOperationalInternal":{"tmp":"tmp/porcupineai_0.1.72_1786882772335_0.31986707416393423","host":"s3://npm-registry-packages-npm-production"}},"0.1.73":{"name":"@porcupineai/porcupineai","version":"0.1.73","keywords":["ai","agent","cli","terminal","ai-agent","mcp","tui","porcupine"],"license":"MIT","_id":"@porcupineai/porcupineai@0.1.73","maintainers":[{"name":"abd0r","email":"ra2157218@gmail.com"}],"bin":{"porcupine":"Porcupine/packages/coding-agent/dist/cli.js"},"dist":{"shasum":"2628090615867df9a60fb7ea0974183b32b3af05","tarball":"https://registry.npmjs.org/@porcupineai/porcupineai/-/porcupineai-0.1.73.tgz","fileCount":18562,"integrity":"sha512-Rjw/oTve6eS/SKsLGxktYyalLRos0oyTBAtziis3MJdkYpC0HeXD6otXYpLHYQhlxdqbdU5C9Qr8I4joKfWCxw==","signatures":[{"sig":"MEQCIDHmgm1dVKW+L/aI+ghNfFRThmFFFyab3IivuGkTXWOWAiAat72GpYK2Qu75Jw3AUgwiorwE7+YKqHwUtEaHARk9Lg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":132477212},"main":"Porcupine/packages/coding-agent/dist/index.js","types":"./Porcupine/packages/coding-agent/dist/index.d.ts","engines":{"node":">=22.19.0"},"gitHead":"c8226297c47135744d45d63af0c4b3a8a4da6524","_npmUser":{"name":"abd0r","email":"ra2157218@gmail.com"},"_npmVersion":"10.9.8","description":"Porcupine — a terminal AI agent that plans, acts inside explicit permission modes, and verifies its work. The whole Porcupine codebase ships as one package.","directories":{},"_nodeVersion":"22.23.1","dependencies":{"diff":"8.0.4","glob":"13.0.6","jiti":"2.7.0","yaml":"2.9.0","chalk":"5.6.2","ignore":"7.0.5","marked":"18.0.5","openai":"6.26.0","semver":"7.8.0","undici":"8.10.0","typebox":"1.3.7","kokoro-js":"1.2.1","minimatch":"10.2.5","cross-spawn":"7.0.6","highlight.js":"10.7.3","partial-json":"0.1.7","@google/genai":"1.52.0","@porcupineai/ai":"^0.1.65","hosted-git-info":"9.0.3","proper-lockfile":"4.1.2","@porcupineai/tui":"^0.1.65","http-proxy-agent":"7.0.2","@anthropic-ai/sdk":"0.91.1","https-proxy-agent":"7.0.6","@opentelemetry/api":"1.9.0","@porcupineai/client":"^0.1.65","@mistralai/mistralai":"2.2.6","get-east-asian-width":"1.6.0","@porcupineai/protocol":"^0.1.65","@mariozechner/clipboard":"0.3.9","@porcupineai/agent-core":"^0.1.65","@modelcontextprotocol/sdk":"1.30.0","@smithy/node-http-handler":"4.7.3","@moonshine-ai/moonshine-js":"0.1.29","@silvia-odwyer/photon-node":"0.3.4","@aws-sdk/client-bedrock-runtime":"3.1048.0"},"_hasShrinkwrap":false,"bundleDependencies":["@porcupineai/ai","@porcupineai/agent-core","@porcupineai/client","@porcupineai/protocol","@porcupineai/tui"],"_npmOperationalInternal":{"tmp":"tmp/porcupineai_0.1.73_1787239921185_0.243116810986858","host":"s3://npm-registry-packages-npm-production"}},"0.1.74":{"name":"@porcupineai/porcupineai","version":"0.1.74","keywords":["ai","agent","cli","terminal","ai-agent","mcp","tui","porcupine"],"license":"MIT","_id":"@porcupineai/porcupineai@0.1.74","maintainers":[{"name":"abd0r","email":"ra2157218@gmail.com"}],"bin":{"porcupine":"Porcupine/packages/coding-agent/dist/cli.js"},"dist":{"shasum":"27dcdd94c6cab9ec5199ac960ae57a3c83d6ed1a","tarball":"https://registry.npmjs.org/@porcupineai/porcupineai/-/porcupineai-0.1.74.tgz","fileCount":18565,"integrity":"sha512-wLxd/v4B57nEA0NVTOzibpDeUTqrdtj8RyD2ZNTst4thdy4krpEbf1gUU6wt6oPHK1K5aEH7paOk2YKuikTilQ==","signatures":[{"sig":"MEQCIFoMmlWgxS5gIysqE3vEcpTYF5GoTxtmQkb1lz3RszDTAiBwggyA3vJhtUH7EN3jEXo34j14yRGOUAn4YjKT+Zx2Pw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":132579271},"main":"Porcupine/packages/coding-agent/dist/index.js","types":"./Porcupine/packages/coding-agent/dist/index.d.ts","engines":{"node":">=22.19.0"},"gitHead":"2d2087ac83e348cc0f4b25adfd1a8487270d3dbe","_npmUser":{"name":"abd0r","email":"ra2157218@gmail.com"},"_npmVersion":"10.9.8","description":"Porcupine — a terminal AI agent that plans, acts inside explicit permission modes, and verifies its work. The whole Porcupine codebase ships as one package.","directories":{},"_nodeVersion":"22.23.1","dependencies":{"diff":"8.0.4","glob":"13.0.6","jiti":"2.7.0","yaml":"2.9.0","chalk":"5.6.2","ignore":"7.0.5","marked":"18.0.5","openai":"6.26.0","semver":"7.8.0","undici":"8.10.0","typebox":"1.3.7","kokoro-js":"1.2.1","minimatch":"10.2.5","cross-spawn":"7.0.6","highlight.js":"10.7.3","partial-json":"0.1.7","@google/genai":"1.52.0","@porcupineai/ai":"^0.1.65","hosted-git-info":"9.0.3","proper-lockfile":"4.1.2","@porcupineai/tui":"^0.1.65","http-proxy-agent":"7.0.2","@anthropic-ai/sdk":"0.91.1","https-proxy-agent":"7.0.6","@opentelemetry/api":"1.9.0","@porcupineai/client":"^0.1.65","@mistralai/mistralai":"2.2.6","get-east-asian-width":"1.6.0","@porcupineai/protocol":"^0.1.65","@mariozechner/clipboard":"0.3.9","@porcupineai/agent-core":"^0.1.65","@modelcontextprotocol/sdk":"1.30.0","@smithy/node-http-handler":"4.7.3","@moonshine-ai/moonshine-js":"0.1.29","@silvia-odwyer/photon-node":"0.3.4","@aws-sdk/client-bedrock-runtime":"3.1048.0"},"_hasShrinkwrap":false,"bundleDependencies":["@porcupineai/ai","@porcupineai/agent-core","@porcupineai/client","@porcupineai/protocol","@porcupineai/tui"],"_npmOperationalInternal":{"tmp":"tmp/porcupineai_0.1.74_1788266101789_0.34000684264044767","host":"s3://npm-registry-packages-npm-production"}},"0.1.75":{"name":"@porcupineai/porcupineai","version":"0.1.75","keywords":["ai","agent","cli","terminal","ai-agent","mcp","tui","porcupine"],"license":"MIT","_id":"@porcupineai/porcupineai@0.1.75","maintainers":[{"name":"abd0r","email":"ra2157218@gmail.com"}],"bin":{"porcupine":"Porcupine/packages/coding-agent/dist/cli.js"},"dist":{"shasum":"508ae9f22fd8c365cfd3f2505147b7ebfc9da6f0","tarball":"https://registry.npmjs.org/@porcupineai/porcupineai/-/porcupineai-0.1.75.tgz","fileCount":18596,"integrity":"sha512-E2Vq2VmlV632EBtOlt4K6AmcZDsZI9u4mk+7chXNl7t3GqAjj5E9prNYTF4uthfYR8S6fzyg4tMhOX5NEVQK/Q==","signatures":[{"sig":"MEQCIBiFP0OShK8/RoCUD5NPMm/V0yOvu8/CPD8ffw4+WGUPAiAfi3RA+YeHNAYYdPnbc9DzXczPKg9MqPJxLP3Gz41PBw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQDOfqEuv6OUawi7gNlwwcKiu87oJJb6bT2Ib4wi2UrUWgIhAL4eZupq4EFwJRWDrrmGLNemVX3EurOO/aGCwOM5V2YZ","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":132881139},"main":"Porcupine/packages/coding-agent/dist/index.js","types":"./Porcupine/packages/coding-agent/dist/index.d.ts","engines":{"node":">=22.19.0"},"gitHead":"2aff44f9ef52a9b69aba9b1fe60aa28360dd87cc","_npmUser":{"name":"abd0r","email":"ra2157218@gmail.com"},"_npmVersion":"10.9.8","description":"Porcupine — a terminal AI agent that plans, acts inside explicit permission modes, and verifies its work. The whole Porcupine codebase ships as one package.","directories":{},"_nodeVersion":"22.23.1","dependencies":{"diff":"8.0.4","glob":"13.0.6","jiti":"2.7.0","yaml":"2.9.0","chalk":"5.6.2","ignore":"7.0.5","marked":"18.0.5","openai":"6.26.0","semver":"7.8.0","undici":"8.10.0","typebox":"1.3.7","kokoro-js":"1.2.1","minimatch":"10.2.5","cross-spawn":"7.0.6","highlight.js":"10.7.3","partial-json":"0.1.7","@google/genai":"1.52.0","@porcupineai/ai":"^0.1.65","hosted-git-info":"9.0.3","proper-lockfile":"4.1.2","@porcupineai/tui":"^0.1.65","http-proxy-agent":"7.0.2","@anthropic-ai/sdk":"0.91.1","https-proxy-agent":"7.0.6","@opentelemetry/api":"1.9.0","@porcupineai/client":"^0.1.65","@mistralai/mistralai":"2.2.6","get-east-asian-width":"1.6.0","@porcupineai/protocol":"^0.1.65","@mariozechner/clipboard":"0.3.9","@porcupineai/agent-core":"^0.1.65","@modelcontextprotocol/sdk":"1.30.0","@smithy/node-http-handler":"4.7.3","@moonshine-ai/moonshine-js":"0.1.29","@silvia-odwyer/photon-node":"0.3.4","@aws-sdk/client-bedrock-runtime":"3.1048.0"},"_hasShrinkwrap":false,"bundleDependencies":["@porcupineai/ai","@porcupineai/agent-core","@porcupineai/client","@porcupineai/protocol","@porcupineai/tui"],"_npmOperationalInternal":{"tmp":"tmp/porcupineai_0.1.75_1788553847313_0.5354783794183426","host":"s3://npm-registry-packages-npm-production"}},"0.1.76":{"name":"@porcupineai/porcupineai","version":"0.1.76","keywords":["ai","agent","cli","terminal","ai-agent","mcp","tui","porcupine"],"license":"MIT","_id":"@porcupineai/porcupineai@0.1.76","maintainers":[{"name":"abd0r","email":"ra2157218@gmail.com"}],"bin":{"porcupine":"Porcupine/packages/coding-agent/dist/cli.js"},"dist":{"shasum":"0236ea12626c270ecbd9107fae191beb4f48f65c","tarball":"https://registry.npmjs.org/@porcupineai/porcupineai/-/porcupineai-0.1.76.tgz","fileCount":18617,"integrity":"sha512-ufa7HLcl1zwV/UsEeJrEa4HeIRHlEbYokbko66GssLASu/9M5rTMxyl5NJqQu4o0K0BdpALPI8I/GKCtuDXoVg==","signatures":[{"sig":"MEYCIQCMDP7BafYqDymCMycP/ODdmSfjtL9oAkMuZuc8RsOFWAIhAN+rN3d43E3BXokdHOVy3iT9i6jSScYKjfHK4Tt9Ao9v","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQDzgHCx++XQrwZuVx4g/bXv0J/0MEj5LRt7/XZ1lQiGagIhAKnH+XDNmSW3JDnHGMnoqmtwNM1jLYJmmltTan4kMwCv","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":133121633},"main":"Porcupine/packages/coding-agent/dist/index.js","types":"./Porcupine/packages/coding-agent/dist/index.d.ts","engines":{"node":">=22.19.0"},"gitHead":"53343e852e950cbfe72cda35951cab65ab529bb4","_npmUser":{"name":"abd0r","email":"ra2157218@gmail.com"},"_npmVersion":"10.9.8","description":"Porcupine — a terminal AI agent that plans, acts inside explicit permission modes, and verifies its work. The whole Porcupine codebase ships as one package.","directories":{},"_nodeVersion":"22.23.1","dependencies":{"diff":"8.0.4","glob":"13.0.6","jiti":"2.7.0","yaml":"2.9.0","chalk":"5.6.2","ignore":"7.0.5","marked":"18.0.5","openai":"6.26.0","semver":"7.8.0","undici":"8.10.0","typebox":"1.3.7","kokoro-js":"1.2.1","minimatch":"10.2.5","cross-spawn":"7.0.6","highlight.js":"10.7.3","partial-json":"0.1.7","@google/genai":"1.52.0","@porcupineai/ai":"^0.1.65","hosted-git-info":"9.0.3","proper-lockfile":"4.1.2","@porcupineai/tui":"^0.1.65","http-proxy-agent":"7.0.2","@anthropic-ai/sdk":"0.91.1","https-proxy-agent":"7.0.6","@opentelemetry/api":"1.9.0","@porcupineai/client":"^0.1.65","@mistralai/mistralai":"2.2.6","get-east-asian-width":"1.6.0","@porcupineai/protocol":"^0.1.65","@mariozechner/clipboard":"0.3.9","@porcupineai/agent-core":"^0.1.65","@modelcontextprotocol/sdk":"1.30.0","@smithy/node-http-handler":"4.7.3","@moonshine-ai/moonshine-js":"0.1.29","@silvia-odwyer/photon-node":"0.3.4","@aws-sdk/client-bedrock-runtime":"3.1048.0"},"_hasShrinkwrap":false,"bundleDependencies":["@porcupineai/ai","@porcupineai/agent-core","@porcupineai/client","@porcupineai/protocol","@porcupineai/tui"],"_npmOperationalInternal":{"tmp":"tmp/porcupineai_0.1.76_1788627563138_0.24792315295527145","host":"s3://npm-registry-packages-npm-production"}},"0.1.77":{"name":"@porcupineai/porcupineai","version":"0.1.77","keywords":["ai","agent","cli","terminal","ai-agent","mcp","tui","porcupine"],"license":"MIT","_id":"@porcupineai/porcupineai@0.1.77","maintainers":[{"name":"abd0r","email":"ra2157218@gmail.com"}],"bin":{"porcupine":"Porcupine/packages/coding-agent/dist/cli.js"},"dist":{"shasum":"a7d1d2ab16b1b603d7b53ca7b9dd71e49a944447","tarball":"https://registry.npmjs.org/@porcupineai/porcupineai/-/porcupineai-0.1.77.tgz","fileCount":18627,"integrity":"sha512-u7zSbGRTl4ZsZa7+QBk4O2tUCmKfD+6FovHvXUha6XhSG0BbTK+EzkMvcBBgoNcN1FMYul2/a8Ya97Q5UwDeOw==","signatures":[{"sig":"MEMCHwPZSsB9vaIp3pV7j8b6X5NK9qnOoBhH4KumJJCKpLwCIAofLKJepb0ex7NqpktVm8fidoHhhE7eeUVvEKTUATIE","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIEZQ6vFPbQSnBNQ8ZsFs73vmcdticht7yGyjHdDhPCNkAiBF8yQHbqYVuIvB0vu1GEp0CnrRfyCIoEXP5h0jNVP0MQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":133238746},"main":"Porcupine/packages/coding-agent/dist/index.js","types":"./Porcupine/packages/coding-agent/dist/index.d.ts","engines":{"node":">=22.19.0"},"gitHead":"cb9144a63ce88487a95ea06daf568faaa34ee067","_npmUser":{"name":"abd0r","email":"ra2157218@gmail.com"},"_npmVersion":"10.9.8","description":"Porcupine — a terminal AI agent that plans, acts inside explicit permission modes, and verifies its work. The whole Porcupine codebase ships as one package.","directories":{},"_nodeVersion":"22.23.1","dependencies":{"diff":"8.0.4","glob":"13.0.6","jiti":"2.7.0","yaml":"2.9.0","chalk":"5.6.2","ignore":"7.0.5","marked":"18.0.5","openai":"6.26.0","semver":"7.8.0","undici":"8.10.0","typebox":"1.3.7","kokoro-js":"1.2.1","minimatch":"10.2.5","cross-spawn":"7.0.6","highlight.js":"10.7.3","partial-json":"0.1.7","@google/genai":"1.52.0","@porcupineai/ai":"^0.1.65","hosted-git-info":"9.0.3","proper-lockfile":"4.1.2","@porcupineai/tui":"^0.1.65","http-proxy-agent":"7.0.2","@anthropic-ai/sdk":"0.91.1","https-proxy-agent":"7.0.6","@opentelemetry/api":"1.9.0","@porcupineai/client":"^0.1.65","@mistralai/mistralai":"2.2.6","get-east-asian-width":"1.6.0","@porcupineai/protocol":"^0.1.65","@mariozechner/clipboard":"0.3.9","@porcupineai/agent-core":"^0.1.65","@modelcontextprotocol/sdk":"1.30.0","@smithy/node-http-handler":"4.7.3","@moonshine-ai/moonshine-js":"0.1.29","@silvia-odwyer/photon-node":"0.3.4","@aws-sdk/client-bedrock-runtime":"3.1048.0"},"_hasShrinkwrap":false,"bundleDependencies":["@porcupineai/ai","@porcupineai/agent-core","@porcupineai/client","@porcupineai/protocol","@porcupineai/tui"],"_npmOperationalInternal":{"tmp":"tmp/porcupineai_0.1.77_1788634042774_0.5111756459885797","host":"s3://npm-registry-packages-npm-production"}},"0.1.78":{"name":"@porcupineai/porcupineai","version":"0.1.78","keywords":["ai","agent","cli","terminal","ai-agent","mcp","tui","porcupine"],"license":"MIT","_id":"@porcupineai/porcupineai@0.1.78","maintainers":[{"name":"abd0r","email":"ra2157218@gmail.com"}],"bin":{"porcupine":"Porcupine/packages/coding-agent/dist/cli.js"},"dist":{"shasum":"ae8e6e83d6d17f48c8b66a72f5119e6f5580d85b","tarball":"https://registry.npmjs.org/@porcupineai/porcupineai/-/porcupineai-0.1.78.tgz","fileCount":18627,"integrity":"sha512-uBzF+BsTVW/NELXg/7N8Ai3ceCLHX+M3uWunzfV7LibQTq4kMJsEFH1jZIMEpdOYrJNju/Rjf9+pdW8irZBnjQ==","signatures":[{"sig":"MEUCICzLvu3Ig2mP6n0SYpNhk7zjvU49O1op1Uk7sbeNnUEIAiEA+StNKkcLlFy7Ip+3MpXCl+xOl5vjp1+0KNm/VShGS6Y=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIC+byQst0HPpV2toPfe/O4SxBPgBGLKMx2jzRCVKlHfYAiBQJ8GjG1dr5CkPxXBZS/WteZqEuHaohXasmAbGi2cDvw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":133222802},"main":"Porcupine/packages/coding-agent/dist/index.js","types":"./Porcupine/packages/coding-agent/dist/index.d.ts","engines":{"node":">=22.19.0"},"gitHead":"8d2f33713b6feb1c3d1dbeb0bcc7c8837f9864d2","_npmUser":{"name":"abd0r","email":"ra2157218@gmail.com"},"_npmVersion":"10.9.8","description":"Porcupine — a terminal AI agent that plans, acts inside explicit permission modes, and verifies its work. The whole Porcupine codebase ships as one package.","directories":{},"_nodeVersion":"22.23.1","dependencies":{"diff":"8.0.4","glob":"13.0.6","jiti":"2.7.0","yaml":"2.9.0","chalk":"5.6.2","ignore":"7.0.5","marked":"18.0.5","openai":"6.26.0","semver":"7.8.0","undici":"8.10.0","typebox":"1.3.7","kokoro-js":"1.2.1","minimatch":"10.2.5","cross-spawn":"7.0.6","highlight.js":"10.7.3","partial-json":"0.1.7","@google/genai":"1.52.0","@porcupineai/ai":"^0.1.65","hosted-git-info":"9.0.3","proper-lockfile":"4.1.2","@porcupineai/tui":"^0.1.65","http-proxy-agent":"7.0.2","@anthropic-ai/sdk":"0.91.1","https-proxy-agent":"7.0.6","@opentelemetry/api":"1.9.0","@porcupineai/client":"^0.1.65","@mistralai/mistralai":"2.2.6","get-east-asian-width":"1.6.0","@porcupineai/protocol":"^0.1.65","@mariozechner/clipboard":"0.3.9","@porcupineai/agent-core":"^0.1.65","@modelcontextprotocol/sdk":"1.30.0","@smithy/node-http-handler":"4.7.3","@moonshine-ai/moonshine-js":"0.1.29","@silvia-odwyer/photon-node":"0.3.4","@aws-sdk/client-bedrock-runtime":"3.1048.0"},"_hasShrinkwrap":false,"bundleDependencies":["@porcupineai/ai","@porcupineai/agent-core","@porcupineai/client","@porcupineai/protocol","@porcupineai/tui"],"_npmOperationalInternal":{"tmp":"tmp/porcupineai_0.1.78_1788779746112_0.6337430640204453","host":"s3://npm-registry-packages-npm-production"}},"0.1.79":{"_id":"@porcupineai/porcupineai@0.1.79","bin":{"porcupine":"Porcupine/packages/coding-agent/dist/cli.js"},"dist":{"shasum":"70da94dfad9bfc27ad49d471edb45304c685f25b","tarball":"https://registry.npmjs.org/@porcupineai/porcupineai/-/porcupineai-0.1.79.tgz","fileCount":6602,"integrity":"sha512-Jp1ks5P2uMu6BZKR1ocb4cRWRHsFte2JshUrCSFAvAjTEDx5yNHjtMkcIpCLa85YwP+aUsfcb0ALOcO7pEb1Ag==","signatures":[{"sig":"MEUCIQCB69t5aaZ78whAYIbh6aUEF/kKwBxdcyEPHCmO5voP5QIgC7G54luOnYWMaVis4Rw0YxI4rIMGgeJim+kr7H+89Cg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIE/pmudp75NwNX+SIZOlUbPYubSOwCwN893A9F0rG8s3AiEAuySFjieZUlo9/TInWw/i/1QB7y6Zu7C7EdP2/71WW48="}],"unpackedSize":233257212},"main":"Porcupine/packages/coding-agent/dist/index.js","name":"@porcupineai/porcupineai","types":"./Porcupine/packages/coding-agent/dist/index.d.ts","engines":{"node":">=22.19.0"},"gitHead":"c85d327854b333760809e7d955c902560d730c98","license":"MIT","version":"0.1.79","_npmUser":{"name":"abd0r","email":"ra2157218@gmail.com"},"keywords":["ai","agent","cli","terminal","ai-agent","mcp","tui","porcupine"],"_npmVersion":"10.9.8","description":"Porcupine — a terminal AI agent that plans, acts inside explicit permission modes, and verifies its work. The whole Porcupine codebase ships as one package.","directories":{},"maintainers":[{"name":"abd0r","email":"ra2157218@gmail.com"}],"_nodeVersion":"22.23.1","dependencies":{"diff":"8.0.4","glob":"13.0.6","jiti":"2.7.0","yaml":"2.9.0","chalk":"5.6.2","ignore":"7.0.5","marked":"18.0.5","openai":"6.26.0","semver":"7.8.0","undici":"8.10.0","typebox":"1.3.7","kokoro-js":"1.2.1","minimatch":"10.2.5","cross-spawn":"7.0.6","highlight.js":"10.7.3","partial-json":"0.1.7","@google/genai":"1.52.0","@porcupineai/ai":"^0.1.65","hosted-git-info":"9.0.3","proper-lockfile":"4.1.2","@porcupineai/tui":"^0.1.65","http-proxy-agent":"7.0.2","@anthropic-ai/sdk":"0.91.1","https-proxy-agent":"7.0.6","@opentelemetry/api":"1.9.0","@porcupineai/client":"^0.1.65","@mistralai/mistralai":"2.2.6","get-east-asian-width":"1.6.0","@porcupineai/protocol":"^0.1.65","@mariozechner/clipboard":"0.3.9","@porcupineai/agent-core":"^0.1.65","@modelcontextprotocol/sdk":"1.30.0","@smithy/node-http-handler":"4.7.3","@moonshine-ai/moonshine-js":"0.1.29","@silvia-odwyer/photon-node":"0.3.4","@aws-sdk/client-bedrock-runtime":"3.1048.0"},"_hasShrinkwrap":false,"bundleDependencies":["@porcupineai/ai","@porcupineai/agent-core","@porcupineai/client","@porcupineai/protocol","@porcupineai/tui"],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/porcupineai_0.1.79_1789608167099_0.12866865325879173"}}},"time":{"created":"2026-08-06T15:02:21.766Z","modified":"2026-09-17T01:22:50.162Z","0.1.2":"2026-08-06T15:02:22.417Z","0.1.3":"2026-08-06T15:14:02.664Z","0.1.4":"2026-08-06T15:15:19.865Z","0.1.41":"2026-08-06T15:36:56.490Z","0.1.45":"2026-08-06T22:06:54.781Z","0.1.50":"2026-08-07T23:40:33.058Z","0.1.51":"2026-08-07T23:43:15.550Z","0.1.52":"2026-08-08T01:37:25.728Z","0.1.53":"2026-08-08T03:50:22.611Z","0.1.54":"2026-08-08T03:52:40.116Z","0.1.55":"2026-08-08T06:12:15.239Z","0.1.56":"2026-08-08T08:28:00.986Z","0.1.57":"2026-08-08T22:27:41.342Z","0.1.58":"2026-08-08T23:06:04.998Z","0.1.59":"2026-08-09T00:11:05.832Z","0.1.60":"2026-08-10T23:46:06.346Z","0.1.61":"2026-08-11T01:49:30.141Z","0.1.62":"2026-08-11T02:59:10.777Z","0.1.63":"2026-08-11T10:27:37.380Z","0.1.64":"2026-08-11T12:02:40.593Z","0.1.65":"2026-08-12T05:02:16.481Z","0.1.66":"2026-08-12T05:19:21.613Z","0.1.67":"2026-08-13T08:45:40.732Z","0.1.68":"2026-08-14T06:58:17.083Z","0.1.69":"2026-08-14T16:05:23.720Z","0.1.70":"2026-08-15T09:37:13.914Z","0.1.71":"2026-08-16T09:46:43.066Z","0.1.72":"2026-08-16T12:19:32.935Z","0.1.73":"2026-08-20T15:32:01.778Z","0.1.74":"2026-09-01T12:35:02.371Z","0.1.75":"2026-09-04T20:30:47.791Z","0.1.76":"2026-09-05T16:59:23.579Z","0.1.77":"2026-09-05T18:47:23.266Z","0.1.78":"2026-09-07T11:15:46.528Z","0.1.79":"2026-09-17T01:22:48.545Z"},"license":"MIT","keywords":["ai","agent","cli","terminal","ai-agent","mcp","tui","porcupine"],"description":"Porcupine — a terminal AI agent that plans, acts inside explicit permission modes, and verifies its work. The whole Porcupine codebase ships as one package.","maintainers":[{"name":"abd0r","email":"ra2157218@gmail.com"}],"readme":"<p align=\"center\">\n  <img src=\"https://raw.githubusercontent.com/Abd0r/porcupineai/main/Porcupine/packages/coding-agent/assets/porcupine-banner.png\" alt=\"Porcupine\" width=\"720\" />\n</p>\n\n<p align=\"center\">\n  <a href=\"https://github.com/Abd0r/porcupineai/actions/workflows/ci.yml\"><img src=\"https://github.com/Abd0r/porcupineai/actions/workflows/ci.yml/badge.svg\" alt=\"CI\" /></a>\n  <a href=\"https://www.npmjs.com/package/@porcupineai/porcupineai\"><img src=\"https://img.shields.io/npm/v/@porcupineai/porcupineai\" alt=\"npm version\" /></a>\n  <a href=\"https://www.npmjs.com/package/@porcupineai/porcupineai\"><img src=\"https://img.shields.io/npm/dt/@porcupineai/porcupineai\" alt=\"npm downloads\" /></a>\n  <a href=\"LICENSE\"><img src=\"https://img.shields.io/badge/License-MIT-EA9B34\" alt=\"MIT License\" /></a>\n  <a href=\"https://github.com/Abd0r/porcupineai\"><img src=\"https://img.shields.io/github/stars/Abd0r/porcupineai\" alt=\"GitHub stars\" /></a>\n</p>\n\n<h3 align=\"center\">The open-source terminal AI agent built for safe autonomy.</h3>\n\n<p align=\"center\">\n  Give Porcupine a goal. It reasons, routes capabilities, uses tools, delegates work, verifies the result, and keeps risky action inside the permission boundary you control.\n</p>\n\n<p align=\"center\">\n  <a href=\"#start-in-60-seconds\"><strong>Get started</strong></a> ·\n  <a href=\"#why-porcupine\">Why Porcupine</a> ·\n  <a href=\"#what-it-can-do\">Capabilities</a> ·\n  <a href=\"#evaluation\">Evaluation</a> ·\n  <a href=\"#safety-boundaries\">Safety</a> ·\n  <a href=\"#documentation\">Documentation</a>\n</p>\n\n<p align=\"center\">\n  Built on top of <a href=\"https://github.com/earendil-works/pi\">Pi</a> (MIT).\n</p>\n\n---\n\n## Why Porcupine\n\nPorcupine does not treat autonomy as all-or-nothing. You choose how much it may do before asking.\n\n| | Porcupine |\n|---|---|\n| **Safe autonomy** | Ask, Normal, and Auto modes let you choose the permission boundary. Normal asks on flagged actions; Auto applies a fail-closed safety gate. Hardline destructive actions remain blocked. |\n| **End-to-end work** | Porcupine reads the real project, chooses tools and skills, edits files, runs checks, recovers from failures, and reports evidence instead of stopping at a plausible answer. |\n| **Native-first** | It works on your computer with your tools and files by default. Gondolin, Docker, and OpenShell isolation remain opt-in when you want a stronger boundary. |\n| **Parallel execution** | Context-isolated sub-agents can research, inspect, implement, and review in parallel. Web of Thoughts lets them coordinate live. |\n| **One session, more surfaces** | Continue the same attended session from the terminal, Telegram, Discord, or iMessage. Use headless and server modes for scripts, CI, IDEs, and clients. |\n| **Open capability system** | Tools and skills live in 18 capability stacks. Extend Porcupine through Agent Skills, MCP, TypeScript extensions, packages, prompts, themes, and custom providers. |\n\n## Start in 60 seconds\n\nRequires **Node.js 22.19+**.\n\n```bash\nnpm install -g @porcupineai/porcupineai\nporcupine\n```\n\nThen connect a provider inside the TUI:\n\n```text\n/login cline\n/model\n/guide\n```\n\nCline provides a free API route. Select `cline/deepseek/deepseek-v4-flash` from `/model`, or connect another supported provider with `/login`.\n\nGive it a real goal:\n\n```text\nReview this repository, explain how it works, run its checks, and make the safest high-impact improvement you can verify.\n```\n\nPorcupine decides whether the turn needs a direct answer, tools, a skill, a plan, or parallel workers. It continues until the requested result is real or a genuine decision requires you.\n\n<details>\n<summary><strong>Build from source</strong></summary>\n\n```bash\ngit clone https://github.com/Abd0r/porcupineai.git\ncd porcupineai/Porcupine\nnpm install --ignore-scripts\nnpm run build\nnpm link\n```\n\n</details>\n\n## How work flows\n\n```mermaid\nflowchart LR\n    G[Your goal] --> R[Reason and route]\n    R --> B{Permission and safety boundaries}\n    B --> T[Tools and skills]\n    B --> A[Parallel sub-agents]\n    T --> V[Tests and verification]\n    A --> V\n    V --> E[Evidence-backed result]\n```\n\nThe model leads the work. The harness supplies the capability tree, permission boundary, durable state, recovery paths, and verification loop.\n\n## Choose the autonomy level\n\n| Mode | Behavior | Best for |\n|---|---|---|\n| **Ask** | Confirms every shell command and file mutation | Unfamiliar repositories and maximum oversight |\n| **Normal** | Runs safe operations and asks on flagged actions | Everyday interactive work |\n| **Auto** | Works autonomously while flagged shell actions pass through a fail-closed safety gate | Longer goals in trusted projects |\n\nReasoning depth is separate from permission. `/reasoning` and `/adaptive` change thinking effort; `/modes` changes what Porcupine may do without asking.\n\nAuto is not unrestricted. Hardline destructive actions remain blocked in every mode.\n\n## What it can do\n\n| Faculty | Capabilities |\n|---|---|\n| **Build and maintain** | Read and edit repositories, run shell commands, debug failures, use Git, build, test, review, and document changes. |\n| **Develop for the web** | Frontend and backend workflows, accessibility, responsive design, APIs, authentication, migrations, observability, browser QA, performance, SEO, and deployment readiness. |\n| **Research** | Free web-search cascade, page extraction, Reddit and arXiv search, evidence grading, durable literature tracking, and parallel deep research. |\n| **Use the web and computer** | Playwright browser tools, semantic snapshots, screenshots, responsive checks, diagnostics, and confirmation-gated native desktop interaction. |\n| **Coordinate** | Up to three parallel sub-agents by default, fresh context windows, hard step budgets, live progress, instant reports, steering, cancellation, and WoT peer messaging. |\n| **Remember and continue** | Durable sessions, branching, compaction, memory, reusable project workspaces, and cross-session history search. |\n| **Automate attended work** | Durable tasks, success and failure chains, file and script triggers, and UTC Cron schedules while the interactive session is open and idle. |\n| **Communicate** | Telegram, Discord, and iMessage bridges; email over IMAP/SMTP; free X search and reading; local drafts and compose-then-paste posting. |\n| **Integrate** | MCP tools, resources and prompts; `porcupine serve`; JSONL and RPC modes; a Node.js SDK; custom tools and providers. |\n| **Observe** | Per-turn usage, cost estimates, session evidence, task history, browser diagnostics, sub-agent activity, and a full-screen Markdown viewer. |\n\n## Parallel work without losing the thread\n\nPorcupine can delegate self-contained work to background sub-agents. Each worker receives:\n\n- a fresh context window;\n- the whole tool stack minus agent-level tools, user questions, and native computer control;\n- a hard step budget, 120 by default;\n- the same working directory and permission policy;\n- instant report injection when the worker finishes.\n\nGive workers the same `peerGroup` to enable **Web of Thoughts**. They can exchange findings live while the main agent remains the gatekeeper. The main agent can steer a worker with `send_to_subagent` or stop it when it goes off track.\n\nSee [Sub-agents](Porcupine/packages/coding-agent/docs/subagents.md).\n\n## One agent, more than one surface\n\n| Surface | Use |\n|---|---|\n| **Terminal TUI** | The full interactive experience, including permission dialogs, session tree, Markdown viewer, usage, cost, and live activity. |\n| **Telegram, Discord, iMessage** | Message the same attended session from another device. Chat/channel and sender allowlists protect prompts and approvals; valid confirmation buttons and reactions race the TUI. |\n| **HTTP server** | `porcupine serve` exposes sessions, asynchronous prompts, SSE events, and programmatic approval for IDEs and clients. |\n| **Headless mode** | `porcupine --headless \"task\"` runs a CI-friendly task and exits `0` on success or `1` on failure or abort. |\n| **RPC and JSONL** | Embed Porcupine in scripts and applications through structured process protocols. |\n\nRemote bridges are conversation-and-sender allowlist-gated and attended. They drive the shared session; they are not unattended daemons.\n\n## Extensible by design\n\n| Extension point | What it adds |\n|---|---|\n| **Stacks** | One discoverable hierarchy for filesystem, shell, web, web development, VCS, build, debugging, safety, data, ML, research, computer use, and orchestration capabilities. |\n| **Agent Skills** | On-demand procedures in portable `SKILL.md` packages. Porcupine can extract skills from documents or craft them from research. |\n| **MCP** | Connect stdio and Streamable HTTP servers. Their tools, resources, and prompts become first-class capabilities. |\n| **TypeScript extensions** | Add tools, commands, event handlers, UI, providers, and lifecycle behavior. |\n| **Packages** | Bundle and share extensions, skills, prompts, and themes. |\n| **SDK and protocols** | Embed the agent loop through the Node.js SDK, RPC, JSONL, or the HTTP server. |\n\nExplore the [18-stack capability tree](Porcupine/packages/coding-agent/docs/stacks.md), [skills](Porcupine/packages/coding-agent/docs/skills.md), [MCP](Porcupine/packages/coding-agent/docs/mcp.md), and [extensions](Porcupine/packages/coding-agent/docs/extensions.md).\n\n## Providers\n\nPorcupine separates the agent from the model route. Use a free path, a subscription, your own API key, or a local router.\n\n| Route | Setup |\n|---|---|\n| **Cline API** | Create a free key at [app.cline.bot](https://app.cline.bot), run `/login cline`, then choose `cline/deepseek/deepseek-v4-flash` from `/model`. |\n| **OpenCode Go** | Run `/login opencode-go`, then choose an available model and reasoning level from `/model`. |\n| **Built-in providers** | Connect supported API-key and subscription providers with `/login` or provider environment variables. |\n| **Local models** | Route supported local models through llama.cpp. |\n\nSee [Providers](Porcupine/packages/coding-agent/docs/providers.md) and [llama.cpp](Porcupine/packages/coding-agent/docs/llama-cpp.md).\n\n## Evaluation\n\nPorcupine publishes its harness results with methodology, raw records, failures, and caveats.\n\n| Suite | Porcupine result | Evidence |\n|---|---:|---|\n| **Aider Polyglot** | **194/225, 86.2%** | Six languages, hidden tests restored after the agent run. [Methodology and raw results](benchmarks/polyglot/README.md). |\n| **Terminal-Bench 2.1** | **45 clean passes** | 45/54 cleanly scored tasks passed; 35 of 89 tasks remained unscored after benchmark-rig failures. [Scoring and raw results](benchmarks/tbench/README.md). |\n\nBoth runs used DeepSeek V4 Flash through the Porcupine harness. These results measure the exact model and harness combination, not every model, provider, workload, or commercial agent.\n\n## Safety boundaries\n\nPorcupine is native-first. By default, it runs with the permissions of the account that launches it.\n\n- **Project trust is not a sandbox.** It controls project-local resource loading, not operating-system permissions.\n- **Interaction modes are the autonomy dial.** Ask, Normal, and Auto control approvals; reasoning settings do not grant permission.\n- **Auto fails closed on flagged shell actions.** Hardline destructive actions remain blocked in every mode.\n- **Native computer input is confirmation-gated.** The workflow starts with observation, treats screen text as untrusted, takes one approved action, then verifies the visible result.\n- **Isolation is optional.** `/sandbox on` routes built-in tools into a Gondolin micro-VM. Docker and OpenShell workflows are also documented.\n- **Extensions and skills are trusted code and instructions.** Review them before loading them, and use trusted repositories.\n\nRead [Security](Porcupine/packages/coding-agent/docs/security.md) and [Containerization](Porcupine/packages/coding-agent/docs/containerization.md) before using Porcupine on untrusted work.\n\n## Documentation\n\n| Start | Operate | Extend | Integrate |\n|---|---|---|---|\n| [Quickstart](Porcupine/packages/coding-agent/docs/quickstart.md) | [Usage](Porcupine/packages/coding-agent/docs/usage.md) | [Stacks](Porcupine/packages/coding-agent/docs/stacks.md) | [MCP](Porcupine/packages/coding-agent/docs/mcp.md) |\n| [Providers](Porcupine/packages/coding-agent/docs/providers.md) | [Sessions](Porcupine/packages/coding-agent/docs/sessions.md) | [Skills](Porcupine/packages/coding-agent/docs/skills.md) | [Server API](Porcupine/packages/coding-agent/docs/server.md) |\n| [Web Development](Porcupine/packages/coding-agent/docs/web-development.md) | [Settings](Porcupine/packages/coding-agent/docs/settings.md) | [Extensions](Porcupine/packages/coding-agent/docs/extensions.md) | [SDK](Porcupine/packages/coding-agent/docs/sdk.md) |\n| [Browser use](Porcupine/packages/coding-agent/docs/browser.md) | [Tasks and Cron](Porcupine/packages/coding-agent/docs/usage.md#tasks-and-cron-routines) | [Prompt templates](Porcupine/packages/coding-agent/docs/prompt-templates.md) | [RPC](Porcupine/packages/coding-agent/docs/rpc.md) |\n| [Sub-agents](Porcupine/packages/coding-agent/docs/subagents.md) | [Messaging bridges](Porcupine/packages/coding-agent/docs/messaging.md) and [environment variables](Porcupine/packages/coding-agent/docs/environment-variables.md) | [Themes](Porcupine/packages/coding-agent/docs/themes.md) | [JSON event stream](Porcupine/packages/coding-agent/docs/json.md) |\n| [Full documentation index](Porcupine/packages/coding-agent/docs/index.md) | [Keybindings](Porcupine/packages/coding-agent/docs/keybindings.md) | [Custom providers](Porcupine/packages/coding-agent/docs/custom-provider.md) | [Email](Porcupine/packages/coding-agent/docs/email.md) and [X](Porcupine/packages/coding-agent/docs/x.md) |\n\n## Contributing\n\nContributions are welcome. Keep changes focused, test behavior changes, and update documentation when the user-facing contract moves.\n\n- Read [CONTRIBUTING.md](CONTRIBUTING.md).\n- Browse or open [issues](https://github.com/Abd0r/porcupineai/issues).\n- Report security problems according to [SECURITY.md](SECURITY.md). Never include credentials in a report.\n\n## License and foundation\n\nPorcupine is released under the [MIT License](LICENSE).\n\nBuilt on top of [Pi](https://github.com/earendil-works/pi) (MIT).\n\n---\n\n<p align=\"center\">\n  <strong>If Porcupine helps you do real work, a <a href=\"https://github.com/Abd0r/porcupineai\">GitHub star</a> helps more people find it.</strong>\n</p>\n\n<p align=\"center\">\n  <a href=\"https://github.com/Abd0r/porcupineai\">GitHub</a> ·\n  <a href=\"https://www.npmjs.com/package/@porcupineai/porcupineai\">npm</a> ·\n  <a href=\"https://github.com/Abd0r/porcupineai/releases\">Releases</a> ·\n  <a href=\"LICENSE\">MIT License</a>\n</p>\n\n<p align=\"center\">\n  <a href=\"https://x.com/SyedAbdurR2hman\"><img src=\"https://img.shields.io/badge/X-%40SyedAbdurR2hman-000000?style=flat-square&logo=X&logoColor=white\" alt=\"Follow on X\"></a>\n</p>\n","readmeFilename":"README.md"}