@compass-ai/nova 1.0.74 → 1.0.76
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cli.js +557 -555
- package/dist/index.js +10 -8
- package/package.json +1 -1
- package/dist/acp/agent.d.ts +0 -318
- package/dist/acp/agent.d.ts.map +0 -1
- package/dist/acp/agent.js +0 -795
- package/dist/acp/agent.js.map +0 -1
- package/dist/acp/backpressure-writer.d.ts +0 -49
- package/dist/acp/backpressure-writer.d.ts.map +0 -1
- package/dist/acp/backpressure-writer.js +0 -153
- package/dist/acp/backpressure-writer.js.map +0 -1
- package/dist/acp/event-adapter.d.ts +0 -242
- package/dist/acp/event-adapter.d.ts.map +0 -1
- package/dist/acp/event-adapter.js +0 -456
- package/dist/acp/event-adapter.js.map +0 -1
- package/dist/acp/index.d.ts +0 -30
- package/dist/acp/index.d.ts.map +0 -1
- package/dist/acp/index.js +0 -36
- package/dist/acp/index.js.map +0 -1
- package/dist/acp/modes.d.ts +0 -56
- package/dist/acp/modes.d.ts.map +0 -1
- package/dist/acp/modes.js +0 -135
- package/dist/acp/modes.js.map +0 -1
- package/dist/acp/session-manager.d.ts +0 -170
- package/dist/acp/session-manager.d.ts.map +0 -1
- package/dist/acp/session-manager.js +0 -381
- package/dist/acp/session-manager.js.map +0 -1
- package/dist/acp/text-coalescer.d.ts +0 -45
- package/dist/acp/text-coalescer.d.ts.map +0 -1
- package/dist/acp/text-coalescer.js +0 -110
- package/dist/acp/text-coalescer.js.map +0 -1
- package/dist/acp/tool-bridge.d.ts +0 -156
- package/dist/acp/tool-bridge.d.ts.map +0 -1
- package/dist/acp/tool-bridge.js +0 -381
- package/dist/acp/tool-bridge.js.map +0 -1
- package/dist/acp/types.d.ts +0 -314
- package/dist/acp/types.d.ts.map +0 -1
- package/dist/acp/types.js +0 -8
- package/dist/acp/types.js.map +0 -1
- package/dist/cli.d.ts +0 -9
- package/dist/cli.d.ts.map +0 -1
- package/dist/cli.js.map +0 -1
- package/dist/commands/acp.d.ts +0 -26
- package/dist/commands/acp.d.ts.map +0 -1
- package/dist/commands/acp.js +0 -492
- package/dist/commands/acp.js.map +0 -1
- package/dist/commands/cache.d.ts +0 -33
- package/dist/commands/cache.d.ts.map +0 -1
- package/dist/commands/cache.js +0 -537
- package/dist/commands/cache.js.map +0 -1
- package/dist/commands/config.d.ts +0 -10
- package/dist/commands/config.d.ts.map +0 -1
- package/dist/commands/config.js +0 -367
- package/dist/commands/config.js.map +0 -1
- package/dist/commands/consent.d.ts +0 -21
- package/dist/commands/consent.d.ts.map +0 -1
- package/dist/commands/consent.js +0 -334
- package/dist/commands/consent.js.map +0 -1
- package/dist/commands/data.d.ts +0 -24
- package/dist/commands/data.d.ts.map +0 -1
- package/dist/commands/data.js +0 -586
- package/dist/commands/data.js.map +0 -1
- package/dist/commands/index.d.ts +0 -145
- package/dist/commands/index.d.ts.map +0 -1
- package/dist/commands/index.js +0 -210
- package/dist/commands/index.js.map +0 -1
- package/dist/commands/init.d.ts +0 -106
- package/dist/commands/init.d.ts.map +0 -1
- package/dist/commands/init.js +0 -349
- package/dist/commands/init.js.map +0 -1
- package/dist/commands/logs.d.ts +0 -13
- package/dist/commands/logs.d.ts.map +0 -1
- package/dist/commands/logs.js +0 -359
- package/dist/commands/logs.js.map +0 -1
- package/dist/commands/mcp.d.ts +0 -20
- package/dist/commands/mcp.d.ts.map +0 -1
- package/dist/commands/mcp.js +0 -687
- package/dist/commands/mcp.js.map +0 -1
- package/dist/commands/reset.d.ts +0 -20
- package/dist/commands/reset.d.ts.map +0 -1
- package/dist/commands/reset.js +0 -372
- package/dist/commands/reset.js.map +0 -1
- package/dist/commands/setup.d.ts +0 -74
- package/dist/commands/setup.d.ts.map +0 -1
- package/dist/commands/setup.js +0 -863
- package/dist/commands/setup.js.map +0 -1
- package/dist/commands/slash/agents.d.ts +0 -40
- package/dist/commands/slash/agents.d.ts.map +0 -1
- package/dist/commands/slash/agents.js +0 -519
- package/dist/commands/slash/agents.js.map +0 -1
- package/dist/commands/slash/approve.d.ts +0 -46
- package/dist/commands/slash/approve.d.ts.map +0 -1
- package/dist/commands/slash/approve.js +0 -239
- package/dist/commands/slash/approve.js.map +0 -1
- package/dist/commands/slash/attach.d.ts +0 -70
- package/dist/commands/slash/attach.d.ts.map +0 -1
- package/dist/commands/slash/attach.js +0 -333
- package/dist/commands/slash/attach.js.map +0 -1
- package/dist/commands/slash/clear.d.ts +0 -47
- package/dist/commands/slash/clear.d.ts.map +0 -1
- package/dist/commands/slash/clear.js +0 -261
- package/dist/commands/slash/clear.js.map +0 -1
- package/dist/commands/slash/commit.d.ts +0 -40
- package/dist/commands/slash/commit.d.ts.map +0 -1
- package/dist/commands/slash/commit.js +0 -337
- package/dist/commands/slash/commit.js.map +0 -1
- package/dist/commands/slash/compact.d.ts +0 -48
- package/dist/commands/slash/compact.d.ts.map +0 -1
- package/dist/commands/slash/compact.js +0 -288
- package/dist/commands/slash/compact.js.map +0 -1
- package/dist/commands/slash/config.d.ts +0 -20
- package/dist/commands/slash/config.d.ts.map +0 -1
- package/dist/commands/slash/config.js +0 -136
- package/dist/commands/slash/config.js.map +0 -1
- package/dist/commands/slash/context.d.ts +0 -49
- package/dist/commands/slash/context.d.ts.map +0 -1
- package/dist/commands/slash/context.js +0 -430
- package/dist/commands/slash/context.js.map +0 -1
- package/dist/commands/slash/cost.d.ts +0 -34
- package/dist/commands/slash/cost.d.ts.map +0 -1
- package/dist/commands/slash/cost.js +0 -312
- package/dist/commands/slash/cost.js.map +0 -1
- package/dist/commands/slash/custom.d.ts +0 -41
- package/dist/commands/slash/custom.d.ts.map +0 -1
- package/dist/commands/slash/custom.js +0 -126
- package/dist/commands/slash/custom.js.map +0 -1
- package/dist/commands/slash/exit.d.ts +0 -25
- package/dist/commands/slash/exit.d.ts.map +0 -1
- package/dist/commands/slash/exit.js +0 -186
- package/dist/commands/slash/exit.js.map +0 -1
- package/dist/commands/slash/export.d.ts +0 -27
- package/dist/commands/slash/export.d.ts.map +0 -1
- package/dist/commands/slash/export.js +0 -318
- package/dist/commands/slash/export.js.map +0 -1
- package/dist/commands/slash/files.d.ts +0 -47
- package/dist/commands/slash/files.d.ts.map +0 -1
- package/dist/commands/slash/files.js +0 -521
- package/dist/commands/slash/files.js.map +0 -1
- package/dist/commands/slash/help.d.ts +0 -50
- package/dist/commands/slash/help.d.ts.map +0 -1
- package/dist/commands/slash/help.js +0 -282
- package/dist/commands/slash/help.js.map +0 -1
- package/dist/commands/slash/index-cmd.d.ts +0 -41
- package/dist/commands/slash/index-cmd.d.ts.map +0 -1
- package/dist/commands/slash/index-cmd.js +0 -349
- package/dist/commands/slash/index-cmd.js.map +0 -1
- package/dist/commands/slash/index.d.ts +0 -97
- package/dist/commands/slash/index.d.ts.map +0 -1
- package/dist/commands/slash/index.js +0 -251
- package/dist/commands/slash/index.js.map +0 -1
- package/dist/commands/slash/login.d.ts +0 -23
- package/dist/commands/slash/login.d.ts.map +0 -1
- package/dist/commands/slash/login.js +0 -175
- package/dist/commands/slash/login.js.map +0 -1
- package/dist/commands/slash/logout.d.ts +0 -23
- package/dist/commands/slash/logout.d.ts.map +0 -1
- package/dist/commands/slash/logout.js +0 -153
- package/dist/commands/slash/logout.js.map +0 -1
- package/dist/commands/slash/logs.d.ts +0 -29
- package/dist/commands/slash/logs.d.ts.map +0 -1
- package/dist/commands/slash/logs.js +0 -423
- package/dist/commands/slash/logs.js.map +0 -1
- package/dist/commands/slash/mcp.d.ts +0 -29
- package/dist/commands/slash/mcp.d.ts.map +0 -1
- package/dist/commands/slash/mcp.js +0 -1026
- package/dist/commands/slash/mcp.js.map +0 -1
- package/dist/commands/slash/model.d.ts +0 -60
- package/dist/commands/slash/model.d.ts.map +0 -1
- package/dist/commands/slash/model.js +0 -466
- package/dist/commands/slash/model.js.map +0 -1
- package/dist/commands/slash/personality.d.ts +0 -40
- package/dist/commands/slash/personality.d.ts.map +0 -1
- package/dist/commands/slash/personality.js +0 -272
- package/dist/commands/slash/personality.js.map +0 -1
- package/dist/commands/slash/purge.d.ts +0 -42
- package/dist/commands/slash/purge.d.ts.map +0 -1
- package/dist/commands/slash/purge.js +0 -233
- package/dist/commands/slash/purge.js.map +0 -1
- package/dist/commands/slash/reset.d.ts +0 -44
- package/dist/commands/slash/reset.d.ts.map +0 -1
- package/dist/commands/slash/reset.js +0 -326
- package/dist/commands/slash/reset.js.map +0 -1
- package/dist/commands/slash/skills.d.ts +0 -40
- package/dist/commands/slash/skills.d.ts.map +0 -1
- package/dist/commands/slash/skills.js +0 -207
- package/dist/commands/slash/skills.js.map +0 -1
- package/dist/commands/slash/tokens.d.ts +0 -34
- package/dist/commands/slash/tokens.d.ts.map +0 -1
- package/dist/commands/slash/tokens.js +0 -205
- package/dist/commands/slash/tokens.js.map +0 -1
- package/dist/commands/slash/unleash.d.ts +0 -50
- package/dist/commands/slash/unleash.d.ts.map +0 -1
- package/dist/commands/slash/unleash.js +0 -262
- package/dist/commands/slash/unleash.js.map +0 -1
- package/dist/commands/slash/update.d.ts +0 -34
- package/dist/commands/slash/update.d.ts.map +0 -1
- package/dist/commands/slash/update.js +0 -364
- package/dist/commands/slash/update.js.map +0 -1
- package/dist/commands/slash/wrap.d.ts +0 -18
- package/dist/commands/slash/wrap.d.ts.map +0 -1
- package/dist/commands/slash/wrap.js +0 -21
- package/dist/commands/slash/wrap.js.map +0 -1
- package/dist/commands/tokens.d.ts +0 -26
- package/dist/commands/tokens.d.ts.map +0 -1
- package/dist/commands/tokens.js +0 -245
- package/dist/commands/tokens.js.map +0 -1
- package/dist/constants/builtin-agents.d.ts +0 -27
- package/dist/constants/builtin-agents.d.ts.map +0 -1
- package/dist/constants/builtin-agents.js +0 -710
- package/dist/constants/builtin-agents.js.map +0 -1
- package/dist/constants/builtin-skills.d.ts +0 -32
- package/dist/constants/builtin-skills.d.ts.map +0 -1
- package/dist/constants/builtin-skills.js +0 -389
- package/dist/constants/builtin-skills.js.map +0 -1
- package/dist/constants/defaults.d.ts +0 -448
- package/dist/constants/defaults.d.ts.map +0 -1
- package/dist/constants/defaults.js +0 -829
- package/dist/constants/defaults.js.map +0 -1
- package/dist/constants/index.d.ts +0 -27
- package/dist/constants/index.d.ts.map +0 -1
- package/dist/constants/index.js +0 -85
- package/dist/constants/index.js.map +0 -1
- package/dist/constants/install-hints.d.ts +0 -7
- package/dist/constants/install-hints.d.ts.map +0 -1
- package/dist/constants/install-hints.js +0 -123
- package/dist/constants/install-hints.js.map +0 -1
- package/dist/constants/models.d.ts +0 -255
- package/dist/constants/models.d.ts.map +0 -1
- package/dist/constants/models.js +0 -596
- package/dist/constants/models.js.map +0 -1
- package/dist/constants/schedule.d.ts +0 -43
- package/dist/constants/schedule.d.ts.map +0 -1
- package/dist/constants/schedule.js +0 -110
- package/dist/constants/schedule.js.map +0 -1
- package/dist/constants/system-utilities.d.ts +0 -57
- package/dist/constants/system-utilities.d.ts.map +0 -1
- package/dist/constants/system-utilities.js +0 -421
- package/dist/constants/system-utilities.js.map +0 -1
- package/dist/constants/token-limits.d.ts +0 -102
- package/dist/constants/token-limits.d.ts.map +0 -1
- package/dist/constants/token-limits.js +0 -286
- package/dist/constants/token-limits.js.map +0 -1
- package/dist/core/autocomplete.d.ts +0 -132
- package/dist/core/autocomplete.d.ts.map +0 -1
- package/dist/core/autocomplete.js +0 -653
- package/dist/core/autocomplete.js.map +0 -1
- package/dist/core/command-parser.d.ts +0 -301
- package/dist/core/command-parser.d.ts.map +0 -1
- package/dist/core/command-parser.js +0 -526
- package/dist/core/command-parser.js.map +0 -1
- package/dist/core/context-builder.d.ts +0 -264
- package/dist/core/context-builder.d.ts.map +0 -1
- package/dist/core/context-builder.js +0 -1018
- package/dist/core/context-builder.js.map +0 -1
- package/dist/core/event-emitter.d.ts +0 -411
- package/dist/core/event-emitter.d.ts.map +0 -1
- package/dist/core/event-emitter.js +0 -138
- package/dist/core/event-emitter.js.map +0 -1
- package/dist/core/history-manager.d.ts +0 -62
- package/dist/core/history-manager.d.ts.map +0 -1
- package/dist/core/history-manager.js +0 -151
- package/dist/core/history-manager.js.map +0 -1
- package/dist/core/slash-command-handler.d.ts +0 -352
- package/dist/core/slash-command-handler.d.ts.map +0 -1
- package/dist/core/slash-command-handler.js +0 -563
- package/dist/core/slash-command-handler.js.map +0 -1
- package/dist/core/task-processor.d.ts +0 -179
- package/dist/core/task-processor.d.ts.map +0 -1
- package/dist/core/task-processor.js +0 -519
- package/dist/core/task-processor.js.map +0 -1
- package/dist/index.d.ts +0 -90
- package/dist/index.d.ts.map +0 -1
- package/dist/index.js.map +0 -1
- package/dist/prompts/agent-prompt-generator.d.ts +0 -26
- package/dist/prompts/agent-prompt-generator.d.ts.map +0 -1
- package/dist/prompts/agent-prompt-generator.js +0 -244
- package/dist/prompts/agent-prompt-generator.js.map +0 -1
- package/dist/prompts/commit-message.d.ts +0 -35
- package/dist/prompts/commit-message.d.ts.map +0 -1
- package/dist/prompts/commit-message.js +0 -187
- package/dist/prompts/commit-message.js.map +0 -1
- package/dist/prompts/conversation.d.ts +0 -51
- package/dist/prompts/conversation.d.ts.map +0 -1
- package/dist/prompts/conversation.js +0 -115
- package/dist/prompts/conversation.js.map +0 -1
- package/dist/prompts/index.d.ts +0 -39
- package/dist/prompts/index.d.ts.map +0 -1
- package/dist/prompts/index.js +0 -74
- package/dist/prompts/index.js.map +0 -1
- package/dist/prompts/memory.d.ts +0 -6
- package/dist/prompts/memory.d.ts.map +0 -1
- package/dist/prompts/memory.js +0 -29
- package/dist/prompts/memory.js.map +0 -1
- package/dist/prompts/personality.d.ts +0 -77
- package/dist/prompts/personality.d.ts.map +0 -1
- package/dist/prompts/personality.js +0 -393
- package/dist/prompts/personality.js.map +0 -1
- package/dist/prompts/plan-generator.d.ts +0 -144
- package/dist/prompts/plan-generator.d.ts.map +0 -1
- package/dist/prompts/plan-generator.js +0 -553
- package/dist/prompts/plan-generator.js.map +0 -1
- package/dist/prompts/system.d.ts +0 -95
- package/dist/prompts/system.d.ts.map +0 -1
- package/dist/prompts/system.js +0 -461
- package/dist/prompts/system.js.map +0 -1
- package/dist/prompts/task-processor.d.ts +0 -94
- package/dist/prompts/task-processor.d.ts.map +0 -1
- package/dist/prompts/task-processor.js +0 -554
- package/dist/prompts/task-processor.js.map +0 -1
- package/dist/prompts/unguarded.d.ts +0 -78
- package/dist/prompts/unguarded.d.ts.map +0 -1
- package/dist/prompts/unguarded.js +0 -418
- package/dist/prompts/unguarded.js.map +0 -1
- package/dist/prompts/utils.d.ts +0 -73
- package/dist/prompts/utils.d.ts.map +0 -1
- package/dist/prompts/utils.js +0 -114
- package/dist/prompts/utils.js.map +0 -1
- package/dist/prompts/workflow.d.ts +0 -241
- package/dist/prompts/workflow.d.ts.map +0 -1
- package/dist/prompts/workflow.js +0 -608
- package/dist/prompts/workflow.js.map +0 -1
- package/dist/services/action-logger.d.ts +0 -383
- package/dist/services/action-logger.d.ts.map +0 -1
- package/dist/services/action-logger.js +0 -544
- package/dist/services/action-logger.js.map +0 -1
- package/dist/services/agent-budget-allocator.d.ts +0 -111
- package/dist/services/agent-budget-allocator.d.ts.map +0 -1
- package/dist/services/agent-budget-allocator.js +0 -278
- package/dist/services/agent-budget-allocator.js.map +0 -1
- package/dist/services/agent-manager.d.ts +0 -181
- package/dist/services/agent-manager.d.ts.map +0 -1
- package/dist/services/agent-manager.js +0 -749
- package/dist/services/agent-manager.js.map +0 -1
- package/dist/services/agent-spawner.d.ts +0 -138
- package/dist/services/agent-spawner.d.ts.map +0 -1
- package/dist/services/agent-spawner.js +0 -748
- package/dist/services/agent-spawner.js.map +0 -1
- package/dist/services/agent-state-service.d.ts +0 -145
- package/dist/services/agent-state-service.d.ts.map +0 -1
- package/dist/services/agent-state-service.js +0 -247
- package/dist/services/agent-state-service.js.map +0 -1
- package/dist/services/anthropic-client.d.ts +0 -357
- package/dist/services/anthropic-client.d.ts.map +0 -1
- package/dist/services/anthropic-client.js +0 -1451
- package/dist/services/anthropic-client.js.map +0 -1
- package/dist/services/approval-manager.d.ts +0 -385
- package/dist/services/approval-manager.d.ts.map +0 -1
- package/dist/services/approval-manager.js +0 -1044
- package/dist/services/approval-manager.js.map +0 -1
- package/dist/services/audit-logger.d.ts +0 -245
- package/dist/services/audit-logger.d.ts.map +0 -1
- package/dist/services/audit-logger.js +0 -324
- package/dist/services/audit-logger.js.map +0 -1
- package/dist/services/backup-manager.d.ts +0 -136
- package/dist/services/backup-manager.d.ts.map +0 -1
- package/dist/services/backup-manager.js +0 -260
- package/dist/services/backup-manager.js.map +0 -1
- package/dist/services/cache-service.d.ts +0 -247
- package/dist/services/cache-service.d.ts.map +0 -1
- package/dist/services/cache-service.js +0 -558
- package/dist/services/cache-service.js.map +0 -1
- package/dist/services/chat-archival-service.d.ts +0 -108
- package/dist/services/chat-archival-service.d.ts.map +0 -1
- package/dist/services/chat-archival-service.js +0 -465
- package/dist/services/chat-archival-service.js.map +0 -1
- package/dist/services/codebase-indexer.d.ts +0 -272
- package/dist/services/codebase-indexer.d.ts.map +0 -1
- package/dist/services/codebase-indexer.js +0 -863
- package/dist/services/codebase-indexer.js.map +0 -1
- package/dist/services/compass-auth-service.d.ts +0 -204
- package/dist/services/compass-auth-service.d.ts.map +0 -1
- package/dist/services/compass-auth-service.js +0 -391
- package/dist/services/compass-auth-service.js.map +0 -1
- package/dist/services/complexity-classifier.d.ts +0 -208
- package/dist/services/complexity-classifier.d.ts.map +0 -1
- package/dist/services/complexity-classifier.js +0 -1410
- package/dist/services/complexity-classifier.js.map +0 -1
- package/dist/services/config-manager.d.ts +0 -278
- package/dist/services/config-manager.d.ts.map +0 -1
- package/dist/services/config-manager.js +0 -651
- package/dist/services/config-manager.js.map +0 -1
- package/dist/services/consent-manager.d.ts +0 -239
- package/dist/services/consent-manager.d.ts.map +0 -1
- package/dist/services/consent-manager.js +0 -516
- package/dist/services/consent-manager.js.map +0 -1
- package/dist/services/conversation-compactor.d.ts +0 -223
- package/dist/services/conversation-compactor.d.ts.map +0 -1
- package/dist/services/conversation-compactor.js +0 -750
- package/dist/services/conversation-compactor.js.map +0 -1
- package/dist/services/cost-tracker.d.ts +0 -167
- package/dist/services/cost-tracker.d.ts.map +0 -1
- package/dist/services/cost-tracker.js +0 -199
- package/dist/services/cost-tracker.js.map +0 -1
- package/dist/services/credential-store.d.ts +0 -273
- package/dist/services/credential-store.d.ts.map +0 -1
- package/dist/services/credential-store.js +0 -877
- package/dist/services/credential-store.js.map +0 -1
- package/dist/services/custom-command-service.d.ts +0 -112
- package/dist/services/custom-command-service.d.ts.map +0 -1
- package/dist/services/custom-command-service.js +0 -464
- package/dist/services/custom-command-service.js.map +0 -1
- package/dist/services/default-statusline-renderer.d.ts +0 -60
- package/dist/services/default-statusline-renderer.d.ts.map +0 -1
- package/dist/services/default-statusline-renderer.js +0 -110
- package/dist/services/default-statusline-renderer.js.map +0 -1
- package/dist/services/enhanced-context-gatherer.d.ts +0 -116
- package/dist/services/enhanced-context-gatherer.d.ts.map +0 -1
- package/dist/services/enhanced-context-gatherer.js +0 -605
- package/dist/services/enhanced-context-gatherer.js.map +0 -1
- package/dist/services/file-hash-tracker.d.ts +0 -95
- package/dist/services/file-hash-tracker.d.ts.map +0 -1
- package/dist/services/file-hash-tracker.js +0 -199
- package/dist/services/file-hash-tracker.js.map +0 -1
- package/dist/services/file-service.d.ts +0 -274
- package/dist/services/file-service.d.ts.map +0 -1
- package/dist/services/file-service.js +0 -876
- package/dist/services/file-service.js.map +0 -1
- package/dist/services/git-service.d.ts +0 -536
- package/dist/services/git-service.d.ts.map +0 -1
- package/dist/services/git-service.js +0 -1215
- package/dist/services/git-service.js.map +0 -1
- package/dist/services/hook-service.d.ts +0 -148
- package/dist/services/hook-service.d.ts.map +0 -1
- package/dist/services/hook-service.js +0 -705
- package/dist/services/hook-service.js.map +0 -1
- package/dist/services/ide-state-service.d.ts +0 -114
- package/dist/services/ide-state-service.d.ts.map +0 -1
- package/dist/services/ide-state-service.js +0 -204
- package/dist/services/ide-state-service.js.map +0 -1
- package/dist/services/interactive-clarifier.d.ts +0 -90
- package/dist/services/interactive-clarifier.d.ts.map +0 -1
- package/dist/services/interactive-clarifier.js +0 -446
- package/dist/services/interactive-clarifier.js.map +0 -1
- package/dist/services/iteration-scoper.d.ts +0 -225
- package/dist/services/iteration-scoper.d.ts.map +0 -1
- package/dist/services/iteration-scoper.js +0 -387
- package/dist/services/iteration-scoper.js.map +0 -1
- package/dist/services/llm-plan-generator.d.ts +0 -44
- package/dist/services/llm-plan-generator.d.ts.map +0 -1
- package/dist/services/llm-plan-generator.js +0 -863
- package/dist/services/llm-plan-generator.js.map +0 -1
- package/dist/services/llm-system-prompt-generator.d.ts +0 -85
- package/dist/services/llm-system-prompt-generator.d.ts.map +0 -1
- package/dist/services/llm-system-prompt-generator.js +0 -257
- package/dist/services/llm-system-prompt-generator.js.map +0 -1
- package/dist/services/log-interpreter.d.ts +0 -190
- package/dist/services/log-interpreter.d.ts.map +0 -1
- package/dist/services/log-interpreter.js +0 -520
- package/dist/services/log-interpreter.js.map +0 -1
- package/dist/services/mcp-config-manager.d.ts +0 -141
- package/dist/services/mcp-config-manager.d.ts.map +0 -1
- package/dist/services/mcp-config-manager.js +0 -678
- package/dist/services/mcp-config-manager.js.map +0 -1
- package/dist/services/mcp-oauth-service.d.ts +0 -170
- package/dist/services/mcp-oauth-service.d.ts.map +0 -1
- package/dist/services/mcp-oauth-service.js +0 -892
- package/dist/services/mcp-oauth-service.js.map +0 -1
- package/dist/services/mcp-plugin-support.d.ts +0 -81
- package/dist/services/mcp-plugin-support.d.ts.map +0 -1
- package/dist/services/mcp-plugin-support.js +0 -305
- package/dist/services/mcp-plugin-support.js.map +0 -1
- package/dist/services/mcp-server-manager.d.ts +0 -134
- package/dist/services/mcp-server-manager.d.ts.map +0 -1
- package/dist/services/mcp-server-manager.js +0 -613
- package/dist/services/mcp-server-manager.js.map +0 -1
- package/dist/services/mcp-tool-integration.d.ts +0 -119
- package/dist/services/mcp-tool-integration.d.ts.map +0 -1
- package/dist/services/mcp-tool-integration.js +0 -381
- package/dist/services/mcp-tool-integration.js.map +0 -1
- package/dist/services/mcp-transport.d.ts +0 -105
- package/dist/services/mcp-transport.d.ts.map +0 -1
- package/dist/services/mcp-transport.js +0 -1316
- package/dist/services/mcp-transport.js.map +0 -1
- package/dist/services/memory-service.d.ts +0 -55
- package/dist/services/memory-service.d.ts.map +0 -1
- package/dist/services/memory-service.js +0 -251
- package/dist/services/memory-service.js.map +0 -1
- package/dist/services/model-availability.d.ts +0 -64
- package/dist/services/model-availability.d.ts.map +0 -1
- package/dist/services/model-availability.js +0 -114
- package/dist/services/model-availability.js.map +0 -1
- package/dist/services/plan-generator.d.ts +0 -98
- package/dist/services/plan-generator.d.ts.map +0 -1
- package/dist/services/plan-generator.js +0 -658
- package/dist/services/plan-generator.js.map +0 -1
- package/dist/services/plan-mode-fallback.d.ts +0 -80
- package/dist/services/plan-mode-fallback.d.ts.map +0 -1
- package/dist/services/plan-mode-fallback.js +0 -307
- package/dist/services/plan-mode-fallback.js.map +0 -1
- package/dist/services/plan-mode-handler.d.ts +0 -42
- package/dist/services/plan-mode-handler.d.ts.map +0 -1
- package/dist/services/plan-mode-handler.js +0 -388
- package/dist/services/plan-mode-handler.js.map +0 -1
- package/dist/services/plan-persistence.d.ts +0 -203
- package/dist/services/plan-persistence.d.ts.map +0 -1
- package/dist/services/plan-persistence.js +0 -538
- package/dist/services/plan-persistence.js.map +0 -1
- package/dist/services/prompt-preprocessor.d.ts +0 -73
- package/dist/services/prompt-preprocessor.d.ts.map +0 -1
- package/dist/services/prompt-preprocessor.js +0 -146
- package/dist/services/prompt-preprocessor.js.map +0 -1
- package/dist/services/rating-service.d.ts +0 -84
- package/dist/services/rating-service.d.ts.map +0 -1
- package/dist/services/rating-service.js +0 -171
- package/dist/services/rating-service.js.map +0 -1
- package/dist/services/rating-state-manager.d.ts +0 -131
- package/dist/services/rating-state-manager.d.ts.map +0 -1
- package/dist/services/rating-state-manager.js +0 -270
- package/dist/services/rating-state-manager.js.map +0 -1
- package/dist/services/sdk-runner.d.ts +0 -113
- package/dist/services/sdk-runner.d.ts.map +0 -1
- package/dist/services/sdk-runner.js +0 -1424
- package/dist/services/sdk-runner.js.map +0 -1
- package/dist/services/session-manager.d.ts +0 -528
- package/dist/services/session-manager.d.ts.map +0 -1
- package/dist/services/session-manager.js +0 -1184
- package/dist/services/session-manager.js.map +0 -1
- package/dist/services/shell-executor.d.ts +0 -337
- package/dist/services/shell-executor.d.ts.map +0 -1
- package/dist/services/shell-executor.js +0 -1201
- package/dist/services/shell-executor.js.map +0 -1
- package/dist/services/skill-service.d.ts +0 -149
- package/dist/services/skill-service.d.ts.map +0 -1
- package/dist/services/skill-service.js +0 -594
- package/dist/services/skill-service.js.map +0 -1
- package/dist/services/statusline-executor.d.ts +0 -102
- package/dist/services/statusline-executor.d.ts.map +0 -1
- package/dist/services/statusline-executor.js +0 -305
- package/dist/services/statusline-executor.js.map +0 -1
- package/dist/services/step-tracker.d.ts +0 -356
- package/dist/services/step-tracker.d.ts.map +0 -1
- package/dist/services/step-tracker.js +0 -634
- package/dist/services/step-tracker.js.map +0 -1
- package/dist/services/system-event-logger.d.ts +0 -473
- package/dist/services/system-event-logger.d.ts.map +0 -1
- package/dist/services/system-event-logger.js +0 -790
- package/dist/services/system-event-logger.js.map +0 -1
- package/dist/services/system-utility-detector.d.ts +0 -91
- package/dist/services/system-utility-detector.d.ts.map +0 -1
- package/dist/services/system-utility-detector.js +0 -238
- package/dist/services/system-utility-detector.js.map +0 -1
- package/dist/services/team-context-store.d.ts +0 -100
- package/dist/services/team-context-store.d.ts.map +0 -1
- package/dist/services/team-context-store.js +0 -513
- package/dist/services/team-context-store.js.map +0 -1
- package/dist/services/temp-file-service.d.ts +0 -164
- package/dist/services/temp-file-service.d.ts.map +0 -1
- package/dist/services/temp-file-service.js +0 -303
- package/dist/services/temp-file-service.js.map +0 -1
- package/dist/services/token-limit-enforcer.d.ts +0 -53
- package/dist/services/token-limit-enforcer.d.ts.map +0 -1
- package/dist/services/token-limit-enforcer.js +0 -90
- package/dist/services/token-limit-enforcer.js.map +0 -1
- package/dist/services/token-limit-store.d.ts +0 -105
- package/dist/services/token-limit-store.d.ts.map +0 -1
- package/dist/services/token-limit-store.js +0 -288
- package/dist/services/token-limit-store.js.map +0 -1
- package/dist/services/token-tracker.d.ts +0 -290
- package/dist/services/token-tracker.d.ts.map +0 -1
- package/dist/services/token-tracker.js +0 -751
- package/dist/services/token-tracker.js.map +0 -1
- package/dist/services/tool-registry.d.ts +0 -302
- package/dist/services/tool-registry.d.ts.map +0 -1
- package/dist/services/tool-registry.js +0 -606
- package/dist/services/tool-registry.js.map +0 -1
- package/dist/services/tools-logger.d.ts +0 -152
- package/dist/services/tools-logger.d.ts.map +0 -1
- package/dist/services/tools-logger.js +0 -222
- package/dist/services/tools-logger.js.map +0 -1
- package/dist/services/update-plan-handler.d.ts +0 -56
- package/dist/services/update-plan-handler.d.ts.map +0 -1
- package/dist/services/update-plan-handler.js +0 -372
- package/dist/services/update-plan-handler.js.map +0 -1
- package/dist/services/update-service.d.ts +0 -197
- package/dist/services/update-service.d.ts.map +0 -1
- package/dist/services/update-service.js +0 -749
- package/dist/services/update-service.js.map +0 -1
- package/dist/services/verifier.d.ts +0 -113
- package/dist/services/verifier.d.ts.map +0 -1
- package/dist/services/verifier.js +0 -541
- package/dist/services/verifier.js.map +0 -1
- package/dist/services/workflow-manager.d.ts +0 -277
- package/dist/services/workflow-manager.d.ts.map +0 -1
- package/dist/services/workflow-manager.js +0 -616
- package/dist/services/workflow-manager.js.map +0 -1
- package/dist/services/workflow-orchestrator.d.ts +0 -148
- package/dist/services/workflow-orchestrator.d.ts.map +0 -1
- package/dist/services/workflow-orchestrator.js +0 -617
- package/dist/services/workflow-orchestrator.js.map +0 -1
- package/dist/services/worktree-manager.d.ts +0 -36
- package/dist/services/worktree-manager.d.ts.map +0 -1
- package/dist/services/worktree-manager.js +0 -185
- package/dist/services/worktree-manager.js.map +0 -1
- package/dist/templates/ascii-art.d.ts +0 -136
- package/dist/templates/ascii-art.d.ts.map +0 -1
- package/dist/templates/ascii-art.js +0 -286
- package/dist/templates/ascii-art.js.map +0 -1
- package/dist/templates/help.d.ts +0 -186
- package/dist/templates/help.d.ts.map +0 -1
- package/dist/templates/help.js +0 -588
- package/dist/templates/help.js.map +0 -1
- package/dist/templates/prompts/workflow-prompts.d.ts +0 -9
- package/dist/templates/prompts/workflow-prompts.d.ts.map +0 -1
- package/dist/templates/prompts/workflow-prompts.js +0 -9
- package/dist/templates/prompts/workflow-prompts.js.map +0 -1
- package/dist/tools/agent-tools.d.ts +0 -9
- package/dist/tools/agent-tools.d.ts.map +0 -1
- package/dist/tools/agent-tools.js +0 -349
- package/dist/tools/agent-tools.js.map +0 -1
- package/dist/tools/edit-replacers.d.ts +0 -90
- package/dist/tools/edit-replacers.d.ts.map +0 -1
- package/dist/tools/edit-replacers.js +0 -553
- package/dist/tools/edit-replacers.js.map +0 -1
- package/dist/tools/file-tools.d.ts +0 -13
- package/dist/tools/file-tools.d.ts.map +0 -1
- package/dist/tools/file-tools.js +0 -954
- package/dist/tools/file-tools.js.map +0 -1
- package/dist/tools/git-tools.d.ts +0 -9
- package/dist/tools/git-tools.d.ts.map +0 -1
- package/dist/tools/git-tools.js +0 -261
- package/dist/tools/git-tools.js.map +0 -1
- package/dist/tools/index.d.ts +0 -13
- package/dist/tools/index.d.ts.map +0 -1
- package/dist/tools/index.js +0 -70
- package/dist/tools/index.js.map +0 -1
- package/dist/tools/network-tools.d.ts +0 -8
- package/dist/tools/network-tools.d.ts.map +0 -1
- package/dist/tools/network-tools.js +0 -261
- package/dist/tools/network-tools.js.map +0 -1
- package/dist/tools/openai-tools.d.ts +0 -16
- package/dist/tools/openai-tools.d.ts.map +0 -1
- package/dist/tools/openai-tools.js +0 -385
- package/dist/tools/openai-tools.js.map +0 -1
- package/dist/tools/plan-tools.d.ts +0 -9
- package/dist/tools/plan-tools.d.ts.map +0 -1
- package/dist/tools/plan-tools.js +0 -223
- package/dist/tools/plan-tools.js.map +0 -1
- package/dist/tools/schedule-tools.d.ts +0 -9
- package/dist/tools/schedule-tools.d.ts.map +0 -1
- package/dist/tools/schedule-tools.js +0 -405
- package/dist/tools/schedule-tools.js.map +0 -1
- package/dist/tools/search-tools.d.ts +0 -8
- package/dist/tools/search-tools.d.ts.map +0 -1
- package/dist/tools/search-tools.js +0 -357
- package/dist/tools/search-tools.js.map +0 -1
- package/dist/tools/shared-utils.d.ts +0 -91
- package/dist/tools/shared-utils.d.ts.map +0 -1
- package/dist/tools/shared-utils.js +0 -385
- package/dist/tools/shared-utils.js.map +0 -1
- package/dist/tools/shell-tools.d.ts +0 -9
- package/dist/tools/shell-tools.d.ts.map +0 -1
- package/dist/tools/shell-tools.js +0 -409
- package/dist/tools/shell-tools.js.map +0 -1
- package/dist/tools/skill-tools.d.ts +0 -13
- package/dist/tools/skill-tools.d.ts.map +0 -1
- package/dist/tools/skill-tools.js +0 -244
- package/dist/tools/skill-tools.js.map +0 -1
- package/dist/tools/swarm-tools.d.ts +0 -9
- package/dist/tools/swarm-tools.d.ts.map +0 -1
- package/dist/tools/swarm-tools.js +0 -422
- package/dist/tools/swarm-tools.js.map +0 -1
- package/dist/tools/user-tools.d.ts +0 -13
- package/dist/tools/user-tools.d.ts.map +0 -1
- package/dist/tools/user-tools.js +0 -232
- package/dist/tools/user-tools.js.map +0 -1
- package/dist/types/agent-process.d.ts +0 -244
- package/dist/types/agent-process.d.ts.map +0 -1
- package/dist/types/agent-process.js +0 -93
- package/dist/types/agent-process.js.map +0 -1
- package/dist/types/agent.d.ts +0 -358
- package/dist/types/agent.d.ts.map +0 -1
- package/dist/types/agent.js +0 -171
- package/dist/types/agent.js.map +0 -1
- package/dist/types/anthropic.d.ts +0 -438
- package/dist/types/anthropic.d.ts.map +0 -1
- package/dist/types/anthropic.js +0 -9
- package/dist/types/anthropic.js.map +0 -1
- package/dist/types/approval.d.ts +0 -332
- package/dist/types/approval.d.ts.map +0 -1
- package/dist/types/approval.js +0 -44
- package/dist/types/approval.js.map +0 -1
- package/dist/types/autocomplete.d.ts +0 -57
- package/dist/types/autocomplete.d.ts.map +0 -1
- package/dist/types/autocomplete.js +0 -7
- package/dist/types/autocomplete.js.map +0 -1
- package/dist/types/chat-archive.d.ts +0 -161
- package/dist/types/chat-archive.d.ts.map +0 -1
- package/dist/types/chat-archive.js +0 -36
- package/dist/types/chat-archive.js.map +0 -1
- package/dist/types/config.d.ts +0 -268
- package/dist/types/config.d.ts.map +0 -1
- package/dist/types/config.js +0 -188
- package/dist/types/config.js.map +0 -1
- package/dist/types/consent.d.ts +0 -191
- package/dist/types/consent.d.ts.map +0 -1
- package/dist/types/consent.js +0 -119
- package/dist/types/consent.js.map +0 -1
- package/dist/types/custom-command.d.ts +0 -139
- package/dist/types/custom-command.d.ts.map +0 -1
- package/dist/types/custom-command.js +0 -7
- package/dist/types/custom-command.js.map +0 -1
- package/dist/types/git.d.ts +0 -20
- package/dist/types/git.d.ts.map +0 -1
- package/dist/types/git.js +0 -2
- package/dist/types/git.js.map +0 -1
- package/dist/types/hook.d.ts +0 -342
- package/dist/types/hook.d.ts.map +0 -1
- package/dist/types/hook.js +0 -84
- package/dist/types/hook.js.map +0 -1
- package/dist/types/index.d.ts +0 -86
- package/dist/types/index.d.ts.map +0 -1
- package/dist/types/index.js +0 -71
- package/dist/types/index.js.map +0 -1
- package/dist/types/mcp.d.ts +0 -456
- package/dist/types/mcp.d.ts.map +0 -1
- package/dist/types/mcp.js +0 -94
- package/dist/types/mcp.js.map +0 -1
- package/dist/types/rating.d.ts +0 -110
- package/dist/types/rating.d.ts.map +0 -1
- package/dist/types/rating.js +0 -53
- package/dist/types/rating.js.map +0 -1
- package/dist/types/schedule.d.ts +0 -91
- package/dist/types/schedule.d.ts.map +0 -1
- package/dist/types/schedule.js +0 -8
- package/dist/types/schedule.js.map +0 -1
- package/dist/types/session.d.ts +0 -361
- package/dist/types/session.d.ts.map +0 -1
- package/dist/types/session.js +0 -9
- package/dist/types/session.js.map +0 -1
- package/dist/types/skill.d.ts +0 -258
- package/dist/types/skill.d.ts.map +0 -1
- package/dist/types/skill.js +0 -79
- package/dist/types/skill.js.map +0 -1
- package/dist/types/statusline.d.ts +0 -212
- package/dist/types/statusline.d.ts.map +0 -1
- package/dist/types/statusline.js +0 -8
- package/dist/types/statusline.js.map +0 -1
- package/dist/types/stream.d.ts +0 -61
- package/dist/types/stream.d.ts.map +0 -1
- package/dist/types/stream.js +0 -17
- package/dist/types/stream.js.map +0 -1
- package/dist/types/swarm.d.ts +0 -132
- package/dist/types/swarm.d.ts.map +0 -1
- package/dist/types/swarm.js +0 -21
- package/dist/types/swarm.js.map +0 -1
- package/dist/types/token-limits.d.ts +0 -107
- package/dist/types/token-limits.d.ts.map +0 -1
- package/dist/types/token-limits.js +0 -57
- package/dist/types/token-limits.js.map +0 -1
- package/dist/types/token.d.ts +0 -329
- package/dist/types/token.d.ts.map +0 -1
- package/dist/types/token.js +0 -9
- package/dist/types/token.js.map +0 -1
- package/dist/types/update.d.ts +0 -189
- package/dist/types/update.d.ts.map +0 -1
- package/dist/types/update.js +0 -55
- package/dist/types/update.js.map +0 -1
- package/dist/types/workflow.d.ts +0 -396
- package/dist/types/workflow.d.ts.map +0 -1
- package/dist/types/workflow.js +0 -46
- package/dist/types/workflow.js.map +0 -1
- package/dist/ui/App.d.ts +0 -62
- package/dist/ui/App.d.ts.map +0 -1
- package/dist/ui/App.js +0 -511
- package/dist/ui/App.js.map +0 -1
- package/dist/ui/InteractiveSession.d.ts +0 -34
- package/dist/ui/InteractiveSession.d.ts.map +0 -1
- package/dist/ui/InteractiveSession.js +0 -3611
- package/dist/ui/InteractiveSession.js.map +0 -1
- package/dist/ui/MCPApprovalPrompt.d.ts +0 -27
- package/dist/ui/MCPApprovalPrompt.d.ts.map +0 -1
- package/dist/ui/MCPApprovalPrompt.js +0 -51
- package/dist/ui/MCPApprovalPrompt.js.map +0 -1
- package/dist/ui/SetupWizard.d.ts +0 -26
- package/dist/ui/SetupWizard.d.ts.map +0 -1
- package/dist/ui/SetupWizard.js +0 -396
- package/dist/ui/SetupWizard.js.map +0 -1
- package/dist/ui/components/AgentCreationWizard.d.ts +0 -36
- package/dist/ui/components/AgentCreationWizard.d.ts.map +0 -1
- package/dist/ui/components/AgentCreationWizard.js +0 -619
- package/dist/ui/components/AgentCreationWizard.js.map +0 -1
- package/dist/ui/components/AgentManager.d.ts +0 -41
- package/dist/ui/components/AgentManager.d.ts.map +0 -1
- package/dist/ui/components/AgentManager.js +0 -343
- package/dist/ui/components/AgentManager.js.map +0 -1
- package/dist/ui/components/ApprovalDialog.d.ts +0 -18
- package/dist/ui/components/ApprovalDialog.d.ts.map +0 -1
- package/dist/ui/components/ApprovalDialog.js +0 -439
- package/dist/ui/components/ApprovalDialog.js.map +0 -1
- package/dist/ui/components/AsciiArt.d.ts +0 -54
- package/dist/ui/components/AsciiArt.d.ts.map +0 -1
- package/dist/ui/components/AsciiArt.js +0 -89
- package/dist/ui/components/AsciiArt.js.map +0 -1
- package/dist/ui/components/ClarificationWizard.d.ts +0 -36
- package/dist/ui/components/ClarificationWizard.d.ts.map +0 -1
- package/dist/ui/components/ClarificationWizard.js +0 -407
- package/dist/ui/components/ClarificationWizard.js.map +0 -1
- package/dist/ui/components/CompassSpinner.d.ts +0 -15
- package/dist/ui/components/CompassSpinner.d.ts.map +0 -1
- package/dist/ui/components/CompassSpinner.js +0 -50
- package/dist/ui/components/CompassSpinner.js.map +0 -1
- package/dist/ui/components/ConfirmationSelector.d.ts +0 -45
- package/dist/ui/components/ConfirmationSelector.d.ts.map +0 -1
- package/dist/ui/components/ConfirmationSelector.js +0 -106
- package/dist/ui/components/ConfirmationSelector.js.map +0 -1
- package/dist/ui/components/ContextUsage.d.ts +0 -76
- package/dist/ui/components/ContextUsage.d.ts.map +0 -1
- package/dist/ui/components/ContextUsage.js +0 -188
- package/dist/ui/components/ContextUsage.js.map +0 -1
- package/dist/ui/components/DiffPreview.d.ts +0 -13
- package/dist/ui/components/DiffPreview.d.ts.map +0 -1
- package/dist/ui/components/DiffPreview.js +0 -30
- package/dist/ui/components/DiffPreview.js.map +0 -1
- package/dist/ui/components/ExecutionModeSelector.d.ts +0 -45
- package/dist/ui/components/ExecutionModeSelector.d.ts.map +0 -1
- package/dist/ui/components/ExecutionModeSelector.js +0 -120
- package/dist/ui/components/ExecutionModeSelector.js.map +0 -1
- package/dist/ui/components/FileTree.d.ts +0 -47
- package/dist/ui/components/FileTree.d.ts.map +0 -1
- package/dist/ui/components/FileTree.js +0 -258
- package/dist/ui/components/FileTree.js.map +0 -1
- package/dist/ui/components/HelpMenu.d.ts +0 -49
- package/dist/ui/components/HelpMenu.d.ts.map +0 -1
- package/dist/ui/components/HelpMenu.js +0 -91
- package/dist/ui/components/HelpMenu.js.map +0 -1
- package/dist/ui/components/InterleavedStream.d.ts +0 -42
- package/dist/ui/components/InterleavedStream.d.ts.map +0 -1
- package/dist/ui/components/InterleavedStream.js +0 -1500
- package/dist/ui/components/InterleavedStream.js.map +0 -1
- package/dist/ui/components/ModelSelector.d.ts +0 -81
- package/dist/ui/components/ModelSelector.d.ts.map +0 -1
- package/dist/ui/components/ModelSelector.js +0 -305
- package/dist/ui/components/ModelSelector.js.map +0 -1
- package/dist/ui/components/PlanApprovalDialog.d.ts +0 -21
- package/dist/ui/components/PlanApprovalDialog.d.ts.map +0 -1
- package/dist/ui/components/PlanApprovalDialog.js +0 -189
- package/dist/ui/components/PlanApprovalDialog.js.map +0 -1
- package/dist/ui/components/PlanExecutionTracker.d.ts +0 -53
- package/dist/ui/components/PlanExecutionTracker.d.ts.map +0 -1
- package/dist/ui/components/PlanExecutionTracker.js +0 -113
- package/dist/ui/components/PlanExecutionTracker.js.map +0 -1
- package/dist/ui/components/ProgressIndicator.d.ts +0 -151
- package/dist/ui/components/ProgressIndicator.d.ts.map +0 -1
- package/dist/ui/components/ProgressIndicator.js +0 -171
- package/dist/ui/components/ProgressIndicator.js.map +0 -1
- package/dist/ui/components/Prompt.d.ts +0 -47
- package/dist/ui/components/Prompt.d.ts.map +0 -1
- package/dist/ui/components/Prompt.js +0 -632
- package/dist/ui/components/Prompt.js.map +0 -1
- package/dist/ui/components/RatingPanel.d.ts +0 -45
- package/dist/ui/components/RatingPanel.d.ts.map +0 -1
- package/dist/ui/components/RatingPanel.js +0 -119
- package/dist/ui/components/RatingPanel.js.map +0 -1
- package/dist/ui/components/StatusLine.d.ts +0 -43
- package/dist/ui/components/StatusLine.d.ts.map +0 -1
- package/dist/ui/components/StatusLine.js +0 -44
- package/dist/ui/components/StatusLine.js.map +0 -1
- package/dist/ui/components/StreamingResponse.d.ts +0 -45
- package/dist/ui/components/StreamingResponse.d.ts.map +0 -1
- package/dist/ui/components/StreamingResponse.js +0 -56
- package/dist/ui/components/StreamingResponse.js.map +0 -1
- package/dist/ui/components/TokenUsage.d.ts +0 -89
- package/dist/ui/components/TokenUsage.d.ts.map +0 -1
- package/dist/ui/components/TokenUsage.js +0 -99
- package/dist/ui/components/TokenUsage.js.map +0 -1
- package/dist/ui/components/ToolSummary.d.ts +0 -77
- package/dist/ui/components/ToolSummary.d.ts.map +0 -1
- package/dist/ui/components/ToolSummary.js +0 -162
- package/dist/ui/components/ToolSummary.js.map +0 -1
- package/dist/ui/components/UpdateNotification.d.ts +0 -65
- package/dist/ui/components/UpdateNotification.d.ts.map +0 -1
- package/dist/ui/components/UpdateNotification.js +0 -166
- package/dist/ui/components/UpdateNotification.js.map +0 -1
- package/dist/ui/diff-renderer.d.ts +0 -18
- package/dist/ui/diff-renderer.d.ts.map +0 -1
- package/dist/ui/diff-renderer.js +0 -206
- package/dist/ui/diff-renderer.js.map +0 -1
- package/dist/ui/themes/markdown-theme.d.ts +0 -48
- package/dist/ui/themes/markdown-theme.d.ts.map +0 -1
- package/dist/ui/themes/markdown-theme.js +0 -79
- package/dist/ui/themes/markdown-theme.js.map +0 -1
- package/dist/ui/themes/ui-theme.d.ts +0 -301
- package/dist/ui/themes/ui-theme.d.ts.map +0 -1
- package/dist/ui/themes/ui-theme.js +0 -204
- package/dist/ui/themes/ui-theme.js.map +0 -1
- package/dist/utils/attachment-handler.d.ts +0 -129
- package/dist/utils/attachment-handler.d.ts.map +0 -1
- package/dist/utils/attachment-handler.js +0 -280
- package/dist/utils/attachment-handler.js.map +0 -1
- package/dist/utils/backup-cleanup.d.ts +0 -28
- package/dist/utils/backup-cleanup.d.ts.map +0 -1
- package/dist/utils/backup-cleanup.js +0 -99
- package/dist/utils/backup-cleanup.js.map +0 -1
- package/dist/utils/clipboard-handler.d.ts +0 -82
- package/dist/utils/clipboard-handler.d.ts.map +0 -1
- package/dist/utils/clipboard-handler.js +0 -311
- package/dist/utils/clipboard-handler.js.map +0 -1
- package/dist/utils/cloud-detection.d.ts +0 -14
- package/dist/utils/cloud-detection.d.ts.map +0 -1
- package/dist/utils/cloud-detection.js +0 -92
- package/dist/utils/cloud-detection.js.map +0 -1
- package/dist/utils/command-parser.d.ts +0 -56
- package/dist/utils/command-parser.d.ts.map +0 -1
- package/dist/utils/command-parser.js +0 -206
- package/dist/utils/command-parser.js.map +0 -1
- package/dist/utils/console-capture.d.ts +0 -30
- package/dist/utils/console-capture.d.ts.map +0 -1
- package/dist/utils/console-capture.js +0 -88
- package/dist/utils/console-capture.js.map +0 -1
- package/dist/utils/cron-parser.d.ts +0 -52
- package/dist/utils/cron-parser.d.ts.map +0 -1
- package/dist/utils/cron-parser.js +0 -455
- package/dist/utils/cron-parser.js.map +0 -1
- package/dist/utils/crypto.d.ts +0 -351
- package/dist/utils/crypto.d.ts.map +0 -1
- package/dist/utils/crypto.js +0 -615
- package/dist/utils/crypto.js.map +0 -1
- package/dist/utils/diff.d.ts +0 -311
- package/dist/utils/diff.d.ts.map +0 -1
- package/dist/utils/diff.js +0 -566
- package/dist/utils/diff.js.map +0 -1
- package/dist/utils/editor.d.ts +0 -12
- package/dist/utils/editor.d.ts.map +0 -1
- package/dist/utils/editor.js +0 -30
- package/dist/utils/editor.js.map +0 -1
- package/dist/utils/file-system.d.ts +0 -512
- package/dist/utils/file-system.d.ts.map +0 -1
- package/dist/utils/file-system.js +0 -798
- package/dist/utils/file-system.js.map +0 -1
- package/dist/utils/format.d.ts +0 -318
- package/dist/utils/format.d.ts.map +0 -1
- package/dist/utils/format.js +0 -587
- package/dist/utils/format.js.map +0 -1
- package/dist/utils/ignore-patterns.d.ts +0 -93
- package/dist/utils/ignore-patterns.d.ts.map +0 -1
- package/dist/utils/ignore-patterns.js +0 -710
- package/dist/utils/ignore-patterns.js.map +0 -1
- package/dist/utils/log-cleanup.d.ts +0 -16
- package/dist/utils/log-cleanup.d.ts.map +0 -1
- package/dist/utils/log-cleanup.js +0 -51
- package/dist/utils/log-cleanup.js.map +0 -1
- package/dist/utils/logger.d.ts +0 -305
- package/dist/utils/logger.d.ts.map +0 -1
- package/dist/utils/logger.js +0 -447
- package/dist/utils/logger.js.map +0 -1
- package/dist/utils/path.d.ts +0 -406
- package/dist/utils/path.d.ts.map +0 -1
- package/dist/utils/path.js +0 -549
- package/dist/utils/path.js.map +0 -1
- package/dist/utils/schedule-file.d.ts +0 -63
- package/dist/utils/schedule-file.d.ts.map +0 -1
- package/dist/utils/schedule-file.js +0 -244
- package/dist/utils/schedule-file.js.map +0 -1
- package/dist/utils/task-id.d.ts +0 -29
- package/dist/utils/task-id.d.ts.map +0 -1
- package/dist/utils/task-id.js +0 -53
- package/dist/utils/task-id.js.map +0 -1
- package/dist/utils/temp-cleanup.d.ts +0 -46
- package/dist/utils/temp-cleanup.d.ts.map +0 -1
- package/dist/utils/temp-cleanup.js +0 -95
- package/dist/utils/temp-cleanup.js.map +0 -1
- package/dist/utils/terminal-output.d.ts +0 -34
- package/dist/utils/terminal-output.d.ts.map +0 -1
- package/dist/utils/terminal-output.js +0 -40
- package/dist/utils/terminal-output.js.map +0 -1
- package/dist/utils/token-counter.d.ts +0 -224
- package/dist/utils/token-counter.d.ts.map +0 -1
- package/dist/utils/token-counter.js +0 -332
- package/dist/utils/token-counter.js.map +0 -1
- package/dist/utils/tool-mapper.d.ts +0 -70
- package/dist/utils/tool-mapper.d.ts.map +0 -1
- package/dist/utils/tool-mapper.js +0 -234
- package/dist/utils/tool-mapper.js.map +0 -1
package/dist/utils/crypto.js
DELETED
|
@@ -1,615 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Cryptographic utilities for encryption/decryption of sensitive data.
|
|
3
|
-
*
|
|
4
|
-
* This module provides secure cryptographic operations for the Compass CLI,
|
|
5
|
-
* including AES-256-GCM encryption/decryption, secure random generation,
|
|
6
|
-
* hashing, and HMAC signatures.
|
|
7
|
-
*
|
|
8
|
-
* Security features:
|
|
9
|
-
* - AES-256-GCM authenticated encryption
|
|
10
|
-
* - PBKDF2 key derivation with 100,000 iterations
|
|
11
|
-
* - Cryptographically secure random number generation
|
|
12
|
-
* - Constant-time string comparison to prevent timing attacks
|
|
13
|
-
* - SHA-256 hashing for data integrity
|
|
14
|
-
* - HMAC-SHA256 for message authentication
|
|
15
|
-
*/
|
|
16
|
-
import crypto from 'crypto';
|
|
17
|
-
import os from 'os';
|
|
18
|
-
// =============================================================================
|
|
19
|
-
// Constants
|
|
20
|
-
// =============================================================================
|
|
21
|
-
/**
|
|
22
|
-
* Encryption algorithm: AES-256 in GCM mode for authenticated encryption
|
|
23
|
-
*/
|
|
24
|
-
const ALGORITHM = 'aes-256-gcm';
|
|
25
|
-
/**
|
|
26
|
-
* Initialization vector length in bytes (128 bits for AES-GCM)
|
|
27
|
-
*/
|
|
28
|
-
const IV_LENGTH = 16;
|
|
29
|
-
/**
|
|
30
|
-
* Salt length in bytes for key derivation
|
|
31
|
-
*/
|
|
32
|
-
const SALT_LENGTH = 32;
|
|
33
|
-
/**
|
|
34
|
-
* Authentication tag length in bytes for GCM mode
|
|
35
|
-
*/
|
|
36
|
-
const TAG_LENGTH = 16;
|
|
37
|
-
/**
|
|
38
|
-
* Derived key length in bytes (256 bits for AES-256)
|
|
39
|
-
*/
|
|
40
|
-
const KEY_LENGTH = 32;
|
|
41
|
-
/**
|
|
42
|
-
* Number of PBKDF2 iterations for key derivation
|
|
43
|
-
* Higher values increase security but also computation time
|
|
44
|
-
*/
|
|
45
|
-
const ITERATIONS = 100000;
|
|
46
|
-
/**
|
|
47
|
-
* Hash algorithm used for PBKDF2 key derivation
|
|
48
|
-
*/
|
|
49
|
-
const HASH_ALGORITHM = 'sha256';
|
|
50
|
-
// =============================================================================
|
|
51
|
-
// Key Derivation
|
|
52
|
-
// =============================================================================
|
|
53
|
-
/**
|
|
54
|
-
* Derives a cryptographic key from a password using PBKDF2.
|
|
55
|
-
*
|
|
56
|
-
* PBKDF2 (Password-Based Key Derivation Function 2) is used to derive
|
|
57
|
-
* a secure encryption key from a potentially weak password. The high
|
|
58
|
-
* iteration count makes brute-force attacks computationally expensive.
|
|
59
|
-
*
|
|
60
|
-
* @param password - The password to derive the key from
|
|
61
|
-
* @param salt - Random salt to prevent rainbow table attacks
|
|
62
|
-
* @returns Derived key buffer of KEY_LENGTH bytes
|
|
63
|
-
*/
|
|
64
|
-
function deriveKey(password, salt) {
|
|
65
|
-
return crypto.pbkdf2Sync(password, salt, ITERATIONS, KEY_LENGTH, HASH_ALGORITHM);
|
|
66
|
-
}
|
|
67
|
-
// =============================================================================
|
|
68
|
-
// Encryption / Decryption
|
|
69
|
-
// =============================================================================
|
|
70
|
-
/**
|
|
71
|
-
* Encrypts plaintext data using AES-256-GCM authenticated encryption.
|
|
72
|
-
*
|
|
73
|
-
* The encryption process:
|
|
74
|
-
* 1. Generates a random salt for key derivation
|
|
75
|
-
* 2. Derives an encryption key from the password using PBKDF2
|
|
76
|
-
* 3. Generates a random initialization vector (IV)
|
|
77
|
-
* 4. Encrypts the data using AES-256-GCM
|
|
78
|
-
* 5. Combines salt + IV + auth tag + ciphertext into a single output
|
|
79
|
-
*
|
|
80
|
-
* The output format is: salt (32 bytes) + IV (16 bytes) + tag (16 bytes) + ciphertext
|
|
81
|
-
* All encoded as base64 for safe storage and transmission.
|
|
82
|
-
*
|
|
83
|
-
* @param plaintext - The string data to encrypt
|
|
84
|
-
* @param password - The password used for key derivation
|
|
85
|
-
* @returns Base64-encoded encrypted data containing salt, IV, tag, and ciphertext
|
|
86
|
-
*
|
|
87
|
-
* @example
|
|
88
|
-
* ```typescript
|
|
89
|
-
* const encrypted = encrypt('my secret data', 'strong-password');
|
|
90
|
-
* // Returns: base64-encoded string
|
|
91
|
-
* ```
|
|
92
|
-
*/
|
|
93
|
-
export function encrypt(plaintext, password) {
|
|
94
|
-
// Generate random salt for key derivation
|
|
95
|
-
const salt = crypto.randomBytes(SALT_LENGTH);
|
|
96
|
-
// Generate random initialization vector
|
|
97
|
-
const iv = crypto.randomBytes(IV_LENGTH);
|
|
98
|
-
// Derive encryption key from password
|
|
99
|
-
const key = deriveKey(password, salt);
|
|
100
|
-
// Create cipher with AES-256-GCM
|
|
101
|
-
const cipher = crypto.createCipheriv(ALGORITHM, key, iv);
|
|
102
|
-
// Encrypt the plaintext
|
|
103
|
-
let encrypted = cipher.update(plaintext, 'utf8', 'hex');
|
|
104
|
-
encrypted += cipher.final('hex');
|
|
105
|
-
// Get the authentication tag
|
|
106
|
-
const tag = cipher.getAuthTag();
|
|
107
|
-
// Combine all components: salt + iv + tag + encrypted data
|
|
108
|
-
const combined = Buffer.concat([
|
|
109
|
-
salt,
|
|
110
|
-
iv,
|
|
111
|
-
tag,
|
|
112
|
-
Buffer.from(encrypted, 'hex'),
|
|
113
|
-
]);
|
|
114
|
-
// Return as base64 for safe storage
|
|
115
|
-
return combined.toString('base64');
|
|
116
|
-
}
|
|
117
|
-
/**
|
|
118
|
-
* Decrypts data that was encrypted with the encrypt() function.
|
|
119
|
-
*
|
|
120
|
-
* The decryption process:
|
|
121
|
-
* 1. Decodes the base64 input
|
|
122
|
-
* 2. Extracts salt, IV, authentication tag, and ciphertext
|
|
123
|
-
* 3. Derives the decryption key using the same password and salt
|
|
124
|
-
* 4. Verifies the authentication tag and decrypts the data
|
|
125
|
-
*
|
|
126
|
-
* @param encryptedData - Base64-encoded encrypted data from encrypt()
|
|
127
|
-
* @param password - The same password used for encryption
|
|
128
|
-
* @returns The original plaintext string
|
|
129
|
-
* @throws Error if decryption fails (wrong password, corrupted data, or tampering)
|
|
130
|
-
*
|
|
131
|
-
* @example
|
|
132
|
-
* ```typescript
|
|
133
|
-
* const encrypted = encrypt('my secret data', 'strong-password');
|
|
134
|
-
* const decrypted = decrypt(encrypted, 'strong-password');
|
|
135
|
-
* // Returns: 'my secret data'
|
|
136
|
-
* ```
|
|
137
|
-
*/
|
|
138
|
-
export function decrypt(encryptedData, password) {
|
|
139
|
-
// Decode from base64
|
|
140
|
-
const combined = Buffer.from(encryptedData, 'base64');
|
|
141
|
-
// Validate minimum length
|
|
142
|
-
const minLength = SALT_LENGTH + IV_LENGTH + TAG_LENGTH + 1;
|
|
143
|
-
if (combined.length < minLength) {
|
|
144
|
-
throw new Error('Invalid encrypted data: too short');
|
|
145
|
-
}
|
|
146
|
-
// Extract components
|
|
147
|
-
const salt = combined.subarray(0, SALT_LENGTH);
|
|
148
|
-
const iv = combined.subarray(SALT_LENGTH, SALT_LENGTH + IV_LENGTH);
|
|
149
|
-
const tag = combined.subarray(SALT_LENGTH + IV_LENGTH, SALT_LENGTH + IV_LENGTH + TAG_LENGTH);
|
|
150
|
-
const encrypted = combined.subarray(SALT_LENGTH + IV_LENGTH + TAG_LENGTH);
|
|
151
|
-
// Derive the same key using the extracted salt
|
|
152
|
-
const key = deriveKey(password, salt);
|
|
153
|
-
// Create decipher
|
|
154
|
-
const decipher = crypto.createDecipheriv(ALGORITHM, key, iv);
|
|
155
|
-
// Set the authentication tag for verification
|
|
156
|
-
decipher.setAuthTag(tag);
|
|
157
|
-
// Decrypt the data
|
|
158
|
-
let decrypted = decipher.update(encrypted.toString('hex'), 'hex', 'utf8');
|
|
159
|
-
decrypted += decipher.final('utf8');
|
|
160
|
-
return decrypted;
|
|
161
|
-
}
|
|
162
|
-
// =============================================================================
|
|
163
|
-
// Random Generation
|
|
164
|
-
// =============================================================================
|
|
165
|
-
/**
|
|
166
|
-
* Generates a cryptographically secure random string.
|
|
167
|
-
*
|
|
168
|
-
* Uses crypto.randomBytes() which provides cryptographically strong
|
|
169
|
-
* pseudo-random data suitable for security-sensitive operations.
|
|
170
|
-
*
|
|
171
|
-
* @param length - Number of random bytes to generate (default: 32)
|
|
172
|
-
* @returns Hexadecimal string of the random bytes (2 * length characters)
|
|
173
|
-
*
|
|
174
|
-
* @example
|
|
175
|
-
* ```typescript
|
|
176
|
-
* const token = generateSecureRandom(16);
|
|
177
|
-
* // Returns: 32-character hex string like 'a1b2c3d4e5f6...'
|
|
178
|
-
*
|
|
179
|
-
* const sessionId = generateSecureRandom();
|
|
180
|
-
* // Returns: 64-character hex string (default 32 bytes)
|
|
181
|
-
* ```
|
|
182
|
-
*/
|
|
183
|
-
export function generateSecureRandom(length = 32) {
|
|
184
|
-
return crypto.randomBytes(length).toString('hex');
|
|
185
|
-
}
|
|
186
|
-
/**
|
|
187
|
-
* Generates a cryptographically secure random bytes buffer.
|
|
188
|
-
*
|
|
189
|
-
* @param length - Number of random bytes to generate
|
|
190
|
-
* @returns Buffer containing random bytes
|
|
191
|
-
*
|
|
192
|
-
* @example
|
|
193
|
-
* ```typescript
|
|
194
|
-
* const randomBytes = generateRandomBytes(16);
|
|
195
|
-
* // Returns: Buffer of 16 random bytes
|
|
196
|
-
* ```
|
|
197
|
-
*/
|
|
198
|
-
export function generateRandomBytes(length) {
|
|
199
|
-
return crypto.randomBytes(length);
|
|
200
|
-
}
|
|
201
|
-
/**
|
|
202
|
-
* Generates a random UUID v4.
|
|
203
|
-
*
|
|
204
|
-
* @returns A random UUID string in the format xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx
|
|
205
|
-
*
|
|
206
|
-
* @example
|
|
207
|
-
* ```typescript
|
|
208
|
-
* const id = generateUUID();
|
|
209
|
-
* // Returns: 'f47ac10b-58cc-4372-a567-0e02b2c3d479'
|
|
210
|
-
* ```
|
|
211
|
-
*/
|
|
212
|
-
export function generateUUID() {
|
|
213
|
-
return crypto.randomUUID();
|
|
214
|
-
}
|
|
215
|
-
// =============================================================================
|
|
216
|
-
// Hashing
|
|
217
|
-
// =============================================================================
|
|
218
|
-
/**
|
|
219
|
-
* Creates a SHA-256 hash of the input string.
|
|
220
|
-
*
|
|
221
|
-
* SHA-256 is a cryptographic hash function that produces a 256-bit (32-byte)
|
|
222
|
-
* hash value. It's suitable for data integrity verification and generating
|
|
223
|
-
* unique identifiers from input data.
|
|
224
|
-
*
|
|
225
|
-
* @param input - The string to hash
|
|
226
|
-
* @returns Hexadecimal string of the SHA-256 hash (64 characters)
|
|
227
|
-
*
|
|
228
|
-
* @example
|
|
229
|
-
* ```typescript
|
|
230
|
-
* const hashedPassword = hash('user-password');
|
|
231
|
-
* // Returns: 64-character hex string
|
|
232
|
-
*
|
|
233
|
-
* const fileHash = hash(fileContents);
|
|
234
|
-
* // Can be used to verify file integrity
|
|
235
|
-
* ```
|
|
236
|
-
*/
|
|
237
|
-
export function hash(input) {
|
|
238
|
-
return crypto.createHash(HASH_ALGORITHM).update(input).digest('hex');
|
|
239
|
-
}
|
|
240
|
-
/**
|
|
241
|
-
* Creates a hash of the input using the specified algorithm.
|
|
242
|
-
*
|
|
243
|
-
* @param input - The string to hash
|
|
244
|
-
* @param algorithm - Hash algorithm to use (e.g., 'sha256', 'sha512', 'md5')
|
|
245
|
-
* @returns Hexadecimal string of the hash
|
|
246
|
-
*
|
|
247
|
-
* @example
|
|
248
|
-
* ```typescript
|
|
249
|
-
* const sha512Hash = hashWithAlgorithm('data', 'sha512');
|
|
250
|
-
* const md5Hash = hashWithAlgorithm('data', 'md5');
|
|
251
|
-
* ```
|
|
252
|
-
*/
|
|
253
|
-
export function hashWithAlgorithm(input, algorithm) {
|
|
254
|
-
return crypto.createHash(algorithm).update(input).digest('hex');
|
|
255
|
-
}
|
|
256
|
-
/**
|
|
257
|
-
* Creates a hash of a buffer using SHA-256.
|
|
258
|
-
*
|
|
259
|
-
* @param input - The buffer to hash
|
|
260
|
-
* @returns Hexadecimal string of the SHA-256 hash
|
|
261
|
-
*/
|
|
262
|
-
export function hashBuffer(input) {
|
|
263
|
-
return crypto.createHash(HASH_ALGORITHM).update(input).digest('hex');
|
|
264
|
-
}
|
|
265
|
-
// =============================================================================
|
|
266
|
-
// HMAC
|
|
267
|
-
// =============================================================================
|
|
268
|
-
/**
|
|
269
|
-
* Creates an HMAC-SHA256 signature of the data.
|
|
270
|
-
*
|
|
271
|
-
* HMAC (Hash-based Message Authentication Code) provides both data integrity
|
|
272
|
-
* and authentication. It's used to verify that a message hasn't been altered
|
|
273
|
-
* and was created by someone with the secret key.
|
|
274
|
-
*
|
|
275
|
-
* @param data - The data to sign
|
|
276
|
-
* @param secret - The secret key for HMAC
|
|
277
|
-
* @returns Hexadecimal string of the HMAC signature (64 characters)
|
|
278
|
-
*
|
|
279
|
-
* @example
|
|
280
|
-
* ```typescript
|
|
281
|
-
* const signature = hmac('message-to-sign', 'secret-key');
|
|
282
|
-
* // Returns: 64-character hex string
|
|
283
|
-
*
|
|
284
|
-
* // Verify by computing HMAC again and comparing
|
|
285
|
-
* const isValid = hmac('message-to-sign', 'secret-key') === signature;
|
|
286
|
-
* ```
|
|
287
|
-
*/
|
|
288
|
-
export function hmac(data, secret) {
|
|
289
|
-
return crypto
|
|
290
|
-
.createHmac(HASH_ALGORITHM, secret)
|
|
291
|
-
.update(data)
|
|
292
|
-
.digest('hex');
|
|
293
|
-
}
|
|
294
|
-
/**
|
|
295
|
-
* Creates an HMAC signature using the specified algorithm.
|
|
296
|
-
*
|
|
297
|
-
* @param data - The data to sign
|
|
298
|
-
* @param secret - The secret key for HMAC
|
|
299
|
-
* @param algorithm - Hash algorithm to use (e.g., 'sha256', 'sha512')
|
|
300
|
-
* @returns Hexadecimal string of the HMAC signature
|
|
301
|
-
*/
|
|
302
|
-
export function hmacWithAlgorithm(data, secret, algorithm) {
|
|
303
|
-
return crypto.createHmac(algorithm, secret).update(data).digest('hex');
|
|
304
|
-
}
|
|
305
|
-
// =============================================================================
|
|
306
|
-
// Machine Key Generation
|
|
307
|
-
// =============================================================================
|
|
308
|
-
/**
|
|
309
|
-
* Generates a machine-specific key for local encryption.
|
|
310
|
-
*
|
|
311
|
-
* This function creates a unique key based on machine identifiers,
|
|
312
|
-
* which can be used for encrypting data that should only be decryptable
|
|
313
|
-
* on the same machine. This is useful for storing credentials locally.
|
|
314
|
-
*
|
|
315
|
-
* Note: This key will change if the machine's hostname, username, or
|
|
316
|
-
* other identifying characteristics change.
|
|
317
|
-
*
|
|
318
|
-
* @returns SHA-256 hash of combined machine identifiers
|
|
319
|
-
*
|
|
320
|
-
* @example
|
|
321
|
-
* ```typescript
|
|
322
|
-
* const machineKey = getMachineKey();
|
|
323
|
-
* const encrypted = encrypt('sensitive-data', machineKey);
|
|
324
|
-
* // Data can only be decrypted on the same machine
|
|
325
|
-
* ```
|
|
326
|
-
*/
|
|
327
|
-
export function getMachineKey() {
|
|
328
|
-
// Combine multiple machine-specific values for key derivation
|
|
329
|
-
const components = [
|
|
330
|
-
os.hostname(),
|
|
331
|
-
os.platform(),
|
|
332
|
-
os.arch(),
|
|
333
|
-
os.userInfo().username,
|
|
334
|
-
os.homedir(),
|
|
335
|
-
];
|
|
336
|
-
// Create a hash of the combined components
|
|
337
|
-
return hash(components.join(':'));
|
|
338
|
-
}
|
|
339
|
-
/**
|
|
340
|
-
* Generates a machine-specific key asynchronously.
|
|
341
|
-
* This is provided for consistency with async patterns in the codebase.
|
|
342
|
-
*
|
|
343
|
-
* @returns Promise resolving to SHA-256 hash of combined machine identifiers
|
|
344
|
-
*/
|
|
345
|
-
export async function getMachineKeyAsync() {
|
|
346
|
-
return getMachineKey();
|
|
347
|
-
}
|
|
348
|
-
// =============================================================================
|
|
349
|
-
// Secure Comparison
|
|
350
|
-
// =============================================================================
|
|
351
|
-
/**
|
|
352
|
-
* Securely compares two strings in constant time.
|
|
353
|
-
*
|
|
354
|
-
* This function prevents timing attacks by ensuring the comparison
|
|
355
|
-
* takes the same amount of time regardless of where the strings differ.
|
|
356
|
-
* Regular string comparison (===) can leak information about the position
|
|
357
|
-
* of the first differing character through timing analysis.
|
|
358
|
-
*
|
|
359
|
-
* @param a - First string to compare
|
|
360
|
-
* @param b - Second string to compare
|
|
361
|
-
* @returns True if strings are equal, false otherwise
|
|
362
|
-
*
|
|
363
|
-
* @example
|
|
364
|
-
* ```typescript
|
|
365
|
-
* // Use for comparing sensitive values like tokens or signatures
|
|
366
|
-
* const isValid = secureCompare(providedToken, storedToken);
|
|
367
|
-
*
|
|
368
|
-
* // Don't use regular comparison for security-sensitive data
|
|
369
|
-
* // BAD: if (providedToken === storedToken) { ... }
|
|
370
|
-
* // GOOD: if (secureCompare(providedToken, storedToken)) { ... }
|
|
371
|
-
* ```
|
|
372
|
-
*/
|
|
373
|
-
export function secureCompare(a, b) {
|
|
374
|
-
// If lengths differ, we still need to do a constant-time comparison
|
|
375
|
-
// to avoid leaking length information
|
|
376
|
-
if (a.length !== b.length) {
|
|
377
|
-
// Compare against itself to maintain constant time
|
|
378
|
-
crypto.timingSafeEqual(Buffer.from(a), Buffer.from(a));
|
|
379
|
-
return false;
|
|
380
|
-
}
|
|
381
|
-
return crypto.timingSafeEqual(Buffer.from(a), Buffer.from(b));
|
|
382
|
-
}
|
|
383
|
-
/**
|
|
384
|
-
* Securely compares two buffers in constant time.
|
|
385
|
-
*
|
|
386
|
-
* @param a - First buffer to compare
|
|
387
|
-
* @param b - Second buffer to compare
|
|
388
|
-
* @returns True if buffers are equal, false otherwise
|
|
389
|
-
*/
|
|
390
|
-
export function secureCompareBuffers(a, b) {
|
|
391
|
-
if (a.length !== b.length) {
|
|
392
|
-
return false;
|
|
393
|
-
}
|
|
394
|
-
return crypto.timingSafeEqual(a, b);
|
|
395
|
-
}
|
|
396
|
-
// =============================================================================
|
|
397
|
-
// Utility Functions
|
|
398
|
-
// =============================================================================
|
|
399
|
-
/**
|
|
400
|
-
* Generates a secure token suitable for session IDs or API tokens.
|
|
401
|
-
*
|
|
402
|
-
* @param length - Length of the token in bytes (default: 32)
|
|
403
|
-
* @returns URL-safe base64-encoded token
|
|
404
|
-
*
|
|
405
|
-
* @example
|
|
406
|
-
* ```typescript
|
|
407
|
-
* const sessionToken = generateToken();
|
|
408
|
-
* // Returns: URL-safe base64 string
|
|
409
|
-
* ```
|
|
410
|
-
*/
|
|
411
|
-
export function generateToken(length = 32) {
|
|
412
|
-
return crypto.randomBytes(length).toString('base64url');
|
|
413
|
-
}
|
|
414
|
-
/**
|
|
415
|
-
* Creates a salted hash of a password for storage.
|
|
416
|
-
*
|
|
417
|
-
* This is a simple implementation for non-critical use cases.
|
|
418
|
-
* For production password storage, consider using bcrypt or argon2.
|
|
419
|
-
*
|
|
420
|
-
* @param password - The password to hash
|
|
421
|
-
* @returns Object containing the salt and hash
|
|
422
|
-
*
|
|
423
|
-
* @example
|
|
424
|
-
* ```typescript
|
|
425
|
-
* const { salt, hash } = hashPassword('user-password');
|
|
426
|
-
* // Store both salt and hash in database
|
|
427
|
-
* ```
|
|
428
|
-
*/
|
|
429
|
-
export function hashPassword(password) {
|
|
430
|
-
const salt = generateSecureRandom(16);
|
|
431
|
-
const derivedKey = deriveKey(password, Buffer.from(salt, 'hex'));
|
|
432
|
-
return {
|
|
433
|
-
salt,
|
|
434
|
-
hash: derivedKey.toString('hex'),
|
|
435
|
-
};
|
|
436
|
-
}
|
|
437
|
-
/**
|
|
438
|
-
* Verifies a password against a stored salt and hash.
|
|
439
|
-
*
|
|
440
|
-
* @param password - The password to verify
|
|
441
|
-
* @param salt - The stored salt (hex string)
|
|
442
|
-
* @param storedHash - The stored hash (hex string)
|
|
443
|
-
* @returns True if the password matches
|
|
444
|
-
*
|
|
445
|
-
* @example
|
|
446
|
-
* ```typescript
|
|
447
|
-
* const isValid = verifyPassword('user-password', storedSalt, storedHash);
|
|
448
|
-
* ```
|
|
449
|
-
*/
|
|
450
|
-
export function verifyPassword(password, salt, storedHash) {
|
|
451
|
-
const derivedKey = deriveKey(password, Buffer.from(salt, 'hex'));
|
|
452
|
-
return secureCompare(derivedKey.toString('hex'), storedHash);
|
|
453
|
-
}
|
|
454
|
-
/**
|
|
455
|
-
* Encrypts an object by serializing it to JSON first.
|
|
456
|
-
*
|
|
457
|
-
* @param data - The object to encrypt
|
|
458
|
-
* @param password - The encryption password
|
|
459
|
-
* @returns Base64-encoded encrypted data
|
|
460
|
-
*
|
|
461
|
-
* @example
|
|
462
|
-
* ```typescript
|
|
463
|
-
* const encrypted = encryptObject({ apiKey: 'secret' }, 'password');
|
|
464
|
-
* ```
|
|
465
|
-
*/
|
|
466
|
-
export function encryptObject(data, password) {
|
|
467
|
-
const json = JSON.stringify(data);
|
|
468
|
-
return encrypt(json, password);
|
|
469
|
-
}
|
|
470
|
-
/**
|
|
471
|
-
* Decrypts data and parses it as JSON.
|
|
472
|
-
*
|
|
473
|
-
* @param encryptedData - The encrypted data from encryptObject()
|
|
474
|
-
* @param password - The decryption password
|
|
475
|
-
* @returns The decrypted and parsed object
|
|
476
|
-
*
|
|
477
|
-
* @example
|
|
478
|
-
* ```typescript
|
|
479
|
-
* const data = decryptObject<{ apiKey: string }>(encrypted, 'password');
|
|
480
|
-
* console.log(data.apiKey);
|
|
481
|
-
* ```
|
|
482
|
-
*/
|
|
483
|
-
export function decryptObject(encryptedData, password) {
|
|
484
|
-
const json = decrypt(encryptedData, password);
|
|
485
|
-
return JSON.parse(json);
|
|
486
|
-
}
|
|
487
|
-
/**
|
|
488
|
-
* Generates a checksum for data integrity verification.
|
|
489
|
-
*
|
|
490
|
-
* @param data - The data to checksum
|
|
491
|
-
* @returns Short hash suitable for display (first 8 characters of SHA-256)
|
|
492
|
-
*
|
|
493
|
-
* @example
|
|
494
|
-
* ```typescript
|
|
495
|
-
* const checksum = generateChecksum(fileContents);
|
|
496
|
-
* // Returns: '3a7bd3e2' (8 characters)
|
|
497
|
-
* ```
|
|
498
|
-
*/
|
|
499
|
-
export function generateChecksum(data) {
|
|
500
|
-
return hash(data).substring(0, 8);
|
|
501
|
-
}
|
|
502
|
-
/**
|
|
503
|
-
* Verifies a checksum against data.
|
|
504
|
-
*
|
|
505
|
-
* @param data - The data to verify
|
|
506
|
-
* @param checksum - The expected checksum
|
|
507
|
-
* @returns True if the checksum matches
|
|
508
|
-
*/
|
|
509
|
-
export function verifyChecksum(data, checksum) {
|
|
510
|
-
return generateChecksum(data) === checksum;
|
|
511
|
-
}
|
|
512
|
-
// =============================================================================
|
|
513
|
-
// Fernet-Compatible Decryption (for compatibility with Python's cryptography.fernet)
|
|
514
|
-
// =============================================================================
|
|
515
|
-
/**
|
|
516
|
-
* Fixed salt used for key derivation in Fernet encryption
|
|
517
|
-
* Must match the salt used in the Python CliAuth implementation
|
|
518
|
-
*/
|
|
519
|
-
const FERNET_SALT = Buffer.from('b-f2T&>)XPx2vI/I9N7CfYH@Dvdb<F', 'utf-8');
|
|
520
|
-
/**
|
|
521
|
-
* Derives a Fernet-compatible encryption key from a password.
|
|
522
|
-
*
|
|
523
|
-
* This implementation matches Python's cryptography.fernet key derivation:
|
|
524
|
-
* - Uses PBKDF2HMAC with SHA256
|
|
525
|
-
* - 100,000 iterations
|
|
526
|
-
* - Fixed salt for consistency with backend
|
|
527
|
-
* - Returns base64 URL-safe encoded key (Fernet format requirement)
|
|
528
|
-
*
|
|
529
|
-
* @param password - The password to derive the key from
|
|
530
|
-
* @returns Base64 URL-safe encoded key for Fernet decryption
|
|
531
|
-
*/
|
|
532
|
-
function deriveFernetKey(password) {
|
|
533
|
-
// Derive 32-byte key using PBKDF2
|
|
534
|
-
const derivedKey = crypto.pbkdf2Sync(password, FERNET_SALT, 100000, // iterations
|
|
535
|
-
32, // key length
|
|
536
|
-
'sha256');
|
|
537
|
-
// Fernet requires the key to be base64 URL-safe encoded
|
|
538
|
-
return Buffer.from(derivedKey.toString('base64url'), 'utf-8');
|
|
539
|
-
}
|
|
540
|
-
/**
|
|
541
|
-
* Decrypts data encrypted with Python's cryptography.fernet.Fernet.
|
|
542
|
-
*
|
|
543
|
-
* Fernet format:
|
|
544
|
-
* - Version (1 byte): 0x80
|
|
545
|
-
* - Timestamp (8 bytes): big-endian timestamp
|
|
546
|
-
* - IV (16 bytes): initialization vector for AES-128-CBC
|
|
547
|
-
* - Ciphertext (variable): encrypted data
|
|
548
|
-
* - HMAC (32 bytes): HMAC-SHA256 for authentication
|
|
549
|
-
*
|
|
550
|
-
* @param encryptedData - Base64 URL-safe encoded Fernet token
|
|
551
|
-
* @param password - Password used for key derivation
|
|
552
|
-
* @returns Decrypted plaintext string
|
|
553
|
-
* @throws Error if decryption fails (wrong password, corrupted data, or invalid format)
|
|
554
|
-
*
|
|
555
|
-
* @example
|
|
556
|
-
* ```typescript
|
|
557
|
-
* // Decrypt data encrypted by Python's CliAuth.encrypt()
|
|
558
|
-
* const decrypted = decryptFernet(encryptedToken, 'anthropic');
|
|
559
|
-
* ```
|
|
560
|
-
*/
|
|
561
|
-
export function decryptFernet(encryptedData, password) {
|
|
562
|
-
try {
|
|
563
|
-
// Step 1: Derive the Fernet key from password
|
|
564
|
-
const fernetKeyBuffer = deriveFernetKey(password);
|
|
565
|
-
// Step 2: Decode the Fernet key (it was base64url encoded)
|
|
566
|
-
const actualKey = Buffer.from(fernetKeyBuffer.toString('utf-8'), 'base64url');
|
|
567
|
-
// Step 3: Decode the encrypted data from base64url (TWICE - Python does double encoding)
|
|
568
|
-
// First decode: Remove the outer base64url encoding added by Python's CliAuth.encrypt()
|
|
569
|
-
const outerDecoded = Buffer.from(encryptedData, 'base64url');
|
|
570
|
-
// Second decode: The outer decode gives us ASCII text that is the Fernet token
|
|
571
|
-
// Convert those bytes to a string, then decode that string from base64url
|
|
572
|
-
const fernetTokenString = outerDecoded.toString('utf-8');
|
|
573
|
-
const tokenBuffer = Buffer.from(fernetTokenString, 'base64url');
|
|
574
|
-
// Step 4: Parse Fernet token structure
|
|
575
|
-
// Minimum length: version(1) + timestamp(8) + iv(16) + hmac(32) = 57 bytes
|
|
576
|
-
if (tokenBuffer.length < 57) {
|
|
577
|
-
throw new Error(`Invalid Fernet token: too short (${tokenBuffer.length} bytes, need at least 57)`);
|
|
578
|
-
}
|
|
579
|
-
const version = tokenBuffer[0];
|
|
580
|
-
if (version !== 0x80) {
|
|
581
|
-
throw new Error(`Invalid Fernet version: 0x${version.toString(16)} (expected 0x80)`);
|
|
582
|
-
}
|
|
583
|
-
const iv = tokenBuffer.subarray(9, 25);
|
|
584
|
-
const ciphertext = tokenBuffer.subarray(25, tokenBuffer.length - 32);
|
|
585
|
-
const providedHmac = tokenBuffer.subarray(tokenBuffer.length - 32);
|
|
586
|
-
// Step 5: Verify HMAC (authentication)
|
|
587
|
-
// HMAC is computed over: version + timestamp + iv + ciphertext
|
|
588
|
-
// Fernet key structure: first 16 bytes = signing key (HMAC), last 16 bytes = encryption key (AES)
|
|
589
|
-
const signingKey = actualKey.subarray(0, 16);
|
|
590
|
-
const encryptionKey = actualKey.subarray(16, 32);
|
|
591
|
-
const dataToVerify = tokenBuffer.subarray(0, tokenBuffer.length - 32);
|
|
592
|
-
const computedHmac = crypto
|
|
593
|
-
.createHmac('sha256', signingKey)
|
|
594
|
-
.update(dataToVerify)
|
|
595
|
-
.digest();
|
|
596
|
-
if (!crypto.timingSafeEqual(providedHmac, computedHmac)) {
|
|
597
|
-
throw new Error('Invalid Fernet token: HMAC verification failed');
|
|
598
|
-
}
|
|
599
|
-
// Step 6: Decrypt using AES-128-CBC
|
|
600
|
-
// Use the encryption key (last 16 bytes) - already extracted in Step 5
|
|
601
|
-
const decipher = crypto.createDecipheriv('aes-128-cbc', encryptionKey, iv);
|
|
602
|
-
// Enable automatic padding handling (Fernet uses PKCS7)
|
|
603
|
-
decipher.setAutoPadding(true);
|
|
604
|
-
let decrypted = decipher.update(ciphertext);
|
|
605
|
-
decrypted = Buffer.concat([decrypted, decipher.final()]);
|
|
606
|
-
return decrypted.toString('utf-8');
|
|
607
|
-
}
|
|
608
|
-
catch (error) {
|
|
609
|
-
if (error instanceof Error) {
|
|
610
|
-
throw new Error(`Failed to decrypt Fernet token: ${error.message}`);
|
|
611
|
-
}
|
|
612
|
-
throw new Error('Failed to decrypt Fernet token: Unknown error');
|
|
613
|
-
}
|
|
614
|
-
}
|
|
615
|
-
//# sourceMappingURL=crypto.js.map
|
package/dist/utils/crypto.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"crypto.js","sourceRoot":"","sources":["../../src/utils/crypto.ts"],"names":[],"mappings":"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"}
|