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
|
@@ -18,6 +18,7 @@
|
|
|
18
18
|
* This implementation class avoids the naming conflict.
|
|
19
19
|
*/
|
|
20
20
|
import * as crypto from 'node:crypto';
|
|
21
|
+
import { debugLog } from '../debugging/debug-logger.js';
|
|
21
22
|
function toCanisterAlgorithm(algorithm) {
|
|
22
23
|
return algorithm === 'aes-256-gcm' ? 'aes_256_gcm' : 'chacha20_poly1305';
|
|
23
24
|
}
|
|
@@ -112,11 +113,13 @@ export class VetKeysImplementation {
|
|
|
112
113
|
};
|
|
113
114
|
// Derive master key from seed phrase (for local use)
|
|
114
115
|
const derivedKey = await this.deriveMasterKey(seedPhrase, algorithm);
|
|
116
|
+
// SECURITY: Do not include seedPhrase in returned object to prevent memory exposure
|
|
117
|
+
// The seed phrase should only be used transiently for key derivation
|
|
115
118
|
return {
|
|
116
119
|
type: 'threshold',
|
|
117
120
|
key: derivedKey.key,
|
|
118
121
|
method: derivedKey.method,
|
|
119
|
-
seedPhrase
|
|
122
|
+
// seedPhrase intentionally omitted for security - see SEC-3 in SECURITY_AUDIT
|
|
120
123
|
threshold: threshold,
|
|
121
124
|
totalParties: totalParties,
|
|
122
125
|
algorithm: algorithm,
|
|
@@ -190,13 +193,18 @@ export class VetKeysImplementation {
|
|
|
190
193
|
const crypto = await import('node:crypto');
|
|
191
194
|
const secretBuffer = Buffer.from(secret, 'utf-8');
|
|
192
195
|
const iv = algorithm === 'aes-256-gcm' ? crypto.randomBytes(12) : crypto.randomBytes(16);
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
const
|
|
196
|
+
// SEC-10: use an independent random salt for PBKDF2 rather than
|
|
197
|
+
// reusing the IV. The salt is prepended to the encrypted output so
|
|
198
|
+
// that any future decrypt path can recover it.
|
|
199
|
+
const salt = crypto.randomBytes(16);
|
|
200
|
+
const encryptionKey = crypto.pbkdf2Sync(secretBuffer, salt, 100000, 32, 'sha256');
|
|
201
|
+
const cipher = crypto.createCipheriv(algorithm, encryptionKey, iv);
|
|
202
|
+
const ciphertext = Buffer.concat([
|
|
197
203
|
cipher.update(secretBuffer),
|
|
198
204
|
cipher.final(),
|
|
199
205
|
]);
|
|
206
|
+
// On-disk layout v2: salt(16) || iv(12 or 16) || ciphertext
|
|
207
|
+
const encryptedShare = Buffer.concat([salt, iv, ciphertext]);
|
|
200
208
|
const commitmentHash = crypto.createHash('sha256')
|
|
201
209
|
.update(encryptedShare)
|
|
202
210
|
.digest();
|
|
@@ -306,11 +314,11 @@ export class VetKeysImplementation {
|
|
|
306
314
|
*/
|
|
307
315
|
async storeEncryptedSecretOnCanister(secretId, encryptedSecret) {
|
|
308
316
|
if (!this.useCanister) {
|
|
309
|
-
|
|
317
|
+
debugLog('Canister integration disabled, skipping canister storage');
|
|
310
318
|
return false;
|
|
311
319
|
}
|
|
312
320
|
if (!this.canisterId) {
|
|
313
|
-
|
|
321
|
+
debugLog('Canister ID not configured, skipping canister storage');
|
|
314
322
|
return false;
|
|
315
323
|
}
|
|
316
324
|
try {
|
|
@@ -325,14 +333,14 @@ export class VetKeysImplementation {
|
|
|
325
333
|
createdAt: Date.now(),
|
|
326
334
|
});
|
|
327
335
|
if ('ok' in result) {
|
|
328
|
-
|
|
336
|
+
debugLog('Encrypted secret stored on canister:', secretId);
|
|
329
337
|
return true;
|
|
330
338
|
}
|
|
331
339
|
return false;
|
|
332
340
|
}
|
|
333
341
|
catch (error) {
|
|
334
342
|
const message = error instanceof Error ? error.message : 'Unknown error';
|
|
335
|
-
|
|
343
|
+
debugLog(`Failed to store encrypted secret on canister: ${message}`);
|
|
336
344
|
return false;
|
|
337
345
|
}
|
|
338
346
|
}
|
|
@@ -363,7 +371,7 @@ export class VetKeysImplementation {
|
|
|
363
371
|
}
|
|
364
372
|
catch (error) {
|
|
365
373
|
const message = error instanceof Error ? error.message : 'Unknown error';
|
|
366
|
-
|
|
374
|
+
debugLog(`Failed to retrieve encrypted secret from canister: ${message}`);
|
|
367
375
|
return null;
|
|
368
376
|
}
|
|
369
377
|
}
|
|
@@ -384,7 +392,7 @@ export class VetKeysImplementation {
|
|
|
384
392
|
}
|
|
385
393
|
catch (error) {
|
|
386
394
|
const message = error instanceof Error ? error.message : 'Unknown error';
|
|
387
|
-
|
|
395
|
+
debugLog(`Failed to list encrypted secrets from canister: ${message}`);
|
|
388
396
|
return [];
|
|
389
397
|
}
|
|
390
398
|
}
|
|
@@ -409,7 +417,7 @@ export class VetKeysImplementation {
|
|
|
409
417
|
}
|
|
410
418
|
catch (error) {
|
|
411
419
|
const message = error instanceof Error ? error.message : 'Unknown error';
|
|
412
|
-
|
|
420
|
+
debugLog(`Failed to delete encrypted secret from canister: ${message}`);
|
|
413
421
|
return false;
|
|
414
422
|
}
|
|
415
423
|
}
|
|
@@ -425,7 +433,7 @@ export class VetKeysImplementation {
|
|
|
425
433
|
*/
|
|
426
434
|
async verifyThresholdSignatureCanister(signature, message) {
|
|
427
435
|
if (!this.canisterId) {
|
|
428
|
-
|
|
436
|
+
debugLog('VetKeys canister not configured: cannot verify threshold signature');
|
|
429
437
|
return false;
|
|
430
438
|
}
|
|
431
439
|
try {
|
|
@@ -439,7 +447,7 @@ export class VetKeysImplementation {
|
|
|
439
447
|
}
|
|
440
448
|
catch (error) {
|
|
441
449
|
const errorMessage = error instanceof Error ? error.message : 'Unknown error';
|
|
442
|
-
|
|
450
|
+
debugLog(`Failed to verify threshold signature on canister: ${errorMessage}`);
|
|
443
451
|
return false;
|
|
444
452
|
}
|
|
445
453
|
}
|
|
@@ -477,7 +485,7 @@ export class VetKeysImplementation {
|
|
|
477
485
|
}
|
|
478
486
|
catch (error) {
|
|
479
487
|
const message = error instanceof Error ? error.message : 'Unknown error';
|
|
480
|
-
|
|
488
|
+
debugLog(`Failed to get VetKeys status from canister: ${message}`);
|
|
481
489
|
return {
|
|
482
490
|
enabled: false,
|
|
483
491
|
thresholdSupported: true,
|
|
@@ -496,4 +504,125 @@ export class VetKeysImplementation {
|
|
|
496
504
|
export async function decryptJSON(encrypted, seedPhrase) {
|
|
497
505
|
return VetKeysImplementation.decryptJSON(encrypted, seedPhrase);
|
|
498
506
|
}
|
|
507
|
+
// ---------------------------------------------------------------------------
|
|
508
|
+
// Bundle encryption / decryption using principal-based VetKeys
|
|
509
|
+
// ---------------------------------------------------------------------------
|
|
510
|
+
/** AES-256-GCM constants */
|
|
511
|
+
const BUNDLE_AES_KEY_BYTES = 32;
|
|
512
|
+
const BUNDLE_GCM_IV_BYTES = 12;
|
|
513
|
+
const BUNDLE_SALT_BYTES = 32;
|
|
514
|
+
const BUNDLE_PBKDF2_ITERATIONS = 210_000;
|
|
515
|
+
/** 4-byte magic header so we can identify VetKeys-encrypted bundles */
|
|
516
|
+
const VETKEYS_MAGIC = Buffer.from('VKEB'); // VetKeys Encrypted Bundle
|
|
517
|
+
/**
|
|
518
|
+
* Derive a 32-byte AES-256-GCM key from the caller's ICP principal.
|
|
519
|
+
*
|
|
520
|
+
* The principal acts as the identity-binding input; a random per-bundle salt
|
|
521
|
+
* prevents key reuse across bundles encrypted for the same principal.
|
|
522
|
+
*/
|
|
523
|
+
function deriveBundleKey(principalId, salt) {
|
|
524
|
+
return crypto.pbkdf2Sync(principalId, Buffer.concat([salt, Buffer.from('agentvault-vetkeys-bundle-v1')]), BUNDLE_PBKDF2_ITERATIONS, BUNDLE_AES_KEY_BYTES, 'sha256');
|
|
525
|
+
}
|
|
526
|
+
/**
|
|
527
|
+
* Encrypt an agent bundle buffer using VetKeys principal-based key derivation.
|
|
528
|
+
*
|
|
529
|
+
* The returned buffer is self-describing: it contains a magic header, the salt,
|
|
530
|
+
* IV, auth tag, the encrypting principal, and the AES-256-GCM ciphertext. This
|
|
531
|
+
* allows `decryptBundle` to reconstruct the key and decrypt without any
|
|
532
|
+
* out-of-band metadata.
|
|
533
|
+
*
|
|
534
|
+
* @param buffer - Plaintext bundle (e.g. serialized agent state)
|
|
535
|
+
* @param principalId - ICP principal that "owns" the encryption key
|
|
536
|
+
* @returns Encrypted bundle buffer (magic ‖ salt ‖ iv ‖ tag ‖ principalLen ‖ principal ‖ ciphertext)
|
|
537
|
+
*/
|
|
538
|
+
export async function encryptBundleWithVetKeys(buffer, principalId) {
|
|
539
|
+
if (!principalId || principalId.length === 0) {
|
|
540
|
+
throw new Error('principalId is required for VetKeys bundle encryption');
|
|
541
|
+
}
|
|
542
|
+
const salt = crypto.randomBytes(BUNDLE_SALT_BYTES);
|
|
543
|
+
const iv = crypto.randomBytes(BUNDLE_GCM_IV_BYTES);
|
|
544
|
+
const key = deriveBundleKey(principalId, salt);
|
|
545
|
+
const cipher = crypto.createCipheriv('aes-256-gcm', key, iv);
|
|
546
|
+
const ciphertext = Buffer.concat([cipher.update(buffer), cipher.final()]);
|
|
547
|
+
const authTag = cipher.getAuthTag(); // 16 bytes
|
|
548
|
+
// Encode principal length as a 4-byte big-endian uint
|
|
549
|
+
const principalBuf = Buffer.from(principalId, 'utf-8');
|
|
550
|
+
const principalLenBuf = Buffer.alloc(4);
|
|
551
|
+
principalLenBuf.writeUInt32BE(principalBuf.length, 0);
|
|
552
|
+
return Buffer.concat([
|
|
553
|
+
VETKEYS_MAGIC, // 4
|
|
554
|
+
salt, // 32
|
|
555
|
+
iv, // 12
|
|
556
|
+
authTag, // 16
|
|
557
|
+
principalLenBuf, // 4
|
|
558
|
+
principalBuf, // variable
|
|
559
|
+
ciphertext, // variable
|
|
560
|
+
]);
|
|
561
|
+
}
|
|
562
|
+
/**
|
|
563
|
+
* Detect whether a buffer starts with the VetKeys encrypted-bundle magic.
|
|
564
|
+
*/
|
|
565
|
+
export function isVetKeysEncryptedBundle(buffer) {
|
|
566
|
+
if (buffer.length < VETKEYS_MAGIC.length) {
|
|
567
|
+
return false;
|
|
568
|
+
}
|
|
569
|
+
return buffer.subarray(0, VETKEYS_MAGIC.length).equals(VETKEYS_MAGIC);
|
|
570
|
+
}
|
|
571
|
+
/**
|
|
572
|
+
* Parse the header from an encrypted bundle buffer.
|
|
573
|
+
*
|
|
574
|
+
* @returns The parsed header and the offset where ciphertext begins.
|
|
575
|
+
*/
|
|
576
|
+
function parseEncryptedBundleHeader(encrypted) {
|
|
577
|
+
const minHeaderSize = 4 + 32 + 12 + 16 + 4; // magic + salt + iv + tag + principalLen
|
|
578
|
+
if (encrypted.length < minHeaderSize) {
|
|
579
|
+
throw new Error('Encrypted bundle is too short to contain a valid header');
|
|
580
|
+
}
|
|
581
|
+
let offset = VETKEYS_MAGIC.length; // skip magic (already verified by caller)
|
|
582
|
+
const salt = encrypted.subarray(offset, offset + BUNDLE_SALT_BYTES);
|
|
583
|
+
offset += BUNDLE_SALT_BYTES;
|
|
584
|
+
const iv = encrypted.subarray(offset, offset + BUNDLE_GCM_IV_BYTES);
|
|
585
|
+
offset += BUNDLE_GCM_IV_BYTES;
|
|
586
|
+
const authTag = encrypted.subarray(offset, offset + 16);
|
|
587
|
+
offset += 16;
|
|
588
|
+
const principalLen = encrypted.readUInt32BE(offset);
|
|
589
|
+
offset += 4;
|
|
590
|
+
if (encrypted.length < offset + principalLen) {
|
|
591
|
+
throw new Error('Encrypted bundle is truncated: principal field extends past end');
|
|
592
|
+
}
|
|
593
|
+
const principalId = encrypted.subarray(offset, offset + principalLen).toString('utf-8');
|
|
594
|
+
offset += principalLen;
|
|
595
|
+
return {
|
|
596
|
+
header: { salt: Buffer.from(salt), iv: Buffer.from(iv), authTag: Buffer.from(authTag), principalId },
|
|
597
|
+
ciphertextOffset: offset,
|
|
598
|
+
};
|
|
599
|
+
}
|
|
600
|
+
/**
|
|
601
|
+
* Decrypt a VetKeys-encrypted bundle buffer.
|
|
602
|
+
*
|
|
603
|
+
* The principal used for decryption is embedded in the bundle header. The
|
|
604
|
+
* caller may optionally supply their own `principalId` to verify that the
|
|
605
|
+
* bundle was encrypted for them; if omitted the embedded principal is used.
|
|
606
|
+
*
|
|
607
|
+
* @param encrypted - Buffer produced by `encryptBundleWithVetKeys`
|
|
608
|
+
* @param principalId - (optional) expected principal; if provided and it does
|
|
609
|
+
* not match the embedded principal an error is thrown
|
|
610
|
+
* @returns Decrypted plaintext buffer
|
|
611
|
+
*/
|
|
612
|
+
export async function decryptBundle(encrypted, principalId) {
|
|
613
|
+
if (!isVetKeysEncryptedBundle(encrypted)) {
|
|
614
|
+
throw new Error('Buffer is not a VetKeys encrypted bundle (missing magic header)');
|
|
615
|
+
}
|
|
616
|
+
const { header, ciphertextOffset } = parseEncryptedBundleHeader(encrypted);
|
|
617
|
+
// Optionally enforce principal match
|
|
618
|
+
if (principalId && principalId !== header.principalId) {
|
|
619
|
+
throw new Error(`Principal mismatch: bundle was encrypted for "${header.principalId}" but decryption was requested with "${principalId}"`);
|
|
620
|
+
}
|
|
621
|
+
const ciphertext = encrypted.subarray(ciphertextOffset);
|
|
622
|
+
const key = deriveBundleKey(header.principalId, header.salt);
|
|
623
|
+
const decipher = crypto.createDecipheriv('aes-256-gcm', key, header.iv);
|
|
624
|
+
decipher.setAuthTag(header.authTag);
|
|
625
|
+
const plaintext = Buffer.concat([decipher.update(ciphertext), decipher.final()]);
|
|
626
|
+
return plaintext;
|
|
627
|
+
}
|
|
499
628
|
//# sourceMappingURL=vetkeys.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"vetkeys.js","sourceRoot":"","sources":["../../../src/security/vetkeys.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,OAAO,KAAK,MAAM,MAAM,aAAa,CAAC;AACtC,OAAO,EAAE,QAAQ,EAAE,MAAM,8BAA8B,CAAC;AAUxD,SAAS,mBAAmB,CAAC,SAA8B;IACzD,OAAO,SAAS,KAAK,aAAa,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,mBAAmB,CAAC;AAC3E,CAAC;AAED,SAAS,qBAAqB,CAAC,WAA8B;IAC3D,OAAO,WAAW,KAAK,aAAa,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,mBAAmB,CAAC;AAC7E,CAAC;AAED,MAAM,OAAO,qBAAqB;IACxB,MAAM,CAAiB;IACvB,UAAU,CAAU;IACpB,WAAW,CAAU;IAE7B,YAAY,UAA2E,EAAE;QACvF,IAAI,CAAC,MAAM,GAAG;YACZ,SAAS,EAAE,OAAO,CAAC,SAAS,IAAI,CAAC;YACjC,YAAY,EAAE,OAAO,CAAC,YAAY,IAAI,CAAC;YACvC,mBAAmB,EAAE,OAAO,CAAC,mBAAmB,IAAI,aAAa;YACjE,iBAAiB,EAAE,OAAO,CAAC,UAAU;SACtC,CAAC;QACF,IAAI,CAAC,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;QACrC,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,WAAW,IAAI,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC;IACjE,CAAC;IAED;;;;;;OAMG;IACI,MAAM,CAAC,KAAK,CAAC,WAAW,CAC7B,SAAwB,EACxB,UAAkB;QAElB,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,aAAa,CAAC,CAAC;QAC3C,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,CAAC;QAEpC,8BAA8B;QAC9B,MAAM,IAAI,GAAG,MAAM,KAAK,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC;QACpD,MAAM,GAAG,GAAG,MAAM,CAAC,UAAU,CAC3B,IAAI,EACJ,SAAS,CAAC,IAAI,EACd,MAAM,EACN,EAAE,EACF,QAAQ,CACT,CAAC;QAEF,2BAA2B;QAC3B,MAAM,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;QAC5C,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;QAE5D,6BAA6B;QAC7B,IAAI,SAAiB,CAAC;QACtB,IAAI,SAAS,CAAC,SAAS,KAAK,aAAa,EAAE,CAAC;YAC1C,SAAS,GAAG,aAAa,CAAC;QAC5B,CAAC;aAAM,CAAC;YACN,SAAS,GAAG,SAAS,CAAC,SAAS,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;QACnD,CAAC;QAED,MAAM,QAAQ,GAAG,MAAM,CAAC,gBAAgB,CAAC,SAAS,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC;QAE7D,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC;YAC9B,QAAQ,CAAC,MAAM,CAAC,UAAU,CAAC;YAC3B,QAAQ,CAAC,KAAK,EAAE;SACjB,CAAC,CAAC;QAEH,OAAO,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAM,CAAC;IACtD,CAAC;IAED;;;;;;;;;;OAUG;IACI,KAAK,CAAC,kBAAkB,CAC7B,UAAkB,EAClB,UAII,EAAE;QAEN,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,IAAI,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC;QAC7D,MAAM,YAAY,GAAG,OAAO,CAAC,YAAY,IAAI,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC;QACtE,MAAM,SAAS,GAAG,OAAO,CAAC,mBAAmB,IAAI,IAAI,CAAC,MAAM,CAAC,mBAAmB,CAAC;QAEjF,qBAAqB;QACrB,IAAI,SAAU,GAAG,CAAC,IAAI,SAAU,GAAG,YAAa,EAAE,CAAC;YACjD,MAAM,IAAI,KAAK,CACb,sDAAsD,YAAa,WAAW,SAAS,EAAE,CAC1F,CAAC;QACJ,CAAC;QAED,IAAI,CAAC;YACH,0CAA0C;YAC1C,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,oBAAoB,CAAC,UAAU,EAAE,SAAU,EAAE,YAAa,EAAE,SAAU,CAAC,CAAC;YAElG,0BAA0B;YAC1B,MAAM,aAAa,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC;gBAClD,KAAK,EAAE,KAAK,GAAG,CAAC;gBAChB,OAAO,EAAE,IAAI,CAAC,eAAe,EAAE;gBAC/B,aAAa,EAAE,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,QAAQ,EAAE;gBACrC,cAAc,EAAE,KAAK,CAAC,cAAc;gBACpC,UAAU,EAAE,KAAK,CAAC,UAAU;aAC7B,CAAC,CAAC,CAAC;YAEJ,sBAAsB;YACtB,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC;YAEzD,mCAAmC;YACnC,MAAM,YAAY,GAAG;gBACnB,SAAS;gBACT,MAAM;gBACN,UAAU;gBACV,SAAS;gBACT,mBAAmB,EAAE,SAAS;gBAC9B,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;aACpC,CAAC;YAEF,qDAAqD;YACrD,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,UAAU,EAAE,SAAU,CAAC,CAAC;YAEtE,oFAAoF;YACpF,qEAAqE;YACrE,OAAO;gBACL,IAAI,EAAE,WAAW;gBACjB,GAAG,EAAE,UAAU,CAAC,GAAG;gBACnB,MAAM,EAAE,UAAU,CAAC,MAAM;gBACzB,8EAA8E;gBAC9E,SAAS,EAAE,SAAU;gBACrB,YAAY,EAAE,YAAa;gBAC3B,SAAS,EAAE,SAAU;gBACrB,MAAM;gBACN,aAAa;gBACb,UAAU;gBACV,YAAY;aACC,CAAC;QAClB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,CAAC;YACzE,MAAM,IAAI,KAAK,CAAC,mCAAmC,OAAO,EAAE,CAAC,CAAC;QAChE,CAAC;IACH,CAAC;IAED;;;;;;;;OAQG;IACK,KAAK,CAAC,oBAAoB,CAChC,UAAkB,EAClB,SAAiB,EACjB,YAAoB,EACpB,SAA8B;QAE9B,MAAM,MAAM,GAAkG,EAAE,CAAC;QACjH,MAAM,gBAAgB,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC;QAE/D,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,EAAE,CAAC,EAAE,EAAE,CAAC;YACnC,MAAM,OAAO,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC;YACvC,MAAM,aAAa,GAAG,CAAC,GAAG,CAAC,CAAC;YAE5B,8CAA8C;YAC9C,MAAM,iBAAiB,GAAG,IAAI,CAAC,yBAAyB,CAAC,UAAU,EAAE,CAAC,EAAE,YAAY,CAAC,CAAC;YAEtF,0CAA0C;YAC1C,MAAM,EAAE,cAAc,EAAE,UAAU,EAAE,eAAe,EAAE,GAAG,MAAM,IAAI,CAAC,YAAY,CAC7E,iBAAiB,EACjB,gBAAgB,EAChB,SAAS,CACV,CAAC;YAEF,MAAM,CAAC,IAAI,CAAC;gBACV,OAAO;gBACP,aAAa,EAAE,aAAa,CAAC,QAAQ,EAAE;gBACvC,cAAc;gBACd,UAAU,EAAE,eAAe;aAC5B,CAAC,CAAC;QACL,CAAC;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;IAED;;OAEG;IACK,eAAe;QACrB,MAAM,WAAW,GAAG,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;QAC1C,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;QAC1C,MAAM,SAAS,GAAG,WAAW,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QAC9D,OAAO,SAAS,SAAS,IAAI,SAAS,EAAE,CAAC;IAC3C,CAAC;IAEA;;;;;MAKE;IACK,yBAAyB,CAAC,UAAkB,EAAE,gBAAwB,EAAE,aAAqB;QACnG,MAAM,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;QAEpD,wEAAwE;QACxE,MAAM,iBAAiB,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,gBAAgB,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC,CAAC;QAExF,OAAO,iBAAiB,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IAC3C,CAAC;IAED;;;;;OAKG;IACK,KAAK,CAAC,YAAY,CACxB,MAAc,EACd,WAAmB,EACnB,SAA8B;QAE9B,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,aAAa,CAAC,CAAC;QAE3C,MAAM,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAClD,MAAM,EAAE,GAAG,SAAS,KAAK,aAAa,CAAC,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;QACzF,gEAAgE;QAChE,mEAAmE;QACnE,+CAA+C;QAC/C,MAAM,IAAI,GAAG,MAAM,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;QAEpC,MAAM,aAAa,GAAG,MAAM,CAAC,UAAU,CACrC,YAAY,EACZ,IAAI,EACJ,MAAM,EACN,EAAE,EACF,QAAQ,CACT,CAAC;QAEF,MAAM,MAAM,GAAG,MAAM,CAAC,cAAc,CAAC,SAAS,EAAE,aAAa,EAAE,EAAE,CAAC,CAAC;QAEnE,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC;YAC/B,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC;YAC3B,MAAM,CAAC,KAAK,EAAE;SACf,CAAC,CAAC;QAEH,4DAA4D;QAC5D,MAAM,cAAc,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,EAAE,UAAU,CAAC,CAAC,CAAC;QAE7D,MAAM,cAAc,GAAG,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC;aAC/C,MAAM,CAAC,cAAc,CAAC;aACtB,MAAM,EAAE,CAAC;QAEZ,OAAO;YACL,cAAc,EAAE,cAAc,CAAC,QAAQ,CAAC,KAAK,CAAC;YAC9C,UAAU,EAAE,cAAc,CAAC,QAAQ,CAAC,KAAK,CAAC;SAC3C,CAAC;IACJ,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,kBAAkB,CAAC,MAAyC;QACxE,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,aAAa,CAAC,CAAC;QAC3C,MAAM,IAAI,GAAG,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;QAEzC,+BAA+B;QAC/B,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;YAC3B,MAAM,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,cAAc,EAAE,KAAK,CAAC,CAAC;YAC7D,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;QAC3B,CAAC;QAED,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAC5B,CAAC;IAED;;;;;OAKG;IACK,KAAK,CAAC,eAAe,CAAC,UAAkB,EAAE,UAA+B;QAC/E,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,aAAa,CAAC,CAAC;QAC3C,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,CAAC;QAEpC,MAAM,IAAI,GAAG,MAAM,KAAK,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC;QAEpD,uEAAuE;QACvE,MAAM,IAAI,GAAG,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC;aACrC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;aACzB,MAAM,CAAC,eAAe,CAAC;aACvB,MAAM,EAAE,CAAC;QAEZ,2CAA2C;QAC3C,MAAM,GAAG,GAAG,MAAM,CAAC,UAAU,CAC3B,IAAI,EACJ,IAAI,EACJ,MAAM,EACN,EAAE,EACF,QAAQ,CACT,CAAC;QAEF,OAAO;YACL,GAAG,EAAE,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC;YACxB,MAAM,EAAE,QAAQ;SACjB,CAAC;IACJ,CAAC;IAED;;;;;;;OAOG;IACI,KAAK,CAAC,gBAAgB,CAAC,SAAwB;QACpD,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,OAAO,KAAK,CAAC;QACf,CAAC;QAED,IAAI,CAAC,SAAS,CAAC,SAAS,IAAI,CAAC,CAAC,aAAa,EAAE,mBAAmB,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,SAAS,CAAC,EAAE,CAAC;YAChG,OAAO,KAAK,CAAC;QACf,CAAC;QAED,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,OAAO,SAAS,CAAC,EAAE,KAAK,QAAQ,EAAE,CAAC;YACtD,OAAO,KAAK,CAAC;QACf,CAAC;QAED,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;QACjD,MAAM,gBAAgB,GAAG,SAAS,CAAC,SAAS,KAAK,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACzE,IAAI,OAAO,CAAC,MAAM,KAAK,gBAAgB,EAAE,CAAC;YACxC,OAAO,KAAK,CAAC;QACf,CAAC;QAED,IAAI,CAAC,SAAS,CAAC,IAAI,IAAI,OAAO,SAAS,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC1D,OAAO,KAAK,CAAC;QACf,CAAC;QAED,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QACrD,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACzB,OAAO,KAAK,CAAC;QACf,CAAC;QAED,IAAI,CAAC,SAAS,CAAC,UAAU,IAAI,OAAO,SAAS,CAAC,UAAU,KAAK,QAAQ,EAAE,CAAC;YACtE,OAAO,KAAK,CAAC;QACf,CAAC;QAED,MAAM,eAAe,GAAG,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;QACjE,IAAI,eAAe,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACjC,OAAO,KAAK,CAAC;QACf,CAAC;QAED,IAAI,SAAS,CAAC,WAAW,EAAE,CAAC;YAC1B,MAAM,SAAS,GAAG,IAAI,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;YAClD,IAAI,KAAK,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC,EAAE,CAAC;gBAC/B,OAAO,KAAK,CAAC;YACf,CAAC;QACH,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;OAEG;IACI,mBAAmB;QAOxB,OAAO;YACL,kBAAkB,EAAE,IAAI;YACxB,iBAAiB,EAAE,IAAI,CAAC,MAAM,CAAC,YAAa;YAC5C,gBAAgB,EAAE,IAAI,CAAC,MAAM,CAAC,SAAU;YACxC,mBAAmB,EAAE,IAAI,CAAC,MAAM,CAAC,mBAAoB;YACrD,aAAa,EAAE,WAAW;SAC3B,CAAC;IACJ,CAAC;IAED;;;;;;OAMG;IACI,KAAK,CAAC,8BAA8B,CACzC,QAAgB,EAChB,eAKC;QAED,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;YACtB,QAAQ,CAAC,0DAA0D,CAAC,CAAC;YACrE,OAAO,KAAK,CAAC;QACf,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;YACrB,QAAQ,CAAC,uDAAuD,CAAC,CAAC;YAClE,OAAO,KAAK,CAAC;QACf,CAAC;QAED,IAAI,CAAC;YACH,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,MAAM,CAAC,sBAAsB,CAAC,CAAC;YAC7D,MAAM,KAAK,GAAG,WAAW,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YAE3C,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,oBAAoB,CAAC;gBAC9C,EAAE,EAAE,QAAQ;gBACZ,UAAU,EAAE,IAAI,UAAU,CAAC,eAAe,CAAC,UAAU,CAAC;gBACtD,EAAE,EAAE,IAAI,UAAU,CAAC,eAAe,CAAC,EAAE,CAAC;gBACtC,GAAG,EAAE,IAAI,UAAU,CAAC,eAAe,CAAC,GAAG,CAAC;gBACxC,SAAS,EAAE,mBAAmB,CAAC,eAAe,CAAC,SAAS,CAAC;gBACzD,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;aACtB,CAAC,CAAC;YAEH,IAAI,IAAI,IAAI,MAAM,EAAE,CAAC;gBACnB,QAAQ,CAAC,sCAAsC,EAAE,QAAQ,CAAC,CAAC;gBAC3D,OAAO,IAAI,CAAC;YACd,CAAC;YAED,OAAO,KAAK,CAAC;QACf,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,CAAC;YACzE,QAAQ,CAAC,iDAAiD,OAAO,EAAE,CAAC,CAAC;YACrE,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAED;;;;;OAKG;IACI,KAAK,CAAC,8BAA8B,CACzC,QAAgB;QAEhB,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;YACrB,OAAO,IAAI,CAAC;QACd,CAAC;QAED,IAAI,CAAC;YACH,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,MAAM,CAAC,sBAAsB,CAAC,CAAC;YAC7D,MAAM,KAAK,GAAG,WAAW,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YAE3C,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAC;YAExD,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACnC,OAAO,IAAI,CAAC;YACd,CAAC;YAED,MAAM,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC;YAExB,OAAO;gBACL,UAAU,EAAE,IAAI,UAAU,CAAC,MAAM,CAAC,UAAU,CAAC;gBAC7C,EAAE,EAAE,IAAI,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;gBAC7B,GAAG,EAAE,IAAI,UAAU,CAAC,MAAM,CAAC,GAAG,CAAC;gBAC/B,SAAS,EAAE,qBAAqB,CAAC,MAAM,CAAC,SAAS,CAAC;aACnD,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,CAAC;YACzE,QAAQ,CAAC,sDAAsD,OAAO,EAAE,CAAC,CAAC;YAC1E,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAED;;;;OAIG;IACI,KAAK,CAAC,8BAA8B;QACzC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;YACrB,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,IAAI,CAAC;YACH,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,MAAM,CAAC,sBAAsB,CAAC,CAAC;YAC7D,MAAM,KAAK,GAAG,WAAW,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YAE3C,MAAM,OAAO,GAAG,MAAM,KAAK,CAAC,oBAAoB,EAAE,CAAC;YAEnD,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QAChC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,CAAC;YACzE,QAAQ,CAAC,mDAAmD,OAAO,EAAE,CAAC,CAAC;YACvE,OAAO,EAAE,CAAC;QACZ,CAAC;IACH,CAAC;IAED;;;;;OAKG;IACI,KAAK,CAAC,iCAAiC,CAAC,QAAgB;QAC7D,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;YACrB,OAAO,KAAK,CAAC;QACf,CAAC;QAED,IAAI,CAAC;YACH,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,MAAM,CAAC,sBAAsB,CAAC,CAAC;YAC7D,MAAM,KAAK,GAAG,WAAW,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YAE3C,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,qBAAqB,CAAC,QAAQ,CAAC,CAAC;YAE3D,IAAI,IAAI,IAAI,MAAM,EAAE,CAAC;gBACnB,OAAO,IAAI,CAAC;YACd,CAAC;YAED,OAAO,KAAK,CAAC;QACf,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,CAAC;YACzE,QAAQ,CAAC,oDAAoD,OAAO,EAAE,CAAC,CAAC;YACxE,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAED;;;;;;;;;OASG;IACI,KAAK,CAAC,gCAAgC,CAC3C,SAAiB,EACjB,OAAe;QAEf,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;YACrB,QAAQ,CAAC,oEAAoE,CAAC,CAAC;YAC/E,OAAO,KAAK,CAAC;QACf,CAAC;QAED,IAAI,CAAC;YACH,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,MAAM,CAAC,sBAAsB,CAAC,CAAC;YAC7D,MAAM,KAAK,GAAG,WAAW,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YAE3C,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,wBAAwB,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;YAExE,IAAI,IAAI,IAAI,MAAM,IAAI,MAAM,CAAC,EAAE,KAAK,UAAU,EAAE,CAAC;gBAC/C,OAAO,IAAI,CAAC;YACd,CAAC;YAED,OAAO,KAAK,CAAC;QACf,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,YAAY,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,CAAC;YAC9E,QAAQ,CAAC,qDAAqD,YAAY,EAAE,CAAC,CAAC;YAC9E,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAED;;;;OAIG;IACI,KAAK,CAAC,4BAA4B;QAKvC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;YACrB,OAAO;gBACL,OAAO,EAAE,KAAK;gBACd,kBAAkB,EAAE,IAAI;gBACxB,IAAI,EAAE,MAAM;aACb,CAAC;QACJ,CAAC;QAED,IAAI,CAAC;YACH,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,MAAM,CAAC,sBAAsB,CAAC,CAAC;YAC7D,MAAM,KAAK,GAAG,WAAW,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YAE3C,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,gBAAgB,EAAE,CAAC;YAE9C,IAAI,IAAI,GAA0B,MAAM,CAAC;YACzC,MAAM,WAAW,GAAG,MAAM,CAAC,IAAI,IAAI,OAAO,MAAM,CAAC,IAAI,KAAK,QAAQ,IAAI,MAAM,IAAI,MAAM,CAAC,IAAI,CAAC;YAC5F,MAAM,iBAAiB,GAAG,MAAM,CAAC,IAAI,IAAI,OAAO,MAAM,CAAC,IAAI,KAAK,QAAQ,IAAI,YAAY,IAAI,MAAM,CAAC,IAAI,CAAC;YAExG,IAAI,WAAW,EAAE,CAAC;gBAChB,IAAI,GAAG,MAAM,CAAC;YAChB,CAAC;iBAAM,IAAI,iBAAiB,EAAE,CAAC;gBAC7B,IAAI,GAAG,YAAY,CAAC;YACtB,CAAC;YAED,OAAO;gBACL,OAAO,EAAE,MAAM,CAAC,OAAO;gBACvB,kBAAkB,EAAE,MAAM,CAAC,kBAAkB;gBAC7C,IAAI,EAAE,IAAI;aACX,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,CAAC;YACzE,QAAQ,CAAC,+CAA+C,OAAO,EAAE,CAAC,CAAC;YACnE,OAAO;gBACL,OAAO,EAAE,KAAK;gBACd,kBAAkB,EAAE,IAAI;gBACxB,IAAI,EAAE,MAAM;aACb,CAAC;QACJ,CAAC;IACH,CAAC;CACF;AAED;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,WAAW,CAC/B,SAAwB,EACxB,UAAkB;IAElB,OAAO,qBAAqB,CAAC,WAAW,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;AAClE,CAAC;AAED,8EAA8E;AAC9E,+DAA+D;AAC/D,8EAA8E;AAE9E,4BAA4B;AAC5B,MAAM,oBAAoB,GAAG,EAAE,CAAC;AAChC,MAAM,mBAAmB,GAAG,EAAE,CAAC;AAC/B,MAAM,iBAAiB,GAAG,EAAE,CAAC;AAC7B,MAAM,wBAAwB,GAAG,OAAO,CAAC;AAEzC,uEAAuE;AACvE,MAAM,aAAa,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,2BAA2B;AAgBtE;;;;;GAKG;AACH,SAAS,eAAe,CAAC,WAAmB,EAAE,IAAY;IACxD,OAAO,MAAM,CAAC,UAAU,CACtB,WAAW,EACX,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,8BAA8B,CAAC,CAAC,CAAC,EAClE,wBAAwB,EACxB,oBAAoB,EACpB,QAAQ,CACT,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,KAAK,UAAU,wBAAwB,CAC5C,MAAc,EACd,WAAmB;IAEnB,IAAI,CAAC,WAAW,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC7C,MAAM,IAAI,KAAK,CAAC,uDAAuD,CAAC,CAAC;IAC3E,CAAC;IAED,MAAM,IAAI,GAAG,MAAM,CAAC,WAAW,CAAC,iBAAiB,CAAC,CAAC;IACnD,MAAM,EAAE,GAAG,MAAM,CAAC,WAAW,CAAC,mBAAmB,CAAC,CAAC;IACnD,MAAM,GAAG,GAAG,eAAe,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;IAE/C,MAAM,MAAM,GAAG,MAAM,CAAC,cAAc,CAAC,aAAa,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC;IAC7D,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;IAC1E,MAAM,OAAO,GAAG,MAAM,CAAC,UAAU,EAAE,CAAC,CAAC,WAAW;IAEhD,sDAAsD;IACtD,MAAM,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;IACvD,MAAM,eAAe,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IACxC,eAAe,CAAC,aAAa,CAAC,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;IAEtD,OAAO,MAAM,CAAC,MAAM,CAAC;QACnB,aAAa,EAAS,IAAI;QAC1B,IAAI,EAAkB,KAAK;QAC3B,EAAE,EAAoB,KAAK;QAC3B,OAAO,EAAe,KAAK;QAC3B,eAAe,EAAO,IAAI;QAC1B,YAAY,EAAU,WAAW;QACjC,UAAU,EAAY,WAAW;KAClC,CAAC,CAAC;AACL,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,wBAAwB,CAAC,MAAc;IACrD,IAAI,MAAM,CAAC,MAAM,GAAG,aAAa,CAAC,MAAM,EAAE,CAAC;QACzC,OAAO,KAAK,CAAC;IACf,CAAC;IACD,OAAO,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;AACxE,CAAC;AAED;;;;GAIG;AACH,SAAS,0BAA0B,CACjC,SAAiB;IAEjB,MAAM,aAAa,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,yCAAyC;IACrF,IAAI,SAAS,CAAC,MAAM,GAAG,aAAa,EAAE,CAAC;QACrC,MAAM,IAAI,KAAK,CAAC,yDAAyD,CAAC,CAAC;IAC7E,CAAC;IAED,IAAI,MAAM,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC,0CAA0C;IAE7E,MAAM,IAAI,GAAG,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,iBAAiB,CAAC,CAAC;IACpE,MAAM,IAAI,iBAAiB,CAAC;IAE5B,MAAM,EAAE,GAAG,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,mBAAmB,CAAC,CAAC;IACpE,MAAM,IAAI,mBAAmB,CAAC;IAE9B,MAAM,OAAO,GAAG,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,EAAE,CAAC,CAAC;IACxD,MAAM,IAAI,EAAE,CAAC;IAEb,MAAM,YAAY,GAAG,SAAS,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;IACpD,MAAM,IAAI,CAAC,CAAC;IAEZ,IAAI,SAAS,CAAC,MAAM,GAAG,MAAM,GAAG,YAAY,EAAE,CAAC;QAC7C,MAAM,IAAI,KAAK,CAAC,iEAAiE,CAAC,CAAC;IACrF,CAAC;IAED,MAAM,WAAW,GAAG,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;IACxF,MAAM,IAAI,YAAY,CAAC;IAEvB,OAAO;QACL,MAAM,EAAE,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,WAAW,EAAE;QACpG,gBAAgB,EAAE,MAAM;KACzB,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,SAAiB,EACjB,WAAoB;IAEpB,IAAI,CAAC,wBAAwB,CAAC,SAAS,CAAC,EAAE,CAAC;QACzC,MAAM,IAAI,KAAK,CAAC,iEAAiE,CAAC,CAAC;IACrF,CAAC;IAED,MAAM,EAAE,MAAM,EAAE,gBAAgB,EAAE,GAAG,0BAA0B,CAAC,SAAS,CAAC,CAAC;IAE3E,qCAAqC;IACrC,IAAI,WAAW,IAAI,WAAW,KAAK,MAAM,CAAC,WAAW,EAAE,CAAC;QACtD,MAAM,IAAI,KAAK,CACb,iDAAiD,MAAM,CAAC,WAAW,wCAAwC,WAAW,GAAG,CAC1H,CAAC;IACJ,CAAC;IAED,MAAM,UAAU,GAAG,SAAS,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC;IACxD,MAAM,GAAG,GAAG,eAAe,CAAC,MAAM,CAAC,WAAW,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;IAE7D,MAAM,QAAQ,GAAG,MAAM,CAAC,gBAAgB,CAAC,aAAa,EAAE,GAAG,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC;IACxE,QAAQ,CAAC,UAAU,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAEpC,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;IACjF,OAAO,SAAS,CAAC;AACnB,CAAC"}
|
|
@@ -0,0 +1,127 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* WebAuthn / Biometric Fallback — AgentVault MFA Layer 2
|
|
3
|
+
*
|
|
4
|
+
* Provides a biometric-backed device key for approvals when TOTP is unavailable.
|
|
5
|
+
*
|
|
6
|
+
* Architecture
|
|
7
|
+
* ─────────────
|
|
8
|
+
* • A P-256 (prime256v1) ECDSA keypair is generated once per device and stored in
|
|
9
|
+
* ~/.agentvault/mfa/device-key-<fingerprint>.json.
|
|
10
|
+
* • The private key is AES-256-GCM encrypted using a key derived from the device
|
|
11
|
+
* fingerprint + a locally generated salt (HKDF-SHA256). This simulates the
|
|
12
|
+
* Secure Enclave model: the key never leaves the local machine and is bound to
|
|
13
|
+
* the device's hardware identity (hostname + platform + arch).
|
|
14
|
+
* • signChallenge() signs a challenge hash with the private key and returns a DER
|
|
15
|
+
* signature — equivalent to what a Secure Enclave produces.
|
|
16
|
+
* • verifySignature() validates the signature using the public key, suitable for
|
|
17
|
+
* both the local CLI and a remote verifier (ICP canister, webapp).
|
|
18
|
+
* • generateWebAuthnAssertion() wraps sign+metadata into a WebAuthn-compatible
|
|
19
|
+
* AuthenticatorAssertionResponse structure for browser/webapp interop.
|
|
20
|
+
*
|
|
21
|
+
* Browser / Node.js portability
|
|
22
|
+
* ──────────────────────────────
|
|
23
|
+
* In a browser the same flow runs via crypto.subtle (WebCrypto API):
|
|
24
|
+
* navigator.credentials.get({ publicKey: { challenge, ... } })
|
|
25
|
+
* The server (ICP canister) holds the public key and verifies the assertion.
|
|
26
|
+
* This module mirrors that contract using Node's built-in crypto so the CLI
|
|
27
|
+
* can participate in the same protocol without browser dependencies.
|
|
28
|
+
*
|
|
29
|
+
* Replay protection
|
|
30
|
+
* ──────────────────
|
|
31
|
+
* Every assertion includes a counter that increments on each signing operation.
|
|
32
|
+
* The verifier checks that counter > lastSeenCounter, matching the WebAuthn spec.
|
|
33
|
+
*/
|
|
34
|
+
/** Stored device credential (no unencrypted private key on disk). */
|
|
35
|
+
export interface DeviceCredential {
|
|
36
|
+
/** Credential identifier (hex of public key hash). */
|
|
37
|
+
credentialId: string;
|
|
38
|
+
/** Device fingerprint this credential is bound to. */
|
|
39
|
+
deviceFingerprint: string;
|
|
40
|
+
/** SPKI-encoded public key, base64url. */
|
|
41
|
+
publicKeyB64: string;
|
|
42
|
+
/** Signing counter — monotonically increments on every signing operation. */
|
|
43
|
+
signCounter: number;
|
|
44
|
+
/** AES-256-GCM encrypted PKCS#8 private key, base64url. */
|
|
45
|
+
encryptedPrivateKeyB64: string;
|
|
46
|
+
/** Random salt used for key derivation, hex. */
|
|
47
|
+
kdfSaltHex: string;
|
|
48
|
+
/** AES-GCM IV, hex. */
|
|
49
|
+
ivHex: string;
|
|
50
|
+
/** AES-GCM auth tag, hex. */
|
|
51
|
+
authTagHex: string;
|
|
52
|
+
createdAt: string;
|
|
53
|
+
}
|
|
54
|
+
/** Result of a biometric signing operation. */
|
|
55
|
+
export interface WebAuthnAssertion {
|
|
56
|
+
/** The credential that produced this assertion. */
|
|
57
|
+
credentialId: string;
|
|
58
|
+
/** The data that was signed: SHA-256(clientDataJSON). */
|
|
59
|
+
clientDataHash: string;
|
|
60
|
+
/** DER-encoded ECDSA signature, base64url. */
|
|
61
|
+
signatureB64: string;
|
|
62
|
+
/** Current signing counter (replay protection). */
|
|
63
|
+
signCounter: number;
|
|
64
|
+
/** ISO timestamp of the signing operation. */
|
|
65
|
+
timestamp: string;
|
|
66
|
+
}
|
|
67
|
+
/** Result of a biometric setup call. */
|
|
68
|
+
export interface BiometricSetup {
|
|
69
|
+
credentialId: string;
|
|
70
|
+
deviceFingerprint: string;
|
|
71
|
+
/** SPKI public key — send this to the ICP canister for storage. */
|
|
72
|
+
publicKeyB64: string;
|
|
73
|
+
createdAt: string;
|
|
74
|
+
}
|
|
75
|
+
/**
|
|
76
|
+
* Generate a new P-256 device keypair and store it (private key AES-GCM encrypted).
|
|
77
|
+
*
|
|
78
|
+
* This is the one-time "biometric enrollment" step. In a browser this would
|
|
79
|
+
* involve navigator.credentials.create() with the Secure Enclave; here we use
|
|
80
|
+
* Node's crypto to produce an equivalent credential.
|
|
81
|
+
*
|
|
82
|
+
* @param deviceFingerprint - SHA-256(hostname ‖ platform ‖ arch)[:16] identifying this device
|
|
83
|
+
* @returns BiometricSetup containing the public key to register with the verifier
|
|
84
|
+
*/
|
|
85
|
+
export declare function setupBiometricCredential(deviceFingerprint: string): BiometricSetup;
|
|
86
|
+
/**
|
|
87
|
+
* Sign a challenge hash with the device's private key (biometric assertion).
|
|
88
|
+
*
|
|
89
|
+
* Mirrors the WebAuthn AuthenticatorAssertionResponse:
|
|
90
|
+
* - clientDataHash = SHA-256(JSON.stringify({ type, challenge, timestamp }))
|
|
91
|
+
* - signature = ECDSA-SHA256(clientDataHash, privateKey) in DER format
|
|
92
|
+
* - signCounter increments (replay protection)
|
|
93
|
+
*
|
|
94
|
+
* @param challengeHash - SHA-256 hex from MFA challenge (binds this to the request)
|
|
95
|
+
* @param deviceFingerprint - Must match the enrolled device
|
|
96
|
+
* @returns WebAuthnAssertion — forward to the ICP canister for verification
|
|
97
|
+
*/
|
|
98
|
+
export declare function signChallenge(challengeHash: string, deviceFingerprint: string): WebAuthnAssertion;
|
|
99
|
+
/**
|
|
100
|
+
* Verify a WebAuthn assertion from any device.
|
|
101
|
+
*
|
|
102
|
+
* @param assertion - The assertion produced by signChallenge()
|
|
103
|
+
* @param challengeHash - The original challenge hash (must be embedded in clientDataHash)
|
|
104
|
+
* @param publicKeyB64 - SPKI public key registered for this credential (base64url)
|
|
105
|
+
* @param lastSignCounter - The last seen signCounter for this credential (replay check)
|
|
106
|
+
* @returns { ok: true } or { ok: false, reason: string }
|
|
107
|
+
*/
|
|
108
|
+
export declare function verifyWebAuthnAssertion(assertion: WebAuthnAssertion, challengeHash: string, publicKeyB64: string, lastSignCounter: number): {
|
|
109
|
+
ok: true;
|
|
110
|
+
} | {
|
|
111
|
+
ok: false;
|
|
112
|
+
reason: string;
|
|
113
|
+
};
|
|
114
|
+
/**
|
|
115
|
+
* Return the registered public key for a device, or null if not enrolled.
|
|
116
|
+
*/
|
|
117
|
+
export declare function getDevicePublicKey(deviceFingerprint: string): string | null;
|
|
118
|
+
/**
|
|
119
|
+
* Return the current sign counter for a device credential.
|
|
120
|
+
* Used by the verifier to detect counter replay.
|
|
121
|
+
*/
|
|
122
|
+
export declare function getSignCounter(deviceFingerprint: string): number;
|
|
123
|
+
/**
|
|
124
|
+
* Check whether a biometric credential exists for the given device.
|
|
125
|
+
*/
|
|
126
|
+
export declare function hasBiometricCredential(deviceFingerprint: string): boolean;
|
|
127
|
+
//# sourceMappingURL=webauthn.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"webauthn.d.ts","sourceRoot":"","sources":["../../../src/security/webauthn.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AAsBH,qEAAqE;AACrE,MAAM,WAAW,gBAAgB;IAC/B,sDAAsD;IACtD,YAAY,EAAE,MAAM,CAAC;IACrB,sDAAsD;IACtD,iBAAiB,EAAE,MAAM,CAAC;IAC1B,0CAA0C;IAC1C,YAAY,EAAE,MAAM,CAAC;IACrB,6EAA6E;IAC7E,WAAW,EAAE,MAAM,CAAC;IACpB,2DAA2D;IAC3D,sBAAsB,EAAE,MAAM,CAAC;IAC/B,gDAAgD;IAChD,UAAU,EAAE,MAAM,CAAC;IACnB,uBAAuB;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,6BAA6B;IAC7B,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,+CAA+C;AAC/C,MAAM,WAAW,iBAAiB;IAChC,mDAAmD;IACnD,YAAY,EAAE,MAAM,CAAC;IACrB,yDAAyD;IACzD,cAAc,EAAE,MAAM,CAAC;IACvB,8CAA8C;IAC9C,YAAY,EAAE,MAAM,CAAC;IACrB,mDAAmD;IACnD,WAAW,EAAE,MAAM,CAAC;IACpB,8CAA8C;IAC9C,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,wCAAwC;AACxC,MAAM,WAAW,cAAc;IAC7B,YAAY,EAAE,MAAM,CAAC;IACrB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,mEAAmE;IACnE,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;CACnB;AAqDD;;;;;;;;;GASG;AACH,wBAAgB,wBAAwB,CAAC,iBAAiB,EAAE,MAAM,GAAG,cAAc,CAuClF;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,aAAa,CAC3B,aAAa,EAAE,MAAM,EACrB,iBAAiB,EAAE,MAAM,GACxB,iBAAiB,CA+CnB;AAED;;;;;;;;GAQG;AACH,wBAAgB,uBAAuB,CACrC,SAAS,EAAE,iBAAiB,EAC5B,aAAa,EAAE,MAAM,EACrB,YAAY,EAAE,MAAM,EACpB,eAAe,EAAE,MAAM,GACtB;IAAE,EAAE,EAAE,IAAI,CAAA;CAAE,GAAG;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAoD9C;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,iBAAiB,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAG3E;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAAC,iBAAiB,EAAE,MAAM,GAAG,MAAM,CAEhE;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,iBAAiB,EAAE,MAAM,GAAG,OAAO,CAEzE"}
|