{"_id":"talon-agent","_rev":"190-87191fbd6462c77a64ba31048733d950","name":"talon-agent","dist-tags":{"latest":"5.32.0"},"versions":{"1.0.0":{"name":"talon-agent","version":"1.0.0","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@1.0.0","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"b5f76539c3c6686ad792dadd6db94b5eea6d1dd1","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-1.0.0.tgz","fileCount":89,"integrity":"sha512-f9OQD4abupQRZH6vLVioHm6fJWrIhJiZdejDB0BSY7xE89WqirwbLeFn5uxZfA7nFsknXRoaToYe6tznpAQAGQ==","signatures":[{"sig":"MEUCIEdQLiGgr40OdlFI+R4QcZ+dxZO2rBSp4BHYGVK28hlHAiEAy9sqjX9G08bJjFcz1D3/WBpmAdaJZXPoPGHy7GzTERg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":743243},"main":"./src/index.ts","type":"module","engines":{"node":">=22"},"exports":{".":"./src/index.ts"},"gitHead":"472035f0775bb4de25c79718a49d6c6e5ff11cdc","scripts":{"cli":"tsx src/cli.ts","dev":"tsx --watch src/index.ts","lint":"oxlint src/ --ignore-pattern '**/__tests__/**'","test":"vitest run","setup":"tsx src/cli.ts setup","start":"tsx src/index.ts","format":"prettier --write src/ prompts/","typecheck":"tsc --noEmit","test:watch":"vitest","format:check":"prettier --check src/ prompts/","test:coverage":"vitest run --coverage","test:mutation":"stryker run"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.6.2","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.13.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","croner":"^10.0.1","grammy":"^1.41.1","marked":"^17.0.5","undici":"^7.24.7","cheerio":"^1.2.0","telegram":"^2.26.22","picocolors":"^1.1.1","big-integer":"^1.6.52","pino-pretty":"^13.1.3","@clack/prompts":"^1.2.0","@opencode-ai/sdk":"^1.3.13","write-file-atomic":"^7.0.1","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.2.89","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"oxlint":"^1.58.0","vitest":"^4.1.2","prettier":"^3.8.1","fast-check":"^4.6.0","typescript":"^6.0.2","@types/node":"^25.5.0","@vitest/coverage-v8":"^4.1.2","@stryker-mutator/core":"^9.6.0","@types/write-file-atomic":"^4.0.3","@stryker-mutator/vitest-runner":"^9.6.0","@stryker-mutator/typescript-checker":"^9.6.0"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_1.0.0_1775084770524_0.7299299377542081","host":"s3://npm-registry-packages-npm-production"}},"1.1.0":{"name":"talon-agent","version":"1.1.0","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@1.1.0","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"f55bd2e423f87e44e2705ec785979d23e7839f75","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-1.1.0.tgz","fileCount":109,"integrity":"sha512-ur1xSfE4Lknwiw1mU+3oUPxy4i0PJ+f1tlt5UwSWnqzgAyWiRHu8UoEeNGmNpr8xr/qPfibj8RyviL9cFBsPmQ==","signatures":[{"sig":"MEUCIG8V7cP+35j34+A+LHqnzMnh6VrTbzW6v009URIi3GLFAiEAv5gAXleLFiN7nHVUyRbhB/ABrS0zImtXIt2MK78s4u8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@1.1.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1184591},"main":"./src/index.ts","type":"module","engines":{"node":">=22"},"exports":{".":"./src/index.ts"},"gitHead":"b67986071174453493b161a04362b5f5d788a55d","scripts":{"cli":"tsx src/cli.ts","dev":"tsx --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"tsx src/cli.ts setup","start":"tsx src/index.ts","format":"prettier --write src/ prompts/","typecheck":"tsc --noEmit","test:watch":"vitest","build:binary":"bun build --compile --minify src/index.ts --outfile talon-bun","format:check":"prettier --check src/ prompts/","test:coverage":"vitest run --coverage","test:mutation":"stryker run"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"10.9.7","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"22.22.2","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","croner":"^10.0.1","grammy":"^1.42.0","marked":"^18.0.0","undici":"^8.0.2","cheerio":"^1.2.0","p-retry":"^8.0.0","telegram":"^2.26.22","picocolors":"^1.1.1","big-integer":"^1.6.52","pino-pretty":"^13.1.3","@clack/prompts":"^1.2.0","@opencode-ai/sdk":"^1.4.0","write-file-atomic":"^7.0.1","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.2.96","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^4.1.3","prettier":"^3.8.1","fast-check":"^4.6.0","typescript":"^6.0.2","@types/node":"^25.5.2","@vitest/coverage-v8":"^4.1.3","@stryker-mutator/core":"^9.6.0","@types/write-file-atomic":"^4.0.3","@stryker-mutator/vitest-runner":"^9.6.0","@stryker-mutator/typescript-checker":"^9.6.0"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_1.1.0_1775660862137_0.35107042341265915","host":"s3://npm-registry-packages-npm-production"}},"1.2.0":{"name":"talon-agent","version":"1.2.0","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@1.2.0","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"87168b64abc337b75f682d32509976759b3d5731","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-1.2.0.tgz","fileCount":109,"integrity":"sha512-lNmzyj/boWLAAnbA/IDzVX/w9dqwVsaMSnT926frxENTTVIlXJm+tw1VwRz8L3Az3O7XWE8Jxsbz4twgPmpENA==","signatures":[{"sig":"MEUCIDIV1zMilA0jaD/HjfIyvKGgOdUxfbjWYWIXUGEGzbgiAiEA2c0Z2vNeoy66VlK1aF2Hsk8+/ac64e743edyhvR7uFo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@1.2.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1184591},"main":"./src/index.ts","type":"module","engines":{"node":">=22"},"exports":{".":"./src/index.ts"},"gitHead":"b99a924173c9d59d977c2142be5fa4055a8f9c95","scripts":{"cli":"tsx src/cli.ts","dev":"tsx --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"tsx src/cli.ts setup","start":"tsx src/index.ts","format":"prettier --write src/ prompts/","typecheck":"tsc --noEmit","test:watch":"vitest","build:binary":"bun build --compile --minify src/index.ts --outfile talon-bun","format:check":"prettier --check src/ prompts/","test:coverage":"vitest run --coverage","test:mutation":"stryker run"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"10.9.7","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"22.22.2","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","croner":"^10.0.1","grammy":"^1.42.0","marked":"^18.0.0","undici":"^8.0.2","cheerio":"^1.2.0","p-retry":"^8.0.0","telegram":"^2.26.22","picocolors":"^1.1.1","big-integer":"^1.6.52","pino-pretty":"^13.1.3","@clack/prompts":"^1.2.0","@opencode-ai/sdk":"^1.4.0","write-file-atomic":"^7.0.1","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.2.96","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^4.1.3","prettier":"^3.8.1","fast-check":"^4.6.0","typescript":"^6.0.2","@types/node":"^25.5.2","@vitest/coverage-v8":"^4.1.3","@stryker-mutator/core":"^9.6.0","@types/write-file-atomic":"^4.0.3","@stryker-mutator/vitest-runner":"^9.6.0","@stryker-mutator/typescript-checker":"^9.6.0"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_1.2.0_1775725601202_0.4285719018560987","host":"s3://npm-registry-packages-npm-production"}},"1.3.0":{"name":"talon-agent","version":"1.3.0","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@1.3.0","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"aac581d7e4d0dcccbbf1bedbeb8510970957323d","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-1.3.0.tgz","fileCount":112,"integrity":"sha512-q3bH8+loybHZ4dY9P92Nr9wBYfjk4XNUzOgosYd3xysNbiP3gBO8QoUOKgjv+RN4ZwiZmzlTkhFl15ujhSwQzQ==","signatures":[{"sig":"MEQCIH8+OrxAN0an1n+wmpFX7n05d3iATlysc+USnMmAD7ErAiA9Z6DfIp5gsiesCFLkL+WhSmTuRgWZ4uZbh9ke/kVktQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@1.3.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1220668},"main":"./src/index.ts","type":"module","engines":{"node":">=22"},"exports":{".":"./src/index.ts"},"gitHead":"57edf2382e473dbc45e04a36246010da000188fc","scripts":{"cli":"tsx src/cli.ts","dev":"tsx --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"tsx src/cli.ts setup","start":"tsx src/index.ts","format":"prettier --write src/ prompts/","typecheck":"tsc --noEmit","test:watch":"vitest","build:binary":"bun build --compile --minify src/index.ts --outfile talon-bun","format:check":"prettier --check src/ prompts/","test:coverage":"vitest run --coverage"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"@anthropic-ai/sdk":"^0.86.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"10.9.7","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"22.22.2","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","croner":"^10.0.1","grammy":"^1.42.0","marked":"^18.0.0","undici":"^8.0.2","cheerio":"^1.2.0","p-retry":"^8.0.0","telegram":"^2.26.22","picocolors":"^1.1.1","big-integer":"^1.6.52","pino-pretty":"^13.1.3","@clack/prompts":"^1.2.0","@opencode-ai/sdk":"^1.4.0","write-file-atomic":"^7.0.1","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.2.97","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^4.1.3","prettier":"^3.8.1","fast-check":"^4.6.0","typescript":"^6.0.2","@types/node":"^25.5.2","@vitest/coverage-v8":"^4.1.3","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_1.3.0_1775818386803_0.246850166836591","host":"s3://npm-registry-packages-npm-production"}},"1.4.0":{"name":"talon-agent","version":"1.4.0","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@1.4.0","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"60b5eec9326b166f3bdb3d142223d5f76d118564","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-1.4.0.tgz","fileCount":125,"integrity":"sha512-EvTN2cfgs/sdChznAC2aIF/uR1Eia3qs0Td5TFHI38C4utq39CtFlbbIuFhMzBFyo0Hh3aRiOGJdWLmeybCbFQ==","signatures":[{"sig":"MEUCIQDxxhlndmDSogCyqfMM0WaEupebkI+rBaOpbKenHByUKQIgWdgacw3sB0OqxBY9MvC+U5M8NO+5niAbZILl+LTDlXY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@1.4.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1222147},"main":"./src/index.ts","type":"module","engines":{"node":">=22"},"exports":{".":"./src/index.ts"},"gitHead":"b98c44f43c3e1660e1f3705901aec6e7586a5202","scripts":{"cli":"tsx src/cli.ts","dev":"tsx --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"tsx src/cli.ts setup","start":"tsx src/index.ts","format":"prettier --write src/ prompts/","typecheck":"tsc --noEmit","test:watch":"vitest","build:binary":"bun build --compile --minify src/index.ts --outfile talon-bun","format:check":"prettier --check src/ prompts/","test:coverage":"vitest run --coverage"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"@anthropic-ai/sdk":"^0.86.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"10.9.7","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"22.22.2","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","croner":"^10.0.1","grammy":"^1.42.0","marked":"^18.0.0","undici":"^8.0.2","cheerio":"^1.2.0","p-retry":"^8.0.0","telegram":"^2.26.22","picocolors":"^1.1.1","big-integer":"^1.6.52","pino-pretty":"^13.1.3","@clack/prompts":"^1.2.0","@playwright/mcp":"^0.0.70","@opencode-ai/sdk":"^1.4.0","write-file-atomic":"^7.0.1","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.2.97","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^4.1.3","prettier":"^3.8.1","fast-check":"^4.6.0","typescript":"^6.0.2","@types/node":"^25.5.2","@vitest/coverage-v8":"^4.1.3","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_1.4.0_1775866888511_0.03231250866322988","host":"s3://npm-registry-packages-npm-production"}},"1.5.0":{"name":"talon-agent","version":"1.5.0","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@1.5.0","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"446d073f005a8dcdda150b96d141e5865bf982bf","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-1.5.0.tgz","fileCount":127,"integrity":"sha512-SqOf2eCSe/KoJwaCuety15ejGwT2NgTuKBgEceKqARxqFJHjcXM3/c3rd+pyca0TvmIRaInylDVWk93gMOzUIA==","signatures":[{"sig":"MEUCIQD21wKMDAEDBEvo8ULSkmwEm4K4+/gNFSqYU2zD3NeHwwIgYBmFNi3d98G3lKh9Gshrn9MdOpEpOhiVI+j7DaqYGfc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@1.5.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1241513},"main":"./src/index.ts","type":"module","engines":{"node":">=22"},"exports":{".":"./src/index.ts"},"gitHead":"02eee2bcc92b4cae31d8ed8429a89ad86977cdac","scripts":{"cli":"tsx src/cli.ts","dev":"tsx --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"tsx src/cli.ts setup","start":"tsx src/index.ts","format":"prettier --write src/ prompts/","typecheck":"tsc --noEmit","test:watch":"vitest","build:binary":"bun build --compile --minify src/index.ts --outfile talon-bun","format:check":"prettier --check src/ prompts/","test:coverage":"vitest run --coverage"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"@anthropic-ai/sdk":"^0.86.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"10.9.7","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"22.22.2","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","croner":"^10.0.1","grammy":"^1.42.0","marked":"^18.0.0","undici":"^8.0.2","cheerio":"^1.2.0","p-retry":"^8.0.0","telegram":"^2.26.22","picocolors":"^1.1.1","big-integer":"^1.6.52","pino-pretty":"^13.1.3","@clack/prompts":"^1.2.0","@playwright/mcp":"^0.0.70","@opencode-ai/sdk":"^1.4.0","write-file-atomic":"^7.0.1","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.2.104","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^4.1.3","prettier":"^3.8.1","fast-check":"^4.6.0","typescript":"^6.0.2","@types/node":"^25.5.2","@vitest/coverage-v8":"^4.1.3","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_1.5.0_1776075537685_0.7566235546491029","host":"s3://npm-registry-packages-npm-production"}},"1.6.0":{"name":"talon-agent","version":"1.6.0","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@1.6.0","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"6f432e75ca4c611a8117368b9caf4bdd2b76fe0d","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-1.6.0.tgz","fileCount":135,"integrity":"sha512-nAxO7s8Ms1yWwTAzxydmwGT1JWHtx7qLHqHnKOmL7biHccLft7yct6mWzAtDTMErJqTdtj6nPHsnL5ycKj0Azg==","signatures":[{"sig":"MEUCIBK5e2uRnr7gp6dIGlMgQxDzOYAqJnpWsrfpjtAUXPhAAiEAij71At2ViohrsUl6F4djnC4zqT6mam58BC5FevqVxN8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@1.6.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1263656},"main":"./src/index.ts","type":"module","engines":{"node":">=22"},"exports":{".":"./src/index.ts"},"gitHead":"0b4ac2a955cbb1bdddd5cb3476dcc420ce6445ba","scripts":{"cli":"tsx src/cli.ts","dev":"tsx --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"tsx src/cli.ts setup","start":"tsx src/index.ts","format":"prettier --write src/ prompts/","typecheck":"tsc --noEmit","test:watch":"vitest","build:binary":"bun build --compile --minify src/index.ts --outfile talon-bun","format:check":"prettier --check src/ prompts/","test:coverage":"vitest run --coverage"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"@anthropic-ai/sdk":"^0.86.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"10.9.7","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"22.22.2","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","croner":"^10.0.1","grammy":"^1.42.0","marked":"^18.0.0","undici":"^8.0.2","cheerio":"^1.2.0","p-retry":"^8.0.0","telegram":"^2.26.22","picocolors":"^1.1.1","big-integer":"^1.6.52","pino-pretty":"^13.1.3","@clack/prompts":"^1.2.0","@playwright/mcp":"^0.0.70","@opencode-ai/sdk":"^1.4.0","write-file-atomic":"^7.0.1","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.2.104","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^4.1.3","prettier":"^3.8.1","fast-check":"^4.6.0","typescript":"^6.0.2","@types/node":"^25.5.2","@vitest/coverage-v8":"^4.1.3","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_1.6.0_1776093613061_0.13426617750063108","host":"s3://npm-registry-packages-npm-production"}},"1.6.1":{"name":"talon-agent","version":"1.6.1","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@1.6.1","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"cd41f3af24cc035fcc052f03092c2d34158521e6","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-1.6.1.tgz","fileCount":135,"integrity":"sha512-mfIB6CCRzB6tcXCkiTK9Inx410iMAyqOu1x/eJPqgare5Fi380PtAsAy+ZCtrQqyKuAFB9BjKFGj3y+7YoFc0g==","signatures":[{"sig":"MEUCIE5WLmHELso1uVJhk4FJhu6PMha2iyvb9B7tb2N1fA8lAiEAnxQS/Uc4rhFbIb+AcbfEgaKG8A77M7PzT2VuAzyGb7Y=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@1.6.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1267675},"main":"./src/index.ts","type":"module","engines":{"node":">=22"},"exports":{".":"./src/index.ts"},"gitHead":"9b9d0387267eae87bff430542c3f4d41d09be0f3","scripts":{"cli":"tsx src/cli.ts","dev":"tsx --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"tsx src/cli.ts setup","start":"tsx src/index.ts","format":"prettier --write src/ prompts/","typecheck":"tsc --noEmit","test:watch":"vitest","build:binary":"bun build --compile --minify src/index.ts --outfile talon-bun","format:check":"prettier --check src/ prompts/","test:coverage":"vitest run --coverage"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"@anthropic-ai/sdk":"^0.86.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"10.9.7","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"22.22.2","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","croner":"^10.0.1","grammy":"^1.42.0","marked":"^18.0.0","undici":"^8.0.2","cheerio":"^1.2.0","p-retry":"^8.0.0","telegram":"^2.26.22","picocolors":"^1.1.1","big-integer":"^1.6.52","pino-pretty":"^13.1.3","@clack/prompts":"^1.2.0","@playwright/mcp":"^0.0.70","@opencode-ai/sdk":"^1.4.0","write-file-atomic":"^7.0.1","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.2.104","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^4.1.3","prettier":"^3.8.1","fast-check":"^4.6.0","typescript":"^6.0.2","@types/node":"^25.5.2","@vitest/coverage-v8":"^4.1.3","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_1.6.1_1776095078360_0.18932556488896934","host":"s3://npm-registry-packages-npm-production"}},"1.7.0":{"name":"talon-agent","version":"1.7.0","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@1.7.0","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"1b96d17fb66f512ee410e860c73dae0ea8e01765","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-1.7.0.tgz","fileCount":138,"integrity":"sha512-EC8eed5ME0iXcwMgOuH+WjWDc3OTZf8GxUeNPP5PSgi85pmXwyVG/OU4AGGEGM6FbGMRwuHpSuAsC2bIqpobEg==","signatures":[{"sig":"MEYCIQDcV6adE5EEI5ap3CCavAsoq7mNXZWqiDn8ys5Q8DoQbAIhAOvwuKKskDjMxFiFIbT5l/qf8kZ8EQ+w3I9QXXG5EBT4","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@1.7.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1306160},"main":"./src/index.ts","type":"module","engines":{"node":">=22"},"exports":{".":"./src/index.ts"},"gitHead":"abd16c85aaa35743cd8d09adf97093255bc75e7b","scripts":{"cli":"tsx src/cli.ts","dev":"tsx --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"tsx src/cli.ts setup","start":"tsx src/index.ts","format":"prettier --write src/ prompts/","typecheck":"tsc --noEmit","test:watch":"vitest","build:binary":"bun build --compile --minify src/index.ts --outfile talon-bun","format:check":"prettier --check src/ prompts/","test:coverage":"vitest run --coverage"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"@anthropic-ai/sdk":"^0.86.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"10.9.7","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"22.22.2","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","croner":"^10.0.1","grammy":"^1.42.0","marked":"^18.0.0","undici":"^8.0.2","cheerio":"^1.2.0","p-retry":"^8.0.0","telegram":"^2.26.22","picocolors":"^1.1.1","big-integer":"^1.6.52","pino-pretty":"^13.1.3","@clack/prompts":"^1.2.0","@playwright/mcp":"^0.0.70","@opencode-ai/sdk":"^1.4.0","write-file-atomic":"^7.0.1","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.2.108","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^4.1.3","prettier":"^3.8.1","fast-check":"^4.6.0","typescript":"^6.0.2","@types/node":"^25.5.2","@vitest/coverage-v8":"^4.1.3","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_1.7.0_1776208356833_0.5560092503545595","host":"s3://npm-registry-packages-npm-production"}},"1.8.0":{"name":"talon-agent","version":"1.8.0","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@1.8.0","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"6c75fdaf782a7b8f2d82d6edff2aca1b6d33ef9b","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-1.8.0.tgz","fileCount":151,"integrity":"sha512-w/w3p4Vvb25rKd4zZmWDIdA5JE2LgMFLHBVCcKKQ5Ph/sxbCvY3zXpQTGnXC5qfqt/v9GvecnZep7AYWma0how==","signatures":[{"sig":"MEYCIQC78+m8J0Jf3jJ6jdUvp4nVMidgwpqBUFHankhNPT1xyAIhAL7ki4LMXtA+Gua7Riuu9Zp4MRn4EpAm1JV2W4TD+4+X","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@1.8.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1422894},"main":"./src/index.ts","type":"module","engines":{"node":">=22"},"exports":{".":"./src/index.ts"},"gitHead":"6c58aca11fd4dabc704e266e11b267a1033a7432","scripts":{"cli":"tsx src/cli.ts","dev":"tsx --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"tsx src/cli.ts setup","start":"tsx src/index.ts","format":"prettier --write src/ prompts/","typecheck":"tsc --noEmit","test:watch":"vitest","build:binary":"bun build --compile --minify src/index.ts --outfile talon-bun","format:check":"prettier --check src/ prompts/","test:coverage":"vitest run --coverage"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"@anthropic-ai/sdk":"^0.86.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"10.9.7","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"22.22.2","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","croner":"^10.0.1","grammy":"^1.42.0","marked":"^18.0.0","undici":"^8.0.2","cheerio":"^1.2.0","p-retry":"^8.0.0","telegram":"^2.26.22","picocolors":"^1.1.1","big-integer":"^1.6.52","pino-pretty":"^13.1.3","@clack/prompts":"^1.2.0","@playwright/mcp":"^0.0.70","@opencode-ai/sdk":"^1.4.0","write-file-atomic":"^7.0.1","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.2.108","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^4.1.3","prettier":"^3.8.1","fast-check":"^4.6.0","typescript":"^6.0.2","@types/node":"^25.5.2","@vitest/coverage-v8":"^4.1.3","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_1.8.0_1776355873642_0.5144852494219008","host":"s3://npm-registry-packages-npm-production"}},"1.8.1":{"name":"talon-agent","version":"1.8.1","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@1.8.1","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"307ec2a3fbcb6ef438e3982b86e0c6c77a75bd3d","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-1.8.1.tgz","fileCount":152,"integrity":"sha512-/dwPO09ytcIGKcQzZ+7gc4n/Av8wthrNprm1BaU0Yi8jQvbfVExXvF8fAbH/UccCg5icWNEUxc57dmC28PikgQ==","signatures":[{"sig":"MEUCIQDr0iKhxfyF7fEIrBovLMu+H70A8lGIavxk7WpAa/YXMgIgFtTN5/N1VJUKUQ+3VKXArtEH3cdVVQDLTpNTBW+uPQo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@1.8.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1422223},"main":"./src/index.ts","type":"module","engines":{"node":">=22"},"exports":{".":"./src/index.ts"},"gitHead":"41be83ba1393383f224d231bf41315a1c3f6b92c","scripts":{"cli":"tsx src/cli.ts","dev":"tsx --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"tsx src/cli.ts setup","start":"tsx src/index.ts","format":"prettier --write src/ prompts/","typecheck":"tsc --noEmit","test:watch":"vitest","build:binary":"bun build --compile --minify src/index.ts --outfile talon-bun","format:check":"prettier --check src/ prompts/","test:coverage":"vitest run --coverage"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"@anthropic-ai/sdk":"^0.86.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"10.9.7","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"22.22.2","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","croner":"^10.0.1","grammy":"^1.42.0","marked":"^18.0.0","undici":"^8.0.2","cheerio":"^1.2.0","p-retry":"^8.0.0","telegram":"^2.26.22","picocolors":"^1.1.1","big-integer":"^1.6.52","pino-pretty":"^13.1.3","@clack/prompts":"^1.2.0","@playwright/mcp":"^0.0.70","@opencode-ai/sdk":"^1.4.0","write-file-atomic":"^7.0.1","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.2.108","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^4.1.3","prettier":"^3.8.1","fast-check":"^4.6.0","typescript":"^6.0.2","@types/node":"^25.5.2","@vitest/coverage-v8":"^4.1.3","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_1.8.1_1776432291164_0.9236996875043122","host":"s3://npm-registry-packages-npm-production"}},"1.9.0":{"name":"talon-agent","version":"1.9.0","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@1.9.0","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"fd1dcc016364a3ed31a367ae7e70637cc917c6b8","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-1.9.0.tgz","fileCount":156,"integrity":"sha512-4owVGx5yK6JXaYArogOykm1SGbiCRXcyjPzC35FXTmgUGMk0fB/jIo55oH3GcEtORXlYU8g9QBBgg0ZWcXaWUw==","signatures":[{"sig":"MEUCIBjcduqihKl85PsZ+FSrRFPhVC78j9p+0qmm+l9C3cPHAiEAyGkRhVm1sMROGSucP7Xeo1CRzuyI3lL5R8tzQgoa0tM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@1.9.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1445883},"main":"./src/index.ts","type":"module","engines":{"node":">=22"},"exports":{".":"./src/index.ts"},"gitHead":"a797bc1e53c580ed6c396fd74769f33dfeeff97c","scripts":{"cli":"tsx src/cli.ts","dev":"tsx --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"tsx src/cli.ts setup","start":"tsx src/index.ts","format":"prettier --write src/ prompts/","typecheck":"tsc --noEmit","test:watch":"vitest","format:check":"prettier --check src/ prompts/","test:coverage":"vitest run --coverage"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"@anthropic-ai/sdk":"^0.86.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"10.9.7","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"22.22.2","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","croner":"^10.0.1","grammy":"^1.42.0","marked":"^18.0.0","undici":"^8.0.2","cheerio":"^1.2.0","p-retry":"^8.0.0","telegram":"^2.26.22","picocolors":"^1.1.1","big-integer":"^1.6.52","pino-pretty":"^13.1.3","@clack/prompts":"^1.2.0","@playwright/mcp":"^0.0.70","@opencode-ai/sdk":"^1.4.0","write-file-atomic":"^7.0.1","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.2.108","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^4.1.3","prettier":"^3.8.1","fast-check":"^4.6.0","typescript":"^6.0.2","@types/node":"^25.5.2","@vitest/coverage-v8":"^4.1.3","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_1.9.0_1776981868224_0.30455566330193107","host":"s3://npm-registry-packages-npm-production"}},"1.9.1":{"name":"talon-agent","version":"1.9.1","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@1.9.1","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"3acefb0ab76fbc7fa17b7772d8b0171ce3a305ae","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-1.9.1.tgz","fileCount":154,"integrity":"sha512-Lp41IJrMaJHo7p30k4t8Wbe2hbD8GYwN7Wxi8HtBzAa7zA5CQeuYvuIXHighcBFkXhrlkLPg/7llWmvtnLaOaw==","signatures":[{"sig":"MEUCIQDoNvJIEE7leONdwKtWTNu3OnF/hVSeBjv/uoLYdAldzAIgcUu6LfOGz51FgcDiHgw42Yx2Y3Zb7AKretUHEpG/GJk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@1.9.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1429752},"main":"./src/index.ts","type":"module","engines":{"node":">=22"},"exports":{".":"./src/index.ts"},"gitHead":"c02bac1c24d6589f64cbf0d05b5664ba75996a6c","scripts":{"cli":"tsx src/cli.ts","dev":"tsx --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"tsx src/cli.ts setup","start":"tsx src/index.ts","format":"prettier --write src/ prompts/","typecheck":"tsc --noEmit","test:watch":"vitest","format:check":"prettier --check src/ prompts/","test:coverage":"vitest run --coverage"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"@anthropic-ai/sdk":"^0.86.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"10.9.7","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"22.22.2","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","croner":"^10.0.1","grammy":"^1.42.0","marked":"^18.0.0","undici":"^8.0.2","cheerio":"^1.2.0","p-retry":"^8.0.0","telegram":"^2.26.22","picocolors":"^1.1.1","big-integer":"^1.6.52","pino-pretty":"^13.1.3","@clack/prompts":"^1.2.0","@playwright/mcp":"^0.0.70","@opencode-ai/sdk":"^1.4.0","write-file-atomic":"^7.0.1","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.2.108","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^4.1.3","prettier":"^3.8.1","fast-check":"^4.6.0","typescript":"^6.0.2","@types/node":"^25.5.2","@vitest/coverage-v8":"^4.1.3","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_1.9.1_1778158060511_0.6804258636608473","host":"s3://npm-registry-packages-npm-production"}},"1.9.2":{"name":"talon-agent","version":"1.9.2","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@1.9.2","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"b4fc7fcecf81db64be288a824f546909e355f7b7","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-1.9.2.tgz","fileCount":157,"integrity":"sha512-1lGSbYhQKVydZF+aYh1I2C7JVj7XrStIQ3WlXhBaraKCV/l6gnQHcH+Me9AYXhh/Yd3NRxTfueKGm7HTR4wEHw==","signatures":[{"sig":"MEUCICrv7Z9YHiimVRRUK9rs4oKdvgiZdNIlH66yc1XxfJLNAiEAvDEx+qFSmDtM0+wSACQlmdXLBYZNx7+oEDpgx5OHy5A=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@1.9.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1458864},"main":"./src/index.ts","type":"module","engines":{"node":">=22"},"exports":{".":"./src/index.ts"},"gitHead":"79a2da642eaffad3e4026cad0942442107e123cc","scripts":{"cli":"tsx src/cli.ts","dev":"tsx --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"tsx src/cli.ts setup","start":"tsx src/index.ts","format":"prettier --write src/ prompts/","typecheck":"tsc --noEmit","test:watch":"vitest","format:check":"prettier --check src/ prompts/","test:coverage":"vitest run --coverage"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"@anthropic-ai/sdk":"^0.95.0"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"10.9.7","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"22.22.2","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","croner":"^10.0.1","grammy":"^1.42.0","marked":"^18.0.0","undici":"^8.0.2","cheerio":"^1.2.0","p-retry":"^8.0.0","telegram":"^2.26.22","picocolors":"^1.1.1","big-integer":"^1.6.52","pino-pretty":"^13.1.3","@clack/prompts":"^1.2.0","@playwright/mcp":"^0.0.74","@opencode-ai/sdk":"^1.4.0","@anthropic-ai/sdk":"^0.95.0","write-file-atomic":"^7.0.1","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.2.108","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^4.1.3","prettier":"^3.8.1","fast-check":"^4.6.0","typescript":"^6.0.2","@types/node":"^25.5.2","@vitest/coverage-v8":"^4.1.3","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_1.9.2_1778234816716_0.6207091657022277","host":"s3://npm-registry-packages-npm-production"}},"1.10.0":{"name":"talon-agent","version":"1.10.0","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@1.10.0","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"70d61386e99551e7e4677c1307425766ba04722f","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-1.10.0.tgz","fileCount":158,"integrity":"sha512-9qp7LTo08JSHdoDowcR179+qLTNMphM1iRnMw/z1pIOVeOHY54AcVMqtuLnmSDaVRyo8+acwbUt8gLdump9yoQ==","signatures":[{"sig":"MEUCICzms+6ZMxR2m1s3SCcppqfiwtGRBQ0CeKzDod7ppxfOAiEAsft/invjK71VBf88gFLLzpKefmy3K0HrbxZFP//JmYM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@1.10.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1481868},"main":"./src/index.ts","type":"module","engines":{"node":">=22"},"exports":{".":"./src/index.ts"},"gitHead":"6ddaf9afdfee327817c506a34a83819d1c7c1a8e","scripts":{"cli":"tsx src/cli.ts","dev":"tsx --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"tsx src/cli.ts setup","start":"tsx src/index.ts","format":"prettier --write src/ prompts/","typecheck":"tsc --noEmit","test:watch":"vitest","format:check":"prettier --check src/ prompts/","test:coverage":"vitest run --coverage"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"@anthropic-ai/sdk":"^0.95.0"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"10.9.7","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"22.22.2","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","croner":"^10.0.1","grammy":"^1.42.0","marked":"^18.0.0","undici":"^8.0.2","cheerio":"^1.2.0","p-retry":"^8.0.0","telegram":"^2.26.22","picocolors":"^1.1.1","big-integer":"^1.6.52","pino-pretty":"^13.1.3","@clack/prompts":"^1.2.0","@playwright/mcp":"^0.0.74","@opencode-ai/sdk":"^1.4.0","@anthropic-ai/sdk":"^0.95.0","write-file-atomic":"^7.0.1","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.2.108","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^4.1.3","prettier":"^3.8.1","fast-check":"^4.6.0","typescript":"^6.0.2","@types/node":"^25.5.2","@vitest/coverage-v8":"^4.1.3","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_1.10.0_1778236446364_0.9981969610734454","host":"s3://npm-registry-packages-npm-production"}},"1.10.1":{"name":"talon-agent","version":"1.10.1","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@1.10.1","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"1837051233846848ead66aab61f8d9b5fc567a81","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-1.10.1.tgz","fileCount":167,"integrity":"sha512-F/Kn1z732xBCpIgCvPxyAm/bZS0d2I7YT3vUBtaOTpsb5hWrXZDiL7yz2l0ky+YdTHB0eJ772sNZSpN9igTLYA==","signatures":[{"sig":"MEYCIQCGBuUczhVrbcf9iRFpZWDTixzVzQ6iTrNejkw9AMXbvAIhAIHEsAwAu2NKOPMtLpuDuBTg1Fp8XBCBxrhuZ0SnGi3c","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@1.10.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1550646},"main":"./src/index.ts","type":"module","engines":{"node":">=22"},"exports":{".":"./src/index.ts"},"gitHead":"38e3a73bde3a4e987a5905d8e016bd7f0773d55b","scripts":{"cli":"tsx src/cli.ts","dev":"tsx --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"tsx src/cli.ts setup","start":"tsx src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","typecheck":"tsc --noEmit","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","test:watch":"vitest","format:check":"prettier --check src/ prompts/","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"ip-address":"^10.1.1","@anthropic-ai/sdk":"^0.95.0"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"10.9.7","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"22.22.2","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","croner":"^10.0.1","grammy":"^1.42.0","marked":"^18.0.0","undici":"^8.0.2","cheerio":"^1.2.0","p-retry":"^8.0.0","telegram":"^2.26.22","picocolors":"^1.1.1","big-integer":"^1.6.52","pino-pretty":"^13.1.3","@clack/prompts":"^1.2.0","@playwright/mcp":"^0.0.75","@opencode-ai/sdk":"^1.4.0","@anthropic-ai/sdk":"^0.95.0","write-file-atomic":"^8.0.0","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.2.108","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^4.1.3","prettier":"^3.8.1","fast-check":"^4.6.0","typescript":"^6.0.2","@types/node":"^25.5.2","@vitest/coverage-v8":"^4.1.3","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_1.10.1_1778349605208_0.11895233562646856","host":"s3://npm-registry-packages-npm-production"}},"1.11.0":{"name":"talon-agent","version":"1.11.0","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@1.11.0","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"1f269bf24fcdb487ed883ce6dc5d8ff1ad9281c8","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-1.11.0.tgz","fileCount":99,"integrity":"sha512-wcmbv/94N7kSjb8OU34LAIN6XFMmhnvWtw4PqtGr1lMLrM0BdF4mLlnDEieXSbGk/mq+7xKT8BpCNtDbPfO6oQ==","signatures":[{"sig":"MEUCIQC9LlzFpbYayYKAhPiq/Bwm+MmXYLdE2q0rrOzicycSngIgPGNjFrui58HsF9Igwx8/CkNkbOXHxld16m66wwMlqAs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@1.11.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":691239},"main":"./src/index.ts","type":"module","engines":{"node":">=22"},"exports":{".":"./src/index.ts"},"gitHead":"ecad3246926e4d1d2ad4bcdaefb3e2488f98e051","scripts":{"cli":"tsx src/cli.ts","dev":"tsx --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"tsx src/cli.ts setup","start":"tsx src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","typecheck":"tsc --noEmit","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","test:watch":"vitest","format:check":"prettier --check src/ prompts/","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","@anthropic-ai/sdk":"^0.95.0"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"10.9.7","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"22.22.2","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","croner":"^10.0.1","grammy":"^1.42.0","marked":"^18.0.0","undici":"^8.0.2","cheerio":"^1.2.0","p-retry":"^8.0.0","telegram":"^2.26.22","picocolors":"^1.1.1","big-integer":"^1.6.52","pino-pretty":"^13.1.3","@clack/prompts":"^1.2.0","@playwright/mcp":"^0.0.75","@opencode-ai/sdk":"^1.4.0","@anthropic-ai/sdk":"^0.95.0","write-file-atomic":"^8.0.0","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.2.108","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^4.1.3","prettier":"^3.8.1","fast-check":"^4.6.0","typescript":"^6.0.2","@types/node":"^25.5.2","@vitest/coverage-v8":"^4.1.3","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_1.11.0_1778520212209_0.6129776190759859","host":"s3://npm-registry-packages-npm-production"}},"1.12.0":{"name":"talon-agent","version":"1.12.0","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@1.12.0","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"1e63326e6e7be1547c6ec0f704ba517a19617482","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-1.12.0.tgz","fileCount":170,"integrity":"sha512-OZcdBZo0kwdy3ViMxnCfCNEvXKZn/ArjV5sTJyVzcgc+Kx8mpzEY7cqTNgWeMkZUjzRyXdfRqjNLOtoczbgQLA==","signatures":[{"sig":"MEYCIQC5q6nJp4TvUa5D2HV24XGIxJWbls1yvffgogzVl0EOSQIhAMs2CdbFkEzGV+8h3shepHk3eMLTBToGQWHbESFVydMo","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@1.12.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1305714},"main":"./src/index.ts","type":"module","engines":{"node":">=22"},"exports":{".":"./src/index.ts"},"gitHead":"7b726fecace18ff05092bad8076ccfbe85ead205","scripts":{"cli":"tsx src/cli.ts","dev":"tsx --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"tsx src/cli.ts setup","start":"tsx src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","typecheck":"tsc --noEmit","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","test:watch":"vitest","format:check":"prettier --check src/ prompts/","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","@anthropic-ai/sdk":"^0.95.0"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"10.9.7","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"22.22.2","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","croner":"^10.0.1","grammy":"^1.42.0","marked":"^18.0.0","undici":"^8.0.2","cheerio":"^1.2.0","p-retry":"^8.0.0","telegram":"^2.26.22","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@clack/prompts":"^1.2.0","@openai/agents":"^0.11.4","@playwright/mcp":"^0.0.75","@opencode-ai/sdk":"^1.4.0","@anthropic-ai/sdk":"^0.95.0","@openai/codex-sdk":"^0.130.0","write-file-atomic":"^8.0.0","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.2.108","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^4.1.3","prettier":"^3.8.1","fast-check":"^4.6.0","typescript":"^6.0.2","@types/node":"^25.5.2","@vitest/coverage-v8":"^4.1.3","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_1.12.0_1779135627984_0.5694205324843626","host":"s3://npm-registry-packages-npm-production"}},"1.33.0":{"name":"talon-agent","version":"1.33.0","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@1.33.0","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"a6aa22c65e66b51a55f1349dbfad8fae4a84e81e","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-1.33.0.tgz","fileCount":460,"integrity":"sha512-FbHpmjqByOAYfAPji8T7yVF8PxzjeOvHMyT3IvODskDADa7rGrkrWfzKzB/svoREPBOC+8j/EcdFP9md9Q0V2g==","signatures":[{"sig":"MEYCIQCSWoXr1UUK6ZPL56AkHsTTq7BT754IfoZkd4Oj4ON2SAIhAMgBkZoZILZ6y3k76e7XZpxalIL8Hv79XqZMdbiDKtRf","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@1.33.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2578603},"main":"./src/index.ts","type":"module","engines":{"node":">=24"},"exports":{".":"./src/index.ts"},"gitHead":"d83a8465375cf60adf93648d17c2e9a3d3d545a6","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"tsx src/cli.ts","dev":"tsx --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"tsx src/cli.ts setup","start":"tsx src/index.ts","format":"prettier --write src/ prompts/","build:c":"node native/strsim-c/build.mjs && node native/sqlguard-c/build.mjs","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","build:cpp":"node native/htmlents-cpp/build.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:c && npm run build:cpp && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.16.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.18.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.42.0","marked":"^18.0.0","undici":"^8.0.2","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@clack/prompts":"^1.2.0","@openai/agents":"^0.12.0","@playwright/mcp":"^0.0.77","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.142.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^4.1.3","prettier":"^3.8.1","fast-check":"^4.6.0","typescript":"^6.0.2","@types/node":"^26.0.0","@vitest/coverage-v8":"^4.1.3","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_1.33.0_1783503200323_0.5091226395975492","host":"s3://npm-registry-packages-npm-production"}},"1.34.0":{"name":"talon-agent","version":"1.34.0","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@1.34.0","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"03788e62c26a1dfde984e5ff78bd63b9ba25d053","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-1.34.0.tgz","fileCount":461,"integrity":"sha512-Pg+oZt8lS/brtKiUcT6aE/7bFVCAvj+rWgrM5LesVipvoDr4WAYi0Spuj7pWe0eWLQGYxd5+2DfkPE2tY2UbIQ==","signatures":[{"sig":"MEUCIAhKrVOdanMO9AV9TvHO2xZAENi/ReD2oaQl7+eWBu8JAiEAzjmYszEa5gzfg9p0fIdB5/0T8LND8MiN5nfuKw+S8U4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@1.34.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2588455},"main":"./src/index.ts","type":"module","engines":{"node":">=24"},"exports":{".":"./src/index.ts"},"gitHead":"e6e6476c1f2562b1b11c95a2be65391f31a2a737","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"tsx src/cli.ts","dev":"tsx --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"tsx src/cli.ts setup","start":"tsx src/index.ts","format":"prettier --write src/ prompts/","build:c":"node native/strsim-c/build.mjs && node native/sqlguard-c/build.mjs","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","build:cpp":"node native/htmlents-cpp/build.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:c && npm run build:cpp && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.16.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.18.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.42.0","marked":"^18.0.0","undici":"^8.0.2","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@clack/prompts":"^1.2.0","@openai/agents":"^0.12.0","@playwright/mcp":"^0.0.77","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.142.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^4.1.3","prettier":"^3.8.1","fast-check":"^4.6.0","typescript":"^6.0.2","@types/node":"^26.0.0","@vitest/coverage-v8":"^4.1.3","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_1.34.0_1783506444045_0.7690680399928043","host":"s3://npm-registry-packages-npm-production"}},"1.34.1":{"name":"talon-agent","version":"1.34.1","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@1.34.1","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"41e1f37f8715c40bf43c6482546b45d8537181c9","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-1.34.1.tgz","fileCount":465,"integrity":"sha512-SZ+ISEhQyCFqYg9bnG6hfjsz2BET+UMDIwAfPAsw6ihVOZJU1XRlUGLJngnFW9+nRxDnCq2YjvBMIJoMwF23MQ==","signatures":[{"sig":"MEQCICXa8RQXyenFuOT0IYhGxxYcTxqdt7+kIuk0fwl6OvXIAiBMw/9RIftBY3jozAIwH/uRKb8O8smyiUTdHaeAjH054g==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@1.34.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2598932},"main":"./src/index.ts","type":"module","engines":{"node":">=24"},"exports":{".":"./src/index.ts"},"gitHead":"4f7687bced412a7144f2a8822a9fb8968e6a314a","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"tsx src/cli.ts","dev":"tsx --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"tsx src/cli.ts setup","start":"tsx src/index.ts","format":"prettier --write src/ prompts/","build:c":"node native/strsim-c/build.mjs && node native/sqlguard-c/build.mjs","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","build:cpp":"node native/htmlents-cpp/build.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:c && npm run build:cpp && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.16.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.18.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.42.0","marked":"^18.0.0","undici":"^8.0.2","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@clack/prompts":"^1.2.0","@openai/agents":"^0.13.0","@playwright/mcp":"^0.0.77","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.143.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^4.1.3","prettier":"^3.8.1","fast-check":"^4.6.0","typescript":"^6.0.2","@types/node":"^26.0.0","@vitest/coverage-v8":"^4.1.3","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_1.34.1_1783512018518_0.014970795396120451","host":"s3://npm-registry-packages-npm-production"}},"1.35.0":{"name":"talon-agent","version":"1.35.0","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@1.35.0","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"a268a43ab18daa9ffb0909782d9e49ef815f808b","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-1.35.0.tgz","fileCount":471,"integrity":"sha512-aivJ6+DRba6JiZRPaocDfXBAIN6kJaYWwqAIfyqofqpWNe/O+mAvOjwegGSlkZZBl59Wq991DsZTX5pDBlxHOg==","signatures":[{"sig":"MEUCIFl1twxsTsipbqMTllb5Bqb/Wlv+bwpc37p4B8gD+xndAiEAyKFxRb60AznpMhYlfk24wN0NzJft6dbYYgcwJhnyiW0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@1.35.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2641136},"main":"./src/index.ts","type":"module","engines":{"node":">=24"},"exports":{".":"./src/index.ts"},"gitHead":"3e9f703f303734926aa1d323b1d2ebca4132034b","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"tsx src/cli.ts","dev":"tsx --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"tsx src/cli.ts setup","start":"tsx src/index.ts","format":"prettier --write src/ prompts/","build:c":"node native/strsim-c/build.mjs && node native/sqlguard-c/build.mjs","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","build:cpp":"node native/htmlents-cpp/build.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:c && npm run build:cpp && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.16.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.18.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.42.0","marked":"^18.0.0","undici":"^8.0.2","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@clack/prompts":"^1.2.0","@openai/agents":"^0.13.0","@playwright/mcp":"^0.0.77","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.143.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^4.1.3","prettier":"^3.8.1","fast-check":"^4.6.0","typescript":"^6.0.2","@types/node":"^26.0.0","@vitest/coverage-v8":"^4.1.3","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_1.35.0_1783546063257_0.7569298753514699","host":"s3://npm-registry-packages-npm-production"}},"1.36.0":{"name":"talon-agent","version":"1.36.0","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@1.36.0","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"9e9c2091558b25ae0c6b75cb25a0b446b28fc53e","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-1.36.0.tgz","fileCount":476,"integrity":"sha512-ljpPmKrwkhCfBW/JQ9cLi+LO9nvEeyZ2ofAgKu2bdD3+OJVqBp5uHM2WcQoDHiJf2EwmOJwGSvl0gJfxjw7PyQ==","signatures":[{"sig":"MEYCIQDW4n1IEXKx8DDDvT4MDYN45zdDbWQDfvWaFUys5Gw9nwIhAK8kQZ9PbsOHal/5yZNruB1SNYCpPT/XkWayWnFSwoCO","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@1.36.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2714007},"main":"./src/index.ts","type":"module","engines":{"node":">=24"},"exports":{".":"./src/index.ts"},"gitHead":"9b5a08a3323fb960f68b3f1578210b424b496ba3","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"tsx src/cli.ts","dev":"tsx --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"tsx src/cli.ts setup","start":"tsx src/index.ts","format":"prettier --write src/ prompts/","build:c":"node native/strsim-c/build.mjs && node native/sqlguard-c/build.mjs","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","build:cpp":"node native/htmlents-cpp/build.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:c && npm run build:cpp && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.16.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.18.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.42.0","marked":"^18.0.0","undici":"^8.0.2","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@clack/prompts":"^1.2.0","@openai/agents":"^0.13.0","@playwright/mcp":"^0.0.77","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.144.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^4.1.3","prettier":"^3.8.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","@vitest/coverage-v8":"^4.1.3","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_1.36.0_1783633059420_0.1767893040377202","host":"s3://npm-registry-packages-npm-production"}},"1.37.0":{"name":"talon-agent","version":"1.37.0","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@1.37.0","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"b292f2864bee87077621ffadd8fdcbd86620ced1","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-1.37.0.tgz","fileCount":477,"integrity":"sha512-Km7Uqm/2jVZL6Rlcu8kFctVkm7PfdN2p7iYgY7kSM7CZf7CjmH7GnY6b67Px8BTa+TSzaUoh5a/BXe6i4+9l9w==","signatures":[{"sig":"MEUCIF2Dm7aesuIGPD1fc1oM8cR8Ca94EOwUPshjfODUr9LOAiEAuvBebOJk8z7a5vOhYbttolNBnJD/+sGjk73o9YEIM6c=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@1.37.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2738978},"main":"./src/index.ts","type":"module","engines":{"node":">=24"},"exports":{".":"./src/index.ts"},"gitHead":"5ffd454fe8fab0951ad07d6f25136205ae609446","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"tsx src/cli.ts","dev":"tsx --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"tsx src/cli.ts setup","start":"tsx src/index.ts","format":"prettier --write src/ prompts/","build:c":"node native/strsim-c/build.mjs && node native/sqlguard-c/build.mjs","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","build:cpp":"node native/htmlents-cpp/build.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:c && npm run build:cpp && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.16.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.18.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.42.0","marked":"^18.0.0","undici":"^8.0.2","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@clack/prompts":"^1.2.0","@openai/agents":"^0.13.0","@playwright/mcp":"^0.0.77","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.144.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^4.1.3","prettier":"^3.8.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","@vitest/coverage-v8":"^4.1.3","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_1.37.0_1783678004642_0.8267089518608286","host":"s3://npm-registry-packages-npm-production"}},"1.37.1":{"name":"talon-agent","version":"1.37.1","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@1.37.1","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"04a374fe9398c574bc62248227d2f1e251ddc1ec","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-1.37.1.tgz","fileCount":477,"integrity":"sha512-UfwYTQKbr66lJcDgZHBw0tYjpKS9cPpM5AVXpvEKQdMSs7r4PlFS3ycRovL/s48WWjZGr73TCrNUZSGu+SqUoQ==","signatures":[{"sig":"MEUCIQDsJmqxqYPm7+lbj94+YwTBbL3G3/VO5yLzH/WyznIsfQIgeplbWggfjAF/OCQtqsZGz0EaXKVbWA9ytWORHGAEy58=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@1.37.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2738978},"main":"./src/index.ts","type":"module","engines":{"node":">=24"},"exports":{".":"./src/index.ts"},"gitHead":"414da530a0bcc4ad2f5c312da7371400346b4398","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"tsx src/cli.ts","dev":"tsx --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"tsx src/cli.ts setup","start":"tsx src/index.ts","format":"prettier --write src/ prompts/","build:c":"node native/strsim-c/build.mjs && node native/sqlguard-c/build.mjs","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","build:cpp":"node native/htmlents-cpp/build.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:c && npm run build:cpp && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.16.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.18.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.42.0","marked":"^18.0.0","undici":"^8.0.2","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@clack/prompts":"^1.2.0","@openai/agents":"^0.13.0","@playwright/mcp":"^0.0.77","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.144.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^4.1.3","prettier":"^3.8.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","@vitest/coverage-v8":"^4.1.3","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_1.37.1_1783685667933_0.4293357559230331","host":"s3://npm-registry-packages-npm-production"}},"1.37.2":{"name":"talon-agent","version":"1.37.2","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@1.37.2","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"61df6cf4c259d462ecf2408eac5086cfc761abf0","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-1.37.2.tgz","fileCount":477,"integrity":"sha512-vrY/x2l44xH65MuCU3z7XN2GZ2ivDdADfRieaZubb29+y2lRsLingbwkZfkFUm36eGUUOweODA7gxGwmhO1M8w==","signatures":[{"sig":"MEQCIDjN/rA31rVqxHwXJebj+Y7TKm+e0SS41je65ILuJ8zDAiAHobV72YklFGWkF6GAIWbjV/K8DOHaqfjZVfQNzGtWrg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@1.37.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2738978},"main":"./src/index.ts","type":"module","engines":{"node":">=24"},"exports":{".":"./src/index.ts"},"gitHead":"91db49a37663f26e153360e8d004e8cdb9267efa","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"tsx src/cli.ts","dev":"tsx --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"tsx src/cli.ts setup","start":"tsx src/index.ts","format":"prettier --write src/ prompts/","build:c":"node native/strsim-c/build.mjs && node native/sqlguard-c/build.mjs","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","build:cpp":"node native/htmlents-cpp/build.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:c && npm run build:cpp && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.16.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.18.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.42.0","marked":"^18.0.0","undici":"^8.0.2","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@clack/prompts":"^1.2.0","@openai/agents":"^0.13.0","@playwright/mcp":"^0.0.77","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.144.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^4.1.3","prettier":"^3.8.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","@vitest/coverage-v8":"^4.1.3","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_1.37.2_1783688648449_0.3041898093599644","host":"s3://npm-registry-packages-npm-production"}},"1.37.3":{"name":"talon-agent","version":"1.37.3","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@1.37.3","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"4e4f1322c533aa3af4f2b0724d195f77326d8a44","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-1.37.3.tgz","fileCount":477,"integrity":"sha512-K8XzToESWqSAj7PPCoPD5/A2O7tcpe4bnTR8lgat3J9wGihXyTZ2DH+M4WOKZiGV3Qlwn6lpmwcdWnnZDX6ljw==","signatures":[{"sig":"MEUCICBqZ9BLFXsxnUk1Fly2FeINMG8sOSSfXZwj08t6mnw2AiEA1dNV34N0FB9Eq0OQeMAWz3D+E8eKqKdpSlwCCAaHqa8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@1.37.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2738978},"main":"./src/index.ts","type":"module","engines":{"node":">=24"},"exports":{".":"./src/index.ts"},"gitHead":"70a3d62d144914737635711bd6d26ccfbc4aca55","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"tsx src/cli.ts","dev":"tsx --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"tsx src/cli.ts setup","start":"tsx src/index.ts","format":"prettier --write src/ prompts/","build:c":"node native/strsim-c/build.mjs && node native/sqlguard-c/build.mjs","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","build:cpp":"node native/htmlents-cpp/build.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:c && npm run build:cpp && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.16.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.18.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.42.0","marked":"^18.0.0","undici":"^8.0.2","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@clack/prompts":"^1.2.0","@openai/agents":"^0.13.0","@playwright/mcp":"^0.0.77","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.144.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^4.1.3","prettier":"^3.8.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","@vitest/coverage-v8":"^4.1.3","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_1.37.3_1783690319501_0.8370642222764639","host":"s3://npm-registry-packages-npm-production"}},"1.37.4":{"name":"talon-agent","version":"1.37.4","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@1.37.4","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"2041ca3044353a7a6f66c3daa224dac20be6bceb","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-1.37.4.tgz","fileCount":477,"integrity":"sha512-58cNDrQs08XwOUaa5Ld6hhwXfKWNw8lzSJQ4Wd14+ZkEiQLEnQmvFHL9HaSgkCL/I+AQwwqsC/qJqWjQ8bsKGg==","signatures":[{"sig":"MEUCIAOtkoy8AFhVYjWRxGiBXYMDasHBWhQVfGQbozVeWNayAiEAhh801d8WtdMs98htmOa+uHSmx3r/WQzLle3/ZTcNp48=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@1.37.4","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2738978},"main":"./src/index.ts","type":"module","engines":{"node":">=24"},"exports":{".":"./src/index.ts"},"gitHead":"1537e5e9419067de342027bf49a437bca88874cb","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"tsx src/cli.ts","dev":"tsx --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"tsx src/cli.ts setup","start":"tsx src/index.ts","format":"prettier --write src/ prompts/","build:c":"node native/strsim-c/build.mjs && node native/sqlguard-c/build.mjs","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","build:cpp":"node native/htmlents-cpp/build.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:c && npm run build:cpp && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.16.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.18.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.42.0","marked":"^18.0.0","undici":"^8.0.2","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@clack/prompts":"^1.2.0","@openai/agents":"^0.13.0","@playwright/mcp":"^0.0.77","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.144.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^4.1.3","prettier":"^3.8.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","@vitest/coverage-v8":"^4.1.3","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_1.37.4_1783692447818_0.7973077353704763","host":"s3://npm-registry-packages-npm-production"}},"1.38.0":{"name":"talon-agent","version":"1.38.0","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@1.38.0","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"450dac01edcc6a62405010f2457efe447973c4c0","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-1.38.0.tgz","fileCount":477,"integrity":"sha512-oXVcyazEeK8QioW+8fpYBm19JOEBUrKVnZw2PG/kUjKTimhCtmPB1KRZy5Ghebro1tI1IWm6UKYvsgIblzw4zg==","signatures":[{"sig":"MEUCIQC7u+ifWZ2dQN5okQxXDrujDsEv7xJrVXcgq9CFl1i6ZgIgZ6PHm8QB+tXt0w5x2t8dcKG4JzvVd/zt3Zw7fqWhjTs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@1.38.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2738978},"main":"./src/index.ts","type":"module","engines":{"node":">=24"},"exports":{".":"./src/index.ts"},"gitHead":"013071b0ecb9ed3d547eff011ca1533b2c81c6a0","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"tsx src/cli.ts","dev":"tsx --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"tsx src/cli.ts setup","start":"tsx src/index.ts","format":"prettier --write src/ prompts/","build:c":"node native/strsim-c/build.mjs && node native/sqlguard-c/build.mjs","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","build:cpp":"node native/htmlents-cpp/build.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:c && npm run build:cpp && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.16.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.18.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.42.0","marked":"^18.0.0","undici":"^8.0.2","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@clack/prompts":"^1.2.0","@openai/agents":"^0.13.0","@playwright/mcp":"^0.0.78","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.144.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^4.1.3","prettier":"^3.8.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","@vitest/coverage-v8":"^4.1.3","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_1.38.0_1783713385779_0.34203129412700783","host":"s3://npm-registry-packages-npm-production"}},"1.38.1":{"name":"talon-agent","version":"1.38.1","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@1.38.1","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"89e17397fc389419dce6a7c7c4529e53339ecbb6","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-1.38.1.tgz","fileCount":477,"integrity":"sha512-1sAobeGVYjxAL+WsXz2JRqvVESITyCJ1YylYnfa3WPxdmelb89tiH2ZVoJnOmANl2KmHNIB2lAnFti1ga+fYMw==","signatures":[{"sig":"MEQCIEuyPNSbGmQpy2AJtVUR8+uRc/3/aARJ1/b8Qhm9pcmVAiBOkM1avKMwhxtgfaMvfuku/OrTdx4fvfcU6v2C70bGxQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@1.38.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2739148},"main":"./src/index.ts","type":"module","engines":{"node":">=24"},"exports":{".":"./src/index.ts"},"gitHead":"2a62e340a9bcc8ff8a8e22f247e99897cc526bc9","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"tsx src/cli.ts","dev":"tsx --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"tsx src/cli.ts setup","start":"tsx src/index.ts","format":"prettier --write src/ prompts/","build:c":"node native/strsim-c/build.mjs && node native/sqlguard-c/build.mjs","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","build:cpp":"node native/htmlents-cpp/build.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:c && npm run build:cpp && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.16.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.18.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.42.0","marked":"^18.0.0","undici":"^8.0.2","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@clack/prompts":"^1.2.0","@openai/agents":"^0.13.0","@playwright/mcp":"^0.0.78","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.144.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^4.1.3","prettier":"^3.8.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","@vitest/coverage-v8":"^4.1.3","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_1.38.1_1783714519092_0.4242229962825126","host":"s3://npm-registry-packages-npm-production"}},"1.39.0":{"name":"talon-agent","version":"1.39.0","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@1.39.0","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"0eff66ba62f264bb0e77b63d967f51fc667c93f0","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-1.39.0.tgz","fileCount":477,"integrity":"sha512-PhyrY5iDz9xTpNkFu+A15EwqOYH1B+6RVDo5G0T6kWLcpi17/ijCLzIH/D8k+sDVf0d44mRGaACCtuGs/8Hz+g==","signatures":[{"sig":"MEUCIQCIaazE03lobRPRg2b6s+hX8BITM2IXK5Xu6TArx6YBcQIgahtHmjT4RKIMSct6hSUXvVbz+voVFA1ngrefoaHBmp4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@1.39.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2744082},"main":"./src/index.ts","type":"module","engines":{"node":">=24"},"exports":{".":"./src/index.ts"},"gitHead":"3320a5663afe9765d19167815d7dbf92c9d091e7","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"tsx src/cli.ts","dev":"tsx --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"tsx src/cli.ts setup","start":"tsx src/index.ts","format":"prettier --write src/ prompts/","build:c":"node native/strsim-c/build.mjs && node native/sqlguard-c/build.mjs","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","build:cpp":"node native/htmlents-cpp/build.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:c && npm run build:cpp && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.16.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.18.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.42.0","marked":"^18.0.0","undici":"^8.0.2","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@clack/prompts":"^1.2.0","@openai/agents":"^0.13.0","@playwright/mcp":"^0.0.78","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.144.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^4.1.3","prettier":"^3.8.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","@vitest/coverage-v8":"^4.1.3","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_1.39.0_1783715904791_0.0018062303166561655","host":"s3://npm-registry-packages-npm-production"}},"1.40.0":{"name":"talon-agent","version":"1.40.0","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@1.40.0","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"9f2fd1416e4a8e6af68105a191e80796c33c7e4a","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-1.40.0.tgz","fileCount":480,"integrity":"sha512-67/p1GJOqaFKNDtv9qwsNP5444HQdJk9ICVAWpSwV5BDMLm6bqZZ14wCP2eqpnSQXyV3c+3qSeGnJyvUrbPD6w==","signatures":[{"sig":"MEUCIQDLw08wVmYM3eWUbcGpUc1c4LuAU31fkXFFLfMpg/SJPAIgMymzL5hVEYlqwc9s4He6cqVlMP4Uju0WXOOFk3v9ot0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@1.40.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2758992},"main":"./src/index.ts","type":"module","engines":{"node":">=24"},"exports":{".":"./src/index.ts"},"gitHead":"7da86e21ebc2995142deebc7e302649a14c5c3b5","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"tsx src/cli.ts","dev":"tsx --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"tsx src/cli.ts setup","start":"tsx src/index.ts","format":"prettier --write src/ prompts/","build:c":"node native/strsim-c/build.mjs && node native/sqlguard-c/build.mjs","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","build:cpp":"node native/htmlents-cpp/build.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:c && npm run build:cpp && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.16.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.18.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.42.0","marked":"^18.0.0","mem0ai":"^3.0.13","undici":"^8.0.2","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@clack/prompts":"^1.2.0","@openai/agents":"^0.13.0","@playwright/mcp":"^0.0.78","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.144.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^4.1.3","prettier":"^3.8.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","@vitest/coverage-v8":"^4.1.3","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_1.40.0_1783732605024_0.3268668344456016","host":"s3://npm-registry-packages-npm-production"}},"1.40.1":{"name":"talon-agent","version":"1.40.1","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@1.40.1","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"87d61c9e70d57343d9467553a31ab2a1ffd798c4","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-1.40.1.tgz","fileCount":480,"integrity":"sha512-vFzs6bx9+lLzEY69A+6sKDB6UwQU+DWuT34fsbhZnSDg0cJ8BdbtDPGVaYigNNF8y+6nkCLS9gE5vB49fbjceQ==","signatures":[{"sig":"MEYCIQCLw9vDu16z8FA4ZIXOa3jXXl9QTT0w3TgpRoeCX0vkBAIhAJx2urk/RbrOgEAzofZTrNCA/zmL8M9yL+NGbea34dTH","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@1.40.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2762337},"main":"./src/index.ts","type":"module","engines":{"node":">=24"},"exports":{".":"./src/index.ts"},"gitHead":"f79e4e19c6d1f1e9e81e4e0637ec275e3c02156b","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"tsx src/cli.ts","dev":"tsx --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"tsx src/cli.ts setup","start":"tsx src/index.ts","format":"prettier --write src/ prompts/","build:c":"node native/strsim-c/build.mjs && node native/sqlguard-c/build.mjs","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","build:cpp":"node native/htmlents-cpp/build.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:c && npm run build:cpp && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.16.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.18.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.42.0","marked":"^18.0.0","mem0ai":"^3.0.13","undici":"^8.0.2","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@clack/prompts":"^1.2.0","@openai/agents":"^0.13.0","@playwright/mcp":"^0.0.78","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.144.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^4.1.3","prettier":"^3.8.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","@vitest/coverage-v8":"^4.1.3","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_1.40.1_1783759991771_0.1558699440434521","host":"s3://npm-registry-packages-npm-production"}},"1.40.2":{"name":"talon-agent","version":"1.40.2","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@1.40.2","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"6a1770bfdb7190f17ebde1993c636dd20dcdacc6","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-1.40.2.tgz","fileCount":481,"integrity":"sha512-fUBQdZOIZbZEn+0GkK/dXO4AtjzKvkfN2OPO01uKH6Yd86O5ilewVcJYz9nPddhHy4dTn70bBMe9E2vIab6QLA==","signatures":[{"sig":"MEUCIA/VRWzf9lhDkXfmZ26EUr9MLzwpglTD+hUllaxoZTKBAiEA3UNDfouxP6/cN3BCkL1ausQO4TrIzz06DrCteu7UNCM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@1.40.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2764426},"main":"./src/index.ts","type":"module","engines":{"node":">=24"},"exports":{".":"./src/index.ts"},"gitHead":"598f1ae231493a7e06e6b1c4dfa555ad8ca34bee","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"tsx src/cli.ts","dev":"tsx --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"tsx src/cli.ts setup","start":"tsx src/index.ts","format":"prettier --write src/ prompts/","build:c":"node native/strsim-c/build.mjs && node native/sqlguard-c/build.mjs","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","build:cpp":"node native/htmlents-cpp/build.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:c && npm run build:cpp && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.16.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.18.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.42.0","marked":"^18.0.0","mem0ai":"^3.0.13","undici":"^8.0.2","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@clack/prompts":"^1.2.0","@openai/agents":"^0.13.0","@playwright/mcp":"^0.0.78","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.144.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^4.1.3","prettier":"^3.8.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","@vitest/coverage-v8":"^4.1.3","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_1.40.2_1783762534556_0.6461389891008498","host":"s3://npm-registry-packages-npm-production"}},"1.41.0":{"name":"talon-agent","version":"1.41.0","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@1.41.0","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"c94d60fcada4bf14b828e8e37c3dbc7de8ad5147","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-1.41.0.tgz","fileCount":481,"integrity":"sha512-Fkk54DdQ+69NgsCm/iFJQhFe9KmsMkL0iKW7NNhx+zc+/qR2f1W6Qom5IowvQGkSYzFgxZws7pPg0XNZs9ClAw==","signatures":[{"sig":"MEQCIAX0SWlUnirzRMapYukhQOpM3d5K/Amm1U04+I+G7PvvAiBzIY+7prGS+rjI4nbo+HgYgXVrk8TZ3ek4kzpbAJkLeA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@1.41.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2768532},"main":"./src/index.ts","type":"module","engines":{"node":">=24"},"exports":{".":"./src/index.ts"},"gitHead":"d26cf972f996c962d1de1464d312769d2826bcc7","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"tsx src/cli.ts","dev":"tsx --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"tsx src/cli.ts setup","start":"tsx src/index.ts","format":"prettier --write src/ prompts/","build:c":"node native/strsim-c/build.mjs && node native/sqlguard-c/build.mjs","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","build:cpp":"node native/htmlents-cpp/build.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:c && npm run build:cpp && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.16.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.18.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.42.0","marked":"^18.0.0","mem0ai":"^3.0.13","undici":"^8.0.2","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@clack/prompts":"^1.2.0","@openai/agents":"^0.13.0","@playwright/mcp":"^0.0.78","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.144.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^4.1.3","prettier":"^3.8.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","@vitest/coverage-v8":"^4.1.3","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_1.41.0_1783765985205_0.08213420591664011","host":"s3://npm-registry-packages-npm-production"}},"1.42.0":{"name":"talon-agent","version":"1.42.0","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@1.42.0","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"ffb78b548fc63a65e765cd99b00b2628e75b68ae","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-1.42.0.tgz","fileCount":481,"integrity":"sha512-Qot05VYdqAnK+Yv8FNFOa/Eo2z+KZrcTA4lqDMU/k5joWB8QzO1VM+sXbFcK7kRZ5OqmiAfAeAZsEtbDhmWNOg==","signatures":[{"sig":"MEUCIFm9miudjUQ12vWb5rlwuq0BTNDwr3gFyY4Tsb98rRXlAiEAllH02Kv+X6TXfB/+d4L4/XXMHjvCk0cSmQyxtoec1dc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@1.42.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2778558},"main":"./src/index.ts","type":"module","engines":{"node":">=24"},"exports":{".":"./src/index.ts"},"gitHead":"8395d7df4ec148547554e9b8b27eec595a436aaf","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"tsx src/cli.ts","dev":"tsx --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"tsx src/cli.ts setup","start":"tsx src/index.ts","format":"prettier --write src/ prompts/","build:c":"node native/strsim-c/build.mjs && node native/sqlguard-c/build.mjs","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","build:cpp":"node native/htmlents-cpp/build.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:c && npm run build:cpp && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.16.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.18.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.42.0","marked":"^18.0.0","mem0ai":"^3.0.13","undici":"^8.0.2","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@clack/prompts":"^1.2.0","@openai/agents":"^0.13.0","@playwright/mcp":"^0.0.78","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.144.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^4.1.3","prettier":"^3.8.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","@vitest/coverage-v8":"^4.1.3","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_1.42.0_1783777656587_0.18799938996113053","host":"s3://npm-registry-packages-npm-production"}},"1.42.1":{"name":"talon-agent","version":"1.42.1","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@1.42.1","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"b199e2d6697d9c2455bd59aa89b8117bd0606fe3","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-1.42.1.tgz","fileCount":481,"integrity":"sha512-U7QxHMDROyFTLdz83bFCDZLnC1SivLGMWOM3i7/NQGu6ZQeO4lK/8Uu+zqfZZKPTon+SiODPPMpX6IG5pEnvZg==","signatures":[{"sig":"MEUCIC4QjZO1tAILE+FXnu699WP3O6xSact94MqEAY57QWY1AiEApF805o4UmqeMHtFJ6/cp4sa58AKIAaTQDkrlQIq97/4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@1.42.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2778558},"main":"./src/index.ts","type":"module","engines":{"node":">=24"},"exports":{".":"./src/index.ts"},"gitHead":"f3cf73cd8e379fc817c79078ba3fc13dc021f5ff","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"tsx src/cli.ts","dev":"tsx --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"tsx src/cli.ts setup","start":"tsx src/index.ts","format":"prettier --write src/ prompts/","build:c":"node native/strsim-c/build.mjs && node native/sqlguard-c/build.mjs","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","build:cpp":"node native/htmlents-cpp/build.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:c && npm run build:cpp && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.16.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.18.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.42.0","marked":"^18.0.0","mem0ai":"^3.0.13","undici":"^8.0.2","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@clack/prompts":"^1.2.0","@openai/agents":"^0.13.0","@playwright/mcp":"^0.0.78","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.144.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^4.1.3","prettier":"^3.8.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","@vitest/coverage-v8":"^4.1.3","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_1.42.1_1783781084269_0.4589018469744024","host":"s3://npm-registry-packages-npm-production"}},"1.42.2":{"name":"talon-agent","version":"1.42.2","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@1.42.2","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"a4037d5b2c88889a7f536af573e80a26a10f31c9","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-1.42.2.tgz","fileCount":481,"integrity":"sha512-+bLhEqXUvykWiAfJb8tk2nr0n9a/BojWg2w+IOoTjyfxTI1erGNC+l70MwAkm0X0ACViKaEfcP3A4iR+v3XVEg==","signatures":[{"sig":"MEYCIQCSypqhUmg9YLygoSLoPo7yafiiTT3OD35otjtUraBNZAIhAM+Yphqf1vUzyF+t8sZSLVziPwBsRSl6KNBTU764GTer","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@1.42.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2781067},"main":"./src/index.ts","type":"module","engines":{"node":">=24"},"exports":{".":"./src/index.ts"},"gitHead":"5ecb21b7f7a7bd5400cb52c30ffb1000a5e9054f","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"tsx src/cli.ts","dev":"tsx --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"tsx src/cli.ts setup","start":"tsx src/index.ts","format":"prettier --write src/ prompts/","build:c":"node native/strsim-c/build.mjs && node native/sqlguard-c/build.mjs","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","build:cpp":"node native/htmlents-cpp/build.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:c && npm run build:cpp && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.16.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.18.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.42.0","marked":"^18.0.0","mem0ai":"^3.0.13","undici":"^8.0.2","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@clack/prompts":"^1.2.0","@openai/agents":"^0.13.0","@playwright/mcp":"^0.0.78","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.144.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^4.1.3","prettier":"^3.8.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","@vitest/coverage-v8":"^4.1.3","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_1.42.2_1783787231443_0.6233812520102326","host":"s3://npm-registry-packages-npm-production"}},"1.43.0":{"name":"talon-agent","version":"1.43.0","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@1.43.0","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"25c098ae8ebf41bbf9795d4cde38aa7a567e0156","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-1.43.0.tgz","fileCount":481,"integrity":"sha512-T3IqfrqO1/9vnUyfmRjeRGF2Poy/qrcxL9cMUHJB4ofQxdD9tKBLSQad+DtoRkii/1h47cc4zrGPw15U3Z/PvA==","signatures":[{"sig":"MEUCIQDw4ej9rc3w57jsEk53Co0sLjbN0hS0J03UPfh3RKo8OgIgQN1VaW5Dm8hIjaOBHbqPwa8vOobpeCc8e1rfetU3Bh0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@1.43.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2781067},"main":"./src/index.ts","type":"module","engines":{"node":">=24"},"exports":{".":"./src/index.ts"},"gitHead":"8ab703f64dec3670062c65ef9a38e9b33ad0c3f9","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"tsx src/cli.ts","dev":"tsx --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"tsx src/cli.ts setup","start":"tsx src/index.ts","format":"prettier --write src/ prompts/","build:c":"node native/strsim-c/build.mjs && node native/sqlguard-c/build.mjs","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","build:cpp":"node native/htmlents-cpp/build.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:c && npm run build:cpp && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.16.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.18.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.42.0","marked":"^18.0.0","mem0ai":"^3.0.13","undici":"^8.0.2","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@clack/prompts":"^1.2.0","@openai/agents":"^0.13.0","@playwright/mcp":"^0.0.78","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.144.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^4.1.3","prettier":"^3.8.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","@vitest/coverage-v8":"^4.1.3","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_1.43.0_1783795104005_0.6482522984939847","host":"s3://npm-registry-packages-npm-production"}},"1.44.0":{"name":"talon-agent","version":"1.44.0","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@1.44.0","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"9a31965066e94f8240b67f31d854226d4a4284f0","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-1.44.0.tgz","fileCount":481,"integrity":"sha512-dIg79fXuemNg+VwDx8v6yzajoPSPEM1sUXIhi1zGPNPc0K3//idFQGbtGrpikTM5ABWXQuVkaIHUgc+5ZI2Ujw==","signatures":[{"sig":"MEUCIEHukd3GVoiWZKlCI6HxF8WISdo+bLioVmqow0j9h9TpAiEAkvFDJPgvkiKq+SUEJ6P2IdMkiOum/wPIlh9/Iephk0c=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@1.44.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2781067},"main":"./src/index.ts","type":"module","engines":{"node":">=24"},"exports":{".":"./src/index.ts"},"gitHead":"2be0bb78777acf35a2d34f8b700db020807d83e5","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"tsx src/cli.ts","dev":"tsx --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"tsx src/cli.ts setup","start":"tsx src/index.ts","format":"prettier --write src/ prompts/","build:c":"node native/strsim-c/build.mjs && node native/sqlguard-c/build.mjs","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","build:cpp":"node native/htmlents-cpp/build.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:c && npm run build:cpp && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.16.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.18.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.42.0","marked":"^18.0.0","mem0ai":"^3.0.13","undici":"^8.0.2","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@clack/prompts":"^1.2.0","@openai/agents":"^0.13.0","@playwright/mcp":"^0.0.78","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.144.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^4.1.3","prettier":"^3.8.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","@vitest/coverage-v8":"^4.1.3","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_1.44.0_1783795980632_0.5643487704622148","host":"s3://npm-registry-packages-npm-production"}},"1.45.0":{"name":"talon-agent","version":"1.45.0","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@1.45.0","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"c23c93073d9ce874480124fdca0b9062e93ba744","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-1.45.0.tgz","fileCount":481,"integrity":"sha512-v6ZcUkvnUDFuYh/1v0tIibxVs5+81W3o9DvkhRcWG8TPvIOd3MMeT7KXJNYco9vBA7+3In5l0/wI2Kle+6wsCQ==","signatures":[{"sig":"MEUCIQDY1DIoKvYe9vWBuoSTJhD5Ez5i5/TIRPfUO5kFPQUU1QIgebqvbsHWQmj85Dpo2Kuwpxf0S2UGoODYE8sVDeg6fnE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@1.45.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2781067},"main":"./src/index.ts","type":"module","engines":{"node":">=24"},"exports":{".":"./src/index.ts"},"gitHead":"1750a68917b88ac59144b8bf06156f90ebbcd4c1","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"tsx src/cli.ts","dev":"tsx --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"tsx src/cli.ts setup","start":"tsx src/index.ts","format":"prettier --write src/ prompts/","build:c":"node native/strsim-c/build.mjs && node native/sqlguard-c/build.mjs","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","build:cpp":"node native/htmlents-cpp/build.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:c && npm run build:cpp && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.16.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.18.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.42.0","marked":"^18.0.0","mem0ai":"^3.0.13","undici":"^8.0.2","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@clack/prompts":"^1.2.0","@openai/agents":"^0.13.0","@playwright/mcp":"^0.0.78","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.144.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^4.1.3","prettier":"^3.8.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","@vitest/coverage-v8":"^4.1.3","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_1.45.0_1783797335078_0.6472163642980748","host":"s3://npm-registry-packages-npm-production"}},"1.46.0":{"name":"talon-agent","version":"1.46.0","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@1.46.0","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"9e28727e042c25231e23abfe63484e4734d27a05","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-1.46.0.tgz","fileCount":481,"integrity":"sha512-YY1WcdYDTorr98E1YYQ0OE9LGhOTS9fgWpfZ7QaH3K3OcY8Y+3IiWmvLx1Qt/TGCtLirHGsu46/gkgBC2nd/pQ==","signatures":[{"sig":"MEQCIHc8twocqL+DkZYW/AUrIZuq9bwIq+2qTulaUmD2tzNvAiAXYrmJmOaul2eHGXimZgGBKenLqPB9qFuX+GkfiRcItA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@1.46.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2781067},"main":"./src/index.ts","type":"module","engines":{"node":">=24"},"exports":{".":"./src/index.ts"},"gitHead":"d5622b2f4455ae6784cd1fc3d17f2a5182ba6bf6","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"tsx src/cli.ts","dev":"tsx --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"tsx src/cli.ts setup","start":"tsx src/index.ts","format":"prettier --write src/ prompts/","build:c":"node native/strsim-c/build.mjs && node native/sqlguard-c/build.mjs","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","build:cpp":"node native/htmlents-cpp/build.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:c && npm run build:cpp && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.16.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.18.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.42.0","marked":"^18.0.0","mem0ai":"^3.0.13","undici":"^8.0.2","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@clack/prompts":"^1.2.0","@openai/agents":"^0.13.0","@playwright/mcp":"^0.0.78","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.144.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^4.1.3","prettier":"^3.8.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","@vitest/coverage-v8":"^4.1.3","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_1.46.0_1783858748142_0.4400822137196041","host":"s3://npm-registry-packages-npm-production"}},"1.46.1":{"name":"talon-agent","version":"1.46.1","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@1.46.1","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"af43ca484f01d820ee3fa498c6e9a151c932d320","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-1.46.1.tgz","fileCount":481,"integrity":"sha512-SA0XzQnSR3DA+CX4vycGKDTCyszF5jHuJhb/ajiq/JtZlwCh7JmjNs6juXUJURTqXH9ybV4gk0nRoJTMOvCFMw==","signatures":[{"sig":"MEUCIAxtcOJeF7rLVNpt/A1EDymn011E5Yh91CVyjJNpeE9YAiEA7sXlGIEo26F6enDEGfvsHJtnicMAlolQq/djf/a2XF4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@1.46.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2786544},"main":"./src/index.ts","type":"module","engines":{"node":">=24"},"exports":{".":"./src/index.ts"},"gitHead":"75147129d499c92490b223dc9c72c462b02f039f","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"tsx src/cli.ts","dev":"tsx --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"tsx src/cli.ts setup","start":"tsx src/index.ts","format":"prettier --write src/ prompts/","build:c":"node native/strsim-c/build.mjs && node native/sqlguard-c/build.mjs","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","build:cpp":"node native/htmlents-cpp/build.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:c && npm run build:cpp && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.16.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.18.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.42.0","marked":"^18.0.0","mem0ai":"^3.0.13","undici":"^8.0.2","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@clack/prompts":"^1.2.0","@openai/agents":"^0.13.0","@playwright/mcp":"^0.0.78","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.144.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^4.1.3","prettier":"^3.8.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","@vitest/coverage-v8":"^4.1.3","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_1.46.1_1783859702253_0.8246506694287217","host":"s3://npm-registry-packages-npm-production"}},"1.47.0":{"name":"talon-agent","version":"1.47.0","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@1.47.0","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"cd7ce27cf938dc136a36b70797dc844b66cbf15c","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-1.47.0.tgz","fileCount":481,"integrity":"sha512-31C1cMJjwWEaaYX+RcCKvnoqZkmZEu6MJ6z8pvo/rMsZ1CzntoYuCwsJ6PIfpTEIWOPPxJUaPwyh5ugWB6DBIA==","signatures":[{"sig":"MEUCIF5jNa8/FVJXOHzdmQl8GFDqUpjmOn9q2HxmTTHhUZ5kAiEA1eVHH6CLbjO9EeV38yUHu/EvOtj4eEKiByovdbJtNj0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@1.47.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2786544},"main":"./src/index.ts","type":"module","engines":{"node":">=24"},"exports":{".":"./src/index.ts"},"gitHead":"781c56205d1c70ed909e6454cd4810068274b90a","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"tsx src/cli.ts","dev":"tsx --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"tsx src/cli.ts setup","start":"tsx src/index.ts","format":"prettier --write src/ prompts/","build:c":"node native/strsim-c/build.mjs && node native/sqlguard-c/build.mjs","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","build:cpp":"node native/htmlents-cpp/build.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:c && npm run build:cpp && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.16.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.18.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.42.0","marked":"^18.0.0","mem0ai":"^3.0.13","undici":"^8.0.2","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@clack/prompts":"^1.2.0","@openai/agents":"^0.13.0","@playwright/mcp":"^0.0.78","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.144.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^4.1.3","prettier":"^3.8.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","@vitest/coverage-v8":"^4.1.3","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_1.47.0_1783888366744_0.06305264994768378","host":"s3://npm-registry-packages-npm-production"}},"1.47.1":{"name":"talon-agent","version":"1.47.1","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@1.47.1","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"11c8d13f261569dc408d973db67af6841322ca9a","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-1.47.1.tgz","fileCount":483,"integrity":"sha512-xLQjMYnQI4pLgkY24dVu9g7Ydm+RtCiHCrqQfvbKeO25+OVEAzDgHkzmNVbuc5tV5yvpjQD6eJok+ufFzSuLlQ==","signatures":[{"sig":"MEYCIQDUn0NPWV0ta00E868pZsQoOouYrRmW9Bxj5lQQyFuoSQIhANU358G6Jhf/zPJvvgi9mCj48SVDFLg/078L7pINZyJg","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@1.47.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2791784},"main":"./src/index.ts","type":"module","engines":{"node":">=24"},"exports":{".":"./src/index.ts"},"gitHead":"f4db64c1d53b96eb144f8f353d752daa9d0e4061","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"tsx src/cli.ts","dev":"tsx --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"tsx src/cli.ts setup","start":"tsx src/index.ts","format":"prettier --write src/ prompts/","build:c":"node native/strsim-c/build.mjs && node native/sqlguard-c/build.mjs","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","build:cpp":"node native/htmlents-cpp/build.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:c && npm run build:cpp && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.16.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.18.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.42.0","marked":"^18.0.0","mem0ai":"^3.0.13","undici":"^8.0.2","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@clack/prompts":"^1.2.0","@openai/agents":"^0.13.0","@playwright/mcp":"^0.0.78","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.144.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^4.1.3","prettier":"^3.8.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","@vitest/coverage-v8":"^4.1.3","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_1.47.1_1784120406375_0.13433203404724403","host":"s3://npm-registry-packages-npm-production"}},"1.47.2":{"name":"talon-agent","version":"1.47.2","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@1.47.2","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"fd8fc79c65c87d033a4253e13e8e98a29f195424","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-1.47.2.tgz","fileCount":483,"integrity":"sha512-BMYIhX5SO/UsMVx4ishKhEBfOP1ov+L/Jcz51WWr3gA36OQiEFyEfmxg4Qg+0oWFVfcmcAJeVaw/ROrpIWkHnA==","signatures":[{"sig":"MEUCID0raiPYQrmjQDHUzrCNSAOngQQ5P0aCGdrua5yeGW7VAiEAoXBKSwCq92buLQwVv2J4CvgBbnTVFRkH/XITRq5XJQo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@1.47.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2794614},"main":"./src/index.ts","type":"module","engines":{"node":">=24"},"exports":{".":"./src/index.ts"},"gitHead":"f1615c080036053835b5eecbc6c170ed04062e3a","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"tsx src/cli.ts","dev":"tsx --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"tsx src/cli.ts setup","start":"tsx src/index.ts","format":"prettier --write src/ prompts/","build:c":"node native/strsim-c/build.mjs && node native/sqlguard-c/build.mjs","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","build:cpp":"node native/htmlents-cpp/build.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:c && npm run build:cpp && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.16.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.18.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.42.0","marked":"^18.0.0","mem0ai":"^3.0.13","undici":"^8.0.2","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@clack/prompts":"^1.2.0","@openai/agents":"^0.13.0","@playwright/mcp":"^0.0.78","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.144.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^4.1.3","prettier":"^3.8.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","@vitest/coverage-v8":"^4.1.3","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_1.47.2_1784137971950_0.9238908665068211","host":"s3://npm-registry-packages-npm-production"}},"1.48.0":{"name":"talon-agent","version":"1.48.0","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@1.48.0","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"3e17cb801aa004ffa61bab99c4aafa4939125b3c","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-1.48.0.tgz","fileCount":487,"integrity":"sha512-gy/vr+hjPkphEMzqUrIoSKL46rabnVWQGJDuT/V8x/JeoZeJEh3mVSomjOskxBifWTj9Id8tXM6NjEQm0naslQ==","signatures":[{"sig":"MEUCIFWlXrYPY6lpIXVM3JSw/vdA1m8c9VenLERkIVjP4izhAiEAkSX4infIjhFqTJ3uew86DGI7j5ZE+OAYRwqKOOp2+98=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@1.48.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2813894},"main":"./src/index.ts","type":"module","engines":{"node":">=24"},"exports":{".":"./src/index.ts"},"gitHead":"0b6c2e973cc070092f41bdbad7a3474a25e923fb","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"tsx src/cli.ts","dev":"tsx --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"tsx src/cli.ts setup","start":"tsx src/index.ts","format":"prettier --write src/ prompts/","build:c":"node native/strsim-c/build.mjs && node native/sqlguard-c/build.mjs","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","build:cpp":"node native/htmlents-cpp/build.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:c && npm run build:cpp && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.16.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.18.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.42.0","marked":"^18.0.0","mem0ai":"^3.0.13","undici":"^8.0.2","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@clack/prompts":"^1.2.0","@openai/agents":"^0.13.0","@playwright/mcp":"^0.0.78","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.144.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^4.1.3","prettier":"^3.8.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","@vitest/coverage-v8":"^4.1.3","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_1.48.0_1784198306322_0.7770896052335057","host":"s3://npm-registry-packages-npm-production"}},"1.49.0":{"name":"talon-agent","version":"1.49.0","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@1.49.0","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"01be2b6f5cc3abdc92b833681d11e21866020ac5","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-1.49.0.tgz","fileCount":492,"integrity":"sha512-/hik4yrBfMhEOSzwL3U7sM8e/mHyv2+J3hPTCNR2WejeSO0jtOb9x3n+3TgAvhlGVYge7wnyztfWxTHdB5uu9Q==","signatures":[{"sig":"MEUCIASXsyjo9iV8H4L1VIj4M1cwYfS5omlhNnHVuRvfDRh4AiEAvnA43vrzlqPNzguZkfJQRAf3uoAm0Yx/x9Dg/5uLvVM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@1.49.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2826390},"main":"./src/index.ts","type":"module","engines":{"node":">=24"},"exports":{".":"./src/index.ts"},"gitHead":"0d29eb369090350e274e03ae1435a16f699fb072","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"tsx src/cli.ts","dev":"tsx --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"tsx src/cli.ts setup","start":"tsx src/index.ts","format":"prettier --write src/ prompts/","build:c":"node native/strsim-c/build.mjs && node native/sqlguard-c/build.mjs","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","build:cpp":"node native/htmlents-cpp/build.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:c && npm run build:cpp && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.16.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.18.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.42.0","marked":"^18.0.0","mem0ai":"^3.0.13","undici":"^8.0.2","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@clack/prompts":"^1.2.0","@openai/agents":"^0.13.0","@playwright/mcp":"^0.0.78","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.144.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^4.1.3","prettier":"^3.8.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","@vitest/coverage-v8":"^4.1.3","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_1.49.0_1784200438341_0.8113762587211142","host":"s3://npm-registry-packages-npm-production"}},"1.50.0":{"name":"talon-agent","version":"1.50.0","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@1.50.0","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"37cef99df1c722e8a370e862db5f4319dec64312","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-1.50.0.tgz","fileCount":506,"integrity":"sha512-p9Slt9E5vmLG6IJuKA2zCjE9Et2k+T1IK3QkT1UCO+z41Ub7OZRf/G0j2FnBPYV36fZaRkJO/86lEhgh5GShtA==","signatures":[{"sig":"MEUCIGWW6j4miIH0IcXU64q67X8OjOwi6Nj2GgpeNvBqTUU7AiEAljVHTsuUvu4lrLSF67pGq/vUHfvqO4Kf6cxiPsHY4aA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@1.50.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2901744},"main":"./src/index.ts","type":"module","engines":{"node":">=24"},"exports":{".":"./src/index.ts"},"gitHead":"0acbf6e3bc6e105fd07c4429fd337d6b8e3c8a7e","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"tsx src/cli.ts","dev":"tsx --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"tsx src/cli.ts setup","start":"tsx src/index.ts","format":"prettier --write src/ prompts/","build:c":"node native/strsim-c/build.mjs && node native/sqlguard-c/build.mjs","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","build:cpp":"node native/htmlents-cpp/build.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:c && npm run build:cpp && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.16.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.18.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.42.0","marked":"^18.0.0","mem0ai":"^3.0.13","undici":"^8.0.2","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@clack/prompts":"^1.2.0","@openai/agents":"^0.13.0","@playwright/mcp":"^0.0.78","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.144.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^4.1.3","prettier":"^3.8.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","@vitest/coverage-v8":"^4.1.3","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_1.50.0_1784215799636_0.7831088057131959","host":"s3://npm-registry-packages-npm-production"}},"1.51.0":{"name":"talon-agent","version":"1.51.0","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@1.51.0","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"d2fcbe92a1876ea02cfc5a6d70355c71db0a2826","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-1.51.0.tgz","fileCount":510,"integrity":"sha512-mDePgzV2Hr2MLDDx3mRFx4TLBCoGMvYEktaP5A7PxAIlZQ2KLmaUkpzQ7Px7H2AZjLsLlfnA3MiisjDLmPWpLA==","signatures":[{"sig":"MEUCICNA+QEdIj4OuydFbOGpnhmuKo0OPdLrKK0FDhofaT/eAiEAtkpDm4IPnz9YQJc07yT0SrFYFH7PfKila+TwzL0l5WM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@1.51.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2940820},"main":"./src/index.ts","type":"module","engines":{"node":">=24"},"exports":{".":"./src/index.ts"},"gitHead":"f15b785256a6193044ab2e0ddf29de27ec3cb7fd","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"tsx src/cli.ts","dev":"tsx --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"tsx src/cli.ts setup","start":"tsx src/index.ts","format":"prettier --write src/ prompts/","build:c":"node native/strsim-c/build.mjs && node native/sqlguard-c/build.mjs","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","build:cpp":"node native/htmlents-cpp/build.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:c && npm run build:cpp && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.16.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.18.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.42.0","marked":"^18.0.0","mem0ai":"^3.0.13","undici":"^8.0.2","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@clack/prompts":"^1.2.0","@openai/agents":"^0.13.0","@playwright/mcp":"^0.0.78","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.144.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^4.1.3","prettier":"^3.8.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","@vitest/coverage-v8":"^4.1.3","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_1.51.0_1784228812739_0.26103965473705526","host":"s3://npm-registry-packages-npm-production"}},"1.52.0":{"name":"talon-agent","version":"1.52.0","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@1.52.0","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"03ae04bb3cebef0500ce8b8f2c634ce912deab41","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-1.52.0.tgz","fileCount":513,"integrity":"sha512-SsDPcVuzYaZ+r9uD3OdrSNDQVp7fPpJF/feqowDGlomIkKWk6b/tgipp6t8kfwKz92Zpdp8kvlJN5nPCvPt2IA==","signatures":[{"sig":"MEUCIQDvCW3/BcYV0RnG07MYdK2TOIxNjLMl44uAlae2hExNSwIgPjG4vDBiMdb7Qn4w018np8eTqKhRjUw22HommX/2AM4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@1.52.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2956994},"main":"./src/index.ts","type":"module","engines":{"node":">=24"},"exports":{".":"./src/index.ts"},"gitHead":"4c74dded84199b53b15041e592cd3830416fdc22","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"tsx src/cli.ts","dev":"tsx --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"tsx src/cli.ts setup","start":"tsx src/index.ts","format":"prettier --write src/ prompts/","build:c":"node native/strsim-c/build.mjs && node native/sqlguard-c/build.mjs","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","build:cpp":"node native/htmlents-cpp/build.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:c && npm run build:cpp && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.16.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.18.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.42.0","marked":"^18.0.0","mem0ai":"^3.0.13","undici":"^8.0.2","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@clack/prompts":"^1.2.0","@openai/agents":"^0.13.0","@playwright/mcp":"^0.0.78","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.144.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^4.1.3","prettier":"^3.8.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","@vitest/coverage-v8":"^4.1.3","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_1.52.0_1784229804584_0.6523601403126704","host":"s3://npm-registry-packages-npm-production"}},"1.53.0":{"name":"talon-agent","version":"1.53.0","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@1.53.0","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"94c6e7c7b6612e9924869ce3832da5d639ffe485","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-1.53.0.tgz","fileCount":513,"integrity":"sha512-dAhg/RX88VkL5GDAaMzp4OercQmLJpmcREWwlczdKrHja121Rb8AbOO3dVUkyKlSKk7LlJ8trMykYWudz305fQ==","signatures":[{"sig":"MEUCIQCvX5kqdd2c20hfTKEH2u6FwEia/TmhbFBKUtjvMu5ybwIgTrHJ3DzJrqdEzBsg6x3rKpmh3h9UyvXCOju9HAakoQg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@1.53.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2956994},"main":"./src/index.ts","type":"module","engines":{"node":">=24"},"exports":{".":"./src/index.ts"},"gitHead":"62c6be88a98cbda3f9f5927324bd91725f905e6b","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"tsx src/cli.ts","dev":"tsx --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"tsx src/cli.ts setup","start":"tsx src/index.ts","format":"prettier --write src/ prompts/","build:c":"node native/strsim-c/build.mjs && node native/sqlguard-c/build.mjs","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","build:cpp":"node native/htmlents-cpp/build.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:c && npm run build:cpp && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.16.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.18.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.42.0","marked":"^18.0.0","mem0ai":"^3.0.13","undici":"^8.0.2","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@clack/prompts":"^1.2.0","@openai/agents":"^0.13.0","@playwright/mcp":"^0.0.78","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.144.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^4.1.3","prettier":"^3.8.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","@vitest/coverage-v8":"^4.1.3","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_1.53.0_1784233811415_0.42131452594240404","host":"s3://npm-registry-packages-npm-production"}},"2.0.0":{"name":"talon-agent","version":"2.0.0","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@2.0.0","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"11b9ca2bc9fbb94c51cc1016c3960ddb0ec55282","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-2.0.0.tgz","fileCount":514,"integrity":"sha512-M15lzq3MvyiRhwwdzBvwzTwb5PoPdI4oJzAtSEknYutPbbZocUbmdypWBt1eMSSMWtJjmFZqgKqDTmnSe4O3lw==","signatures":[{"sig":"MEYCIQDxXrfLBA2Qec9X3jxwQFaf24qziO6kA31DG5FXIDelnwIhAP08GOIife1j9KPL1ApNqedDvxYuOal9HOz6MXMm0iIe","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@2.0.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2971287},"main":"./src/index.ts","type":"module","engines":{"node":">=24"},"exports":{".":"./src/index.ts"},"gitHead":"2c19b2a2324dd0e77d62ab4bd36b27339ade44e2","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"tsx src/cli.ts","dev":"tsx --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"tsx src/cli.ts setup","start":"tsx src/index.ts","format":"prettier --write src/ prompts/","build:c":"node native/strsim-c/build.mjs && node native/sqlguard-c/build.mjs","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","build:cpp":"node native/htmlents-cpp/build.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:c && npm run build:cpp && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.16.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.18.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.42.0","marked":"^18.0.0","mem0ai":"^3.0.13","undici":"^8.0.2","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@clack/prompts":"^1.2.0","@openai/agents":"^0.13.0","@playwright/mcp":"^0.0.78","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.144.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^4.1.3","prettier":"^3.8.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","@vitest/coverage-v8":"^4.1.3","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_2.0.0_1784298252698_0.734186541151058","host":"s3://npm-registry-packages-npm-production"}},"2.0.1":{"name":"talon-agent","version":"2.0.1","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@2.0.1","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"eafb4d1f4d958fa5871860bab285b4d8ccecc0bc","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-2.0.1.tgz","fileCount":514,"integrity":"sha512-mtV5NCJcFqmYm9FJH0yGL/ypyTRzG80P4EFrbHBdh+H+kgEHNigbPLwl5WMKOr+3O1osjuPW9canLRZm9y+0zw==","signatures":[{"sig":"MEQCIGOarFIvilqZDPw4z1g+ouiYmn0IJUp1jR7PBfFW/juhAiAQURXQ/er3OpgP+NLW7+mRzdzdULf3xLOz4saHyBI3IA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@2.0.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2977631},"main":"./src/index.ts","type":"module","engines":{"node":">=24"},"exports":{".":"./src/index.ts"},"gitHead":"e59bf8f54189d2913f7de65391822d39a5614d41","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"tsx src/cli.ts","dev":"tsx --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"tsx src/cli.ts setup","start":"tsx src/index.ts","format":"prettier --write src/ prompts/","build:c":"node native/strsim-c/build.mjs && node native/sqlguard-c/build.mjs","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","build:cpp":"node native/htmlents-cpp/build.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:c && npm run build:cpp && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.16.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.18.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.42.0","marked":"^18.0.0","mem0ai":"^3.0.13","undici":"^8.0.2","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@clack/prompts":"^1.2.0","@openai/agents":"^0.13.0","@playwright/mcp":"^0.0.78","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.144.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^4.1.3","prettier":"^3.8.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","@vitest/coverage-v8":"^4.1.3","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_2.0.1_1784303772866_0.19622154603687214","host":"s3://npm-registry-packages-npm-production"}},"2.0.2":{"name":"talon-agent","version":"2.0.2","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@2.0.2","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"22341f6eaf4b433beba30e5c51a0882e6e9c1d6c","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-2.0.2.tgz","fileCount":514,"integrity":"sha512-NqI/LmjJ0UJ1Y5r1+glbdZM2rkbhXb6OD1DOUPOu1K53k1Cwys49l2c2RG52CCm+eKGg9X6crHUfOhhSU/OzLw==","signatures":[{"sig":"MEQCIFY/cHyRUI9FLuyInMbQ5BXN5DUL7DunfZHgr7BmZtooAiBWKxmTqXXMlGvqRX7yiBjwx+bz5jMcoRjPYUHqHT/ubg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@2.0.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2977603},"main":"./src/index.ts","type":"module","engines":{"node":">=24"},"exports":{".":"./src/index.ts"},"gitHead":"e5bfbec75beb8671fc19f4ac9cd4a0a97e3b6600","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"tsx src/cli.ts","dev":"tsx --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"tsx src/cli.ts setup","start":"tsx src/index.ts","format":"prettier --write src/ prompts/","build:c":"node native/strsim-c/build.mjs && node native/sqlguard-c/build.mjs","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","build:cpp":"node native/htmlents-cpp/build.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:c && npm run build:cpp && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.16.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.18.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.42.0","marked":"^18.0.0","mem0ai":"^3.0.13","undici":"^8.0.2","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@clack/prompts":"^1.2.0","@openai/agents":"^0.13.0","@playwright/mcp":"^0.0.78","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.144.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^4.1.3","prettier":"^3.8.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","@vitest/coverage-v8":"^4.1.3","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_2.0.2_1784305006953_0.05485237632927786","host":"s3://npm-registry-packages-npm-production"}},"3.0.0":{"name":"talon-agent","version":"3.0.0","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@3.0.0","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"11dd226fe492944e81aa205f466f9b5c182bd6af","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-3.0.0.tgz","fileCount":513,"integrity":"sha512-loVI6lEPNTVG3/uqYD0W8ZqvJ+3ZohvbT6lHjq2OwIf8dFwzIyo+FSvGr5d0BWakAPAUujYGJZPfVFP6odl8Hw==","signatures":[{"sig":"MEYCIQC9w45e78IAIK4/mmNvvDBsfXZuuzwTdghLvNrvaiCMiwIhANbbwwqWuzgk0S1Au4keEMxbhrGcq57kRi4LMURFIYSS","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@3.0.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2968413},"main":"./src/index.ts","type":"module","engines":{"node":">=24"},"exports":{".":"./src/index.ts"},"gitHead":"f1709a53d220dfdeeb08454cf43fc57261b1a189","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"tsx src/cli.ts","dev":"tsx --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"tsx src/cli.ts setup","start":"tsx src/index.ts","format":"prettier --write src/ prompts/","build:c":"node native/strsim-c/build.mjs && node native/sqlguard-c/build.mjs","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","build:cpp":"node native/htmlents-cpp/build.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:c && npm run build:cpp && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.16.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.18.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.42.0","marked":"^18.0.0","mem0ai":"^3.0.13","undici":"^8.0.2","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@clack/prompts":"^1.2.0","@openai/agents":"^0.13.0","@playwright/mcp":"^0.0.78","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.144.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^4.1.3","prettier":"^3.8.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","@vitest/coverage-v8":"^4.1.3","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_3.0.0_1784368389547_0.7051569782205354","host":"s3://npm-registry-packages-npm-production"}},"3.0.1":{"name":"talon-agent","version":"3.0.1","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@3.0.1","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"307f8062baee2d3e34714a5274a03b9952499dae","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-3.0.1.tgz","fileCount":513,"integrity":"sha512-zxNygrybvUidnbcFMMTwyYgpYg65lA8Vn1FR8w7ql0cNSP3hzn7pPASKygH7m6qYQKWuFpUpNAx+SFO8ohwVnQ==","signatures":[{"sig":"MEUCIQCgZWTB8Aet7CC5/j8B1BnPbATLz2t/IvUO4xb8WbgbTwIgc1X+Yfm5dOe4Ql9mLZ8pIyOkTVWPYAHdHhmC7FAfEZM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@3.0.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2972155},"main":"./src/index.ts","type":"module","engines":{"node":">=24"},"exports":{".":"./src/index.ts"},"gitHead":"69c7611c29a6e3c4bbf947e8f9ed647e4f11cbd0","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"tsx src/cli.ts","dev":"tsx --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"tsx src/cli.ts setup","start":"tsx src/index.ts","format":"prettier --write src/ prompts/","build:c":"node native/strsim-c/build.mjs && node native/sqlguard-c/build.mjs","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","build:cpp":"node native/htmlents-cpp/build.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:c && npm run build:cpp && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.16.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.18.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.42.0","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^6.46.0","undici":"^8.0.2","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@clack/prompts":"^1.2.0","@openai/agents":"^0.13.0","@playwright/mcp":"^0.0.78","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.144.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^4.1.3","prettier":"^3.8.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","@vitest/coverage-v8":"^4.1.3","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_3.0.1_1784369960759_0.355453259627883","host":"s3://npm-registry-packages-npm-production"}},"3.0.2":{"name":"talon-agent","version":"3.0.2","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@3.0.2","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"610e1f2eb77188050e5ee3ca8a166b549eae00fe","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-3.0.2.tgz","fileCount":513,"integrity":"sha512-uJl++xfPcybbWYUzte8WByN9IIJ3ROkpr7p6iCaiCKkzf5lIU3uLin/A7SZ5W7D++Ljc7622ruToxn5gRG/BGw==","signatures":[{"sig":"MEUCIQDC+h1t+VhXePDhjORhMx3j0JO7/uDm4X8lWycls2KI3gIgWIs+6+uzvYXF2IqJiQugeObeAAJymVH+q7VYXTgYnps=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@3.0.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2972155},"main":"./src/index.ts","type":"module","engines":{"node":">=24"},"exports":{".":"./src/index.ts"},"gitHead":"8e2e2748c44d495e0481a660752ea38aad4fa1fd","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"tsx src/cli.ts","dev":"tsx --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"tsx src/cli.ts setup","start":"tsx src/index.ts","format":"prettier --write src/ prompts/","build:c":"node native/strsim-c/build.mjs && node native/sqlguard-c/build.mjs","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","build:cpp":"node native/htmlents-cpp/build.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:c && npm run build:cpp && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.16.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.18.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.42.0","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^6.46.0","undici":"^8.0.2","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@clack/prompts":"^1.2.0","@openai/agents":"^0.13.0","@playwright/mcp":"^0.0.78","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.144.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^4.1.3","prettier":"^3.8.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","@vitest/coverage-v8":"^4.1.3","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_3.0.2_1784375404381_0.01771756454346729","host":"s3://npm-registry-packages-npm-production"}},"3.0.3":{"name":"talon-agent","version":"3.0.3","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@3.0.3","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"8154396639dcae530d67ffa5471b060ca0da8228","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-3.0.3.tgz","fileCount":513,"integrity":"sha512-S/Hw8PHG6YicitpI27GsCdwC20ieQ2E1xzDTj6QyCR7jQoOqw8xE9r4PNHf9RDLI0cwhfTyevwZSDwmRAFt4zQ==","signatures":[{"sig":"MEQCIFz6bBRVqhRjiXR90X3Wtw2ekEyz2NzlAttDC9JtZb5aAiA6Is/lUSUF/yju5kkB6WRJHzDKFMbWVzLAf4FSZRPZ3Q==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@3.0.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2975619},"main":"./src/index.ts","type":"module","engines":{"node":">=24"},"exports":{".":"./src/index.ts"},"gitHead":"d88355b254d3d0586bd62453f7e476e0bb850040","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"tsx src/cli.ts","dev":"tsx --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"tsx src/cli.ts setup","start":"tsx src/index.ts","format":"prettier --write src/ prompts/","build:c":"node native/strsim-c/build.mjs && node native/sqlguard-c/build.mjs","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","build:cpp":"node native/htmlents-cpp/build.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:c && npm run build:cpp && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.16.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.18.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.42.0","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^6.46.0","undici":"^8.0.2","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@clack/prompts":"^1.2.0","@openai/agents":"^0.13.0","@playwright/mcp":"^0.0.78","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.144.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^4.1.3","prettier":"^3.8.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","@vitest/coverage-v8":"^4.1.3","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_3.0.3_1784396384464_0.7821585087046219","host":"s3://npm-registry-packages-npm-production"}},"3.0.4":{"name":"talon-agent","version":"3.0.4","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@3.0.4","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"e001a287b4ece618035645cdba0d4572e87b33ee","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-3.0.4.tgz","fileCount":513,"integrity":"sha512-d8npn+zuCAdLD082AJZMiKuTxDqimgVdL5lyKlAa/qvVa/Qjln/05GDTduNWBCxBj5Fw0Y61F5kWQGZXhJLtNg==","signatures":[{"sig":"MEQCIGPNRgUQnuGPYdM8oXPomscmfqrqvdXKvMsh2r2i4JOgAiA6of3mBGdxBjGuwpqQ7HWbSsfz6aDPwx6YlRnpwl+Yow==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@3.0.4","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2977185},"main":"./src/index.ts","type":"module","engines":{"node":">=24"},"exports":{".":"./src/index.ts"},"gitHead":"c6f60de94aad2740480f2e470eb570431bb01e6b","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"tsx src/cli.ts","dev":"tsx --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"tsx src/cli.ts setup","start":"tsx src/index.ts","format":"prettier --write src/ prompts/","build:c":"node native/strsim-c/build.mjs && node native/sqlguard-c/build.mjs","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","build:cpp":"node native/htmlents-cpp/build.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:c && npm run build:cpp && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.16.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.18.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.42.0","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^6.46.0","undici":"^8.0.2","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@clack/prompts":"^1.2.0","@openai/agents":"^0.13.0","@playwright/mcp":"^0.0.78","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.144.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^4.1.3","prettier":"^3.8.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","@vitest/coverage-v8":"^4.1.3","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_3.0.4_1784398620192_0.3057330700479104","host":"s3://npm-registry-packages-npm-production"}},"3.0.5":{"name":"talon-agent","version":"3.0.5","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@3.0.5","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"4754016036a1b5fac24ca80b25cc53d37afa9a08","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-3.0.5.tgz","fileCount":513,"integrity":"sha512-pJEFw3OhiOrrRWmsedNNtUB7T+LsoqQPf/B2WvLF/8PREpe0hi7gp52PY+gzwyXJUysehzmwi6kDH/IXtLQ5SA==","signatures":[{"sig":"MEQCIArXKggV0K5FcHx/2VBgrccztwqGlb5tr34HeFchxtaIAiB+SyE038brdFHwPL33T+Yq8fC835j+t8LrR3j48fZMRQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@3.0.5","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2977585},"main":"./src/index.ts","type":"module","engines":{"node":">=24"},"exports":{".":"./src/index.ts"},"gitHead":"d4ce49c72a1e012a7cee02f8bb591941031292ae","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"tsx src/cli.ts","dev":"tsx --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"tsx src/cli.ts setup","start":"tsx src/index.ts","format":"prettier --write src/ prompts/","build:c":"node native/strsim-c/build.mjs && node native/sqlguard-c/build.mjs","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","build:cpp":"node native/htmlents-cpp/build.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:c && npm run build:cpp && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.16.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.18.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.42.0","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^6.46.0","undici":"^8.0.2","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@clack/prompts":"^1.2.0","@openai/agents":"^0.13.0","@playwright/mcp":"^0.0.78","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.144.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^4.1.3","prettier":"^3.8.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","@vitest/coverage-v8":"^4.1.3","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_3.0.5_1784405910553_0.89309057036177","host":"s3://npm-registry-packages-npm-production"}},"3.1.0":{"name":"talon-agent","version":"3.1.0","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@3.1.0","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"6346cdec770d1a24087515651e44497ebbf8d11d","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-3.1.0.tgz","fileCount":518,"integrity":"sha512-SzzKlpP/glVAuPLSNHtVrbdvoUYz8WTPX2Xub9oxrAr6bGVivFawWhrTIeGM1T5rVv6d+a8i33HxveuMBHZNqw==","signatures":[{"sig":"MEYCIQCF4Kx1bEeZsBpKZkiI7TMWzoBmqCsFmqwUt9Sq/50dgQIhAOsRaoobj7eLyqv1vZqEtrPHuSAWL+pKuz09CHn3bCvA","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@3.1.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2984037},"main":"./src/index.ts","type":"module","engines":{"node":">=24"},"exports":{".":"./src/index.ts"},"gitHead":"c94be7f8cbc36bc6c5c1bbcb501b1f978061f2b3","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"tsx src/cli.ts","dev":"tsx --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"tsx src/cli.ts setup","start":"tsx src/index.ts","format":"prettier --write src/ prompts/","build:c":"node native/strsim-c/build.mjs && node native/sqlguard-c/build.mjs","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","ratchets":"node scripts/check-ratchets.mjs","build:cpp":"node native/htmlents-cpp/build.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"depcruise src","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:c && npm run build:cpp && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.16.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.18.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.42.0","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^6.46.0","undici":"^8.0.2","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@clack/prompts":"^1.2.0","@openai/agents":"^0.13.0","@playwright/mcp":"^0.0.78","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.144.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^4.1.3","prettier":"^3.8.1","@swc/core":"^1.15.46","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^4.1.3","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_3.1.0_1784645856447_0.18014686678594738","host":"s3://npm-registry-packages-npm-production"}},"3.1.1":{"name":"talon-agent","version":"3.1.1","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@3.1.1","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"1261b9133975a839634c47213bc40826e2d0c239","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-3.1.1.tgz","fileCount":520,"integrity":"sha512-iaafgXprmxCrA+OwrZPWS3n+M1+t9+7Sm1cFPdZml/AdWwd9rF1LWKvfWxVO5k5s+4PZVloP8TAEqyJEVRv/3Q==","signatures":[{"sig":"MEUCIF0NG8XB/RB7sEylNOtZbMy7J9V2SYf5+23/ubCWwxOBAiEA00BGVuW2xmIMc2rG/rUFTVkmmjnJIQEKIxfP8N3yTwg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@3.1.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2991014},"main":"./src/index.ts","type":"module","engines":{"node":">=24"},"exports":{".":"./src/index.ts"},"gitHead":"068d6af91a55a9a3e8e09f3ccac5c07450fdfb62","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"tsx src/cli.ts","dev":"tsx --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"tsx src/cli.ts setup","start":"tsx src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","ratchets":"node scripts/check-ratchets.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"depcruise src","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.16.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.18.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.42.0","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^6.46.0","undici":"^8.0.2","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@clack/prompts":"^1.2.0","@openai/agents":"^0.13.0","@playwright/mcp":"^0.0.78","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.144.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^4.1.3","prettier":"^3.8.1","@swc/core":"^1.15.46","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^4.1.3","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_3.1.1_1784647843029_0.753812609059956","host":"s3://npm-registry-packages-npm-production"}},"3.2.0":{"name":"talon-agent","version":"3.2.0","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@3.2.0","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"c9f597dadcf8f5ae1c80c1881737a967424a2075","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-3.2.0.tgz","fileCount":520,"integrity":"sha512-+P6gDUObbfbIb34sxX1FBbKiv8pawlMTOVkKQu4w6eiBV4GzPhHLzAwQcPAHbKOQ/ZcornZalRvEJmC1+mob2A==","signatures":[{"sig":"MEUCIQC4UYkUKheZ+U8Rlc60eP/V9G5LI5zVEWcxbngWSz179QIgdDwWoIqOMDIcgyasZ7ZsWc1qpgJ9VdXUvOpH4N5LqBs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@3.2.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2995630},"main":"./src/index.ts","type":"module","engines":{"node":">=24"},"exports":{".":"./src/index.ts"},"gitHead":"4f394e0e55d32abb6e36f6924329ccef02bd6865","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"tsx src/cli.ts","dev":"tsx --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"tsx src/cli.ts setup","start":"tsx src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","ratchets":"node scripts/check-ratchets.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"depcruise src","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.16.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.18.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.42.0","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^6.46.0","undici":"^8.0.2","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@clack/prompts":"^1.2.0","@openai/agents":"^0.13.0","@playwright/mcp":"^0.0.78","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.145.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^4.1.3","prettier":"^3.8.1","@swc/core":"^1.15.46","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^4.1.3","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_3.2.0_1784669089411_0.19546845779835986","host":"s3://npm-registry-packages-npm-production"}},"3.3.0":{"name":"talon-agent","version":"3.3.0","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@3.3.0","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"143338fad265ceb7b8f838f0cc54a9ffcfbb6522","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-3.3.0.tgz","fileCount":520,"integrity":"sha512-qOZwLUNtxMNXi4WsDcok64PUHQUkLlEIuImJyzuasujm71+1odUN/L0OCMRhwUmZpCpYUkDMKstH+WlDrI3k8w==","signatures":[{"sig":"MEQCIHsHJCJayyQoj6rLF0aZwh/ktgiKf8D9KuqDgC2pQfCaAiBG/+qGAD/fZEA/kbPT5Rp/4ML9Hp0Qw49mUuq+p+MxVA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@3.3.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2999980},"main":"./src/index.ts","type":"module","engines":{"node":">=24"},"exports":{".":"./src/index.ts"},"gitHead":"ee3eb84c12a2ff43cb3c71a4bd6684b870807dbb","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"tsx src/cli.ts","dev":"tsx --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"tsx src/cli.ts setup","start":"tsx src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","ratchets":"node scripts/check-ratchets.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"depcruise src","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.16.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.18.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.42.0","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^6.46.0","undici":"^8.0.2","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@clack/prompts":"^1.2.0","@openai/agents":"^0.13.0","@playwright/mcp":"^0.0.78","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.145.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^4.1.3","prettier":"^3.8.1","@swc/core":"^1.15.46","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^4.1.3","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_3.3.0_1784710951823_0.2620365254557817","host":"s3://npm-registry-packages-npm-production"}},"3.4.0":{"name":"talon-agent","version":"3.4.0","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@3.4.0","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"2819ae614c74cf7b48db18d93d3360309d6b661a","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-3.4.0.tgz","fileCount":523,"integrity":"sha512-ZvfLjA8JIbyrh14ZsUhenlaIFrweRYfbF7kDfCHjme5z1VpjBSyaBevzmHIrn2ZILgRNJELLtmJS1IBln1T/sg==","signatures":[{"sig":"MEUCIQC/2h4KtmzshLRAIDRJBX+s3kGVZxakwkU/EZLKTZ5ATgIgK4bl9QXKQVibCvm3GTZAWjDPXFJkBhdxIFGKJIZ5gvc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@3.4.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3035132},"main":"./src/index.ts","type":"module","engines":{"node":">=24"},"exports":{".":"./src/index.ts"},"gitHead":"ea989a781832f1c93a9fa2b33df0635da0f96b7f","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"tsx src/cli.ts","dev":"tsx --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"tsx src/cli.ts setup","start":"tsx src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","ratchets":"node scripts/check-ratchets.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"depcruise src","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.16.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.18.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.42.0","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^6.46.0","undici":"^8.0.2","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@clack/prompts":"^1.2.0","@openai/agents":"^0.13.0","@playwright/mcp":"^0.0.78","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.145.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^4.1.3","prettier":"^3.8.1","@swc/core":"^1.15.46","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^4.1.3","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_3.4.0_1784716796812_0.9625317965210329","host":"s3://npm-registry-packages-npm-production"}},"3.4.1":{"name":"talon-agent","version":"3.4.1","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@3.4.1","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"c557dce7196acb69fd226d38ebe566115afc60b4","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-3.4.1.tgz","fileCount":523,"integrity":"sha512-fAz5tWK2VykQ90SQT6P+M4ScY0JxMmujvXIRCvcOAFzs0vSVAtgn/KLhBzWKAhQ2RantYk/M0ibZuL7TCk7rpA==","signatures":[{"sig":"MEYCIQDa5GF0Wt82U9/ffWKthzkd4uFO6jBqCjpQvylyOitjjQIhAOw/h5GuzVn5GCbW9GQTgVtmIFdBo0CWSNtIVVYv0rPh","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@3.4.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3035132},"main":"./src/index.ts","type":"module","engines":{"node":">=24"},"exports":{".":"./src/index.ts"},"gitHead":"eb1f6169fb92c4de884eceea34d6825a42238616","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"tsx src/cli.ts","dev":"tsx --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"tsx src/cli.ts setup","start":"tsx src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","ratchets":"node scripts/check-ratchets.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"depcruise src","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.16.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.18.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.42.0","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^6.46.0","undici":"^8.0.2","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@clack/prompts":"^1.2.0","@openai/agents":"^0.13.0","@playwright/mcp":"^0.0.78","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.145.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^4.1.3","prettier":"^3.8.1","@swc/core":"^1.15.46","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^4.1.3","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_3.4.1_1784721541386_0.44807941979143373","host":"s3://npm-registry-packages-npm-production"}},"3.5.0":{"name":"talon-agent","version":"3.5.0","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@3.5.0","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"c450250ae91ae6c8e63f53cbc8b93c055380fa62","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-3.5.0.tgz","fileCount":535,"integrity":"sha512-1wdGSDf+nWAoO9Wj1AJYvN9xu0if7SHVdzn5K6hKQlnENjW8WDqede9C1pEwHG9ww9rDrk8du4LgiqX4xuMnSw==","signatures":[{"sig":"MEUCIAehB80TIk2ZGHDkcTChgJdsxbbAcSVbTB8IaxQK1ieIAiEAiHo3S+nNtPf7NOkchph9pejopJfE3OdCXVCLC0/+w54=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@3.5.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3053233},"main":"./src/index.ts","type":"module","engines":{"node":">=24"},"exports":{".":"./src/index.ts"},"gitHead":"192e09c02381fbbc0785675685ed25d0929063cc","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"tsx src/cli.ts","dev":"tsx --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"tsx src/cli.ts setup","start":"tsx src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","ratchets":"node scripts/check-ratchets.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"depcruise src","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.16.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.18.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.42.0","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^6.46.0","undici":"^8.0.2","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@clack/prompts":"^1.2.0","@openai/agents":"^0.13.0","@playwright/mcp":"^0.0.78","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.145.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^4.1.3","prettier":"^3.8.1","@swc/core":"^1.15.46","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^4.1.3","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_3.5.0_1784731618871_0.594034406266249","host":"s3://npm-registry-packages-npm-production"}},"3.6.0":{"name":"talon-agent","version":"3.6.0","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@3.6.0","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"2e61257fabd2dc1badb4a5b953fbc2ef36270f46","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-3.6.0.tgz","fileCount":535,"integrity":"sha512-pbel4w+6qSmbCpc+QPjheIx+saIDNAMqfytoj05dbxTLk9rifDhS82Lm9asNLJqo1NhVPde9z5KLzA1+CXwb8g==","signatures":[{"sig":"MEUCIQCn3+W7ZKo5L0u4af91bPXvKtmmmg8XWJPjAlp8b79UmgIgTVWf4WiHwCt1b0+98jCdJumYX+b9qaSUSXD3/BRcKx0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@3.6.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3052988},"main":"./src/index.ts","type":"module","engines":{"node":">=24"},"exports":{".":"./src/index.ts"},"gitHead":"92839c96c50c80cfb564e110410286f4db72a9b9","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"tsx src/cli.ts","dev":"tsx --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"tsx src/cli.ts setup","start":"tsx src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","ratchets":"node scripts/check-ratchets.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"depcruise src","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.16.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.18.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.42.0","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^6.46.0","undici":"^8.0.2","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@clack/prompts":"^1.2.0","@openai/agents":"^0.13.0","@playwright/mcp":"^0.0.78","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.145.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^4.1.3","prettier":"^3.8.1","@swc/core":"^1.15.46","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^4.1.3","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_3.6.0_1784761200371_0.7274546254996119","host":"s3://npm-registry-packages-npm-production"}},"3.6.1":{"name":"talon-agent","version":"3.6.1","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@3.6.1","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"f6dd602caaa166babbc02eb22ecf56206f45e22c","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-3.6.1.tgz","fileCount":535,"integrity":"sha512-VMzN3C83FqaGe49MxTuUsx+RybvMGit7+3ZKXoMg4L1bOAogLvlptKlwr6iba2YFWLwXiWTh8Ke7wgFE3saMFw==","signatures":[{"sig":"MEUCIQDqC5r57BS0qUdPTUTPBoYxUEycYgF+hDoA5O6hAYtfsQIgM4t6M2kL+ZoWf3oPZVJdbCetu81Zx4UQNL5XEH/LUZE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@3.6.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3053536},"main":"./src/index.ts","type":"module","engines":{"node":">=24"},"exports":{".":"./src/index.ts"},"gitHead":"49387961505dcd8f4488cde1182b372db5cf0d85","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"tsx src/cli.ts","dev":"tsx --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"tsx src/cli.ts setup","start":"tsx src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","ratchets":"node scripts/check-ratchets.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"depcruise src","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.16.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.18.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.42.0","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^6.46.0","undici":"^8.0.2","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@clack/prompts":"^1.2.0","@openai/agents":"^0.13.0","@playwright/mcp":"^0.0.78","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.145.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^4.1.3","prettier":"^3.8.1","@swc/core":"^1.15.46","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^4.1.3","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_3.6.1_1784761939934_0.562785001062712","host":"s3://npm-registry-packages-npm-production"}},"3.6.2":{"name":"talon-agent","version":"3.6.2","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@3.6.2","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"951b41137f05c5ac388a44e43c27c2ea5a51132d","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-3.6.2.tgz","fileCount":535,"integrity":"sha512-IGyzmq3MnJ98Fk97xlweZ4ui1HzWuUOoc/DN0l7vmmAPkWEI9UmFPoCr26EP9JwvDmq9xGqPQEr2WSHbH/7uow==","signatures":[{"sig":"MEYCIQDV4GaVj5lkJbN10HUAwXt0WI1eQd+Oj993252UjGAUZAIhAMbsdQpfFPzDqM1CdCz/7q1AAJ7Xq1uMFf70PgiKMPiz","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@3.6.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3053664},"main":"./src/index.ts","type":"module","engines":{"node":">=24"},"exports":{".":"./src/index.ts"},"gitHead":"2d179aec64f112f7ef5be2a6feda8245fb28b08f","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"tsx src/cli.ts","dev":"tsx --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"tsx src/cli.ts setup","start":"tsx src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","ratchets":"node scripts/check-ratchets.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"depcruise src","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.16.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.18.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.42.0","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^6.46.0","undici":"^8.0.2","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@clack/prompts":"^1.2.0","@openai/agents":"^0.13.0","@playwright/mcp":"^0.0.78","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.145.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^4.1.3","prettier":"^3.8.1","@swc/core":"^1.15.46","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^4.1.3","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_3.6.2_1784764363502_0.5790281412958891","host":"s3://npm-registry-packages-npm-production"}},"3.6.3":{"name":"talon-agent","version":"3.6.3","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@3.6.3","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"8ae2dbc1ee33c7e2c53cb2a04e1f1756b25b0c50","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-3.6.3.tgz","fileCount":535,"integrity":"sha512-Z+Zp/j+9icT/Sxoqa3/JXYy4w8K07HW0pOfCESjEufGeeebwrAsMzmCezoFiYsXr0wykYXMs/CLrjHShYDxutA==","signatures":[{"sig":"MEUCIBq51wMrGSUIq+X9sxX8CRWY7t1KHkDRLA/o0DQ56pdEAiEAkqyY54wNLntf12D1SJsR67VSKgIqShGZqA6hLkLlVrw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@3.6.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3059957},"main":"./src/index.ts","type":"module","engines":{"node":">=24"},"exports":{".":"./src/index.ts"},"gitHead":"75d461b283099bb9dbca663303c5c763f4fe333f","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"tsx src/cli.ts","dev":"tsx --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"tsx src/cli.ts setup","start":"tsx src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","ratchets":"node scripts/check-ratchets.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"depcruise src","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.16.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.18.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.42.0","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^6.46.0","undici":"^8.0.2","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@clack/prompts":"^1.2.0","@openai/agents":"^0.13.0","@playwright/mcp":"0.0.56","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.145.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^4.1.3","prettier":"^3.8.1","@swc/core":"^1.15.46","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^4.1.3","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_3.6.3_1784882250613_0.9774245796271595","host":"s3://npm-registry-packages-npm-production"}},"3.7.0":{"name":"talon-agent","version":"3.7.0","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@3.7.0","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"a3e082a38400eb009b3955072f22c529ac6b6873","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-3.7.0.tgz","fileCount":535,"integrity":"sha512-wR1ZhFxURoazLncybcxOXBNDR1m6UP2XEqPLih1jd6NezvENXNBD1t9vV7pCp9FJaz6UEWCsLnPg2S2Vhu33Mw==","signatures":[{"sig":"MEUCIEvvrgWYdiPRBrrm6olRYKtX1CzgZx/w5uXtr/p4W2v/AiEApjUH3NfwSPPwiv4umHvEL1+wuds67g1Lr/WA6/k+fxo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@3.7.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3059957},"main":"./src/index.ts","type":"module","engines":{"node":">=24"},"exports":{".":"./src/index.ts"},"gitHead":"e32cf3e5894faee4563b47e3bf75d00afb5fef6c","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"tsx src/cli.ts","dev":"tsx --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"tsx src/cli.ts setup","start":"tsx src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","ratchets":"node scripts/check-ratchets.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"depcruise src","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.16.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.18.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.42.0","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^6.46.0","undici":"^8.0.2","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@clack/prompts":"^1.2.0","@openai/agents":"^0.13.0","@playwright/mcp":"0.0.56","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.145.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^4.1.3","prettier":"^3.8.1","@swc/core":"^1.15.46","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^4.1.3","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_3.7.0_1784898200227_0.05023600353053004","host":"s3://npm-registry-packages-npm-production"}},"3.8.0":{"name":"talon-agent","version":"3.8.0","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@3.8.0","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"01400531073072e0339fe5d34a9cb64ec783fae6","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-3.8.0.tgz","fileCount":538,"integrity":"sha512-e6ATaeKUEhAeBNjF8878ZMT3Fqj3WmEfHITng7nvUE/k213KdqT+O89KplUQncoqJiuzyJV8Tlq1VBd/fP9WrQ==","signatures":[{"sig":"MEUCIGHXJ1ZzpxjBCL1uW84/97hbxFsLHzkn8YTUwVrJBEJqAiEAxeQ+y3LMrn8EaObIJW/xIwCPJ3xj9TdIjM6Wd8VFcEg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@3.8.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3078769},"main":"./src/index.ts","type":"module","engines":{"node":">=24"},"exports":{".":"./src/index.ts"},"gitHead":"60594315d1dcd998d4d241f50bfd332f29273b0a","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"tsx src/cli.ts","dev":"tsx --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"tsx src/cli.ts setup","start":"tsx src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","ratchets":"node scripts/check-ratchets.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"depcruise src","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.16.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.18.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.42.0","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^6.46.0","undici":"^8.0.2","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@clack/prompts":"^1.2.0","@openai/agents":"^0.13.0","@playwright/mcp":"0.0.78","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.145.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^4.1.3","prettier":"^3.8.1","@swc/core":"^1.15.46","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^4.1.3","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_3.8.0_1784981856686_0.8080447388575507","host":"s3://npm-registry-packages-npm-production"}},"3.8.1":{"name":"talon-agent","version":"3.8.1","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@3.8.1","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"3a1dafce02277691fbe61e3dc10992d83a7f1ccb","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-3.8.1.tgz","fileCount":537,"integrity":"sha512-wZbXXZcTbIo+7OTv5o2oni/R+uj1gnLzD9F7BRRPpEQ7yW8RLFs0CHq2ex00YJtYPUm129CevwkyzAZidXSLDQ==","signatures":[{"sig":"MEQCIGmv2awKAKH/LlmfD3ed87V188J5E1JwshORlbpVgM57AiB7qftXbZE+mUpVZd76mL3u9fE4oJZGkI+LIoOpaxFnIw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@3.8.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3073502},"main":"./src/index.ts","type":"module","engines":{"node":">=24"},"exports":{".":"./src/index.ts"},"gitHead":"e0a578136e560651a7586ff2ace5ae898b162593","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"tsx src/cli.ts","dev":"tsx --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"tsx src/cli.ts setup","start":"tsx src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","ratchets":"node scripts/check-ratchets.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"depcruise src","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.16.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.18.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.42.0","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^6.46.0","undici":"^8.0.2","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@clack/prompts":"^1.2.0","@openai/agents":"^0.13.0","@playwright/mcp":"0.0.78","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.145.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^4.1.3","prettier":"^3.8.1","@swc/core":"^1.15.46","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^4.1.3","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_3.8.1_1784982699786_0.22836123901780492","host":"s3://npm-registry-packages-npm-production"}},"3.8.2":{"name":"talon-agent","version":"3.8.2","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@3.8.2","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"88c243df15847038655d92f425dd15a15576305c","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-3.8.2.tgz","fileCount":537,"integrity":"sha512-WPFH2iBgGtEyiwdrxsfyKNHZxAyMqg4WEsmQfHNtztIPl/hwgYFUQ58srkkNTwD4XkI390hBsRTAxF03wYaXwA==","signatures":[{"sig":"MEUCIQD3HSCk8srl3FQwIsSX2vEx3PuHJAwLa7u7w5GpKSEokQIgXAuBLyS2dSdpTUR1yQ88ZAnTvvyt2BWE8XegLAG8wPk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@3.8.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3073496},"main":"./src/index.ts","type":"module","engines":{"node":">=24"},"exports":{".":"./src/index.ts"},"gitHead":"fd60f969957c3ef07150797c31a3be941289ce5e","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"tsx src/cli.ts","dev":"tsx --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"tsx src/cli.ts setup","start":"tsx src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","ratchets":"node scripts/check-ratchets.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"depcruise src","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.16.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.18.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.42.0","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^6.46.0","undici":"^8.0.2","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@clack/prompts":"^1.2.0","@openai/agents":"^0.13.0","@playwright/mcp":"0.0.78","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.145.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^4.1.3","prettier":"^3.8.1","@swc/core":"^1.15.46","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^4.1.3","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_3.8.2_1784990744259_0.8965797964552218","host":"s3://npm-registry-packages-npm-production"}},"3.9.0":{"name":"talon-agent","version":"3.9.0","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@3.9.0","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"e35a76c33309bc077b294eadd69c793e7cf69115","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-3.9.0.tgz","fileCount":528,"integrity":"sha512-WnJV/+lDUCfENMJLqJk26VXkCs8WTzhbvmvl27UmGzmW/rQrsnPREe+LtkHhlbvMP6n1VvGoUxKYfPQlDaYHGQ==","signatures":[{"sig":"MEQCID4fNG5TQH0XmcFgc6ApoeUWiwb+rje6NZmikPbMYGc5AiArHq/jlCg8tYI1Fuk/CeiXFv4nuIW+4fDfJwKjvdzmhQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@3.9.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3084159},"main":"./src/index.ts","type":"module","engines":{"node":">=24"},"exports":{".":"./src/index.ts"},"gitHead":"b2075f869b290c104330500f84bffd37a8c6c8f9","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"tsx src/cli.ts","dev":"tsx --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"tsx src/cli.ts setup","start":"tsx src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","ratchets":"node scripts/check-ratchets.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"depcruise src","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.16.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.18.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.42.0","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^6.46.0","undici":"^8.0.2","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@clack/prompts":"^1.2.0","@openai/agents":"^0.13.0","@playwright/mcp":"0.0.78","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.145.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^4.1.3","prettier":"^3.8.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^4.1.3","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_3.9.0_1784994291887_0.6585581012429085","host":"s3://npm-registry-packages-npm-production"}},"3.9.1":{"name":"talon-agent","version":"3.9.1","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@3.9.1","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"929858ead234cd5ec9be6de454c83c62ef3bf2ae","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-3.9.1.tgz","fileCount":528,"integrity":"sha512-TXom40jvkwoxEz22SeWj+BUuW1tJFaLq7oGK+QGn7gI3f/pz+utFCTUgMyBY11XnrAFeCJEbkvBGomlggb7GPQ==","signatures":[{"sig":"MEUCIQC7pd9DWMP70SAYJKMdJV3rCIomSEhnFvjYs9O9xDIAbgIgD6MY+AIm5j4VPcx8z+QJYKCryK6s4A6ndQEn1kEOxuM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@3.9.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3084159},"main":"./src/index.ts","type":"module","engines":{"node":">=24"},"exports":{".":"./src/index.ts"},"gitHead":"409d8a7c8890d717e9cedb21b45ad09275b94729","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"tsx src/cli.ts","dev":"tsx --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"tsx src/cli.ts setup","start":"tsx src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","ratchets":"node scripts/check-ratchets.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"depcruise src","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.16.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.18.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.42.0","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^6.46.0","undici":"^8.0.2","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@clack/prompts":"^1.2.0","@openai/agents":"^0.13.0","@playwright/mcp":"0.0.78","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.145.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^4.1.3","prettier":"^3.8.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^4.1.3","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_3.9.1_1784996898684_0.30266535752076096","host":"s3://npm-registry-packages-npm-production"}},"3.10.0":{"name":"talon-agent","version":"3.10.0","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@3.10.0","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"e5bea8a999741a0b5b0737b1db303cf32b52296d","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-3.10.0.tgz","fileCount":528,"integrity":"sha512-6UuF/OA+euYbsEc9yaehD/FYu7UdY9PexzFDlcwUnmcMPwARTHu6d5lw0qw3dvD2kwq29sikAcu9V+SlrZ7XIA==","signatures":[{"sig":"MEUCIQCQ/CY1pAFploGs8jk92oNMRAROmgacSUJTvs02GOQdDAIgZQyiy9LKa6K+zbTcNqC5oZlEimTr2Kv879MX0oLZoss=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@3.10.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3089328},"main":"./src/index.ts","type":"module","engines":{"node":">=24"},"exports":{".":"./src/index.ts"},"gitHead":"f4bd2b877f5727221ed353a35c3dcd98645f8f6c","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"tsx src/cli.ts","dev":"tsx --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"tsx src/cli.ts setup","start":"tsx src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","ratchets":"node scripts/check-ratchets.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"depcruise src","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.16.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.18.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.42.0","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^6.46.0","undici":"^8.0.2","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@clack/prompts":"^1.2.0","@openai/agents":"^0.13.0","@playwright/mcp":"0.0.78","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.145.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^4.1.3","prettier":"^3.8.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^4.1.3","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_3.10.0_1785014322971_0.823155590204105","host":"s3://npm-registry-packages-npm-production"}},"3.11.0":{"name":"talon-agent","version":"3.11.0","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@3.11.0","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"96d0c7f9e03a7b35e6bc86ce1aafadd4d7e45054","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-3.11.0.tgz","fileCount":528,"integrity":"sha512-dmofIb3+NDMPgQvc4uT59ub91XQKe5Hyf1/O8q7A0vi+8QgsFshRX7gYrOFVZdQnleaoxMh6BCgg9p330QI6sg==","signatures":[{"sig":"MEUCIHVap7Al+9Fb+WV4YbPX6kn75QAoFJITEFwzZ8+pb5buAiEAtnt8PXQRsGlNV71mhm14PnG7hBs103EkAPROJeeooNs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@3.11.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3089328},"main":"./src/index.ts","type":"module","engines":{"node":">=24"},"exports":{".":"./src/index.ts"},"gitHead":"255495613d67e73d97fea7099a68f5c55c637674","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"tsx src/cli.ts","dev":"tsx --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"tsx src/cli.ts setup","start":"tsx src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","ratchets":"node scripts/check-ratchets.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"depcruise src","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.16.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.18.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.42.0","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^6.46.0","undici":"^8.0.2","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@clack/prompts":"^1.2.0","@openai/agents":"^0.13.0","@playwright/mcp":"0.0.78","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.145.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^4.1.3","prettier":"^3.8.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^4.1.3","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_3.11.0_1785014938158_0.3563175689292517","host":"s3://npm-registry-packages-npm-production"}},"3.11.1":{"name":"talon-agent","version":"3.11.1","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@3.11.1","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"53ae0c7a20883261b66750a5ad11af8a4c01063e","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-3.11.1.tgz","fileCount":528,"integrity":"sha512-5+1y1K9JNbPRtyY31tcH/RR+pGrQbAqpLRWVlbWakN6fhv2bCaG5z2nCceyjuGjkzlyGh9Ef5/mI6NvWAD6t2w==","signatures":[{"sig":"MEUCIQDNvdJYZ+/JdpbVNtI9Mphre7IO1UbXS0HE7AztogKhGAIgKiLNBwstuf6eseoaxKaZINfbYIMxNhSFMiZ6ThRne0M=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@3.11.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3089328},"main":"./src/index.ts","type":"module","engines":{"node":">=24"},"exports":{".":"./src/index.ts"},"gitHead":"3fd5cfc05a04d7e5a37e859d38079cd9e4221c6d","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"tsx src/cli.ts","dev":"tsx --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"tsx src/cli.ts setup","start":"tsx src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","ratchets":"node scripts/check-ratchets.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"depcruise src","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.16.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.18.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.42.0","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^6.46.0","undici":"^8.0.2","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@clack/prompts":"^1.2.0","@openai/agents":"^0.13.0","@playwright/mcp":"0.0.78","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.145.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^4.1.3","prettier":"^3.8.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^4.1.3","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_3.11.1_1785070026491_0.8383584327282902","host":"s3://npm-registry-packages-npm-production"}},"3.12.0":{"name":"talon-agent","version":"3.12.0","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@3.12.0","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"6c8c6202d40ae01b021b318a1306a00e4462d6aa","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-3.12.0.tgz","fileCount":528,"integrity":"sha512-wEIW6FHMTuEYzr50wqtdeZmHj1o9p7us7z2nem/Kt088JCFv+twuAWbR8SUGjywd2hSk/oyzrlLcrNlpMp6/tw==","signatures":[{"sig":"MEQCIFLhPUYZ6JEf7sFrvZj75af6d9MyhilAxqmyfg2obYQIAiBqrRs0frx59fq+XsvWyvcMDfMYwBYq7uZZcd/nWFBbZA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@3.12.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3094534},"main":"./src/index.ts","type":"module","engines":{"node":">=24"},"exports":{".":"./src/index.ts"},"gitHead":"54202f2bdee26acc17846caa10ce6d688cb65ad1","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"tsx src/cli.ts","dev":"tsx --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"tsx src/cli.ts setup","start":"tsx src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","ratchets":"node scripts/check-ratchets.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"depcruise src","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.16.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.18.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.42.0","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^6.46.0","undici":"^8.0.2","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@clack/prompts":"^1.2.0","@openai/agents":"^0.13.0","@playwright/mcp":"0.0.78","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.145.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^4.1.3","prettier":"^3.8.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^4.1.3","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_3.12.0_1785143820838_0.3392881504365255","host":"s3://npm-registry-packages-npm-production"}},"3.12.1":{"name":"talon-agent","version":"3.12.1","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@3.12.1","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"ac4f53b39047fa0b9ec4a52a0158c6883a263eea","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-3.12.1.tgz","fileCount":528,"integrity":"sha512-iJnawprTic+/tf+igZIqFgP8NwQ+qPZ/9RaGecx2Mt4CfnIRjmAUA/duzhb6rDuulYit+3C3RUBdsPbzLO+w5g==","signatures":[{"sig":"MEQCIBM778vEse2BgNz9eDYUrUaNPFq5Dms0NbpVz2Hlxcx4AiBe18zvHwhw63bprD50oIYTd0ozye9ibe0h/+9a5I6z3w==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@3.12.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3097703},"main":"./src/index.ts","type":"module","engines":{"node":">=24"},"exports":{".":"./src/index.ts"},"gitHead":"d3bcf8928bb551e43e400765a41df694e5d5e9a9","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"tsx src/cli.ts","dev":"tsx --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"tsx src/cli.ts setup","start":"tsx src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","ratchets":"node scripts/check-ratchets.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"depcruise src","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.16.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.18.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.42.0","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^6.46.0","undici":"^8.0.2","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@clack/prompts":"^1.2.0","@openai/agents":"^0.13.0","@playwright/mcp":"0.0.78","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.145.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^4.1.3","prettier":"^3.8.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^4.1.3","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_3.12.1_1785249760664_0.2449133796094567","host":"s3://npm-registry-packages-npm-production"}},"3.12.2":{"name":"talon-agent","version":"3.12.2","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@3.12.2","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"11c67d5db2c0afe813405ccc1977184e387f007b","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-3.12.2.tgz","fileCount":528,"integrity":"sha512-JNnG5QDe+hdPktVzFWXTcjqHtgR7iDHhG+8qKJNa4iadxzKg3LPRn2wXOigHCx/r1/bak2U26Lj4PtXEC7CcNA==","signatures":[{"sig":"MEUCIQCQZC8CmYqzpoD84vbvfrAr4DNogGlgP+1yrfbGFyTh1QIgXlGmKaqfebdXA3DcyOvoRVII+mlEtuFQ1+XMkEwwcBM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@3.12.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3099749},"main":"./src/index.ts","type":"module","engines":{"node":">=24"},"exports":{".":"./src/index.ts"},"gitHead":"52daa82152c3cf4d2701530a0e01cc5a2d216358","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"tsx src/cli.ts","dev":"tsx --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"tsx src/cli.ts setup","start":"tsx src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","ratchets":"node scripts/check-ratchets.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"depcruise src","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.16.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.18.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.42.0","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^6.46.0","undici":"^8.0.2","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@clack/prompts":"^1.2.0","@openai/agents":"^0.14.0","@playwright/mcp":"0.0.78","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.145.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^4.1.3","prettier":"^3.8.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^4.1.3","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_3.12.2_1785346955355_0.11026677260864126","host":"s3://npm-registry-packages-npm-production"}},"3.12.3":{"name":"talon-agent","version":"3.12.3","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@3.12.3","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"f4df1c06b39808a077963cf76ed4c41f9798fb63","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-3.12.3.tgz","fileCount":528,"integrity":"sha512-l9S49u8lMRsKG5mMmMeMKoAwaQPDh6OXyIdeTtQnpzqCwfG5SPeeXcxB77y452p83eDbG5zlhH/SQnRSw2vPxw==","signatures":[{"sig":"MEYCIQCdHqi968lZwdK8d5GxR/+wAdmR2ElbzMm5BkkdUIzhugIhAJ5NgEYscV5mYXYesMG2uIcqw4ZzG/jddZGUVM5P7vF1","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@3.12.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3101403},"main":"./src/index.ts","type":"module","engines":{"node":">=24"},"exports":{".":"./src/index.ts"},"gitHead":"60f8e7028190b18a40354f27c2d396c824bc4caf","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"tsx src/cli.ts","dev":"tsx --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"tsx src/cli.ts setup","start":"tsx src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","ratchets":"node scripts/check-ratchets.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"depcruise src","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.16.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.18.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.42.0","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^6.46.0","undici":"^8.0.2","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@clack/prompts":"^1.2.0","@openai/agents":"^0.14.0","@playwright/mcp":"0.0.78","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.145.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^4.1.3","prettier":"^3.8.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^4.1.3","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_3.12.3_1785350578885_0.5911491341668422","host":"s3://npm-registry-packages-npm-production"}},"3.12.4":{"name":"talon-agent","version":"3.12.4","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@3.12.4","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"be147d76e7378f06bfaf77a5ce68bcda99e62591","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-3.12.4.tgz","fileCount":528,"integrity":"sha512-6iCwBz1GsUp+lvnQ7W5OEiJWS1SRyefPxecI+xcOCkHPNBPcrFcONYsqDBJSoUBnTU7rBtJy2WmwPIHFbRvy4A==","signatures":[{"sig":"MEQCIHyWGPj9ylrFsBt6iezdNHrDRZXkdJ7z5Oa+frkOQmxJAiAs+2KjFYcaka78SE5/oXKS/CKxZahZuIcJ82AGXBcGHQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@3.12.4","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3101403},"main":"./src/index.ts","type":"module","engines":{"node":">=24"},"exports":{".":"./src/index.ts"},"gitHead":"691f18faadd4a4ff6cc8159b95ff62ec4b67ee1f","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"tsx src/cli.ts","dev":"tsx --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"tsx src/cli.ts setup","start":"tsx src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","ratchets":"node scripts/check-ratchets.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"depcruise src","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.16.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.18.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.42.0","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^6.46.0","undici":"^8.0.2","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@clack/prompts":"^1.2.0","@openai/agents":"^0.14.0","@playwright/mcp":"0.0.78","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.146.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^4.1.3","prettier":"^3.8.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^4.1.3","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_3.12.4_1785417667500_0.4086831855865469","host":"s3://npm-registry-packages-npm-production"}},"3.12.5":{"name":"talon-agent","version":"3.12.5","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@3.12.5","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"9483adb5079ff1f0b0764d748a70228cdad6bd90","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-3.12.5.tgz","fileCount":528,"integrity":"sha512-B6oPE88YSYMz3vzeHCjJS5wa6fvBiSF1cU8ZwqE2HQ7C0d/vY/i+5DXl/UjO0T8ynol3f03bJBpNjU1URBT9Ww==","signatures":[{"sig":"MEUCIQDHSowAC21Bu+Ok4ucjbXroqCJ0owObYut+Xb2wnfK8hQIgZ8s32ThRkgHZgansSHOBA4xwS42tV1xqTpfmwPJWhWU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@3.12.5","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3101403},"main":"./src/index.ts","type":"module","engines":{"node":">=24"},"exports":{".":"./src/index.ts"},"gitHead":"fe0e74841cd7aba72cdaf2b7fe03f7fe024ac254","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"tsx src/cli.ts","dev":"tsx --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"tsx src/cli.ts setup","start":"tsx src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","ratchets":"node scripts/check-ratchets.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"depcruise src","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.16.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.18.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.42.0","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^6.46.0","undici":"^8.0.2","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@clack/prompts":"^1.2.0","@openai/agents":"^0.14.0","@playwright/mcp":"0.0.78","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.146.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^4.1.3","prettier":"^3.8.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^4.1.3","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_3.12.5_1785426051784_0.908216313276035","host":"s3://npm-registry-packages-npm-production"}},"3.13.0":{"name":"talon-agent","version":"3.13.0","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@3.13.0","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"ec68cda8938da665e247be5101b53e998d4911b3","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-3.13.0.tgz","fileCount":530,"integrity":"sha512-UYwqBkKaFWba0zHMep4iib6GfOd9VlzLVySSzbJJPKccK65kJGx8uV8dtefJz9m46HGxVEm5bze9Cj+C5VFFww==","signatures":[{"sig":"MEQCIHHH7HXF5luZsi9u/TP6KpFuWEr+ihzdemSNSWJIL0BXAiALDYGZ3D6gHXdGDPdO3Y1wRk/DV8dND1FqOUJGF3RzDg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@3.13.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3126950},"main":"./src/index.ts","type":"module","engines":{"node":">=24"},"exports":{".":"./src/index.ts"},"gitHead":"e79b84a63b6a3376051b3f3798ffdeca2dd2166e","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"tsx src/cli.ts","dev":"tsx --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"tsx src/cli.ts setup","start":"tsx src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","ratchets":"node scripts/check-ratchets.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"depcruise src","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.16.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.18.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.42.0","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^6.46.0","undici":"^8.0.2","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@clack/prompts":"^1.2.0","@openai/agents":"^0.14.0","@playwright/mcp":"0.0.78","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.146.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^4.1.3","prettier":"^3.8.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^4.1.3","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_3.13.0_1785428438276_0.16109744676859172","host":"s3://npm-registry-packages-npm-production"}},"3.14.0":{"name":"talon-agent","version":"3.14.0","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@3.14.0","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"4eeb5dbaef7dadbc2c4d74bb844f4c0f9d02660c","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-3.14.0.tgz","fileCount":531,"integrity":"sha512-BicUJD1fxPdhWHD575CLs9AvCghKMaTlMVWs2wUvKz6yQqyMeZSoWXCAwctwX2A6FcTdoQw225H5wH0HiJQRPA==","signatures":[{"sig":"MEUCICV72vvVUAc4qaYblEpwI9rptvfbf1hFwLwDKUxGoIz0AiEArVT0LINhWRNTvdhj5Qbh6SgospKe/ueBoaxbbs6resw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@3.14.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3139180},"main":"./src/index.ts","type":"module","engines":{"node":">=24"},"exports":{".":"./src/index.ts"},"gitHead":"4f6558dd87b56a038ec50462fcbc8bb46bb62375","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"tsx src/cli.ts","dev":"tsx --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"tsx src/cli.ts setup","start":"tsx src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","ratchets":"node scripts/check-ratchets.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"depcruise src","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.16.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.18.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.42.0","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^6.46.0","undici":"^8.0.2","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@clack/prompts":"^1.2.0","@openai/agents":"^0.14.0","@playwright/mcp":"0.0.78","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.146.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^4.1.3","prettier":"^3.8.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^4.1.3","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_3.14.0_1785432208644_0.7476215409384706","host":"s3://npm-registry-packages-npm-production"}},"3.15.0":{"name":"talon-agent","version":"3.15.0","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@3.15.0","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"a1f32e3f7b8889b7d0a722459003f6079c40f02a","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-3.15.0.tgz","fileCount":531,"integrity":"sha512-8kCtpaV3k0Q/7QCD4buC2Bh9jCHwh3T51x8vT4BYr4UCd8FJJuxMqUiGnNpSqN9ACBzNtthkosbuHdQuxiu6iQ==","signatures":[{"sig":"MEQCIFv7a/P5QDVq/3ndkvdThe/Dr5VJwpo9lZmibb/KSnZ9AiB7HhR521oGngu0IMIZ2V7+toK65t+bJEj/QH64hmatPg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@3.15.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3150288},"main":"./src/index.ts","type":"module","engines":{"node":">=24"},"exports":{".":"./src/index.ts"},"gitHead":"2a6486e8f5d0efff39eab720b10a8feac5785c25","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"tsx src/cli.ts","dev":"tsx --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"tsx src/cli.ts setup","start":"tsx src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","ratchets":"node scripts/check-ratchets.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"depcruise src","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.16.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.18.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.42.0","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^6.46.0","undici":"^8.0.2","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@clack/prompts":"^1.2.0","@openai/agents":"^0.14.0","@playwright/mcp":"0.0.78","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.146.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^4.1.3","prettier":"^3.8.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^4.1.3","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_3.15.0_1785498951068_0.320952759546153","host":"s3://npm-registry-packages-npm-production"}},"3.15.1":{"name":"talon-agent","version":"3.15.1","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@3.15.1","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"454ae22d3e3757aa910eb9f1390ef4df15ae4e5c","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-3.15.1.tgz","fileCount":532,"integrity":"sha512-IaY07vCnqp+Qun2TN5VvwuxlxzWJc4RuPjXeic0W+cd4EPHj5RAgT7euyvsWgScu0O7DmnYLJQp+0tkW23gpHA==","signatures":[{"sig":"MEQCIDLCZIDe+Vk3wkRNA3OlGpHfiQmoGU8oP4ULJ/HO3DUBAiBOh3FLHhFZReHq4Ry0SEE8Im51we/qVss1Y+estYm8+w==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@3.15.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3173906},"main":"./src/index.ts","type":"module","engines":{"node":">=24"},"exports":{".":"./src/index.ts"},"gitHead":"3f0269a7d3ce2e9e6d8f61955ecd831eb418395b","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"tsx src/cli.ts","dev":"tsx --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"tsx src/cli.ts setup","start":"tsx src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","ratchets":"node scripts/check-ratchets.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"depcruise src","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.16.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.18.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.42.0","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^6.46.0","undici":"^8.0.2","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@clack/prompts":"^1.2.0","@openai/agents":"^0.14.0","@playwright/mcp":"0.0.78","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.146.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^4.1.3","prettier":"^3.8.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^4.1.3","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_3.15.1_1785680391237_0.3316615013646642","host":"s3://npm-registry-packages-npm-production"}},"3.15.2":{"name":"talon-agent","version":"3.15.2","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@3.15.2","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"bf34bedd2d5a3910abb918238ed73eb17d96b144","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-3.15.2.tgz","fileCount":532,"integrity":"sha512-Kai9MbOhIULazy8geN6t9+fveAzDccEUMua2IbbyHGmL0/UJejPimp9XyzRiHoA9l435Fh4Ogce0HvbPYj4zZA==","signatures":[{"sig":"MEQCIGJ5+KzYj803wBOcwWmAy5EX2El1+nPcKMSI4e7hh1YzAiBTp2OceQvXUE2XFOjabfApq5DthugfcQm/8TrqZCwrRA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@3.15.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3175000},"main":"./src/index.ts","type":"module","engines":{"node":">=24"},"exports":{".":"./src/index.ts"},"gitHead":"b4b775a68343ba072ecc1178ecdc520df4c3fec0","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"tsx src/cli.ts","dev":"tsx --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"tsx src/cli.ts setup","start":"tsx src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","ratchets":"node scripts/check-ratchets.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"depcruise src","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.16.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.18.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.42.0","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^6.46.0","undici":"^8.0.2","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@clack/prompts":"^1.2.0","@openai/agents":"^0.14.0","@playwright/mcp":"0.0.78","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.146.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^4.1.3","prettier":"^3.8.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^4.1.3","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_3.15.2_1785681058458_0.9067121944756418","host":"s3://npm-registry-packages-npm-production"}},"3.15.3":{"name":"talon-agent","version":"3.15.3","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@3.15.3","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"f0ebea79a33e7fac81e8f285ce03766c46fc7266","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-3.15.3.tgz","fileCount":533,"integrity":"sha512-yQbW9hUfkhVj9hcmB5x3QoXLNoeO2S2LjBjFYlkG7WL0u1kL4BNhVKXuC8d+ujpS81MXEgo7NBCKG/OXuuCXXg==","signatures":[{"sig":"MEYCIQDhpcbxahEpMWol9nVNpdtax4MT40uNh11zmSjYfjlpowIhAInBt2r7tPxzpwuZKlsLh76WoyMYXPJDHvIFYtQYN0vj","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@3.15.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3191792},"main":"./src/index.ts","type":"module","engines":{"node":">=24"},"exports":{".":"./src/index.ts"},"gitHead":"7c5b3e65171990235507dcde0b3823787c75d159","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"tsx src/cli.ts","dev":"tsx --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"tsx src/cli.ts setup","start":"tsx src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","ratchets":"node scripts/check-ratchets.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"depcruise src","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.16.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.18.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.42.0","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^6.46.0","undici":"^8.0.2","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@clack/prompts":"^1.2.0","@openai/agents":"^0.14.0","@playwright/mcp":"0.0.78","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.146.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^4.1.3","prettier":"^3.8.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^4.1.3","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_3.15.3_1785696742124_0.8832151856684078","host":"s3://npm-registry-packages-npm-production"}},"3.16.0":{"name":"talon-agent","version":"3.16.0","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@3.16.0","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"2eaf988f1b70a21d282f99def9d5162ed4e88d78","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-3.16.0.tgz","fileCount":533,"integrity":"sha512-o2uBjqWxEQ5sq6QYnA86aUIWHy/VtDFxn+y0qZrmgUWI6Su/CtNYE7xzBTQQ/Vdz8AC5fLuALkmHJ6Ir4ZdVtQ==","signatures":[{"sig":"MEQCICoH9kBRLmcLH7Qff8jmgAZ1lmvw/gCgn8ywy9c9nPMKAiBJ5sv53Tk95+UiFfShZFrke+XWHmj2Aotx/ogcK+vZtg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@3.16.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3191792},"main":"./src/index.ts","type":"module","engines":{"node":">=24"},"exports":{".":"./src/index.ts"},"gitHead":"8804587df62d805307330881f0e18627a7cd1f4a","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"tsx src/cli.ts","dev":"tsx --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"tsx src/cli.ts setup","start":"tsx src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","ratchets":"node scripts/check-ratchets.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"depcruise src","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.16.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.18.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.42.0","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^6.46.0","undici":"^8.0.2","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@clack/prompts":"^1.2.0","@openai/agents":"^0.14.0","@playwright/mcp":"0.0.78","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.146.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^4.1.3","prettier":"^3.8.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^4.1.3","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_3.16.0_1785701395859_0.03431721148137035","host":"s3://npm-registry-packages-npm-production"}},"3.16.1":{"name":"talon-agent","version":"3.16.1","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@3.16.1","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"df15347a637b53fec695c28f85f548122cee77e5","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-3.16.1.tgz","fileCount":533,"integrity":"sha512-ffh1E22k4qA+oN4KFhJMF6XhQHZg8nRZkIjZOZaoN/aD0Z3iLI1RY0VGfyLngdIqOehI7LeaA5/M0JmmKjlsQA==","signatures":[{"sig":"MEYCIQDgcuKroRVMlczMHjJwgoWtQEpE4sL3ZFN0inhEP4yi4AIhANpXmymvCosVuT5RExz4f1CiJPeSbQvh74I8XH3irQGX","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@3.16.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3191792},"main":"./src/index.ts","type":"module","engines":{"node":">=24"},"exports":{".":"./src/index.ts"},"gitHead":"83667fa09fdced0afcf07afcf2723d9a9b55fb85","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"tsx src/cli.ts","dev":"tsx --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"tsx src/cli.ts setup","start":"tsx src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","ratchets":"node scripts/check-ratchets.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"depcruise src","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.16.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.18.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.42.0","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^6.46.0","undici":"^8.0.2","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@clack/prompts":"^1.2.0","@openai/agents":"^0.14.0","@playwright/mcp":"0.0.78","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.146.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^4.1.3","prettier":"^3.8.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^4.1.3","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_3.16.1_1785755076832_0.7023305045944068","host":"s3://npm-registry-packages-npm-production"}},"3.17.0":{"name":"talon-agent","version":"3.17.0","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@3.17.0","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"60e34811f76458ae4547beed66102472b7d6e014","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-3.17.0.tgz","fileCount":536,"integrity":"sha512-P7ax7ac+sVAcMx/1uMAio8reL8TsftYy+mGgSR06hMysqET4xwKouFdr5AkO62vlh7igD2AtayZQqcu1Mu8RqA==","signatures":[{"sig":"MEUCIAdFTqGKTq/XfP2YViJD59omqnnovh5c3pA9RqrvkQbpAiEAxYJYtUDPSIQTmmz/ZPSHzuUDZct5qKeZ3Pp0mq17Eus=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@3.17.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3223154},"main":"./src/index.ts","type":"module","engines":{"node":">=24"},"exports":{".":"./src/index.ts"},"gitHead":"3e62979fdb2fb6d2826a453222be0d9a71eab1e8","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"tsx src/cli.ts","dev":"tsx --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"tsx src/cli.ts setup","start":"tsx src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","ratchets":"node scripts/check-ratchets.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"depcruise src","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.16.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.18.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.42.0","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^6.46.0","undici":"^8.0.2","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@clack/prompts":"^1.2.0","@openai/agents":"^0.14.0","@playwright/mcp":"0.0.78","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.146.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^4.1.3","prettier":"^3.8.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^4.1.3","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_3.17.0_1785848604059_0.9300691111705011","host":"s3://npm-registry-packages-npm-production"}},"3.18.0":{"name":"talon-agent","version":"3.18.0","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@3.18.0","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"f958e642f5123039dbe2258531aea78cf266d874","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-3.18.0.tgz","fileCount":537,"integrity":"sha512-ibCX1T1OLVzHMFfM254Xa+7XhuNQC7EcMf+AfbUiL/t1yHCZV+VlFGXRycM2iRTG6M0fv7Og2YKBSCEunQ0Fkg==","signatures":[{"sig":"MEUCIBcYqKbpo4whFhpwYw+vwyRBOV5Iq15IZLjrJ5kDDvJ0AiEA+PmKUnWsN2vqc/3+a+p/Y7lYp4UDVPxowjltsLSpvmc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@3.18.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3239276},"main":"./src/index.ts","type":"module","engines":{"node":">=24"},"exports":{".":"./src/index.ts"},"gitHead":"d7ce9c522279cb6c02be66a731c5ee7e7a8a89ab","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"tsx src/cli.ts","dev":"tsx --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"tsx src/cli.ts setup","start":"tsx src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","ratchets":"node scripts/check-ratchets.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"depcruise src","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.16.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.18.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.42.0","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^6.46.0","undici":"^8.0.2","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@clack/prompts":"^1.2.0","@openai/agents":"^0.14.0","@playwright/mcp":"0.0.78","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.146.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^4.1.3","prettier":"^3.8.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^4.1.3","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_3.18.0_1785849723930_0.9585625205898305","host":"s3://npm-registry-packages-npm-production"}},"3.19.0":{"name":"talon-agent","version":"3.19.0","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@3.19.0","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"3820a1c44527a49378d5dc2d988f08461e616f2b","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-3.19.0.tgz","fileCount":537,"integrity":"sha512-j8U3eCqF3XIT0fhd5Njgwiam5vGJTkYZWgBFaYH+SgK5vegjjNLocsQC9+XXX3C4tUOnfP7lFjZiYzkBLW9bnQ==","signatures":[{"sig":"MEUCIEwetcFpiNGicf4X5vfQmTGgKDuUM+FxxMKH1MJJy/pjAiEAlRA1p1ZVqjsqVxUdx0zzQUAg6uboVwhxhXrwANyEgwA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@3.19.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3240296},"main":"./src/index.ts","type":"module","engines":{"node":">=24"},"exports":{".":"./src/index.ts"},"gitHead":"c398a6c24a2ab85e12959c618f10be1f48435af3","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"tsx src/cli.ts","dev":"tsx --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"tsx src/cli.ts setup","start":"tsx src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","ratchets":"node scripts/check-ratchets.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"depcruise src","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.16.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.18.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.42.0","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^6.46.0","undici":"^8.0.2","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@clack/prompts":"^1.2.0","@openai/agents":"^0.14.0","@playwright/mcp":"0.0.78","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.146.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^4.1.3","prettier":"^3.8.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^4.1.3","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_3.19.0_1786062855968_0.09877339355824821","host":"s3://npm-registry-packages-npm-production"}},"3.19.1":{"name":"talon-agent","version":"3.19.1","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@3.19.1","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"667122913cfaeb9d0859513a7fbffa9cead3af6a","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-3.19.1.tgz","fileCount":537,"integrity":"sha512-gZ3ngAF3UsCDNYfK3qQFT+KFFFta+4asiwNARjheZhCThagP/fsQAiLyLxndh1m38HtCxSB2miP8UenoPqdwoA==","signatures":[{"sig":"MEYCIQDehep/AIWizHlbgLo/NI+39DXaneNHQNcr1DlvCB30TQIhALlNAmfnYWENYyyUTiFoaXWRmbSmpwAgXhgrqCo2IUYd","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@3.19.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3240296},"main":"./src/index.ts","type":"module","engines":{"node":">=24"},"exports":{".":"./src/index.ts"},"gitHead":"2f0a1596758923910eca13ba33507b6f8e6112ec","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"tsx src/cli.ts","dev":"tsx --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"tsx src/cli.ts setup","start":"tsx src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","ratchets":"node scripts/check-ratchets.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"depcruise src","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.16.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.18.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.42.0","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^6.46.0","undici":"^8.0.2","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@clack/prompts":"^1.2.0","@openai/agents":"^0.14.0","@playwright/mcp":"0.0.78","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.146.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^4.1.3","prettier":"^3.8.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^4.1.3","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_3.19.1_1786356405706_0.9322780112965929","host":"s3://npm-registry-packages-npm-production"}},"3.20.0":{"name":"talon-agent","version":"3.20.0","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@3.20.0","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"636facc4fbf6f10da417744ad6a6be01a88a3256","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-3.20.0.tgz","fileCount":537,"integrity":"sha512-D+yyoZ4JcVb6rvHd6MCF43Tl9oSV/P6YlsmIJYtHkjMLiJi3faQGMocA7BYdp1bX/9oQESbsTErUT/BRduydUQ==","signatures":[{"sig":"MEQCIGkYBMNLqIO8cVoy+iVK4R4Z23+rlrtZvPiYjA429yJZAiAjkYcNJdFsHbhdVn6l2vLnsJkP7BGw4fdRUvZq+z6D7g==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@3.20.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3242692},"main":"./src/index.ts","type":"module","engines":{"node":">=24"},"exports":{".":"./src/index.ts"},"gitHead":"2dc2d5f2429a26eaaee55b93cad524f41f88a7a7","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"tsx src/cli.ts","dev":"tsx --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"tsx src/cli.ts setup","start":"tsx src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","ratchets":"node scripts/check-ratchets.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"depcruise src","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.17.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.19.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.42.0","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^6.46.0","undici":"^8.0.2","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@clack/prompts":"^1.2.0","@openai/agents":"^0.14.0","@playwright/mcp":"0.0.79","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.147.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^4.1.3","prettier":"^3.8.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^4.1.3","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_3.20.0_1787151045765_0.11391847684665435","host":"s3://npm-registry-packages-npm-production"}},"3.21.0":{"name":"talon-agent","version":"3.21.0","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@3.21.0","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"11cec0e3de24e98dd4c0160b594808eec5cf6ab4","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-3.21.0.tgz","fileCount":537,"integrity":"sha512-fbeSer0xcCwoWpKr3k6s5CTJHpmH8SUBjqa3vFPzmQi3BQLbgLXec0NBJCltD27GVkM2evUjl8QZ9VJDyAwJdg==","signatures":[{"sig":"MEUCIQD9Fyx6SaA5fBAiK1+dL+ZjHqEjdMhqxMjJgMJaPzNZEAIgSxYJVfvp7T0LMm+4ymCxXaRhv+JZQZ2sHwDANOsZZXk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@3.21.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3246118},"main":"./src/index.ts","type":"module","engines":{"node":">=24"},"exports":{".":"./src/index.ts"},"gitHead":"b60e0624389debe14033b4c24a0c4bc77cf59069","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"tsx src/cli.ts","dev":"tsx --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"tsx src/cli.ts setup","start":"tsx src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","ratchets":"node scripts/check-ratchets.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"depcruise src","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.17.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.19.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.42.0","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^7.5.0","undici":"^8.0.2","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@clack/prompts":"^1.2.0","@openai/agents":"^0.16.0","@playwright/mcp":"0.0.79","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.147.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^4.1.3","prettier":"^3.8.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^4.1.3","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_3.21.0_1787152981603_0.29555447617761765","host":"s3://npm-registry-packages-npm-production"}},"3.22.0":{"name":"talon-agent","version":"3.22.0","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@3.22.0","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"6155cae2f51a4d9b1befdb6f2f4461fd69d5e4c6","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-3.22.0.tgz","fileCount":541,"integrity":"sha512-FMWi59IrlFQTd6RGPj6q/MQvNhqHq2AU9TDwtOgxqf+RvtLa0c3mFUdUOqcLv3pyompisZG/fny7pusfttM4sg==","signatures":[{"sig":"MEUCIQCQZI4MmKMmjrSRA72h34ZllLHXhLmnI0OS+bnsE95h9QIgOXHK3ACMSe6+LrFv27XmipAcdHxBOVE5O84/kLu9BFs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@3.22.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3279501},"main":"./src/index.ts","type":"module","engines":{"node":">=24"},"exports":{".":"./src/index.ts"},"gitHead":"4ae05f4767e1972155761386e492ad47aa2a208f","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"tsx src/cli.ts","dev":"tsx --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"tsx src/cli.ts setup","start":"tsx src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","ratchets":"node scripts/check-ratchets.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"depcruise src","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.17.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.19.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.45.1","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^7.5.0","undici":"^8.0.2","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@clack/prompts":"^1.2.0","@openai/agents":"^0.16.0","@playwright/mcp":"0.0.79","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.147.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^4.1.3","prettier":"^3.8.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^4.1.3","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_3.22.0_1787154539497_0.3242136177053576","host":"s3://npm-registry-packages-npm-production"}},"3.22.1":{"name":"talon-agent","version":"3.22.1","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@3.22.1","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"8fd07f8943590fe96f2e229419e95c4709966731","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-3.22.1.tgz","fileCount":541,"integrity":"sha512-TRxwE+HsxtFZ7FvLzen8WBbEtJGecY3bLtL/ckeyUq2adxIftieFd47lnLa8i5oBjUPoRRk/VfLYWnO/4yy35Q==","signatures":[{"sig":"MEYCIQDIzG7diQIW78+a21K6jrmMl5KqFMhU6CM/fZoV+XDbtQIhAPUdEyc1m1R6vhWay8mkdethcAnyLPh8D0YvjVHbkU3d","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@3.22.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3287967},"main":"./src/index.ts","type":"module","engines":{"node":">=24"},"exports":{".":"./src/index.ts"},"gitHead":"4dee89b7da0059c69b710f283d610c6139336dc2","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"tsx src/cli.ts","dev":"tsx --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"tsx src/cli.ts setup","start":"tsx src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","ratchets":"node scripts/check-ratchets.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"depcruise src","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.17.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.19.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.45.1","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^7.5.0","undici":"^8.0.2","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@clack/prompts":"^1.2.0","@openai/agents":"^0.16.0","@playwright/mcp":"0.0.79","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.147.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^4.1.3","prettier":"^3.8.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^4.1.3","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_3.22.1_1787403257311_0.8134111274697753","host":"s3://npm-registry-packages-npm-production"}},"3.23.0":{"name":"talon-agent","version":"3.23.0","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@3.23.0","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"ec9cb97ccb78fc7f7861d28905aa96e5726c21bc","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-3.23.0.tgz","fileCount":542,"integrity":"sha512-WlxVubO6Fa37Mj66tQkEWxulWUmoiAlVo91/CkFddY0t2SKu/ZjB+2+SpsVQT22CZr/4xFoRjS+49tnjpILTPA==","signatures":[{"sig":"MEYCIQDAe7x7GmFM0Wmv1LheMfi5X9P75XZjHGtI8JTllC+KjwIhAJza7OD4zAArM7tllHQ20q0+yS9alr66/97zdalKK3nQ","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@3.23.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3289964},"main":"./src/index.ts","type":"module","engines":{"node":">=24"},"exports":{".":"./src/index.ts"},"gitHead":"4a3f8d5eb6fa7d3526558d73811283bec56e2833","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"bun src/cli.ts","dev":"bun --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"bun src/cli.ts setup","start":"bun src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","cli:node":"tsx src/cli.ts","dev:node":"tsx --watch src/index.ts","ratchets":"node scripts/check-ratchets.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"depcruise src","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","start:node":"tsx src/index.ts","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.17.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.19.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.45.1","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^7.5.0","undici":"^8.0.2","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@clack/prompts":"^1.2.0","@openai/agents":"^0.16.0","@playwright/mcp":"0.0.79","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.147.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^4.1.3","prettier":"^3.8.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^4.1.3","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_3.23.0_1787404079955_0.6840955905791843","host":"s3://npm-registry-packages-npm-production"}},"3.23.1":{"name":"talon-agent","version":"3.23.1","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@3.23.1","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"982f7e5a5a5cc7e010a076759837ca233c089332","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-3.23.1.tgz","fileCount":542,"integrity":"sha512-IEO8S3oc47vuX25AWrI9mVIwrmaBTvP5m8ZOmcrz0MJfQQhnhTFPAQcFnesVRbgf+vfC/xv1E4bUbLFvLQaB2g==","signatures":[{"sig":"MEUCIQDm8l5/+ypagpoHuTVKzSt9GRFU+1Xggd2ErNioLXSVYAIgJDBuRBAC7PTuvQviJyT7r9xPumbdySmp/uT6A5Gfw0U=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@3.23.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3291265},"main":"./src/index.ts","type":"module","engines":{"node":">=24"},"exports":{".":"./src/index.ts"},"gitHead":"8b3ef650e84a9e050c1601b53a42bc079b3ed51f","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"bun src/cli.ts","dev":"bun --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"bun src/cli.ts setup","start":"bun src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","cli:node":"tsx src/cli.ts","dev:node":"tsx --watch src/index.ts","ratchets":"node scripts/check-ratchets.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"depcruise src","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","start:node":"tsx src/index.ts","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.17.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.19.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.45.1","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^7.5.0","undici":"^8.0.2","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@clack/prompts":"^1.2.0","@openai/agents":"^0.16.0","@playwright/mcp":"0.0.79","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.147.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^4.1.3","prettier":"^3.8.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^4.1.3","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_3.23.1_1787405878077_0.7044208220168451","host":"s3://npm-registry-packages-npm-production"}},"3.24.0":{"name":"talon-agent","version":"3.24.0","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@3.24.0","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"3ef4a7fe5f8fcbcad7d94ed9d1435c86714d18c6","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-3.24.0.tgz","fileCount":542,"integrity":"sha512-ADJBrsVHBD5FL7C3AXyGHpVtn3KvBQnqMGnOT+kkzMgJgii3iN4aW+mGUq6HQZ51RS4Z8fl9p4Oj5SBFu73m0A==","signatures":[{"sig":"MEUCIQCpw587sciIXMHUeBUVducKcYquWnOPB7nPtWgCsYTA0AIgYdk9ZfilDI5DCdIqJnkQBFdFk7ZVKd1U71WipzRfDsg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@3.24.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3293110},"main":"./src/index.ts","type":"module","engines":{"node":">=24"},"exports":{".":"./src/index.ts"},"gitHead":"1f04f8ffffc5266647c770fe51862b143593dfa3","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"bun src/cli.ts","dev":"bun --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"bun src/cli.ts setup","start":"bun src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","cli:node":"tsx src/cli.ts","dev:node":"tsx --watch src/index.ts","ratchets":"node scripts/check-ratchets.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"depcruise src","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","start:node":"tsx src/index.ts","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.17.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.19.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.45.1","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^7.5.0","undici":"^8.0.2","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@clack/prompts":"^1.2.0","@openai/agents":"^0.16.0","@playwright/mcp":"0.0.79","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.147.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^4.1.3","prettier":"^3.8.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^4.1.3","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_3.24.0_1787407455126_0.47732105507467293","host":"s3://npm-registry-packages-npm-production"}},"3.24.1":{"name":"talon-agent","version":"3.24.1","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@3.24.1","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"0f61c17d8a9c5fc3e59d2398cb7ba9b696a4e6d6","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-3.24.1.tgz","fileCount":544,"integrity":"sha512-SmPgzDHSpLQoMV1CbXmB11xYnnZHBwhg3QrS8P66XLTyQTOVIGJYPXiY/SZzK7MkF6FuM5JI4B/aFOLilWJVSA==","signatures":[{"sig":"MEYCIQDXAJn/JR9tQ4Oam4SkoQF7Jr8olpdrEsZd2QOiJv5ECgIhAM9g3vRDC1TLRd1THG3YaU2uIiUOHBmVXl+1ooBP8qdA","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@3.24.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3298079},"main":"./src/index.ts","type":"module","engines":{"node":">=24"},"exports":{".":"./src/index.ts"},"gitHead":"0f49a1c28aed9824ebc025677808b00415a613c4","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"bun src/cli.ts","dev":"bun --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"bun src/cli.ts setup","start":"bun src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","cli:node":"tsx src/cli.ts","dev:node":"tsx --watch src/index.ts","ratchets":"node scripts/check-ratchets.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"depcruise src","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","start:node":"tsx src/index.ts","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.17.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.19.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.45.1","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^7.5.0","undici":"^8.0.2","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@clack/prompts":"^1.2.0","@openai/agents":"^0.16.0","@playwright/mcp":"0.0.79","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.147.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^4.1.3","prettier":"^3.8.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^4.1.3","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_3.24.1_1787411800397_0.9672330296521252","host":"s3://npm-registry-packages-npm-production"}},"3.25.0":{"name":"talon-agent","version":"3.25.0","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@3.25.0","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"53447c97aa40c8dd139ba2ce7e5d42228828b41d","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-3.25.0.tgz","fileCount":560,"integrity":"sha512-yd01QSJ0UJxMS2y/JfgWQFwKjE/dr6265Zmmwzk4qq6xdy+A9n/gLFUUsnX/woqqNxfQyUkoS6Ewk5POqfHE/Q==","signatures":[{"sig":"MEUCIQD25QTXcKLgjVl0ZnEFZYqia3H1Aw7ZRh2q5F7qFBaS7gIgXez8UO6jmXv3F7A7YoCaBuLt2eexDPZEKbPglRB4d14=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@3.25.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3392334},"main":"./src/index.ts","type":"module","engines":{"node":">=24"},"exports":{".":"./src/index.ts"},"gitHead":"a44b56a754d68eab62d05e0c1c0569d70ff90fc2","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"bun src/cli.ts","dev":"bun --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"bun src/cli.ts setup","start":"bun src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","cli:node":"tsx src/cli.ts","dev:node":"tsx --watch src/index.ts","ratchets":"node scripts/check-ratchets.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"depcruise src","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","start:node":"tsx src/index.ts","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.17.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.19.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.45.1","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^7.5.0","undici":"^8.0.2","baileys":"^7.0.0-rc14","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@clack/prompts":"^1.2.0","@openai/agents":"^0.16.0","@playwright/mcp":"0.0.79","qrcode-terminal":"^0.12.0","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.147.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^4.1.3","prettier":"^3.8.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^4.1.3","@types/qrcode-terminal":"^0.12.2","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_3.25.0_1787412272721_0.6795887719910749","host":"s3://npm-registry-packages-npm-production"}},"3.25.1":{"name":"talon-agent","version":"3.25.1","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@3.25.1","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"79b73166c7a8cb1cffa5e60f51cd6b95e9dce3a2","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-3.25.1.tgz","fileCount":560,"integrity":"sha512-4iT7Uf+i93pwaGp9bLrtFmtFS6C4yispeyHLRmiEL+WwCpxPUAxw9sjF/YKYUlsuCqf2Opc1zn4iOWQklrLkCQ==","signatures":[{"sig":"MEUCIQCzbeGddXlbh4cdU0NCoThkkP0XoO5EBARUa+4R2RPPkQIgMCXmJlVb7Kr+eiwfI+ctn3BtJ3ksXsPbcMJ1eANG4Ac=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@3.25.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3400326},"main":"./src/index.ts","type":"module","engines":{"node":">=24"},"exports":{".":"./src/index.ts"},"gitHead":"0638598626e07f0644845fab63854563ce7e20da","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"bun src/cli.ts","dev":"bun --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"bun src/cli.ts setup","start":"bun src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","cli:node":"tsx src/cli.ts","dev:node":"tsx --watch src/index.ts","ratchets":"node scripts/check-ratchets.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"depcruise src","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","start:node":"tsx src/index.ts","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.17.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.19.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.45.1","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^7.5.0","undici":"^8.0.2","baileys":"^7.0.0-rc14","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@clack/prompts":"^1.2.0","@openai/agents":"^0.16.0","@playwright/mcp":"0.0.79","qrcode-terminal":"^0.12.0","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.147.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^4.1.3","prettier":"^3.8.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^4.1.3","@types/qrcode-terminal":"^0.12.2","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_3.25.1_1787484403812_0.38088867442343943","host":"s3://npm-registry-packages-npm-production"}},"3.25.2":{"name":"talon-agent","version":"3.25.2","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@3.25.2","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"b17189bdb7cd3aff0648e972b1df55cba87fb13f","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-3.25.2.tgz","fileCount":560,"integrity":"sha512-FjC+TODYOVFEwnWJC5vWvL1I7RF3JLaZWqjW2WmJKhuxNKj9UcLCzjTZqgjd12/OdXVzgqmaRSSCFNRx/NmV4Q==","signatures":[{"sig":"MEQCIHiVVG41stkZvjQzO8tsoBWjqxhU8bDFbM9OTXalDfq+AiBKvByTS95TZ9Va5U1j1uUM2mQLxTHDfnVCXT/ml6gY4g==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@3.25.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3407904},"main":"./src/index.ts","type":"module","engines":{"node":">=24"},"exports":{".":"./src/index.ts"},"gitHead":"cd5a0f295a3258affaa84e2c4fc3597c0a57da83","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"bun src/cli.ts","dev":"bun --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"bun src/cli.ts setup","start":"bun src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","cli:node":"tsx src/cli.ts","dev:node":"tsx --watch src/index.ts","ratchets":"node scripts/check-ratchets.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"depcruise src","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","start:node":"tsx src/index.ts","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.17.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.19.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.45.1","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^7.5.0","undici":"^8.0.2","baileys":"^7.0.0-rc14","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@clack/prompts":"^1.2.0","@openai/agents":"^0.16.0","@playwright/mcp":"0.0.79","qrcode-terminal":"^0.12.0","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.147.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^4.1.3","prettier":"^3.8.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^4.1.3","@types/qrcode-terminal":"^0.12.2","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_3.25.2_1787486326186_0.11151093097058462","host":"s3://npm-registry-packages-npm-production"}},"3.25.3":{"name":"talon-agent","version":"3.25.3","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@3.25.3","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"25d4a47d3cfdd36751459495443e6ed5c7c84993","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-3.25.3.tgz","fileCount":563,"integrity":"sha512-dX6I6e92x+KxVcr/vnZLz42/PuO+PlOElS14qzOBTNEUVJ+b6Y7lzlsbWUGE6MwbJDjqF95ImWdcPDUaOzR1pQ==","signatures":[{"sig":"MEUCIEQBltE4kaQwB9BJd6ue3BXJyZ66WtiFOGRyCBcjgJotAiEAo81xVx/CUGNoDe+Win8Ai5ImuYJgDdprZsLPUZ66yrc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@3.25.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3429100},"main":"./src/index.ts","type":"module","engines":{"node":">=24"},"exports":{".":"./src/index.ts"},"gitHead":"c10ccbd0883f0433d4a173307770b324bca1cebe","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"bun src/cli.ts","dev":"bun --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"bun src/cli.ts setup","start":"bun src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","cli:node":"tsx src/cli.ts","dev:node":"tsx --watch src/index.ts","ratchets":"node scripts/check-ratchets.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"depcruise src","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","start:node":"tsx src/index.ts","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.17.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.19.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.45.1","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^7.5.0","undici":"^8.0.2","baileys":"^7.0.0-rc14","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@clack/prompts":"^1.2.0","@openai/agents":"^0.16.0","@playwright/mcp":"0.0.79","qrcode-terminal":"^0.12.0","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.147.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^4.1.3","prettier":"^3.8.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^4.1.3","@types/qrcode-terminal":"^0.12.2","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_3.25.3_1787496200241_0.7744438613133204","host":"s3://npm-registry-packages-npm-production"}},"3.26.0":{"name":"talon-agent","version":"3.26.0","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@3.26.0","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"4cfe49067434af4016788477c8c2ef8b06f9a764","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-3.26.0.tgz","fileCount":564,"integrity":"sha512-xkp8fq1N3LF9EC3h4H/ZSj3UcUe6Y1/wCbV8F/aiIOqFQWIYoJnjP49NF/QR2+UiNybp2QYHgPOSUKRCoVZvFQ==","signatures":[{"sig":"MEUCIFtmoDkoJR1Wa6uTI2GJ2GMjCYnM9eXC2/wdgVQuFjBrAiEAwMoOs7r+MP57Xed5buzzKG6+2t53MDsvqMdIUEQns+0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@3.26.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3439365},"main":"./src/index.ts","type":"module","engines":{"node":">=24"},"exports":{".":"./src/index.ts"},"gitHead":"236e3497da4ce426e1b5242bef8ce18728b7d1b4","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"bun src/cli.ts","dev":"bun --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"bun src/cli.ts setup","start":"bun src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","cli:node":"tsx src/cli.ts","dev:node":"tsx --watch src/index.ts","ratchets":"node scripts/check-ratchets.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"depcruise src","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","start:node":"tsx src/index.ts","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.17.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.19.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.45.1","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^7.5.0","undici":"^8.0.2","baileys":"^7.0.0-rc14","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@clack/prompts":"^1.2.0","@openai/agents":"^0.16.0","@playwright/mcp":"0.0.79","qrcode-terminal":"^0.12.0","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.147.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^4.1.3","prettier":"^3.8.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^4.1.3","@types/qrcode-terminal":"^0.12.2","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_3.26.0_1787498526604_0.2579851235311139","host":"s3://npm-registry-packages-npm-production"}},"3.27.0":{"name":"talon-agent","version":"3.27.0","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@3.27.0","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"c038c63646ac4b70050d950a8f18216d1c88e673","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-3.27.0.tgz","fileCount":569,"integrity":"sha512-L0dd8SUZrsZT0N7AzLLFbQCuxqYMsnp4Mnim2R8Hy9OadTyt9ZL8NHAKYt7W1Lj3rdP9M2ckIPgzw2pG4wABRQ==","signatures":[{"sig":"MEUCIQCh1DGV4WH3B+YbliKu4Xohcg7676T7AfK9YQIygHHogAIgbf7xJH6i/wG/42AuUAfNDji8O353ud3mEFte1f80TX4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@3.27.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3451960},"main":"./src/index.ts","type":"module","engines":{"node":">=24"},"exports":{".":"./src/index.ts"},"gitHead":"36c8154de6666277c7f90a7b839f463916a53d7e","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"bun src/cli.ts","dev":"bun --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"bun src/cli.ts setup","start":"bun src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","cli:node":"tsx src/cli.ts","dev:node":"tsx --watch src/index.ts","ratchets":"node scripts/check-ratchets.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"depcruise src","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","start:node":"tsx src/index.ts","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.17.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.19.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.45.1","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^7.5.0","qrcode":"^1.5.4","undici":"^8.0.2","baileys":"^7.0.0-rc14","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@types/qrcode":"^1.5.6","@clack/prompts":"^1.2.0","@openai/agents":"^0.16.0","@playwright/mcp":"0.0.79","qrcode-terminal":"^0.12.0","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.147.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^4.1.3","prettier":"^3.8.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^4.1.3","@types/qrcode-terminal":"^0.12.2","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_3.27.0_1787513512368_0.28802646259168996","host":"s3://npm-registry-packages-npm-production"}},"3.28.0":{"name":"talon-agent","version":"3.28.0","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@3.28.0","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"45779c742c6e2192deaf0db75a21d6f8db42841c","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-3.28.0.tgz","fileCount":571,"integrity":"sha512-4+zU9PVfnmalKpHVr04fLXYb+W9xxEepR/ec+F4aKprNwP1I3Vh0WeypHZycFQLFWVCqxJj0UGycMFJaP+uwgA==","signatures":[{"sig":"MEUCIAjsORldAwa+P5uz/T4LTvlNs6pGThKFSJLGmShSWduoAiEA/7vc2sNV9VYRAG25Da/xzWJIIx8he6NL26D4P6oD1Hw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@3.28.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3461179},"main":"./src/index.ts","type":"module","engines":{"node":">=24.15"},"exports":{".":"./src/index.ts"},"gitHead":"fff4f3ed58fd54ccfdfd96d68c8c03dcc444732e","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"bun src/cli.ts","dev":"bun --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"bun src/cli.ts setup","start":"bun src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","cli:node":"tsx src/cli.ts","dev:node":"tsx --watch src/index.ts","ratchets":"node scripts/check-ratchets.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"depcruise src","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","start:node":"tsx src/index.ts","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.17.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.19.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.45.1","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^7.5.0","qrcode":"^1.5.4","undici":"^8.0.2","baileys":"^7.0.0-rc14","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@types/qrcode":"^1.5.6","@clack/prompts":"^1.2.0","@openai/agents":"^0.16.0","@playwright/mcp":"0.0.79","qrcode-terminal":"^0.12.0","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.147.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^4.1.3","prettier":"^3.8.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^4.1.3","@types/qrcode-terminal":"^0.12.2","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_3.28.0_1787514399602_0.7123128048000451","host":"s3://npm-registry-packages-npm-production"}},"3.28.1":{"name":"talon-agent","version":"3.28.1","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@3.28.1","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"c4f3aa3ef41ed5b38b2164037d80e919db3757a8","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-3.28.1.tgz","fileCount":571,"integrity":"sha512-7GP59r3tFWsdwZ2gJVZOvAQQLjqJ1ZHWtPjY5nX87+12s0uF2WebH/QvYzn6aG9HwDroveV36FwqynYeoMVEBg==","signatures":[{"sig":"MEUCIQDu3EHUOV0PYsDwFQKlbBaiwhxO+hTB+AfhLfRy/kTYCgIgTddkIFvRI6BGxJRgjN+BTyCbexUUYztfMsyMNnqYI40=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@3.28.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3461179},"main":"./src/index.ts","type":"module","engines":{"node":">=24.15"},"exports":{".":"./src/index.ts"},"gitHead":"f7b65e6b4b09641f7f1ecccfcc9c7b036b1feb69","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"bun src/cli.ts","dev":"bun --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"bun src/cli.ts setup","start":"bun src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","cli:node":"tsx src/cli.ts","dev:node":"tsx --watch src/index.ts","ratchets":"node scripts/check-ratchets.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"depcruise src","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","start:node":"tsx src/index.ts","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.17.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.19.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.45.1","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^7.5.0","qrcode":"^1.5.4","undici":"^8.0.2","baileys":"^7.0.0-rc14","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@types/qrcode":"^1.5.6","@clack/prompts":"^1.2.0","@openai/agents":"^0.17.0","@playwright/mcp":"0.0.79","qrcode-terminal":"^0.12.0","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.149.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^4.1.3","prettier":"^3.8.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^4.1.3","@types/qrcode-terminal":"^0.12.2","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_3.28.1_1787923569725_0.37414446265254653","host":"s3://npm-registry-packages-npm-production"}},"3.29.0":{"name":"talon-agent","version":"3.29.0","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@3.29.0","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"cbfb7cefffac45f363aa96bf11bd4ee09b1baad3","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-3.29.0.tgz","fileCount":577,"integrity":"sha512-y9vE5vxlONxfmsK27WbXuspn0CQ8Q2F2FThzL21BrS79YA5eDXSUOjeDiQl/Eqnc16Ze9mSCauoqIlNqMIjP+g==","signatures":[{"sig":"MEYCIQCC4LPX+13dpXejpHaGvMAKH0kdUc/O9ffVa3zwKxL+ggIhANOV4NTVh+9OYdpslG84O4g6RpcApXpfACiosopnhOgx","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@3.29.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3525533},"main":"./src/index.ts","type":"module","engines":{"node":">=24.15"},"exports":{".":"./src/index.ts"},"gitHead":"3846cd6f9d59995128a3e137fe5570d3fd9711a7","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"bun src/cli.ts","dev":"bun --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"bun src/cli.ts setup","start":"bun src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","cli:node":"tsx src/cli.ts","dev:node":"tsx --watch src/index.ts","ratchets":"node scripts/check-ratchets.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"depcruise src","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","start:node":"tsx src/index.ts","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.17.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.19.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.45.1","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^7.5.0","qrcode":"^1.5.4","undici":"^8.0.2","baileys":"^7.0.0-rc14","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@types/qrcode":"^1.5.6","@clack/prompts":"^1.2.0","@openai/agents":"^0.17.0","@playwright/mcp":"0.0.79","qrcode-terminal":"^0.12.0","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.149.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^4.1.3","prettier":"^3.8.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^4.1.3","@types/qrcode-terminal":"^0.12.2","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_3.29.0_1787929287130_0.03440611590996934","host":"s3://npm-registry-packages-npm-production"}},"3.30.0":{"name":"talon-agent","version":"3.30.0","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@3.30.0","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"fc8fbd9be6d2416a7eb50e9ba8cb494b44d5432e","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-3.30.0.tgz","fileCount":577,"integrity":"sha512-rgun9ceS1i7J8XhQm14jHY6+OzNDE9GwRRBLD9HQBy8K6hJ7Xfuid1KX926qAuigoUclxmR5uBB/JLc7vnG6fw==","signatures":[{"sig":"MEQCIAdxHPlwOvmBMKSNFlyOzkirqJwLOjAB4AFfsySLbw70AiAVK7qY8Ale+CXvpf/QLt050veqQVuotqwtWvds0e7/nA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@3.30.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3528227},"main":"./src/index.ts","type":"module","engines":{"node":">=24.15"},"exports":{".":"./src/index.ts"},"gitHead":"4cf00a30f8db10a9e1066e8ce1351fd3aad768e3","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"bun src/cli.ts","dev":"bun --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"bun src/cli.ts setup","start":"bun src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","cli:node":"tsx src/cli.ts","dev:node":"tsx --watch src/index.ts","ratchets":"node scripts/check-ratchets.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"depcruise src","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","start:node":"tsx src/index.ts","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.17.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.19.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.45.1","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^7.5.0","qrcode":"^1.5.4","undici":"^8.0.2","baileys":"^7.0.0-rc14","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@types/qrcode":"^1.5.6","@clack/prompts":"^1.2.0","@openai/agents":"^0.17.0","@playwright/mcp":"0.0.79","qrcode-terminal":"^0.12.0","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.149.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^4.1.3","prettier":"^3.8.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^4.1.3","@types/qrcode-terminal":"^0.12.2","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_3.30.0_1788097673148_0.013845498874153872","host":"s3://npm-registry-packages-npm-production"}},"3.31.0":{"name":"talon-agent","version":"3.31.0","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@3.31.0","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"164e14447322fe2ef0e087be345138b8ebd2f1d7","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-3.31.0.tgz","fileCount":577,"integrity":"sha512-ctWCeE0eFxld2eDiZbruOJ/9h1Ap+sAuHmU7oez3AxuA0p4bOrLh9kZAu+boZo0Yo5t2p74efti+bT+KeO8+UQ==","signatures":[{"sig":"MEYCIQCyMPFDqReAgiivDMsbnJAkok93+RDZG+W92tqc5XlzIAIhALgc4rF93F7z7i0orIFW75INOwdupb8PW1uhSgxJ3WoS","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@3.31.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3528351},"main":"./src/index.ts","type":"module","engines":{"node":">=24.15"},"exports":{".":"./src/index.ts"},"gitHead":"6771884e6accd9ffe33143ec2d701a07d06cc697","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"bun src/cli.ts","dev":"bun --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"bun src/cli.ts setup","start":"bun src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","cli:node":"tsx src/cli.ts","dev:node":"tsx --watch src/index.ts","ratchets":"node scripts/check-ratchets.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"depcruise src","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","start:node":"tsx src/index.ts","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.17.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.19.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.45.1","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^7.5.0","qrcode":"^1.5.4","undici":"^8.0.2","baileys":"^7.0.0-rc14","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@types/qrcode":"^1.5.6","@clack/prompts":"^1.2.0","@openai/agents":"^0.17.0","@playwright/mcp":"0.0.79","qrcode-terminal":"^0.12.0","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.150.1","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^4.1.3","prettier":"^3.8.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^4.1.3","@types/qrcode-terminal":"^0.12.2","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_3.31.0_1788272926344_0.6800270863681943","host":"s3://npm-registry-packages-npm-production"}},"3.32.0":{"name":"talon-agent","version":"3.32.0","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@3.32.0","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"66d463b723758ee169e00dd14ea9ff7eda262ed5","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-3.32.0.tgz","fileCount":578,"integrity":"sha512-DhtdTaHToCCKuYhyMQjremYZuuaHW/rexXSoRDWjqG1d28FOBmnStEusDu/J2AsFpbLpX1272XEMjfVHbwGRFg==","signatures":[{"sig":"MEUCIQD6dJfValpTDc/8UDj08DUMCz4/toDdMMHFfQLSwdFDBgIgQqwSWYoyjonH+lxdpgH8sHrUlQ6AbuzkcVL3DQhSbks=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@3.32.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3544637},"main":"./src/index.ts","type":"module","engines":{"node":">=24.15"},"exports":{".":"./src/index.ts"},"gitHead":"bd4421c52bc63152e0a58cc316296458d5bf3fc3","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"bun src/cli.ts","dev":"bun --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"bun src/cli.ts setup","start":"bun src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","cli:node":"tsx src/cli.ts","dev:node":"tsx --watch src/index.ts","ratchets":"node scripts/check-ratchets.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"depcruise src","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","start:node":"tsx src/index.ts","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.17.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.19.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.45.1","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^7.5.0","qrcode":"^1.5.4","undici":"^8.0.2","baileys":"^7.0.0-rc14","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@types/qrcode":"^1.5.6","@clack/prompts":"^1.2.0","@openai/agents":"^0.17.0","@playwright/mcp":"0.0.79","qrcode-terminal":"^0.12.0","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.150.1","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^4.1.3","prettier":"^3.8.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^4.1.3","@types/qrcode-terminal":"^0.12.2","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_3.32.0_1788275782333_0.14239466466738349","host":"s3://npm-registry-packages-npm-production"}},"3.32.1":{"name":"talon-agent","version":"3.32.1","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@3.32.1","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"7ffda0d2ba10fcc79643812eb82814ec13defb3c","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-3.32.1.tgz","fileCount":578,"integrity":"sha512-jYWTc0phEL6Ul+ozpQsO4aiYCTh5aGfzlMSkQ7wiepAURRU5Zl4VxU+sN5RCC4WaApUoNPrko32WpIb3jtK60g==","signatures":[{"sig":"MEQCIDXIUTeSrXV02rAEFDRzNuJ7o8Cxptmqn0pyeTd6x3x7AiBf3VOt97uSpCyh6aMx9HJKAoWxRGcaRCav0JQmqnvnqA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@3.32.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3544687},"main":"./src/index.ts","type":"module","engines":{"node":">=24.15"},"exports":{".":"./src/index.ts"},"gitHead":"23bde7db6f81bfd21cc3a4d43762cef6eedf3b74","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"bun src/cli.ts","dev":"bun --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"bun src/cli.ts setup","start":"bun src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","cli:node":"tsx src/cli.ts","dev:node":"tsx --watch src/index.ts","ratchets":"node scripts/check-ratchets.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"node scripts/check-architecture.mjs","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","start:node":"tsx src/index.ts","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.17.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.19.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.45.1","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^7.5.0","qrcode":"^1.5.4","undici":"^8.0.2","baileys":"^7.0.0-rc14","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@types/qrcode":"^1.5.6","@clack/prompts":"^1.2.0","@openai/agents":"^0.17.0","@playwright/mcp":"0.0.79","qrcode-terminal":"^0.12.0","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.151.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^4.1.3","prettier":"^3.8.1","@swc/core":"^1.16.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^4.1.3","@types/qrcode-terminal":"^0.12.2","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_3.32.1_1788352304041_0.022811478427642307","host":"s3://npm-registry-packages-npm-production"}},"3.33.0":{"name":"talon-agent","version":"3.33.0","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@3.33.0","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"751abea97fd8b4a90422dfccb6919f0e687f8cf8","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-3.33.0.tgz","fileCount":578,"integrity":"sha512-9Gr8E9Y/0oozSDrlVxAwuW6lSC/YI7hXvDyqDpsQkKvjPFtQoGdQAQYYeqDyXFiRgZZAgIyHfBDTJahjCzhqPw==","signatures":[{"sig":"MEUCIA97IHRMlSqZ/N3Nac4n2C5/gLjbQb/864nNzPaLU6iGAiEA7m+Ml4ecDHBNpL55hKZphhneUo7K7Aj+pdwc2/cdHag=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@3.33.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3534800},"main":"./src/index.ts","type":"module","engines":{"node":">=24.15"},"exports":{".":"./src/index.ts"},"gitHead":"a444c9e769f8e85939354d2b018f676d711b2d09","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"bun src/cli.ts","dev":"bun --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"bun src/cli.ts setup","start":"bun src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","cli:node":"tsx src/cli.ts","dev:node":"tsx --watch src/index.ts","ratchets":"node scripts/check-ratchets.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"node scripts/check-architecture.mjs","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","start:node":"tsx src/index.ts","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.17.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.19.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.45.1","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^7.5.0","qrcode":"^1.5.4","undici":"^8.0.2","baileys":"^7.0.0-rc14","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@types/qrcode":"^1.5.6","@clack/prompts":"^1.2.0","@openai/agents":"^0.17.0","@playwright/mcp":"0.0.79","qrcode-terminal":"^0.12.0","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.151.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^4.1.3","prettier":"^3.8.1","@swc/core":"^1.16.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^4.1.3","@types/qrcode-terminal":"^0.12.2","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_3.33.0_1788354211580_0.5375406189412553","host":"s3://npm-registry-packages-npm-production"}},"3.33.1":{"name":"talon-agent","version":"3.33.1","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@3.33.1","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"29fc0729b87d6df42f11e5abe7253cebd4b779e6","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-3.33.1.tgz","fileCount":581,"integrity":"sha512-n1sCjHnJi8XhaO37LcoyFUj4UYpJGCxVvxT77rY7QQqB1MBLGll2UsbLptEWhiD/aCnhWELFZEt6jOfqAjLL3Q==","signatures":[{"sig":"MEUCIFQ+9Cb/2iCNZ6IzJOt4pvz221vGjx2NfJpnDQyVwojpAiEAot4IV0FU2Ga1av4bIZR8xuBUk9X25XvCG5VeI5AmCa0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@3.33.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3516905},"main":"./src/index.ts","type":"module","engines":{"node":">=24.15"},"exports":{".":"./src/index.ts"},"gitHead":"a2bfc40a4b5361f21d0b821d4af6cfc87d9c76fa","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"bun src/cli.ts","dev":"bun --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"bun src/cli.ts setup","start":"bun src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","cli:node":"tsx src/cli.ts","dev:node":"tsx --watch src/index.ts","ratchets":"node scripts/check-ratchets.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"node scripts/check-architecture.mjs","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","start:node":"tsx src/index.ts","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.17.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.19.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.45.1","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^7.5.0","qrcode":"^1.5.4","undici":"^8.0.2","baileys":"^7.0.0-rc14","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@types/qrcode":"^1.5.6","@clack/prompts":"^1.2.0","@openai/agents":"^0.17.0","@playwright/mcp":"0.0.79","qrcode-terminal":"^0.12.0","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.151.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^4.1.3","prettier":"^3.8.1","@swc/core":"^1.16.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^4.1.3","@types/qrcode-terminal":"^0.12.2","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_3.33.1_1788356040660_0.9546794072273788","host":"s3://npm-registry-packages-npm-production"}},"3.33.2":{"name":"talon-agent","version":"3.33.2","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@3.33.2","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"02ae12d568f218d46f67614abbf4d69d7c9f2bf5","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-3.33.2.tgz","fileCount":581,"integrity":"sha512-RMpwzzZPdkq1fWD2LkH+ygu6hIEHlaIb8f6EI8jt3UmpovgGdbfItbhJrHei9Rqq+0XMWQwQ0l6H7nzJ6dwL3Q==","signatures":[{"sig":"MEYCIQCU6Oz0BsmK6Fz7tq9TEq03EbJn1Pr9nOSxGNm9uEaNRQIhAPvLNLDjQhwbeDGAHYEYmiNi3WBNHSWrMp3XNmePHUCD","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@3.33.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3516905},"main":"./src/index.ts","type":"module","engines":{"node":">=24.15"},"exports":{".":"./src/index.ts"},"gitHead":"1063afce64c4d40e9fff87d091d909e7c3af741e","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"bun src/cli.ts","dev":"bun --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"bun src/cli.ts setup","start":"bun src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","cli:node":"tsx src/cli.ts","dev:node":"tsx --watch src/index.ts","ratchets":"node scripts/check-ratchets.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"node scripts/check-architecture.mjs","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","start:node":"tsx src/index.ts","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.19.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.20.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.45.1","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^7.5.0","qrcode":"^1.5.4","undici":"^8.0.2","baileys":"^7.0.0-rc14","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@types/qrcode":"^1.5.6","@clack/prompts":"^1.2.0","@openai/agents":"^0.17.0","@playwright/mcp":"0.0.80","qrcode-terminal":"^0.12.0","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.153.2","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^4.1.3","prettier":"^3.8.1","@swc/core":"^1.16.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^4.1.3","@types/qrcode-terminal":"^0.12.2","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_3.33.2_1788904789389_0.8615149621315561","host":"s3://npm-registry-packages-npm-production"}},"3.33.3":{"name":"talon-agent","version":"3.33.3","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@3.33.3","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"b94a075acb5ba40790126dd548314cc53db4c5fc","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-3.33.3.tgz","fileCount":587,"integrity":"sha512-wzK9zF6rfComzz4hG+3Uy7Ern4oMmqqoxMjb9u62FjTUtkIXJgUO1WGq5D48893OtqrkcUKkaRb9W84n5P689w==","signatures":[{"sig":"MEQCIDd1JzmMIEizy6l2owIS+qK7ot1OVoJnMRVRAn9HPokXAiBGbexQU/pSRLGiyc5fmtRMO18ctDPzTYCVd/AdnzIMeA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@3.33.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3520960},"main":"./src/index.ts","type":"module","engines":{"node":">=24.15"},"exports":{".":"./src/index.ts"},"gitHead":"c375a55db508ad502a370f3387aa538f66430f96","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"bun src/cli.ts","dev":"bun --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"bun src/cli.ts setup","start":"bun src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","cli:node":"tsx src/cli.ts","dev:node":"tsx --watch src/index.ts","ratchets":"node scripts/check-ratchets.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"node scripts/check-architecture.mjs","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","start:node":"tsx src/index.ts","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.19.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.20.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.45.1","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^7.5.0","qrcode":"^1.5.4","undici":"^8.0.2","baileys":"^7.0.0-rc14","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@types/qrcode":"^1.5.6","@clack/prompts":"^1.2.0","@openai/agents":"^0.17.0","@playwright/mcp":"0.0.80","qrcode-terminal":"^0.12.0","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.153.2","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^4.1.3","prettier":"^3.8.1","@swc/core":"^1.16.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^4.1.3","@types/qrcode-terminal":"^0.12.2","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_3.33.3_1788905433927_0.10604410505017525","host":"s3://npm-registry-packages-npm-production"}},"3.33.4":{"name":"talon-agent","version":"3.33.4","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@3.33.4","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"fe1539968e4e3921cb6d72ca7d9ad135cc917de3","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-3.33.4.tgz","fileCount":587,"integrity":"sha512-YWTvXwg7qmy+EsCjB1D0MvAjAC0IthlrstUZ3khz1caHYc+nhyAho6h66T9iB8N+2RaVrfxs4DOUajcpxQeFCQ==","signatures":[{"sig":"MEUCIHWHgcYyif/JKIKIszBVPc0kICHKQUuFbKcLa5F5P4G/AiEAp5gajq2HDkjomeD0qsWEwo/xS48vFNm+dDX11U6zg9M=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQCmEsNylwjf2OIdGs4rrLrREz6c8s8p/762iWVpvmQY2gIhAMaUVKQMe2mdDkN0bNhbk3peMYcptlzXdqNQyMD+ONa2","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@3.33.4","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3521072},"main":"./src/index.ts","type":"module","engines":{"node":">=24.15"},"exports":{".":"./src/index.ts"},"gitHead":"17873fd016498a1798739df45136811ee480145e","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"bun src/cli.ts","dev":"bun --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"bun src/cli.ts setup","start":"bun src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","cli:node":"tsx src/cli.ts","dev:node":"tsx --watch src/index.ts","ratchets":"node scripts/check-ratchets.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"node scripts/check-architecture.mjs","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","start:node":"tsx src/index.ts","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts src/__tests__/integration/kilo-real-bootstrap.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts src/__tests__/integration/opencode-real-bootstrap.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.19.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.20.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.45.1","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^7.5.0","qrcode":"^1.5.4","undici":"^8.0.2","baileys":"^7.0.0-rc14","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@types/qrcode":"^1.5.6","@clack/prompts":"^1.2.0","@openai/agents":"^0.17.0","@playwright/mcp":"0.0.80","qrcode-terminal":"^0.12.0","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.153.2","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^5.0.0","prettier":"^3.8.1","@swc/core":"^1.16.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^5.0.0","@types/qrcode-terminal":"^0.12.2","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_3.33.4_1789378539118_0.00845909393249289","host":"s3://npm-registry-packages-npm-production"}},"3.34.0":{"name":"talon-agent","version":"3.34.0","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@3.34.0","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"c70335256515f3a7b3bcab682ffc9d4b3f56d465","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-3.34.0.tgz","fileCount":635,"integrity":"sha512-i+Y8Nm0PJQey6lEHTTAzvTF0LZaVznNKxZyuti79Kf8ftaLFgVIwYSpLHI1LtYzLJLu8bgdSkuWNyC3c1M/EtA==","signatures":[{"sig":"MEYCIQCmmZSB0OHM/OMVTcXi06nKjmRVaEqGp7kcnAH2Uei/VgIhAKrLwVhnoy7d+gBIXEE6v91q4YhJbCX8C5C4JbAvrXpn","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCICAL5eTh5ZXYKYTqACuP/K4T5wbbFor94T4HTy5kB9DgAiEAk4t+Qy0jxojQgXEfrWRx7TxU1JikJxXO8Qg5eUTB60E=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@3.34.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3562245},"main":"./src/index.ts","type":"module","engines":{"node":">=24.15"},"exports":{".":"./src/index.ts"},"gitHead":"330ced3301eb73db5cd36828017e331f7dd7b67c","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"bun src/cli.ts","dev":"bun --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"bun src/cli.ts setup","start":"bun src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","cli:node":"tsx src/cli.ts","dev:node":"tsx --watch src/index.ts","ratchets":"node scripts/check-ratchets.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"node scripts/check-architecture.mjs","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","start:node":"tsx src/index.ts","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","function-size":"node scripts/check-function-size.mjs","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts src/__tests__/integration/kilo-real-bootstrap.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts src/__tests__/integration/opencode-real-bootstrap.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.19.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.20.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.45.1","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^7.5.0","qrcode":"^1.5.4","undici":"^8.0.2","baileys":"^7.0.0-rc14","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@types/qrcode":"^1.5.6","@clack/prompts":"^1.2.0","@openai/agents":"^0.17.0","@playwright/mcp":"0.0.80","qrcode-terminal":"^0.12.0","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.153.2","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^5.0.0","prettier":"^3.8.1","@swc/core":"^1.16.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^5.0.0","@types/qrcode-terminal":"^0.12.2","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_3.34.0_1789383767003_0.91742139440142","host":"s3://npm-registry-packages-npm-production"}},"3.34.1":{"name":"talon-agent","version":"3.34.1","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@3.34.1","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"5c6ebab8ef79257c2bffa93e276a05ccd3026ef0","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-3.34.1.tgz","fileCount":639,"integrity":"sha512-+phuuAHMbx8qsmMselBciRoAnyROGruBYkX6XOWL4uUrYQVH3DCLdf8FnipFZw3GXZAZfCbFSGBr2/LaTmXHww==","signatures":[{"sig":"MEQCICIP5uV9GZaqOcbVsy0hi/TBXHkKl7arTxBv8QcoPCSPAiArAijj8WUFHsMGGyfwa6PktLJqLPDybbihnNigjt2KwQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQDDae7CV20LmsEgoVTxk9t6LwQ4qGKmukiFeKx/2Hyr6QIhAL4kD8XID8gBpZ83yfKYMBZY6UD5e4WgB/uiAF5xzd5d","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@3.34.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3586637},"main":"./src/index.ts","type":"module","engines":{"node":">=24.15"},"exports":{".":"./src/index.ts"},"gitHead":"03fdf3a86f87d2be1c044a5d266063ba5713dbec","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"bun src/cli.ts","dev":"bun --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"bun src/cli.ts setup","start":"bun src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","cli:node":"tsx src/cli.ts","dev:node":"tsx --watch src/index.ts","ratchets":"node scripts/check-ratchets.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"node scripts/check-architecture.mjs","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","start:node":"tsx src/index.ts","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","function-size":"node scripts/check-function-size.mjs","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts src/__tests__/integration/kilo-real-bootstrap.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts src/__tests__/integration/opencode-real-bootstrap.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","link-preview-js":"^5.0.0","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.19.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.20.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.45.1","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^7.5.0","qrcode":"^1.5.4","undici":"^8.0.2","baileys":"^7.0.0-rc14","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@types/qrcode":"^1.5.6","@clack/prompts":"^1.2.0","@openai/agents":"^0.17.0","@playwright/mcp":"0.0.80","link-preview-js":"^5.0.0","qrcode-terminal":"^0.12.0","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.153.2","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^5.0.0","prettier":"^3.8.1","@swc/core":"^1.16.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^5.0.0","@types/qrcode-terminal":"^0.12.2","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_3.34.1_1789404456909_0.8801395582634732","host":"s3://npm-registry-packages-npm-production"}},"3.35.0":{"name":"talon-agent","version":"3.35.0","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@3.35.0","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"b4f0bcb752b8353374044d55bacf0496ae1b2669","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-3.35.0.tgz","fileCount":652,"integrity":"sha512-fadQo9NOm5VJf0lEou0cQ1GGGrwNQjHo8xIDMCfXEJc2p21fkVckWPbdqwen6NLnZ1FfItYbRUsuPjevQn3MEw==","signatures":[{"sig":"MEUCIQDMYiLwNxQCyNK4NcIfMcuZzu7Vd6wgbNvaosKi+XHZkAIgI/dbFoonA1Cjw1CeMk+ezTXRDRIN3W/kxpXRKtDUORc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIHOlJOglgwFVxy0diWtXp7EiXaqZkLr7nmXiFTBZEUCTAiEA2XQ3aVZs0YBD9R9J3mVBKpKeRpjgfcxbnc3uWglQ56U=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@3.35.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3668341},"main":"./src/index.ts","type":"module","engines":{"node":">=24.15"},"exports":{".":"./src/index.ts"},"gitHead":"252dea3b13f67df91d53f8e711dbf128a68d1205","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"bun src/cli.ts","dev":"bun --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"bun src/cli.ts setup","start":"bun src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","cli:node":"tsx src/cli.ts","dev:node":"tsx --watch src/index.ts","ratchets":"node scripts/check-ratchets.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"node scripts/check-architecture.mjs","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","start:node":"tsx src/index.ts","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","function-size":"node scripts/check-function-size.mjs","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts src/__tests__/integration/kilo-real-bootstrap.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts src/__tests__/integration/opencode-real-bootstrap.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","link-preview-js":"^5.0.0","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.19.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.20.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.45.1","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^7.5.0","qrcode":"^1.5.4","undici":"^8.0.2","baileys":"^7.0.0-rc14","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@types/qrcode":"^1.5.6","@clack/prompts":"^1.2.0","@openai/agents":"^0.18.0","@playwright/mcp":"0.0.80","link-preview-js":"^5.0.0","qrcode-terminal":"^0.12.0","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.154.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^5.0.0","prettier":"^3.8.1","@swc/core":"^1.16.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^5.0.0","@types/qrcode-terminal":"^0.12.2","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_3.35.0_1789470804949_0.3105770576976261","host":"s3://npm-registry-packages-npm-production"}},"3.36.0":{"name":"talon-agent","version":"3.36.0","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@3.36.0","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"7d587edd9b5db11912e4ee92205410390706d3c1","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-3.36.0.tgz","fileCount":652,"integrity":"sha512-39L729eo9xZN8kQXELTSb46tF7s/rUrl7kbrmGU2H3XDFj4nhleiMayj/obZ2AnfqGauund7/spDlylQVsTyKg==","signatures":[{"sig":"MEUCIHJ+OAXoQQ1+mMPWYU7HB+S96QaNMKlaHQejOGtNr/WJAiEA0I/OlZKGgyC1XGwhga8W6O8bBDlakDLo+mtlwvpMF98=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQCT16dIJo6v3Aj5Y+gxNLM/FJPmYWlHH8a0yCNLT8hWBQIgflSpgqUJFvdgjP8cet0NuJWB7I6wRWVk5p3blWuyBJM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@3.36.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3687374},"main":"./src/index.ts","type":"module","engines":{"node":">=24.15"},"exports":{".":"./src/index.ts"},"gitHead":"6941f8b5d73a040928a61cf5656c736d27010939","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"bun src/cli.ts","dev":"bun --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"bun src/cli.ts setup","start":"bun src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","cli:node":"tsx src/cli.ts","dev:node":"tsx --watch src/index.ts","ratchets":"node scripts/check-ratchets.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"node scripts/check-architecture.mjs","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","start:node":"tsx src/index.ts","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","function-size":"node scripts/check-function-size.mjs","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts src/__tests__/integration/kilo-real-bootstrap.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts src/__tests__/integration/opencode-real-bootstrap.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","link-preview-js":"^5.0.0","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.19.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.20.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.45.1","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^7.5.0","qrcode":"^1.5.4","undici":"^8.0.2","baileys":"^7.0.0-rc14","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@types/qrcode":"^1.5.6","@clack/prompts":"^1.2.0","@openai/agents":"^0.18.0","@playwright/mcp":"0.0.80","link-preview-js":"^5.0.0","qrcode-terminal":"^0.12.0","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.154.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^5.0.0","prettier":"^3.8.1","@swc/core":"^1.16.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^5.0.0","@types/qrcode-terminal":"^0.12.2","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_3.36.0_1789481505744_0.6094552111862364","host":"s3://npm-registry-packages-npm-production"}},"3.37.0":{"name":"talon-agent","version":"3.37.0","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@3.37.0","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"ec68b386cc5c903de3343f8676baad0cb8464060","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-3.37.0.tgz","fileCount":652,"integrity":"sha512-mqrxDQ2wfYdFe3lhXZ2drmjYiCG64tzz8+qCXwQTspfx3g+tkN8LkrBGNzgTIpJbFyZSu5XpVmCuQpa/pldFSA==","signatures":[{"sig":"MEUCIQDM+8cFV5sDgazOLuXG8a8QJiOsMF3G+h6jDAO8BWbsogIgI4L7lrBjKujbu2SmWfgzY25UGNA0vjWLbeuPD23yh8Q=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIFrWFF+x6Vb/d9PhnfsDBZ88hKMcuxzVIZFBc+lCFcZ+AiEA9Nzx+EexExof1LHUuJLCiFieHA+U6oIUqkeNIXg1F6Y=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@3.37.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3692649},"main":"./src/index.ts","type":"module","engines":{"node":">=24.15"},"exports":{".":"./src/index.ts"},"gitHead":"a498c5f6d633cd66d4489009dc6ff6b8c93885c0","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"bun src/cli.ts","dev":"bun --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"bun src/cli.ts setup","start":"bun src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","cli:node":"tsx src/cli.ts","dev:node":"tsx --watch src/index.ts","ratchets":"node scripts/check-ratchets.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"node scripts/check-architecture.mjs","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","start:node":"tsx src/index.ts","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","function-size":"node scripts/check-function-size.mjs","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts src/__tests__/integration/kilo-real-bootstrap.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts src/__tests__/integration/opencode-real-bootstrap.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","link-preview-js":"^5.0.0","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.19.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.20.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.45.1","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^7.5.0","qrcode":"^1.5.4","undici":"^8.0.2","baileys":"^7.0.0-rc14","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@types/qrcode":"^1.5.6","@clack/prompts":"^1.2.0","@openai/agents":"^0.18.0","@playwright/mcp":"0.0.80","link-preview-js":"^5.0.0","qrcode-terminal":"^0.12.0","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.154.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^5.0.0","prettier":"^3.8.1","@swc/core":"^1.16.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^5.0.0","@types/qrcode-terminal":"^0.12.2","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_3.37.0_1789556550041_0.11943577203855771","host":"s3://npm-registry-packages-npm-production"}},"4.0.0":{"name":"talon-agent","version":"4.0.0","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@4.0.0","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"219b4cf29d60df0001e2eca469b9f1162f497cf1","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-4.0.0.tgz","fileCount":652,"integrity":"sha512-oACW806fqnstuqJQKXYEPUmxOSfDJhvB2wZyBRk1LeTBXkNyoeNLWcDZvStGd/2iILWbITBZcCva3UvaEO0ieA==","signatures":[{"sig":"MEQCIE8sI172zBfzR09puZG3gftmXgi2O3EboP2L9EEFLvqLAiALC3vA6jrHK3fIahayzPTkyC87UQvue76G1s2nC61PZA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQDcIojLcBcAWKEAkJI/CcxbF2G821OS2aF4XTwEN8nPYgIgXjX1ZN2KLAeIQ6UCLP4SCS3xSfTeoW++IMX9LulLjv8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@4.0.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3692648},"main":"./src/index.ts","type":"module","engines":{"node":">=24.15"},"exports":{".":"./src/index.ts"},"gitHead":"989188f1f6c8570ecf57c8076444ca49c4c849ed","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"bun src/cli.ts","dev":"bun --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"bun src/cli.ts setup","start":"bun src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","cli:node":"tsx src/cli.ts","dev:node":"tsx --watch src/index.ts","ratchets":"node scripts/check-ratchets.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"node scripts/check-architecture.mjs","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","start:node":"tsx src/index.ts","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","function-size":"node scripts/check-function-size.mjs","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts src/__tests__/integration/kilo-real-bootstrap.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts src/__tests__/integration/opencode-real-bootstrap.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","link-preview-js":"^5.0.0","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.19.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.20.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.45.1","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^7.5.0","qrcode":"^1.5.4","undici":"^8.0.2","baileys":"^7.0.0-rc14","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@types/qrcode":"^1.5.6","@clack/prompts":"^1.2.0","@openai/agents":"^0.18.0","@playwright/mcp":"0.0.80","link-preview-js":"^5.0.0","qrcode-terminal":"^0.12.0","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.154.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^5.0.0","prettier":"^3.8.1","@swc/core":"^1.16.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^5.0.0","@types/qrcode-terminal":"^0.12.2","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_4.0.0_1789562649838_0.2837111661555094","host":"s3://npm-registry-packages-npm-production"}},"4.0.1":{"name":"talon-agent","version":"4.0.1","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@4.0.1","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"1b0c8424d5a79aa67e85fc163c294bb5c91b7228","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-4.0.1.tgz","fileCount":652,"integrity":"sha512-wikQBieBK1sugGSW4WZt12d/bl1NzjF36+yrPsdJ3mrEmvklYhL0vl1ptKbYsuhZb1T7uyBnfVd50/a7gVVD+A==","signatures":[{"sig":"MEUCIQCLt2ptgb3abvIFyqhP4urnHs2QxFLBXa999I5imq52egIgYsDTPDhhUwSNlYgdR1udAFyg4YoaIcuV38u23uRs3PM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIGA5Lcf5GWHg6GeTqgMniTSGlGIl4/3XohrAunuR9POjAiEAwc21RqtehCZo6XfIPA0xws30mlSBES/sOgY2m2gjeJ0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@4.0.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3692648},"main":"./src/index.ts","type":"module","engines":{"node":">=24.15"},"exports":{".":"./src/index.ts"},"gitHead":"7aaddbd1f9bd76ec011c2378e31bf843eae1438e","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"bun src/cli.ts","dev":"bun --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"bun src/cli.ts setup","start":"bun src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","cli:node":"tsx src/cli.ts","dev:node":"tsx --watch src/index.ts","ratchets":"node scripts/check-ratchets.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"node scripts/check-architecture.mjs","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","start:node":"tsx src/index.ts","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","function-size":"node scripts/check-function-size.mjs","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts src/__tests__/integration/kilo-real-bootstrap.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts src/__tests__/integration/opencode-real-bootstrap.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","link-preview-js":"^5.0.0","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.19.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.20.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.45.1","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^7.5.0","qrcode":"^1.5.4","undici":"^8.0.2","baileys":"^7.0.0-rc14","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@types/qrcode":"^1.5.6","@clack/prompts":"^1.2.0","@openai/agents":"^0.18.0","@playwright/mcp":"0.0.80","link-preview-js":"^5.0.0","qrcode-terminal":"^0.12.0","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.154.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^5.0.0","prettier":"^3.8.1","@swc/core":"^1.16.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^5.0.0","@types/qrcode-terminal":"^0.12.2","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_4.0.1_1789564758241_0.3622320851947951","host":"s3://npm-registry-packages-npm-production"}},"4.1.0":{"name":"talon-agent","version":"4.1.0","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@4.1.0","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"80f2a31fa8d1333b1a5d64868c5b676a8c4f5ec6","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-4.1.0.tgz","fileCount":655,"integrity":"sha512-gN5TB1RSN0gpVf0kDuCBkFhIImFoqyHAuqfbtjEPaYe4Z58tw7xeZpxNvAIe1sOJpF1uRiF7GvE5Bnc+NKZqTg==","signatures":[{"sig":"MEQCIA8kd3G08tdEH9hkNNJGY4dbl5RinSzqkNrJMMt+XX1mAiBIXPnJMDrnru0nPHrQFNt96FQnSvMelEttScCjCcSSvw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQCldVub5iLexlWyrkoEMQkJtqMPQwDTPn04uQnXbnoLLwIhAKxEALPd7vo2vwbnrAFKIacLpgc7dJHGN309+PvzKmZP","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@4.1.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3713547},"main":"./src/index.ts","type":"module","engines":{"node":">=24.15"},"exports":{".":"./src/index.ts"},"gitHead":"7af99d97ceb0d7cc8abc42eeb09acb4a127c210d","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"bun src/cli.ts","dev":"bun --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"bun src/cli.ts setup","start":"bun src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","cli:node":"tsx src/cli.ts","dev:node":"tsx --watch src/index.ts","ratchets":"node scripts/check-ratchets.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"node scripts/check-architecture.mjs","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","start:node":"tsx src/index.ts","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","function-size":"node scripts/check-function-size.mjs","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts src/__tests__/integration/kilo-real-bootstrap.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts src/__tests__/integration/opencode-real-bootstrap.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","link-preview-js":"^5.0.0","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.19.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.20.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.45.1","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^7.5.0","qrcode":"^1.5.4","undici":"^8.0.2","baileys":"^7.0.0-rc14","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@types/qrcode":"^1.5.6","@clack/prompts":"^1.2.0","@openai/agents":"^0.18.0","@playwright/mcp":"0.0.80","link-preview-js":"^5.0.0","qrcode-terminal":"^0.12.0","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.154.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^5.0.0","prettier":"^3.8.1","@swc/core":"^1.16.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^5.0.0","@types/qrcode-terminal":"^0.12.2","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_4.1.0_1789631907839_0.7304833109978355","host":"s3://npm-registry-packages-npm-production"}},"4.2.0":{"name":"talon-agent","version":"4.2.0","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@4.2.0","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"0b379fdaa093f2897bdc11e5e601a5879158caf6","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-4.2.0.tgz","fileCount":655,"integrity":"sha512-kRFYKmnvnd0ev4gIflJBi51iEXNRAX/ZlUtgoD4Wjb2f/wK4eLENWQgRQz+IbjLfyjU/2TW8JCZEFWXLfT/V+w==","signatures":[{"sig":"MEUCIB5LcPzBKaQ2hi3vPT8CVQ5YKF+YhUHjHZyEmeWC2LomAiEAqrBKHx6MRtdEkNKOHwBEq8f96a9SLlhlsL9s8Zc4HDk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCID/EkW/F+IJ7Fumrmk7XRWMXtFwWq/LjUx07MKIwYNOiAiEAr7QNWz5D84VqpmkRt5Tbto73tieh2nrkGGyj7ILc6ZY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@4.2.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3713775},"main":"./src/index.ts","type":"module","engines":{"node":">=24.15"},"exports":{".":"./src/index.ts"},"gitHead":"1a4b8b60e142a6de3e0cdae9c7fa4a34c88b571e","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"bun src/cli.ts","dev":"bun --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"bun src/cli.ts setup","start":"bun src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","cli:node":"tsx src/cli.ts","dev:node":"tsx --watch src/index.ts","ratchets":"node scripts/check-ratchets.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"node scripts/check-architecture.mjs","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","start:node":"tsx src/index.ts","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","function-size":"node scripts/check-function-size.mjs","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts src/__tests__/integration/kilo-real-bootstrap.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts src/__tests__/integration/opencode-real-bootstrap.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","link-preview-js":"^5.0.0","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.19.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.20.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.45.1","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^7.5.0","qrcode":"^1.5.4","undici":"^8.0.2","baileys":"^7.0.0-rc14","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@types/qrcode":"^1.5.6","@clack/prompts":"^1.2.0","@openai/agents":"^0.18.0","@playwright/mcp":"0.0.80","link-preview-js":"^5.0.0","qrcode-terminal":"^0.12.0","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.154.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^5.0.0","prettier":"^3.8.1","@swc/core":"^1.16.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^5.0.0","@types/qrcode-terminal":"^0.12.2","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_4.2.0_1789639432061_0.7679306739157519","host":"s3://npm-registry-packages-npm-production"}},"4.3.0":{"name":"talon-agent","version":"4.3.0","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@4.3.0","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"8de8d898494dd222bc62387a520918441c150d34","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-4.3.0.tgz","fileCount":656,"integrity":"sha512-9Zi9vYyCrrOJgzfDo5TRuk5hLznZSuBlb0yf7TScSHvfsLordhK7OIyfxT7s5jeq72VM3kmyC0D0J8R7wKgmBQ==","signatures":[{"sig":"MEQCIEdlGUMPTuPDGUye1A3ALwSOkslByajlizCDKuT/cmw6AiA51rq4Oht0Dckhop0TqMtJZbY0PjJEYwPYngVDD65E2Q==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQCqfA2HRxpFnr6o4OadtVx/LLwCucK4KKrX7f+4s+8CagIhANWP4/+zrZp5KehbtRXxNGSjsvIPKvrMRwNx15spttRr","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@4.3.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3725460},"main":"./src/index.ts","type":"module","engines":{"node":">=24.15"},"exports":{".":"./src/index.ts"},"gitHead":"25e269f6515820c0c5d09e8ef77957c46163acbd","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"bun src/cli.ts","dev":"bun --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"bun src/cli.ts setup","start":"bun src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","cli:node":"tsx src/cli.ts","dev:node":"tsx --watch src/index.ts","ratchets":"node scripts/check-ratchets.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"node scripts/check-architecture.mjs","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","start:node":"tsx src/index.ts","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","function-size":"node scripts/check-function-size.mjs","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts src/__tests__/integration/kilo-real-bootstrap.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts src/__tests__/integration/opencode-real-bootstrap.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","link-preview-js":"^5.0.0","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.19.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.20.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.45.1","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^7.5.0","qrcode":"^1.5.4","undici":"^8.0.2","baileys":"^7.0.0-rc14","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@types/qrcode":"^1.5.6","@clack/prompts":"^1.2.0","@openai/agents":"^0.18.0","@playwright/mcp":"0.0.80","link-preview-js":"^5.0.0","qrcode-terminal":"^0.12.0","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.154.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^5.0.0","prettier":"^3.8.1","@swc/core":"^1.16.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^5.0.0","@types/qrcode-terminal":"^0.12.2","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_4.3.0_1789654403582_0.9425894211781385","host":"s3://npm-registry-packages-npm-production"}},"4.3.1":{"name":"talon-agent","version":"4.3.1","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@4.3.1","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"fb779112cbef5863b79aa6eb0699e9f08eaa9de2","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-4.3.1.tgz","fileCount":656,"integrity":"sha512-feJOnePjEb3IIvKLYzF3eSgDx4TcLEl2HNwXmVYzcXkYEWUSnuaoxlVrFmzpC7VssHTNpo6s6hfK+rCu9L39HA==","signatures":[{"sig":"MEYCIQCOT2gCCyDK2laBXOsDBwaT1+NYZOpBkAULqjS8lIqTpgIhANxc2pWc1wV111LRi3f44AxVOE/HA6XjTdYPOF5V3uAm","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIFdlQ5u3eQKBAaEJT4OtK8ZrSJh440ZahgmHT/UJXab6AiB1Ri9/KrTzTY4BE/7pwmnOIeeATsDJpNfoCqJq17vr9Q==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@4.3.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3727472},"main":"./src/index.ts","type":"module","engines":{"node":">=24.15"},"exports":{".":"./src/index.ts"},"gitHead":"42a3a91b8b8380218075f6b3b74ebd59da35170e","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"bun src/cli.ts","dev":"bun --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"bun src/cli.ts setup","start":"bun src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","cli:node":"tsx src/cli.ts","dev:node":"tsx --watch src/index.ts","ratchets":"node scripts/check-ratchets.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"node scripts/check-architecture.mjs","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","start:node":"tsx src/index.ts","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","function-size":"node scripts/check-function-size.mjs","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts src/__tests__/integration/kilo-real-bootstrap.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts src/__tests__/integration/opencode-real-bootstrap.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","link-preview-js":"^5.0.0","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.19.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.20.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.45.1","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^7.5.0","qrcode":"^1.5.4","undici":"^8.0.2","baileys":"^7.0.0-rc14","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@types/qrcode":"^1.5.6","@clack/prompts":"^1.2.0","@openai/agents":"^0.18.0","@playwright/mcp":"0.0.80","link-preview-js":"^5.0.0","qrcode-terminal":"^0.12.0","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.154.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^5.0.0","prettier":"^3.8.1","@swc/core":"^1.16.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^5.0.0","@types/qrcode-terminal":"^0.12.2","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_4.3.1_1789654919877_0.681728565614454","host":"s3://npm-registry-packages-npm-production"}},"4.3.2":{"name":"talon-agent","version":"4.3.2","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@4.3.2","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"17741b8a2219aa43145ffe188f8ec7dcc7d345bc","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-4.3.2.tgz","fileCount":667,"integrity":"sha512-3fwRhXTXEr6I8hRJ5Yhcq9YtdxftsGhwskYnepx9hGYiJ/gXV3QxdVu2V9RX67uUML/sRo9byWC5SF9+UNityA==","signatures":[{"sig":"MEUCIGngpK5V7OuLzAdJPZz5xxFv3nhxfnjbqP9iXy35D2L9AiEAqaBw64KOmIMn2H2ZDn/05+98qkh4ggOT05E0nWLlCoE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIFDXo8UxWSBSsYK2HFG7i9YcnbON4oYs18bha5zZwyiuAiAWqA8H1w9Cgr4TelhdCI+Dsv2ueOHVN9Z0hADpJOFBmA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@4.3.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3731616},"main":"./src/index.ts","type":"module","engines":{"node":">=24.15"},"exports":{".":"./src/index.ts"},"gitHead":"f153577798bbecac50fdfa91e9bc0214eef67873","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"bun src/cli.ts","dev":"bun --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"bun src/cli.ts setup","start":"bun src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","cli:node":"tsx src/cli.ts","dev:node":"tsx --watch src/index.ts","ratchets":"node scripts/check-ratchets.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"node scripts/check-architecture.mjs","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","start:node":"tsx src/index.ts","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","function-size":"node scripts/check-function-size.mjs","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts src/__tests__/integration/kilo-real-bootstrap.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts src/__tests__/integration/opencode-real-bootstrap.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","link-preview-js":"^5.0.0","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.19.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.20.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.45.1","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^7.5.0","qrcode":"^1.5.4","undici":"^8.0.2","baileys":"^7.0.0-rc14","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@types/qrcode":"^1.5.6","@clack/prompts":"^1.2.0","@openai/agents":"^0.18.0","@playwright/mcp":"0.0.80","link-preview-js":"^5.0.0","qrcode-terminal":"^0.12.0","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.154.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^5.0.0","prettier":"^3.8.1","@swc/core":"^1.16.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^5.0.0","@types/qrcode-terminal":"^0.12.2","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_4.3.2_1789728112106_0.22876025068349315","host":"s3://npm-registry-packages-npm-production"}},"4.3.3":{"name":"talon-agent","version":"4.3.3","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@4.3.3","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"6b3bbb5731e694d21dbbc08be962493c1266bf2c","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-4.3.3.tgz","fileCount":695,"integrity":"sha512-dxEPyeZtzZu+oieKrCuQnfX42ZMRJwTAEejZUvIzdB4D+vxSwh1wiHrb4FyEDuMZ9s2GE5051MPfg4mA3VymPQ==","signatures":[{"sig":"MEQCIDI3MSVnVU6CTzJDibwgOqWGDMK3uuhr3anHzwPrNYJ9AiB/va9jxIrBdWNKiMzmXvXhC64QMOHqziabOrbWdWuvYg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQCU0KVIvMVU2qY7BzsGwTnL4ZlEM4W3GrVelOhZZpbbAgIhAOLWShIropFh5T4BTZzViT7VW3l7pz5EW2yTtJIpyEjr","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@4.3.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3751131},"main":"./src/index.ts","type":"module","engines":{"node":">=24.15"},"exports":{".":"./src/index.ts"},"gitHead":"8e5e3d0262816ed5919d5b8060fdecf548e833d9","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"bun src/cli.ts","dev":"bun --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"bun src/cli.ts setup","start":"bun src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","cli:node":"tsx src/cli.ts","dev:node":"tsx --watch src/index.ts","ratchets":"node scripts/check-ratchets.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"node scripts/check-architecture.mjs","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","start:node":"tsx src/index.ts","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","function-size":"node scripts/check-function-size.mjs","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts src/__tests__/integration/kilo-real-bootstrap.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts src/__tests__/integration/opencode-real-bootstrap.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","link-preview-js":"^5.0.0","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.19.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.20.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.45.1","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^7.5.0","qrcode":"^1.5.4","undici":"^8.0.2","baileys":"^7.0.0-rc14","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@types/qrcode":"^1.5.6","@clack/prompts":"^1.2.0","@openai/agents":"^0.18.0","@playwright/mcp":"0.0.80","link-preview-js":"^5.0.0","qrcode-terminal":"^0.12.0","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.154.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^5.0.0","prettier":"^3.8.1","@swc/core":"^1.16.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^5.0.0","@types/qrcode-terminal":"^0.12.2","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_4.3.3_1789733866692_0.821626793757912","host":"s3://npm-registry-packages-npm-production"}},"4.4.0":{"name":"talon-agent","version":"4.4.0","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@4.4.0","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"ded9146e176a773a362ddcf6fa99633e5942d9c3","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-4.4.0.tgz","fileCount":701,"integrity":"sha512-HF2bBNp1CRszAGQ6peU9MwndDTpkRRq2dV2StaIKpHjXgJs5hl5Oybc1i3GFEq6sW5TfIVf9h+ZMBwEXHWEJ4g==","signatures":[{"sig":"MEYCIQDxUc2b4+3xWc7E/K/r/GuvcPuSVUJC6bjX4ync3r+kmAIhAJFMmsG1yiPAII8SSW+l6KhJfPvIo7K98rIwC8WPhJBM","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQCV2ZfBg8KdO64unLqaDIRgowmlZDkeXyqgiNqfX+/DGQIgKxzR75sEGtTLCGkXWPMd5v8Q0u6MFm1TpJXF0PhPRI4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@4.4.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3797205},"main":"./src/index.ts","type":"module","engines":{"node":">=24.15"},"exports":{".":"./src/index.ts"},"gitHead":"f89a722c48b008c78f09d6e50a30422e682db7b5","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"bun src/cli.ts","dev":"bun --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"bun src/cli.ts setup","start":"bun src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","cli:node":"tsx src/cli.ts","dev:node":"tsx --watch src/index.ts","ratchets":"node scripts/check-ratchets.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"node scripts/check-architecture.mjs","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","start:node":"tsx src/index.ts","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","function-size":"node scripts/check-function-size.mjs","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts src/__tests__/integration/kilo-real-bootstrap.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts src/__tests__/integration/opencode-real-bootstrap.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","link-preview-js":"^5.0.0","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.19.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.20.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.45.1","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^7.5.0","qrcode":"^1.5.4","undici":"^8.0.2","baileys":"^7.0.0-rc14","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@types/qrcode":"^1.5.6","@clack/prompts":"^1.2.0","@openai/agents":"^0.18.0","@playwright/mcp":"0.0.80","link-preview-js":"^5.0.0","qrcode-terminal":"^0.12.0","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.154.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^5.0.0","prettier":"^3.8.1","@swc/core":"^1.16.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^5.0.0","@types/qrcode-terminal":"^0.12.2","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_4.4.0_1789735828409_0.9634890996343966","host":"s3://npm-registry-packages-npm-production"}},"4.5.0":{"name":"talon-agent","version":"4.5.0","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@4.5.0","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"bad1b9aca15f5c24141911417b87507823fe8457","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-4.5.0.tgz","fileCount":706,"integrity":"sha512-FP6VI27TWwp8o899T/uJkjPHFdbtf8iVSRZoyjKeG34hAxtaHCs9DHm5aHJ6UL8ea+wJK24mh3k/okEId/5qLA==","signatures":[{"sig":"MEYCIQC+TK3SVQOzbLWkCNc9kAMl6AQCucVIZmNfAXQQfM4CrgIhAJ4GlyfIxDZe6b4QyanHeytQiIbPqDgD2J4N2SnCZxkn","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQCDm8F7sslPs3BO/hJHw5ogYaxrcIgjOc2EdgoJjY3F2gIhAN0kE4erf5My3f4G1IuxEIqlz+L3Q5Aq52Ie0gGiHJWU","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@4.5.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3832206},"main":"./src/index.ts","type":"module","engines":{"node":">=24.15"},"exports":{".":"./src/index.ts"},"gitHead":"9c417b531af6f0b3728f1293aa26fa659715475f","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"bun src/cli.ts","dev":"bun --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"bun src/cli.ts setup","start":"bun src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","cli:node":"tsx src/cli.ts","dev:node":"tsx --watch src/index.ts","ratchets":"node scripts/check-ratchets.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"node scripts/check-architecture.mjs","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","start:node":"tsx src/index.ts","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","function-size":"node scripts/check-function-size.mjs","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts src/__tests__/integration/kilo-real-bootstrap.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts src/__tests__/integration/opencode-real-bootstrap.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","link-preview-js":"^5.0.0","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.19.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.20.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.45.1","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^7.5.0","qrcode":"^1.5.4","undici":"^8.0.2","baileys":"^7.0.0-rc14","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@types/qrcode":"^1.5.6","@clack/prompts":"^1.2.0","@openai/agents":"^0.18.0","@playwright/mcp":"0.0.80","link-preview-js":"^5.0.0","qrcode-terminal":"^0.12.0","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.154.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^5.0.0","prettier":"^3.8.1","@swc/core":"^1.16.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^5.0.0","@types/qrcode-terminal":"^0.12.2","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_4.5.0_1789737131254_0.7268545874060715","host":"s3://npm-registry-packages-npm-production"}},"4.6.0":{"name":"talon-agent","version":"4.6.0","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@4.6.0","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"3e23d13db8054c267208205bcdb7ba78b3269eeb","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-4.6.0.tgz","fileCount":709,"integrity":"sha512-jpVGERfoHmC1YxuGUEWR1vZhnNTst8+R/mx02zh/gV4t89raBsmTMPJ5AGvQx8eHlWzqtJV+G3R5kawt+Ksbzg==","signatures":[{"sig":"MEUCIQCMg6oJYpssEitXimy9DhHM2sA9bl3EpSGafdEEoFtNIgIgRBtMNJAGjnGjQ7kxPq/r7fkYG1ypYqcooQnCAki71yM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQDSzR9Oy/Of90ebiSRmERd0fK0WBTGYbqSazVwblFHcTwIgZAlk6T8GO1E+SYux/azbMr7WdO838uu277fbqWe0a0M=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@4.6.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3843484},"main":"./src/index.ts","type":"module","engines":{"node":">=24.15"},"exports":{".":"./src/index.ts"},"gitHead":"a96487667da246281477ea4a948da160a6755572","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"bun src/cli.ts","dev":"bun --watch src/index.ts","knip":"knip","lint":"oxlint src/","test":"vitest run","setup":"bun src/cli.ts setup","start":"bun src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","cli:node":"tsx src/cli.ts","dev:node":"tsx --watch src/index.ts","ratchets":"node scripts/check-ratchets.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"node scripts/check-architecture.mjs","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","start:node":"tsx src/index.ts","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","function-size":"node scripts/check-function-size.mjs","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts src/__tests__/integration/kilo-real-bootstrap.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts src/__tests__/integration/opencode-real-bootstrap.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","link-preview-js":"^5.0.0","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.19.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.20.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.45.1","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^7.5.0","qrcode":"^1.5.4","undici":"^8.0.2","baileys":"^7.0.0-rc14","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@types/qrcode":"^1.5.6","@clack/prompts":"^1.2.0","@openai/agents":"^0.18.0","@playwright/mcp":"0.0.80","link-preview-js":"^5.0.0","qrcode-terminal":"^0.12.0","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.154.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^5.0.0","prettier":"^3.8.1","@swc/core":"^1.16.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^5.0.0","@types/qrcode-terminal":"^0.12.2","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_4.6.0_1789738286264_0.6561969586751191","host":"s3://npm-registry-packages-npm-production"}},"4.6.1":{"name":"talon-agent","version":"4.6.1","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@4.6.1","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"d3dd21b9486f7e684a633e744bcc51913ea0f27f","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-4.6.1.tgz","fileCount":709,"integrity":"sha512-5pUx+8u5EXT2iqhftBb0TOMFOxilhHj/JMmyAjdOjwlYQ+KlIKp/qnkaneXJPUlfc+Jm8QgMdAuYZSM67xEZ8g==","signatures":[{"sig":"MEQCIFdl+xX/EiXiDz1h7VJnbbxlM4lrdHFBg1UKF7ofqySYAiAXQQGJ0CZu6yXDE7F8kfS4pHDxH8Z9fvrJBhlnvW7Flw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIDhbzGRRca2ObWnBqD2+ftNZvyR6hS7+1CmLRmO+LJX4AiApN9QKjIkhdIwfq+oWg8hSQbBm+0jsZwpg7dKbILLYzQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@4.6.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3843548},"main":"./src/index.ts","type":"module","engines":{"node":">=24.15"},"exports":{".":"./src/index.ts"},"gitHead":"96dcca976b8fb5627e7dd02a227ee417d698aa03","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"bun src/cli.ts","dev":"bun --watch src/index.ts","knip":"knip","lint":"oxlint --max-warnings 0 src/","test":"vitest run","setup":"bun src/cli.ts setup","start":"bun src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","cli:node":"tsx src/cli.ts","dev:node":"tsx --watch src/index.ts","ratchets":"node scripts/check-ratchets.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"node scripts/check-architecture.mjs","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","start:node":"tsx src/index.ts","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","function-size":"node scripts/check-function-size.mjs","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts src/__tests__/integration/kilo-real-bootstrap.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts src/__tests__/integration/opencode-real-bootstrap.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","link-preview-js":"^5.0.0","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.19.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.20.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.45.1","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^7.5.0","qrcode":"^1.5.4","undici":"^8.0.2","baileys":"^7.0.0-rc14","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@types/qrcode":"^1.5.6","@clack/prompts":"^1.2.0","@openai/agents":"^0.18.0","@playwright/mcp":"0.0.80","link-preview-js":"^5.0.0","qrcode-terminal":"^0.12.0","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.154.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^5.0.0","prettier":"^3.8.1","@swc/core":"^1.16.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^5.0.0","@types/qrcode-terminal":"^0.12.2","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_4.6.1_1789739417438_0.43841628720650294","host":"s3://npm-registry-packages-npm-production"}},"5.0.0":{"name":"talon-agent","version":"5.0.0","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@5.0.0","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"95d061c6bf051714570a8042abe017f0eba9adbc","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-5.0.0.tgz","fileCount":684,"integrity":"sha512-cIDBppRAzYGoTAjkoXtjaDsLaWhFhJd2Rxu17J0R9YwM5GkGnaaj+hKMqVEkg8naHqNxaXnAjfxZ8D+3Ki9DSg==","signatures":[{"sig":"MEUCIQDc8nUNluW43b1wDgn9Jve9usNV2coh+pGjap7gGQRYOAIgK1oHJmXxsjICk3n6W6vaCenTYzHnj1hYfNPdOMZj81c=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQDgFzOpAi2VlJPYGT0Zcu1UKs2wwNuWkfWYOZajNN8z8AIhANACoFqziANu0ybk7DfL4WVfcLKt1BiPQtc8X+bsvutn","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@5.0.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3737708},"main":"./src/index.ts","type":"module","engines":{"node":">=24.15"},"exports":{".":"./src/index.ts"},"gitHead":"ab14672554f1c5ddf3da42e740c11414ec6eafc7","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"bun src/cli.ts","dev":"bun --watch src/index.ts","knip":"knip","lint":"oxlint --max-warnings 0 src/","test":"vitest run","tree":"node scripts/check-tree.mjs","setup":"bun src/cli.ts setup","start":"bun src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","cli:node":"tsx src/cli.ts","dev:node":"tsx --watch src/index.ts","ratchets":"node scripts/check-ratchets.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"node scripts/check-architecture.mjs","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","start:node":"tsx src/index.ts","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","function-size":"node scripts/check-function-size.mjs","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts src/__tests__/integration/kilo-real-bootstrap.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts src/__tests__/integration/opencode-real-bootstrap.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","link-preview-js":"^5.0.0","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.19.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.20.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.45.1","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^7.5.0","qrcode":"^1.5.4","undici":"^8.0.2","baileys":"^7.0.0-rc14","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@types/qrcode":"^1.5.6","@clack/prompts":"^1.2.0","@openai/agents":"^0.18.0","@playwright/mcp":"0.0.80","link-preview-js":"^5.0.0","qrcode-terminal":"^0.12.0","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.154.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^5.0.0","prettier":"^3.8.1","@swc/core":"^1.16.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^5.0.0","@types/qrcode-terminal":"^0.12.2","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_5.0.0_1789745340290_0.22167493787197445","host":"s3://npm-registry-packages-npm-production"}},"5.0.1":{"name":"talon-agent","version":"5.0.1","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@5.0.1","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"06e6a5941971ee11691d968ead3a95386b3844e1","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-5.0.1.tgz","fileCount":695,"integrity":"sha512-n5HO72iFvBATrEOYVHTQkS7SG6ZcEPzySu3Eb3ddgFJlb+duuGpgg5hI7iqHhNmKWX/+UBJR2iiGR5BlYHP7Cg==","signatures":[{"sig":"MEUCIQDnu6YRxdlp/VpXR2/Kqbtq3OVzZAieUoc5b4mBn/rJGwIgXu73+Y9ophx14qd/909Z498J86vej5Jm1+0rW13HeHw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIFGGKiG7h07ovzrIR+PDOKNq6JY/3NSoH2XVfoWNfQEAAiAtKhlttNxGVCmVSOKS38qhEvevQ9k1K0e1VRqv0IYJpw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@5.0.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3765464},"main":"./src/index.ts","type":"module","engines":{"node":">=24.15"},"exports":{".":"./src/index.ts"},"gitHead":"3d1fce7b3685db29aee82b7e783ae39a76f1b479","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"bun src/cli.ts","dev":"bun --watch src/index.ts","knip":"knip","lint":"oxlint --max-warnings 0 src/","test":"vitest run","tree":"node scripts/check-tree.mjs","setup":"bun src/cli.ts setup","start":"bun src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","cli:node":"tsx src/cli.ts","dev:node":"tsx --watch src/index.ts","ratchets":"node scripts/check-ratchets.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"node scripts/check-architecture.mjs","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","start:node":"tsx src/index.ts","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","function-size":"node scripts/check-function-size.mjs","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts src/__tests__/integration/kilo-real-bootstrap.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts src/__tests__/integration/opencode-real-bootstrap.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","link-preview-js":"^5.0.0","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.19.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.20.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.45.1","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^7.5.0","qrcode":"^1.5.4","undici":"^8.0.2","baileys":"^7.0.0-rc14","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@types/qrcode":"^1.5.6","@clack/prompts":"^1.2.0","@openai/agents":"^0.18.0","@playwright/mcp":"0.0.80","link-preview-js":"^5.0.0","qrcode-terminal":"^0.12.0","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.154.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.197","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^5.0.0","prettier":"^3.8.1","@swc/core":"^1.16.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^5.0.0","@types/qrcode-terminal":"^0.12.2","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_5.0.1_1789749881048_0.7307151798865108","host":"s3://npm-registry-packages-npm-production"}},"5.1.0":{"name":"talon-agent","version":"5.1.0","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@5.1.0","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"e9ded486fcbeb2dfa97a9ec113b38a1400553f57","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-5.1.0.tgz","fileCount":696,"integrity":"sha512-jMoFHjTNeqRqu86CIh26vDkR5DmcXRVNt/W3q6MMdZjdONX8bw34Rtsq4cs5H8sPWStXxeGdoPXtCezAlsxzAQ==","signatures":[{"sig":"MEUCIQC8WP+aLw36/FkUf9dxKhKgYUt4kxgYJNYCNBfluDzfyAIgBx6sngGQ1hxXJTLRPqqJQSNv8ewKnSYl017D+GpPssQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIG7qbfz9tT88CFh/ZrkPkCHdZ99moYa/T5FvU6fZp+qbAiEAhJL5NclMNJycHdgsCX+1AK8Mglkd67RDFRwpjVNks6E=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@5.1.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3776391},"main":"./src/index.ts","type":"module","engines":{"node":">=24.15"},"exports":{".":"./src/index.ts"},"gitHead":"17f3e5e57e04db780a7688877828a289dcadd3f1","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"bun src/cli.ts","dev":"bun --watch src/index.ts","knip":"knip","lint":"oxlint --max-warnings 0 src/","test":"vitest run","tree":"node scripts/check-tree.mjs","setup":"bun src/cli.ts setup","start":"bun src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","cli:node":"tsx src/cli.ts","dev:node":"tsx --watch src/index.ts","ratchets":"node scripts/check-ratchets.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"node scripts/check-architecture.mjs","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","start:node":"tsx src/index.ts","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","function-size":"node scripts/check-function-size.mjs","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts src/__tests__/integration/kilo-real-bootstrap.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts src/__tests__/integration/opencode-real-bootstrap.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","link-preview-js":"^5.0.0","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.19.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.20.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.45.1","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^7.5.0","qrcode":"^1.5.4","undici":"^8.0.2","baileys":"^7.0.0-rc14","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@types/qrcode":"^1.5.6","@clack/prompts":"^1.2.0","@openai/agents":"^0.18.0","@playwright/mcp":"0.0.80","link-preview-js":"^5.0.0","qrcode-terminal":"^0.12.0","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.154.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.277","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^5.0.0","prettier":"^3.8.1","@swc/core":"^1.16.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^5.0.0","@types/qrcode-terminal":"^0.12.2","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_5.1.0_1789757544967_0.6202167909136833","host":"s3://npm-registry-packages-npm-production"}},"5.2.0":{"name":"talon-agent","version":"5.2.0","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@5.2.0","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"6d908726ac4a32c221f01e9c08b1add236de8e6d","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-5.2.0.tgz","fileCount":697,"integrity":"sha512-Aye0A5AcnjPJ+MOTUxsKTNldO1PM07UgE+YRqccw1m3obnBh8QROocG9pId061kNtpNiMrdd0sAdffNtBr7EGQ==","signatures":[{"sig":"MEYCIQCG1VxCbMuwgyRrimGMESd0jjPyK7ZsmppS0mRxxhG2+AIhAKUyRQU0OwutR81Tpmra6EHCzD744szF5mRTh2FHR8DA","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQDKXovFgUNaRhY4kZTHWHBi4hN1rtYlpgmj2ENyunURdAIhAKwY/Y1UHXlkZTX7Z/JoBZekG14dADnLLk+XmGhm1qwn","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@5.2.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3860870},"main":"./src/index.ts","type":"module","engines":{"node":">=24.15"},"exports":{".":"./src/index.ts"},"gitHead":"d81cbeafe9822fb7f36523e01c69f54b3e77a8f6","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"bun src/cli.ts","dev":"bun --watch src/index.ts","knip":"knip","lint":"oxlint --max-warnings 0 src/","test":"vitest run","tree":"node scripts/check-tree.mjs","setup":"bun src/cli.ts setup","start":"bun src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","cli:node":"tsx src/cli.ts","dev:node":"tsx --watch src/index.ts","ratchets":"node scripts/check-ratchets.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"node scripts/check-architecture.mjs","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","start:node":"tsx src/index.ts","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","function-size":"node scripts/check-function-size.mjs","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts src/__tests__/integration/kilo-real-bootstrap.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts src/__tests__/integration/opencode-real-bootstrap.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","link-preview-js":"^5.0.0","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.19.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.20.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.45.1","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^7.5.0","qrcode":"^1.5.4","undici":"^8.0.2","baileys":"^7.0.0-rc14","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@types/qrcode":"^1.5.6","@clack/prompts":"^1.2.0","@openai/agents":"^0.18.0","@playwright/mcp":"0.0.81","link-preview-js":"^5.0.0","qrcode-terminal":"^0.12.0","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.154.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.277","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^5.0.0","prettier":"^3.8.1","@swc/core":"^1.16.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^5.0.0","@types/qrcode-terminal":"^0.12.2","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_5.2.0_1789760852381_0.31725991975652534","host":"s3://npm-registry-packages-npm-production"}},"5.2.1":{"name":"talon-agent","version":"5.2.1","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@5.2.1","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"89b4abaab18807448c3696be03eb70f825d5965f","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-5.2.1.tgz","fileCount":698,"integrity":"sha512-LIfBoXZEkj6ydyKaQ3oW0ZcKzesn8dzlH2nMvzITcrWEcs5VDUlzn3VWI1gTcf8/jKCVkWqzeXsYwInXRXhjmQ==","signatures":[{"sig":"MEQCIDGpAgUmyJoztMi4t184PhVsR6ZSzFEWm17b5E13DLytAiB1V/QgSZ9V8QnnfxXqjgt/otCl6oI6ity2rZ8EWjYp6w==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQDbQs3KIg93bnGk9ddKkJnxurL10Fn7j5bRvt+4iVjR3wIhAKPnrQBN7NVWbtSTjjHoLkQAEgeqovN54w3Z+8LJt/Io","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@5.2.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3872994},"main":"./src/index.ts","type":"module","engines":{"node":">=24.15"},"exports":{".":"./src/index.ts"},"gitHead":"e1668390aad6a7c18d196f8ddef9a5d423726b51","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"bun src/cli.ts","dev":"bun --watch src/index.ts","knip":"knip","lint":"oxlint --max-warnings 0 src/","test":"vitest run","tree":"node scripts/check-tree.mjs","setup":"bun src/cli.ts setup","start":"bun src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","cli:node":"tsx src/cli.ts","dev:node":"tsx --watch src/index.ts","ratchets":"node scripts/check-ratchets.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"node scripts/check-architecture.mjs","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","start:node":"tsx src/index.ts","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","function-size":"node scripts/check-function-size.mjs","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts src/__tests__/integration/kilo-real-bootstrap.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts src/__tests__/integration/opencode-real-bootstrap.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","link-preview-js":"^5.0.0","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.19.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.20.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.45.1","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^7.5.0","qrcode":"^1.5.4","undici":"^8.0.2","baileys":"^7.0.0-rc14","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@types/qrcode":"^1.5.6","@clack/prompts":"^1.2.0","@openai/agents":"^0.18.0","@playwright/mcp":"0.0.81","link-preview-js":"^5.0.0","qrcode-terminal":"^0.12.0","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.154.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.277","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^5.0.0","prettier":"^3.8.1","@swc/core":"^1.16.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^5.0.0","@types/qrcode-terminal":"^0.12.2","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_5.2.1_1789761884948_0.04244758333525489","host":"s3://npm-registry-packages-npm-production"}},"5.2.2":{"name":"talon-agent","version":"5.2.2","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@5.2.2","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"8bb3168451b1e88698f327a2d54c7ae58342bc80","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-5.2.2.tgz","fileCount":700,"integrity":"sha512-MrJAZQQosS1xQVcu0trFJznt6HIV35NMb9MmifESCLs0GHCglllVzfyZEOXflc4W8OxoSpOY0jd/wlpbuPaZlQ==","signatures":[{"sig":"MEUCIQCu+jJDuBAGn+GXKokv5Sr/ho8I7MtINWSJhXimhtz/dwIgWwx6UATNy50mgg1DyWt8SmmQCUXMRMMcSJMi5ZVG+0M=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIBpHArjVsKMnxVEubzAn1Pc0N6mcALe7SPRoj0OQufF/AiAjpsCTh1iKiuDGdEZ+s9CkE7u+9hBn8XSQBzx10Dv8pA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@5.2.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3897183},"main":"./src/index.ts","type":"module","engines":{"node":">=24.15"},"exports":{".":"./src/index.ts"},"gitHead":"97633fd5977f2eab3fa9771985f6d79bf2814114","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"bun src/cli.ts","dev":"bun --watch src/index.ts","knip":"knip","lint":"oxlint --max-warnings 0 src/","test":"vitest run","tree":"node scripts/check-tree.mjs","setup":"bun src/cli.ts setup","start":"bun src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","cli:node":"tsx src/cli.ts","dev:node":"tsx --watch src/index.ts","ratchets":"node scripts/check-ratchets.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"node scripts/check-architecture.mjs","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","start:node":"tsx src/index.ts","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","function-size":"node scripts/check-function-size.mjs","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts src/__tests__/integration/kilo-real-bootstrap.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts src/__tests__/integration/opencode-real-bootstrap.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","link-preview-js":"^5.0.0","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.19.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.20.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.45.1","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^7.5.0","qrcode":"^1.5.4","undici":"^8.0.2","baileys":"^7.0.0-rc14","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@types/qrcode":"^1.5.6","@clack/prompts":"^1.2.0","@openai/agents":"^0.18.0","@playwright/mcp":"0.0.56","link-preview-js":"^5.0.0","qrcode-terminal":"^0.12.0","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.154.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.277","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^5.0.0","prettier":"^3.8.1","@swc/core":"^1.16.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^5.0.0","@types/qrcode-terminal":"^0.12.2","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_5.2.2_1789781754704_0.5015074313131545","host":"s3://npm-registry-packages-npm-production"}},"5.3.0":{"name":"talon-agent","version":"5.3.0","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@5.3.0","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"c9c4b5fbb4e5623ba70e7c6dbcb41869d4eaa0ae","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-5.3.0.tgz","fileCount":722,"integrity":"sha512-wpxjEEmJ6r0NOhgEl82gMbusELWoZuzqeIGziRBpaUZmcnLzVo/BlJ+wbP0qOWqm5fg0cGAjFWqhstfR5yuGGw==","signatures":[{"sig":"MEQCIBDvscb6Rj2hLwvVD+3+Le4/TQiTp0rZMpVBnlx6ENqNAiA8P5xdq6/WSXANBjf3291WF2MK3WsIVUHlxA12mzPDfg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQC/5uFfNST6UrRzbtdPBGFMTA4YIiZcV4mQyba2C0DXQgIgF9Tox4pIeo3p9qYqhNLy1rgmSGCecDFaooqjLBiJ3FE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@5.3.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":4061421},"main":"./src/index.ts","type":"module","engines":{"node":">=24.15"},"exports":{".":"./src/index.ts"},"gitHead":"fee3a2531fc9866a7d0813a97fe461562c596699","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"bun src/cli.ts","dev":"bun --watch src/index.ts","knip":"knip","lint":"oxlint --max-warnings 0 src/","test":"vitest run","tree":"node scripts/check-tree.mjs","setup":"bun src/cli.ts setup","start":"bun src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","cli:node":"tsx src/cli.ts","dev:node":"tsx --watch src/index.ts","ratchets":"node scripts/check-ratchets.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"node scripts/check-architecture.mjs","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","start:node":"tsx src/index.ts","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","function-size":"node scripts/check-function-size.mjs","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts src/__tests__/integration/kilo-real-bootstrap.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts src/__tests__/integration/opencode-real-bootstrap.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","link-preview-js":"^5.0.0","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.19.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.20.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.45.1","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^7.5.0","qrcode":"^1.5.4","undici":"^8.0.2","baileys":"^7.0.0-rc14","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@types/qrcode":"^1.5.6","@clack/prompts":"^1.2.0","@openai/agents":"^0.18.0","@playwright/mcp":"0.0.56","link-preview-js":"^5.0.0","qrcode-terminal":"^0.12.0","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.154.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.277","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^5.0.0","prettier":"^3.8.1","@swc/core":"^1.16.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^5.0.0","@types/qrcode-terminal":"^0.12.2","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_5.3.0_1789841287464_0.49126723220074786","host":"s3://npm-registry-packages-npm-production"}},"5.4.0":{"name":"talon-agent","version":"5.4.0","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@5.4.0","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"32eceff46aa0dc6f92dc468be52d94dc58cabff6","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-5.4.0.tgz","fileCount":739,"integrity":"sha512-+HyNlNLqu4jfftc5V1jNmi2P55nrDdHXkSAJ4hQ0kw781ElLK5pklJdrRw++uToZyVC2ALZUERYF94xt6hn38g==","signatures":[{"sig":"MEUCIBH2S3Ng8ZC7WRLgR1c8xAe3yLDrPHLRerZOHJQRbljUAiEA5qr5+8M8FRpZAoyacAchea0OeiGJM/QhxlWhMmvnTqc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIFNjMcv6rTrpC1K60hfe4ty+4Yi5Em/8igNNUEopwZr1AiBmMzudEETABjg1DxqyoLGPXR5b1i3KM8ZESn/IOVnRmg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@5.4.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":4173324},"main":"./src/index.ts","type":"module","engines":{"node":">=24.15"},"exports":{".":"./src/index.ts"},"gitHead":"319713b85b24f3d2b367b683e339074eed8da204","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"bun src/cli.ts","dev":"bun --watch src/index.ts","knip":"knip","lint":"oxlint --max-warnings 0 src/","test":"vitest run","tree":"node scripts/check-tree.mjs","setup":"bun src/cli.ts setup","start":"bun src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","cli:node":"tsx src/cli.ts","dev:node":"tsx --watch src/index.ts","ratchets":"node scripts/check-ratchets.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"node scripts/check-architecture.mjs","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","start:node":"tsx src/index.ts","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","function-size":"node scripts/check-function-size.mjs","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts src/__tests__/integration/kilo-real-bootstrap.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts src/__tests__/integration/opencode-real-bootstrap.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","link-preview-js":"^5.0.0","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.19.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.20.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.45.1","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^7.5.0","qrcode":"^1.5.4","undici":"^8.0.2","baileys":"^7.0.0-rc14","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@types/qrcode":"^1.5.6","@clack/prompts":"^1.2.0","@openai/agents":"^0.18.0","@playwright/mcp":"0.0.56","link-preview-js":"^5.0.0","qrcode-terminal":"^0.12.0","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.154.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.277","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^5.0.0","prettier":"^3.8.1","@swc/core":"^1.16.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^5.0.0","@types/qrcode-terminal":"^0.12.2","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_5.4.0_1789993624657_0.46015383099210494","host":"s3://npm-registry-packages-npm-production"}},"5.4.1":{"name":"talon-agent","version":"5.4.1","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@5.4.1","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"84603854dce79476d6c270ecbb41766e42ddb179","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-5.4.1.tgz","fileCount":740,"integrity":"sha512-alKYJ0VA9kK1HjEOBOtVURPLV9yg6w0CCNXct1FXiAmpd8GMHe29A98n8KUIqwWNIVXXjyFArFtk0vwiiguIXQ==","signatures":[{"sig":"MEUCIBkl8KN2uondA5GCWEmSQvk9L3GlzP0aDbZRhxTzNVz9AiEAvmJgXCLU4KDyYKj6NE01kKP7gs8Z7wHcV1nM9xiCweE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQCYaOlsaBvF4UYpZ36L1Eld47UUi5LoNVeWfW5uzDTdiQIhANoRucIbal1pHRQqzmvumA/4HBqkvrT2d4KatMC45X+s","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@5.4.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":4179211},"main":"./src/index.ts","type":"module","engines":{"node":">=24.15"},"exports":{".":"./src/index.ts"},"gitHead":"6c89e4a95f6f3c064f5332135303b8a62136faf6","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"bun src/cli.ts","dev":"bun --watch src/index.ts","knip":"knip","lint":"oxlint --max-warnings 0 src/","test":"vitest run","tree":"node scripts/check-tree.mjs","setup":"bun src/cli.ts setup","start":"bun src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","cli:node":"tsx src/cli.ts","dev:node":"tsx --watch src/index.ts","ratchets":"node scripts/check-ratchets.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"node scripts/check-architecture.mjs","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","start:node":"tsx src/index.ts","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","function-size":"node scripts/check-function-size.mjs","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts src/__tests__/integration/kilo-real-bootstrap.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts src/__tests__/integration/opencode-real-bootstrap.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","link-preview-js":"^5.0.0","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.19.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.20.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.45.1","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^7.5.0","qrcode":"^1.5.4","undici":"^8.0.2","baileys":"^7.0.0-rc14","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@types/qrcode":"^1.5.6","@clack/prompts":"^1.2.0","@openai/agents":"^0.18.0","@playwright/mcp":"0.0.56","link-preview-js":"^5.0.0","qrcode-terminal":"^0.12.0","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.154.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.277","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^5.0.0","prettier":"^3.8.1","@swc/core":"^1.16.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^5.0.0","@types/qrcode-terminal":"^0.12.2","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_5.4.1_1790004734185_0.4509576997746958","host":"s3://npm-registry-packages-npm-production"}},"5.5.0":{"name":"talon-agent","version":"5.5.0","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@5.5.0","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"bd1382579c5ee4714a593cec988a1c5d2b98af1d","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-5.5.0.tgz","fileCount":745,"integrity":"sha512-E3zREsST2tvYiIPJFKP5i1sh6bPEcrodfwlb5eaa5Bj/PGjsUHdR1mg1etgfKLW1F+4SjBsKQq2HPe7k0LuBNA==","signatures":[{"sig":"MEUCIQD905hiu/MtWEL++2us1PiMQxXOjonHnIQ7TJ73aVClfwIgJ/lUaOfAlAY6Gj1+HgTneCsz2TC/fsxtVxrDqyBhtNY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIE7FLi48MnpIZTiD1djYRRTVVQBaFHGkaVuFStYp8KsRAiEA2VFoU3J+qs8DuOEyPOHf7Nhw98iLgNglZ7uLNuAeEEc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@5.5.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":4229054},"main":"./src/index.ts","type":"module","engines":{"node":">=24.15"},"exports":{".":"./src/index.ts"},"gitHead":"a40598ce02823279dc3764b8a234f4352475a13d","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"bun src/cli.ts","dev":"bun --watch src/index.ts","knip":"knip","lint":"oxlint --max-warnings 0 src/","test":"vitest run","tree":"node scripts/check-tree.mjs","setup":"bun src/cli.ts setup","start":"bun src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","cli:node":"tsx src/cli.ts","dev:node":"tsx --watch src/index.ts","ratchets":"node scripts/check-ratchets.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"node scripts/check-architecture.mjs","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","start:node":"tsx src/index.ts","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","function-size":"node scripts/check-function-size.mjs","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts src/__tests__/integration/kilo-real-bootstrap.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts src/__tests__/integration/opencode-real-bootstrap.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","link-preview-js":"^5.0.0","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.19.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.20.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.45.1","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^7.5.0","qrcode":"^1.5.4","undici":"^8.0.2","baileys":"^7.0.0-rc14","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@types/qrcode":"^1.5.6","@clack/prompts":"^1.2.0","@openai/agents":"^0.18.0","@playwright/mcp":"0.0.56","link-preview-js":"^5.0.0","qrcode-terminal":"^0.12.0","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.154.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.277","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^5.0.0","prettier":"^3.8.1","@swc/core":"^1.16.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^5.0.0","@types/qrcode-terminal":"^0.12.2","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_5.5.0_1790016744958_0.9139068112793867","host":"s3://npm-registry-packages-npm-production"}},"5.5.1":{"name":"talon-agent","version":"5.5.1","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@5.5.1","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"9f018adf0bd7c59bab552ecdf3392ef61ae2f2c3","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-5.5.1.tgz","fileCount":745,"integrity":"sha512-k1NhFTJNIQQSsV1xYxjny4wGjn1/mJDcxkhKS8uoTx3VizO5/1HXgTNa2yG/gY1XxVNd3snw519PhiRrfpKMiw==","signatures":[{"sig":"MEUCIQC9Ic1cDk+rGHj1UHG3J+2N/k699Ajhq+OR1jtPFqYL1gIgGS+qRP7SpiTGtNEDgoKiV8q/K7+Hio5ero1cSWyEndQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIFKInaJzjBpqstF6tKDvanzQVwlgi44SQ41uNWjRJsjhAiBFyXR40Fo0bbH3LXKZfaNT/2VGIzmPN3jQGzRzr8y2DQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@5.5.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":4230851},"main":"./src/index.ts","type":"module","engines":{"node":">=24.15"},"exports":{".":"./src/index.ts"},"gitHead":"972ed504e3d1dba61e7e5164f2d12f36f50aebe2","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"bun src/cli.ts","dev":"bun --watch src/index.ts","knip":"knip","lint":"oxlint --max-warnings 0 src/","test":"vitest run","tree":"node scripts/check-tree.mjs","setup":"bun src/cli.ts setup","start":"bun src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","cli:node":"tsx src/cli.ts","dev:node":"tsx --watch src/index.ts","ratchets":"node scripts/check-ratchets.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"node scripts/check-architecture.mjs","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","start:node":"tsx src/index.ts","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","function-size":"node scripts/check-function-size.mjs","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts src/__tests__/integration/kilo-real-bootstrap.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts src/__tests__/integration/opencode-real-bootstrap.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","link-preview-js":"^5.0.0","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.19.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.20.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.45.1","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^7.5.0","qrcode":"^1.5.4","undici":"^8.0.2","baileys":"^7.0.0-rc14","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@types/qrcode":"^1.5.6","@clack/prompts":"^1.2.0","@openai/agents":"^0.18.0","@playwright/mcp":"0.0.56","link-preview-js":"^5.0.0","qrcode-terminal":"^0.12.0","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.155.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.277","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^5.0.0","prettier":"^3.8.1","@swc/core":"^1.16.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^5.0.0","@types/qrcode-terminal":"^0.12.2","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_5.5.1_1790113441932_0.16074439361610415","host":"s3://npm-registry-packages-npm-production"}},"5.6.0":{"name":"talon-agent","version":"5.6.0","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@5.6.0","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"06ecff230db19f74611c32dfba03ca0efa7e37c1","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-5.6.0.tgz","fileCount":746,"integrity":"sha512-Owk9Y2h4wK3lcLxmMLZUjVHGEkeSrqdsEC1zz98TEJwBiKGP9TwqNDawppQHDFZYxtyGW+kgSDXzl9kdsoYPlg==","signatures":[{"sig":"MEUCIGWHjc/wNNFoExpw2+IDVaepzGRFgAMjYkjHVJY1fyhOAiEAzd0Ss+/nP2CHzwIrDcBwfKvKKPNEWND2TQC0LGxEdEM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIBgbDEABwLJL/Kfq50LN5zq1zM/G4KNMVHqqcvcaCSjJAiEAvDrU9ywDhgGRmMPEOdhSZxsE0sm+yHTHpFN8iw5xkTk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@5.6.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":4239030},"main":"./src/index.ts","type":"module","engines":{"node":">=24.15"},"exports":{".":"./src/index.ts"},"gitHead":"a29ba05a8efc1e2a2cdaf1e61dcdf31fd606cf55","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"bun src/cli.ts","dev":"bun --watch src/index.ts","knip":"knip","lint":"oxlint --max-warnings 0 src/","test":"vitest run","tree":"node scripts/check-tree.mjs","setup":"bun src/cli.ts setup","start":"bun src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","cli:node":"tsx src/cli.ts","dev:node":"tsx --watch src/index.ts","ratchets":"node scripts/check-ratchets.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"node scripts/check-architecture.mjs","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","start:node":"tsx src/index.ts","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","function-size":"node scripts/check-function-size.mjs","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts src/__tests__/integration/kilo-real-bootstrap.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts src/__tests__/integration/opencode-real-bootstrap.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","link-preview-js":"^5.0.0","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.19.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.21.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.45.1","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^7.5.0","qrcode":"^1.5.4","undici":"^8.0.2","baileys":"^7.0.0-rc14","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@types/qrcode":"^1.5.6","@clack/prompts":"^1.2.0","@openai/agents":"^0.18.0","@playwright/mcp":"0.0.56","link-preview-js":"^5.0.0","qrcode-terminal":"^0.12.0","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.155.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.277","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^5.0.0","prettier":"^3.8.1","@swc/core":"^1.16.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^5.0.0","@types/qrcode-terminal":"^0.12.2","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_5.6.0_1790122914031_0.33801875803723425","host":"s3://npm-registry-packages-npm-production"}},"5.7.0":{"name":"talon-agent","version":"5.7.0","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@5.7.0","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"ede492c916bad7fe0b8c8b7a9d6538cc69f83c58","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-5.7.0.tgz","fileCount":746,"integrity":"sha512-CwfwaUsLQa3WR6B/kKchcV9Flm05jZBdndgKR7MBASXYJQVUIBInDvqFn8MkvX4QTeq0Q7VW8pw4RqzoQjTWXg==","signatures":[{"sig":"MEUCIBGCUxOGgOcXfRqcBNy7hHePYkr5DpzDQS9hHE8tjnCfAiEAs+oFD99aAZrIAZH9T/a0orre2Cwx5yG+tcP1SgMiviI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQDPgmsofE7qJaTyhqPxFFtMvThOJvmz7/f3U+ijLTkLgAIgExdhy8ItfNotSUMxQJxNKSjsugU7AF/5+7Z8uc1HucY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@5.7.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":4240970},"main":"./src/index.ts","type":"module","engines":{"node":">=24.15"},"exports":{".":"./src/index.ts"},"gitHead":"29f782a6b773224bec3d4dfc099c6eb16911e691","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"bun src/cli.ts","dev":"bun --watch src/index.ts","knip":"knip","lint":"oxlint --max-warnings 0 src/","test":"vitest run","tree":"node scripts/check-tree.mjs","setup":"bun src/cli.ts setup","start":"bun src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","cli:node":"tsx src/cli.ts","dev:node":"tsx --watch src/index.ts","ratchets":"node scripts/check-ratchets.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"node scripts/check-architecture.mjs","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","start:node":"tsx src/index.ts","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","function-size":"node scripts/check-function-size.mjs","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts src/__tests__/integration/kilo-real-bootstrap.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts src/__tests__/integration/opencode-real-bootstrap.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","link-preview-js":"^5.0.0","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.19.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.21.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.45.1","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^7.5.0","qrcode":"^1.5.4","undici":"^8.0.2","baileys":"^7.0.0-rc14","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@types/qrcode":"^1.5.6","@clack/prompts":"^1.2.0","@openai/agents":"^0.18.0","@playwright/mcp":"0.0.56","link-preview-js":"^5.0.0","qrcode-terminal":"^0.12.0","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.155.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.277","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^5.0.0","prettier":"^3.8.1","@swc/core":"^1.16.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^5.0.0","@types/qrcode-terminal":"^0.12.2","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_5.7.0_1790153201895_0.03705414381827876","host":"s3://npm-registry-packages-npm-production"}},"5.8.0":{"name":"talon-agent","version":"5.8.0","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@5.8.0","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"d1940aed4f34ba2901f94f550f975a8253bf270f","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-5.8.0.tgz","fileCount":746,"integrity":"sha512-U4Kqe+Ma1AMepI9tghDiDoEjm/Cj1KfWiEytJrlbCQim0n0biR5f5uXCPbCOUmeQdlokjL/iolvEyee1dMDCBw==","signatures":[{"sig":"MEYCIQDl9fGjVXhGAYUC1C4DKczr8mQ+u7Q956bFbwDDlJYrogIhAPYWi5Sgph+xWNW7GxXvpp5emCVhUvOf6bUCoXZkt/v9","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQCt4JzN720waBgHDJHemEGkV3UCZNQ8qkA9GEWbODzR8AIhAKqoDLMhxKhkkC+oya5n5z8/QWSu+dhnfYlgDo4+zlnk","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@5.8.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":4241288},"main":"./src/index.ts","type":"module","engines":{"node":">=24.15"},"exports":{".":"./src/index.ts"},"gitHead":"345ea32fda721fb1b27af2e9f201e167fbb2cdc1","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"bun src/cli.ts","dev":"bun --watch src/index.ts","knip":"knip","lint":"oxlint --max-warnings 0 src/","test":"vitest run","tree":"node scripts/check-tree.mjs","setup":"bun src/cli.ts setup","start":"bun src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","cli:node":"tsx src/cli.ts","dev:node":"tsx --watch src/index.ts","ratchets":"node scripts/check-ratchets.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"node scripts/check-architecture.mjs","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","start:node":"tsx src/index.ts","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","function-size":"node scripts/check-function-size.mjs","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts src/__tests__/integration/kilo-real-bootstrap.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts src/__tests__/integration/opencode-real-bootstrap.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","link-preview-js":"^5.0.0","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.19.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.20.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.45.1","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^7.5.0","qrcode":"^1.5.4","undici":"^8.0.2","baileys":"^7.0.0-rc14","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@types/qrcode":"^1.5.6","@clack/prompts":"^1.2.0","@openai/agents":"^0.18.0","@playwright/mcp":"0.0.56","link-preview-js":"^5.0.0","qrcode-terminal":"^0.12.0","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.155.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.277","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^5.0.0","prettier":"^3.8.1","@swc/core":"^1.16.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^5.0.0","@types/qrcode-terminal":"^0.12.2","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_5.8.0_1790166068117_0.3290815599273067","host":"s3://npm-registry-packages-npm-production"}},"5.9.0":{"name":"talon-agent","version":"5.9.0","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@5.9.0","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"04dc1f7bd9f2187c51230396f853b43b3e7d14f8","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-5.9.0.tgz","fileCount":746,"integrity":"sha512-Xw55/dOt2ExoW7112oQMdyd6qkRStG/ZWL1Pni/G4XBoOaZoZqu2T9JidQVjfmXDvHDjVcql+onC2vy1Mg6QpA==","signatures":[{"sig":"MEQCIHE6Gz3bK8Ue/x0xrjQkmSCJaIs7oA+WeKyqkdWsgIS2AiB6HNhxQs/Js5q0Oyi2IRVvqb+W6toonQzPHtaVchhScg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQC2+Y+jEjAOfW6zmj9zIXbn9UszOgTH6pUXIgBbsuJouwIgBBYlh0avNe45yndAx1cikj3q1ayn/9G1ib+7yAg9zP8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@5.9.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":4241313},"main":"./src/index.ts","type":"module","engines":{"node":">=24.15"},"exports":{".":"./src/index.ts"},"gitHead":"bc3e736ddd5cfb967e3c1e5ba974b08b05b145f3","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"bun src/cli.ts","dev":"bun --watch src/index.ts","knip":"knip","lint":"oxlint --max-warnings 0 src/","test":"vitest run","tree":"node scripts/check-tree.mjs","setup":"bun src/cli.ts setup","start":"bun src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","cli:node":"tsx src/cli.ts","dev:node":"tsx --watch src/index.ts","ratchets":"node scripts/check-ratchets.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"node scripts/check-architecture.mjs","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","start:node":"tsx src/index.ts","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","function-size":"node scripts/check-function-size.mjs","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts src/__tests__/integration/kilo-real-bootstrap.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts src/__tests__/integration/opencode-real-bootstrap.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","link-preview-js":"^5.0.0","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.19.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.21.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.45.1","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^7.5.0","qrcode":"^1.5.4","undici":"^8.0.2","baileys":"^7.0.0-rc14","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@types/qrcode":"^1.5.6","@clack/prompts":"^1.2.0","@openai/agents":"^0.18.0","@playwright/mcp":"0.0.56","link-preview-js":"^5.0.0","qrcode-terminal":"^0.12.0","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.155.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.277","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^5.0.0","prettier":"^3.8.1","@swc/core":"^1.16.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^5.0.0","@types/qrcode-terminal":"^0.12.2","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_5.9.0_1790175852166_0.4637109382879381","host":"s3://npm-registry-packages-npm-production"}},"5.10.0":{"name":"talon-agent","version":"5.10.0","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@5.10.0","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"65921a1bafc29812b31d1da63e0e7fa277cb1411","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-5.10.0.tgz","fileCount":747,"integrity":"sha512-Fb848wthSQ1AdQRmVB/BlJxU4AFt5CuVZa7wF2Uz1xkvt+aRllxNX24nUVqrNCdBs2i7+9WhvgTZnyY8kZzqPw==","signatures":[{"sig":"MEQCIDZw6fssD5Dj1HmswxN4DmuR4b6W7v1eYJ2MjWyromaiAiBSlHE3lb8kEfkhWcLdTuIk7/qBAnuOITPAMVHWGUPJug==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQCjoD7ygeyJrstW4alUWWPTgZoXlyfRFLZnV/rsEYR5TQIhALDyHTPM6gtEdcFuYX85bARCtJaoOVCJK8IT+3Uq/Q7k","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@5.10.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":4250145},"main":"./src/index.ts","type":"module","engines":{"node":">=24.15"},"exports":{".":"./src/index.ts"},"gitHead":"45dc10dd004c0be24e1f166485eeda3182ad056e","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"bun src/cli.ts","dev":"bun --watch src/index.ts","knip":"knip","lint":"oxlint --max-warnings 0 src/","test":"vitest run","tree":"node scripts/check-tree.mjs","setup":"bun src/cli.ts setup","start":"bun src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","cli:node":"tsx src/cli.ts","dev:node":"tsx --watch src/index.ts","ratchets":"node scripts/check-ratchets.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"node scripts/check-architecture.mjs","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","start:node":"tsx src/index.ts","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","function-size":"node scripts/check-function-size.mjs","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts src/__tests__/integration/kilo-real-bootstrap.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts src/__tests__/integration/opencode-real-bootstrap.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","link-preview-js":"^5.0.0","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.19.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.21.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.45.1","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^7.5.0","qrcode":"^1.5.4","undici":"^8.0.2","baileys":"^7.0.0-rc14","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@types/qrcode":"^1.5.6","@clack/prompts":"^1.2.0","@openai/agents":"^0.18.0","@playwright/mcp":"0.0.56","link-preview-js":"^5.0.0","qrcode-terminal":"^0.12.0","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.155.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.277","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^5.0.0","prettier":"^3.8.1","@swc/core":"^1.16.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^5.0.0","@types/qrcode-terminal":"^0.12.2","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_5.10.0_1790182505130_0.018748599947722155","host":"s3://npm-registry-packages-npm-production"}},"5.11.0":{"name":"talon-agent","version":"5.11.0","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@5.11.0","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"41b7d9cf1f5c67436b53f1b017e7113b2ba9a112","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-5.11.0.tgz","fileCount":748,"integrity":"sha512-52gZ3a6MnWxizzcq+iIwSLw5OHbmcT8bQDD8jqjp3778W3Pfrbl3Cwg/+zpzxlRT5e4SpnrCPZE4YxOJdTC5mQ==","signatures":[{"sig":"MEUCIGDpSf5mkmBk4PeoF8IhEDqEJSUYeCdjg//jtYyO6uUiAiEAkLYuIQy5YrZY8qbbQRGTjEDisv6zkxakxFxGI3oZGN8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIEDtdNywNeXR0eCmYrkSzrs35Iuc+2MTH/QSvgeG0Ok5AiBjZe/3WsRVipgaeRWbIzNIK964CWRGRIAMmxNSF+qq+Q==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@5.11.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":4265640},"main":"./src/index.ts","type":"module","engines":{"node":">=24.15"},"exports":{".":"./src/index.ts"},"gitHead":"edd44c9ee331e56b0c738758ab0cf115d7190b89","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"bun src/cli.ts","dev":"bun --watch src/index.ts","knip":"knip","lint":"oxlint --max-warnings 0 src/","test":"vitest run","tree":"node scripts/check-tree.mjs","setup":"bun src/cli.ts setup","start":"bun src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","cli:node":"tsx src/cli.ts","dev:node":"tsx --watch src/index.ts","ratchets":"node scripts/check-ratchets.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"node scripts/check-architecture.mjs","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","start:node":"tsx src/index.ts","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","function-size":"node scripts/check-function-size.mjs","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts src/__tests__/integration/kilo-real-bootstrap.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts src/__tests__/integration/opencode-real-bootstrap.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","link-preview-js":"^5.0.0","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.19.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.21.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.45.1","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^7.5.0","qrcode":"^1.5.4","undici":"^8.0.2","baileys":"^7.0.0-rc14","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@types/qrcode":"^1.5.6","@clack/prompts":"^1.2.0","@openai/agents":"^0.18.0","@playwright/mcp":"0.0.56","link-preview-js":"^5.0.0","qrcode-terminal":"^0.12.0","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.155.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.277","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^5.0.0","prettier":"^3.8.1","@swc/core":"^1.16.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^5.0.0","@types/qrcode-terminal":"^0.12.2","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_5.11.0_1790211299611_0.06216023457200537","host":"s3://npm-registry-packages-npm-production"}},"5.12.0":{"name":"talon-agent","version":"5.12.0","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@5.12.0","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"f5fe7091ff44f4e91a94dfef2b7d194dfcedff78","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-5.12.0.tgz","fileCount":750,"integrity":"sha512-iCwBMrTxHXs15wrI55yfNKTpEMn2Ah0Vv4TonIc1mga0kAR6XepqOX6aBf0nRA5kUAyOyOqmSPjXx2HeftdcYQ==","signatures":[{"sig":"MEYCIQCXv1l/r+NiOMsXXrBWh5JqHtljIRtBkj4UsmL1wHGEKgIhANG9eo2osFNGdHqfjon/5W+3zz+QmnYLRXqvNJ5bQ9Yf","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQCizkfulE6Pg21a0dIlzZ+uGXuYcnRKdiZPIHvmFVN+8QIgELMauM7gg3F7fsBWEpnW11BX9N7aQlOqPzjacJfK4Xs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@5.12.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":4296234},"main":"./src/index.ts","type":"module","engines":{"node":">=24.15"},"exports":{".":"./src/index.ts"},"gitHead":"e9ec00c8706be6572aae8bd0027887eb24ec9e6c","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"bun src/cli.ts","dev":"bun --watch src/index.ts","knip":"knip","lint":"oxlint --max-warnings 0 src/","test":"vitest run","tree":"node scripts/check-tree.mjs","setup":"bun src/cli.ts setup","start":"bun src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","cli:node":"tsx src/cli.ts","dev:node":"tsx --watch src/index.ts","ratchets":"node scripts/check-ratchets.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"node scripts/check-architecture.mjs","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","start:node":"tsx src/index.ts","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","function-size":"node scripts/check-function-size.mjs","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts src/__tests__/integration/kilo-real-bootstrap.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts src/__tests__/integration/opencode-real-bootstrap.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","link-preview-js":"^5.0.0","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.19.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.21.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.45.1","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^7.5.0","qrcode":"^1.5.4","undici":"^8.0.2","baileys":"^7.0.0-rc14","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@types/qrcode":"^1.5.6","@clack/prompts":"^1.2.0","@openai/agents":"^0.18.0","@playwright/mcp":"0.0.56","link-preview-js":"^5.0.0","qrcode-terminal":"^0.12.0","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.155.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.277","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^5.0.0","prettier":"^3.8.1","@swc/core":"^1.16.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^5.0.0","@types/qrcode-terminal":"^0.12.2","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_5.12.0_1790215747229_0.5812460191890525","host":"s3://npm-registry-packages-npm-production"}},"5.13.0":{"name":"talon-agent","version":"5.13.0","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@5.13.0","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"dee4d642a1c8c1b1989822cf3efe2f9f469c7ade","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-5.13.0.tgz","fileCount":750,"integrity":"sha512-UoGnckFEzNgDLZnHBw35eEsUjJabMbx2u+6lRl4Ui/6yg8XbpXMR8RiZjjIwGE1w40OztAdC8C9oThJNUiQySw==","signatures":[{"sig":"MEUCIQCsT3A4jZ1rWddOxmcpzso5Z2uE5NDuvzs2hqHRlFlyFQIgQQ4kiF6/EGeQU2dCNrv6kNYIijvkCfXV11oBFxGEW7g=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIDAuGdx6jPWf10Tt+GxSJgpdb6iWSRXwIJKBTZHAg8TVAiAH5e4ryYKswuCCd0eOhDPi0E/XXITrQEzA5LkT6i7NUw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@5.13.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":4296234},"main":"./src/index.ts","type":"module","engines":{"node":">=24.15"},"exports":{".":"./src/index.ts"},"gitHead":"12cca23292e2635b1c04aee0c62ed9ac6eff58b5","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"bun src/cli.ts","dev":"bun --watch src/index.ts","knip":"knip","lint":"oxlint --max-warnings 0 src/","test":"vitest run","tree":"node scripts/check-tree.mjs","setup":"bun src/cli.ts setup","start":"bun src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","cli:node":"tsx src/cli.ts","dev:node":"tsx --watch src/index.ts","ratchets":"node scripts/check-ratchets.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"node scripts/check-architecture.mjs","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","start:node":"tsx src/index.ts","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","function-size":"node scripts/check-function-size.mjs","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts src/__tests__/integration/kilo-real-bootstrap.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts src/__tests__/integration/opencode-real-bootstrap.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","link-preview-js":"^5.0.0","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.19.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.20.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.45.1","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^7.5.0","qrcode":"^1.5.4","undici":"^8.0.2","baileys":"^7.0.0-rc14","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@types/qrcode":"^1.5.6","@clack/prompts":"^1.2.0","@openai/agents":"^0.18.0","@playwright/mcp":"0.0.56","link-preview-js":"^5.0.0","qrcode-terminal":"^0.12.0","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.155.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.277","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^5.0.0","prettier":"^3.8.1","@swc/core":"^1.16.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^5.0.0","@types/qrcode-terminal":"^0.12.2","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_5.13.0_1790245691101_0.05592806412441398","host":"s3://npm-registry-packages-npm-production"}},"5.14.0":{"name":"talon-agent","version":"5.14.0","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"Dylan Neve"},"license":"MIT","_id":"talon-agent@5.14.0","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/dylanneve1/talon#readme","bugs":{"url":"https://github.com/dylanneve1/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"8ab46bc3b647ccd9fee7140f10545dece051cc06","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-5.14.0.tgz","fileCount":750,"integrity":"sha512-xp6MiVW+Sy/n9QK32amldGP2PD6q6Kk+XouP+wr5/i7cQqwlysYBCoDPTuyWBk0UpDYVF5lqyTE5CQmug6G5uA==","signatures":[{"sig":"MEUCIENNYrkKdkze5Tsg7AaehMTrF5rVHK4+7/wzqJevD7saAiEAiWQ0/e7Tj9Ql1iAY+feDZTxqvV2yacG6W5fgQ4D2TYo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIH2zkwnXzB3sIU4wBgq5zTkw2nlzlgeNHrak8y1TSbizAiARO7nJSIUL8c0YjoNfVyycQs4Yj3RuHb3hMZ1UMnZ4MA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@5.14.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":4297483},"main":"./src/index.ts","type":"module","engines":{"node":">=24.15"},"exports":{".":"./src/index.ts"},"gitHead":"a53ebc9665fc9992f66ae9438f827891b2478e72","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"bun src/cli.ts","dev":"bun --watch src/index.ts","knip":"knip","lint":"oxlint --max-warnings 0 src/","test":"vitest run","tree":"node scripts/check-tree.mjs","setup":"bun src/cli.ts setup","start":"bun src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","cli:node":"tsx src/cli.ts","dev:node":"tsx --watch src/index.ts","ratchets":"node scripts/check-ratchets.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"node scripts/check-architecture.mjs","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","start:node":"tsx src/index.ts","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","function-size":"node scripts/check-function-size.mjs","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts src/__tests__/integration/kilo-real-bootstrap.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts src/__tests__/integration/opencode-real-bootstrap.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","link-preview-js":"^5.0.0","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/dylanneve1/talon.git","type":"git"},"_npmVersion":"11.19.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.20.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.45.1","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^7.5.0","qrcode":"^1.5.4","undici":"^8.0.2","baileys":"^7.0.0-rc14","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@types/qrcode":"^1.5.6","@clack/prompts":"^1.2.0","@openai/agents":"^0.18.0","@playwright/mcp":"0.0.56","link-preview-js":"^5.0.0","qrcode-terminal":"^0.12.0","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.155.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.277","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^5.0.0","prettier":"^3.8.1","@swc/core":"^1.16.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^5.0.0","@types/qrcode-terminal":"^0.12.2","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_5.14.0_1790248331676_0.3736190283247165","host":"s3://npm-registry-packages-npm-production"}},"5.18.1":{"name":"talon-agent","version":"5.18.1","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"The Falconry"},"license":"MIT","_id":"talon-agent@5.18.1","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/thefalconry/talon#readme","bugs":{"url":"https://github.com/thefalconry/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"8ea0d7e65d48a7ac0e1ed60f25db353e47ce7ae9","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-5.18.1.tgz","fileCount":772,"integrity":"sha512-WhXQfHPzQQNXJkNWZpxhMXlbltgPFmd1NhfT0XEv/4wPqrIjy3TNtT3BhFyVulKSb+K6JoAHZapuUXyYf1ywIw==","signatures":[{"sig":"MEUCIE2Bw/RQFN2XhG0ba6WpVwyEhWQack0RDHzc9JP54ZLxAiEA+/XeZpuCCnljZi5vypMqwMoen8GvQUhQ14781vyrlBs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQCHfdEFkC7dn5zmyCennLl+Dtvvk7SWIbuINCUdfZCZDQIgdqQ06iazbmIjbKiUUz1E5U+pIdU5zFizVqCs6U23QKQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@5.18.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":4500991},"main":"./src/index.ts","type":"module","engines":{"node":">=24.15"},"exports":{".":"./src/index.ts"},"gitHead":"b990f59ceff85fc04a6ba11e759c61eff3b7f81f","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"bun src/cli.ts","dev":"bun --watch src/index.ts","knip":"knip","lint":"oxlint --max-warnings 0 src/","test":"vitest run","tree":"node scripts/check-tree.mjs","setup":"bun src/cli.ts setup","start":"bun src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","cli:node":"tsx src/cli.ts","dev:node":"tsx --watch src/index.ts","ratchets":"node scripts/check-ratchets.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"node scripts/check-architecture.mjs","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","start:node":"tsx src/index.ts","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","function-size":"node scripts/check-function-size.mjs","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts src/__tests__/integration/kilo-real-bootstrap.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts src/__tests__/integration/opencode-real-bootstrap.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","link-preview-js":"^5.0.0","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/thefalconry/talon.git","type":"git"},"_npmVersion":"11.19.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.21.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.45.1","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^7.5.0","qrcode":"^1.5.4","undici":"^8.0.2","baileys":"^7.0.0-rc14","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@types/qrcode":"^1.5.6","@clack/prompts":"^1.2.0","@openai/agents":"^0.18.0","@playwright/mcp":"0.0.56","link-preview-js":"^5.0.0","qrcode-terminal":"^0.12.0","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.155.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.277","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^5.0.0","prettier":"^3.8.1","@swc/core":"^1.16.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^5.0.0","@types/qrcode-terminal":"^0.12.2","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_5.18.1_1790286671004_0.6399404173830787","host":"s3://npm-registry-packages-npm-production"}},"5.18.2":{"name":"talon-agent","version":"5.18.2","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"The Falconry"},"license":"Apache-2.0","_id":"talon-agent@5.18.2","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/thefalconry/talon#readme","bugs":{"url":"https://github.com/thefalconry/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"7f19f764f77b43a326eb373aaccb6b0e93dfb442","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-5.18.2.tgz","fileCount":775,"integrity":"sha512-SNj3oO38lsmBUp/j+SwMHzqdmV+iJ5zuw/jZJlgjzLMuZ9qiHFEiWkRpv3wbkxUR3nY7TwfPciADByCr1yGJOA==","signatures":[{"sig":"MEUCIQC35fQPSsvPap9Agk+RWF7Y5gYq8n84eUqwqx29owMUiwIgE+0DP4IDfqrB/gQztg5zeE1H0uVmCr65y4PYMaJCDe0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQC27u8hSvCWX9E035lNdtG+5od1ZKGHvr76aitPuYozwwIhAM3RFq1OFQvAozgYql7u9YYWlPFNYuhUCgWddL6dJRd1","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@5.18.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":4517233},"main":"./src/index.ts","type":"module","engines":{"node":">=24.15"},"exports":{".":"./src/index.ts"},"gitHead":"fde6d2e15273ba801e2b513967b677d856ef0518","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"bun src/cli.ts","dev":"bun --watch src/index.ts","knip":"knip","lint":"oxlint --max-warnings 0 src/","test":"vitest run","tree":"node scripts/check-tree.mjs","setup":"bun src/cli.ts setup","start":"bun src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","cli:node":"tsx src/cli.ts","dev:node":"tsx --watch src/index.ts","ratchets":"node scripts/check-ratchets.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"node scripts/check-architecture.mjs","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","start:node":"tsx src/index.ts","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","function-size":"node scripts/check-function-size.mjs","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts src/__tests__/integration/kilo-real-bootstrap.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts src/__tests__/integration/opencode-real-bootstrap.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","link-preview-js":"^5.0.0","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/thefalconry/talon.git","type":"git"},"_npmVersion":"11.19.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.21.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.45.1","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^7.5.0","qrcode":"^1.5.4","undici":"^8.0.2","baileys":"^7.0.0-rc14","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@types/qrcode":"^1.5.6","@clack/prompts":"^1.2.0","@openai/agents":"^0.18.0","@playwright/mcp":"0.0.56","link-preview-js":"^5.0.0","qrcode-terminal":"^0.12.0","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.155.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.277","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^5.0.0","prettier":"^3.8.1","@swc/core":"^1.16.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^5.0.0","@types/qrcode-terminal":"^0.12.2","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_5.18.2_1790342605304_0.06081961435411598","host":"s3://npm-registry-packages-npm-production"}},"5.19.0":{"name":"talon-agent","version":"5.19.0","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"The Falconry"},"license":"Apache-2.0","_id":"talon-agent@5.19.0","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/thefalconry/talon#readme","bugs":{"url":"https://github.com/thefalconry/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"e94d249f7b2d6df9f7bef6159b51c7d6f89c65e4","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-5.19.0.tgz","fileCount":788,"integrity":"sha512-lZoQlSmbufwLIo4G2YBsou2o1F0up4EM8xZbN9nG/yVObT2RcrY4C51sodHdf5sa4GawLoXfnxlwsi2/qlI95g==","signatures":[{"sig":"MEYCIQCdCSPTCs3TqMHP/iD1It5f76C/fp3xQdzaq1O6kPgY4QIhAMKv2gMqY5oNpcf9dSKdwEhieiPfwGvqy52BwmDYpNvt","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQCkZ+ZIM0y6rE9PvB4IWJJl+lMkvSCugb82C6OrnbjsFgIhALPG6mgPXYVhVZOytOx+GTPoz/mBo+vCiL0M2OqpGy+s","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@5.19.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":4650219},"main":"./src/index.ts","type":"module","engines":{"node":">=24.15"},"exports":{".":"./src/index.ts"},"gitHead":"e36328857fa210ed2e13dd20f1f455c61b9ff054","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"bun src/cli.ts","dev":"bun --watch src/index.ts","knip":"knip","lint":"oxlint --max-warnings 0 src/","test":"vitest run","tree":"node scripts/check-tree.mjs","setup":"bun src/cli.ts setup","start":"bun src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","cli:node":"tsx src/cli.ts","dev:node":"tsx --watch src/index.ts","ratchets":"node scripts/check-ratchets.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"node scripts/check-architecture.mjs","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","start:node":"tsx src/index.ts","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","function-size":"node scripts/check-function-size.mjs","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts src/__tests__/integration/kilo-real-bootstrap.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts src/__tests__/integration/opencode-real-bootstrap.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","link-preview-js":"^5.0.0","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/thefalconry/talon.git","type":"git"},"_npmVersion":"11.19.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.21.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.45.1","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^7.5.0","qrcode":"^1.5.4","undici":"^8.0.2","baileys":"^7.0.0-rc14","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@types/qrcode":"^1.5.6","@clack/prompts":"^1.2.0","@openai/agents":"^0.18.0","@playwright/mcp":"0.0.56","link-preview-js":"^5.0.0","qrcode-terminal":"^0.12.0","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.155.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.277","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^5.0.0","prettier":"^3.8.1","@swc/core":"^1.16.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^5.0.0","@types/qrcode-terminal":"^0.12.2","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_5.19.0_1790349513139_0.5763116239902486","host":"s3://npm-registry-packages-npm-production"}},"5.19.1":{"name":"talon-agent","version":"5.19.1","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"The Falconry"},"license":"Apache-2.0","_id":"talon-agent@5.19.1","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/thefalconry/talon#readme","bugs":{"url":"https://github.com/thefalconry/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"728a867d2de71cd591784725e64ec10d81d4af81","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-5.19.1.tgz","fileCount":788,"integrity":"sha512-WE+sTHpBJGjZ+xZtLIO25Tnsy8ZxCiK3ystVOOHDewyiZ8sbxIhoXCy5VNbfK/pYtNGOZFhJMahbHi5nut7kww==","signatures":[{"sig":"MEYCIQCIM2WFjzzLC08zSaLHWRRvKON4WPsuHnPsQZWhn6V29QIhAKusgi01t5ga2YJovv8okgI0NiC2UrKjHhWLEAbSu2OI","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIFUk0G7RMncMqaYVdF1M6M1s4aTxMiSPLnF6l1u2KC6nAiEAl26memYH70kpCtBBeUoTssWjcOxjyjvrhhMjKdYXZm8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@5.19.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":4652457},"main":"./src/index.ts","type":"module","engines":{"node":">=24.15"},"exports":{".":"./src/index.ts"},"gitHead":"babe2aaeef0da92143d662208fe87c0211c58bc7","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"bun src/cli.ts","dev":"bun --watch src/index.ts","knip":"knip","lint":"oxlint --max-warnings 0 src/","test":"vitest run","tree":"node scripts/check-tree.mjs","setup":"bun src/cli.ts setup","start":"bun src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","cli:node":"tsx src/cli.ts","dev:node":"tsx --watch src/index.ts","ratchets":"node scripts/check-ratchets.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"node scripts/check-architecture.mjs","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","start:node":"tsx src/index.ts","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","function-size":"node scripts/check-function-size.mjs","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts src/__tests__/integration/kilo-real-bootstrap.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts src/__tests__/integration/opencode-real-bootstrap.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","link-preview-js":"^5.0.0","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/thefalconry/talon.git","type":"git"},"_npmVersion":"11.19.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.21.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.45.1","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^7.5.0","qrcode":"^1.5.4","undici":"^8.0.2","baileys":"^7.0.0-rc14","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@types/qrcode":"^1.5.6","@clack/prompts":"^1.2.0","@openai/agents":"^0.18.0","@playwright/mcp":"0.0.56","link-preview-js":"^5.0.0","qrcode-terminal":"^0.12.0","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.155.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.283","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^5.0.0","prettier":"^3.8.1","@swc/core":"^1.16.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^5.0.0","@types/qrcode-terminal":"^0.12.2","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_5.19.1_1790522013221_0.7537970681278159","host":"s3://npm-registry-packages-npm-production"}},"5.20.0":{"name":"talon-agent","version":"5.20.0","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"The Falconry"},"license":"Apache-2.0","_id":"talon-agent@5.20.0","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/thefalconry/talon#readme","bugs":{"url":"https://github.com/thefalconry/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"0c0dccf89a590498caca20a4662efc1c9b064d6a","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-5.20.0.tgz","fileCount":788,"integrity":"sha512-BVPNoHrvFtedlrGsA6HfBR+Knn93Z8mTadYeHtNaGQCkaQLcy1tcipcMuNVE8Phz/JwCnzbqI3278z3VStzHWQ==","signatures":[{"sig":"MEQCIDEp0fDfCoivysliXVI3HLbFUtFTZMqc/gBNef+t7Vj/AiBXMQJew/RabYs6vkw4/ZSm+g5ZCn+nQPam7bbObjDeMA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIEXZe4WwaPfn++of2MW5yV09a+enkVP0eEVI/tnLjIoCAiBn1A0fG/gFrPRhN6BL0kFNYhyfa6HIj73gEbaEnP25pQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@5.20.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":4652457},"main":"./src/index.ts","type":"module","engines":{"node":">=24.15"},"exports":{".":"./src/index.ts"},"gitHead":"f2997bed24196375e61a46fd0e2709b5f56ecde7","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"bun src/cli.ts","dev":"bun --watch src/index.ts","knip":"knip","lint":"oxlint --max-warnings 0 src/","test":"vitest run","tree":"node scripts/check-tree.mjs","setup":"bun src/cli.ts setup","start":"bun src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","cli:node":"tsx src/cli.ts","dev:node":"tsx --watch src/index.ts","ratchets":"node scripts/check-ratchets.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"node scripts/check-architecture.mjs","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","start:node":"tsx src/index.ts","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","function-size":"node scripts/check-function-size.mjs","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts src/__tests__/integration/kilo-real-bootstrap.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts src/__tests__/integration/opencode-real-bootstrap.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","link-preview-js":"^5.0.0","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/thefalconry/talon.git","type":"git"},"_npmVersion":"11.19.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.21.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.45.1","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^7.5.0","qrcode":"^1.5.4","undici":"^8.0.2","baileys":"^7.0.0-rc14","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@types/qrcode":"^1.5.6","@clack/prompts":"^1.2.0","@openai/agents":"^0.18.0","@playwright/mcp":"0.0.56","link-preview-js":"^5.0.0","qrcode-terminal":"^0.12.0","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.155.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.283","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^5.0.0","prettier":"^3.8.1","@swc/core":"^1.16.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^5.0.0","@types/qrcode-terminal":"^0.12.2","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_5.20.0_1790609809962_0.44762663657756296","host":"s3://npm-registry-packages-npm-production"}},"5.20.1":{"name":"talon-agent","version":"5.20.1","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"The Falconry"},"license":"Apache-2.0","_id":"talon-agent@5.20.1","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/thefalconry/talon#readme","bugs":{"url":"https://github.com/thefalconry/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"e468aa1657e05b3ff002b6eebd160a4b0284ca11","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-5.20.1.tgz","fileCount":788,"integrity":"sha512-B1ijntUYxaJ2AkfjMcspeKsX8u8IRb0xSFTQFC7j68SYPSOlaV3JA1v6wFrXIyBB8A7IBf+cXP8zwYQtHi5ctA==","signatures":[{"sig":"MEYCIQDTZvQoHZadN6lccdQsXKp3qTlm244IYA2PIQFrufUQ2QIhAMySBOko2OeM9zcxhV14QN+smgLU6BsOmuAoPc8D1sdY","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQD6GGnav3ht6rMrjM/d9mCUYefrwanJ237/ZWpHeOvv7QIhAKvbvz6ZJ7y1vbnIFPnAaNhNzdlisWp29cO5oopgNUXL","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@5.20.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":4652931},"main":"./src/index.ts","type":"module","engines":{"node":">=24.15"},"exports":{".":"./src/index.ts"},"gitHead":"2af0f045c8c67e033d602cc15a423f0175b98ee8","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"bun src/cli.ts","dev":"bun --watch src/index.ts","knip":"knip","lint":"oxlint --max-warnings 0 src/","test":"vitest run","tree":"node scripts/check-tree.mjs","setup":"bun src/cli.ts setup","start":"bun src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","cli:node":"tsx src/cli.ts","dev:node":"tsx --watch src/index.ts","ratchets":"node scripts/check-ratchets.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"node scripts/check-architecture.mjs","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","start:node":"tsx src/index.ts","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","function-size":"node scripts/check-function-size.mjs","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts src/__tests__/integration/kilo-real-bootstrap.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts src/__tests__/integration/opencode-real-bootstrap.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","link-preview-js":"^5.0.0","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/thefalconry/talon.git","type":"git"},"_npmVersion":"11.19.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.21.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.45.1","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^7.5.0","qrcode":"^1.5.4","undici":"^8.0.2","baileys":"^7.0.0-rc14","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@types/qrcode":"^1.5.6","@clack/prompts":"^1.2.0","@openai/agents":"^0.18.0","@playwright/mcp":"0.0.56","link-preview-js":"^5.0.0","qrcode-terminal":"^0.12.0","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.155.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.283","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^5.0.0","prettier":"^3.8.1","@swc/core":"^1.16.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^5.0.0","@types/qrcode-terminal":"^0.12.2","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_5.20.1_1790615905282_0.7502197764045304","host":"s3://npm-registry-packages-npm-production"}},"5.21.0":{"name":"talon-agent","version":"5.21.0","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"The Falconry"},"license":"Apache-2.0","_id":"talon-agent@5.21.0","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/thefalconry/talon#readme","bugs":{"url":"https://github.com/thefalconry/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"772955f0986a0af5ce72c561bec428e2345d7e11","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-5.21.0.tgz","fileCount":790,"integrity":"sha512-1hlk0q8VWjVLo+lrf+hs6LnoxOadrH558HYa7S5aMLVC8i+HB1ilq7rcpb6SDrNUNCdnd18Vw9gXIEg15Ere4A==","signatures":[{"sig":"MEUCIAnZSIb2HDWdzRZH9ALD6LotF5I4GBIwSOhkX8JJvV7uAiEApLljGr38Lc+ku/YJN4ebhSrU2CYAdpZH67v1VerweiU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIFAFbptIRdCofX6E2lzt11dq3khb5oGQw3EjiyVtaV+JAiEAqH63Qf1GFgFXbwj9BBh+EMkLtcpFSJdsMKj8EExtbTk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@5.21.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":4684290},"main":"./src/index.ts","type":"module","engines":{"node":">=24.15"},"exports":{".":"./src/index.ts"},"gitHead":"1d4f091e50240387a025a2052da2e1218dd73ee4","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"bun src/cli.ts","dev":"bun --watch src/index.ts","knip":"knip","lint":"oxlint --max-warnings 0 src/","test":"vitest run","tree":"node scripts/check-tree.mjs","setup":"bun src/cli.ts setup","start":"bun src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","cli:node":"tsx src/cli.ts","dev:node":"tsx --watch src/index.ts","ratchets":"node scripts/check-ratchets.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"node scripts/check-architecture.mjs","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","start:node":"tsx src/index.ts","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","function-size":"node scripts/check-function-size.mjs","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts src/__tests__/integration/kilo-real-bootstrap.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts src/__tests__/integration/opencode-real-bootstrap.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","link-preview-js":"^5.0.0","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/thefalconry/talon.git","type":"git"},"_npmVersion":"11.19.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.21.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.45.1","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^7.5.0","qrcode":"^1.5.4","undici":"^8.0.2","baileys":"^7.0.0-rc14","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@types/qrcode":"^1.5.6","@clack/prompts":"^1.2.0","@openai/agents":"^0.18.0","@playwright/mcp":"0.0.56","link-preview-js":"^5.0.0","qrcode-terminal":"^0.12.0","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.155.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.283","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^5.0.0","prettier":"^3.8.1","@swc/core":"^1.16.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^5.0.0","@types/qrcode-terminal":"^0.12.2","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_5.21.0_1790677574873_0.658471049063486","host":"s3://npm-registry-packages-npm-production"}},"5.22.0":{"name":"talon-agent","version":"5.22.0","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"The Falconry"},"license":"Apache-2.0","_id":"talon-agent@5.22.0","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/thefalconry/talon#readme","bugs":{"url":"https://github.com/thefalconry/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"97eb6ff0f815d456cd06254d1eb87319efa72ab0","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-5.22.0.tgz","fileCount":790,"integrity":"sha512-5yjmobR0zViluGwtx/B0o8xEF3VJIDghaxUgUUFWJyHZ83r0ytgtNpiMW7xiNVY1ZA0lGTJmgzPR6Pg3azeKUQ==","signatures":[{"sig":"MEYCIQDQeGiUOeWsIYqpFro86q/vMX6fE83YYN1veCsmKvfEPgIhAOCxquaqptGAdIagXv572QiaAAu5CKoezz4/S4nAYZyj","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQC/ubQ35OW0cPQlPA0JYRPCCfCTXmG5IDnxJ8Dyu0xnKQIhAIFBAYI8F70rZQRVaSUWMRsKcgJ1nDOlhXJgIUwcNOr2","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@5.22.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":4691947},"main":"./src/index.ts","type":"module","engines":{"node":">=24.15"},"exports":{".":"./src/index.ts"},"gitHead":"38de11bc2c2e13d06e48e7a54eb63d763b0ee426","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"bun src/cli.ts","dev":"bun --watch src/index.ts","knip":"knip","lint":"oxlint --max-warnings 0 src/","test":"vitest run","tree":"node scripts/check-tree.mjs","setup":"bun src/cli.ts setup","start":"bun src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","cli:node":"tsx src/cli.ts","dev:node":"tsx --watch src/index.ts","ratchets":"node scripts/check-ratchets.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"node scripts/check-architecture.mjs","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","start:node":"tsx src/index.ts","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","function-size":"node scripts/check-function-size.mjs","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts src/__tests__/integration/kilo-real-bootstrap.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts src/__tests__/integration/opencode-real-bootstrap.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","link-preview-js":"^5.0.0","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/thefalconry/talon.git","type":"git"},"_npmVersion":"11.19.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.21.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.45.1","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^7.5.0","qrcode":"^1.5.4","undici":"^8.0.2","baileys":"^7.0.0-rc14","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@types/qrcode":"^1.5.6","@clack/prompts":"^1.2.0","@openai/agents":"^0.18.0","@playwright/mcp":"0.0.56","link-preview-js":"^5.0.0","qrcode-terminal":"^0.12.0","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.155.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.284","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^5.0.0","prettier":"^3.8.1","@swc/core":"^1.16.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^5.0.0","@types/qrcode-terminal":"^0.12.2","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_5.22.0_1790679041446_0.3451203648023151","host":"s3://npm-registry-packages-npm-production"}},"5.23.0":{"name":"talon-agent","version":"5.23.0","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"The Falconry"},"license":"Apache-2.0","_id":"talon-agent@5.23.0","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/thefalconry/talon#readme","bugs":{"url":"https://github.com/thefalconry/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"ee65d23114142f6a0a466a486d5bc30d511282d9","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-5.23.0.tgz","fileCount":790,"integrity":"sha512-yuqEJkfPraAKPz6oSuw+WfuXQT3lPTgZLf7GczS7XWVMHP8yyvSH06zDdc3ABC82jYOZgTZ+7OzVJHuTHVkcSQ==","signatures":[{"sig":"MEUCIQCm0TSCazIaMX1sN8zBF3xDaxiyhhPyhPgppqMEs7uq7AIgY2JxbSc3s/x1vQ5F1VnKR91ObWSUSx4MN4IwQsEr1TQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQDoqkng3/5ElZVtH+PzKuZbtAftTuF/tb15ri/sltQ1YAIgF2bgde6ZJ3MqQsKQ9GwPZK3Dtwg1HJLnZeke806AoK8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@5.23.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":4692867},"main":"./src/index.ts","type":"module","engines":{"node":">=24.15"},"exports":{".":"./src/index.ts"},"gitHead":"a02e2df48841e47cfbdf6eea4a88b340b55016bd","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"bun src/cli.ts","dev":"bun --watch src/index.ts","knip":"knip","lint":"oxlint --max-warnings 0 src/","test":"vitest run","tree":"node scripts/check-tree.mjs","setup":"bun src/cli.ts setup","start":"bun src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","cli:node":"tsx src/cli.ts","dev:node":"tsx --watch src/index.ts","ratchets":"node scripts/check-ratchets.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"node scripts/check-architecture.mjs","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","start:node":"tsx src/index.ts","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","function-size":"node scripts/check-function-size.mjs","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts src/__tests__/integration/kilo-real-bootstrap.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts src/__tests__/integration/opencode-real-bootstrap.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","link-preview-js":"^5.0.0","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/thefalconry/talon.git","type":"git"},"_npmVersion":"11.19.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.21.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.45.1","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^7.5.0","qrcode":"^1.5.4","undici":"^8.0.2","baileys":"^7.0.0-rc14","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@types/qrcode":"^1.5.6","@clack/prompts":"^1.2.0","@openai/agents":"^0.18.0","@playwright/mcp":"0.0.56","link-preview-js":"^5.0.0","qrcode-terminal":"^0.12.0","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.155.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.284","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^5.0.0","prettier":"^3.8.1","@swc/core":"^1.16.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^5.0.0","@types/qrcode-terminal":"^0.12.2","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_5.23.0_1790757732762_0.8151650963631971","host":"s3://npm-registry-packages-npm-production"}},"5.23.1":{"name":"talon-agent","version":"5.23.1","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"The Falconry"},"license":"Apache-2.0","_id":"talon-agent@5.23.1","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/thefalconry/talon#readme","bugs":{"url":"https://github.com/thefalconry/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"ea2701830cde10133aeffbaa559671bd1b5ef8a9","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-5.23.1.tgz","fileCount":790,"integrity":"sha512-I4IAkS502tEXaXx4bcbhP7UYAvkqPPxmnho7SVzmzhsF+nLD7XnzZpR0j0LNjhe7jY3jbvMDs1+a2j9letZPqw==","signatures":[{"sig":"MEQCIDDhxk+HbvTxjT+H3iCph/9Pv8clMjL5Z7hLa9BhH7J1AiA6UGDnEZlUjfml8rrBV9jZiHPqoWrY7T1lr6PtLdZyug==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQCf3Hba3gRU2NVVZdTrEQJQ365EnXwv+MIglvlpwtoAqgIgBgky0Rh8Pv/yezqA9EmdCXKy/UoGvmBVNTpSpUhqLTY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@5.23.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":4692867},"main":"./src/index.ts","type":"module","engines":{"node":">=24.15"},"exports":{".":"./src/index.ts"},"gitHead":"f08eb6d3823109a7da07af45942932e41e39a4c3","imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"bun src/cli.ts","dev":"bun --watch src/index.ts","knip":"knip","lint":"oxlint --max-warnings 0 src/","test":"vitest run","tree":"node scripts/check-tree.mjs","setup":"bun src/cli.ts setup","start":"bun src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","cli:node":"tsx src/cli.ts","dev:node":"tsx --watch src/index.ts","ratchets":"node scripts/check-ratchets.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"node scripts/check-architecture.mjs","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","start:node":"tsx src/index.ts","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","function-size":"node scripts/check-function-size.mjs","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts src/__tests__/integration/kilo-real-bootstrap.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts src/__tests__/integration/opencode-real-bootstrap.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","link-preview-js":"^5.0.0","@anthropic-ai/sdk":"^0.104.1"},"repository":{"url":"git+https://github.com/thefalconry/talon.git","type":"git"},"_npmVersion":"11.19.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.21.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.45.1","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^7.5.0","qrcode":"^1.5.4","undici":"^8.0.2","baileys":"^7.0.0-rc14","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@types/qrcode":"^1.5.6","@clack/prompts":"^1.2.0","@openai/agents":"^0.18.0","@playwright/mcp":"0.0.56","link-preview-js":"^5.0.0","qrcode-terminal":"^0.12.0","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.155.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.284","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^5.0.0","prettier":"^3.8.1","@swc/core":"^1.16.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^5.0.0","@types/qrcode-terminal":"^0.12.2","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_5.23.1_1790766289082_0.7004680268179495","host":"s3://npm-registry-packages-npm-production"}},"5.24.0":{"name":"talon-agent","version":"5.24.0","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"The Falconry"},"license":"Apache-2.0","_id":"talon-agent@5.24.0","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/thefalconry/talon#readme","bugs":{"url":"https://github.com/thefalconry/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"cba804f2f6949176898d7b0a40b312bd3caec097","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-5.24.0.tgz","fileCount":790,"integrity":"sha512-hMta2pEX3jvHiKt0sJpoOMLqrkJB3q8j7gF4s2rKMgcM0vekdUj0+PgARp47ojeqeSnNEsUtgKAMvpJ5pQMRTA==","signatures":[{"sig":"MEYCIQC18xH0y7zBtfz/oMVDEH6XygAaQvXKCrmIKHtgFyUFQQIhAOfja7I84ibLAOzK169DTymsyYZyX/3ym8dFt4Pl+s4t","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQDFONDRycNlQ6vIYICWzgi1q7DCWPog4AZPWK3D2uKbrAIhAIUsNOmYxphlc/vI6nBSBuZxoO8F+PXjSz2f5qKLcgAR","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@5.24.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":4704333},"main":"./src/index.ts","type":"module","_from":"file:dist/talon-agent-5.24.0.tgz","engines":{"node":">=24.15"},"exports":{".":"./src/index.ts"},"imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"bun src/cli.ts","dev":"bun --watch src/index.ts","knip":"knip","lint":"oxlint --max-warnings 0 src/","test":"vitest run","tree":"node scripts/check-tree.mjs","setup":"bun src/cli.ts setup","start":"bun src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","cli:node":"tsx src/cli.ts","dev:node":"tsx --watch src/index.ts","ratchets":"node scripts/check-ratchets.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"node scripts/check-architecture.mjs","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","start:node":"tsx src/index.ts","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","function-size":"node scripts/check-function-size.mjs","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts src/__tests__/integration/kilo-real-bootstrap.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts src/__tests__/integration/opencode-real-bootstrap.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"_resolved":"/home/runner/work/talon/talon/dist/talon-agent-5.24.0.tgz","overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","link-preview-js":"^5.0.0","@anthropic-ai/sdk":"^0.104.1"},"_integrity":"sha512-hMta2pEX3jvHiKt0sJpoOMLqrkJB3q8j7gF4s2rKMgcM0vekdUj0+PgARp47ojeqeSnNEsUtgKAMvpJ5pQMRTA==","repository":{"url":"git+https://github.com/thefalconry/talon.git","type":"git"},"_npmVersion":"11.19.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.21.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.45.1","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^7.5.0","qrcode":"^1.5.4","undici":"^8.0.2","baileys":"^7.0.0-rc14","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@types/qrcode":"^1.5.6","@clack/prompts":"^1.2.0","@openai/agents":"^0.18.0","@playwright/mcp":"0.0.56","link-preview-js":"^5.0.0","qrcode-terminal":"^0.12.0","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.155.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.284","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^5.0.0","prettier":"^3.8.1","@swc/core":"^1.16.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^5.0.0","@types/qrcode-terminal":"^0.12.2","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_5.24.0_1790768256465_0.7654250768591753","host":"s3://npm-registry-packages-npm-production"}},"5.24.1":{"name":"talon-agent","version":"5.24.1","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"The Falconry"},"license":"Apache-2.0","_id":"talon-agent@5.24.1","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/thefalconry/talon#readme","bugs":{"url":"https://github.com/thefalconry/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"8826d39ee8afbe6aa2406451d2898af3131400c6","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-5.24.1.tgz","fileCount":799,"integrity":"sha512-Qq3UKjoooZdikGqPFC2CSoN+7qxEU6J2yv/n5vbH6KaHlEQnmoTqsDbUlVxjK3TY86E+8HQjjPyWjfMiPsdXUQ==","signatures":[{"sig":"MEUCIHYCHgfDDzour64vMf5KBUX6ARnbod8arBfNhca6qXQFAiEA5EHvpTsL9tDR4nNL//Aqs7obEDFDgAuN0EzxLv/KrKo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQCH6rxuOlpf2xotKJsFPUF0/ZelrdOwXaMjfZ4yaWMXUQIhANtljvuXNVk4AUGLuIk6UFUMlvWWUb1hIPRdxLed00eP","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@5.24.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":4819895},"main":"./src/index.ts","type":"module","_from":"file:dist/talon-agent-5.24.1.tgz","engines":{"node":">=24.15"},"exports":{".":"./src/index.ts"},"imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"bun src/cli.ts","dev":"bun --watch src/index.ts","knip":"knip","lint":"oxlint --max-warnings 0 src/","test":"vitest run","tree":"node scripts/check-tree.mjs","setup":"bun src/cli.ts setup","start":"bun src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","cli:node":"tsx src/cli.ts","dev:node":"tsx --watch src/index.ts","ratchets":"node scripts/check-ratchets.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"node scripts/check-architecture.mjs","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","start:node":"tsx src/index.ts","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","function-size":"node scripts/check-function-size.mjs","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts src/__tests__/integration/kilo-real-bootstrap.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts src/__tests__/integration/opencode-real-bootstrap.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"_resolved":"/home/runner/work/talon/talon/dist/talon-agent-5.24.1.tgz","overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","link-preview-js":"^5.0.0","@anthropic-ai/sdk":"^0.104.1"},"_integrity":"sha512-Qq3UKjoooZdikGqPFC2CSoN+7qxEU6J2yv/n5vbH6KaHlEQnmoTqsDbUlVxjK3TY86E+8HQjjPyWjfMiPsdXUQ==","repository":{"url":"git+https://github.com/thefalconry/talon.git","type":"git"},"_npmVersion":"11.19.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.21.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.45.1","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^7.5.0","qrcode":"^1.5.4","undici":"^8.0.2","baileys":"^7.0.0-rc14","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@types/qrcode":"^1.5.6","@clack/prompts":"^1.2.0","@openai/agents":"^0.18.0","@playwright/mcp":"0.0.56","link-preview-js":"^5.0.0","qrcode-terminal":"^0.12.0","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.155.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.284","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^5.0.0","prettier":"^3.8.1","@swc/core":"^1.16.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^5.0.0","@types/qrcode-terminal":"^0.12.2","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_5.24.1_1790780816383_0.001396921144201535","host":"s3://npm-registry-packages-npm-production"}},"5.25.0":{"name":"talon-agent","version":"5.25.0","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"The Falconry"},"license":"Apache-2.0","_id":"talon-agent@5.25.0","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/thefalconry/talon#readme","bugs":{"url":"https://github.com/thefalconry/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"ce45f53e4b333dbf7053c01106d6248d0a4e6d25","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-5.25.0.tgz","fileCount":800,"integrity":"sha512-nNlNcufcivmqYKZq0y7Sfn0IVe0YM4tReR4iYFu+TVIABXFkBc5h1cR6v0Zq9AGsCyj/2pIdFYJVUyt9rytxdA==","signatures":[{"sig":"MEYCIQCizNUHx8JHuxIkxPlb/MqQJeMHiMp1mmSi6cOY8p+LKQIhALlhxy1FN7hVt4qwbmqRC2/4weOEm+hPhFUeckcL3u12","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQDT/dLtuSS2uFl2XLC76l3XBfA3fFM5gJeB/3HaD8UcNwIhAL37NWVeTZ4mjS6kbJUon3yjoYSGbcT13CXC/HMJPE98","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@5.25.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":4830584},"main":"./src/index.ts","type":"module","_from":"file:dist/talon-agent-5.25.0.tgz","engines":{"node":">=24.15"},"exports":{".":"./src/index.ts"},"imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"bun src/cli.ts","dev":"bun --watch src/index.ts","knip":"knip","lint":"oxlint --max-warnings 0 src/","test":"vitest run","tree":"node scripts/check-tree.mjs","setup":"bun src/cli.ts setup","start":"bun src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","cli:node":"tsx src/cli.ts","dev:node":"tsx --watch src/index.ts","ratchets":"node scripts/check-ratchets.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"node scripts/check-architecture.mjs","preflight":"bash scripts/preflight.sh","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","start:node":"tsx src/index.ts","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","function-size":"node scripts/check-function-size.mjs","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts src/__tests__/integration/kilo-real-bootstrap.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts src/__tests__/integration/opencode-real-bootstrap.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"_resolved":"/home/runner/work/talon/talon/dist/talon-agent-5.25.0.tgz","overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","link-preview-js":"^5.0.0","@anthropic-ai/sdk":"^0.104.1"},"_integrity":"sha512-nNlNcufcivmqYKZq0y7Sfn0IVe0YM4tReR4iYFu+TVIABXFkBc5h1cR6v0Zq9AGsCyj/2pIdFYJVUyt9rytxdA==","repository":{"url":"git+https://github.com/thefalconry/talon.git","type":"git"},"_npmVersion":"11.19.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.21.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.45.1","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^7.5.0","qrcode":"^1.5.4","undici":"^8.0.2","baileys":"^7.0.0-rc14","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@types/qrcode":"^1.5.6","@clack/prompts":"^1.2.0","@openai/agents":"^0.18.0","@playwright/mcp":"0.0.56","link-preview-js":"^5.0.0","qrcode-terminal":"^0.12.0","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.155.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.284","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^5.0.0","prettier":"^3.8.1","@swc/core":"^1.16.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^5.0.0","@types/qrcode-terminal":"^0.12.2","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_5.25.0_1790782560034_0.8474547650934008","host":"s3://npm-registry-packages-npm-production"}},"5.25.1":{"name":"talon-agent","version":"5.25.1","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"The Falconry"},"license":"Apache-2.0","_id":"talon-agent@5.25.1","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/thefalconry/talon#readme","bugs":{"url":"https://github.com/thefalconry/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"c95690c3cf04187116a265c957f8301c19946815","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-5.25.1.tgz","fileCount":800,"integrity":"sha512-GgRUHEtziFrjvhbZYNCCEyAKspD1vSDwDOqh/jNbUmLwQLmafd1WDIgQp4cos8jE9pkm8/YAkI5EzSQzA53N/Q==","signatures":[{"sig":"MEUCIQCZe9bSfMYGLDyG5cSctLeXXoe4Ug0T2MqoaAX8aTplEQIgFH9acYUyMlyCQ6STb0hTm/VoDs3BVruIE+nVQ8tJ7sA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIFhZQMTUVY1rL2b0s6ZfzhsMxbMj66WOUnM+p5U0pvmJAiEA4E6Da1FDwQgLL5qiqbPWw24JL6wzGPgARxQVKwVOlPg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@5.25.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":4830584},"main":"./src/index.ts","type":"module","_from":"file:dist/talon-agent-5.25.1.tgz","engines":{"node":">=24.15"},"exports":{".":"./src/index.ts"},"imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"bun src/cli.ts","dev":"bun --watch src/index.ts","knip":"knip","lint":"oxlint --max-warnings 0 src/","test":"vitest run","tree":"node scripts/check-tree.mjs","setup":"bun src/cli.ts setup","start":"bun src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","cli:node":"tsx src/cli.ts","dev:node":"tsx --watch src/index.ts","ratchets":"node scripts/check-ratchets.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"node scripts/check-architecture.mjs","preflight":"bash scripts/preflight.sh","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","start:node":"tsx src/index.ts","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","function-size":"node scripts/check-function-size.mjs","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts src/__tests__/integration/kilo-real-bootstrap.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts src/__tests__/integration/opencode-real-bootstrap.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"_resolved":"/home/runner/work/talon/talon/dist/talon-agent-5.25.1.tgz","overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","link-preview-js":"^5.0.0","@anthropic-ai/sdk":"^0.104.1"},"_integrity":"sha512-GgRUHEtziFrjvhbZYNCCEyAKspD1vSDwDOqh/jNbUmLwQLmafd1WDIgQp4cos8jE9pkm8/YAkI5EzSQzA53N/Q==","repository":{"url":"git+https://github.com/thefalconry/talon.git","type":"git"},"_npmVersion":"11.19.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.21.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.45.1","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^7.5.0","qrcode":"^1.5.4","undici":"^8.0.2","baileys":"^7.0.0-rc14","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@types/qrcode":"^1.5.6","@clack/prompts":"^1.2.0","@openai/agents":"^0.18.0","@playwright/mcp":"0.0.56","link-preview-js":"^5.0.0","qrcode-terminal":"^0.12.0","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.155.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.284","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^5.0.0","prettier":"^3.8.1","@swc/core":"^1.16.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^5.0.0","@types/qrcode-terminal":"^0.12.2","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_5.25.1_1790783740503_0.6411061081117209","host":"s3://npm-registry-packages-npm-production"}},"5.26.0":{"name":"talon-agent","version":"5.26.0","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"The Falconry"},"license":"Apache-2.0","_id":"talon-agent@5.26.0","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/thefalconry/talon#readme","bugs":{"url":"https://github.com/thefalconry/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"3f5d4085fa6753818da9f7fcd65fd12f02f22b2d","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-5.26.0.tgz","fileCount":814,"integrity":"sha512-JOPci7KZTP+Lz5jKAZ9/pTx9SP0PSLy8rh5PmE9gOTa9vuo2/d58d9jQY0BXMMafhrRrDjzA713zrdz0STaGyg==","signatures":[{"sig":"MEQCIHX7w6O9lVH0bOjXf0w1JkPhdmGX+GugItsB65WOLN//AiB8WuNrjBs8xCXuGpDLK2FerGNENr3F7nvDQ2f8D91ppQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCICe5BuA9FlHRs/x7tm1WEwEWjz9L3n2pkAoTewUh55g0AiBhx7cAlTVTCtGRVbBcIkZtMwbK29gXDjPH/3Yjgpbatg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@5.26.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":4910592},"main":"./src/index.ts","type":"module","_from":"file:dist/talon-agent-5.26.0.tgz","engines":{"node":">=24.15"},"exports":{".":"./src/index.ts"},"imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"bun src/cli.ts","dev":"bun --watch src/index.ts","knip":"knip","lint":"oxlint --max-warnings 0 src/","test":"vitest run","tree":"node scripts/check-tree.mjs","setup":"bun src/cli.ts setup","start":"bun src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","cli:node":"tsx src/cli.ts","dev:node":"tsx --watch src/index.ts","ratchets":"node scripts/check-ratchets.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"node scripts/check-architecture.mjs","preflight":"bash scripts/preflight.sh","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","start:node":"tsx src/index.ts","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","function-size":"node scripts/check-function-size.mjs","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts src/__tests__/integration/kilo-real-bootstrap.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts src/__tests__/integration/opencode-real-bootstrap.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"_resolved":"/home/runner/work/talon/talon/dist/talon-agent-5.26.0.tgz","overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","link-preview-js":"^5.0.0","@anthropic-ai/sdk":"^0.104.1"},"_integrity":"sha512-JOPci7KZTP+Lz5jKAZ9/pTx9SP0PSLy8rh5PmE9gOTa9vuo2/d58d9jQY0BXMMafhrRrDjzA713zrdz0STaGyg==","repository":{"url":"git+https://github.com/thefalconry/talon.git","type":"git"},"_npmVersion":"11.19.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.21.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.45.1","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^7.5.0","qrcode":"^1.5.4","undici":"^8.0.2","baileys":"^7.0.0-rc14","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@types/qrcode":"^1.5.6","@clack/prompts":"^1.2.0","@openai/agents":"^0.18.0","@playwright/mcp":"0.0.56","link-preview-js":"^5.0.0","qrcode-terminal":"^0.12.0","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.155.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.284","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^5.0.0","prettier":"^3.8.1","@swc/core":"^1.16.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^5.0.0","@types/qrcode-terminal":"^0.12.2","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_5.26.0_1790792148864_0.13562653699172977","host":"s3://npm-registry-packages-npm-production"}},"5.26.1":{"name":"talon-agent","version":"5.26.1","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"The Falconry"},"license":"Apache-2.0","_id":"talon-agent@5.26.1","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/thefalconry/talon#readme","bugs":{"url":"https://github.com/thefalconry/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"18ce8381ec91218ff0a514ee3dcc1c14c03accd0","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-5.26.1.tgz","fileCount":814,"integrity":"sha512-/u0oo0i+LpzLMIySTbX/qN8lZGnPun7PQeqeenNWlf2wqFK82Ipt2drUdpLvp5qWlttf0XHJ7/rz4RAbHJ6tzQ==","signatures":[{"sig":"MEYCIQDVb/rPF5TDcFubtL2T7SEd0JbO1wrKADymFHECl/Hf6QIhAPq3ullA7YI2tGNjSY9Tu7pIA2PPiLW7lg9C4rpUaCk8","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIAywKiW896JqgXb0ZSHeYUM9o2eWrwL0ph8xUtmGlxNFAiEA/aoHJb7QpPC8lWxKAe/5Mr6PlJHUgWvTYvDL4pxvxh4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@5.26.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":4918954},"main":"./src/index.ts","type":"module","_from":"file:dist/talon-agent-5.26.1.tgz","engines":{"node":">=24.15"},"exports":{".":"./src/index.ts"},"imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"bun src/cli.ts","dev":"bun --watch src/index.ts","knip":"knip","lint":"oxlint --max-warnings 0 src/","test":"vitest run","tree":"node scripts/check-tree.mjs","setup":"bun src/cli.ts setup","start":"bun src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","cli:node":"tsx src/cli.ts","dev:node":"tsx --watch src/index.ts","ratchets":"node scripts/check-ratchets.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"node scripts/check-architecture.mjs","preflight":"bash scripts/preflight.sh","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","start:node":"tsx src/index.ts","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","function-size":"node scripts/check-function-size.mjs","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts src/__tests__/integration/kilo-real-bootstrap.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts src/__tests__/integration/opencode-real-bootstrap.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"_resolved":"/home/runner/work/talon/talon/dist/talon-agent-5.26.1.tgz","overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","link-preview-js":"^5.0.0","@anthropic-ai/sdk":"^0.104.1"},"_integrity":"sha512-/u0oo0i+LpzLMIySTbX/qN8lZGnPun7PQeqeenNWlf2wqFK82Ipt2drUdpLvp5qWlttf0XHJ7/rz4RAbHJ6tzQ==","repository":{"url":"git+https://github.com/thefalconry/talon.git","type":"git"},"_npmVersion":"11.19.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.21.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.45.1","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^7.5.0","qrcode":"^1.5.4","undici":"^8.0.2","baileys":"^7.0.0-rc14","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@types/qrcode":"^1.5.6","@clack/prompts":"^1.2.0","@openai/agents":"^0.18.0","@playwright/mcp":"0.0.56","link-preview-js":"^5.0.0","qrcode-terminal":"^0.12.0","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.155.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.284","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^5.0.0","prettier":"^3.8.1","@swc/core":"^1.16.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^5.0.0","@types/qrcode-terminal":"^0.12.2","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_5.26.1_1790793804584_0.12686271144853523","host":"s3://npm-registry-packages-npm-production"}},"5.26.2":{"name":"talon-agent","version":"5.26.2","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"The Falconry"},"license":"Apache-2.0","_id":"talon-agent@5.26.2","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/thefalconry/talon#readme","bugs":{"url":"https://github.com/thefalconry/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"00333a20831e9a0230246132700bc2fdabd19cd9","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-5.26.2.tgz","fileCount":815,"integrity":"sha512-Cv+6kJo7qes5WVxwMGFX3g4FI8kib22MumZ1Go3/wMIryCOKyoWLcPaUAszE9IANrpbwessSYPP7tXoKbsQBmw==","signatures":[{"sig":"MEUCIB+hpGllgvBSe1RxOu8g/e2GkCUXqvqCVzdDxtURNW65AiEAyLJjFdlCgEdZrcW0XXqemuWNg5wyyJ3+SqKkL5o7r00=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIG51RASZpBI7jHr8tb2LQ44ea2OtZJpf4PydwPxlrX6cAiBq/hpHo1m8P99xASbos40UdaT4ZVTtOy7fceCZQjP92g==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@5.26.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":4948130},"main":"./src/index.ts","type":"module","_from":"file:dist/talon-agent-5.26.2.tgz","engines":{"node":">=24.15"},"exports":{".":"./src/index.ts"},"imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"bun src/cli.ts","dev":"bun --watch src/index.ts","knip":"knip","lint":"oxlint --max-warnings 0 src/","test":"vitest run","tree":"node scripts/check-tree.mjs","setup":"bun src/cli.ts setup","start":"bun src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","cli:node":"tsx src/cli.ts","dev:node":"tsx --watch src/index.ts","ratchets":"node scripts/check-ratchets.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"node scripts/check-architecture.mjs","preflight":"bash scripts/preflight.sh","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","start:node":"tsx src/index.ts","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","function-size":"node scripts/check-function-size.mjs","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts src/__tests__/integration/kilo-real-bootstrap.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts src/__tests__/integration/opencode-real-bootstrap.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"_resolved":"/home/runner/work/talon/talon/dist/talon-agent-5.26.2.tgz","overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","link-preview-js":"^5.0.0","@anthropic-ai/sdk":"^0.104.1"},"_integrity":"sha512-Cv+6kJo7qes5WVxwMGFX3g4FI8kib22MumZ1Go3/wMIryCOKyoWLcPaUAszE9IANrpbwessSYPP7tXoKbsQBmw==","repository":{"url":"git+https://github.com/thefalconry/talon.git","type":"git"},"_npmVersion":"11.19.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.21.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.45.1","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^7.5.0","qrcode":"^1.5.4","undici":"^8.0.2","baileys":"^7.0.0-rc14","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@types/qrcode":"^1.5.6","@clack/prompts":"^1.2.0","@openai/agents":"^0.18.0","@playwright/mcp":"0.0.56","link-preview-js":"^5.0.0","qrcode-terminal":"^0.12.0","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.155.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.284","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^5.0.0","prettier":"^3.8.1","@swc/core":"^1.16.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^5.0.0","@types/qrcode-terminal":"^0.12.2","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_5.26.2_1790795182370_0.6775601083832594","host":"s3://npm-registry-packages-npm-production"}},"5.26.3":{"name":"talon-agent","version":"5.26.3","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"The Falconry"},"license":"Apache-2.0","_id":"talon-agent@5.26.3","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/thefalconry/talon#readme","bugs":{"url":"https://github.com/thefalconry/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"1242115f83db7c1e982e8a661b742707255d3f42","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-5.26.3.tgz","fileCount":816,"integrity":"sha512-Af3ejPBXsPRrgD/z/OIi5IMWdriaOAeE414pSARX0QgcEP9zTfQ7prMOzzykWMHCn7rT/XvsSk8VFoQZsf3csw==","signatures":[{"sig":"MEUCIQDwWEnXVubTC4WuCaN1viBpDdw94H4sDXHIJ0HQ4LeJTQIgDbpoosDgHC8U4PLSV0RNhqwMl7p0jlo1X0T6iXisrAk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQCq6MMuYwgCd8QJLAVStyy6G6c0lMwf0g/w5LQmV16yfgIgcjbysT+uwxC66WCR8734abRRJWKgrFj6wQeNVLmFZM4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@5.26.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":4967386},"main":"./src/index.ts","type":"module","_from":"file:dist/talon-agent-5.26.3.tgz","engines":{"node":">=24.15"},"exports":{".":"./src/index.ts"},"imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"bun src/cli.ts","dev":"bun --watch src/index.ts","knip":"knip","lint":"oxlint --max-warnings 0 src/","test":"vitest run","tree":"node scripts/check-tree.mjs","setup":"bun src/cli.ts setup","start":"bun src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","cli:node":"tsx src/cli.ts","dev:node":"tsx --watch src/index.ts","ratchets":"node scripts/check-ratchets.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"node scripts/check-architecture.mjs","preflight":"bash scripts/preflight.sh","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","start:node":"tsx src/index.ts","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","function-size":"node scripts/check-function-size.mjs","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts src/__tests__/integration/kilo-real-bootstrap.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts src/__tests__/integration/opencode-real-bootstrap.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"_resolved":"/home/runner/work/talon/talon/dist/talon-agent-5.26.3.tgz","overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","link-preview-js":"^5.0.0","@anthropic-ai/sdk":"^0.104.1"},"_integrity":"sha512-Af3ejPBXsPRrgD/z/OIi5IMWdriaOAeE414pSARX0QgcEP9zTfQ7prMOzzykWMHCn7rT/XvsSk8VFoQZsf3csw==","repository":{"url":"git+https://github.com/thefalconry/talon.git","type":"git"},"_npmVersion":"11.19.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.21.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.45.1","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^7.5.0","qrcode":"^1.5.4","undici":"^8.0.2","baileys":"^7.0.0-rc14","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@types/qrcode":"^1.5.6","@clack/prompts":"^1.2.0","@openai/agents":"^0.18.0","@playwright/mcp":"0.0.56","link-preview-js":"^5.0.0","qrcode-terminal":"^0.12.0","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.155.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.284","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^5.0.0","prettier":"^3.8.1","@swc/core":"^1.16.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^5.0.0","@types/qrcode-terminal":"^0.12.2","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_5.26.3_1790796377143_0.40304336971735233","host":"s3://npm-registry-packages-npm-production"}},"5.26.4":{"name":"talon-agent","version":"5.26.4","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"The Falconry"},"license":"Apache-2.0","_id":"talon-agent@5.26.4","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/thefalconry/talon#readme","bugs":{"url":"https://github.com/thefalconry/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"bd89d4fef50c1cf838188accfd03581518f5c3fe","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-5.26.4.tgz","fileCount":818,"integrity":"sha512-ntee95aCfflh8gDPlV7PUFSPO5r9+Bdh6K4XcbnHSqofW/Bui72dOz7Ya54DkTkjn31Tjx5y+usdi8B2gXZfsQ==","signatures":[{"sig":"MEYCIQDq3Sng+6j+IvYhjOhc31uwtlyLbK9yE+kU1EQY9L9xsgIhAPETniUBMb0O0eetHvbBx3v4MT4OuWw1eLrB6fXi17NT","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIEHmH4z3qhzOGRZ5TRDqyrYanD1oH2LkzFCTJVlOlNx1AiAAqFSLsOVkLW/peAdMiY8FWk3mntqYiBpHRy0geUFB/A==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@5.26.4","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":4982661},"main":"./src/index.ts","type":"module","_from":"file:dist/talon-agent-5.26.4.tgz","engines":{"node":">=24.15"},"exports":{".":"./src/index.ts"},"imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"bun src/cli.ts","dev":"bun --watch src/index.ts","knip":"knip","lint":"oxlint --max-warnings 0 src/","test":"vitest run","tree":"node scripts/check-tree.mjs","setup":"bun src/cli.ts setup","start":"bun src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","cli:node":"tsx src/cli.ts","dev:node":"tsx --watch src/index.ts","ratchets":"node scripts/check-ratchets.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"node scripts/check-architecture.mjs","preflight":"bash scripts/preflight.sh","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","start:node":"tsx src/index.ts","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","function-size":"node scripts/check-function-size.mjs","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts src/__tests__/integration/kilo-real-bootstrap.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts src/__tests__/integration/opencode-real-bootstrap.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"_resolved":"/home/runner/work/talon/talon/dist/talon-agent-5.26.4.tgz","overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","link-preview-js":"^5.0.0","@anthropic-ai/sdk":"^0.104.1"},"_integrity":"sha512-ntee95aCfflh8gDPlV7PUFSPO5r9+Bdh6K4XcbnHSqofW/Bui72dOz7Ya54DkTkjn31Tjx5y+usdi8B2gXZfsQ==","repository":{"url":"git+https://github.com/thefalconry/talon.git","type":"git"},"_npmVersion":"11.19.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.21.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.45.1","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^7.5.0","qrcode":"^1.5.4","undici":"^8.0.2","baileys":"^7.0.0-rc14","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@types/qrcode":"^1.5.6","@clack/prompts":"^1.2.0","@openai/agents":"^0.18.0","@playwright/mcp":"0.0.56","link-preview-js":"^5.0.0","qrcode-terminal":"^0.12.0","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.155.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.284","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^5.0.0","prettier":"^3.8.1","@swc/core":"^1.16.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^5.0.0","@types/qrcode-terminal":"^0.12.2","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_5.26.4_1790797798782_0.009539419622135448","host":"s3://npm-registry-packages-npm-production"}},"5.26.5":{"name":"talon-agent","version":"5.26.5","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"The Falconry"},"license":"Apache-2.0","_id":"talon-agent@5.26.5","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/thefalconry/talon#readme","bugs":{"url":"https://github.com/thefalconry/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"555aaf3adc42ba8c91de3d4255a2fb5c3f27949f","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-5.26.5.tgz","fileCount":822,"integrity":"sha512-U2YqxAFhoT6WwOG1buLZTyKaKTg20uIJapGyPB0awoAWoKfI1qYSK5r/G9O5JjIDKzoHImESPrIHdKTpo+RDAg==","signatures":[{"sig":"MEYCIQD8b6ywwMFOUlK4td6dQwbHGcN9FO2laiUqXh9N9tfFMgIhAPmWDmQZZNgSPvyWM025uijVWz81OK/ergXhrHg1pp/h","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQDKuNTnbvitIkDMopWzOu3HVZVzR6vrwucrlBLg4FDu8QIgH0TO13Yp+t4aEzhIem2iWA5PxkxTNJVbD4zGlEXqzXE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@5.26.5","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":5007274},"main":"./src/index.ts","type":"module","_from":"file:dist/talon-agent-5.26.5.tgz","engines":{"node":">=24.15"},"exports":{".":"./src/index.ts"},"imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"bun src/cli.ts","dev":"bun --watch src/index.ts","knip":"knip","lint":"oxlint --max-warnings 0 src/","test":"vitest run","tree":"node scripts/check-tree.mjs","setup":"bun src/cli.ts setup","start":"bun src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","cli:node":"tsx src/cli.ts","dev:node":"tsx --watch src/index.ts","ratchets":"node scripts/check-ratchets.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"node scripts/check-architecture.mjs","preflight":"bash scripts/preflight.sh","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","start:node":"tsx src/index.ts","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","function-size":"node scripts/check-function-size.mjs","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts src/__tests__/integration/kilo-real-bootstrap.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts src/__tests__/integration/opencode-real-bootstrap.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"_resolved":"/home/runner/work/talon/talon/dist/talon-agent-5.26.5.tgz","overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","link-preview-js":"^5.0.0","@anthropic-ai/sdk":"^0.104.1"},"_integrity":"sha512-U2YqxAFhoT6WwOG1buLZTyKaKTg20uIJapGyPB0awoAWoKfI1qYSK5r/G9O5JjIDKzoHImESPrIHdKTpo+RDAg==","repository":{"url":"git+https://github.com/thefalconry/talon.git","type":"git"},"_npmVersion":"11.19.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.21.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.45.1","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^7.5.0","qrcode":"^1.5.4","undici":"^8.0.2","baileys":"^7.0.0-rc14","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@types/qrcode":"^1.5.6","@clack/prompts":"^1.2.0","@openai/agents":"^0.18.0","@playwright/mcp":"0.0.56","link-preview-js":"^5.0.0","qrcode-terminal":"^0.12.0","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.155.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.284","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^5.0.0","prettier":"^3.8.1","@swc/core":"^1.16.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^5.0.0","@types/qrcode-terminal":"^0.12.2","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_5.26.5_1790798891688_0.7986583343297429","host":"s3://npm-registry-packages-npm-production"}},"5.26.6":{"name":"talon-agent","version":"5.26.6","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"The Falconry"},"license":"Apache-2.0","_id":"talon-agent@5.26.6","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/thefalconry/talon#readme","bugs":{"url":"https://github.com/thefalconry/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"c6cb694da2419aa496d6c785a3b8bef6ec942473","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-5.26.6.tgz","fileCount":822,"integrity":"sha512-Yl9YjpjC9/q9+Ub92eLJmOo/4n825brnY9C+bNynLMxtvL9gmQdYIgJfv+20FfXUy+hDzZDngrJ2U8QxKWZc+Q==","signatures":[{"sig":"MEQCIC3u5x7pcE2J3NYQG0AKQahmP2ksQHg/c2bLXwqM1/0FAiA3609bPXnGp/fiRbQzr2BGBkmaF9ElBo66eZS/cKjlQw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIBNM/+Knn16DlxkMld/jU8ETnmTpxH8IUjdtJEe2G8s0AiEA3wd4oFU+OuG/um52l1leccZS059fgjeM/rpvUgJEb3s=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@5.26.6","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":5007316},"main":"./src/index.ts","type":"module","_from":"file:dist/talon-agent-5.26.6.tgz","engines":{"node":">=24.15"},"exports":{".":"./src/index.ts"},"imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"bun src/cli.ts","dev":"bun --watch src/index.ts","knip":"knip","lint":"oxlint --max-warnings 0 src/","test":"vitest run","tree":"node scripts/check-tree.mjs","setup":"bun src/cli.ts setup","start":"bun src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","cli:node":"tsx src/cli.ts","dev:node":"tsx --watch src/index.ts","ratchets":"node scripts/check-ratchets.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"node scripts/check-architecture.mjs","preflight":"bash scripts/preflight.sh","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","start:node":"tsx src/index.ts","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","function-size":"node scripts/check-function-size.mjs","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts src/__tests__/integration/kilo-real-bootstrap.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts src/__tests__/integration/opencode-real-bootstrap.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"_resolved":"/home/runner/work/talon/talon/dist/talon-agent-5.26.6.tgz","overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","link-preview-js":"^5.0.0","@anthropic-ai/sdk":"^0.104.1"},"_integrity":"sha512-Yl9YjpjC9/q9+Ub92eLJmOo/4n825brnY9C+bNynLMxtvL9gmQdYIgJfv+20FfXUy+hDzZDngrJ2U8QxKWZc+Q==","repository":{"url":"git+https://github.com/thefalconry/talon.git","type":"git"},"_npmVersion":"11.19.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.21.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.45.1","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^7.5.0","qrcode":"^1.5.4","undici":"^8.0.2","baileys":"^7.0.0-rc14","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@types/qrcode":"^1.5.6","@clack/prompts":"^1.2.0","@openai/agents":"^0.18.0","@playwright/mcp":"0.0.56","link-preview-js":"^5.0.0","qrcode-terminal":"^0.12.0","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.155.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.284","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^5.0.0","prettier":"^3.8.1","@swc/core":"^1.16.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^5.0.0","@types/qrcode-terminal":"^0.12.2","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_5.26.6_1790799957295_0.6512394399115078","host":"s3://npm-registry-packages-npm-production"}},"5.27.0":{"name":"talon-agent","version":"5.27.0","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"The Falconry"},"license":"Apache-2.0","_id":"talon-agent@5.27.0","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/thefalconry/talon#readme","bugs":{"url":"https://github.com/thefalconry/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"ed137cb28bc12ca06f5455db4918d15fd07fcf2b","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-5.27.0.tgz","fileCount":824,"integrity":"sha512-5IoSl7sbvjWpnPBw8V4ZSsmvvATntU+n+UAc2jblmqWb4j9xKMNNDL1h5UjdtnfWf0mUSWVTBOcTCv/mAsG+3w==","signatures":[{"sig":"MEUCIF1vD0Bxyz3BOkq+irnghYrl0dSw88xZlnBHw9/ZkwmNAiEA/TGULH9uyF7ZsA/FzJHcgQ5a+1qaNku0fO0kU3c1UOo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQDAoLVvvZs0NrzmRW5FEnqz2vpnYj7bY1SveqMLDzOccgIgG/lX13uaAV5B9ctJGGx6MMhaQd0TFiD2vO/nmfBZGO4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@5.27.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":5052943},"main":"./src/index.ts","type":"module","_from":"file:dist/talon-agent-5.27.0.tgz","engines":{"node":">=24.15"},"exports":{".":"./src/index.ts"},"imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"bun src/cli.ts","dev":"bun --watch src/index.ts","knip":"knip","lint":"oxlint --max-warnings 0 src/","test":"vitest run","tree":"node scripts/check-tree.mjs","setup":"bun src/cli.ts setup","start":"bun src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","cli:node":"tsx src/cli.ts","dev:node":"tsx --watch src/index.ts","ratchets":"node scripts/check-ratchets.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"node scripts/check-architecture.mjs","preflight":"bash scripts/preflight.sh","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","start:node":"tsx src/index.ts","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","function-size":"node scripts/check-function-size.mjs","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts src/__tests__/integration/kilo-real-bootstrap.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts src/__tests__/integration/opencode-real-bootstrap.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"_resolved":"/home/runner/work/talon/talon/dist/talon-agent-5.27.0.tgz","overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","link-preview-js":"^5.0.0","@anthropic-ai/sdk":"^0.104.1"},"_integrity":"sha512-5IoSl7sbvjWpnPBw8V4ZSsmvvATntU+n+UAc2jblmqWb4j9xKMNNDL1h5UjdtnfWf0mUSWVTBOcTCv/mAsG+3w==","repository":{"url":"git+https://github.com/thefalconry/talon.git","type":"git"},"_npmVersion":"11.19.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.21.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.45.1","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^7.5.0","qrcode":"^1.5.4","undici":"^8.0.2","baileys":"^7.0.0-rc14","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@types/qrcode":"^1.5.6","@clack/prompts":"^1.2.0","@openai/agents":"^0.18.0","@playwright/mcp":"0.0.56","link-preview-js":"^5.0.0","qrcode-terminal":"^0.12.0","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.155.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.284","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^5.0.0","prettier":"^3.8.1","@swc/core":"^1.16.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^5.0.0","@types/qrcode-terminal":"^0.12.2","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_5.27.0_1790800675229_0.39959789345520136","host":"s3://npm-registry-packages-npm-production"}},"5.28.0":{"name":"talon-agent","version":"5.28.0","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"The Falconry"},"license":"Apache-2.0","_id":"talon-agent@5.28.0","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/thefalconry/talon#readme","bugs":{"url":"https://github.com/thefalconry/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"39568235a9eab02fd8d5a0cb2ecd5086488e1062","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-5.28.0.tgz","fileCount":825,"integrity":"sha512-3rq2leYSBq1AuSaBXq4W66q5SnRs2uZeHVAavGgCXbeDb7ULcyTonJdaKHOfi8oMk8Ahlk6AR9FZ7VlY0eBjCQ==","signatures":[{"sig":"MEQCIG1G27B0FqXlEx7jT1DzlDEnbX8KAqhIYpG+xzRyYkv7AiB17c5uWJRZb9WxWbuYVzfHTaYCBRlMGrfTa/Trg3yi/A==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIC7pBUUxec/7Q7VQnFi0vPYvvcmG0B0/Jjf2FeANbkeoAiAJeqQprCbLJ+fu+GfNntq7P4VzhfIgiifrmbwZ0/ivHQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@5.28.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":5063440},"main":"./src/index.ts","type":"module","_from":"file:dist/talon-agent-5.28.0.tgz","engines":{"node":">=24.15"},"exports":{".":"./src/index.ts"},"imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"bun src/cli.ts","dev":"bun --watch src/index.ts","knip":"knip","lint":"oxlint --max-warnings 0 src/","test":"vitest run","tree":"node scripts/check-tree.mjs","setup":"bun src/cli.ts setup","start":"bun src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","cli:node":"tsx src/cli.ts","dev:node":"tsx --watch src/index.ts","ratchets":"node scripts/check-ratchets.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"node scripts/check-architecture.mjs","preflight":"bash scripts/preflight.sh","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","start:node":"tsx src/index.ts","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","function-size":"node scripts/check-function-size.mjs","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts src/__tests__/integration/kilo-real-bootstrap.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts src/__tests__/integration/opencode-real-bootstrap.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"_resolved":"/home/runner/work/talon/talon/dist/talon-agent-5.28.0.tgz","overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","link-preview-js":"^5.0.0","@anthropic-ai/sdk":"^0.104.1"},"_integrity":"sha512-3rq2leYSBq1AuSaBXq4W66q5SnRs2uZeHVAavGgCXbeDb7ULcyTonJdaKHOfi8oMk8Ahlk6AR9FZ7VlY0eBjCQ==","repository":{"url":"git+https://github.com/thefalconry/talon.git","type":"git"},"_npmVersion":"11.19.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.21.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.45.1","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^7.5.0","qrcode":"^1.5.4","undici":"^8.0.2","baileys":"^7.0.0-rc14","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@types/qrcode":"^1.5.6","@clack/prompts":"^1.2.0","@openai/agents":"^0.18.0","@playwright/mcp":"0.0.56","link-preview-js":"^5.0.0","qrcode-terminal":"^0.12.0","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.155.0","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.284","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^5.0.0","prettier":"^3.8.1","@swc/core":"^1.16.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^5.0.0","@types/qrcode-terminal":"^0.12.2","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_5.28.0_1790806547757_0.10020283483923076","host":"s3://npm-registry-packages-npm-production"}},"5.29.0":{"name":"talon-agent","version":"5.29.0","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"The Falconry"},"license":"Apache-2.0","_id":"talon-agent@5.29.0","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/thefalconry/talon#readme","bugs":{"url":"https://github.com/thefalconry/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"6b6497128e2afd98a27a412e8e50b5168c9d0b17","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-5.29.0.tgz","fileCount":825,"integrity":"sha512-fBzY0lqKmNlFUNiiLiCufeJCfwcyMkgC5N0cCCYYcsSlDm9SW1AHraiNWtNHdu55wNcE+w+UNtGNq94AHUDZrQ==","signatures":[{"sig":"MEYCIQCLg6D88rvh7ysXoAgAEOcgLCb0rkFysrEpyBtdpd/lmQIhALODuVxjFmOBiTOwEmF/QKj1JKy5uIKFZvH2vp0db8aI","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQC18lJWV2YvvYbL/DOdhkeL6EaQ+dXgq19oePEQpzoHRQIgahzEDN8RfvJ9VTt2LhrRqbou3Vz/YBNLF/KHOSunfik=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@5.29.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":5069555},"main":"./src/index.ts","type":"module","_from":"file:dist/talon-agent-5.29.0.tgz","engines":{"node":">=24.15"},"exports":{".":"./src/index.ts"},"imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"bun src/cli.ts","dev":"bun --watch src/index.ts","knip":"knip","lint":"oxlint --max-warnings 0 src/","test":"vitest run","tree":"node scripts/check-tree.mjs","setup":"bun src/cli.ts setup","start":"bun src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","cli:node":"tsx src/cli.ts","dev:node":"tsx --watch src/index.ts","ratchets":"node scripts/check-ratchets.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"node scripts/check-architecture.mjs","preflight":"bash scripts/preflight.sh","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","start:node":"tsx src/index.ts","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","function-size":"node scripts/check-function-size.mjs","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts src/__tests__/integration/kilo-real-bootstrap.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts src/__tests__/integration/opencode-real-bootstrap.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"_resolved":"/home/runner/work/talon/talon/dist/talon-agent-5.29.0.tgz","overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","link-preview-js":"^5.0.0","@anthropic-ai/sdk":"^0.104.1"},"_integrity":"sha512-fBzY0lqKmNlFUNiiLiCufeJCfwcyMkgC5N0cCCYYcsSlDm9SW1AHraiNWtNHdu55wNcE+w+UNtGNq94AHUDZrQ==","repository":{"url":"git+https://github.com/thefalconry/talon.git","type":"git"},"_npmVersion":"11.19.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.21.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.45.1","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^7.5.0","qrcode":"^1.5.4","undici":"^8.0.2","baileys":"^7.0.0-rc14","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@types/qrcode":"^1.5.6","@clack/prompts":"^1.2.0","@openai/agents":"^0.18.0","@playwright/mcp":"0.0.56","link-preview-js":"^5.0.0","qrcode-terminal":"^0.12.0","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.156.1","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.284","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^5.0.0","prettier":"^3.8.1","@swc/core":"^1.16.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^5.0.0","@types/qrcode-terminal":"^0.12.2","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_5.29.0_1790847858205_0.24145492858335826","host":"s3://npm-registry-packages-npm-production"}},"5.30.0":{"name":"talon-agent","version":"5.30.0","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"The Falconry"},"license":"Apache-2.0","_id":"talon-agent@5.30.0","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/thefalconry/talon#readme","bugs":{"url":"https://github.com/thefalconry/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"779cfebedb6de9c71649e6f40593380d21d1899a","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-5.30.0.tgz","fileCount":835,"integrity":"sha512-ypiXuEBXq4WPhWrF50UjDl0nldfoc3uHPUBctrnDSdD48DXpQsjI745DZazXDM9Z3fKDHeRKop90LPipsqkgSw==","signatures":[{"sig":"MEQCICwj7dDVj+yYtmbrMq/IktxQF+lpl7d1AAAohJC+Wn5rAiAmkLbZGLNj73IqrCC/LcgTHe6+jIzbC8xAmXm+gkDGgw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIDsCZZD1lI6aDXV+xovLUTP6bEqlv5bHr7yuc4RH0SMOAiA1t/5s9RxPhAzWMbumZfIYOTVgmgbO3jDrdL9d5jLflA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@5.30.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":5123759},"main":"./src/index.ts","type":"module","_from":"file:dist/talon-agent-5.30.0.tgz","engines":{"node":">=24.15"},"exports":{".":"./src/index.ts"},"imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"bun src/cli.ts","dev":"bun --watch src/index.ts","knip":"knip","lint":"oxlint --max-warnings 0 src/","test":"vitest run","tree":"node scripts/check-tree.mjs","setup":"bun src/cli.ts setup","start":"bun src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","cli:node":"tsx src/cli.ts","dev:node":"tsx --watch src/index.ts","ratchets":"node scripts/check-ratchets.mjs","worktree":"node scripts/worktree.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"node scripts/check-architecture.mjs","preflight":"bash scripts/preflight.sh","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","start:node":"tsx src/index.ts","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","function-size":"node scripts/check-function-size.mjs","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts src/__tests__/integration/kilo-real-bootstrap.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts src/__tests__/integration/opencode-real-bootstrap.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"_resolved":"/home/runner/work/talon/talon/dist/talon-agent-5.30.0.tgz","overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","link-preview-js":"^5.0.0","@anthropic-ai/sdk":"^0.104.1"},"_integrity":"sha512-ypiXuEBXq4WPhWrF50UjDl0nldfoc3uHPUBctrnDSdD48DXpQsjI745DZazXDM9Z3fKDHeRKop90LPipsqkgSw==","repository":{"url":"git+https://github.com/thefalconry/talon.git","type":"git"},"_npmVersion":"11.19.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.21.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.45.1","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^7.5.0","qrcode":"^1.5.4","undici":"^8.0.2","baileys":"^7.0.0-rc14","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@types/qrcode":"^1.5.6","@clack/prompts":"^1.2.0","@openai/agents":"^0.18.0","@playwright/mcp":"0.0.56","link-preview-js":"^5.0.0","qrcode-terminal":"^0.12.0","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.156.1","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.284","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^5.0.0","prettier":"^3.8.1","@swc/core":"^1.16.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^5.0.0","@types/qrcode-terminal":"^0.12.2","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_5.30.0_1790850881469_0.9260831105352945","host":"s3://npm-registry-packages-npm-production"}},"5.31.0":{"name":"talon-agent","version":"5.31.0","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"The Falconry"},"license":"Apache-2.0","_id":"talon-agent@5.31.0","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/thefalconry/talon#readme","bugs":{"url":"https://github.com/thefalconry/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"199096589278302329329ba61895bb1aba6a48b4","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-5.31.0.tgz","fileCount":836,"integrity":"sha512-u2Pm+O8/vt36BBFPWGx9Z4xpbQGw0R/S++9t8Uh5W4hPHOEbnReLdeN8jb0UK5Qw0VB5/92GyY669Z6NmKy2hw==","signatures":[{"sig":"MEQCICCAlBknZFV1sHeLOJztI5idj+B9o3pAYD54Ls/3oS9cAiAC11MBNLyZtclkbqMmkzhUGijgJklHpQRKgeMr4YVyag==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQCTeRGv/qiFsbmMjv6tjaWV1yo93v9sDJiQrf5ihTxabwIgCPUgquURPPYH85CgQYtfPaQ4WJzZqP8rE3HRmrbwnUI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@5.31.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":5127922},"main":"./src/index.ts","type":"module","_from":"file:dist/talon-agent-5.31.0.tgz","engines":{"node":">=24.15"},"exports":{".":"./src/index.ts"},"imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"bun src/cli.ts","dev":"bun --watch src/index.ts","knip":"knip","lint":"oxlint --max-warnings 0 src/","test":"vitest run","tree":"node scripts/check-tree.mjs","setup":"bun src/cli.ts setup","start":"bun src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","cli:node":"tsx src/cli.ts","dev:node":"tsx --watch src/index.ts","ratchets":"node scripts/check-ratchets.mjs","worktree":"node scripts/worktree.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"node scripts/check-architecture.mjs","preflight":"bash scripts/preflight.sh","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","start:node":"tsx src/index.ts","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","function-size":"node scripts/check-function-size.mjs","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts src/__tests__/integration/kilo-real-bootstrap.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts src/__tests__/integration/opencode-real-bootstrap.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"_resolved":"/home/runner/work/talon/talon/dist/talon-agent-5.31.0.tgz","overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","link-preview-js":"^5.0.0","@anthropic-ai/sdk":"^0.104.1"},"_integrity":"sha512-u2Pm+O8/vt36BBFPWGx9Z4xpbQGw0R/S++9t8Uh5W4hPHOEbnReLdeN8jb0UK5Qw0VB5/92GyY669Z6NmKy2hw==","repository":{"url":"git+https://github.com/thefalconry/talon.git","type":"git"},"_npmVersion":"11.19.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.21.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.45.1","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^7.5.0","qrcode":"^1.5.4","undici":"^8.0.2","baileys":"^7.0.0-rc14","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@types/qrcode":"^1.5.6","@clack/prompts":"^1.2.0","@openai/agents":"^0.18.0","@playwright/mcp":"0.0.56","link-preview-js":"^5.0.0","qrcode-terminal":"^0.12.0","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.156.1","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.284","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^5.0.0","prettier":"^3.8.1","@swc/core":"^1.16.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^5.0.0","@types/qrcode-terminal":"^0.12.2","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_5.31.0_1790851964360_0.5976499146062799","host":"s3://npm-registry-packages-npm-production"}},"5.31.1":{"name":"talon-agent","version":"5.31.1","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"author":{"name":"The Falconry"},"license":"Apache-2.0","_id":"talon-agent@5.31.1","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"homepage":"https://github.com/thefalconry/talon#readme","bugs":{"url":"https://github.com/thefalconry/talon/issues"},"bin":{"talon":"bin/talon.js"},"dist":{"shasum":"ae8c2855a76d5d3067e998040bda23bb06e70e75","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-5.31.1.tgz","fileCount":836,"integrity":"sha512-7tHJbju9hSBKby0D9UfxrTJ0anZ7Ml3ixqulVDnYiRcyPaNrNiULDvawAAddiHHcAvofsjblSJ+RQs64cTdQLw==","signatures":[{"sig":"MEYCIQCsSq0noH00QUJfSSCyjeZq0BaAdCRvlcUuTlbTVF/fTgIhAJL5rdtgwTBl06RG2VbGSb/ho5MckLWZiVM8yRjDmudI","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQCsrPHeWzxlD7R0OCUCHnoVjSMUERHZKy6+ss2bNhypwwIgLgZiUf0jvSVlVeeSey/ydywYBwRlN0hJid3SBKuTZR0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@5.31.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":5127922},"main":"./src/index.ts","type":"module","_from":"file:dist/talon-agent-5.31.1.tgz","engines":{"node":">=24.15"},"exports":{".":"./src/index.ts"},"imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"scripts":{"cli":"bun src/cli.ts","dev":"bun --watch src/index.ts","knip":"knip","lint":"oxlint --max-warnings 0 src/","test":"vitest run","tree":"node scripts/check-tree.mjs","setup":"bun src/cli.ts setup","start":"bun src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","cli:node":"tsx src/cli.ts","dev:node":"tsx --watch src/index.ts","ratchets":"node scripts/check-ratchets.mjs","worktree":"node scripts/worktree.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"node scripts/check-architecture.mjs","preflight":"bash scripts/preflight.sh","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","start:node":"tsx src/index.ts","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","function-size":"node scripts/check-function-size.mjs","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts src/__tests__/integration/kilo-real-bootstrap.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts src/__tests__/integration/opencode-real-bootstrap.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"_resolved":"/home/runner/work/talon/talon/dist/talon-agent-5.31.1.tgz","overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","link-preview-js":"^5.0.0","@anthropic-ai/sdk":"^0.104.1"},"_integrity":"sha512-7tHJbju9hSBKby0D9UfxrTJ0anZ7Ml3ixqulVDnYiRcyPaNrNiULDvawAAddiHHcAvofsjblSJ+RQs64cTdQLw==","repository":{"url":"git+https://github.com/thefalconry/talon.git","type":"git"},"_npmVersion":"11.19.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"_nodeVersion":"24.21.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.45.1","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^7.5.0","qrcode":"^1.5.4","undici":"^8.0.2","baileys":"^7.0.0-rc14","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@types/qrcode":"^1.5.6","@clack/prompts":"^1.2.0","@openai/agents":"^0.18.0","@playwright/mcp":"0.0.56","link-preview-js":"^5.0.0","qrcode-terminal":"^0.12.0","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.156.1","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.284","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^5.0.0","prettier":"^3.8.1","@swc/core":"^1.16.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^5.0.0","@types/qrcode-terminal":"^0.12.2","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"tmp":"tmp/talon-agent_5.31.1_1790854085584_0.8798833304844","host":"s3://npm-registry-packages-npm-production"}},"5.32.0":{"_id":"talon-agent@5.32.0","bin":{"talon":"bin/talon.js"},"bugs":{"url":"https://github.com/thefalconry/talon/issues"},"dist":{"shasum":"582156e819d861d9122ae260200ad99876d5f189","tarball":"https://registry.npmjs.org/talon-agent/-/talon-agent-5.32.0.tgz","fileCount":836,"integrity":"sha512-vmpPWaWtQ6aOIv0BvCk0X0jkCvqkLpLIf5zCe8fbRo+Ni225A42Si7aYL+x1yE/lnJmm3dsWGuLaeji1hp9yaw==","signatures":[{"sig":"MEUCIEeHRZ5R4SHCKxUqdXRtSPXHOWBzLNCv+A2MpHUVioQ9AiEAoPg5pgu2DJNScZbrGf+v9cI5eUTG8MtlAonWEpe0yTU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIC1A2N+Om5eflSSSUWsNUFz5VWRpZwn1gNVqlUY3qKCcAiB3de1nDd0hNzlX7PXMLG0r3/6yOM3S3l+NquiEP9mD4w=="}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/talon-agent@5.32.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":5130407},"main":"./src/index.ts","name":"talon-agent","type":"module","_from":"file:dist/talon-agent-5.32.0.tgz","author":{"name":"The Falconry"},"engines":{"node":">=24.15"},"exports":{".":"./src/index.ts"},"imports":{"#prompt-assets":{"bun":"./src/core/prompt/embedded-prompts.ts","default":"./src/core/prompt/disk-prompts.ts"}},"license":"Apache-2.0","scripts":{"cli":"bun src/cli.ts","dev":"bun --watch src/index.ts","knip":"knip","lint":"oxlint --max-warnings 0 src/","test":"vitest run","tree":"node scripts/check-tree.mjs","setup":"bun src/cli.ts setup","start":"bun src/index.ts","format":"prettier --write src/ prompts/","test:ci":"vitest run --reporter=verbose --reporter=json --outputFile=test-results.json","cli:node":"tsx src/cli.ts","dev:node":"tsx --watch src/index.ts","ratchets":"node scripts/check-ratchets.mjs","worktree":"node scripts/worktree.mjs","build:sql":"tsx scripts/embed-sql.ts","build:zig":"node native/textops-wasm/build.mjs","depcruise":"node scripts/check-architecture.mjs","preflight":"bash scripts/preflight.sh","typecheck":"tsc --noEmit","build:napi":"node native/blake3-napi/build.mjs","build:wasm":"node native/blake3-wasm/build.mjs && node native/strsim-wasm/build.mjs && node native/sqlguard-wasm/build.mjs && node native/htmlents-wasm/build.mjs","ci:protect":"node .github/scripts/enforce-ci-gate.mjs","start:node":"tsx src/index.ts","test:watch":"vitest","build:gleam":"cd native/scheduler-core && gleam build --target javascript && node embed.mjs","build:driver":"node native/talon-driver/build.mjs","build:fusefs":"node native/talon-fusefs/build.mjs","build:native":"npm run build:wasm && npm run build:zig && npm run build:gleam","build:warden":"node native/talon-warden/build.mjs","format:check":"prettier --check src/ prompts/","build:prompts":"tsx scripts/embed-prompts.ts","function-size":"node scripts/check-function-size.mjs","tarball:check":"node .github/scripts/tarball-check.mjs","test:coverage":"vitest run --coverage","build:stub-sea":"node src/__tests__/integration/stub-claude/build-sea.mjs","test:functional":"vitest run --reporter=verbose --reporter=json --outputFile=functional-results.json src/__tests__/package.functional.test.ts src/__tests__/tool-functional.test.ts src/__tests__/mcp-launcher.test.ts src/__tests__/mcp-launcher-functional.test.ts src/__tests__/integration/sdk-stub.test.ts src/__tests__/integration/talon-functional.test.ts","build:driver:all":"node native/talon-driver/build.mjs --all","test:integration":"vitest run --reporter=verbose --reporter=json --outputFile=integration-results.json src/__tests__/integration/talon-mcp-functional.test.ts","test:kilo:backend":"vitest run --reporter=verbose --reporter=json --outputFile=kilo-backend-results.json src/__tests__/integration/kilo-live-discovery.test.ts src/__tests__/integration/kilo-real-bootstrap.test.ts","test:codex:backend":"vitest run --reporter=verbose --reporter=json --outputFile=codex-backend-results.json src/__tests__/integration/codex-live-discovery.test.ts","test:claude:backend":"vitest run --reporter=verbose --reporter=json --outputFile=claude-backend-results.json src/__tests__/integration/claude-live-discovery.test.ts","test:integration:all":"vitest run --reporter=verbose src/__tests__/integration/","test:opencode:backend":"vitest run --reporter=verbose --reporter=json --outputFile=opencode-backend-results.json src/__tests__/integration/opencode-live-discovery.test.ts src/__tests__/integration/opencode-real-bootstrap.test.ts","test:openai-agents:backend":"vitest run --reporter=verbose --reporter=json --outputFile=openai-agents-backend-results.json src/__tests__/integration/openai-agents-live-discovery.test.ts"},"version":"5.32.0","_npmUser":{"name":"dylanneve1","email":"dylanneve1@gmail.com"},"homepage":"https://github.com/thefalconry/talon#readme","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"_resolved":"/home/runner/work/talon/talon/dist/talon-agent-5.32.0.tgz","overrides":{"fast-uri":"^3.1.2","ip-address":"^10.1.1","link-preview-js":"^5.0.0","@anthropic-ai/sdk":"^0.104.1"},"_integrity":"sha512-vmpPWaWtQ6aOIv0BvCk0X0jkCvqkLpLIf5zCe8fbRo+Ni225A42Si7aYL+x1yE/lnJmm3dsWGuLaeji1hp9yaw==","repository":{"url":"git+https://github.com/thefalconry/talon.git","type":"git"},"_npmVersion":"11.19.0","description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","directories":{},"maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"_nodeVersion":"24.21.0","dependencies":{"tsx":"^4.21.0","zod":"^4.3.6","pino":"^10.3.1","yaml":"^2.9.0","croner":"^10.0.1","grammy":"^1.45.1","marked":"^18.0.0","mem0ai":"^3.0.13","openai":"^7.5.0","qrcode":"^1.5.4","undici":"^8.0.2","baileys":"^7.0.0-rc14","cheerio":"^1.2.0","p-retry":"^8.0.0","wasmoon":"^1.16.0","liquidjs":"^10.27.0","telegram":"^2.26.22","file-type":"^22.0.1","discord.js":"^14.16.3","picocolors":"^1.1.1","big-integer":"^1.6.52","cross-spawn":"^7.0.6","pino-pretty":"^13.1.3","@kilocode/sdk":"^7.2.22","@types/qrcode":"^1.5.6","@clack/prompts":"^1.2.0","@openai/agents":"^0.18.0","@playwright/mcp":"0.0.56","link-preview-js":"^5.0.0","qrcode-terminal":"^0.12.0","@opencode-ai/sdk":"^1.17.4","@anthropic-ai/sdk":"^0.104.1","@openai/codex-sdk":"^0.156.1","write-file-atomic":"^8.0.0","@types/cross-spawn":"^6.0.6","@grammyjs/auto-retry":"^2.0.2","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.284","@brave/brave-search-mcp-server":"^2.0.75","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^6.3.1","oxlint":"^1.59.0","vitest":"^5.0.0","prettier":"^3.8.1","@swc/core":"^1.16.1","fast-check":"^4.6.0","typescript":"^7.0.2","@types/node":"^26.0.0","dependency-cruiser":"^18.1.0","@vitest/coverage-v8":"^5.0.0","@types/qrcode-terminal":"^0.12.2","@types/write-file-atomic":"^4.0.3"},"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/talon-agent_5.32.0_1790860419364_0.21159074160165825"}}},"time":{"created":"2026-04-01T23:06:10.438Z","modified":"2026-10-01T13:13:39.855Z","1.0.0":"2026-04-01T23:06:10.720Z","1.1.0":"2026-04-08T15:07:42.329Z","1.2.0":"2026-04-09T09:06:41.379Z","1.3.0":"2026-04-10T10:53:06.982Z","1.4.0":"2026-04-11T00:21:28.760Z","1.5.0":"2026-04-13T10:18:57.903Z","1.6.0":"2026-04-13T15:20:13.284Z","1.6.1":"2026-04-13T15:44:38.561Z","1.7.0":"2026-04-14T23:12:37.023Z","1.8.0":"2026-04-16T16:11:13.820Z","1.8.1":"2026-04-17T13:24:51.371Z","1.9.0":"2026-04-23T22:04:28.453Z","1.9.1":"2026-05-07T12:47:40.697Z","1.9.2":"2026-05-08T10:06:56.930Z","1.10.0":"2026-05-08T10:34:06.524Z","1.10.1":"2026-05-09T18:00:05.432Z","1.11.0":"2026-05-11T17:23:32.355Z","1.12.0":"2026-05-18T20:20:28.207Z","1.33.0":"2026-07-08T09:33:20.469Z","1.34.0":"2026-07-08T10:27:24.230Z","1.34.1":"2026-07-08T12:00:18.684Z","1.35.0":"2026-07-08T21:27:43.431Z","1.36.0":"2026-07-09T21:37:39.605Z","1.37.0":"2026-07-10T10:06:44.847Z","1.37.1":"2026-07-10T12:14:28.137Z","1.37.2":"2026-07-10T13:04:08.661Z","1.37.3":"2026-07-10T13:31:59.708Z","1.37.4":"2026-07-10T14:07:28.256Z","1.38.0":"2026-07-10T19:56:26.303Z","1.38.1":"2026-07-10T20:15:19.291Z","1.39.0":"2026-07-10T20:38:25.082Z","1.40.0":"2026-07-11T01:16:45.273Z","1.40.1":"2026-07-11T08:53:11.945Z","1.40.2":"2026-07-11T09:35:34.735Z","1.41.0":"2026-07-11T10:33:05.382Z","1.42.0":"2026-07-11T13:47:36.827Z","1.42.1":"2026-07-11T14:44:44.419Z","1.42.2":"2026-07-11T16:27:11.707Z","1.43.0":"2026-07-11T18:38:24.214Z","1.44.0":"2026-07-11T18:53:00.841Z","1.45.0":"2026-07-11T19:15:35.232Z","1.46.0":"2026-07-12T12:19:08.331Z","1.46.1":"2026-07-12T12:35:02.409Z","1.47.0":"2026-07-12T20:32:46.934Z","1.47.1":"2026-07-15T13:00:06.555Z","1.47.2":"2026-07-15T17:52:52.177Z","1.48.0":"2026-07-16T10:38:26.494Z","1.49.0":"2026-07-16T11:13:58.566Z","1.50.0":"2026-07-16T15:29:59.819Z","1.51.0":"2026-07-16T19:06:52.923Z","1.52.0":"2026-07-16T19:23:24.820Z","1.53.0":"2026-07-16T20:30:11.843Z","2.0.0":"2026-07-17T14:24:12.956Z","2.0.1":"2026-07-17T15:56:13.141Z","2.0.2":"2026-07-17T16:16:47.146Z","3.0.0":"2026-07-18T09:53:09.722Z","3.0.1":"2026-07-18T10:19:20.932Z","3.0.2":"2026-07-18T11:50:04.554Z","3.0.3":"2026-07-18T17:39:44.656Z","3.0.4":"2026-07-18T18:17:00.413Z","3.0.5":"2026-07-18T20:18:30.738Z","3.1.0":"2026-07-21T14:57:36.609Z","3.1.1":"2026-07-21T15:30:43.209Z","3.2.0":"2026-07-21T21:24:49.583Z","3.3.0":"2026-07-22T09:02:31.994Z","3.4.0":"2026-07-22T10:39:57.076Z","3.4.1":"2026-07-22T11:59:01.617Z","3.5.0":"2026-07-22T14:46:59.140Z","3.6.0":"2026-07-22T23:00:00.574Z","3.6.1":"2026-07-22T23:12:20.137Z","3.6.2":"2026-07-22T23:52:43.689Z","3.6.3":"2026-07-24T08:37:30.883Z","3.7.0":"2026-07-24T13:03:20.439Z","3.8.0":"2026-07-25T12:17:36.902Z","3.8.1":"2026-07-25T12:31:39.946Z","3.8.2":"2026-07-25T14:45:44.504Z","3.9.0":"2026-07-25T15:44:52.063Z","3.9.1":"2026-07-25T16:28:18.879Z","3.10.0":"2026-07-25T21:18:43.138Z","3.11.0":"2026-07-25T21:28:58.356Z","3.11.1":"2026-07-26T12:47:06.670Z","3.12.0":"2026-07-27T09:17:01.045Z","3.12.1":"2026-07-28T14:42:40.850Z","3.12.2":"2026-07-29T17:42:35.584Z","3.12.3":"2026-07-29T18:42:59.092Z","3.12.4":"2026-07-30T13:21:07.686Z","3.12.5":"2026-07-30T15:40:52.017Z","3.13.0":"2026-07-30T16:20:38.496Z","3.14.0":"2026-07-30T17:23:28.852Z","3.15.0":"2026-07-31T11:55:51.267Z","3.15.1":"2026-08-02T14:19:51.421Z","3.15.2":"2026-08-02T14:30:58.646Z","3.15.3":"2026-08-02T18:52:22.320Z","3.16.0":"2026-08-02T20:09:56.094Z","3.16.1":"2026-08-03T11:04:37.065Z","3.17.0":"2026-08-04T13:03:24.219Z","3.18.0":"2026-08-04T13:22:04.125Z","3.19.0":"2026-08-07T00:34:16.210Z","3.19.1":"2026-08-10T10:06:45.958Z","3.20.0":"2026-08-19T14:50:46.019Z","3.21.0":"2026-08-19T15:23:01.854Z","3.22.0":"2026-08-19T15:48:59.676Z","3.22.1":"2026-08-22T12:54:17.488Z","3.23.0":"2026-08-22T13:08:00.244Z","3.23.1":"2026-08-22T13:37:58.252Z","3.24.0":"2026-08-22T14:04:15.304Z","3.24.1":"2026-08-22T15:16:40.792Z","3.25.0":"2026-08-22T15:24:32.887Z","3.25.1":"2026-08-23T11:26:43.973Z","3.25.2":"2026-08-23T11:58:46.377Z","3.25.3":"2026-08-23T14:43:20.478Z","3.26.0":"2026-08-23T15:22:06.806Z","3.27.0":"2026-08-23T19:31:52.554Z","3.28.0":"2026-08-23T19:46:39.807Z","3.28.1":"2026-08-28T13:26:09.919Z","3.29.0":"2026-08-28T15:01:27.333Z","3.30.0":"2026-08-30T13:47:53.332Z","3.31.0":"2026-09-01T14:28:46.522Z","3.32.0":"2026-09-01T15:16:22.506Z","3.32.1":"2026-09-02T12:31:44.242Z","3.33.0":"2026-09-02T13:03:31.734Z","3.33.1":"2026-09-02T13:34:00.843Z","3.33.2":"2026-09-08T21:59:49.563Z","3.33.3":"2026-09-08T22:10:34.131Z","3.33.4":"2026-09-14T09:35:39.242Z","3.34.0":"2026-09-14T11:02:47.153Z","3.34.1":"2026-09-14T16:47:37.035Z","3.35.0":"2026-09-15T11:13:25.159Z","3.36.0":"2026-09-15T14:11:45.908Z","3.37.0":"2026-09-16T11:02:30.175Z","4.0.0":"2026-09-16T12:44:10.023Z","4.0.1":"2026-09-16T13:19:18.363Z","4.1.0":"2026-09-17T07:58:27.944Z","4.2.0":"2026-09-17T10:03:52.193Z","4.3.0":"2026-09-17T14:13:23.724Z","4.3.1":"2026-09-17T14:22:00.006Z","4.3.2":"2026-09-18T10:41:52.230Z","4.3.3":"2026-09-18T12:17:46.874Z","4.4.0":"2026-09-18T12:50:28.523Z","4.5.0":"2026-09-18T13:12:11.395Z","4.6.0":"2026-09-18T13:31:26.374Z","4.6.1":"2026-09-18T13:50:17.560Z","5.0.0":"2026-09-18T15:29:00.441Z","5.0.1":"2026-09-18T16:44:41.174Z","5.1.0":"2026-09-18T18:52:25.101Z","5.2.0":"2026-09-18T19:47:32.498Z","5.2.1":"2026-09-18T20:04:45.097Z","5.2.2":"2026-09-19T01:35:54.883Z","5.3.0":"2026-09-19T18:08:07.577Z","5.4.0":"2026-09-21T12:27:04.770Z","5.4.1":"2026-09-21T15:32:14.320Z","5.5.0":"2026-09-21T18:52:25.069Z","5.5.1":"2026-09-22T21:44:02.054Z","5.6.0":"2026-09-23T00:21:54.234Z","5.7.0":"2026-09-23T08:46:42.013Z","5.8.0":"2026-09-23T12:21:08.502Z","5.9.0":"2026-09-23T15:04:12.324Z","5.10.0":"2026-09-23T16:55:05.247Z","5.11.0":"2026-09-24T00:54:59.755Z","5.12.0":"2026-09-24T02:09:07.359Z","5.13.0":"2026-09-24T10:28:11.218Z","5.14.0":"2026-09-24T11:12:11.768Z","5.18.1":"2026-09-24T21:51:11.202Z","5.18.2":"2026-09-25T13:23:25.491Z","5.19.0":"2026-09-25T15:18:33.264Z","5.19.1":"2026-09-27T15:13:33.360Z","5.20.0":"2026-09-28T15:36:50.082Z","5.20.1":"2026-09-28T17:18:25.411Z","5.21.0":"2026-09-29T10:26:14.987Z","5.22.0":"2026-09-29T10:50:41.562Z","5.23.0":"2026-09-30T08:42:12.938Z","5.23.1":"2026-09-30T11:04:49.195Z","5.24.0":"2026-09-30T11:37:36.603Z","5.24.1":"2026-09-30T15:06:56.585Z","5.25.0":"2026-09-30T15:36:00.146Z","5.25.1":"2026-09-30T15:55:40.639Z","5.26.0":"2026-09-30T18:15:48.992Z","5.26.1":"2026-09-30T18:43:24.727Z","5.26.2":"2026-09-30T19:06:22.490Z","5.26.3":"2026-09-30T19:26:17.289Z","5.26.4":"2026-09-30T19:49:59.027Z","5.26.5":"2026-09-30T20:08:11.801Z","5.26.6":"2026-09-30T20:25:57.412Z","5.27.0":"2026-09-30T20:37:55.362Z","5.28.0":"2026-09-30T22:15:47.878Z","5.29.0":"2026-10-01T09:44:18.362Z","5.30.0":"2026-10-01T10:34:41.677Z","5.31.0":"2026-10-01T10:52:44.536Z","5.31.1":"2026-10-01T11:28:05.711Z","5.32.0":"2026-10-01T13:13:39.479Z"},"bugs":{"url":"https://github.com/thefalconry/talon/issues"},"author":{"name":"The Falconry"},"license":"Apache-2.0","homepage":"https://github.com/thefalconry/talon#readme","keywords":["telegram","bot","claude","ai","mcp","agent-sdk","chatbot"],"repository":{"url":"git+https://github.com/thefalconry/talon.git","type":"git"},"description":"Multi-frontend AI agent with full tool access, streaming, cron jobs, and plugin system","maintainers":[{"name":"dylanneve1","email":"dylanneve1@gmail.com"}],"readme":"<p align=\"center\">\n  <img src=\"docs/assets/talon-hero.png\" alt=\"Talon — multi-platform agentic AI harness\" width=\"880\">\n</p>\n\n# Talon\n\n[![Node.js](https://img.shields.io/badge/node-%3E%3D24-339933?logo=nodedotjs&logoColor=white)](https://nodejs.org)\n[![Bun](https://img.shields.io/badge/bun-1.3%2B-000000?logo=bun&logoColor=white)](https://bun.sh)\n[![TypeScript](https://img.shields.io/badge/TypeScript-7.0-3178C6?logo=typescript&logoColor=white)](https://www.typescriptlang.org/)\n[![Frontends](https://img.shields.io/badge/frontends-Telegram_%7C_WhatsApp_%7C_Discord_%7C_Teams_%7C_Terminal_%7C_App-25D366)](#frontends)\n[![Backends](https://img.shields.io/badge/backends-Claude_%7C_Kilo_%7C_OpenCode_%7C_Codex_%7C_Antigravity_%7C_OpenAI_Agents-D97706)](#backends)\n[![License: Apache 2.0](https://img.shields.io/badge/license-Apache%202.0-blue.svg)](LICENSE)\n[![CI](https://github.com/thefalconry/talon/actions/workflows/ci.yml/badge.svg)](https://github.com/thefalconry/talon/actions/workflows/ci.yml)\n\nMulti-platform agentic AI harness. Runs on **Telegram**, **WhatsApp**, **Discord**, **Microsoft Teams**, the **Terminal**, and a **cross-platform Desktop/Mobile companion app** (Flutter), with a pluggable backend (**Claude Agent SDK**, **Kilo**, **OpenCode**, **Codex**, **Antigravity**, or **OpenAI Agents**) and full tool access through MCP.\n\n---\n\n## Features\n\n|                       |                                                                                                                                              |\n| --------------------- | -------------------------------------------------------------------------------------------------------------------------------------------- |\n| **Multi-frontend**    | Telegram (grammY + GramJS userbot), WhatsApp (Baileys multi-device), Discord (discord.js), Microsoft Teams (Bot Framework), Terminal with live tool visibility, and a **Desktop/Mobile app** (Flutter) over a local/remote bridge — one or several at once, see [Frontends](#frontends) |\n| **Pluggable backend** | Claude Agent SDK, Kilo, OpenCode, Codex, Antigravity, OpenAI Agents — selectable per-process via `backend` config. Streaming, model fallback, context-overflow recovery. |\n| **MCP tools**         | Messaging, media, history, search, web fetch, cron jobs, triggers, goals, stickers, file system, admin controls                              |\n| **Plugins**           | Hot-reloadable plugin system with `talon plugin install/enable/disable` (npm, git, or local sources). Built-in: GitHub, MemPalace, Playwright, Brave Search |\n| **Background agents** | Heartbeat (hourly by default — advances goals, proactively messages when something matters) and Dream (memory consolidation + diary)         |\n| **Goals**             | Persistent multi-day objectives the agent commits to in chat; every heartbeat run re-reads them, makes progress, and records what it did     |\n| **Skills**            | SKILL.md workflow bundles the agent authors and reuses, with `talon skill install/enable/disable` (local folders, git, or `owner/repo` — the Anthropic skills ecosystem installs directly) |\n| **Triggers**          | Self-authored watcher scripts (bash/python/node) that wake the bot when conditions are met                                                   |\n| **Task table**        | Every unit of agent work — chat turns, heartbeat, dream, isolated cron/trigger jobs — registered live; `talon ps` / `talon kill`             |\n| **Event bus**         | Typed internal pub-sub spine (task + turn lifecycle events); subsystems subscribe instead of importing each other; `talon events -f`         |\n| **VFS**               | Unified namespace at `~/.talon/ns` over workspace, skills, scripts, logs, plus /proc-style live views of the task table, event bus, and plugin registry — a real filesystem (FUSE-backed live views), so plain `ls`/`cat` and every tool just work |\n| **Per-chat settings** | Model, effort level, and pulse toggle per conversation via inline keyboard                                                                   |\n| **Model registry**    | Models discovered from the active backend at startup — new models appear in all pickers automatically                                        |\n\n---\n\n## Quick Start\n\n```bash\ngit clone https://github.com/thefalconry/talon.git && cd talon\nnpm install\n\n# Interactive setup (select frontend, configure tokens, pick model)\nnpx talon setup\n\n# Start\nnpx talon start       # configured frontend (daemon mode)\nnpx talon chat        # terminal chat mode\n```\n\n**Prerequisites:**\n\n- [Bun 1.3+](https://bun.sh) **or** [Node.js 24+](https://nodejs.org/). Talon ships as\n  TypeScript sources and runs them directly: Bun executes them natively, Node goes\n  through a `tsx` loader. The `talon` launcher detects which runtime started it, so\n  either works with no configuration — `npm start` / `npm run dev` take the Bun path,\n  `npm run start:node` / `npm run dev:node` the Node one. Bun is what the release\n  binaries and the maintained deployment run on; Node stays supported.\n- Backend-specific:\n  - `claude` backend: [Claude Code](https://docs.anthropic.com/en/docs/claude-code) installed and authenticated (`claude` CLI on PATH).\n  - `kilo` backend: nothing extra — `@kilocode/sdk` spawns a local server. Free models are accessible without auth; routed models use Kilo's own credentials.\n  - `opencode` backend: nothing extra — `@opencode-ai/sdk` spawns a local server.\n  - `codex` backend: install the `codex` CLI (`npm i -g @openai/codex`) and authenticate with `codex login`, `CODEX_API_KEY`, `TALON_CODEX_KEY`, or `codexApiKey`. `OPENAI_API_KEY` is used only as a fallback when no Codex login exists.\n  - `agy` backend: install Google's Antigravity CLI so `agy` is on `PATH` (or set `agyBinary` / `AGY_BINARY`), then run `agy` **once interactively** on the host and complete the Google sign-in. There is no API key — headless runs reuse the cached OAuth credentials under `~/.gemini/antigravity-cli/`.\n\n### Standalone binary\n\nEach release also ships self-contained binaries (no Node.js required) for\nLinux and macOS (x64 + arm64) and Windows (x64). Prompts and all native\nmodules are embedded in the binary.\n\n```bash\n# Homebrew (macOS / Linux)\nbrew install thefalconry/talon/talon\n\n# Debian / Ubuntu — download the .deb for your arch from the release, then:\nsudo apt install ./talon_<version>_amd64.deb     # or _arm64.deb\n\n# Fedora / RHEL — download the .rpm for your arch from the release, then:\nsudo dnf install ./talon-<version>-1.x86_64.rpm  # or .aarch64.rpm\n\n# Direct download — grab talon-<os>-<arch> from the release, verify, run:\nchmod +x talon-linux-x64 && ./talon-linux-x64 --version\n# macOS, if Gatekeeper blocks an unsigned binary:\nxattr -d com.apple.quarantine ./talon-darwin-arm64\n```\n\nVerify a direct download against the release `SHA256SUMS`:\n`sha256sum -c SHA256SUMS --ignore-missing`, and its build provenance with\n`gh attestation verify talon-linux-x64 --repo thefalconry/talon` (see\n[SECURITY.md](SECURITY.md#verifying-a-release)).\n\n**Server only, no Telegram?** Run the daemon with just the client bridge,\nreached by the companion app and talon-node: see\n[docs/server-install.md](docs/server-install.md).\n\n> The binary runs the full interactive/agent CLI (`setup`, `start`, `chat`,\n> `doctor`, …) and supervises MCP children like any other install shape. The one\n> gap: a plugin shipping its MCP server as TypeScript source (`mcpServerPath`)\n> needs a runtime that can execute TS, which a compiled binary is not — those\n> want the npm install. Plugins declaring an explicit `mcpServer` command work\n> everywhere.\n\n---\n\n## Architecture\n\n```\nindex.ts                    Composition root\n  |\n  +-- core/                 Platform-agnostic engine\n  |   +-- agent-runtime/    Backend capability interface, events, stores\n  |   +-- frontend-runtime/ Frontend capability interface + descriptor registry\n  |   +-- models/           Model layer: catalog, per-chat active model,\n  |   |                     reasoning-effort vocabulary\n  |   +-- prompt/           System-prompt assembly + prompts/system templates\n  |   +-- background/       Agents that run without a user message:\n  |   |                     heartbeat, dream, pulse, cron, triggers\n  |   +-- tools/            MCP tool definitions + spawn/env contract\n  |   +-- mcp-hub/          Daemon-hosted MCP over streamable HTTP; supervises\n  |   |                     stdio children with respawn-and-backoff\n  |   +-- engine/           Message flow: dispatcher (per-chat serial,\n  |   |                     cross-chat parallel), HTTP gateway for MCP\n  |   |                     tool calls, backend lifecycle controller\n  |   +-- weaver/           Per-chat live state: a Weaver owns Looms own Threads\n  |   +-- tasks/            Task table — the process table for agent work\n  |   +-- bus/              Typed pub-sub spine + event journal\n  |   +-- vfs/              The talon:// namespace (~/.talon/ns), FUSE-backed\n  |   +-- mesh/             Device mesh: presence, exec/fs channel, teleport\n  |   +-- memory/           Typed memory store policy: core view, import, taps\n  |   +-- scripts/          Run-to-completion execution of saved scripts +\n  |   |                     the WASM-sandboxed Lua runner for trigger scripts\n  |   +-- daemon/           Start / stop / restart, pidfile, discovery\n  |   +-- plugin/           Plugin loader, registry, hot-reload\n  |   +-- update/           Self-update for git-checkout deployments\n  |\n  +-- backend/\n  |   +-- registry.ts       Bootstrap-decoupled backend lookup\n  |   +-- shared/           Cross-backend helpers (stream state, flow violation,\n  |   |                     delivery contract, metrics, prompt format,\n  |   |                     model retry, system prompt, usage)\n  |   +-- remote-server/    Shared infrastructure for agent-server backends\n  |   |                     (MCP registration, sessions, providers, lifecycle)\n  |   +-- claude-sdk/       Claude Agent SDK (in-process MCP, hooks)\n  |   +-- kilo/             Kilo HTTP server backend (streaming via SSE)\n  |   +-- opencode/         OpenCode HTTP server backend\n  |   +-- codex/            Codex CLI backend (`@openai/codex-sdk`)\n  |   +-- agy/              Antigravity CLI backend (headless stream-json)\n  |   +-- openai-agents/    OpenAI Agents SDK backend (Responses API)\n  |\n  +-- frontend/\n  |   +-- factories.ts      Attaches each built-in's lazy `create`\n  |   +-- shared/           Cross-frontend presentation helpers\n  |   +-- telegram/         grammY bot + GramJS userbot\n  |   +-- whatsapp/         Baileys multi-device socket\n  |   +-- discord/          discord.js v14\n  |   +-- teams/            Bot Framework + Graph API\n  |   +-- terminal/         Readline CLI with tool call visibility\n  |   +-- native/           Client bridge (HTTP + SSE) for the companion app\n  |\n  +-- native/               WASM + napi cores (blake3, strsim, textops, sqlguard,\n  |                         htmlents, scheduler, fusefs, warden), each with a\n  |                         pure-TS or wasm fallback\n  +-- storage/              SQLite layer: sessions, history, chat settings, cron,\n  |                         media index, metrics, goals, skills, kv, daily logs\n  +-- util/                 Config, logging, workspace, paths, time, runtime\n```\n\n**Dependency rule:** `core/` imports nothing from `frontend/` or `backend/`. Frontends and backends depend on core types, never on each other. All six backends (Claude SDK, Kilo, OpenCode, Codex, Antigravity, OpenAI Agents) implement the same `Backend` capability interface from `core/agent-runtime/capabilities.ts`. Frontends mirror this: each implements the `Frontend` contract from `core/frontend-runtime/capabilities.ts` and self-registers in the frontend registry (identity + chat-id routing in a descriptor, lazy `create` in a per-frontend `factory.ts`) — see [docs/frontends.md](docs/frontends.md). Kilo and OpenCode additionally share the `remote-server/` infrastructure because they wrap forks of the same upstream HTTP agent server.\n\n**Prompts:** everything the model reads at session start is assembled by `core/prompt/` from the files in `prompts/` — see [prompts/README.md](prompts/README.md) for the assembly order, file ownership (user-editable vs package-owned templates), and the per-backend delivery contracts.\n\n---\n\n## Frontends\n\nSelect via the `frontend` field in `~/.talon/config.json` — one id, or an array to run several at once. Every frontend implements the same `Frontend` contract and registers a descriptor (identity + which chat ids it owns) in the frontend registry, so a chat id routes to its owning frontend with no central switch — see [docs/frontends.md](docs/frontends.md).\n\n| Frontend   | `frontend` value | Transport                                    | Notes                                                                                                                                            |\n| ---------- | ---------------- | -------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------- |\n| Telegram   | `\"telegram\"`     | grammY long-poll (+ optional GramJS userbot) | The widest surface: inline keyboards, reactions, media groups, stickers, polls, admin commands. `apiId` / `apiHash` add userbot history access.  |\n| WhatsApp   | `\"whatsapp\"`     | Baileys multi-device (WebSocket)             | Drives a real WhatsApp account, paired by phone code or QR. Media, reactions, edits, deletes, forwards, polls, locations, contacts, group admin. |\n| Discord    | `\"discord\"`      | discord.js v14 gateway                       | Slash commands, guild / channel allowlists, presence text.                                                                                       |\n| Teams      | `\"teams\"`        | Bot Framework + Graph API                    | Inbound over a Power Automate webhook, outbound over Graph.                                                                                      |\n| Terminal   | `\"terminal\"`     | Local readline                               | Always available via `talon chat`, even when another frontend is configured. Live tool-call visibility.                                          |\n| Native     | `\"native\"`       | HTTP + Server-Sent Events bridge             | The protocol the Flutter companion app speaks — see [Desktop & mobile app](#desktop--mobile-app).                                                |\n\nRunning several is just an array; each chat id keeps its own session and the frontend that owns it answers:\n\n```jsonc\n{ \"frontend\": [\"telegram\", \"whatsapp\", \"native\"] }\n```\n\n### WhatsApp\n\nThe WhatsApp frontend drives a real WhatsApp account over Baileys multi-device — the same mechanism as WhatsApp Web, so no Business API account is involved.\n\n```jsonc\n// ~/.talon/config.json\n{\n  \"frontend\": \"whatsapp\",\n  \"whatsapp\": {\n    // The bot account's own number, E.164 digits, no \"+\". Omit for QR pairing.\n    \"pairingNumber\": \"353871234567\",\n    // Who may DM it — bare numbers or full JIDs. Empty disables DMs.\n    \"allowedJids\": [\"447700900102\"],\n    // Which groups it serves: \"listed\" | \"with-allowed-user\" | \"all\"\n    \"groupPolicy\": \"with-allowed-user\",\n    // In groups: reply only when mentioned/quoted, or to everything\n    \"respondMode\": \"mention\"\n  }\n}\n```\n\nFirst start prints a pairing code (or a QR when `pairingNumber` is omitted) — enter it under **WhatsApp → Linked devices → Link with phone number**. Credentials persist in `~/.talon/whatsapp-auth/`, so later starts reconnect on their own, with backoff across drops.\n\n`groupPolicy: \"with-allowed-user\"` is the useful middle setting: the bot serves any group containing someone from `allowedJids` — \"the groups I'm in\" — without listing group JIDs by hand.\n\nMarkdown from the model is translated into WhatsApp's own dialect (`*bold*`, `_italic_`, `~strike~`, monospace blocks) by walking the parsed token tree rather than by regex, and long replies split on message boundaries instead of truncating.\n\n---\n\n## Backends\n\nSelect via the `backend` field in `~/.talon/config.json`. All backends implement the same `Backend` capability interface — heartbeat, dream, and chat handlers are backend-agnostic.\n\n| Backend    | `backend` value | Transport                                       | Notes                                                                                                                                                                                                            |\n| ---------- | --------------- | ----------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |\n| Claude SDK | `\"claude\"`      | In-process via `@anthropic-ai/claude-agent-sdk` | Requires the `claude` CLI on `PATH`. Hook-based turn termination.                                                                                                                                                |\n| Kilo       | `\"kilo\"`        | Local HTTP server via `@kilocode/sdk`           | SSE-streamed turns. Routes to many model providers via Kilo's auth.                                                                                                                                              |\n| OpenCode   | `\"opencode\"`    | Local HTTP server via `@opencode-ai/sdk`        | SSE-streamed turns; same MCP and session shape as Kilo (upstream fork).                                                                                                                                          |\n| Codex      | `\"codex\"`       | Per-turn subprocess via `@openai/codex-sdk`     | Requires the `codex` CLI from `@openai/codex` and Codex auth (`codex login`, `CODEX_API_KEY`, `TALON_CODEX_KEY`, or `codexApiKey`). MCP servers configured via TOML overrides at thread start. |\n| Antigravity | `\"agy\"` | Long-lived per-chat subprocess (the `agy` CLI, headless stream-json) | Requires the Antigravity CLI on `PATH` (or `agyBinary` / `AGY_BINARY`) and a one-time interactive `agy` sign-in — subscription OAuth, no API key. MCP servers written into `~/.gemini/config/mcp_config.json` before the child spawns. |\n| OpenAI Agents | `\"openai-agents\"` | In-process via `@openai/agents` | Responses API (or any OpenAI-compatible endpoint via `TALON_AGENTS_URL` / `openaiBaseUrl`). Persistent per-chat MCP bundles. |\n\nThe Kilo and OpenCode backends share infrastructure (`backend/remote-server/`) since the upstream HTTP API is the same; each backend supplies its own SDK client, port, and delivery suffix. Codex is its own integration on top of the Codex CLI's JSONL event stream, and Antigravity is its own on top of `agy`'s headless NDJSON protocol.\n\n---\n\n## Desktop & mobile app\n\nThe `native` frontend turns the daemon into a **client bridge** — a versioned HTTP + Server-Sent-Events JSON API (the _Talon Client Bridge Protocol_, `src/frontend/native/protocol.ts`) that any GUI client can speak. The reference client is **[Talon Companion](apps/companion/)**, a single Flutter codebase that runs on **Windows, macOS, Linux, and Android**. The protocol has three independent implementations (daemon, companion, [talon-node](apps/node/)); shared wire fixtures in [protocol/](protocol/) are replayed by all three test suites so a drift on any side fails its CI — see [protocol/README.md](protocol/README.md).\n\n```jsonc\n// ~/.talon/config.json\n{\n  \"frontend\": \"native\",\n  \"native\": { \"host\": \"127.0.0.1\", \"port\": 19880 }\n  // For remote (e.g. a phone): \"host\": \"0.0.0.0\", \"token\": \"your-secret\"\n}\n```\n\n> The old `\"desktop\"` spelling still loads — config normalization rewrites it to\n> `\"native\"` and logs a deprecation — but new configs should say `native`.\n\n- **Local (desktop):** the app connects to a Talon on the same machine and launches one if needed (`TALON_FRONTEND_OVERRIDE=desktop`).\n- **Remote (mobile/LAN):** point the app at `host:port` + token; the bridge requires `Authorization: Bearer …` (or `?token=` on the SSE stream) whenever a token is set.\n- **Encryption:** off-loopback binds serve **HTTPS by default** with a persistent self-signed certificate (`~/.talon/keys/`); the companion pins its SHA-256 fingerprint on first connect and refuses any change afterwards. The daemon logs the fingerprint at startup and `/health` advertises it. Opt out (or in, on loopback) with `\"tls\": false` / `true` in the `native` section.\n- **From anywhere, certificate-only (Immich-style):** put your reverse proxy (Caddy, nginx, Traefik, Cloudflare Tunnel) in front with client-certificate auth; import the `.p12` in the companion, which also switches to your home-network address whenever it answers. Talon still authenticates with its token — see [docs/mtls.md](docs/mtls.md).\n\nThe app **keeps itself up to date** — it watches this repo's releases and installs the next one itself (silently on a rooted/Shizuku phone, swap-and-relaunch on desktop; see [docs/companion-updates.md](docs/companion-updates.md)). It provides multi-chat history, live streaming with reasoning + tool-call visibility, per-chat model/effort/reset, and **settings sync** — read and change the daemon's own config (default model, display name, timezone, pulse/heartbeat/dream) and restart it. See [apps/companion/README.md](apps/companion/README.md).\n\n---\n\n## Managing plugins & skills\n\nBoth stores are managed from the CLI; changes hot-reload into a running\ndaemon (plugins) or apply on the next session (skills):\n\n```bash\n# Plugins — npm specs, git repos, or local paths\ntalon plugin install @scope/my-talon-plugin        # npm → module plugin\ntalon plugin install some-mcp-server --mcp         # npm → standalone MCP server (npx)\ntalon plugin install owner/repo                    # git → module plugin\ntalon plugin install owner/repo#<sha>              # …at that commit (or --commit <sha>)\ntalon plugin list                                  # built-ins + configured entries\ntalon plugin disable github                        # also toggles built-ins\ntalon plugin remove my-talon-plugin\n\n# Skills — SKILL.md folders from local paths, git URLs, or owner/repo[/subpath]\ntalon skill install anthropics/skills/document-skills/pdf\ntalon skill install ./my-skill --force\ntalon skill list\ntalon skill disable pdf                            # hidden from the prompt index, still readable\ntalon skill remove pdf\n```\n\nModule plugins install under `~/.talon/plugins/`; standalone MCP servers are\nregistered as `npx` entries in `config.json`. A git source can be pinned to a\ncommit with `#<sha>` or `--commit <sha>` (7-64 hex digits): Talon checks that\ncommit out and verifies HEAD before installing. Either way the install\nfolder's `.talon-install.json` records the repo and the exact commit. Disabling keeps the entry (or a\n`.disabled` marker in the skill folder) so enabling restores it unchanged.\n\n## Built-in Plugins\n\n### GitHub\n\nGitHub API access via the official GitHub MCP server. Gives the agent access to repositories, issues, PRs, code search, and more.\n\n**Requirements:** Docker installed and running.\n\n```json\n{\n  \"github\": {\n    \"enabled\": true,\n    \"token\": \"ghp_...\"\n  }\n}\n```\n\nThe token is optional --- defaults to the output of `gh auth token` if the GitHub CLI is authenticated.\n\nThe server image is pinned to a known-good tag and pulled in the background at boot when absent (docker still pulls on first use as the fallback). Override with `\"imageTag\"` (`\"latest\"` opts out of pinning); `\"autoProvision\": false` disables the pre-pull.\n\n### Long-term Memory\n\nTalon supports two long-term memory backends, selected via the unified `memory` section:\n\n```json\n{\n  \"memory\": {\n    \"enabled\": true,\n    \"backend\": \"mempalace\"\n  }\n}\n```\n\nSet `\"backend\"` to `\"mempalace\"` (local, vector search + knowledge graph) or `\"mem0\"` ([mem0](https://github.com/mem0ai/mem0) hosted platform or self-hosted server). Backend-specific settings go in a matching `memory.mempalace` / `memory.mem0` sub-object. The legacy top-level `mempalace` section is still honored when `memory` is absent.\n\n#### MemPalace backend\n\nStructured long-term memory with vector search. The agent can store, search, and retrieve memories semantically. Integrates with Dream mode for automatic memory consolidation and personal diary entries.\n\n**Requirements:** Python 3.10+ on PATH. Nothing else — Talon provisions its own environment.\n\nOn first boot Talon creates a venv at `~/.talon/mempalace-venv` and installs the pinned `mempalace` version into it. From then on the venv is **self-maintaining**: version drift against the pin reconciles automatically in the background, a broken install (half-written site-packages, a gutted venv) self-heals at the next start, and one-time palace data migrations (e.g. the ≥3.4 wing-name normalization) are applied exactly once, safely and idempotently. Failed upgrades never take the working install down — the current version keeps serving and the retry backs off.\n\n```json\n{\n  \"memory\": {\n    \"enabled\": true,\n    \"backend\": \"mempalace\",\n    \"mempalace\": {\n      \"palacePath\": \"~/.talon/workspace/palace\",\n      \"version\": \"3.10.0\",\n      \"autoUpdate\": true,\n      \"autoProvision\": true\n    }\n  }\n}\n```\n\nEverything is optional --- `palacePath` defaults to `~/.talon/workspace/palace/`, `version` defaults to the built-in pin, and both `auto*` flags default to `true`. Leave `pythonPath` unset to use the managed venv --- its interpreter is `~/.talon/mempalace-venv/bin/python` on Linux/macOS and `~/.talon/mempalace-venv/Scripts/python.exe` on Windows; any other value is treated as operator-managed (see below). `autoProvision` governs creating and healing the venv; `autoUpdate` governs reconciling a working venv to the pin --- they are independent.\n\n**Bring your own environment:** point `pythonPath` at any interpreter — a `uv tool` install, pipx, conda, or your own venv — and Talon treats it as operator-managed: it is probed and reported on (`talon doctor` shows the exact upgrade command for your install flavor) but never mutated.\n\n#### mem0 backend\n\nLong-term memory via [mem0](https://mem0.ai) --- mem0 extracts durable facts from what the agent stores and retrieves them by semantic search. Works against the hosted platform (API key) or a self-hosted mem0 server.\n\n**Requirements:** None --- the `mem0ai` SDK is bundled with Talon.\n\n```json\n{\n  \"memory\": {\n    \"enabled\": true,\n    \"backend\": \"mem0\",\n    \"mem0\": {\n      \"apiKey\": \"m0-...\",\n      \"userId\": \"talon\"\n    }\n  }\n}\n```\n\n`apiKey` defaults to the `MEM0_API_KEY` env var. For a self-hosted server set `\"host\"` instead --- the key is then optional. `userId` is the entity id memories are filed under (default `\"talon\"`).\n\n### Playwright\n\nHeadless browser automation via the Playwright MCP server. The agent can browse websites, take screenshots, generate PDFs, fill forms, and scrape content.\n\n**Requirements:** None --- `@playwright/mcp` is bundled with Talon.\n\n```json\n{\n  \"playwright\": {\n    \"enabled\": true,\n    \"browser\": \"chromium\",\n    \"headless\": true\n  }\n}\n```\n\nSupported browsers: `chromium` (default), `chrome`, `firefox`, `webkit`, `msedge`.\n\nFor Playwright-managed engines (`chromium`, `firefox`, `webkit`) the browser build is downloaded automatically at boot when missing — version-matched to the bundled `@playwright/mcp`. System channels (`chrome`, `msedge`) and endpoint mode are never touched. `\"autoProvision\": false` disables the download.\n\n### Brave Search\n\nWeb search via the Brave Search MCP server. Replaces the built-in WebSearch/WebFetch tools with higher-quality search results.\n\n```json\n{\n  \"braveApiKey\": \"BSA...\"\n}\n```\n\nGet an API key at [brave.com/search/api](https://brave.com/search/api/).\n\n---\n\n## Custom Plugins\n\nPlugins add MCP tools and gateway actions without modifying core code. SOLID interface --- only `name` is required.\n\n```json\n{\n  \"plugins\": [{ \"path\": \"/path/to/my-plugin\", \"config\": { \"apiKey\": \"...\" } }]\n}\n```\n\n```typescript\nexport default {\n  name: \"my-plugin\",\n  version: \"1.0.0\",\n  mcpServerPath: resolve(import.meta.dirname, \"tools.ts\"),\n  validateConfig(config) {\n    /* return errors or undefined */\n  },\n  getEnvVars(config) {\n    return { MY_KEY: config.apiKey };\n  },\n  handleAction(body, chatId) {\n    /* gateway action handler */\n  },\n  getSystemPromptAddition(config) {\n    return \"## My Plugin\\n...\";\n  },\n  init(config) {\n    /* one-time setup */\n  },\n  destroy() {\n    /* cleanup */\n  },\n};\n```\n\nPlugins support hot-reload via the `reload_plugins` MCP tool --- no restart required.\n\n---\n\n## CLI\n\n```\ntalon           Interactive menu (runs setup on first launch)\ntalon setup     Guided setup wizard\ntalon start     Start as a background daemon\ntalon stop      Stop the daemon\ntalon restart   Restart the daemon\ntalon run       Run in the foreground, attached\ntalon chat      Terminal chat mode (always available)\ntalon status    Health, sessions, plugins, runtime, disk usage\ntalon ps        List agent tasks (--all includes journal history)\ntalon kill      Abort a killable task by id\ntalon events    Tail the event bus (-f follows, --history [N] reads the journal)\ntalon plugin    Manage plugins (install / enable / disable / remove)\ntalon skill     Manage skills (install / enable / disable / remove)\ntalon history   Chat history kept by Talon (show / hidden / purge — docs/chat-history.md)\ntalon config    View or edit configuration\ntalon logs      Tail structured log file\ntalon doctor    Validate environment and dependencies\n```\n\n---\n\n## Configuration\n\nConfig file: `~/.talon/config.json`\n\n| Field                      | Default      | Description                                                                                                             |\n| -------------------------- | ------------ | ----------------------------------------------------------------------------------------------------------------------- |\n| `frontend`                 | `\"telegram\"` | `\"telegram\"`, `\"whatsapp\"`, `\"discord\"`, `\"teams\"`, `\"terminal\"`, `\"native\"`, or an array ([Frontends](#frontends))      |\n| `backend`                  | `\"claude\"`   | `\"claude\"`, `\"kilo\"`, `\"opencode\"`, `\"codex\"`, `\"agy\"`, or `\"openai-agents\"`                                            |\n| `botToken`                 | ---          | Telegram bot token                                                                                                      |\n| `model`                    | `\"default\"`  | Default model. Interpretation depends on the active backend.                                                            |\n| `agyBinary`                | ---          | Path to the Antigravity `agy` executable. `AGY_BINARY` overrides it. |\n| `codexApiKey`              | ---          | Codex-only OpenAI API key. Prefer this over `openaiApiKey` for Codex API-key auth. `codex login` takes precedence over shared `openaiApiKey`. |\n| `codexChatGptDefaultModel` | ---          | Model a ChatGPT-login Codex session falls back to when a model is rejected or none is set. Default: the Codex CLI's own default for the account (from `~/.codex/models_cache.json`). `TALON_CODEX_CHATGPT_MODEL` overrides it. |\n| `concurrency`              | `1`          | Max concurrent AI queries (1--20)                                                                                       |\n| `pulse`                    | `true`       | Periodic group engagement                                                                                               |\n| `heartbeat`                | `false`      | Background maintenance agent                                                                                            |\n| `heartbeatIntervalMinutes` | `60`         | Heartbeat interval                                                                                                      |\n| `heartbeatModel`           | ---          | Model for the heartbeat agent (falls back to `model`)                                                                   |\n| `heartbeatEffort`          | ---          | Reasoning effort for the heartbeat agent: `off`, `minimal`, `low`, `medium`, `high`, `xhigh`, `max`. Unset = the model's own default |\n| `alerts`                   | on           | Operator alerts to the admin chat — full disk, crash, error spike, dead frontend — once per fault per cooldown, plus a recovery notice: `{ \"enabled\": true, \"cooldownMinutes\": 30 }`. Active alerts also show in `talon status` |\n| `router`                   | ---          | Plan-aware routing for background work: `{ \"enabled\": true, \"ceilingPercent\": 85 }`. Unpinned sub-agents, cron `query` jobs and heartbeats run on whichever backend has the most plan headroom, skipping any whose tightest window is at or above the ceiling. `enabled: false` restores inherit-the-caller's-backend ([Backends](docs/backends.md)) |\n| `backendBudgets`           | ---          | Soft token budgets for backends with no usage API, e.g. `{ \"openai-agents\": { \"tokensPer5h\": 2000000, \"tokensPerDay\": 8000000 } }`. Talon's own rolling ledger is measured against these so such a backend still has a headroom signal — and it is what opts an idle backend into routing. `agy` reports its real quota windows (via `agy -p /usage`); a budget there is only a fallback for when that read fails |\n| `dreamModel`               | ---          | Model for dream / memory consolidation (falls back to `model`)                                                          |\n| `dreamEffort`              | ---          | Reasoning effort for the dream agent — same levels as `heartbeatEffort`                                                 |\n| `braveApiKey`              | ---          | Brave Search API key                                                                                                    |\n| `fetchUrl`                 | ---          | `fetch_url` reaches every address by default, LAN and loopback included. `{ \"allowPrivateNetworks\": false }` opts into the SSRF guard (refuses private, loopback, link-local and metadata addresses on every redirect hop) — worth it on a cloud VM |\n| `timezone`                 | ---          | IANA timezone (e.g. `\"Europe/London\"`)                                                                                  |\n| `plugins`                  | `[]`         | External plugin packages                                                                                                |\n| `disabledToolTags`         | ---          | Hide whole tool groups from the model (e.g. `[\"stickers\", \"web\"]`) — each registered tool costs context tokens per session |\n| `disabledTools`            | ---          | Hide individual tools by name (`end_turn` cannot be disabled)                                                           |\n| `adminUserId`              | ---          | Telegram user ID for `/admin` commands                                                                                  |\n| `allowedUsers`             | ---          | Whitelist of Telegram user IDs                                                                                          |\n| `allowedGroups`            | ---          | Telegram group IDs the bot serves. Unset: groups the admin is in are still admitted (legacy, warned at startup)          |\n| `operatorIds`              | ---          | Extra operator identities (`\"123\"`, `\"wa_dm_<number>\"`, `\"discord:<id>\"`, `\"teams:<id>\"`) — only operators get the full tool set |\n| `guestDmScope`             | on           | Conversation-only tools for non-operator senders. Always applied in groups; `enabled: false` exempts DMs (legacy)       |\n| `apiId` / `apiHash`        | ---          | Telegram API credentials for full message history                                                                       |\n| `whatsapp`                 | ---          | WhatsApp frontend: pairing, allowlists, group policy ([above](#whatsapp))                                               |\n| `discord`                  | ---          | Discord frontend: bot token, application ID, guild / channel allowlists                                                 |\n| `native`                   | ---          | Client bridge: host, port, token, TLS ([above](#desktop--mobile-app)). `companionScopes` (default all three) narrows what a paired companion's credential may do ([docs/mesh-credentials.md](docs/mesh-credentials.md)) |\n| `nativeTools`              | `false`      | Swap the SDK's built-in Read/Write/Edit/Bash/Glob/Grep for Talon's own — these also route to a teleported device        |\n| `fuse`                     | `\"auto\"`     | Mount the `talon://` namespace with FUSE live views; falls back to a symlink farm where the host can't                  |\n| `github`                   | ---          | GitHub plugin config (see above)                                                                                        |\n| `memory`                   | ---          | Long-term memory backend selection: `mempalace` or `mem0` (see above)                                                   |\n| `mempalace`                | ---          | Legacy MemPalace plugin config (prefer `memory`)                                                                        |\n| `playwright`               | ---          | Playwright plugin config (see above)                                                                                    |\n| `triggers`                 | ---          | Per-chat trigger caps, e.g. `{ \"maxActivePerChat\": 5, \"maxPersistentPerChat\": 3 }` ([Scaling limits](#scaling-limits)) |\n| `agents`                   | ---          | Sub-agent caps: `{ \"maxConcurrent\": 6, \"maxDepth\": 2, \"defaultTimeoutMs\": 900000 }` ([docs/agents.md](docs/agents.md)) |\n\n### Scaling limits\n\nTwo caps bound how much background work Talon keeps alive. Both keep their\nhistorical defaults and are raised in `~/.talon/config.json`; the error a\ncapped tool returns names the key to raise.\n\n| Key                             | Default | Bounds | What it caps                                                 |\n| ------------------------------- | ------- | ------ | ------------------------------------------------------------ |\n| `triggers.maxActivePerChat`     | `5`     | 1–50   | Active (running or pending) triggers per chat                |\n| `triggers.maxPersistentPerChat` | unset   | 1–50   | Optional separate budget for persistent triggers (see below) |\n| `agents.maxConcurrent`          | `6`     | 1–64   | Live sub-agents daemon-wide, children included               |\n\nWith `maxPersistentPerChat` unset, persistent and ad-hoc triggers share\n`maxActivePerChat`, exactly as before. Set it and the two draw from separate\nbudgets: persistent triggers count only against `maxPersistentPerChat`, and\n`maxActivePerChat` then bounds ad-hoc (non-persistent) triggers only — so a\nchat running long-lived watchers still has room for a short CI wait. Caps are\nchecked at `trigger_create`; lowering one never kills a trigger already\nrunning, and persistent triggers resumed after a restart are not re-checked.\n\n```json\n\"triggers\": { \"maxActivePerChat\": 5, \"maxPersistentPerChat\": 6 },\n\"agents\": { \"maxConcurrent\": 12 }\n```\n\n### Background reasoning effort\n\n`heartbeatEffort` / `dreamEffort` set how hard the background agents think —\nuseful when you want unattended goal work to reason harder than a chat turn,\nor hourly heartbeats to stay cheap. Chat effort stays per-chat (`/settings`).\n\nWhich levels a model accepts comes from its catalog entry, so the usable set\ndiffers per model (`max` is Claude's ceiling, `xhigh` is Codex's). A level the\nmodel doesn't offer is dropped — the run proceeds on the model default, the\nreason is written to the run log, and the boot-time model audit warns about it.\nBackends with no reasoning knob at all (Kilo, OpenCode) ignore the setting.\n\n---\n\n## Terminal Mode\n\n```bash\nnpx talon chat\n```\n\nTool calls shown in real-time with parameters. Streaming phase indicators (thinking / responding / using tools). Per-turn stats: duration, tokens, cache hit rate, tool count.\n\nCommands: `/model`, `/effort`, `/context`, `/status`, `/reset`, `/rename`, `/resume`, `/help`, `/quit`\n\n---\n\n## Production\n\n**Docker:** the image runs the daemon on Bun (`bun src/index.ts`); `~/.talon` and `~/.claude` are bind-mounted from the host into the container's `HOME=/home/bun`. Prebuilt images are on GHCR (`ghcr.io/thefalconry/talon:latest`), and a first boot can be configured entirely from `TALON_*` environment variables — see **[docs/docker.md](docs/docker.md)** for the quick install, and **[docs/truenas.md](docs/truenas.md)** for a step-by-step TrueNAS SCALE install.\n\n```bash\ndocker compose up -d\n```\n\nA Node 24 + tsx image is kept as a fallback for one release cycle: `docker build --build-arg RUNTIME=node -t talon .` (or set `build.args.RUNTIME` in `docker-compose.yml`). Mount paths are the same for both. See [`packaging/README.md`](packaging/README.md#docker-image) for the build's details.\n\nThe image is also ready for the **Antigravity (`agy`) backend**: add `-f docker-compose.agy.yml` to mount `~/.gemini` and the `agy` binary (or bake the binary in with `AGY_DOWNLOAD_URL` + `AGY_SHA256`). See [docs/docker.md](docs/docker.md#antigravity-agy-backend).\n\n**Systemd:** unit file at `packaging/systemd/talon.service` — copy to `/etc/systemd/system/`, set `User=` and `WorkingDirectory=`, then `systemctl enable --now talon`.\n\n**Health endpoint:** `GET http://localhost:19876/health` returns the daemon's identity (`app`, `mode`, `pid`, `port`, `startedAt`, `ok`). With the gateway token (`Authorization: Bearer $(cat ~/.talon/keys/gateway-token)`) it also returns uptime, memory, queue depth, active sessions, and last activity timestamp. Every other gateway route requires that token.\n\n**Logging:** Structured JSON via pino to `~/.talon/talon.log`. Rotated on startup when the file exceeds 10MB.\n\n**Resilience:** Dynamic model fallback on overload, session auto-retry on expiry, rate limit handling with backoff, atomic file writes, graceful shutdown with 15-second drain timeout.\n\n---\n\n## Development\n\n```bash\nnpm run dev              # watch mode (Bun)\nnpm run dev:node         # watch mode (Node + tsx)\nnpm test                 # 4500+ tests across unit / SDK-stub / MCP-functional / integration tiers\nnpm run test:coverage    # with coverage report\nnpm run typecheck        # tsc --noEmit\nnpm run lint             # oxlint\nnpm run format           # prettier --write\nnpm run depcruise        # dependency-cruiser — enforces the core/ import rule\nnpm run knip             # unused files, exports, and dependencies\n```\n\nCI runs the full suite on Node 24 across Linux, macOS, and Windows; a separate\njob compiles the standalone `bun build --compile` binary on all three and\nsmoke-tests the CLI and the MCP supervisor from it.\n\n---\n\n\n## License\n\nApache License 2.0 — see [LICENSE](LICENSE).\n\nReleases up to and including v5.18.1 were published under the MIT License,\nkept at [LICENSE-MIT](LICENSE-MIT). That grant is irrevocable for those\nversions and still covers the contributions made under it — see [NOTICE](NOTICE).\n","readmeFilename":"README.md"}