agentvault 1.0.1 → 1.0.5
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/CHANGELOG.md +69 -0
- package/README.md +66 -6
- package/dist/cli/commands/approve.d.ts.map +1 -0
- package/dist/cli/commands/approve.js +362 -6
- package/dist/cli/commands/approve.js.map +1 -0
- package/dist/cli/commands/archive.d.ts.map +1 -0
- package/dist/cli/commands/archive.js +5 -5
- package/dist/cli/commands/archive.js.map +1 -0
- package/dist/cli/commands/backup.d.ts.map +1 -0
- package/dist/cli/commands/backup.js +308 -25
- package/dist/cli/commands/backup.js.map +1 -0
- package/dist/cli/commands/cloud-backup.d.ts.map +1 -0
- package/dist/cli/commands/cloud-backup.js +29 -12
- package/dist/cli/commands/cloud-backup.js.map +1 -0
- package/dist/cli/commands/cron.d.ts +14 -0
- package/dist/cli/commands/cron.d.ts.map +1 -0
- package/dist/cli/commands/cron.js +144 -0
- package/dist/cli/commands/cron.js.map +1 -0
- package/dist/cli/commands/cycles.d.ts.map +1 -0
- package/dist/cli/commands/cycles.js.map +1 -0
- package/dist/cli/commands/decrypt.d.ts.map +1 -0
- package/dist/cli/commands/decrypt.js +2 -2
- package/dist/cli/commands/decrypt.js.map +1 -0
- package/dist/cli/commands/deploy.d.ts.map +1 -0
- package/dist/cli/commands/deploy.js +1 -1
- package/dist/cli/commands/deploy.js.map +1 -0
- package/dist/cli/commands/exec.d.ts.map +1 -0
- package/dist/cli/commands/exec.js +2 -2
- package/dist/cli/commands/exec.js.map +1 -0
- package/dist/cli/commands/fetch.d.ts +3 -0
- package/dist/cli/commands/fetch.d.ts.map +1 -0
- package/dist/cli/commands/fetch.js +72 -8
- package/dist/cli/commands/fetch.js.map +1 -0
- package/dist/cli/commands/health.d.ts.map +1 -0
- package/dist/cli/commands/health.js +57 -2
- package/dist/cli/commands/health.js.map +1 -0
- package/dist/cli/commands/identity.d.ts.map +1 -0
- package/dist/cli/commands/identity.js.map +1 -0
- package/dist/cli/commands/inference.d.ts.map +1 -0
- package/dist/cli/commands/inference.js +5 -5
- package/dist/cli/commands/inference.js.map +1 -0
- package/dist/cli/commands/info.d.ts.map +1 -0
- package/dist/cli/commands/info.js.map +1 -0
- package/dist/cli/commands/init.d.ts +19 -2
- package/dist/cli/commands/init.d.ts.map +1 -0
- package/dist/cli/commands/init.js +162 -37
- package/dist/cli/commands/init.js.map +1 -0
- package/dist/cli/commands/instrument.d.ts.map +1 -0
- package/dist/cli/commands/instrument.js.map +1 -0
- package/dist/cli/commands/list.d.ts.map +1 -0
- package/dist/cli/commands/list.js +4 -4
- package/dist/cli/commands/list.js.map +1 -0
- package/dist/cli/commands/logs.d.ts.map +1 -0
- package/dist/cli/commands/logs.js.map +1 -0
- package/dist/cli/commands/mcp.d.ts +4 -0
- package/dist/cli/commands/mcp.d.ts.map +1 -0
- package/dist/cli/commands/mcp.js +228 -0
- package/dist/cli/commands/mcp.js.map +1 -0
- package/dist/cli/commands/memory.d.ts +26 -0
- package/dist/cli/commands/memory.d.ts.map +1 -0
- package/dist/cli/commands/memory.js +509 -0
- package/dist/cli/commands/memory.js.map +1 -0
- package/dist/cli/commands/mint.d.ts +25 -0
- package/dist/cli/commands/mint.d.ts.map +1 -0
- package/dist/cli/commands/mint.js +276 -0
- package/dist/cli/commands/mint.js.map +1 -0
- package/dist/cli/commands/mirror.d.ts +19 -0
- package/dist/cli/commands/mirror.d.ts.map +1 -0
- package/dist/cli/commands/mirror.js +216 -0
- package/dist/cli/commands/mirror.js.map +1 -0
- package/dist/cli/commands/monitor.d.ts.map +1 -0
- package/dist/cli/commands/monitor.js.map +1 -0
- package/dist/cli/commands/network.d.ts.map +1 -0
- package/dist/cli/commands/network.js.map +1 -0
- package/dist/cli/commands/orchestrate.d.ts +35 -0
- package/dist/cli/commands/orchestrate.d.ts.map +1 -0
- package/dist/cli/commands/orchestrate.js +190 -0
- package/dist/cli/commands/orchestrate.js.map +1 -0
- package/dist/cli/commands/package.d.ts.map +1 -0
- package/dist/cli/commands/package.js +2 -2
- package/dist/cli/commands/package.js.map +1 -0
- package/dist/cli/commands/pilot.d.ts +17 -0
- package/dist/cli/commands/pilot.d.ts.map +1 -0
- package/dist/cli/commands/pilot.js +490 -0
- package/dist/cli/commands/pilot.js.map +1 -0
- package/dist/cli/commands/polytician.d.ts +4 -0
- package/dist/cli/commands/polytician.d.ts.map +1 -0
- package/dist/cli/commands/polytician.js +229 -0
- package/dist/cli/commands/polytician.js.map +1 -0
- package/dist/cli/commands/profile.d.ts.map +1 -0
- package/dist/cli/commands/profile.js +2 -2
- package/dist/cli/commands/profile.js.map +1 -0
- package/dist/cli/commands/promote.d.ts.map +1 -0
- package/dist/cli/commands/promote.js.map +1 -0
- package/dist/cli/commands/rebase.d.ts +85 -0
- package/dist/cli/commands/rebase.d.ts.map +1 -0
- package/dist/cli/commands/rebase.js +175 -0
- package/dist/cli/commands/rebase.js.map +1 -0
- package/dist/cli/commands/rebuild.d.ts.map +1 -0
- package/dist/cli/commands/rebuild.js +2 -2
- package/dist/cli/commands/rebuild.js.map +1 -0
- package/dist/cli/commands/repo.d.ts +19 -0
- package/dist/cli/commands/repo.d.ts.map +1 -0
- package/dist/cli/commands/repo.js +187 -0
- package/dist/cli/commands/repo.js.map +1 -0
- package/dist/cli/commands/rollback.d.ts.map +1 -0
- package/dist/cli/commands/rollback.js.map +1 -0
- package/dist/cli/commands/safehouse.d.ts +11 -0
- package/dist/cli/commands/safehouse.d.ts.map +1 -0
- package/dist/cli/commands/safehouse.js +323 -0
- package/dist/cli/commands/safehouse.js.map +1 -0
- package/dist/cli/commands/show.d.ts.map +1 -0
- package/dist/cli/commands/show.js +1 -1
- package/dist/cli/commands/show.js.map +1 -0
- package/dist/cli/commands/skills.d.ts +12 -0
- package/dist/cli/commands/skills.d.ts.map +1 -0
- package/dist/cli/commands/skills.js +248 -0
- package/dist/cli/commands/skills.js.map +1 -0
- package/dist/cli/commands/stats.d.ts.map +1 -0
- package/dist/cli/commands/stats.js +2 -2
- package/dist/cli/commands/stats.js.map +1 -0
- package/dist/cli/commands/status.d.ts +3 -1
- package/dist/cli/commands/status.d.ts.map +1 -0
- package/dist/cli/commands/status.js +33 -8
- package/dist/cli/commands/status.js.map +1 -0
- package/dist/cli/commands/test.d.ts.map +1 -0
- package/dist/cli/commands/test.js.map +1 -0
- package/dist/cli/commands/tokens.d.ts.map +1 -0
- package/dist/cli/commands/tokens.js.map +1 -0
- package/dist/cli/commands/trace.d.ts.map +1 -0
- package/dist/cli/commands/trace.js +4 -4
- package/dist/cli/commands/trace.js.map +1 -0
- package/dist/cli/commands/vault.d.ts +7 -0
- package/dist/cli/commands/vault.d.ts.map +1 -0
- package/dist/cli/commands/vault.js +551 -0
- package/dist/cli/commands/vault.js.map +1 -0
- package/dist/cli/commands/wallet-export.d.ts.map +1 -0
- package/dist/cli/commands/wallet-export.js +1 -1
- package/dist/cli/commands/wallet-export.js.map +1 -0
- package/dist/cli/commands/wallet-history.d.ts.map +1 -0
- package/dist/cli/commands/wallet-history.js +2 -26
- package/dist/cli/commands/wallet-history.js.map +1 -0
- package/dist/cli/commands/wallet-import.d.ts.map +1 -0
- package/dist/cli/commands/wallet-import.js.map +1 -0
- package/dist/cli/commands/wallet-multi-send.d.ts.map +1 -0
- package/dist/cli/commands/wallet-multi-send.js.map +1 -0
- package/dist/cli/commands/wallet-process-queue.d.ts.map +1 -0
- package/dist/cli/commands/wallet-process-queue.js +2 -23
- package/dist/cli/commands/wallet-process-queue.js.map +1 -0
- package/dist/cli/commands/wallet-sign.d.ts.map +1 -0
- package/dist/cli/commands/wallet-sign.js +3 -27
- package/dist/cli/commands/wallet-sign.js.map +1 -0
- package/dist/cli/commands/wallet.d.ts +62 -1
- package/dist/cli/commands/wallet.d.ts.map +1 -0
- package/dist/cli/commands/wallet.js +313 -43
- package/dist/cli/commands/wallet.js.map +1 -0
- package/dist/cli/commands/wiki.d.ts +29 -0
- package/dist/cli/commands/wiki.d.ts.map +1 -0
- package/dist/cli/commands/wiki.js +528 -0
- package/dist/cli/commands/wiki.js.map +1 -0
- package/dist/cli/index.d.ts +2 -2
- package/dist/cli/index.d.ts.map +1 -0
- package/dist/cli/index.js +77 -5
- package/dist/cli/index.js.map +1 -0
- package/dist/cli/merge.d.ts +70 -0
- package/dist/cli/merge.d.ts.map +1 -0
- package/dist/cli/merge.js +232 -0
- package/dist/cli/merge.js.map +1 -0
- package/dist/src/archival/archive-manager.d.ts +89 -0
- package/dist/src/archival/archive-manager.d.ts.map +1 -0
- package/dist/src/archival/archive-manager.js +300 -0
- package/dist/src/archival/archive-manager.js.map +1 -0
- package/dist/src/archival/arweave-archiver.d.ts +173 -0
- package/dist/src/archival/arweave-archiver.d.ts.map +1 -0
- package/dist/src/archival/arweave-archiver.js +279 -0
- package/dist/src/archival/arweave-archiver.js.map +1 -0
- package/dist/src/archival/arweave-client.d.ts +89 -0
- package/dist/src/archival/arweave-client.d.ts.map +1 -0
- package/dist/src/archival/arweave-client.js +226 -0
- package/dist/src/archival/arweave-client.js.map +1 -0
- package/dist/src/archival/index.d.ts +11 -0
- package/dist/src/archival/index.d.ts.map +1 -0
- package/dist/src/archival/index.js +9 -0
- package/dist/src/archival/index.js.map +1 -0
- package/dist/src/backbone/constants.d.ts +30 -0
- package/dist/src/backbone/constants.d.ts.map +1 -0
- package/dist/src/backbone/constants.js +62 -0
- package/dist/src/backbone/constants.js.map +1 -0
- package/dist/src/backbone/index.d.ts +15 -0
- package/dist/src/backbone/index.d.ts.map +1 -0
- package/dist/src/backbone/index.js +18 -0
- package/dist/src/backbone/index.js.map +1 -0
- package/dist/src/backbone/services/communication.d.ts +42 -0
- package/dist/src/backbone/services/communication.d.ts.map +1 -0
- package/dist/src/backbone/services/communication.js +107 -0
- package/dist/src/backbone/services/communication.js.map +1 -0
- package/dist/src/backbone/services/consensus.d.ts +61 -0
- package/dist/src/backbone/services/consensus.d.ts.map +1 -0
- package/dist/src/backbone/services/consensus.js +210 -0
- package/dist/src/backbone/services/consensus.js.map +1 -0
- package/dist/src/backbone/services/index.d.ts +10 -0
- package/dist/src/backbone/services/index.d.ts.map +1 -0
- package/dist/src/backbone/services/index.js +6 -0
- package/dist/src/backbone/services/index.js.map +1 -0
- package/dist/src/backbone/services/knowledge.d.ts +44 -0
- package/dist/src/backbone/services/knowledge.d.ts.map +1 -0
- package/dist/src/backbone/services/knowledge.js +99 -0
- package/dist/src/backbone/services/knowledge.js.map +1 -0
- package/dist/src/backbone/services/memory.d.ts +36 -0
- package/dist/src/backbone/services/memory.d.ts.map +1 -0
- package/dist/src/backbone/services/memory.js +94 -0
- package/dist/src/backbone/services/memory.js.map +1 -0
- package/dist/src/backbone/services/vault-health.d.ts +18 -0
- package/dist/src/backbone/services/vault-health.d.ts.map +1 -0
- package/dist/src/backbone/services/vault-health.js +74 -0
- package/dist/src/backbone/services/vault-health.js.map +1 -0
- package/dist/src/backbone/types.d.ts +211 -0
- package/dist/src/backbone/types.d.ts.map +1 -0
- package/dist/src/backbone/types.js +8 -0
- package/dist/src/backbone/types.js.map +1 -0
- package/dist/src/backbone/validators.d.ts +211 -0
- package/dist/src/backbone/validators.d.ts.map +1 -0
- package/dist/src/backbone/validators.js +122 -0
- package/dist/src/backbone/validators.js.map +1 -0
- package/dist/src/backup/backup.d.ts +173 -0
- package/dist/src/backup/backup.d.ts.map +1 -0
- package/dist/src/backup/backup.js +640 -0
- package/dist/src/backup/backup.js.map +1 -0
- package/dist/src/backup/index.d.ts +9 -0
- package/dist/src/backup/index.d.ts.map +1 -0
- package/dist/src/backup/index.js +9 -0
- package/dist/src/backup/index.js.map +1 -0
- package/dist/src/backup/merkle.d.ts +44 -0
- package/dist/src/backup/merkle.d.ts.map +1 -0
- package/dist/src/backup/merkle.js +85 -0
- package/dist/src/backup/merkle.js.map +1 -0
- package/dist/src/backup/thoughtform-bundle.d.ts +42 -0
- package/dist/src/backup/thoughtform-bundle.d.ts.map +1 -0
- package/dist/src/backup/thoughtform-bundle.js +200 -0
- package/dist/src/backup/thoughtform-bundle.js.map +1 -0
- package/dist/src/canister/actor.d.ts +310 -0
- package/dist/src/canister/actor.d.ts.map +1 -0
- package/dist/src/canister/actor.idl.d.ts +8 -0
- package/dist/src/canister/actor.idl.d.ts.map +1 -0
- package/dist/src/canister/actor.idl.js +518 -0
- package/dist/src/canister/actor.idl.js.map +1 -0
- package/dist/src/canister/actor.js +51 -0
- package/dist/src/canister/actor.js.map +1 -0
- package/dist/src/canister/encryption.d.ts +158 -0
- package/dist/src/canister/encryption.d.ts.map +1 -0
- package/dist/src/canister/encryption.js +296 -0
- package/dist/src/canister/encryption.js.map +1 -0
- package/dist/src/canister/memory-repo-actor.d.ts +162 -0
- package/dist/src/canister/memory-repo-actor.d.ts.map +1 -0
- package/dist/src/canister/memory-repo-actor.idl.d.ts +8 -0
- package/dist/src/canister/memory-repo-actor.idl.d.ts.map +1 -0
- package/dist/src/canister/memory-repo-actor.idl.js +90 -0
- package/dist/src/canister/memory-repo-actor.idl.js.map +1 -0
- package/dist/src/canister/memory-repo-actor.js +69 -0
- package/dist/src/canister/memory-repo-actor.js.map +1 -0
- package/dist/src/canister/types.d.ts +54 -0
- package/dist/src/canister/types.d.ts.map +1 -0
- package/dist/src/canister/types.js +7 -0
- package/dist/src/canister/types.js.map +1 -0
- package/dist/src/cloud-storage/cloud-sync.d.ts +49 -0
- package/dist/src/cloud-storage/cloud-sync.d.ts.map +1 -0
- package/dist/src/cloud-storage/cloud-sync.js +377 -0
- package/dist/src/cloud-storage/cloud-sync.js.map +1 -0
- package/dist/src/cloud-storage/index.d.ts +11 -0
- package/dist/src/cloud-storage/index.d.ts.map +1 -0
- package/{src/cloud-storage/index.ts → dist/src/cloud-storage/index.js} +1 -1
- package/dist/src/cloud-storage/index.js.map +1 -0
- package/dist/src/cloud-storage/provider-detector.d.ts +34 -0
- package/dist/src/cloud-storage/provider-detector.d.ts.map +1 -0
- package/dist/src/cloud-storage/provider-detector.js +158 -0
- package/dist/src/cloud-storage/provider-detector.js.map +1 -0
- package/dist/src/cloud-storage/types.d.ts +96 -0
- package/dist/src/cloud-storage/types.d.ts.map +1 -0
- package/dist/src/cloud-storage/types.js +10 -0
- package/dist/src/cloud-storage/types.js.map +1 -0
- package/dist/src/debugging/debug-logger.d.ts +8 -0
- package/dist/src/debugging/debug-logger.d.ts.map +1 -0
- package/dist/src/debugging/debug-logger.js +11 -0
- package/dist/src/debugging/debug-logger.js.map +1 -0
- package/dist/src/debugging/index.d.ts +7 -0
- package/dist/src/debugging/index.d.ts.map +1 -0
- package/{src/debugging/index.ts → dist/src/debugging/index.js} +2 -1
- package/dist/src/debugging/index.js.map +1 -0
- package/dist/src/debugging/logs.d.ts +32 -0
- package/dist/src/debugging/logs.d.ts.map +1 -0
- package/dist/src/debugging/logs.js +158 -0
- package/dist/src/debugging/logs.js.map +1 -0
- package/dist/src/debugging/types.d.ts +91 -0
- package/dist/src/debugging/types.d.ts.map +1 -0
- package/dist/src/debugging/types.js +5 -0
- package/dist/src/debugging/types.js.map +1 -0
- package/dist/src/deployment/deployer.d.ts +52 -0
- package/dist/src/deployment/deployer.d.ts.map +1 -0
- package/dist/src/deployment/deployer.js +343 -0
- package/dist/src/deployment/deployer.js.map +1 -0
- package/dist/src/deployment/icpClient.d.ts +144 -0
- package/dist/src/deployment/icpClient.d.ts.map +1 -0
- package/dist/src/deployment/icpClient.js +549 -0
- package/dist/src/deployment/icpClient.js.map +1 -0
- package/dist/src/deployment/index.d.ts +11 -0
- package/dist/src/deployment/index.d.ts.map +1 -0
- package/dist/src/deployment/index.js +14 -0
- package/dist/src/deployment/index.js.map +1 -0
- package/dist/src/deployment/promotion.d.ts +32 -0
- package/dist/src/deployment/promotion.d.ts.map +1 -0
- package/dist/src/deployment/promotion.js +114 -0
- package/dist/src/deployment/promotion.js.map +1 -0
- package/dist/src/deployment/types.d.ts +102 -0
- package/dist/src/deployment/types.d.ts.map +1 -0
- package/dist/src/deployment/types.js +5 -0
- package/dist/src/deployment/types.js.map +1 -0
- package/dist/src/fault-tolerance/backup-status.d.ts +31 -0
- package/dist/src/fault-tolerance/backup-status.d.ts.map +1 -0
- package/dist/src/fault-tolerance/backup-status.js +76 -0
- package/dist/src/fault-tolerance/backup-status.js.map +1 -0
- package/dist/src/fault-tolerance/cron-check.d.ts +66 -0
- package/dist/src/fault-tolerance/cron-check.d.ts.map +1 -0
- package/dist/src/fault-tolerance/cron-check.js +177 -0
- package/dist/src/fault-tolerance/cron-check.js.map +1 -0
- package/dist/src/fault-tolerance/index.d.ts +12 -0
- package/dist/src/fault-tolerance/index.d.ts.map +1 -0
- package/dist/src/fault-tolerance/index.js +12 -0
- package/dist/src/fault-tolerance/index.js.map +1 -0
- package/dist/src/fault-tolerance/mirror-sync.d.ts +61 -0
- package/dist/src/fault-tolerance/mirror-sync.d.ts.map +1 -0
- package/dist/src/fault-tolerance/mirror-sync.js +203 -0
- package/dist/src/fault-tolerance/mirror-sync.js.map +1 -0
- package/dist/src/icp/batch.d.ts +112 -0
- package/dist/src/icp/batch.d.ts.map +1 -0
- package/dist/src/icp/batch.js +279 -0
- package/dist/src/icp/batch.js.map +1 -0
- package/dist/src/icp/cycles.d.ts +29 -0
- package/dist/src/icp/cycles.d.ts.map +1 -0
- package/{src/icp/cycles.ts → dist/src/icp/cycles.js} +8 -22
- package/dist/src/icp/cycles.js.map +1 -0
- package/dist/src/icp/environment.d.ts +60 -0
- package/dist/src/icp/environment.d.ts.map +1 -0
- package/dist/src/icp/environment.js +183 -0
- package/dist/src/icp/environment.js.map +1 -0
- package/dist/src/icp/icpcli.d.ts +204 -0
- package/dist/src/icp/icpcli.d.ts.map +1 -0
- package/dist/src/icp/icpcli.js +374 -0
- package/dist/src/icp/icpcli.js.map +1 -0
- package/dist/src/icp/icwasm.d.ts +94 -0
- package/dist/src/icp/icwasm.d.ts.map +1 -0
- package/dist/src/icp/icwasm.js +197 -0
- package/dist/src/icp/icwasm.js.map +1 -0
- package/dist/src/icp/identity.d.ts +50 -0
- package/dist/src/icp/identity.d.ts.map +1 -0
- package/{src/icp/identity.ts → dist/src/icp/identity.js} +15 -28
- package/dist/src/icp/identity.js.map +1 -0
- package/dist/src/icp/index.d.ts +16 -0
- package/dist/src/icp/index.d.ts.map +1 -0
- package/dist/src/icp/index.js +20 -0
- package/dist/src/icp/index.js.map +1 -0
- package/dist/src/icp/optimization.d.ts +16 -0
- package/dist/src/icp/optimization.d.ts.map +1 -0
- package/dist/src/icp/optimization.js +225 -0
- package/dist/src/icp/optimization.js.map +1 -0
- package/dist/src/icp/tokens.d.ts +24 -0
- package/dist/src/icp/tokens.d.ts.map +1 -0
- package/{src/icp/tokens.ts → dist/src/icp/tokens.js} +5 -12
- package/dist/src/icp/tokens.js.map +1 -0
- package/dist/src/icp/tool-detector.d.ts +31 -0
- package/dist/src/icp/tool-detector.d.ts.map +1 -0
- package/dist/src/icp/tool-detector.js +118 -0
- package/dist/src/icp/tool-detector.js.map +1 -0
- package/dist/src/icp/types.d.ts +493 -0
- package/dist/src/icp/types.d.ts.map +1 -0
- package/dist/src/icp/types.js +7 -0
- package/dist/src/icp/types.js.map +1 -0
- package/dist/src/index.d.ts +12 -0
- package/dist/src/index.d.ts.map +1 -0
- package/dist/src/index.js +39 -0
- package/dist/src/index.js.map +1 -0
- package/dist/src/inference/bittensor-client.d.ts +161 -0
- package/dist/src/inference/bittensor-client.d.ts.map +1 -0
- package/dist/src/inference/bittensor-client.js +317 -0
- package/dist/src/inference/bittensor-client.js.map +1 -0
- package/dist/src/inference/fallback-chain.d.ts +90 -0
- package/dist/src/inference/fallback-chain.d.ts.map +1 -0
- package/dist/src/inference/fallback-chain.js +219 -0
- package/dist/src/inference/fallback-chain.js.map +1 -0
- package/dist/src/inference/index.d.ts +13 -0
- package/dist/src/inference/index.d.ts.map +1 -0
- package/dist/src/inference/index.js +13 -0
- package/dist/src/inference/index.js.map +1 -0
- package/dist/src/inference/inference-manager.d.ts +76 -0
- package/dist/src/inference/inference-manager.d.ts.map +1 -0
- package/dist/src/inference/inference-manager.js +228 -0
- package/dist/src/inference/inference-manager.js.map +1 -0
- package/dist/src/inference/local-model-client.d.ts +46 -0
- package/dist/src/inference/local-model-client.d.ts.map +1 -0
- package/dist/src/inference/local-model-client.js +92 -0
- package/dist/src/inference/local-model-client.js.map +1 -0
- package/dist/src/inference/secure-inference.d.ts +105 -0
- package/dist/src/inference/secure-inference.d.ts.map +1 -0
- package/dist/src/inference/secure-inference.js +237 -0
- package/dist/src/inference/secure-inference.js.map +1 -0
- package/dist/src/inference/venice-client.d.ts +149 -0
- package/dist/src/inference/venice-client.d.ts.map +1 -0
- package/dist/src/inference/venice-client.js +333 -0
- package/dist/src/inference/venice-client.js.map +1 -0
- package/dist/src/metrics/index.d.ts +7 -0
- package/dist/src/metrics/index.d.ts.map +1 -0
- package/{src/metrics/index.ts → dist/src/metrics/index.js} +1 -1
- package/dist/src/metrics/index.js.map +1 -0
- package/dist/src/metrics/metrics.d.ts +39 -0
- package/dist/src/metrics/metrics.d.ts.map +1 -0
- package/dist/src/metrics/metrics.js +129 -0
- package/dist/src/metrics/metrics.js.map +1 -0
- package/dist/src/mint/google-adk.d.ts +19 -0
- package/dist/src/mint/google-adk.d.ts.map +1 -0
- package/dist/src/mint/google-adk.js +180 -0
- package/dist/src/mint/google-adk.js.map +1 -0
- package/dist/src/monitoring/alerting.d.ts +51 -0
- package/dist/src/monitoring/alerting.d.ts.map +1 -0
- package/dist/src/monitoring/alerting.js +169 -0
- package/dist/src/monitoring/alerting.js.map +1 -0
- package/dist/src/monitoring/health.d.ts +48 -0
- package/dist/src/monitoring/health.d.ts.map +1 -0
- package/dist/src/monitoring/health.js +227 -0
- package/dist/src/monitoring/health.js.map +1 -0
- package/dist/src/monitoring/index.d.ts +10 -0
- package/dist/src/monitoring/index.d.ts.map +1 -0
- package/dist/src/monitoring/index.js +12 -0
- package/dist/src/monitoring/index.js.map +1 -0
- package/dist/src/monitoring/info.d.ts +15 -0
- package/dist/src/monitoring/info.d.ts.map +1 -0
- package/dist/src/monitoring/info.js +109 -0
- package/dist/src/monitoring/info.js.map +1 -0
- package/dist/src/monitoring/types.d.ts +119 -0
- package/dist/src/monitoring/types.d.ts.map +1 -0
- package/dist/src/monitoring/types.js +7 -0
- package/dist/src/monitoring/types.js.map +1 -0
- package/dist/src/network/index.d.ts +5 -0
- package/dist/src/network/index.d.ts.map +1 -0
- package/{src/network/index.ts → dist/src/network/index.js} +1 -1
- package/dist/src/network/index.js.map +1 -0
- package/dist/src/network/network-config.d.ts +31 -0
- package/dist/src/network/network-config.d.ts.map +1 -0
- package/dist/src/network/network-config.js +109 -0
- package/dist/src/network/network-config.js.map +1 -0
- package/dist/src/orchestration/claude.d.ts +125 -0
- package/dist/src/orchestration/claude.d.ts.map +1 -0
- package/dist/src/orchestration/claude.js +639 -0
- package/dist/src/orchestration/claude.js.map +1 -0
- package/dist/src/orchestration/google-adk.d.ts +77 -0
- package/dist/src/orchestration/google-adk.d.ts.map +1 -0
- package/dist/src/orchestration/google-adk.js +659 -0
- package/dist/src/orchestration/google-adk.js.map +1 -0
- package/dist/src/orchestration/mcp-client.d.ts +47 -0
- package/dist/src/orchestration/mcp-client.d.ts.map +1 -0
- package/dist/src/orchestration/mcp-client.js +179 -0
- package/dist/src/orchestration/mcp-client.js.map +1 -0
- package/dist/src/orchestration/polytician-enricher.d.ts +21 -0
- package/dist/src/orchestration/polytician-enricher.d.ts.map +1 -0
- package/dist/src/orchestration/polytician-enricher.js +131 -0
- package/dist/src/orchestration/polytician-enricher.js.map +1 -0
- package/dist/src/orchestration/smallchat-bridge.d.ts +121 -0
- package/dist/src/orchestration/smallchat-bridge.d.ts.map +1 -0
- package/dist/src/orchestration/smallchat-bridge.js +331 -0
- package/dist/src/orchestration/smallchat-bridge.js.map +1 -0
- package/dist/src/orchestration/smallchat-compression.d.ts +100 -0
- package/dist/src/orchestration/smallchat-compression.d.ts.map +1 -0
- package/dist/src/orchestration/smallchat-compression.js +203 -0
- package/dist/src/orchestration/smallchat-compression.js.map +1 -0
- package/dist/src/orchestration/smallchat-policy.d.ts +158 -0
- package/dist/src/orchestration/smallchat-policy.d.ts.map +1 -0
- package/dist/src/orchestration/smallchat-policy.js +314 -0
- package/dist/src/orchestration/smallchat-policy.js.map +1 -0
- package/dist/src/orchestration/smallchat-tools.d.ts +69 -0
- package/dist/src/orchestration/smallchat-tools.d.ts.map +1 -0
- package/dist/src/orchestration/smallchat-tools.js +501 -0
- package/dist/src/orchestration/smallchat-tools.js.map +1 -0
- package/dist/src/packaging/compiler.d.ts +61 -0
- package/dist/src/packaging/compiler.d.ts.map +1 -0
- package/dist/src/packaging/compiler.js +562 -0
- package/dist/src/packaging/compiler.js.map +1 -0
- package/dist/src/packaging/config-persistence.d.ts +46 -0
- package/dist/src/packaging/config-persistence.d.ts.map +1 -0
- package/dist/src/packaging/config-persistence.js +108 -0
- package/dist/src/packaging/config-persistence.js.map +1 -0
- package/dist/src/packaging/config-schemas.d.ts +157 -0
- package/dist/src/packaging/config-schemas.d.ts.map +1 -0
- package/dist/src/packaging/config-schemas.js +62 -0
- package/dist/src/packaging/config-schemas.js.map +1 -0
- package/dist/src/packaging/detector.d.ts +26 -0
- package/dist/src/packaging/detector.d.ts.map +1 -0
- package/dist/src/packaging/detector.js +207 -0
- package/dist/src/packaging/detector.js.map +1 -0
- package/dist/src/packaging/index.d.ts +22 -0
- package/dist/src/packaging/index.d.ts.map +1 -0
- package/dist/src/packaging/index.js +28 -0
- package/dist/src/packaging/index.js.map +1 -0
- package/dist/src/packaging/packager.d.ts +31 -0
- package/dist/src/packaging/packager.d.ts.map +1 -0
- package/dist/src/packaging/packager.js +90 -0
- package/dist/src/packaging/packager.js.map +1 -0
- package/dist/src/packaging/parsers/clawdbot.d.ts +19 -0
- package/dist/src/packaging/parsers/clawdbot.d.ts.map +1 -0
- package/dist/src/packaging/parsers/clawdbot.js +229 -0
- package/dist/src/packaging/parsers/clawdbot.js.map +1 -0
- package/dist/src/packaging/parsers/cline.d.ts +26 -0
- package/dist/src/packaging/parsers/cline.d.ts.map +1 -0
- package/dist/src/packaging/parsers/cline.js +185 -0
- package/dist/src/packaging/parsers/cline.js.map +1 -0
- package/dist/src/packaging/parsers/generic.d.ts +27 -0
- package/dist/src/packaging/parsers/generic.d.ts.map +1 -0
- package/dist/src/packaging/parsers/generic.js +221 -0
- package/dist/src/packaging/parsers/generic.js.map +1 -0
- package/dist/src/packaging/parsers/goose.d.ts +26 -0
- package/dist/src/packaging/parsers/goose.d.ts.map +1 -0
- package/dist/src/packaging/parsers/goose.js +175 -0
- package/dist/src/packaging/parsers/goose.js.map +1 -0
- package/dist/src/packaging/parsers/index.d.ts +13 -0
- package/dist/src/packaging/parsers/index.d.ts.map +1 -0
- package/{src/packaging/parsers/index.ts → dist/src/packaging/parsers/index.js} +3 -1
- package/dist/src/packaging/parsers/index.js.map +1 -0
- package/dist/src/packaging/parsers/nemoclaw.d.ts +4 -0
- package/dist/src/packaging/parsers/nemoclaw.d.ts.map +1 -0
- package/dist/src/packaging/parsers/nemoclaw.js +145 -0
- package/dist/src/packaging/parsers/nemoclaw.js.map +1 -0
- package/dist/src/packaging/parsers/polytician.d.ts +4 -0
- package/dist/src/packaging/parsers/polytician.d.ts.map +1 -0
- package/dist/src/packaging/parsers/polytician.js +121 -0
- package/dist/src/packaging/parsers/polytician.js.map +1 -0
- package/dist/src/packaging/serializer.d.ts +114 -0
- package/dist/src/packaging/serializer.d.ts.map +1 -0
- package/dist/src/packaging/serializer.js +164 -0
- package/dist/src/packaging/serializer.js.map +1 -0
- package/dist/src/packaging/serializers/index.d.ts +3 -0
- package/dist/src/packaging/serializers/index.d.ts.map +1 -0
- package/dist/src/packaging/serializers/index.js +2 -0
- package/dist/src/packaging/serializers/index.js.map +1 -0
- package/dist/src/packaging/serializers/thoughtform.d.ts +89 -0
- package/dist/src/packaging/serializers/thoughtform.d.ts.map +1 -0
- package/dist/src/packaging/serializers/thoughtform.js +84 -0
- package/dist/src/packaging/serializers/thoughtform.js.map +1 -0
- package/dist/src/packaging/state-format.d.ts +332 -0
- package/dist/src/packaging/state-format.d.ts.map +1 -0
- package/dist/src/packaging/state-format.js +602 -0
- package/dist/src/packaging/state-format.js.map +1 -0
- package/dist/src/packaging/types.d.ts +131 -0
- package/dist/src/packaging/types.d.ts.map +1 -0
- package/dist/src/packaging/types.js +5 -0
- package/dist/src/packaging/types.js.map +1 -0
- package/dist/src/packaging/wasm-compiler.d.ts +160 -0
- package/dist/src/packaging/wasm-compiler.d.ts.map +1 -0
- package/dist/src/packaging/wasm-compiler.js +662 -0
- package/dist/src/packaging/wasm-compiler.js.map +1 -0
- package/dist/src/packaging/wasmedge-compiler.d.ts +76 -0
- package/dist/src/packaging/wasmedge-compiler.d.ts.map +1 -0
- package/dist/src/packaging/wasmedge-compiler.js +351 -0
- package/dist/src/packaging/wasmedge-compiler.js.map +1 -0
- package/dist/src/pilot/air-gap.d.ts +51 -0
- package/dist/src/pilot/air-gap.d.ts.map +1 -0
- package/dist/src/pilot/air-gap.js +118 -0
- package/dist/src/pilot/air-gap.js.map +1 -0
- package/dist/src/pilot/index.d.ts +14 -0
- package/dist/src/pilot/index.d.ts.map +1 -0
- package/dist/src/pilot/index.js +16 -0
- package/dist/src/pilot/index.js.map +1 -0
- package/dist/src/pilot/private-replica.d.ts +67 -0
- package/dist/src/pilot/private-replica.d.ts.map +1 -0
- package/dist/src/pilot/private-replica.js +429 -0
- package/dist/src/pilot/private-replica.js.map +1 -0
- package/dist/src/pilot/proxy-config.d.ts +36 -0
- package/dist/src/pilot/proxy-config.d.ts.map +1 -0
- package/dist/src/pilot/proxy-config.js +96 -0
- package/dist/src/pilot/proxy-config.js.map +1 -0
- package/dist/src/pilot/types.d.ts +181 -0
- package/dist/src/pilot/types.d.ts.map +1 -0
- package/dist/src/pilot/types.js +7 -0
- package/dist/src/pilot/types.js.map +1 -0
- package/dist/src/security/icp-audit.d.ts +63 -0
- package/dist/src/security/icp-audit.d.ts.map +1 -0
- package/dist/src/security/icp-audit.js +234 -0
- package/dist/src/security/icp-audit.js.map +1 -0
- package/dist/src/security/index.d.ts +17 -0
- package/dist/src/security/index.d.ts.map +1 -0
- package/dist/src/security/index.js +24 -0
- package/dist/src/security/index.js.map +1 -0
- package/dist/src/security/mfa-approval.d.ts +219 -0
- package/dist/src/security/mfa-approval.d.ts.map +1 -0
- package/dist/src/security/mfa-approval.js +668 -0
- package/dist/src/security/mfa-approval.js.map +1 -0
- package/dist/src/security/multisig.d.ts +102 -0
- package/dist/src/security/multisig.d.ts.map +1 -0
- package/dist/src/security/multisig.js +283 -0
- package/dist/src/security/multisig.js.map +1 -0
- package/dist/src/security/totp.d.ts +67 -0
- package/dist/src/security/totp.d.ts.map +1 -0
- package/dist/src/security/totp.js +148 -0
- package/dist/src/security/totp.js.map +1 -0
- package/dist/src/security/types.d.ts +212 -0
- package/dist/src/security/types.d.ts.map +1 -0
- package/dist/src/security/types.js +217 -0
- package/dist/src/security/types.js.map +1 -0
- package/dist/src/security/vetkeys.d.ts +222 -0
- package/dist/src/security/vetkeys.d.ts.map +1 -0
- package/dist/src/security/vetkeys.js +628 -0
- package/dist/src/security/vetkeys.js.map +1 -0
- package/dist/src/security/webauthn.d.ts +127 -0
- package/dist/src/security/webauthn.d.ts.map +1 -0
- package/dist/src/security/webauthn.js +246 -0
- package/dist/src/security/webauthn.js.map +1 -0
- package/dist/src/testing/index.d.ts +6 -0
- package/dist/src/testing/index.d.ts.map +1 -0
- package/{src/testing/index.ts → dist/src/testing/index.js} +1 -1
- package/dist/src/testing/index.js.map +1 -0
- package/dist/src/testing/local-runner.d.ts +23 -0
- package/dist/src/testing/local-runner.d.ts.map +1 -0
- package/dist/src/testing/local-runner.js +226 -0
- package/dist/src/testing/local-runner.js.map +1 -0
- package/dist/src/testing/types.d.ts +98 -0
- package/dist/src/testing/types.d.ts.map +1 -0
- package/dist/src/testing/types.js +5 -0
- package/dist/src/testing/types.js.map +1 -0
- package/dist/src/trading/api-key-manager.d.ts +96 -0
- package/dist/src/trading/api-key-manager.d.ts.map +1 -0
- package/dist/src/trading/api-key-manager.js +201 -0
- package/dist/src/trading/api-key-manager.js.map +1 -0
- package/dist/src/trading/consensus.d.ts +171 -0
- package/dist/src/trading/consensus.d.ts.map +1 -0
- package/dist/src/trading/consensus.js +291 -0
- package/dist/src/trading/consensus.js.map +1 -0
- package/dist/src/trading/index.d.ts +19 -0
- package/dist/src/trading/index.d.ts.map +1 -0
- package/dist/src/trading/index.js +15 -0
- package/dist/src/trading/index.js.map +1 -0
- package/dist/src/trading/ip-whitelist.d.ts +70 -0
- package/dist/src/trading/ip-whitelist.d.ts.map +1 -0
- package/dist/src/trading/ip-whitelist.js +239 -0
- package/dist/src/trading/ip-whitelist.js.map +1 -0
- package/dist/src/trading/skill-sandbox.d.ts +88 -0
- package/dist/src/trading/skill-sandbox.d.ts.map +1 -0
- package/dist/src/trading/skill-sandbox.js +175 -0
- package/dist/src/trading/skill-sandbox.js.map +1 -0
- package/dist/src/utils/path-validation.d.ts +34 -0
- package/dist/src/utils/path-validation.d.ts.map +1 -0
- package/dist/src/utils/path-validation.js +88 -0
- package/dist/src/utils/path-validation.js.map +1 -0
- package/dist/src/vault/bitwarden.d.ts +51 -0
- package/dist/src/vault/bitwarden.d.ts.map +1 -0
- package/dist/src/vault/bitwarden.js +172 -0
- package/dist/src/vault/bitwarden.js.map +1 -0
- package/dist/src/vault/client.d.ts +44 -0
- package/dist/src/vault/client.d.ts.map +1 -0
- package/dist/src/vault/client.js +523 -0
- package/dist/src/vault/client.js.map +1 -0
- package/dist/src/vault/config.d.ts +68 -0
- package/dist/src/vault/config.d.ts.map +1 -0
- package/dist/src/vault/config.js +265 -0
- package/dist/src/vault/config.js.map +1 -0
- package/dist/src/vault/encrypted-memory-store.d.ts +80 -0
- package/dist/src/vault/encrypted-memory-store.d.ts.map +1 -0
- package/dist/src/vault/encrypted-memory-store.js +175 -0
- package/dist/src/vault/encrypted-memory-store.js.map +1 -0
- package/dist/src/vault/hashicorp-provider.d.ts +22 -0
- package/dist/src/vault/hashicorp-provider.d.ts.map +1 -0
- package/dist/src/vault/hashicorp-provider.js +63 -0
- package/dist/src/vault/hashicorp-provider.js.map +1 -0
- package/dist/src/vault/index.d.ts +40 -0
- package/dist/src/vault/index.d.ts.map +1 -0
- package/dist/src/vault/index.js +38 -0
- package/dist/src/vault/index.js.map +1 -0
- package/dist/src/vault/memory-provider.d.ts +26 -0
- package/dist/src/vault/memory-provider.d.ts.map +1 -0
- package/dist/src/vault/memory-provider.js +42 -0
- package/dist/src/vault/memory-provider.js.map +1 -0
- package/dist/src/vault/provider.d.ts +68 -0
- package/dist/src/vault/provider.d.ts.map +1 -0
- package/dist/src/vault/provider.js +50 -0
- package/dist/src/vault/provider.js.map +1 -0
- package/dist/src/vault/safehouse-types.d.ts +204 -0
- package/dist/src/vault/safehouse-types.d.ts.map +1 -0
- package/dist/src/vault/safehouse-types.js +9 -0
- package/dist/src/vault/safehouse-types.js.map +1 -0
- package/dist/src/vault/secret-audit.d.ts +91 -0
- package/dist/src/vault/secret-audit.d.ts.map +1 -0
- package/dist/src/vault/secret-audit.js +224 -0
- package/dist/src/vault/secret-audit.js.map +1 -0
- package/dist/src/vault/secret-injector.d.ts +62 -0
- package/dist/src/vault/secret-injector.d.ts.map +1 -0
- package/dist/src/vault/secret-injector.js +237 -0
- package/dist/src/vault/secret-injector.js.map +1 -0
- package/dist/src/vault/secret-leak-detector.d.ts +94 -0
- package/dist/src/vault/secret-leak-detector.d.ts.map +1 -0
- package/dist/src/vault/secret-leak-detector.js +218 -0
- package/dist/src/vault/secret-leak-detector.js.map +1 -0
- package/dist/src/vault/secret-management-layer.d.ts +139 -0
- package/dist/src/vault/secret-management-layer.d.ts.map +1 -0
- package/dist/src/vault/secret-management-layer.js +366 -0
- package/dist/src/vault/secret-management-layer.js.map +1 -0
- package/dist/src/vault/secret-rotation.d.ts +54 -0
- package/dist/src/vault/secret-rotation.d.ts.map +1 -0
- package/dist/src/vault/secret-rotation.js +156 -0
- package/dist/src/vault/secret-rotation.js.map +1 -0
- package/dist/src/vault/secret-sandbox.d.ts +94 -0
- package/dist/src/vault/secret-sandbox.d.ts.map +1 -0
- package/dist/src/vault/secret-sandbox.js +232 -0
- package/dist/src/vault/secret-sandbox.js.map +1 -0
- package/dist/src/vault/types.d.ts +148 -0
- package/dist/src/vault/types.d.ts.map +1 -0
- package/dist/src/vault/types.js +7 -0
- package/dist/src/vault/types.js.map +1 -0
- package/dist/src/wallet/cbor-serializer.d.ts +82 -0
- package/dist/src/wallet/cbor-serializer.d.ts.map +1 -0
- package/dist/src/wallet/cbor-serializer.js +287 -0
- package/dist/src/wallet/cbor-serializer.js.map +1 -0
- package/dist/src/wallet/chain-dispatcher.d.ts +112 -0
- package/dist/src/wallet/chain-dispatcher.d.ts.map +1 -0
- package/dist/src/wallet/chain-dispatcher.js +230 -0
- package/dist/src/wallet/chain-dispatcher.js.map +1 -0
- package/dist/src/wallet/cross-chain-aggregator.d.ts +119 -0
- package/dist/src/wallet/cross-chain-aggregator.d.ts.map +1 -0
- package/dist/src/wallet/cross-chain-aggregator.js +235 -0
- package/dist/src/wallet/cross-chain-aggregator.js.map +1 -0
- package/dist/src/wallet/hsm/index.d.ts +39 -0
- package/dist/src/wallet/hsm/index.d.ts.map +1 -0
- package/dist/src/wallet/hsm/index.js +60 -0
- package/dist/src/wallet/hsm/index.js.map +1 -0
- package/dist/src/wallet/hsm/ledger-provider.d.ts +75 -0
- package/dist/src/wallet/hsm/ledger-provider.d.ts.map +1 -0
- package/dist/src/wallet/hsm/ledger-provider.js +272 -0
- package/dist/src/wallet/hsm/ledger-provider.js.map +1 -0
- package/dist/src/wallet/hsm/sgx-provider.d.ts +83 -0
- package/dist/src/wallet/hsm/sgx-provider.d.ts.map +1 -0
- package/dist/src/wallet/hsm/sgx-provider.js +281 -0
- package/dist/src/wallet/hsm/sgx-provider.js.map +1 -0
- package/dist/src/wallet/hsm/types.d.ts +134 -0
- package/dist/src/wallet/hsm/types.d.ts.map +1 -0
- package/dist/src/wallet/hsm/types.js +46 -0
- package/dist/src/wallet/hsm/types.js.map +1 -0
- package/dist/src/wallet/index.d.ts +22 -0
- package/dist/src/wallet/index.d.ts.map +1 -0
- package/dist/src/wallet/index.js +29 -0
- package/dist/src/wallet/index.js.map +1 -0
- package/dist/src/wallet/key-derivation.d.ts +145 -0
- package/dist/src/wallet/key-derivation.d.ts.map +1 -0
- package/dist/src/wallet/key-derivation.js +408 -0
- package/dist/src/wallet/key-derivation.js.map +1 -0
- package/dist/src/wallet/providers/arweave-provider.d.ts +34 -0
- package/dist/src/wallet/providers/arweave-provider.d.ts.map +1 -0
- package/dist/src/wallet/providers/arweave-provider.js +126 -0
- package/dist/src/wallet/providers/arweave-provider.js.map +1 -0
- package/dist/src/wallet/providers/base-provider.d.ts +111 -0
- package/dist/src/wallet/providers/base-provider.d.ts.map +1 -0
- package/dist/src/wallet/providers/base-provider.js +58 -0
- package/dist/src/wallet/providers/base-provider.js.map +1 -0
- package/dist/src/wallet/providers/cketh-provider.d.ts +104 -0
- package/dist/src/wallet/providers/cketh-provider.d.ts.map +1 -0
- package/dist/src/wallet/providers/cketh-provider.js +343 -0
- package/dist/src/wallet/providers/cketh-provider.js.map +1 -0
- package/dist/src/wallet/providers/icp-provider.d.ts +34 -0
- package/dist/src/wallet/providers/icp-provider.d.ts.map +1 -0
- package/dist/src/wallet/providers/icp-provider.js +114 -0
- package/dist/src/wallet/providers/icp-provider.js.map +1 -0
- package/dist/src/wallet/providers/polkadot-provider.d.ts +115 -0
- package/dist/src/wallet/providers/polkadot-provider.d.ts.map +1 -0
- package/dist/src/wallet/providers/polkadot-provider.js +406 -0
- package/dist/src/wallet/providers/polkadot-provider.js.map +1 -0
- package/dist/src/wallet/providers/provider-factory.d.ts +23 -0
- package/dist/src/wallet/providers/provider-factory.d.ts.map +1 -0
- package/dist/src/wallet/providers/provider-factory.js +74 -0
- package/dist/src/wallet/providers/provider-factory.js.map +1 -0
- package/dist/src/wallet/providers/solana-provider.d.ts +102 -0
- package/dist/src/wallet/providers/solana-provider.d.ts.map +1 -0
- package/dist/src/wallet/providers/solana-provider.js +392 -0
- package/dist/src/wallet/providers/solana-provider.js.map +1 -0
- package/dist/src/wallet/secure-wallet.d.ts +132 -0
- package/dist/src/wallet/secure-wallet.d.ts.map +1 -0
- package/dist/src/wallet/secure-wallet.js +298 -0
- package/dist/src/wallet/secure-wallet.js.map +1 -0
- package/dist/src/wallet/transaction-queue.d.ts +133 -0
- package/dist/src/wallet/transaction-queue.d.ts.map +1 -0
- package/dist/src/wallet/transaction-queue.js +195 -0
- package/dist/src/wallet/transaction-queue.js.map +1 -0
- package/dist/src/wallet/types.d.ts +222 -0
- package/dist/src/wallet/types.d.ts.map +1 -0
- package/dist/src/wallet/types.js +5 -0
- package/dist/src/wallet/types.js.map +1 -0
- package/dist/src/wallet/vetkeys-adapter.d.ts +134 -0
- package/dist/src/wallet/vetkeys-adapter.d.ts.map +1 -0
- package/dist/src/wallet/vetkeys-adapter.js +304 -0
- package/dist/src/wallet/vetkeys-adapter.js.map +1 -0
- package/dist/src/wallet/wallet-crypto.d.ts +101 -0
- package/dist/src/wallet/wallet-crypto.d.ts.map +1 -0
- package/dist/src/wallet/wallet-crypto.js +185 -0
- package/dist/src/wallet/wallet-crypto.js.map +1 -0
- package/dist/src/wallet/wallet-manager.d.ts +222 -0
- package/dist/src/wallet/wallet-manager.d.ts.map +1 -0
- package/dist/src/wallet/wallet-manager.js +518 -0
- package/dist/src/wallet/wallet-manager.js.map +1 -0
- package/dist/src/wallet/wallet-storage.d.ts +139 -0
- package/dist/src/wallet/wallet-storage.d.ts.map +1 -0
- package/dist/src/wallet/wallet-storage.js +290 -0
- package/dist/src/wallet/wallet-storage.js.map +1 -0
- package/dist/src/wiki/index.d.ts +30 -0
- package/dist/src/wiki/index.d.ts.map +1 -0
- package/dist/src/wiki/index.js +30 -0
- package/dist/src/wiki/index.js.map +1 -0
- package/dist/src/wiki/ingest.d.ts +51 -0
- package/dist/src/wiki/ingest.d.ts.map +1 -0
- package/dist/src/wiki/ingest.js +197 -0
- package/dist/src/wiki/ingest.js.map +1 -0
- package/dist/src/wiki/lint.d.ts +43 -0
- package/dist/src/wiki/lint.d.ts.map +1 -0
- package/dist/src/wiki/lint.js +187 -0
- package/dist/src/wiki/lint.js.map +1 -0
- package/dist/src/wiki/mcp-tools.d.ts +35 -0
- package/dist/src/wiki/mcp-tools.d.ts.map +1 -0
- package/dist/src/wiki/mcp-tools.js +353 -0
- package/dist/src/wiki/mcp-tools.js.map +1 -0
- package/dist/src/wiki/query.d.ts +38 -0
- package/dist/src/wiki/query.d.ts.map +1 -0
- package/dist/src/wiki/query.js +117 -0
- package/dist/src/wiki/query.js.map +1 -0
- package/dist/src/wiki/wiki-store.d.ts +53 -0
- package/dist/src/wiki/wiki-store.d.ts.map +1 -0
- package/dist/src/wiki/wiki-store.js +132 -0
- package/dist/src/wiki/wiki-store.js.map +1 -0
- package/package.json +44 -12
- package/.dfx/local/network-id +0 -4
- package/.next/trace +0 -2
- package/.vercel/README.txt +0 -11
- package/.vercel/project.json +0 -1
- package/AGENTS.md +0 -43
- package/PLAN_VAULT_INTEGRATION.md +0 -318
- package/backups/agentvault-backup-test-agent-2026-02-12T17-54-28-967Z.json +0 -28
- package/backups/agentvault-backup-test-agent-2026-02-12T17-54-29-032Z.backup +0 -1
- package/backups/agentvault-backup-test-agent-2026-02-12T17-57-42-373Z.json +0 -28
- package/backups/agentvault-backup-test-agent-2026-02-12T17-57-42-428Z.backup +0 -1
- package/backups/agentvault-backup-test-agent-2026-02-12T18-52-25-132Z.json +0 -28
- package/backups/agentvault-backup-test-agent-2026-02-12T18-52-25-247Z.backup +0 -1
- package/backups/agentvault-backup-test-agent-2026-02-12T18-54-09-216Z.json +0 -28
- package/backups/agentvault-backup-test-agent-2026-02-12T18-54-09-283Z.backup +0 -1
- package/backups/agentvault-backup-test-agent-2026-02-12T22-18-22-772Z.backup +0 -1
- package/backups/agentvault-backup-test-agent-2026-02-12T22-18-22-793Z.json +0 -28
- package/backups/test-backup.json +0 -28
- package/dist/vitest.config.d.ts +0 -3
- package/dist/vitest.config.js +0 -14
- package/fixup_1_0_OSS_release.md +0 -136
- package/fixup_REALEASE_PRD.md +0 -136
- package/pnpm-workspace.yaml +0 -5
- package/scripts/dev-dashboard.mjs +0 -84
- package/site/README.md +0 -63
- package/site/docusaurus.config.ts +0 -148
- package/site/package-lock.json +0 -18383
- package/site/package.json +0 -47
- package/site/sidebars.ts +0 -86
- package/site/static/.gitkeep +0 -0
- package/site/static/img/logo.svg +0 -28
- package/site/static/img/og-image.svg +0 -35
- package/src/archival/archive-manager.ts +0 -372
- package/src/archival/arweave-client.ts +0 -289
- package/src/archival/index.ts +0 -8
- package/src/backup/backup.ts +0 -315
- package/src/backup/index.ts +0 -7
- package/src/cloud-storage/cloud-sync.ts +0 -461
- package/src/cloud-storage/provider-detector.ts +0 -198
- package/src/cloud-storage/types.ts +0 -104
- package/src/debugging/logs.ts +0 -193
- package/src/debugging/types.ts +0 -100
- package/src/deployment/deployer.ts +0 -274
- package/src/deployment/icpClient.ts +0 -620
- package/src/deployment/index.ts +0 -46
- package/src/deployment/promotion.ts +0 -161
- package/src/deployment/types.ts +0 -111
- package/src/icp/batch.ts +0 -374
- package/src/icp/environment.ts +0 -215
- package/src/icp/icpcli.ts +0 -438
- package/src/icp/icwasm.ts +0 -222
- package/src/icp/index.ts +0 -94
- package/src/icp/optimization.ts +0 -242
- package/src/icp/tool-detector.ts +0 -110
- package/src/icp/types.ts +0 -574
- package/src/index.ts +0 -25
- package/src/inference/bittensor-client.ts +0 -304
- package/src/inference/index.ts +0 -8
- package/src/inference/inference-manager.ts +0 -327
- package/src/metrics/metrics.ts +0 -186
- package/src/monitoring/alerting.ts +0 -190
- package/src/monitoring/health.ts +0 -197
- package/src/monitoring/index.ts +0 -38
- package/src/monitoring/info.ts +0 -114
- package/src/monitoring/types.ts +0 -99
- package/src/network/network-config.ts +0 -129
- package/src/packaging/compiler.ts +0 -647
- package/src/packaging/config-persistence.ts +0 -135
- package/src/packaging/config-schemas.ts +0 -156
- package/src/packaging/detector.ts +0 -220
- package/src/packaging/index.ts +0 -90
- package/src/packaging/packager.ts +0 -118
- package/src/packaging/parsers/clawdbot.ts +0 -278
- package/src/packaging/parsers/cline.ts +0 -223
- package/src/packaging/parsers/generic.ts +0 -266
- package/src/packaging/parsers/goose.ts +0 -214
- package/src/packaging/serializer.ts +0 -260
- package/src/packaging/types.ts +0 -144
- package/src/packaging/wasmedge-compiler.ts +0 -406
- package/src/security/index.ts +0 -17
- package/src/security/multisig.ts +0 -415
- package/src/security/types.ts +0 -416
- package/src/security/vetkeys.ts +0 -655
- package/src/testing/local-runner.ts +0 -264
- package/src/testing/types.ts +0 -104
- package/src/wallet/cbor-serializer.ts +0 -323
- package/src/wallet/chain-dispatcher.ts +0 -313
- package/src/wallet/cross-chain-aggregator.ts +0 -346
- package/src/wallet/index.ts +0 -76
- package/src/wallet/key-derivation.ts +0 -425
- package/src/wallet/providers/base-provider.ts +0 -154
- package/src/wallet/providers/cketh-provider.ts +0 -434
- package/src/wallet/providers/polkadot-provider.ts +0 -503
- package/src/wallet/providers/solana-provider.ts +0 -490
- package/src/wallet/transaction-queue.ts +0 -284
- package/src/wallet/types.ts +0 -178
- package/src/wallet/vetkeys-adapter.ts +0 -431
- package/src/wallet/wallet-manager.ts +0 -597
- package/src/wallet/wallet-storage.ts +0 -380
- package/vercel.json +0 -8
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ip-whitelist.js","sourceRoot":"","sources":["../../../src/trading/ip-whitelist.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Skill Sandbox
|
|
3
|
+
*
|
|
4
|
+
* Enforces isolation constraints when executing OpenClaw / Clawdbot skills:
|
|
5
|
+
*
|
|
6
|
+
* 1. **No root** — the process must NOT run as uid 0 (root).
|
|
7
|
+
* 2. **Write confinement** — file writes are only permitted under /tmp.
|
|
8
|
+
* Any attempt to write outside /tmp is blocked with an explicit error.
|
|
9
|
+
*
|
|
10
|
+
* Threat model: assume the skill code (an untrusted, domain-specific script
|
|
11
|
+
* loaded at runtime) could be compromised. The sandbox prevents privilege
|
|
12
|
+
* escalation and permanent host mutation beyond the ephemeral /tmp scratch
|
|
13
|
+
* space.
|
|
14
|
+
*
|
|
15
|
+
* Usage:
|
|
16
|
+
* const sandbox = new SkillSandbox();
|
|
17
|
+
* sandbox.assertSafe(); // throws if uid=0
|
|
18
|
+
* sandbox.assertWritePath('/tmp/output.txt'); // throws if outside /tmp
|
|
19
|
+
* const safeFn = sandbox.wrapWrite(fs.writeFileSync);
|
|
20
|
+
*/
|
|
21
|
+
/** The only directory tree in which skill file-writes are permitted. */
|
|
22
|
+
export declare const SKILL_WRITE_ROOT = "/tmp";
|
|
23
|
+
export interface SandboxViolation {
|
|
24
|
+
type: 'root-process' | 'write-outside-tmp' | 'absolute-path-required';
|
|
25
|
+
message: string;
|
|
26
|
+
detail?: string;
|
|
27
|
+
}
|
|
28
|
+
export declare class SkillSandbox {
|
|
29
|
+
private readonly writeRoot;
|
|
30
|
+
/**
|
|
31
|
+
* @param writeRoot The only directory tree skills may write to.
|
|
32
|
+
* Defaults to `/tmp` (or `os.tmpdir()` on non-Linux).
|
|
33
|
+
*/
|
|
34
|
+
constructor(writeRoot?: string);
|
|
35
|
+
/**
|
|
36
|
+
* Throw if the process is running as root (uid 0).
|
|
37
|
+
*
|
|
38
|
+
* Root execution is prohibited for skills because a compromised skill
|
|
39
|
+
* running as root can bypass every other OS-level control.
|
|
40
|
+
*/
|
|
41
|
+
assertNotRoot(): void;
|
|
42
|
+
/**
|
|
43
|
+
* Throw if `filePath` resolves to a location outside the allowed write root.
|
|
44
|
+
*
|
|
45
|
+
* This is the central enforcement point. Wrap every `fs.writeFile`,
|
|
46
|
+
* `fs.writeFileSync`, `fs.open`, etc. call with this check.
|
|
47
|
+
*/
|
|
48
|
+
assertWritePath(filePath: string): void;
|
|
49
|
+
/**
|
|
50
|
+
* Run all pre-execution safety checks. Call this once at skill load time
|
|
51
|
+
* before any skill code runs.
|
|
52
|
+
*/
|
|
53
|
+
assertSafe(): void;
|
|
54
|
+
/**
|
|
55
|
+
* Wrap `fs.writeFileSync` (or any function whose first argument is a file
|
|
56
|
+
* path) so that the path check is applied automatically.
|
|
57
|
+
*
|
|
58
|
+
* Example:
|
|
59
|
+
* import * as fs from 'node:fs';
|
|
60
|
+
* const safeWrite = sandbox.wrapWrite(fs.writeFileSync.bind(fs));
|
|
61
|
+
* safeWrite('/tmp/output.txt', data); // OK
|
|
62
|
+
* safeWrite('/etc/cron.d/evil', payload); // throws
|
|
63
|
+
*/
|
|
64
|
+
wrapWrite<Args extends unknown[], R>(fn: (filePath: string, ...rest: Args) => R): (filePath: string, ...rest: Args) => R;
|
|
65
|
+
/**
|
|
66
|
+
* Wrap an async write function (e.g. `fs.promises.writeFile`).
|
|
67
|
+
*/
|
|
68
|
+
wrapWriteAsync<Args extends unknown[], R>(fn: (filePath: string, ...rest: Args) => Promise<R>): (filePath: string, ...rest: Args) => Promise<R>;
|
|
69
|
+
/** Return the current write-root this sandbox enforces. */
|
|
70
|
+
getWriteRoot(): string;
|
|
71
|
+
/** Return true if the process uid check would pass (not root). */
|
|
72
|
+
isRunningAsRoot(): boolean;
|
|
73
|
+
/**
|
|
74
|
+
* Return a summary of the sandbox configuration suitable for logging.
|
|
75
|
+
* Never includes sensitive information.
|
|
76
|
+
*/
|
|
77
|
+
describe(): {
|
|
78
|
+
uid: number;
|
|
79
|
+
writeRoot: string;
|
|
80
|
+
isRoot: boolean;
|
|
81
|
+
};
|
|
82
|
+
}
|
|
83
|
+
/**
|
|
84
|
+
* A default SkillSandbox instance using the standard /tmp write root.
|
|
85
|
+
* Import this directly if you don't need custom configuration.
|
|
86
|
+
*/
|
|
87
|
+
export declare const defaultSandbox: SkillSandbox;
|
|
88
|
+
//# sourceMappingURL=skill-sandbox.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"skill-sandbox.d.ts","sourceRoot":"","sources":["../../../src/trading/skill-sandbox.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AASH,wEAAwE;AACxE,eAAO,MAAM,gBAAgB,SAAS,CAAC;AAMvC,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,cAAc,GAAG,mBAAmB,GAAG,wBAAwB,CAAC;IACtE,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAmCD,qBAAa,YAAY;IACvB,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAS;IAEnC;;;OAGG;gBACS,SAAS,CAAC,EAAE,MAAM;IAO9B;;;;;OAKG;IACH,aAAa,IAAI,IAAI;IAerB;;;;;OAKG;IACH,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI;IAoCvC;;;OAGG;IACH,UAAU,IAAI,IAAI;IAMlB;;;;;;;;;OASG;IACH,SAAS,CAAC,IAAI,SAAS,OAAO,EAAE,EAAE,CAAC,EACjC,EAAE,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,IAAI,KAAK,CAAC,GACzC,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,IAAI,KAAK,CAAC;IAOzC;;OAEG;IACH,cAAc,CAAC,IAAI,SAAS,OAAO,EAAE,EAAE,CAAC,EACtC,EAAE,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,GAClD,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC;IASlD,2DAA2D;IAC3D,YAAY,IAAI,MAAM;IAItB,kEAAkE;IAClE,eAAe,IAAI,OAAO;IAI1B;;;OAGG;IACH,QAAQ,IAAI;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,OAAO,CAAA;KAAE;CAOhE;AAMD;;;GAGG;AACH,eAAO,MAAM,cAAc,cAAqB,CAAC"}
|
|
@@ -0,0 +1,175 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Skill Sandbox
|
|
3
|
+
*
|
|
4
|
+
* Enforces isolation constraints when executing OpenClaw / Clawdbot skills:
|
|
5
|
+
*
|
|
6
|
+
* 1. **No root** — the process must NOT run as uid 0 (root).
|
|
7
|
+
* 2. **Write confinement** — file writes are only permitted under /tmp.
|
|
8
|
+
* Any attempt to write outside /tmp is blocked with an explicit error.
|
|
9
|
+
*
|
|
10
|
+
* Threat model: assume the skill code (an untrusted, domain-specific script
|
|
11
|
+
* loaded at runtime) could be compromised. The sandbox prevents privilege
|
|
12
|
+
* escalation and permanent host mutation beyond the ephemeral /tmp scratch
|
|
13
|
+
* space.
|
|
14
|
+
*
|
|
15
|
+
* Usage:
|
|
16
|
+
* const sandbox = new SkillSandbox();
|
|
17
|
+
* sandbox.assertSafe(); // throws if uid=0
|
|
18
|
+
* sandbox.assertWritePath('/tmp/output.txt'); // throws if outside /tmp
|
|
19
|
+
* const safeFn = sandbox.wrapWrite(fs.writeFileSync);
|
|
20
|
+
*/
|
|
21
|
+
import * as path from 'node:path';
|
|
22
|
+
import * as os from 'node:os';
|
|
23
|
+
// ---------------------------------------------------------------------------
|
|
24
|
+
// Constants
|
|
25
|
+
// ---------------------------------------------------------------------------
|
|
26
|
+
/** The only directory tree in which skill file-writes are permitted. */
|
|
27
|
+
export const SKILL_WRITE_ROOT = '/tmp';
|
|
28
|
+
// ---------------------------------------------------------------------------
|
|
29
|
+
// Helpers
|
|
30
|
+
// ---------------------------------------------------------------------------
|
|
31
|
+
/**
|
|
32
|
+
* Return the effective uid of the current process.
|
|
33
|
+
* On Windows this is always -1 (Windows does not have POSIX uids;
|
|
34
|
+
* skills should still be allowed to run there without triggering this check).
|
|
35
|
+
*/
|
|
36
|
+
function getEffectiveUid() {
|
|
37
|
+
if (typeof process.getuid === 'function') {
|
|
38
|
+
return process.getuid();
|
|
39
|
+
}
|
|
40
|
+
// Windows / non-POSIX — no uid concept.
|
|
41
|
+
return -1;
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* Resolve `filePath` to an absolute path and verify it is under `root`.
|
|
45
|
+
* Uses `path.resolve` so relative paths and `..` components are handled
|
|
46
|
+
* before the containment check.
|
|
47
|
+
*/
|
|
48
|
+
function isUnderRoot(filePath, root) {
|
|
49
|
+
const resolved = path.resolve(filePath);
|
|
50
|
+
// Ensure we compare with a trailing separator to avoid "/tmpfoo" matching "/tmp".
|
|
51
|
+
const normalRoot = root.endsWith(path.sep) ? root : root + path.sep;
|
|
52
|
+
return resolved === root || resolved.startsWith(normalRoot);
|
|
53
|
+
}
|
|
54
|
+
// ---------------------------------------------------------------------------
|
|
55
|
+
// SkillSandbox
|
|
56
|
+
// ---------------------------------------------------------------------------
|
|
57
|
+
export class SkillSandbox {
|
|
58
|
+
writeRoot;
|
|
59
|
+
/**
|
|
60
|
+
* @param writeRoot The only directory tree skills may write to.
|
|
61
|
+
* Defaults to `/tmp` (or `os.tmpdir()` on non-Linux).
|
|
62
|
+
*/
|
|
63
|
+
constructor(writeRoot) {
|
|
64
|
+
// On Linux, always use /tmp. On other platforms use the OS temp dir.
|
|
65
|
+
this.writeRoot = writeRoot ?? (os.platform() === 'linux' ? SKILL_WRITE_ROOT : os.tmpdir());
|
|
66
|
+
}
|
|
67
|
+
// ── Root check ────────────────────────────────────────────────────────────
|
|
68
|
+
/**
|
|
69
|
+
* Throw if the process is running as root (uid 0).
|
|
70
|
+
*
|
|
71
|
+
* Root execution is prohibited for skills because a compromised skill
|
|
72
|
+
* running as root can bypass every other OS-level control.
|
|
73
|
+
*/
|
|
74
|
+
assertNotRoot() {
|
|
75
|
+
const uid = getEffectiveUid();
|
|
76
|
+
if (uid === 0) {
|
|
77
|
+
throw Object.assign(new Error('SkillSandbox: skill execution is forbidden under the root (uid 0) account. ' +
|
|
78
|
+
'Re-run the agent as a non-privileged user.'), { sandboxViolation: { type: 'root-process', message: 'uid is 0' } });
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
// ── Write path check ──────────────────────────────────────────────────────
|
|
82
|
+
/**
|
|
83
|
+
* Throw if `filePath` resolves to a location outside the allowed write root.
|
|
84
|
+
*
|
|
85
|
+
* This is the central enforcement point. Wrap every `fs.writeFile`,
|
|
86
|
+
* `fs.writeFileSync`, `fs.open`, etc. call with this check.
|
|
87
|
+
*/
|
|
88
|
+
assertWritePath(filePath) {
|
|
89
|
+
if (!path.isAbsolute(path.resolve(filePath))) {
|
|
90
|
+
// Should never happen — path.resolve always returns absolute — but be
|
|
91
|
+
// defensive.
|
|
92
|
+
throw Object.assign(new Error(`SkillSandbox: could not resolve path "${filePath}" to an absolute path.`), {
|
|
93
|
+
sandboxViolation: {
|
|
94
|
+
type: 'absolute-path-required',
|
|
95
|
+
message: `Path could not be resolved: ${filePath}`,
|
|
96
|
+
},
|
|
97
|
+
});
|
|
98
|
+
}
|
|
99
|
+
if (!isUnderRoot(filePath, this.writeRoot)) {
|
|
100
|
+
const resolved = path.resolve(filePath);
|
|
101
|
+
throw Object.assign(new Error(`SkillSandbox: write to "${resolved}" is blocked. ` +
|
|
102
|
+
`Skills may only write inside ${this.writeRoot}. ` +
|
|
103
|
+
'Move the output path to a location under that directory.'), {
|
|
104
|
+
sandboxViolation: {
|
|
105
|
+
type: 'write-outside-tmp',
|
|
106
|
+
message: `Attempted write to ${resolved}`,
|
|
107
|
+
detail: `Allowed root: ${this.writeRoot}`,
|
|
108
|
+
},
|
|
109
|
+
});
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
// ── Combined safety assertion ─────────────────────────────────────────────
|
|
113
|
+
/**
|
|
114
|
+
* Run all pre-execution safety checks. Call this once at skill load time
|
|
115
|
+
* before any skill code runs.
|
|
116
|
+
*/
|
|
117
|
+
assertSafe() {
|
|
118
|
+
this.assertNotRoot();
|
|
119
|
+
}
|
|
120
|
+
// ── Write wrappers ────────────────────────────────────────────────────────
|
|
121
|
+
/**
|
|
122
|
+
* Wrap `fs.writeFileSync` (or any function whose first argument is a file
|
|
123
|
+
* path) so that the path check is applied automatically.
|
|
124
|
+
*
|
|
125
|
+
* Example:
|
|
126
|
+
* import * as fs from 'node:fs';
|
|
127
|
+
* const safeWrite = sandbox.wrapWrite(fs.writeFileSync.bind(fs));
|
|
128
|
+
* safeWrite('/tmp/output.txt', data); // OK
|
|
129
|
+
* safeWrite('/etc/cron.d/evil', payload); // throws
|
|
130
|
+
*/
|
|
131
|
+
wrapWrite(fn) {
|
|
132
|
+
return (filePath, ...rest) => {
|
|
133
|
+
this.assertWritePath(filePath);
|
|
134
|
+
return fn(filePath, ...rest);
|
|
135
|
+
};
|
|
136
|
+
}
|
|
137
|
+
/**
|
|
138
|
+
* Wrap an async write function (e.g. `fs.promises.writeFile`).
|
|
139
|
+
*/
|
|
140
|
+
wrapWriteAsync(fn) {
|
|
141
|
+
return async (filePath, ...rest) => {
|
|
142
|
+
this.assertWritePath(filePath);
|
|
143
|
+
return fn(filePath, ...rest);
|
|
144
|
+
};
|
|
145
|
+
}
|
|
146
|
+
// ── Introspection ─────────────────────────────────────────────────────────
|
|
147
|
+
/** Return the current write-root this sandbox enforces. */
|
|
148
|
+
getWriteRoot() {
|
|
149
|
+
return this.writeRoot;
|
|
150
|
+
}
|
|
151
|
+
/** Return true if the process uid check would pass (not root). */
|
|
152
|
+
isRunningAsRoot() {
|
|
153
|
+
return getEffectiveUid() === 0;
|
|
154
|
+
}
|
|
155
|
+
/**
|
|
156
|
+
* Return a summary of the sandbox configuration suitable for logging.
|
|
157
|
+
* Never includes sensitive information.
|
|
158
|
+
*/
|
|
159
|
+
describe() {
|
|
160
|
+
return {
|
|
161
|
+
uid: getEffectiveUid(),
|
|
162
|
+
writeRoot: this.writeRoot,
|
|
163
|
+
isRoot: this.isRunningAsRoot(),
|
|
164
|
+
};
|
|
165
|
+
}
|
|
166
|
+
}
|
|
167
|
+
// ---------------------------------------------------------------------------
|
|
168
|
+
// Module-level singleton (convenience export)
|
|
169
|
+
// ---------------------------------------------------------------------------
|
|
170
|
+
/**
|
|
171
|
+
* A default SkillSandbox instance using the standard /tmp write root.
|
|
172
|
+
* Import this directly if you don't need custom configuration.
|
|
173
|
+
*/
|
|
174
|
+
export const defaultSandbox = new SkillSandbox();
|
|
175
|
+
//# sourceMappingURL=skill-sandbox.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"skill-sandbox.js","sourceRoot":"","sources":["../../../src/trading/skill-sandbox.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Path validation utilities
|
|
3
|
+
*
|
|
4
|
+
* SEC-12: rejects user-supplied path segments that could traverse outside
|
|
5
|
+
* their intended directory. Use on every untrusted string before joining
|
|
6
|
+
* it into a filesystem path.
|
|
7
|
+
*
|
|
8
|
+
* SEC-17: provides atomicWriteFileSync that writes to a temp file and
|
|
9
|
+
* renames into place, preventing partial writes on crash.
|
|
10
|
+
*/
|
|
11
|
+
/**
|
|
12
|
+
* Validate and normalize a path component that came from untrusted input.
|
|
13
|
+
*
|
|
14
|
+
* Rejects empty strings, `..`, anything containing path separators or NUL,
|
|
15
|
+
* and anything outside the allowed character set. Returns the validated
|
|
16
|
+
* value so the call site can use the return rather than the original.
|
|
17
|
+
*
|
|
18
|
+
* @throws Error with a stable, non-leaky message on invalid input
|
|
19
|
+
*/
|
|
20
|
+
export declare function sanitizePathPart(part: string): string;
|
|
21
|
+
/**
|
|
22
|
+
* Sanitize multiple path components in one call.
|
|
23
|
+
*/
|
|
24
|
+
export declare function sanitizePathParts(...parts: string[]): string[];
|
|
25
|
+
/**
|
|
26
|
+
* SEC-17: atomically write a file by writing to a temp sibling and
|
|
27
|
+
* renaming over the target. Survives process kill mid-write without
|
|
28
|
+
* corrupting the destination.
|
|
29
|
+
*/
|
|
30
|
+
export declare function atomicWriteFileSync(targetPath: string, data: string | Buffer | Uint8Array, options?: {
|
|
31
|
+
mode?: number;
|
|
32
|
+
encoding?: BufferEncoding;
|
|
33
|
+
}): void;
|
|
34
|
+
//# sourceMappingURL=path-validation.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"path-validation.d.ts","sourceRoot":"","sources":["../../../src/utils/path-validation.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAQH;;;;;;;;GAQG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAmBrD;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,GAAG,KAAK,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE,CAE9D;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,CACjC,UAAU,EAAE,MAAM,EAClB,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,UAAU,EAClC,OAAO,GAAE;IAAE,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,cAAc,CAAA;CAAO,GACzD,IAAI,CAuCN"}
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Path validation utilities
|
|
3
|
+
*
|
|
4
|
+
* SEC-12: rejects user-supplied path segments that could traverse outside
|
|
5
|
+
* their intended directory. Use on every untrusted string before joining
|
|
6
|
+
* it into a filesystem path.
|
|
7
|
+
*
|
|
8
|
+
* SEC-17: provides atomicWriteFileSync that writes to a temp file and
|
|
9
|
+
* renames into place, preventing partial writes on crash.
|
|
10
|
+
*/
|
|
11
|
+
import * as fs from 'node:fs';
|
|
12
|
+
import * as path from 'node:path';
|
|
13
|
+
import * as crypto from 'node:crypto';
|
|
14
|
+
const VALID_PATH_PART = /^[a-zA-Z0-9._-]{1,128}$/;
|
|
15
|
+
/**
|
|
16
|
+
* Validate and normalize a path component that came from untrusted input.
|
|
17
|
+
*
|
|
18
|
+
* Rejects empty strings, `..`, anything containing path separators or NUL,
|
|
19
|
+
* and anything outside the allowed character set. Returns the validated
|
|
20
|
+
* value so the call site can use the return rather than the original.
|
|
21
|
+
*
|
|
22
|
+
* @throws Error with a stable, non-leaky message on invalid input
|
|
23
|
+
*/
|
|
24
|
+
export function sanitizePathPart(part) {
|
|
25
|
+
if (typeof part !== 'string' || part.length === 0) {
|
|
26
|
+
throw new Error('Invalid path component: must be a non-empty string');
|
|
27
|
+
}
|
|
28
|
+
if (part === '.' ||
|
|
29
|
+
part === '..' ||
|
|
30
|
+
part.includes('/') ||
|
|
31
|
+
part.includes('\\') ||
|
|
32
|
+
part.includes('\0')) {
|
|
33
|
+
throw new Error('Invalid path component: contains forbidden characters');
|
|
34
|
+
}
|
|
35
|
+
if (!VALID_PATH_PART.test(part)) {
|
|
36
|
+
throw new Error('Invalid path component: only [a-zA-Z0-9._-] up to 128 chars allowed');
|
|
37
|
+
}
|
|
38
|
+
return part;
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* Sanitize multiple path components in one call.
|
|
42
|
+
*/
|
|
43
|
+
export function sanitizePathParts(...parts) {
|
|
44
|
+
return parts.map(sanitizePathPart);
|
|
45
|
+
}
|
|
46
|
+
/**
|
|
47
|
+
* SEC-17: atomically write a file by writing to a temp sibling and
|
|
48
|
+
* renaming over the target. Survives process kill mid-write without
|
|
49
|
+
* corrupting the destination.
|
|
50
|
+
*/
|
|
51
|
+
export function atomicWriteFileSync(targetPath, data, options = {}) {
|
|
52
|
+
const dir = path.dirname(targetPath);
|
|
53
|
+
if (!fs.existsSync(dir)) {
|
|
54
|
+
fs.mkdirSync(dir, { recursive: true });
|
|
55
|
+
}
|
|
56
|
+
// Unique temp name so concurrent writers don't clobber each other
|
|
57
|
+
const tmpPath = path.join(dir, `.${path.basename(targetPath)}.${crypto.randomBytes(6).toString('hex')}.tmp`);
|
|
58
|
+
let fd = null;
|
|
59
|
+
try {
|
|
60
|
+
fd = fs.openSync(tmpPath, 'w', options.mode ?? 0o600);
|
|
61
|
+
const buf = typeof data === 'string'
|
|
62
|
+
? Buffer.from(data, options.encoding ?? 'utf8')
|
|
63
|
+
: Buffer.from(data);
|
|
64
|
+
fs.writeSync(fd, buf, 0, buf.length, 0);
|
|
65
|
+
fs.fsyncSync(fd);
|
|
66
|
+
fs.closeSync(fd);
|
|
67
|
+
fd = null;
|
|
68
|
+
fs.renameSync(tmpPath, targetPath);
|
|
69
|
+
}
|
|
70
|
+
catch (err) {
|
|
71
|
+
if (fd !== null) {
|
|
72
|
+
try {
|
|
73
|
+
fs.closeSync(fd);
|
|
74
|
+
}
|
|
75
|
+
catch {
|
|
76
|
+
/* ignore */
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
try {
|
|
80
|
+
fs.unlinkSync(tmpPath);
|
|
81
|
+
}
|
|
82
|
+
catch {
|
|
83
|
+
/* ignore */
|
|
84
|
+
}
|
|
85
|
+
throw err;
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
//# sourceMappingURL=path-validation.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"path-validation.js","sourceRoot":"","sources":["../../../src/utils/path-validation.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Bitwarden CLI secret provider for AgentVault
|
|
3
|
+
*
|
|
4
|
+
* Uses the official Bitwarden CLI (`bw`) as a secret backend alternative to
|
|
5
|
+
* HashiCorp Vault. Secrets are stored as Bitwarden "Secure Note" items with
|
|
6
|
+
* a naming convention of `agentvault/<agentId>/<key>`.
|
|
7
|
+
*
|
|
8
|
+
* Prerequisites:
|
|
9
|
+
* 1. Install the Bitwarden CLI: https://bitwarden.com/help/cli/
|
|
10
|
+
* brew install bitwarden-cli (macOS)
|
|
11
|
+
* npm install -g @bitwarden/cli
|
|
12
|
+
* 2. Log in and unlock:
|
|
13
|
+
* bw login
|
|
14
|
+
* export BW_SESSION="$(bw unlock --raw)"
|
|
15
|
+
*
|
|
16
|
+
* The provider reads BW_SESSION from the environment at construction time.
|
|
17
|
+
* It never stores the session key or any secret value on disk.
|
|
18
|
+
*/
|
|
19
|
+
import type { SecretProvider, SecretProviderHealth } from './provider.js';
|
|
20
|
+
export interface BitwardenConfig {
|
|
21
|
+
/** BW_SESSION unlock token. Defaults to `process.env.BW_SESSION`. */
|
|
22
|
+
session?: string;
|
|
23
|
+
/** Agent identifier used to namespace secret names. */
|
|
24
|
+
agentId: string;
|
|
25
|
+
/**
|
|
26
|
+
* Path to the `bw` binary. Defaults to `bw` (resolved via PATH).
|
|
27
|
+
*/
|
|
28
|
+
bwBin?: string;
|
|
29
|
+
}
|
|
30
|
+
export declare class BitwardenProvider implements SecretProvider {
|
|
31
|
+
readonly name = "Bitwarden CLI";
|
|
32
|
+
private readonly agentId;
|
|
33
|
+
private readonly bwBin;
|
|
34
|
+
private readonly session;
|
|
35
|
+
constructor(config: BitwardenConfig);
|
|
36
|
+
/** Namespaced item name for a given secret key. */
|
|
37
|
+
private itemName;
|
|
38
|
+
/**
|
|
39
|
+
* Run a `bw` sub-command with the session token injected.
|
|
40
|
+
* stderr is surfaced only when the command fails.
|
|
41
|
+
*/
|
|
42
|
+
private bw;
|
|
43
|
+
/** Parse JSON output from `bw`, returning null on empty or non-JSON output. */
|
|
44
|
+
private tryParseJSON;
|
|
45
|
+
getSecret(key: string): Promise<string | null>;
|
|
46
|
+
storeSecret(key: string, value: string): Promise<void>;
|
|
47
|
+
listSecrets(): Promise<string[]>;
|
|
48
|
+
deleteSecret(key: string): Promise<void>;
|
|
49
|
+
healthCheck(): Promise<SecretProviderHealth>;
|
|
50
|
+
}
|
|
51
|
+
//# sourceMappingURL=bitwarden.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bitwarden.d.ts","sourceRoot":"","sources":["../../../src/vault/bitwarden.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAIH,OAAO,KAAK,EAAE,cAAc,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAC;AAsB1E,MAAM,WAAW,eAAe;IAC9B,sEAAsE;IACtE,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,uDAAuD;IACvD,OAAO,EAAE,MAAM,CAAC;IAChB;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,qBAAa,iBAAkB,YAAW,cAAc;IACtD,QAAQ,CAAC,IAAI,mBAAmB;IAEhC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;IACjC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAS;IAC/B,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;gBAErB,MAAM,EAAE,eAAe;IAenC,mDAAmD;IACnD,OAAO,CAAC,QAAQ;IAIhB;;;OAGG;YACW,EAAE;IAsBhB,+EAA+E;IAC/E,OAAO,CAAC,YAAY;IASd,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAc9C,WAAW,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IA+BtD,WAAW,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IAchC,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAUxC,WAAW,IAAI,OAAO,CAAC,oBAAoB,CAAC;CA+BnD"}
|
|
@@ -0,0 +1,172 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Bitwarden CLI secret provider for AgentVault
|
|
3
|
+
*
|
|
4
|
+
* Uses the official Bitwarden CLI (`bw`) as a secret backend alternative to
|
|
5
|
+
* HashiCorp Vault. Secrets are stored as Bitwarden "Secure Note" items with
|
|
6
|
+
* a naming convention of `agentvault/<agentId>/<key>`.
|
|
7
|
+
*
|
|
8
|
+
* Prerequisites:
|
|
9
|
+
* 1. Install the Bitwarden CLI: https://bitwarden.com/help/cli/
|
|
10
|
+
* brew install bitwarden-cli (macOS)
|
|
11
|
+
* npm install -g @bitwarden/cli
|
|
12
|
+
* 2. Log in and unlock:
|
|
13
|
+
* bw login
|
|
14
|
+
* export BW_SESSION="$(bw unlock --raw)"
|
|
15
|
+
*
|
|
16
|
+
* The provider reads BW_SESSION from the environment at construction time.
|
|
17
|
+
* It never stores the session key or any secret value on disk.
|
|
18
|
+
*/
|
|
19
|
+
import { execFile } from 'node:child_process';
|
|
20
|
+
import { promisify } from 'node:util';
|
|
21
|
+
const execFileAsync = promisify(execFile);
|
|
22
|
+
export class BitwardenProvider {
|
|
23
|
+
name = 'Bitwarden CLI';
|
|
24
|
+
agentId;
|
|
25
|
+
bwBin;
|
|
26
|
+
session;
|
|
27
|
+
constructor(config) {
|
|
28
|
+
this.agentId = config.agentId;
|
|
29
|
+
this.bwBin = config.bwBin ?? 'bw';
|
|
30
|
+
const session = config.session ?? process.env.BW_SESSION;
|
|
31
|
+
if (!session) {
|
|
32
|
+
throw new Error('Bitwarden session key is required. ' +
|
|
33
|
+
'Run `bw unlock --raw` and set BW_SESSION, ' +
|
|
34
|
+
'or pass the session via BitwardenConfig.session.');
|
|
35
|
+
}
|
|
36
|
+
this.session = session;
|
|
37
|
+
}
|
|
38
|
+
/** Namespaced item name for a given secret key. */
|
|
39
|
+
itemName(key) {
|
|
40
|
+
return `agentvault/${this.agentId}/${key}`;
|
|
41
|
+
}
|
|
42
|
+
/**
|
|
43
|
+
* Run a `bw` sub-command with the session token injected.
|
|
44
|
+
* stderr is surfaced only when the command fails.
|
|
45
|
+
*/
|
|
46
|
+
async bw(args) {
|
|
47
|
+
const env = {
|
|
48
|
+
...process.env,
|
|
49
|
+
BW_SESSION: this.session,
|
|
50
|
+
};
|
|
51
|
+
const { stdout, stderr } = await execFileAsync(this.bwBin, args, {
|
|
52
|
+
env,
|
|
53
|
+
maxBuffer: 10 * 1024 * 1024, // 10 MB
|
|
54
|
+
}).catch((err) => {
|
|
55
|
+
// execFile rejects on non-zero exit; surface stderr for diagnostics
|
|
56
|
+
const detail = err.stderr?.trim() || err.message;
|
|
57
|
+
throw new Error(`bw ${args[0]} failed: ${detail}`);
|
|
58
|
+
});
|
|
59
|
+
if (stderr?.trim()) {
|
|
60
|
+
// Non-fatal stderr (e.g. sync messages) – ignore
|
|
61
|
+
}
|
|
62
|
+
return stdout.trim();
|
|
63
|
+
}
|
|
64
|
+
/** Parse JSON output from `bw`, returning null on empty or non-JSON output. */
|
|
65
|
+
tryParseJSON(raw) {
|
|
66
|
+
if (!raw)
|
|
67
|
+
return null;
|
|
68
|
+
try {
|
|
69
|
+
return JSON.parse(raw);
|
|
70
|
+
}
|
|
71
|
+
catch {
|
|
72
|
+
return null;
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
async getSecret(key) {
|
|
76
|
+
const name = this.itemName(key);
|
|
77
|
+
try {
|
|
78
|
+
const raw = await this.bw(['get', 'item', name, '--nointeraction']);
|
|
79
|
+
const item = this.tryParseJSON(raw);
|
|
80
|
+
return item?.notes ?? null;
|
|
81
|
+
}
|
|
82
|
+
catch (err) {
|
|
83
|
+
const msg = err instanceof Error ? err.message : String(err);
|
|
84
|
+
// Bitwarden returns non-zero when the item doesn't exist
|
|
85
|
+
if (msg.includes('Not found') || msg.includes('No results'))
|
|
86
|
+
return null;
|
|
87
|
+
throw err;
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
async storeSecret(key, value) {
|
|
91
|
+
const name = this.itemName(key);
|
|
92
|
+
// Check if the item already exists so we can update vs create
|
|
93
|
+
let existingId = null;
|
|
94
|
+
try {
|
|
95
|
+
const raw = await this.bw(['get', 'item', name, '--nointeraction']);
|
|
96
|
+
const item = this.tryParseJSON(raw);
|
|
97
|
+
existingId = item?.id ?? null;
|
|
98
|
+
}
|
|
99
|
+
catch {
|
|
100
|
+
existingId = null;
|
|
101
|
+
}
|
|
102
|
+
// Build Bitwarden item JSON (type 2 = Secure Note)
|
|
103
|
+
const payload = JSON.stringify({
|
|
104
|
+
type: 2,
|
|
105
|
+
name,
|
|
106
|
+
notes: value,
|
|
107
|
+
secureNote: { type: 0 },
|
|
108
|
+
});
|
|
109
|
+
// Encode to base64 as required by `bw create`
|
|
110
|
+
const encoded = Buffer.from(payload).toString('base64');
|
|
111
|
+
if (existingId) {
|
|
112
|
+
await this.bw(['edit', 'item', existingId, encoded, '--nointeraction']);
|
|
113
|
+
}
|
|
114
|
+
else {
|
|
115
|
+
await this.bw(['create', 'item', encoded, '--nointeraction']);
|
|
116
|
+
}
|
|
117
|
+
}
|
|
118
|
+
async listSecrets() {
|
|
119
|
+
const prefix = `agentvault/${this.agentId}/`;
|
|
120
|
+
try {
|
|
121
|
+
const raw = await this.bw(['list', 'items', '--search', `agentvault/${this.agentId}`, '--nointeraction']);
|
|
122
|
+
const items = this.tryParseJSON(raw);
|
|
123
|
+
if (!items)
|
|
124
|
+
return [];
|
|
125
|
+
return items
|
|
126
|
+
.filter((i) => i.name.startsWith(prefix))
|
|
127
|
+
.map((i) => i.name.slice(prefix.length));
|
|
128
|
+
}
|
|
129
|
+
catch {
|
|
130
|
+
return [];
|
|
131
|
+
}
|
|
132
|
+
}
|
|
133
|
+
async deleteSecret(key) {
|
|
134
|
+
const name = this.itemName(key);
|
|
135
|
+
const raw = await this.bw(['get', 'item', name, '--nointeraction']);
|
|
136
|
+
const item = this.tryParseJSON(raw);
|
|
137
|
+
if (!item) {
|
|
138
|
+
throw new Error(`Secret "${key}" not found in Bitwarden`);
|
|
139
|
+
}
|
|
140
|
+
await this.bw(['delete', 'item', item.id, '--nointeraction']);
|
|
141
|
+
}
|
|
142
|
+
async healthCheck() {
|
|
143
|
+
try {
|
|
144
|
+
const raw = await this.bw(['status', '--nointeraction']);
|
|
145
|
+
const status = this.tryParseJSON(raw);
|
|
146
|
+
if (!status) {
|
|
147
|
+
return { healthy: false, message: 'Could not parse bw status output' };
|
|
148
|
+
}
|
|
149
|
+
if (status.status === 'unauthenticated') {
|
|
150
|
+
return { healthy: false, message: 'Bitwarden: not logged in. Run `bw login`.' };
|
|
151
|
+
}
|
|
152
|
+
if (status.status === 'locked') {
|
|
153
|
+
return { healthy: false, message: 'Bitwarden: vault is locked. Run `bw unlock`.' };
|
|
154
|
+
}
|
|
155
|
+
return {
|
|
156
|
+
healthy: true,
|
|
157
|
+
message: `Bitwarden: unlocked (${status.userEmail})`,
|
|
158
|
+
};
|
|
159
|
+
}
|
|
160
|
+
catch (err) {
|
|
161
|
+
const msg = err instanceof Error ? err.message : String(err);
|
|
162
|
+
if (msg.includes('command not found') || msg.includes('ENOENT')) {
|
|
163
|
+
return {
|
|
164
|
+
healthy: false,
|
|
165
|
+
message: 'Bitwarden CLI (bw) not found. Install it: npm i -g @bitwarden/cli',
|
|
166
|
+
};
|
|
167
|
+
}
|
|
168
|
+
return { healthy: false, message: `Bitwarden health check failed: ${msg}` };
|
|
169
|
+
}
|
|
170
|
+
}
|
|
171
|
+
}
|
|
172
|
+
//# sourceMappingURL=bitwarden.js.map
|