codehere 0.1.1 → 0.2.2
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/README.md +68 -329
- package/dist/application/agents/execution-agent.js +4 -30
- package/dist/application/agents/multi-agent-orchestrator.js +0 -1
- package/dist/application/agents/planning-agent.js +79 -199
- package/dist/application/services/dependency-container.js +9 -20
- package/dist/application/services/intelligent-router.js +56 -64
- package/dist/application/use-cases/ask-question-use-case.js +22 -121
- package/dist/application/use-cases/edit-file-use-case.js +171 -160
- package/dist/application/use-cases/react-orchestration-use-case.js +10 -43
- package/dist/chat.js +130 -54
- package/dist/domain/services/query-intent-classifier.js +3 -36
- package/dist/embed.js +61 -74
- package/dist/index.js +1299 -259
- package/dist/infrastructure/ai/cohere-ai-service.js +9 -78
- package/dist/infrastructure/ai/provider-ai-service.js +18 -121
- package/dist/infrastructure/config/config-manager.js +14 -135
- package/dist/infrastructure/config/product-context.js +66 -0
- package/dist/infrastructure/context/conversation-context.js +1 -86
- package/dist/infrastructure/cost/cost-router.js +104 -0
- package/dist/infrastructure/cost/cost-tracker.js +2 -3
- package/dist/infrastructure/governance/policy-as-code.js +2 -1
- package/dist/infrastructure/hooks/claude-sdk-hook.js +253 -0
- package/dist/infrastructure/hooks/session-analyzer.js +111 -0
- package/dist/infrastructure/observability/execution-tracer.js +7 -180
- package/dist/infrastructure/protocols/mcp-helpers.js +45 -0
- package/dist/infrastructure/protocols/mcp-server-impl.js +286 -0
- package/dist/infrastructure/providers/cohere-provider.js +5 -31
- package/dist/infrastructure/providers/fake-provider.js +0 -8
- package/dist/infrastructure/providers/local-llm-provider.js +2 -8
- package/dist/infrastructure/providers/openai-provider.js +5 -37
- package/dist/infrastructure/providers/openrouter-provider.js +3 -11
- package/dist/infrastructure/safety/pattern-detector.js +133 -0
- package/dist/infrastructure/security/ai-sast-scanner.js +62 -13
- package/dist/infrastructure/security/enhanced-security-gate.js +2 -61
- package/dist/infrastructure/security/input-validator.js +29 -146
- package/dist/infrastructure/security/trust-scorer.js +337 -0
- package/dist/infrastructure/storage/embeddings-path.js +4 -14
- package/dist/infrastructure/storage/plan-repository.js +5 -4
- package/dist/infrastructure/storage/sqlite-decision-repository.js +8 -4
- package/dist/infrastructure/storage/sqlite-embedding-repository.js +11 -23
- package/dist/infrastructure/storage/sqlite-knowledge-graph-repository.js +8 -4
- package/dist/infrastructure/storage/sqlite-knowledge-preservation-repository.js +8 -4
- package/dist/infrastructure/storage/sqlite-memory-repository.js +8 -4
- package/dist/infrastructure/storage/sqlite-pattern-repository.js +8 -4
- package/dist/infrastructure/ux/stream-markdown.js +151 -0
- package/dist/infrastructure/ux/transparency.js +71 -0
- package/dist/infrastructure/validation/agent-feedback.js +12 -57
- package/dist/monitoring.js +8 -17
- package/dist/parallel-processor.js +50 -122
- package/dist/presentation/cli/commands/ask-command.js +39 -80
- package/dist/presentation/cli/commands/config-command.js +1 -1
- package/dist/presentation/cli/commands/cost-command.js +6 -6
- package/dist/presentation/cli/commands/decision-command.js +5 -5
- package/dist/presentation/cli/commands/fix-command.js +4 -44
- package/dist/presentation/cli/commands/help-command.js +151 -100
- package/dist/presentation/cli/commands/hook-command.js +272 -0
- package/dist/presentation/cli/commands/knowledge-command.js +4 -4
- package/dist/presentation/cli/commands/learning-dashboard-command.js +3 -3
- package/dist/presentation/cli/commands/orchestrate-command.js +6 -48
- package/dist/presentation/cli/commands/plan-command.js +1 -1
- package/dist/presentation/cli/commands/product-command.js +193 -16
- package/dist/presentation/cli/commands/report-command.js +353 -0
- package/dist/presentation/cli/commands/run-command.js +3 -3
- package/dist/presentation/cli/commands/scan-tool-command.js +65 -0
- package/dist/presentation/cli/commands/setup-command.js +34 -81
- package/dist/presentation/cli/commands/smart-command.js +50 -172
- package/dist/presentation/cli/commands/status-command.js +304 -119
- package/dist/presentation/cli/commands/trust-command.js +267 -274
- package/dist/presentation/cli/commands/undo-command.js +2 -2
- package/dist/search.js +37 -67
- package/dist/session.js +595 -484
- package/dist/task-verification.js +4 -4
- package/dist/token-optimizer.js +1 -6
- package/dist/ui.js +132 -16
- package/dist/utils/check-api-status.js +30 -12
- package/dist/utils/diff-parser.js +18 -48
- package/dist/verification/compiler.js +12 -11
- package/package.json +36 -43
- package/dist/agents/base.d.ts +0 -107
- package/dist/agents/base.d.ts.map +0 -1
- package/dist/agents/base.js.map +0 -1
- package/dist/agents/orchestrator-model-driven.d.ts +0 -41
- package/dist/agents/orchestrator-model-driven.d.ts.map +0 -1
- package/dist/agents/orchestrator-model-driven.js.map +0 -1
- package/dist/agents/react-orchestrator-agent.d.ts +0 -15
- package/dist/agents/react-orchestrator-agent.d.ts.map +0 -1
- package/dist/agents/react-orchestrator-agent.js.map +0 -1
- package/dist/application/agents/execution-agent.d.ts +0 -79
- package/dist/application/agents/execution-agent.d.ts.map +0 -1
- package/dist/application/agents/execution-agent.js.map +0 -1
- package/dist/application/agents/multi-agent-orchestrator.d.ts +0 -69
- package/dist/application/agents/multi-agent-orchestrator.d.ts.map +0 -1
- package/dist/application/agents/multi-agent-orchestrator.js.map +0 -1
- package/dist/application/agents/planning-agent.d.ts +0 -65
- package/dist/application/agents/planning-agent.d.ts.map +0 -1
- package/dist/application/agents/planning-agent.js.map +0 -1
- package/dist/application/agents/validation-agent.d.ts +0 -68
- package/dist/application/agents/validation-agent.d.ts.map +0 -1
- package/dist/application/agents/validation-agent.js.map +0 -1
- package/dist/application/architectures/plan-and-act.d.ts +0 -94
- package/dist/application/architectures/plan-and-act.d.ts.map +0 -1
- package/dist/application/architectures/plan-and-act.js.map +0 -1
- package/dist/application/index.d.ts +0 -12
- package/dist/application/index.d.ts.map +0 -1
- package/dist/application/index.js.map +0 -1
- package/dist/application/services/agent-factory.d.ts +0 -9
- package/dist/application/services/agent-factory.d.ts.map +0 -1
- package/dist/application/services/agent-factory.js.map +0 -1
- package/dist/application/services/context-importer.d.ts +0 -71
- package/dist/application/services/context-importer.d.ts.map +0 -1
- package/dist/application/services/context-importer.js +0 -436
- package/dist/application/services/context-importer.js.map +0 -1
- package/dist/application/services/context-manager.d.ts +0 -132
- package/dist/application/services/context-manager.d.ts.map +0 -1
- package/dist/application/services/context-manager.js +0 -369
- package/dist/application/services/context-manager.js.map +0 -1
- package/dist/application/services/dependency-container.d.ts +0 -187
- package/dist/application/services/dependency-container.d.ts.map +0 -1
- package/dist/application/services/dependency-container.js.map +0 -1
- package/dist/application/services/git-context-service.d.ts +0 -30
- package/dist/application/services/git-context-service.d.ts.map +0 -1
- package/dist/application/services/git-context-service.js.map +0 -1
- package/dist/application/services/intelligent-router.d.ts +0 -90
- package/dist/application/services/intelligent-router.d.ts.map +0 -1
- package/dist/application/services/intelligent-router.js.map +0 -1
- package/dist/application/services/token-counting-service.d.ts +0 -87
- package/dist/application/services/token-counting-service.d.ts.map +0 -1
- package/dist/application/services/token-counting-service.js +0 -196
- package/dist/application/services/token-counting-service.js.map +0 -1
- package/dist/application/services/tool-executor-service.d.ts +0 -14
- package/dist/application/services/tool-executor-service.d.ts.map +0 -1
- package/dist/application/services/tool-executor-service.js.map +0 -1
- package/dist/application/use-cases/ask-question-use-case.d.ts +0 -67
- package/dist/application/use-cases/ask-question-use-case.d.ts.map +0 -1
- package/dist/application/use-cases/ask-question-use-case.js.map +0 -1
- package/dist/application/use-cases/edit-file-use-case.d.ts +0 -92
- package/dist/application/use-cases/edit-file-use-case.d.ts.map +0 -1
- package/dist/application/use-cases/edit-file-use-case.js.map +0 -1
- package/dist/application/use-cases/explain-file-use-case.d.ts +0 -21
- package/dist/application/use-cases/explain-file-use-case.d.ts.map +0 -1
- package/dist/application/use-cases/explain-file-use-case.js.map +0 -1
- package/dist/application/use-cases/index-codebase-use-case.d.ts +0 -46
- package/dist/application/use-cases/index-codebase-use-case.d.ts.map +0 -1
- package/dist/application/use-cases/index-codebase-use-case.js.map +0 -1
- package/dist/application/use-cases/planning-use-case.d.ts +0 -46
- package/dist/application/use-cases/planning-use-case.d.ts.map +0 -1
- package/dist/application/use-cases/planning-use-case.js.map +0 -1
- package/dist/application/use-cases/react-orchestration-use-case.d.ts +0 -51
- package/dist/application/use-cases/react-orchestration-use-case.d.ts.map +0 -1
- package/dist/application/use-cases/react-orchestration-use-case.js.map +0 -1
- package/dist/application/use-cases/reflexion-use-case.d.ts +0 -24
- package/dist/application/use-cases/reflexion-use-case.d.ts.map +0 -1
- package/dist/application/use-cases/reflexion-use-case.js.map +0 -1
- package/dist/application/workflows/deterministic-workflows.d.ts +0 -61
- package/dist/application/workflows/deterministic-workflows.d.ts.map +0 -1
- package/dist/application/workflows/deterministic-workflows.js.map +0 -1
- package/dist/ast-parser.d 2.ts +0 -55
- package/dist/ast-parser.d.ts +0 -55
- package/dist/ast-parser.d.ts.map +0 -1
- package/dist/ast-parser.js.map +0 -1
- package/dist/cache.d.ts +0 -45
- package/dist/cache.d.ts.map +0 -1
- package/dist/cache.js.map +0 -1
- package/dist/chat.d.ts +0 -4
- package/dist/chat.d.ts.map +0 -1
- package/dist/chat.js.map +0 -1
- package/dist/code-analysis 2.js +0 -327
- package/dist/code-analysis.d.ts +0 -50
- package/dist/code-analysis.d.ts.map +0 -1
- package/dist/code-analysis.js.map +0 -1
- package/dist/context.d.ts +0 -44
- package/dist/context.d.ts 2.map +0 -1
- package/dist/context.d.ts.map +0 -1
- package/dist/context.js.map +0 -1
- package/dist/docs.d.ts +0 -21
- package/dist/docs.d.ts.map +0 -1
- package/dist/docs.js.map +0 -1
- package/dist/domain/entities/code-chunk.d.ts +0 -26
- package/dist/domain/entities/code-chunk.d.ts.map +0 -1
- package/dist/domain/entities/code-chunk.js.map +0 -1
- package/dist/domain/entities/conversation-context.d.ts +0 -245
- package/dist/domain/entities/conversation-context.d.ts.map +0 -1
- package/dist/domain/entities/conversation-context.js +0 -50
- package/dist/domain/entities/conversation-context.js.map +0 -1
- package/dist/domain/entities/decision.d.ts +0 -37
- package/dist/domain/entities/decision.d.ts.map +0 -1
- package/dist/domain/entities/decision.js.map +0 -1
- package/dist/domain/entities/edit.d.ts +0 -35
- package/dist/domain/entities/edit.d.ts.map +0 -1
- package/dist/domain/entities/edit.js.map +0 -1
- package/dist/domain/entities/knowledge-node.d.ts +0 -83
- package/dist/domain/entities/knowledge-node.d.ts.map +0 -1
- package/dist/domain/entities/knowledge-node.js.map +0 -1
- package/dist/domain/entities/knowledge-preservation.d.ts +0 -42
- package/dist/domain/entities/knowledge-preservation.d.ts.map +0 -1
- package/dist/domain/entities/knowledge-preservation.js.map +0 -1
- package/dist/domain/entities/memory.d.ts +0 -36
- package/dist/domain/entities/memory.d.ts.map +0 -1
- package/dist/domain/entities/memory.js.map +0 -1
- package/dist/domain/entities/pattern.d.ts +0 -49
- package/dist/domain/entities/pattern.d.ts.map +0 -1
- package/dist/domain/entities/pattern.js.map +0 -1
- package/dist/domain/entities/plan.d.ts +0 -42
- package/dist/domain/entities/plan.d.ts.map +0 -1
- package/dist/domain/entities/plan.js.map +0 -1
- package/dist/domain/entities/query.d.ts +0 -17
- package/dist/domain/entities/query.d.ts.map +0 -1
- package/dist/domain/entities/query.js.map +0 -1
- package/dist/domain/entities/task.d.ts +0 -152
- package/dist/domain/entities/task.d.ts.map +0 -1
- package/dist/domain/entities/task.js.map +0 -1
- package/dist/domain/errors/embeddings-not-found-error.d.ts +0 -9
- package/dist/domain/errors/embeddings-not-found-error.d.ts.map +0 -1
- package/dist/domain/errors/embeddings-not-found-error.js.map +0 -1
- package/dist/domain/index.d.ts +0 -16
- package/dist/domain/index.d.ts.map +0 -1
- package/dist/domain/index.js.map +0 -1
- package/dist/domain/interfaces/ai-service.interface.d.ts +0 -72
- package/dist/domain/interfaces/ai-service.interface.d.ts.map +0 -1
- package/dist/domain/interfaces/ai-service.interface.js.map +0 -1
- package/dist/domain/interfaces/code-analyzer.interface.d.ts +0 -38
- package/dist/domain/interfaces/code-analyzer.interface.d.ts.map +0 -1
- package/dist/domain/interfaces/code-analyzer.interface.js.map +0 -1
- package/dist/domain/interfaces/context-repository.interface.d.ts +0 -71
- package/dist/domain/interfaces/context-repository.interface.d.ts.map +0 -1
- package/dist/domain/interfaces/context-repository.interface.js +0 -10
- package/dist/domain/interfaces/context-repository.interface.js.map +0 -1
- package/dist/domain/interfaces/decision-repository.interface.d.ts +0 -51
- package/dist/domain/interfaces/decision-repository.interface.d.ts.map +0 -1
- package/dist/domain/interfaces/decision-repository.interface.js.map +0 -1
- package/dist/domain/interfaces/embedding-repository.interface.d.ts +0 -33
- package/dist/domain/interfaces/embedding-repository.interface.d.ts.map +0 -1
- package/dist/domain/interfaces/embedding-repository.interface.js.map +0 -1
- package/dist/domain/interfaces/knowledge-graph-repository.interface.d.ts +0 -91
- package/dist/domain/interfaces/knowledge-graph-repository.interface.d.ts.map +0 -1
- package/dist/domain/interfaces/knowledge-graph-repository.interface.js.map +0 -1
- package/dist/domain/interfaces/knowledge-preservation-repository.interface.d.ts +0 -50
- package/dist/domain/interfaces/knowledge-preservation-repository.interface.d.ts.map +0 -1
- package/dist/domain/interfaces/knowledge-preservation-repository.interface.js.map +0 -1
- package/dist/domain/interfaces/memory-repository.interface.d.ts +0 -49
- package/dist/domain/interfaces/memory-repository.interface.d.ts.map +0 -1
- package/dist/domain/interfaces/memory-repository.interface.js.map +0 -1
- package/dist/domain/interfaces/pattern-repository.interface.d.ts +0 -48
- package/dist/domain/interfaces/pattern-repository.interface.d.ts.map +0 -1
- package/dist/domain/interfaces/pattern-repository.interface.js.map +0 -1
- package/dist/domain/interfaces/verification-service.interface.d.ts +0 -20
- package/dist/domain/interfaces/verification-service.interface.d.ts.map +0 -1
- package/dist/domain/interfaces/verification-service.interface.js.map +0 -1
- package/dist/domain/services/codebase-detector.d.ts +0 -18
- package/dist/domain/services/codebase-detector.d.ts.map +0 -1
- package/dist/domain/services/codebase-detector.js.map +0 -1
- package/dist/domain/services/cross-team-pattern-sharing.d.ts +0 -65
- package/dist/domain/services/cross-team-pattern-sharing.d.ts.map +0 -1
- package/dist/domain/services/cross-team-pattern-sharing.js.map +0 -1
- package/dist/domain/services/decision-recorder.d.ts +0 -76
- package/dist/domain/services/decision-recorder.d.ts.map +0 -1
- package/dist/domain/services/decision-recorder.js.map +0 -1
- package/dist/domain/services/decision-retriever.d.ts +0 -75
- package/dist/domain/services/decision-retriever.d.ts.map +0 -1
- package/dist/domain/services/decision-retriever.js.map +0 -1
- package/dist/domain/services/environment-mode-manager.d.ts +0 -12
- package/dist/domain/services/environment-mode-manager.d.ts.map +0 -1
- package/dist/domain/services/environment-mode-manager.js.map +0 -1
- package/dist/domain/services/graded-memory-activation.d.ts +0 -37
- package/dist/domain/services/graded-memory-activation.d.ts.map +0 -1
- package/dist/domain/services/graded-memory-activation.js.map +0 -1
- package/dist/domain/services/knowledge-access.d.ts +0 -63
- package/dist/domain/services/knowledge-access.d.ts.map +0 -1
- package/dist/domain/services/knowledge-access.js.map +0 -1
- package/dist/domain/services/knowledge-extractor.d.ts +0 -54
- package/dist/domain/services/knowledge-extractor.d.ts.map +0 -1
- package/dist/domain/services/knowledge-extractor.js.map +0 -1
- package/dist/domain/services/knowledge-graph-builder.d.ts +0 -70
- package/dist/domain/services/knowledge-graph-builder.d.ts.map +0 -1
- package/dist/domain/services/knowledge-graph-builder.js.map +0 -1
- package/dist/domain/services/knowledge-graph-query.d.ts +0 -69
- package/dist/domain/services/knowledge-graph-query.d.ts.map +0 -1
- package/dist/domain/services/knowledge-graph-query.js.map +0 -1
- package/dist/domain/services/memory-retriever.d.ts +0 -30
- package/dist/domain/services/memory-retriever.d.ts.map +0 -1
- package/dist/domain/services/memory-retriever.js.map +0 -1
- package/dist/domain/services/memory-synthesizer.d.ts +0 -57
- package/dist/domain/services/memory-synthesizer.d.ts.map +0 -1
- package/dist/domain/services/memory-synthesizer.js.map +0 -1
- package/dist/domain/services/pattern-extractor.d.ts +0 -108
- package/dist/domain/services/pattern-extractor.d.ts.map +0 -1
- package/dist/domain/services/pattern-extractor.js.map +0 -1
- package/dist/domain/services/query-intent-classifier.d.ts +0 -16
- package/dist/domain/services/query-intent-classifier.d.ts.map +0 -1
- package/dist/domain/services/query-intent-classifier.js.map +0 -1
- package/dist/domain/services/react-loop.d.ts +0 -52
- package/dist/domain/services/react-loop.d.ts.map +0 -1
- package/dist/domain/services/react-loop.js.map +0 -1
- package/dist/domain/services/risk-tier-detector.d.ts +0 -17
- package/dist/domain/services/risk-tier-detector.d.ts.map +0 -1
- package/dist/domain/services/risk-tier-detector.js.map +0 -1
- package/dist/edit.d.ts +0 -26
- package/dist/edit.d.ts 2.map +0 -1
- package/dist/edit.d.ts.map +0 -1
- package/dist/edit.js.map +0 -1
- package/dist/embed.d 2.ts +0 -14
- package/dist/embed.d.ts +0 -14
- package/dist/embed.d.ts.map +0 -1
- package/dist/embed.js.map +0 -1
- package/dist/error-handler.d 2.ts +0 -77
- package/dist/error-handler.d.ts +0 -77
- package/dist/error-handler.d.ts.map +0 -1
- package/dist/error-handler.js.map +0 -1
- package/dist/formatter 2.js +0 -168
- package/dist/formatter.d.ts +0 -25
- package/dist/formatter.d.ts 2.map +0 -1
- package/dist/formatter.d.ts.map +0 -1
- package/dist/formatter.js.map +0 -1
- package/dist/git 2.js +0 -198
- package/dist/git.d 2.ts +0 -55
- package/dist/git.d.ts +0 -55
- package/dist/git.d.ts.map +0 -1
- package/dist/git.js.map +0 -1
- package/dist/index 2.d.ts +0 -16
- package/dist/index 2.d.ts.map +0 -1
- package/dist/index 2.js +0 -429
- package/dist/index 2.js.map +0 -1
- package/dist/index-backup-before-lazy-loading.d.ts +0 -3
- package/dist/index-backup-before-lazy-loading.d.ts.map +0 -1
- package/dist/index-backup-before-lazy-loading.js +0 -1551
- package/dist/index-backup-before-lazy-loading.js.map +0 -1
- package/dist/index.d.ts +0 -16
- package/dist/index.d.ts 2.map +0 -1
- package/dist/index.d.ts.map +0 -1
- package/dist/index.js 2.map +0 -1
- package/dist/index.js.map +0 -1
- package/dist/infrastructure/ai/cohere-ai-service.d.ts +0 -71
- package/dist/infrastructure/ai/cohere-ai-service.d.ts.map +0 -1
- package/dist/infrastructure/ai/cohere-ai-service.js.map +0 -1
- package/dist/infrastructure/ai/command-r-evaluation.d.ts +0 -42
- package/dist/infrastructure/ai/command-r-evaluation.d.ts.map +0 -1
- package/dist/infrastructure/ai/command-r-evaluation.js.map +0 -1
- package/dist/infrastructure/ai/model-config.d.ts +0 -47
- package/dist/infrastructure/ai/model-config.d.ts.map +0 -1
- package/dist/infrastructure/ai/model-config.js.map +0 -1
- package/dist/infrastructure/ai/provider-ai-service.d.ts +0 -67
- package/dist/infrastructure/ai/provider-ai-service.d.ts.map +0 -1
- package/dist/infrastructure/ai/provider-ai-service.js.map +0 -1
- package/dist/infrastructure/cache/embedding-cache.d.ts +0 -58
- package/dist/infrastructure/cache/embedding-cache.d.ts.map +0 -1
- package/dist/infrastructure/cache/embedding-cache.js.map +0 -1
- package/dist/infrastructure/cache/query-result-cache.d.ts +0 -27
- package/dist/infrastructure/cache/query-result-cache.d.ts.map +0 -1
- package/dist/infrastructure/cache/query-result-cache.js.map +0 -1
- package/dist/infrastructure/cache/response-cache.d.ts +0 -18
- package/dist/infrastructure/cache/response-cache.d.ts.map +0 -1
- package/dist/infrastructure/cache/response-cache.js.map +0 -1
- package/dist/infrastructure/cache/security-scan-cache.d.ts +0 -16
- package/dist/infrastructure/cache/security-scan-cache.d.ts.map +0 -1
- package/dist/infrastructure/cache/security-scan-cache.js.map +0 -1
- package/dist/infrastructure/chunking/ast-code-chunker.d.ts +0 -12
- package/dist/infrastructure/chunking/ast-code-chunker.d.ts.map +0 -1
- package/dist/infrastructure/chunking/ast-code-chunker.js.map +0 -1
- package/dist/infrastructure/chunking/code-aware-chunker.d.ts +0 -63
- package/dist/infrastructure/chunking/code-aware-chunker.d.ts.map +0 -1
- package/dist/infrastructure/chunking/code-aware-chunker.js.map +0 -1
- package/dist/infrastructure/completion/bash-completion.d.ts +0 -7
- package/dist/infrastructure/completion/bash-completion.d.ts.map +0 -1
- package/dist/infrastructure/completion/bash-completion.js.map +0 -1
- package/dist/infrastructure/completion/fish-completion.d.ts +0 -7
- package/dist/infrastructure/completion/fish-completion.d.ts.map +0 -1
- package/dist/infrastructure/completion/fish-completion.js.map +0 -1
- package/dist/infrastructure/completion/zsh-completion.d.ts +0 -7
- package/dist/infrastructure/completion/zsh-completion.d.ts.map +0 -1
- package/dist/infrastructure/completion/zsh-completion.js.map +0 -1
- package/dist/infrastructure/config/config-manager.d.ts +0 -158
- package/dist/infrastructure/config/config-manager.d.ts.map +0 -1
- package/dist/infrastructure/config/config-manager.js.map +0 -1
- package/dist/infrastructure/context/context-compressor.d.ts +0 -94
- package/dist/infrastructure/context/context-compressor.d.ts.map +0 -1
- package/dist/infrastructure/context/context-compressor.js.map +0 -1
- package/dist/infrastructure/context/conversation-context.d.ts +0 -82
- package/dist/infrastructure/context/conversation-context.d.ts.map +0 -1
- package/dist/infrastructure/context/conversation-context.js.map +0 -1
- package/dist/infrastructure/context/direct-context-provider.d.ts +0 -18
- package/dist/infrastructure/context/direct-context-provider.d.ts.map +0 -1
- package/dist/infrastructure/context/direct-context-provider.js +0 -222
- package/dist/infrastructure/context/direct-context-provider.js.map +0 -1
- package/dist/infrastructure/context/git-context-provider.d.ts +0 -30
- package/dist/infrastructure/context/git-context-provider.d.ts.map +0 -1
- package/dist/infrastructure/context/git-context-provider.js +0 -140
- package/dist/infrastructure/context/git-context-provider.js.map +0 -1
- package/dist/infrastructure/context/project-context-loader.d.ts +0 -35
- package/dist/infrastructure/context/project-context-loader.d.ts.map +0 -1
- package/dist/infrastructure/context/project-context-loader.js +0 -184
- package/dist/infrastructure/context/project-context-loader.js.map +0 -1
- package/dist/infrastructure/context/session-manager.d.ts +0 -42
- package/dist/infrastructure/context/session-manager.d.ts.map +0 -1
- package/dist/infrastructure/context/session-manager.js.map +0 -1
- package/dist/infrastructure/cost/cost-tracker.d.ts +0 -91
- package/dist/infrastructure/cost/cost-tracker.d.ts.map +0 -1
- package/dist/infrastructure/cost/cost-tracker.js.map +0 -1
- package/dist/infrastructure/cost/session-token-tracker.d.ts +0 -68
- package/dist/infrastructure/cost/session-token-tracker.d.ts.map +0 -1
- package/dist/infrastructure/cost/session-token-tracker.js +0 -178
- package/dist/infrastructure/cost/session-token-tracker.js.map +0 -1
- package/dist/infrastructure/cost-calculator.d.ts +0 -34
- package/dist/infrastructure/cost-calculator.d.ts.map +0 -1
- package/dist/infrastructure/cost-calculator.js +0 -145
- package/dist/infrastructure/cost-calculator.js.map +0 -1
- package/dist/infrastructure/cost-estimator.d.ts +0 -48
- package/dist/infrastructure/cost-estimator.d.ts.map +0 -1
- package/dist/infrastructure/cost-estimator.js +0 -201
- package/dist/infrastructure/cost-estimator.js.map +0 -1
- package/dist/infrastructure/file-scanner/file-scanner.d.ts +0 -31
- package/dist/infrastructure/file-scanner/file-scanner.d.ts.map +0 -1
- package/dist/infrastructure/file-scanner/file-scanner.js.map +0 -1
- package/dist/infrastructure/governance/nist-ai-rmf.d.ts +0 -105
- package/dist/infrastructure/governance/nist-ai-rmf.d.ts.map +0 -1
- package/dist/infrastructure/governance/nist-ai-rmf.js.map +0 -1
- package/dist/infrastructure/governance/policy-as-code.d.ts +0 -88
- package/dist/infrastructure/governance/policy-as-code.d.ts.map +0 -1
- package/dist/infrastructure/governance/policy-as-code.js.map +0 -1
- package/dist/infrastructure/governance/prompt-to-code-lineage.d.ts +0 -136
- package/dist/infrastructure/governance/prompt-to-code-lineage.d.ts.map +0 -1
- package/dist/infrastructure/governance/prompt-to-code-lineage.js.map +0 -1
- package/dist/infrastructure/index.d.ts +0 -7
- package/dist/infrastructure/index.d.ts.map +0 -1
- package/dist/infrastructure/index.js.map +0 -1
- package/dist/infrastructure/observability/execution-tracer.d.ts +0 -130
- package/dist/infrastructure/observability/execution-tracer.d.ts.map +0 -1
- package/dist/infrastructure/observability/execution-tracer.js.map +0 -1
- package/dist/infrastructure/observability/prompt-versioner.d.ts +0 -67
- package/dist/infrastructure/observability/prompt-versioner.d.ts.map +0 -1
- package/dist/infrastructure/observability/prompt-versioner.js.map +0 -1
- package/dist/infrastructure/protocols/a2a-metadata.d.ts +0 -278
- package/dist/infrastructure/protocols/a2a-metadata.d.ts.map +0 -1
- package/dist/infrastructure/protocols/a2a-metadata.js.map +0 -1
- package/dist/infrastructure/protocols/a2a-protocol.d.ts +0 -132
- package/dist/infrastructure/protocols/a2a-protocol.d.ts.map +0 -1
- package/dist/infrastructure/protocols/a2a-protocol.js.map +0 -1
- package/dist/infrastructure/protocols/mcp-oauth.d.ts +0 -91
- package/dist/infrastructure/protocols/mcp-oauth.d.ts.map +0 -1
- package/dist/infrastructure/protocols/mcp-oauth.js.map +0 -1
- package/dist/infrastructure/protocols/mcp-server.d.ts +0 -126
- package/dist/infrastructure/protocols/mcp-server.d.ts.map +0 -1
- package/dist/infrastructure/protocols/mcp-server.js.map +0 -1
- package/dist/infrastructure/protocols/streaming-handler.d.ts +0 -57
- package/dist/infrastructure/protocols/streaming-handler.d.ts.map +0 -1
- package/dist/infrastructure/protocols/streaming-handler.js.map +0 -1
- package/dist/infrastructure/providers/cohere-provider.d.ts +0 -39
- package/dist/infrastructure/providers/cohere-provider.d.ts.map +0 -1
- package/dist/infrastructure/providers/cohere-provider.js.map +0 -1
- package/dist/infrastructure/providers/fake-provider.d.ts +0 -43
- package/dist/infrastructure/providers/fake-provider.d.ts.map +0 -1
- package/dist/infrastructure/providers/fake-provider.js.map +0 -1
- package/dist/infrastructure/providers/local-llm-provider.d.ts +0 -49
- package/dist/infrastructure/providers/local-llm-provider.d.ts.map +0 -1
- package/dist/infrastructure/providers/local-llm-provider.js.map +0 -1
- package/dist/infrastructure/providers/model-config.types.d.ts +0 -70
- package/dist/infrastructure/providers/model-config.types.d.ts.map +0 -1
- package/dist/infrastructure/providers/model-config.types.js.map +0 -1
- package/dist/infrastructure/providers/model-provider.interface.d.ts +0 -113
- package/dist/infrastructure/providers/model-provider.interface.d.ts.map +0 -1
- package/dist/infrastructure/providers/model-provider.interface.js.map +0 -1
- package/dist/infrastructure/providers/openai-provider.d.ts +0 -38
- package/dist/infrastructure/providers/openai-provider.d.ts.map +0 -1
- package/dist/infrastructure/providers/openai-provider.js.map +0 -1
- package/dist/infrastructure/providers/openrouter-provider.d.ts +0 -42
- package/dist/infrastructure/providers/openrouter-provider.d.ts.map +0 -1
- package/dist/infrastructure/providers/openrouter-provider.js.map +0 -1
- package/dist/infrastructure/providers/operation-provider-resolver.d.ts +0 -48
- package/dist/infrastructure/providers/operation-provider-resolver.d.ts.map +0 -1
- package/dist/infrastructure/providers/operation-provider-resolver.js.map +0 -1
- package/dist/infrastructure/providers/provider-config-loader.d.ts +0 -37
- package/dist/infrastructure/providers/provider-config-loader.d.ts.map +0 -1
- package/dist/infrastructure/providers/provider-config-loader.js.map +0 -1
- package/dist/infrastructure/providers/provider-registry.d.ts +0 -53
- package/dist/infrastructure/providers/provider-registry.d.ts.map +0 -1
- package/dist/infrastructure/providers/provider-registry.js.map +0 -1
- package/dist/infrastructure/security/ai-sast-scanner.d.ts +0 -59
- package/dist/infrastructure/security/ai-sast-scanner.d.ts.map +0 -1
- package/dist/infrastructure/security/ai-sast-scanner.js.map +0 -1
- package/dist/infrastructure/security/docker-sandbox.d.ts +0 -57
- package/dist/infrastructure/security/docker-sandbox.d.ts.map +0 -1
- package/dist/infrastructure/security/docker-sandbox.js.map +0 -1
- package/dist/infrastructure/security/enhanced-security-gate.d.ts +0 -66
- package/dist/infrastructure/security/enhanced-security-gate.d.ts.map +0 -1
- package/dist/infrastructure/security/enhanced-security-gate.js.map +0 -1
- package/dist/infrastructure/security/input-validator.d.ts +0 -46
- package/dist/infrastructure/security/input-validator.d.ts.map +0 -1
- package/dist/infrastructure/security/input-validator.js.map +0 -1
- package/dist/infrastructure/security/license-scanner.d.ts +0 -55
- package/dist/infrastructure/security/license-scanner.d.ts.map +0 -1
- package/dist/infrastructure/security/license-scanner.js.map +0 -1
- package/dist/infrastructure/security/provider-bias-detector.d.ts +0 -53
- package/dist/infrastructure/security/provider-bias-detector.d.ts.map +0 -1
- package/dist/infrastructure/security/provider-bias-detector.js.map +0 -1
- package/dist/infrastructure/security/sandbox-executor.d.ts +0 -34
- package/dist/infrastructure/security/sandbox-executor.d.ts.map +0 -1
- package/dist/infrastructure/security/sandbox-executor.js.map +0 -1
- package/dist/infrastructure/serialization/toon-serializer.d.ts +0 -45
- package/dist/infrastructure/serialization/toon-serializer.d.ts.map +0 -1
- package/dist/infrastructure/serialization/toon-serializer.js.map +0 -1
- package/dist/infrastructure/storage/embeddings-path.d.ts +0 -18
- package/dist/infrastructure/storage/embeddings-path.d.ts.map +0 -1
- package/dist/infrastructure/storage/embeddings-path.js.map +0 -1
- package/dist/infrastructure/storage/memory-stream-service.d.ts +0 -47
- package/dist/infrastructure/storage/memory-stream-service.d.ts.map +0 -1
- package/dist/infrastructure/storage/memory-stream-service.js.map +0 -1
- package/dist/infrastructure/storage/plan-repository.d.ts +0 -40
- package/dist/infrastructure/storage/plan-repository.d.ts.map +0 -1
- package/dist/infrastructure/storage/plan-repository.js.map +0 -1
- package/dist/infrastructure/storage/sqlite-context-repository.d.ts +0 -95
- package/dist/infrastructure/storage/sqlite-context-repository.d.ts.map +0 -1
- package/dist/infrastructure/storage/sqlite-context-repository.js +0 -467
- package/dist/infrastructure/storage/sqlite-context-repository.js.map +0 -1
- package/dist/infrastructure/storage/sqlite-decision-repository.d.ts +0 -29
- package/dist/infrastructure/storage/sqlite-decision-repository.d.ts.map +0 -1
- package/dist/infrastructure/storage/sqlite-decision-repository.js.map +0 -1
- package/dist/infrastructure/storage/sqlite-embedding-repository.d.ts +0 -47
- package/dist/infrastructure/storage/sqlite-embedding-repository.d.ts.map +0 -1
- package/dist/infrastructure/storage/sqlite-embedding-repository.js.map +0 -1
- package/dist/infrastructure/storage/sqlite-knowledge-graph-repository.d.ts +0 -41
- package/dist/infrastructure/storage/sqlite-knowledge-graph-repository.d.ts.map +0 -1
- package/dist/infrastructure/storage/sqlite-knowledge-graph-repository.js.map +0 -1
- package/dist/infrastructure/storage/sqlite-knowledge-preservation-repository.d.ts +0 -29
- package/dist/infrastructure/storage/sqlite-knowledge-preservation-repository.d.ts.map +0 -1
- package/dist/infrastructure/storage/sqlite-knowledge-preservation-repository.js.map +0 -1
- package/dist/infrastructure/storage/sqlite-memory-repository.d.ts +0 -40
- package/dist/infrastructure/storage/sqlite-memory-repository.d.ts.map +0 -1
- package/dist/infrastructure/storage/sqlite-memory-repository.js.map +0 -1
- package/dist/infrastructure/storage/sqlite-pattern-repository.d.ts +0 -25
- package/dist/infrastructure/storage/sqlite-pattern-repository.d.ts.map +0 -1
- package/dist/infrastructure/storage/sqlite-pattern-repository.js.map +0 -1
- package/dist/infrastructure/storage/task-helpers.d.ts +0 -69
- package/dist/infrastructure/storage/task-helpers.d.ts.map +0 -1
- package/dist/infrastructure/storage/task-helpers.js.map +0 -1
- package/dist/infrastructure/storage/task-repository.d.ts +0 -67
- package/dist/infrastructure/storage/task-repository.d.ts.map +0 -1
- package/dist/infrastructure/storage/task-repository.js.map +0 -1
- package/dist/infrastructure/telemetry/telemetry-service.d.ts +0 -74
- package/dist/infrastructure/telemetry/telemetry-service.d.ts.map +0 -1
- package/dist/infrastructure/telemetry/telemetry-service.js.map +0 -1
- package/dist/infrastructure/ux/appropriate-friction.d.ts +0 -77
- package/dist/infrastructure/ux/appropriate-friction.d.ts.map +0 -1
- package/dist/infrastructure/ux/appropriate-friction.js.map +0 -1
- package/dist/infrastructure/ux/bi-directional-learning.d.ts +0 -131
- package/dist/infrastructure/ux/bi-directional-learning.d.ts.map +0 -1
- package/dist/infrastructure/ux/bi-directional-learning.js.map +0 -1
- package/dist/infrastructure/ux/capability-boundaries.d.ts +0 -22
- package/dist/infrastructure/ux/capability-boundaries.d.ts.map +0 -1
- package/dist/infrastructure/ux/capability-boundaries.js.map +0 -1
- package/dist/infrastructure/ux/cli-style-guide.d.ts +0 -105
- package/dist/infrastructure/ux/cli-style-guide.d.ts.map +0 -1
- package/dist/infrastructure/ux/cli-style-guide.js +0 -220
- package/dist/infrastructure/ux/cli-style-guide.js.map +0 -1
- package/dist/infrastructure/ux/comprehensive-formatter.d.ts +0 -21
- package/dist/infrastructure/ux/comprehensive-formatter.d.ts.map +0 -1
- package/dist/infrastructure/ux/comprehensive-formatter.js.map +0 -1
- package/dist/infrastructure/ux/contextual-feature-discovery.d.ts +0 -11
- package/dist/infrastructure/ux/contextual-feature-discovery.d.ts.map +0 -1
- package/dist/infrastructure/ux/contextual-feature-discovery.js.map +0 -1
- package/dist/infrastructure/ux/expectation-management.d.ts +0 -98
- package/dist/infrastructure/ux/expectation-management.d.ts.map +0 -1
- package/dist/infrastructure/ux/expectation-management.js.map +0 -1
- package/dist/infrastructure/ux/feature-discovery.d.ts +0 -17
- package/dist/infrastructure/ux/feature-discovery.d.ts.map +0 -1
- package/dist/infrastructure/ux/feature-discovery.js.map +0 -1
- package/dist/infrastructure/ux/feedback-prompt.d.ts +0 -26
- package/dist/infrastructure/ux/feedback-prompt.d.ts.map +0 -1
- package/dist/infrastructure/ux/feedback-prompt.js.map +0 -1
- package/dist/infrastructure/ux/hitl-validation.d.ts +0 -139
- package/dist/infrastructure/ux/hitl-validation.d.ts.map +0 -1
- package/dist/infrastructure/ux/hitl-validation.js.map +0 -1
- package/dist/infrastructure/ux/progress-indicator.d.ts +0 -53
- package/dist/infrastructure/ux/progress-indicator.d.ts.map +0 -1
- package/dist/infrastructure/ux/progress-indicator.js.map +0 -1
- package/dist/infrastructure/ux/progressive-disclosure.d.ts +0 -84
- package/dist/infrastructure/ux/progressive-disclosure.d.ts.map +0 -1
- package/dist/infrastructure/ux/progressive-disclosure.js.map +0 -1
- package/dist/infrastructure/ux/review-checkpoint.d.ts +0 -37
- package/dist/infrastructure/ux/review-checkpoint.d.ts.map +0 -1
- package/dist/infrastructure/ux/review-checkpoint.js.map +0 -1
- package/dist/infrastructure/ux/staged-feature-intro.d.ts +0 -22
- package/dist/infrastructure/ux/staged-feature-intro.d.ts.map +0 -1
- package/dist/infrastructure/ux/staged-feature-intro.js.map +0 -1
- package/dist/infrastructure/ux/syntax-highlighter.d.ts +0 -20
- package/dist/infrastructure/ux/syntax-highlighter.d.ts.map +0 -1
- package/dist/infrastructure/ux/syntax-highlighter.js.map +0 -1
- package/dist/infrastructure/ux/team-standards.d.ts +0 -94
- package/dist/infrastructure/ux/team-standards.d.ts.map +0 -1
- package/dist/infrastructure/ux/team-standards.js.map +0 -1
- package/dist/infrastructure/validation/agent-feedback.d.ts +0 -57
- package/dist/infrastructure/validation/agent-feedback.d.ts.map +0 -1
- package/dist/infrastructure/validation/agent-feedback.js.map +0 -1
- package/dist/infrastructure/validation/agent-validation-helper.d.ts +0 -75
- package/dist/infrastructure/validation/agent-validation-helper.d.ts.map +0 -1
- package/dist/infrastructure/validation/agent-validation-helper.js.map +0 -1
- package/dist/infrastructure/validation/hallucination-detector.d.ts +0 -121
- package/dist/infrastructure/validation/hallucination-detector.d.ts.map +0 -1
- package/dist/infrastructure/validation/hallucination-detector.js +0 -388
- package/dist/infrastructure/validation/hallucination-detector.js.map +0 -1
- package/dist/infrastructure/validation/review-handler.d.ts +0 -26
- package/dist/infrastructure/validation/review-handler.d.ts.map +0 -1
- package/dist/infrastructure/validation/review-handler.js.map +0 -1
- package/dist/infrastructure/validation/summary-aggregator.d.ts +0 -45
- package/dist/infrastructure/validation/summary-aggregator.d.ts.map +0 -1
- package/dist/infrastructure/validation/summary-aggregator.js.map +0 -1
- package/dist/infrastructure/validation/summary-extractor.d.ts +0 -24
- package/dist/infrastructure/validation/summary-extractor.d.ts.map +0 -1
- package/dist/infrastructure/validation/summary-extractor.js.map +0 -1
- package/dist/infrastructure/validation/trace-summary.d.ts +0 -45
- package/dist/infrastructure/validation/trace-summary.d.ts.map +0 -1
- package/dist/infrastructure/validation/trace-summary.js.map +0 -1
- package/dist/infrastructure/verification/verification-service.d.ts +0 -12
- package/dist/infrastructure/verification/verification-service.d.ts.map +0 -1
- package/dist/infrastructure/verification/verification-service.js.map +0 -1
- package/dist/infrastructure/xai/attention-visualizer.d.ts +0 -71
- package/dist/infrastructure/xai/attention-visualizer.d.ts.map +0 -1
- package/dist/infrastructure/xai/attention-visualizer.js.map +0 -1
- package/dist/infrastructure/xai/cot-visualizer.d.ts +0 -103
- package/dist/infrastructure/xai/cot-visualizer.d.ts.map +0 -1
- package/dist/infrastructure/xai/cot-visualizer.js.map +0 -1
- package/dist/infrastructure/xai/decision-tree-log.d.ts +0 -100
- package/dist/infrastructure/xai/decision-tree-log.d.ts.map +0 -1
- package/dist/infrastructure/xai/decision-tree-log.js.map +0 -1
- package/dist/infrastructure/xai/interactive-xai.d.ts +0 -104
- package/dist/infrastructure/xai/interactive-xai.d.ts.map +0 -1
- package/dist/infrastructure/xai/interactive-xai.js.map +0 -1
- package/dist/infrastructure/xai/uncertainty-quantifier.d.ts +0 -77
- package/dist/infrastructure/xai/uncertainty-quantifier.d.ts.map +0 -1
- package/dist/infrastructure/xai/uncertainty-quantifier.js.map +0 -1
- package/dist/intelligent-retrieval 2.js +0 -272
- package/dist/intelligent-retrieval.d.ts +0 -41
- package/dist/intelligent-retrieval.d.ts 2.map +0 -1
- package/dist/intelligent-retrieval.d.ts.map +0 -1
- package/dist/intelligent-retrieval.js.map +0 -1
- package/dist/intent/classifier.d.ts +0 -6
- package/dist/intent/classifier.d.ts.map +0 -1
- package/dist/intent/classifier.js.map +0 -1
- package/dist/intent/context.d.ts +0 -4
- package/dist/intent/context.d.ts.map +0 -1
- package/dist/intent/context.js.map +0 -1
- package/dist/iterative-refinement.d.ts +0 -31
- package/dist/iterative-refinement.d.ts.map +0 -1
- package/dist/iterative-refinement.js.map +0 -1
- package/dist/learning.d.ts +0 -69
- package/dist/learning.d.ts.map +0 -1
- package/dist/learning.js.map +0 -1
- package/dist/log.d.ts +0 -4
- package/dist/log.d.ts.map +0 -1
- package/dist/log.js 2.map +0 -1
- package/dist/log.js.map +0 -1
- package/dist/migrate.d.ts +0 -33
- package/dist/migrate.d.ts.map +0 -1
- package/dist/migrate.js 2.map +0 -1
- package/dist/migrate.js.map +0 -1
- package/dist/monitoring.d.ts +0 -75
- package/dist/monitoring.d.ts.map +0 -1
- package/dist/monitoring.js.map +0 -1
- package/dist/parallel-processor.d 2.ts +0 -44
- package/dist/parallel-processor.d.ts +0 -44
- package/dist/parallel-processor.d.ts.map +0 -1
- package/dist/parallel-processor.js.map +0 -1
- package/dist/planner.d.ts +0 -47
- package/dist/planner.d.ts.map +0 -1
- package/dist/planner.js.map +0 -1
- package/dist/policy.d 2.ts +0 -3
- package/dist/policy.d.ts +0 -3
- package/dist/policy.d.ts.map +0 -1
- package/dist/policy.js.map +0 -1
- package/dist/presentation/cli/commands/ask-command.d.ts +0 -9
- package/dist/presentation/cli/commands/ask-command.d.ts.map +0 -1
- package/dist/presentation/cli/commands/ask-command.js.map +0 -1
- package/dist/presentation/cli/commands/audit-command.d.ts +0 -13
- package/dist/presentation/cli/commands/audit-command.d.ts.map +0 -1
- package/dist/presentation/cli/commands/audit-command.js +0 -96
- package/dist/presentation/cli/commands/audit-command.js.map +0 -1
- package/dist/presentation/cli/commands/config-command.d.ts +0 -9
- package/dist/presentation/cli/commands/config-command.d.ts.map +0 -1
- package/dist/presentation/cli/commands/config-command.js.map +0 -1
- package/dist/presentation/cli/commands/context-command.d.ts +0 -32
- package/dist/presentation/cli/commands/context-command.d.ts.map +0 -1
- package/dist/presentation/cli/commands/context-command.js +0 -295
- package/dist/presentation/cli/commands/context-command.js.map +0 -1
- package/dist/presentation/cli/commands/context-helper.d.ts +0 -16
- package/dist/presentation/cli/commands/context-helper.d.ts.map +0 -1
- package/dist/presentation/cli/commands/context-helper.js +0 -88
- package/dist/presentation/cli/commands/context-helper.js.map +0 -1
- package/dist/presentation/cli/commands/cost-command.d.ts +0 -8
- package/dist/presentation/cli/commands/cost-command.d.ts.map +0 -1
- package/dist/presentation/cli/commands/cost-command.js.map +0 -1
- package/dist/presentation/cli/commands/decision-command.d.ts +0 -12
- package/dist/presentation/cli/commands/decision-command.d.ts.map +0 -1
- package/dist/presentation/cli/commands/decision-command.js.map +0 -1
- package/dist/presentation/cli/commands/docs-command.d.ts +0 -14
- package/dist/presentation/cli/commands/docs-command.d.ts.map +0 -1
- package/dist/presentation/cli/commands/docs-command.js.map +0 -1
- package/dist/presentation/cli/commands/fix-command.d.ts +0 -15
- package/dist/presentation/cli/commands/fix-command.d.ts.map +0 -1
- package/dist/presentation/cli/commands/fix-command.js.map +0 -1
- package/dist/presentation/cli/commands/help-command.d.ts +0 -9
- package/dist/presentation/cli/commands/help-command.d.ts.map +0 -1
- package/dist/presentation/cli/commands/help-command.js.map +0 -1
- package/dist/presentation/cli/commands/knowledge-command.d.ts +0 -13
- package/dist/presentation/cli/commands/knowledge-command.d.ts.map +0 -1
- package/dist/presentation/cli/commands/knowledge-command.js.map +0 -1
- package/dist/presentation/cli/commands/learning-dashboard-command.d.ts +0 -8
- package/dist/presentation/cli/commands/learning-dashboard-command.d.ts.map +0 -1
- package/dist/presentation/cli/commands/learning-dashboard-command.js.map +0 -1
- package/dist/presentation/cli/commands/models-command.d.ts +0 -13
- package/dist/presentation/cli/commands/models-command.d.ts.map +0 -1
- package/dist/presentation/cli/commands/models-command.js.map +0 -1
- package/dist/presentation/cli/commands/orchestrate-command.d.ts +0 -10
- package/dist/presentation/cli/commands/orchestrate-command.d.ts.map +0 -1
- package/dist/presentation/cli/commands/orchestrate-command.js.map +0 -1
- package/dist/presentation/cli/commands/plan-command.d.ts +0 -9
- package/dist/presentation/cli/commands/plan-command.d.ts.map +0 -1
- package/dist/presentation/cli/commands/plan-command.js.map +0 -1
- package/dist/presentation/cli/commands/product-command.d.ts +0 -14
- package/dist/presentation/cli/commands/product-command.d.ts.map +0 -1
- package/dist/presentation/cli/commands/product-command.js.map +0 -1
- package/dist/presentation/cli/commands/react-command.d.ts +0 -8
- package/dist/presentation/cli/commands/react-command.d.ts.map +0 -1
- package/dist/presentation/cli/commands/react-command.js.map +0 -1
- package/dist/presentation/cli/commands/review-command.d.ts +0 -14
- package/dist/presentation/cli/commands/review-command.d.ts.map +0 -1
- package/dist/presentation/cli/commands/review-command.js.map +0 -1
- package/dist/presentation/cli/commands/run-command.d.ts +0 -13
- package/dist/presentation/cli/commands/run-command.d.ts.map +0 -1
- package/dist/presentation/cli/commands/run-command.js.map +0 -1
- package/dist/presentation/cli/commands/setup-command.d.ts +0 -10
- package/dist/presentation/cli/commands/setup-command.d.ts.map +0 -1
- package/dist/presentation/cli/commands/setup-command.js.map +0 -1
- package/dist/presentation/cli/commands/smart-command.d.ts +0 -11
- package/dist/presentation/cli/commands/smart-command.d.ts.map +0 -1
- package/dist/presentation/cli/commands/smart-command.js.map +0 -1
- package/dist/presentation/cli/commands/status-command.d.ts +0 -14
- package/dist/presentation/cli/commands/status-command.d.ts.map +0 -1
- package/dist/presentation/cli/commands/status-command.js.map +0 -1
- package/dist/presentation/cli/commands/suggest-command.d.ts +0 -11
- package/dist/presentation/cli/commands/suggest-command.d.ts.map +0 -1
- package/dist/presentation/cli/commands/suggest-command.js.map +0 -1
- package/dist/presentation/cli/commands/trace-command.d.ts +0 -8
- package/dist/presentation/cli/commands/trace-command.d.ts.map +0 -1
- package/dist/presentation/cli/commands/trace-command.js.map +0 -1
- package/dist/presentation/cli/commands/trust-command.d.ts +0 -28
- package/dist/presentation/cli/commands/trust-command.d.ts.map +0 -1
- package/dist/presentation/cli/commands/trust-command.js.map +0 -1
- package/dist/presentation/cli/commands/undo-command.d.ts +0 -8
- package/dist/presentation/cli/commands/undo-command.d.ts.map +0 -1
- package/dist/presentation/cli/commands/undo-command.js.map +0 -1
- package/dist/presentation/cli/error-display.d.ts +0 -25
- package/dist/presentation/cli/error-display.d.ts.map +0 -1
- package/dist/presentation/cli/error-display.js.map +0 -1
- package/dist/query-optimizer.d.ts +0 -32
- package/dist/query-optimizer.d.ts.map +0 -1
- package/dist/query-optimizer.js.map +0 -1
- package/dist/refactor.d.ts +0 -27
- package/dist/refactor.d.ts.map +0 -1
- package/dist/refactor.js.map +0 -1
- package/dist/review 2.js +0 -206
- package/dist/review.d.ts +0 -31
- package/dist/review.d.ts.map +0 -1
- package/dist/review.js.map +0 -1
- package/dist/search.d.ts +0 -19
- package/dist/search.d.ts.map +0 -1
- package/dist/search.js 2.map +0 -1
- package/dist/search.js.map +0 -1
- package/dist/session 2.js +0 -593
- package/dist/session.d.ts +0 -17
- package/dist/session.d.ts 2.map +0 -1
- package/dist/session.d.ts.map +0 -1
- package/dist/session.js.map +0 -1
- package/dist/task-verification 2.js +0 -336
- package/dist/task-verification.d.ts +0 -39
- package/dist/task-verification.d.ts 2.map +0 -1
- package/dist/task-verification.d.ts.map +0 -1
- package/dist/task-verification.js.map +0 -1
- package/dist/test-minimal.d.ts +0 -2
- package/dist/test-minimal.d.ts.map +0 -1
- package/dist/test-minimal.js +0 -2
- package/dist/test-minimal.js.map +0 -1
- package/dist/testgen.d.ts +0 -24
- package/dist/testgen.d.ts.map +0 -1
- package/dist/testgen.js 2.map +0 -1
- package/dist/testgen.js.map +0 -1
- package/dist/token-optimizer.d 2.ts +0 -20
- package/dist/token-optimizer.d.ts +0 -20
- package/dist/token-optimizer.d.ts.map +0 -1
- package/dist/token-optimizer.js.map +0 -1
- package/dist/tools/bash.d.ts +0 -53
- package/dist/tools/bash.d.ts.map +0 -1
- package/dist/tools/bash.js.map +0 -1
- package/dist/tools/edit.d.ts +0 -48
- package/dist/tools/edit.d.ts.map +0 -1
- package/dist/tools/edit.js.map +0 -1
- package/dist/tools/executor.d.ts +0 -29
- package/dist/tools/executor.d.ts.map +0 -1
- package/dist/tools/executor.js.map +0 -1
- package/dist/tools/git-tool.d.ts +0 -87
- package/dist/tools/git-tool.d.ts.map +0 -1
- package/dist/tools/git-tool.js.map +0 -1
- package/dist/tools/parser.d.ts +0 -33
- package/dist/tools/parser.d.ts.map +0 -1
- package/dist/tools/parser.js.map +0 -1
- package/dist/tools/registry.d.ts +0 -74
- package/dist/tools/registry.d.ts.map +0 -1
- package/dist/tools/registry.js.map +0 -1
- package/dist/tools/search.d.ts +0 -41
- package/dist/tools/search.d.ts.map +0 -1
- package/dist/tools/search.js.map +0 -1
- package/dist/types.d.ts +0 -36
- package/dist/types.d.ts.map +0 -1
- package/dist/types.js.map +0 -1
- package/dist/ui.d.ts +0 -60
- package/dist/ui.d.ts 2.map +0 -1
- package/dist/ui.d.ts.map +0 -1
- package/dist/ui.js.map +0 -1
- package/dist/utils/check-api-status.d.ts +0 -12
- package/dist/utils/check-api-status.d.ts.map +0 -1
- package/dist/utils/check-api-status.js.map +0 -1
- package/dist/utils/debug.d.ts +0 -7
- package/dist/utils/debug.d.ts.map +0 -1
- package/dist/utils/debug.js +0 -24
- package/dist/utils/debug.js.map +0 -1
- package/dist/utils/diff-parser.d.ts +0 -22
- package/dist/utils/diff-parser.d.ts.map +0 -1
- package/dist/utils/diff-parser.js.map +0 -1
- package/dist/utils/provider-check.d.ts +0 -21
- package/dist/utils/provider-check.d.ts.map +0 -1
- package/dist/utils/provider-check.js +0 -124
- package/dist/utils/provider-check.js.map +0 -1
- package/dist/utils/version.d.ts +0 -21
- package/dist/utils/version.d.ts.map +0 -1
- package/dist/utils/version.js.map +0 -1
- package/dist/verification/backup.d.ts +0 -30
- package/dist/verification/backup.d.ts.map +0 -1
- package/dist/verification/backup.js.map +0 -1
- package/dist/verification/compiler.d.ts +0 -20
- package/dist/verification/compiler.d.ts.map +0 -1
- package/dist/verification/compiler.js.map +0 -1
- package/dist/verification/index.d.ts +0 -59
- package/dist/verification/index.d.ts.map +0 -1
- package/dist/verification/index.js.map +0 -1
- package/dist/verification/test-runner.d.ts +0 -27
- package/dist/verification/test-runner.d.ts.map +0 -1
- package/dist/verification/test-runner.js.map +0 -1
- package/dist/verify_db.d.ts +0 -2
- package/dist/verify_db.d.ts.map +0 -1
- package/dist/verify_db.js +0 -52
- package/dist/verify_db.js 2.map +0 -1
- package/dist/verify_db.js.map +0 -1
|
@@ -1,13 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Infrastructure: CohereAIService
|
|
3
3
|
* Implements IAIService using Cohere API
|
|
4
|
-
*
|
|
5
|
-
* @deprecated This class is deprecated and should not be used in new code.
|
|
6
|
-
* Use CohereProvider from infrastructure/providers/cohere-provider.ts instead.
|
|
7
|
-
* This class is maintained only as an emergency fallback in dependency-container.ts
|
|
8
|
-
* and requires COHERE_API_KEY environment variable to function.
|
|
9
|
-
*
|
|
10
|
-
* Migration path: Use ProviderRegistry to get providers and ProviderAIService for AI operations.
|
|
11
4
|
*/
|
|
12
5
|
import { CohereClient } from 'cohere-ai';
|
|
13
6
|
import { config } from 'dotenv';
|
|
@@ -18,23 +11,17 @@ import { retryWithBackoff, cohereCircuitBreaker } from '../../error-handler.js';
|
|
|
18
11
|
import { executionTracer } from '../observability/execution-tracer.js';
|
|
19
12
|
import { promptVersioner } from '../observability/prompt-versioner.js';
|
|
20
13
|
import { getModelConfigManager } from './model-config.js';
|
|
21
|
-
import { getConfigManager } from '../config/config-manager.js';
|
|
22
14
|
// Initialize tiktoken encoder for accurate token counting
|
|
23
15
|
// Using cl100k_base which is compatible with most models
|
|
24
16
|
let tokenEncoder = null;
|
|
25
17
|
function getTokenEncoder() {
|
|
26
18
|
if (!tokenEncoder) {
|
|
27
19
|
try {
|
|
28
|
-
|
|
29
|
-
const config = getConfigManager();
|
|
30
|
-
const defaultModel = config.getModel('default') || config.getPreference('defaultModel');
|
|
31
|
-
// tiktoken uses OpenAI models - use GPT model if available, else default to gpt-3.5-turbo
|
|
32
|
-
const tiktokenModel = (defaultModel && defaultModel.includes('gpt')) ? defaultModel : 'gpt-3.5-turbo';
|
|
33
|
-
tokenEncoder = encoding_for_model(tiktokenModel);
|
|
20
|
+
tokenEncoder = encoding_for_model('gpt-3.5-turbo'); // cl100k_base encoding
|
|
34
21
|
}
|
|
35
22
|
catch {
|
|
36
23
|
// Fallback if model not found
|
|
37
|
-
tokenEncoder = encoding_for_model('gpt-
|
|
24
|
+
tokenEncoder = encoding_for_model('gpt-4');
|
|
38
25
|
}
|
|
39
26
|
}
|
|
40
27
|
return tokenEncoder;
|
|
@@ -64,7 +51,6 @@ export class CohereAIService {
|
|
|
64
51
|
client;
|
|
65
52
|
_contextCompressor;
|
|
66
53
|
constructor(contextCompressor) {
|
|
67
|
-
console.warn('[DEPRECATED] CohereAIService is deprecated. Use CohereProvider from infrastructure/providers/cohere-provider.ts instead.');
|
|
68
54
|
this._contextCompressor = contextCompressor;
|
|
69
55
|
const apiKey = process.env.COHERE_API_KEY;
|
|
70
56
|
if (!apiKey) {
|
|
@@ -148,13 +134,10 @@ ${query}`;
|
|
|
148
134
|
// Determine model based on context size and use case
|
|
149
135
|
// For now, use default. Command A evaluation will determine if we should migrate.
|
|
150
136
|
const model = this.selectModel(context.length, memories?.length || 0, 'chat');
|
|
151
|
-
// Get temperature from config
|
|
152
|
-
const config = getConfigManager();
|
|
153
|
-
const chatTemperature = config.getTemperature('chat') || 0.7;
|
|
154
137
|
// Register prompt version for reproducibility
|
|
155
138
|
const promptVersionId = promptVersioner.registerVersion(prompt, {
|
|
156
139
|
model: model || 'default',
|
|
157
|
-
temperature:
|
|
140
|
+
temperature: 0.7,
|
|
158
141
|
operation: 'chat',
|
|
159
142
|
});
|
|
160
143
|
// Link to current run if available
|
|
@@ -172,7 +155,7 @@ ${query}`;
|
|
|
172
155
|
input: { query, contextCount: context.length, memoryCount: memories?.length || 0 },
|
|
173
156
|
metadata: {
|
|
174
157
|
model: model || 'default',
|
|
175
|
-
temperature:
|
|
158
|
+
temperature: 0.7,
|
|
176
159
|
promptVersionId,
|
|
177
160
|
},
|
|
178
161
|
});
|
|
@@ -180,7 +163,7 @@ ${query}`;
|
|
|
180
163
|
const response = await this.client.chat({
|
|
181
164
|
message: prompt,
|
|
182
165
|
...(model ? { model } : {}), // Only add model if specified
|
|
183
|
-
temperature:
|
|
166
|
+
temperature: 0.7, // Balanced for general chat/explanation
|
|
184
167
|
});
|
|
185
168
|
const result = response.text || 'No response generated';
|
|
186
169
|
const duration = Date.now() - startTime;
|
|
@@ -448,39 +431,10 @@ ${query}`;
|
|
|
448
431
|
operationName: 'embedQuery',
|
|
449
432
|
});
|
|
450
433
|
}
|
|
451
|
-
async generateEdit(fileContent, instruction, filepath
|
|
434
|
+
async generateEdit(fileContent, instruction, filepath) {
|
|
452
435
|
// For simplicity and reliability, always request the complete modified file
|
|
453
436
|
// This avoids diff parsing issues and is more reliable
|
|
454
|
-
|
|
455
|
-
if (requestExplanation) {
|
|
456
|
-
// Learning mode: request both code and explanation
|
|
457
|
-
prompt = `You are a code editor and teacher. Your task is to modify the code AND explain what you changed and why.
|
|
458
|
-
|
|
459
|
-
CRITICAL RULES:
|
|
460
|
-
1. First, provide the COMPLETE modified file content
|
|
461
|
-
2. Then add a line with exactly: ---EXPLANATION---
|
|
462
|
-
3. After that separator, provide a clear explanation of what changed and why
|
|
463
|
-
4. If renaming a function/class/variable, you MUST update ALL references
|
|
464
|
-
5. Maintain exact indentation and formatting from the original
|
|
465
|
-
6. Only modify what's necessary for the instruction
|
|
466
|
-
|
|
467
|
-
FILE: ${filepath}
|
|
468
|
-
|
|
469
|
-
CURRENT CODE:
|
|
470
|
-
\`\`\`
|
|
471
|
-
${fileContent}
|
|
472
|
-
\`\`\`
|
|
473
|
-
|
|
474
|
-
INSTRUCTION: ${instruction}
|
|
475
|
-
|
|
476
|
-
Return format:
|
|
477
|
-
1. Complete modified file content (entire file, not a diff)
|
|
478
|
-
2. A line with: ---EXPLANATION---
|
|
479
|
-
3. Your explanation of the changes`;
|
|
480
|
-
}
|
|
481
|
-
else {
|
|
482
|
-
// Standard mode: just code
|
|
483
|
-
prompt = `You are a code editor. Return the COMPLETE modified file content.
|
|
437
|
+
const prompt = `You are a code editor. Return the COMPLETE modified file content.
|
|
484
438
|
|
|
485
439
|
CRITICAL RULES:
|
|
486
440
|
1. Return ONLY the complete modified file content - no explanations, no markdown, no code blocks
|
|
@@ -499,37 +453,14 @@ ${fileContent}
|
|
|
499
453
|
INSTRUCTION: ${instruction}
|
|
500
454
|
|
|
501
455
|
Return the COMPLETE modified file content (entire file, not a diff):`;
|
|
502
|
-
}
|
|
503
456
|
return await retryWithBackoff(async () => {
|
|
504
457
|
return await cohereCircuitBreaker.execute(async () => {
|
|
505
458
|
const response = await this.client.chat({
|
|
506
459
|
message: prompt,
|
|
507
460
|
temperature: 0.3, // Lower for deterministic code generation and editing
|
|
508
461
|
});
|
|
509
|
-
const
|
|
510
|
-
|
|
511
|
-
let text = responseText;
|
|
512
|
-
let explanation;
|
|
513
|
-
if (requestExplanation) {
|
|
514
|
-
const separatorIndex = responseText.indexOf('---EXPLANATION---');
|
|
515
|
-
if (separatorIndex !== -1) {
|
|
516
|
-
text = responseText.substring(0, separatorIndex).trim();
|
|
517
|
-
explanation = responseText.substring(separatorIndex + '---EXPLANATION---'.length).trim();
|
|
518
|
-
}
|
|
519
|
-
else {
|
|
520
|
-
// Fallback: if separator not found, treat entire response as code
|
|
521
|
-
text = responseText;
|
|
522
|
-
explanation = 'Explanation not provided in expected format.';
|
|
523
|
-
}
|
|
524
|
-
}
|
|
525
|
-
// Extract usage data if available from Cohere API
|
|
526
|
-
const usage = response.meta?.tokens ? {
|
|
527
|
-
inputTokens: response.meta.tokens.inputTokens || 0,
|
|
528
|
-
outputTokens: response.meta.tokens.outputTokens || 0,
|
|
529
|
-
} : undefined;
|
|
530
|
-
// Cohere SDK doesn't expose model in response, use configured model
|
|
531
|
-
const model = 'command-r';
|
|
532
|
-
return { text, explanation, usage, model };
|
|
462
|
+
const result = response.text || '';
|
|
463
|
+
return result;
|
|
533
464
|
});
|
|
534
465
|
}, {
|
|
535
466
|
maxRetries: 3,
|
|
@@ -18,22 +18,15 @@ import { OperationProviderResolver } from '../providers/operation-provider-resol
|
|
|
18
18
|
import { ProviderRegistry } from '../providers/provider-registry.js';
|
|
19
19
|
import { encoding_for_model } from 'tiktoken';
|
|
20
20
|
import { serializeCodeChunks } from '../serialization/toon-serializer.js';
|
|
21
|
-
import { detectPromptInjection, validateQuery } from '../security/input-validator.js';
|
|
22
|
-
import { getConfigManager } from '../config/config-manager.js';
|
|
23
21
|
// Token counting helper (same as CohereAIService for consistency)
|
|
24
22
|
let tokenEncoder = null;
|
|
25
23
|
function getTokenEncoder() {
|
|
26
24
|
if (!tokenEncoder) {
|
|
27
25
|
try {
|
|
28
|
-
|
|
29
|
-
const config = getConfigManager();
|
|
30
|
-
const defaultModel = config.getModel('default') || config.getPreference('defaultModel');
|
|
31
|
-
// tiktoken uses OpenAI models - use GPT model if available, else default to gpt-3.5-turbo
|
|
32
|
-
const tiktokenModel = (defaultModel && defaultModel.includes('gpt')) ? defaultModel : 'gpt-3.5-turbo';
|
|
33
|
-
tokenEncoder = encoding_for_model(tiktokenModel);
|
|
26
|
+
tokenEncoder = encoding_for_model('gpt-3.5-turbo');
|
|
34
27
|
}
|
|
35
28
|
catch {
|
|
36
|
-
tokenEncoder = encoding_for_model('gpt-
|
|
29
|
+
tokenEncoder = encoding_for_model('gpt-4');
|
|
37
30
|
}
|
|
38
31
|
}
|
|
39
32
|
return tokenEncoder;
|
|
@@ -128,21 +121,6 @@ ${query}`;
|
|
|
128
121
|
return undefined; // Use default
|
|
129
122
|
}
|
|
130
123
|
async chat(query, context, memories) {
|
|
131
|
-
// P0 Security: Validate and detect prompt injection before processing
|
|
132
|
-
const injectionResult = detectPromptInjection(query);
|
|
133
|
-
if (injectionResult && (injectionResult.severity === 'critical' || injectionResult.severity === 'high')) {
|
|
134
|
-
throw new Error(`Security: Prompt injection detected (${injectionResult.severity}): ${injectionResult.description}. Category: ${injectionResult.category}`);
|
|
135
|
-
}
|
|
136
|
-
// Validate query format
|
|
137
|
-
const validationResult = validateQuery(query);
|
|
138
|
-
if (!validationResult.valid && validationResult.errors.length > 0) {
|
|
139
|
-
const criticalErrors = validationResult.errors.filter(e => e.includes('critical') || e.includes('high') || e.includes('Prompt injection'));
|
|
140
|
-
if (criticalErrors.length > 0) {
|
|
141
|
-
throw new Error(`Security: Input validation failed: ${criticalErrors.join('; ')}`);
|
|
142
|
-
}
|
|
143
|
-
}
|
|
144
|
-
// Use sanitized query if validation found issues (but not critical)
|
|
145
|
-
const sanitizedQuery = validationResult.sanitized || query;
|
|
146
124
|
// Context Compression: Compress if context is too large (preserves CohereAIService behavior)
|
|
147
125
|
let finalContext = context;
|
|
148
126
|
let finalMemories = memories;
|
|
@@ -150,7 +128,7 @@ ${query}`;
|
|
|
150
128
|
const contextCompressor = this._contextCompressor || this.contextCompressor;
|
|
151
129
|
if (contextCompressor) {
|
|
152
130
|
const estimatedTokens = context.reduce((sum, chunk) => sum + Math.ceil(chunk.content.length / 4), 0);
|
|
153
|
-
const maxTokens =
|
|
131
|
+
const maxTokens = 3000; // Same threshold as CohereAIService
|
|
154
132
|
if (estimatedTokens > maxTokens) {
|
|
155
133
|
const strategy = {
|
|
156
134
|
maxTokens,
|
|
@@ -184,15 +162,12 @@ ${query}`;
|
|
|
184
162
|
}
|
|
185
163
|
}
|
|
186
164
|
}
|
|
187
|
-
const prompt = await this.buildPrompt(
|
|
165
|
+
const prompt = await this.buildPrompt(query, finalContext, finalMemories);
|
|
188
166
|
const model = this.selectModel(finalContext.length, finalMemories?.length || 0, 'chat');
|
|
189
|
-
// Get temperature from config
|
|
190
|
-
const config = getConfigManager();
|
|
191
|
-
const chatTemperature = config.getTemperature('chat') || 0.3; // OPTIMIZED: Reduced from 0.7 to 0.3 for faster token generation
|
|
192
167
|
// Register prompt version for reproducibility
|
|
193
168
|
const promptVersionId = promptVersioner.registerVersion(prompt, {
|
|
194
169
|
model: model || 'default',
|
|
195
|
-
temperature:
|
|
170
|
+
temperature: 0.7,
|
|
196
171
|
operation: 'chat',
|
|
197
172
|
});
|
|
198
173
|
const runId = executionTracer.getCurrentRunId();
|
|
@@ -206,19 +181,17 @@ ${query}`;
|
|
|
206
181
|
const traceId = executionTracer.trace({
|
|
207
182
|
operationType: 'llm_call',
|
|
208
183
|
operationName: 'chat',
|
|
209
|
-
input: { query
|
|
184
|
+
input: { query, contextCount: context.length, memoryCount: memories?.length || 0 },
|
|
210
185
|
metadata: {
|
|
211
186
|
model: model || 'default',
|
|
212
|
-
temperature:
|
|
187
|
+
temperature: 0.7,
|
|
213
188
|
promptVersionId,
|
|
214
|
-
injectionChecked: true,
|
|
215
189
|
},
|
|
216
190
|
});
|
|
217
191
|
try {
|
|
218
192
|
const response = await operationProvider.chat(prompt, {
|
|
219
193
|
model,
|
|
220
|
-
temperature:
|
|
221
|
-
maxTokens: 800, // OPTIMIZED: Cap response length for faster generation
|
|
194
|
+
temperature: 0.7,
|
|
222
195
|
});
|
|
223
196
|
const result = response.text || 'No response generated';
|
|
224
197
|
const duration = Date.now() - startTime;
|
|
@@ -254,29 +227,11 @@ ${query}`;
|
|
|
254
227
|
}
|
|
255
228
|
}
|
|
256
229
|
async chatStream(query, context, memories, streamHandler) {
|
|
257
|
-
|
|
258
|
-
const injectionResult = detectPromptInjection(query);
|
|
259
|
-
if (injectionResult && (injectionResult.severity === 'critical' || injectionResult.severity === 'high')) {
|
|
260
|
-
throw new Error(`Security: Prompt injection detected (${injectionResult.severity}): ${injectionResult.description}. Category: ${injectionResult.category}`);
|
|
261
|
-
}
|
|
262
|
-
// Validate query format
|
|
263
|
-
const validationResult = validateQuery(query);
|
|
264
|
-
if (!validationResult.valid && validationResult.errors.length > 0) {
|
|
265
|
-
const criticalErrors = validationResult.errors.filter(e => e.includes('critical') || e.includes('high') || e.includes('Prompt injection'));
|
|
266
|
-
if (criticalErrors.length > 0) {
|
|
267
|
-
throw new Error(`Security: Input validation failed: ${criticalErrors.join('; ')}`);
|
|
268
|
-
}
|
|
269
|
-
}
|
|
270
|
-
// Use sanitized query if validation found issues (but not critical)
|
|
271
|
-
const sanitizedQuery = validationResult.sanitized || query;
|
|
272
|
-
const prompt = await this.buildPrompt(sanitizedQuery, context, memories);
|
|
230
|
+
const prompt = await this.buildPrompt(query, context, memories);
|
|
273
231
|
const model = this.selectModel(context.length, memories?.length || 0, 'chat');
|
|
274
|
-
// Get temperature from config
|
|
275
|
-
const config = getConfigManager();
|
|
276
|
-
const chatTemperature = config.getTemperature('chat') || 0.3; // OPTIMIZED: Reduced from 0.7 to 0.3 for faster token generation
|
|
277
232
|
const promptVersionId = promptVersioner.registerVersion(prompt, {
|
|
278
233
|
model: model || 'default',
|
|
279
|
-
temperature:
|
|
234
|
+
temperature: 0.7,
|
|
280
235
|
operation: 'chat-stream',
|
|
281
236
|
});
|
|
282
237
|
const runId = executionTracer.getCurrentRunId();
|
|
@@ -289,13 +244,12 @@ ${query}`;
|
|
|
289
244
|
executionTracer.trace({
|
|
290
245
|
operationType: 'llm_call',
|
|
291
246
|
operationName: 'chat-stream',
|
|
292
|
-
input: { query
|
|
247
|
+
input: { query, contextCount: context.length, memoryCount: memories?.length || 0 },
|
|
293
248
|
metadata: {
|
|
294
249
|
model: model || 'default',
|
|
295
250
|
temperature: 0.7,
|
|
296
251
|
promptVersionId,
|
|
297
252
|
streaming: true,
|
|
298
|
-
injectionChecked: true,
|
|
299
253
|
},
|
|
300
254
|
});
|
|
301
255
|
// Phase 4F: Use operation-aware provider resolution
|
|
@@ -304,8 +258,7 @@ ${query}`;
|
|
|
304
258
|
// Use provider's streaming if available
|
|
305
259
|
const response = await operationProvider.chatStream(prompt, {
|
|
306
260
|
model,
|
|
307
|
-
temperature:
|
|
308
|
-
maxTokens: 800, // OPTIMIZED: Cap response length for faster generation
|
|
261
|
+
temperature: 0.7,
|
|
309
262
|
}, (event) => {
|
|
310
263
|
if (event.type === 'delta' && event.text) {
|
|
311
264
|
fullText += event.text;
|
|
@@ -328,8 +281,7 @@ ${query}`;
|
|
|
328
281
|
// Fallback: Use regular chat and simulate streaming
|
|
329
282
|
const response = await operationProvider.chat(prompt, {
|
|
330
283
|
model,
|
|
331
|
-
temperature:
|
|
332
|
-
maxTokens: 800, // OPTIMIZED: Cap response length for faster generation
|
|
284
|
+
temperature: 0.7,
|
|
333
285
|
});
|
|
334
286
|
fullText = response.text || '';
|
|
335
287
|
// Simulate streaming by sending chunks
|
|
@@ -399,37 +351,8 @@ ${query}`;
|
|
|
399
351
|
const result = await operationProvider.embed(query);
|
|
400
352
|
return Array.isArray(result[0]) ? result[0] : result;
|
|
401
353
|
}
|
|
402
|
-
async generateEdit(fileContent, instruction, filepath
|
|
403
|
-
|
|
404
|
-
if (requestExplanation) {
|
|
405
|
-
// Learning mode: request both code and explanation
|
|
406
|
-
prompt = `You are a code editor and teacher. Your task is to modify the code AND explain what you changed and why.
|
|
407
|
-
|
|
408
|
-
CRITICAL RULES:
|
|
409
|
-
1. First, provide the COMPLETE modified file content
|
|
410
|
-
2. Then add a line with exactly: ---EXPLANATION---
|
|
411
|
-
3. After that separator, provide a clear explanation of what changed and why
|
|
412
|
-
4. If renaming a function/class/variable, you MUST update ALL references
|
|
413
|
-
5. Maintain exact indentation and formatting from the original
|
|
414
|
-
6. Only modify what's necessary for the instruction
|
|
415
|
-
|
|
416
|
-
FILE: ${filepath}
|
|
417
|
-
|
|
418
|
-
CURRENT CODE:
|
|
419
|
-
\`\`\`
|
|
420
|
-
${fileContent}
|
|
421
|
-
\`\`\`
|
|
422
|
-
|
|
423
|
-
INSTRUCTION: ${instruction}
|
|
424
|
-
|
|
425
|
-
Return format:
|
|
426
|
-
1. Complete modified file content (entire file, not a diff)
|
|
427
|
-
2. A line with: ---EXPLANATION---
|
|
428
|
-
3. Your explanation of the changes`;
|
|
429
|
-
}
|
|
430
|
-
else {
|
|
431
|
-
// Standard mode: just code
|
|
432
|
-
prompt = `You are a code editor. Return the COMPLETE modified file content.
|
|
354
|
+
async generateEdit(fileContent, instruction, filepath) {
|
|
355
|
+
const prompt = `You are a code editor. Return the COMPLETE modified file content.
|
|
433
356
|
|
|
434
357
|
CRITICAL RULES:
|
|
435
358
|
1. Return ONLY the complete modified file content - no explanations, no markdown, no code blocks
|
|
@@ -448,36 +371,12 @@ ${fileContent}
|
|
|
448
371
|
INSTRUCTION: ${instruction}
|
|
449
372
|
|
|
450
373
|
Return the COMPLETE modified file content (entire file, not a diff):`;
|
|
451
|
-
}
|
|
452
374
|
// Phase 4F: Use operation-aware provider resolution (chat operation)
|
|
453
375
|
const operationProvider = this.getProviderForOperation('chat');
|
|
454
|
-
const config = getConfigManager();
|
|
455
|
-
const codeGenTemperature = config.getTemperature('codeGeneration') || 0.3;
|
|
456
376
|
const response = await operationProvider.chat(prompt, {
|
|
457
|
-
temperature:
|
|
377
|
+
temperature: 0.3, // Lower for deterministic code generation
|
|
458
378
|
});
|
|
459
|
-
|
|
460
|
-
// Parse response to extract code and explanation if requested
|
|
461
|
-
let text = responseText;
|
|
462
|
-
let explanation;
|
|
463
|
-
if (requestExplanation) {
|
|
464
|
-
const separatorIndex = responseText.indexOf('---EXPLANATION---');
|
|
465
|
-
if (separatorIndex !== -1) {
|
|
466
|
-
text = responseText.substring(0, separatorIndex).trim();
|
|
467
|
-
explanation = responseText.substring(separatorIndex + '---EXPLANATION---'.length).trim();
|
|
468
|
-
}
|
|
469
|
-
else {
|
|
470
|
-
// Fallback: if separator not found, treat entire response as code
|
|
471
|
-
text = responseText;
|
|
472
|
-
explanation = 'Explanation not provided in expected format.';
|
|
473
|
-
}
|
|
474
|
-
}
|
|
475
|
-
return {
|
|
476
|
-
text,
|
|
477
|
-
explanation,
|
|
478
|
-
usage: response.usage,
|
|
479
|
-
model: response.model,
|
|
480
|
-
};
|
|
379
|
+
return response.text || '';
|
|
481
380
|
}
|
|
482
381
|
async generateFileContent(filepath, instruction, requirements = []) {
|
|
483
382
|
const requirementsText = requirements.length > 0
|
|
@@ -524,10 +423,8 @@ INSTRUCTION: ${instruction}
|
|
|
524
423
|
Return the COMPLETE file content (entire file, ready to save):`;
|
|
525
424
|
// Phase 4F: Use operation-aware provider resolution (chat operation)
|
|
526
425
|
const operationProvider = this.getProviderForOperation('chat');
|
|
527
|
-
const config = getConfigManager();
|
|
528
|
-
const codeGenTemperature = config.getTemperature('codeGeneration') || 0.3;
|
|
529
426
|
const response = await operationProvider.chat(prompt, {
|
|
530
|
-
temperature:
|
|
427
|
+
temperature: 0.35,
|
|
531
428
|
});
|
|
532
429
|
let content = response.text || '';
|
|
533
430
|
// Clean up common markdown formatting
|
|
@@ -6,21 +6,32 @@
|
|
|
6
6
|
import { readFileSync, writeFileSync, existsSync, mkdirSync } from 'fs';
|
|
7
7
|
import { join } from 'path';
|
|
8
8
|
import { getVersion } from '../../utils/version.js';
|
|
9
|
+
function detectDefaultProvider() {
|
|
10
|
+
if (process.env.ANTHROPIC_API_KEY)
|
|
11
|
+
return { provider: 'anthropic', model: 'claude-sonnet-4-20250514' };
|
|
12
|
+
if (process.env.OPENAI_API_KEY)
|
|
13
|
+
return { provider: 'openai', model: 'gpt-4o-mini' };
|
|
14
|
+
if (process.env.COHERE_API_KEY)
|
|
15
|
+
return { provider: 'cohere', model: 'command-r-08-2024' };
|
|
16
|
+
if (process.env.CODEHERE_AI_PROVIDER === 'local')
|
|
17
|
+
return { provider: 'local', model: 'llama3' };
|
|
18
|
+
return { provider: 'auto', model: 'auto' };
|
|
19
|
+
}
|
|
9
20
|
const DEFAULT_CONFIG = {
|
|
10
21
|
version: getVersion(),
|
|
11
22
|
preferences: {
|
|
12
23
|
autoCommit: false,
|
|
13
24
|
askBeforeDestructive: true,
|
|
14
25
|
enableCrossTeamLearning: false,
|
|
15
|
-
defaultModel:
|
|
26
|
+
defaultModel: detectDefaultProvider().model,
|
|
16
27
|
maxTokens: 4096,
|
|
17
28
|
temperature: 0.3,
|
|
18
29
|
enableStreaming: true,
|
|
19
30
|
},
|
|
20
31
|
codebase: {},
|
|
21
32
|
api: {
|
|
22
|
-
provider:
|
|
23
|
-
model:
|
|
33
|
+
provider: detectDefaultProvider().provider,
|
|
34
|
+
model: detectDefaultProvider().model,
|
|
24
35
|
rateLimitHandling: 'retry',
|
|
25
36
|
},
|
|
26
37
|
ui: {
|
|
@@ -28,48 +39,6 @@ const DEFAULT_CONFIG = {
|
|
|
28
39
|
showSummary: true,
|
|
29
40
|
outputFormat: 'full',
|
|
30
41
|
},
|
|
31
|
-
paths: {
|
|
32
|
-
cacheDir: '.codehere-cache',
|
|
33
|
-
dataDir: 'data',
|
|
34
|
-
configDir: 'data',
|
|
35
|
-
embeddingsDir: '.codehere-cache/embeddings',
|
|
36
|
-
contextDir: '.codehere-cache/context',
|
|
37
|
-
},
|
|
38
|
-
limits: {
|
|
39
|
-
maxTokens: 4096,
|
|
40
|
-
maxTokenLimit: 128000,
|
|
41
|
-
maxContextSize: 100000,
|
|
42
|
-
maxFileSize: 1024 * 1024, // 1MB
|
|
43
|
-
maxFilesPerIndex: 30000,
|
|
44
|
-
maxRefactorFiles: 10,
|
|
45
|
-
maxRefactorChunks: 50,
|
|
46
|
-
},
|
|
47
|
-
chunking: {
|
|
48
|
-
chunkSize: 300,
|
|
49
|
-
overlap: 50,
|
|
50
|
-
},
|
|
51
|
-
models: {
|
|
52
|
-
// Provider-agnostic defaults - each provider defines its own models
|
|
53
|
-
// Config should only store user overrides, not provider-specific defaults
|
|
54
|
-
// All callers have fallbacks to provider-specific defaults (e.g., openai-provider.ts, cohere-provider.ts)
|
|
55
|
-
default: undefined,
|
|
56
|
-
chat: undefined,
|
|
57
|
-
embedding: undefined,
|
|
58
|
-
rerank: undefined,
|
|
59
|
-
planning: undefined,
|
|
60
|
-
reasoning: undefined,
|
|
61
|
-
},
|
|
62
|
-
rateLimits: {
|
|
63
|
-
minDelayMs: 1500,
|
|
64
|
-
monthlyLimit: 1000,
|
|
65
|
-
maxConcurrency: 10,
|
|
66
|
-
},
|
|
67
|
-
temperatures: {
|
|
68
|
-
default: 0.3,
|
|
69
|
-
chat: 0.7,
|
|
70
|
-
planning: 0.3,
|
|
71
|
-
codeGeneration: 0.3,
|
|
72
|
-
},
|
|
73
42
|
};
|
|
74
43
|
export class ConfigManager {
|
|
75
44
|
configPath;
|
|
@@ -113,30 +82,6 @@ export class ConfigManager {
|
|
|
113
82
|
...DEFAULT_CONFIG.ui,
|
|
114
83
|
...loaded.ui,
|
|
115
84
|
},
|
|
116
|
-
paths: {
|
|
117
|
-
...DEFAULT_CONFIG.paths,
|
|
118
|
-
...loaded.paths,
|
|
119
|
-
},
|
|
120
|
-
limits: {
|
|
121
|
-
...DEFAULT_CONFIG.limits,
|
|
122
|
-
...loaded.limits,
|
|
123
|
-
},
|
|
124
|
-
chunking: {
|
|
125
|
-
...DEFAULT_CONFIG.chunking,
|
|
126
|
-
...loaded.chunking,
|
|
127
|
-
},
|
|
128
|
-
models: {
|
|
129
|
-
...DEFAULT_CONFIG.models,
|
|
130
|
-
...loaded.models,
|
|
131
|
-
},
|
|
132
|
-
rateLimits: {
|
|
133
|
-
...DEFAULT_CONFIG.rateLimits,
|
|
134
|
-
...loaded.rateLimits,
|
|
135
|
-
},
|
|
136
|
-
temperatures: {
|
|
137
|
-
...DEFAULT_CONFIG.temperatures,
|
|
138
|
-
...loaded.temperatures,
|
|
139
|
-
},
|
|
140
85
|
};
|
|
141
86
|
}
|
|
142
87
|
catch (error) {
|
|
@@ -214,72 +159,6 @@ export class ConfigManager {
|
|
|
214
159
|
getConfigPath() {
|
|
215
160
|
return this.configPath;
|
|
216
161
|
}
|
|
217
|
-
/**
|
|
218
|
-
* Get cache directory path (resolved relative to codebase root)
|
|
219
|
-
*/
|
|
220
|
-
getCacheDir(codebaseRoot) {
|
|
221
|
-
const baseDir = codebaseRoot || process.cwd();
|
|
222
|
-
return join(baseDir, this.config.paths.cacheDir || '.codehere-cache');
|
|
223
|
-
}
|
|
224
|
-
/**
|
|
225
|
-
* Get data directory path (resolved relative to codebase root)
|
|
226
|
-
*/
|
|
227
|
-
getDataDir(codebaseRoot) {
|
|
228
|
-
const baseDir = codebaseRoot || process.cwd();
|
|
229
|
-
return join(baseDir, this.config.paths.dataDir || 'data');
|
|
230
|
-
}
|
|
231
|
-
/**
|
|
232
|
-
* Get embeddings directory path
|
|
233
|
-
*/
|
|
234
|
-
getEmbeddingsDir(codebaseRoot) {
|
|
235
|
-
const baseDir = codebaseRoot || process.cwd();
|
|
236
|
-
const embeddingsPath = this.config.paths.embeddingsDir || '.codehere-cache/embeddings';
|
|
237
|
-
return join(baseDir, embeddingsPath);
|
|
238
|
-
}
|
|
239
|
-
/**
|
|
240
|
-
* Get context directory path
|
|
241
|
-
*/
|
|
242
|
-
getContextDir(codebaseRoot) {
|
|
243
|
-
const baseDir = codebaseRoot || process.cwd();
|
|
244
|
-
const contextPath = this.config.paths.contextDir || '.codehere-cache/context';
|
|
245
|
-
return join(baseDir, contextPath);
|
|
246
|
-
}
|
|
247
|
-
/**
|
|
248
|
-
* Get limit value
|
|
249
|
-
*/
|
|
250
|
-
getLimit(key) {
|
|
251
|
-
return this.config.limits[key];
|
|
252
|
-
}
|
|
253
|
-
/**
|
|
254
|
-
* Get path value
|
|
255
|
-
*/
|
|
256
|
-
getPath(key) {
|
|
257
|
-
return this.config.paths[key];
|
|
258
|
-
}
|
|
259
|
-
/**
|
|
260
|
-
* Get chunking parameter
|
|
261
|
-
*/
|
|
262
|
-
getChunking(key) {
|
|
263
|
-
return this.config.chunking[key];
|
|
264
|
-
}
|
|
265
|
-
/**
|
|
266
|
-
* Get a model from the models configuration
|
|
267
|
-
*/
|
|
268
|
-
getModel(key) {
|
|
269
|
-
return this.config.models?.[key];
|
|
270
|
-
}
|
|
271
|
-
/**
|
|
272
|
-
* Get a rate limit from the rateLimits configuration
|
|
273
|
-
*/
|
|
274
|
-
getRateLimit(key) {
|
|
275
|
-
return this.config.rateLimits?.[key];
|
|
276
|
-
}
|
|
277
|
-
/**
|
|
278
|
-
* Get a temperature from the temperatures configuration
|
|
279
|
-
*/
|
|
280
|
-
getTemperature(key) {
|
|
281
|
-
return this.config.temperatures?.[key];
|
|
282
|
-
}
|
|
283
162
|
}
|
|
284
163
|
/**
|
|
285
164
|
* Get global config manager instance
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Product Context
|
|
3
|
+
*
|
|
4
|
+
* Stores a lightweight "product brain" for the current project.
|
|
5
|
+
* Written by `codehere product init`, read by trust/report/router
|
|
6
|
+
* to give context-aware recommendations.
|
|
7
|
+
*
|
|
8
|
+
* Stored in: .codehere/product.json (per-project, gitignore-friendly)
|
|
9
|
+
*/
|
|
10
|
+
import { readFileSync, writeFileSync, existsSync, mkdirSync } from 'fs';
|
|
11
|
+
import { join } from 'path';
|
|
12
|
+
const CONFIG_DIR = '.codehere';
|
|
13
|
+
const CONFIG_FILE = 'product.json';
|
|
14
|
+
function getConfigPath(cwd) {
|
|
15
|
+
return join(cwd, CONFIG_DIR, CONFIG_FILE);
|
|
16
|
+
}
|
|
17
|
+
export function loadProductContext(cwd = process.cwd()) {
|
|
18
|
+
const path = getConfigPath(cwd);
|
|
19
|
+
if (!existsSync(path))
|
|
20
|
+
return null;
|
|
21
|
+
try {
|
|
22
|
+
return JSON.parse(readFileSync(path, 'utf-8'));
|
|
23
|
+
}
|
|
24
|
+
catch {
|
|
25
|
+
return null;
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
export function saveProductContext(ctx, cwd = process.cwd()) {
|
|
29
|
+
const dir = join(cwd, CONFIG_DIR);
|
|
30
|
+
if (!existsSync(dir))
|
|
31
|
+
mkdirSync(dir, { recursive: true });
|
|
32
|
+
writeFileSync(getConfigPath(cwd), JSON.stringify(ctx, null, 2) + '\n');
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* Returns a plain-English risk label for use in recommendations.
|
|
36
|
+
*/
|
|
37
|
+
export function riskLabel(level) {
|
|
38
|
+
return level === 'critical' ? 'critical-risk'
|
|
39
|
+
: level === 'high' ? 'high-risk'
|
|
40
|
+
: level === 'medium' ? 'production'
|
|
41
|
+
: 'low-risk';
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* Adjusts a trust recommendation based on product context.
|
|
45
|
+
* If no context is available, returns the base recommendation unchanged.
|
|
46
|
+
*/
|
|
47
|
+
export function adjustRecommendation(base, criticalCount, highCount, score, ctx) {
|
|
48
|
+
if (!ctx)
|
|
49
|
+
return base;
|
|
50
|
+
const prefix = ctx.productionApp
|
|
51
|
+
? `${ctx.name || 'Production app'} · `
|
|
52
|
+
: '';
|
|
53
|
+
if (criticalCount > 0) {
|
|
54
|
+
return `${prefix}${criticalCount} critical issue${criticalCount !== 1 ? 's' : ''} — fix before this goes to production.`;
|
|
55
|
+
}
|
|
56
|
+
if (ctx.riskLevel === 'critical' || ctx.riskLevel === 'high') {
|
|
57
|
+
if (highCount > 0) {
|
|
58
|
+
return `${prefix}${highCount} high-severity pattern${highCount !== 1 ? 's' : ''} — worth fixing before merge given the risk level.`;
|
|
59
|
+
}
|
|
60
|
+
if (score >= 75) {
|
|
61
|
+
return `${prefix}Clean scan. Good to merge — double-check ${ctx.sensitiveAreas.slice(0, 2).join(' and ') || 'sensitive areas'} manually.`;
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
return base;
|
|
65
|
+
}
|
|
66
|
+
//# sourceMappingURL=product-context.js.map
|