skykoi 2026.3.401 → 2026.3.403
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{APEv2Parser-aF9uvuWj.js → APEv2Parser-Ba7yIvMy.js} +5 -5
- package/dist/{AbstractID3Parser-C6T7VM07.js → AbstractID3Parser-Cf2LaaLC.js} +6 -6
- package/dist/{AiffParser-CihukODU.js → AiffParser-Cvx7vIj0.js} +7 -7
- package/dist/{AsfParser-5IoFj9Un.js → AsfParser-Bth1euSE.js} +6 -6
- package/dist/{DsdiffParser-BkALor_F.js → DsdiffParser-Djnj5Jvy.js} +7 -7
- package/dist/{DsfParser-Dhj6kDdz.js → DsfParser-BQpFZzaT.js} +7 -7
- package/dist/{FlacParser-BQ151mCK.js → FlacParser-DE4FjCdI.js} +7 -7
- package/dist/{ID3v1Parser-BfOq3_Yz.js → ID3v1Parser-3ia97CSy.js} +5 -5
- package/dist/{ID3v2Parser-DVcXrmaC.js → ID3v2Parser-UNJu2sI-.js} +6 -6
- package/dist/{ID3v2Token-CHyCfrHg.js → ID3v2Token-DK6kpMKy.js} +2 -2
- package/dist/{MP4Parser-D9rH9hiY.js → MP4Parser-BBDtQSXB.js} +9 -9
- package/dist/{MatroskaParser-C9foId4P.js → MatroskaParser-DAHp428F.js} +6 -6
- package/dist/{MpegParser-btC1Uy5P.js → MpegParser-iMWZ_SV9.js} +7 -7
- package/dist/{MusepackParser-B3UfJ8TQ.js → MusepackParser-CO4rWQod.js} +7 -7
- package/dist/{OggParser-BSjQh9p8.js → OggParser-Ch-yEZw-.js} +8 -8
- package/dist/{Util-GThona7t.js → Util-B_52glhk.js} +3 -3
- package/dist/{WavPackParser-Cl3OdDw_.js → WavPackParser-D0DsAM2G.js} +6 -6
- package/dist/{WaveParser-CnQrR6Id.js → WaveParser-CADBh0bK.js} +8 -8
- package/dist/{accounts-DiVdPd_D.js → accounts-C1p6Cppc.js} +2 -2
- package/dist/{acp-cli-CB12B240.js → acp-cli-B0oDXivn.js} +24 -22
- package/dist/action-ledger-CJ4wxgFj.js +212 -0
- package/dist/{admin-unlock-CxkAVK3J.js → admin-unlock-CjZRxHxf.js} +4 -4
- package/dist/{archive-BoAGGpfB.js → archive-BUi2UNbq.js} +1 -1
- package/dist/{audio-decode-jI5q94oj.js → audio-decode-C_GJII_g.js} +6 -6
- package/dist/audio-recovery-B79LVKSU.js +268 -0
- package/dist/{audit-BCI38aU2.js → audit-C9kPnb6f.js} +17 -17
- package/dist/{auth-ETZUkuev.js → auth-X5uq6vRI.js} +2 -2
- package/dist/{auth-health-DVgwYXcb.js → auth-health-FPMBFAsj.js} +1 -1
- package/dist/billing-alerts-DW7RyxM5.js +115 -0
- package/dist/{bonjour-discovery-C_SkOn7h.js → bonjour-discovery-3LKAHtHL.js} +2 -2
- package/dist/build-info.json +3 -3
- package/dist/{ca-director-CigEzkAv.js → ca-director-DQknKzfB.js} +1262 -28
- package/dist/{call-ByKQ2oSx.js → call-CqDndKP3.js} +8 -8
- package/dist/canvas-host/a2ui/.bundle.hash +1 -1
- package/dist/{graphics-protocol-Om06dOny.js → canvas-state-C3YRnkNr.js} +52 -3
- package/dist/{capture-service-CZVAtdtH.js → capture-service-Dx_4U2_g.js} +99 -20
- package/dist/{channel-auth-DOMFfsFe.js → channel-auth-DCGvsTTl.js} +7 -7
- package/dist/{channel-options-C9DEYpN1.js → channel-options-B6X75t0Z.js} +5 -5
- package/dist/{channel-selection-BSuFqCaq.js → channel-selection-Di4awirs.js} +2 -2
- package/dist/{channel-summary-DCMNnhoP.js → channel-summary-DNu96QpK.js} +260 -4
- package/dist/{channels-cli-JtkJberE.js → channels-cli-BknDGKl9.js} +102 -92
- package/dist/{channels-status-issues-CoUSLr5Y.js → channels-status-issues-CGTJwSbx.js} +1 -1
- package/dist/{chrome-CXOcEC_5.js → chrome-CRoiYOwt.js} +5 -5
- package/dist/{clack-prompter-DRdAQdPx.js → clack-prompter-clPzQ9p-.js} +5 -5
- package/dist/cli/daemon-cli.js +1 -1
- package/dist/{cli-auto-update-0dvTw4Ud.js → cli-auto-update-Fy66y_VY.js} +8 -8
- package/dist/cli-q_Y3mKmM.js +131 -0
- package/dist/{client-BravwEMC.js → client-Dzt29zIp.js} +34 -4
- package/dist/common-DDNLy4f0.js +130 -0
- package/dist/{completion-cli-CytmKnE4.js → completion-cli-DkfDnw7v.js} +1 -1
- package/dist/config-55EPjg8B.js +54 -0
- package/dist/{config-guard-CM2NpzWc.js → config-guard-g60mxcT7.js} +52 -50
- package/dist/{configure-DYAs6DoZ.js → configure-C-aAy1zB.js} +20 -20
- package/dist/{context-digest-eh5l1QGn.js → context-digest-Br8pwgY-.js} +98 -52
- package/dist/{control-service-BsDK7r-y.js → control-service-DQ32SBGJ.js} +5 -5
- package/dist/{control-ui-assets-BM8V8YzF.js → control-ui-assets-D4o4damy.js} +2 -2
- package/dist/{core-BbMOb92i.js → core-BlHif_ps.js} +4 -4
- package/dist/{cron-cli-Cusms5TW.js → cron-cli-B7PghB4q.js} +27 -25
- package/dist/{daemon-cli-Bjngr-YQ.js → daemon-cli-BNhNsZzp.js} +22 -22
- package/dist/{daemon-runtime-BnGqbyou.js → daemon-runtime-DIgqhoVa.js} +4 -4
- package/dist/{deliver-CPQeH-9Y.js → deliver-uOIbsOCt.js} +10 -10
- package/dist/{deps-BDTNdoeN.js → deps-B7x0T9m0.js} +2 -2
- package/dist/{devices-cli-TRcwFHnk.js → devices-cli-Cu-yCMqM.js} +21 -19
- package/dist/{diagnostics-BirX5oxG.js → diagnostics-6vXdnH8k.js} +1 -1
- package/dist/{directory-cli-CDrzk6hg.js → directory-cli-DstkgbDm.js} +23 -21
- package/dist/{dispatcher-DTV_p-9p.js → dispatcher-BHYC2Mdu.js} +1 -1
- package/dist/{dist-CpERBIN9.js → dist-3zY5f01M.js} +12 -12
- package/dist/dist-B01d37B6.js +7859 -0
- package/dist/{dist-CHfqAvJX.js → dist-Ck6BZtRQ.js} +5 -5
- package/dist/{dist-C3p_LVCC.js → dist-Pt-v-K0u.js} +15 -7863
- package/dist/{dist-BcBe246p.js → dist-UoOHg1p0.js} +1 -1
- package/dist/{dist-cjs-B3qyFTKM.js → dist-cjs-BEAwDaaU.js} +1 -1
- package/dist/{dist-cjs-Ba6pNFGg.js → dist-cjs-BVRU5Qt8.js} +3 -3
- package/dist/{dist-cjs-Bd9V9SqN.js → dist-cjs-BzLua_ko.js} +3 -3
- package/dist/{dist-cjs-B5aHqZRy.js → dist-cjs-D8BOnVEk.js} +2 -2
- package/dist/{dist-cjs-GvVXnjmm.js → dist-cjs-D9zWZLJo.js} +2 -2
- package/dist/{dist-cjs-ljWCJARL.js → dist-cjs-Du3syY2f.js} +1 -1
- package/dist/{dist-cjs-7228iF7U.js → dist-cjs-kBOJ196l.js} +8 -8
- package/dist/{dns-cli-DouTGeTw.js → dns-cli-C18PVD14.js} +19 -17
- package/dist/{docs-cli-4TMyvZj-.js → docs-cli-BTLH5vYy.js} +16 -15
- package/dist/{doctor-BnKH7P6D.js → doctor-Bv7Mv6zq.js} +40 -39
- package/dist/{doctor-completion-DhdfUR43.js → doctor-completion-WddhNnKy.js} +4 -4
- package/dist/{dotenv-Y3WsO11w.js → dotenv-d4aPJ7q2.js} +1 -1
- package/dist/{ensure-local-gateway-fPsGGZU2.js → ensure-local-gateway-Xk7ir7zS.js} +5 -5
- package/dist/entry.js +5 -5
- package/dist/{env-ChCKTuXK.js → env-C2ovlUPG.js} +1 -1
- package/dist/{exec-approvals-cli-CHM34IRa.js → exec-approvals-cli-CV8HbMJS.js} +28 -26
- package/dist/{exec-approvals-evaluate-BRTvE5NT.js → exec-approvals-evaluate-Mqaz3DKH.js} +1 -1
- package/dist/{exec-DdlIawm8.js → exec-f0H7lrAS.js} +2 -2
- package/dist/extension-api.js +82 -72
- package/dist/{first-run-0QWRgr0p.js → first-run-Bfh6lhfa.js} +2 -2
- package/dist/{flac-D7cbDL-Q.js → flac-C4DRRmjE.js} +0 -0
- package/dist/{gateway-cli-Coc4iOtL.js → gateway-cli-ByhoN9KQ.js} +228 -147
- package/dist/gateway-client.js +6 -6
- package/dist/{gateway-rpc-lb7pLXFe.js → gateway-rpc-DwTpsQgX.js} +3 -3
- package/dist/{github-copilot-auth-BZ1WQOZI.js → github-copilot-auth-DQZYnTtI.js} +9 -9
- package/dist/{gmail-setup-utils-CnOGevbQ.js → gmail-setup-utils-kVh_mWJI.js} +3 -3
- package/dist/{graphics-terminal-setup-w2dx46lC.js → graphics-terminal-setup-eucacjsj.js} +7 -5
- package/dist/{health-format-CLG8j0JY.js → health-format-DGVJTmBT.js} +16 -16
- package/dist/{help-format-dPXG6VQF.js → help-format-Bz-E4Xsi.js} +1 -1
- package/dist/{hooks-cli-CXed6Cr_.js → hooks-cli-DiaIlA_u.js} +86 -76
- package/dist/{hooks-status-BFBe2G4d.js → hooks-status-Cr0qf9U9.js} +4 -4
- package/dist/{identify-DFi1kVgv.js → identify-B7juRFHo.js} +17 -2
- package/dist/{image-B56lrMHs.js → image-BQrsvGIN.js} +6 -6
- package/dist/{image-ops-_y0NATN4.js → image-ops-5RRlAQ0c.js} +3 -3
- package/dist/index.js +136 -126
- package/dist/{installs-C66FfO07.js → installs-vo94okm5.js} +5 -5
- package/dist/{config-DMLMgvxl.js → io-BiSyGUoT.js} +8 -58
- package/dist/{koi-DOrE_RPh.js → koi-Cqm5OeFT.js} +17 -17
- package/dist/{koi-event-bridge-D9NAMsQa.js → koi-event-bridge-DeLARijk.js} +2 -2
- package/dist/{koi-scope-7GA83nWp.js → koi-scope-C15QLwY-.js} +3 -3
- package/dist/{koi-utterance-trigger-B4f_IIMa.js → koi-utterance-trigger-DBXY1dq5.js} +1 -1
- package/dist/ledger-cli-DjgehGEF.js +89 -0
- package/dist/{lib-iI713Gu9.js → lib-9wRl5N4X.js} +1 -1
- package/dist/{lib-Y8uwPBbl.js → lib-CbWkbLty.js} +2 -2
- package/dist/{lib-CUrKJVSd.js → lib-DGjy3PZ_.js} +24 -24
- package/dist/{lib-B2lQEF5z.js → lib-JFtVlWtn.js} +1 -1
- package/dist/{links-CFNtV6AI.js → links-BY_N2dMU.js} +1 -1
- package/dist/{logger-BKidfKRU.js → logger-Door90g0.js} +1 -1
- package/dist/{logging-truWYhq_.js → logging-C3sRv-iX.js} +1 -1
- package/dist/{login-C2PBCAPy.js → login-JCFx5Pzl.js} +11 -11
- package/dist/{login-qr-BmHkxUJ2.js → login-qr-DAZi8Nkf.js} +11 -11
- package/dist/{logs-cli-HCG8o1Sj.js → logs-cli-B64FQ0sG.js} +23 -21
- package/dist/{manager-BwHTvXSO.js → manager-DH-1An5c.js} +9 -9
- package/dist/{manifest-registry-DEGu_o5t.js → manifest-registry-Y19rtw98.js} +1 -1
- package/dist/{message-6EWET-eu.js → message-DLdOmEc7.js} +8 -8
- package/dist/{message-channel-Bhhyy2hp.js → message-channel-Cy9b1PGA.js} +1 -1
- package/dist/{model-selection-i7Sz3GGw.js → model-selection-CKLFiLpY.js} +19 -9
- package/dist/{models-cli-DJU1pPDt.js → models-cli-Dkuie_nv.js} +90 -80
- package/dist/{models-config-BJvU2gPz.js → models-config-DoNNjXe6.js} +2 -2
- package/dist/{mpg123-decoder-DeXo0n6Q.js → mpg123-decoder-ChMVLi_j.js} +0 -0
- package/dist/{multipart-parser-hNDQMHfP.js → multipart-parser-C4YpL2Da.js} +1 -1
- package/dist/{net-COR_ZMrL.js → net-CtMv6JrN.js} +1 -1
- package/dist/{node-cli-CFFmHZH9.js → node-cli-D4giluTo.js} +39 -37
- package/dist/{node-service-C_jH4QIC.js → node-service-Bb6tgGQx.js} +2 -2
- package/dist/{nodes-cli-DOkgNicw.js → nodes-cli-ChTsJXUH.js} +27 -25
- package/dist/{note-sNtAMorB.js → note-PNq_JEQe.js} +1 -1
- package/dist/{ogg-opus-decoder-DM9zWJfA.js → ogg-opus-decoder-rGN6IMJw.js} +0 -0
- package/dist/{ogg-vorbis-DuiMlJ-w.js → ogg-vorbis-BPcbvdod.js} +0 -0
- package/dist/{onboard-channels-Do-ZWUvL.js → onboard-channels-xmMSl7NY.js} +8 -8
- package/dist/{onboard-helpers-vTn9gV9u.js → onboard-helpers-nDN4y46S.js} +12 -12
- package/dist/{onboard-skills-CufnYZNw.js → onboard-skills-CjvE5SMy.js} +15 -15
- package/dist/{onboarding-B2BsLZ1z.js → onboarding-9nJQKphG.js} +43 -43
- package/dist/{opus-ml-bOYT0KYK.js → opus-ml-BMchJC0t.js} +0 -0
- package/dist/{pairing-cli-BDhojI21.js → pairing-cli-bpewtve0.js} +22 -20
- package/dist/{pairing-labels-CvFO0Xed.js → pairing-labels-BuxC93RD.js} +1 -1
- package/dist/{pairing-store-xsNgyCt9.js → pairing-store-CAfuV0tG.js} +2 -2
- package/dist/{path-env-5sUMLbkI.js → path-env-CnhsG0TT.js} +2 -2
- package/dist/{photon_rs-B5YxA0gR.js → photon_rs-BV1jsHW1.js} +1 -1
- package/dist/{pi-embedded-helpers-Da2MkIg1.js → pi-embedded-helpers-DFn976W-.js} +15 -4
- package/dist/{pi-model-discovery-CQkU5DuG.js → pi-model-discovery-BUOhjZaJ.js} +1 -1
- package/dist/{pi-tool-definition-adapter-DyvBzoAn.js → pi-tool-definition-adapter-BjyavKfi.js} +5 -132
- package/dist/{pi-tools.policy-1bMRTs8v.js → pi-tools.policy-BFFg8jIe.js} +5 -5
- package/dist/platform-billing-BjToqDnR.js +90 -0
- package/dist/{plugin-auto-enable-D7B2IhaJ.js → plugin-auto-enable-7Sq0kaQq.js} +5 -5
- package/dist/{plugin-registry-S6Cqjwvj.js → plugin-registry-Da-Z2T3i.js} +4 -4
- package/dist/plugin-sdk/capture/audio-recovery.d.ts +13 -0
- package/dist/plugin-sdk/capture/context-digest.d.ts +20 -4
- package/dist/plugin-sdk/capture/proactive/addressing.d.ts +6 -1
- package/dist/plugin-sdk/capture/proactive/fast-responder.d.ts +4 -0
- package/dist/plugin-sdk/capture/proactive/handled-dedupe.d.ts +9 -0
- package/dist/plugin-sdk/capture/proactive/triggers.d.ts +2 -0
- package/dist/plugin-sdk/capture/screen-capture.d.ts +1 -0
- package/dist/plugin-sdk/gateway/client.d.ts +3 -0
- package/dist/plugin-sdk/index.js +422 -18
- package/dist/plugin-sdk/infra/billing-alerts.d.ts +35 -0
- package/dist/plugin-sdk/infra/platform-billing.d.ts +95 -0
- package/dist/plugin-sdk/infra/sound.d.ts +31 -0
- package/dist/plugin-sdk/infra/usage-reporter.d.ts +13 -0
- package/dist/plugin-sdk/infra/voice-lock.d.ts +4 -0
- package/dist/plugin-sdk/infra/voice-mode.d.ts +8 -0
- package/dist/plugin-sdk/koi/action-ledger.d.ts +68 -0
- package/dist/plugin-sdk/koi/missions/mission-store.d.ts +252 -0
- package/dist/plugin-sdk/koi/pi-tools.action-ledger.d.ts +16 -0
- package/dist/plugin-sdk/koi/tools/mission-tool.d.ts +4 -0
- package/dist/plugin-sdk/koi/tools/sound-tool.d.ts +2 -0
- package/dist/plugin-sdk/koi/tools/surface-tool.d.ts +6 -0
- package/dist/plugin-sdk/koi/tools/terminal-window-tool.d.ts +2 -0
- package/dist/plugin-sdk/koi/tools/tui-tool.d.ts +4 -0
- package/dist/plugin-sdk/{pi-model-discovery-ClImJtLC.js → pi-model-discovery-lynj0LAO.js} +3 -3
- package/dist/plugin-sdk/shared/personal-digest.d.ts +34 -0
- package/dist/plugin-sdk/terminal/palette.d.ts +3 -3
- package/dist/plugin-sdk/tui/commands.d.ts +21 -0
- package/dist/plugin-sdk/tui/surfaces/rich.d.ts +59 -0
- package/dist/plugin-sdk/tui/surfaces/surface-content.d.ts +14 -0
- package/dist/plugin-sdk/tui/surfaces/surface-preview.d.ts +19 -0
- package/dist/plugin-sdk/tui/surfaces/surface-schema.d.ts +176 -0
- package/dist/plugin-sdk/tui/tui-fast-lane.d.ts +12 -0
- package/dist/plugin-sdk/tui/zen/sgr.d.ts +16 -0
- package/dist/plugin-sdk/tui/zen/zen-surface.d.ts +63 -0
- package/dist/{plugins-BXfIVhTg.js → plugins-CD53Y-wp.js} +4 -4
- package/dist/{plugins-cli-JPJfMlvy.js → plugins-cli-DMGmUzik.js} +88 -78
- package/dist/{ports-P59I5wz6.js → ports-B03Y1yyv.js} +2 -2
- package/dist/proactive-eval-RHO4rbyx.js +1024 -0
- package/dist/{program-DkaBc_iL.js → program-GYRS5Ws2.js} +10 -10
- package/dist/{progress-B0j0uCjm.js → progress-B8PPYDDC.js} +2 -2
- package/dist/{prompt-style-ukndhQOw.js → prompt-style-CJRaWg4h.js} +1 -1
- package/dist/{pw-ai-qan9CSms.js → pw-ai-YPXPbYy6.js} +7 -7
- package/dist/{qmd-manager-QJjaDN5n.js → qmd-manager-ZItBTBzr.js} +10 -10
- package/dist/{register.subclis-Dv6NjUap.js → register.subclis-DSrvCxKF.js} +41 -34
- package/dist/{registry-BwlCjCgP.js → registry-xBtEGPIj.js} +1 -1
- package/dist/{reply-Bf4P9Ot1.js → reply-goFZVFOt.js} +1980 -408
- package/dist/rich-wmQhKBIx.js +173 -0
- package/dist/{routes-BulfbmL9.js → routes-DXSsSe_K.js} +5 -5
- package/dist/{rpc-iHZ4CdDy.js → rpc-Cq7TWXCW.js} +3 -3
- package/dist/{run-code-tool-C6xBmHR8.js → run-code-tool-hFlGv-m5.js} +3 -3
- package/dist/run-main-B7F6D7ci.js +269 -0
- package/dist/{runner-CJBcTtHm.js → runner-Dv3coC2q.js} +13 -13
- package/dist/{runtime-guard-DwWuihJc.js → runtime-guard-qFkyrhAB.js} +1 -1
- package/dist/{sandbox-BBVUHUOq.js → sandbox-B-lCuykD.js} +10 -10
- package/dist/{sandbox-cli-BAeOId4l.js → sandbox-cli-B199VfMw.js} +34 -31
- package/dist/{security-cli-D_LQmH7h.js → security-cli-BIn7mAm0.js} +42 -39
- package/dist/{server-context-BXVciJDs.js → server-context-CNfswlAM.js} +6 -6
- package/dist/{server-node-events-B9yF2Rle.js → server-node-events-sMeW8enG.js} +85 -75
- package/dist/{service-uVwIUnyd.js → service-D1-PnhZe.js} +3 -3
- package/dist/{service-audit-C3lXz7SM.js → service-audit-BVZGmzLW.js} +4 -4
- package/dist/{session-cost-usage-nkKUBhE6.js → session-cost-usage-C71VC_PD.js} +2 -3
- package/dist/{sessions-D4weFB4D.js → sessions-DnPG9BI4.js} +9 -9
- package/dist/{shared-BVoNuNpJ.js → shared-CHxb6-Fi.js} +3 -3
- package/dist/{shared-DFK_9l-h.js → shared-tNGHWtW-.js} +4 -4
- package/dist/{signin-IXYHg4Uc.js → signin-TesaorA1.js} +3 -3
- package/dist/{skills-B0HXzI_9.js → skills-C_t45j3T.js} +4 -4
- package/dist/{skills-cli-Ba0g4Ylv.js → skills-cli-GT4yy2a4.js} +24 -21
- package/dist/{skills-status-Bxqk1j9P.js → skills-status-sMAyGPXV.js} +4 -4
- package/dist/{sqlite-DOBJPTUL.js → sqlite-Ctl23tcn.js} +1 -1
- package/dist/{src-D3L_3lDz.js → src-Xm2tVyWL.js} +2 -2
- package/dist/{sso-oidc-CBT_5H0k.js → sso-oidc-BhUPsnaI.js} +3 -3
- package/dist/{status-BYUYY1Jk.js → status-CevpdXm-.js} +4 -4
- package/dist/{sts-DUuApX4j.js → sts-CaZ-4Vb6.js} +3 -3
- package/dist/{subsystem-hATE68va.js → subsystem-nnRnHSFk.js} +2 -1
- package/dist/surface-tool-Cebhf_Tf.js +1027 -0
- package/dist/{system-cli-q-dsgPiF.js → system-cli-BD9fmtCg.js} +22 -20
- package/dist/{system-prompt-snippet-BDBC6NFH.js → system-prompt-snippet-CVkVKHlK.js} +1 -1
- package/dist/{systemd-BHooCrgQ.js → systemd-DZP4s4qd.js} +3 -3
- package/dist/{systemd-linger-Cd_EluWx.js → systemd-linger-DHSd9ikR.js} +2 -2
- package/dist/{table-CkPRZ00Y.js → table-DIfWcies.js} +1 -1
- package/dist/{tailscale-DI3z_prJ.js → tailscale-BOh3Z_vn.js} +2 -2
- package/dist/{theme-C5EwWDWE.js → theme-CX-D7gOR.js} +3 -3
- package/dist/{tool-display-bfQcpWKs.js → tool-display-DvcBjgri.js} +2 -2
- package/dist/{tool-images-CfUP8C2Q.js → tool-images-BIkTcSan.js} +2 -2
- package/dist/transcript-tools-BByi9l-4.js +87 -0
- package/dist/tui-cli-VDRinP7B.js +94 -0
- package/dist/tui-shell-CVxb9g9k.js +1841 -0
- package/dist/{tui-D9jkHwEZ.js → tui-v3i8KyRm.js} +2577 -325
- package/dist/{update-xDMqC6sS.js → update-CnmP2qF5.js} +3 -3
- package/dist/{update-cli-CnlQ3d2e.js → update-cli-BXgxccZQ.js} +113 -103
- package/dist/{update-runner-jwOI-gT0.js → update-runner-DHNkj8-z.js} +4 -4
- package/dist/usage-reporter-CpMmHkw7.js +62 -0
- package/dist/{utilities-CV8S7znT.js → utilities-Dr7XUab8.js} +1 -1
- package/dist/{utils-D019Z2NU.js → utils-B1LOScGi.js} +1 -1
- package/dist/{voices-cli-C47TvBx-.js → voices-cli-DXqGMgtw.js} +3 -3
- package/dist/{webhooks-cli-ZiMv1bP2.js → webhooks-cli-BLPA1MZB.js} +23 -20
- package/dist/{widearea-dns-CBcJDOBk.js → widearea-dns-BjWuJvtM.js} +1 -1
- package/dist/{ws-log-OLBQeEZR.js → ws-log-BzGMbHM2.js} +2 -2
- package/dist/zen-surface-D4VY3jY0.js +1564 -0
- package/extensions/bluebubbles/package.json +1 -1
- package/extensions/copilot-proxy/package.json +1 -1
- package/extensions/diagnostics-otel/package.json +1 -1
- package/extensions/discord/package.json +1 -1
- package/extensions/feishu/package.json +1 -1
- package/extensions/google-antigravity-auth/package.json +1 -1
- package/extensions/google-gemini-cli-auth/package.json +1 -1
- package/extensions/googlechat/package.json +1 -1
- package/extensions/imessage/package.json +1 -1
- package/extensions/line/package.json +1 -1
- package/extensions/llm-task/package.json +1 -1
- package/extensions/lobster/package.json +1 -1
- package/extensions/matrix/CHANGELOG.md +5 -0
- package/extensions/matrix/package.json +1 -1
- package/extensions/mattermost/package.json +1 -1
- package/extensions/memory-core/package.json +1 -1
- package/extensions/memory-lancedb/package.json +1 -1
- package/extensions/minimax-portal-auth/package.json +1 -1
- package/extensions/msteams/CHANGELOG.md +5 -0
- package/extensions/msteams/package.json +1 -1
- package/extensions/nextcloud-talk/package.json +1 -1
- package/extensions/nostr/CHANGELOG.md +5 -0
- package/extensions/nostr/package.json +1 -1
- package/extensions/open-prose/package.json +1 -1
- package/extensions/signal/package.json +1 -1
- package/extensions/slack/package.json +1 -1
- package/extensions/telegram/package.json +1 -1
- package/extensions/tlon/package.json +1 -1
- package/extensions/twitch/CHANGELOG.md +5 -0
- package/extensions/twitch/package.json +1 -1
- package/extensions/voice-call/CHANGELOG.md +5 -0
- package/extensions/voice-call/package.json +1 -1
- package/extensions/whatsapp/package.json +1 -1
- package/extensions/zalo/CHANGELOG.md +5 -0
- package/extensions/zalo/package.json +1 -1
- package/extensions/zalouser/CHANGELOG.md +5 -0
- package/extensions/zalouser/package.json +1 -1
- package/package.json +4 -2
- package/dist/cli-CpGmYt2Y.js +0 -121
- package/dist/proactive-eval-BtFPtNwP.js +0 -1759
- package/dist/run-main-C3bgl9gZ.js +0 -259
- package/dist/transcript-tools-CVkBX-9k.js +0 -52
- package/dist/tui-cli-DctNZ30j.js +0 -85
- package/dist/usage-format-EdDmn0JB.js +0 -36
- /package/dist/{BasicParser-C6W1sr3t.js → BasicParser--n6FLqcE.js} +0 -0
- /package/dist/{brew-9xTQVvl4.js → brew-CqrvYCjs.js} +0 -0
- /package/dist/{capture-cli-DeRDbNaM.js → capture-cli-BF1NY1RT.js} +0 -0
- /package/dist/{cli-utils-DBV8EzWu.js → cli-utils-D4mTRuWj.js} +0 -0
- /package/dist/{codec-parser-DNgdIkZo.js → codec-parser-T4JNCFj4.js} +0 -0
- /package/dist/{companions-Beo2qBnF.js → companions-D-uSZqiI.js} +0 -0
- /package/dist/{constants-C4LZjcL0.js → constants-UedXN8EP.js} +0 -0
- /package/dist/{core-Cp6b38f5.js → core-CJWRLYUu.js} +0 -0
- /package/dist/{declarations-BLQN6vzU.js → declarations-izhxPnzy.js} +0 -0
- /package/dist/{device-identity-Bxhfs1xr.js → device-identity-CnlyT2Si.js} +0 -0
- /package/dist/{dist-cjs-mZuQohD2.js → dist-cjs-D2RXwDOe.js} +0 -0
- /package/dist/{dist-cjs-b__m_5I9.js → dist-cjs-Du0zR-Ai.js} +0 -0
- /package/dist/{esm-5V9F2UI9.js → esm-CZZtQIhc.js} +0 -0
- /package/dist/{esm-B_NgDkcJ.js → esm-kUSIWN2f.js} +0 -0
- /package/dist/{esm-shims-CCgr543I.js → esm-shims-CZxOEdhX.js} +0 -0
- /package/dist/{event-log-Dcegp3Ty.js → event-log-WbPUNukH.js} +0 -0
- /package/dist/{event-streams-DaNwcPzQ.js → event-streams-R6AXkEMn.js} +0 -0
- /package/dist/{exec-approvals-io-C7x-a9Hw.js → exec-approvals-io-Dzpqn78T.js} +0 -0
- /package/dist/{format-BukmQlAy.js → format-DtciOWIX.js} +0 -0
- /package/dist/{from-BSX7jrKl.js → from-Dfzfv9uw.js} +0 -0
- /package/dist/{helpers-DAB_ZzN_.js → helpers-4BXRutqw.js} +0 -0
- /package/dist/{helpers-Znu8d1r-.js → helpers-CI2sc-CB.js} +0 -0
- /package/dist/{is-main-t6udOkz0.js → is-main-CQX7mFIJ.js} +0 -0
- /package/dist/{koi-events-BZbg2_wc.js → koi-events-DVxTOxY3.js} +0 -0
- /package/dist/{lib-C2sG32ef.js → lib-C0cU2Bav.js} +0 -0
- /package/dist/{live-broadcast-DqBXFyuv.js → live-broadcast-CifQ8Lzc.js} +0 -0
- /package/dist/{logging-CeI8pPxx.js → logging-BQKv640H.js} +0 -0
- /package/dist/{native-window-hr8nARej.js → native-window-CMnOFmyK.js} +0 -0
- /package/dist/{node-pairing-CKU0Vndp.js → node-pairing-WRkSoKg6.js} +0 -0
- /package/dist/{node-pty-BC0IrNrz.js → node-pty-gtBUnxUN.js} +0 -0
- /package/dist/{node-wav-Dcsv0qJn.js → node-wav-CwlOpKY0.js} +0 -0
- /package/dist/{nodes-screen-Ce8fGLhD.js → nodes-screen-Bq-MvKAS.js} +0 -0
- /package/dist/{package-CYglbfBi.js → package-DhcmafWY.js} +0 -0
- /package/dist/{parse-DfgX5okr.js → parse-C-X5VUYI.js} +0 -0
- /package/dist/{parse-log-line-B7kujwuK.js → parse-log-line-BFXEIELd.js} +0 -0
- /package/dist/{parse-timeout-uTDpUWKR.js → parse-timeout-kGl8Fsas.js} +0 -0
- /package/dist/{paths-DNVGKsSx.js → paths-CizQHpAk.js} +0 -0
- /package/dist/{pdf-Mh9_16lK.js → pdf-BohVLTJL.js} +0 -0
- /package/dist/{permissions-cli-DFPDPZxw.js → permissions-cli-DXadkGgv.js} +0 -0
- /package/dist/{prompts-C1Vmrk7-.js → prompts-BC5TXS0_.js} +0 -0
- /package/dist/{proxy-from-env-NVPRlS0s.js → proxy-from-env-BCOB9yxp.js} +0 -0
- /package/dist/{qoa-format-7pjCrDI4.js → qoa-format-BboMlPJa.js} +0 -0
- /package/dist/{readability-CgQ4UgOG.js → readability-C_v10IzL.js} +0 -0
- /package/dist/{readiness-BWlDObOD.js → readiness-CCfUXab4.js} +0 -0
- /package/dist/{redact-CuHse7Ma.js → redact-ClVwO7Nn.js} +0 -0
- /package/dist/{restart-sentinel-CLogImVw.js → restart-sentinel-CDgY6TKs.js} +0 -0
- /package/dist/{satisfies-c71IS8Gf.js → satisfies-DCdzcNI3.js} +0 -0
- /package/dist/{skill-scanner-bplK_9eh.js → skill-scanner-CLckczzl.js} +0 -0
- /package/dist/{source-map-Bmak3bxf.js → source-map--hgaz8qG.js} +0 -0
- /package/dist/{sqlite-vec-oxBcWjn-.js → sqlite-vec-B9Q87Em9.js} +0 -0
- /package/dist/{src-CAVRZapq.js → src-BJiPQPqV.js} +0 -0
- /package/dist/{status-Cx1u-AZW.js → status-pq91F0kp.js} +0 -0
- /package/dist/{streams-cli-DJUX7C_p.js → streams-cli-DOF8VfLc.js} +0 -0
- /package/dist/{systemd-hints-FC3MfrkS.js → systemd-hints-CMiNS6NK.js} +0 -0
- /package/dist/{tailnet-Cz2pl07T.js → tailnet-7u3DZ0jI.js} +0 -0
- /package/dist/{tokens-BmRB1Mkz.js → tokens-DznGfpjQ.js} +0 -0
- /package/dist/{tool-policy-BYmiYVth.js → tool-policy-CjSq72TW.js} +0 -0
- /package/dist/{transcript-events-CJRvASY_.js → transcript-events-DNNIRVG1.js} +0 -0
- /package/dist/{types-CLcz00_s.js → types-DO4kgbma.js} +0 -0
- /package/dist/{uint8array-extras-BXjehc45.js → uint8array-extras-DBV0kdwr.js} +0 -0
- /package/dist/{version-BKRSzdyx.js → version-B_FpLmDY.js} +0 -0
- /package/dist/{warnings-Cl3wLuoe.js → warnings-Daj0i4A6.js} +0 -0
- /package/dist/{ws-DQzNsCSb.js → ws-D3TuFv3E.js} +0 -0
- /package/dist/{wsl-DzPWlBsw.js → wsl-3CioBf4_.js} +0 -0
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { o as __toESM, r as __exportAll } from "./chunk-D_gEzPfs.js";
|
|
2
|
-
import { n as fromBuffer } from "./core-
|
|
3
|
-
import { C as textEncode, S as textDecode, b as Uint8ArrayType, f as UINT16_LE, g as UINT32_LE, u as StringType } from "./lib-
|
|
4
|
-
import { t as require_src } from "./src-
|
|
5
|
-
import { i as InternalParserError, r as FieldDecodingError, s as makeUnexpectedFileContentError, t as BasicParser } from "./BasicParser
|
|
6
|
-
import { i as findZero, t as a2hex } from "./Util-
|
|
2
|
+
import { n as fromBuffer } from "./core-CJWRLYUu.js";
|
|
3
|
+
import { C as textEncode, S as textDecode, b as Uint8ArrayType, f as UINT16_LE, g as UINT32_LE, u as StringType } from "./lib-C0cU2Bav.js";
|
|
4
|
+
import { t as require_src } from "./src-BJiPQPqV.js";
|
|
5
|
+
import { i as InternalParserError, r as FieldDecodingError, s as makeUnexpectedFileContentError, t as BasicParser } from "./BasicParser--n6FLqcE.js";
|
|
6
|
+
import { i as findZero, t as a2hex } from "./Util-B_52glhk.js";
|
|
7
7
|
|
|
8
8
|
//#region node_modules/.pnpm/music-metadata@11.11.2/node_modules/music-metadata/lib/common/FourCC.js
|
|
9
9
|
const validFourCC = /^[\x21-\x7e©][\x20-\x7e\x00()]{3}/;
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { o as __toESM } from "./chunk-D_gEzPfs.js";
|
|
2
|
-
import { o as EndOfStreamError } from "./core-
|
|
3
|
-
import { t as require_src } from "./src-
|
|
4
|
-
import { t as BasicParser } from "./BasicParser
|
|
5
|
-
import { r as ID3v2Header } from "./ID3v2Token-
|
|
6
|
-
import { n as ID3v1Parser } from "./ID3v1Parser-
|
|
7
|
-
import { t as ID3v2Parser } from "./ID3v2Parser-
|
|
2
|
+
import { o as EndOfStreamError } from "./core-CJWRLYUu.js";
|
|
3
|
+
import { t as require_src } from "./src-BJiPQPqV.js";
|
|
4
|
+
import { t as BasicParser } from "./BasicParser--n6FLqcE.js";
|
|
5
|
+
import { r as ID3v2Header } from "./ID3v2Token-DK6kpMKy.js";
|
|
6
|
+
import { n as ID3v1Parser } from "./ID3v1Parser-3ia97CSy.js";
|
|
7
|
+
import { t as ID3v2Parser } from "./ID3v2Parser-UNJu2sI-.js";
|
|
8
8
|
|
|
9
9
|
//#region node_modules/.pnpm/music-metadata@11.11.2/node_modules/music-metadata/lib/id3v2/AbstractID3Parser.js
|
|
10
10
|
var import_src = /* @__PURE__ */ __toESM(require_src(), 1);
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { o as __toESM } from "./chunk-D_gEzPfs.js";
|
|
2
|
-
import { n as fromBuffer, o as EndOfStreamError } from "./core-
|
|
3
|
-
import "./lib-
|
|
4
|
-
import { b as Uint8ArrayType, d as UINT16_BE, h as UINT32_BE, u as StringType, y as UINT8 } from "./lib-
|
|
5
|
-
import { t as require_src } from "./src-
|
|
6
|
-
import { s as makeUnexpectedFileContentError, t as BasicParser } from "./BasicParser
|
|
7
|
-
import { i as FourCcToken } from "./APEv2Parser-
|
|
8
|
-
import { t as ID3v2Parser } from "./ID3v2Parser-
|
|
2
|
+
import { n as fromBuffer, o as EndOfStreamError } from "./core-CJWRLYUu.js";
|
|
3
|
+
import "./lib-JFtVlWtn.js";
|
|
4
|
+
import { b as Uint8ArrayType, d as UINT16_BE, h as UINT32_BE, u as StringType, y as UINT8 } from "./lib-C0cU2Bav.js";
|
|
5
|
+
import { t as require_src } from "./src-BJiPQPqV.js";
|
|
6
|
+
import { s as makeUnexpectedFileContentError, t as BasicParser } from "./BasicParser--n6FLqcE.js";
|
|
7
|
+
import { i as FourCcToken } from "./APEv2Parser-Ba7yIvMy.js";
|
|
8
|
+
import { t as ID3v2Parser } from "./ID3v2Parser-UNJu2sI-.js";
|
|
9
9
|
|
|
10
10
|
//#region node_modules/.pnpm/music-metadata@11.11.2/node_modules/music-metadata/lib/aiff/AiffToken.js
|
|
11
11
|
var import_src = /* @__PURE__ */ __toESM(require_src(), 1);
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { o as __toESM } from "./chunk-D_gEzPfs.js";
|
|
2
|
-
import { f as UINT16_LE, g as UINT32_LE, u as StringType, v as UINT64_LE } from "./lib-
|
|
3
|
-
import { t as require_src } from "./src-
|
|
4
|
-
import { s as makeUnexpectedFileContentError, t as BasicParser } from "./BasicParser
|
|
5
|
-
import { a as getBit, c as stripNulls, n as decodeString } from "./Util-
|
|
6
|
-
import { t as AttachedPictureType } from "./ID3v2Token-
|
|
7
|
-
import { n as TrackType } from "./types-
|
|
2
|
+
import { f as UINT16_LE, g as UINT32_LE, u as StringType, v as UINT64_LE } from "./lib-C0cU2Bav.js";
|
|
3
|
+
import { t as require_src } from "./src-BJiPQPqV.js";
|
|
4
|
+
import { s as makeUnexpectedFileContentError, t as BasicParser } from "./BasicParser--n6FLqcE.js";
|
|
5
|
+
import { a as getBit, c as stripNulls, n as decodeString } from "./Util-B_52glhk.js";
|
|
6
|
+
import { t as AttachedPictureType } from "./ID3v2Token-DK6kpMKy.js";
|
|
7
|
+
import { n as TrackType } from "./types-DO4kgbma.js";
|
|
8
8
|
|
|
9
9
|
//#region node_modules/.pnpm/win-guid@0.2.1/node_modules/win-guid/lib/guid.js
|
|
10
10
|
var import_src = /* @__PURE__ */ __toESM(require_src(), 1);
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { o as __toESM } from "./chunk-D_gEzPfs.js";
|
|
2
|
-
import { n as fromBuffer } from "./core-
|
|
3
|
-
import "./lib-
|
|
4
|
-
import { b as Uint8ArrayType, d as UINT16_BE, g as UINT32_LE, h as UINT32_BE, s as INT64_BE, u as StringType, y as UINT8 } from "./lib-
|
|
5
|
-
import { t as require_src } from "./src-
|
|
6
|
-
import { s as makeUnexpectedFileContentError, t as BasicParser } from "./BasicParser
|
|
7
|
-
import { i as FourCcToken } from "./APEv2Parser-
|
|
8
|
-
import { t as ID3v2Parser } from "./ID3v2Parser-
|
|
2
|
+
import { n as fromBuffer } from "./core-CJWRLYUu.js";
|
|
3
|
+
import "./lib-JFtVlWtn.js";
|
|
4
|
+
import { b as Uint8ArrayType, d as UINT16_BE, g as UINT32_LE, h as UINT32_BE, s as INT64_BE, u as StringType, y as UINT8 } from "./lib-C0cU2Bav.js";
|
|
5
|
+
import { t as require_src } from "./src-BJiPQPqV.js";
|
|
6
|
+
import { s as makeUnexpectedFileContentError, t as BasicParser } from "./BasicParser--n6FLqcE.js";
|
|
7
|
+
import { i as FourCcToken } from "./APEv2Parser-Ba7yIvMy.js";
|
|
8
|
+
import { t as ID3v2Parser } from "./ID3v2Parser-UNJu2sI-.js";
|
|
9
9
|
|
|
10
10
|
//#region node_modules/.pnpm/music-metadata@11.11.2/node_modules/music-metadata/lib/dsdiff/DsdiffToken.js
|
|
11
11
|
var import_src = /* @__PURE__ */ __toESM(require_src(), 1);
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { o as __toESM } from "./chunk-D_gEzPfs.js";
|
|
2
|
-
import "./lib-
|
|
3
|
-
import { c as INT64_LE, o as INT32_LE, v as UINT64_LE } from "./lib-
|
|
4
|
-
import { t as require_src } from "./src-
|
|
5
|
-
import { s as makeUnexpectedFileContentError } from "./BasicParser
|
|
6
|
-
import { i as FourCcToken } from "./APEv2Parser-
|
|
7
|
-
import { t as ID3v2Parser } from "./ID3v2Parser-
|
|
8
|
-
import { t as AbstractID3Parser } from "./AbstractID3Parser-
|
|
2
|
+
import "./lib-JFtVlWtn.js";
|
|
3
|
+
import { c as INT64_LE, o as INT32_LE, v as UINT64_LE } from "./lib-C0cU2Bav.js";
|
|
4
|
+
import { t as require_src } from "./src-BJiPQPqV.js";
|
|
5
|
+
import { s as makeUnexpectedFileContentError } from "./BasicParser--n6FLqcE.js";
|
|
6
|
+
import { i as FourCcToken } from "./APEv2Parser-Ba7yIvMy.js";
|
|
7
|
+
import { t as ID3v2Parser } from "./ID3v2Parser-UNJu2sI-.js";
|
|
8
|
+
import { t as AbstractID3Parser } from "./AbstractID3Parser-Cf2LaaLC.js";
|
|
9
9
|
|
|
10
10
|
//#region node_modules/.pnpm/music-metadata@11.11.2/node_modules/music-metadata/lib/dsf/DsfChunk.js
|
|
11
11
|
var import_src = /* @__PURE__ */ __toESM(require_src(), 1);
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { o as __toESM, r as __exportAll } from "./chunk-D_gEzPfs.js";
|
|
2
|
-
import { S as textDecode, b as Uint8ArrayType, d as UINT16_BE, g as UINT32_LE, h as UINT32_BE, p as UINT24_BE, u as StringType, y as UINT8 } from "./lib-
|
|
3
|
-
import { t as require_src } from "./src-
|
|
4
|
-
import { s as makeUnexpectedFileContentError } from "./BasicParser
|
|
5
|
-
import { a as getBit, o as getBitAllignedNumber } from "./Util-
|
|
6
|
-
import { t as AttachedPictureType } from "./ID3v2Token-
|
|
7
|
-
import { i as FourCcToken } from "./APEv2Parser-
|
|
8
|
-
import { t as AbstractID3Parser } from "./AbstractID3Parser-
|
|
2
|
+
import { S as textDecode, b as Uint8ArrayType, d as UINT16_BE, g as UINT32_LE, h as UINT32_BE, p as UINT24_BE, u as StringType, y as UINT8 } from "./lib-C0cU2Bav.js";
|
|
3
|
+
import { t as require_src } from "./src-BJiPQPqV.js";
|
|
4
|
+
import { s as makeUnexpectedFileContentError } from "./BasicParser--n6FLqcE.js";
|
|
5
|
+
import { a as getBit, o as getBitAllignedNumber } from "./Util-B_52glhk.js";
|
|
6
|
+
import { t as AttachedPictureType } from "./ID3v2Token-DK6kpMKy.js";
|
|
7
|
+
import { i as FourCcToken } from "./APEv2Parser-Ba7yIvMy.js";
|
|
8
|
+
import { t as AbstractID3Parser } from "./AbstractID3Parser-Cf2LaaLC.js";
|
|
9
9
|
|
|
10
10
|
//#region node_modules/.pnpm/music-metadata@11.11.2/node_modules/music-metadata/lib/ogg/vorbis/Vorbis.js
|
|
11
11
|
/**
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { o as __toESM } from "./chunk-D_gEzPfs.js";
|
|
2
|
-
import { S as textDecode, u as StringType, y as UINT8 } from "./lib-
|
|
3
|
-
import { t as require_src } from "./src-
|
|
4
|
-
import { t as BasicParser } from "./BasicParser
|
|
5
|
-
import { u as trimRightNull } from "./Util-
|
|
6
|
-
import { t as APEv2Parser } from "./APEv2Parser-
|
|
2
|
+
import { S as textDecode, u as StringType, y as UINT8 } from "./lib-C0cU2Bav.js";
|
|
3
|
+
import { t as require_src } from "./src-BJiPQPqV.js";
|
|
4
|
+
import { t as BasicParser } from "./BasicParser--n6FLqcE.js";
|
|
5
|
+
import { u as trimRightNull } from "./Util-B_52glhk.js";
|
|
6
|
+
import { t as APEv2Parser } from "./APEv2Parser-Ba7yIvMy.js";
|
|
7
7
|
|
|
8
8
|
//#region node_modules/.pnpm/music-metadata@11.11.2/node_modules/music-metadata/lib/id3v1/ID3v1Parser.js
|
|
9
9
|
var import_src = /* @__PURE__ */ __toESM(require_src(), 1);
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { o as __toESM } from "./chunk-D_gEzPfs.js";
|
|
2
|
-
import { S as textDecode, b as Uint8ArrayType, h as UINT32_BE, p as UINT24_BE, y as UINT8 } from "./lib-
|
|
3
|
-
import { t as require_src } from "./src-
|
|
4
|
-
import { s as makeUnexpectedFileContentError } from "./BasicParser
|
|
5
|
-
import { a as getBit, i as findZero, n as decodeString, r as decodeUintBE } from "./Util-
|
|
6
|
-
import { a as SyncTextHeader, l as UINT32SYNCSAFE, n as ExtendedHeader, o as TextEncodingToken, r as ID3v2Header, s as TextHeader, t as AttachedPictureType } from "./ID3v2Token-
|
|
7
|
-
import { t as Genres } from "./ID3v1Parser-
|
|
2
|
+
import { S as textDecode, b as Uint8ArrayType, h as UINT32_BE, p as UINT24_BE, y as UINT8 } from "./lib-C0cU2Bav.js";
|
|
3
|
+
import { t as require_src } from "./src-BJiPQPqV.js";
|
|
4
|
+
import { s as makeUnexpectedFileContentError } from "./BasicParser--n6FLqcE.js";
|
|
5
|
+
import { a as getBit, i as findZero, n as decodeString, r as decodeUintBE } from "./Util-B_52glhk.js";
|
|
6
|
+
import { a as SyncTextHeader, l as UINT32SYNCSAFE, n as ExtendedHeader, o as TextEncodingToken, r as ID3v2Header, s as TextHeader, t as AttachedPictureType } from "./ID3v2Token-DK6kpMKy.js";
|
|
7
|
+
import { t as Genres } from "./ID3v1Parser-3ia97CSy.js";
|
|
8
8
|
|
|
9
9
|
//#region node_modules/.pnpm/music-metadata@11.11.2/node_modules/music-metadata/lib/id3v2/ID3v2ChapterToken.js
|
|
10
10
|
/**
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { d as UINT16_BE, h as UINT32_BE, l as INT8, u as StringType, y as UINT8 } from "./lib-
|
|
2
|
-
import { a as getBit } from "./Util-
|
|
1
|
+
import { d as UINT16_BE, h as UINT32_BE, l as INT8, u as StringType, y as UINT8 } from "./lib-C0cU2Bav.js";
|
|
2
|
+
import { a as getBit } from "./Util-B_52glhk.js";
|
|
3
3
|
|
|
4
4
|
//#region node_modules/.pnpm/music-metadata@11.11.2/node_modules/music-metadata/lib/id3v2/ID3v2Token.js
|
|
5
5
|
/**
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import { o as __toESM } from "./chunk-D_gEzPfs.js";
|
|
2
|
-
import "./lib-
|
|
3
|
-
import { S as textDecode, _ as UINT64_BE, a as INT32_BE, b as Uint8ArrayType, d as UINT16_BE, h as UINT32_BE, i as INT24_BE, l as INT8, p as UINT24_BE, r as INT16_BE, u as StringType, x as lib_exports, y as UINT8 } from "./lib-
|
|
4
|
-
import { t as require_src } from "./src-
|
|
5
|
-
import { n as uint8ArrayToHex } from "./uint8array-extras-
|
|
6
|
-
import { s as makeUnexpectedFileContentError, t as BasicParser } from "./BasicParser
|
|
7
|
-
import { a as getBit } from "./Util-
|
|
8
|
-
import { i as FourCcToken } from "./APEv2Parser-
|
|
9
|
-
import { t as Genres } from "./ID3v1Parser-
|
|
10
|
-
import { n as TrackType } from "./types-
|
|
2
|
+
import "./lib-JFtVlWtn.js";
|
|
3
|
+
import { S as textDecode, _ as UINT64_BE, a as INT32_BE, b as Uint8ArrayType, d as UINT16_BE, h as UINT32_BE, i as INT24_BE, l as INT8, p as UINT24_BE, r as INT16_BE, u as StringType, x as lib_exports, y as UINT8 } from "./lib-C0cU2Bav.js";
|
|
4
|
+
import { t as require_src } from "./src-BJiPQPqV.js";
|
|
5
|
+
import { n as uint8ArrayToHex } from "./uint8array-extras-DBV0kdwr.js";
|
|
6
|
+
import { s as makeUnexpectedFileContentError, t as BasicParser } from "./BasicParser--n6FLqcE.js";
|
|
7
|
+
import { a as getBit } from "./Util-B_52glhk.js";
|
|
8
|
+
import { i as FourCcToken } from "./APEv2Parser-Ba7yIvMy.js";
|
|
9
|
+
import { t as Genres } from "./ID3v1Parser-3ia97CSy.js";
|
|
10
|
+
import { n as TrackType } from "./types-DO4kgbma.js";
|
|
11
11
|
|
|
12
12
|
//#region node_modules/.pnpm/music-metadata@11.11.2/node_modules/music-metadata/lib/mp4/AtomToken.js
|
|
13
13
|
var import_src = /* @__PURE__ */ __toESM(require_src(), 1);
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { o as __toESM } from "./chunk-D_gEzPfs.js";
|
|
2
|
-
import { o as EndOfStreamError } from "./core-
|
|
3
|
-
import "./lib-
|
|
4
|
-
import { _ as UINT64_BE, n as Float64_BE, t as Float32_BE, u as StringType, y as UINT8 } from "./lib-
|
|
5
|
-
import { t as require_src } from "./src-
|
|
6
|
-
import { s as makeUnexpectedFileContentError, t as BasicParser } from "./BasicParser
|
|
7
|
-
import { n as TrackType, t as TargetType } from "./types-
|
|
2
|
+
import { o as EndOfStreamError } from "./core-CJWRLYUu.js";
|
|
3
|
+
import "./lib-JFtVlWtn.js";
|
|
4
|
+
import { _ as UINT64_BE, n as Float64_BE, t as Float32_BE, u as StringType, y as UINT8 } from "./lib-C0cU2Bav.js";
|
|
5
|
+
import { t as require_src } from "./src-BJiPQPqV.js";
|
|
6
|
+
import { s as makeUnexpectedFileContentError, t as BasicParser } from "./BasicParser--n6FLqcE.js";
|
|
7
|
+
import { n as TrackType, t as TargetType } from "./types-DO4kgbma.js";
|
|
8
8
|
|
|
9
9
|
//#region node_modules/.pnpm/music-metadata@11.11.2/node_modules/music-metadata/lib/ebml/types.js
|
|
10
10
|
var import_src = /* @__PURE__ */ __toESM(require_src(), 1);
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { o as __toESM } from "./chunk-D_gEzPfs.js";
|
|
2
|
-
import { o as EndOfStreamError } from "./core-
|
|
3
|
-
import "./lib-
|
|
4
|
-
import { b as Uint8ArrayType, d as UINT16_BE, h as UINT32_BE, r as INT16_BE, u as StringType, y as UINT8 } from "./lib-
|
|
5
|
-
import { t as require_src } from "./src-
|
|
6
|
-
import { s as makeUnexpectedFileContentError } from "./BasicParser
|
|
7
|
-
import { c as stripNulls, o as getBitAllignedNumber, s as isBitSet } from "./Util-
|
|
8
|
-
import { t as AbstractID3Parser } from "./AbstractID3Parser-
|
|
2
|
+
import { o as EndOfStreamError } from "./core-CJWRLYUu.js";
|
|
3
|
+
import "./lib-JFtVlWtn.js";
|
|
4
|
+
import { b as Uint8ArrayType, d as UINT16_BE, h as UINT32_BE, r as INT16_BE, u as StringType, y as UINT8 } from "./lib-C0cU2Bav.js";
|
|
5
|
+
import { t as require_src } from "./src-BJiPQPqV.js";
|
|
6
|
+
import { s as makeUnexpectedFileContentError } from "./BasicParser--n6FLqcE.js";
|
|
7
|
+
import { c as stripNulls, o as getBitAllignedNumber, s as isBitSet } from "./Util-B_52glhk.js";
|
|
8
|
+
import { t as AbstractID3Parser } from "./AbstractID3Parser-Cf2LaaLC.js";
|
|
9
9
|
|
|
10
10
|
//#region node_modules/.pnpm/music-metadata@11.11.2/node_modules/music-metadata/lib/mpeg/ReplayGainDataFormat.js
|
|
11
11
|
var import_src = /* @__PURE__ */ __toESM(require_src(), 1);
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { o as __toESM } from "./chunk-D_gEzPfs.js";
|
|
2
|
-
import "./lib-
|
|
3
|
-
import { S as textDecode, f as UINT16_LE, g as UINT32_LE, u as StringType, y as UINT8 } from "./lib-
|
|
4
|
-
import { t as require_src } from "./src-
|
|
5
|
-
import { s as makeUnexpectedFileContentError, t as BasicParser } from "./BasicParser
|
|
6
|
-
import { o as getBitAllignedNumber, s as isBitSet } from "./Util-
|
|
7
|
-
import { i as FourCcToken, r as tryParseApeHeader } from "./APEv2Parser-
|
|
8
|
-
import { t as AbstractID3Parser } from "./AbstractID3Parser-
|
|
2
|
+
import "./lib-JFtVlWtn.js";
|
|
3
|
+
import { S as textDecode, f as UINT16_LE, g as UINT32_LE, u as StringType, y as UINT8 } from "./lib-C0cU2Bav.js";
|
|
4
|
+
import { t as require_src } from "./src-BJiPQPqV.js";
|
|
5
|
+
import { s as makeUnexpectedFileContentError, t as BasicParser } from "./BasicParser--n6FLqcE.js";
|
|
6
|
+
import { o as getBitAllignedNumber, s as isBitSet } from "./Util-B_52glhk.js";
|
|
7
|
+
import { i as FourCcToken, r as tryParseApeHeader } from "./APEv2Parser-Ba7yIvMy.js";
|
|
8
|
+
import { t as AbstractID3Parser } from "./AbstractID3Parser-Cf2LaaLC.js";
|
|
9
9
|
|
|
10
10
|
//#region node_modules/.pnpm/music-metadata@11.11.2/node_modules/music-metadata/lib/musepack/sv8/StreamVersion8.js
|
|
11
11
|
var import_src = /* @__PURE__ */ __toESM(require_src(), 1);
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import { o as __toESM } from "./chunk-D_gEzPfs.js";
|
|
2
|
-
import { o as EndOfStreamError } from "./core-
|
|
3
|
-
import "./lib-
|
|
4
|
-
import { b as Uint8ArrayType, d as UINT16_BE, f as UINT16_LE, g as UINT32_LE, o as INT32_LE, p as UINT24_BE, u as StringType, v as UINT64_LE, y as UINT8 } from "./lib-
|
|
5
|
-
import { t as require_src } from "./src-
|
|
6
|
-
import { s as makeUnexpectedFileContentError, t as BasicParser } from "./BasicParser
|
|
7
|
-
import { a as getBit, u as trimRightNull } from "./Util-
|
|
8
|
-
import { i as FourCcToken } from "./APEv2Parser-
|
|
9
|
-
import { a as BlockType, i as BlockStreamInfo, o as VorbisStream, r as BlockHeader, s as VorbisPictureToken, t as FlacParser } from "./FlacParser-
|
|
2
|
+
import { o as EndOfStreamError } from "./core-CJWRLYUu.js";
|
|
3
|
+
import "./lib-JFtVlWtn.js";
|
|
4
|
+
import { b as Uint8ArrayType, d as UINT16_BE, f as UINT16_LE, g as UINT32_LE, o as INT32_LE, p as UINT24_BE, u as StringType, v as UINT64_LE, y as UINT8 } from "./lib-C0cU2Bav.js";
|
|
5
|
+
import { t as require_src } from "./src-BJiPQPqV.js";
|
|
6
|
+
import { s as makeUnexpectedFileContentError, t as BasicParser } from "./BasicParser--n6FLqcE.js";
|
|
7
|
+
import { a as getBit, u as trimRightNull } from "./Util-B_52glhk.js";
|
|
8
|
+
import { i as FourCcToken } from "./APEv2Parser-Ba7yIvMy.js";
|
|
9
|
+
import { a as BlockType, i as BlockStreamInfo, o as VorbisStream, r as BlockHeader, s as VorbisPictureToken, t as FlacParser } from "./FlacParser-DE4FjCdI.js";
|
|
10
10
|
|
|
11
11
|
//#region node_modules/.pnpm/music-metadata@11.11.2/node_modules/music-metadata/lib/ogg/opus/Opus.js
|
|
12
12
|
var import_src = /* @__PURE__ */ __toESM(require_src(), 1);
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { u as StringType } from "./lib-
|
|
2
|
-
import { t as getUintBE } from "./uint8array-extras-
|
|
3
|
-
import { r as FieldDecodingError } from "./BasicParser
|
|
1
|
+
import { u as StringType } from "./lib-C0cU2Bav.js";
|
|
2
|
+
import { t as getUintBE } from "./uint8array-extras-DBV0kdwr.js";
|
|
3
|
+
import { r as FieldDecodingError } from "./BasicParser--n6FLqcE.js";
|
|
4
4
|
|
|
5
5
|
//#region node_modules/.pnpm/music-metadata@11.11.2/node_modules/music-metadata/lib/common/Util.js
|
|
6
6
|
function getBit(buf, off, bit) {
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { o as __toESM } from "./chunk-D_gEzPfs.js";
|
|
2
|
-
import "./lib-
|
|
3
|
-
import { b as Uint8ArrayType, f as UINT16_LE, g as UINT32_LE, m as UINT24_LE, y as UINT8 } from "./lib-
|
|
4
|
-
import { t as require_src } from "./src-
|
|
5
|
-
import { n as uint8ArrayToHex } from "./uint8array-extras-
|
|
6
|
-
import { s as makeUnexpectedFileContentError, t as BasicParser } from "./BasicParser
|
|
7
|
-
import { i as FourCcToken, r as tryParseApeHeader } from "./APEv2Parser-
|
|
2
|
+
import "./lib-JFtVlWtn.js";
|
|
3
|
+
import { b as Uint8ArrayType, f as UINT16_LE, g as UINT32_LE, m as UINT24_LE, y as UINT8 } from "./lib-C0cU2Bav.js";
|
|
4
|
+
import { t as require_src } from "./src-BJiPQPqV.js";
|
|
5
|
+
import { n as uint8ArrayToHex } from "./uint8array-extras-DBV0kdwr.js";
|
|
6
|
+
import { s as makeUnexpectedFileContentError, t as BasicParser } from "./BasicParser--n6FLqcE.js";
|
|
7
|
+
import { i as FourCcToken, r as tryParseApeHeader } from "./APEv2Parser-Ba7yIvMy.js";
|
|
8
8
|
|
|
9
9
|
//#region node_modules/.pnpm/music-metadata@11.11.2/node_modules/music-metadata/lib/wavpack/WavPackToken.js
|
|
10
10
|
const SampleRates = [
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import { o as __toESM } from "./chunk-D_gEzPfs.js";
|
|
2
|
-
import { n as fromBuffer, o as EndOfStreamError } from "./core-
|
|
3
|
-
import "./lib-
|
|
4
|
-
import { b as Uint8ArrayType, f as UINT16_LE, g as UINT32_LE, u as StringType } from "./lib-
|
|
5
|
-
import { t as require_src } from "./src-
|
|
6
|
-
import { s as makeUnexpectedFileContentError, t as BasicParser } from "./BasicParser
|
|
7
|
-
import { c as stripNulls } from "./Util-
|
|
8
|
-
import { i as FourCcToken } from "./APEv2Parser-
|
|
9
|
-
import { t as ID3v2Parser } from "./ID3v2Parser-
|
|
2
|
+
import { n as fromBuffer, o as EndOfStreamError } from "./core-CJWRLYUu.js";
|
|
3
|
+
import "./lib-JFtVlWtn.js";
|
|
4
|
+
import { b as Uint8ArrayType, f as UINT16_LE, g as UINT32_LE, u as StringType } from "./lib-C0cU2Bav.js";
|
|
5
|
+
import { t as require_src } from "./src-BJiPQPqV.js";
|
|
6
|
+
import { s as makeUnexpectedFileContentError, t as BasicParser } from "./BasicParser--n6FLqcE.js";
|
|
7
|
+
import { c as stripNulls } from "./Util-B_52glhk.js";
|
|
8
|
+
import { i as FourCcToken } from "./APEv2Parser-Ba7yIvMy.js";
|
|
9
|
+
import { t as ID3v2Parser } from "./ID3v2Parser-UNJu2sI-.js";
|
|
10
10
|
|
|
11
11
|
//#region node_modules/.pnpm/music-metadata@11.11.2/node_modules/music-metadata/lib/riff/RiffChunk.js
|
|
12
12
|
var import_src = /* @__PURE__ */ __toESM(require_src(), 1);
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { S as getChildLogger, b as success, p as info, s as defaultRuntime } from "./subsystem-
|
|
1
|
+
import { S as getChildLogger, b as success, p as info, s as defaultRuntime } from "./subsystem-nnRnHSFk.js";
|
|
2
2
|
import { m as resolveOAuthDir } from "./paths-VdmjGGyc.js";
|
|
3
3
|
import { c as normalizeAccountId, t as DEFAULT_ACCOUNT_ID } from "./session-key-B2OXLVi_.js";
|
|
4
|
-
import { h as resolveUserPath, u as jidToE164 } from "./utils-
|
|
4
|
+
import { h as resolveUserPath, u as jidToE164 } from "./utils-B1LOScGi.js";
|
|
5
5
|
import fs from "node:fs";
|
|
6
6
|
import path from "node:path";
|
|
7
7
|
import fs$1 from "node:fs/promises";
|
|
@@ -1,29 +1,31 @@
|
|
|
1
|
-
import { s as defaultRuntime } from "./subsystem-
|
|
1
|
+
import { s as defaultRuntime } from "./subsystem-nnRnHSFk.js";
|
|
2
2
|
import "./paths-VdmjGGyc.js";
|
|
3
|
-
import { r as theme } from "./theme-
|
|
3
|
+
import { r as theme } from "./theme-CX-D7gOR.js";
|
|
4
4
|
import "./ansi-By7x1TI7.js";
|
|
5
|
-
import "./utils-
|
|
6
|
-
import "./logger-
|
|
7
|
-
import "./exec-
|
|
8
|
-
import "./koi-scope-
|
|
9
|
-
import "./model-selection-
|
|
10
|
-
import "./dist-
|
|
11
|
-
import "./dist-cjs-
|
|
5
|
+
import "./utils-B1LOScGi.js";
|
|
6
|
+
import "./logger-Door90g0.js";
|
|
7
|
+
import "./exec-f0H7lrAS.js";
|
|
8
|
+
import "./koi-scope-C15QLwY-.js";
|
|
9
|
+
import "./model-selection-CKLFiLpY.js";
|
|
10
|
+
import "./dist-3zY5f01M.js";
|
|
11
|
+
import "./dist-cjs-D9zWZLJo.js";
|
|
12
12
|
import "./boolean-D-3joTkO.js";
|
|
13
|
-
import "./env-
|
|
13
|
+
import "./env-C2ovlUPG.js";
|
|
14
14
|
import "./github-copilot-token-BqhLBQWA.js";
|
|
15
|
-
import
|
|
16
|
-
import {
|
|
17
|
-
import "./
|
|
18
|
-
import
|
|
19
|
-
import "./
|
|
20
|
-
import {
|
|
21
|
-
import
|
|
22
|
-
import {
|
|
23
|
-
import "./
|
|
24
|
-
import { t as
|
|
25
|
-
import
|
|
26
|
-
import {
|
|
15
|
+
import "./billing-alerts-DW7RyxM5.js";
|
|
16
|
+
import { t as VERSION } from "./version-B_FpLmDY.js";
|
|
17
|
+
import { i as loadConfig } from "./io-BiSyGUoT.js";
|
|
18
|
+
import "./manifest-registry-Y19rtw98.js";
|
|
19
|
+
import "./config-55EPjg8B.js";
|
|
20
|
+
import { h as GATEWAY_CLIENT_NAMES, m as GATEWAY_CLIENT_MODES } from "./message-channel-Cy9b1PGA.js";
|
|
21
|
+
import "./device-identity-CnlyT2Si.js";
|
|
22
|
+
import { n as GatewayClient } from "./client-Dzt29zIp.js";
|
|
23
|
+
import { t as buildGatewayConnectionDetails } from "./call-CqDndKP3.js";
|
|
24
|
+
import { t as formatDocsLink } from "./links-BY_N2dMU.js";
|
|
25
|
+
import "./tailscale-BOh3Z_vn.js";
|
|
26
|
+
import { t as isMainModule } from "./is-main-CQX7mFIJ.js";
|
|
27
|
+
import { t as ensureSKYKOICliOnPath } from "./path-env-CnhsG0TT.js";
|
|
28
|
+
import { i as resolveGatewayAuth } from "./auth-X5uq6vRI.js";
|
|
27
29
|
import { fileURLToPath } from "node:url";
|
|
28
30
|
import { spawn } from "node:child_process";
|
|
29
31
|
import { Readable, Writable } from "node:stream";
|
|
@@ -0,0 +1,212 @@
|
|
|
1
|
+
import { g as resolveStateDir } from "./paths-VdmjGGyc.js";
|
|
2
|
+
import path from "node:path";
|
|
3
|
+
import fs from "node:fs/promises";
|
|
4
|
+
|
|
5
|
+
//#region src/koi/action-ledger.ts
|
|
6
|
+
/**
|
|
7
|
+
* Action ledger — Phase 5 "reversible agency" v1.
|
|
8
|
+
*
|
|
9
|
+
* Append-only JSONL record of every koi tool action with a conservative risk
|
|
10
|
+
* tier (0-5, see koi-term AGENTS.md §14). The ledger is the substrate for
|
|
11
|
+
* future undo/rollback + timeline UI: before anything can be reversed, every
|
|
12
|
+
* meaningful action must be durably recorded with what/when/outcome.
|
|
13
|
+
*
|
|
14
|
+
* Storage: `<state-dir>/ledger/actions.jsonl` (state dir honors
|
|
15
|
+
* SKYKOI_STATE_DIR, default ~/.skykoi — see src/config/paths.ts).
|
|
16
|
+
*
|
|
17
|
+
* Design constraints:
|
|
18
|
+
* - Fail-open: callers must never let ledger errors break the tool call.
|
|
19
|
+
* - Near-zero overhead: appends are one small fs append; classification is
|
|
20
|
+
* a handful of regex tests against the tool name (+ a capped args snippet).
|
|
21
|
+
* - Tail reads are efficient: `readActions` reads the file backwards in
|
|
22
|
+
* chunks instead of loading the whole ledger.
|
|
23
|
+
*/
|
|
24
|
+
/**
|
|
25
|
+
* Built-in conservative classification rules. Exported (and mutable) so
|
|
26
|
+
* plugins/config can extend or override classification. The highest tier
|
|
27
|
+
* among all matching rules wins; no match falls back to
|
|
28
|
+
* {@link DEFAULT_RISK_TIER}.
|
|
29
|
+
*/
|
|
30
|
+
const RISK_TIER_RULES = [
|
|
31
|
+
{
|
|
32
|
+
tier: 0,
|
|
33
|
+
pattern: /(^|[_\-.])(read|list|ls|get|search|find|glob|grep|status|history|show|view|query|peek|tail|head|cat|watch|inspect)([_\-.]|$)/,
|
|
34
|
+
description: "Read-only lookups (read/list/get/search/…): no side effects"
|
|
35
|
+
},
|
|
36
|
+
{
|
|
37
|
+
tier: 1,
|
|
38
|
+
pattern: /(screenshot|screen[_-]?capture|snapshot|camera|clipboard|record)/,
|
|
39
|
+
description: "Local sensing/captures (screenshot/camera/clipboard): reads device state"
|
|
40
|
+
},
|
|
41
|
+
{
|
|
42
|
+
tier: 2,
|
|
43
|
+
pattern: /(^|[_\-.])(write|edit|apply[_-]?patch|patch|exec|bash|shell|process|run|spawn|install|create|save|copy|move|rename|mkdir|rm|remove|delete|kill)([_\-.]|$)/,
|
|
44
|
+
description: "Filesystem writes / process execution: local mutations"
|
|
45
|
+
},
|
|
46
|
+
{
|
|
47
|
+
tier: 3,
|
|
48
|
+
pattern: /(send|message|reply|post|email|mail\b|sms|whatsapp|telegram|discord|slack|signal|imessage|tweet|webhook|notify|upload|share|invite)/,
|
|
49
|
+
description: "Outbound network mutations (messaging/email/uploads): leaves the machine"
|
|
50
|
+
},
|
|
51
|
+
{
|
|
52
|
+
tier: 4,
|
|
53
|
+
pattern: /(deploy|publish|release|payment|charge|refund|transfer|delete[_-]?remote|terminate|destroy|drop[_-]?(db|database|table)|force[_-]?push)/,
|
|
54
|
+
matchArgs: true,
|
|
55
|
+
description: "Deploy/publish/remote-delete/payment: high-stakes external mutations"
|
|
56
|
+
}
|
|
57
|
+
];
|
|
58
|
+
/** Tier for tools that match no rule — conservative middle ground. */
|
|
59
|
+
const DEFAULT_RISK_TIER = 2;
|
|
60
|
+
/**
|
|
61
|
+
* Build a small flat text snippet from tool args for rule matching and
|
|
62
|
+
* summaries. Shallow on purpose: never serializes nested giants (e.g. a full
|
|
63
|
+
* file body still gets capped per value).
|
|
64
|
+
*/
|
|
65
|
+
function argsSnippet(args, cap = 2048) {
|
|
66
|
+
try {
|
|
67
|
+
if (args == null) return "";
|
|
68
|
+
if (typeof args === "string") return args.slice(0, cap);
|
|
69
|
+
if (typeof args === "number" || typeof args === "boolean" || typeof args === "bigint") return String(args).slice(0, cap);
|
|
70
|
+
if (typeof args !== "object") return "";
|
|
71
|
+
const parts = [];
|
|
72
|
+
let length = 0;
|
|
73
|
+
for (const [key, value] of Object.entries(args)) {
|
|
74
|
+
let rendered;
|
|
75
|
+
if (typeof value === "string") rendered = `${key}=${value.slice(0, 512)}`;
|
|
76
|
+
else if (typeof value === "number" || typeof value === "boolean") rendered = `${key}=${value}`;
|
|
77
|
+
if (!rendered) continue;
|
|
78
|
+
parts.push(rendered);
|
|
79
|
+
length += rendered.length;
|
|
80
|
+
if (length >= cap) break;
|
|
81
|
+
}
|
|
82
|
+
return parts.join(" ").slice(0, cap);
|
|
83
|
+
} catch {
|
|
84
|
+
return "";
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
/**
|
|
88
|
+
* Classify a tool call into a conservative risk tier. The highest tier among
|
|
89
|
+
* all matching rules wins ("when in doubt, rank it riskier"); unknown tools
|
|
90
|
+
* default to {@link DEFAULT_RISK_TIER}.
|
|
91
|
+
*/
|
|
92
|
+
function classifyRiskTier(toolName, args) {
|
|
93
|
+
const name = (toolName || "").trim().toLowerCase();
|
|
94
|
+
let argsText;
|
|
95
|
+
let matched;
|
|
96
|
+
for (const rule of RISK_TIER_RULES) {
|
|
97
|
+
let hit = rule.pattern.test(name);
|
|
98
|
+
if (!hit && rule.matchArgs) {
|
|
99
|
+
argsText ??= argsSnippet(args).toLowerCase();
|
|
100
|
+
hit = argsText.length > 0 && rule.pattern.test(argsText);
|
|
101
|
+
}
|
|
102
|
+
if (hit && (matched === void 0 || rule.tier > matched)) matched = rule.tier;
|
|
103
|
+
}
|
|
104
|
+
return matched ?? DEFAULT_RISK_TIER;
|
|
105
|
+
}
|
|
106
|
+
/** Args keys most likely to carry the human-meaningful detail, in priority order. */
|
|
107
|
+
const SUMMARY_KEYS = [
|
|
108
|
+
"command",
|
|
109
|
+
"cmd",
|
|
110
|
+
"script",
|
|
111
|
+
"file_path",
|
|
112
|
+
"filePath",
|
|
113
|
+
"path",
|
|
114
|
+
"url",
|
|
115
|
+
"to",
|
|
116
|
+
"recipient",
|
|
117
|
+
"target",
|
|
118
|
+
"query",
|
|
119
|
+
"prompt",
|
|
120
|
+
"message",
|
|
121
|
+
"text",
|
|
122
|
+
"content",
|
|
123
|
+
"action",
|
|
124
|
+
"name",
|
|
125
|
+
"id"
|
|
126
|
+
];
|
|
127
|
+
/** Build a short single-line human summary for a tool call. */
|
|
128
|
+
function summarizeToolCall(toolName, args, maxLength = 140) {
|
|
129
|
+
const name = (toolName || "tool").trim().toLowerCase();
|
|
130
|
+
let detail = "";
|
|
131
|
+
if (args && typeof args === "object" && !Array.isArray(args)) {
|
|
132
|
+
const record = args;
|
|
133
|
+
for (const key of SUMMARY_KEYS) {
|
|
134
|
+
const value = record[key];
|
|
135
|
+
if (typeof value === "string" && value.trim()) {
|
|
136
|
+
detail = value.trim();
|
|
137
|
+
break;
|
|
138
|
+
}
|
|
139
|
+
}
|
|
140
|
+
} else if (typeof args === "string") detail = args.trim();
|
|
141
|
+
const line = (detail ? `${name} ${detail}` : name).replace(/\s+/g, " ").trim();
|
|
142
|
+
return line.length > maxLength ? `${line.slice(0, maxLength - 1)}…` : line;
|
|
143
|
+
}
|
|
144
|
+
/** Resolved per call so tests (and tools) can redirect via SKYKOI_STATE_DIR. */
|
|
145
|
+
function resolveLedgerFilePath(env = process.env) {
|
|
146
|
+
return path.join(resolveStateDir(env), "ledger", "actions.jsonl");
|
|
147
|
+
}
|
|
148
|
+
/** Append one entry to the JSONL ledger (creates the directory on demand). */
|
|
149
|
+
async function appendAction(entry) {
|
|
150
|
+
const file = resolveLedgerFilePath();
|
|
151
|
+
await fs.mkdir(path.dirname(file), { recursive: true });
|
|
152
|
+
await fs.appendFile(file, `${JSON.stringify(entry)}\n`, "utf8");
|
|
153
|
+
}
|
|
154
|
+
function isLedgerEntry(value) {
|
|
155
|
+
if (typeof value !== "object" || value === null) return false;
|
|
156
|
+
const entry = value;
|
|
157
|
+
return typeof entry.ts === "string" && typeof entry.name === "string";
|
|
158
|
+
}
|
|
159
|
+
/**
|
|
160
|
+
* Read the most recent ledger entries, newest-first internally but returned
|
|
161
|
+
* in chronological order (oldest → newest). Reads the file backwards in
|
|
162
|
+
* chunks so large ledgers never get fully loaded.
|
|
163
|
+
*/
|
|
164
|
+
async function readActions(options = {}) {
|
|
165
|
+
const limit = Math.max(1, Math.floor(options.limit ?? 50));
|
|
166
|
+
const sinceMs = options.since !== void 0 ? new Date(options.since).getTime() : void 0;
|
|
167
|
+
const chunkSize = Math.max(256, options.chunkSize ?? 64 * 1024);
|
|
168
|
+
const file = resolveLedgerFilePath();
|
|
169
|
+
let handle;
|
|
170
|
+
try {
|
|
171
|
+
handle = await fs.open(file, "r");
|
|
172
|
+
} catch {
|
|
173
|
+
return [];
|
|
174
|
+
}
|
|
175
|
+
try {
|
|
176
|
+
const { size } = await handle.stat();
|
|
177
|
+
const collected = [];
|
|
178
|
+
let position = size;
|
|
179
|
+
let carry = "";
|
|
180
|
+
while (position > 0 && collected.length < limit) {
|
|
181
|
+
const readSize = Math.min(chunkSize, position);
|
|
182
|
+
position -= readSize;
|
|
183
|
+
const buffer = Buffer.alloc(readSize);
|
|
184
|
+
await handle.read(buffer, 0, readSize, position);
|
|
185
|
+
const lines = (buffer.toString("utf8") + carry).split("\n");
|
|
186
|
+
carry = position > 0 ? lines.shift() ?? "" : "";
|
|
187
|
+
for (let i = lines.length - 1; i >= 0 && collected.length < limit; i--) {
|
|
188
|
+
const line = lines[i]?.trim();
|
|
189
|
+
if (!line) continue;
|
|
190
|
+
let parsed;
|
|
191
|
+
try {
|
|
192
|
+
parsed = JSON.parse(line);
|
|
193
|
+
} catch {
|
|
194
|
+
continue;
|
|
195
|
+
}
|
|
196
|
+
if (!isLedgerEntry(parsed)) continue;
|
|
197
|
+
if (options.koiId && parsed.koiId !== options.koiId) continue;
|
|
198
|
+
if (sinceMs !== void 0 && Number.isFinite(sinceMs)) {
|
|
199
|
+
const ts = Date.parse(parsed.ts);
|
|
200
|
+
if (Number.isFinite(ts) && ts < sinceMs) continue;
|
|
201
|
+
}
|
|
202
|
+
collected.push(parsed);
|
|
203
|
+
}
|
|
204
|
+
}
|
|
205
|
+
return collected.reverse();
|
|
206
|
+
} finally {
|
|
207
|
+
await handle.close();
|
|
208
|
+
}
|
|
209
|
+
}
|
|
210
|
+
|
|
211
|
+
//#endregion
|
|
212
|
+
export { readActions as a, classifyRiskTier as i, RISK_TIER_RULES as n, resolveLedgerFilePath as o, appendAction as r, summarizeToolCall as s, DEFAULT_RISK_TIER as t };
|