{"_id":"@apilium/mayros","_rev":"22-6b7daa1e8f1516df24331decd66fad4b","name":"@apilium/mayros","dist-tags":{"latest":"0.3.2"},"versions":{"0.1.0":{"name":"@apilium/mayros","version":"0.1.0","keywords":[],"author":{"name":"Apilium Technologies"},"license":"MIT","_id":"@apilium/mayros@0.1.0","maintainers":[{"name":"apilium-ai","email":"it@apilium.com"}],"homepage":"https://apilium.com/mayros","bugs":{"url":"https://github.com/ApiliumCode/mayros/issues"},"bin":{"mayros":"mayros.mjs"},"dist":{"shasum":"1426024311678529230a82cea4db427e4fbbf93b","tarball":"https://registry.npmjs.org/@apilium/mayros/-/mayros-0.1.0.tgz","fileCount":3881,"integrity":"sha512-s0O0dqHUPYlvNKCLRUy/vh9zhX/CXVdAqAqmeu4Q/A7cnJ3Ivsni4DW9T2uzAM5LUqeFWMosZFQjE3r8AJLa6w==","signatures":[{"sig":"MEYCIQC5RruQX5bp8kwytTLGTN8FGuekkA3qI7j4QQHOUUeLggIhAN4niS0CLMoWLGcgRZyxnJTF+D1oHqUf8T8s6uJoPhcy","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":49036926},"main":"dist/index.js","pnpm":{"overrides":{"qs":"6.14.2","tar":"7.5.9","hono":"4.11.10","request":"npm:@cypress/request@3.0.10","form-data":"2.5.4","minimatch":"10.2.1","tough-cookie":"4.1.3","fast-xml-parser":"5.3.6","request-promise":"npm:@cypress/request-promise@5.0.0","@sinclair/typebox":"0.34.48"},"minimumReleaseAge":2880,"onlyBuiltDependencies":["@lydell/node-pty","@matrix-org/matrix-sdk-crypto-nodejs","@napi-rs/canvas","@whiskeysockets/baileys","authenticate-pam","esbuild","koffi","node-llama-cpp","protobufjs","sharp"]},"type":"module","engines":{"node":">=22.12.0"},"exports":{".":"./dist/index.js","./cli-entry":"./mayros.mjs","./plugin-sdk":{"types":"./dist/plugin-sdk/index.d.ts","default":"./dist/plugin-sdk/index.js"},"./plugin-sdk/account-id":{"types":"./dist/plugin-sdk/account-id.d.ts","default":"./dist/plugin-sdk/account-id.js"}},"gitHead":"a014ab47beca507025c5fd6575833e2b1ee97b81","scripts":{"dev":"node scripts/run-node.mjs","tui":"node scripts/run-node.mjs tui","lint":"oxlint --type-aware","test":"node scripts/test-parallel.mjs","build":"pnpm canvas:a2ui:bundle && tsdown && pnpm build:plugin-sdk:dts && node --import tsx scripts/write-plugin-sdk-entry-dts.ts && node --import tsx scripts/canvas-a2ui-copy.ts && node --import tsx scripts/copy-hook-metadata.ts && node --import tsx scripts/copy-export-html-templates.ts && node --import tsx scripts/write-build-info.ts && node --import tsx scripts/write-cli-compat.ts","check":"pnpm format:check && pnpm tsgo && pnpm lint","start":"node scripts/run-node.mjs","format":"oxfmt --write","mayros":"node scripts/run-node.mjs","ui:dev":"node scripts/ui.js dev","ios:gen":"bash -lc './scripts/ios-configure-signing.sh && cd apps/ios && xcodegen generate'","ios:run":"bash -lc './scripts/ios-configure-signing.sh && cd apps/ios && xcodegen generate && xcodebuild -project Mayros.xcodeproj -scheme Mayros -destination \"${IOS_DEST:-platform=iOS Simulator,name=iPhone 17}\" -configuration Debug build && xcrun simctl boot \"${IOS_SIM:-iPhone 17}\" || true && xcrun simctl launch booted ai.mayros.ios'","prepack":"pnpm build && pnpm ui:build","prepare":"command -v git >/dev/null 2>&1 && git rev-parse --is-inside-work-tree >/dev/null 2>&1 && git config core.hooksPath git-hooks || exit 0","test:ui":"pnpm --dir ui test","tui:dev":"MAYROS_PROFILE=dev node scripts/run-node.mjs --dev tui","docs:bin":"node scripts/build-docs-list.mjs","docs:dev":"cd docs && mint dev","ios:open":"bash -lc './scripts/ios-configure-signing.sh && cd apps/ios && xcodegen generate && open Mayros.xcodeproj'","lint:all":"pnpm lint && pnpm lint:swift","lint:fix":"oxlint --type-aware --fix && pnpm format","mac:open":"open dist/Mayros.app","test:all":"pnpm lint && pnpm build && pnpm test && pnpm test:e2e && pnpm test:live && pnpm test:docker:all","test:e2e":"vitest run --config vitest.e2e.config.ts","ui:build":"node scripts/ui.js build","check:loc":"node --import tsx scripts/check-ts-max-loc.ts --max 500","docs:list":"node scripts/docs-list.js","ios:build":"bash -lc './scripts/ios-configure-signing.sh && cd apps/ios && xcodegen generate && xcodebuild -project Mayros.xcodeproj -scheme Mayros -destination \"${IOS_DEST:-platform=iOS Simulator,name=iPhone 17}\" -configuration Debug build'","lint:docs":"pnpm dlx markdownlint-cli2","test:fast":"vitest run --config vitest.unit.config.ts","test:live":"MAYROS_LIVE_TEST=1 vitest run --config vitest.live.config.ts","check:docs":"pnpm format:docs:check && pnpm lint:docs && pnpm docs:check-links","format:all":"pnpm format && pnpm format:swift","format:fix":"oxfmt --write","lint:swift":"swiftlint lint --config .swiftlint.yml && (cd apps/ios && swiftlint lint --config .swiftlint.yml)","mayros:rpc":"node scripts/run-node.mjs agent --mode rpc --json","test:force":"node --import tsx scripts/test-force.ts","test:watch":"vitest","ui:install":"node scripts/ui.js install","android:run":"cd apps/android && ./gradlew :app:installDebug && adb shell am start -n ai.mayros.android/.MainActivity","deadcode:ci":"pnpm deadcode:report:ci:knip && pnpm deadcode:report:ci:ts-prune && pnpm deadcode:report:ci:ts-unused","format:diff":"oxfmt --write && git --no-pager diff","format:docs":"git ls-files 'docs/**/*.md' 'docs/**/*.mdx' 'README.md' | xargs oxfmt --write","gateway:dev":"MAYROS_SKIP_CHANNELS=1 node scripts/run-node.mjs --dev gateway","mac:package":"bash scripts/package-mac-app.sh","mac:restart":"bash scripts/restart-mac.sh","postinstall":"node scripts/postinstall.mjs","android:test":"cd apps/android && ./gradlew :app:testDebugUnitTest","format:check":"oxfmt --check","format:swift":"swiftformat --lint --config .swiftformat apps/macos/Sources apps/ios/Sources apps/shared/MayrosKit/Sources","plugins:sync":"node --import tsx scripts/sync-plugin-versions.ts","protocol:gen":"node --import tsx scripts/protocol-gen.ts","test:macmini":"MAYROS_TEST_VM_FORKS=0 MAYROS_TEST_PROFILE=serial node scripts/test-parallel.mjs","deadcode:knip":"pnpm dlx knip --no-progress","gateway:watch":"node scripts/watch-node.mjs gateway --force","lint:docs:fix":"pnpm dlx markdownlint-cli2 --fix","release:check":"node --import tsx scripts/release-check.ts","test:coverage":"vitest run --config vitest.unit.config.ts --coverage","cortex:install":"tsx scripts/install-cortex.ts","protocol:check":"pnpm protocol:gen && pnpm protocol:gen:swift && git diff --exit-code -- dist/protocol.schema.json apps/macos/Sources/MayrosProtocol/GatewayModels.swift","test:docker:qr":"bash scripts/e2e/qr-import-docker.sh","android:install":"cd apps/android && ./gradlew :app:installDebug","deadcode:report":"pnpm deadcode:knip; pnpm deadcode:ts-prune; pnpm deadcode:ts-unused","docs:spellcheck":"bash scripts/docs-spellcheck.sh","test:docker:all":"pnpm test:docker:live-models && pnpm test:docker:live-gateway && pnpm test:docker:onboard && pnpm test:docker:gateway-network && pnpm test:docker:qr && pnpm test:docker:doctor-switch && pnpm test:docker:plugins && pnpm test:docker:cleanup","android:assemble":"cd apps/android && ./gradlew :app:assembleDebug","docs:check-links":"node scripts/docs-link-audit.mjs","test:install:e2e":"bash scripts/test-install-sh-e2e-docker.sh","deadcode:ts-prune":"pnpm dlx ts-prune src extensions scripts","format:docs:check":"git ls-files 'docs/**/*.md' 'docs/**/*.mdx' 'README.md' | xargs oxfmt --check","gateway:dev:reset":"MAYROS_SKIP_CHANNELS=1 node scripts/run-node.mjs --dev gateway --reset","canvas:a2ui:bundle":"bash scripts/bundle-a2ui.sh","deadcode:ts-unused":"pnpm dlx ts-unused-exports tsconfig.json --ignoreTestFiles --exitWithCount","protocol:gen:swift":"node --import tsx scripts/protocol-gen-swift.ts","test:install:smoke":"bash scripts/test-install-sh-docker.sh","docs:spellcheck:fix":"bash scripts/docs-spellcheck.sh --write","test:docker:cleanup":"bash scripts/test-cleanup-docker.sh","test:docker:onboard":"bash scripts/e2e/onboard-docker.sh","test:docker:plugins":"bash scripts/e2e/plugins-docker.sh","build:plugin-sdk:dts":"tsc -p tsconfig.plugin-sdk.dts.json","deadcode:report:ci:knip":"mkdir -p .artifacts/deadcode && pnpm deadcode:knip > .artifacts/deadcode/knip.txt 2>&1 || true","test:docker:live-models":"bash scripts/test-live-models-docker.sh","test:install:e2e:openai":"MAYROS_E2E_MODELS=openai bash scripts/test-install-sh-e2e-docker.sh","test:docker:live-gateway":"bash scripts/test-live-gateway-models-docker.sh","test:docker:doctor-switch":"bash scripts/e2e/doctor-install-switch-docker.sh","test:voicecall:closedloop":"vitest run extensions/voice-call/src/manager.test.ts extensions/voice-call/src/media-stream.test.ts src/plugins/voice-call.plugin.test.ts --maxWorkers=1","test:install:e2e:anthropic":"MAYROS_E2E_MODELS=anthropic bash scripts/test-install-sh-e2e-docker.sh","deadcode:report:ci:ts-prune":"mkdir -p .artifacts/deadcode && pnpm deadcode:ts-prune > .artifacts/deadcode/ts-prune.txt 2>&1 || true","test:docker:gateway-network":"bash scripts/e2e/gateway-network-docker.sh","deadcode:report:ci:ts-unused":"mkdir -p .artifacts/deadcode && pnpm deadcode:ts-unused > .artifacts/deadcode/ts-unused-exports.txt 2>&1 || true"},"_npmUser":{"name":"apilium-ai","email":"it@apilium.com"},"repository":{"url":"git+https://github.com/ApiliumCode/mayros.git","type":"git"},"_npmVersion":"11.6.0","description":"Multi-channel AI agent framework — la era de la IA con certezas","directories":{"doc":"docs","test":"test"},"_nodeVersion":"24.8.0","dependencies":{"ws":"^8.19.0","ajv":"^8.18.0","tar":"7.5.9","zod":"^4.3.6","jiti":"^2.6.1","long":"^5.3.2","yaml":"^2.8.2","chalk":"^5.6.2","json5":"^2.2.3","jszip":"^3.10.1","sharp":"^0.34.5","tslog":"^4.10.2","croner":"^10.0.1","dotenv":"^17.3.1","grammy":"^1.40.0","semver":"^7.7.4","undici":"^7.22.0","express":"^5.2.1","chokidar":"^5.0.0","linkedom":"^0.18.12","commander":"^14.0.3","file-type":"^21.3.0","opusscript":"^0.0.8","pdfjs-dist":"^5.4.624","sqlite-vec":"0.1.7-alpha.2","@slack/bolt":"^4.6.0","markdown-it":"^14.1.1","osc-progress":"^0.3.0","@buape/carbon":"0.0.0-beta-20260216184201","@line/bot-sdk":"^10.6.0","cli-highlight":"^2.1.11","node-edge-tts":"^1.2.10","@clack/prompts":"^1.0.1","@slack/web-api":"^7.14.1","@discordjs/opus":"^0.10.0","playwright-core":"1.58.2","qrcode-terminal":"^0.12.0","@discordjs/voice":"^0.19.0","@grammyjs/runner":"^2.0.3","@homebridge/ciao":"^1.3.5","@lydell/node-pty":"1.2.0-beta.3","@sinclair/typebox":"0.34.48","discord-api-types":"^0.38.40","https-proxy-agent":"^7.0.6","quickjs-emscripten":"^0.31.0","@mariozechner/pi-ai":"0.54.0","@mariozechner/pi-tui":"0.54.0","@mozilla/readability":"^0.6.0","@aws-sdk/client-bedrock":"^3.995.0","@whiskeysockets/baileys":"7.0.0-rc.9","@agentclientprotocol/sdk":"0.14.1","@mariozechner/pi-agent-core":"0.54.0","@mariozechner/pi-coding-agent":"0.54.0","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"packageManager":"pnpm@10.23.0","devDependencies":{"lit":"^3.3.2","tsx":"^4.21.0","oxfmt":"0.34.0","oxlint":"^1.49.0","tsdown":"^0.20.3","vitest":"^4.0.18","@types/ws":"^8.18.1","typescript":"^5.9.3","@types/node":"^25.3.0","@lit/context":"^1.1.6","signal-utils":"0.21.1","@types/semver":"^7.7.1","@types/express":"^5.0.6","@grammyjs/types":"^3.24.0","oxlint-tsgolint":"^0.14.2","@lit-labs/signals":"^0.2.0","@types/markdown-it":"^14.1.2","@vitest/coverage-v8":"^4.0.18","@types/qrcode-terminal":"^0.12.2","@typescript/native-preview":"7.0.0-dev.20260221.1"},"peerDependencies":{"node-llama-cpp":"3.15.1","@napi-rs/canvas":"^0.1.89"},"_npmOperationalInternal":{"tmp":"tmp/mayros_0.1.0_1772063754685_0.934739319214474","host":"s3://npm-registry-packages-npm-production"}},"0.1.1":{"name":"@apilium/mayros","version":"0.1.1","keywords":[],"author":{"name":"Apilium Technologies"},"license":"MIT","_id":"@apilium/mayros@0.1.1","maintainers":[{"name":"apilium-ai","email":"it@apilium.com"}],"homepage":"https://apilium.com/mayros","bugs":{"url":"https://github.com/ApiliumCode/mayros/issues"},"bin":{"mayros":"mayros.mjs"},"dist":{"shasum":"ce6a68651db03304bf48adbde7e04738edcf4549","tarball":"https://registry.npmjs.org/@apilium/mayros/-/mayros-0.1.1.tgz","fileCount":3996,"integrity":"sha512-mtW1hseokxhgGsx5fvekJ+HeDngsyIV9iPC3Btk0r6hfzG+UGx5gc0vX5+aM0YShk0bC1k3lbYs6GrpeC6Dyng==","signatures":[{"sig":"MEUCIAmPo190lvah7JP4zJk9tAQ8RGwaL9VCOJvctNeQ0l7UAiEAhnEhscT0ZtjZ+Fkly+eI+zGF52GY/ihF5pBOk6v/G3M=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":49181465},"main":"dist/index.js","pnpm":{"overrides":{"qs":"6.14.2","tar":"7.5.9","hono":"4.11.10","request":"npm:@cypress/request@3.0.10","form-data":"2.5.4","minimatch":"10.2.1","tough-cookie":"4.1.3","fast-xml-parser":"5.3.6","request-promise":"npm:@cypress/request-promise@5.0.0","@sinclair/typebox":"0.34.48"},"minimumReleaseAge":2880,"onlyBuiltDependencies":["@lydell/node-pty","@matrix-org/matrix-sdk-crypto-nodejs","@napi-rs/canvas","@whiskeysockets/baileys","authenticate-pam","esbuild","koffi","node-llama-cpp","protobufjs","sharp"]},"type":"module","engines":{"node":">=22.12.0"},"exports":{".":"./dist/index.js","./cli-entry":"./mayros.mjs","./plugin-sdk":{"types":"./dist/plugin-sdk/index.d.ts","default":"./dist/plugin-sdk/index.js"},"./plugin-sdk/account-id":{"types":"./dist/plugin-sdk/account-id.d.ts","default":"./dist/plugin-sdk/account-id.js"}},"gitHead":"addc82c5e17bda24fd2058a7c76810a4e9707771","scripts":{"dev":"node scripts/run-node.mjs","tui":"node scripts/run-node.mjs tui","lint":"oxlint --type-aware","test":"node scripts/test-parallel.mjs","build":"pnpm canvas:a2ui:bundle && tsdown && pnpm build:plugin-sdk:dts && node --import tsx scripts/write-plugin-sdk-entry-dts.ts && node --import tsx scripts/canvas-a2ui-copy.ts && node --import tsx scripts/copy-hook-metadata.ts && node --import tsx scripts/copy-export-html-templates.ts && node --import tsx scripts/write-build-info.ts && node --import tsx scripts/write-cli-compat.ts","check":"pnpm format:check && pnpm tsgo && pnpm lint","start":"node scripts/run-node.mjs","format":"oxfmt --write","mayros":"node scripts/run-node.mjs","ui:dev":"node scripts/ui.js dev","ios:gen":"bash -lc './scripts/ios-configure-signing.sh && cd apps/ios && xcodegen generate'","ios:run":"bash -lc './scripts/ios-configure-signing.sh && cd apps/ios && xcodegen generate && xcodebuild -project Mayros.xcodeproj -scheme Mayros -destination \"${IOS_DEST:-platform=iOS Simulator,name=iPhone 17}\" -configuration Debug build && xcrun simctl boot \"${IOS_SIM:-iPhone 17}\" || true && xcrun simctl launch booted ai.mayros.ios'","prepack":"pnpm build && pnpm ui:build","prepare":"command -v git >/dev/null 2>&1 && git rev-parse --is-inside-work-tree >/dev/null 2>&1 && git config core.hooksPath git-hooks || exit 0","test:ui":"pnpm --dir ui test","tui:dev":"MAYROS_PROFILE=dev node scripts/run-node.mjs --dev tui","docs:bin":"node scripts/build-docs-list.mjs","docs:dev":"cd docs && mint dev","ios:open":"bash -lc './scripts/ios-configure-signing.sh && cd apps/ios && xcodegen generate && open Mayros.xcodeproj'","lint:all":"pnpm lint && pnpm lint:swift","lint:fix":"oxlint --type-aware --fix && pnpm format","mac:open":"open dist/Mayros.app","test:all":"pnpm lint && pnpm build && pnpm test && pnpm test:e2e && pnpm test:live && pnpm test:docker:all","test:e2e":"vitest run --config vitest.e2e.config.ts","ui:build":"node scripts/ui.js build","check:loc":"node --import tsx scripts/check-ts-max-loc.ts --max 500","docs:list":"node scripts/docs-list.js","ios:build":"bash -lc './scripts/ios-configure-signing.sh && cd apps/ios && xcodegen generate && xcodebuild -project Mayros.xcodeproj -scheme Mayros -destination \"${IOS_DEST:-platform=iOS Simulator,name=iPhone 17}\" -configuration Debug build'","lint:docs":"pnpm dlx markdownlint-cli2","test:fast":"vitest run --config vitest.unit.config.ts","test:live":"MAYROS_LIVE_TEST=1 vitest run --config vitest.live.config.ts","check:docs":"pnpm format:docs:check && pnpm lint:docs && pnpm docs:check-links","format:all":"pnpm format && pnpm format:swift","format:fix":"oxfmt --write","lint:swift":"swiftlint lint --config .swiftlint.yml && (cd apps/ios && swiftlint lint --config .swiftlint.yml)","mayros:rpc":"node scripts/run-node.mjs agent --mode rpc --json","test:force":"node --import tsx scripts/test-force.ts","test:watch":"vitest","ui:install":"node scripts/ui.js install","android:run":"cd apps/android && ./gradlew :app:installDebug && adb shell am start -n ai.mayros.android/.MainActivity","deadcode:ci":"pnpm deadcode:report:ci:knip && pnpm deadcode:report:ci:ts-prune && pnpm deadcode:report:ci:ts-unused","format:diff":"oxfmt --write && git --no-pager diff","format:docs":"git ls-files 'docs/**/*.md' 'docs/**/*.mdx' 'README.md' | xargs oxfmt --write","gateway:dev":"MAYROS_SKIP_CHANNELS=1 node scripts/run-node.mjs --dev gateway","mac:package":"bash scripts/package-mac-app.sh","mac:restart":"bash scripts/restart-mac.sh","postinstall":"node scripts/postinstall.mjs","android:test":"cd apps/android && ./gradlew :app:testDebugUnitTest","format:check":"oxfmt --check","format:swift":"swiftformat --lint --config .swiftformat apps/macos/Sources apps/ios/Sources apps/shared/MayrosKit/Sources","plugins:sync":"node --import tsx scripts/sync-plugin-versions.ts","protocol:gen":"node --import tsx scripts/protocol-gen.ts","test:macmini":"MAYROS_TEST_VM_FORKS=0 MAYROS_TEST_PROFILE=serial node scripts/test-parallel.mjs","deadcode:knip":"pnpm dlx knip --no-progress","gateway:watch":"node scripts/watch-node.mjs gateway --force","lint:docs:fix":"pnpm dlx markdownlint-cli2 --fix","release:check":"node --import tsx scripts/release-check.ts","test:coverage":"vitest run --config vitest.unit.config.ts --coverage","cortex:install":"tsx scripts/install-cortex.ts","protocol:check":"pnpm protocol:gen && pnpm protocol:gen:swift && git diff --exit-code -- dist/protocol.schema.json apps/macos/Sources/MayrosProtocol/GatewayModels.swift","test:docker:qr":"bash scripts/e2e/qr-import-docker.sh","android:install":"cd apps/android && ./gradlew :app:installDebug","deadcode:report":"pnpm deadcode:knip; pnpm deadcode:ts-prune; pnpm deadcode:ts-unused","docs:spellcheck":"bash scripts/docs-spellcheck.sh","test:docker:all":"pnpm test:docker:live-models && pnpm test:docker:live-gateway && pnpm test:docker:onboard && pnpm test:docker:gateway-network && pnpm test:docker:qr && pnpm test:docker:doctor-switch && pnpm test:docker:plugins && pnpm test:docker:cleanup","android:assemble":"cd apps/android && ./gradlew :app:assembleDebug","docs:check-links":"node scripts/docs-link-audit.mjs","test:install:e2e":"bash scripts/test-install-sh-e2e-docker.sh","deadcode:ts-prune":"pnpm dlx ts-prune src extensions scripts","format:docs:check":"git ls-files 'docs/**/*.md' 'docs/**/*.mdx' 'README.md' | xargs oxfmt --check","gateway:dev:reset":"MAYROS_SKIP_CHANNELS=1 node scripts/run-node.mjs --dev gateway --reset","canvas:a2ui:bundle":"bash scripts/bundle-a2ui.sh","deadcode:ts-unused":"pnpm dlx ts-unused-exports tsconfig.json --ignoreTestFiles --exitWithCount","protocol:gen:swift":"node --import tsx scripts/protocol-gen-swift.ts","test:install:smoke":"bash scripts/test-install-sh-docker.sh","docs:spellcheck:fix":"bash scripts/docs-spellcheck.sh --write","test:docker:cleanup":"bash scripts/test-cleanup-docker.sh","test:docker:onboard":"bash scripts/e2e/onboard-docker.sh","test:docker:plugins":"bash scripts/e2e/plugins-docker.sh","build:plugin-sdk:dts":"tsc -p tsconfig.plugin-sdk.dts.json","deadcode:report:ci:knip":"mkdir -p .artifacts/deadcode && pnpm deadcode:knip > .artifacts/deadcode/knip.txt 2>&1 || true","test:docker:live-models":"bash scripts/test-live-models-docker.sh","test:install:e2e:openai":"MAYROS_E2E_MODELS=openai bash scripts/test-install-sh-e2e-docker.sh","test:docker:live-gateway":"bash scripts/test-live-gateway-models-docker.sh","test:docker:doctor-switch":"bash scripts/e2e/doctor-install-switch-docker.sh","test:voicecall:closedloop":"vitest run extensions/voice-call/src/manager.test.ts extensions/voice-call/src/media-stream.test.ts src/plugins/voice-call.plugin.test.ts --maxWorkers=1","test:install:e2e:anthropic":"MAYROS_E2E_MODELS=anthropic bash scripts/test-install-sh-e2e-docker.sh","deadcode:report:ci:ts-prune":"mkdir -p .artifacts/deadcode && pnpm deadcode:ts-prune > .artifacts/deadcode/ts-prune.txt 2>&1 || true","test:docker:gateway-network":"bash scripts/e2e/gateway-network-docker.sh","deadcode:report:ci:ts-unused":"mkdir -p .artifacts/deadcode && pnpm deadcode:ts-unused > .artifacts/deadcode/ts-unused-exports.txt 2>&1 || true"},"_npmUser":{"name":"apilium-ai","email":"it@apilium.com"},"repository":{"url":"git+https://github.com/ApiliumCode/mayros.git","type":"git"},"_npmVersion":"11.6.0","description":"Multi-channel AI agent framework — la era de la IA con certezas","directories":{"doc":"docs","test":"test"},"_nodeVersion":"24.8.0","dependencies":{"ws":"^8.19.0","ajv":"^8.18.0","tar":"7.5.9","zod":"^4.3.6","jiti":"^2.6.1","long":"^5.3.2","yaml":"^2.8.2","chalk":"^5.6.2","json5":"^2.2.3","jszip":"^3.10.1","sharp":"^0.34.5","tslog":"^4.10.2","croner":"^10.0.1","dotenv":"^17.3.1","grammy":"^1.40.0","semver":"^7.7.4","undici":"^7.22.0","express":"^5.2.1","chokidar":"^5.0.0","linkedom":"^0.18.12","commander":"^14.0.3","file-type":"^21.3.0","opusscript":"^0.0.8","pdfjs-dist":"^5.4.624","sqlite-vec":"0.1.7-alpha.2","@slack/bolt":"^4.6.0","markdown-it":"^14.1.1","osc-progress":"^0.3.0","@buape/carbon":"0.0.0-beta-20260216184201","@line/bot-sdk":"^10.6.0","cli-highlight":"^2.1.11","node-edge-tts":"^1.2.10","@clack/prompts":"^1.0.1","@slack/web-api":"^7.14.1","@discordjs/opus":"^0.10.0","playwright-core":"1.58.2","qrcode-terminal":"^0.12.0","@discordjs/voice":"^0.19.0","@grammyjs/runner":"^2.0.3","@homebridge/ciao":"^1.3.5","@lydell/node-pty":"1.2.0-beta.3","@sinclair/typebox":"0.34.48","discord-api-types":"^0.38.40","https-proxy-agent":"^7.0.6","quickjs-emscripten":"^0.31.0","@mariozechner/pi-ai":"0.54.0","@mariozechner/pi-tui":"0.54.0","@mozilla/readability":"^0.6.0","@aws-sdk/client-bedrock":"^3.995.0","@whiskeysockets/baileys":"7.0.0-rc.9","@agentclientprotocol/sdk":"0.14.1","@mariozechner/pi-agent-core":"0.54.0","@mariozechner/pi-coding-agent":"0.54.0","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"packageManager":"pnpm@10.23.0","devDependencies":{"lit":"^3.3.2","tsx":"^4.21.0","oxfmt":"0.34.0","oxlint":"^1.49.0","tsdown":"^0.20.3","vitest":"^4.0.18","@types/ws":"^8.18.1","typescript":"^5.9.3","@types/node":"^25.3.0","@lit/context":"^1.1.6","signal-utils":"0.21.1","@types/semver":"^7.7.1","@types/express":"^5.0.6","@grammyjs/types":"^3.24.0","oxlint-tsgolint":"^0.14.2","@lit-labs/signals":"^0.2.0","@types/markdown-it":"^14.1.2","@vitest/coverage-v8":"^4.0.18","@types/qrcode-terminal":"^0.12.2","@typescript/native-preview":"7.0.0-dev.20260221.1"},"peerDependencies":{"node-llama-cpp":"3.15.1","@napi-rs/canvas":"^0.1.89"},"_npmOperationalInternal":{"tmp":"tmp/mayros_0.1.1_1772112570579_0.7880897930785133","host":"s3://npm-registry-packages-npm-production"}},"0.1.2":{"name":"@apilium/mayros","version":"0.1.2","keywords":[],"author":{"name":"Apilium Technologies"},"license":"MIT","_id":"@apilium/mayros@0.1.2","maintainers":[{"name":"apilium-ai","email":"it@apilium.com"}],"homepage":"https://apilium.com/mayros","bugs":{"url":"https://github.com/ApiliumCode/mayros/issues"},"bin":{"mayros":"mayros.mjs"},"dist":{"shasum":"983adb8c8896257413f5eda49e14bcd8e374ef4d","tarball":"https://registry.npmjs.org/@apilium/mayros/-/mayros-0.1.2.tgz","fileCount":4054,"integrity":"sha512-pXTLPqG3aGPY8Yf3sMlBAUscU6aUfUFdYexDWMhquy6iS9FVimIhW3rDWkiY5RhmRlgEONbBZPhJ+KnIC8/Tyg==","signatures":[{"sig":"MEQCIFA7j8i73HVhfWdGoNgVW71jRrnX0PdP5JxgMj47BXsFAiBYzsQzaI3gt4USj8zQHc/xZh0Db4cxKOvHWwM14HA5Kw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":49290645},"main":"dist/index.js","pnpm":{"overrides":{"qs":"6.14.2","tar":"7.5.9","hono":"4.11.10","request":"npm:@cypress/request@3.0.10","form-data":"2.5.4","minimatch":"10.2.3","tough-cookie":"4.1.3","@discordjs/opus":"npm:opusscript@0.0.8","fast-xml-parser":"5.3.8","request-promise":"npm:@cypress/request-promise@5.0.0","@sinclair/typebox":"0.34.48"},"minimumReleaseAge":2880,"onlyBuiltDependencies":["@lydell/node-pty","@matrix-org/matrix-sdk-crypto-nodejs","@napi-rs/canvas","@whiskeysockets/baileys","authenticate-pam","esbuild","koffi","node-llama-cpp","protobufjs","sharp"]},"type":"module","engines":{"node":">=22.12.0"},"exports":{".":"./dist/index.js","./cli-entry":"./mayros.mjs","./plugin-sdk":{"types":"./dist/plugin-sdk/index.d.ts","default":"./dist/plugin-sdk/index.js"},"./plugin-sdk/account-id":{"types":"./dist/plugin-sdk/account-id.d.ts","default":"./dist/plugin-sdk/account-id.js"}},"gitHead":"50f1db2d5c8c9a58a07660bb866beb71f2d53f57","scripts":{"dev":"node scripts/run-node.mjs","tui":"node scripts/run-node.mjs tui","lint":"oxlint --type-aware","test":"node scripts/test-parallel.mjs","build":"pnpm canvas:a2ui:bundle && tsdown && pnpm build:plugin-sdk:dts && node --import tsx scripts/write-plugin-sdk-entry-dts.ts && node --import tsx scripts/canvas-a2ui-copy.ts && node --import tsx scripts/copy-hook-metadata.ts && node --import tsx scripts/copy-export-html-templates.ts && node --import tsx scripts/write-build-info.ts && node --import tsx scripts/write-cli-compat.ts","check":"pnpm format:check && pnpm tsgo && pnpm lint","start":"node scripts/run-node.mjs","format":"oxfmt --write","mayros":"node scripts/run-node.mjs","ui:dev":"node scripts/ui.js dev","ios:gen":"bash -lc './scripts/ios-configure-signing.sh && cd apps/ios && xcodegen generate'","ios:run":"bash -lc './scripts/ios-configure-signing.sh && cd apps/ios && xcodegen generate && xcodebuild -project Mayros.xcodeproj -scheme Mayros -destination \"${IOS_DEST:-platform=iOS Simulator,name=iPhone 17}\" -configuration Debug build && xcrun simctl boot \"${IOS_SIM:-iPhone 17}\" || true && xcrun simctl launch booted ai.mayros.ios'","prepack":"pnpm build && pnpm ui:build","prepare":"command -v git >/dev/null 2>&1 && git rev-parse --is-inside-work-tree >/dev/null 2>&1 && git config core.hooksPath git-hooks || exit 0","test:ui":"pnpm --dir ui test","tui:dev":"MAYROS_PROFILE=dev node scripts/run-node.mjs --dev tui","docs:bin":"node scripts/build-docs-list.mjs","docs:dev":"cd docs && mint dev","ios:open":"bash -lc './scripts/ios-configure-signing.sh && cd apps/ios && xcodegen generate && open Mayros.xcodeproj'","lint:all":"pnpm lint && pnpm lint:swift","lint:fix":"oxlint --type-aware --fix && pnpm format","mac:open":"open dist/Mayros.app","test:all":"pnpm lint && pnpm build && pnpm test && pnpm test:e2e && pnpm test:live && pnpm test:docker:all","test:e2e":"vitest run --config vitest.e2e.config.ts","ui:build":"node scripts/ui.js build","check:loc":"node --import tsx scripts/check-ts-max-loc.ts --max 500","docs:list":"node scripts/docs-list.js","ios:build":"bash -lc './scripts/ios-configure-signing.sh && cd apps/ios && xcodegen generate && xcodebuild -project Mayros.xcodeproj -scheme Mayros -destination \"${IOS_DEST:-platform=iOS Simulator,name=iPhone 17}\" -configuration Debug build'","lint:docs":"pnpm dlx markdownlint-cli2","test:fast":"vitest run --config vitest.unit.config.ts","test:live":"MAYROS_LIVE_TEST=1 vitest run --config vitest.live.config.ts","check:docs":"pnpm format:docs:check && pnpm lint:docs && pnpm docs:check-links","format:all":"pnpm format && pnpm format:swift","format:fix":"oxfmt --write","lint:swift":"swiftlint lint --config .swiftlint.yml && (cd apps/ios && swiftlint lint --config .swiftlint.yml)","mayros:rpc":"node scripts/run-node.mjs agent --mode rpc --json","test:force":"node --import tsx scripts/test-force.ts","test:watch":"vitest","ui:install":"node scripts/ui.js install","android:run":"cd apps/android && ./gradlew :app:installDebug && adb shell am start -n ai.mayros.android/.MainActivity","deadcode:ci":"pnpm deadcode:report:ci:knip && pnpm deadcode:report:ci:ts-prune && pnpm deadcode:report:ci:ts-unused","format:diff":"oxfmt --write && git --no-pager diff","format:docs":"git ls-files 'docs/**/*.md' 'docs/**/*.mdx' 'README.md' | xargs oxfmt --write","gateway:dev":"MAYROS_SKIP_CHANNELS=1 node scripts/run-node.mjs --dev gateway","mac:package":"bash scripts/package-mac-app.sh","mac:restart":"bash scripts/restart-mac.sh","postinstall":"node scripts/postinstall.mjs","android:test":"cd apps/android && ./gradlew :app:testDebugUnitTest","format:check":"oxfmt --check","format:swift":"swiftformat --lint --config .swiftformat apps/macos/Sources apps/ios/Sources apps/shared/MayrosKit/Sources","plugins:sync":"node --import tsx scripts/sync-plugin-versions.ts","protocol:gen":"node --import tsx scripts/protocol-gen.ts","test:macmini":"MAYROS_TEST_VM_FORKS=0 MAYROS_TEST_PROFILE=serial node scripts/test-parallel.mjs","deadcode:knip":"pnpm dlx knip --no-progress","gateway:watch":"node scripts/watch-node.mjs gateway --force","lint:docs:fix":"pnpm dlx markdownlint-cli2 --fix","release:check":"node --import tsx scripts/release-check.ts","test:coverage":"vitest run --config vitest.unit.config.ts --coverage","cortex:install":"tsx scripts/install-cortex.ts","protocol:check":"pnpm protocol:gen && pnpm protocol:gen:swift && git diff --exit-code -- dist/protocol.schema.json apps/macos/Sources/MayrosProtocol/GatewayModels.swift","test:docker:qr":"bash scripts/e2e/qr-import-docker.sh","android:install":"cd apps/android && ./gradlew :app:installDebug","deadcode:report":"pnpm deadcode:knip; pnpm deadcode:ts-prune; pnpm deadcode:ts-unused","docs:spellcheck":"bash scripts/docs-spellcheck.sh","test:docker:all":"pnpm test:docker:live-models && pnpm test:docker:live-gateway && pnpm test:docker:onboard && pnpm test:docker:gateway-network && pnpm test:docker:qr && pnpm test:docker:doctor-switch && pnpm test:docker:plugins && pnpm test:docker:cleanup","android:assemble":"cd apps/android && ./gradlew :app:assembleDebug","docs:check-links":"node scripts/docs-link-audit.mjs","test:install:e2e":"bash scripts/test-install-sh-e2e-docker.sh","deadcode:ts-prune":"pnpm dlx ts-prune src extensions scripts","format:docs:check":"git ls-files 'docs/**/*.md' 'docs/**/*.mdx' 'README.md' | xargs oxfmt --check","gateway:dev:reset":"MAYROS_SKIP_CHANNELS=1 node scripts/run-node.mjs --dev gateway --reset","canvas:a2ui:bundle":"bash scripts/bundle-a2ui.sh","deadcode:ts-unused":"pnpm dlx ts-unused-exports tsconfig.json --ignoreTestFiles --exitWithCount","protocol:gen:swift":"node --import tsx scripts/protocol-gen-swift.ts","test:install:smoke":"bash scripts/test-install-sh-docker.sh","docs:spellcheck:fix":"bash scripts/docs-spellcheck.sh --write","test:docker:cleanup":"bash scripts/test-cleanup-docker.sh","test:docker:onboard":"bash scripts/e2e/onboard-docker.sh","test:docker:plugins":"bash scripts/e2e/plugins-docker.sh","build:plugin-sdk:dts":"tsc -p tsconfig.plugin-sdk.dts.json","deadcode:report:ci:knip":"mkdir -p .artifacts/deadcode && pnpm deadcode:knip > .artifacts/deadcode/knip.txt 2>&1 || true","test:docker:live-models":"bash scripts/test-live-models-docker.sh","test:install:e2e:openai":"MAYROS_E2E_MODELS=openai bash scripts/test-install-sh-e2e-docker.sh","test:docker:live-gateway":"bash scripts/test-live-gateway-models-docker.sh","test:docker:doctor-switch":"bash scripts/e2e/doctor-install-switch-docker.sh","test:voicecall:closedloop":"vitest run extensions/voice-call/src/manager.test.ts extensions/voice-call/src/media-stream.test.ts src/plugins/voice-call.plugin.test.ts --maxWorkers=1","test:install:e2e:anthropic":"MAYROS_E2E_MODELS=anthropic bash scripts/test-install-sh-e2e-docker.sh","deadcode:report:ci:ts-prune":"mkdir -p .artifacts/deadcode && pnpm deadcode:ts-prune > .artifacts/deadcode/ts-prune.txt 2>&1 || true","test:docker:gateway-network":"bash scripts/e2e/gateway-network-docker.sh","deadcode:report:ci:ts-unused":"mkdir -p .artifacts/deadcode && pnpm deadcode:ts-unused > .artifacts/deadcode/ts-unused-exports.txt 2>&1 || true"},"_npmUser":{"name":"apilium-ai","email":"it@apilium.com"},"repository":{"url":"git+https://github.com/ApiliumCode/mayros.git","type":"git"},"_npmVersion":"11.6.0","description":"Multi-channel AI agent framework — la era de la IA con certezas","directories":{"doc":"docs","test":"test"},"_nodeVersion":"24.8.0","dependencies":{"ws":"^8.19.0","ajv":"^8.18.0","tar":"7.5.9","zod":"^4.3.6","jiti":"^2.6.1","long":"^5.3.2","yaml":"^2.8.2","chalk":"^5.6.2","json5":"^2.2.3","jszip":"^3.10.1","sharp":"^0.34.5","tslog":"^4.10.2","croner":"^10.0.1","dotenv":"^17.3.1","grammy":"^1.40.0","semver":"^7.7.4","undici":"^7.22.0","express":"^5.2.1","chokidar":"^5.0.0","linkedom":"^0.18.12","commander":"^14.0.3","file-type":"^21.3.0","opusscript":"^0.0.8","pdfjs-dist":"^5.4.624","sqlite-vec":"0.1.7-alpha.2","@slack/bolt":"^4.6.0","markdown-it":"^14.1.1","osc-progress":"^0.3.0","@buape/carbon":"0.0.0-beta-20260216184201","@line/bot-sdk":"^10.6.0","cli-highlight":"^2.1.11","node-edge-tts":"^1.2.10","@clack/prompts":"^1.0.1","@slack/web-api":"^7.14.1","playwright-core":"1.58.2","qrcode-terminal":"^0.12.0","@discordjs/voice":"^0.19.0","@grammyjs/runner":"^2.0.3","@homebridge/ciao":"^1.3.5","@lydell/node-pty":"1.2.0-beta.3","@sinclair/typebox":"0.34.48","discord-api-types":"^0.38.40","https-proxy-agent":"^7.0.6","quickjs-emscripten":"^0.31.0","@mariozechner/pi-ai":"0.54.0","@mariozechner/pi-tui":"0.54.0","@mozilla/readability":"^0.6.0","@aws-sdk/client-bedrock":"^3.995.0","@whiskeysockets/baileys":"7.0.0-rc.9","@agentclientprotocol/sdk":"0.14.1","@mariozechner/pi-agent-core":"0.54.0","@mariozechner/pi-coding-agent":"0.54.0","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"packageManager":"pnpm@10.23.0","devDependencies":{"lit":"^3.3.2","tsx":"^4.21.0","oxfmt":"0.34.0","oxlint":"^1.49.0","tsdown":"^0.20.3","vitest":"^4.0.18","@types/ws":"^8.18.1","typescript":"^5.9.3","@types/node":"^25.3.0","@lit/context":"^1.1.6","signal-utils":"0.21.1","@types/semver":"^7.7.1","@types/express":"^5.0.6","@grammyjs/types":"^3.24.0","oxlint-tsgolint":"^0.14.2","@lit-labs/signals":"^0.2.0","@types/markdown-it":"^14.1.2","@vitest/coverage-v8":"^4.0.18","@types/qrcode-terminal":"^0.12.2","@typescript/native-preview":"7.0.0-dev.20260221.1"},"peerDependencies":{"node-llama-cpp":"3.17.1","@napi-rs/canvas":"^0.1.89"},"_npmOperationalInternal":{"tmp":"tmp/mayros_0.1.2_1772471870118_0.2473201058546215","host":"s3://npm-registry-packages-npm-production"}},"0.1.3":{"name":"@apilium/mayros","version":"0.1.3","keywords":[],"author":{"name":"Apilium Technologies"},"license":"MIT","_id":"@apilium/mayros@0.1.3","maintainers":[{"name":"apilium-ai","email":"it@apilium.com"}],"homepage":"https://apilium.com/mayros","bugs":{"url":"https://github.com/ApiliumCode/mayros/issues"},"bin":{"mayros":"mayros.mjs"},"dist":{"shasum":"36d02aa276da1ddc91c0e833391ac5978d4ca86f","tarball":"https://registry.npmjs.org/@apilium/mayros/-/mayros-0.1.3.tgz","fileCount":4054,"integrity":"sha512-/xpLRa70/0KGq+QhF8pYjeSSErQdrDDs+CphwBtDkfWlZJ3Xv6JwfkQ5OFrh+1nsaKac/4wQ0P1i0liCuigU6w==","signatures":[{"sig":"MEQCIBbeL7LjibHlktEKOk7KmOfE6o+q0dyHSzFH2nocWMBdAiA46M1by0awNS1X4UnsGTOIfpw64YMmycGv7JgerrlpLg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":49290927},"main":"dist/index.js","pnpm":{"overrides":{"qs":"6.14.2","tar":"7.5.9","hono":"4.11.10","request":"npm:@cypress/request@3.0.10","form-data":"2.5.4","minimatch":"10.2.3","tough-cookie":"4.1.3","@discordjs/opus":"npm:opusscript@0.0.8","fast-xml-parser":"5.3.8","request-promise":"npm:@cypress/request-promise@5.0.0","@sinclair/typebox":"0.34.48"},"minimumReleaseAge":2880,"onlyBuiltDependencies":["@lydell/node-pty","@matrix-org/matrix-sdk-crypto-nodejs","@napi-rs/canvas","@whiskeysockets/baileys","authenticate-pam","esbuild","koffi","node-llama-cpp","protobufjs","sharp"]},"type":"module","engines":{"node":">=22.12.0"},"exports":{".":"./dist/index.js","./cli-entry":"./mayros.mjs","./plugin-sdk":{"types":"./dist/plugin-sdk/index.d.ts","default":"./dist/plugin-sdk/index.js"},"./plugin-sdk/account-id":{"types":"./dist/plugin-sdk/account-id.d.ts","default":"./dist/plugin-sdk/account-id.js"}},"gitHead":"8584422484e5d919d454d0e96700e5ba821ad6d7","scripts":{"dev":"node scripts/run-node.mjs","tui":"node scripts/run-node.mjs tui","lint":"oxlint --type-aware","test":"node scripts/test-parallel.mjs","build":"pnpm canvas:a2ui:bundle && tsdown && pnpm build:plugin-sdk:dts && node --import tsx scripts/write-plugin-sdk-entry-dts.ts && node --import tsx scripts/canvas-a2ui-copy.ts && node --import tsx scripts/copy-hook-metadata.ts && node --import tsx scripts/copy-export-html-templates.ts && node --import tsx scripts/write-build-info.ts && node --import tsx scripts/write-cli-compat.ts","check":"pnpm format:check && pnpm tsgo && pnpm lint","start":"node scripts/run-node.mjs","format":"oxfmt --write","mayros":"node scripts/run-node.mjs","ui:dev":"node scripts/ui.js dev","ios:gen":"bash -lc './scripts/ios-configure-signing.sh && cd apps/ios && xcodegen generate'","ios:run":"bash -lc './scripts/ios-configure-signing.sh && cd apps/ios && xcodegen generate && xcodebuild -project Mayros.xcodeproj -scheme Mayros -destination \"${IOS_DEST:-platform=iOS Simulator,name=iPhone 17}\" -configuration Debug build && xcrun simctl boot \"${IOS_SIM:-iPhone 17}\" || true && xcrun simctl launch booted ai.mayros.ios'","prepack":"pnpm build && pnpm ui:build","prepare":"command -v git >/dev/null 2>&1 && git rev-parse --is-inside-work-tree >/dev/null 2>&1 && git config core.hooksPath git-hooks || exit 0","test:ui":"pnpm --dir ui test","tui:dev":"MAYROS_PROFILE=dev node scripts/run-node.mjs --dev tui","docs:bin":"node scripts/build-docs-list.mjs","docs:dev":"cd docs && mint dev","ios:open":"bash -lc './scripts/ios-configure-signing.sh && cd apps/ios && xcodegen generate && open Mayros.xcodeproj'","lint:all":"pnpm lint && pnpm lint:swift","lint:fix":"oxlint --type-aware --fix && pnpm format","mac:open":"open dist/Mayros.app","test:all":"pnpm lint && pnpm build && pnpm test && pnpm test:e2e && pnpm test:live && pnpm test:docker:all","test:e2e":"vitest run --config vitest.e2e.config.ts","ui:build":"node scripts/ui.js build","check:loc":"node --import tsx scripts/check-ts-max-loc.ts --max 500","docs:list":"node scripts/docs-list.js","ios:build":"bash -lc './scripts/ios-configure-signing.sh && cd apps/ios && xcodegen generate && xcodebuild -project Mayros.xcodeproj -scheme Mayros -destination \"${IOS_DEST:-platform=iOS Simulator,name=iPhone 17}\" -configuration Debug build'","lint:docs":"pnpm dlx markdownlint-cli2","test:fast":"vitest run --config vitest.unit.config.ts","test:live":"MAYROS_LIVE_TEST=1 vitest run --config vitest.live.config.ts","check:docs":"pnpm format:docs:check && pnpm lint:docs && pnpm docs:check-links","format:all":"pnpm format && pnpm format:swift","format:fix":"oxfmt --write","lint:swift":"swiftlint lint --config .swiftlint.yml && (cd apps/ios && swiftlint lint --config .swiftlint.yml)","mayros:rpc":"node scripts/run-node.mjs agent --mode rpc --json","test:force":"node --import tsx scripts/test-force.ts","test:watch":"vitest","ui:install":"node scripts/ui.js install","android:run":"cd apps/android && ./gradlew :app:installDebug && adb shell am start -n ai.mayros.android/.MainActivity","deadcode:ci":"pnpm deadcode:report:ci:knip && pnpm deadcode:report:ci:ts-prune && pnpm deadcode:report:ci:ts-unused","format:diff":"oxfmt --write && git --no-pager diff","format:docs":"git ls-files 'docs/**/*.md' 'docs/**/*.mdx' 'README.md' | xargs oxfmt --write","gateway:dev":"MAYROS_SKIP_CHANNELS=1 node scripts/run-node.mjs --dev gateway","mac:package":"bash scripts/package-mac-app.sh","mac:restart":"bash scripts/restart-mac.sh","postinstall":"node scripts/postinstall.mjs","android:test":"cd apps/android && ./gradlew :app:testDebugUnitTest","format:check":"oxfmt --check","format:swift":"swiftformat --lint --config .swiftformat apps/macos/Sources apps/ios/Sources apps/shared/MayrosKit/Sources","plugins:sync":"node --import tsx scripts/sync-plugin-versions.ts","protocol:gen":"node --import tsx scripts/protocol-gen.ts","test:macmini":"MAYROS_TEST_VM_FORKS=0 MAYROS_TEST_PROFILE=serial node scripts/test-parallel.mjs","deadcode:knip":"pnpm dlx knip --no-progress","gateway:watch":"node scripts/watch-node.mjs gateway --force","lint:docs:fix":"pnpm dlx markdownlint-cli2 --fix","release:check":"node --import tsx scripts/release-check.ts","test:coverage":"vitest run --config vitest.unit.config.ts --coverage","cortex:install":"tsx scripts/install-cortex.ts","protocol:check":"pnpm protocol:gen && pnpm protocol:gen:swift && git diff --exit-code -- dist/protocol.schema.json apps/macos/Sources/MayrosProtocol/GatewayModels.swift","test:docker:qr":"bash scripts/e2e/qr-import-docker.sh","android:install":"cd apps/android && ./gradlew :app:installDebug","deadcode:report":"pnpm deadcode:knip; pnpm deadcode:ts-prune; pnpm deadcode:ts-unused","docs:spellcheck":"bash scripts/docs-spellcheck.sh","test:docker:all":"pnpm test:docker:live-models && pnpm test:docker:live-gateway && pnpm test:docker:onboard && pnpm test:docker:gateway-network && pnpm test:docker:qr && pnpm test:docker:doctor-switch && pnpm test:docker:plugins && pnpm test:docker:cleanup","android:assemble":"cd apps/android && ./gradlew :app:assembleDebug","docs:check-links":"node scripts/docs-link-audit.mjs","test:install:e2e":"bash scripts/test-install-sh-e2e-docker.sh","deadcode:ts-prune":"pnpm dlx ts-prune src extensions scripts","format:docs:check":"git ls-files 'docs/**/*.md' 'docs/**/*.mdx' 'README.md' | xargs oxfmt --check","gateway:dev:reset":"MAYROS_SKIP_CHANNELS=1 node scripts/run-node.mjs --dev gateway --reset","canvas:a2ui:bundle":"bash scripts/bundle-a2ui.sh","deadcode:ts-unused":"pnpm dlx ts-unused-exports tsconfig.json --ignoreTestFiles --exitWithCount","protocol:gen:swift":"node --import tsx scripts/protocol-gen-swift.ts","test:install:smoke":"bash scripts/test-install-sh-docker.sh","docs:spellcheck:fix":"bash scripts/docs-spellcheck.sh --write","test:docker:cleanup":"bash scripts/test-cleanup-docker.sh","test:docker:onboard":"bash scripts/e2e/onboard-docker.sh","test:docker:plugins":"bash scripts/e2e/plugins-docker.sh","build:plugin-sdk:dts":"tsc -p tsconfig.plugin-sdk.dts.json","deadcode:report:ci:knip":"mkdir -p .artifacts/deadcode && pnpm deadcode:knip > .artifacts/deadcode/knip.txt 2>&1 || true","test:docker:live-models":"bash scripts/test-live-models-docker.sh","test:install:e2e:openai":"MAYROS_E2E_MODELS=openai bash scripts/test-install-sh-e2e-docker.sh","test:docker:live-gateway":"bash scripts/test-live-gateway-models-docker.sh","test:docker:doctor-switch":"bash scripts/e2e/doctor-install-switch-docker.sh","test:voicecall:closedloop":"vitest run extensions/voice-call/src/manager.test.ts extensions/voice-call/src/media-stream.test.ts src/plugins/voice-call.plugin.test.ts --maxWorkers=1","test:install:e2e:anthropic":"MAYROS_E2E_MODELS=anthropic bash scripts/test-install-sh-e2e-docker.sh","deadcode:report:ci:ts-prune":"mkdir -p .artifacts/deadcode && pnpm deadcode:ts-prune > .artifacts/deadcode/ts-prune.txt 2>&1 || true","test:docker:gateway-network":"bash scripts/e2e/gateway-network-docker.sh","deadcode:report:ci:ts-unused":"mkdir -p .artifacts/deadcode && pnpm deadcode:ts-unused > .artifacts/deadcode/ts-unused-exports.txt 2>&1 || true"},"_npmUser":{"name":"apilium-ai","email":"it@apilium.com"},"repository":{"url":"git+https://github.com/ApiliumCode/mayros.git","type":"git"},"_npmVersion":"11.6.0","description":"Multi-channel AI agent framework — la era de la IA con certezas","directories":{"doc":"docs","test":"test"},"_nodeVersion":"24.8.0","dependencies":{"ws":"^8.19.0","ajv":"^8.18.0","tar":"7.5.9","zod":"^4.3.6","jiti":"^2.6.1","long":"^5.3.2","yaml":"^2.8.2","chalk":"^5.6.2","json5":"^2.2.3","jszip":"^3.10.1","sharp":"^0.34.5","tslog":"^4.10.2","croner":"^10.0.1","dotenv":"^17.3.1","grammy":"^1.40.0","semver":"^7.7.4","undici":"^7.22.0","express":"^5.2.1","chokidar":"^5.0.0","linkedom":"^0.18.12","commander":"^14.0.3","file-type":"^21.3.0","opusscript":"^0.0.8","pdfjs-dist":"^5.4.624","sqlite-vec":"0.1.7-alpha.2","@slack/bolt":"^4.6.0","markdown-it":"^14.1.1","osc-progress":"^0.3.0","@buape/carbon":"0.0.0-beta-20260216184201","@line/bot-sdk":"^10.6.0","cli-highlight":"^2.1.11","node-edge-tts":"^1.2.10","@clack/prompts":"^1.0.1","@slack/web-api":"^7.14.1","playwright-core":"1.58.2","qrcode-terminal":"^0.12.0","@discordjs/voice":"^0.19.0","@grammyjs/runner":"^2.0.3","@homebridge/ciao":"^1.3.5","@lydell/node-pty":"1.2.0-beta.3","@sinclair/typebox":"0.34.48","discord-api-types":"^0.38.40","https-proxy-agent":"^7.0.6","quickjs-emscripten":"^0.31.0","@mariozechner/pi-ai":"0.54.0","@mariozechner/pi-tui":"0.54.0","@mozilla/readability":"^0.6.0","@aws-sdk/client-bedrock":"^3.995.0","@whiskeysockets/baileys":"7.0.0-rc.9","@agentclientprotocol/sdk":"0.14.1","@mariozechner/pi-agent-core":"0.54.0","@mariozechner/pi-coding-agent":"0.54.0","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"packageManager":"pnpm@10.23.0","devDependencies":{"lit":"^3.3.2","tsx":"^4.21.0","oxfmt":"0.34.0","oxlint":"^1.49.0","tsdown":"^0.20.3","vitest":"^4.0.18","@types/ws":"^8.18.1","typescript":"^5.9.3","@types/node":"^25.3.0","@lit/context":"^1.1.6","signal-utils":"0.21.1","@types/semver":"^7.7.1","@types/express":"^5.0.6","@grammyjs/types":"^3.24.0","oxlint-tsgolint":"^0.14.2","@lit-labs/signals":"^0.2.0","@types/markdown-it":"^14.1.2","@vitest/coverage-v8":"^4.0.18","@types/qrcode-terminal":"^0.12.2","@typescript/native-preview":"7.0.0-dev.20260221.1"},"peerDependencies":{"node-llama-cpp":"3.17.1","@napi-rs/canvas":"^0.1.89"},"_npmOperationalInternal":{"tmp":"tmp/mayros_0.1.3_1772476675993_0.9349104823190628","host":"s3://npm-registry-packages-npm-production"}},"0.1.4":{"name":"@apilium/mayros","version":"0.1.4","keywords":[],"author":{"name":"Apilium Technologies"},"license":"MIT","_id":"@apilium/mayros@0.1.4","maintainers":[{"name":"apilium-ai","email":"it@apilium.com"}],"homepage":"https://apilium.com/mayros","bugs":{"url":"https://github.com/ApiliumCode/mayros/issues"},"bin":{"mayros":"mayros.mjs"},"dist":{"shasum":"338ec244d6714952bf5f5eadc7eff5d67d4fb1aa","tarball":"https://registry.npmjs.org/@apilium/mayros/-/mayros-0.1.4.tgz","fileCount":4238,"integrity":"sha512-K3HZmgDrGEBbuvklthkaCijiMdzDpKl8f1e2huTwefRnGOWYql7c6UVRdh5xJjgGJt8dqEtwo5bYL8yAkbtv2g==","signatures":[{"sig":"MEUCIQDWVGcBJGFf6WI1NPkq7SEVAH/b58zcP/Y/os8StVXqdQIgSsiLmPUYW7LGKEUiJ1Xrwb9Gf6/vlQYEXDlvMPKDJP0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":51167351},"main":"dist/index.js","pnpm":{"overrides":{"qs":"6.14.2","tar":"7.5.9","hono":"4.12.4","request":"npm:@cypress/request@3.0.10","form-data":"2.5.4","minimatch":"10.2.3","tough-cookie":"4.1.3","@discordjs/opus":"npm:opusscript@0.0.8","fast-xml-parser":"5.3.8","request-promise":"npm:@cypress/request-promise@5.0.0","@hono/node-server":"1.19.10","@sinclair/typebox":"0.34.48"},"minimumReleaseAge":2880,"onlyBuiltDependencies":["@lydell/node-pty","@matrix-org/matrix-sdk-crypto-nodejs","@napi-rs/canvas","@whiskeysockets/baileys","authenticate-pam","esbuild","koffi","node-llama-cpp","protobufjs","sharp"]},"type":"module","engines":{"node":">=22.12.0"},"exports":{".":"./dist/index.js","./cli-entry":"./mayros.mjs","./plugin-sdk":{"types":"./dist/plugin-sdk/index.d.ts","default":"./dist/plugin-sdk/index.js"},"./plugin-sdk/account-id":{"types":"./dist/plugin-sdk/account-id.d.ts","default":"./dist/plugin-sdk/account-id.js"}},"gitHead":"cea04b2351715d7e059da79fee91120872b1dd5b","scripts":{"dev":"node scripts/run-node.mjs","tui":"node scripts/run-node.mjs tui","lint":"oxlint --type-aware","test":"node scripts/test-parallel.mjs","build":"pnpm canvas:a2ui:bundle && tsdown && pnpm build:plugin-sdk:dts && node --import tsx scripts/write-plugin-sdk-entry-dts.ts && node --import tsx scripts/canvas-a2ui-copy.ts && node --import tsx scripts/copy-hook-metadata.ts && node --import tsx scripts/copy-export-html-templates.ts && node --import tsx scripts/write-build-info.ts && node --import tsx scripts/write-cli-compat.ts","check":"pnpm format:check && pnpm tsgo && pnpm lint","start":"node scripts/run-node.mjs","format":"oxfmt --write","mayros":"node scripts/run-node.mjs","ui:dev":"node scripts/ui.js dev","ios:gen":"bash -lc './scripts/ios-configure-signing.sh && cd apps/ios && xcodegen generate'","ios:run":"bash -lc './scripts/ios-configure-signing.sh && cd apps/ios && xcodegen generate && xcodebuild -project Mayros.xcodeproj -scheme Mayros -destination \"${IOS_DEST:-platform=iOS Simulator,name=iPhone 17}\" -configuration Debug build && xcrun simctl boot \"${IOS_SIM:-iPhone 17}\" || true && xcrun simctl launch booted ai.mayros.ios'","prepack":"pnpm build && pnpm ui:build","prepare":"command -v git >/dev/null 2>&1 && git rev-parse --is-inside-work-tree >/dev/null 2>&1 && git config core.hooksPath git-hooks || exit 0","test:ui":"pnpm --dir ui test","tui:dev":"MAYROS_PROFILE=dev node scripts/run-node.mjs --dev tui","docs:bin":"node scripts/build-docs-list.mjs","docs:dev":"cd docs && mint dev","ios:open":"bash -lc './scripts/ios-configure-signing.sh && cd apps/ios && xcodegen generate && open Mayros.xcodeproj'","lint:all":"pnpm lint && pnpm lint:swift","lint:fix":"oxlint --type-aware --fix && pnpm format","mac:open":"open dist/Mayros.app","test:all":"pnpm lint && pnpm build && pnpm test && pnpm test:e2e && pnpm test:live && pnpm test:docker:all","test:e2e":"vitest run --config vitest.e2e.config.ts","ui:build":"node scripts/ui.js build","check:loc":"node --import tsx scripts/check-ts-max-loc.ts --max 500","docs:list":"node scripts/docs-list.js","ios:build":"bash -lc './scripts/ios-configure-signing.sh && cd apps/ios && xcodegen generate && xcodebuild -project Mayros.xcodeproj -scheme Mayros -destination \"${IOS_DEST:-platform=iOS Simulator,name=iPhone 17}\" -configuration Debug build'","lint:docs":"pnpm dlx markdownlint-cli2","test:fast":"vitest run --config vitest.unit.config.ts","test:live":"MAYROS_LIVE_TEST=1 vitest run --config vitest.live.config.ts","check:docs":"pnpm format:docs:check && pnpm lint:docs && pnpm docs:check-links","format:all":"pnpm format && pnpm format:swift","format:fix":"oxfmt --write","lint:swift":"swiftlint lint --config .swiftlint.yml && (cd apps/ios && swiftlint lint --config .swiftlint.yml)","mayros:rpc":"node scripts/run-node.mjs agent --mode rpc --json","test:force":"node --import tsx scripts/test-force.ts","test:watch":"vitest","ui:install":"node scripts/ui.js install","android:run":"cd apps/android && ./gradlew :app:installDebug && adb shell am start -n ai.mayros.android/.MainActivity","deadcode:ci":"pnpm deadcode:report:ci:knip && pnpm deadcode:report:ci:ts-prune && pnpm deadcode:report:ci:ts-unused","format:diff":"oxfmt --write && git --no-pager diff","format:docs":"git ls-files 'docs/**/*.md' 'docs/**/*.mdx' 'README.md' | xargs oxfmt --write","gateway:dev":"MAYROS_SKIP_CHANNELS=1 node scripts/run-node.mjs --dev gateway","mac:package":"bash scripts/package-mac-app.sh","mac:restart":"bash scripts/restart-mac.sh","postinstall":"node scripts/postinstall.mjs","android:test":"cd apps/android && ./gradlew :app:testDebugUnitTest","format:check":"oxfmt --check","format:swift":"swiftformat --lint --config .swiftformat apps/macos/Sources apps/ios/Sources apps/shared/MayrosKit/Sources","plugins:sync":"node --import tsx scripts/sync-plugin-versions.ts","protocol:gen":"node --import tsx scripts/protocol-gen.ts","test:macmini":"MAYROS_TEST_VM_FORKS=0 MAYROS_TEST_PROFILE=serial node scripts/test-parallel.mjs","deadcode:knip":"pnpm dlx knip --no-progress","gateway:watch":"node scripts/watch-node.mjs gateway --force","lint:docs:fix":"pnpm dlx markdownlint-cli2 --fix","release:check":"node --import tsx scripts/release-check.ts","test:coverage":"vitest run --config vitest.unit.config.ts --coverage","cortex:install":"tsx scripts/install-cortex.ts","protocol:check":"pnpm protocol:gen && pnpm protocol:gen:swift && git diff --exit-code -- dist/protocol.schema.json apps/macos/Sources/MayrosProtocol/GatewayModels.swift","test:docker:qr":"bash scripts/e2e/qr-import-docker.sh","android:install":"cd apps/android && ./gradlew :app:installDebug","deadcode:report":"pnpm deadcode:knip; pnpm deadcode:ts-prune; pnpm deadcode:ts-unused","docs:spellcheck":"bash scripts/docs-spellcheck.sh","test:docker:all":"pnpm test:docker:live-models && pnpm test:docker:live-gateway && pnpm test:docker:onboard && pnpm test:docker:gateway-network && pnpm test:docker:qr && pnpm test:docker:doctor-switch && pnpm test:docker:plugins && pnpm test:docker:cleanup","android:assemble":"cd apps/android && ./gradlew :app:assembleDebug","docs:check-links":"node scripts/docs-link-audit.mjs","test:install:e2e":"bash scripts/test-install-sh-e2e-docker.sh","deadcode:ts-prune":"pnpm dlx ts-prune src extensions scripts","format:docs:check":"git ls-files 'docs/**/*.md' 'docs/**/*.mdx' 'README.md' | xargs oxfmt --check","gateway:dev:reset":"MAYROS_SKIP_CHANNELS=1 node scripts/run-node.mjs --dev gateway --reset","canvas:a2ui:bundle":"bash scripts/bundle-a2ui.sh","deadcode:ts-unused":"pnpm dlx ts-unused-exports tsconfig.json --ignoreTestFiles --exitWithCount","protocol:gen:swift":"node --import tsx scripts/protocol-gen-swift.ts","test:install:smoke":"bash scripts/test-install-sh-docker.sh","docs:spellcheck:fix":"bash scripts/docs-spellcheck.sh --write","test:docker:cleanup":"bash scripts/test-cleanup-docker.sh","test:docker:onboard":"bash scripts/e2e/onboard-docker.sh","test:docker:plugins":"bash scripts/e2e/plugins-docker.sh","build:plugin-sdk:dts":"tsc -p tsconfig.plugin-sdk.dts.json","deadcode:report:ci:knip":"mkdir -p .artifacts/deadcode && pnpm deadcode:knip > .artifacts/deadcode/knip.txt 2>&1 || true","test:docker:live-models":"bash scripts/test-live-models-docker.sh","test:install:e2e:openai":"MAYROS_E2E_MODELS=openai bash scripts/test-install-sh-e2e-docker.sh","test:docker:live-gateway":"bash scripts/test-live-gateway-models-docker.sh","test:docker:doctor-switch":"bash scripts/e2e/doctor-install-switch-docker.sh","test:voicecall:closedloop":"vitest run extensions/voice-call/src/manager.test.ts extensions/voice-call/src/media-stream.test.ts src/plugins/voice-call.plugin.test.ts --maxWorkers=1","test:install:e2e:anthropic":"MAYROS_E2E_MODELS=anthropic bash scripts/test-install-sh-e2e-docker.sh","deadcode:report:ci:ts-prune":"mkdir -p .artifacts/deadcode && pnpm deadcode:ts-prune > .artifacts/deadcode/ts-prune.txt 2>&1 || true","test:docker:gateway-network":"bash scripts/e2e/gateway-network-docker.sh","deadcode:report:ci:ts-unused":"mkdir -p .artifacts/deadcode && pnpm deadcode:ts-unused > .artifacts/deadcode/ts-unused-exports.txt 2>&1 || true"},"_npmUser":{"name":"apilium-ai","email":"it@apilium.com"},"repository":{"url":"git+https://github.com/ApiliumCode/mayros.git","type":"git"},"_npmVersion":"11.6.0","description":"Multi-channel AI agent framework — la era de la IA con certezas","directories":{"doc":"docs","test":"test"},"_nodeVersion":"24.8.0","dependencies":{"ws":"^8.19.0","ajv":"^8.18.0","tar":"7.5.9","zod":"^4.3.6","hono":"4.12.4","jiti":"^2.6.1","long":"^5.3.2","yaml":"^2.8.2","chalk":"^5.6.2","json5":"^2.2.3","jszip":"^3.10.1","sharp":"^0.34.5","tslog":"^4.10.2","croner":"^10.0.1","dotenv":"^17.3.1","grammy":"^1.40.0","semver":"^7.7.4","undici":"^7.22.0","express":"^5.2.1","chokidar":"^5.0.0","linkedom":"^0.18.12","commander":"^14.0.3","file-type":"^21.3.0","opusscript":"^0.0.8","pdfjs-dist":"^5.4.624","sqlite-vec":"0.1.7-alpha.2","@slack/bolt":"^4.6.0","markdown-it":"^14.1.1","osc-progress":"^0.3.0","@buape/carbon":"0.0.0-beta-20260216184201","@line/bot-sdk":"^10.6.0","cli-highlight":"^2.1.11","node-edge-tts":"^1.2.10","@clack/prompts":"^1.0.1","@slack/web-api":"^7.14.1","playwright-core":"1.58.2","qrcode-terminal":"^0.12.0","@discordjs/voice":"^0.19.0","@grammyjs/runner":"^2.0.3","@homebridge/ciao":"^1.3.5","@lydell/node-pty":"1.2.0-beta.3","@sinclair/typebox":"0.34.48","discord-api-types":"^0.38.40","https-proxy-agent":"^7.0.6","quickjs-emscripten":"^0.31.0","@mariozechner/pi-ai":"0.54.0","@mariozechner/pi-tui":"0.54.0","@mozilla/readability":"^0.6.0","@aws-sdk/client-bedrock":"^3.995.0","@whiskeysockets/baileys":"7.0.0-rc.9","@agentclientprotocol/sdk":"0.14.1","@mariozechner/pi-agent-core":"0.54.0","@mariozechner/pi-coding-agent":"0.54.0","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"packageManager":"pnpm@10.23.0","devDependencies":{"lit":"^3.3.2","tsx":"^4.21.0","oxfmt":"0.34.0","oxlint":"^1.49.0","tsdown":"^0.20.3","vitest":"^4.0.18","@types/ws":"^8.18.1","typescript":"^5.9.3","@types/node":"^25.3.0","@lit/context":"^1.1.6","signal-utils":"0.21.1","@types/semver":"^7.7.1","@types/express":"^5.0.6","@grammyjs/types":"^3.24.0","oxlint-tsgolint":"^0.14.2","@lit-labs/signals":"^0.2.0","@types/markdown-it":"^14.1.2","@vitest/coverage-v8":"^4.0.18","@types/qrcode-terminal":"^0.12.2","@typescript/native-preview":"7.0.0-dev.20260221.1"},"peerDependencies":{"node-llama-cpp":"3.17.1","@napi-rs/canvas":"^0.1.89"},"_npmOperationalInternal":{"tmp":"tmp/mayros_0.1.4_1772749535235_0.3908590073110374","host":"s3://npm-registry-packages-npm-production"}},"0.1.5":{"name":"@apilium/mayros","version":"0.1.5","keywords":["agent","ai","aingle","apilium","cli","coding-assistant","cortex","knowledge-graph","mayros","mcp","multi-agent","terminal","tui"],"author":{"name":"Apilium Technologies"},"license":"MIT","_id":"@apilium/mayros@0.1.5","maintainers":[{"name":"apilium-ai","email":"it@apilium.com"}],"homepage":"https://apilium.com/en/products/mayros","bugs":{"url":"https://github.com/ApiliumCode/mayros/issues"},"bin":{"mayros":"mayros.mjs"},"dist":{"shasum":"95adcb178f027898d43ba2912f8397b83f301ab9","tarball":"https://registry.npmjs.org/@apilium/mayros/-/mayros-0.1.5.tgz","fileCount":4325,"integrity":"sha512-19mWznIVlvPtOQPtIS0TNywxGuzXIzLx8QzKm9ptEMwgflp7K/wBdZLkkNS2wO+86zFPFhani2EV8xil5/7LcQ==","signatures":[{"sig":"MEYCIQDzE14+DyEG8vFcY0p+vxVKTzGOwvVKoy2JZle1FlnjsgIhAIdtllsvg3t8WoC6Pk1+s7Vw+krW4x1EFr3NhiYDGhnA","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":51855249},"main":"dist/index.js","pnpm":{"overrides":{"qs":"6.14.2","tar":"7.5.10","hono":"4.12.4","request":"npm:@cypress/request@3.0.10","form-data":"2.5.4","minimatch":"10.2.3","tough-cookie":"4.1.3","@discordjs/opus":"npm:opusscript@0.0.8","fast-xml-parser":"5.3.8","request-promise":"npm:@cypress/request-promise@5.0.0","@hono/node-server":"1.19.10","@sinclair/typebox":"0.34.48"},"minimumReleaseAge":2880,"onlyBuiltDependencies":["@lydell/node-pty","@matrix-org/matrix-sdk-crypto-nodejs","@napi-rs/canvas","@whiskeysockets/baileys","authenticate-pam","esbuild","koffi","node-llama-cpp","protobufjs","sharp"]},"type":"module","engines":{"node":">=22.12.0"},"exports":{".":"./dist/index.js","./sdk":{"types":"./dist/sdk/index.d.ts","default":"./dist/sdk/index.js"},"./cli-entry":"./mayros.mjs","./plugin-sdk":{"types":"./dist/plugin-sdk/index.d.ts","default":"./dist/plugin-sdk/index.js"},"./plugin-sdk/account-id":{"types":"./dist/plugin-sdk/account-id.d.ts","default":"./dist/plugin-sdk/account-id.js"}},"gitHead":"572c39ebdf98203d78c3dc6f6b190f6bb918e8cf","scripts":{"dev":"node scripts/run-node.mjs","tui":"node scripts/run-node.mjs tui","lint":"oxlint --type-aware","test":"node scripts/test-parallel.mjs","build":"pnpm canvas:a2ui:bundle && tsdown && pnpm build:plugin-sdk:dts && node --import tsx scripts/write-plugin-sdk-entry-dts.ts && node --import tsx scripts/canvas-a2ui-copy.ts && node --import tsx scripts/copy-hook-metadata.ts && node --import tsx scripts/copy-export-html-templates.ts && node --import tsx scripts/write-build-info.ts && node --import tsx scripts/write-cli-compat.ts","check":"pnpm format:check && pnpm tsgo && pnpm lint","start":"node scripts/run-node.mjs","format":"oxfmt --write","mayros":"node scripts/run-node.mjs","ui:dev":"node scripts/ui.js dev","ios:gen":"bash -lc './scripts/ios-configure-signing.sh && cd apps/ios && xcodegen generate'","ios:run":"bash -lc './scripts/ios-configure-signing.sh && cd apps/ios && xcodegen generate && xcodebuild -project Mayros.xcodeproj -scheme Mayros -destination \"${IOS_DEST:-platform=iOS Simulator,name=iPhone 17}\" -configuration Debug build && xcrun simctl boot \"${IOS_SIM:-iPhone 17}\" || true && xcrun simctl launch booted ai.mayros.ios'","prepack":"pnpm build && pnpm ui:build","prepare":"command -v git >/dev/null 2>&1 && git rev-parse --is-inside-work-tree >/dev/null 2>&1 && git config core.hooksPath git-hooks || exit 0","test:ui":"pnpm --dir ui test","tui:dev":"MAYROS_PROFILE=dev node scripts/run-node.mjs --dev tui","docs:bin":"node scripts/build-docs-list.mjs","docs:dev":"cd docs && mint dev","ios:open":"bash -lc './scripts/ios-configure-signing.sh && cd apps/ios && xcodegen generate && open Mayros.xcodeproj'","lint:all":"pnpm lint && pnpm lint:swift","lint:fix":"oxlint --type-aware --fix && pnpm format","mac:open":"open dist/Mayros.app","test:all":"pnpm lint && pnpm build && pnpm test && pnpm test:e2e && pnpm test:live && pnpm test:docker:all","test:e2e":"vitest run --config vitest.e2e.config.ts","ui:build":"node scripts/ui.js build","check:loc":"node --import tsx scripts/check-ts-max-loc.ts --max 500","docs:list":"node scripts/docs-list.js","ios:build":"bash -lc './scripts/ios-configure-signing.sh && cd apps/ios && xcodegen generate && xcodebuild -project Mayros.xcodeproj -scheme Mayros -destination \"${IOS_DEST:-platform=iOS Simulator,name=iPhone 17}\" -configuration Debug build'","lint:docs":"pnpm dlx markdownlint-cli2","test:fast":"vitest run --config vitest.unit.config.ts","test:live":"MAYROS_LIVE_TEST=1 vitest run --config vitest.live.config.ts","check:docs":"pnpm format:docs:check && pnpm lint:docs && pnpm docs:check-links","format:all":"pnpm format && pnpm format:swift","format:fix":"oxfmt --write","lint:swift":"swiftlint lint --config .swiftlint.yml && (cd apps/ios && swiftlint lint --config .swiftlint.yml)","mayros:rpc":"node scripts/run-node.mjs agent --mode rpc --json","test:force":"node --import tsx scripts/test-force.ts","test:watch":"vitest","ui:install":"node scripts/ui.js install","android:run":"cd apps/android && ./gradlew :app:installDebug && adb shell am start -n ai.mayros.android/.MainActivity","deadcode:ci":"pnpm deadcode:report:ci:knip && pnpm deadcode:report:ci:ts-prune && pnpm deadcode:report:ci:ts-unused","format:diff":"oxfmt --write && git --no-pager diff","format:docs":"git ls-files 'docs/**/*.md' 'docs/**/*.mdx' 'README.md' | xargs oxfmt --write","gateway:dev":"MAYROS_SKIP_CHANNELS=1 node scripts/run-node.mjs --dev gateway","mac:package":"bash scripts/package-mac-app.sh","mac:restart":"bash scripts/restart-mac.sh","postinstall":"node scripts/postinstall.mjs","android:test":"cd apps/android && ./gradlew :app:testDebugUnitTest","format:check":"oxfmt --check","format:swift":"swiftformat --lint --config .swiftformat apps/macos/Sources apps/ios/Sources apps/shared/MayrosKit/Sources","plugins:sync":"node --import tsx scripts/sync-plugin-versions.ts","protocol:gen":"node --import tsx scripts/protocol-gen.ts","test:macmini":"MAYROS_TEST_VM_FORKS=0 MAYROS_TEST_PROFILE=serial node scripts/test-parallel.mjs","deadcode:knip":"pnpm dlx knip --no-progress","gateway:watch":"node scripts/watch-node.mjs gateway --force","lint:docs:fix":"pnpm dlx markdownlint-cli2 --fix","release:check":"node --import tsx scripts/release-check.ts","test:coverage":"vitest run --config vitest.unit.config.ts --coverage","cortex:install":"tsx scripts/install-cortex.ts","protocol:check":"pnpm protocol:gen && pnpm protocol:gen:swift && git diff --exit-code -- dist/protocol.schema.json apps/macos/Sources/MayrosProtocol/GatewayModels.swift","test:docker:qr":"bash scripts/e2e/qr-import-docker.sh","android:install":"cd apps/android && ./gradlew :app:installDebug","deadcode:report":"pnpm deadcode:knip; pnpm deadcode:ts-prune; pnpm deadcode:ts-unused","docs:spellcheck":"bash scripts/docs-spellcheck.sh","test:docker:all":"pnpm test:docker:live-models && pnpm test:docker:live-gateway && pnpm test:docker:onboard && pnpm test:docker:gateway-network && pnpm test:docker:qr && pnpm test:docker:doctor-switch && pnpm test:docker:plugins && pnpm test:docker:cleanup","android:assemble":"cd apps/android && ./gradlew :app:assembleDebug","docs:check-links":"node scripts/docs-link-audit.mjs","test:install:e2e":"bash scripts/test-install-sh-e2e-docker.sh","deadcode:ts-prune":"pnpm dlx ts-prune src extensions scripts","format:docs:check":"git ls-files 'docs/**/*.md' 'docs/**/*.mdx' 'README.md' | xargs oxfmt --check","gateway:dev:reset":"MAYROS_SKIP_CHANNELS=1 node scripts/run-node.mjs --dev gateway --reset","canvas:a2ui:bundle":"bash scripts/bundle-a2ui.sh","deadcode:ts-unused":"pnpm dlx ts-unused-exports tsconfig.json --ignoreTestFiles --exitWithCount","protocol:gen:swift":"node --import tsx scripts/protocol-gen-swift.ts","test:install:smoke":"bash scripts/test-install-sh-docker.sh","docs:spellcheck:fix":"bash scripts/docs-spellcheck.sh --write","test:docker:cleanup":"bash scripts/test-cleanup-docker.sh","test:docker:onboard":"bash scripts/e2e/onboard-docker.sh","test:docker:plugins":"bash scripts/e2e/plugins-docker.sh","build:plugin-sdk:dts":"tsc -p tsconfig.plugin-sdk.dts.json","deadcode:report:ci:knip":"mkdir -p .artifacts/deadcode && pnpm deadcode:knip > .artifacts/deadcode/knip.txt 2>&1 || true","test:docker:live-models":"bash scripts/test-live-models-docker.sh","test:install:e2e:openai":"MAYROS_E2E_MODELS=openai bash scripts/test-install-sh-e2e-docker.sh","test:docker:live-gateway":"bash scripts/test-live-gateway-models-docker.sh","test:docker:doctor-switch":"bash scripts/e2e/doctor-install-switch-docker.sh","test:voicecall:closedloop":"vitest run extensions/voice-call/src/manager.test.ts extensions/voice-call/src/media-stream.test.ts src/plugins/voice-call.plugin.test.ts --maxWorkers=1","test:install:e2e:anthropic":"MAYROS_E2E_MODELS=anthropic bash scripts/test-install-sh-e2e-docker.sh","deadcode:report:ci:ts-prune":"mkdir -p .artifacts/deadcode && pnpm deadcode:ts-prune > .artifacts/deadcode/ts-prune.txt 2>&1 || true","test:docker:gateway-network":"bash scripts/e2e/gateway-network-docker.sh","deadcode:report:ci:ts-unused":"mkdir -p .artifacts/deadcode && pnpm deadcode:ts-unused > .artifacts/deadcode/ts-unused-exports.txt 2>&1 || true"},"_npmUser":{"name":"apilium-ai","email":"it@apilium.com"},"repository":{"url":"git+https://github.com/ApiliumCode/mayros.git","type":"git"},"_npmVersion":"11.6.0","description":"Multi-channel AI agent framework with knowledge graph, MCP support, and coding CLI","directories":{"doc":"docs","test":"test"},"_nodeVersion":"24.8.0","dependencies":{"ws":"^8.19.0","ajv":"^8.18.0","tar":"7.5.10","zod":"^4.3.6","hono":"4.12.4","jiti":"^2.6.1","long":"^5.3.2","yaml":"^2.8.2","chalk":"^5.6.2","json5":"^2.2.3","jszip":"^3.10.1","sharp":"^0.34.5","tslog":"^4.10.2","croner":"^10.0.1","dotenv":"^17.3.1","grammy":"^1.40.0","semver":"^7.7.4","undici":"^7.22.0","express":"^5.2.1","chokidar":"^5.0.0","linkedom":"^0.18.12","commander":"^14.0.3","file-type":"^21.3.0","opusscript":"^0.0.8","pdfjs-dist":"^5.4.624","sqlite-vec":"0.1.7-alpha.2","@slack/bolt":"^4.6.0","markdown-it":"^14.1.1","osc-progress":"^0.3.0","@buape/carbon":"0.0.0-beta-20260216184201","@line/bot-sdk":"^10.6.0","cli-highlight":"^2.1.11","node-edge-tts":"^1.2.10","@clack/prompts":"^1.0.1","@slack/web-api":"^7.14.1","playwright-core":"1.58.2","qrcode-terminal":"^0.12.0","@discordjs/voice":"^0.19.0","@grammyjs/runner":"^2.0.3","@homebridge/ciao":"^1.3.5","@lydell/node-pty":"1.2.0-beta.3","@sinclair/typebox":"0.34.48","discord-api-types":"^0.38.40","https-proxy-agent":"^7.0.6","quickjs-emscripten":"^0.31.0","@mariozechner/pi-ai":"0.54.0","@mariozechner/pi-tui":"0.54.0","@mozilla/readability":"^0.6.0","@aws-sdk/client-bedrock":"^3.995.0","@whiskeysockets/baileys":"7.0.0-rc.9","@agentclientprotocol/sdk":"0.14.1","@mariozechner/pi-agent-core":"0.54.0","@mariozechner/pi-coding-agent":"0.54.0","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"packageManager":"pnpm@10.23.0","devDependencies":{"lit":"^3.3.2","tsx":"^4.21.0","oxfmt":"0.34.0","oxlint":"^1.49.0","tsdown":"^0.20.3","vitest":"^4.0.18","@types/ws":"^8.18.1","typescript":"^5.9.3","@types/node":"^25.3.0","@lit/context":"^1.1.6","signal-utils":"0.21.1","@types/semver":"^7.7.1","@types/express":"^5.0.6","@grammyjs/types":"^3.24.0","oxlint-tsgolint":"^0.14.2","@lit-labs/signals":"^0.2.0","@types/markdown-it":"^14.1.2","@vitest/coverage-v8":"^4.0.18","@types/qrcode-terminal":"^0.12.2","@typescript/native-preview":"7.0.0-dev.20260221.1"},"peerDependencies":{"node-llama-cpp":"3.17.1","@napi-rs/canvas":"^0.1.89"},"_npmOperationalInternal":{"tmp":"tmp/mayros_0.1.5_1772837478996_0.600861604161508","host":"s3://npm-registry-packages-npm-production"}},"0.1.6":{"name":"@apilium/mayros","version":"0.1.6","keywords":["agent","ai","aingle","apilium","cli","coding-assistant","cortex","knowledge-graph","mayros","mcp","multi-agent","terminal","tui"],"author":{"name":"Apilium Technologies"},"license":"MIT","_id":"@apilium/mayros@0.1.6","maintainers":[{"name":"apilium-ai","email":"it@apilium.com"}],"homepage":"https://apilium.com/en/products/mayros","bugs":{"url":"https://github.com/ApiliumCode/mayros/issues"},"bin":{"mayros":"mayros.mjs"},"dist":{"shasum":"4e28cfd6d424fe20a92a21452bfef30bf335d6c7","tarball":"https://registry.npmjs.org/@apilium/mayros/-/mayros-0.1.6.tgz","fileCount":4331,"integrity":"sha512-co6FC1j2sNNzdS0C3KVxUWYSuai4tF1UPXinlyv9YUYRFTlS8zm/KAT5D7Bjfx3r3Wgli6MeVjKnTuSpZSy5bg==","signatures":[{"sig":"MEUCIQCjRsTa3q6tZd+PO/0eXQcleI9bYbbc/0SOqSwINE++qQIgewFJzn3j+IRNR3SePET/XUd901ACwcb0TKG6bHXuLMQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":51959157},"main":"dist/index.js","pnpm":{"overrides":{"qs":"6.14.2","tar":"7.5.10","hono":"4.12.4","request":"npm:@cypress/request@3.0.10","form-data":"2.5.4","minimatch":"10.2.3","tough-cookie":"4.1.3","@discordjs/opus":"npm:opusscript@0.0.8","fast-xml-parser":"5.3.8","request-promise":"npm:@cypress/request-promise@5.0.0","@hono/node-server":"1.19.10","@sinclair/typebox":"0.34.48"},"minimumReleaseAge":2880,"onlyBuiltDependencies":["@lydell/node-pty","@matrix-org/matrix-sdk-crypto-nodejs","@napi-rs/canvas","@whiskeysockets/baileys","authenticate-pam","esbuild","koffi","node-llama-cpp","protobufjs","sharp"]},"type":"module","engines":{"node":">=22.12.0"},"exports":{".":"./dist/index.js","./sdk":{"types":"./dist/sdk/index.d.ts","default":"./dist/sdk/index.js"},"./cli-entry":"./mayros.mjs","./plugin-sdk":{"types":"./dist/plugin-sdk/index.d.ts","default":"./dist/plugin-sdk/index.js"},"./plugin-sdk/account-id":{"types":"./dist/plugin-sdk/account-id.d.ts","default":"./dist/plugin-sdk/account-id.js"}},"gitHead":"44fc6b444fcb05e77926af49cf17500c569f818a","scripts":{"dev":"node scripts/run-node.mjs","tui":"node scripts/run-node.mjs tui","lint":"oxlint --type-aware","test":"node scripts/test-parallel.mjs","build":"pnpm canvas:a2ui:bundle && tsdown && pnpm build:plugin-sdk:dts && node --import tsx scripts/write-plugin-sdk-entry-dts.ts && node --import tsx scripts/canvas-a2ui-copy.ts && node --import tsx scripts/copy-hook-metadata.ts && node --import tsx scripts/copy-export-html-templates.ts && node --import tsx scripts/write-build-info.ts && node --import tsx scripts/write-cli-compat.ts","check":"pnpm format:check && pnpm tsgo && pnpm lint","start":"node scripts/run-node.mjs","format":"oxfmt --write","mayros":"node scripts/run-node.mjs","ui:dev":"node scripts/ui.js dev","ios:gen":"bash -lc './scripts/ios-configure-signing.sh && cd apps/ios && xcodegen generate'","ios:run":"bash -lc './scripts/ios-configure-signing.sh && cd apps/ios && xcodegen generate && xcodebuild -project Mayros.xcodeproj -scheme Mayros -destination \"${IOS_DEST:-platform=iOS Simulator,name=iPhone 17}\" -configuration Debug build && xcrun simctl boot \"${IOS_SIM:-iPhone 17}\" || true && xcrun simctl launch booted ai.mayros.ios'","prepack":"pnpm build && pnpm ui:build","prepare":"command -v git >/dev/null 2>&1 && git rev-parse --is-inside-work-tree >/dev/null 2>&1 && git config core.hooksPath git-hooks || exit 0","test:ui":"pnpm --dir ui test","tui:dev":"MAYROS_PROFILE=dev node scripts/run-node.mjs --dev tui","docs:bin":"node scripts/build-docs-list.mjs","docs:dev":"cd docs && mint dev","ios:open":"bash -lc './scripts/ios-configure-signing.sh && cd apps/ios && xcodegen generate && open Mayros.xcodeproj'","lint:all":"pnpm lint && pnpm lint:swift","lint:fix":"oxlint --type-aware --fix && pnpm format","mac:open":"open dist/Mayros.app","test:all":"pnpm lint && pnpm build && pnpm test && pnpm test:e2e && pnpm test:live && pnpm test:docker:all","test:e2e":"vitest run --config vitest.e2e.config.ts","ui:build":"node scripts/ui.js build","check:loc":"node --import tsx scripts/check-ts-max-loc.ts --max 500","docs:list":"node scripts/docs-list.js","ios:build":"bash -lc './scripts/ios-configure-signing.sh && cd apps/ios && xcodegen generate && xcodebuild -project Mayros.xcodeproj -scheme Mayros -destination \"${IOS_DEST:-platform=iOS Simulator,name=iPhone 17}\" -configuration Debug build'","lint:docs":"pnpm dlx markdownlint-cli2","test:fast":"vitest run --config vitest.unit.config.ts","test:live":"MAYROS_LIVE_TEST=1 vitest run --config vitest.live.config.ts","check:docs":"pnpm format:docs:check && pnpm lint:docs && pnpm docs:check-links","format:all":"pnpm format && pnpm format:swift","format:fix":"oxfmt --write","lint:swift":"swiftlint lint --config .swiftlint.yml && (cd apps/ios && swiftlint lint --config .swiftlint.yml)","mayros:rpc":"node scripts/run-node.mjs agent --mode rpc --json","test:force":"node --import tsx scripts/test-force.ts","test:watch":"vitest","ui:install":"node scripts/ui.js install","android:run":"cd apps/android && ./gradlew :app:installDebug && adb shell am start -n ai.mayros.android/.MainActivity","deadcode:ci":"pnpm deadcode:report:ci:knip && pnpm deadcode:report:ci:ts-prune && pnpm deadcode:report:ci:ts-unused","format:diff":"oxfmt --write && git --no-pager diff","format:docs":"git ls-files 'docs/**/*.md' 'docs/**/*.mdx' 'README.md' | xargs oxfmt --write","gateway:dev":"MAYROS_SKIP_CHANNELS=1 node scripts/run-node.mjs --dev gateway","mac:package":"bash scripts/package-mac-app.sh","mac:restart":"bash scripts/restart-mac.sh","postinstall":"node scripts/postinstall.mjs","android:test":"cd apps/android && ./gradlew :app:testDebugUnitTest","format:check":"oxfmt --check","format:swift":"swiftformat --lint --config .swiftformat apps/macos/Sources apps/ios/Sources apps/shared/MayrosKit/Sources","plugins:sync":"node --import tsx scripts/sync-plugin-versions.ts","protocol:gen":"node --import tsx scripts/protocol-gen.ts","test:macmini":"MAYROS_TEST_VM_FORKS=0 MAYROS_TEST_PROFILE=serial node scripts/test-parallel.mjs","deadcode:knip":"pnpm dlx knip --no-progress","gateway:watch":"node scripts/watch-node.mjs gateway --force","lint:docs:fix":"pnpm dlx markdownlint-cli2 --fix","release:check":"node --import tsx scripts/release-check.ts","test:coverage":"vitest run --config vitest.unit.config.ts --coverage","cortex:install":"tsx scripts/install-cortex.ts","protocol:check":"pnpm protocol:gen && pnpm protocol:gen:swift && git diff --exit-code -- dist/protocol.schema.json apps/macos/Sources/MayrosProtocol/GatewayModels.swift","test:docker:qr":"bash scripts/e2e/qr-import-docker.sh","android:install":"cd apps/android && ./gradlew :app:installDebug","deadcode:report":"pnpm deadcode:knip; pnpm deadcode:ts-prune; pnpm deadcode:ts-unused","docs:spellcheck":"bash scripts/docs-spellcheck.sh","test:docker:all":"pnpm test:docker:live-models && pnpm test:docker:live-gateway && pnpm test:docker:onboard && pnpm test:docker:gateway-network && pnpm test:docker:qr && pnpm test:docker:doctor-switch && pnpm test:docker:plugins && pnpm test:docker:cleanup","android:assemble":"cd apps/android && ./gradlew :app:assembleDebug","docs:check-links":"node scripts/docs-link-audit.mjs","test:install:e2e":"bash scripts/test-install-sh-e2e-docker.sh","deadcode:ts-prune":"pnpm dlx ts-prune src extensions scripts","format:docs:check":"git ls-files 'docs/**/*.md' 'docs/**/*.mdx' 'README.md' | xargs oxfmt --check","gateway:dev:reset":"MAYROS_SKIP_CHANNELS=1 node scripts/run-node.mjs --dev gateway --reset","canvas:a2ui:bundle":"bash scripts/bundle-a2ui.sh","deadcode:ts-unused":"pnpm dlx ts-unused-exports tsconfig.json --ignoreTestFiles --exitWithCount","protocol:gen:swift":"node --import tsx scripts/protocol-gen-swift.ts","test:install:smoke":"bash scripts/test-install-sh-docker.sh","docs:spellcheck:fix":"bash scripts/docs-spellcheck.sh --write","test:docker:cleanup":"bash scripts/test-cleanup-docker.sh","test:docker:onboard":"bash scripts/e2e/onboard-docker.sh","test:docker:plugins":"bash scripts/e2e/plugins-docker.sh","build:plugin-sdk:dts":"tsc -p tsconfig.plugin-sdk.dts.json","deadcode:report:ci:knip":"mkdir -p .artifacts/deadcode && pnpm deadcode:knip > .artifacts/deadcode/knip.txt 2>&1 || true","test:docker:live-models":"bash scripts/test-live-models-docker.sh","test:install:e2e:openai":"MAYROS_E2E_MODELS=openai bash scripts/test-install-sh-e2e-docker.sh","test:docker:live-gateway":"bash scripts/test-live-gateway-models-docker.sh","test:docker:doctor-switch":"bash scripts/e2e/doctor-install-switch-docker.sh","test:voicecall:closedloop":"vitest run extensions/voice-call/src/manager.test.ts extensions/voice-call/src/media-stream.test.ts src/plugins/voice-call.plugin.test.ts --maxWorkers=1","test:install:e2e:anthropic":"MAYROS_E2E_MODELS=anthropic bash scripts/test-install-sh-e2e-docker.sh","deadcode:report:ci:ts-prune":"mkdir -p .artifacts/deadcode && pnpm deadcode:ts-prune > .artifacts/deadcode/ts-prune.txt 2>&1 || true","test:docker:gateway-network":"bash scripts/e2e/gateway-network-docker.sh","deadcode:report:ci:ts-unused":"mkdir -p .artifacts/deadcode && pnpm deadcode:ts-unused > .artifacts/deadcode/ts-unused-exports.txt 2>&1 || true"},"_npmUser":{"name":"apilium-ai","email":"it@apilium.com"},"repository":{"url":"git+https://github.com/ApiliumCode/mayros.git","type":"git"},"_npmVersion":"11.6.0","description":"Multi-channel AI agent framework with knowledge graph, MCP support, and coding CLI","directories":{"doc":"docs","test":"test"},"_nodeVersion":"24.8.0","dependencies":{"ws":"^8.19.0","ajv":"^8.18.0","tar":"7.5.10","zod":"^4.3.6","hono":"4.12.4","jiti":"^2.6.1","long":"^5.3.2","yaml":"^2.8.2","chalk":"^5.6.2","json5":"^2.2.3","jszip":"^3.10.1","sharp":"^0.34.5","tslog":"^4.10.2","croner":"^10.0.1","dotenv":"^17.3.1","grammy":"^1.40.0","semver":"^7.7.4","undici":"^7.22.0","express":"^5.2.1","chokidar":"^5.0.0","linkedom":"^0.18.12","commander":"^14.0.3","file-type":"^21.3.0","opusscript":"^0.0.8","pdfjs-dist":"^5.4.624","sqlite-vec":"0.1.7-alpha.2","@slack/bolt":"^4.6.0","markdown-it":"^14.1.1","osc-progress":"^0.3.0","@buape/carbon":"0.0.0-beta-20260216184201","@line/bot-sdk":"^10.6.0","cli-highlight":"^2.1.11","node-edge-tts":"^1.2.10","@clack/prompts":"^1.0.1","@slack/web-api":"^7.14.1","playwright-core":"1.58.2","qrcode-terminal":"^0.12.0","@discordjs/voice":"^0.19.0","@grammyjs/runner":"^2.0.3","@homebridge/ciao":"^1.3.5","@lydell/node-pty":"1.2.0-beta.3","@sinclair/typebox":"0.34.48","discord-api-types":"^0.38.40","https-proxy-agent":"^7.0.6","quickjs-emscripten":"^0.31.0","@mariozechner/pi-ai":"0.54.0","@mariozechner/pi-tui":"0.54.0","@mozilla/readability":"^0.6.0","@aws-sdk/client-bedrock":"^3.995.0","@whiskeysockets/baileys":"7.0.0-rc.9","@agentclientprotocol/sdk":"0.14.1","@mariozechner/pi-agent-core":"0.54.0","@mariozechner/pi-coding-agent":"0.54.0","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"packageManager":"pnpm@10.23.0","devDependencies":{"lit":"^3.3.2","tsx":"^4.21.0","oxfmt":"0.34.0","oxlint":"^1.49.0","tsdown":"^0.20.3","vitest":"^4.0.18","@types/ws":"^8.18.1","typescript":"^5.9.3","@types/node":"^25.3.0","@lit/context":"^1.1.6","signal-utils":"0.21.1","@types/semver":"^7.7.1","@types/express":"^5.0.6","@grammyjs/types":"^3.24.0","oxlint-tsgolint":"^0.14.2","@lit-labs/signals":"^0.2.0","@types/markdown-it":"^14.1.2","@vitest/coverage-v8":"^4.0.18","@types/qrcode-terminal":"^0.12.2","@typescript/native-preview":"7.0.0-dev.20260221.1"},"peerDependencies":{"node-llama-cpp":"3.17.1","@napi-rs/canvas":"^0.1.89"},"_npmOperationalInternal":{"tmp":"tmp/mayros_0.1.6_1772910319172_0.6143769997246873","host":"s3://npm-registry-packages-npm-production"}},"0.1.7":{"name":"@apilium/mayros","version":"0.1.7","keywords":["agent","ai","aingle","apilium","cli","coding-assistant","cortex","knowledge-graph","mayros","mcp","multi-agent","terminal","tui"],"author":{"name":"Apilium Technologies"},"license":"MIT","_id":"@apilium/mayros@0.1.7","maintainers":[{"name":"apilium-ai","email":"it@apilium.com"}],"homepage":"https://apilium.com/en/products/mayros","bugs":{"url":"https://github.com/ApiliumCode/mayros/issues"},"bin":{"mayros":"mayros.mjs"},"dist":{"shasum":"a5a1545947f9d2695a28970a4f3a5998422f4114","tarball":"https://registry.npmjs.org/@apilium/mayros/-/mayros-0.1.7.tgz","fileCount":4331,"integrity":"sha512-vJAfc3wOYrWBPoFhdDGvXSz65XzN15KL9bdypOAPy69z5zJ5Wx7yJtqZMdPWMoDcf+VpqFBNvlu1SI6GZhPGXQ==","signatures":[{"sig":"MEQCIG8a3HnhS15q/5xl/Tzy8bems4Yh0J7GN1m2fJFVpj9UAiAbsffySTdhHciLJYLc6ymtZ+C/GfbbQUrA5kjomgjbNg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":51959738},"main":"dist/index.js","pnpm":{"overrides":{"qs":"6.14.2","tar":"7.5.10","hono":"4.12.4","request":"npm:@cypress/request@3.0.10","form-data":"2.5.4","minimatch":"10.2.3","tough-cookie":"4.1.3","@discordjs/opus":"npm:opusscript@0.0.8","fast-xml-parser":"5.3.8","request-promise":"npm:@cypress/request-promise@5.0.0","@hono/node-server":"1.19.10","@sinclair/typebox":"0.34.48"},"minimumReleaseAge":2880,"onlyBuiltDependencies":["@lydell/node-pty","@matrix-org/matrix-sdk-crypto-nodejs","@napi-rs/canvas","@whiskeysockets/baileys","authenticate-pam","esbuild","koffi","node-llama-cpp","protobufjs","sharp"]},"type":"module","engines":{"node":">=22.12.0"},"exports":{".":"./dist/index.js","./sdk":{"types":"./dist/sdk/index.d.ts","default":"./dist/sdk/index.js"},"./cli-entry":"./mayros.mjs","./plugin-sdk":{"types":"./dist/plugin-sdk/index.d.ts","default":"./dist/plugin-sdk/index.js"},"./plugin-sdk/account-id":{"types":"./dist/plugin-sdk/account-id.d.ts","default":"./dist/plugin-sdk/account-id.js"}},"gitHead":"1d652a71cedf0b03870214568ac97891c71fa226","scripts":{"dev":"node scripts/run-node.mjs","tui":"node scripts/run-node.mjs tui","lint":"oxlint --type-aware","test":"node scripts/test-parallel.mjs","build":"pnpm canvas:a2ui:bundle && tsdown && pnpm build:plugin-sdk:dts && node --import tsx scripts/write-plugin-sdk-entry-dts.ts && node --import tsx scripts/canvas-a2ui-copy.ts && node --import tsx scripts/copy-hook-metadata.ts && node --import tsx scripts/copy-export-html-templates.ts && node --import tsx scripts/write-build-info.ts && node --import tsx scripts/write-cli-compat.ts","check":"pnpm format:check && pnpm tsgo && pnpm lint","start":"node scripts/run-node.mjs","format":"oxfmt --write","mayros":"node scripts/run-node.mjs","ui:dev":"node scripts/ui.js dev","ios:gen":"bash -lc './scripts/ios-configure-signing.sh && cd apps/ios && xcodegen generate'","ios:run":"bash -lc './scripts/ios-configure-signing.sh && cd apps/ios && xcodegen generate && xcodebuild -project Mayros.xcodeproj -scheme Mayros -destination \"${IOS_DEST:-platform=iOS Simulator,name=iPhone 17}\" -configuration Debug build && xcrun simctl boot \"${IOS_SIM:-iPhone 17}\" || true && xcrun simctl launch booted ai.mayros.ios'","prepack":"pnpm build && pnpm ui:build","prepare":"command -v git >/dev/null 2>&1 && git rev-parse --is-inside-work-tree >/dev/null 2>&1 && git config core.hooksPath git-hooks || exit 0","test:ui":"pnpm --dir ui test","tui:dev":"MAYROS_PROFILE=dev node scripts/run-node.mjs --dev tui","docs:bin":"node scripts/build-docs-list.mjs","docs:dev":"cd docs && mint dev","ios:open":"bash -lc './scripts/ios-configure-signing.sh && cd apps/ios && xcodegen generate && open Mayros.xcodeproj'","lint:all":"pnpm lint && pnpm lint:swift","lint:fix":"oxlint --type-aware --fix && pnpm format","mac:open":"open dist/Mayros.app","test:all":"pnpm lint && pnpm build && pnpm test && pnpm test:e2e && pnpm test:live && pnpm test:docker:all","test:e2e":"vitest run --config vitest.e2e.config.ts","ui:build":"node scripts/ui.js build","check:loc":"node --import tsx scripts/check-ts-max-loc.ts --max 500","docs:list":"node scripts/docs-list.js","ios:build":"bash -lc './scripts/ios-configure-signing.sh && cd apps/ios && xcodegen generate && xcodebuild -project Mayros.xcodeproj -scheme Mayros -destination \"${IOS_DEST:-platform=iOS Simulator,name=iPhone 17}\" -configuration Debug build'","lint:docs":"pnpm dlx markdownlint-cli2","test:fast":"vitest run --config vitest.unit.config.ts","test:live":"MAYROS_LIVE_TEST=1 vitest run --config vitest.live.config.ts","check:docs":"pnpm format:docs:check && pnpm lint:docs && pnpm docs:check-links","format:all":"pnpm format && pnpm format:swift","format:fix":"oxfmt --write","lint:swift":"swiftlint lint --config .swiftlint.yml && (cd apps/ios && swiftlint lint --config .swiftlint.yml)","mayros:rpc":"node scripts/run-node.mjs agent --mode rpc --json","test:force":"node --import tsx scripts/test-force.ts","test:watch":"vitest","ui:install":"node scripts/ui.js install","android:run":"cd apps/android && ./gradlew :app:installDebug && adb shell am start -n ai.mayros.android/.MainActivity","deadcode:ci":"pnpm deadcode:report:ci:knip && pnpm deadcode:report:ci:ts-prune && pnpm deadcode:report:ci:ts-unused","format:diff":"oxfmt --write && git --no-pager diff","format:docs":"git ls-files 'docs/**/*.md' 'docs/**/*.mdx' 'README.md' | xargs oxfmt --write","gateway:dev":"MAYROS_SKIP_CHANNELS=1 node scripts/run-node.mjs --dev gateway","mac:package":"bash scripts/package-mac-app.sh","mac:restart":"bash scripts/restart-mac.sh","postinstall":"node scripts/postinstall.mjs","android:test":"cd apps/android && ./gradlew :app:testDebugUnitTest","format:check":"oxfmt --check","format:swift":"swiftformat --lint --config .swiftformat apps/macos/Sources apps/ios/Sources apps/shared/MayrosKit/Sources","plugins:sync":"node --import tsx scripts/sync-plugin-versions.ts","protocol:gen":"node --import tsx scripts/protocol-gen.ts","test:macmini":"MAYROS_TEST_VM_FORKS=0 MAYROS_TEST_PROFILE=serial node scripts/test-parallel.mjs","deadcode:knip":"pnpm dlx knip --no-progress","gateway:watch":"node scripts/watch-node.mjs gateway --force","lint:docs:fix":"pnpm dlx markdownlint-cli2 --fix","release:check":"node --import tsx scripts/release-check.ts","test:coverage":"vitest run --config vitest.unit.config.ts --coverage","cortex:install":"tsx scripts/install-cortex.ts","protocol:check":"pnpm protocol:gen && pnpm protocol:gen:swift && git diff --exit-code -- dist/protocol.schema.json apps/macos/Sources/MayrosProtocol/GatewayModels.swift","test:docker:qr":"bash scripts/e2e/qr-import-docker.sh","android:install":"cd apps/android && ./gradlew :app:installDebug","deadcode:report":"pnpm deadcode:knip; pnpm deadcode:ts-prune; pnpm deadcode:ts-unused","docs:spellcheck":"bash scripts/docs-spellcheck.sh","test:docker:all":"pnpm test:docker:live-models && pnpm test:docker:live-gateway && pnpm test:docker:onboard && pnpm test:docker:gateway-network && pnpm test:docker:qr && pnpm test:docker:doctor-switch && pnpm test:docker:plugins && pnpm test:docker:cleanup","android:assemble":"cd apps/android && ./gradlew :app:assembleDebug","docs:check-links":"node scripts/docs-link-audit.mjs","test:install:e2e":"bash scripts/test-install-sh-e2e-docker.sh","deadcode:ts-prune":"pnpm dlx ts-prune src extensions scripts","format:docs:check":"git ls-files 'docs/**/*.md' 'docs/**/*.mdx' 'README.md' | xargs oxfmt --check","gateway:dev:reset":"MAYROS_SKIP_CHANNELS=1 node scripts/run-node.mjs --dev gateway --reset","canvas:a2ui:bundle":"bash scripts/bundle-a2ui.sh","deadcode:ts-unused":"pnpm dlx ts-unused-exports tsconfig.json --ignoreTestFiles --exitWithCount","protocol:gen:swift":"node --import tsx scripts/protocol-gen-swift.ts","test:install:smoke":"bash scripts/test-install-sh-docker.sh","docs:spellcheck:fix":"bash scripts/docs-spellcheck.sh --write","test:docker:cleanup":"bash scripts/test-cleanup-docker.sh","test:docker:onboard":"bash scripts/e2e/onboard-docker.sh","test:docker:plugins":"bash scripts/e2e/plugins-docker.sh","build:plugin-sdk:dts":"tsc -p tsconfig.plugin-sdk.dts.json","deadcode:report:ci:knip":"mkdir -p .artifacts/deadcode && pnpm deadcode:knip > .artifacts/deadcode/knip.txt 2>&1 || true","test:docker:live-models":"bash scripts/test-live-models-docker.sh","test:install:e2e:openai":"MAYROS_E2E_MODELS=openai bash scripts/test-install-sh-e2e-docker.sh","test:docker:live-gateway":"bash scripts/test-live-gateway-models-docker.sh","test:docker:doctor-switch":"bash scripts/e2e/doctor-install-switch-docker.sh","test:voicecall:closedloop":"vitest run extensions/voice-call/src/manager.test.ts extensions/voice-call/src/media-stream.test.ts src/plugins/voice-call.plugin.test.ts --maxWorkers=1","test:install:e2e:anthropic":"MAYROS_E2E_MODELS=anthropic bash scripts/test-install-sh-e2e-docker.sh","deadcode:report:ci:ts-prune":"mkdir -p .artifacts/deadcode && pnpm deadcode:ts-prune > .artifacts/deadcode/ts-prune.txt 2>&1 || true","test:docker:gateway-network":"bash scripts/e2e/gateway-network-docker.sh","deadcode:report:ci:ts-unused":"mkdir -p .artifacts/deadcode && pnpm deadcode:ts-unused > .artifacts/deadcode/ts-unused-exports.txt 2>&1 || true"},"_npmUser":{"name":"apilium-ai","email":"it@apilium.com"},"repository":{"url":"git+https://github.com/ApiliumCode/mayros.git","type":"git"},"_npmVersion":"11.6.0","description":"Multi-channel AI agent framework with knowledge graph, MCP support, and coding CLI","directories":{"doc":"docs","test":"test"},"_nodeVersion":"24.8.0","dependencies":{"ws":"^8.19.0","ajv":"^8.18.0","tar":"7.5.10","zod":"^4.3.6","hono":"4.12.4","jiti":"^2.6.1","long":"^5.3.2","yaml":"^2.8.2","chalk":"^5.6.2","json5":"^2.2.3","jszip":"^3.10.1","sharp":"^0.34.5","tslog":"^4.10.2","croner":"^10.0.1","dotenv":"^17.3.1","grammy":"^1.40.0","semver":"^7.7.4","undici":"^7.22.0","express":"^5.2.1","chokidar":"^5.0.0","linkedom":"^0.18.12","commander":"^14.0.3","file-type":"^21.3.0","opusscript":"^0.0.8","pdfjs-dist":"^5.4.624","sqlite-vec":"0.1.7-alpha.2","@slack/bolt":"^4.6.0","markdown-it":"^14.1.1","osc-progress":"^0.3.0","@buape/carbon":"0.0.0-beta-20260216184201","@line/bot-sdk":"^10.6.0","cli-highlight":"^2.1.11","node-edge-tts":"^1.2.10","@clack/prompts":"^1.0.1","@slack/web-api":"^7.14.1","playwright-core":"1.58.2","qrcode-terminal":"^0.12.0","@discordjs/voice":"^0.19.0","@grammyjs/runner":"^2.0.3","@homebridge/ciao":"^1.3.5","@lydell/node-pty":"1.2.0-beta.3","@sinclair/typebox":"0.34.48","discord-api-types":"^0.38.40","https-proxy-agent":"^7.0.6","quickjs-emscripten":"^0.31.0","@mariozechner/pi-ai":"0.54.0","@mariozechner/pi-tui":"0.54.0","@mozilla/readability":"^0.6.0","@aws-sdk/client-bedrock":"^3.995.0","@whiskeysockets/baileys":"7.0.0-rc.9","@agentclientprotocol/sdk":"0.14.1","@mariozechner/pi-agent-core":"0.54.0","@mariozechner/pi-coding-agent":"0.54.0","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"packageManager":"pnpm@10.23.0","devDependencies":{"lit":"^3.3.2","tsx":"^4.21.0","oxfmt":"0.34.0","oxlint":"^1.49.0","tsdown":"^0.20.3","vitest":"^4.0.18","@types/ws":"^8.18.1","typescript":"^5.9.3","@types/node":"^25.3.0","@lit/context":"^1.1.6","signal-utils":"0.21.1","@types/semver":"^7.7.1","@types/express":"^5.0.6","@grammyjs/types":"^3.24.0","oxlint-tsgolint":"^0.14.2","@lit-labs/signals":"^0.2.0","@types/markdown-it":"^14.1.2","@vitest/coverage-v8":"^4.0.18","@types/qrcode-terminal":"^0.12.2","@typescript/native-preview":"7.0.0-dev.20260221.1"},"peerDependencies":{"node-llama-cpp":"3.17.1","@napi-rs/canvas":"^0.1.89"},"_npmOperationalInternal":{"tmp":"tmp/mayros_0.1.7_1772914367048_0.5670690724068248","host":"s3://npm-registry-packages-npm-production"}},"0.1.8":{"name":"@apilium/mayros","version":"0.1.8","keywords":["agent","ai","aingle","apilium","cli","coding-assistant","cortex","knowledge-graph","mayros","mcp","multi-agent","terminal","tui"],"author":{"name":"Apilium Technologies"},"license":"MIT","_id":"@apilium/mayros@0.1.8","maintainers":[{"name":"apilium-ai","email":"it@apilium.com"}],"homepage":"https://apilium.com/en/products/mayros","bugs":{"url":"https://github.com/ApiliumCode/mayros/issues"},"bin":{"mayros":"mayros.mjs"},"dist":{"shasum":"aebc10477361e8550ca83730a45bb6c19ef07af7","tarball":"https://registry.npmjs.org/@apilium/mayros/-/mayros-0.1.8.tgz","fileCount":4333,"integrity":"sha512-WVCBn+acD1rpB2v/ci055G23o/6XBuoshKeDlMXTUz1eD8wpcHF1oLfBs6cStt9vDWW4K9RWSsezsQmC+34GEQ==","signatures":[{"sig":"MEQCIG4wbQpgqxyCmTdf2rT15dnp+o64ZUuCrs+YaXkyMzr4AiB9eNnloHxa4Z8Hhn6QAVe73mtdtwgR1mIIaGL70Gpruw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":52002268},"main":"dist/index.js","pnpm":{"overrides":{"qs":"6.14.2","tar":"7.5.10","hono":"4.12.4","request":"npm:@cypress/request@3.0.10","form-data":"2.5.4","minimatch":"10.2.3","tough-cookie":"4.1.3","@discordjs/opus":"npm:opusscript@0.0.8","fast-xml-parser":"5.3.8","request-promise":"npm:@cypress/request-promise@5.0.0","@hono/node-server":"1.19.10","@sinclair/typebox":"0.34.48"},"minimumReleaseAge":2880,"onlyBuiltDependencies":["@lydell/node-pty","@matrix-org/matrix-sdk-crypto-nodejs","@napi-rs/canvas","@whiskeysockets/baileys","authenticate-pam","esbuild","koffi","node-llama-cpp","protobufjs","sharp"]},"type":"module","engines":{"node":">=22.12.0"},"exports":{".":"./dist/index.js","./sdk":{"types":"./dist/sdk/index.d.ts","default":"./dist/sdk/index.js"},"./cli-entry":"./mayros.mjs","./plugin-sdk":{"types":"./dist/plugin-sdk/index.d.ts","default":"./dist/plugin-sdk/index.js"},"./plugin-sdk/account-id":{"types":"./dist/plugin-sdk/account-id.d.ts","default":"./dist/plugin-sdk/account-id.js"}},"gitHead":"a79e76c00aae1902171f739b43ffabf67e663dcb","scripts":{"dev":"node scripts/run-node.mjs","tui":"node scripts/run-node.mjs tui","lint":"oxlint --type-aware","test":"node scripts/test-parallel.mjs","build":"pnpm canvas:a2ui:bundle && tsdown && pnpm build:plugin-sdk:dts && node --import tsx scripts/write-plugin-sdk-entry-dts.ts && node --import tsx scripts/canvas-a2ui-copy.ts && node --import tsx scripts/copy-hook-metadata.ts && node --import tsx scripts/copy-export-html-templates.ts && node --import tsx scripts/write-build-info.ts && node --import tsx scripts/write-cli-compat.ts","check":"pnpm format:check && pnpm tsgo && pnpm lint","start":"node scripts/run-node.mjs","format":"oxfmt --write","mayros":"node scripts/run-node.mjs","ui:dev":"node scripts/ui.js dev","ios:gen":"bash -lc './scripts/ios-configure-signing.sh && cd apps/ios && xcodegen generate'","ios:run":"bash -lc './scripts/ios-configure-signing.sh && cd apps/ios && xcodegen generate && xcodebuild -project Mayros.xcodeproj -scheme Mayros -destination \"${IOS_DEST:-platform=iOS Simulator,name=iPhone 17}\" -configuration Debug build && xcrun simctl boot \"${IOS_SIM:-iPhone 17}\" || true && xcrun simctl launch booted ai.mayros.ios'","prepack":"pnpm build && pnpm ui:build","prepare":"command -v git >/dev/null 2>&1 && git rev-parse --is-inside-work-tree >/dev/null 2>&1 && git config core.hooksPath git-hooks || exit 0","test:ui":"pnpm --dir ui test","tui:dev":"MAYROS_PROFILE=dev node scripts/run-node.mjs --dev tui","docs:bin":"node scripts/build-docs-list.mjs","docs:dev":"cd docs && mint dev","ios:open":"bash -lc './scripts/ios-configure-signing.sh && cd apps/ios && xcodegen generate && open Mayros.xcodeproj'","lint:all":"pnpm lint && pnpm lint:swift","lint:fix":"oxlint --type-aware --fix && pnpm format","mac:open":"open dist/Mayros.app","test:all":"pnpm lint && pnpm build && pnpm test && pnpm test:e2e && pnpm test:live && pnpm test:docker:all","test:e2e":"vitest run --config vitest.e2e.config.ts","ui:build":"node scripts/ui.js build","check:loc":"node --import tsx scripts/check-ts-max-loc.ts --max 500","docs:list":"node scripts/docs-list.js","ios:build":"bash -lc './scripts/ios-configure-signing.sh && cd apps/ios && xcodegen generate && xcodebuild -project Mayros.xcodeproj -scheme Mayros -destination \"${IOS_DEST:-platform=iOS Simulator,name=iPhone 17}\" -configuration Debug build'","lint:docs":"pnpm dlx markdownlint-cli2","test:fast":"vitest run --config vitest.unit.config.ts","test:live":"MAYROS_LIVE_TEST=1 vitest run --config vitest.live.config.ts","check:docs":"pnpm format:docs:check && pnpm lint:docs && pnpm docs:check-links","format:all":"pnpm format && pnpm format:swift","format:fix":"oxfmt --write","lint:swift":"swiftlint lint --config .swiftlint.yml && (cd apps/ios && swiftlint lint --config .swiftlint.yml)","mayros:rpc":"node scripts/run-node.mjs agent --mode rpc --json","test:force":"node --import tsx scripts/test-force.ts","test:watch":"vitest","ui:install":"node scripts/ui.js install","android:run":"cd apps/android && ./gradlew :app:installDebug && adb shell am start -n ai.mayros.android/.MainActivity","deadcode:ci":"pnpm deadcode:report:ci:knip && pnpm deadcode:report:ci:ts-prune && pnpm deadcode:report:ci:ts-unused","format:diff":"oxfmt --write && git --no-pager diff","format:docs":"git ls-files 'docs/**/*.md' 'docs/**/*.mdx' 'README.md' | xargs oxfmt --write","gateway:dev":"MAYROS_SKIP_CHANNELS=1 node scripts/run-node.mjs --dev gateway","mac:package":"bash scripts/package-mac-app.sh","mac:restart":"bash scripts/restart-mac.sh","postinstall":"node scripts/postinstall.mjs","android:test":"cd apps/android && ./gradlew :app:testDebugUnitTest","format:check":"oxfmt --check","format:swift":"swiftformat --lint --config .swiftformat apps/macos/Sources apps/ios/Sources apps/shared/MayrosKit/Sources","plugins:sync":"node --import tsx scripts/sync-plugin-versions.ts","protocol:gen":"node --import tsx scripts/protocol-gen.ts","test:macmini":"MAYROS_TEST_VM_FORKS=0 MAYROS_TEST_PROFILE=serial node scripts/test-parallel.mjs","deadcode:knip":"pnpm dlx knip --no-progress","gateway:watch":"node scripts/watch-node.mjs gateway --force","lint:docs:fix":"pnpm dlx markdownlint-cli2 --fix","release:check":"node --import tsx scripts/release-check.ts","test:coverage":"vitest run --config vitest.unit.config.ts --coverage","cortex:install":"tsx scripts/install-cortex.ts","protocol:check":"pnpm protocol:gen && pnpm protocol:gen:swift && git diff --exit-code -- dist/protocol.schema.json apps/macos/Sources/MayrosProtocol/GatewayModels.swift","test:docker:qr":"bash scripts/e2e/qr-import-docker.sh","android:install":"cd apps/android && ./gradlew :app:installDebug","deadcode:report":"pnpm deadcode:knip; pnpm deadcode:ts-prune; pnpm deadcode:ts-unused","docs:spellcheck":"bash scripts/docs-spellcheck.sh","test:docker:all":"pnpm test:docker:live-models && pnpm test:docker:live-gateway && pnpm test:docker:onboard && pnpm test:docker:gateway-network && pnpm test:docker:qr && pnpm test:docker:doctor-switch && pnpm test:docker:plugins && pnpm test:docker:cleanup","android:assemble":"cd apps/android && ./gradlew :app:assembleDebug","docs:check-links":"node scripts/docs-link-audit.mjs","test:install:e2e":"bash scripts/test-install-sh-e2e-docker.sh","deadcode:ts-prune":"pnpm dlx ts-prune src extensions scripts","format:docs:check":"git ls-files 'docs/**/*.md' 'docs/**/*.mdx' 'README.md' | xargs oxfmt --check","gateway:dev:reset":"MAYROS_SKIP_CHANNELS=1 node scripts/run-node.mjs --dev gateway --reset","canvas:a2ui:bundle":"bash scripts/bundle-a2ui.sh","deadcode:ts-unused":"pnpm dlx ts-unused-exports tsconfig.json --ignoreTestFiles --exitWithCount","protocol:gen:swift":"node --import tsx scripts/protocol-gen-swift.ts","test:install:smoke":"bash scripts/test-install-sh-docker.sh","docs:spellcheck:fix":"bash scripts/docs-spellcheck.sh --write","test:docker:cleanup":"bash scripts/test-cleanup-docker.sh","test:docker:onboard":"bash scripts/e2e/onboard-docker.sh","test:docker:plugins":"bash scripts/e2e/plugins-docker.sh","build:plugin-sdk:dts":"tsc -p tsconfig.plugin-sdk.dts.json","deadcode:report:ci:knip":"mkdir -p .artifacts/deadcode && pnpm deadcode:knip > .artifacts/deadcode/knip.txt 2>&1 || true","test:docker:live-models":"bash scripts/test-live-models-docker.sh","test:install:e2e:openai":"MAYROS_E2E_MODELS=openai bash scripts/test-install-sh-e2e-docker.sh","test:docker:live-gateway":"bash scripts/test-live-gateway-models-docker.sh","test:docker:doctor-switch":"bash scripts/e2e/doctor-install-switch-docker.sh","test:voicecall:closedloop":"vitest run extensions/voice-call/src/manager.test.ts extensions/voice-call/src/media-stream.test.ts src/plugins/voice-call.plugin.test.ts --maxWorkers=1","test:install:e2e:anthropic":"MAYROS_E2E_MODELS=anthropic bash scripts/test-install-sh-e2e-docker.sh","deadcode:report:ci:ts-prune":"mkdir -p .artifacts/deadcode && pnpm deadcode:ts-prune > .artifacts/deadcode/ts-prune.txt 2>&1 || true","test:docker:gateway-network":"bash scripts/e2e/gateway-network-docker.sh","deadcode:report:ci:ts-unused":"mkdir -p .artifacts/deadcode && pnpm deadcode:ts-unused > .artifacts/deadcode/ts-unused-exports.txt 2>&1 || true"},"_npmUser":{"name":"apilium-ai","email":"it@apilium.com"},"repository":{"url":"git+https://github.com/ApiliumCode/mayros.git","type":"git"},"_npmVersion":"11.6.0","description":"Multi-channel AI agent framework with knowledge graph, MCP support, and coding CLI","directories":{"doc":"docs","test":"test"},"_nodeVersion":"24.8.0","dependencies":{"ws":"^8.19.0","ajv":"^8.18.0","tar":"7.5.10","zod":"^4.3.6","hono":"4.12.4","jiti":"^2.6.1","long":"^5.3.2","yaml":"^2.8.2","chalk":"^5.6.2","json5":"^2.2.3","jszip":"^3.10.1","sharp":"^0.34.5","tslog":"^4.10.2","croner":"^10.0.1","dotenv":"^17.3.1","grammy":"^1.40.0","semver":"^7.7.4","undici":"^7.22.0","express":"^5.2.1","chokidar":"^5.0.0","linkedom":"^0.18.12","commander":"^14.0.3","file-type":"^21.3.0","opusscript":"^0.0.8","pdfjs-dist":"^5.4.624","sqlite-vec":"0.1.7-alpha.2","@slack/bolt":"^4.6.0","markdown-it":"^14.1.1","osc-progress":"^0.3.0","@buape/carbon":"0.0.0-beta-20260216184201","@line/bot-sdk":"^10.6.0","cli-highlight":"^2.1.11","node-edge-tts":"^1.2.10","@clack/prompts":"^1.0.1","@slack/web-api":"^7.14.1","playwright-core":"1.58.2","qrcode-terminal":"^0.12.0","@discordjs/voice":"^0.19.0","@grammyjs/runner":"^2.0.3","@homebridge/ciao":"^1.3.5","@lydell/node-pty":"1.2.0-beta.3","@sinclair/typebox":"0.34.48","discord-api-types":"^0.38.40","https-proxy-agent":"^7.0.6","quickjs-emscripten":"^0.31.0","@mariozechner/pi-ai":"0.54.0","@mariozechner/pi-tui":"0.54.0","@mozilla/readability":"^0.6.0","@aws-sdk/client-bedrock":"^3.995.0","@whiskeysockets/baileys":"7.0.0-rc.9","@agentclientprotocol/sdk":"0.14.1","@mariozechner/pi-agent-core":"0.54.0","@mariozechner/pi-coding-agent":"0.54.0","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"packageManager":"pnpm@10.23.0","devDependencies":{"lit":"^3.3.2","tsx":"^4.21.0","oxfmt":"0.34.0","oxlint":"^1.49.0","tsdown":"^0.20.3","vitest":"^4.0.18","@types/ws":"^8.18.1","typescript":"^5.9.3","@types/node":"^25.3.0","@lit/context":"^1.1.6","signal-utils":"0.21.1","@types/semver":"^7.7.1","@types/express":"^5.0.6","@grammyjs/types":"^3.24.0","oxlint-tsgolint":"^0.14.2","@lit-labs/signals":"^0.2.0","@types/markdown-it":"^14.1.2","@vitest/coverage-v8":"^4.0.18","@types/qrcode-terminal":"^0.12.2","@typescript/native-preview":"7.0.0-dev.20260221.1"},"peerDependencies":{"node-llama-cpp":"3.17.1","@napi-rs/canvas":"^0.1.89"},"_npmOperationalInternal":{"tmp":"tmp/mayros_0.1.8_1772998411922_0.29464581216129937","host":"s3://npm-registry-packages-npm-production"}},"0.1.9":{"name":"@apilium/mayros","version":"0.1.9","keywords":["agent","ai","aingle","apilium","cli","coding-assistant","cortex","knowledge-graph","mayros","mcp","multi-agent","terminal","tui"],"author":{"name":"Apilium Technologies"},"license":"MIT","_id":"@apilium/mayros@0.1.9","maintainers":[{"name":"apilium-ai","email":"it@apilium.com"}],"homepage":"https://apilium.com/en/products/mayros","bugs":{"url":"https://github.com/ApiliumCode/mayros/issues"},"bin":{"mayros":"mayros.mjs"},"dist":{"shasum":"846cad34da8c8a14979223d102850f00f92fbc1d","tarball":"https://registry.npmjs.org/@apilium/mayros/-/mayros-0.1.9.tgz","fileCount":4333,"integrity":"sha512-O5iqZt08Dn7N11msSouMHa2NWjYJgMkO/+sE1p7rAd+MReNJY7sr7hHMmGBwVLytleYrFqbVydmS6U+GSwAXkQ==","signatures":[{"sig":"MEUCIQCYIiwh6mnjmucCP2O5qpNuWubEywybNM4028fhjdNVzQIgJ35F+u4ikLF0oT1HZ72AjgjY6RQQYmeKiFF4Mxwts2Y=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":52002736},"main":"dist/index.js","pnpm":{"overrides":{"qs":"6.14.2","tar":"7.5.10","hono":"4.12.4","request":"npm:@cypress/request@3.0.10","form-data":"2.5.4","minimatch":"10.2.3","tough-cookie":"4.1.3","@discordjs/opus":"npm:opusscript@0.0.8","fast-xml-parser":"5.3.8","request-promise":"npm:@cypress/request-promise@5.0.0","@hono/node-server":"1.19.10","@sinclair/typebox":"0.34.48"},"minimumReleaseAge":2880,"onlyBuiltDependencies":["@lydell/node-pty","@matrix-org/matrix-sdk-crypto-nodejs","@napi-rs/canvas","@whiskeysockets/baileys","authenticate-pam","esbuild","koffi","node-llama-cpp","protobufjs","sharp"]},"type":"module","engines":{"node":">=22.12.0"},"exports":{".":"./dist/index.js","./sdk":{"types":"./dist/sdk/index.d.ts","default":"./dist/sdk/index.js"},"./cli-entry":"./mayros.mjs","./plugin-sdk":{"types":"./dist/plugin-sdk/index.d.ts","default":"./dist/plugin-sdk/index.js"},"./plugin-sdk/account-id":{"types":"./dist/plugin-sdk/account-id.d.ts","default":"./dist/plugin-sdk/account-id.js"}},"gitHead":"88a7fe511ec5491081d5c7e15e9b82042c6d4800","scripts":{"dev":"node scripts/run-node.mjs","tui":"node scripts/run-node.mjs tui","lint":"oxlint --type-aware","test":"node scripts/test-parallel.mjs","build":"pnpm canvas:a2ui:bundle && tsdown && pnpm build:plugin-sdk:dts && node --import tsx scripts/write-plugin-sdk-entry-dts.ts && node --import tsx scripts/canvas-a2ui-copy.ts && node --import tsx scripts/copy-hook-metadata.ts && node --import tsx scripts/copy-export-html-templates.ts && node --import tsx scripts/write-build-info.ts && node --import tsx scripts/write-cli-compat.ts","check":"pnpm format:check && pnpm tsgo && pnpm lint","start":"node scripts/run-node.mjs","format":"oxfmt --write","mayros":"node scripts/run-node.mjs","ui:dev":"node scripts/ui.js dev","ios:gen":"bash -lc './scripts/ios-configure-signing.sh && cd apps/ios && xcodegen generate'","ios:run":"bash -lc './scripts/ios-configure-signing.sh && cd apps/ios && xcodegen generate && xcodebuild -project Mayros.xcodeproj -scheme Mayros -destination \"${IOS_DEST:-platform=iOS Simulator,name=iPhone 17}\" -configuration Debug build && xcrun simctl boot \"${IOS_SIM:-iPhone 17}\" || true && xcrun simctl launch booted ai.mayros.ios'","prepack":"pnpm build && pnpm ui:build","prepare":"command -v git >/dev/null 2>&1 && git rev-parse --is-inside-work-tree >/dev/null 2>&1 && git config core.hooksPath git-hooks || exit 0","test:ui":"pnpm --dir ui test","tui:dev":"MAYROS_PROFILE=dev node scripts/run-node.mjs --dev tui","docs:bin":"node scripts/build-docs-list.mjs","docs:dev":"cd docs && mint dev","ios:open":"bash -lc './scripts/ios-configure-signing.sh && cd apps/ios && xcodegen generate && open Mayros.xcodeproj'","lint:all":"pnpm lint && pnpm lint:swift","lint:fix":"oxlint --type-aware --fix && pnpm format","mac:open":"open dist/Mayros.app","test:all":"pnpm lint && pnpm build && pnpm test && pnpm test:e2e && pnpm test:live && pnpm test:docker:all","test:e2e":"vitest run --config vitest.e2e.config.ts","ui:build":"node scripts/ui.js build","check:loc":"node --import tsx scripts/check-ts-max-loc.ts --max 500","docs:list":"node scripts/docs-list.js","ios:build":"bash -lc './scripts/ios-configure-signing.sh && cd apps/ios && xcodegen generate && xcodebuild -project Mayros.xcodeproj -scheme Mayros -destination \"${IOS_DEST:-platform=iOS Simulator,name=iPhone 17}\" -configuration Debug build'","lint:docs":"pnpm dlx markdownlint-cli2","test:fast":"vitest run --config vitest.unit.config.ts","test:live":"MAYROS_LIVE_TEST=1 vitest run --config vitest.live.config.ts","check:docs":"pnpm format:docs:check && pnpm lint:docs && pnpm docs:check-links","format:all":"pnpm format && pnpm format:swift","format:fix":"oxfmt --write","lint:swift":"swiftlint lint --config .swiftlint.yml && (cd apps/ios && swiftlint lint --config .swiftlint.yml)","mayros:rpc":"node scripts/run-node.mjs agent --mode rpc --json","test:force":"node --import tsx scripts/test-force.ts","test:watch":"vitest","ui:install":"node scripts/ui.js install","android:run":"cd apps/android && ./gradlew :app:installDebug && adb shell am start -n ai.mayros.android/.MainActivity","deadcode:ci":"pnpm deadcode:report:ci:knip && pnpm deadcode:report:ci:ts-prune && pnpm deadcode:report:ci:ts-unused","format:diff":"oxfmt --write && git --no-pager diff","format:docs":"git ls-files 'docs/**/*.md' 'docs/**/*.mdx' 'README.md' | xargs oxfmt --write","gateway:dev":"MAYROS_SKIP_CHANNELS=1 node scripts/run-node.mjs --dev gateway","mac:package":"bash scripts/package-mac-app.sh","mac:restart":"bash scripts/restart-mac.sh","postinstall":"node scripts/postinstall.mjs","android:test":"cd apps/android && ./gradlew :app:testDebugUnitTest","format:check":"oxfmt --check","format:swift":"swiftformat --lint --config .swiftformat apps/macos/Sources apps/ios/Sources apps/shared/MayrosKit/Sources","plugins:sync":"node --import tsx scripts/sync-plugin-versions.ts","protocol:gen":"node --import tsx scripts/protocol-gen.ts","test:macmini":"MAYROS_TEST_VM_FORKS=0 MAYROS_TEST_PROFILE=serial node scripts/test-parallel.mjs","deadcode:knip":"pnpm dlx knip --no-progress","gateway:watch":"node scripts/watch-node.mjs gateway --force","lint:docs:fix":"pnpm dlx markdownlint-cli2 --fix","release:check":"node --import tsx scripts/release-check.ts","test:coverage":"vitest run --config vitest.unit.config.ts --coverage","cortex:install":"tsx scripts/install-cortex.ts","protocol:check":"pnpm protocol:gen && pnpm protocol:gen:swift && git diff --exit-code -- dist/protocol.schema.json apps/macos/Sources/MayrosProtocol/GatewayModels.swift","test:docker:qr":"bash scripts/e2e/qr-import-docker.sh","android:install":"cd apps/android && ./gradlew :app:installDebug","deadcode:report":"pnpm deadcode:knip; pnpm deadcode:ts-prune; pnpm deadcode:ts-unused","docs:spellcheck":"bash scripts/docs-spellcheck.sh","test:docker:all":"pnpm test:docker:live-models && pnpm test:docker:live-gateway && pnpm test:docker:onboard && pnpm test:docker:gateway-network && pnpm test:docker:qr && pnpm test:docker:doctor-switch && pnpm test:docker:plugins && pnpm test:docker:cleanup","android:assemble":"cd apps/android && ./gradlew :app:assembleDebug","docs:check-links":"node scripts/docs-link-audit.mjs","test:install:e2e":"bash scripts/test-install-sh-e2e-docker.sh","deadcode:ts-prune":"pnpm dlx ts-prune src extensions scripts","format:docs:check":"git ls-files 'docs/**/*.md' 'docs/**/*.mdx' 'README.md' | xargs oxfmt --check","gateway:dev:reset":"MAYROS_SKIP_CHANNELS=1 node scripts/run-node.mjs --dev gateway --reset","canvas:a2ui:bundle":"bash scripts/bundle-a2ui.sh","deadcode:ts-unused":"pnpm dlx ts-unused-exports tsconfig.json --ignoreTestFiles --exitWithCount","protocol:gen:swift":"node --import tsx scripts/protocol-gen-swift.ts","test:install:smoke":"bash scripts/test-install-sh-docker.sh","docs:spellcheck:fix":"bash scripts/docs-spellcheck.sh --write","test:docker:cleanup":"bash scripts/test-cleanup-docker.sh","test:docker:onboard":"bash scripts/e2e/onboard-docker.sh","test:docker:plugins":"bash scripts/e2e/plugins-docker.sh","build:plugin-sdk:dts":"tsc -p tsconfig.plugin-sdk.dts.json","deadcode:report:ci:knip":"mkdir -p .artifacts/deadcode && pnpm deadcode:knip > .artifacts/deadcode/knip.txt 2>&1 || true","test:docker:live-models":"bash scripts/test-live-models-docker.sh","test:install:e2e:openai":"MAYROS_E2E_MODELS=openai bash scripts/test-install-sh-e2e-docker.sh","test:docker:live-gateway":"bash scripts/test-live-gateway-models-docker.sh","test:docker:doctor-switch":"bash scripts/e2e/doctor-install-switch-docker.sh","test:voicecall:closedloop":"vitest run extensions/voice-call/src/manager.test.ts extensions/voice-call/src/media-stream.test.ts src/plugins/voice-call.plugin.test.ts --maxWorkers=1","test:install:e2e:anthropic":"MAYROS_E2E_MODELS=anthropic bash scripts/test-install-sh-e2e-docker.sh","deadcode:report:ci:ts-prune":"mkdir -p .artifacts/deadcode && pnpm deadcode:ts-prune > .artifacts/deadcode/ts-prune.txt 2>&1 || true","test:docker:gateway-network":"bash scripts/e2e/gateway-network-docker.sh","deadcode:report:ci:ts-unused":"mkdir -p .artifacts/deadcode && pnpm deadcode:ts-unused > .artifacts/deadcode/ts-unused-exports.txt 2>&1 || true"},"_npmUser":{"name":"apilium-ai","email":"it@apilium.com"},"repository":{"url":"git+https://github.com/ApiliumCode/mayros.git","type":"git"},"_npmVersion":"11.6.0","description":"Multi-channel AI agent framework with knowledge graph, MCP support, and coding CLI","directories":{"doc":"docs","test":"test"},"_nodeVersion":"24.8.0","dependencies":{"ws":"^8.19.0","ajv":"^8.18.0","tar":"7.5.10","zod":"^4.3.6","hono":"4.12.4","jiti":"^2.6.1","long":"^5.3.2","yaml":"^2.8.2","chalk":"^5.6.2","json5":"^2.2.3","jszip":"^3.10.1","sharp":"^0.34.5","tslog":"^4.10.2","croner":"^10.0.1","dotenv":"^17.3.1","grammy":"^1.40.0","semver":"^7.7.4","undici":"^7.22.0","express":"^5.2.1","chokidar":"^5.0.0","linkedom":"^0.18.12","commander":"^14.0.3","file-type":"^21.3.0","opusscript":"^0.0.8","pdfjs-dist":"^5.4.624","sqlite-vec":"0.1.7-alpha.2","@slack/bolt":"^4.6.0","markdown-it":"^14.1.1","osc-progress":"^0.3.0","@buape/carbon":"0.0.0-beta-20260216184201","@line/bot-sdk":"^10.6.0","cli-highlight":"^2.1.11","node-edge-tts":"^1.2.10","@clack/prompts":"^1.0.1","@slack/web-api":"^7.14.1","playwright-core":"1.58.2","qrcode-terminal":"^0.12.0","@discordjs/voice":"^0.19.0","@grammyjs/runner":"^2.0.3","@homebridge/ciao":"^1.3.5","@lydell/node-pty":"1.2.0-beta.3","@sinclair/typebox":"0.34.48","discord-api-types":"^0.38.40","https-proxy-agent":"^7.0.6","quickjs-emscripten":"^0.31.0","@mariozechner/pi-ai":"0.54.0","@mariozechner/pi-tui":"0.54.0","@mozilla/readability":"^0.6.0","@aws-sdk/client-bedrock":"^3.995.0","@whiskeysockets/baileys":"7.0.0-rc.9","@agentclientprotocol/sdk":"0.14.1","@mariozechner/pi-agent-core":"0.54.0","@mariozechner/pi-coding-agent":"0.54.0","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"packageManager":"pnpm@10.23.0","devDependencies":{"lit":"^3.3.2","tsx":"^4.21.0","oxfmt":"0.34.0","oxlint":"^1.49.0","tsdown":"^0.20.3","vitest":"^4.0.18","@types/ws":"^8.18.1","typescript":"^5.9.3","@types/node":"^25.3.0","@lit/context":"^1.1.6","signal-utils":"0.21.1","@types/semver":"^7.7.1","@types/express":"^5.0.6","@grammyjs/types":"^3.24.0","oxlint-tsgolint":"^0.14.2","@lit-labs/signals":"^0.2.0","@types/markdown-it":"^14.1.2","@vitest/coverage-v8":"^4.0.18","@types/qrcode-terminal":"^0.12.2","@typescript/native-preview":"7.0.0-dev.20260221.1"},"peerDependencies":{"node-llama-cpp":"3.17.1","@napi-rs/canvas":"^0.1.89"},"_npmOperationalInternal":{"tmp":"tmp/mayros_0.1.9_1773061925189_0.6717494192244795","host":"s3://npm-registry-packages-npm-production"}},"0.1.10":{"name":"@apilium/mayros","version":"0.1.10","keywords":["agent","ai","aingle","apilium","cli","coding-assistant","cortex","knowledge-graph","mayros","mcp","multi-agent","terminal","tui"],"author":{"name":"Apilium Technologies"},"license":"MIT","_id":"@apilium/mayros@0.1.10","maintainers":[{"name":"apilium-ai","email":"it@apilium.com"}],"homepage":"https://apilium.com/en/products/mayros","bugs":{"url":"https://github.com/ApiliumCode/mayros/issues"},"bin":{"mayros":"mayros.mjs"},"dist":{"shasum":"13ec308ce5543e1e1a6de0d73dc76a6cd7509398","tarball":"https://registry.npmjs.org/@apilium/mayros/-/mayros-0.1.10.tgz","fileCount":4336,"integrity":"sha512-vWpdqF4QNGYFwTvWHsXh06TQfiRqhasx2UOtRseYiJENC96esj6t5N/SQZkH1LxjdTBDjPaRdccyJ/yw3W4AWA==","signatures":[{"sig":"MEUCIQDyn3D6nAU6vX4ynP//Jyer23dzOdqiD3dCVYKZ/CHh6AIgYMNC+ZTCxPRFi7I97vmuLaUZPzXVVTP2bk3LehqjnAg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":52034962},"main":"dist/index.js","pnpm":{"overrides":{"qs":"6.14.2","tar":"7.5.10","hono":"4.12.4","request":"npm:@cypress/request@3.0.10","form-data":"2.5.4","minimatch":"10.2.3","tough-cookie":"4.1.3","@discordjs/opus":"npm:opusscript@0.0.8","fast-xml-parser":"5.3.8","request-promise":"npm:@cypress/request-promise@5.0.0","@hono/node-server":"1.19.10","@sinclair/typebox":"0.34.48"},"minimumReleaseAge":2880,"onlyBuiltDependencies":["@lydell/node-pty","@matrix-org/matrix-sdk-crypto-nodejs","@napi-rs/canvas","@whiskeysockets/baileys","authenticate-pam","esbuild","koffi","node-llama-cpp","protobufjs","sharp"]},"type":"module","engines":{"node":">=22.12.0"},"exports":{".":"./dist/index.js","./sdk":{"types":"./dist/sdk/index.d.ts","default":"./dist/sdk/index.js"},"./cli-entry":"./mayros.mjs","./plugin-sdk":{"types":"./dist/plugin-sdk/index.d.ts","default":"./dist/plugin-sdk/index.js"},"./plugin-sdk/account-id":{"types":"./dist/plugin-sdk/account-id.d.ts","default":"./dist/plugin-sdk/account-id.js"}},"gitHead":"600e97019939ad282087e8e63f4c2dd3b8c5b90c","scripts":{"dev":"node scripts/run-node.mjs","tui":"node scripts/run-node.mjs tui","lint":"oxlint --type-aware","test":"node scripts/test-parallel.mjs","build":"pnpm canvas:a2ui:bundle && tsdown && pnpm build:plugin-sdk:dts && node --import tsx scripts/write-plugin-sdk-entry-dts.ts && node --import tsx scripts/canvas-a2ui-copy.ts && node --import tsx scripts/copy-hook-metadata.ts && node --import tsx scripts/copy-export-html-templates.ts && node --import tsx scripts/write-build-info.ts && node --import tsx scripts/write-cli-compat.ts","check":"pnpm format:check && pnpm tsgo && pnpm lint","start":"node scripts/run-node.mjs","format":"oxfmt --write","mayros":"node scripts/run-node.mjs","ui:dev":"node scripts/ui.js dev","ios:gen":"bash -lc './scripts/ios-configure-signing.sh && cd apps/ios && xcodegen generate'","ios:run":"bash -lc './scripts/ios-configure-signing.sh && cd apps/ios && xcodegen generate && xcodebuild -project Mayros.xcodeproj -scheme Mayros -destination \"${IOS_DEST:-platform=iOS Simulator,name=iPhone 17}\" -configuration Debug build && xcrun simctl boot \"${IOS_SIM:-iPhone 17}\" || true && xcrun simctl launch booted ai.mayros.ios'","prepack":"pnpm build && pnpm ui:build","prepare":"command -v git >/dev/null 2>&1 && git rev-parse --is-inside-work-tree >/dev/null 2>&1 && git config core.hooksPath git-hooks || exit 0","test:ui":"pnpm --dir ui test","tui:dev":"MAYROS_PROFILE=dev node scripts/run-node.mjs --dev tui","docs:bin":"node scripts/build-docs-list.mjs","docs:dev":"cd docs && mint dev","ios:open":"bash -lc './scripts/ios-configure-signing.sh && cd apps/ios && xcodegen generate && open Mayros.xcodeproj'","lint:all":"pnpm lint && pnpm lint:swift","lint:fix":"oxlint --type-aware --fix && pnpm format","mac:open":"open dist/Mayros.app","test:all":"pnpm lint && pnpm build && pnpm test && pnpm test:e2e && pnpm test:live && pnpm test:docker:all","test:e2e":"vitest run --config vitest.e2e.config.ts","ui:build":"node scripts/ui.js build","check:loc":"node --import tsx scripts/check-ts-max-loc.ts --max 500","docs:list":"node scripts/docs-list.js","ios:build":"bash -lc './scripts/ios-configure-signing.sh && cd apps/ios && xcodegen generate && xcodebuild -project Mayros.xcodeproj -scheme Mayros -destination \"${IOS_DEST:-platform=iOS Simulator,name=iPhone 17}\" -configuration Debug build'","lint:docs":"pnpm dlx markdownlint-cli2","test:fast":"vitest run --config vitest.unit.config.ts","test:live":"MAYROS_LIVE_TEST=1 vitest run --config vitest.live.config.ts","check:docs":"pnpm format:docs:check && pnpm lint:docs && pnpm docs:check-links","format:all":"pnpm format && pnpm format:swift","format:fix":"oxfmt --write","lint:swift":"swiftlint lint --config .swiftlint.yml && (cd apps/ios && swiftlint lint --config .swiftlint.yml)","mayros:rpc":"node scripts/run-node.mjs agent --mode rpc --json","test:force":"node --import tsx scripts/test-force.ts","test:watch":"vitest","ui:install":"node scripts/ui.js install","android:run":"cd apps/android && ./gradlew :app:installDebug && adb shell am start -n ai.mayros.android/.MainActivity","deadcode:ci":"pnpm deadcode:report:ci:knip && pnpm deadcode:report:ci:ts-prune && pnpm deadcode:report:ci:ts-unused","format:diff":"oxfmt --write && git --no-pager diff","format:docs":"git ls-files 'docs/**/*.md' 'docs/**/*.mdx' 'README.md' | xargs oxfmt --write","gateway:dev":"MAYROS_SKIP_CHANNELS=1 node scripts/run-node.mjs --dev gateway","mac:package":"bash scripts/package-mac-app.sh","mac:restart":"bash scripts/restart-mac.sh","postinstall":"node scripts/postinstall.mjs","android:test":"cd apps/android && ./gradlew :app:testDebugUnitTest","format:check":"oxfmt --check","format:swift":"swiftformat --lint --config .swiftformat apps/macos/Sources apps/ios/Sources apps/shared/MayrosKit/Sources","plugins:sync":"node --import tsx scripts/sync-plugin-versions.ts","protocol:gen":"node --import tsx scripts/protocol-gen.ts","test:macmini":"MAYROS_TEST_VM_FORKS=0 MAYROS_TEST_PROFILE=serial node scripts/test-parallel.mjs","deadcode:knip":"pnpm dlx knip --no-progress","gateway:watch":"node scripts/watch-node.mjs gateway --force","lint:docs:fix":"pnpm dlx markdownlint-cli2 --fix","release:check":"node --import tsx scripts/release-check.ts","test:coverage":"vitest run --config vitest.unit.config.ts --coverage","cortex:install":"tsx scripts/install-cortex.ts","protocol:check":"pnpm protocol:gen && pnpm protocol:gen:swift && git diff --exit-code -- dist/protocol.schema.json apps/macos/Sources/MayrosProtocol/GatewayModels.swift","test:docker:qr":"bash scripts/e2e/qr-import-docker.sh","android:install":"cd apps/android && ./gradlew :app:installDebug","deadcode:report":"pnpm deadcode:knip; pnpm deadcode:ts-prune; pnpm deadcode:ts-unused","docs:spellcheck":"bash scripts/docs-spellcheck.sh","test:docker:all":"pnpm test:docker:live-models && pnpm test:docker:live-gateway && pnpm test:docker:onboard && pnpm test:docker:gateway-network && pnpm test:docker:qr && pnpm test:docker:doctor-switch && pnpm test:docker:plugins && pnpm test:docker:cleanup","android:assemble":"cd apps/android && ./gradlew :app:assembleDebug","docs:check-links":"node scripts/docs-link-audit.mjs","test:install:e2e":"bash scripts/test-install-sh-e2e-docker.sh","deadcode:ts-prune":"pnpm dlx ts-prune src extensions scripts","format:docs:check":"git ls-files 'docs/**/*.md' 'docs/**/*.mdx' 'README.md' | xargs oxfmt --check","gateway:dev:reset":"MAYROS_SKIP_CHANNELS=1 node scripts/run-node.mjs --dev gateway --reset","canvas:a2ui:bundle":"bash scripts/bundle-a2ui.sh","deadcode:ts-unused":"pnpm dlx ts-unused-exports tsconfig.json --ignoreTestFiles --exitWithCount","protocol:gen:swift":"node --import tsx scripts/protocol-gen-swift.ts","test:install:smoke":"bash scripts/test-install-sh-docker.sh","docs:spellcheck:fix":"bash scripts/docs-spellcheck.sh --write","test:docker:cleanup":"bash scripts/test-cleanup-docker.sh","test:docker:onboard":"bash scripts/e2e/onboard-docker.sh","test:docker:plugins":"bash scripts/e2e/plugins-docker.sh","build:plugin-sdk:dts":"tsc -p tsconfig.plugin-sdk.dts.json","deadcode:report:ci:knip":"mkdir -p .artifacts/deadcode && pnpm deadcode:knip > .artifacts/deadcode/knip.txt 2>&1 || true","test:docker:live-models":"bash scripts/test-live-models-docker.sh","test:install:e2e:openai":"MAYROS_E2E_MODELS=openai bash scripts/test-install-sh-e2e-docker.sh","test:docker:live-gateway":"bash scripts/test-live-gateway-models-docker.sh","test:docker:doctor-switch":"bash scripts/e2e/doctor-install-switch-docker.sh","test:voicecall:closedloop":"vitest run extensions/voice-call/src/manager.test.ts extensions/voice-call/src/media-stream.test.ts src/plugins/voice-call.plugin.test.ts --maxWorkers=1","test:install:e2e:anthropic":"MAYROS_E2E_MODELS=anthropic bash scripts/test-install-sh-e2e-docker.sh","deadcode:report:ci:ts-prune":"mkdir -p .artifacts/deadcode && pnpm deadcode:ts-prune > .artifacts/deadcode/ts-prune.txt 2>&1 || true","test:docker:gateway-network":"bash scripts/e2e/gateway-network-docker.sh","deadcode:report:ci:ts-unused":"mkdir -p .artifacts/deadcode && pnpm deadcode:ts-unused > .artifacts/deadcode/ts-unused-exports.txt 2>&1 || true"},"_npmUser":{"name":"apilium-ai","email":"it@apilium.com"},"repository":{"url":"git+https://github.com/ApiliumCode/mayros.git","type":"git"},"_npmVersion":"11.6.0","description":"Multi-channel AI agent framework with knowledge graph, MCP support, and coding CLI","directories":{"doc":"docs","test":"test"},"_nodeVersion":"24.8.0","dependencies":{"ws":"^8.19.0","ajv":"^8.18.0","tar":"7.5.10","zod":"^4.3.6","hono":"4.12.4","jiti":"^2.6.1","long":"^5.3.2","yaml":"^2.8.2","chalk":"^5.6.2","json5":"^2.2.3","jszip":"^3.10.1","sharp":"^0.34.5","tslog":"^4.10.2","croner":"^10.0.1","dotenv":"^17.3.1","grammy":"^1.40.0","semver":"^7.7.4","undici":"^7.22.0","express":"^5.2.1","chokidar":"^5.0.0","linkedom":"^0.18.12","commander":"^14.0.3","file-type":"^21.3.0","opusscript":"^0.0.8","pdfjs-dist":"^5.4.624","sqlite-vec":"0.1.7-alpha.2","@slack/bolt":"^4.6.0","markdown-it":"^14.1.1","osc-progress":"^0.3.0","@buape/carbon":"0.0.0-beta-20260216184201","@line/bot-sdk":"^10.6.0","cli-highlight":"^2.1.11","node-edge-tts":"^1.2.10","@clack/prompts":"^1.0.1","@slack/web-api":"^7.14.1","playwright-core":"1.58.2","qrcode-terminal":"^0.12.0","@discordjs/voice":"^0.19.0","@grammyjs/runner":"^2.0.3","@homebridge/ciao":"^1.3.5","@lydell/node-pty":"1.2.0-beta.3","@sinclair/typebox":"0.34.48","discord-api-types":"^0.38.40","https-proxy-agent":"^7.0.6","quickjs-emscripten":"^0.31.0","@mariozechner/pi-ai":"0.54.0","@mariozechner/pi-tui":"0.54.0","@mozilla/readability":"^0.6.0","@aws-sdk/client-bedrock":"^3.995.0","@whiskeysockets/baileys":"7.0.0-rc.9","@agentclientprotocol/sdk":"0.14.1","@mariozechner/pi-agent-core":"0.54.0","@mariozechner/pi-coding-agent":"0.54.0","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"packageManager":"pnpm@10.23.0","devDependencies":{"lit":"^3.3.2","tsx":"^4.21.0","oxfmt":"0.34.0","oxlint":"^1.49.0","tsdown":"^0.20.3","vitest":"^4.0.18","@types/ws":"^8.18.1","typescript":"^5.9.3","@types/node":"^25.3.0","@lit/context":"^1.1.6","signal-utils":"0.21.1","@types/semver":"^7.7.1","@types/express":"^5.0.6","@grammyjs/types":"^3.24.0","oxlint-tsgolint":"^0.14.2","@lit-labs/signals":"^0.2.0","@types/markdown-it":"^14.1.2","@vitest/coverage-v8":"^4.0.18","@types/qrcode-terminal":"^0.12.2","@typescript/native-preview":"7.0.0-dev.20260221.1"},"peerDependencies":{"node-llama-cpp":"3.17.1","@napi-rs/canvas":"^0.1.89"},"_npmOperationalInternal":{"tmp":"tmp/mayros_0.1.10_1773075388266_0.16800589321411885","host":"s3://npm-registry-packages-npm-production"}},"0.1.11":{"name":"@apilium/mayros","version":"0.1.11","keywords":["agent","ai","aingle","apilium","cli","coding-assistant","cortex","knowledge-graph","mayros","mcp","multi-agent","terminal","tui"],"author":{"name":"Apilium Technologies"},"license":"MIT","_id":"@apilium/mayros@0.1.11","maintainers":[{"name":"apilium-ai","email":"it@apilium.com"}],"homepage":"https://apilium.com/en/products/mayros","bugs":{"url":"https://github.com/ApiliumCode/mayros/issues"},"bin":{"mayros":"mayros.mjs"},"dist":{"shasum":"6438f6a29007b91b7d3301826fd5678171e952a2","tarball":"https://registry.npmjs.org/@apilium/mayros/-/mayros-0.1.11.tgz","fileCount":4336,"integrity":"sha512-OG8VeDE8lxwLqmDi9HsV7xL7s+naiw/xsBuo2scrQVrB1O2dKiyDVgBrDnS/Q4V1ShWKOmIqWWqf0u1fd4QtAw==","signatures":[{"sig":"MEYCIQC9U6+ZV92N8lkgQplkkPFRY1Ow7qbmV9mLB2EABSveQAIhAIpykfUuP45/qL1erJnvlRhqlXFDQybV6kfuDR9OXeEJ","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":52036718},"main":"dist/index.js","pnpm":{"overrides":{"qs":"6.14.2","tar":"7.5.10","hono":"4.12.4","request":"npm:@cypress/request@3.0.10","form-data":"2.5.4","minimatch":"10.2.3","tough-cookie":"4.1.3","@discordjs/opus":"npm:opusscript@0.0.8","fast-xml-parser":"5.3.8","request-promise":"npm:@cypress/request-promise@5.0.0","@hono/node-server":"1.19.10","@sinclair/typebox":"0.34.48"},"minimumReleaseAge":2880,"onlyBuiltDependencies":["@lydell/node-pty","@matrix-org/matrix-sdk-crypto-nodejs","@napi-rs/canvas","@whiskeysockets/baileys","authenticate-pam","esbuild","koffi","node-llama-cpp","protobufjs","sharp"]},"type":"module","engines":{"node":">=22.12.0"},"exports":{".":"./dist/index.js","./sdk":{"types":"./dist/sdk/index.d.ts","default":"./dist/sdk/index.js"},"./cli-entry":"./mayros.mjs","./plugin-sdk":{"types":"./dist/plugin-sdk/index.d.ts","default":"./dist/plugin-sdk/index.js"},"./plugin-sdk/account-id":{"types":"./dist/plugin-sdk/account-id.d.ts","default":"./dist/plugin-sdk/account-id.js"}},"gitHead":"19ed343d74e999fd4b94fc520e9601b666f8a9db","scripts":{"dev":"node scripts/run-node.mjs","tui":"node scripts/run-node.mjs tui","lint":"oxlint --type-aware","test":"node scripts/test-parallel.mjs","build":"pnpm canvas:a2ui:bundle && tsdown && pnpm build:plugin-sdk:dts && node --import tsx scripts/write-plugin-sdk-entry-dts.ts && node --import tsx scripts/canvas-a2ui-copy.ts && node --import tsx scripts/copy-hook-metadata.ts && node --import tsx scripts/copy-export-html-templates.ts && node --import tsx scripts/write-build-info.ts && node --import tsx scripts/write-cli-compat.ts","check":"pnpm format:check && pnpm tsgo && pnpm lint","start":"node scripts/run-node.mjs","format":"oxfmt --write","mayros":"node scripts/run-node.mjs","ui:dev":"node scripts/ui.js dev","ios:gen":"bash -lc './scripts/ios-configure-signing.sh && cd apps/ios && xcodegen generate'","ios:run":"bash -lc './scripts/ios-configure-signing.sh && cd apps/ios && xcodegen generate && xcodebuild -project Mayros.xcodeproj -scheme Mayros -destination \"${IOS_DEST:-platform=iOS Simulator,name=iPhone 17}\" -configuration Debug build && xcrun simctl boot \"${IOS_SIM:-iPhone 17}\" || true && xcrun simctl launch booted ai.mayros.ios'","prepack":"pnpm build && pnpm ui:build","prepare":"command -v git >/dev/null 2>&1 && git rev-parse --is-inside-work-tree >/dev/null 2>&1 && git config core.hooksPath git-hooks || exit 0","test:ui":"pnpm --dir ui test","tui:dev":"MAYROS_PROFILE=dev node scripts/run-node.mjs --dev tui","docs:bin":"node scripts/build-docs-list.mjs","docs:dev":"cd docs && mint dev","ios:open":"bash -lc './scripts/ios-configure-signing.sh && cd apps/ios && xcodegen generate && open Mayros.xcodeproj'","lint:all":"pnpm lint && pnpm lint:swift","lint:fix":"oxlint --type-aware --fix && pnpm format","mac:open":"open dist/Mayros.app","test:all":"pnpm lint && pnpm build && pnpm test && pnpm test:e2e && pnpm test:live && pnpm test:docker:all","test:e2e":"vitest run --config vitest.e2e.config.ts","ui:build":"node scripts/ui.js build","check:loc":"node --import tsx scripts/check-ts-max-loc.ts --max 500","docs:list":"node scripts/docs-list.js","ios:build":"bash -lc './scripts/ios-configure-signing.sh && cd apps/ios && xcodegen generate && xcodebuild -project Mayros.xcodeproj -scheme Mayros -destination \"${IOS_DEST:-platform=iOS Simulator,name=iPhone 17}\" -configuration Debug build'","lint:docs":"pnpm dlx markdownlint-cli2","test:fast":"vitest run --config vitest.unit.config.ts","test:live":"MAYROS_LIVE_TEST=1 vitest run --config vitest.live.config.ts","check:docs":"pnpm format:docs:check && pnpm lint:docs && pnpm docs:check-links","format:all":"pnpm format && pnpm format:swift","format:fix":"oxfmt --write","lint:swift":"swiftlint lint --config .swiftlint.yml && (cd apps/ios && swiftlint lint --config .swiftlint.yml)","mayros:rpc":"node scripts/run-node.mjs agent --mode rpc --json","test:force":"node --import tsx scripts/test-force.ts","test:watch":"vitest","ui:install":"node scripts/ui.js install","android:run":"cd apps/android && ./gradlew :app:installDebug && adb shell am start -n ai.mayros.android/.MainActivity","deadcode:ci":"pnpm deadcode:report:ci:knip && pnpm deadcode:report:ci:ts-prune && pnpm deadcode:report:ci:ts-unused","format:diff":"oxfmt --write && git --no-pager diff","format:docs":"git ls-files 'docs/**/*.md' 'docs/**/*.mdx' 'README.md' | xargs oxfmt --write","gateway:dev":"MAYROS_SKIP_CHANNELS=1 node scripts/run-node.mjs --dev gateway","mac:package":"bash scripts/package-mac-app.sh","mac:restart":"bash scripts/restart-mac.sh","postinstall":"node scripts/postinstall.mjs","android:test":"cd apps/android && ./gradlew :app:testDebugUnitTest","format:check":"oxfmt --check","format:swift":"swiftformat --lint --config .swiftformat apps/macos/Sources apps/ios/Sources apps/shared/MayrosKit/Sources","plugins:sync":"node --import tsx scripts/sync-plugin-versions.ts","protocol:gen":"node --import tsx scripts/protocol-gen.ts","test:macmini":"MAYROS_TEST_VM_FORKS=0 MAYROS_TEST_PROFILE=serial node scripts/test-parallel.mjs","deadcode:knip":"pnpm dlx knip --no-progress","gateway:watch":"node scripts/watch-node.mjs gateway --force","lint:docs:fix":"pnpm dlx markdownlint-cli2 --fix","release:check":"node --import tsx scripts/release-check.ts","test:coverage":"vitest run --config vitest.unit.config.ts --coverage","cortex:install":"tsx scripts/install-cortex.ts","protocol:check":"pnpm protocol:gen && pnpm protocol:gen:swift && git diff --exit-code -- dist/protocol.schema.json apps/macos/Sources/MayrosProtocol/GatewayModels.swift","test:docker:qr":"bash scripts/e2e/qr-import-docker.sh","android:install":"cd apps/android && ./gradlew :app:installDebug","deadcode:report":"pnpm deadcode:knip; pnpm deadcode:ts-prune; pnpm deadcode:ts-unused","docs:spellcheck":"bash scripts/docs-spellcheck.sh","test:docker:all":"pnpm test:docker:live-models && pnpm test:docker:live-gateway && pnpm test:docker:onboard && pnpm test:docker:gateway-network && pnpm test:docker:qr && pnpm test:docker:doctor-switch && pnpm test:docker:plugins && pnpm test:docker:cleanup","android:assemble":"cd apps/android && ./gradlew :app:assembleDebug","docs:check-links":"node scripts/docs-link-audit.mjs","test:install:e2e":"bash scripts/test-install-sh-e2e-docker.sh","deadcode:ts-prune":"pnpm dlx ts-prune src extensions scripts","format:docs:check":"git ls-files 'docs/**/*.md' 'docs/**/*.mdx' 'README.md' | xargs oxfmt --check","gateway:dev:reset":"MAYROS_SKIP_CHANNELS=1 node scripts/run-node.mjs --dev gateway --reset","canvas:a2ui:bundle":"bash scripts/bundle-a2ui.sh","deadcode:ts-unused":"pnpm dlx ts-unused-exports tsconfig.json --ignoreTestFiles --exitWithCount","protocol:gen:swift":"node --import tsx scripts/protocol-gen-swift.ts","test:install:smoke":"bash scripts/test-install-sh-docker.sh","docs:spellcheck:fix":"bash scripts/docs-spellcheck.sh --write","test:docker:cleanup":"bash scripts/test-cleanup-docker.sh","test:docker:onboard":"bash scripts/e2e/onboard-docker.sh","test:docker:plugins":"bash scripts/e2e/plugins-docker.sh","build:plugin-sdk:dts":"tsc -p tsconfig.plugin-sdk.dts.json","deadcode:report:ci:knip":"mkdir -p .artifacts/deadcode && pnpm deadcode:knip > .artifacts/deadcode/knip.txt 2>&1 || true","test:docker:live-models":"bash scripts/test-live-models-docker.sh","test:install:e2e:openai":"MAYROS_E2E_MODELS=openai bash scripts/test-install-sh-e2e-docker.sh","test:docker:live-gateway":"bash scripts/test-live-gateway-models-docker.sh","test:docker:doctor-switch":"bash scripts/e2e/doctor-install-switch-docker.sh","test:voicecall:closedloop":"vitest run extensions/voice-call/src/manager.test.ts extensions/voice-call/src/media-stream.test.ts src/plugins/voice-call.plugin.test.ts --maxWorkers=1","test:install:e2e:anthropic":"MAYROS_E2E_MODELS=anthropic bash scripts/test-install-sh-e2e-docker.sh","deadcode:report:ci:ts-prune":"mkdir -p .artifacts/deadcode && pnpm deadcode:ts-prune > .artifacts/deadcode/ts-prune.txt 2>&1 || true","test:docker:gateway-network":"bash scripts/e2e/gateway-network-docker.sh","deadcode:report:ci:ts-unused":"mkdir -p .artifacts/deadcode && pnpm deadcode:ts-unused > .artifacts/deadcode/ts-unused-exports.txt 2>&1 || true"},"_npmUser":{"name":"apilium-ai","email":"it@apilium.com"},"repository":{"url":"git+https://github.com/ApiliumCode/mayros.git","type":"git"},"_npmVersion":"11.6.0","description":"Multi-channel AI agent framework with knowledge graph, MCP support, and coding CLI","directories":{"doc":"docs","test":"test"},"_nodeVersion":"24.8.0","dependencies":{"ws":"^8.19.0","ajv":"^8.18.0","tar":"7.5.10","zod":"^4.3.6","hono":"4.12.4","jiti":"^2.6.1","long":"^5.3.2","yaml":"^2.8.2","chalk":"^5.6.2","json5":"^2.2.3","jszip":"^3.10.1","sharp":"^0.34.5","tslog":"^4.10.2","croner":"^10.0.1","dotenv":"^17.3.1","grammy":"^1.40.0","semver":"^7.7.4","undici":"^7.22.0","express":"^5.2.1","chokidar":"^5.0.0","linkedom":"^0.18.12","commander":"^14.0.3","file-type":"^21.3.0","opusscript":"^0.0.8","pdfjs-dist":"^5.4.624","sqlite-vec":"0.1.7-alpha.2","@slack/bolt":"^4.6.0","markdown-it":"^14.1.1","osc-progress":"^0.3.0","@buape/carbon":"0.0.0-beta-20260216184201","@line/bot-sdk":"^10.6.0","cli-highlight":"^2.1.11","node-edge-tts":"^1.2.10","@clack/prompts":"^1.0.1","@slack/web-api":"^7.14.1","playwright-core":"1.58.2","qrcode-terminal":"^0.12.0","@discordjs/voice":"^0.19.0","@grammyjs/runner":"^2.0.3","@homebridge/ciao":"^1.3.5","@lydell/node-pty":"1.2.0-beta.3","@sinclair/typebox":"0.34.48","discord-api-types":"^0.38.40","https-proxy-agent":"^7.0.6","quickjs-emscripten":"^0.31.0","@mariozechner/pi-ai":"0.54.0","@mariozechner/pi-tui":"0.54.0","@mozilla/readability":"^0.6.0","@aws-sdk/client-bedrock":"^3.995.0","@whiskeysockets/baileys":"7.0.0-rc.9","@agentclientprotocol/sdk":"0.14.1","@mariozechner/pi-agent-core":"0.54.0","@mariozechner/pi-coding-agent":"0.54.0","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"packageManager":"pnpm@10.23.0","devDependencies":{"lit":"^3.3.2","tsx":"^4.21.0","oxfmt":"0.34.0","oxlint":"^1.49.0","tsdown":"^0.20.3","vitest":"^4.0.18","@types/ws":"^8.18.1","typescript":"^5.9.3","@types/node":"^25.3.0","@lit/context":"^1.1.6","signal-utils":"0.21.1","@types/semver":"^7.7.1","@types/express":"^5.0.6","@grammyjs/types":"^3.24.0","oxlint-tsgolint":"^0.14.2","@lit-labs/signals":"^0.2.0","@types/markdown-it":"^14.1.2","@vitest/coverage-v8":"^4.0.18","@types/qrcode-terminal":"^0.12.2","@typescript/native-preview":"7.0.0-dev.20260221.1"},"peerDependencies":{"node-llama-cpp":"3.17.1","@napi-rs/canvas":"^0.1.89"},"_npmOperationalInternal":{"tmp":"tmp/mayros_0.1.11_1773084341502_0.26889876445981375","host":"s3://npm-registry-packages-npm-production"}},"0.1.12":{"name":"@apilium/mayros","version":"0.1.12","keywords":["agent","ai","aingle","apilium","cli","coding-assistant","cortex","knowledge-graph","mayros","mcp","multi-agent","terminal","tui"],"author":{"name":"Apilium Technologies"},"license":"MIT","_id":"@apilium/mayros@0.1.12","maintainers":[{"name":"apilium-ai","email":"it@apilium.com"}],"homepage":"https://apilium.com/en/products/mayros","bugs":{"url":"https://github.com/ApiliumCode/mayros/issues"},"bin":{"mayros":"mayros.mjs"},"dist":{"shasum":"f9a3a0d41b9d3323e8fdbc4b2795d2d644db3865","tarball":"https://registry.npmjs.org/@apilium/mayros/-/mayros-0.1.12.tgz","fileCount":4338,"integrity":"sha512-HPfafDXVMv+pY1ZFwhTujAsSoeLE0Y9csMs71KllgJLQJGUIJjMJLklhEFrJdRAa0+xrmg6OiP1gI66vVaqhMg==","signatures":[{"sig":"MEUCIQDIaWwIuOaF9jZ5ZKs4sP66phfgHi/guGxu00d7iv3MBgIgSobWJgyTRM6C6yR+8yX9DS+q7BLzwPrT4HTsI1cKPQw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":52039432},"main":"dist/index.js","pnpm":{"overrides":{"qs":"6.14.2","tar":"7.5.10","hono":"4.12.4","request":"npm:@cypress/request@3.0.10","form-data":"2.5.4","minimatch":"10.2.3","tough-cookie":"4.1.3","@discordjs/opus":"npm:opusscript@0.0.8","fast-xml-parser":"5.3.8","request-promise":"npm:@cypress/request-promise@5.0.0","@hono/node-server":"1.19.10","@sinclair/typebox":"0.34.48"},"minimumReleaseAge":2880,"onlyBuiltDependencies":["@lydell/node-pty","@matrix-org/matrix-sdk-crypto-nodejs","@napi-rs/canvas","@whiskeysockets/baileys","authenticate-pam","esbuild","koffi","node-llama-cpp","protobufjs","sharp"]},"type":"module","engines":{"node":">=22.12.0"},"exports":{".":"./dist/index.js","./sdk":{"types":"./dist/sdk/index.d.ts","default":"./dist/sdk/index.js"},"./cli-entry":"./mayros.mjs","./plugin-sdk":{"types":"./dist/plugin-sdk/index.d.ts","default":"./dist/plugin-sdk/index.js"},"./plugin-sdk/account-id":{"types":"./dist/plugin-sdk/account-id.d.ts","default":"./dist/plugin-sdk/account-id.js"}},"gitHead":"dcf1414ce38c2187a49a0ed0157e025d881c7389","scripts":{"dev":"node scripts/run-node.mjs","tui":"node scripts/run-node.mjs tui","lint":"oxlint --type-aware","test":"node scripts/test-parallel.mjs","build":"pnpm canvas:a2ui:bundle && tsdown && pnpm build:plugin-sdk:dts && node --import tsx scripts/write-plugin-sdk-entry-dts.ts && node --import tsx scripts/canvas-a2ui-copy.ts && node --import tsx scripts/copy-hook-metadata.ts && node --import tsx scripts/copy-export-html-templates.ts && node --import tsx scripts/write-build-info.ts && node --import tsx scripts/write-cli-compat.ts","check":"pnpm format:check && pnpm tsgo && pnpm lint","start":"node scripts/run-node.mjs","format":"oxfmt --write","mayros":"node scripts/run-node.mjs","ui:dev":"node scripts/ui.js dev","ios:gen":"bash -lc './scripts/ios-configure-signing.sh && cd apps/ios && xcodegen generate'","ios:run":"bash -lc './scripts/ios-configure-signing.sh && cd apps/ios && xcodegen generate && xcodebuild -project Mayros.xcodeproj -scheme Mayros -destination \"${IOS_DEST:-platform=iOS Simulator,name=iPhone 17}\" -configuration Debug build && xcrun simctl boot \"${IOS_SIM:-iPhone 17}\" || true && xcrun simctl launch booted ai.mayros.ios'","prepack":"pnpm build && pnpm ui:build","prepare":"command -v git >/dev/null 2>&1 && git rev-parse --is-inside-work-tree >/dev/null 2>&1 && git config core.hooksPath git-hooks || exit 0","test:ui":"pnpm --dir ui test","tui:dev":"MAYROS_PROFILE=dev node scripts/run-node.mjs --dev tui","docs:bin":"node scripts/build-docs-list.mjs","docs:dev":"cd docs && mint dev","ios:open":"bash -lc './scripts/ios-configure-signing.sh && cd apps/ios && xcodegen generate && open Mayros.xcodeproj'","lint:all":"pnpm lint && pnpm lint:swift","lint:fix":"oxlint --type-aware --fix && pnpm format","mac:open":"open dist/Mayros.app","test:all":"pnpm lint && pnpm build && pnpm test && pnpm test:e2e && pnpm test:live && pnpm test:docker:all","test:e2e":"vitest run --config vitest.e2e.config.ts","ui:build":"node scripts/ui.js build","check:loc":"node --import tsx scripts/check-ts-max-loc.ts --max 500","docs:list":"node scripts/docs-list.js","ios:build":"bash -lc './scripts/ios-configure-signing.sh && cd apps/ios && xcodegen generate && xcodebuild -project Mayros.xcodeproj -scheme Mayros -destination \"${IOS_DEST:-platform=iOS Simulator,name=iPhone 17}\" -configuration Debug build'","lint:docs":"pnpm dlx markdownlint-cli2","test:fast":"vitest run --config vitest.unit.config.ts","test:live":"MAYROS_LIVE_TEST=1 vitest run --config vitest.live.config.ts","check:docs":"pnpm format:docs:check && pnpm lint:docs && pnpm docs:check-links","format:all":"pnpm format && pnpm format:swift","format:fix":"oxfmt --write","lint:swift":"swiftlint lint --config .swiftlint.yml && (cd apps/ios && swiftlint lint --config .swiftlint.yml)","mayros:rpc":"node scripts/run-node.mjs agent --mode rpc --json","test:force":"node --import tsx scripts/test-force.ts","test:watch":"vitest","ui:install":"node scripts/ui.js install","android:run":"cd apps/android && ./gradlew :app:installDebug && adb shell am start -n ai.mayros.android/.MainActivity","deadcode:ci":"pnpm deadcode:report:ci:knip && pnpm deadcode:report:ci:ts-prune && pnpm deadcode:report:ci:ts-unused","format:diff":"oxfmt --write && git --no-pager diff","format:docs":"git ls-files 'docs/**/*.md' 'docs/**/*.mdx' 'README.md' | xargs oxfmt --write","gateway:dev":"MAYROS_SKIP_CHANNELS=1 node scripts/run-node.mjs --dev gateway","mac:package":"bash scripts/package-mac-app.sh","mac:restart":"bash scripts/restart-mac.sh","postinstall":"node scripts/postinstall.mjs","android:test":"cd apps/android && ./gradlew :app:testDebugUnitTest","format:check":"oxfmt --check","format:swift":"swiftformat --lint --config .swiftformat apps/macos/Sources apps/ios/Sources apps/shared/MayrosKit/Sources","plugins:sync":"node --import tsx scripts/sync-plugin-versions.ts","protocol:gen":"node --import tsx scripts/protocol-gen.ts","test:macmini":"MAYROS_TEST_VM_FORKS=0 MAYROS_TEST_PROFILE=serial node scripts/test-parallel.mjs","deadcode:knip":"pnpm dlx knip --no-progress","gateway:watch":"node scripts/watch-node.mjs gateway --force","lint:docs:fix":"pnpm dlx markdownlint-cli2 --fix","release:check":"node --import tsx scripts/release-check.ts","test:coverage":"vitest run --config vitest.unit.config.ts --coverage","cortex:install":"tsx scripts/install-cortex.ts","protocol:check":"pnpm protocol:gen && pnpm protocol:gen:swift && git diff --exit-code -- dist/protocol.schema.json apps/macos/Sources/MayrosProtocol/GatewayModels.swift","test:docker:qr":"bash scripts/e2e/qr-import-docker.sh","android:install":"cd apps/android && ./gradlew :app:installDebug","deadcode:report":"pnpm deadcode:knip; pnpm deadcode:ts-prune; pnpm deadcode:ts-unused","docs:spellcheck":"bash scripts/docs-spellcheck.sh","test:docker:all":"pnpm test:docker:live-models && pnpm test:docker:live-gateway && pnpm test:docker:onboard && pnpm test:docker:gateway-network && pnpm test:docker:qr && pnpm test:docker:doctor-switch && pnpm test:docker:plugins && pnpm test:docker:cleanup","android:assemble":"cd apps/android && ./gradlew :app:assembleDebug","docs:check-links":"node scripts/docs-link-audit.mjs","test:install:e2e":"bash scripts/test-install-sh-e2e-docker.sh","deadcode:ts-prune":"pnpm dlx ts-prune src extensions scripts","format:docs:check":"git ls-files 'docs/**/*.md' 'docs/**/*.mdx' 'README.md' | xargs oxfmt --check","gateway:dev:reset":"MAYROS_SKIP_CHANNELS=1 node scripts/run-node.mjs --dev gateway --reset","canvas:a2ui:bundle":"bash scripts/bundle-a2ui.sh","deadcode:ts-unused":"pnpm dlx ts-unused-exports tsconfig.json --ignoreTestFiles --exitWithCount","protocol:gen:swift":"node --import tsx scripts/protocol-gen-swift.ts","test:install:smoke":"bash scripts/test-install-sh-docker.sh","docs:spellcheck:fix":"bash scripts/docs-spellcheck.sh --write","test:docker:cleanup":"bash scripts/test-cleanup-docker.sh","test:docker:onboard":"bash scripts/e2e/onboard-docker.sh","test:docker:plugins":"bash scripts/e2e/plugins-docker.sh","build:plugin-sdk:dts":"tsc -p tsconfig.plugin-sdk.dts.json","deadcode:report:ci:knip":"mkdir -p .artifacts/deadcode && pnpm deadcode:knip > .artifacts/deadcode/knip.txt 2>&1 || true","test:docker:live-models":"bash scripts/test-live-models-docker.sh","test:install:e2e:openai":"MAYROS_E2E_MODELS=openai bash scripts/test-install-sh-e2e-docker.sh","test:docker:live-gateway":"bash scripts/test-live-gateway-models-docker.sh","test:docker:doctor-switch":"bash scripts/e2e/doctor-install-switch-docker.sh","test:voicecall:closedloop":"vitest run extensions/voice-call/src/manager.test.ts extensions/voice-call/src/media-stream.test.ts src/plugins/voice-call.plugin.test.ts --maxWorkers=1","test:install:e2e:anthropic":"MAYROS_E2E_MODELS=anthropic bash scripts/test-install-sh-e2e-docker.sh","deadcode:report:ci:ts-prune":"mkdir -p .artifacts/deadcode && pnpm deadcode:ts-prune > .artifacts/deadcode/ts-prune.txt 2>&1 || true","test:docker:gateway-network":"bash scripts/e2e/gateway-network-docker.sh","deadcode:report:ci:ts-unused":"mkdir -p .artifacts/deadcode && pnpm deadcode:ts-unused > .artifacts/deadcode/ts-unused-exports.txt 2>&1 || true"},"_npmUser":{"name":"apilium-ai","email":"it@apilium.com"},"repository":{"url":"git+https://github.com/ApiliumCode/mayros.git","type":"git"},"_npmVersion":"11.6.0","description":"Multi-channel AI agent framework with knowledge graph, MCP support, and coding CLI","directories":{"doc":"docs","test":"test"},"_nodeVersion":"24.8.0","dependencies":{"ws":"^8.19.0","ajv":"^8.18.0","tar":"7.5.10","zod":"^4.3.6","hono":"4.12.4","jiti":"^2.6.1","long":"^5.3.2","yaml":"^2.8.2","chalk":"^5.6.2","json5":"^2.2.3","jszip":"^3.10.1","sharp":"^0.34.5","tslog":"^4.10.2","croner":"^10.0.1","dotenv":"^17.3.1","grammy":"^1.40.0","semver":"^7.7.4","undici":"^7.22.0","express":"^5.2.1","chokidar":"^5.0.0","linkedom":"^0.18.12","commander":"^14.0.3","file-type":"^21.3.0","opusscript":"^0.0.8","pdfjs-dist":"^5.4.624","sqlite-vec":"0.1.7-alpha.2","@slack/bolt":"^4.6.0","markdown-it":"^14.1.1","osc-progress":"^0.3.0","@buape/carbon":"0.0.0-beta-20260216184201","@line/bot-sdk":"^10.6.0","cli-highlight":"^2.1.11","node-edge-tts":"^1.2.10","@clack/prompts":"^1.0.1","@slack/web-api":"^7.14.1","playwright-core":"1.58.2","qrcode-terminal":"^0.12.0","@discordjs/voice":"^0.19.0","@grammyjs/runner":"^2.0.3","@homebridge/ciao":"^1.3.5","@lydell/node-pty":"1.2.0-beta.3","@sinclair/typebox":"0.34.48","discord-api-types":"^0.38.40","https-proxy-agent":"^7.0.6","quickjs-emscripten":"^0.31.0","@mariozechner/pi-ai":"0.54.0","@mariozechner/pi-tui":"0.54.0","@mozilla/readability":"^0.6.0","@aws-sdk/client-bedrock":"^3.995.0","@whiskeysockets/baileys":"7.0.0-rc.9","@agentclientprotocol/sdk":"0.14.1","@mariozechner/pi-agent-core":"0.54.0","@mariozechner/pi-coding-agent":"0.54.0","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"packageManager":"pnpm@10.23.0","devDependencies":{"lit":"^3.3.2","tsx":"^4.21.0","oxfmt":"0.34.0","oxlint":"^1.49.0","tsdown":"^0.20.3","vitest":"^4.0.18","@types/ws":"^8.18.1","typescript":"^5.9.3","@types/node":"^25.3.0","@lit/context":"^1.1.6","signal-utils":"0.21.1","@types/semver":"^7.7.1","@types/express":"^5.0.6","@grammyjs/types":"^3.24.0","oxlint-tsgolint":"^0.14.2","@lit-labs/signals":"^0.2.0","@types/markdown-it":"^14.1.2","@vitest/coverage-v8":"^4.0.18","@types/qrcode-terminal":"^0.12.2","@typescript/native-preview":"7.0.0-dev.20260221.1"},"peerDependencies":{"node-llama-cpp":"3.17.1","@napi-rs/canvas":"^0.1.89"},"_npmOperationalInternal":{"tmp":"tmp/mayros_0.1.12_1773087114256_0.2950960041598736","host":"s3://npm-registry-packages-npm-production"}},"0.1.13":{"name":"@apilium/mayros","version":"0.1.13","keywords":["agent","ai","aingle","apilium","cli","coding-assistant","cortex","knowledge-graph","mayros","mcp","multi-agent","terminal","tui"],"author":{"name":"Apilium Technologies"},"license":"MIT","_id":"@apilium/mayros@0.1.13","maintainers":[{"name":"apilium-ai","email":"it@apilium.com"}],"homepage":"https://apilium.com/en/products/mayros","bugs":{"url":"https://github.com/ApiliumCode/mayros/issues"},"bin":{"mayros":"mayros.mjs"},"dist":{"shasum":"652e81511310b1ee3401ab33046a1341212d27a8","tarball":"https://registry.npmjs.org/@apilium/mayros/-/mayros-0.1.13.tgz","fileCount":7920,"integrity":"sha512-k1TlFixQAnkHuH2TONJqxlW6EBQDRBd074oSVt322hQ8UvNtm8fgvGaE3dbNX8pQAFM8InmOtMUbg4gtNkTQTg==","signatures":[{"sig":"MEQCIDWT9xVngN7NSZB0SWCuXwrEajRZc56/Y7YvE+KoDDdVAiBKjWzFbFKuIzBGLQaPOOJYglCgKJzUp5m2ljtCwIGZOw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":72423093},"main":"dist/index.js","pnpm":{"overrides":{"qs":"6.14.2","tar":"7.5.10","hono":"4.12.4","request":"npm:@cypress/request@3.0.10","form-data":"2.5.4","minimatch":"10.2.3","tough-cookie":"4.1.3","@discordjs/opus":"npm:opusscript@0.0.8","fast-xml-parser":"5.3.8","request-promise":"npm:@cypress/request-promise@5.0.0","@hono/node-server":"1.19.10","@sinclair/typebox":"0.34.48"},"minimumReleaseAge":2880,"onlyBuiltDependencies":["@lydell/node-pty","@matrix-org/matrix-sdk-crypto-nodejs","@napi-rs/canvas","@whiskeysockets/baileys","authenticate-pam","esbuild","koffi","node-llama-cpp","protobufjs","sharp"]},"type":"module","engines":{"node":">=22.12.0"},"exports":{".":"./dist/index.js","./sdk":{"types":"./dist/sdk/index.d.ts","default":"./dist/sdk/index.js"},"./cli-entry":"./mayros.mjs","./plugin-sdk":{"types":"./dist/plugin-sdk/index.d.ts","default":"./dist/plugin-sdk/index.js"},"./plugin-sdk/account-id":{"types":"./dist/plugin-sdk/account-id.d.ts","default":"./dist/plugin-sdk/account-id.js"}},"gitHead":"9b65ad017ad2f76004006955aab4ce8845be5140","scripts":{"dev":"node scripts/run-node.mjs","tui":"node scripts/run-node.mjs tui","lint":"oxlint --type-aware","test":"node scripts/test-parallel.mjs","build":"pnpm canvas:a2ui:bundle && tsdown && pnpm build:plugin-sdk:dts && node --import tsx scripts/write-plugin-sdk-entry-dts.ts && node --import tsx scripts/canvas-a2ui-copy.ts && node --import tsx scripts/copy-hook-metadata.ts && node --import tsx scripts/copy-export-html-templates.ts && node --import tsx scripts/write-build-info.ts && node --import tsx scripts/write-cli-compat.ts","check":"pnpm format:check && pnpm tsgo && pnpm lint","start":"node scripts/run-node.mjs","format":"oxfmt --write","mayros":"node scripts/run-node.mjs","ui:dev":"node scripts/ui.js dev","ios:gen":"bash -lc './scripts/ios-configure-signing.sh && cd apps/ios && xcodegen generate'","ios:run":"bash -lc './scripts/ios-configure-signing.sh && cd apps/ios && xcodegen generate && xcodebuild -project Mayros.xcodeproj -scheme Mayros -destination \"${IOS_DEST:-platform=iOS Simulator,name=iPhone 17}\" -configuration Debug build && xcrun simctl boot \"${IOS_SIM:-iPhone 17}\" || true && xcrun simctl launch booted ai.mayros.ios'","prepack":"pnpm build && pnpm ui:build","prepare":"command -v git >/dev/null 2>&1 && git rev-parse --is-inside-work-tree >/dev/null 2>&1 && git config core.hooksPath git-hooks || exit 0","test:ui":"pnpm --dir ui test","tui:dev":"MAYROS_PROFILE=dev node scripts/run-node.mjs --dev tui","docs:bin":"node scripts/build-docs-list.mjs","docs:dev":"cd docs && mint dev","ios:open":"bash -lc './scripts/ios-configure-signing.sh && cd apps/ios && xcodegen generate && open Mayros.xcodeproj'","lint:all":"pnpm lint && pnpm lint:swift","lint:fix":"oxlint --type-aware --fix && pnpm format","mac:open":"open dist/Mayros.app","test:all":"pnpm lint && pnpm build && pnpm test && pnpm test:e2e && pnpm test:live && pnpm test:docker:all","test:e2e":"vitest run --config vitest.e2e.config.ts","ui:build":"node scripts/ui.js build","check:loc":"node --import tsx scripts/check-ts-max-loc.ts --max 500","docs:list":"node scripts/docs-list.js","ios:build":"bash -lc './scripts/ios-configure-signing.sh && cd apps/ios && xcodegen generate && xcodebuild -project Mayros.xcodeproj -scheme Mayros -destination \"${IOS_DEST:-platform=iOS Simulator,name=iPhone 17}\" -configuration Debug build'","lint:docs":"pnpm dlx markdownlint-cli2","test:fast":"vitest run --config vitest.unit.config.ts","test:live":"MAYROS_LIVE_TEST=1 vitest run --config vitest.live.config.ts","check:docs":"pnpm format:docs:check && pnpm lint:docs && pnpm docs:check-links","format:all":"pnpm format && pnpm format:swift","format:fix":"oxfmt --write","lint:swift":"swiftlint lint --config .swiftlint.yml && (cd apps/ios && swiftlint lint --config .swiftlint.yml)","mayros:rpc":"node scripts/run-node.mjs agent --mode rpc --json","test:force":"node --import tsx scripts/test-force.ts","test:watch":"vitest","ui:install":"node scripts/ui.js install","android:run":"cd apps/android && ./gradlew :app:installDebug && adb shell am start -n ai.mayros.android/.MainActivity","deadcode:ci":"pnpm deadcode:report:ci:knip && pnpm deadcode:report:ci:ts-prune && pnpm deadcode:report:ci:ts-unused","format:diff":"oxfmt --write && git --no-pager diff","format:docs":"git ls-files 'docs/**/*.md' 'docs/**/*.mdx' 'README.md' | xargs oxfmt --write","gateway:dev":"MAYROS_SKIP_CHANNELS=1 node scripts/run-node.mjs --dev gateway","mac:package":"bash scripts/package-mac-app.sh","mac:restart":"bash scripts/restart-mac.sh","postinstall":"node scripts/postinstall.mjs","android:test":"cd apps/android && ./gradlew :app:testDebugUnitTest","format:check":"oxfmt --check","format:swift":"swiftformat --lint --config .swiftformat apps/macos/Sources apps/ios/Sources apps/shared/MayrosKit/Sources","plugins:sync":"node --import tsx scripts/sync-plugin-versions.ts","protocol:gen":"node --import tsx scripts/protocol-gen.ts","test:macmini":"MAYROS_TEST_VM_FORKS=0 MAYROS_TEST_PROFILE=serial node scripts/test-parallel.mjs","deadcode:knip":"pnpm dlx knip --no-progress","gateway:watch":"node scripts/watch-node.mjs gateway --force","lint:docs:fix":"pnpm dlx markdownlint-cli2 --fix","release:check":"node --import tsx scripts/release-check.ts","test:coverage":"vitest run --config vitest.unit.config.ts --coverage","cortex:install":"tsx scripts/install-cortex.ts","protocol:check":"pnpm protocol:gen && pnpm protocol:gen:swift && git diff --exit-code -- dist/protocol.schema.json apps/macos/Sources/MayrosProtocol/GatewayModels.swift","test:docker:qr":"bash scripts/e2e/qr-import-docker.sh","android:install":"cd apps/android && ./gradlew :app:installDebug","deadcode:report":"pnpm deadcode:knip; pnpm deadcode:ts-prune; pnpm deadcode:ts-unused","docs:spellcheck":"bash scripts/docs-spellcheck.sh","test:docker:all":"pnpm test:docker:live-models && pnpm test:docker:live-gateway && pnpm test:docker:onboard && pnpm test:docker:gateway-network && pnpm test:docker:qr && pnpm test:docker:doctor-switch && pnpm test:docker:plugins && pnpm test:docker:cleanup","android:assemble":"cd apps/android && ./gradlew :app:assembleDebug","docs:check-links":"node scripts/docs-link-audit.mjs","test:install:e2e":"bash scripts/test-install-sh-e2e-docker.sh","deadcode:ts-prune":"pnpm dlx ts-prune src extensions scripts","format:docs:check":"git ls-files 'docs/**/*.md' 'docs/**/*.mdx' 'README.md' | xargs oxfmt --check","gateway:dev:reset":"MAYROS_SKIP_CHANNELS=1 node scripts/run-node.mjs --dev gateway --reset","canvas:a2ui:bundle":"bash scripts/bundle-a2ui.sh","deadcode:ts-unused":"pnpm dlx ts-unused-exports tsconfig.json --ignoreTestFiles --exitWithCount","protocol:gen:swift":"node --import tsx scripts/protocol-gen-swift.ts","test:install:smoke":"bash scripts/test-install-sh-docker.sh","docs:spellcheck:fix":"bash scripts/docs-spellcheck.sh --write","test:docker:cleanup":"bash scripts/test-cleanup-docker.sh","test:docker:onboard":"bash scripts/e2e/onboard-docker.sh","test:docker:plugins":"bash scripts/e2e/plugins-docker.sh","build:plugin-sdk:dts":"tsc -p tsconfig.plugin-sdk.dts.json","deadcode:report:ci:knip":"mkdir -p .artifacts/deadcode && pnpm deadcode:knip > .artifacts/deadcode/knip.txt 2>&1 || true","test:docker:live-models":"bash scripts/test-live-models-docker.sh","test:install:e2e:openai":"MAYROS_E2E_MODELS=openai bash scripts/test-install-sh-e2e-docker.sh","test:docker:live-gateway":"bash scripts/test-live-gateway-models-docker.sh","test:docker:doctor-switch":"bash scripts/e2e/doctor-install-switch-docker.sh","test:voicecall:closedloop":"vitest run extensions/voice-call/src/manager.test.ts extensions/voice-call/src/media-stream.test.ts src/plugins/voice-call.plugin.test.ts --maxWorkers=1","test:install:e2e:anthropic":"MAYROS_E2E_MODELS=anthropic bash scripts/test-install-sh-e2e-docker.sh","deadcode:report:ci:ts-prune":"mkdir -p .artifacts/deadcode && pnpm deadcode:ts-prune > .artifacts/deadcode/ts-prune.txt 2>&1 || true","test:docker:gateway-network":"bash scripts/e2e/gateway-network-docker.sh","deadcode:report:ci:ts-unused":"mkdir -p .artifacts/deadcode && pnpm deadcode:ts-unused > .artifacts/deadcode/ts-unused-exports.txt 2>&1 || true"},"_npmUser":{"name":"apilium-ai","email":"it@apilium.com"},"repository":{"url":"git+https://github.com/ApiliumCode/mayros.git","type":"git"},"_npmVersion":"11.6.0","description":"Multi-channel AI agent framework with knowledge graph, MCP support, and coding CLI","directories":{"doc":"docs","test":"test"},"_nodeVersion":"24.8.0","dependencies":{"ws":"^8.19.0","ajv":"^8.18.0","tar":"7.5.10","zod":"^4.3.6","hono":"4.12.4","jiti":"^2.6.1","long":"^5.3.2","yaml":"^2.8.2","chalk":"^5.6.2","json5":"^2.2.3","jszip":"^3.10.1","sharp":"^0.34.5","tslog":"^4.10.2","croner":"^10.0.1","dotenv":"^17.3.1","grammy":"^1.40.0","semver":"^7.7.4","undici":"^7.22.0","express":"^5.2.1","chokidar":"^5.0.0","linkedom":"^0.18.12","commander":"^14.0.3","file-type":"^21.3.0","opusscript":"^0.0.8","pdfjs-dist":"^5.4.624","sqlite-vec":"0.1.7-alpha.2","@slack/bolt":"^4.6.0","markdown-it":"^14.1.1","osc-progress":"^0.3.0","@buape/carbon":"0.0.0-beta-20260216184201","@line/bot-sdk":"^10.6.0","cli-highlight":"^2.1.11","node-edge-tts":"^1.2.10","@clack/prompts":"^1.0.1","@slack/web-api":"^7.14.1","playwright-core":"1.58.2","qrcode-terminal":"^0.12.0","@discordjs/voice":"^0.19.0","@grammyjs/runner":"^2.0.3","@homebridge/ciao":"^1.3.5","@lydell/node-pty":"1.2.0-beta.3","@sinclair/typebox":"0.34.48","discord-api-types":"^0.38.40","https-proxy-agent":"^7.0.6","quickjs-emscripten":"^0.31.0","@mariozechner/pi-ai":"0.54.0","@mariozechner/pi-tui":"0.54.0","@mozilla/readability":"^0.6.0","@aws-sdk/client-bedrock":"^3.995.0","@whiskeysockets/baileys":"7.0.0-rc.9","@agentclientprotocol/sdk":"0.14.1","@mariozechner/pi-agent-core":"0.54.0","@mariozechner/pi-coding-agent":"0.54.0","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"packageManager":"pnpm@10.23.0","devDependencies":{"lit":"^3.3.2","tsx":"^4.21.0","oxfmt":"0.34.0","oxlint":"^1.49.0","tsdown":"^0.20.3","vitest":"^4.0.18","@types/ws":"^8.18.1","typescript":"^5.9.3","@types/node":"^25.3.0","@lit/context":"^1.1.6","signal-utils":"0.21.1","@types/semver":"^7.7.1","@types/express":"^5.0.6","@grammyjs/types":"^3.24.0","oxlint-tsgolint":"^0.14.2","@lit-labs/signals":"^0.2.0","@types/markdown-it":"^14.1.2","@vitest/coverage-v8":"^4.0.18","@types/qrcode-terminal":"^0.12.2","@typescript/native-preview":"7.0.0-dev.20260221.1"},"peerDependencies":{"node-llama-cpp":"3.17.1","@napi-rs/canvas":"^0.1.89"},"_npmOperationalInternal":{"tmp":"tmp/mayros_0.1.13_1773093343620_0.5672090732803203","host":"s3://npm-registry-packages-npm-production"}},"0.1.14":{"name":"@apilium/mayros","version":"0.1.14","keywords":["agent","ai","aingle","apilium","cli","coding-assistant","cortex","knowledge-graph","mayros","mcp","multi-agent","terminal","tui"],"author":{"name":"Apilium Technologies"},"license":"MIT","_id":"@apilium/mayros@0.1.14","maintainers":[{"name":"apilium-ai","email":"it@apilium.com"}],"homepage":"https://apilium.com/en/products/mayros","bugs":{"url":"https://github.com/ApiliumCode/mayros/issues"},"bin":{"mayros":"mayros.mjs"},"dist":{"shasum":"3773d50e392ed06870120fff7dcb63834f593360","tarball":"https://registry.npmjs.org/@apilium/mayros/-/mayros-0.1.14.tgz","fileCount":7997,"integrity":"sha512-+8/rCAmhyB1yOsYAvNTI5gdbZ/Qj3Oc8Y/lPvAlyulXkpYMbTowyWWDflshlAJtHcRpsWpL8tX1OU7duKbIIqA==","signatures":[{"sig":"MEUCIGRWUGRb1Q+gMpoqY4Yn5B886QC3sE3h+3wjxhWmXdKRAiEAjTZpiLiKdhD3DgDsZh5pXv/5ZyJvWkia3dU2CMwlukg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":72736960},"main":"dist/index.js","pnpm":{"overrides":{"qs":"6.14.2","tar":"7.5.11","hono":"4.12.7","request":"npm:@cypress/request@3.0.10","file-type":">=21.3.1","form-data":"2.5.4","minimatch":"10.2.3","tough-cookie":"4.1.3","@discordjs/opus":"npm:opusscript@0.0.8","fast-xml-parser":"5.3.8","request-promise":"npm:@cypress/request-promise@5.0.0","@hono/node-server":"1.19.10","@sinclair/typebox":"0.34.48"},"minimumReleaseAge":2880,"onlyBuiltDependencies":["@lydell/node-pty","@matrix-org/matrix-sdk-crypto-nodejs","@napi-rs/canvas","@whiskeysockets/baileys","authenticate-pam","esbuild","koffi","node-llama-cpp","protobufjs","sharp"]},"type":"module","engines":{"node":">=22.12.0"},"exports":{".":"./dist/index.js","./sdk":{"types":"./dist/sdk/index.d.ts","default":"./dist/sdk/index.js"},"./cli-entry":"./mayros.mjs","./plugin-sdk":{"types":"./dist/plugin-sdk/index.d.ts","default":"./dist/plugin-sdk/index.js"},"./plugin-sdk/account-id":{"types":"./dist/plugin-sdk/account-id.d.ts","default":"./dist/plugin-sdk/account-id.js"}},"gitHead":"44db377492146cab0702dc38aab5bcfeea6c37bf","scripts":{"dev":"node scripts/run-node.mjs","tui":"node scripts/run-node.mjs tui","lint":"oxlint --type-aware","test":"node scripts/test-parallel.mjs","build":"pnpm canvas:a2ui:bundle && tsdown && pnpm build:plugin-sdk:dts && node --import tsx scripts/write-plugin-sdk-entry-dts.ts && node --import tsx scripts/canvas-a2ui-copy.ts && node --import tsx scripts/copy-hook-metadata.ts && node --import tsx scripts/copy-export-html-templates.ts && node --import tsx scripts/write-build-info.ts && node --import tsx scripts/write-cli-compat.ts","check":"pnpm format:check && pnpm tsgo && pnpm lint","start":"node scripts/run-node.mjs","format":"oxfmt --write","mayros":"node scripts/run-node.mjs","ui:dev":"node scripts/ui.js dev","ios:gen":"bash -lc './scripts/ios-configure-signing.sh && cd apps/ios && xcodegen generate'","ios:run":"bash -lc './scripts/ios-configure-signing.sh && cd apps/ios && xcodegen generate && xcodebuild -project Mayros.xcodeproj -scheme Mayros -destination \"${IOS_DEST:-platform=iOS Simulator,name=iPhone 17}\" -configuration Debug build && xcrun simctl boot \"${IOS_SIM:-iPhone 17}\" || true && xcrun simctl launch booted ai.mayros.ios'","prepack":"pnpm build && pnpm ui:build","prepare":"command -v git >/dev/null 2>&1 && git rev-parse --is-inside-work-tree >/dev/null 2>&1 && git config core.hooksPath git-hooks || exit 0","test:ui":"pnpm --dir ui test","tui:dev":"MAYROS_PROFILE=dev node scripts/run-node.mjs --dev tui","docs:bin":"node scripts/build-docs-list.mjs","docs:dev":"cd docs && mint dev","ios:open":"bash -lc './scripts/ios-configure-signing.sh && cd apps/ios && xcodegen generate && open Mayros.xcodeproj'","lint:all":"pnpm lint && pnpm lint:swift","lint:fix":"oxlint --type-aware --fix && pnpm format","mac:open":"open dist/Mayros.app","test:all":"pnpm lint && pnpm build && pnpm test && pnpm test:e2e && pnpm test:live && pnpm test:docker:all","test:e2e":"vitest run --config vitest.e2e.config.ts","ui:build":"node scripts/ui.js build","check:loc":"node --import tsx scripts/check-ts-max-loc.ts --max 500","docs:list":"node scripts/docs-list.js","ios:build":"bash -lc './scripts/ios-configure-signing.sh && cd apps/ios && xcodegen generate && xcodebuild -project Mayros.xcodeproj -scheme Mayros -destination \"${IOS_DEST:-platform=iOS Simulator,name=iPhone 17}\" -configuration Debug build'","lint:docs":"pnpm dlx markdownlint-cli2","test:fast":"vitest run --config vitest.unit.config.ts","test:live":"MAYROS_LIVE_TEST=1 vitest run --config vitest.live.config.ts","check:docs":"pnpm format:docs:check && pnpm lint:docs && pnpm docs:check-links","format:all":"pnpm format && pnpm format:swift","format:fix":"oxfmt --write","lint:swift":"swiftlint lint --config .swiftlint.yml && (cd apps/ios && swiftlint lint --config .swiftlint.yml)","mayros:rpc":"node scripts/run-node.mjs agent --mode rpc --json","test:force":"node --import tsx scripts/test-force.ts","test:watch":"vitest","ui:install":"node scripts/ui.js install","android:run":"cd apps/android && ./gradlew :app:installDebug && adb shell am start -n ai.mayros.android/.MainActivity","deadcode:ci":"pnpm deadcode:report:ci:knip && pnpm deadcode:report:ci:ts-prune && pnpm deadcode:report:ci:ts-unused","format:diff":"oxfmt --write && git --no-pager diff","format:docs":"git ls-files 'docs/**/*.md' 'docs/**/*.mdx' 'README.md' | xargs oxfmt --write","gateway:dev":"MAYROS_SKIP_CHANNELS=1 node scripts/run-node.mjs --dev gateway","mac:package":"bash scripts/package-mac-app.sh","mac:restart":"bash scripts/restart-mac.sh","postinstall":"node scripts/postinstall.mjs","android:test":"cd apps/android && ./gradlew :app:testDebugUnitTest","format:check":"oxfmt --check","format:swift":"swiftformat --lint --config .swiftformat apps/macos/Sources apps/ios/Sources apps/shared/MayrosKit/Sources","plugins:sync":"node --import tsx scripts/sync-plugin-versions.ts","protocol:gen":"node --import tsx scripts/protocol-gen.ts","test:macmini":"MAYROS_TEST_VM_FORKS=0 MAYROS_TEST_PROFILE=serial node scripts/test-parallel.mjs","deadcode:knip":"pnpm dlx knip --no-progress","gateway:watch":"node scripts/watch-node.mjs gateway --force","lint:docs:fix":"pnpm dlx markdownlint-cli2 --fix","release:check":"node --import tsx scripts/release-check.ts","test:coverage":"vitest run --config vitest.unit.config.ts --coverage","cortex:install":"tsx scripts/install-cortex.ts","protocol:check":"pnpm protocol:gen && pnpm protocol:gen:swift && git diff --exit-code -- dist/protocol.schema.json apps/macos/Sources/MayrosProtocol/GatewayModels.swift","test:docker:qr":"bash scripts/e2e/qr-import-docker.sh","android:install":"cd apps/android && ./gradlew :app:installDebug","deadcode:report":"pnpm deadcode:knip; pnpm deadcode:ts-prune; pnpm deadcode:ts-unused","docs:spellcheck":"bash scripts/docs-spellcheck.sh","test:docker:all":"pnpm test:docker:live-models && pnpm test:docker:live-gateway && pnpm test:docker:onboard && pnpm test:docker:gateway-network && pnpm test:docker:qr && pnpm test:docker:doctor-switch && pnpm test:docker:plugins && pnpm test:docker:cleanup","android:assemble":"cd apps/android && ./gradlew :app:assembleDebug","docs:check-links":"node scripts/docs-link-audit.mjs","test:install:e2e":"bash scripts/test-install-sh-e2e-docker.sh","deadcode:ts-prune":"pnpm dlx ts-prune src extensions scripts","format:docs:check":"git ls-files 'docs/**/*.md' 'docs/**/*.mdx' 'README.md' | xargs oxfmt --check","gateway:dev:reset":"MAYROS_SKIP_CHANNELS=1 node scripts/run-node.mjs --dev gateway --reset","canvas:a2ui:bundle":"bash scripts/bundle-a2ui.sh","deadcode:ts-unused":"pnpm dlx ts-unused-exports tsconfig.json --ignoreTestFiles --exitWithCount","protocol:gen:swift":"node --import tsx scripts/protocol-gen-swift.ts","test:install:smoke":"bash scripts/test-install-sh-docker.sh","docs:spellcheck:fix":"bash scripts/docs-spellcheck.sh --write","test:docker:cleanup":"bash scripts/test-cleanup-docker.sh","test:docker:onboard":"bash scripts/e2e/onboard-docker.sh","test:docker:plugins":"bash scripts/e2e/plugins-docker.sh","build:plugin-sdk:dts":"tsc -p tsconfig.plugin-sdk.dts.json","deadcode:report:ci:knip":"mkdir -p .artifacts/deadcode && pnpm deadcode:knip > .artifacts/deadcode/knip.txt 2>&1 || true","test:docker:live-models":"bash scripts/test-live-models-docker.sh","test:install:e2e:openai":"MAYROS_E2E_MODELS=openai bash scripts/test-install-sh-e2e-docker.sh","test:docker:live-gateway":"bash scripts/test-live-gateway-models-docker.sh","test:docker:doctor-switch":"bash scripts/e2e/doctor-install-switch-docker.sh","test:voicecall:closedloop":"vitest run extensions/voice-call/src/manager.test.ts extensions/voice-call/src/media-stream.test.ts src/plugins/voice-call.plugin.test.ts --maxWorkers=1","test:install:e2e:anthropic":"MAYROS_E2E_MODELS=anthropic bash scripts/test-install-sh-e2e-docker.sh","deadcode:report:ci:ts-prune":"mkdir -p .artifacts/deadcode && pnpm deadcode:ts-prune > .artifacts/deadcode/ts-prune.txt 2>&1 || true","test:docker:gateway-network":"bash scripts/e2e/gateway-network-docker.sh","deadcode:report:ci:ts-unused":"mkdir -p .artifacts/deadcode && pnpm deadcode:ts-unused > .artifacts/deadcode/ts-unused-exports.txt 2>&1 || true"},"_npmUser":{"name":"apilium-ai","email":"it@apilium.com"},"repository":{"url":"git+https://github.com/ApiliumCode/mayros.git","type":"git"},"_npmVersion":"11.6.0","description":"Multi-channel AI agent framework with knowledge graph, MCP support, and coding CLI","directories":{"doc":"docs","test":"test"},"_nodeVersion":"24.8.0","dependencies":{"ws":"^8.19.0","ajv":"^8.18.0","tar":"7.5.11","zod":"^4.3.6","hono":"4.12.7","jiti":"^2.6.1","long":"^5.3.2","yaml":"^2.8.2","chalk":"^5.6.2","json5":"^2.2.3","jszip":"^3.10.1","sharp":"^0.34.5","tslog":"^4.10.2","croner":"^10.0.1","dotenv":"^17.3.1","grammy":"^1.40.0","semver":"^7.7.4","undici":"^7.22.0","express":"^5.2.1","chokidar":"^5.0.0","linkedom":"^0.18.12","commander":"^14.0.3","file-type":"^21.3.1","opusscript":"^0.0.8","pdfjs-dist":"^5.4.624","sqlite-vec":"0.1.7-alpha.2","@slack/bolt":"^4.6.0","markdown-it":"^14.1.1","osc-progress":"^0.3.0","@buape/carbon":"0.0.0-beta-20260216184201","@line/bot-sdk":"^10.6.0","cli-highlight":"^2.1.11","node-edge-tts":"^1.2.10","@clack/prompts":"^1.0.1","@slack/web-api":"^7.14.1","playwright-core":"1.58.2","qrcode-terminal":"^0.12.0","@discordjs/voice":"^0.19.0","@grammyjs/runner":"^2.0.3","@homebridge/ciao":"^1.3.5","@lydell/node-pty":"1.2.0-beta.3","@sinclair/typebox":"0.34.48","discord-api-types":"^0.38.40","https-proxy-agent":"^7.0.6","quickjs-emscripten":"^0.31.0","@mariozechner/pi-ai":"0.54.0","@mariozechner/pi-tui":"0.54.0","@mozilla/readability":"^0.6.0","@aws-sdk/client-bedrock":"^3.995.0","@whiskeysockets/baileys":"7.0.0-rc.9","@agentclientprotocol/sdk":"0.14.1","@mariozechner/pi-agent-core":"0.54.0","@mariozechner/pi-coding-agent":"0.54.0","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"packageManager":"pnpm@10.23.0","devDependencies":{"lit":"^3.3.2","tsx":"^4.21.0","oxfmt":"0.34.0","oxlint":"^1.49.0","tsdown":"^0.20.3","vitest":"^4.0.18","@types/ws":"^8.18.1","typescript":"^5.9.3","@types/node":"^25.3.0","@lit/context":"^1.1.6","signal-utils":"0.21.1","@types/semver":"^7.7.1","@types/express":"^5.0.6","@grammyjs/types":"^3.24.0","oxlint-tsgolint":"^0.14.2","@lit-labs/signals":"^0.2.0","@types/markdown-it":"^14.1.2","@vitest/coverage-v8":"^4.0.18","@types/qrcode-terminal":"^0.12.2","@typescript/native-preview":"7.0.0-dev.20260221.1"},"peerDependencies":{"node-llama-cpp":"3.17.1","@napi-rs/canvas":"^0.1.89"},"_npmOperationalInternal":{"tmp":"tmp/mayros_0.1.14_1773263835847_0.605361931029279","host":"s3://npm-registry-packages-npm-production"}},"0.1.15":{"name":"@apilium/mayros","version":"0.1.15","keywords":["agent","ai","aingle","apilium","cli","coding-assistant","cortex","knowledge-graph","mayros","mcp","multi-agent","terminal","tui"],"author":{"name":"Apilium Technologies"},"license":"MIT","_id":"@apilium/mayros@0.1.15","maintainers":[{"name":"apilium-ai","email":"it@apilium.com"}],"homepage":"https://apilium.com/en/products/mayros","bugs":{"url":"https://github.com/ApiliumCode/mayros/issues"},"bin":{"mayros":"mayros.mjs"},"dist":{"shasum":"6a6570a0b2910cef9cc7ac7813a6b69784fc720c","tarball":"https://registry.npmjs.org/@apilium/mayros/-/mayros-0.1.15.tgz","fileCount":8014,"integrity":"sha512-lP+QodBL3DiorBMdG2WjNYPa0bHGmKM/QtIxxrmjJ6+LBfG/jD9pjCBPqzBjFujDq0ZqZch9sxXYVcJF1mS04g==","signatures":[{"sig":"MEYCIQDG7WW9m+LrKddF4wSanlcf9M2puoSCDulkALHPAHbuIwIhAN9Y3as2jYogo1SFDj/pyvscFqPqBI+2k3phzcxR8que","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":72902022},"main":"dist/index.js","pnpm":{"overrides":{"qs":"6.14.2","tar":"7.5.11","hono":"4.12.7","request":"npm:@cypress/request@3.0.10","file-type":">=21.3.1","form-data":"2.5.4","minimatch":"10.2.3","tough-cookie":"4.1.3","@discordjs/opus":"npm:opusscript@0.0.8","fast-xml-parser":"5.3.8","request-promise":"npm:@cypress/request-promise@5.0.0","@hono/node-server":"1.19.10","@sinclair/typebox":"0.34.48"},"minimumReleaseAge":2880,"onlyBuiltDependencies":["@lydell/node-pty","@matrix-org/matrix-sdk-crypto-nodejs","@napi-rs/canvas","@whiskeysockets/baileys","authenticate-pam","esbuild","koffi","node-llama-cpp","protobufjs","sharp"]},"type":"module","engines":{"node":">=22.12.0"},"exports":{".":"./dist/index.js","./sdk":{"types":"./dist/sdk/index.d.ts","default":"./dist/sdk/index.js"},"./cli-entry":"./mayros.mjs","./plugin-sdk":{"types":"./dist/plugin-sdk/index.d.ts","default":"./dist/plugin-sdk/index.js"},"./plugin-sdk/account-id":{"types":"./dist/plugin-sdk/account-id.d.ts","default":"./dist/plugin-sdk/account-id.js"}},"gitHead":"89120c970c0369d28e00ee2669b1fb10fd113165","scripts":{"dev":"node scripts/run-node.mjs","tui":"node scripts/run-node.mjs tui","lint":"oxlint --type-aware","test":"node scripts/test-parallel.mjs","build":"pnpm canvas:a2ui:bundle && tsdown && pnpm build:plugin-sdk:dts && node --import tsx scripts/write-plugin-sdk-entry-dts.ts && node --import tsx scripts/canvas-a2ui-copy.ts && node --import tsx scripts/copy-hook-metadata.ts && node --import tsx scripts/copy-export-html-templates.ts && node --import tsx scripts/write-build-info.ts && node --import tsx scripts/write-cli-compat.ts","check":"pnpm format:check && pnpm tsgo && pnpm lint","start":"node scripts/run-node.mjs","format":"oxfmt --write","mayros":"node scripts/run-node.mjs","ui:dev":"node scripts/ui.js dev","ios:gen":"bash -lc './scripts/ios-configure-signing.sh && cd apps/ios && xcodegen generate'","ios:run":"bash -lc './scripts/ios-configure-signing.sh && cd apps/ios && xcodegen generate && xcodebuild -project Mayros.xcodeproj -scheme Mayros -destination \"${IOS_DEST:-platform=iOS Simulator,name=iPhone 17}\" -configuration Debug build && xcrun simctl boot \"${IOS_SIM:-iPhone 17}\" || true && xcrun simctl launch booted ai.mayros.ios'","prepack":"pnpm build && pnpm ui:build","prepare":"command -v git >/dev/null 2>&1 && git rev-parse --is-inside-work-tree >/dev/null 2>&1 && git config core.hooksPath git-hooks || exit 0","test:ui":"pnpm --dir ui test","tui:dev":"MAYROS_PROFILE=dev node scripts/run-node.mjs --dev tui","docs:bin":"node scripts/build-docs-list.mjs","docs:dev":"cd docs && mint dev","ios:open":"bash -lc './scripts/ios-configure-signing.sh && cd apps/ios && xcodegen generate && open Mayros.xcodeproj'","lint:all":"pnpm lint && pnpm lint:swift","lint:fix":"oxlint --type-aware --fix && pnpm format","mac:open":"open dist/Mayros.app","test:all":"pnpm lint && pnpm build && pnpm test && pnpm test:e2e && pnpm test:live && pnpm test:docker:all","test:e2e":"vitest run --config vitest.e2e.config.ts","ui:build":"node scripts/ui.js build","check:loc":"node --import tsx scripts/check-ts-max-loc.ts --max 500","docs:list":"node scripts/docs-list.js","ios:build":"bash -lc './scripts/ios-configure-signing.sh && cd apps/ios && xcodegen generate && xcodebuild -project Mayros.xcodeproj -scheme Mayros -destination \"${IOS_DEST:-platform=iOS Simulator,name=iPhone 17}\" -configuration Debug build'","lint:docs":"pnpm dlx markdownlint-cli2","test:fast":"vitest run --config vitest.unit.config.ts","test:live":"MAYROS_LIVE_TEST=1 vitest run --config vitest.live.config.ts","check:docs":"pnpm format:docs:check && pnpm lint:docs && pnpm docs:check-links","format:all":"pnpm format && pnpm format:swift","format:fix":"oxfmt --write","lint:swift":"swiftlint lint --config .swiftlint.yml && (cd apps/ios && swiftlint lint --config .swiftlint.yml)","mayros:rpc":"node scripts/run-node.mjs agent --mode rpc --json","test:force":"node --import tsx scripts/test-force.ts","test:watch":"vitest","ui:install":"node scripts/ui.js install","android:run":"cd apps/android && ./gradlew :app:installDebug && adb shell am start -n ai.mayros.android/.MainActivity","deadcode:ci":"pnpm deadcode:report:ci:knip && pnpm deadcode:report:ci:ts-prune && pnpm deadcode:report:ci:ts-unused","format:diff":"oxfmt --write && git --no-pager diff","format:docs":"git ls-files 'docs/**/*.md' 'docs/**/*.mdx' 'README.md' | xargs oxfmt --write","gateway:dev":"MAYROS_SKIP_CHANNELS=1 node scripts/run-node.mjs --dev gateway","mac:package":"bash scripts/package-mac-app.sh","mac:restart":"bash scripts/restart-mac.sh","postinstall":"node scripts/postinstall.mjs","android:test":"cd apps/android && ./gradlew :app:testDebugUnitTest","format:check":"oxfmt --check","format:swift":"swiftformat --lint --config .swiftformat apps/macos/Sources apps/ios/Sources apps/shared/MayrosKit/Sources","plugins:sync":"node --import tsx scripts/sync-plugin-versions.ts","protocol:gen":"node --import tsx scripts/protocol-gen.ts","test:macmini":"MAYROS_TEST_VM_FORKS=0 MAYROS_TEST_PROFILE=serial node scripts/test-parallel.mjs","deadcode:knip":"pnpm dlx knip --no-progress","gateway:watch":"node scripts/watch-node.mjs gateway --force","lint:docs:fix":"pnpm dlx markdownlint-cli2 --fix","release:check":"node --import tsx scripts/release-check.ts","test:coverage":"vitest run --config vitest.unit.config.ts --coverage","cortex:install":"tsx scripts/install-cortex.ts","protocol:check":"pnpm protocol:gen && pnpm protocol:gen:swift && git diff --exit-code -- dist/protocol.schema.json apps/macos/Sources/MayrosProtocol/GatewayModels.swift","test:docker:qr":"bash scripts/e2e/qr-import-docker.sh","android:install":"cd apps/android && ./gradlew :app:installDebug","deadcode:report":"pnpm deadcode:knip; pnpm deadcode:ts-prune; pnpm deadcode:ts-unused","docs:spellcheck":"bash scripts/docs-spellcheck.sh","test:docker:all":"pnpm test:docker:live-models && pnpm test:docker:live-gateway && pnpm test:docker:onboard && pnpm test:docker:gateway-network && pnpm test:docker:qr && pnpm test:docker:doctor-switch && pnpm test:docker:plugins && pnpm test:docker:cleanup","android:assemble":"cd apps/android && ./gradlew :app:assembleDebug","docs:check-links":"node scripts/docs-link-audit.mjs","test:install:e2e":"bash scripts/test-install-sh-e2e-docker.sh","deadcode:ts-prune":"pnpm dlx ts-prune src extensions scripts","format:docs:check":"git ls-files 'docs/**/*.md' 'docs/**/*.mdx' 'README.md' | xargs oxfmt --check","gateway:dev:reset":"MAYROS_SKIP_CHANNELS=1 node scripts/run-node.mjs --dev gateway --reset","canvas:a2ui:bundle":"bash scripts/bundle-a2ui.sh","deadcode:ts-unused":"pnpm dlx ts-unused-exports tsconfig.json --ignoreTestFiles --exitWithCount","protocol:gen:swift":"node --import tsx scripts/protocol-gen-swift.ts","test:install:smoke":"bash scripts/test-install-sh-docker.sh","docs:spellcheck:fix":"bash scripts/docs-spellcheck.sh --write","test:docker:cleanup":"bash scripts/test-cleanup-docker.sh","test:docker:onboard":"bash scripts/e2e/onboard-docker.sh","test:docker:plugins":"bash scripts/e2e/plugins-docker.sh","build:plugin-sdk:dts":"tsc -p tsconfig.plugin-sdk.dts.json","deadcode:report:ci:knip":"mkdir -p .artifacts/deadcode && pnpm deadcode:knip > .artifacts/deadcode/knip.txt 2>&1 || true","test:docker:live-models":"bash scripts/test-live-models-docker.sh","test:install:e2e:openai":"MAYROS_E2E_MODELS=openai bash scripts/test-install-sh-e2e-docker.sh","test:docker:live-gateway":"bash scripts/test-live-gateway-models-docker.sh","test:docker:doctor-switch":"bash scripts/e2e/doctor-install-switch-docker.sh","test:voicecall:closedloop":"vitest run extensions/voice-call/src/manager.test.ts extensions/voice-call/src/media-stream.test.ts src/plugins/voice-call.plugin.test.ts --maxWorkers=1","test:install:e2e:anthropic":"MAYROS_E2E_MODELS=anthropic bash scripts/test-install-sh-e2e-docker.sh","deadcode:report:ci:ts-prune":"mkdir -p .artifacts/deadcode && pnpm deadcode:ts-prune > .artifacts/deadcode/ts-prune.txt 2>&1 || true","test:docker:gateway-network":"bash scripts/e2e/gateway-network-docker.sh","deadcode:report:ci:ts-unused":"mkdir -p .artifacts/deadcode && pnpm deadcode:ts-unused > .artifacts/deadcode/ts-unused-exports.txt 2>&1 || true"},"_npmUser":{"name":"apilium-ai","email":"it@apilium.com"},"repository":{"url":"git+https://github.com/ApiliumCode/mayros.git","type":"git"},"_npmVersion":"11.6.0","description":"Multi-channel AI agent framework with knowledge graph, MCP support, and coding CLI","directories":{"doc":"docs","test":"test"},"_nodeVersion":"24.8.0","dependencies":{"ws":"^8.19.0","ajv":"^8.18.0","tar":"7.5.11","zod":"^4.3.6","hono":"4.12.7","jiti":"^2.6.1","long":"^5.3.2","yaml":"^2.8.2","chalk":"^5.6.2","json5":"^2.2.3","jszip":"^3.10.1","sharp":"^0.34.5","tslog":"^4.10.2","croner":"^10.0.1","dotenv":"^17.3.1","grammy":"^1.40.0","semver":"^7.7.4","undici":"^7.22.0","express":"^5.2.1","chokidar":"^5.0.0","linkedom":"^0.18.12","commander":"^14.0.3","file-type":"^21.3.1","opusscript":"^0.0.8","pdfjs-dist":"^5.4.624","sqlite-vec":"0.1.7-alpha.2","@slack/bolt":"^4.6.0","markdown-it":"^14.1.1","osc-progress":"^0.3.0","@buape/carbon":"0.0.0-beta-20260216184201","@line/bot-sdk":"^10.6.0","cli-highlight":"^2.1.11","node-edge-tts":"^1.2.10","@clack/prompts":"^1.0.1","@slack/web-api":"^7.14.1","playwright-core":"1.58.2","qrcode-terminal":"^0.12.0","@discordjs/voice":"^0.19.0","@grammyjs/runner":"^2.0.3","@homebridge/ciao":"^1.3.5","@lydell/node-pty":"1.2.0-beta.3","@sinclair/typebox":"0.34.48","discord-api-types":"^0.38.40","https-proxy-agent":"^7.0.6","quickjs-emscripten":"^0.31.0","@mariozechner/pi-ai":"0.54.0","@mariozechner/pi-tui":"0.54.0","@mozilla/readability":"^0.6.0","@aws-sdk/client-bedrock":"^3.995.0","@whiskeysockets/baileys":"7.0.0-rc.9","@agentclientprotocol/sdk":"0.14.1","@mariozechner/pi-agent-core":"0.54.0","@mariozechner/pi-coding-agent":"0.54.0","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"packageManager":"pnpm@10.23.0","devDependencies":{"lit":"^3.3.2","tsx":"^4.21.0","oxfmt":"0.34.0","oxlint":"^1.49.0","tsdown":"^0.20.3","vitest":"^4.0.18","@types/ws":"^8.18.1","typescript":"^5.9.3","@types/node":"^25.3.0","@lit/context":"^1.1.6","signal-utils":"0.21.1","@types/semver":"^7.7.1","@types/express":"^5.0.6","@grammyjs/types":"^3.24.0","oxlint-tsgolint":"^0.14.2","@lit-labs/signals":"^0.2.0","@types/markdown-it":"^14.1.2","@vitest/coverage-v8":"^4.0.18","@types/qrcode-terminal":"^0.12.2","@typescript/native-preview":"7.0.0-dev.20260221.1"},"peerDependencies":{"node-llama-cpp":"3.17.1","@napi-rs/canvas":"^0.1.89"},"_npmOperationalInternal":{"tmp":"tmp/mayros_0.1.15_1773354286247_0.7877221247831556","host":"s3://npm-registry-packages-npm-production"}},"0.1.16":{"name":"@apilium/mayros","version":"0.1.16","keywords":["agent","ai","aingle","apilium","cli","coding-assistant","cortex","knowledge-graph","mayros","mcp","multi-agent","terminal","tui"],"author":{"name":"Apilium Technologies"},"license":"MIT","_id":"@apilium/mayros@0.1.16","maintainers":[{"name":"apilium-ai","email":"it@apilium.com"}],"homepage":"https://apilium.com/en/products/mayros","bugs":{"url":"https://github.com/ApiliumCode/mayros/issues"},"bin":{"mayros":"mayros.mjs"},"dist":{"shasum":"7552f7f977dcfb0e9d15a98a9ecc103186b4f294","tarball":"https://registry.npmjs.org/@apilium/mayros/-/mayros-0.1.16.tgz","fileCount":8014,"integrity":"sha512-UOwQiIfK2LGmazCTn6kPFsg3sc6q05cJyt5FTL4EmMe0h5RHNfCWkZHflH77Sy7RjgYpnW3LWpfekABcxmm9Pg==","signatures":[{"sig":"MEUCIAqLeDkpP/N6Q3GYpPFoCobi9IKg02kaAbeotv6MU+2nAiEAjoGoLezfAEFqJ7261mrf6xGqfaEgmmLMSQuToxSwCgk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":72902026},"main":"dist/index.js","pnpm":{"overrides":{"qs":"6.14.2","tar":"7.5.11","hono":"4.12.7","request":"npm:@cypress/request@3.0.10","file-type":">=21.3.1","form-data":"2.5.4","minimatch":"10.2.3","tough-cookie":"4.1.3","@discordjs/opus":"npm:opusscript@0.0.8","fast-xml-parser":"5.3.8","request-promise":"npm:@cypress/request-promise@5.0.0","@hono/node-server":"1.19.10","@sinclair/typebox":"0.34.48"},"minimumReleaseAge":2880,"onlyBuiltDependencies":["@lydell/node-pty","@matrix-org/matrix-sdk-crypto-nodejs","@napi-rs/canvas","@whiskeysockets/baileys","authenticate-pam","esbuild","koffi","node-llama-cpp","protobufjs","sharp"]},"type":"module","engines":{"node":">=22.12.0"},"exports":{".":"./dist/index.js","./sdk":{"types":"./dist/sdk/index.d.ts","default":"./dist/sdk/index.js"},"./cli-entry":"./mayros.mjs","./plugin-sdk":{"types":"./dist/plugin-sdk/index.d.ts","default":"./dist/plugin-sdk/index.js"},"./plugin-sdk/account-id":{"types":"./dist/plugin-sdk/account-id.d.ts","default":"./dist/plugin-sdk/account-id.js"}},"gitHead":"153a0593dba4691f455768f898c54656b26500e0","scripts":{"dev":"node scripts/run-node.mjs","tui":"node scripts/run-node.mjs tui","lint":"oxlint --type-aware","test":"node scripts/test-parallel.mjs","build":"pnpm canvas:a2ui:bundle && tsdown && pnpm build:plugin-sdk:dts && node --import tsx scripts/write-plugin-sdk-entry-dts.ts && node --import tsx scripts/canvas-a2ui-copy.ts && node --import tsx scripts/copy-hook-metadata.ts && node --import tsx scripts/copy-export-html-templates.ts && node --import tsx scripts/write-build-info.ts && node --import tsx scripts/write-cli-compat.ts","check":"pnpm format:check && pnpm tsgo && pnpm lint","start":"node scripts/run-node.mjs","format":"oxfmt --write","mayros":"node scripts/run-node.mjs","ui:dev":"node scripts/ui.js dev","ios:gen":"bash -lc './scripts/ios-configure-signing.sh && cd apps/ios && xcodegen generate'","ios:run":"bash -lc './scripts/ios-configure-signing.sh && cd apps/ios && xcodegen generate && xcodebuild -project Mayros.xcodeproj -scheme Mayros -destination \"${IOS_DEST:-platform=iOS Simulator,name=iPhone 17}\" -configuration Debug build && xcrun simctl boot \"${IOS_SIM:-iPhone 17}\" || true && xcrun simctl launch booted ai.mayros.ios'","prepack":"pnpm build && pnpm ui:build","prepare":"command -v git >/dev/null 2>&1 && git rev-parse --is-inside-work-tree >/dev/null 2>&1 && git config core.hooksPath git-hooks || exit 0","test:ui":"pnpm --dir ui test","tui:dev":"MAYROS_PROFILE=dev node scripts/run-node.mjs --dev tui","docs:bin":"node scripts/build-docs-list.mjs","docs:dev":"cd docs && mint dev","ios:open":"bash -lc './scripts/ios-configure-signing.sh && cd apps/ios && xcodegen generate && open Mayros.xcodeproj'","lint:all":"pnpm lint && pnpm lint:swift","lint:fix":"oxlint --type-aware --fix && pnpm format","mac:open":"open dist/Mayros.app","test:all":"pnpm lint && pnpm build && pnpm test && pnpm test:e2e && pnpm test:live && pnpm test:docker:all","test:e2e":"vitest run --config vitest.e2e.config.ts","ui:build":"node scripts/ui.js build","check:loc":"node --import tsx scripts/check-ts-max-loc.ts --max 500","docs:list":"node scripts/docs-list.js","ios:build":"bash -lc './scripts/ios-configure-signing.sh && cd apps/ios && xcodegen generate && xcodebuild -project Mayros.xcodeproj -scheme Mayros -destination \"${IOS_DEST:-platform=iOS Simulator,name=iPhone 17}\" -configuration Debug build'","lint:docs":"pnpm dlx markdownlint-cli2","test:fast":"vitest run --config vitest.unit.config.ts","test:live":"MAYROS_LIVE_TEST=1 vitest run --config vitest.live.config.ts","check:docs":"pnpm format:docs:check && pnpm lint:docs && pnpm docs:check-links","format:all":"pnpm format && pnpm format:swift","format:fix":"oxfmt --write","lint:swift":"swiftlint lint --config .swiftlint.yml && (cd apps/ios && swiftlint lint --config .swiftlint.yml)","mayros:rpc":"node scripts/run-node.mjs agent --mode rpc --json","test:force":"node --import tsx scripts/test-force.ts","test:watch":"vitest","ui:install":"node scripts/ui.js install","android:run":"cd apps/android && ./gradlew :app:installDebug && adb shell am start -n ai.mayros.android/.MainActivity","deadcode:ci":"pnpm deadcode:report:ci:knip && pnpm deadcode:report:ci:ts-prune && pnpm deadcode:report:ci:ts-unused","format:diff":"oxfmt --write && git --no-pager diff","format:docs":"git ls-files 'docs/**/*.md' 'docs/**/*.mdx' 'README.md' | xargs oxfmt --write","gateway:dev":"MAYROS_SKIP_CHANNELS=1 node scripts/run-node.mjs --dev gateway","mac:package":"bash scripts/package-mac-app.sh","mac:restart":"bash scripts/restart-mac.sh","postinstall":"node scripts/postinstall.mjs","android:test":"cd apps/android && ./gradlew :app:testDebugUnitTest","format:check":"oxfmt --check","format:swift":"swiftformat --lint --config .swiftformat apps/macos/Sources apps/ios/Sources apps/shared/MayrosKit/Sources","plugins:sync":"node --import tsx scripts/sync-plugin-versions.ts","protocol:gen":"node --import tsx scripts/protocol-gen.ts","test:macmini":"MAYROS_TEST_VM_FORKS=0 MAYROS_TEST_PROFILE=serial node scripts/test-parallel.mjs","deadcode:knip":"pnpm dlx knip --no-progress","gateway:watch":"node scripts/watch-node.mjs gateway --force","lint:docs:fix":"pnpm dlx markdownlint-cli2 --fix","release:check":"node --import tsx scripts/release-check.ts","test:coverage":"vitest run --config vitest.unit.config.ts --coverage","cortex:install":"tsx scripts/install-cortex.ts","protocol:check":"pnpm protocol:gen && pnpm protocol:gen:swift && git diff --exit-code -- dist/protocol.schema.json apps/macos/Sources/MayrosProtocol/GatewayModels.swift","test:docker:qr":"bash scripts/e2e/qr-import-docker.sh","android:install":"cd apps/android && ./gradlew :app:installDebug","deadcode:report":"pnpm deadcode:knip; pnpm deadcode:ts-prune; pnpm deadcode:ts-unused","docs:spellcheck":"bash scripts/docs-spellcheck.sh","test:docker:all":"pnpm test:docker:live-models && pnpm test:docker:live-gateway && pnpm test:docker:onboard && pnpm test:docker:gateway-network && pnpm test:docker:qr && pnpm test:docker:doctor-switch && pnpm test:docker:plugins && pnpm test:docker:cleanup","android:assemble":"cd apps/android && ./gradlew :app:assembleDebug","docs:check-links":"node scripts/docs-link-audit.mjs","test:install:e2e":"bash scripts/test-install-sh-e2e-docker.sh","deadcode:ts-prune":"pnpm dlx ts-prune src extensions scripts","format:docs:check":"git ls-files 'docs/**/*.md' 'docs/**/*.mdx' 'README.md' | xargs oxfmt --check","gateway:dev:reset":"MAYROS_SKIP_CHANNELS=1 node scripts/run-node.mjs --dev gateway --reset","canvas:a2ui:bundle":"bash scripts/bundle-a2ui.sh","deadcode:ts-unused":"pnpm dlx ts-unused-exports tsconfig.json --ignoreTestFiles --exitWithCount","protocol:gen:swift":"node --import tsx scripts/protocol-gen-swift.ts","test:install:smoke":"bash scripts/test-install-sh-docker.sh","docs:spellcheck:fix":"bash scripts/docs-spellcheck.sh --write","test:docker:cleanup":"bash scripts/test-cleanup-docker.sh","test:docker:onboard":"bash scripts/e2e/onboard-docker.sh","test:docker:plugins":"bash scripts/e2e/plugins-docker.sh","build:plugin-sdk:dts":"tsc -p tsconfig.plugin-sdk.dts.json","deadcode:report:ci:knip":"mkdir -p .artifacts/deadcode && pnpm deadcode:knip > .artifacts/deadcode/knip.txt 2>&1 || true","test:docker:live-models":"bash scripts/test-live-models-docker.sh","test:install:e2e:openai":"MAYROS_E2E_MODELS=openai bash scripts/test-install-sh-e2e-docker.sh","test:docker:live-gateway":"bash scripts/test-live-gateway-models-docker.sh","test:docker:doctor-switch":"bash scripts/e2e/doctor-install-switch-docker.sh","test:voicecall:closedloop":"vitest run extensions/voice-call/src/manager.test.ts extensions/voice-call/src/media-stream.test.ts src/plugins/voice-call.plugin.test.ts --maxWorkers=1","test:install:e2e:anthropic":"MAYROS_E2E_MODELS=anthropic bash scripts/test-install-sh-e2e-docker.sh","deadcode:report:ci:ts-prune":"mkdir -p .artifacts/deadcode && pnpm deadcode:ts-prune > .artifacts/deadcode/ts-prune.txt 2>&1 || true","test:docker:gateway-network":"bash scripts/e2e/gateway-network-docker.sh","deadcode:report:ci:ts-unused":"mkdir -p .artifacts/deadcode && pnpm deadcode:ts-unused > .artifacts/deadcode/ts-unused-exports.txt 2>&1 || true"},"_npmUser":{"name":"apilium-ai","email":"it@apilium.com"},"repository":{"url":"git+https://github.com/ApiliumCode/mayros.git","type":"git"},"_npmVersion":"11.6.0","description":"Multi-channel AI agent framework with knowledge graph, MCP support, and coding CLI","directories":{"doc":"docs","test":"test"},"_nodeVersion":"24.8.0","dependencies":{"ws":"^8.19.0","ajv":"^8.18.0","tar":"7.5.11","zod":"^4.3.6","hono":"4.12.7","jiti":"^2.6.1","long":"^5.3.2","yaml":"^2.8.2","chalk":"^5.6.2","json5":"^2.2.3","jszip":"^3.10.1","sharp":"^0.34.5","tslog":"^4.10.2","croner":"^10.0.1","dotenv":"^17.3.1","grammy":"^1.40.0","semver":"^7.7.4","undici":"^7.22.0","express":"^5.2.1","chokidar":"^5.0.0","linkedom":"^0.18.12","commander":"^14.0.3","file-type":"^21.3.1","opusscript":"^0.0.8","pdfjs-dist":"^5.4.624","sqlite-vec":"0.1.7-alpha.2","@slack/bolt":"^4.6.0","markdown-it":"^14.1.1","osc-progress":"^0.3.0","@buape/carbon":"0.0.0-beta-20260216184201","@line/bot-sdk":"^10.6.0","cli-highlight":"^2.1.11","node-edge-tts":"^1.2.10","@clack/prompts":"^1.0.1","@slack/web-api":"^7.14.1","playwright-core":"1.58.2","qrcode-terminal":"^0.12.0","@discordjs/voice":"^0.19.0","@grammyjs/runner":"^2.0.3","@homebridge/ciao":"^1.3.5","@lydell/node-pty":"1.2.0-beta.3","@sinclair/typebox":"0.34.48","discord-api-types":"^0.38.40","https-proxy-agent":"^7.0.6","quickjs-emscripten":"^0.31.0","@mariozechner/pi-ai":"0.54.0","@mariozechner/pi-tui":"0.54.0","@mozilla/readability":"^0.6.0","@aws-sdk/client-bedrock":"^3.995.0","@whiskeysockets/baileys":"7.0.0-rc.9","@agentclientprotocol/sdk":"0.14.1","@mariozechner/pi-agent-core":"0.54.0","@mariozechner/pi-coding-agent":"0.54.0","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"packageManager":"pnpm@10.23.0","devDependencies":{"lit":"^3.3.2","tsx":"^4.21.0","oxfmt":"0.34.0","oxlint":"^1.49.0","tsdown":"^0.20.3","vitest":"^4.0.18","@types/ws":"^8.18.1","typescript":"^5.9.3","@types/node":"^25.3.0","@lit/context":"^1.1.6","signal-utils":"0.21.1","@types/semver":"^7.7.1","@types/express":"^5.0.6","@grammyjs/types":"^3.24.0","oxlint-tsgolint":"^0.14.2","@lit-labs/signals":"^0.2.0","@types/markdown-it":"^14.1.2","@vitest/coverage-v8":"^4.0.18","@types/qrcode-terminal":"^0.12.2","@typescript/native-preview":"7.0.0-dev.20260221.1"},"peerDependencies":{"node-llama-cpp":"3.17.1","@napi-rs/canvas":"^0.1.89"},"_npmOperationalInternal":{"tmp":"tmp/mayros_0.1.16_1773382817959_0.0351969157657126","host":"s3://npm-registry-packages-npm-production"}},"0.2.0":{"name":"@apilium/mayros","version":"0.2.0","keywords":["agent","ai","aingle","apilium","cli","coding-assistant","cortex","knowledge-graph","mayros","mcp","multi-agent","terminal","tui"],"author":{"name":"Apilium Technologies"},"license":"MIT","_id":"@apilium/mayros@0.2.0","maintainers":[{"name":"apilium-ai","email":"it@apilium.com"}],"homepage":"https://apilium.com/en/products/mayros","bugs":{"url":"https://github.com/ApiliumCode/mayros/issues"},"bin":{"mayros":"mayros.mjs"},"dist":{"shasum":"fe8c4a0c3c5fd0dc8f84d960bf5068dfa33a0ab0","tarball":"https://registry.npmjs.org/@apilium/mayros/-/mayros-0.2.0.tgz","fileCount":8024,"integrity":"sha512-Kz3Ue73MIFgpI1smo87UrmkQ62iR9X8kgLTaNQoqpg6ml7uKgXG6ACmhU50tctAK8vkvjEbQONSS6Uv6NUhmgw==","signatures":[{"sig":"MEQCIC2JQflYHbtXpa+0cSTRpG5CK7wjInD9fG7iTjccu5gnAiAUviDOd80IyEcj5DMgbadET8iPwGyaKgrinXSgOdYV/A==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":73015024},"main":"dist/index.js","pnpm":{"overrides":{"qs":"6.14.2","tar":"7.5.11","hono":"4.12.7","request":"npm:@cypress/request@3.0.10","file-type":">=21.3.1","form-data":"2.5.4","minimatch":"10.2.3","tough-cookie":"4.1.3","@discordjs/opus":"npm:opusscript@0.0.8","fast-xml-parser":"5.3.8","request-promise":"npm:@cypress/request-promise@5.0.0","@hono/node-server":"1.19.10","@sinclair/typebox":"0.34.48"},"minimumReleaseAge":2880,"onlyBuiltDependencies":["@lydell/node-pty","@matrix-org/matrix-sdk-crypto-nodejs","@napi-rs/canvas","@whiskeysockets/baileys","authenticate-pam","esbuild","koffi","node-llama-cpp","protobufjs","sharp"]},"type":"module","engines":{"node":">=22.12.0"},"exports":{".":"./dist/index.js","./sdk":{"types":"./dist/sdk/index.d.ts","default":"./dist/sdk/index.js"},"./cli-entry":"./mayros.mjs","./plugin-sdk":{"types":"./dist/plugin-sdk/index.d.ts","default":"./dist/plugin-sdk/index.js"},"./plugin-sdk/account-id":{"types":"./dist/plugin-sdk/account-id.d.ts","default":"./dist/plugin-sdk/account-id.js"}},"gitHead":"7f9decafa5c5cd73743227cf30c7ac776854ce40","scripts":{"dev":"node scripts/run-node.mjs","tui":"node scripts/run-node.mjs tui","lint":"oxlint --type-aware","test":"node scripts/test-parallel.mjs","build":"pnpm canvas:a2ui:bundle && tsdown && pnpm build:plugin-sdk:dts && node --import tsx scripts/write-plugin-sdk-entry-dts.ts && node --import tsx scripts/canvas-a2ui-copy.ts && node --import tsx scripts/copy-hook-metadata.ts && node --import tsx scripts/copy-export-html-templates.ts && node --import tsx scripts/write-build-info.ts && node --import tsx scripts/write-cli-compat.ts","check":"pnpm format:check && pnpm tsgo && pnpm lint","start":"node scripts/run-node.mjs","format":"oxfmt --write","mayros":"node scripts/run-node.mjs","ui:dev":"node scripts/ui.js dev","ios:gen":"bash -lc './scripts/ios-configure-signing.sh && cd apps/ios && xcodegen generate'","ios:run":"bash -lc './scripts/ios-configure-signing.sh && cd apps/ios && xcodegen generate && xcodebuild -project Mayros.xcodeproj -scheme Mayros -destination \"${IOS_DEST:-platform=iOS Simulator,name=iPhone 17}\" -configuration Debug build && xcrun simctl boot \"${IOS_SIM:-iPhone 17}\" || true && xcrun simctl launch booted ai.mayros.ios'","prepack":"pnpm build && pnpm ui:build","prepare":"command -v git >/dev/null 2>&1 && git rev-parse --is-inside-work-tree >/dev/null 2>&1 && git config core.hooksPath git-hooks || exit 0","test:ui":"pnpm --dir ui test","tui:dev":"MAYROS_PROFILE=dev node scripts/run-node.mjs --dev tui","docs:bin":"node scripts/build-docs-list.mjs","docs:dev":"cd docs && mint dev","ios:open":"bash -lc './scripts/ios-configure-signing.sh && cd apps/ios && xcodegen generate && open Mayros.xcodeproj'","lint:all":"pnpm lint && pnpm lint:swift","lint:fix":"oxlint --type-aware --fix && pnpm format","mac:open":"open dist/Mayros.app","test:all":"pnpm lint && pnpm build && pnpm test && pnpm test:e2e && pnpm test:live && pnpm test:docker:all","test:e2e":"vitest run --config vitest.e2e.config.ts","ui:build":"node scripts/ui.js build","check:loc":"node --import tsx scripts/check-ts-max-loc.ts --max 500","docs:list":"node scripts/docs-list.js","ios:build":"bash -lc './scripts/ios-configure-signing.sh && cd apps/ios && xcodegen generate && xcodebuild -project Mayros.xcodeproj -scheme Mayros -destination \"${IOS_DEST:-platform=iOS Simulator,name=iPhone 17}\" -configuration Debug build'","lint:docs":"pnpm dlx markdownlint-cli2","test:fast":"vitest run --config vitest.unit.config.ts","test:live":"MAYROS_LIVE_TEST=1 vitest run --config vitest.live.config.ts","check:docs":"pnpm format:docs:check && pnpm lint:docs && pnpm docs:check-links","format:all":"pnpm format && pnpm format:swift","format:fix":"oxfmt --write","lint:swift":"swiftlint lint --config .swiftlint.yml && (cd apps/ios && swiftlint lint --config .swiftlint.yml)","mayros:rpc":"node scripts/run-node.mjs agent --mode rpc --json","test:force":"node --import tsx scripts/test-force.ts","test:watch":"vitest","ui:install":"node scripts/ui.js install","android:run":"cd apps/android && ./gradlew :app:installDebug && adb shell am start -n ai.mayros.android/.MainActivity","deadcode:ci":"pnpm deadcode:report:ci:knip && pnpm deadcode:report:ci:ts-prune && pnpm deadcode:report:ci:ts-unused","format:diff":"oxfmt --write && git --no-pager diff","format:docs":"git ls-files 'docs/**/*.md' 'docs/**/*.mdx' 'README.md' | xargs oxfmt --write","gateway:dev":"MAYROS_SKIP_CHANNELS=1 node scripts/run-node.mjs --dev gateway","mac:package":"bash scripts/package-mac-app.sh","mac:restart":"bash scripts/restart-mac.sh","postinstall":"node scripts/postinstall.mjs","android:test":"cd apps/android && ./gradlew :app:testDebugUnitTest","format:check":"oxfmt --check","format:swift":"swiftformat --lint --config .swiftformat apps/macos/Sources apps/ios/Sources apps/shared/MayrosKit/Sources","plugins:sync":"node --import tsx scripts/sync-plugin-versions.ts","protocol:gen":"node --import tsx scripts/protocol-gen.ts","test:macmini":"MAYROS_TEST_VM_FORKS=0 MAYROS_TEST_PROFILE=serial node scripts/test-parallel.mjs","deadcode:knip":"pnpm dlx knip --no-progress","gateway:watch":"node scripts/watch-node.mjs gateway --force","lint:docs:fix":"pnpm dlx markdownlint-cli2 --fix","release:check":"node --import tsx scripts/release-check.ts","test:coverage":"vitest run --config vitest.unit.config.ts --coverage","cortex:install":"tsx scripts/install-cortex.ts","protocol:check":"pnpm protocol:gen && pnpm protocol:gen:swift && git diff --exit-code -- dist/protocol.schema.json apps/macos/Sources/MayrosProtocol/GatewayModels.swift","test:docker:qr":"bash scripts/e2e/qr-import-docker.sh","android:install":"cd apps/android && ./gradlew :app:installDebug","deadcode:report":"pnpm deadcode:knip; pnpm deadcode:ts-prune; pnpm deadcode:ts-unused","docs:spellcheck":"bash scripts/docs-spellcheck.sh","test:docker:all":"pnpm test:docker:live-models && pnpm test:docker:live-gateway && pnpm test:docker:onboard && pnpm test:docker:gateway-network && pnpm test:docker:qr && pnpm test:docker:doctor-switch && pnpm test:docker:plugins && pnpm test:docker:cleanup","android:assemble":"cd apps/android && ./gradlew :app:assembleDebug","docs:check-links":"node scripts/docs-link-audit.mjs","test:install:e2e":"bash scripts/test-install-sh-e2e-docker.sh","deadcode:ts-prune":"pnpm dlx ts-prune src extensions scripts","format:docs:check":"git ls-files 'docs/**/*.md' 'docs/**/*.mdx' 'README.md' | xargs oxfmt --check","gateway:dev:reset":"MAYROS_SKIP_CHANNELS=1 node scripts/run-node.mjs --dev gateway --reset","canvas:a2ui:bundle":"bash scripts/bundle-a2ui.sh","deadcode:ts-unused":"pnpm dlx ts-unused-exports tsconfig.json --ignoreTestFiles --exitWithCount","protocol:gen:swift":"node --import tsx scripts/protocol-gen-swift.ts","test:install:smoke":"bash scripts/test-install-sh-docker.sh","docs:spellcheck:fix":"bash scripts/docs-spellcheck.sh --write","test:docker:cleanup":"bash scripts/test-cleanup-docker.sh","test:docker:onboard":"bash scripts/e2e/onboard-docker.sh","test:docker:plugins":"bash scripts/e2e/plugins-docker.sh","build:plugin-sdk:dts":"tsc -p tsconfig.plugin-sdk.dts.json","deadcode:report:ci:knip":"mkdir -p .artifacts/deadcode && pnpm deadcode:knip > .artifacts/deadcode/knip.txt 2>&1 || true","test:docker:live-models":"bash scripts/test-live-models-docker.sh","test:install:e2e:openai":"MAYROS_E2E_MODELS=openai bash scripts/test-install-sh-e2e-docker.sh","test:docker:live-gateway":"bash scripts/test-live-gateway-models-docker.sh","test:docker:doctor-switch":"bash scripts/e2e/doctor-install-switch-docker.sh","test:voicecall:closedloop":"vitest run extensions/voice-call/src/manager.test.ts extensions/voice-call/src/media-stream.test.ts src/plugins/voice-call.plugin.test.ts --maxWorkers=1","test:install:e2e:anthropic":"MAYROS_E2E_MODELS=anthropic bash scripts/test-install-sh-e2e-docker.sh","deadcode:report:ci:ts-prune":"mkdir -p .artifacts/deadcode && pnpm deadcode:ts-prune > .artifacts/deadcode/ts-prune.txt 2>&1 || true","test:docker:gateway-network":"bash scripts/e2e/gateway-network-docker.sh","deadcode:report:ci:ts-unused":"mkdir -p .artifacts/deadcode && pnpm deadcode:ts-unused > .artifacts/deadcode/ts-unused-exports.txt 2>&1 || true"},"_npmUser":{"name":"apilium-ai","email":"it@apilium.com"},"repository":{"url":"git+https://github.com/ApiliumCode/mayros.git","type":"git"},"_npmVersion":"11.6.0","description":"Multi-channel AI agent framework with knowledge graph, MCP support, and coding CLI","directories":{"doc":"docs","test":"test"},"_nodeVersion":"24.8.0","dependencies":{"ws":"^8.19.0","ajv":"^8.18.0","tar":"7.5.11","zod":"^4.3.6","hono":"4.12.7","jiti":"^2.6.1","long":"^5.3.2","yaml":"^2.8.2","chalk":"^5.6.2","json5":"^2.2.3","jszip":"^3.10.1","sharp":"^0.34.5","tslog":"^4.10.2","croner":"^10.0.1","dotenv":"^17.3.1","grammy":"^1.40.0","semver":"^7.7.4","undici":"^7.22.0","express":"^5.2.1","chokidar":"^5.0.0","linkedom":"^0.18.12","commander":"^14.0.3","file-type":"^21.3.1","opusscript":"^0.0.8","pdfjs-dist":"^5.4.624","sqlite-vec":"0.1.7-alpha.2","@slack/bolt":"^4.6.0","markdown-it":"^14.1.1","osc-progress":"^0.3.0","@buape/carbon":"0.0.0-beta-20260216184201","@line/bot-sdk":"^10.6.0","cli-highlight":"^2.1.11","node-edge-tts":"^1.2.10","@clack/prompts":"^1.0.1","@slack/web-api":"^7.14.1","playwright-core":"1.58.2","qrcode-terminal":"^0.12.0","@discordjs/voice":"^0.19.0","@grammyjs/runner":"^2.0.3","@homebridge/ciao":"^1.3.5","@lydell/node-pty":"1.2.0-beta.3","@sinclair/typebox":"0.34.48","discord-api-types":"^0.38.40","https-proxy-agent":"^7.0.6","quickjs-emscripten":"^0.31.0","@mariozechner/pi-ai":"0.54.0","@mariozechner/pi-tui":"0.54.0","@mozilla/readability":"^0.6.0","@aws-sdk/client-bedrock":"^3.995.0","@whiskeysockets/baileys":"7.0.0-rc.9","@agentclientprotocol/sdk":"0.14.1","@mariozechner/pi-agent-core":"0.54.0","@mariozechner/pi-coding-agent":"0.54.0","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"packageManager":"pnpm@10.23.0","devDependencies":{"lit":"^3.3.2","tsx":"^4.21.0","oxfmt":"0.34.0","oxlint":"^1.49.0","tsdown":"^0.20.3","vitest":"^4.0.18","@types/ws":"^8.18.1","typescript":"^5.9.3","@types/node":"^25.3.0","@lit/context":"^1.1.6","signal-utils":"0.21.1","@types/semver":"^7.7.1","@types/express":"^5.0.6","@grammyjs/types":"^3.24.0","oxlint-tsgolint":"^0.14.2","@lit-labs/signals":"^0.2.0","@types/markdown-it":"^14.1.2","@vitest/coverage-v8":"^4.0.18","@types/qrcode-terminal":"^0.12.2","@typescript/native-preview":"7.0.0-dev.20260221.1"},"peerDependencies":{"node-llama-cpp":"3.17.1","@napi-rs/canvas":"^0.1.89"},"_npmOperationalInternal":{"tmp":"tmp/mayros_0.2.0_1773431113181_0.506411309160512","host":"s3://npm-registry-packages-npm-production"}},"0.2.1":{"name":"@apilium/mayros","version":"0.2.1","keywords":["agent","ai","aingle","apilium","cli","coding-assistant","cortex","knowledge-graph","mayros","mcp","multi-agent","terminal","tui"],"author":{"name":"Apilium Technologies"},"license":"MIT","_id":"@apilium/mayros@0.2.1","maintainers":[{"name":"apilium-ai","email":"it@apilium.com"}],"homepage":"https://apilium.com/en/products/mayros","bugs":{"url":"https://github.com/ApiliumCode/mayros/issues"},"bin":{"mayros":"mayros.mjs"},"dist":{"shasum":"31830639afc21fb66f51c03384aea9e4106c35bd","tarball":"https://registry.npmjs.org/@apilium/mayros/-/mayros-0.2.1.tgz","fileCount":8035,"integrity":"sha512-Vj3XlguwYgXnZOzWkxg1hipI3blh9aabzHU+kUFHA/q7tmBAos2lWWaCon6EQit71ZfBkj9HtUXv6ZZFVH1eNw==","signatures":[{"sig":"MEYCIQDNv0bqbARS20tLSvTPQjXoMM5ivVU+ScXCbECVKn3EggIhANtFJSi9Z2Dp5DiDZ1vJZ6GShP/9XYOpNp/8T62nBo2P","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":73212577},"main":"dist/index.js","pnpm":{"overrides":{"qs":"6.14.2","tar":"7.5.11","hono":"4.12.7","request":"npm:@cypress/request@3.0.10","file-type":">=21.3.1","form-data":"2.5.4","minimatch":"10.2.3","tough-cookie":"4.1.3","@discordjs/opus":"npm:opusscript@0.0.8","fast-xml-parser":"5.3.8","request-promise":"npm:@cypress/request-promise@5.0.0","@hono/node-server":"1.19.10","@sinclair/typebox":"0.34.48"},"minimumReleaseAge":2880,"onlyBuiltDependencies":["@lydell/node-pty","@matrix-org/matrix-sdk-crypto-nodejs","@napi-rs/canvas","@whiskeysockets/baileys","authenticate-pam","esbuild","koffi","node-llama-cpp","protobufjs","sharp"]},"type":"module","engines":{"node":">=22.12.0"},"exports":{".":"./dist/index.js","./sdk":{"types":"./dist/sdk/index.d.ts","default":"./dist/sdk/index.js"},"./cli-entry":"./mayros.mjs","./plugin-sdk":{"types":"./dist/plugin-sdk/index.d.ts","default":"./dist/plugin-sdk/index.js"},"./plugin-sdk/account-id":{"types":"./dist/plugin-sdk/account-id.d.ts","default":"./dist/plugin-sdk/account-id.js"}},"gitHead":"1bac4585dacd8543f7376b2c7f770673ea246618","scripts":{"dev":"node scripts/run-node.mjs","tui":"node scripts/run-node.mjs tui","lint":"oxlint --type-aware","test":"node scripts/test-parallel.mjs","build":"pnpm canvas:a2ui:bundle && tsdown && pnpm build:plugin-sdk:dts && node --import tsx scripts/write-plugin-sdk-entry-dts.ts && node --import tsx scripts/canvas-a2ui-copy.ts && node --import tsx scripts/copy-hook-metadata.ts && node --import tsx scripts/copy-export-html-templates.ts && node --import tsx scripts/write-build-info.ts && node --import tsx scripts/write-cli-compat.ts","check":"pnpm format:check && pnpm tsgo && pnpm lint","start":"node scripts/run-node.mjs","format":"oxfmt --write","mayros":"node scripts/run-node.mjs","ui:dev":"node scripts/ui.js dev","ios:gen":"bash -lc './scripts/ios-configure-signing.sh && cd apps/ios && xcodegen generate'","ios:run":"bash -lc './scripts/ios-configure-signing.sh && cd apps/ios && xcodegen generate && xcodebuild -project Mayros.xcodeproj -scheme Mayros -destination \"${IOS_DEST:-platform=iOS Simulator,name=iPhone 17}\" -configuration Debug build && xcrun simctl boot \"${IOS_SIM:-iPhone 17}\" || true && xcrun simctl launch booted ai.mayros.ios'","prepack":"pnpm build && pnpm ui:build","prepare":"command -v git >/dev/null 2>&1 && git rev-parse --is-inside-work-tree >/dev/null 2>&1 && git config core.hooksPath git-hooks || exit 0","test:ui":"pnpm --dir ui test","tui:dev":"MAYROS_PROFILE=dev node scripts/run-node.mjs --dev tui","docs:bin":"node scripts/build-docs-list.mjs","docs:dev":"cd docs && mint dev","ios:open":"bash -lc './scripts/ios-configure-signing.sh && cd apps/ios && xcodegen generate && open Mayros.xcodeproj'","lint:all":"pnpm lint && pnpm lint:swift","lint:fix":"oxlint --type-aware --fix && pnpm format","mac:open":"open dist/Mayros.app","test:all":"pnpm lint && pnpm build && pnpm test && pnpm test:e2e && pnpm test:live && pnpm test:docker:all","test:e2e":"vitest run --config vitest.e2e.config.ts","ui:build":"node scripts/ui.js build","check:loc":"node --import tsx scripts/check-ts-max-loc.ts --max 500","docs:list":"node scripts/docs-list.js","ios:build":"bash -lc './scripts/ios-configure-signing.sh && cd apps/ios && xcodegen generate && xcodebuild -project Mayros.xcodeproj -scheme Mayros -destination \"${IOS_DEST:-platform=iOS Simulator,name=iPhone 17}\" -configuration Debug build'","lint:docs":"pnpm dlx markdownlint-cli2","test:fast":"vitest run --config vitest.unit.config.ts","test:live":"MAYROS_LIVE_TEST=1 vitest run --config vitest.live.config.ts","check:docs":"pnpm format:docs:check && pnpm lint:docs && pnpm docs:check-links","format:all":"pnpm format && pnpm format:swift","format:fix":"oxfmt --write","lint:swift":"swiftlint lint --config .swiftlint.yml && (cd apps/ios && swiftlint lint --config .swiftlint.yml)","mayros:rpc":"node scripts/run-node.mjs agent --mode rpc --json","test:force":"node --import tsx scripts/test-force.ts","test:watch":"vitest","ui:install":"node scripts/ui.js install","android:run":"cd apps/android && ./gradlew :app:installDebug && adb shell am start -n ai.mayros.android/.MainActivity","deadcode:ci":"pnpm deadcode:report:ci:knip && pnpm deadcode:report:ci:ts-prune && pnpm deadcode:report:ci:ts-unused","format:diff":"oxfmt --write && git --no-pager diff","format:docs":"git ls-files 'docs/**/*.md' 'docs/**/*.mdx' 'README.md' | xargs oxfmt --write","gateway:dev":"MAYROS_SKIP_CHANNELS=1 node scripts/run-node.mjs --dev gateway","mac:package":"bash scripts/package-mac-app.sh","mac:restart":"bash scripts/restart-mac.sh","postinstall":"node scripts/postinstall.mjs","android:test":"cd apps/android && ./gradlew :app:testDebugUnitTest","format:check":"oxfmt --check","format:swift":"swiftformat --lint --config .swiftformat apps/macos/Sources apps/ios/Sources apps/shared/MayrosKit/Sources","plugins:sync":"node --import tsx scripts/sync-plugin-versions.ts","protocol:gen":"node --import tsx scripts/protocol-gen.ts","test:macmini":"MAYROS_TEST_VM_FORKS=0 MAYROS_TEST_PROFILE=serial node scripts/test-parallel.mjs","deadcode:knip":"pnpm dlx knip --no-progress","gateway:watch":"node scripts/watch-node.mjs gateway --force","lint:docs:fix":"pnpm dlx markdownlint-cli2 --fix","release:check":"node --import tsx scripts/release-check.ts","test:coverage":"vitest run --config vitest.unit.config.ts --coverage","cortex:install":"tsx scripts/install-cortex.ts","protocol:check":"pnpm protocol:gen && pnpm protocol:gen:swift && git diff --exit-code -- dist/protocol.schema.json apps/macos/Sources/MayrosProtocol/GatewayModels.swift","test:docker:qr":"bash scripts/e2e/qr-import-docker.sh","android:install":"cd apps/android && ./gradlew :app:installDebug","deadcode:report":"pnpm deadcode:knip; pnpm deadcode:ts-prune; pnpm deadcode:ts-unused","docs:spellcheck":"bash scripts/docs-spellcheck.sh","test:docker:all":"pnpm test:docker:live-models && pnpm test:docker:live-gateway && pnpm test:docker:onboard && pnpm test:docker:gateway-network && pnpm test:docker:qr && pnpm test:docker:doctor-switch && pnpm test:docker:plugins && pnpm test:docker:cleanup","android:assemble":"cd apps/android && ./gradlew :app:assembleDebug","docs:check-links":"node scripts/docs-link-audit.mjs","test:install:e2e":"bash scripts/test-install-sh-e2e-docker.sh","deadcode:ts-prune":"pnpm dlx ts-prune src extensions scripts","format:docs:check":"git ls-files 'docs/**/*.md' 'docs/**/*.mdx' 'README.md' | xargs oxfmt --check","gateway:dev:reset":"MAYROS_SKIP_CHANNELS=1 node scripts/run-node.mjs --dev gateway --reset","canvas:a2ui:bundle":"bash scripts/bundle-a2ui.sh","deadcode:ts-unused":"pnpm dlx ts-unused-exports tsconfig.json --ignoreTestFiles --exitWithCount","protocol:gen:swift":"node --import tsx scripts/protocol-gen-swift.ts","test:install:smoke":"bash scripts/test-install-sh-docker.sh","docs:spellcheck:fix":"bash scripts/docs-spellcheck.sh --write","test:docker:cleanup":"bash scripts/test-cleanup-docker.sh","test:docker:onboard":"bash scripts/e2e/onboard-docker.sh","test:docker:plugins":"bash scripts/e2e/plugins-docker.sh","build:plugin-sdk:dts":"tsc -p tsconfig.plugin-sdk.dts.json","deadcode:report:ci:knip":"mkdir -p .artifacts/deadcode && pnpm deadcode:knip > .artifacts/deadcode/knip.txt 2>&1 || true","test:docker:live-models":"bash scripts/test-live-models-docker.sh","test:install:e2e:openai":"MAYROS_E2E_MODELS=openai bash scripts/test-install-sh-e2e-docker.sh","test:docker:live-gateway":"bash scripts/test-live-gateway-models-docker.sh","test:docker:doctor-switch":"bash scripts/e2e/doctor-install-switch-docker.sh","test:voicecall:closedloop":"vitest run extensions/voice-call/src/manager.test.ts extensions/voice-call/src/media-stream.test.ts src/plugins/voice-call.plugin.test.ts --maxWorkers=1","test:install:e2e:anthropic":"MAYROS_E2E_MODELS=anthropic bash scripts/test-install-sh-e2e-docker.sh","deadcode:report:ci:ts-prune":"mkdir -p .artifacts/deadcode && pnpm deadcode:ts-prune > .artifacts/deadcode/ts-prune.txt 2>&1 || true","test:docker:gateway-network":"bash scripts/e2e/gateway-network-docker.sh","deadcode:report:ci:ts-unused":"mkdir -p .artifacts/deadcode && pnpm deadcode:ts-unused > .artifacts/deadcode/ts-unused-exports.txt 2>&1 || true"},"_npmUser":{"name":"apilium-ai","email":"it@apilium.com"},"repository":{"url":"git+https://github.com/ApiliumCode/mayros.git","type":"git"},"_npmVersion":"11.6.0","description":"Multi-channel AI agent framework with knowledge graph, MCP support, and coding CLI","directories":{"doc":"docs","test":"test"},"_nodeVersion":"24.8.0","dependencies":{"ws":"^8.19.0","ajv":"^8.18.0","tar":"7.5.11","zod":"^4.3.6","hono":"4.12.7","jiti":"^2.6.1","long":"^5.3.2","yaml":"^2.8.2","chalk":"^5.6.2","json5":"^2.2.3","jszip":"^3.10.1","sharp":"^0.34.5","tslog":"^4.10.2","croner":"^10.0.1","dotenv":"^17.3.1","grammy":"^1.40.0","semver":"^7.7.4","undici":"^7.24.2","express":"^5.2.1","chokidar":"^5.0.0","linkedom":"^0.18.12","commander":"^14.0.3","file-type":"^21.3.2","opusscript":"^0.0.8","pdfjs-dist":"^5.4.624","sqlite-vec":"0.1.7-alpha.2","@slack/bolt":"^4.6.0","markdown-it":"^14.1.1","osc-progress":"^0.3.0","@buape/carbon":"0.0.0-beta-20260216184201","@line/bot-sdk":"^10.6.0","@noble/curves":"^2.0.1","cli-highlight":"^2.1.11","node-edge-tts":"^1.2.10","@clack/prompts":"^1.0.1","@slack/web-api":"^7.14.1","playwright-core":"1.58.2","qrcode-terminal":"^0.12.0","@discordjs/voice":"^0.19.0","@grammyjs/runner":"^2.0.3","@homebridge/ciao":"^1.3.5","@lydell/node-pty":"1.2.0-beta.3","@sinclair/typebox":"0.34.48","discord-api-types":"^0.38.40","https-proxy-agent":"^7.0.6","quickjs-emscripten":"^0.31.0","@mariozechner/pi-ai":"0.54.0","@mariozechner/pi-tui":"0.54.0","@mozilla/readability":"^0.6.0","@aws-sdk/client-bedrock":"^3.995.0","@whiskeysockets/baileys":"7.0.0-rc.9","@agentclientprotocol/sdk":"0.14.1","@mariozechner/pi-agent-core":"0.54.0","@mariozechner/pi-coding-agent":"0.54.0","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"packageManager":"pnpm@10.23.0","devDependencies":{"lit":"^3.3.2","tsx":"^4.21.0","oxfmt":"0.34.0","oxlint":"^1.49.0","tsdown":"^0.20.3","vitest":"^4.0.18","@types/ws":"^8.18.1","typescript":"^5.9.3","@types/node":"^25.3.0","@lit/context":"^1.1.6","signal-utils":"0.21.1","@types/semver":"^7.7.1","@types/express":"^5.0.6","@grammyjs/types":"^3.24.0","oxlint-tsgolint":"^0.14.2","@lit-labs/signals":"^0.2.0","@types/markdown-it":"^14.1.2","@vitest/coverage-v8":"^4.0.18","@types/qrcode-terminal":"^0.12.2","@typescript/native-preview":"7.0.0-dev.20260221.1"},"peerDependencies":{"node-llama-cpp":"3.17.1","@napi-rs/canvas":"^0.1.89"},"_npmOperationalInternal":{"tmp":"tmp/mayros_0.2.1_1773533199251_0.6054380535933712","host":"s3://npm-registry-packages-npm-production"}},"0.3.0":{"name":"@apilium/mayros","version":"0.3.0","keywords":["agent","ai","aingle","apilium","cli","coding-assistant","cortex","knowledge-graph","mayros","mcp","multi-agent","terminal","tui"],"author":{"name":"Apilium Technologies"},"license":"MIT","_id":"@apilium/mayros@0.3.0","maintainers":[{"name":"apilium-ai","email":"it@apilium.com"}],"homepage":"https://apilium.com/en/products/mayros","bugs":{"url":"https://github.com/ApiliumCode/mayros/issues"},"bin":{"mayros":"mayros.mjs"},"dist":{"shasum":"3a39b8ac63625fc44616850dcb79d8ce5b361a41","tarball":"https://registry.npmjs.org/@apilium/mayros/-/mayros-0.3.0.tgz","fileCount":8113,"integrity":"sha512-gmU5UAYsLie+gBvpZ5stsykeWhuIMJ6x1A27a6KPiLp2kJ78ROCnJVYIm0/cELa9tIFDvth+Bpfuq7arEVxudg==","signatures":[{"sig":"MEUCIGKEC8UODiRX8dVLlgZ29lO4OcEfN3buOt42XbrTL+exAiEAtMSPu8BcY0S0+inc8JF8Lc+IRP6oTIzQ5DioxqOgKPw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":74494157},"main":"dist/index.js","pnpm":{"overrides":{"qs":"6.14.2","tar":"7.5.11","hono":"4.12.7","request":"npm:@cypress/request@3.0.10","file-type":">=21.3.1","form-data":"2.5.4","minimatch":"10.2.3","tough-cookie":"4.1.3","@discordjs/opus":"npm:opusscript@0.0.8","fast-xml-parser":"5.3.8","request-promise":"npm:@cypress/request-promise@5.0.0","@hono/node-server":"1.19.10","@sinclair/typebox":"0.34.48"},"minimumReleaseAge":2880,"onlyBuiltDependencies":["@lydell/node-pty","@matrix-org/matrix-sdk-crypto-nodejs","@napi-rs/canvas","@whiskeysockets/baileys","authenticate-pam","esbuild","koffi","node-llama-cpp","protobufjs","sharp"]},"type":"module","engines":{"node":">=22.12.0"},"exports":{".":"./dist/index.js","./sdk":{"types":"./dist/sdk/index.d.ts","default":"./dist/sdk/index.js"},"./cli-entry":"./mayros.mjs","./plugin-sdk":{"types":"./dist/plugin-sdk/index.d.ts","default":"./dist/plugin-sdk/index.js"},"./plugin-sdk/account-id":{"types":"./dist/plugin-sdk/account-id.d.ts","default":"./dist/plugin-sdk/account-id.js"}},"gitHead":"a0854baf7e25721c73a6264992989f6493152411","scripts":{"dev":"node scripts/run-node.mjs","tui":"node scripts/run-node.mjs tui","lint":"oxlint --type-aware","test":"node scripts/test-parallel.mjs","build":"pnpm canvas:a2ui:bundle && tsdown && pnpm build:plugin-sdk:dts && node --import tsx scripts/write-plugin-sdk-entry-dts.ts && node --import tsx scripts/canvas-a2ui-copy.ts && node --import tsx scripts/copy-hook-metadata.ts && node --import tsx scripts/copy-export-html-templates.ts && node --import tsx scripts/write-build-info.ts && node --import tsx scripts/write-cli-compat.ts && pnpm ui:build","check":"pnpm format:check && pnpm tsgo && pnpm lint","start":"node scripts/run-node.mjs","format":"oxfmt --write","mayros":"node scripts/run-node.mjs","ui:dev":"node scripts/ui.js dev","ios:gen":"bash -lc './scripts/ios-configure-signing.sh && cd apps/ios && xcodegen generate'","ios:run":"bash -lc './scripts/ios-configure-signing.sh && cd apps/ios && xcodegen generate && xcodebuild -project Mayros.xcodeproj -scheme Mayros -destination \"${IOS_DEST:-platform=iOS Simulator,name=iPhone 17}\" -configuration Debug build && xcrun simctl boot \"${IOS_SIM:-iPhone 17}\" || true && xcrun simctl launch booted ai.mayros.ios'","prepack":"pnpm build && pnpm ui:build","prepare":"command -v git >/dev/null 2>&1 && git rev-parse --is-inside-work-tree >/dev/null 2>&1 && git config core.hooksPath git-hooks || exit 0","test:ui":"pnpm --dir ui test","tui:dev":"MAYROS_PROFILE=dev node scripts/run-node.mjs --dev tui","docs:bin":"node scripts/build-docs-list.mjs","docs:dev":"cd docs && mint dev","ios:open":"bash -lc './scripts/ios-configure-signing.sh && cd apps/ios && xcodegen generate && open Mayros.xcodeproj'","lint:all":"pnpm lint && pnpm lint:swift","lint:fix":"oxlint --type-aware --fix && pnpm format","mac:open":"open dist/Mayros.app","test:all":"pnpm lint && pnpm build && pnpm test && pnpm test:e2e && pnpm test:live && pnpm test:docker:all","test:e2e":"vitest run --config vitest.e2e.config.ts","ui:build":"node scripts/ui.js build","check:loc":"node --import tsx scripts/check-ts-max-loc.ts --max 500","docs:list":"node scripts/docs-list.js","ios:build":"bash -lc './scripts/ios-configure-signing.sh && cd apps/ios && xcodegen generate && xcodebuild -project Mayros.xcodeproj -scheme Mayros -destination \"${IOS_DEST:-platform=iOS Simulator,name=iPhone 17}\" -configuration Debug build'","lint:docs":"pnpm dlx markdownlint-cli2","test:fast":"vitest run --config vitest.unit.config.ts","test:live":"MAYROS_LIVE_TEST=1 vitest run --config vitest.live.config.ts","check:docs":"pnpm format:docs:check && pnpm lint:docs && pnpm docs:check-links","format:all":"pnpm format && pnpm format:swift","format:fix":"oxfmt --write","lint:swift":"swiftlint lint --config .swiftlint.yml && (cd apps/ios && swiftlint lint --config .swiftlint.yml)","mayros:rpc":"node scripts/run-node.mjs agent --mode rpc --json","test:force":"node --import tsx scripts/test-force.ts","test:watch":"vitest","ui:install":"node scripts/ui.js install","android:run":"cd apps/android && ./gradlew :app:installDebug && adb shell am start -n ai.mayros.android/.MainActivity","deadcode:ci":"pnpm deadcode:report:ci:knip && pnpm deadcode:report:ci:ts-prune && pnpm deadcode:report:ci:ts-unused","format:diff":"oxfmt --write && git --no-pager diff","format:docs":"git ls-files 'docs/**/*.md' 'docs/**/*.mdx' 'README.md' | xargs oxfmt --write","gateway:dev":"MAYROS_SKIP_CHANNELS=1 node scripts/run-node.mjs --dev gateway","mac:package":"bash scripts/package-mac-app.sh","mac:restart":"bash scripts/restart-mac.sh","postinstall":"node scripts/postinstall.mjs","android:test":"cd apps/android && ./gradlew :app:testDebugUnitTest","format:check":"oxfmt --check","format:swift":"swiftformat --lint --config .swiftformat apps/macos/Sources apps/ios/Sources apps/shared/MayrosKit/Sources","plugins:sync":"node --import tsx scripts/sync-plugin-versions.ts","protocol:gen":"node --import tsx scripts/protocol-gen.ts","test:macmini":"MAYROS_TEST_VM_FORKS=0 MAYROS_TEST_PROFILE=serial node scripts/test-parallel.mjs","deadcode:knip":"pnpm dlx knip --no-progress","gateway:watch":"node scripts/watch-node.mjs gateway --force","lint:docs:fix":"pnpm dlx markdownlint-cli2 --fix","release:check":"node --import tsx scripts/release-check.ts","test:coverage":"vitest run --config vitest.unit.config.ts --coverage","cortex:install":"tsx scripts/install-cortex.ts","protocol:check":"pnpm protocol:gen && pnpm protocol:gen:swift && git diff --exit-code -- dist/protocol.schema.json apps/macos/Sources/MayrosProtocol/GatewayModels.swift","test:docker:qr":"bash scripts/e2e/qr-import-docker.sh","android:install":"cd apps/android && ./gradlew :app:installDebug","deadcode:report":"pnpm deadcode:knip; pnpm deadcode:ts-prune; pnpm deadcode:ts-unused","docs:spellcheck":"bash scripts/docs-spellcheck.sh","test:docker:all":"pnpm test:docker:live-models && pnpm test:docker:live-gateway && pnpm test:docker:onboard && pnpm test:docker:gateway-network && pnpm test:docker:qr && pnpm test:docker:doctor-switch && pnpm test:docker:plugins && pnpm test:docker:cleanup","android:assemble":"cd apps/android && ./gradlew :app:assembleDebug","docs:check-links":"node scripts/docs-link-audit.mjs","test:install:e2e":"bash scripts/test-install-sh-e2e-docker.sh","deadcode:ts-prune":"pnpm dlx ts-prune src extensions scripts","format:docs:check":"git ls-files 'docs/**/*.md' 'docs/**/*.mdx' 'README.md' | xargs oxfmt --check","gateway:dev:reset":"MAYROS_SKIP_CHANNELS=1 node scripts/run-node.mjs --dev gateway --reset","canvas:a2ui:bundle":"bash scripts/bundle-a2ui.sh","deadcode:ts-unused":"pnpm dlx ts-unused-exports tsconfig.json --ignoreTestFiles --exitWithCount","protocol:gen:swift":"node --import tsx scripts/protocol-gen-swift.ts","test:install:smoke":"bash scripts/test-install-sh-docker.sh","docs:spellcheck:fix":"bash scripts/docs-spellcheck.sh --write","test:docker:cleanup":"bash scripts/test-cleanup-docker.sh","test:docker:onboard":"bash scripts/e2e/onboard-docker.sh","test:docker:plugins":"bash scripts/e2e/plugins-docker.sh","build:plugin-sdk:dts":"tsc -p tsconfig.plugin-sdk.dts.json","deadcode:report:ci:knip":"mkdir -p .artifacts/deadcode && pnpm deadcode:knip > .artifacts/deadcode/knip.txt 2>&1 || true","test:docker:live-models":"bash scripts/test-live-models-docker.sh","test:install:e2e:openai":"MAYROS_E2E_MODELS=openai bash scripts/test-install-sh-e2e-docker.sh","test:docker:live-gateway":"bash scripts/test-live-gateway-models-docker.sh","test:docker:doctor-switch":"bash scripts/e2e/doctor-install-switch-docker.sh","test:voicecall:closedloop":"vitest run extensions/voice-call/src/manager.test.ts extensions/voice-call/src/media-stream.test.ts src/plugins/voice-call.plugin.test.ts --maxWorkers=1","test:install:e2e:anthropic":"MAYROS_E2E_MODELS=anthropic bash scripts/test-install-sh-e2e-docker.sh","deadcode:report:ci:ts-prune":"mkdir -p .artifacts/deadcode && pnpm deadcode:ts-prune > .artifacts/deadcode/ts-prune.txt 2>&1 || true","test:docker:gateway-network":"bash scripts/e2e/gateway-network-docker.sh","deadcode:report:ci:ts-unused":"mkdir -p .artifacts/deadcode && pnpm deadcode:ts-unused > .artifacts/deadcode/ts-unused-exports.txt 2>&1 || true"},"_npmUser":{"name":"apilium-ai","email":"it@apilium.com"},"repository":{"url":"git+https://github.com/ApiliumCode/mayros.git","type":"git"},"_npmVersion":"11.6.0","description":"Multi-channel AI agent framework with knowledge graph, MCP support, and coding CLI","directories":{"doc":"docs","test":"test"},"_nodeVersion":"24.8.0","dependencies":{"ws":"^8.19.0","ajv":"^8.18.0","tar":"7.5.11","zod":"^4.3.6","hono":"4.12.7","jiti":"^2.6.1","long":"^5.3.2","yaml":"^2.8.2","chalk":"^5.6.2","json5":"^2.2.3","jszip":"^3.10.1","sharp":"^0.34.5","tslog":"^4.10.2","croner":"^10.0.1","dotenv":"^17.3.1","grammy":"^1.40.0","semver":"^7.7.4","undici":"^7.24.2","express":"^5.2.1","chokidar":"^5.0.0","linkedom":"^0.18.12","commander":"^14.0.3","fast-glob":"^3.3.3","file-type":"^21.3.2","opusscript":"^0.0.8","pdfjs-dist":"^5.4.624","sqlite-vec":"0.1.7-alpha.2","@slack/bolt":"^4.6.0","markdown-it":"^14.1.1","osc-progress":"^0.3.0","@buape/carbon":"0.0.0-beta-20260216184201","@line/bot-sdk":"^10.6.0","@noble/curves":"^2.0.1","cli-highlight":"^2.1.11","node-edge-tts":"^1.2.10","@clack/prompts":"^1.0.1","@slack/web-api":"^7.14.1","playwright-core":"1.58.2","qrcode-terminal":"^0.12.0","@discordjs/voice":"^0.19.0","@grammyjs/runner":"^2.0.3","@homebridge/ciao":"^1.3.5","@lydell/node-pty":"1.2.0-beta.3","@sinclair/typebox":"0.34.48","discord-api-types":"^0.38.40","https-proxy-agent":"^7.0.6","quickjs-emscripten":"^0.31.0","@mariozechner/pi-ai":"0.54.0","@mariozechner/pi-tui":"0.54.0","@mozilla/readability":"^0.6.0","@aws-sdk/client-bedrock":"^3.995.0","@whiskeysockets/baileys":"7.0.0-rc.9","@agentclientprotocol/sdk":"0.14.1","@mariozechner/pi-agent-core":"0.54.0","@mariozechner/pi-coding-agent":"0.54.0","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"packageManager":"pnpm@10.23.0","devDependencies":{"lit":"^3.3.2","tsx":"^4.21.0","oxfmt":"0.34.0","oxlint":"^1.49.0","tsdown":"^0.20.3","vitest":"^4.0.18","@types/ws":"^8.18.1","typescript":"^5.9.3","@types/node":"^25.3.0","@lit/context":"^1.1.6","signal-utils":"0.21.1","@types/semver":"^7.7.1","@types/express":"^5.0.6","@grammyjs/types":"^3.24.0","oxlint-tsgolint":"^0.14.2","@lit-labs/signals":"^0.2.0","@types/markdown-it":"^14.1.2","@vitest/coverage-v8":"^4.0.18","@types/qrcode-terminal":"^0.12.2","@typescript/native-preview":"7.0.0-dev.20260221.1"},"peerDependencies":{"node-llama-cpp":"3.17.1","@napi-rs/canvas":"^0.1.89"},"_npmOperationalInternal":{"tmp":"tmp/mayros_0.3.0_1773927840194_0.09924733110144546","host":"s3://npm-registry-packages-npm-production"}},"0.3.1":{"name":"@apilium/mayros","version":"0.3.1","keywords":["agent","ai","aingle","apilium","cli","coding-assistant","cortex","knowledge-graph","mayros","mcp","multi-agent","terminal","tui"],"author":{"name":"Apilium Technologies"},"license":"MIT","_id":"@apilium/mayros@0.3.1","maintainers":[{"name":"apilium-ai","email":"it@apilium.com"}],"homepage":"https://apilium.com/en/products/mayros","bugs":{"url":"https://github.com/ApiliumCode/mayros/issues"},"bin":{"mayros":"mayros.mjs"},"dist":{"shasum":"50d6453b01bfee4b6083b6dc396319123857e386","tarball":"https://registry.npmjs.org/@apilium/mayros/-/mayros-0.3.1.tgz","fileCount":8148,"integrity":"sha512-+lR2GT3F7YNRUOFe4g16BFQSwEGqlsDq27UoSoY0q8qB7IMwwnztstHSgnfgGOpbhbB9NNmNo1eUHNcwuSiTSg==","signatures":[{"sig":"MEQCIGcBwanzVUN/CAENTg9PguzEBBigQilKf+5lMyQcpJ5dAiAbUzbaXbgPuZzNHcbXJczOYqXhwGGbImVT9nOreJiMUQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":80329753},"main":"dist/index.js","pnpm":{"overrides":{"qs":"6.14.2","tar":"7.5.11","hono":"4.12.7","request":"npm:@cypress/request@3.0.10","file-type":">=21.3.1","form-data":"2.5.4","minimatch":"10.2.3","tough-cookie":"4.1.3","@discordjs/opus":"npm:opusscript@0.0.8","fast-xml-parser":"5.3.8","request-promise":"npm:@cypress/request-promise@5.0.0","@hono/node-server":"1.19.10","@sinclair/typebox":"0.34.48"},"minimumReleaseAge":2880,"onlyBuiltDependencies":["@lydell/node-pty","@matrix-org/matrix-sdk-crypto-nodejs","@napi-rs/canvas","@whiskeysockets/baileys","authenticate-pam","esbuild","koffi","node-llama-cpp","protobufjs","sharp"]},"type":"module","engines":{"node":">=22.12.0"},"exports":{".":"./dist/index.js","./sdk":{"types":"./dist/sdk/index.d.ts","default":"./dist/sdk/index.js"},"./cli-entry":"./mayros.mjs","./plugin-sdk":{"types":"./dist/plugin-sdk/index.d.ts","default":"./dist/plugin-sdk/index.js"},"./plugin-sdk/account-id":{"types":"./dist/plugin-sdk/account-id.d.ts","default":"./dist/plugin-sdk/account-id.js"}},"gitHead":"82821d4be6f87d55596a0c2a28ed1cfa5303fc6d","scripts":{"dev":"node scripts/run-node.mjs","tui":"node scripts/run-node.mjs tui","lint":"oxlint --type-aware","test":"node scripts/test-parallel.mjs","build":"pnpm canvas:a2ui:bundle && tsdown && pnpm build:plugin-sdk:dts && node --import tsx scripts/write-plugin-sdk-entry-dts.ts && node --import tsx scripts/canvas-a2ui-copy.ts && node --import tsx scripts/copy-hook-metadata.ts && node --import tsx scripts/copy-export-html-templates.ts && node --import tsx scripts/write-build-info.ts && node --import tsx scripts/write-cli-compat.ts && pnpm ui:build","check":"pnpm format:check && pnpm tsgo && pnpm lint","start":"node scripts/run-node.mjs","format":"oxfmt --write","mayros":"node scripts/run-node.mjs","ui:dev":"node scripts/ui.js dev","ios:gen":"bash -lc './scripts/ios-configure-signing.sh && cd apps/ios && xcodegen generate'","ios:run":"bash -lc './scripts/ios-configure-signing.sh && cd apps/ios && xcodegen generate && xcodebuild -project Mayros.xcodeproj -scheme Mayros -destination \"${IOS_DEST:-platform=iOS Simulator,name=iPhone 17}\" -configuration Debug build && xcrun simctl boot \"${IOS_SIM:-iPhone 17}\" || true && xcrun simctl launch booted ai.mayros.ios'","prepack":"pnpm build && pnpm ui:build","prepare":"command -v git >/dev/null 2>&1 && git rev-parse --is-inside-work-tree >/dev/null 2>&1 && git config core.hooksPath git-hooks || exit 0","test:ui":"pnpm --dir ui test","tui:dev":"MAYROS_PROFILE=dev node scripts/run-node.mjs --dev tui","docs:bin":"node scripts/build-docs-list.mjs","docs:dev":"cd docs && mint dev","ios:open":"bash -lc './scripts/ios-configure-signing.sh && cd apps/ios && xcodegen generate && open Mayros.xcodeproj'","lint:all":"pnpm lint && pnpm lint:swift","lint:fix":"oxlint --type-aware --fix && pnpm format","mac:open":"open dist/Mayros.app","test:all":"pnpm lint && pnpm build && pnpm test && pnpm test:e2e && pnpm test:live && pnpm test:docker:all","test:e2e":"vitest run --config vitest.e2e.config.ts","ui:build":"node scripts/ui.js build","check:loc":"node --import tsx scripts/check-ts-max-loc.ts --max 500","docs:list":"node scripts/docs-list.js","ios:build":"bash -lc './scripts/ios-configure-signing.sh && cd apps/ios && xcodegen generate && xcodebuild -project Mayros.xcodeproj -scheme Mayros -destination \"${IOS_DEST:-platform=iOS Simulator,name=iPhone 17}\" -configuration Debug build'","lint:docs":"pnpm dlx markdownlint-cli2","test:fast":"vitest run --config vitest.unit.config.ts","test:live":"MAYROS_LIVE_TEST=1 vitest run --config vitest.live.config.ts","check:docs":"pnpm format:docs:check && pnpm lint:docs && pnpm docs:check-links","format:all":"pnpm format && pnpm format:swift","format:fix":"oxfmt --write","lint:swift":"swiftlint lint --config .swiftlint.yml && (cd apps/ios && swiftlint lint --config .swiftlint.yml)","mayros:rpc":"node scripts/run-node.mjs agent --mode rpc --json","test:force":"node --import tsx scripts/test-force.ts","test:watch":"vitest","ui:install":"node scripts/ui.js install","android:run":"cd apps/android && ./gradlew :app:installDebug && adb shell am start -n ai.mayros.android/.MainActivity","deadcode:ci":"pnpm deadcode:report:ci:knip && pnpm deadcode:report:ci:ts-prune && pnpm deadcode:report:ci:ts-unused","format:diff":"oxfmt --write && git --no-pager diff","format:docs":"git ls-files 'docs/**/*.md' 'docs/**/*.mdx' 'README.md' | xargs oxfmt --write","gateway:dev":"MAYROS_SKIP_CHANNELS=1 node scripts/run-node.mjs --dev gateway","mac:package":"bash scripts/package-mac-app.sh","mac:restart":"bash scripts/restart-mac.sh","postinstall":"node scripts/postinstall.mjs","android:test":"cd apps/android && ./gradlew :app:testDebugUnitTest","format:check":"oxfmt --check","format:swift":"swiftformat --lint --config .swiftformat apps/macos/Sources apps/ios/Sources apps/shared/MayrosKit/Sources","plugins:sync":"node --import tsx scripts/sync-plugin-versions.ts","protocol:gen":"node --import tsx scripts/protocol-gen.ts","test:macmini":"MAYROS_TEST_VM_FORKS=0 MAYROS_TEST_PROFILE=serial node scripts/test-parallel.mjs","deadcode:knip":"pnpm dlx knip --no-progress","gateway:watch":"node scripts/watch-node.mjs gateway --force","lint:docs:fix":"pnpm dlx markdownlint-cli2 --fix","release:check":"node --import tsx scripts/release-check.ts","test:coverage":"vitest run --config vitest.unit.config.ts --coverage","cortex:install":"tsx scripts/install-cortex.ts","protocol:check":"pnpm protocol:gen && pnpm protocol:gen:swift && git diff --exit-code -- dist/protocol.schema.json apps/macos/Sources/MayrosProtocol/GatewayModels.swift","test:docker:qr":"bash scripts/e2e/qr-import-docker.sh","android:install":"cd apps/android && ./gradlew :app:installDebug","deadcode:report":"pnpm deadcode:knip; pnpm deadcode:ts-prune; pnpm deadcode:ts-unused","docs:spellcheck":"bash scripts/docs-spellcheck.sh","test:docker:all":"pnpm test:docker:live-models && pnpm test:docker:live-gateway && pnpm test:docker:onboard && pnpm test:docker:gateway-network && pnpm test:docker:qr && pnpm test:docker:doctor-switch && pnpm test:docker:plugins && pnpm test:docker:cleanup","android:assemble":"cd apps/android && ./gradlew :app:assembleDebug","docs:check-links":"node scripts/docs-link-audit.mjs","test:install:e2e":"bash scripts/test-install-sh-e2e-docker.sh","deadcode:ts-prune":"pnpm dlx ts-prune src extensions scripts","format:docs:check":"git ls-files 'docs/**/*.md' 'docs/**/*.mdx' 'README.md' | xargs oxfmt --check","gateway:dev:reset":"MAYROS_SKIP_CHANNELS=1 node scripts/run-node.mjs --dev gateway --reset","canvas:a2ui:bundle":"bash scripts/bundle-a2ui.sh","deadcode:ts-unused":"pnpm dlx ts-unused-exports tsconfig.json --ignoreTestFiles --exitWithCount","protocol:gen:swift":"node --import tsx scripts/protocol-gen-swift.ts","test:install:smoke":"bash scripts/test-install-sh-docker.sh","docs:spellcheck:fix":"bash scripts/docs-spellcheck.sh --write","test:docker:cleanup":"bash scripts/test-cleanup-docker.sh","test:docker:onboard":"bash scripts/e2e/onboard-docker.sh","test:docker:plugins":"bash scripts/e2e/plugins-docker.sh","build:plugin-sdk:dts":"tsc -p tsconfig.plugin-sdk.dts.json","deadcode:report:ci:knip":"mkdir -p .artifacts/deadcode && pnpm deadcode:knip > .artifacts/deadcode/knip.txt 2>&1 || true","test:docker:live-models":"bash scripts/test-live-models-docker.sh","test:install:e2e:openai":"MAYROS_E2E_MODELS=openai bash scripts/test-install-sh-e2e-docker.sh","test:docker:live-gateway":"bash scripts/test-live-gateway-models-docker.sh","test:docker:doctor-switch":"bash scripts/e2e/doctor-install-switch-docker.sh","test:voicecall:closedloop":"vitest run extensions/voice-call/src/manager.test.ts extensions/voice-call/src/media-stream.test.ts src/plugins/voice-call.plugin.test.ts --maxWorkers=1","test:install:e2e:anthropic":"MAYROS_E2E_MODELS=anthropic bash scripts/test-install-sh-e2e-docker.sh","deadcode:report:ci:ts-prune":"mkdir -p .artifacts/deadcode && pnpm deadcode:ts-prune > .artifacts/deadcode/ts-prune.txt 2>&1 || true","test:docker:gateway-network":"bash scripts/e2e/gateway-network-docker.sh","deadcode:report:ci:ts-unused":"mkdir -p .artifacts/deadcode && pnpm deadcode:ts-unused > .artifacts/deadcode/ts-unused-exports.txt 2>&1 || true"},"_npmUser":{"name":"apilium-ai","email":"it@apilium.com"},"repository":{"url":"git+https://github.com/ApiliumCode/mayros.git","type":"git"},"_npmVersion":"11.6.0","description":"Multi-channel AI agent framework with knowledge graph, MCP support, and coding CLI","directories":{"doc":"docs","test":"test"},"_nodeVersion":"24.8.0","dependencies":{"ws":"^8.19.0","ajv":"^8.18.0","tar":"7.5.11","zod":"^4.3.6","hono":"4.12.7","jiti":"^2.6.1","long":"^5.3.2","yaml":"^2.8.2","chalk":"^5.6.2","json5":"^2.2.3","jszip":"^3.10.1","sharp":"^0.34.5","tslog":"^4.10.2","croner":"^10.0.1","dotenv":"^17.3.1","grammy":"^1.40.0","semver":"^7.7.4","undici":"^7.24.2","express":"^5.2.1","chokidar":"^5.0.0","linkedom":"^0.18.12","commander":"^14.0.3","fast-glob":"^3.3.3","file-type":"^21.3.2","opusscript":"^0.0.8","pdfjs-dist":"^5.4.624","sqlite-vec":"0.1.7-alpha.2","@slack/bolt":"^4.6.0","markdown-it":"^14.1.1","osc-progress":"^0.3.0","@buape/carbon":"0.0.0-beta-20260216184201","@line/bot-sdk":"^10.6.0","@noble/curves":"^2.0.1","cli-highlight":"^2.1.11","node-edge-tts":"^1.2.10","@clack/prompts":"^1.0.1","@slack/web-api":"^7.14.1","playwright-core":"1.58.2","qrcode-terminal":"^0.12.0","@discordjs/voice":"^0.19.0","@grammyjs/runner":"^2.0.3","@homebridge/ciao":"^1.3.5","@lydell/node-pty":"1.2.0-beta.3","@sinclair/typebox":"0.34.48","discord-api-types":"^0.38.40","https-proxy-agent":"^7.0.6","quickjs-emscripten":"^0.31.0","@mariozechner/pi-ai":"0.54.0","@mariozechner/pi-tui":"0.54.0","@mozilla/readability":"^0.6.0","@aws-sdk/client-bedrock":"^3.995.0","@whiskeysockets/baileys":"7.0.0-rc.9","@agentclientprotocol/sdk":"0.14.1","@mariozechner/pi-agent-core":"0.54.0","@mariozechner/pi-coding-agent":"0.54.0","@grammyjs/transformer-throttler":"^1.2.1"},"_hasShrinkwrap":false,"packageManager":"pnpm@10.23.0","devDependencies":{"lit":"^3.3.2","tsx":"^4.21.0","oxfmt":"0.34.0","oxlint":"^1.49.0","tsdown":"^0.20.3","vitest":"^4.0.18","@types/ws":"^8.18.1","typescript":"^5.9.3","@types/node":"^25.3.0","@lit/context":"^1.1.6","signal-utils":"0.21.1","@types/semver":"^7.7.1","@types/express":"^5.0.6","@grammyjs/types":"^3.24.0","oxlint-tsgolint":"^0.14.2","@lit-labs/signals":"^0.2.0","@types/markdown-it":"^14.1.2","@vitest/coverage-v8":"^4.0.18","@types/qrcode-terminal":"^0.12.2","@typescript/native-preview":"7.0.0-dev.20260221.1"},"peerDependencies":{"node-llama-cpp":"3.17.1","@napi-rs/canvas":"^0.1.89"},"_npmOperationalInternal":{"tmp":"tmp/mayros_0.3.1_1774467306733_0.07836823916570901","host":"s3://npm-registry-packages-npm-production"}},"0.3.2":{"name":"@apilium/mayros","version":"0.3.2","description":"Multi-channel AI agent framework with knowledge graph, MCP support, and coding CLI","keywords":["agent","ai","aingle","apilium","cli","coding-assistant","cortex","knowledge-graph","mayros","mcp","multi-agent","terminal","tui"],"homepage":"https://apilium.com/en/products/mayros","bugs":{"url":"https://github.com/ApiliumCode/mayros/issues"},"license":"MIT","author":{"name":"Apilium Technologies"},"repository":{"type":"git","url":"git+https://github.com/ApiliumCode/mayros.git"},"bin":{"mayros":"mayros.mjs"},"directories":{"doc":"docs","test":"test"},"type":"module","main":"dist/index.js","exports":{".":"./dist/index.js","./plugin-sdk":{"types":"./dist/plugin-sdk/index.d.ts","default":"./dist/plugin-sdk/index.js"},"./plugin-sdk/account-id":{"types":"./dist/plugin-sdk/account-id.d.ts","default":"./dist/plugin-sdk/account-id.js"},"./sdk":{"types":"./dist/sdk/index.d.ts","default":"./dist/sdk/index.js"},"./cli-entry":"./mayros.mjs"},"scripts":{"android:assemble":"cd apps/android && ./gradlew :app:assembleDebug","android:install":"cd apps/android && ./gradlew :app:installDebug","android:run":"cd apps/android && ./gradlew :app:installDebug && adb shell am start -n ai.mayros.android/.MainActivity","android:test":"cd apps/android && ./gradlew :app:testDebugUnitTest","build":"pnpm canvas:a2ui:bundle && tsdown && pnpm build:plugin-sdk:dts && node --import tsx scripts/write-plugin-sdk-entry-dts.ts && node --import tsx scripts/canvas-a2ui-copy.ts && node --import tsx scripts/copy-hook-metadata.ts && node --import tsx scripts/copy-export-html-templates.ts && node --import tsx scripts/write-build-info.ts && node --import tsx scripts/write-cli-compat.ts && pnpm ui:build","build:plugin-sdk:dts":"tsc -p tsconfig.plugin-sdk.dts.json","canvas:a2ui:bundle":"bash scripts/bundle-a2ui.sh","check":"pnpm format:check && pnpm tsgo && pnpm lint","check:docs":"pnpm format:docs:check && pnpm lint:docs && pnpm docs:check-links","check:loc":"node --import tsx scripts/check-ts-max-loc.ts --max 500","cortex:install":"tsx scripts/install-cortex.ts","deadcode:ci":"pnpm deadcode:report:ci:knip && pnpm deadcode:report:ci:ts-prune && pnpm deadcode:report:ci:ts-unused","deadcode:knip":"pnpm dlx knip --no-progress","deadcode:report":"pnpm deadcode:knip; pnpm deadcode:ts-prune; pnpm deadcode:ts-unused","deadcode:report:ci:knip":"mkdir -p .artifacts/deadcode && pnpm deadcode:knip > .artifacts/deadcode/knip.txt 2>&1 || true","deadcode:report:ci:ts-prune":"mkdir -p .artifacts/deadcode && pnpm deadcode:ts-prune > .artifacts/deadcode/ts-prune.txt 2>&1 || true","deadcode:report:ci:ts-unused":"mkdir -p .artifacts/deadcode && pnpm deadcode:ts-unused > .artifacts/deadcode/ts-unused-exports.txt 2>&1 || true","deadcode:ts-prune":"pnpm dlx ts-prune src extensions scripts","deadcode:ts-unused":"pnpm dlx ts-unused-exports tsconfig.json --ignoreTestFiles --exitWithCount","dev":"node scripts/run-node.mjs","docs:bin":"node scripts/build-docs-list.mjs","docs:check-links":"node scripts/docs-link-audit.mjs","docs:dev":"cd docs && mint dev","docs:list":"node scripts/docs-list.js","docs:spellcheck":"bash scripts/docs-spellcheck.sh","docs:spellcheck:fix":"bash scripts/docs-spellcheck.sh --write","format":"oxfmt --write","format:all":"pnpm format && pnpm format:swift","format:check":"oxfmt --check","format:diff":"oxfmt --write && git --no-pager diff","format:docs":"git ls-files 'docs/**/*.md' 'docs/**/*.mdx' 'README.md' | xargs oxfmt --write","format:docs:check":"git ls-files 'docs/**/*.md' 'docs/**/*.mdx' 'README.md' | xargs oxfmt --check","format:fix":"oxfmt --write","format:swift":"swiftformat --lint --config .swiftformat apps/macos/Sources apps/ios/Sources apps/shared/MayrosKit/Sources","gateway:dev":"MAYROS_SKIP_CHANNELS=1 node scripts/run-node.mjs --dev gateway","gateway:dev:reset":"MAYROS_SKIP_CHANNELS=1 node scripts/run-node.mjs --dev gateway --reset","gateway:watch":"node scripts/watch-node.mjs gateway --force","ios:build":"bash -lc './scripts/ios-configure-signing.sh && cd apps/ios && xcodegen generate && xcodebuild -project Mayros.xcodeproj -scheme Mayros -destination \"${IOS_DEST:-platform=iOS Simulator,name=iPhone 17}\" -configuration Debug build'","ios:gen":"bash -lc './scripts/ios-configure-signing.sh && cd apps/ios && xcodegen generate'","ios:open":"bash -lc './scripts/ios-configure-signing.sh && cd apps/ios && xcodegen generate && open Mayros.xcodeproj'","ios:run":"bash -lc './scripts/ios-configure-signing.sh && cd apps/ios && xcodegen generate && xcodebuild -project Mayros.xcodeproj -scheme Mayros -destination \"${IOS_DEST:-platform=iOS Simulator,name=iPhone 17}\" -configuration Debug build && xcrun simctl boot \"${IOS_SIM:-iPhone 17}\" || true && xcrun simctl launch booted ai.mayros.ios'","lint":"oxlint --type-aware","lint:all":"pnpm lint && pnpm lint:swift","lint:docs":"pnpm dlx markdownlint-cli2","lint:docs:fix":"pnpm dlx markdownlint-cli2 --fix","lint:fix":"oxlint --type-aware --fix && pnpm format","lint:swift":"swiftlint lint --config .swiftlint.yml && (cd apps/ios && swiftlint lint --config .swiftlint.yml)","mac:open":"open dist/Mayros.app","mac:package":"bash scripts/package-mac-app.sh","mac:restart":"bash scripts/restart-mac.sh","mayros":"node scripts/run-node.mjs","mayros:rpc":"node scripts/run-node.mjs agent --mode rpc --json","plugins:sync":"node --import tsx scripts/sync-plugin-versions.ts","postinstall":"node scripts/postinstall.mjs","prepack":"pnpm build && pnpm ui:build","prepare":"command -v git >/dev/null 2>&1 && git rev-parse --is-inside-work-tree >/dev/null 2>&1 && git config core.hooksPath git-hooks || exit 0","protocol:check":"pnpm protocol:gen && pnpm protocol:gen:swift && git diff --exit-code -- dist/protocol.schema.json apps/macos/Sources/MayrosProtocol/GatewayModels.swift","protocol:gen":"node --import tsx scripts/protocol-gen.ts","protocol:gen:swift":"node --import tsx scripts/protocol-gen-swift.ts","release:check":"node --import tsx scripts/release-check.ts","start":"node scripts/run-node.mjs","test":"node scripts/test-parallel.mjs","test:all":"pnpm lint && pnpm build && pnpm test && pnpm test:e2e && pnpm test:live && pnpm test:docker:all","test:coverage":"vitest run --config vitest.unit.config.ts --coverage","test:docker:all":"pnpm test:docker:live-models && pnpm test:docker:live-gateway && pnpm test:docker:onboard && pnpm test:docker:gateway-network && pnpm test:docker:qr && pnpm test:docker:doctor-switch && pnpm test:docker:plugins && pnpm test:docker:cleanup","test:docker:cleanup":"bash scripts/test-cleanup-docker.sh","test:docker:doctor-switch":"bash scripts/e2e/doctor-install-switch-docker.sh","test:docker:gateway-network":"bash scripts/e2e/gateway-network-docker.sh","test:docker:live-gateway":"bash scripts/test-live-gateway-models-docker.sh","test:docker:live-models":"bash scripts/test-live-models-docker.sh","test:docker:onboard":"bash scripts/e2e/onboard-docker.sh","test:docker:plugins":"bash scripts/e2e/plugins-docker.sh","test:docker:qr":"bash scripts/e2e/qr-import-docker.sh","test:e2e":"vitest run --config vitest.e2e.config.ts","test:fast":"vitest run --config vitest.unit.config.ts","test:force":"node --import tsx scripts/test-force.ts","test:install:e2e":"bash scripts/test-install-sh-e2e-docker.sh","test:install:e2e:anthropic":"MAYROS_E2E_MODELS=anthropic bash scripts/test-install-sh-e2e-docker.sh","test:install:e2e:openai":"MAYROS_E2E_MODELS=openai bash scripts/test-install-sh-e2e-docker.sh","test:install:smoke":"bash scripts/test-install-sh-docker.sh","test:live":"MAYROS_LIVE_TEST=1 vitest run --config vitest.live.config.ts","test:macmini":"MAYROS_TEST_VM_FORKS=0 MAYROS_TEST_PROFILE=serial node scripts/test-parallel.mjs","test:ui":"pnpm --dir ui test","test:voicecall:closedloop":"vitest run extensions/voice-call/src/manager.test.ts extensions/voice-call/src/media-stream.test.ts src/plugins/voice-call.plugin.test.ts --maxWorkers=1","test:watch":"vitest","tui":"node scripts/run-node.mjs tui","tui:dev":"MAYROS_PROFILE=dev node scripts/run-node.mjs --dev tui","ui:build":"node scripts/ui.js build","ui:dev":"node scripts/ui.js dev","ui:install":"node scripts/ui.js install"},"dependencies":{"@agentclientprotocol/sdk":"0.14.1","@aws-sdk/client-bedrock":"^3.1019.0","@buape/carbon":"0.0.0-beta-20260216184201","@clack/prompts":"^1.0.1","@discordjs/voice":"^0.19.0","@grammyjs/runner":"^2.0.3","@grammyjs/transformer-throttler":"^1.2.1","@homebridge/ciao":"^1.3.5","@line/bot-sdk":"^10.6.0","@lydell/node-pty":"1.2.0-beta.3","@mariozechner/pi-agent-core":"0.54.0","@mariozechner/pi-ai":"0.54.0","@mariozechner/pi-coding-agent":"0.54.0","@mariozechner/pi-tui":"0.54.0","@mozilla/readability":"^0.6.0","@noble/curves":"^2.0.1","@sinclair/typebox":"0.34.48","@slack/bolt":"^4.6.0","@slack/web-api":"^7.14.1","@whiskeysockets/baileys":"7.0.0-rc.9","ajv":"^8.18.0","chalk":"^5.6.2","chokidar":"^5.0.0","cli-highlight":"^2.1.11","commander":"^14.0.3","croner":"^10.0.1","discord-api-types":"^0.38.40","dotenv":"^17.3.1","express":"^5.2.1","fast-glob":"^3.3.3","file-type":"^21.3.2","grammy":"^1.40.0","hono":"4.12.7","https-proxy-agent":"^7.0.6","jiti":"^2.6.1","json5":"^2.2.3","jszip":"^3.10.1","linkedom":"^0.18.12","long":"^5.3.2","markdown-it":"^14.1.1","node-edge-tts":"^1.2.10","opusscript":"^0.0.8","osc-progress":"^0.3.0","pdfjs-dist":"^5.4.624","playwright-core":"1.58.2","qrcode-terminal":"^0.12.0","quickjs-emscripten":"^0.31.0","semver":"^7.7.4","sharp":"^0.34.5","sqlite-vec":"0.1.7-alpha.2","tar":"7.5.11","tslog":"^4.10.2","undici":"^7.24.2","ws":"^8.19.0","yaml":"^2.8.3","zod":"^4.3.6"},"devDependencies":{"@grammyjs/types":"^3.24.0","@lit-labs/signals":"^0.2.0","@lit/context":"^1.1.6","@types/express":"^5.0.6","@types/markdown-it":"^14.1.2","@types/node":"^25.3.0","@types/qrcode-terminal":"^0.12.2","@types/semver":"^7.7.1","@types/ws":"^8.18.1","@typescript/native-preview":"7.0.0-dev.20260221.1","@vitest/coverage-v8":"^4.0.18","lit":"^3.3.2","oxfmt":"0.34.0","oxlint":"^1.49.0","oxlint-tsgolint":"^0.14.2","signal-utils":"0.21.1","tsdown":"^0.20.3","tsx":"^4.21.0","typescript":"^5.9.3","vitest":"^4.0.18"},"peerDependencies":{"@napi-rs/canvas":"^0.1.89","node-llama-cpp":"3.17.1"},"engines":{"node":">=22.12.0"},"packageManager":"pnpm@10.23.0","pnpm":{"minimumReleaseAge":2880,"overrides":{"hono":"4.12.7","@hono/node-server":"1.19.10","fast-xml-parser":">=5.5.7","request":"npm:@cypress/request@3.0.10","request-promise":"npm:@cypress/request-promise@5.0.0","form-data":"2.5.4","minimatch":"10.2.3","qs":"6.14.2","@sinclair/typebox":"0.34.48","tar":"7.5.11","file-type":">=21.3.1","tough-cookie":"4.1.3","@discordjs/opus":"npm:opusscript@0.0.8","undici":">=7.24.0","picomatch":">=4.0.4","path-to-regexp":">=8.4.0","brace-expansion":">=5.0.5","music-metadata":">=11.12.3","yaml":">=2.8.3"},"onlyBuiltDependencies":["@lydell/node-pty","@matrix-org/matrix-sdk-crypto-nodejs","@napi-rs/canvas","@whiskeysockets/baileys","authenticate-pam","esbuild","koffi","node-llama-cpp","protobufjs","sharp"]},"_id":"@apilium/mayros@0.3.2","gitHead":"a80b2b8b33769852d86c285ceb8123b8b7476e8e","_nodeVersion":"24.8.0","_npmVersion":"11.6.0","dist":{"integrity":"sha512-vr7JdJsrsbW23e4HwRVBOAlFuE/sibIZf7py+a9rki/snwJnz7T7tyjvCh7p6Kd4EZdcKzyleCNASQdSK585Ow==","shasum":"4d28d548265dd619392e45b55a5aa8af75b56aa6","tarball":"https://registry.npmjs.org/@apilium/mayros/-/mayros-0.3.2.tgz","fileCount":8149,"unpackedSize":80359835,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQD2/LLAez5OnvI9uzS442kC2UjAl7chlSVqknu91coYKQIgLHNI5GV+diryOGm4we6iTkwoNy1adaCkifitlM6AH5k="}]},"_npmUser":{"name":"apilium-ai","email":"it@apilium.com"},"maintainers":[{"name":"apilium-ai","email":"it@apilium.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/mayros_0.3.2_1774880183191_0.07682444740718064"},"_hasShrinkwrap":false}},"time":{"created":"2026-02-25T23:55:54.540Z","modified":"2026-03-30T14:16:24.329Z","0.1.0":"2026-02-25T23:55:55.260Z","0.1.1":"2026-02-26T13:29:31.088Z","0.1.2":"2026-03-02T17:17:51.677Z","0.1.3":"2026-03-02T18:37:56.590Z","0.1.4":"2026-03-05T22:25:35.913Z","0.1.5":"2026-03-06T22:51:19.628Z","0.1.6":"2026-03-07T19:05:19.762Z","0.1.7":"2026-03-07T20:12:47.710Z","0.1.8":"2026-03-08T19:33:32.623Z","0.1.9":"2026-03-09T13:12:05.805Z","0.1.10":"2026-03-09T16:56:28.919Z","0.1.11":"2026-03-09T19:25:42.316Z","0.1.12":"2026-03-09T20:11:54.971Z","0.1.13":"2026-03-09T21:55:44.334Z","0.1.14":"2026-03-11T21:17:16.651Z","0.1.15":"2026-03-12T22:24:46.919Z","0.1.16":"2026-03-13T06:20:18.693Z","0.2.0":"2026-03-13T19:45:13.844Z","0.2.1":"2026-03-15T00:06:39.916Z","0.3.0":"2026-03-19T13:44:01.091Z","0.3.1":"2026-03-25T19:35:07.608Z","0.3.2":"2026-03-30T14:16:24.174Z"},"bugs":{"url":"https://github.com/ApiliumCode/mayros/issues"},"author":{"name":"Apilium Technologies"},"license":"MIT","homepage":"https://apilium.com/en/products/mayros","keywords":["agent","ai","aingle","apilium","cli","coding-assistant","cortex","knowledge-graph","mayros","mcp","multi-agent","terminal","tui"],"repository":{"type":"git","url":"git+https://github.com/ApiliumCode/mayros.git"},"description":"Multi-channel AI agent framework with knowledge graph, MCP support, and coding CLI","maintainers":[{"name":"apilium-ai","email":"it@apilium.com"}],"readme":"# ⚡🛡️ Mayros\n\n<p align=\"center\">\n    <img src=\"assets/mayros-readme.png\" alt=\"Mayros\" width=\"200\">\n</p>\n\n<p align=\"center\">\n  <strong>AI agent framework · Coding CLI · Personal assistant</strong><br>\n  One platform. Your terminal, your channels, your devices.\n</p>\n\n<p align=\"center\">\n  <a href=\"https://github.com/ApiliumCode/mayros/actions/workflows/ci.yml?branch=main\"><img src=\"https://img.shields.io/github/actions/workflow/status/ApiliumCode/mayros/ci.yml?branch=main&style=for-the-badge\" alt=\"CI status\"></a>\n  <a href=\"https://www.npmjs.com/package/@apilium/mayros\"><img src=\"https://img.shields.io/npm/v/@apilium/mayros?style=for-the-badge&color=cb3837\" alt=\"npm version\"></a>\n  <a href=\"https://github.com/ApiliumCode/mayros/releases\"><img src=\"https://img.shields.io/github/v/release/ApiliumCode/mayros?include_prereleases&style=for-the-badge\" alt=\"GitHub release\"></a>\n  <a href=\"https://discord.com/channels/1476351587105636404\"><img src=\"https://img.shields.io/discord/1476351587105636404?label=Discord&logo=discord&logoColor=white&color=5865F2&style=for-the-badge\" alt=\"Discord\"></a>\n  <a href=\"LICENSE\"><img src=\"https://img.shields.io/badge/License-MIT-blue.svg?style=for-the-badge\" alt=\"MIT License\"></a>\n</p>\n\n<p align=\"center\">\n  <a href=\"https://www.npmjs.com/package/@apilium/mayros\"><img src=\"https://img.shields.io/npm/dm/@apilium/mayros?style=for-the-badge&label=downloads&color=brightgreen\" alt=\"npm downloads\"></a>\n  <img src=\"https://img.shields.io/badge/node-%3E%3D22.12.0-339933?style=for-the-badge&logo=node.js&logoColor=white\" alt=\"Node.js >= 22.12.0\">\n  <img src=\"https://img.shields.io/badge/TypeScript-strict-3178C6?style=for-the-badge&logo=typescript&logoColor=white\" alt=\"TypeScript\">\n  <img src=\"https://img.shields.io/badge/extensions-55-8B5CF6?style=for-the-badge\" alt=\"55 extensions\">\n  <img src=\"https://img.shields.io/badge/platform-macOS%20%7C%20Linux%20%7C%20Windows-999?style=for-the-badge\" alt=\"macOS | Linux | Windows\">\n  <img src=\"https://img.shields.io/badge/MCP-Compatible-6366F1?style=for-the-badge&logo=data:image/svg%2bxml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0id2hpdGUiPjxwYXRoIGQ9Ik0xMiAyQzYuNDggMiAyIDYuNDggMiAxMnM0LjQ4IDEwIDEwIDEwIDEwLTQuNDggMTAtMTBTMTcuNTIgMiAxMiAyem0wIDE4Yy00LjQyIDAtOC0zLjU4LTgtOHMzLjU4LTggOC04IDggMy41OCA4IDgtMy41OCA4LTggOHoiLz48cGF0aCBkPSJNMTIgNmMtMy4zMSAwLTYgMi42OS02IDZzMi42OSA2IDYgNiA2LTIuNjkgNi02LTIuNjktNi02LTZ6Ii8+PC9zdmc+\" alt=\"MCP Compatible\">\n  <img src=\"https://img.shields.io/badge/Works_with-Claude-D97706?style=for-the-badge&logo=anthropic&logoColor=white\" alt=\"Works with Claude\">\n</p>\n\n<p align=\"center\">\n  <a href=\"https://apilium.com/en/products/mayros\">Product</a> · <a href=\"https://mayros.apilium.com\">Download</a> · <a href=\"https://apilium.com/en/doc/mayros\">Docs</a> · <a href=\"https://apilium.com/en/doc/mayros/start/getting-started\">Getting Started</a> · <a href=\"VISION.md\">Vision</a> · <a href=\"https://discord.com/channels/1476351587105636404\">Discord</a>\n</p>\n\n---\n\n**Mayros** is an open-source AI agent framework that runs on your own devices. It ships with an interactive **coding CLI** (`mayros code`), connects to **17+ messaging channels** (WhatsApp, Telegram, Slack, Discord, Signal, iMessage, Teams, and more), speaks and listens on **macOS/iOS/Android**, and has a **knowledge graph** that remembers everything across sessions. **Kaneru** — the multi-agent venture system — lets you build AI companies that learn, remember, and improve over time. All backed by a local-first Gateway and a 20-layer security architecture.\n\n> **55+ extensions · 12,400+ tests · 29 hooks · MCP server & client · Multi-model · Multi-agent · Kaneru ventures**\n\n```bash\nnpm install -g @apilium/mayros@latest\nmayros onboard\nmayros code   # interactive coding CLI\n```\n\n---\n\n## Why Mayros?\n\n|                        | Mayros                                                                                               | Others                    |\n| ---------------------- | ---------------------------------------------------------------------------------------------------- | ------------------------- |\n| 🧠 **Knowledge Graph** | AIngle Cortex — persistent memory across sessions, projects, and agents                              | Flat conversation history |\n| 🤖 **Multi-Agent**     | Teams, workflows, mailbox, background tasks, git worktree isolation                                  | Single agent              |\n| 📱 **Multi-Channel**   | 17 channels — WhatsApp, Telegram, Slack, Discord, Signal, iMessage, Teams, Matrix, WebChat, and more | Terminal only             |\n| 🔒 **Security**        | 20 layers — WASM sandbox, bash scanner, interactive permissions, namespace isolation, rate limiter   | Basic sandboxing          |\n| 🎙️ **Voice**           | Always-on Voice Wake + Talk Mode on macOS, iOS, Android                                              | None                      |\n| 🖥️ **IDE**             | VSCode + JetBrains plugins with chat, plan, traces, KG                                               | VSCode only               |\n| 📊 **Observability**   | Full trace system, decision graph, session fork/rewind                                               | Basic logging             |\n| 🔌 **Extensions**      | 55+ plugin extensions, 29 hook types, MCP server + client (4 transports)                             | Limited plugins           |\n| 🏢 **Kaneru**          | AI ventures with missions, squads, Q-learning routing, decision audit, fuel control                  | No organizational layer   |\n| 🗺️ **Plan Mode**       | Cortex-backed semantic planning: explore → assert → approve → execute                                | Simple plan files         |\n\n---\n\n## Install\n\nRuntime: **Node ≥ 22**. Works with npm, pnpm, or bun.\n\n```bash\nnpm install -g @apilium/mayros@latest\n# or: pnpm add -g @apilium/mayros@latest\n\nmayros onboard --install-daemon\n```\n\nThe wizard sets up the Gateway, workspace, channels, and skills. It installs the Gateway as a background daemon (launchd/systemd) so it stays running.\n\nThe installer automatically downloads [AIngle Cortex](https://github.com/ApiliumCode/aingle) (the semantic memory sidecar). No separate install needed.\n\nNew install? Start here: **[Getting Started](https://apilium.com/en/doc/mayros/start/getting-started)** · Upgrading? **[Updating guide](https://apilium.com/en/doc/mayros/install/updating)** (and run `mayros doctor`)\n\n### Update\n\n```bash\nmayros update          # updates Mayros + Cortex automatically\n# or: npm install -g @apilium/mayros@latest\n```\n\n### Uninstall\n\n```bash\nmayros uninstall           # interactive — choose what to remove\nmayros uninstall --all     # remove everything (service, state, workspace, cortex)\nmayros uninstall --dry-run # preview without deleting\n```\n\nA detailed data loss warning is always shown before deletion — listing every category of data (knowledge graph, ventures, agent memory, decision history, etc.).\n\n### Desktop Installers\n\nZero-setup installers that bundle Node.js + AIngle Cortex — no prerequisites required.\n\n| Platform                  | Format               | Download                                                   |\n| ------------------------- | -------------------- | ---------------------------------------------------------- |\n| **Windows**               | `.exe` (NSIS)        | [Releases](https://github.com/ApiliumCode/mayros/releases) |\n| **macOS (Apple Silicon)** | `.dmg`               | [Releases](https://github.com/ApiliumCode/mayros/releases) |\n| **macOS (Intel)**         | `.dmg`               | [Releases](https://github.com/ApiliumCode/mayros/releases) |\n| **Linux (x64)**           | `.AppImage` / `.deb` | [Releases](https://github.com/ApiliumCode/mayros/releases) |\n| **Linux (arm64)**         | `.AppImage` / `.deb` | [Releases](https://github.com/ApiliumCode/mayros/releases) |\n\nEach installer includes Node.js portable + AIngle Cortex binary, runs `npm install` at install time, creates desktop shortcuts, and adds Mayros to the system PATH.\n\n---\n\n## Local Models\n\nRun models locally with automatic GPU detection and guided setup. Mayros detects your hardware and recommends compatible models.\n\n**Supported runtimes:**\n\n| Runtime        | Use case                                        |\n| -------------- | ----------------------------------------------- |\n| **Ollama**     | Easiest setup — one command install             |\n| **vLLM**       | High-throughput serving with tensor parallelism |\n| **NVIDIA NIM** | Optimized containers for NVIDIA GPUs            |\n\n**GPU detection:** NVIDIA (nvidia-smi), AMD/Intel (PowerShell on Windows, lspci on Linux), Apple Silicon (sysctl), Intel Mac (system_profiler), Raspberry Pi (BCM2 chipset).\n\n**50+ model catalog** segmented by 8 activities (coding, chat, reasoning, creative, analysis, multilingual, vision, agents) with VRAM-aware filtering — from CPU-only models (0 VRAM) to 80GB+ enterprise models.\n\n```bash\nmayros mamoru model detect     # detect GPU and recommend models\nmayros mamoru model catalog    # browse full catalog by activity\nmayros mamoru model install    # guided installation\n```\n\nThe onboarding wizard in the web portal also includes GPU-aware model selection with compatibility indicators.\n\n---\n\n## Coding CLI\n\n`mayros code` is an interactive terminal UI for coding, conversation, and agent-driven workflows.\n\n<p align=\"center\">\n  <img src=\"docs/assets/mayros-coding-cli-terminal-interface.png\" alt=\"Mayros coding CLI terminal interface — welcome screen with mascot, quick start commands, session info, and status bar\" width=\"720\">\n</p>\n\n```bash\nmayros code                    # interactive TUI session\nmayros tui                     # alias\nmayros -p \"refactor auth flow\" # headless mode (non-interactive)\n```\n\n**Features:**\n\n- 🎨 3 themes (dark, light, high-contrast) — `/theme`\n- 📝 3 output styles (standard, explanatory, learning) — `/style`\n- ⌨️ Vim mode with motions, operators, undo — `/vim`\n- 📋 `Ctrl+V` image paste from clipboard\n- 📊 `/diff` inline diff viewer · `/context` token usage chart\n- 🗺️ `/plan` semantic plan mode (Cortex-backed)\n- 📎 `/copy` to clipboard · `/export [file]` to disk\n- 🔀 `/model` switch models · `/think` set thinking level · `/fast` toggle fast mode\n\n**Slash commands (30+):**\n\n| Command          | Description       | Command          | Description          |\n| ---------------- | ----------------- | ---------------- | -------------------- |\n| `/help`          | List all commands | `/plan`          | Semantic plan mode   |\n| `/new`           | Reset session     | `/diff`          | Show pending changes |\n| `/compact`       | Compact context   | `/context`       | Token usage chart    |\n| `/think <level>` | Set thinking      | `/theme`         | Cycle themes         |\n| `/model <name>`  | Switch model      | `/vim`           | Toggle vim mode      |\n| `/permission`    | Permission mode   | `/copy`          | Copy last response   |\n| `/fast`          | Fast mode         | `/export [file]` | Export session       |\n\n**Markdown-driven extensibility:**\n\n- Custom agents: `~/.mayros/agents/*.md` — define persona, tools, and behavior in markdown\n- Custom commands: `~/.mayros/commands/*.md` — define slash commands as markdown templates\n\n---\n\n## Quick Start\n\n```bash\n# 1. Install and onboard\nmayros onboard --install-daemon\n\n# 2. Start the Gateway\nmayros gateway --port 18789 --verbose\n\n# 3. Code interactively\nmayros code\n\n# 4. Or use the agent directly\nmayros agent --message \"Ship checklist\" --thinking high\n\n# 5. Or send a message to any channel\nmayros message send --to +1234567890 --message \"Hello from Mayros\"\n```\n\nFull beginner guide: **[Getting started](https://apilium.com/en/doc/mayros/start/getting-started)**\n\n---\n\n## Architecture\n\n```\n  WhatsApp · Telegram · Slack · Discord · Signal · iMessage · Teams · Matrix · WebChat\n                                    │\n                                    ▼\n                    ┌───────────────────────────────┐\n                    │          ⚡ Gateway             │\n                    │     (local control plane)      │\n                    │     ws://127.0.0.1:18789       │\n                    └──────────────┬────────────────┘\n                                   │\n          ┌────────────┬───────────┼───────────┬────────────┐\n          │            │           │           │            │\n     mayros code   VSCode /   Pi Agent    macOS App    MCP Server\n      (TUI)       JetBrains   (RPC)      (menu bar)   :19100\n                                                     Claude Desktop\n                                                     Claude Code\n```\n\nThe Gateway is the single control plane — every client, channel, tool, and event connects through it.\n\n---\n\n## Multi-Channel Inbox\n\nMayros connects to the channels you already use. One assistant, everywhere.\n\n| Channel                                                              | Transport  | Channel                                                                                                                   | Transport              |\n| -------------------------------------------------------------------- | ---------- | ------------------------------------------------------------------------------------------------------------------------- | ---------------------- |\n| [WhatsApp](https://apilium.com/en/doc/mayros/channels/whatsapp)      | Baileys    | [Microsoft Teams](https://apilium.com/en/doc/mayros/channels/msteams)                                                     | Bot Framework          |\n| [Telegram](https://apilium.com/en/doc/mayros/channels/telegram)      | grammY     | [Matrix](https://apilium.com/en/doc/mayros/channels/matrix)                                                               | matrix-js-sdk          |\n| [Slack](https://apilium.com/en/doc/mayros/channels/slack)            | Bolt       | [BlueBubbles](https://apilium.com/en/doc/mayros/channels/bluebubbles)                                                     | iMessage (recommended) |\n| [Discord](https://apilium.com/en/doc/mayros/channels/discord)        | discord.js | [iMessage](https://apilium.com/en/doc/mayros/channels/imessage)                                                           | Legacy macOS           |\n| [Google Chat](https://apilium.com/en/doc/mayros/channels/googlechat) | Chat API   | [Zalo](https://apilium.com/en/doc/mayros/channels/zalo) / [Personal](https://apilium.com/en/doc/mayros/channels/zalouser) | Extension              |\n| [Signal](https://apilium.com/en/doc/mayros/channels/signal)          | signal-cli | [WebChat](https://apilium.com/en/doc/mayros/web/webchat)                                                                  | Gateway WS             |\n\n**Security defaults:** DM pairing — unknown senders get a pairing code. You approve with `mayros pairing approve <channel> <code>`. Public DMs require explicit opt-in.\n\n---\n\n## Knowledge Graph (AIngle Cortex)\n\nMayros remembers. Not just conversation history — semantic knowledge stored as RDF triples in [AIngle Cortex](https://github.com/ApiliumCode/aingle).\n\n**Three-tier memory:**\n\n1. **MAYROS.md** — flat-file persona and instructions, always loaded into the system prompt\n2. **AIngle Cortex** — RDF triple store (`subject → predicate → object`) scoped by namespace. Optional: falls back to file-based memory when unavailable\n3. **Ineru STM/LTM** — short-term and long-term memory with temporal recall\n\n**Built on top:**\n\n- **Code indexer** — scans your codebase → RDF triples in Cortex (incremental, only re-indexes changed files)\n- **Project memory** — persists conventions, findings, and architecture decisions across sessions\n- **Smart compaction** — extracts key information before context pruning\n- **Cross-session recall** — injects relevant knowledge from previous sessions into new prompts\n\n**Design principles:** namespace isolation (no cross-namespace reads), graceful degradation (Cortex is a sidecar, not an FFI binding), circuit breaker with exponential backoff.\n\nCLI: `mayros kg search|explore|query|stats|triples|namespaces|export|import`\n\n---\n\n## MCP Server\n\nMayros exposes its tools, resources, and prompts via the [Model Context Protocol](https://modelcontextprotocol.io). Any MCP client — Claude Desktop, Claude Code, VSCode, Cursor, JetBrains — can discover and use Mayros capabilities.\n\n### Connect with Claude Desktop\n\n```bash\n# 1. Install Mayros\nnpm install -g @apilium/mayros@latest\n\n# 2. Register with Claude Desktop (auto-detects paths, writes config)\nmayros mcp-setup --desktop\n\n# 3. Restart Claude Desktop — done\n#    The tools icon appears in the chat input\n```\n\nThen in Claude Desktop, just talk naturally:\n\n- _\"Remember that our API uses JWT tokens with 24h expiry\"_ → stores in semantic memory\n- _\"What do you know about our authentication?\"_ → recalls from memory and knowledge graph\n- _\"Store in the graph: project:api depends_on express v5\"_ → creates an RDF triple\n- _\"What's the memory status?\"_ → shows STM/LTM/graph statistics\n\n### Connect with Claude Code\n\n```bash\n# From your terminal (not inside a Claude Code session)\nmayros mcp-setup\n# or manually:\nclaude mcp add mayros -- mayros serve --stdio\n```\n\n### Connect with other MCP clients\n\n```bash\n# Start the HTTP server\nmayros serve --http\n# → MCP endpoint: http://127.0.0.1:19100/mcp\n# → Legacy SSE:   http://127.0.0.1:19100/sse\n# → Health check: http://127.0.0.1:19100/health\n```\n\nPoint any MCP client to `http://127.0.0.1:19100/mcp` (Streamable HTTP) or `http://127.0.0.1:19100/sse` (legacy SSE for older clients).\n\n### Bring persistent memory to any AI coding tool\n\nAI coding CLIs have no memory between sessions. Mayros + [AIngle Cortex](https://github.com/ApiliumCode/aingle) fill that gap: semantic knowledge graph, DAG audit trail, vector search, and ZK proofs — all local-first.\n\nAny MCP-compatible client gets instant access to 45+ tools via a single command:\n\n```bash\nclaude mcp add mayros -- mayros serve --stdio   # Claude Code\n# Gemini CLI, GitHub Copilot — coming soon\n```\n\nBuilt on the open [Model Context Protocol](https://modelcontextprotocol.io) standard — no vendor lock-in.\n\n### Tools\n\n| Tool                      | Description                                            |\n| ------------------------- | ------------------------------------------------------ |\n| `mayros_remember`         | Store information in persistent semantic memory        |\n| `mayros_recall`           | Search memory by text, tags, or type                   |\n| `mayros_search`           | Vector similarity search over memory (HNSW)            |\n| `mayros_forget`           | Delete a memory entry                                  |\n| `mayros_memory_stats`     | STM/LTM/HNSW/graph statistics                          |\n| `mayros_memory_conflicts` | Scan memory for contradictions and duplicates          |\n| `mayros_memory_digest`    | Summary of stored memories, categories, and DAG status |\n| `mayros_cortex_query`     | Query the knowledge graph by subject/predicate/object  |\n| `mayros_cortex_store`     | Store RDF triples in the knowledge graph               |\n| `mayros_budget`           | Check token usage and budget status                    |\n| `mayros_policy_check`     | Evaluate actions against governance policies           |\n| `mayros_dag_tips`         | Get the current DAG tip hashes (frontier)              |\n| `mayros_dag_action`       | Submit a new action to the DAG                         |\n| `mayros_dag_history`      | Query action history for a subject or triple           |\n| `mayros_dag_chain`        | Trace the full chain of ancestors for an action        |\n| `mayros_dag_stats`        | DAG statistics (action count, tip count)               |\n| `mayros_dag_prune`        | Prune old DAG actions by policy                        |\n| `mayros_dag_time_travel`  | View graph state at a specific DAG action              |\n| `mayros_dag_diff`         | Compare graph state between two DAG actions            |\n| `mayros_dag_export`       | Export DAG actions as JSON                             |\n| `mayros_dag_verify`       | Verify Ed25519 signature of a DAG action               |\n\n---\n\n## Intelligent Routing\n\nAdaptive routing that learns and improves over time.\n\n- **Eruberu** (Q-Learning model routing) — learns optimal provider/model per task type, budget level, and time slot\n- **Miteru** (task-to-agent routing) — learns which agent handles each task type best via EMA scoring\n- **Hayameru** (code transforms) — deterministic WASM transforms that bypass the LLM for simple edits (var→const, remove console, sort imports). 0 tokens, sub-millisecond\n\nCLI: `mayros routing status|strategy|reset`\n\n---\n\n## Multi-Agent Mesh\n\nAgents that work together. Mayros supports coordinated multi-agent workflows with shared knowledge.\n\n- **Team manager** — Cortex-backed lifecycle: create, assign roles, merge results, disband\n- **Workflow orchestrator** — built-in workflows (code-review, research, refactor) + custom definitions\n- **Kimeru consensus** — majority vote, weighted (EMA), LLM-arbitrated, Byzantine (PBFT with HMAC), Raft leader election\n- **Agent mailbox** — persistent inter-agent messaging (send/inbox/outbox/archive)\n- **Background task tracker** — long-running tasks with status and cancellation\n- **Git worktree isolation** — each agent works in its own worktree to avoid conflicts\n- **Session fork/rewind** — checkpoint-based exploration with rewind capability\n- **Kakeru bridge** — dual-platform coordination (Claude + Codex CLI) with file lock coordination\n\nCLI: `mayros workflow run|list` · `mayros dashboard team|summary|agent` · `mayros tasks list|status|cancel|summary` · `mayros mailbox list|read|send|archive|stats`\n\n---\n\n## Kaneru — AI Venture Management\n\nKaneru turns Mayros into a full AI venture platform. Create organizations of agents that learn, coordinate, and improve over time — all stored in Cortex, all DAG-auditable.\n\n### Kaneru Quick Start\n\n```bash\n# Install a pre-built venture template (security-audit, content-pipeline, devops-squad)\nmayros kaneru dojo install --template security-audit --name \"My Security Team\"\n\n# Or use the web portal Setup Wizard: open dashboard → Ventures → New Venture\nmayros dashboard\n```\n\n### Ventures & Missions\n\n```bash\nmayros kaneru venture create --name \"Acme\" --prefix ACM --directive \"Ship fast\" --fuel-limit 10000\nmayros kaneru mission create --venture <id> --title \"Audit auth module\" --priority critical\nmayros kaneru mission claim --mission <id> --agent scanner --run run-001\nmayros kaneru mission transition --mission <id> --status review --run run-001\nmayros kaneru comment add --mission <id> --author scanner --content \"SQL injection found\"\n```\n\n### Agents That Learn\n\nAgents build expertise profiles over time. Q-learning + EMA scoring routes missions to the best agent automatically.\n\n```bash\nmayros kaneru learn profile --agent scanner     # see agent expertise\nmayros kaneru learn top --domain typescript --task-type security-scan  # best agents for a task\nmayros kaneru route --mission \"Fix SQL injection\" --agents scanner,reviewer,fixer  # smart routing\n```\n\n### Cost Analytics & Fuel Control\n\n```bash\nmayros kaneru fuel summary --venture <id>           # spend overview\nmayros kaneru fuel analytics --venture <id> --period weekly  # time-series + provider breakdown\nmayros kaneru fuel forecast --venture <id>           # burn rate + days until exhausted\n```\n\n### Decision Audit\n\n```bash\nmayros kaneru consensus --squad <id> --question \"Ship or block?\"\nmayros kaneru decisions list --venture <id>\nmayros kaneru decisions explain --decision <id>     # full reasoning with votes\n```\n\n### Distributed Ventures (P2P)\n\n```bash\nmayros kaneru discover --venture <id>    # auto-discover peers via mDNS\nmayros kaneru sync --venture <id>        # DAG-sync venture state with peers\n```\n\n### Web Portal\n\nThe portal at `http://localhost:18789` includes:\n\n- **Ventures tab** — venture table, mission kanban, chain of command tree, fuel bars\n- **Kaneru tab** — squads, Q-learning router, squad builder\n- **Canvas tab** — A2UI surfaces (overview, missions, chain, fuel) — interactive, venture-aware\n- **Setup Wizard** — 4-step guided venture creation (Venture → Agent → Mission → Launch)\n- **Command Bar** (Ctrl+/) — Spotlight-style overlay with venture context and voice input\n\n### MCP Tools (24)\n\nAny MCP client (Claude, Cursor, Cline) gets access to 24 Kaneru tools:\n\n| Tool                                           | Purpose                     |\n| ---------------------------------------------- | --------------------------- |\n| `kaneru_venture_create/list`                   | Venture CRUD                |\n| `kaneru_mission_create/claim/list/transition`  | Mission lifecycle           |\n| `kaneru_fuel_summary/analytics/forecast`       | Cost control                |\n| `kaneru_dojo_list/install`                     | Venture templates           |\n| `kaneru_learn_profile/top`                     | Agent expertise             |\n| `kaneru_decisions_list/explain`                | Decision audit              |\n| `kaneru_sync/terminal_exec`                    | P2P sync + remote execution |\n| `kaneru_squad_create/run/status`               | Multi-agent squads          |\n| `kaneru_delegate/consensus/route/fuse/mailbox` | Coordination                |\n\nCLI: `mayros kaneru` — 18 subcommand groups with 40+ commands total\n\n---\n\n## Mamoru — Security Layer\n\nMamoru (守る, \"to protect\") adds enterprise-grade security to Mayros:\n\n- **Sandbox** — Landlock + seccomp probing for kernel-level agent isolation (Linux)\n- **Eruberu Proxy** — All inference calls routed through the gateway with audit logging\n- **Mamoru Gate** — Deny-by-default network egress with 12 presets and real-time approval\n- **Secrets Vault** — AES-256-GCM encrypted secrets with scrypt key derivation\n- **API Keys** — SHA-256 hashed agent keys with timing-safe validation\n- **Local Models** — GPU detection + guided Ollama/vLLM setup\n\nCLI: `mayros mamoru status|egress|proxy|keys|vault|model`\n\n---\n\n## IDE Plugins\n\nMayros lives inside your editor, connected via Gateway WebSocket.\n\n**VSCode** (`tools/vscode-extension/`):\n\n- Sidebar tree views: sessions, agents, skills\n- Webview panels: chat, plan mode, trace viewer, knowledge graph\n- Context menu actions and gutter markers\n\n**JetBrains** (`tools/jetbrains-plugin/`):\n\n- Unified tabbed panel with the same feature set\n- Protocol v3 compatibility\n\nBoth connect to `ws://127.0.0.1:18789`.\n\n---\n\n## Voice & Companion Apps\n\n- **[Voice Wake](https://apilium.com/en/doc/mayros/nodes/voicewake) + [Talk Mode](https://apilium.com/en/doc/mayros/nodes/talk)** — always-on speech for macOS/iOS/Android with ElevenLabs\n- **[Live Canvas](https://apilium.com/en/doc/mayros/platforms/mac/canvas)** — agent-driven visual workspace with [A2UI](https://apilium.com/en/doc/mayros/platforms/mac/canvas#canvas-a2ui)\n- **[macOS app](https://apilium.com/en/doc/mayros/platforms/macos)** — menu bar control, Voice Wake, Talk Mode overlay, WebChat, debug tools\n- **[iOS node](https://apilium.com/en/doc/mayros/platforms/ios)** — Canvas, Voice Wake, Talk Mode, camera, screen recording, Bonjour pairing\n- **[Android node](https://apilium.com/en/doc/mayros/platforms/android)** — Canvas, Talk Mode, camera, screen recording, optional SMS\n\n---\n\n## Extensions Ecosystem\n\n55 extensions loaded as plugins at startup:\n\n| Category      | Extension                 | Purpose                                                                   |\n| ------------- | ------------------------- | ------------------------------------------------------------------------- |\n| Skills        | `semantic-skills`         | QuickJS WASM sandbox, 6 semantic tools, skill marketplace                 |\n| Agents        | `agent-mesh`              | Teams, workflows, consensus (majority/weighted/Byzantine/Raft), mailbox   |\n| Ventures      | `kaneru`                  | Ventures, missions, projects, fuel, learning profiles, decision history   |\n| Memory        | `memory-semantic`         | Cortex integration, rules engine, agent memory, contextual awareness      |\n| Observability | `semantic-observability`  | Traces, decision graph, session fork/rewind                               |\n| Indexer       | `code-indexer`            | Codebase scanning + RDF mapping (incremental)                             |\n| Security      | `bash-sandbox`            | Command parsing, domain checker, blocklist, audit log                     |\n| Governance    | `osameru-governance`      | Policy enforcement, HMAC audit trail, trust tiers                         |\n| Permissions   | `interactive-permissions` | Runtime permission dialogs, intent classification, policy store           |\n| Routing       | `eruberu`                 | Q-Learning model routing, budget-driven fallback, task classification     |\n| Transforms    | `hayameru`                | Deterministic code transforms that bypass LLM (0 tokens, sub-ms)          |\n| Rate Limit    | `tomeru-guard`            | Sliding window rate limiter, loop breaker, velocity circuit breaker       |\n| Hooks         | `llm-hooks`               | Markdown-defined hook evaluation with safe condition parser               |\n| MCP Server    | `mcp-server`              | 21 tools exposed via MCP (memory, graph, DAG, budget, governance)         |\n| MCP Client    | `mcp-client`              | Model Context Protocol client (stdio, SSE, WebSocket, HTTP)               |\n| Economy       | `token-economy`           | Budget tracking, response cache, prompt cache optimization                |\n| Bridge        | `kakeru-bridge`           | Dual-platform coordination (Claude + Codex CLI)                           |\n| Hub           | `skill-hub`               | Apilium Hub marketplace, Ed25519 signing, dependency audit                |\n| IoT           | `iot-bridge`              | IoT node fleet management                                                 |\n| Channels      | 17 plugins                | Discord, Telegram, WhatsApp, Slack, Signal, iMessage, Teams, Matrix, etc. |\n\n---\n\n## Hooks System\n\n29 hook types across the assistant lifecycle:\n\n- **Lifecycle** — `before_prompt_build`, `after_response`, `before_compaction`, `agent_end`, etc.\n- **Security** — `permission_request` (modifying: allow/deny/ask), `config_change`\n- **Coordination** — `teammate_idle`, `task_completed`, `notification`\n- **HTTP webhooks** — POST delivery with HMAC-SHA256 signatures, retry + exponential backoff\n- **Async queue** — background execution with concurrency limits and dead-letter queue\n- **Markdown hooks** — place `.md` files in `~/.mayros/hooks/` for custom logic\n\n---\n\n## Security (20 layers)\n\nMayros takes security seriously. 20 layers of defense:\n\n| Layer                       | Description                                                     |\n| --------------------------- | --------------------------------------------------------------- |\n| QuickJS WASM Sandbox        | Skills run in isolated WASM — no fs, net, process, eval         |\n| Static Scanner              | 16 rules + anti-evasion preprocessing                           |\n| Enrichment Sanitizer        | Unicode normalization, injection detection, depth limits        |\n| Bash Sandbox                | Command parsing, domain blocklist, audit logging                |\n| Interactive Permissions     | Runtime dialogs, intent classification, policy store            |\n| Namespace Isolation         | All queries forced to `{ns}:` prefix — no cross-namespace reads |\n| Tool Allowlist              | Intersection model — ALL active skills must allow a tool        |\n| Rate Limiter                | Sliding window per skill (default: 60 calls/min)                |\n| Query/Write Limits          | Per-skill caps on graph reads and writes                        |\n| Enrichment Timeout          | 2s timeout prevents DoS via slow enrichment                     |\n| Hot-Reload Validation       | Atomic swap, manifest validation, downgrade blocking            |\n| Path Traversal Protection   | Reject `..` + `isPathInside()` double-check                     |\n| Verify-then-Promote         | Temp extract → verify hashes → atomic promote                   |\n| Circuit Breaker             | 3-state (closed/open/half-open) + exponential backoff           |\n| DM Pairing                  | Unknown senders get pairing code, not access                    |\n| Audit Logging               | Skill name + operation tagged on all sandbox writes             |\n| Docker Sandboxing           | Per-session Docker containers for non-main sessions             |\n| Governance (Osameru)        | Policy compilation, enforcement gates, HMAC audit trail         |\n| Rate Limit (Tomeru)         | Sliding window, token bucket, loop breaking, velocity breaker   |\n| Enterprise Managed Settings | Enforced config overrides with locked keys                      |\n\n---\n\n## Models\n\nMayros is multi-model. Bring any provider.\n\n- Models config + CLI: **[Models](https://apilium.com/en/doc/mayros/concepts/models)**\n- Auth profile rotation (OAuth vs API keys) + fallbacks: **[Model failover](https://apilium.com/en/doc/mayros/concepts/model-failover)**\n\nMinimal config:\n\n```json5\n{\n  agent: {\n    model: \"anthropic/claude-opus-4-6\",\n  },\n}\n```\n\nFull reference: **[Configuration](https://apilium.com/en/doc/mayros/gateway/configuration)**\n\n---\n\n## Plan Mode\n\nCortex-backed semantic planning for complex multi-step tasks.\n\n- **Explore** — gather context from the codebase and Cortex graph\n- **Assert** — declare facts and constraints the plan must satisfy\n- **Approve** — review the plan before execution\n- **Execute** — run the approved plan with progress tracking\n\nCLI: `mayros plan start|explore|assert|show|approve|execute|done|list|status` · TUI: `/plan`\n\n---\n\n## Remote Gateway\n\nRun the Gateway on a small Linux instance. Clients connect over **Tailscale Serve/Funnel** or **SSH tunnels**, and device nodes (macOS/iOS/Android) handle local actions via `node.invoke`.\n\nTailscale modes: `off` (default) · `serve` (tailnet-only HTTPS) · `funnel` (public HTTPS, requires password auth).\n\nDetails: **[Remote access](https://apilium.com/en/doc/mayros/gateway/remote)** · **[Tailscale guide](https://apilium.com/en/doc/mayros/gateway/tailscale)** · **[Docker](https://apilium.com/en/doc/mayros/install/docker)**\n\n---\n\n## Chat Commands (Channels)\n\nSend these in WhatsApp/Telegram/Slack/Discord/Google Chat/Microsoft Teams/WebChat:\n\n| Command                       | Description                                            |\n| ----------------------------- | ------------------------------------------------------ |\n| `/status`                     | Session status (model, tokens, cost)                   |\n| `/new`, `/reset`              | Reset the session                                      |\n| `/compact`                    | Compact session context                                |\n| `/think <level>`              | Set thinking level (off/minimal/low/medium/high/xhigh) |\n| `/verbose on\\|off`            | Toggle verbose mode                                    |\n| `/usage off\\|tokens\\|full`    | Per-response usage footer                              |\n| `/restart`                    | Restart the gateway (owner-only)                       |\n| `/activation mention\\|always` | Group activation (groups only)                         |\n\n---\n\n## From Source\n\n```bash\ngit clone https://github.com/ApiliumCode/mayros.git\ncd mayros\n\npnpm install\npnpm ui:build   # auto-installs UI deps on first run\npnpm build\n\npnpm mayros onboard --install-daemon\n\n# Dev loop (auto-reload)\npnpm gateway:watch\n```\n\n`pnpm mayros ...` runs TypeScript directly (via `tsx`). `pnpm build` produces `dist/`.\n\n**Development channels:**\n\n- **stable** — tagged releases, npm dist-tag `latest`\n- **beta** — prerelease tags, npm dist-tag `beta`\n- **dev** — moving head of `main`, npm dist-tag `dev`\n\nSwitch: `mayros update --channel stable|beta|dev`. Details: **[Development channels](https://apilium.com/en/doc/mayros/install/development-channels)**\n\n---\n\n## Skills Hub\n\n[Skills Hub](https://hub.apilium.com) is a skill marketplace. With it enabled, the agent can search for skills automatically and pull in new ones.\n\n- Workspace root: `~/.mayros/workspace`\n- Skills: `~/.mayros/workspace/skills/<skill>/SKILL.md`\n- Injected prompt files: `AGENTS.md`, `SOUL.md`, `TOOLS.md`\n\n---\n\n## Channel Setup\n\n<details>\n<summary><strong>WhatsApp</strong></summary>\n\n- Link the device: `pnpm mayros channels login` (stores creds in `~/.mayros/credentials`)\n- Allowlist: `channels.whatsapp.allowFrom`\n- Groups: `channels.whatsapp.groups` (include `\"*\"` to allow all)\n\n[Full guide →](https://apilium.com/en/doc/mayros/channels/whatsapp)\n\n</details>\n\n<details>\n<summary><strong>Telegram</strong></summary>\n\nSet `TELEGRAM_BOT_TOKEN` or `channels.telegram.botToken`:\n\n```json5\n{ channels: { telegram: { botToken: \"123456:ABCDEF\" } } }\n```\n\n[Full guide →](https://apilium.com/en/doc/mayros/channels/telegram)\n\n</details>\n\n<details>\n<summary><strong>Slack</strong></summary>\n\nSet `SLACK_BOT_TOKEN` + `SLACK_APP_TOKEN` (or config equivalents).\n\n[Full guide →](https://apilium.com/en/doc/mayros/channels/slack)\n\n</details>\n\n<details>\n<summary><strong>Discord</strong></summary>\n\nSet `DISCORD_BOT_TOKEN` or `channels.discord.token`:\n\n```json5\n{ channels: { discord: { token: \"1234abcd\" } } }\n```\n\n[Full guide →](https://apilium.com/en/doc/mayros/channels/discord)\n\n</details>\n\n<details>\n<summary><strong>Signal · BlueBubbles · iMessage · Teams · Matrix · Zalo · WebChat</strong></summary>\n\n- **Signal** — requires `signal-cli` + config section\n- **BlueBubbles** (recommended iMessage) — `channels.bluebubbles.serverUrl` + `password` + webhook\n- **iMessage** (legacy) — macOS-only via `imsg`\n- **Microsoft Teams** — Bot Framework app + `msteams` config\n- **Matrix** — `matrix-js-sdk` extension\n- **Zalo / Zalo Personal** — extension channels\n- **WebChat** — uses Gateway WebSocket directly\n\n[Channel docs →](https://apilium.com/en/doc/mayros/channels)\n\n</details>\n\n---\n\n## Documentation\n\n**Start here:**\n\n- [Getting started](https://apilium.com/en/doc/mayros/start/getting-started) — first-time setup\n- [Architecture](https://apilium.com/en/doc/mayros/concepts/architecture) — gateway + protocol model\n- [Configuration](https://apilium.com/en/doc/mayros/gateway/configuration) — every key + examples\n- [Security](https://apilium.com/en/doc/mayros/gateway/security) — security model and guidance\n\n**Platform guides:**\n\n[macOS](https://apilium.com/en/doc/mayros/platforms/macos) · [iOS](https://apilium.com/en/doc/mayros/platforms/ios) · [Android](https://apilium.com/en/doc/mayros/platforms/android) · [Linux](https://apilium.com/en/doc/mayros/platforms/linux) · [Windows (WSL2)](https://apilium.com/en/doc/mayros/platforms/windows)\n\n**Operations:**\n\n[Gateway runbook](https://apilium.com/en/doc/mayros/gateway) · [Docker](https://apilium.com/en/doc/mayros/install/docker) · [Health checks](https://apilium.com/en/doc/mayros/gateway/health) · [Doctor](https://apilium.com/en/doc/mayros/gateway/doctor) · [Logging](https://apilium.com/en/doc/mayros/logging) · [Troubleshooting](https://apilium.com/en/doc/mayros/channels/troubleshooting)\n\n**Deep dives:**\n\n[Agent loop](https://apilium.com/en/doc/mayros/concepts/agent-loop) · [Sessions](https://apilium.com/en/doc/mayros/concepts/session) · [Models](https://apilium.com/en/doc/mayros/concepts/models) · [Presence](https://apilium.com/en/doc/mayros/concepts/presence) · [Streaming](https://apilium.com/en/doc/mayros/concepts/streaming) · [Skills](https://apilium.com/en/doc/mayros/tools/skills) · [Browser](https://apilium.com/en/doc/mayros/tools/browser) · [Canvas](https://apilium.com/en/doc/mayros/platforms/mac/canvas) · [Nodes](https://apilium.com/en/doc/mayros/nodes) · [Cron](https://apilium.com/en/doc/mayros/automation/cron-jobs) · [Webhooks](https://apilium.com/en/doc/mayros/automation/webhook) · [Gmail Pub/Sub](https://apilium.com/en/doc/mayros/automation/gmail-pubsub)\n\n**Advanced:**\n\n[Discovery + transports](https://apilium.com/en/doc/mayros/gateway/discovery) · [Bonjour/mDNS](https://apilium.com/en/doc/mayros/gateway/bonjour) · [Gateway pairing](https://apilium.com/en/doc/mayros/gateway/pairing) · [Tailscale](https://apilium.com/en/doc/mayros/gateway/tailscale) · [Remote gateway](https://apilium.com/en/doc/mayros/gateway/remote) · [Control UI](https://apilium.com/en/doc/mayros/web/control-ui) · [RPC adapters](https://apilium.com/en/doc/mayros/reference/rpc) · [TypeBox schemas](https://apilium.com/en/doc/mayros/concepts/typebox)\n\n**Templates:**\n\n[AGENTS](https://apilium.com/en/doc/mayros/reference/templates/AGENTS) · [BOOTSTRAP](https://apilium.com/en/doc/mayros/reference/templates/BOOTSTRAP) · [IDENTITY](https://apilium.com/en/doc/mayros/reference/templates/IDENTITY) · [TOOLS](https://apilium.com/en/doc/mayros/reference/templates/TOOLS) · [USER](https://apilium.com/en/doc/mayros/reference/templates/USER) · [Default AGENTS](https://apilium.com/en/doc/mayros/reference/AGENTS.default) · [Skills config](https://apilium.com/en/doc/mayros/tools/skills-config)\n\n---\n\n## Community\n\nSee [CONTRIBUTING.md](CONTRIBUTING.md) for guidelines, maintainers, and how to submit PRs.\nAI/vibe-coded PRs welcome! 🤖\n\nSpecial thanks to [Mario Zechner](https://mariozechner.at/) for his support and for\n[pi-mono](https://github.com/badlogic/pi-mono).\n","readmeFilename":"README.md"}