agentvault 1.0.2 → 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 +357 -1
- 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.map +1 -0
- package/dist/cli/commands/backup.d.ts.map +1 -0
- package/dist/cli/commands/backup.js +303 -20
- 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 +17 -0
- 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.map +1 -0
- package/dist/cli/commands/deploy.d.ts.map +1 -0
- 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.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 +68 -4
- 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.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 +18 -1
- package/dist/cli/commands/init.d.ts.map +1 -0
- package/dist/cli/commands/init.js +152 -27
- 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.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.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 +1 -1
- 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.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.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 +2 -0
- package/dist/cli/commands/status.d.ts.map +1 -0
- package/dist/cli/commands/status.js +25 -0
- 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 +3 -3
- 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.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 +2 -26
- package/dist/cli/commands/wallet-sign.js.map +1 -0
- package/dist/cli/commands/wallet.d.ts +61 -0
- package/dist/cli/commands/wallet.d.ts.map +1 -0
- package/dist/cli/commands/wallet.js +312 -42
- 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.map +1 -0
- package/dist/cli/index.js +74 -2
- 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 +4 -0
- package/dist/src/archival/archive-manager.d.ts.map +1 -0
- package/dist/src/archival/archive-manager.js +6 -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 +1 -0
- package/dist/src/archival/arweave-client.d.ts.map +1 -0
- package/dist/src/archival/arweave-client.js +5 -2
- package/dist/src/archival/arweave-client.js.map +1 -0
- package/dist/src/archival/index.d.ts +4 -1
- package/dist/src/archival/index.d.ts.map +1 -0
- package/dist/src/archival/index.js +2 -1
- 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 +107 -1
- package/dist/src/backup/backup.d.ts.map +1 -0
- package/dist/src/backup/backup.js +413 -4
- package/dist/src/backup/backup.js.map +1 -0
- package/dist/src/backup/index.d.ts +3 -1
- package/dist/src/backup/index.d.ts.map +1 -0
- package/dist/src/backup/index.js +3 -1
- 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.map +1 -0
- package/dist/src/cloud-storage/cloud-sync.js +10 -5
- package/dist/src/cloud-storage/cloud-sync.js.map +1 -0
- package/dist/src/cloud-storage/index.d.ts.map +1 -0
- package/dist/src/cloud-storage/index.js.map +1 -0
- package/dist/src/cloud-storage/provider-detector.d.ts.map +1 -0
- package/dist/src/cloud-storage/provider-detector.js.map +1 -0
- package/dist/src/cloud-storage/types.d.ts +5 -0
- package/dist/src/cloud-storage/types.d.ts.map +1 -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 +1 -0
- package/dist/src/debugging/index.d.ts.map +1 -0
- package/dist/src/debugging/index.js +1 -0
- package/dist/src/debugging/index.js.map +1 -0
- package/dist/src/debugging/logs.d.ts.map +1 -0
- package/dist/src/debugging/logs.js.map +1 -0
- package/dist/src/debugging/types.d.ts.map +1 -0
- package/dist/src/debugging/types.js.map +1 -0
- package/dist/src/deployment/deployer.d.ts.map +1 -0
- package/dist/src/deployment/deployer.js +133 -1
- package/dist/src/deployment/deployer.js.map +1 -0
- package/dist/src/deployment/icpClient.d.ts.map +1 -0
- package/dist/src/deployment/icpClient.js +4 -0
- package/dist/src/deployment/icpClient.js.map +1 -0
- package/dist/src/deployment/index.d.ts.map +1 -0
- package/dist/src/deployment/index.js.map +1 -0
- package/dist/src/deployment/promotion.d.ts.map +1 -0
- package/dist/src/deployment/promotion.js.map +1 -0
- package/dist/src/deployment/types.d.ts +2 -1
- package/dist/src/deployment/types.d.ts.map +1 -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.map +1 -0
- package/dist/src/icp/batch.js +10 -4
- package/dist/src/icp/batch.js.map +1 -0
- package/dist/src/icp/cycles.d.ts.map +1 -0
- package/dist/src/icp/cycles.js.map +1 -0
- package/dist/src/icp/environment.d.ts.map +1 -0
- package/dist/src/icp/environment.js.map +1 -0
- package/dist/src/icp/icpcli.d.ts.map +1 -0
- package/dist/src/icp/icpcli.js.map +1 -0
- package/dist/src/icp/icwasm.d.ts.map +1 -0
- package/dist/src/icp/icwasm.js.map +1 -0
- package/dist/src/icp/identity.d.ts.map +1 -0
- package/dist/src/icp/identity.js.map +1 -0
- package/dist/src/icp/index.d.ts.map +1 -0
- package/dist/src/icp/index.js.map +1 -0
- package/dist/src/icp/optimization.d.ts.map +1 -0
- package/dist/src/icp/optimization.js.map +1 -0
- package/dist/src/icp/tokens.d.ts.map +1 -0
- package/dist/src/icp/tokens.js.map +1 -0
- package/dist/src/icp/tool-detector.d.ts.map +1 -0
- package/dist/src/icp/tool-detector.js +19 -5
- package/dist/src/icp/tool-detector.js.map +1 -0
- package/dist/src/icp/types.d.ts.map +1 -0
- package/dist/src/icp/types.js.map +1 -0
- package/dist/src/index.d.ts +1 -1
- package/dist/src/index.d.ts.map +1 -0
- package/dist/src/index.js +22 -1
- package/dist/src/index.js.map +1 -0
- package/dist/src/inference/bittensor-client.d.ts +54 -1
- package/dist/src/inference/bittensor-client.d.ts.map +1 -0
- package/dist/src/inference/bittensor-client.js +96 -3
- 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 +6 -1
- package/dist/src/inference/index.d.ts.map +1 -0
- package/dist/src/inference/index.js +6 -1
- package/dist/src/inference/index.js.map +1 -0
- package/dist/src/inference/inference-manager.d.ts.map +1 -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.map +1 -0
- package/dist/src/metrics/index.js.map +1 -0
- package/dist/src/metrics/metrics.d.ts.map +1 -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.map +1 -0
- package/dist/src/monitoring/alerting.js.map +1 -0
- package/dist/src/monitoring/health.d.ts +9 -1
- package/dist/src/monitoring/health.d.ts.map +1 -0
- package/dist/src/monitoring/health.js +63 -0
- package/dist/src/monitoring/health.js.map +1 -0
- package/dist/src/monitoring/index.d.ts +2 -2
- package/dist/src/monitoring/index.d.ts.map +1 -0
- package/dist/src/monitoring/index.js +1 -1
- package/dist/src/monitoring/index.js.map +1 -0
- package/dist/src/monitoring/info.d.ts.map +1 -0
- package/dist/src/monitoring/info.js.map +1 -0
- package/dist/src/monitoring/types.d.ts +26 -0
- package/dist/src/monitoring/types.d.ts.map +1 -0
- package/dist/src/monitoring/types.js.map +1 -0
- package/dist/src/network/index.d.ts.map +1 -0
- package/dist/src/network/index.js.map +1 -0
- package/dist/src/network/network-config.d.ts.map +1 -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.map +1 -0
- package/dist/src/packaging/compiler.js.map +1 -0
- package/dist/src/packaging/config-persistence.d.ts.map +1 -0
- package/dist/src/packaging/config-persistence.js.map +1 -0
- package/dist/src/packaging/config-schemas.d.ts +44 -2
- package/dist/src/packaging/config-schemas.d.ts.map +1 -0
- package/dist/src/packaging/config-schemas.js +19 -0
- package/dist/src/packaging/config-schemas.js.map +1 -0
- package/dist/src/packaging/detector.d.ts.map +1 -0
- package/dist/src/packaging/detector.js +15 -1
- package/dist/src/packaging/detector.js.map +1 -0
- package/dist/src/packaging/index.d.ts +11 -5
- package/dist/src/packaging/index.d.ts.map +1 -0
- package/dist/src/packaging/index.js +10 -4
- package/dist/src/packaging/index.js.map +1 -0
- package/dist/src/packaging/packager.d.ts.map +1 -0
- package/dist/src/packaging/packager.js.map +1 -0
- package/dist/src/packaging/parsers/clawdbot.d.ts +1 -1
- package/dist/src/packaging/parsers/clawdbot.d.ts.map +1 -0
- package/dist/src/packaging/parsers/clawdbot.js +26 -28
- package/dist/src/packaging/parsers/clawdbot.js.map +1 -0
- package/dist/src/packaging/parsers/cline.d.ts.map +1 -0
- package/dist/src/packaging/parsers/cline.js.map +1 -0
- package/dist/src/packaging/parsers/generic.d.ts +1 -1
- package/dist/src/packaging/parsers/generic.d.ts.map +1 -0
- package/dist/src/packaging/parsers/generic.js +13 -20
- package/dist/src/packaging/parsers/generic.js.map +1 -0
- package/dist/src/packaging/parsers/goose.d.ts.map +1 -0
- package/dist/src/packaging/parsers/goose.js.map +1 -0
- package/dist/src/packaging/parsers/index.d.ts +2 -0
- package/dist/src/packaging/parsers/index.d.ts.map +1 -0
- package/dist/src/packaging/parsers/index.js +2 -0
- 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 +7 -1
- package/dist/src/packaging/serializer.d.ts.map +1 -0
- package/dist/src/packaging/serializer.js +14 -3
- 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 +2 -2
- package/dist/src/packaging/types.d.ts.map +1 -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.map +1 -0
- package/dist/src/packaging/wasmedge-compiler.js +6 -4
- 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 +7 -1
- package/dist/src/security/index.d.ts.map +1 -0
- package/dist/src/security/index.js +12 -2
- 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.map +1 -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 +7 -2
- package/dist/src/security/types.d.ts.map +1 -0
- package/dist/src/security/types.js +14 -14
- package/dist/src/security/types.js.map +1 -0
- package/dist/src/security/vetkeys.d.ts +43 -0
- package/dist/src/security/vetkeys.d.ts.map +1 -0
- package/dist/src/security/vetkeys.js +144 -15
- 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.map +1 -0
- package/dist/src/testing/index.js.map +1 -0
- package/dist/src/testing/local-runner.d.ts.map +1 -0
- package/dist/src/testing/local-runner.js.map +1 -0
- package/dist/src/testing/types.d.ts.map +1 -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.map +1 -0
- package/dist/src/wallet/cbor-serializer.js +7 -2
- package/dist/src/wallet/cbor-serializer.js.map +1 -0
- package/dist/src/wallet/chain-dispatcher.d.ts +1 -1
- package/dist/src/wallet/chain-dispatcher.d.ts.map +1 -0
- package/dist/src/wallet/chain-dispatcher.js +8 -19
- package/dist/src/wallet/chain-dispatcher.js.map +1 -0
- package/dist/src/wallet/cross-chain-aggregator.d.ts.map +1 -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 +8 -2
- package/dist/src/wallet/index.d.ts.map +1 -0
- package/dist/src/wallet/index.js +9 -2
- package/dist/src/wallet/index.js.map +1 -0
- package/dist/src/wallet/key-derivation.d.ts +29 -1
- package/dist/src/wallet/key-derivation.d.ts.map +1 -0
- package/dist/src/wallet/key-derivation.js +106 -23
- 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.map +1 -0
- package/dist/src/wallet/providers/base-provider.js.map +1 -0
- package/dist/src/wallet/providers/cketh-provider.d.ts.map +1 -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.map +1 -0
- package/dist/src/wallet/providers/polkadot-provider.js +5 -6
- 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.map +1 -0
- package/dist/src/wallet/providers/solana-provider.js +6 -7
- 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.map +1 -0
- package/dist/src/wallet/transaction-queue.js.map +1 -0
- package/dist/src/wallet/types.d.ts +57 -2
- package/dist/src/wallet/types.d.ts.map +1 -0
- package/dist/src/wallet/types.js.map +1 -0
- package/dist/src/wallet/vetkeys-adapter.d.ts.map +1 -0
- package/dist/src/wallet/vetkeys-adapter.js +16 -25
- 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 +24 -4
- package/dist/src/wallet/wallet-manager.d.ts.map +1 -0
- package/dist/src/wallet/wallet-manager.js +70 -3
- package/dist/src/wallet/wallet-manager.js.map +1 -0
- package/dist/src/wallet/wallet-storage.d.ts +15 -7
- package/dist/src/wallet/wallet-storage.d.ts.map +1 -0
- package/dist/src/wallet/wallet-storage.js +34 -18
- 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 +35 -11
- package/.claude/settings.local.json +0 -9
- 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/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/macos-wallet-app/AgentVaultWallet/App/AgentVaultWalletApp.swift +0 -54
- package/macos-wallet-app/AgentVaultWallet/Models/AppState.swift +0 -102
- package/macos-wallet-app/AgentVaultWallet/Models/Chain.swift +0 -121
- package/macos-wallet-app/AgentVaultWallet/Models/Wallet.swift +0 -98
- package/macos-wallet-app/AgentVaultWallet/Resources/AgentVaultWallet.entitlements +0 -27
- package/macos-wallet-app/AgentVaultWallet/Resources/Info.plist +0 -69
- package/macos-wallet-app/AgentVaultWallet/Services/BackupService.swift +0 -270
- package/macos-wallet-app/AgentVaultWallet/Services/CLIBridge.swift +0 -367
- package/macos-wallet-app/AgentVaultWallet/Services/CryptoService.swift +0 -157
- package/macos-wallet-app/AgentVaultWallet/Services/FileService.swift +0 -120
- package/macos-wallet-app/AgentVaultWallet/Services/KeychainService.swift +0 -219
- package/macos-wallet-app/AgentVaultWallet/Utilities/Constants.swift +0 -44
- package/macos-wallet-app/AgentVaultWallet/Utilities/Extensions.swift +0 -115
- package/macos-wallet-app/AgentVaultWallet/ViewModels/BackupViewModel.swift +0 -237
- package/macos-wallet-app/AgentVaultWallet/ViewModels/CreateWalletViewModel.swift +0 -137
- package/macos-wallet-app/AgentVaultWallet/ViewModels/ImportWalletViewModel.swift +0 -179
- package/macos-wallet-app/AgentVaultWallet/ViewModels/WalletStore.swift +0 -286
- package/macos-wallet-app/AgentVaultWallet/Views/Backup/BackupView.swift +0 -235
- package/macos-wallet-app/AgentVaultWallet/Views/Backup/RestoreView.swift +0 -316
- package/macos-wallet-app/AgentVaultWallet/Views/Create/CreateWalletFlow.swift +0 -438
- package/macos-wallet-app/AgentVaultWallet/Views/Import/ImportWalletFlow.swift +0 -399
- package/macos-wallet-app/AgentVaultWallet/Views/MainView.swift +0 -134
- package/macos-wallet-app/AgentVaultWallet/Views/Settings/SettingsView.swift +0 -276
- package/macos-wallet-app/AgentVaultWallet/Views/Sidebar/SidebarView.swift +0 -133
- package/macos-wallet-app/AgentVaultWallet/Views/Wallet/DashboardView.swift +0 -233
- package/macos-wallet-app/AgentVaultWallet/Views/Wallet/WalletDetailView.swift +0 -281
- package/macos-wallet-app/AgentVaultWallet/Views/Wallet/WalletListView.swift +0 -280
- package/macos-wallet-app/AgentVaultWallet/Views/Welcome/WelcomeView.swift +0 -176
- package/macos-wallet-app/Makefile +0 -47
- package/macos-wallet-app/project.yml +0 -40
- package/macos-wallet-app/setup.sh +0 -73
- package/pnpm-workspace.yaml +0 -5
- package/vercel.json +0 -8
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Local Model Client
|
|
3
|
+
*
|
|
4
|
+
* Provides inference via a locally running model server (e.g. Ollama).
|
|
5
|
+
* Used as the final fallback when both Bittensor and Venice AI are unreachable.
|
|
6
|
+
* Cost is always zero (free local compute).
|
|
7
|
+
*
|
|
8
|
+
* Ollama API reference: https://github.com/ollama/ollama/blob/main/docs/api.md
|
|
9
|
+
*/
|
|
10
|
+
export class LocalModelClient {
|
|
11
|
+
config;
|
|
12
|
+
constructor(config = {}) {
|
|
13
|
+
this.config = {
|
|
14
|
+
endpoint: config.endpoint ?? process.env['LOCAL_MODEL_ENDPOINT'] ?? 'http://localhost:11434',
|
|
15
|
+
model: config.model ?? process.env['LOCAL_MODEL_NAME'] ?? 'llama3',
|
|
16
|
+
timeout: config.timeout ?? 60_000,
|
|
17
|
+
};
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* Send an inference request to the local model server.
|
|
21
|
+
* Uses Ollama's /api/generate endpoint (chat-style prompt).
|
|
22
|
+
*/
|
|
23
|
+
async infer(request) {
|
|
24
|
+
const startTime = Date.now();
|
|
25
|
+
const controller = new AbortController();
|
|
26
|
+
const timer = setTimeout(() => controller.abort(), this.config.timeout);
|
|
27
|
+
try {
|
|
28
|
+
const fullPrompt = request.systemPrompt
|
|
29
|
+
? `${request.systemPrompt}\n\n${request.prompt}`
|
|
30
|
+
: request.prompt;
|
|
31
|
+
const body = JSON.stringify({
|
|
32
|
+
model: this.config.model,
|
|
33
|
+
prompt: fullPrompt,
|
|
34
|
+
stream: false,
|
|
35
|
+
options: {
|
|
36
|
+
num_predict: request.maxTokens ?? 2048,
|
|
37
|
+
temperature: request.temperature ?? 0.7,
|
|
38
|
+
},
|
|
39
|
+
});
|
|
40
|
+
const response = await fetch(`${this.config.endpoint}/api/generate`, {
|
|
41
|
+
method: 'POST',
|
|
42
|
+
headers: { 'Content-Type': 'application/json' },
|
|
43
|
+
body,
|
|
44
|
+
signal: controller.signal,
|
|
45
|
+
});
|
|
46
|
+
clearTimeout(timer);
|
|
47
|
+
const responseTime = Date.now() - startTime;
|
|
48
|
+
if (!response.ok) {
|
|
49
|
+
const errText = await response.text().catch(() => response.statusText);
|
|
50
|
+
return {
|
|
51
|
+
success: false,
|
|
52
|
+
estimatedCostUsd: 0,
|
|
53
|
+
error: `Local model error ${response.status}: ${errText}`,
|
|
54
|
+
};
|
|
55
|
+
}
|
|
56
|
+
const data = (await response.json());
|
|
57
|
+
return {
|
|
58
|
+
success: true,
|
|
59
|
+
text: data.response ?? '',
|
|
60
|
+
model: data.model ?? this.config.model,
|
|
61
|
+
estimatedCostUsd: 0,
|
|
62
|
+
responseTime,
|
|
63
|
+
};
|
|
64
|
+
}
|
|
65
|
+
catch (error) {
|
|
66
|
+
clearTimeout(timer);
|
|
67
|
+
return {
|
|
68
|
+
success: false,
|
|
69
|
+
estimatedCostUsd: 0,
|
|
70
|
+
error: error instanceof Error ? error.message : 'Local model unavailable',
|
|
71
|
+
};
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
/**
|
|
75
|
+
* Quick connectivity check – returns true if the local model server responds.
|
|
76
|
+
*/
|
|
77
|
+
async isAvailable() {
|
|
78
|
+
try {
|
|
79
|
+
const controller = new AbortController();
|
|
80
|
+
const timer = setTimeout(() => controller.abort(), 3_000);
|
|
81
|
+
const response = await fetch(`${this.config.endpoint}/api/tags`, {
|
|
82
|
+
signal: controller.signal,
|
|
83
|
+
});
|
|
84
|
+
clearTimeout(timer);
|
|
85
|
+
return response.ok;
|
|
86
|
+
}
|
|
87
|
+
catch {
|
|
88
|
+
return false;
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
//# sourceMappingURL=local-model-client.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"local-model-client.js","sourceRoot":"","sources":["../../../src/inference/local-model-client.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Secure Inference Engine
|
|
3
|
+
*
|
|
4
|
+
* Orchestrates a three-tier provider fallback chain for AI inference:
|
|
5
|
+
*
|
|
6
|
+
* 1. Venice AI — privacy-preserving cloud inference with ephemeral keys
|
|
7
|
+
* 2. Bittensor — decentralised network inference
|
|
8
|
+
* 3. Local — Ollama-compatible local model (zero external dependency)
|
|
9
|
+
*
|
|
10
|
+
* At every tier, a structured cost entry is appended to a daily JSONL log.
|
|
11
|
+
* The log contains provider, model, token counts, cost, and latency — never
|
|
12
|
+
* any API key or prompt content.
|
|
13
|
+
*
|
|
14
|
+
* Security guarantee (zero key exposure):
|
|
15
|
+
* • Venice ephemeral keys are created, used, and revoked inside VeniceClient.
|
|
16
|
+
* • All error messages are sanitised before reaching this layer.
|
|
17
|
+
* • Nothing key-shaped is ever passed to the cost logger or any file write.
|
|
18
|
+
*/
|
|
19
|
+
import { type EphemeralVeniceConfig } from './venice-client.js';
|
|
20
|
+
import { type LocalModelConfig } from './local-model-client.js';
|
|
21
|
+
import { type BittensorConfig } from './bittensor-client.js';
|
|
22
|
+
import { type InferenceProvider } from './fallback-chain.js';
|
|
23
|
+
export type { InferenceProvider };
|
|
24
|
+
export interface SecureInferenceRequest {
|
|
25
|
+
prompt: string;
|
|
26
|
+
model?: string;
|
|
27
|
+
maxTokens?: number;
|
|
28
|
+
temperature?: number;
|
|
29
|
+
systemPrompt?: string;
|
|
30
|
+
/** Bittensor subnet UID — used when the Bittensor fallback is reached. */
|
|
31
|
+
bittensorNetuid?: number;
|
|
32
|
+
}
|
|
33
|
+
export interface SecureInferenceResult {
|
|
34
|
+
success: boolean;
|
|
35
|
+
text?: string;
|
|
36
|
+
provider: InferenceProvider;
|
|
37
|
+
model?: string;
|
|
38
|
+
/** Estimated cost in USD for the chosen provider. */
|
|
39
|
+
cost: number;
|
|
40
|
+
responseTime: number;
|
|
41
|
+
/** Sanitised error message (no key material). */
|
|
42
|
+
error?: string;
|
|
43
|
+
/** Which providers were tried before this one succeeded. */
|
|
44
|
+
fallbackChain: InferenceProvider[];
|
|
45
|
+
}
|
|
46
|
+
/**
|
|
47
|
+
* Structured cost entry written to the daily JSONL log.
|
|
48
|
+
* MUST NOT contain any API key material.
|
|
49
|
+
*/
|
|
50
|
+
interface CostLogEntry {
|
|
51
|
+
timestamp: string;
|
|
52
|
+
provider: InferenceProvider;
|
|
53
|
+
model: string;
|
|
54
|
+
cost_usd: number;
|
|
55
|
+
duration_ms: number;
|
|
56
|
+
tokens?: {
|
|
57
|
+
prompt: number;
|
|
58
|
+
completion: number;
|
|
59
|
+
};
|
|
60
|
+
success: boolean;
|
|
61
|
+
}
|
|
62
|
+
export interface SecureInferenceConfig {
|
|
63
|
+
venice?: EphemeralVeniceConfig;
|
|
64
|
+
bittensor?: BittensorConfig;
|
|
65
|
+
local?: LocalModelConfig;
|
|
66
|
+
/** Override the default Bittensor netuid (default: 18 — text-generation). */
|
|
67
|
+
defaultBittensorNetuid?: number;
|
|
68
|
+
}
|
|
69
|
+
/**
|
|
70
|
+
* Three-tier secure inference engine.
|
|
71
|
+
*
|
|
72
|
+
* Usage:
|
|
73
|
+
* ```ts
|
|
74
|
+
* const engine = new SecureInferenceEngine();
|
|
75
|
+
* const result = await engine.generate({ prompt: 'Hello' });
|
|
76
|
+
* console.log(result.text, result.provider, result.cost);
|
|
77
|
+
* ```
|
|
78
|
+
*/
|
|
79
|
+
export declare class SecureInferenceEngine {
|
|
80
|
+
private readonly venice;
|
|
81
|
+
private readonly bittensor;
|
|
82
|
+
private readonly local;
|
|
83
|
+
private readonly defaultNetuid;
|
|
84
|
+
constructor(config?: SecureInferenceConfig);
|
|
85
|
+
/**
|
|
86
|
+
* Run inference through the fallback chain.
|
|
87
|
+
*
|
|
88
|
+
* Attempts Venice → Bittensor → Local in order. Returns the first
|
|
89
|
+
* successful result together with a cost log entry for the chosen provider.
|
|
90
|
+
*/
|
|
91
|
+
generate(request: SecureInferenceRequest): Promise<SecureInferenceResult>;
|
|
92
|
+
/** Destroy the engine and zero all retained key material. */
|
|
93
|
+
destroy(): void;
|
|
94
|
+
}
|
|
95
|
+
/** Read cost entries for a given date (YYYY-MM-DD). */
|
|
96
|
+
export declare function readCostLog(date: string): CostLogEntry[];
|
|
97
|
+
/** Summarise costs for a given date. */
|
|
98
|
+
export declare function summariseCostLog(date: string): {
|
|
99
|
+
totalCostUsd: number;
|
|
100
|
+
byProvider: Record<InferenceProvider, {
|
|
101
|
+
calls: number;
|
|
102
|
+
costUsd: number;
|
|
103
|
+
}>;
|
|
104
|
+
};
|
|
105
|
+
//# sourceMappingURL=secure-inference.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"secure-inference.d.ts","sourceRoot":"","sources":["../../../src/inference/secure-inference.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAMH,OAAO,EAAgB,KAAK,qBAAqB,EAAE,MAAM,oBAAoB,CAAC;AAC9E,OAAO,EAAoB,KAAK,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAClF,OAAO,EAAmB,KAAK,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAE9E,OAAO,EAAE,KAAK,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAM7D,YAAY,EAAE,iBAAiB,EAAE,CAAC;AAElC,MAAM,WAAW,sBAAsB;IACrC,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,0EAA0E;IAC1E,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,qBAAqB;IACpC,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,iBAAiB,CAAC;IAC5B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,qDAAqD;IACrD,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,EAAE,MAAM,CAAC;IACrB,iDAAiD;IACjD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,4DAA4D;IAC5D,aAAa,EAAE,iBAAiB,EAAE,CAAC;CACpC;AAQD;;;GAGG;AACH,UAAU,YAAY;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,iBAAiB,CAAC;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAA;KAAE,CAAC;IAChD,OAAO,EAAE,OAAO,CAAC;CAClB;AAuBD,MAAM,WAAW,qBAAqB;IACpC,MAAM,CAAC,EAAE,qBAAqB,CAAC;IAC/B,SAAS,CAAC,EAAE,eAAe,CAAC;IAC5B,KAAK,CAAC,EAAE,gBAAgB,CAAC;IACzB,6EAA6E;IAC7E,sBAAsB,CAAC,EAAE,MAAM,CAAC;CACjC;AAED;;;;;;;;;GASG;AACH,qBAAa,qBAAqB;IAChC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAe;IACtC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAkB;IAC5C,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAmB;IACzC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAS;gBAE3B,MAAM,GAAE,qBAA0B;IAO9C;;;;;OAKG;IACG,QAAQ,CAAC,OAAO,EAAE,sBAAsB,GAAG,OAAO,CAAC,qBAAqB,CAAC;IAkI/E,6DAA6D;IAC7D,OAAO,IAAI,IAAI;CAGhB;AAMD,uDAAuD;AACvD,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,YAAY,EAAE,CAgBxD;AAED,wCAAwC;AACxC,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG;IAC9C,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC,iBAAiB,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CAC3E,CAmBA"}
|
|
@@ -0,0 +1,237 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Secure Inference Engine
|
|
3
|
+
*
|
|
4
|
+
* Orchestrates a three-tier provider fallback chain for AI inference:
|
|
5
|
+
*
|
|
6
|
+
* 1. Venice AI — privacy-preserving cloud inference with ephemeral keys
|
|
7
|
+
* 2. Bittensor — decentralised network inference
|
|
8
|
+
* 3. Local — Ollama-compatible local model (zero external dependency)
|
|
9
|
+
*
|
|
10
|
+
* At every tier, a structured cost entry is appended to a daily JSONL log.
|
|
11
|
+
* The log contains provider, model, token counts, cost, and latency — never
|
|
12
|
+
* any API key or prompt content.
|
|
13
|
+
*
|
|
14
|
+
* Security guarantee (zero key exposure):
|
|
15
|
+
* • Venice ephemeral keys are created, used, and revoked inside VeniceClient.
|
|
16
|
+
* • All error messages are sanitised before reaching this layer.
|
|
17
|
+
* • Nothing key-shaped is ever passed to the cost logger or any file write.
|
|
18
|
+
*/
|
|
19
|
+
import fs from 'node:fs';
|
|
20
|
+
import path from 'node:path';
|
|
21
|
+
import os from 'node:os';
|
|
22
|
+
import { VeniceClient } from './venice-client.js';
|
|
23
|
+
import { LocalModelClient } from './local-model-client.js';
|
|
24
|
+
import { BittensorClient } from './bittensor-client.js';
|
|
25
|
+
// ---------------------------------------------------------------------------
|
|
26
|
+
// Cost logger
|
|
27
|
+
// ---------------------------------------------------------------------------
|
|
28
|
+
const COST_LOG_DIR = path.join(os.homedir(), '.agentvault', 'inference-costs');
|
|
29
|
+
/**
|
|
30
|
+
* Append a single cost entry to the daily log file.
|
|
31
|
+
* Failures are silently swallowed so that logging issues never block inference.
|
|
32
|
+
*/
|
|
33
|
+
function logInferenceCost(entry) {
|
|
34
|
+
try {
|
|
35
|
+
if (!fs.existsSync(COST_LOG_DIR)) {
|
|
36
|
+
fs.mkdirSync(COST_LOG_DIR, { recursive: true });
|
|
37
|
+
}
|
|
38
|
+
const date = entry.timestamp.slice(0, 10); // YYYY-MM-DD
|
|
39
|
+
const logPath = path.join(COST_LOG_DIR, `${date}.jsonl`);
|
|
40
|
+
fs.appendFileSync(logPath, JSON.stringify(entry) + '\n', 'utf8');
|
|
41
|
+
}
|
|
42
|
+
catch {
|
|
43
|
+
// Non-blocking — inference proceeds regardless of log failures.
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
/**
|
|
47
|
+
* Three-tier secure inference engine.
|
|
48
|
+
*
|
|
49
|
+
* Usage:
|
|
50
|
+
* ```ts
|
|
51
|
+
* const engine = new SecureInferenceEngine();
|
|
52
|
+
* const result = await engine.generate({ prompt: 'Hello' });
|
|
53
|
+
* console.log(result.text, result.provider, result.cost);
|
|
54
|
+
* ```
|
|
55
|
+
*/
|
|
56
|
+
export class SecureInferenceEngine {
|
|
57
|
+
venice;
|
|
58
|
+
bittensor;
|
|
59
|
+
local;
|
|
60
|
+
defaultNetuid;
|
|
61
|
+
constructor(config = {}) {
|
|
62
|
+
this.venice = new VeniceClient(config.venice);
|
|
63
|
+
this.bittensor = new BittensorClient(config.bittensor);
|
|
64
|
+
this.local = new LocalModelClient(config.local);
|
|
65
|
+
this.defaultNetuid = config.defaultBittensorNetuid ?? 18;
|
|
66
|
+
}
|
|
67
|
+
/**
|
|
68
|
+
* Run inference through the fallback chain.
|
|
69
|
+
*
|
|
70
|
+
* Attempts Venice → Bittensor → Local in order. Returns the first
|
|
71
|
+
* successful result together with a cost log entry for the chosen provider.
|
|
72
|
+
*/
|
|
73
|
+
async generate(request) {
|
|
74
|
+
// ── Tier 1: Venice AI with ephemeral keys ────────────────────────────
|
|
75
|
+
const veniceResult = await this.venice.generate({
|
|
76
|
+
prompt: request.prompt,
|
|
77
|
+
model: request.model,
|
|
78
|
+
maxTokens: request.maxTokens,
|
|
79
|
+
temperature: request.temperature,
|
|
80
|
+
systemPrompt: request.systemPrompt,
|
|
81
|
+
});
|
|
82
|
+
if (veniceResult.success) {
|
|
83
|
+
logInferenceCost({
|
|
84
|
+
timestamp: new Date().toISOString(),
|
|
85
|
+
provider: 'venice',
|
|
86
|
+
model: veniceResult.model ?? 'unknown',
|
|
87
|
+
cost_usd: veniceResult.cost ?? 0,
|
|
88
|
+
duration_ms: veniceResult.responseTime,
|
|
89
|
+
success: true,
|
|
90
|
+
});
|
|
91
|
+
return {
|
|
92
|
+
success: true,
|
|
93
|
+
text: veniceResult.text,
|
|
94
|
+
provider: 'venice',
|
|
95
|
+
model: veniceResult.model,
|
|
96
|
+
cost: veniceResult.cost ?? 0,
|
|
97
|
+
responseTime: veniceResult.responseTime,
|
|
98
|
+
fallbackChain: [],
|
|
99
|
+
};
|
|
100
|
+
}
|
|
101
|
+
// Venice failed — log cost entry for the failed attempt (cost = 0)
|
|
102
|
+
logInferenceCost({
|
|
103
|
+
timestamp: new Date().toISOString(),
|
|
104
|
+
provider: 'venice',
|
|
105
|
+
model: request.model ?? 'unknown',
|
|
106
|
+
cost_usd: 0,
|
|
107
|
+
duration_ms: veniceResult.responseTime,
|
|
108
|
+
success: false,
|
|
109
|
+
});
|
|
110
|
+
// ── Tier 2: Bittensor ─────────────────────────────────────────────────
|
|
111
|
+
const netuid = request.bittensorNetuid ?? this.defaultNetuid;
|
|
112
|
+
const btStart = Date.now();
|
|
113
|
+
const btResult = await this.bittensor.infer({
|
|
114
|
+
netuid,
|
|
115
|
+
inputs: {
|
|
116
|
+
prompt: request.prompt,
|
|
117
|
+
...(request.systemPrompt ? { system: request.systemPrompt } : {}),
|
|
118
|
+
...(request.maxTokens ? { max_tokens: request.maxTokens } : {}),
|
|
119
|
+
...(request.temperature !== undefined ? { temperature: request.temperature } : {}),
|
|
120
|
+
},
|
|
121
|
+
timeout: 30_000,
|
|
122
|
+
});
|
|
123
|
+
const btDuration = Date.now() - btStart;
|
|
124
|
+
if (btResult.success) {
|
|
125
|
+
const btText = btResult.data?.['text'] ??
|
|
126
|
+
btResult.data?.['response'] ??
|
|
127
|
+
JSON.stringify(btResult.data);
|
|
128
|
+
logInferenceCost({
|
|
129
|
+
timestamp: new Date().toISOString(),
|
|
130
|
+
provider: 'bittensor',
|
|
131
|
+
model: `subnet-${netuid}`,
|
|
132
|
+
cost_usd: 0, // Bittensor pricing is stake-based, not USD
|
|
133
|
+
duration_ms: btDuration,
|
|
134
|
+
success: true,
|
|
135
|
+
});
|
|
136
|
+
return {
|
|
137
|
+
success: true,
|
|
138
|
+
text: btText,
|
|
139
|
+
provider: 'bittensor',
|
|
140
|
+
model: `subnet-${netuid}`,
|
|
141
|
+
cost: 0,
|
|
142
|
+
responseTime: btDuration,
|
|
143
|
+
fallbackChain: ['venice'],
|
|
144
|
+
};
|
|
145
|
+
}
|
|
146
|
+
logInferenceCost({
|
|
147
|
+
timestamp: new Date().toISOString(),
|
|
148
|
+
provider: 'bittensor',
|
|
149
|
+
model: `subnet-${netuid}`,
|
|
150
|
+
cost_usd: 0,
|
|
151
|
+
duration_ms: btDuration,
|
|
152
|
+
success: false,
|
|
153
|
+
});
|
|
154
|
+
// ── Tier 3: Local model ───────────────────────────────────────────────
|
|
155
|
+
const localResult = await this.local.infer({
|
|
156
|
+
prompt: request.prompt,
|
|
157
|
+
systemPrompt: request.systemPrompt,
|
|
158
|
+
maxTokens: request.maxTokens,
|
|
159
|
+
temperature: request.temperature,
|
|
160
|
+
});
|
|
161
|
+
const localDuration = localResult.responseTime ?? 0;
|
|
162
|
+
logInferenceCost({
|
|
163
|
+
timestamp: new Date().toISOString(),
|
|
164
|
+
provider: 'local',
|
|
165
|
+
model: localResult.model ?? 'local',
|
|
166
|
+
cost_usd: 0,
|
|
167
|
+
duration_ms: localDuration,
|
|
168
|
+
success: localResult.success,
|
|
169
|
+
});
|
|
170
|
+
if (localResult.success) {
|
|
171
|
+
return {
|
|
172
|
+
success: true,
|
|
173
|
+
text: localResult.text,
|
|
174
|
+
provider: 'local',
|
|
175
|
+
model: localResult.model,
|
|
176
|
+
cost: 0,
|
|
177
|
+
responseTime: localDuration,
|
|
178
|
+
fallbackChain: ['venice', 'bittensor'],
|
|
179
|
+
};
|
|
180
|
+
}
|
|
181
|
+
// All providers exhausted
|
|
182
|
+
return {
|
|
183
|
+
success: false,
|
|
184
|
+
provider: 'local',
|
|
185
|
+
cost: 0,
|
|
186
|
+
responseTime: localDuration,
|
|
187
|
+
error: `All providers failed. Last error: ${localResult.error ?? 'unknown'}`,
|
|
188
|
+
fallbackChain: ['venice', 'bittensor'],
|
|
189
|
+
};
|
|
190
|
+
}
|
|
191
|
+
/** Destroy the engine and zero all retained key material. */
|
|
192
|
+
destroy() {
|
|
193
|
+
this.venice.destroy();
|
|
194
|
+
}
|
|
195
|
+
}
|
|
196
|
+
// ---------------------------------------------------------------------------
|
|
197
|
+
// Cost log reader (for monitoring / billing dashboards)
|
|
198
|
+
// ---------------------------------------------------------------------------
|
|
199
|
+
/** Read cost entries for a given date (YYYY-MM-DD). */
|
|
200
|
+
export function readCostLog(date) {
|
|
201
|
+
const logPath = path.join(COST_LOG_DIR, `${date}.jsonl`);
|
|
202
|
+
if (!fs.existsSync(logPath))
|
|
203
|
+
return [];
|
|
204
|
+
return fs
|
|
205
|
+
.readFileSync(logPath, 'utf8')
|
|
206
|
+
.split('\n')
|
|
207
|
+
.filter(Boolean)
|
|
208
|
+
.map((line) => {
|
|
209
|
+
try {
|
|
210
|
+
return JSON.parse(line);
|
|
211
|
+
}
|
|
212
|
+
catch {
|
|
213
|
+
return null;
|
|
214
|
+
}
|
|
215
|
+
})
|
|
216
|
+
.filter((entry) => entry !== null);
|
|
217
|
+
}
|
|
218
|
+
/** Summarise costs for a given date. */
|
|
219
|
+
export function summariseCostLog(date) {
|
|
220
|
+
const entries = readCostLog(date);
|
|
221
|
+
const byProvider = {
|
|
222
|
+
venice: { calls: 0, costUsd: 0 },
|
|
223
|
+
bittensor: { calls: 0, costUsd: 0 },
|
|
224
|
+
local: { calls: 0, costUsd: 0 },
|
|
225
|
+
};
|
|
226
|
+
for (const e of entries) {
|
|
227
|
+
if (e.provider in byProvider) {
|
|
228
|
+
byProvider[e.provider].calls++;
|
|
229
|
+
byProvider[e.provider].costUsd += e.cost_usd;
|
|
230
|
+
}
|
|
231
|
+
}
|
|
232
|
+
return {
|
|
233
|
+
totalCostUsd: Object.values(byProvider).reduce((s, v) => s + v.costUsd, 0),
|
|
234
|
+
byProvider,
|
|
235
|
+
};
|
|
236
|
+
}
|
|
237
|
+
//# sourceMappingURL=secure-inference.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"secure-inference.js","sourceRoot":"","sources":["../../../src/inference/secure-inference.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,149 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Venice AI Client
|
|
3
|
+
*
|
|
4
|
+
* Provides inference via Venice AI – a privacy-focused, OpenAI-compatible
|
|
5
|
+
* inference platform. Used as the first fallback when Bittensor is unreachable.
|
|
6
|
+
*
|
|
7
|
+
* Also exports EphemeralKeyHolder / EphemeralKeyManager / VeniceClient for
|
|
8
|
+
* zero-persistence, per-request ephemeral key inference (see secure-inference.ts).
|
|
9
|
+
*
|
|
10
|
+
* API reference: https://docs.venice.ai
|
|
11
|
+
*/
|
|
12
|
+
export interface VeniceConfig {
|
|
13
|
+
/** Venice AI API key (VENICE_API_KEY env var as fallback) */
|
|
14
|
+
apiKey?: string;
|
|
15
|
+
/** Base URL – defaults to the Venice AI inference endpoint */
|
|
16
|
+
baseUrl?: string;
|
|
17
|
+
/** Model to use – defaults to 'llama-3.3-70b' */
|
|
18
|
+
model?: string;
|
|
19
|
+
/** Request timeout in ms – defaults to 30 000 */
|
|
20
|
+
timeout?: number;
|
|
21
|
+
}
|
|
22
|
+
export interface VeniceInferenceRequest {
|
|
23
|
+
prompt: string;
|
|
24
|
+
systemPrompt?: string;
|
|
25
|
+
maxTokens?: number;
|
|
26
|
+
temperature?: number;
|
|
27
|
+
}
|
|
28
|
+
export interface VeniceInferenceResponse {
|
|
29
|
+
success: boolean;
|
|
30
|
+
text?: string;
|
|
31
|
+
model?: string;
|
|
32
|
+
usage?: {
|
|
33
|
+
promptTokens: number;
|
|
34
|
+
completionTokens: number;
|
|
35
|
+
totalTokens: number;
|
|
36
|
+
};
|
|
37
|
+
/** Estimated cost in USD (based on public token pricing) */
|
|
38
|
+
estimatedCostUsd?: number;
|
|
39
|
+
responseTime?: number;
|
|
40
|
+
error?: string;
|
|
41
|
+
}
|
|
42
|
+
export declare class VeniceAIClient {
|
|
43
|
+
private config;
|
|
44
|
+
constructor(config?: VeniceConfig);
|
|
45
|
+
/**
|
|
46
|
+
* Send an inference request to Venice AI.
|
|
47
|
+
* Uses the OpenAI-compatible chat completions endpoint.
|
|
48
|
+
*/
|
|
49
|
+
infer(request: VeniceInferenceRequest): Promise<VeniceInferenceResponse>;
|
|
50
|
+
/**
|
|
51
|
+
* Quick connectivity check – returns true if Venice AI responds.
|
|
52
|
+
*/
|
|
53
|
+
isAvailable(): Promise<boolean>;
|
|
54
|
+
}
|
|
55
|
+
export interface EphemeralVeniceConfig {
|
|
56
|
+
/** Master Venice API key used only to mint per-request subkeys. */
|
|
57
|
+
masterApiKey?: string;
|
|
58
|
+
baseUrl?: string;
|
|
59
|
+
timeout?: number;
|
|
60
|
+
}
|
|
61
|
+
export interface EphemeralVeniceRequest {
|
|
62
|
+
prompt: string;
|
|
63
|
+
model?: string;
|
|
64
|
+
maxTokens?: number;
|
|
65
|
+
temperature?: number;
|
|
66
|
+
systemPrompt?: string;
|
|
67
|
+
}
|
|
68
|
+
export interface EphemeralVeniceResponse {
|
|
69
|
+
success: boolean;
|
|
70
|
+
text?: string;
|
|
71
|
+
model?: string;
|
|
72
|
+
provider: 'venice';
|
|
73
|
+
cost?: number;
|
|
74
|
+
responseTime: number;
|
|
75
|
+
error?: string;
|
|
76
|
+
}
|
|
77
|
+
/**
|
|
78
|
+
* Wraps raw key material in a Uint8Array so it can be zeroed after a single
|
|
79
|
+
* use. JavaScript strings are immutable and GC-managed, so we convert to bytes
|
|
80
|
+
* for zeroing and decode to string only at the HTTP call site.
|
|
81
|
+
*/
|
|
82
|
+
export declare class EphemeralKeyHolder {
|
|
83
|
+
private buf;
|
|
84
|
+
private _consumed;
|
|
85
|
+
constructor(keyMaterial: string);
|
|
86
|
+
/**
|
|
87
|
+
* Return the key as a string and immediately zero the backing buffer.
|
|
88
|
+
* May only be called once.
|
|
89
|
+
*/
|
|
90
|
+
consume(): string;
|
|
91
|
+
/** Zero the buffer and mark consumed without returning the key. */
|
|
92
|
+
discard(): void;
|
|
93
|
+
get consumed(): boolean;
|
|
94
|
+
}
|
|
95
|
+
interface EphemeralKeySession {
|
|
96
|
+
keyId: string;
|
|
97
|
+
holder: EphemeralKeyHolder;
|
|
98
|
+
}
|
|
99
|
+
/**
|
|
100
|
+
* Manages the Venice AI subkey lifecycle.
|
|
101
|
+
*
|
|
102
|
+
* Flow per inference request:
|
|
103
|
+
* 1. POST /api_keys → Venice creates a fresh scoped API subkey.
|
|
104
|
+
* 2. Caller uses the subkey for one inference request.
|
|
105
|
+
* 3. DELETE /api_keys/{keyId} → Venice revokes the subkey.
|
|
106
|
+
* 4. EphemeralKeyHolder.discard() zeroes the in-memory buffer.
|
|
107
|
+
*/
|
|
108
|
+
export declare class EphemeralKeyManager {
|
|
109
|
+
/** @internal — exposed for zeroing tests only */
|
|
110
|
+
masterBuf: Uint8Array;
|
|
111
|
+
private readonly baseUrl;
|
|
112
|
+
private readonly timeout;
|
|
113
|
+
constructor(masterApiKey: string, baseUrl: string, timeout: number);
|
|
114
|
+
/** Mint a fresh ephemeral subkey. The returned session must be revoked after use. */
|
|
115
|
+
generate(): Promise<EphemeralKeySession>;
|
|
116
|
+
/**
|
|
117
|
+
* Revoke the ephemeral subkey and zero its memory buffer.
|
|
118
|
+
* Errors during revocation are swallowed — the session is over regardless.
|
|
119
|
+
*/
|
|
120
|
+
revoke(session: EphemeralKeySession): Promise<void>;
|
|
121
|
+
/** Zero the master key material from memory. */
|
|
122
|
+
destroy(): void;
|
|
123
|
+
}
|
|
124
|
+
/**
|
|
125
|
+
* Venice AI inference client that mints a fresh subkey per request.
|
|
126
|
+
*
|
|
127
|
+
* For every generate() call:
|
|
128
|
+
* 1. A fresh ephemeral subkey is minted via EphemeralKeyManager.
|
|
129
|
+
* 2. The subkey is used for exactly one /chat/completions request.
|
|
130
|
+
* 3. The subkey is revoked and the in-memory buffer zeroed in a finally block.
|
|
131
|
+
*/
|
|
132
|
+
export declare class VeniceClient {
|
|
133
|
+
private readonly baseUrl;
|
|
134
|
+
private readonly timeout;
|
|
135
|
+
private readonly keyManager;
|
|
136
|
+
constructor(config?: EphemeralVeniceConfig);
|
|
137
|
+
/** Run inference with an ephemeral key, always revoked in a finally block. */
|
|
138
|
+
generate(request: EphemeralVeniceRequest): Promise<EphemeralVeniceResponse>;
|
|
139
|
+
destroy(): void;
|
|
140
|
+
}
|
|
141
|
+
/** Fetch with AbortController-based timeout. */
|
|
142
|
+
export declare function fetchWithTimeout(url: string, options: RequestInit, timeoutMs: number): Promise<Response>;
|
|
143
|
+
/**
|
|
144
|
+
* Remove long alphanumeric tokens from a string before logging.
|
|
145
|
+
* Catches Bearer tokens, hex keys, base64 blobs, and JWT segments.
|
|
146
|
+
*/
|
|
147
|
+
export declare function sanitizeForLog(message: string): string;
|
|
148
|
+
export {};
|
|
149
|
+
//# sourceMappingURL=venice-client.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"venice-client.d.ts","sourceRoot":"","sources":["../../../src/inference/venice-client.ts"],"names":[],"mappings":"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"}
|