@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,426 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: "Probe v0.6.0 Release: Enhanced AI Integration and Code Editing Capabilities"
|
|
3
|
+
description: Announcing Probe v0.6.0 with the new implement tool, enhanced GitHub Actions integration, crates.io publishing, and major improvements for AI coding assistants.
|
|
4
|
+
layout: doc
|
|
5
|
+
date: 2025-07-17
|
|
6
|
+
tags:
|
|
7
|
+
- release
|
|
8
|
+
- v0.6.0
|
|
9
|
+
- ai-integration
|
|
10
|
+
- code-editing
|
|
11
|
+
- github-actions
|
|
12
|
+
- crates-io
|
|
13
|
+
---
|
|
14
|
+
|
|
15
|
+
# Probe v0.6.0: Enhanced AI Integration and Code Editing Capabilities
|
|
16
|
+
|
|
17
|
+
We're excited to announce the release of **Probe v0.6.0**, a major update that significantly enhances AI integration capabilities and introduces powerful new features for AI coding assistants. This release represents months of development focused on making Probe the most comprehensive tool for AI-powered code understanding and manipulation.
|
|
18
|
+
|
|
19
|
+
## 🚀 What's New in v0.6.0
|
|
20
|
+
|
|
21
|
+
### Revolutionary Implement Tool
|
|
22
|
+
|
|
23
|
+
The headline feature of v0.6.0 is the new **[implement tool](/cli-mode#code-editing---allow-edit)**, which enables AI assistants to directly edit code files during conversations. This breakthrough capability transforms Probe from a read-only code search tool into a full-featured AI coding companion.
|
|
24
|
+
|
|
25
|
+
**Key capabilities:**
|
|
26
|
+
- **Direct Code Editing**: AI assistants can now modify files directly through Probe
|
|
27
|
+
- **Aider Integration**: Leverages the powerful Aider tool for sophisticated code modifications
|
|
28
|
+
- **Safe Execution**: Configurable via `allow_edit` flag with proper permission controls - see [GitHub Actions configuration](/integrations/github-actions#code-modification-options)
|
|
29
|
+
- **Context-Aware**: Combines code search with intelligent editing suggestions
|
|
30
|
+
|
|
31
|
+
```javascript
|
|
32
|
+
// Example: AI can now implement features directly
|
|
33
|
+
const result = await implementTool({
|
|
34
|
+
instruction: "Add error handling to the login function",
|
|
35
|
+
files: ["src/auth.js"],
|
|
36
|
+
context: searchResults
|
|
37
|
+
});
|
|
38
|
+
```
|
|
39
|
+
|
|
40
|
+
### Enhanced GitHub Actions Integration
|
|
41
|
+
|
|
42
|
+
v0.6.0 introduces several powerful GitHub Actions enhancements that make Probe even more valuable for team workflows:
|
|
43
|
+
|
|
44
|
+
#### Allow Suggestions Feature
|
|
45
|
+
- **Reviewdog Integration**: New `allow_suggestions` flag enables AI-powered code suggestions - see [GitHub Actions Integration](/integrations/github-actions#suggested-changes-allow_suggestions-true---recommended)
|
|
46
|
+
- **Pull Request Reviews**: Automatic code review suggestions on PRs
|
|
47
|
+
- **Configurable Workflows**: Fine-grained control over when suggestions are enabled
|
|
48
|
+
|
|
49
|
+
#### Failure Tagging and Monitoring
|
|
50
|
+
- **Automatic Tagging**: Failed Probe runs are automatically tagged for easy tracking
|
|
51
|
+
- **Better Debugging**: Enhanced error reporting and logging
|
|
52
|
+
- **Workflow Reliability**: Improved stability across different repository configurations
|
|
53
|
+
|
|
54
|
+
#### OpenTelemetry Tracing
|
|
55
|
+
- **Complete Observability**: Full OpenTelemetry integration for monitoring AI model interactions - see [AI Chat Tracing](/ai-chat#opentelemetry-tracing)
|
|
56
|
+
- **Performance Insights**: Track response times, token usage, and throughput
|
|
57
|
+
- **GitHub Actions Integration**: Automatic trace collection with artifact uploads - see [GitHub Actions Tracing](/integrations/github-actions#opentelemetry-tracing)
|
|
58
|
+
- **Multiple Export Options**: File-based tracing for offline analysis and remote tracing to collectors
|
|
59
|
+
|
|
60
|
+
#### New Specialized Workflows
|
|
61
|
+
- **probe-engineer.yml**: Dedicated workflow for engineering-focused AI assistance - see [AI Engineer example](/integrations/github-actions#example-2-ai-engineer-code-editing-enabled)
|
|
62
|
+
- **Enhanced probe.yml**: Improved main workflow with better error handling
|
|
63
|
+
- **Integration Testing**: Comprehensive test coverage for GitHub Actions
|
|
64
|
+
|
|
65
|
+
### Docker Integration & Containerization
|
|
66
|
+
|
|
67
|
+
v0.6.0 introduces comprehensive Docker support, making Probe deployment and integration easier than ever:
|
|
68
|
+
|
|
69
|
+
#### Official Docker Images
|
|
70
|
+
- **Pre-built images**: Available on Docker Hub with automatic CI/CD publishing
|
|
71
|
+
- `probelabs/probe` - CLI tool for code search and analysis
|
|
72
|
+
- `probelabs/probe-chat` - AI-powered chat interface
|
|
73
|
+
- **Multi-platform support**: Images built for linux/amd64 and linux/arm64
|
|
74
|
+
- **Semantic versioning**: Tagged releases with `latest`, `X.Y.Z`, `X.Y`, and `X` tags
|
|
75
|
+
|
|
76
|
+
```bash
|
|
77
|
+
# Quick start with Docker
|
|
78
|
+
docker pull probelabs/probe:latest
|
|
79
|
+
docker run --rm -v $(pwd):/workspace probelabs/probe search "function" /workspace
|
|
80
|
+
|
|
81
|
+
# AI chat interface
|
|
82
|
+
docker run --rm -e ANTHROPIC_API_KEY=your_key -p 3000:3000 probelabs/probe-chat --web
|
|
83
|
+
```
|
|
84
|
+
|
|
85
|
+
#### Production-Ready Features
|
|
86
|
+
- **Security best practices**: Non-root execution, minimal base images
|
|
87
|
+
- **Health checks**: Built-in health monitoring for both CLI and web interfaces
|
|
88
|
+
- **Docker Compose**: Complete development environment setup
|
|
89
|
+
- **OCI compliance**: Industry-standard labels and metadata
|
|
90
|
+
|
|
91
|
+
#### CI/CD Integration
|
|
92
|
+
Docker images are automatically built and published as part of the release workflow, ensuring consistency and reliability:
|
|
93
|
+
|
|
94
|
+
```yaml
|
|
95
|
+
# Example CI/CD usage
|
|
96
|
+
- name: Analyze Code Structure
|
|
97
|
+
run: |
|
|
98
|
+
docker run --rm -v ${{ github.workspace }}:/workspace \
|
|
99
|
+
probelabs/probe search "TODO|FIXME" /workspace --format json
|
|
100
|
+
```
|
|
101
|
+
|
|
102
|
+
### Crates.io Publishing
|
|
103
|
+
|
|
104
|
+
Probe is now available as a **Rust library** on crates.io, opening up new integration possibilities:
|
|
105
|
+
|
|
106
|
+
```toml
|
|
107
|
+
[dependencies]
|
|
108
|
+
probe = "0.6.0"
|
|
109
|
+
```
|
|
110
|
+
|
|
111
|
+
**Benefits:**
|
|
112
|
+
- **Native Rust Integration**: Use Probe directly in Rust applications
|
|
113
|
+
- **Library API**: Clean, documented API for programmatic access
|
|
114
|
+
- **Automated Publishing**: Seamless releases synchronized with GitHub
|
|
115
|
+
|
|
116
|
+
### OpenTelemetry Tracing and Observability
|
|
117
|
+
|
|
118
|
+
v0.6.0 introduces comprehensive **OpenTelemetry tracing** capabilities, providing unprecedented visibility into AI model interactions:
|
|
119
|
+
|
|
120
|
+
#### Complete AI Model Monitoring
|
|
121
|
+
```bash
|
|
122
|
+
# Enable file-based tracing
|
|
123
|
+
npx @probelabs/probe-chat@latest --trace-file ./traces.jsonl
|
|
124
|
+
|
|
125
|
+
# Enable remote tracing to Jaeger
|
|
126
|
+
npx @probelabs/probe-chat@latest --trace-remote http://localhost:4318/v1/traces
|
|
127
|
+
```
|
|
128
|
+
|
|
129
|
+
#### Rich Telemetry Data
|
|
130
|
+
Every AI interaction is captured with detailed metrics:
|
|
131
|
+
|
|
132
|
+
```json
|
|
133
|
+
{
|
|
134
|
+
"name": "ai.generateText",
|
|
135
|
+
"attributes": {
|
|
136
|
+
"ai.model.id": "claude-3-7-sonnet-20250219",
|
|
137
|
+
"ai.model.provider": "anthropic",
|
|
138
|
+
"ai.usage.prompt_tokens": "245",
|
|
139
|
+
"ai.usage.completion_tokens": "156",
|
|
140
|
+
"ai.usage.total_tokens": "401"
|
|
141
|
+
},
|
|
142
|
+
"events": [
|
|
143
|
+
{
|
|
144
|
+
"name": "ai.request.start",
|
|
145
|
+
"attributes": {
|
|
146
|
+
"ai.request.messages": "[{\"role\":\"user\",\"content\":\"How does auth work?\"}]"
|
|
147
|
+
}
|
|
148
|
+
},
|
|
149
|
+
{
|
|
150
|
+
"name": "ai.response.complete",
|
|
151
|
+
"attributes": {
|
|
152
|
+
"ai.response.finish_reason": "stop"
|
|
153
|
+
}
|
|
154
|
+
}
|
|
155
|
+
]
|
|
156
|
+
}
|
|
157
|
+
```
|
|
158
|
+
|
|
159
|
+
#### GitHub Actions Integration
|
|
160
|
+
Automatic trace collection in CI/CD workflows:
|
|
161
|
+
|
|
162
|
+
```yaml
|
|
163
|
+
# Enhanced GitHub Actions with tracing
|
|
164
|
+
- uses: probelabs/probe@v0.6.0
|
|
165
|
+
with:
|
|
166
|
+
enable_tracing: true # Enable tracing
|
|
167
|
+
allow_suggestions: true # Enable suggestions
|
|
168
|
+
secrets:
|
|
169
|
+
TRACING_URL: ${{ secrets.TRACING_URL }} # Optional remote endpoint
|
|
170
|
+
```
|
|
171
|
+
|
|
172
|
+
**Benefits:**
|
|
173
|
+
- **Performance Monitoring**: Track AI response times and optimize workflows
|
|
174
|
+
- **Cost Management**: Monitor token usage and optimize AI interactions
|
|
175
|
+
- **Debugging**: Identify failed requests and troubleshoot issues
|
|
176
|
+
- **Analytics**: Understand usage patterns and model performance
|
|
177
|
+
|
|
178
|
+
### AI Chat and MCP Improvements
|
|
179
|
+
|
|
180
|
+
#### Revolutionary Chat History and Session Persistence
|
|
181
|
+
One of the most requested features is now here: **persistent chat sessions** that transform the chat interface from ephemeral conversations into a powerful knowledge management system.
|
|
182
|
+
|
|
183
|
+
**Key Features:**
|
|
184
|
+
- **Persistent Sessions**: All chat sessions are automatically saved to `~/.probe/sessions/` and survive browser refreshes and server restarts
|
|
185
|
+
- **History Navigation**: Interactive dropdown with session previews, timestamps, and message counts
|
|
186
|
+
- **URL-based Session Sharing**: Share and bookmark conversations with unique URLs (`/chat/session-id`)
|
|
187
|
+
- **Cross-platform Storage**: Seamless storage across Unix (`~/.probe/sessions/`) and Windows (`%LOCALAPPDATA%\probe`) systems
|
|
188
|
+
- **Enhanced UI**: Always-visible header with clickable logo and improved navigation experience
|
|
189
|
+
|
|
190
|
+
```bash
|
|
191
|
+
# Session storage is automatic - no configuration needed
|
|
192
|
+
npx @probelabs/probe-chat@latest --web
|
|
193
|
+
|
|
194
|
+
# Sessions are stored in:
|
|
195
|
+
# Unix/Linux/macOS: ~/.probe/sessions/
|
|
196
|
+
# Windows: %LOCALAPPDATA%\probe\sessions\
|
|
197
|
+
```
|
|
198
|
+
|
|
199
|
+
This transforms the chat interface from a tool for one-off questions into a comprehensive knowledge base where you can:
|
|
200
|
+
- **Resume previous conversations** exactly where you left off
|
|
201
|
+
- **Navigate between related sessions** using the history dropdown
|
|
202
|
+
- **Share specific conversations** with team members via URLs
|
|
203
|
+
- **Build knowledge over time** with persistent conversation history
|
|
204
|
+
|
|
205
|
+
#### Enhanced Chat Experience
|
|
206
|
+
- **Configurable Iterations**: Control AI conversation length with `MAX_TOOL_ITERATIONS` - see [AI Chat configuration](/ai-chat#configuration)
|
|
207
|
+
- **Better Tool Support**: New file listing and search capabilities
|
|
208
|
+
- **Improved Session Management**: Enhanced token tracking and conversation history
|
|
209
|
+
|
|
210
|
+
#### MCP Protocol Updates
|
|
211
|
+
- **Mandatory Path Parameters**: Improved tool definitions with required parameters - see [MCP Server tools](/mcp-server#available-tools)
|
|
212
|
+
- **Better Error Handling**: More informative error messages and validation
|
|
213
|
+
- **Standardized Interfaces**: Consistent tool behavior across all MCP implementations - see [MCP Integration guide](/mcp-integration)
|
|
214
|
+
|
|
215
|
+
## 🔧 Technical Improvements
|
|
216
|
+
|
|
217
|
+
### Cross-Platform Compatibility
|
|
218
|
+
- **Windows Support**: Significant improvements for Windows users
|
|
219
|
+
- **Binary Management**: Enhanced download and path resolution
|
|
220
|
+
- **Permission Handling**: Fixed binary permission issues across platforms
|
|
221
|
+
|
|
222
|
+
### Developer Experience
|
|
223
|
+
- **Enhanced Documentation**: Comprehensive guides for new features
|
|
224
|
+
- **Better Examples**: Real-world use cases and implementation patterns
|
|
225
|
+
- **Improved Testing**: Expanded test coverage and CI/CD improvements
|
|
226
|
+
|
|
227
|
+
### Ripgrep Integration: Revolutionary Search Performance
|
|
228
|
+
|
|
229
|
+
One of the most significant technical improvements in v0.6.0 is the **native integration of the ripgrep Rust library**, delivering substantial performance gains across all search operations.
|
|
230
|
+
|
|
231
|
+
#### Performance Benchmarks
|
|
232
|
+
|
|
233
|
+
The ripgrep integration delivers measurable performance improvements across key operations:
|
|
234
|
+
|
|
235
|
+
- **File Searching**: **13% faster** (249ms → 217ms average)
|
|
236
|
+
- **File I/O Operations**: **33% faster** (303ms → 202ms average)
|
|
237
|
+
- **AST Parsing**: **32% faster** tree parsing through optimized I/O
|
|
238
|
+
- **Memory Efficiency**: Significantly reduced memory usage for large codebases
|
|
239
|
+
|
|
240
|
+
#### Technical Implementation
|
|
241
|
+
|
|
242
|
+
**RipgrepSearcher Module**: A new dedicated searcher implementation that leverages ripgrep's advanced capabilities:
|
|
243
|
+
|
|
244
|
+
```rust
|
|
245
|
+
pub struct RipgrepSearcher {
|
|
246
|
+
patterns: Vec<String>,
|
|
247
|
+
enable_simd: bool,
|
|
248
|
+
debug_mode: bool,
|
|
249
|
+
io_config: IOConfig,
|
|
250
|
+
regex_set: RegexSet,
|
|
251
|
+
}
|
|
252
|
+
```
|
|
253
|
+
|
|
254
|
+
**Key Technical Improvements:**
|
|
255
|
+
|
|
256
|
+
- **Pre-compiled RegexSet**: Eliminates redundant regex compilation by compiling patterns once instead of per-file
|
|
257
|
+
- **SIMD Optimizations**: Leverages SIMD instructions for faster pattern matching where hardware supports it
|
|
258
|
+
- **Memory Mapping**: Intelligent memory mapping with fallback for optimal file access patterns
|
|
259
|
+
- **Advanced Encoding Detection**: Better handling of different file encodings and compression formats
|
|
260
|
+
- **Streaming I/O**: Optimized streaming for large files to reduce memory footprint
|
|
261
|
+
|
|
262
|
+
#### Bug Fixes and Reliability
|
|
263
|
+
|
|
264
|
+
- **Fixed Timing Measurement**: Corrected a bug where "Uncovered lines" timing was double-counting "term matching" time
|
|
265
|
+
- **Deterministic Results**: All search results are now consistent across runs, eliminating non-deterministic behavior
|
|
266
|
+
- **Better Error Handling**: Enhanced error recovery and reporting for edge cases
|
|
267
|
+
|
|
268
|
+
#### Real-World Impact
|
|
269
|
+
|
|
270
|
+
For typical codebases, users will experience:
|
|
271
|
+
- **Faster Initial Searches**: Reduced time to first results
|
|
272
|
+
- **Improved Responsiveness**: More responsive AI interactions during code analysis
|
|
273
|
+
- **Better Resource Usage**: Lower memory consumption, especially for large repositories
|
|
274
|
+
- **Consistent Performance**: Predictable performance characteristics across different file types and sizes
|
|
275
|
+
|
|
276
|
+
This integration represents a fundamental improvement to Probe's core search engine, making it significantly more efficient for AI-powered code analysis workflows.
|
|
277
|
+
|
|
278
|
+
### Performance and Reliability
|
|
279
|
+
- **Memory Efficiency**: Reduced memory usage for large codebases through ripgrep integration
|
|
280
|
+
- **Error Recovery**: Better handling of edge cases and error conditions
|
|
281
|
+
|
|
282
|
+
## 📈 Impact on AI Coding Workflows
|
|
283
|
+
|
|
284
|
+
v0.6.0 represents a paradigm shift in how AI assistants interact with codebases:
|
|
285
|
+
|
|
286
|
+
### Before v0.6.0: Read-Only Analysis
|
|
287
|
+
```
|
|
288
|
+
AI: "I can see the bug in line 42, but you'll need to fix it manually"
|
|
289
|
+
```
|
|
290
|
+
|
|
291
|
+
### After v0.6.0: Full Code Interaction
|
|
292
|
+
```
|
|
293
|
+
AI: "I found the bug in line 42. Let me fix it for you..."
|
|
294
|
+
[Automatically implements the fix]
|
|
295
|
+
AI: "Fixed! The error handling now properly catches network timeouts."
|
|
296
|
+
```
|
|
297
|
+
|
|
298
|
+
### Real-World Use Cases
|
|
299
|
+
|
|
300
|
+
#### Automated Code Reviews
|
|
301
|
+
```yaml
|
|
302
|
+
# .github/workflows/ai-review.yml
|
|
303
|
+
- uses: probelabs/probe@v0.6.0
|
|
304
|
+
with:
|
|
305
|
+
allow_suggestions: true
|
|
306
|
+
prompt: "code-review"
|
|
307
|
+
```
|
|
308
|
+
|
|
309
|
+
#### Interactive Development
|
|
310
|
+
```bash
|
|
311
|
+
# Start an AI coding session with tracing
|
|
312
|
+
npx @probelabs/probe-chat@latest --allow-edit --trace-file ./session-traces.jsonl
|
|
313
|
+
```
|
|
314
|
+
|
|
315
|
+
#### Knowledge Management with Chat History
|
|
316
|
+
```bash
|
|
317
|
+
# Start a web session that automatically persists
|
|
318
|
+
npx @probelabs/probe-chat@latest --web --port 8080
|
|
319
|
+
|
|
320
|
+
# Your conversations are automatically saved and can be resumed:
|
|
321
|
+
# - Browse previous sessions via the history dropdown
|
|
322
|
+
# - Share specific conversations: http://localhost:8080/chat/abc123-session-id
|
|
323
|
+
# - Sessions persist across server restarts and browser refreshes
|
|
324
|
+
```
|
|
325
|
+
|
|
326
|
+
#### Custom AI Tools
|
|
327
|
+
```rust
|
|
328
|
+
// Integrate Probe into your Rust application
|
|
329
|
+
use probe::{search, extract, implement};
|
|
330
|
+
|
|
331
|
+
let results = search("authentication logic").await?;
|
|
332
|
+
let code = extract(&results[0]).await?;
|
|
333
|
+
implement("add rate limiting", &code).await?;
|
|
334
|
+
```
|
|
335
|
+
|
|
336
|
+
#### AI Performance Monitoring
|
|
337
|
+
```bash
|
|
338
|
+
# Monitor AI interactions with remote tracing
|
|
339
|
+
npx @probelabs/probe-chat@latest --trace-remote http://jaeger:4318/v1/traces
|
|
340
|
+
|
|
341
|
+
# Analyze performance offline
|
|
342
|
+
npx @probelabs/probe-chat@latest --trace-file ./performance-traces.jsonl
|
|
343
|
+
cat performance-traces.jsonl | jq '.events[]? | select(.name == "ai.response.complete")'
|
|
344
|
+
```
|
|
345
|
+
|
|
346
|
+
## 🛠 Migration Guide
|
|
347
|
+
|
|
348
|
+
### For GitHub Actions Users
|
|
349
|
+
Update your workflows to take advantage of new features:
|
|
350
|
+
|
|
351
|
+
```yaml
|
|
352
|
+
# Old configuration
|
|
353
|
+
- uses: probelabs/probe@v0.5.0
|
|
354
|
+
|
|
355
|
+
# New configuration with v0.6.0 features
|
|
356
|
+
- uses: probelabs/probe@v0.6.0
|
|
357
|
+
with:
|
|
358
|
+
allow_edit: true # Enable code editing
|
|
359
|
+
allow_suggestions: true # Enable PR suggestions
|
|
360
|
+
enable_tracing: true # Enable OpenTelemetry tracing
|
|
361
|
+
prompt: "architect" # Use specialized prompts
|
|
362
|
+
```
|
|
363
|
+
|
|
364
|
+
### For API Users
|
|
365
|
+
The core API remains backward compatible, with new optional parameters:
|
|
366
|
+
|
|
367
|
+
```javascript
|
|
368
|
+
// Enhanced search with editing capabilities
|
|
369
|
+
const probe = new Probe({
|
|
370
|
+
allowEdit: true, // New in v0.6.0
|
|
371
|
+
maxIterations: 50 // Configurable iterations
|
|
372
|
+
});
|
|
373
|
+
```
|
|
374
|
+
|
|
375
|
+
### For Rust Developers
|
|
376
|
+
Add Probe as a dependency to access the new library API:
|
|
377
|
+
|
|
378
|
+
```toml
|
|
379
|
+
[dependencies]
|
|
380
|
+
probe = "0.6.0"
|
|
381
|
+
```
|
|
382
|
+
|
|
383
|
+
## 🔮 Looking Ahead
|
|
384
|
+
|
|
385
|
+
v0.6.0 lays the foundation for even more exciting developments:
|
|
386
|
+
|
|
387
|
+
- **Advanced AI Agents**: Multi-step reasoning and planning capabilities
|
|
388
|
+
- **IDE Integrations**: Native support for popular code editors
|
|
389
|
+
- **Team Collaboration**: Enhanced features for team-based AI workflows
|
|
390
|
+
- **Custom Models**: Support for specialized domain-specific AI models
|
|
391
|
+
|
|
392
|
+
## 📚 Resources
|
|
393
|
+
|
|
394
|
+
- **[Full Changelog](/changelog)**: Complete list of changes and improvements
|
|
395
|
+
- **[GitHub Repository](https://github.com/probelabs/probe)**: Source code and issue tracking
|
|
396
|
+
- **[Documentation](/quick-start)**: Updated guides and API reference
|
|
397
|
+
- **[NPM Package](https://www.npmjs.com/package/@probelabs/probe)**: Node.js integration
|
|
398
|
+
- **[Crates.io Package](https://crates.io/crates/probe)**: Rust library
|
|
399
|
+
- **[Discord Community](https://discord.gg/hBN4UsTZ)**: Join the discussion
|
|
400
|
+
|
|
401
|
+
## 🙏 Acknowledgments
|
|
402
|
+
|
|
403
|
+
This release wouldn't have been possible without the contributions from our amazing community. Special thanks to all the developers who provided feedback, reported issues, and contributed code improvements.
|
|
404
|
+
|
|
405
|
+
We're particularly grateful for the extensive testing and feedback that helped shape the implement tool and GitHub Actions enhancements.
|
|
406
|
+
|
|
407
|
+
## 🚀 Get Started Today
|
|
408
|
+
|
|
409
|
+
Ready to experience the future of AI-powered code interaction? Get started with Probe v0.6.0:
|
|
410
|
+
|
|
411
|
+
```bash
|
|
412
|
+
# Install the latest version
|
|
413
|
+
npm install -g @probelabs/probe-chat@latest
|
|
414
|
+
|
|
415
|
+
# Or use directly
|
|
416
|
+
npx @probelabs/probe-chat@latest --allow-edit
|
|
417
|
+
|
|
418
|
+
# For Rust projects
|
|
419
|
+
cargo add probe
|
|
420
|
+
```
|
|
421
|
+
|
|
422
|
+
Join thousands of developers who are already using Probe to supercharge their AI coding workflows. The future of software development is here, and it's more intelligent than ever.
|
|
423
|
+
|
|
424
|
+
---
|
|
425
|
+
|
|
426
|
+
*Have questions or feedback about v0.6.0? Join our [Discord community](https://discord.gg/hBN4UsTZ) or [open an issue](https://github.com/probelabs/probe/issues) on GitHub. We'd love to hear from you!*
|
|
@@ -0,0 +1,200 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: Changelog
|
|
3
|
+
description: Release notes and changelog for Probe versions
|
|
4
|
+
layout: doc
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Changelog
|
|
8
|
+
|
|
9
|
+
All notable changes to Probe will be documented in this file.
|
|
10
|
+
|
|
11
|
+
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
|
12
|
+
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
13
|
+
|
|
14
|
+
## [Unreleased]
|
|
15
|
+
|
|
16
|
+
### 🚀 Major Features
|
|
17
|
+
|
|
18
|
+
#### Enhanced Extract Command Markdown Robustness
|
|
19
|
+
- **Markdown formatting support**: Extract command now handles markdown bold (`**text**`), italic (`*text*`), strikethrough (`~~text~~`), and code blocks (```text```)
|
|
20
|
+
- **Flexible file path detection**: Improved regex patterns recognize file paths after punctuation and markdown symbols
|
|
21
|
+
- **Real-world compatibility**: Works with GitHub issues, documentation, chat messages, and other markdown-formatted content
|
|
22
|
+
- **Comprehensive test coverage**: 14 unit tests covering all markdown scenarios and edge cases
|
|
23
|
+
- **Backward compatibility**: All existing functionality preserved while adding robustness
|
|
24
|
+
|
|
25
|
+
#### Cross-Platform Claude Code Backend Detection
|
|
26
|
+
- **Removed Unix-specific commands**: No more `which` command dependency, works on all platforms
|
|
27
|
+
- **Windows support**: Full support for `.cmd` files and Windows-specific paths
|
|
28
|
+
- **WSL integration**: Automatically detects Claude Code installed in WSL on Windows systems
|
|
29
|
+
- **Enhanced npm detection**: Better handling of npm global installations across different configurations
|
|
30
|
+
- **Improved error messages**: Clear guidance when Claude Code is not found
|
|
31
|
+
|
|
32
|
+
#### MCP Server Timeout Configuration
|
|
33
|
+
- **Configurable timeouts**: New `--timeout/-t` flag for both MCP servers
|
|
34
|
+
- Basic MCP server: Default 30 seconds
|
|
35
|
+
- Agent MCP server: Default 120 seconds
|
|
36
|
+
- **Per-request overrides**: Timeout can be specified in individual tool calls
|
|
37
|
+
- **Help command**: Added `--help/-h` flag to display usage information
|
|
38
|
+
- **Large codebase support**: Extended timeouts enable searching in massive repositories
|
|
39
|
+
|
|
40
|
+
#### Docker Integration & CI/CD
|
|
41
|
+
- **Official Docker images**: Pre-built images available on Docker Hub
|
|
42
|
+
- `probelabs/probe` - CLI tool for code search
|
|
43
|
+
- `probelabs/probe-chat` - AI-powered chat interface
|
|
44
|
+
- **Multi-platform support**: Images built for linux/amd64 and linux/arm64
|
|
45
|
+
- **Docker Compose configuration**: Easy local development setup
|
|
46
|
+
- **Automated CI/CD**: Docker images automatically built and published on releases
|
|
47
|
+
- **Security best practices**: Non-root execution, minimal base images, health checks
|
|
48
|
+
- **Production ready**: OCI-compliant labels, versioning, and comprehensive documentation
|
|
49
|
+
|
|
50
|
+
### 🔧 Improvements
|
|
51
|
+
|
|
52
|
+
#### Backend Detection Enhancements
|
|
53
|
+
- **Comprehensive logging**: Debug mode now shows detailed backend selection process
|
|
54
|
+
- **Multiple detection methods**: Tries direct execution, npm global, and common installation paths
|
|
55
|
+
- **Command caching**: Once found, Claude Code path is cached for faster subsequent calls
|
|
56
|
+
- **Graceful fallbacks**: Clear error messages when backends are unavailable
|
|
57
|
+
|
|
58
|
+
#### Documentation Updates
|
|
59
|
+
- **MCP timeout examples**: Updated READMEs with timeout configuration examples
|
|
60
|
+
- **Cross-platform guides**: Enhanced documentation for Windows and WSL users
|
|
61
|
+
- **Troubleshooting section**: Added common issues and solutions for backend detection
|
|
62
|
+
|
|
63
|
+
### 🐛 Bug Fixes
|
|
64
|
+
- Fixed Claude Code detection failing in GitHub Actions
|
|
65
|
+
- Fixed backend selection not respecting `implement_tool_backend` configuration
|
|
66
|
+
- Fixed Windows compatibility issues with spawn command
|
|
67
|
+
|
|
68
|
+
## [0.6.0] - 2025-07-17
|
|
69
|
+
|
|
70
|
+
### 🚀 Major Features
|
|
71
|
+
|
|
72
|
+
#### Implement Tool for Code Editing
|
|
73
|
+
- **New `implement` tool** for AI assistants to directly edit code files - see [CLI Mode documentation](./cli-mode.md#code-editing---allow-edit)
|
|
74
|
+
- Integrated with Aider for advanced code modification capabilities
|
|
75
|
+
- Configurable via `allow_edit` flag in [GitHub Actions workflows](./integrations/github-actions.md#code-modification-options)
|
|
76
|
+
- Enables AI assistants to make direct code changes during conversations
|
|
77
|
+
|
|
78
|
+
#### Enhanced GitHub Actions Integration
|
|
79
|
+
- **Allow Suggestions Feature**: New `allow_suggestions` flag for suggest-changes integration - see [GitHub Actions Integration](./integrations/github-actions.md#suggested-changes-allow_suggestions-true---recommended)
|
|
80
|
+
- **OpenTelemetry Tracing**: Full tracing support for monitoring AI model interactions - see [GitHub Actions Tracing](./integrations/github-actions.md#opentelemetry-tracing)
|
|
81
|
+
- **Failure Tagging**: Automatic tagging of failed GitHub Probe runs for better tracking
|
|
82
|
+
- **Improved Workflows**: Enhanced probe.yml with better error handling and configuration
|
|
83
|
+
- **Engineer Workflow**: New probe-engineer.yml for specialized engineering tasks - see [GitHub Actions examples](./integrations/github-actions.md#example-2-ai-engineer-code-editing-enabled)
|
|
84
|
+
- **Integration Testing**: Comprehensive integration test workflow added
|
|
85
|
+
|
|
86
|
+
#### OpenTelemetry Tracing Support
|
|
87
|
+
- **Complete Tracing Integration**: Full OpenTelemetry support for AI model monitoring - see [AI Chat Tracing](./ai-chat.md#opentelemetry-tracing)
|
|
88
|
+
- **File-based Tracing**: Save traces to JSON Lines format for offline analysis
|
|
89
|
+
- **Remote Tracing**: Send traces to OpenTelemetry collectors (Jaeger, Zipkin, etc.)
|
|
90
|
+
- **Performance Monitoring**: Track AI response times, token usage, and throughput
|
|
91
|
+
- **GitHub Actions Integration**: Automatic trace collection and artifact upload - see [GitHub Actions Tracing](./integrations/github-actions.md#opentelemetry-tracing)
|
|
92
|
+
- **Comprehensive Metrics**: Session tracking, error monitoring, and usage analytics
|
|
93
|
+
- **CLI Options**: New `--trace-file`, `--trace-remote`, and `--trace-console` flags
|
|
94
|
+
|
|
95
|
+
#### Crates.io Publishing
|
|
96
|
+
- **Automated Publishing**: Probe is now published to crates.io as a Rust library
|
|
97
|
+
- **Library Interface**: New `src/lib.rs` with public API for Rust integration
|
|
98
|
+
- **Release Automation**: Automatic crates.io publishing in release workflow
|
|
99
|
+
|
|
100
|
+
### 🔧 Improvements
|
|
101
|
+
|
|
102
|
+
#### AI Chat Enhancements
|
|
103
|
+
- **Chat History & Session Persistence**: Full session persistence with history dropdown navigation - see [Web Interface documentation](./web-interface.md#chat-history)
|
|
104
|
+
- **URL-based Session Routing**: Share and bookmark chat sessions with unique URLs (`/chat/session-id`)
|
|
105
|
+
- **Session Storage**: Automatic session storage to `~/.probe/sessions/` directory with JSON-based persistence
|
|
106
|
+
- **History Navigation**: Interactive history dropdown with session previews and metadata
|
|
107
|
+
- **Enhanced UI**: Always-visible header with clickable logo and improved navigation
|
|
108
|
+
- **Configurable Iterations**: `MAX_TOOL_ITERATIONS` environment variable support - see [AI Chat configuration](./ai-chat.md#configuration)
|
|
109
|
+
- **Enhanced Tool Support**: New file listing and search tools
|
|
110
|
+
- **Better Session Management**: Improved chat session handling and token tracking
|
|
111
|
+
- **Web Interface**: Enhanced web server with better error handling - see [Web Interface documentation](./web-interface.md)
|
|
112
|
+
|
|
113
|
+
#### MCP Protocol Updates
|
|
114
|
+
- **Mandatory Path Parameters**: Improved MCP tool definitions with required path parameters - see [MCP Server documentation](./mcp-server.md#available-tools)
|
|
115
|
+
- **Better Error Handling**: Enhanced error messages and validation
|
|
116
|
+
- **Tool Consistency**: Standardized tool interfaces across MCP implementations - see [MCP Integration guide](./mcp-integration.md)
|
|
117
|
+
|
|
118
|
+
#### Ripgrep Integration for Optimized Search Performance
|
|
119
|
+
- **Native Ripgrep Integration**: Integrated ripgrep Rust library for dramatically improved search performance
|
|
120
|
+
- **File Searching Performance**: 13% faster file searching (249ms → 217ms average improvement)
|
|
121
|
+
- **File I/O Performance**: 33% faster file I/O operations (303ms → 202ms average improvement)
|
|
122
|
+
- **AST Parsing Performance**: 32% faster tree parsing through optimized I/O operations
|
|
123
|
+
- **Memory Efficiency**: Enhanced memory mapping and streaming for large files with intelligent fallback
|
|
124
|
+
- **SIMD Optimizations**: Leveraged SIMD instructions for faster pattern matching where available
|
|
125
|
+
- **Pre-compiled Regex**: Eliminated redundant regex compilation by using pre-compiled RegexSet
|
|
126
|
+
- **Deterministic Results**: Ensured consistent search results across all runs
|
|
127
|
+
- **Fixed Timing Bug**: Corrected "Uncovered lines" measurement that was double-counting "term matching" time
|
|
128
|
+
- **RipgrepSearcher Module**: New dedicated searcher implementation with advanced encoding detection
|
|
129
|
+
|
|
130
|
+
#### Developer Experience
|
|
131
|
+
- **Windows Support**: Improved Windows compatibility for npm packages
|
|
132
|
+
- **Binary Management**: Enhanced binary download and path resolution
|
|
133
|
+
- **Documentation**: Updated documentation for new features and workflows
|
|
134
|
+
|
|
135
|
+
### 🐛 Bug Fixes
|
|
136
|
+
|
|
137
|
+
#### Search and File Handling
|
|
138
|
+
- **Underscore Directories**: Fixed recursive search in directories with underscores
|
|
139
|
+
- **Path Resolution**: Improved file path handling across different platforms
|
|
140
|
+
- **Binary Permissions**: Fixed Windows binary permission issues
|
|
141
|
+
|
|
142
|
+
#### GitHub Actions
|
|
143
|
+
- **Output Masking**: Fixed issue_number output to avoid GitHub Actions masking
|
|
144
|
+
- **Suggest-changes Integration**: Updated from reviewdog to suggest-changes action for better GitHub integration
|
|
145
|
+
- **Workflow Stability**: Multiple fixes for workflow reliability and error handling
|
|
146
|
+
|
|
147
|
+
#### Build and CI
|
|
148
|
+
- **Clippy Warnings**: Fixed uninlined_format_args warnings across codebase
|
|
149
|
+
- **Formatting**: Consistent code formatting with cargo fmt
|
|
150
|
+
- **Cross-platform**: Improved build compatibility across Linux, macOS, and Windows
|
|
151
|
+
|
|
152
|
+
### 📚 Documentation
|
|
153
|
+
|
|
154
|
+
#### Website Updates
|
|
155
|
+
- **Blog Infrastructure**: Added blog support with VitePress integration
|
|
156
|
+
- **Technical Guides**: New agentic flow guide with XML protocol documentation
|
|
157
|
+
- **Navigation**: Improved site navigation and structure
|
|
158
|
+
- **Discord Integration**: Updated Discord invite links
|
|
159
|
+
|
|
160
|
+
#### API Documentation
|
|
161
|
+
- **Tool Definitions**: Comprehensive documentation for all available tools
|
|
162
|
+
- **Configuration**: Detailed configuration options for GitHub Actions
|
|
163
|
+
- **Examples**: Enhanced examples and use case documentation
|
|
164
|
+
|
|
165
|
+
### 🔧 Infrastructure
|
|
166
|
+
|
|
167
|
+
#### Release Process
|
|
168
|
+
- **Multi-platform Builds**: Automated builds for Linux, macOS, Windows
|
|
169
|
+
- **NPM Publishing**: Automated npm package publishing
|
|
170
|
+
- **Version Management**: Improved version handling and release automation
|
|
171
|
+
- **Testing**: Enhanced integration and unit testing coverage
|
|
172
|
+
|
|
173
|
+
#### Development Tools
|
|
174
|
+
- **Linting**: Improved clippy and formatting rules
|
|
175
|
+
- **CI/CD**: Enhanced continuous integration with better error reporting
|
|
176
|
+
- **Dependencies**: Updated dependencies and security improvements
|
|
177
|
+
|
|
178
|
+
---
|
|
179
|
+
|
|
180
|
+
## [0.5.0] - Previous Release
|
|
181
|
+
|
|
182
|
+
For changes in version 0.5.0 and earlier, please refer to the [GitHub Releases](https://github.com/probelabs/probe/releases) page.
|
|
183
|
+
|
|
184
|
+
---
|
|
185
|
+
|
|
186
|
+
## Contributing
|
|
187
|
+
|
|
188
|
+
When contributing to Probe, please:
|
|
189
|
+
|
|
190
|
+
1. Follow the [Contributing Guidelines](https://github.com/probelabs/probe/blob/main/CONTRIBUTING.md)
|
|
191
|
+
2. Update this changelog for any user-facing changes
|
|
192
|
+
3. Use conventional commit messages for automatic changelog generation
|
|
193
|
+
4. Test your changes across supported platforms
|
|
194
|
+
|
|
195
|
+
## Links
|
|
196
|
+
|
|
197
|
+
- [GitHub Repository](https://github.com/probelabs/probe)
|
|
198
|
+
- [Release Downloads](https://github.com/probelabs/probe/releases)
|
|
199
|
+
- [NPM Package](https://www.npmjs.com/package/@probelabs/probe)
|
|
200
|
+
- [Crates.io Package](https://crates.io/crates/probe)
|