@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.
Files changed (444) hide show
  1. package/README.md +138 -0
  2. package/data/.env.example +22 -0
  3. package/data/.gitattributes +47 -0
  4. package/data/.glfrc.json +7 -0
  5. package/data/.husky/pre-commit +5 -0
  6. package/data/.nvmrc +1 -0
  7. package/data/CHANGELOG.md +75 -0
  8. package/data/CODE_OF_CONDUCT.md +129 -0
  9. package/data/CONTRIBUTING.md +203 -0
  10. package/data/DOCS-STRUCTURE.md +307 -0
  11. package/data/I18N.md +292 -0
  12. package/data/LICENSE +22 -0
  13. package/data/README.md +315 -0
  14. package/data/SECURITY.md +125 -0
  15. package/data/WIKI-DEPLOYMENT.md +348 -0
  16. package/data/docs/AI-FEATURES.md +610 -0
  17. package/data/docs/API-REFERENCE.md +1022 -0
  18. package/data/docs/AUTHENTICATION.md +301 -0
  19. package/data/docs/BACKEND-API.md +468 -0
  20. package/data/docs/DEVELOPMENT.md +375 -0
  21. package/data/docs/EXAMPLES.md +622 -0
  22. package/data/docs/MCP-SERVER.md +307 -0
  23. package/data/docs/MIGRATION-GUIDE.md +367 -0
  24. package/data/docs/NPM-PUBLISH.md +193 -0
  25. package/data/docs/QUICKSTART.md +206 -0
  26. package/data/docs/REDIS-SETUP.md +162 -0
  27. package/data/docs/SERVER.md +228 -0
  28. package/data/docs/TROUBLESHOOTING.md +657 -0
  29. package/data/docs/WIDGET-GUIDE.md +638 -0
  30. package/data/docs/WIKI-HOME.md +58 -0
  31. package/data/docs/WIKI-SIDEBAR.md +39 -0
  32. package/data/package.json +171 -0
  33. package/data/playwright.config.ts +64 -0
  34. package/data/probe/.cargo/config.toml +10 -0
  35. package/data/probe/.claude/commands/performance-review.md +15 -0
  36. package/data/probe/.clinerules +288 -0
  37. package/data/probe/.dockerignore +57 -0
  38. package/data/probe/.githooks/post-commit +11 -0
  39. package/data/probe/.githooks/pre-commit +99 -0
  40. package/data/probe/.githooks/pre-commit-vow +9 -0
  41. package/data/probe/.prompts/engineer.md +41 -0
  42. package/data/probe/.roomodes +28 -0
  43. package/data/probe/.windsurfrules +0 -0
  44. package/data/probe/BASH_TOOL_SUMMARY.md +148 -0
  45. package/data/probe/BENCHMARKING.md +256 -0
  46. package/data/probe/CLAUDE.md +226 -0
  47. package/data/probe/CODE_OF_CONDUCT.md +128 -0
  48. package/data/probe/CONTRIBUTING.md +193 -0
  49. package/data/probe/Cargo.toml +120 -0
  50. package/data/probe/Cross.toml +10 -0
  51. package/data/probe/DOCKER-README.md +224 -0
  52. package/data/probe/Dockerfile +32 -0
  53. package/data/probe/ENHANCED_DEBUG_TELEMETRY.md +188 -0
  54. package/data/probe/LICENSE +201 -0
  55. package/data/probe/Makefile +210 -0
  56. package/data/probe/README.md +824 -0
  57. package/data/probe/SECURITY.md +67 -0
  58. package/data/probe/WINDOWS-GUIDE.md +294 -0
  59. package/data/probe/benches/parsing_benchmarks.rs +370 -0
  60. package/data/probe/benches/search_benchmarks.rs +599 -0
  61. package/data/probe/benches/simd_benchmarks.rs +372 -0
  62. package/data/probe/benches/timing_benchmarks.rs +287 -0
  63. package/data/probe/build-windows.bat +229 -0
  64. package/data/probe/codex-config/config.toml +6 -0
  65. package/data/probe/docs/PERFORMANCE_OPTIMIZATION.md +161 -0
  66. package/data/probe/examples/cache_demo.rs +46 -0
  67. package/data/probe/examples/chat/.dockerignore +37 -0
  68. package/data/probe/examples/chat/ChatSessionManager.js +295 -0
  69. package/data/probe/examples/chat/Dockerfile +98 -0
  70. package/data/probe/examples/chat/LICENSE +201 -0
  71. package/data/probe/examples/chat/LOCAL_IMAGE_SUPPORT.md +195 -0
  72. package/data/probe/examples/chat/MCP_INTEGRATION.md +400 -0
  73. package/data/probe/examples/chat/README.md +338 -0
  74. package/data/probe/examples/chat/TRACING.md +226 -0
  75. package/data/probe/examples/chat/appTracer.js +968 -0
  76. package/data/probe/examples/chat/auth.js +76 -0
  77. package/data/probe/examples/chat/bin/probe-chat.js +13 -0
  78. package/data/probe/examples/chat/build.js +104 -0
  79. package/data/probe/examples/chat/cancelRequest.js +84 -0
  80. package/data/probe/examples/chat/demo-agentic-image-flow.js +88 -0
  81. package/data/probe/examples/chat/demo-local-images.js +128 -0
  82. package/data/probe/examples/chat/fileSpanExporter.js +181 -0
  83. package/data/probe/examples/chat/implement/README.md +228 -0
  84. package/data/probe/examples/chat/implement/backends/AiderBackend.js +750 -0
  85. package/data/probe/examples/chat/implement/backends/BaseBackend.js +276 -0
  86. package/data/probe/examples/chat/implement/backends/ClaudeCodeBackend.js +767 -0
  87. package/data/probe/examples/chat/implement/backends/MockBackend.js +237 -0
  88. package/data/probe/examples/chat/implement/backends/registry.js +85 -0
  89. package/data/probe/examples/chat/implement/core/BackendManager.js +567 -0
  90. package/data/probe/examples/chat/implement/core/ImplementTool.js +354 -0
  91. package/data/probe/examples/chat/implement/core/config.js +428 -0
  92. package/data/probe/examples/chat/implement/core/timeouts.js +58 -0
  93. package/data/probe/examples/chat/implement/core/utils.js +496 -0
  94. package/data/probe/examples/chat/implement/types/BackendTypes.js +126 -0
  95. package/data/probe/examples/chat/index.js +669 -0
  96. package/data/probe/examples/chat/mcpServer.js +341 -0
  97. package/data/probe/examples/chat/npm/LICENSE +15 -0
  98. package/data/probe/examples/chat/npm/README.md +168 -0
  99. package/data/probe/examples/chat/npm/bin/probe-chat.js +156 -0
  100. package/data/probe/examples/chat/npm/index.js +259 -0
  101. package/data/probe/examples/chat/npm/package.json +54 -0
  102. package/data/probe/examples/chat/package.json +102 -0
  103. package/data/probe/examples/chat/probeChat.js +456 -0
  104. package/data/probe/examples/chat/probeTool.js +491 -0
  105. package/data/probe/examples/chat/storage/JsonChatStorage.js +476 -0
  106. package/data/probe/examples/chat/telemetry.js +281 -0
  107. package/data/probe/examples/chat/test/integration/chatFlows.test.js +320 -0
  108. package/data/probe/examples/chat/test/integration/toolCalling.test.js +471 -0
  109. package/data/probe/examples/chat/test/mocks/mockLLMProvider.js +269 -0
  110. package/data/probe/examples/chat/test/test-backends.js +90 -0
  111. package/data/probe/examples/chat/test/testUtils.js +530 -0
  112. package/data/probe/examples/chat/test/unit/backendTimeout.test.js +161 -0
  113. package/data/probe/examples/chat/test/unit/packageFiles.test.js +120 -0
  114. package/data/probe/examples/chat/test/verify-tests.js +118 -0
  115. package/data/probe/examples/chat/test-agentic-image-loading.js +294 -0
  116. package/data/probe/examples/chat/test-ai-sdk-telemetry.js +204 -0
  117. package/data/probe/examples/chat/test-chat-tracing.js +38 -0
  118. package/data/probe/examples/chat/test-direct-function.js +49 -0
  119. package/data/probe/examples/chat/test-file-size-validation.js +103 -0
  120. package/data/probe/examples/chat/test-full-mcp-integration.js +258 -0
  121. package/data/probe/examples/chat/test-github-context.txt +12 -0
  122. package/data/probe/examples/chat/test-hierarchy.js +203 -0
  123. package/data/probe/examples/chat/test-image-spans.js +37 -0
  124. package/data/probe/examples/chat/test-local-image-reading.js +176 -0
  125. package/data/probe/examples/chat/test-mcp-integration.js +136 -0
  126. package/data/probe/examples/chat/test-mcp-probe-server.js +161 -0
  127. package/data/probe/examples/chat/test-mcp-with-ai.js +279 -0
  128. package/data/probe/examples/chat/test-multiple-allowed-dirs.js +111 -0
  129. package/data/probe/examples/chat/test-probe-mcp-server.js +110 -0
  130. package/data/probe/examples/chat/test-security-validation.js +145 -0
  131. package/data/probe/examples/chat/test-simple-tracing.js +32 -0
  132. package/data/probe/examples/chat/test-trace-verification.js +235 -0
  133. package/data/probe/examples/chat/test-tracing.js +114 -0
  134. package/data/probe/examples/chat/tokenCounter.js +419 -0
  135. package/data/probe/examples/chat/tokenUsageDisplay.js +134 -0
  136. package/data/probe/examples/chat/webServer.js +1103 -0
  137. package/data/probe/examples/reranker/Cargo.toml +33 -0
  138. package/data/probe/examples/reranker/DEBUG_OUTPUT_ANALYSIS.md +71 -0
  139. package/data/probe/examples/reranker/MODELS.md +66 -0
  140. package/data/probe/examples/reranker/MODEL_COMPARISON.md +60 -0
  141. package/data/probe/examples/reranker/MULTI_MODEL_ANALYSIS.md +176 -0
  142. package/data/probe/examples/reranker/PERFORMANCE_SUMMARY.md +156 -0
  143. package/data/probe/examples/reranker/README.md +347 -0
  144. package/data/probe/examples/reranker/RUST_BERT_COMPARISON.md +82 -0
  145. package/data/probe/examples/reranker/TOKENIZATION_GUIDE.md +120 -0
  146. package/data/probe/examples/reranker/check_rust_tokenizer.py +108 -0
  147. package/data/probe/examples/reranker/convert_to_torchscript.py +109 -0
  148. package/data/probe/examples/reranker/debug_scoring.py +189 -0
  149. package/data/probe/examples/reranker/debug_tokenization.py +154 -0
  150. package/data/probe/examples/reranker/download_models.sh +73 -0
  151. package/data/probe/examples/reranker/requirements.txt +13 -0
  152. package/data/probe/examples/reranker/run_comprehensive_benchmark.sh +83 -0
  153. package/data/probe/examples/reranker/rust_bert_test/Cargo.toml +12 -0
  154. package/data/probe/examples/reranker/rust_bert_test/README.md +54 -0
  155. package/data/probe/examples/reranker/simple_test.py +50 -0
  156. package/data/probe/examples/reranker/test_all_models.sh +63 -0
  157. package/data/probe/examples/reranker/test_bert_results.sh +44 -0
  158. package/data/probe/examples/reranker/test_cross_encoder.py +334 -0
  159. package/data/probe/examples/reranker/test_cross_encoder.sh +80 -0
  160. package/data/probe/examples/reranker/test_exact_comparison.py +151 -0
  161. package/data/probe/examples/reranker/test_parallel_performance.sh +56 -0
  162. package/data/probe/examples/reranker/test_scores.py +132 -0
  163. package/data/probe/install.ps1 +508 -0
  164. package/data/probe/install.sh +460 -0
  165. package/data/probe/npm/CLONE_METHOD_EXAMPLES.md +596 -0
  166. package/data/probe/npm/CONTEXT_COMPACTION.md +303 -0
  167. package/data/probe/npm/DELEGATE_TOOL_README.md +166 -0
  168. package/data/probe/npm/MAID_INTEGRATION.md +313 -0
  169. package/data/probe/npm/MCP_INTEGRATION_SUMMARY.md +241 -0
  170. package/data/probe/npm/README.md +824 -0
  171. package/data/probe/npm/bin/.gitignore +7 -0
  172. package/data/probe/npm/bin/.gitkeep +0 -0
  173. package/data/probe/npm/bin/README.md +12 -0
  174. package/data/probe/npm/bin/probe +167 -0
  175. package/data/probe/npm/docs/CLAUDE_CODE_INTEGRATION.md +414 -0
  176. package/data/probe/npm/docs/CODEX_INTEGRATION.md +502 -0
  177. package/data/probe/npm/docs/EDIT_CREATE_TOOLS.md +233 -0
  178. package/data/probe/npm/docs/RETRY_AND_FALLBACK.md +674 -0
  179. package/data/probe/npm/example-usage.js +335 -0
  180. package/data/probe/npm/examples/multi-engine-demo.js +117 -0
  181. package/data/probe/npm/examples/probe-agent-cli.js +113 -0
  182. package/data/probe/npm/examples/test-agent-edit.js +114 -0
  183. package/data/probe/npm/examples/test-edit-create.js +120 -0
  184. package/data/probe/npm/examples/test-edit-direct.js +114 -0
  185. package/data/probe/npm/index.d.ts +744 -0
  186. package/data/probe/npm/jest.config.js +52 -0
  187. package/data/probe/npm/package.json +117 -0
  188. package/data/probe/npm/scripts/build-agent.cjs +75 -0
  189. package/data/probe/npm/scripts/build-cjs.js +124 -0
  190. package/data/probe/npm/scripts/build-mcp.cjs +36 -0
  191. package/data/probe/npm/scripts/postinstall.js +216 -0
  192. package/data/probe/npm/test-codex-e2e.js +78 -0
  193. package/data/probe/npm/test-download-lock.js +109 -0
  194. package/data/probe/npm/test-grep-security.js +94 -0
  195. package/data/probe/npm/test-grep-simplified.js +63 -0
  196. package/data/probe/npm/test-grep.js +51 -0
  197. package/data/probe/npm/tests/README.md +96 -0
  198. package/data/probe/npm/tests/agent-compact-history.test.js +174 -0
  199. package/data/probe/npm/tests/allow-tests-default.test.js +151 -0
  200. package/data/probe/npm/tests/contextCompactor.test.js +498 -0
  201. package/data/probe/npm/tests/delegate-config.test.js +353 -0
  202. package/data/probe/npm/tests/delegate-integration.test.js +348 -0
  203. package/data/probe/npm/tests/extractor-integration.test.js +162 -0
  204. package/data/probe/npm/tests/extractor.test.js +317 -0
  205. package/data/probe/npm/tests/fixtures/sampleDiagrams.js +267 -0
  206. package/data/probe/npm/tests/integration/claude-code-auto-fallback.spec.js +148 -0
  207. package/data/probe/npm/tests/integration/claude-code-multi-step.spec.js +127 -0
  208. package/data/probe/npm/tests/integration/claude-code-tool-events.spec.js +163 -0
  209. package/data/probe/npm/tests/integration/codex-auto-fallback.spec.js +191 -0
  210. package/data/probe/npm/tests/integration/codex-tool-events.spec.js +147 -0
  211. package/data/probe/npm/tests/integration/examplesChatMcp.test.js +402 -0
  212. package/data/probe/npm/tests/integration/mcpDotenvSupport.test.js +174 -0
  213. package/data/probe/npm/tests/integration/mcpErrorHandling.test.js +566 -0
  214. package/data/probe/npm/tests/integration/mcpRobustness.test.js +564 -0
  215. package/data/probe/npm/tests/integration/mcpStdoutPurity.test.js +355 -0
  216. package/data/probe/npm/tests/integration/probeAgentMcp.test.js +398 -0
  217. package/data/probe/npm/tests/integration/retryFallback.test.js +368 -0
  218. package/data/probe/npm/tests/integration/schema-in-initial-message.test.js +318 -0
  219. package/data/probe/npm/tests/integration/schema-validation-loop-prevention.test.js +244 -0
  220. package/data/probe/npm/tests/integration/schemaRetryLogic.test.js +94 -0
  221. package/data/probe/npm/tests/integration/validationFlow.test.js +329 -0
  222. package/data/probe/npm/tests/manual/test-codex-basic.js +110 -0
  223. package/data/probe/npm/tests/mcp/mcpClientManager.test.js +614 -0
  224. package/data/probe/npm/tests/mcp/mcpConfig.test.js +359 -0
  225. package/data/probe/npm/tests/mcp/mcpXmlBridge.test.js +436 -0
  226. package/data/probe/npm/tests/mcp/mockMcpServer.js +510 -0
  227. package/data/probe/npm/tests/mcp-strict-syntax.test.js +319 -0
  228. package/data/probe/npm/tests/mermaidQuoteEscaping.test.js +214 -0
  229. package/data/probe/npm/tests/nestedQuoteFix.test.js +40 -0
  230. package/data/probe/npm/tests/setup.js +46 -0
  231. package/data/probe/npm/tests/unit/allowed-tools.test.js +513 -0
  232. package/data/probe/npm/tests/unit/attempt-completion-closing-tag-in-content.test.js +188 -0
  233. package/data/probe/npm/tests/unit/attemptCompletionJsonFix.test.js +238 -0
  234. package/data/probe/npm/tests/unit/attemptCompletionJsonIssue.test.js +128 -0
  235. package/data/probe/npm/tests/unit/backtickAutoFix.test.js +35 -0
  236. package/data/probe/npm/tests/unit/bash-probe-agent-integration.test.js +389 -0
  237. package/data/probe/npm/tests/unit/bash-simple-commands.test.js +324 -0
  238. package/data/probe/npm/tests/unit/bash-tool-comprehensive.test.js +371 -0
  239. package/data/probe/npm/tests/unit/bash-tool-integration.test.js +310 -0
  240. package/data/probe/npm/tests/unit/bash-tool.test.js +341 -0
  241. package/data/probe/npm/tests/unit/completion-prompt.test.js +379 -0
  242. package/data/probe/npm/tests/unit/cwd-path-options.test.js +287 -0
  243. package/data/probe/npm/tests/unit/delegate-limits.test.js +422 -0
  244. package/data/probe/npm/tests/unit/direct-content-attempt-completion.test.js +235 -0
  245. package/data/probe/npm/tests/unit/edit-create-tools.test.js +609 -0
  246. package/data/probe/npm/tests/unit/enhancedMermaidValidation.test.js +577 -0
  247. package/data/probe/npm/tests/unit/extract-content.test.js +83 -0
  248. package/data/probe/npm/tests/unit/extract-multiple-targets.test.js +89 -0
  249. package/data/probe/npm/tests/unit/fallbackManager.test.js +442 -0
  250. package/data/probe/npm/tests/unit/githubCompatibilityValidation.test.js +258 -0
  251. package/data/probe/npm/tests/unit/imageConfig.test.js +149 -0
  252. package/data/probe/npm/tests/unit/imagePathResolution.test.js +345 -0
  253. package/data/probe/npm/tests/unit/json-fixing-agent.test.js +238 -0
  254. package/data/probe/npm/tests/unit/json-validation-enhanced-errors.test.js +199 -0
  255. package/data/probe/npm/tests/unit/jsonValidationInfiniteLoopFix.test.js +228 -0
  256. package/data/probe/npm/tests/unit/maidIntegration.test.js +139 -0
  257. package/data/probe/npm/tests/unit/maxIterationsWarning.test.js +195 -0
  258. package/data/probe/npm/tests/unit/mermaidEdgeLabelFix.test.js +161 -0
  259. package/data/probe/npm/tests/unit/mermaidHtmlEntities.test.js +76 -0
  260. package/data/probe/npm/tests/unit/mermaidInfiniteLoopFix.test.js +64 -0
  261. package/data/probe/npm/tests/unit/mermaidValidation.test.js +723 -0
  262. package/data/probe/npm/tests/unit/mermaidValidationVisorExample.test.js +309 -0
  263. package/data/probe/npm/tests/unit/probe-agent-clone-realistic.test.js +643 -0
  264. package/data/probe/npm/tests/unit/probe-agent-clone.test.js +476 -0
  265. package/data/probe/npm/tests/unit/probe-agent-delegate.test.js +400 -0
  266. package/data/probe/npm/tests/unit/probe-agent-model-option.test.js +118 -0
  267. package/data/probe/npm/tests/unit/probeTool-security.test.js +283 -0
  268. package/data/probe/npm/tests/unit/readImageTool.test.js +418 -0
  269. package/data/probe/npm/tests/unit/retryManager.test.js +317 -0
  270. package/data/probe/npm/tests/unit/schema-aware-reminders.test.js +288 -0
  271. package/data/probe/npm/tests/unit/schemaDefinitionDetection.test.js +115 -0
  272. package/data/probe/npm/tests/unit/schemaUtils.test.js +1268 -0
  273. package/data/probe/npm/tests/unit/simpleTelemetry.test.js +282 -0
  274. package/data/probe/npm/tests/unit/simplified-attempt-completion.test.js +274 -0
  275. package/data/probe/npm/tests/unit/single-quote-json-bug.test.js +231 -0
  276. package/data/probe/npm/tests/unit/subgraphAutoFix.test.js +110 -0
  277. package/data/probe/npm/tests/unit/system-prompt.test.js +32 -0
  278. package/data/probe/npm/tests/unit/types-probe-agent-options.test.js +42 -0
  279. package/data/probe/npm/tests/unit/xmlParsing.test.js +720 -0
  280. package/data/probe/npm/tsconfig.json +21 -0
  281. package/data/probe/result1.txt +19 -0
  282. package/data/probe/result2.txt +26 -0
  283. package/data/probe/scripts/benchmark.sh +270 -0
  284. package/data/probe/scripts/cache_memory_analysis.rs +844 -0
  285. package/data/probe/scripts/claude-hook-wrapper.sh +56 -0
  286. package/data/probe/site/.env.example +10 -0
  287. package/data/probe/site/DEPLOYMENT.md +86 -0
  288. package/data/probe/site/README.md +183 -0
  289. package/data/probe/site/adding-languages.md +135 -0
  290. package/data/probe/site/ai-chat.md +427 -0
  291. package/data/probe/site/ai-integration.md +1488 -0
  292. package/data/probe/site/blog/agentic-flow-custom-xml-protocol.md +407 -0
  293. package/data/probe/site/blog/index.md +118 -0
  294. package/data/probe/site/blog/v0.6.0-release.md +426 -0
  295. package/data/probe/site/blog.md +8 -0
  296. package/data/probe/site/changelog.md +200 -0
  297. package/data/probe/site/cli-mode.md +437 -0
  298. package/data/probe/site/code-extraction.md +436 -0
  299. package/data/probe/site/contributing/README.md +9 -0
  300. package/data/probe/site/contributing/documentation-cross-references.md +215 -0
  301. package/data/probe/site/contributing/documentation-maintenance.md +275 -0
  302. package/data/probe/site/contributing/documentation-structure.md +75 -0
  303. package/data/probe/site/documentation-cross-references.md +215 -0
  304. package/data/probe/site/documentation-guide.md +132 -0
  305. package/data/probe/site/documentation-maintenance.md +275 -0
  306. package/data/probe/site/features.md +147 -0
  307. package/data/probe/site/how-it-works.md +118 -0
  308. package/data/probe/site/index.md +175 -0
  309. package/data/probe/site/index.md.bak +133 -0
  310. package/data/probe/site/installation.md +235 -0
  311. package/data/probe/site/integrations/docker.md +248 -0
  312. package/data/probe/site/integrations/github-actions.md +413 -0
  313. package/data/probe/site/language-support-overview.md +168 -0
  314. package/data/probe/site/mcp-integration.md +587 -0
  315. package/data/probe/site/mcp-server.md +304 -0
  316. package/data/probe/site/navigation-structure.md +76 -0
  317. package/data/probe/site/nodejs-sdk.md +798 -0
  318. package/data/probe/site/output-formats.md +625 -0
  319. package/data/probe/site/package.json +21 -0
  320. package/data/probe/site/public/_headers +28 -0
  321. package/data/probe/site/public/_redirects +11 -0
  322. package/data/probe/site/quick-start.md +289 -0
  323. package/data/probe/site/search-functionality.md +291 -0
  324. package/data/probe/site/search-reference.md +291 -0
  325. package/data/probe/site/supported-languages.md +215 -0
  326. package/data/probe/site/use-cases/README.md +8 -0
  327. package/data/probe/site/use-cases/advanced-cli.md +253 -0
  328. package/data/probe/site/use-cases/ai-code-editors.md +239 -0
  329. package/data/probe/site/use-cases/building-ai-tools.md +529 -0
  330. package/data/probe/site/use-cases/cli-ai-workflows.md +285 -0
  331. package/data/probe/site/use-cases/deploying-probe-web-interface.md +255 -0
  332. package/data/probe/site/use-cases/integrating-probe-into-ai-code-editors.md +161 -0
  333. package/data/probe/site/use-cases/nodejs-sdk.md +596 -0
  334. package/data/probe/site/use-cases/team-chat.md +350 -0
  335. package/data/probe/site/web-interface.md +434 -0
  336. package/data/probe/site/wrangler.toml +9 -0
  337. package/data/probe/test-api-key.sh +1 -0
  338. package/data/probe/test-probe-implementation/hello.js +7 -0
  339. package/data/probe/test_cases/demonstrate_early_termination_issues.sh +176 -0
  340. package/data/probe/test_cases/early_termination_issues.rs +533 -0
  341. package/data/probe/test_data/test_nested_struct.go +26 -0
  342. package/data/probe/tests/README.md +286 -0
  343. package/data/probe/tests/README_search_determinism_tests.md +116 -0
  344. package/data/probe/tests/adjacent_comment_test.rs +152 -0
  345. package/data/probe/tests/apostrophe_handling_tests.rs +132 -0
  346. package/data/probe/tests/block_filtering_with_ast_tests.rs +669 -0
  347. package/data/probe/tests/block_merging_tests.rs +396 -0
  348. package/data/probe/tests/c_outline_format_tests.rs +2179 -0
  349. package/data/probe/tests/cache_invalidation_issues.rs.disabled +682 -0
  350. package/data/probe/tests/cache_order_tests.rs +147 -0
  351. package/data/probe/tests/cache_query_scoping_tests.rs +221 -0
  352. package/data/probe/tests/cli_tests.rs +680 -0
  353. package/data/probe/tests/comment_context_integration_test.rs +240 -0
  354. package/data/probe/tests/common.rs +33 -0
  355. package/data/probe/tests/complex_block_merging_tests.rs +599 -0
  356. package/data/probe/tests/complex_query_block_filtering_tests.rs +422 -0
  357. package/data/probe/tests/control_flow_closing_braces_test.rs +91 -0
  358. package/data/probe/tests/cpp_outline_format_tests.rs +1507 -0
  359. package/data/probe/tests/csharp_outline_format_tests.rs +941 -0
  360. package/data/probe/tests/elastic_query_integration_tests.rs +922 -0
  361. package/data/probe/tests/extract_command_tests.rs +1848 -0
  362. package/data/probe/tests/extract_deduplication_tests.rs +146 -0
  363. package/data/probe/tests/extract_input_file_tests.rs +84 -0
  364. package/data/probe/tests/extract_prompt_tests.rs +102 -0
  365. package/data/probe/tests/filename_search_tests.rs +96 -0
  366. package/data/probe/tests/fixtures/user/AssemblyInfo.cs +3 -0
  367. package/data/probe/tests/github_extract_tests.rs +234 -0
  368. package/data/probe/tests/go_comment_test.rs +253 -0
  369. package/data/probe/tests/go_outline_format_tests.rs +2587 -0
  370. package/data/probe/tests/go_path_resolver_tests.rs +96 -0
  371. package/data/probe/tests/html_outline_format_tests.rs +637 -0
  372. package/data/probe/tests/integration_tests.rs +837 -0
  373. package/data/probe/tests/ip_whitelist_test.rs +148 -0
  374. package/data/probe/tests/java_outline_format_tests.rs +1611 -0
  375. package/data/probe/tests/javascript_extract_tests.rs +315 -0
  376. package/data/probe/tests/javascript_outline_format_tests.rs +1464 -0
  377. package/data/probe/tests/json_format_tests.rs +436 -0
  378. package/data/probe/tests/json_schema_validation_tests.rs +450 -0
  379. package/data/probe/tests/lib_usage.rs +60 -0
  380. package/data/probe/tests/line_comment_context_extension_test.rs +459 -0
  381. package/data/probe/tests/line_map_cache_tests.rs +114 -0
  382. package/data/probe/tests/markdown_integration_tests.rs +190 -0
  383. package/data/probe/tests/mocks/test_ip_whitelist.go +11 -0
  384. package/data/probe/tests/mocks/test_object.js +27 -0
  385. package/data/probe/tests/mocks/test_struct.go +50 -0
  386. package/data/probe/tests/multi_keyword_pattern_tests.rs +464 -0
  387. package/data/probe/tests/multi_language_syntax_integration_tests.rs +218 -0
  388. package/data/probe/tests/multiple_capture_groups_tests.rs +169 -0
  389. package/data/probe/tests/negative_compound_word_tests.rs +246 -0
  390. package/data/probe/tests/nested_symbol_extraction_tests.rs +99 -0
  391. package/data/probe/tests/outline_cross_file_interference_test.rs +335 -0
  392. package/data/probe/tests/outline_keyword_preservation_test.rs +67 -0
  393. package/data/probe/tests/output_format_edge_cases_tests.rs +693 -0
  394. package/data/probe/tests/parallel_extraction_tests.rs +178 -0
  395. package/data/probe/tests/parallel_search_tests.rs +355 -0
  396. package/data/probe/tests/path_resolver_tests.rs +698 -0
  397. package/data/probe/tests/php_outline_format_extended_tests.rs +928 -0
  398. package/data/probe/tests/php_outline_format_tests.rs +768 -0
  399. package/data/probe/tests/property_tests.proptest-regressions +9 -0
  400. package/data/probe/tests/property_tests.rs +118 -0
  401. package/data/probe/tests/python_outline_format_tests.rs +1538 -0
  402. package/data/probe/tests/query_command_json_tests.rs +438 -0
  403. package/data/probe/tests/query_command_tests.rs +232 -0
  404. package/data/probe/tests/query_command_xml_tests.rs +569 -0
  405. package/data/probe/tests/quoted_term_with_negative_keyword_tests.rs +216 -0
  406. package/data/probe/tests/required_terms_filename_tests.rs +116 -0
  407. package/data/probe/tests/ruby_outline_format_tests.rs +1011 -0
  408. package/data/probe/tests/rust_line_comment_context_test.rs +151 -0
  409. package/data/probe/tests/rust_outline_format_enhanced_tests.rs +725 -0
  410. package/data/probe/tests/rust_outline_format_tests.rs +843 -0
  411. package/data/probe/tests/schemas/xml_output_schema.xsd +38 -0
  412. package/data/probe/tests/search_determinism_tests.rs +451 -0
  413. package/data/probe/tests/search_hints_tests.rs +253 -0
  414. package/data/probe/tests/special_character_escaping_tests.rs +417 -0
  415. package/data/probe/tests/stemming_compound_word_filtering_tests.rs +535 -0
  416. package/data/probe/tests/strict_elastic_syntax_tests.rs +404 -0
  417. package/data/probe/tests/swift_outline_format_tests.rs +3319 -0
  418. package/data/probe/tests/symbols_tests.rs +166 -0
  419. package/data/probe/tests/test_file.rs +45 -0
  420. package/data/probe/tests/test_tokenize.rs +28 -0
  421. package/data/probe/tests/timeout_tests.rs +82 -0
  422. package/data/probe/tests/tokenization_tests.rs +195 -0
  423. package/data/probe/tests/tokenized_block_filtering_tests.rs +174 -0
  424. package/data/probe/tests/typescript_extract_tests.rs +214 -0
  425. package/data/probe/tests/typescript_outline_format_tests.rs +2188 -0
  426. package/data/probe/tests/xml_format_tests.rs +568 -0
  427. package/data/probe/tests/xml_schema_validation_tests.rs +497 -0
  428. package/data/scripts/postinstall.mjs +9 -0
  429. package/data/scripts/set-version.js +0 -0
  430. package/data/scripts/wiki-build.sh +111 -0
  431. package/data/scripts/wiki-deploy.sh +73 -0
  432. package/data/serve.json +12 -0
  433. package/data/test/demo-dynamic.html +134 -0
  434. package/data/test/demo-esm.html +105 -0
  435. package/data/test/demo-iife.html +78 -0
  436. package/data/tsconfig.json +7 -0
  437. package/data/vite.server.ts +483 -0
  438. package/data/vitest.config.ts +40 -0
  439. package/data/wiki/Home.md +58 -0
  440. package/data/wiki/_Sidebar.md +39 -0
  441. package/docs-mcp.config.json +20 -0
  442. package/package.json +56 -0
  443. package/src/config.js +111 -0
  444. 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
+ ```