@crownpeak/dqm-react-component-dev-mcp 1.2.0
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 +138 -0
- package/data/.env.example +22 -0
- package/data/.gitattributes +47 -0
- package/data/.glfrc.json +7 -0
- package/data/.husky/pre-commit +5 -0
- package/data/.nvmrc +1 -0
- package/data/CHANGELOG.md +75 -0
- package/data/CODE_OF_CONDUCT.md +129 -0
- package/data/CONTRIBUTING.md +203 -0
- package/data/DOCS-STRUCTURE.md +307 -0
- package/data/I18N.md +292 -0
- package/data/LICENSE +22 -0
- package/data/README.md +315 -0
- package/data/SECURITY.md +125 -0
- package/data/WIKI-DEPLOYMENT.md +348 -0
- package/data/docs/AI-FEATURES.md +610 -0
- package/data/docs/API-REFERENCE.md +1022 -0
- package/data/docs/AUTHENTICATION.md +301 -0
- package/data/docs/BACKEND-API.md +468 -0
- package/data/docs/DEVELOPMENT.md +375 -0
- package/data/docs/EXAMPLES.md +622 -0
- package/data/docs/MCP-SERVER.md +307 -0
- package/data/docs/MIGRATION-GUIDE.md +367 -0
- package/data/docs/NPM-PUBLISH.md +193 -0
- package/data/docs/QUICKSTART.md +206 -0
- package/data/docs/REDIS-SETUP.md +162 -0
- package/data/docs/SERVER.md +228 -0
- package/data/docs/TROUBLESHOOTING.md +657 -0
- package/data/docs/WIDGET-GUIDE.md +638 -0
- package/data/docs/WIKI-HOME.md +58 -0
- package/data/docs/WIKI-SIDEBAR.md +39 -0
- package/data/package.json +171 -0
- package/data/playwright.config.ts +64 -0
- package/data/probe/.cargo/config.toml +10 -0
- package/data/probe/.claude/commands/performance-review.md +15 -0
- package/data/probe/.clinerules +288 -0
- package/data/probe/.dockerignore +57 -0
- package/data/probe/.githooks/post-commit +11 -0
- package/data/probe/.githooks/pre-commit +99 -0
- package/data/probe/.githooks/pre-commit-vow +9 -0
- package/data/probe/.prompts/engineer.md +41 -0
- package/data/probe/.roomodes +28 -0
- package/data/probe/.windsurfrules +0 -0
- package/data/probe/BASH_TOOL_SUMMARY.md +148 -0
- package/data/probe/BENCHMARKING.md +256 -0
- package/data/probe/CLAUDE.md +226 -0
- package/data/probe/CODE_OF_CONDUCT.md +128 -0
- package/data/probe/CONTRIBUTING.md +193 -0
- package/data/probe/Cargo.toml +120 -0
- package/data/probe/Cross.toml +10 -0
- package/data/probe/DOCKER-README.md +224 -0
- package/data/probe/Dockerfile +32 -0
- package/data/probe/ENHANCED_DEBUG_TELEMETRY.md +188 -0
- package/data/probe/LICENSE +201 -0
- package/data/probe/Makefile +210 -0
- package/data/probe/README.md +824 -0
- package/data/probe/SECURITY.md +67 -0
- package/data/probe/WINDOWS-GUIDE.md +294 -0
- package/data/probe/benches/parsing_benchmarks.rs +370 -0
- package/data/probe/benches/search_benchmarks.rs +599 -0
- package/data/probe/benches/simd_benchmarks.rs +372 -0
- package/data/probe/benches/timing_benchmarks.rs +287 -0
- package/data/probe/build-windows.bat +229 -0
- package/data/probe/codex-config/config.toml +6 -0
- package/data/probe/docs/PERFORMANCE_OPTIMIZATION.md +161 -0
- package/data/probe/examples/cache_demo.rs +46 -0
- package/data/probe/examples/chat/.dockerignore +37 -0
- package/data/probe/examples/chat/ChatSessionManager.js +295 -0
- package/data/probe/examples/chat/Dockerfile +98 -0
- package/data/probe/examples/chat/LICENSE +201 -0
- package/data/probe/examples/chat/LOCAL_IMAGE_SUPPORT.md +195 -0
- package/data/probe/examples/chat/MCP_INTEGRATION.md +400 -0
- package/data/probe/examples/chat/README.md +338 -0
- package/data/probe/examples/chat/TRACING.md +226 -0
- package/data/probe/examples/chat/appTracer.js +968 -0
- package/data/probe/examples/chat/auth.js +76 -0
- package/data/probe/examples/chat/bin/probe-chat.js +13 -0
- package/data/probe/examples/chat/build.js +104 -0
- package/data/probe/examples/chat/cancelRequest.js +84 -0
- package/data/probe/examples/chat/demo-agentic-image-flow.js +88 -0
- package/data/probe/examples/chat/demo-local-images.js +128 -0
- package/data/probe/examples/chat/fileSpanExporter.js +181 -0
- package/data/probe/examples/chat/implement/README.md +228 -0
- package/data/probe/examples/chat/implement/backends/AiderBackend.js +750 -0
- package/data/probe/examples/chat/implement/backends/BaseBackend.js +276 -0
- package/data/probe/examples/chat/implement/backends/ClaudeCodeBackend.js +767 -0
- package/data/probe/examples/chat/implement/backends/MockBackend.js +237 -0
- package/data/probe/examples/chat/implement/backends/registry.js +85 -0
- package/data/probe/examples/chat/implement/core/BackendManager.js +567 -0
- package/data/probe/examples/chat/implement/core/ImplementTool.js +354 -0
- package/data/probe/examples/chat/implement/core/config.js +428 -0
- package/data/probe/examples/chat/implement/core/timeouts.js +58 -0
- package/data/probe/examples/chat/implement/core/utils.js +496 -0
- package/data/probe/examples/chat/implement/types/BackendTypes.js +126 -0
- package/data/probe/examples/chat/index.js +669 -0
- package/data/probe/examples/chat/mcpServer.js +341 -0
- package/data/probe/examples/chat/npm/LICENSE +15 -0
- package/data/probe/examples/chat/npm/README.md +168 -0
- package/data/probe/examples/chat/npm/bin/probe-chat.js +156 -0
- package/data/probe/examples/chat/npm/index.js +259 -0
- package/data/probe/examples/chat/npm/package.json +54 -0
- package/data/probe/examples/chat/package.json +102 -0
- package/data/probe/examples/chat/probeChat.js +456 -0
- package/data/probe/examples/chat/probeTool.js +491 -0
- package/data/probe/examples/chat/storage/JsonChatStorage.js +476 -0
- package/data/probe/examples/chat/telemetry.js +281 -0
- package/data/probe/examples/chat/test/integration/chatFlows.test.js +320 -0
- package/data/probe/examples/chat/test/integration/toolCalling.test.js +471 -0
- package/data/probe/examples/chat/test/mocks/mockLLMProvider.js +269 -0
- package/data/probe/examples/chat/test/test-backends.js +90 -0
- package/data/probe/examples/chat/test/testUtils.js +530 -0
- package/data/probe/examples/chat/test/unit/backendTimeout.test.js +161 -0
- package/data/probe/examples/chat/test/unit/packageFiles.test.js +120 -0
- package/data/probe/examples/chat/test/verify-tests.js +118 -0
- package/data/probe/examples/chat/test-agentic-image-loading.js +294 -0
- package/data/probe/examples/chat/test-ai-sdk-telemetry.js +204 -0
- package/data/probe/examples/chat/test-chat-tracing.js +38 -0
- package/data/probe/examples/chat/test-direct-function.js +49 -0
- package/data/probe/examples/chat/test-file-size-validation.js +103 -0
- package/data/probe/examples/chat/test-full-mcp-integration.js +258 -0
- package/data/probe/examples/chat/test-github-context.txt +12 -0
- package/data/probe/examples/chat/test-hierarchy.js +203 -0
- package/data/probe/examples/chat/test-image-spans.js +37 -0
- package/data/probe/examples/chat/test-local-image-reading.js +176 -0
- package/data/probe/examples/chat/test-mcp-integration.js +136 -0
- package/data/probe/examples/chat/test-mcp-probe-server.js +161 -0
- package/data/probe/examples/chat/test-mcp-with-ai.js +279 -0
- package/data/probe/examples/chat/test-multiple-allowed-dirs.js +111 -0
- package/data/probe/examples/chat/test-probe-mcp-server.js +110 -0
- package/data/probe/examples/chat/test-security-validation.js +145 -0
- package/data/probe/examples/chat/test-simple-tracing.js +32 -0
- package/data/probe/examples/chat/test-trace-verification.js +235 -0
- package/data/probe/examples/chat/test-tracing.js +114 -0
- package/data/probe/examples/chat/tokenCounter.js +419 -0
- package/data/probe/examples/chat/tokenUsageDisplay.js +134 -0
- package/data/probe/examples/chat/webServer.js +1103 -0
- package/data/probe/examples/reranker/Cargo.toml +33 -0
- package/data/probe/examples/reranker/DEBUG_OUTPUT_ANALYSIS.md +71 -0
- package/data/probe/examples/reranker/MODELS.md +66 -0
- package/data/probe/examples/reranker/MODEL_COMPARISON.md +60 -0
- package/data/probe/examples/reranker/MULTI_MODEL_ANALYSIS.md +176 -0
- package/data/probe/examples/reranker/PERFORMANCE_SUMMARY.md +156 -0
- package/data/probe/examples/reranker/README.md +347 -0
- package/data/probe/examples/reranker/RUST_BERT_COMPARISON.md +82 -0
- package/data/probe/examples/reranker/TOKENIZATION_GUIDE.md +120 -0
- package/data/probe/examples/reranker/check_rust_tokenizer.py +108 -0
- package/data/probe/examples/reranker/convert_to_torchscript.py +109 -0
- package/data/probe/examples/reranker/debug_scoring.py +189 -0
- package/data/probe/examples/reranker/debug_tokenization.py +154 -0
- package/data/probe/examples/reranker/download_models.sh +73 -0
- package/data/probe/examples/reranker/requirements.txt +13 -0
- package/data/probe/examples/reranker/run_comprehensive_benchmark.sh +83 -0
- package/data/probe/examples/reranker/rust_bert_test/Cargo.toml +12 -0
- package/data/probe/examples/reranker/rust_bert_test/README.md +54 -0
- package/data/probe/examples/reranker/simple_test.py +50 -0
- package/data/probe/examples/reranker/test_all_models.sh +63 -0
- package/data/probe/examples/reranker/test_bert_results.sh +44 -0
- package/data/probe/examples/reranker/test_cross_encoder.py +334 -0
- package/data/probe/examples/reranker/test_cross_encoder.sh +80 -0
- package/data/probe/examples/reranker/test_exact_comparison.py +151 -0
- package/data/probe/examples/reranker/test_parallel_performance.sh +56 -0
- package/data/probe/examples/reranker/test_scores.py +132 -0
- package/data/probe/install.ps1 +508 -0
- package/data/probe/install.sh +460 -0
- package/data/probe/npm/CLONE_METHOD_EXAMPLES.md +596 -0
- package/data/probe/npm/CONTEXT_COMPACTION.md +303 -0
- package/data/probe/npm/DELEGATE_TOOL_README.md +166 -0
- package/data/probe/npm/MAID_INTEGRATION.md +313 -0
- package/data/probe/npm/MCP_INTEGRATION_SUMMARY.md +241 -0
- package/data/probe/npm/README.md +824 -0
- package/data/probe/npm/bin/.gitignore +7 -0
- package/data/probe/npm/bin/.gitkeep +0 -0
- package/data/probe/npm/bin/README.md +12 -0
- package/data/probe/npm/bin/probe +167 -0
- package/data/probe/npm/docs/CLAUDE_CODE_INTEGRATION.md +414 -0
- package/data/probe/npm/docs/CODEX_INTEGRATION.md +502 -0
- package/data/probe/npm/docs/EDIT_CREATE_TOOLS.md +233 -0
- package/data/probe/npm/docs/RETRY_AND_FALLBACK.md +674 -0
- package/data/probe/npm/example-usage.js +335 -0
- package/data/probe/npm/examples/multi-engine-demo.js +117 -0
- package/data/probe/npm/examples/probe-agent-cli.js +113 -0
- package/data/probe/npm/examples/test-agent-edit.js +114 -0
- package/data/probe/npm/examples/test-edit-create.js +120 -0
- package/data/probe/npm/examples/test-edit-direct.js +114 -0
- package/data/probe/npm/index.d.ts +744 -0
- package/data/probe/npm/jest.config.js +52 -0
- package/data/probe/npm/package.json +117 -0
- package/data/probe/npm/scripts/build-agent.cjs +75 -0
- package/data/probe/npm/scripts/build-cjs.js +124 -0
- package/data/probe/npm/scripts/build-mcp.cjs +36 -0
- package/data/probe/npm/scripts/postinstall.js +216 -0
- package/data/probe/npm/test-codex-e2e.js +78 -0
- package/data/probe/npm/test-download-lock.js +109 -0
- package/data/probe/npm/test-grep-security.js +94 -0
- package/data/probe/npm/test-grep-simplified.js +63 -0
- package/data/probe/npm/test-grep.js +51 -0
- package/data/probe/npm/tests/README.md +96 -0
- package/data/probe/npm/tests/agent-compact-history.test.js +174 -0
- package/data/probe/npm/tests/allow-tests-default.test.js +151 -0
- package/data/probe/npm/tests/contextCompactor.test.js +498 -0
- package/data/probe/npm/tests/delegate-config.test.js +353 -0
- package/data/probe/npm/tests/delegate-integration.test.js +348 -0
- package/data/probe/npm/tests/extractor-integration.test.js +162 -0
- package/data/probe/npm/tests/extractor.test.js +317 -0
- package/data/probe/npm/tests/fixtures/sampleDiagrams.js +267 -0
- package/data/probe/npm/tests/integration/claude-code-auto-fallback.spec.js +148 -0
- package/data/probe/npm/tests/integration/claude-code-multi-step.spec.js +127 -0
- package/data/probe/npm/tests/integration/claude-code-tool-events.spec.js +163 -0
- package/data/probe/npm/tests/integration/codex-auto-fallback.spec.js +191 -0
- package/data/probe/npm/tests/integration/codex-tool-events.spec.js +147 -0
- package/data/probe/npm/tests/integration/examplesChatMcp.test.js +402 -0
- package/data/probe/npm/tests/integration/mcpDotenvSupport.test.js +174 -0
- package/data/probe/npm/tests/integration/mcpErrorHandling.test.js +566 -0
- package/data/probe/npm/tests/integration/mcpRobustness.test.js +564 -0
- package/data/probe/npm/tests/integration/mcpStdoutPurity.test.js +355 -0
- package/data/probe/npm/tests/integration/probeAgentMcp.test.js +398 -0
- package/data/probe/npm/tests/integration/retryFallback.test.js +368 -0
- package/data/probe/npm/tests/integration/schema-in-initial-message.test.js +318 -0
- package/data/probe/npm/tests/integration/schema-validation-loop-prevention.test.js +244 -0
- package/data/probe/npm/tests/integration/schemaRetryLogic.test.js +94 -0
- package/data/probe/npm/tests/integration/validationFlow.test.js +329 -0
- package/data/probe/npm/tests/manual/test-codex-basic.js +110 -0
- package/data/probe/npm/tests/mcp/mcpClientManager.test.js +614 -0
- package/data/probe/npm/tests/mcp/mcpConfig.test.js +359 -0
- package/data/probe/npm/tests/mcp/mcpXmlBridge.test.js +436 -0
- package/data/probe/npm/tests/mcp/mockMcpServer.js +510 -0
- package/data/probe/npm/tests/mcp-strict-syntax.test.js +319 -0
- package/data/probe/npm/tests/mermaidQuoteEscaping.test.js +214 -0
- package/data/probe/npm/tests/nestedQuoteFix.test.js +40 -0
- package/data/probe/npm/tests/setup.js +46 -0
- package/data/probe/npm/tests/unit/allowed-tools.test.js +513 -0
- package/data/probe/npm/tests/unit/attempt-completion-closing-tag-in-content.test.js +188 -0
- package/data/probe/npm/tests/unit/attemptCompletionJsonFix.test.js +238 -0
- package/data/probe/npm/tests/unit/attemptCompletionJsonIssue.test.js +128 -0
- package/data/probe/npm/tests/unit/backtickAutoFix.test.js +35 -0
- package/data/probe/npm/tests/unit/bash-probe-agent-integration.test.js +389 -0
- package/data/probe/npm/tests/unit/bash-simple-commands.test.js +324 -0
- package/data/probe/npm/tests/unit/bash-tool-comprehensive.test.js +371 -0
- package/data/probe/npm/tests/unit/bash-tool-integration.test.js +310 -0
- package/data/probe/npm/tests/unit/bash-tool.test.js +341 -0
- package/data/probe/npm/tests/unit/completion-prompt.test.js +379 -0
- package/data/probe/npm/tests/unit/cwd-path-options.test.js +287 -0
- package/data/probe/npm/tests/unit/delegate-limits.test.js +422 -0
- package/data/probe/npm/tests/unit/direct-content-attempt-completion.test.js +235 -0
- package/data/probe/npm/tests/unit/edit-create-tools.test.js +609 -0
- package/data/probe/npm/tests/unit/enhancedMermaidValidation.test.js +577 -0
- package/data/probe/npm/tests/unit/extract-content.test.js +83 -0
- package/data/probe/npm/tests/unit/extract-multiple-targets.test.js +89 -0
- package/data/probe/npm/tests/unit/fallbackManager.test.js +442 -0
- package/data/probe/npm/tests/unit/githubCompatibilityValidation.test.js +258 -0
- package/data/probe/npm/tests/unit/imageConfig.test.js +149 -0
- package/data/probe/npm/tests/unit/imagePathResolution.test.js +345 -0
- package/data/probe/npm/tests/unit/json-fixing-agent.test.js +238 -0
- package/data/probe/npm/tests/unit/json-validation-enhanced-errors.test.js +199 -0
- package/data/probe/npm/tests/unit/jsonValidationInfiniteLoopFix.test.js +228 -0
- package/data/probe/npm/tests/unit/maidIntegration.test.js +139 -0
- package/data/probe/npm/tests/unit/maxIterationsWarning.test.js +195 -0
- package/data/probe/npm/tests/unit/mermaidEdgeLabelFix.test.js +161 -0
- package/data/probe/npm/tests/unit/mermaidHtmlEntities.test.js +76 -0
- package/data/probe/npm/tests/unit/mermaidInfiniteLoopFix.test.js +64 -0
- package/data/probe/npm/tests/unit/mermaidValidation.test.js +723 -0
- package/data/probe/npm/tests/unit/mermaidValidationVisorExample.test.js +309 -0
- package/data/probe/npm/tests/unit/probe-agent-clone-realistic.test.js +643 -0
- package/data/probe/npm/tests/unit/probe-agent-clone.test.js +476 -0
- package/data/probe/npm/tests/unit/probe-agent-delegate.test.js +400 -0
- package/data/probe/npm/tests/unit/probe-agent-model-option.test.js +118 -0
- package/data/probe/npm/tests/unit/probeTool-security.test.js +283 -0
- package/data/probe/npm/tests/unit/readImageTool.test.js +418 -0
- package/data/probe/npm/tests/unit/retryManager.test.js +317 -0
- package/data/probe/npm/tests/unit/schema-aware-reminders.test.js +288 -0
- package/data/probe/npm/tests/unit/schemaDefinitionDetection.test.js +115 -0
- package/data/probe/npm/tests/unit/schemaUtils.test.js +1268 -0
- package/data/probe/npm/tests/unit/simpleTelemetry.test.js +282 -0
- package/data/probe/npm/tests/unit/simplified-attempt-completion.test.js +274 -0
- package/data/probe/npm/tests/unit/single-quote-json-bug.test.js +231 -0
- package/data/probe/npm/tests/unit/subgraphAutoFix.test.js +110 -0
- package/data/probe/npm/tests/unit/system-prompt.test.js +32 -0
- package/data/probe/npm/tests/unit/types-probe-agent-options.test.js +42 -0
- package/data/probe/npm/tests/unit/xmlParsing.test.js +720 -0
- package/data/probe/npm/tsconfig.json +21 -0
- package/data/probe/result1.txt +19 -0
- package/data/probe/result2.txt +26 -0
- package/data/probe/scripts/benchmark.sh +270 -0
- package/data/probe/scripts/cache_memory_analysis.rs +844 -0
- package/data/probe/scripts/claude-hook-wrapper.sh +56 -0
- package/data/probe/site/.env.example +10 -0
- package/data/probe/site/DEPLOYMENT.md +86 -0
- package/data/probe/site/README.md +183 -0
- package/data/probe/site/adding-languages.md +135 -0
- package/data/probe/site/ai-chat.md +427 -0
- package/data/probe/site/ai-integration.md +1488 -0
- package/data/probe/site/blog/agentic-flow-custom-xml-protocol.md +407 -0
- package/data/probe/site/blog/index.md +118 -0
- package/data/probe/site/blog/v0.6.0-release.md +426 -0
- package/data/probe/site/blog.md +8 -0
- package/data/probe/site/changelog.md +200 -0
- package/data/probe/site/cli-mode.md +437 -0
- package/data/probe/site/code-extraction.md +436 -0
- package/data/probe/site/contributing/README.md +9 -0
- package/data/probe/site/contributing/documentation-cross-references.md +215 -0
- package/data/probe/site/contributing/documentation-maintenance.md +275 -0
- package/data/probe/site/contributing/documentation-structure.md +75 -0
- package/data/probe/site/documentation-cross-references.md +215 -0
- package/data/probe/site/documentation-guide.md +132 -0
- package/data/probe/site/documentation-maintenance.md +275 -0
- package/data/probe/site/features.md +147 -0
- package/data/probe/site/how-it-works.md +118 -0
- package/data/probe/site/index.md +175 -0
- package/data/probe/site/index.md.bak +133 -0
- package/data/probe/site/installation.md +235 -0
- package/data/probe/site/integrations/docker.md +248 -0
- package/data/probe/site/integrations/github-actions.md +413 -0
- package/data/probe/site/language-support-overview.md +168 -0
- package/data/probe/site/mcp-integration.md +587 -0
- package/data/probe/site/mcp-server.md +304 -0
- package/data/probe/site/navigation-structure.md +76 -0
- package/data/probe/site/nodejs-sdk.md +798 -0
- package/data/probe/site/output-formats.md +625 -0
- package/data/probe/site/package.json +21 -0
- package/data/probe/site/public/_headers +28 -0
- package/data/probe/site/public/_redirects +11 -0
- package/data/probe/site/quick-start.md +289 -0
- package/data/probe/site/search-functionality.md +291 -0
- package/data/probe/site/search-reference.md +291 -0
- package/data/probe/site/supported-languages.md +215 -0
- package/data/probe/site/use-cases/README.md +8 -0
- package/data/probe/site/use-cases/advanced-cli.md +253 -0
- package/data/probe/site/use-cases/ai-code-editors.md +239 -0
- package/data/probe/site/use-cases/building-ai-tools.md +529 -0
- package/data/probe/site/use-cases/cli-ai-workflows.md +285 -0
- package/data/probe/site/use-cases/deploying-probe-web-interface.md +255 -0
- package/data/probe/site/use-cases/integrating-probe-into-ai-code-editors.md +161 -0
- package/data/probe/site/use-cases/nodejs-sdk.md +596 -0
- package/data/probe/site/use-cases/team-chat.md +350 -0
- package/data/probe/site/web-interface.md +434 -0
- package/data/probe/site/wrangler.toml +9 -0
- package/data/probe/test-api-key.sh +1 -0
- package/data/probe/test-probe-implementation/hello.js +7 -0
- package/data/probe/test_cases/demonstrate_early_termination_issues.sh +176 -0
- package/data/probe/test_cases/early_termination_issues.rs +533 -0
- package/data/probe/test_data/test_nested_struct.go +26 -0
- package/data/probe/tests/README.md +286 -0
- package/data/probe/tests/README_search_determinism_tests.md +116 -0
- package/data/probe/tests/adjacent_comment_test.rs +152 -0
- package/data/probe/tests/apostrophe_handling_tests.rs +132 -0
- package/data/probe/tests/block_filtering_with_ast_tests.rs +669 -0
- package/data/probe/tests/block_merging_tests.rs +396 -0
- package/data/probe/tests/c_outline_format_tests.rs +2179 -0
- package/data/probe/tests/cache_invalidation_issues.rs.disabled +682 -0
- package/data/probe/tests/cache_order_tests.rs +147 -0
- package/data/probe/tests/cache_query_scoping_tests.rs +221 -0
- package/data/probe/tests/cli_tests.rs +680 -0
- package/data/probe/tests/comment_context_integration_test.rs +240 -0
- package/data/probe/tests/common.rs +33 -0
- package/data/probe/tests/complex_block_merging_tests.rs +599 -0
- package/data/probe/tests/complex_query_block_filtering_tests.rs +422 -0
- package/data/probe/tests/control_flow_closing_braces_test.rs +91 -0
- package/data/probe/tests/cpp_outline_format_tests.rs +1507 -0
- package/data/probe/tests/csharp_outline_format_tests.rs +941 -0
- package/data/probe/tests/elastic_query_integration_tests.rs +922 -0
- package/data/probe/tests/extract_command_tests.rs +1848 -0
- package/data/probe/tests/extract_deduplication_tests.rs +146 -0
- package/data/probe/tests/extract_input_file_tests.rs +84 -0
- package/data/probe/tests/extract_prompt_tests.rs +102 -0
- package/data/probe/tests/filename_search_tests.rs +96 -0
- package/data/probe/tests/fixtures/user/AssemblyInfo.cs +3 -0
- package/data/probe/tests/github_extract_tests.rs +234 -0
- package/data/probe/tests/go_comment_test.rs +253 -0
- package/data/probe/tests/go_outline_format_tests.rs +2587 -0
- package/data/probe/tests/go_path_resolver_tests.rs +96 -0
- package/data/probe/tests/html_outline_format_tests.rs +637 -0
- package/data/probe/tests/integration_tests.rs +837 -0
- package/data/probe/tests/ip_whitelist_test.rs +148 -0
- package/data/probe/tests/java_outline_format_tests.rs +1611 -0
- package/data/probe/tests/javascript_extract_tests.rs +315 -0
- package/data/probe/tests/javascript_outline_format_tests.rs +1464 -0
- package/data/probe/tests/json_format_tests.rs +436 -0
- package/data/probe/tests/json_schema_validation_tests.rs +450 -0
- package/data/probe/tests/lib_usage.rs +60 -0
- package/data/probe/tests/line_comment_context_extension_test.rs +459 -0
- package/data/probe/tests/line_map_cache_tests.rs +114 -0
- package/data/probe/tests/markdown_integration_tests.rs +190 -0
- package/data/probe/tests/mocks/test_ip_whitelist.go +11 -0
- package/data/probe/tests/mocks/test_object.js +27 -0
- package/data/probe/tests/mocks/test_struct.go +50 -0
- package/data/probe/tests/multi_keyword_pattern_tests.rs +464 -0
- package/data/probe/tests/multi_language_syntax_integration_tests.rs +218 -0
- package/data/probe/tests/multiple_capture_groups_tests.rs +169 -0
- package/data/probe/tests/negative_compound_word_tests.rs +246 -0
- package/data/probe/tests/nested_symbol_extraction_tests.rs +99 -0
- package/data/probe/tests/outline_cross_file_interference_test.rs +335 -0
- package/data/probe/tests/outline_keyword_preservation_test.rs +67 -0
- package/data/probe/tests/output_format_edge_cases_tests.rs +693 -0
- package/data/probe/tests/parallel_extraction_tests.rs +178 -0
- package/data/probe/tests/parallel_search_tests.rs +355 -0
- package/data/probe/tests/path_resolver_tests.rs +698 -0
- package/data/probe/tests/php_outline_format_extended_tests.rs +928 -0
- package/data/probe/tests/php_outline_format_tests.rs +768 -0
- package/data/probe/tests/property_tests.proptest-regressions +9 -0
- package/data/probe/tests/property_tests.rs +118 -0
- package/data/probe/tests/python_outline_format_tests.rs +1538 -0
- package/data/probe/tests/query_command_json_tests.rs +438 -0
- package/data/probe/tests/query_command_tests.rs +232 -0
- package/data/probe/tests/query_command_xml_tests.rs +569 -0
- package/data/probe/tests/quoted_term_with_negative_keyword_tests.rs +216 -0
- package/data/probe/tests/required_terms_filename_tests.rs +116 -0
- package/data/probe/tests/ruby_outline_format_tests.rs +1011 -0
- package/data/probe/tests/rust_line_comment_context_test.rs +151 -0
- package/data/probe/tests/rust_outline_format_enhanced_tests.rs +725 -0
- package/data/probe/tests/rust_outline_format_tests.rs +843 -0
- package/data/probe/tests/schemas/xml_output_schema.xsd +38 -0
- package/data/probe/tests/search_determinism_tests.rs +451 -0
- package/data/probe/tests/search_hints_tests.rs +253 -0
- package/data/probe/tests/special_character_escaping_tests.rs +417 -0
- package/data/probe/tests/stemming_compound_word_filtering_tests.rs +535 -0
- package/data/probe/tests/strict_elastic_syntax_tests.rs +404 -0
- package/data/probe/tests/swift_outline_format_tests.rs +3319 -0
- package/data/probe/tests/symbols_tests.rs +166 -0
- package/data/probe/tests/test_file.rs +45 -0
- package/data/probe/tests/test_tokenize.rs +28 -0
- package/data/probe/tests/timeout_tests.rs +82 -0
- package/data/probe/tests/tokenization_tests.rs +195 -0
- package/data/probe/tests/tokenized_block_filtering_tests.rs +174 -0
- package/data/probe/tests/typescript_extract_tests.rs +214 -0
- package/data/probe/tests/typescript_outline_format_tests.rs +2188 -0
- package/data/probe/tests/xml_format_tests.rs +568 -0
- package/data/probe/tests/xml_schema_validation_tests.rs +497 -0
- package/data/scripts/postinstall.mjs +9 -0
- package/data/scripts/set-version.js +0 -0
- package/data/scripts/wiki-build.sh +111 -0
- package/data/scripts/wiki-deploy.sh +73 -0
- package/data/serve.json +12 -0
- package/data/test/demo-dynamic.html +134 -0
- package/data/test/demo-esm.html +105 -0
- package/data/test/demo-iife.html +78 -0
- package/data/tsconfig.json +7 -0
- package/data/vite.server.ts +483 -0
- package/data/vitest.config.ts +40 -0
- package/data/wiki/Home.md +58 -0
- package/data/wiki/_Sidebar.md +39 -0
- package/docs-mcp.config.json +20 -0
- package/package.json +56 -0
- package/src/config.js +111 -0
- package/src/index.js +395 -0
|
@@ -0,0 +1,437 @@
|
|
|
1
|
+
# CLI Reference (Commands & Flags)
|
|
2
|
+
|
|
3
|
+
Complete reference documentation for all Probe command-line interface commands, options, and usage examples.
|
|
4
|
+
|
|
5
|
+
## Search Command
|
|
6
|
+
|
|
7
|
+
Find code across your entire codebase:
|
|
8
|
+
|
|
9
|
+
```bash
|
|
10
|
+
probe search <QUERY> [PATH] [OPTIONS]
|
|
11
|
+
```
|
|
12
|
+
|
|
13
|
+
### Core Options
|
|
14
|
+
|
|
15
|
+
| Option | Function |
|
|
16
|
+
|--------|----------|
|
|
17
|
+
| `<QUERY>` | **Required**: What to search for |
|
|
18
|
+
| `[PATH]` | Where to search (default: current directory) |
|
|
19
|
+
| `--files-only` | List matching files without code blocks |
|
|
20
|
+
| `--ignore <PATTERN>` | Additional patterns to ignore |
|
|
21
|
+
| `--exclude-filenames, -n` | Exclude filenames from matching |
|
|
22
|
+
| `--reranker, -r <TYPE>` | Algorithm: `hybrid`, `hybrid2`, `bm25`, `tfidf` |
|
|
23
|
+
| `--frequency, -s` | Enable smart token matching (default) |
|
|
24
|
+
| `--max-results <N>` | Limit number of results |
|
|
25
|
+
| `--max-bytes <N>` | Limit total bytes of code |
|
|
26
|
+
| `--max-tokens <N>` | Limit total tokens (for AI) |
|
|
27
|
+
| `--allow-tests` | Include test files and code |
|
|
28
|
+
| `--any-term` | Match any search term (OR logic) |
|
|
29
|
+
| `--no-merge` | Keep code blocks separate |
|
|
30
|
+
| `--merge-threshold <N>` | Max lines between blocks to merge (default: 5) |
|
|
31
|
+
| `--session <ID>` | Session ID for caching results |
|
|
32
|
+
| `-o, --format <TYPE>` | Output as: `color` (default), `terminal`, `markdown`, `plain`, `json`, `xml` |
|
|
33
|
+
|
|
34
|
+
### Command Examples
|
|
35
|
+
|
|
36
|
+
```bash
|
|
37
|
+
# Basic search - current directory
|
|
38
|
+
probe search "authentication flow"
|
|
39
|
+
|
|
40
|
+
# Search in specific folder
|
|
41
|
+
probe search "updateUser" ./src/api
|
|
42
|
+
|
|
43
|
+
# Limit for AI context windows
|
|
44
|
+
probe search "error handling" --max-tokens 8000
|
|
45
|
+
|
|
46
|
+
# Find raw files without parsing
|
|
47
|
+
probe search "config" --files-only
|
|
48
|
+
|
|
49
|
+
# Elastic search queries
|
|
50
|
+
# Use AND operator for terms that must appear together
|
|
51
|
+
probe search "error AND handling" ./
|
|
52
|
+
|
|
53
|
+
# Use OR operator for alternative terms
|
|
54
|
+
probe search "login OR authentication OR auth" ./src
|
|
55
|
+
|
|
56
|
+
# Group terms with parentheses for complex queries
|
|
57
|
+
probe search "(error OR exception) AND (handle OR process)" ./
|
|
58
|
+
|
|
59
|
+
# Use wildcards for partial matching
|
|
60
|
+
probe search "auth* connect*" ./
|
|
61
|
+
|
|
62
|
+
# Exclude terms with NOT operator
|
|
63
|
+
probe search "database NOT sqlite" ./
|
|
64
|
+
|
|
65
|
+
# Use search hints to filter by file properties
|
|
66
|
+
probe search "function AND ext:rs" ./ # Only search in .rs files
|
|
67
|
+
probe search "class AND file:src/**/*.py" ./ # Only search in Python files under src/
|
|
68
|
+
probe search "error AND dir:tests" ./ # Only search in files under tests/ directory
|
|
69
|
+
probe search "struct AND type:rust" ./ # Only search in Rust files
|
|
70
|
+
probe search "component AND lang:javascript" ./ # Only search in JavaScript files
|
|
71
|
+
|
|
72
|
+
# Output as JSON for programmatic use
|
|
73
|
+
probe search "authentication" --format json
|
|
74
|
+
|
|
75
|
+
# Output as XML
|
|
76
|
+
probe search "authentication" --format xml
|
|
77
|
+
```
|
|
78
|
+
|
|
79
|
+
### Search Hints
|
|
80
|
+
|
|
81
|
+
Filter search results by file properties using search hints. These filters are applied at the file discovery stage:
|
|
82
|
+
|
|
83
|
+
| Hint | Description | Examples |
|
|
84
|
+
|------|-------------|----------|
|
|
85
|
+
| `ext:<extension>` | Filter by file extension | `ext:rs`, `ext:py,js,ts` |
|
|
86
|
+
| `file:<pattern>` | Filter by file path pattern (supports globs) | `file:src/**/*.rs`, `file:*test*` |
|
|
87
|
+
| `path:<pattern>` | Alias for `file:` | `path:src/main.rs` |
|
|
88
|
+
| `dir:<pattern>` | Filter by directory pattern | `dir:src`, `dir:tests` |
|
|
89
|
+
| `type:<filetype>` | Filter by ripgrep file type | `type:rust`, `type:javascript` |
|
|
90
|
+
| `lang:<language>` | Filter by programming language | `lang:rust`, `lang:python` |
|
|
91
|
+
|
|
92
|
+
**Search Hint Examples:**
|
|
93
|
+
|
|
94
|
+
```bash
|
|
95
|
+
# Search for "function" only in Rust files
|
|
96
|
+
probe search "function AND ext:rs" ./
|
|
97
|
+
|
|
98
|
+
# Search for "config" in source files with multiple extensions
|
|
99
|
+
probe search "config AND ext:rs,py,js" ./src
|
|
100
|
+
|
|
101
|
+
# Complex search with multiple filters
|
|
102
|
+
probe search "(error OR exception) AND ext:rs AND dir:src" ./
|
|
103
|
+
|
|
104
|
+
# Search in test directories only
|
|
105
|
+
probe search "assert AND dir:tests" ./
|
|
106
|
+
```
|
|
107
|
+
|
|
108
|
+
## Extract Command
|
|
109
|
+
|
|
110
|
+
Pull complete code blocks from specific files and lines:
|
|
111
|
+
|
|
112
|
+
```bash
|
|
113
|
+
probe extract <FILES> [OPTIONS]
|
|
114
|
+
```
|
|
115
|
+
|
|
116
|
+
### Extract Options
|
|
117
|
+
| Option | Function |
|
|
118
|
+
|--------|----------|
|
|
119
|
+
| `<FILES>` | Files to extract from (e.g., `main.rs:42` or `main.rs#function_name`) |
|
|
120
|
+
| `-c, --context <N>` | Add N context lines |
|
|
121
|
+
| `-k, --keep-input` | Preserve and display original input content |
|
|
122
|
+
| `--prompt <TEMPLATE>` | System prompt template for LLM models (`engineer`, `architect`, or path to file) |
|
|
123
|
+
| `--instructions <TEXT>` | User instructions for LLM models |
|
|
124
|
+
| `-o, --format <TYPE>` | Output as: `color` (default), `terminal`, `markdown`, `plain`, `json`, `xml` |
|
|
125
|
+
| `-o, --format <TYPE>` | Output as: `color` (default), `terminal`, `markdown`, `plain`, `json`, `xml` |
|
|
126
|
+
|
|
127
|
+
### Extraction Examples
|
|
128
|
+
|
|
129
|
+
```bash
|
|
130
|
+
# Get function containing line 42
|
|
131
|
+
probe extract src/main.rs:42
|
|
132
|
+
|
|
133
|
+
# Extract multiple blocks
|
|
134
|
+
probe extract src/auth.js:15 src/api.js:27
|
|
135
|
+
|
|
136
|
+
# Extract by symbol name
|
|
137
|
+
probe extract src/main.rs#handle_extract
|
|
138
|
+
|
|
139
|
+
# Extract a specific line range
|
|
140
|
+
probe extract src/main.rs:10-20
|
|
141
|
+
|
|
142
|
+
# Output as JSON
|
|
143
|
+
probe extract src/handlers.rs:108 --format json
|
|
144
|
+
|
|
145
|
+
# Output as XML
|
|
146
|
+
probe extract src/handlers.rs:108 --format xml
|
|
147
|
+
|
|
148
|
+
# Add surrounding context
|
|
149
|
+
probe extract src/utils.rs:72 --context 5
|
|
150
|
+
|
|
151
|
+
# Preserve original input alongside extracted code
|
|
152
|
+
probe extract src/main.rs:42 --keep-input
|
|
153
|
+
|
|
154
|
+
# Extract from error output while preserving original messages
|
|
155
|
+
rustc main.rs 2>&1 | probe extract -k
|
|
156
|
+
|
|
157
|
+
# Extract code with LLM prompt and instructions
|
|
158
|
+
probe extract src/auth.rs#authenticate --prompt engineer --instructions "Explain this authentication function"
|
|
159
|
+
|
|
160
|
+
# Extract code with custom prompt template
|
|
161
|
+
probe extract src/api.js:42 --prompt /path/to/custom/prompt.txt --instructions "Refactor this code"
|
|
162
|
+
```
|
|
163
|
+
|
|
164
|
+
## Query Command
|
|
165
|
+
|
|
166
|
+
Find specific code structures using tree-sitter patterns:
|
|
167
|
+
|
|
168
|
+
```bash
|
|
169
|
+
probe query <PATTERN> <PATH> [OPTIONS]
|
|
170
|
+
```
|
|
171
|
+
|
|
172
|
+
### Query Options
|
|
173
|
+
|
|
174
|
+
| Option | Function |
|
|
175
|
+
|--------|----------|
|
|
176
|
+
| `<PATTERN>` | Tree-sitter pattern to search for |
|
|
177
|
+
| `<PATH>` | Where to search |
|
|
178
|
+
| `--language <LANG>` | Specify language (inferred from files if omitted) |
|
|
179
|
+
| `--ignore <PATTERN>` | Additional patterns to ignore |
|
|
180
|
+
| `--allow-tests` | Include test code blocks |
|
|
181
|
+
| `--max-results <N>` | Limit number of results |
|
|
182
|
+
| `-o, --format <TYPE>` | Output as: `color` (default), `terminal`, `markdown`, `plain`, `json`, `xml` |
|
|
183
|
+
|
|
184
|
+
### Query Examples
|
|
185
|
+
|
|
186
|
+
```bash
|
|
187
|
+
# Find Rust functions
|
|
188
|
+
probe query "fn $NAME($$$PARAMS) $$$BODY" ./src --language rust
|
|
189
|
+
|
|
190
|
+
# Find Python functions
|
|
191
|
+
probe query "def $NAME($$$PARAMS): $$$BODY" ./src --language python
|
|
192
|
+
|
|
193
|
+
# Find Go structs
|
|
194
|
+
probe query "type $NAME struct { $$$FIELDS }" ./src --language go
|
|
195
|
+
|
|
196
|
+
# Find C++ classes
|
|
197
|
+
probe query "class $NAME { $$$METHODS };" ./src --language cpp
|
|
198
|
+
|
|
199
|
+
# Output as JSON for programmatic use
|
|
200
|
+
probe query "fn $NAME($$$PARAMS) $$$BODY" ./src --language rust --format json
|
|
201
|
+
```
|
|
202
|
+
|
|
203
|
+
## Output Formats
|
|
204
|
+
|
|
205
|
+
Probe supports multiple output formats to suit different needs:
|
|
206
|
+
|
|
207
|
+
| Format | Description |
|
|
208
|
+
|--------|-------------|
|
|
209
|
+
| `color` | Colorized terminal output (default) |
|
|
210
|
+
| `terminal` | Plain terminal output without colors |
|
|
211
|
+
| `markdown` | Markdown-formatted output |
|
|
212
|
+
| `plain` | Plain text output without formatting |
|
|
213
|
+
| `json` | JSON-formatted output for programmatic use |
|
|
214
|
+
| `xml` | XML-formatted output for programmatic use |
|
|
215
|
+
|
|
216
|
+
For detailed information about the JSON and XML output formats, see the [Output Formats](./output-formats.md) documentation.
|
|
217
|
+
|
|
218
|
+
## Power Techniques
|
|
219
|
+
|
|
220
|
+
### From Compiler Errors
|
|
221
|
+
|
|
222
|
+
Feed error output directly to extract relevant code:
|
|
223
|
+
|
|
224
|
+
```bash
|
|
225
|
+
# Extract code from compiler errors
|
|
226
|
+
rustc main.rs 2>&1 | probe extract
|
|
227
|
+
|
|
228
|
+
# Pull code from test failures
|
|
229
|
+
go test ./... | probe extract
|
|
230
|
+
```
|
|
231
|
+
|
|
232
|
+
### Unix Pipeline Integration
|
|
233
|
+
|
|
234
|
+
Chain with other tools for maximum effect:
|
|
235
|
+
|
|
236
|
+
```bash
|
|
237
|
+
# Find then filter
|
|
238
|
+
probe search "database" | grep "connection"
|
|
239
|
+
|
|
240
|
+
# Process & format
|
|
241
|
+
probe search "api" --format json | jq '.results[0]'
|
|
242
|
+
```
|
|
243
|
+
|
|
244
|
+
## Command Combinations
|
|
245
|
+
|
|
246
|
+
Create powerful workflows by combining features:
|
|
247
|
+
|
|
248
|
+
```bash
|
|
249
|
+
# Find authentication code without tests
|
|
250
|
+
probe search "authenticate" --max-results 10 --ignore "test" --no-merge
|
|
251
|
+
|
|
252
|
+
# Extract specific functions with context
|
|
253
|
+
grep -n "handleRequest" ./src/*.js | cut -d':' -f1,2 | probe extract --context 3
|
|
254
|
+
|
|
255
|
+
# Find and extract error handlers
|
|
256
|
+
probe search "error handling" --files-only | xargs -I{} probe extract {} --format markdown
|
|
257
|
+
```
|
|
258
|
+
|
|
259
|
+
## Session-Based Caching
|
|
260
|
+
|
|
261
|
+
Avoid seeing the same code blocks multiple times in a session:
|
|
262
|
+
|
|
263
|
+
```bash
|
|
264
|
+
# First search - generates a session ID
|
|
265
|
+
probe search "authentication" --session ""
|
|
266
|
+
# Session: a1b2 (example output)
|
|
267
|
+
|
|
268
|
+
# Subsequent searches - reuse the session ID
|
|
269
|
+
probe search "login" --session "a1b2"
|
|
270
|
+
# Will skip code blocks already shown in the previous search
|
|
271
|
+
|
|
272
|
+
## Chat Command (`probe-chat`)
|
|
273
|
+
|
|
274
|
+
Engage in an interactive chat session with the Probe AI agent or send single messages for non-interactive use.
|
|
275
|
+
|
|
276
|
+
```bash
|
|
277
|
+
probe-chat [PATH] [OPTIONS]
|
|
278
|
+
```
|
|
279
|
+
|
|
280
|
+
### Chat Options
|
|
281
|
+
|
|
282
|
+
| Option | Function |
|
|
283
|
+
|--------|----------|
|
|
284
|
+
| `[PATH]` | Path to the codebase to search (overrides `ALLOWED_FOLDERS` env var) |
|
|
285
|
+
| `-d, --debug` | Enable debug mode for verbose logging |
|
|
286
|
+
| `--model-name <model>` | Specify the AI model to use (e.g., `claude-3-opus-20240229`, `gpt-4o`) |
|
|
287
|
+
| `-f, --force-provider <provider>` | Force a specific provider (`anthropic`, `openai`, `google`) |
|
|
288
|
+
| `-w, --web` | Run in web interface mode instead of CLI |
|
|
289
|
+
| `-p, --port <port>` | Port for web server (default: 8080) |
|
|
290
|
+
| `-m, --message <message>` | Send a single message and exit (non-interactive) |
|
|
291
|
+
| `-s, --session-id <sessionId>` | Specify a session ID for the chat |
|
|
292
|
+
| `--json` | Output response as JSON in non-interactive mode |
|
|
293
|
+
| `--max-iterations <number>` | Max tool iterations allowed (default: 30) |
|
|
294
|
+
| `--prompt <value>` | Use a custom prompt (`architect`, `code-review`, `support`, `engineer`, path to file, or string) |
|
|
295
|
+
| `--allow-edit` | **Enable code editing via the `implement` tool (uses Aider)** |
|
|
296
|
+
| `--trace-file [path]` | Enable file-based tracing (default: ./probe-traces.jsonl) |
|
|
297
|
+
| `--trace-remote <url>` | Enable remote tracing to OpenTelemetry collector |
|
|
298
|
+
| `--trace-console` | Enable console tracing for debugging |
|
|
299
|
+
|
|
300
|
+
### Code Editing (`--allow-edit`)
|
|
301
|
+
|
|
302
|
+
The `--allow-edit` flag lets Probe make changes to your code files.
|
|
303
|
+
|
|
304
|
+
#### How It Works
|
|
305
|
+
|
|
306
|
+
When you enable editing, Probe can modify your code when you ask it to:
|
|
307
|
+
- "Fix this bug in main.py"
|
|
308
|
+
- "Add error handling to this function"
|
|
309
|
+
- "Refactor this code to be cleaner"
|
|
310
|
+
|
|
311
|
+
#### What You Need
|
|
312
|
+
|
|
313
|
+
1. **Install a Backend Tool**: Probe can use different tools to make code changes:
|
|
314
|
+
|
|
315
|
+
- **Claude Code** (default if available):
|
|
316
|
+
```bash
|
|
317
|
+
npm install -g @anthropic-ai/claude-code
|
|
318
|
+
```
|
|
319
|
+
|
|
320
|
+
- **Aider** (fallback):
|
|
321
|
+
```bash
|
|
322
|
+
pip install aider-chat
|
|
323
|
+
```
|
|
324
|
+
|
|
325
|
+
2. **File Permissions**: Make sure Probe can write to your project files.
|
|
326
|
+
|
|
327
|
+
#### Backend Configuration
|
|
328
|
+
|
|
329
|
+
Probe automatically detects which tool to use for code editing:
|
|
330
|
+
1. **Claude Code**: Used by default if installed (cross-platform, including WSL on Windows)
|
|
331
|
+
2. **Aider**: Used as fallback if Claude Code is not available
|
|
332
|
+
|
|
333
|
+
You can override this behavior by setting the `implement_tool_backend` environment variable:
|
|
334
|
+
```bash
|
|
335
|
+
# Force using Claude Code
|
|
336
|
+
export implement_tool_backend=claude
|
|
337
|
+
probe-chat --allow-edit
|
|
338
|
+
|
|
339
|
+
# Force using Aider
|
|
340
|
+
export implement_tool_backend=aider
|
|
341
|
+
probe-chat --allow-edit
|
|
342
|
+
```
|
|
343
|
+
|
|
344
|
+
#### Usage Examples
|
|
345
|
+
|
|
346
|
+
```bash
|
|
347
|
+
# Start chat with editing enabled
|
|
348
|
+
probe-chat --allow-edit
|
|
349
|
+
|
|
350
|
+
# Ask for a specific change
|
|
351
|
+
probe-chat --allow-edit --message "Add comments to the main function"
|
|
352
|
+
```
|
|
353
|
+
|
|
354
|
+
#### Important Safety Notes
|
|
355
|
+
|
|
356
|
+
- **Always review changes** before keeping them
|
|
357
|
+
- **Test your code** after Probe makes changes
|
|
358
|
+
- **Start small** - try simple changes first to see how it works
|
|
359
|
+
|
|
360
|
+
#### GitHub Actions Alternative
|
|
361
|
+
|
|
362
|
+
If you're using Probe in GitHub Actions, you can use `allow_suggestions` instead, which creates reviewable suggestions rather than direct changes. See the [GitHub Actions Integration](./integrations/github-actions.md#code-modification-options) guide for details.
|
|
363
|
+
|
|
364
|
+
### OpenTelemetry Tracing
|
|
365
|
+
|
|
366
|
+
The `--trace-file`, `--trace-remote`, and `--trace-console` flags enable comprehensive monitoring and observability for AI interactions.
|
|
367
|
+
|
|
368
|
+
#### Tracing Options
|
|
369
|
+
|
|
370
|
+
**File Tracing (`--trace-file`)**
|
|
371
|
+
- Saves traces to a JSON Lines format file for offline analysis
|
|
372
|
+
- Default file path: `./probe-traces.jsonl`
|
|
373
|
+
- Custom path: `--trace-file ./my-traces.jsonl`
|
|
374
|
+
|
|
375
|
+
**Remote Tracing (`--trace-remote`)**
|
|
376
|
+
- Sends traces to OpenTelemetry collectors (Jaeger, Zipkin, etc.)
|
|
377
|
+
- Requires collector URL: `--trace-remote http://localhost:4318/v1/traces`
|
|
378
|
+
|
|
379
|
+
**Console Tracing (`--trace-console`)**
|
|
380
|
+
- Outputs traces to console for debugging
|
|
381
|
+
- Useful for development and troubleshooting
|
|
382
|
+
|
|
383
|
+
#### Usage Examples
|
|
384
|
+
|
|
385
|
+
```bash
|
|
386
|
+
# Enable file-based tracing
|
|
387
|
+
probe-chat --trace-file
|
|
388
|
+
|
|
389
|
+
# Enable remote tracing to Jaeger
|
|
390
|
+
probe-chat --trace-remote http://localhost:4318/v1/traces
|
|
391
|
+
|
|
392
|
+
# Enable console tracing for debugging
|
|
393
|
+
probe-chat --trace-console
|
|
394
|
+
|
|
395
|
+
# Combine multiple tracing options
|
|
396
|
+
probe-chat --trace-file --trace-remote --trace-console
|
|
397
|
+
|
|
398
|
+
# Use custom file path
|
|
399
|
+
probe-chat --trace-file ./debug-traces.jsonl
|
|
400
|
+
```
|
|
401
|
+
|
|
402
|
+
#### What Gets Traced
|
|
403
|
+
|
|
404
|
+
The tracing system captures detailed information about AI interactions:
|
|
405
|
+
|
|
406
|
+
- **Performance Metrics**: Response times, request durations, and throughput
|
|
407
|
+
- **Token Usage**: Prompt tokens, completion tokens, and total consumption
|
|
408
|
+
- **Model Information**: Provider, model name, and configuration
|
|
409
|
+
- **Session Data**: Session IDs, iteration counts, and conversation flow
|
|
410
|
+
- **Error Tracking**: Failed requests, timeouts, and error details
|
|
411
|
+
|
|
412
|
+
For more details on tracing, see the [AI Chat documentation](./ai-chat.md#opentelemetry-tracing).
|
|
413
|
+
|
|
414
|
+
### Chat Examples
|
|
415
|
+
|
|
416
|
+
```bash
|
|
417
|
+
# Start interactive chat in the current directory
|
|
418
|
+
probe-chat
|
|
419
|
+
|
|
420
|
+
# Start interactive chat targeting a specific project path
|
|
421
|
+
probe-chat /path/to/my/project
|
|
422
|
+
|
|
423
|
+
# Use the 'engineer' persona
|
|
424
|
+
probe-chat --prompt engineer
|
|
425
|
+
|
|
426
|
+
# Send a single question and get a JSON response
|
|
427
|
+
probe-chat --message "Explain the auth flow in main.go" --json
|
|
428
|
+
|
|
429
|
+
# Start chat with editing enabled (requires Aider)
|
|
430
|
+
probe-chat /path/to/project --allow-edit
|
|
431
|
+
|
|
432
|
+
# Start chat with tracing enabled
|
|
433
|
+
probe-chat --trace-file ./session-traces.jsonl
|
|
434
|
+
|
|
435
|
+
# Start chat with full observability
|
|
436
|
+
probe-chat --trace-file --trace-remote http://localhost:4318/v1/traces --allow-edit
|
|
437
|
+
```
|