signalwire-agents 0.1.52__tar.gz → 0.1.54__tar.gz

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 (145) hide show
  1. {signalwire_agents-0.1.52/signalwire_agents.egg-info → signalwire_agents-0.1.54}/PKG-INFO +11 -11
  2. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/pyproject.toml +11 -11
  3. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/__init__.py +1 -1
  4. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/cli/build_search.py +22 -5
  5. signalwire_agents-0.1.54/signalwire_agents/schema.json +9179 -0
  6. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/search/document_processor.py +112 -18
  7. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/search/search_engine.py +144 -104
  8. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54/signalwire_agents.egg-info}/PKG-INFO +11 -11
  9. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents.egg-info/requires.txt +10 -10
  10. signalwire_agents-0.1.52/signalwire_agents/schema.json +0 -7670
  11. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/LICENSE +0 -0
  12. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/README.md +0 -0
  13. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/setup.cfg +0 -0
  14. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/setup.py +0 -0
  15. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/agent_server.py +0 -0
  16. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/agents/bedrock.py +0 -0
  17. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/cli/__init__.py +0 -0
  18. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/cli/config.py +0 -0
  19. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/cli/core/__init__.py +0 -0
  20. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/cli/core/agent_loader.py +0 -0
  21. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/cli/core/argparse_helpers.py +0 -0
  22. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/cli/core/dynamic_config.py +0 -0
  23. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/cli/core/service_loader.py +0 -0
  24. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/cli/execution/__init__.py +0 -0
  25. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/cli/execution/datamap_exec.py +0 -0
  26. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/cli/execution/webhook_exec.py +0 -0
  27. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/cli/output/__init__.py +0 -0
  28. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/cli/output/output_formatter.py +0 -0
  29. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/cli/output/swml_dump.py +0 -0
  30. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/cli/simulation/__init__.py +0 -0
  31. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/cli/simulation/data_generation.py +0 -0
  32. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/cli/simulation/data_overrides.py +0 -0
  33. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/cli/simulation/mock_env.py +0 -0
  34. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/cli/swaig_test_wrapper.py +0 -0
  35. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/cli/test_swaig.py +0 -0
  36. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/cli/types.py +0 -0
  37. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/core/__init__.py +0 -0
  38. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/core/agent/__init__.py +0 -0
  39. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/core/agent/config/__init__.py +0 -0
  40. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/core/agent/deployment/__init__.py +0 -0
  41. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/core/agent/deployment/handlers/__init__.py +0 -0
  42. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/core/agent/prompt/__init__.py +0 -0
  43. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/core/agent/prompt/manager.py +0 -0
  44. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/core/agent/routing/__init__.py +0 -0
  45. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/core/agent/security/__init__.py +0 -0
  46. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/core/agent/swml/__init__.py +0 -0
  47. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/core/agent/tools/__init__.py +0 -0
  48. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/core/agent/tools/decorator.py +0 -0
  49. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/core/agent/tools/registry.py +0 -0
  50. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/core/agent_base.py +0 -0
  51. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/core/auth_handler.py +0 -0
  52. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/core/config_loader.py +0 -0
  53. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/core/contexts.py +0 -0
  54. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/core/data_map.py +0 -0
  55. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/core/function_result.py +0 -0
  56. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/core/logging_config.py +0 -0
  57. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/core/mixins/__init__.py +0 -0
  58. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/core/mixins/ai_config_mixin.py +0 -0
  59. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/core/mixins/auth_mixin.py +0 -0
  60. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/core/mixins/prompt_mixin.py +0 -0
  61. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/core/mixins/serverless_mixin.py +0 -0
  62. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/core/mixins/skill_mixin.py +0 -0
  63. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/core/mixins/state_mixin.py +0 -0
  64. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/core/mixins/tool_mixin.py +0 -0
  65. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/core/mixins/web_mixin.py +0 -0
  66. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/core/pom_builder.py +0 -0
  67. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/core/security/__init__.py +0 -0
  68. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/core/security/session_manager.py +0 -0
  69. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/core/security_config.py +0 -0
  70. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/core/skill_base.py +0 -0
  71. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/core/skill_manager.py +0 -0
  72. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/core/swaig_function.py +0 -0
  73. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/core/swml_builder.py +0 -0
  74. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/core/swml_handler.py +0 -0
  75. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/core/swml_renderer.py +0 -0
  76. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/core/swml_service.py +0 -0
  77. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/prefabs/__init__.py +0 -0
  78. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/prefabs/concierge.py +0 -0
  79. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/prefabs/faq_bot.py +0 -0
  80. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/prefabs/info_gatherer.py +0 -0
  81. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/prefabs/receptionist.py +0 -0
  82. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/prefabs/survey.py +0 -0
  83. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/search/__init__.py +0 -0
  84. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/search/index_builder.py +0 -0
  85. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/search/migration.py +0 -0
  86. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/search/models.py +0 -0
  87. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/search/pgvector_backend.py +0 -0
  88. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/search/query_processor.py +0 -0
  89. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/search/search_service.py +0 -0
  90. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/skills/README.md +0 -0
  91. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/skills/__init__.py +0 -0
  92. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/skills/api_ninjas_trivia/README.md +0 -0
  93. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/skills/api_ninjas_trivia/__init__.py +0 -0
  94. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/skills/api_ninjas_trivia/skill.py +0 -0
  95. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/skills/datasphere/README.md +0 -0
  96. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/skills/datasphere/__init__.py +0 -0
  97. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/skills/datasphere/skill.py +0 -0
  98. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/skills/datasphere_serverless/README.md +0 -0
  99. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/skills/datasphere_serverless/__init__.py +0 -0
  100. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/skills/datasphere_serverless/skill.py +0 -0
  101. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/skills/datetime/README.md +0 -0
  102. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/skills/datetime/__init__.py +0 -0
  103. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/skills/datetime/skill.py +0 -0
  104. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/skills/joke/README.md +0 -0
  105. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/skills/joke/__init__.py +0 -0
  106. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/skills/joke/skill.py +0 -0
  107. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/skills/math/README.md +0 -0
  108. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/skills/math/__init__.py +0 -0
  109. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/skills/math/skill.py +0 -0
  110. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/skills/mcp_gateway/README.md +0 -0
  111. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/skills/mcp_gateway/__init__.py +0 -0
  112. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/skills/mcp_gateway/skill.py +0 -0
  113. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/skills/native_vector_search/README.md +0 -0
  114. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/skills/native_vector_search/__init__.py +0 -0
  115. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/skills/native_vector_search/skill.py +0 -0
  116. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/skills/play_background_file/README.md +0 -0
  117. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/skills/play_background_file/__init__.py +0 -0
  118. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/skills/play_background_file/skill.py +0 -0
  119. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/skills/registry.py +0 -0
  120. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/skills/spider/README.md +0 -0
  121. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/skills/spider/__init__.py +0 -0
  122. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/skills/spider/skill.py +0 -0
  123. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/skills/swml_transfer/README.md +0 -0
  124. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/skills/swml_transfer/__init__.py +0 -0
  125. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/skills/swml_transfer/skill.py +0 -0
  126. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/skills/weather_api/README.md +0 -0
  127. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/skills/weather_api/__init__.py +0 -0
  128. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/skills/weather_api/skill.py +0 -0
  129. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/skills/web_search/README.md +0 -0
  130. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/skills/web_search/__init__.py +0 -0
  131. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/skills/web_search/skill.py +0 -0
  132. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/skills/wikipedia_search/README.md +0 -0
  133. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/skills/wikipedia_search/__init__.py +0 -0
  134. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/skills/wikipedia_search/skill.py +0 -0
  135. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/utils/__init__.py +0 -0
  136. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/utils/pom_utils.py +0 -0
  137. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/utils/schema_utils.py +0 -0
  138. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/utils/token_generators.py +0 -0
  139. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/utils/validators.py +0 -0
  140. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/web/__init__.py +0 -0
  141. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents/web/web_service.py +0 -0
  142. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents.egg-info/SOURCES.txt +0 -0
  143. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents.egg-info/dependency_links.txt +0 -0
  144. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents.egg-info/entry_points.txt +0 -0
  145. {signalwire_agents-0.1.52 → signalwire_agents-0.1.54}/signalwire_agents.egg-info/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: signalwire_agents
3
- Version: 0.1.52
3
+ Version: 0.1.54
4
4
  Summary: SignalWire AI Agents SDK
5
5
  Author-email: SignalWire Team <info@signalwire.com>
6
6
  License: MIT
@@ -18,16 +18,16 @@ Classifier: Programming Language :: Python :: 3.11
18
18
  Requires-Python: >=3.7
19
19
  Description-Content-Type: text/markdown
20
20
  License-File: LICENSE
21
- Requires-Dist: fastapi==0.115.12
22
- Requires-Dist: pydantic==2.11.4
23
- Requires-Dist: PyYAML==6.0.2
24
- Requires-Dist: Requests==2.32.3
25
- Requires-Dist: setuptools==66.1.1
26
- Requires-Dist: signalwire_pom==2.7.1
27
- Requires-Dist: structlog==25.3.0
28
- Requires-Dist: uvicorn==0.34.2
29
- Requires-Dist: beautifulsoup4==4.12.3
30
- Requires-Dist: pytz==2023.3
21
+ Requires-Dist: fastapi>=0.115.12
22
+ Requires-Dist: pydantic>=2.11.4
23
+ Requires-Dist: PyYAML>=6.0.2
24
+ Requires-Dist: Requests>=2.32.3
25
+ Requires-Dist: setuptools>=66.1.1
26
+ Requires-Dist: signalwire_pom>=2.7.1
27
+ Requires-Dist: structlog>=25.3.0
28
+ Requires-Dist: uvicorn>=0.34.2
29
+ Requires-Dist: beautifulsoup4>=4.12.3
30
+ Requires-Dist: pytz>=2023.3
31
31
  Requires-Dist: lxml>=4.9.0
32
32
  Provides-Extra: search-queryonly
33
33
  Requires-Dist: numpy>=1.24.0; extra == "search-queryonly"
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "signalwire_agents"
7
- version = "0.1.52"
7
+ version = "0.1.54"
8
8
  description = "SignalWire AI Agents SDK"
9
9
  authors = [
10
10
  {name = "SignalWire Team", email = "info@signalwire.com"}
@@ -25,16 +25,16 @@ classifiers = [
25
25
  "Programming Language :: Python :: 3.11",
26
26
  ]
27
27
  dependencies = [
28
- "fastapi==0.115.12",
29
- "pydantic==2.11.4",
30
- "PyYAML==6.0.2",
31
- "Requests==2.32.3",
32
- "setuptools==66.1.1",
33
- "signalwire_pom==2.7.1",
34
- "structlog==25.3.0",
35
- "uvicorn==0.34.2",
36
- "beautifulsoup4==4.12.3",
37
- "pytz==2023.3",
28
+ "fastapi>=0.115.12",
29
+ "pydantic>=2.11.4",
30
+ "PyYAML>=6.0.2",
31
+ "Requests>=2.32.3",
32
+ "setuptools>=66.1.1",
33
+ "signalwire_pom>=2.7.1",
34
+ "structlog>=25.3.0",
35
+ "uvicorn>=0.34.2",
36
+ "beautifulsoup4>=4.12.3",
37
+ "pytz>=2023.3",
38
38
  "lxml>=4.9.0",
39
39
  ]
40
40
 
@@ -18,7 +18,7 @@ A package for building AI agents using SignalWire's AI and SWML capabilities.
18
18
  from .core.logging_config import configure_logging
19
19
  configure_logging()
20
20
 
21
- __version__ = "0.1.52"
21
+ __version__ = "0.1.54"
22
22
 
23
23
  # Import core classes for easier access
24
24
  from .core.agent_base import AgentBase
@@ -69,6 +69,16 @@ Examples:
69
69
  sw-search ./docs \\
70
70
  --chunking-strategy qa
71
71
 
72
+ # Markdown-aware chunking (preserves headers, detects code blocks, adds tags)
73
+ sw-search ./docs \\
74
+ --chunking-strategy markdown \\
75
+ --file-types md
76
+ # This strategy:
77
+ # - Chunks at header boundaries (h1, h2, h3...)
78
+ # - Detects code blocks and extracts language (python, bash, etc)
79
+ # - Adds "code" tags to chunks with code for better search
80
+ # - Preserves section hierarchy in metadata
81
+
72
82
  # Model selection examples (performance vs quality tradeoff)
73
83
  sw-search ./docs --model mini # Fastest (~5x faster), 384 dims, good for most use cases
74
84
  sw-search ./docs --model base # Balanced speed/quality, 768 dims (previous default)
@@ -128,16 +138,23 @@ Examples:
128
138
  --collection-name docs_collection
129
139
  sw-search migrate --info ./docs.swsearch
130
140
 
131
- # PostgreSQL pgvector backend
141
+ # PostgreSQL pgvector backend (direct build to PostgreSQL)
132
142
  sw-search ./docs \\
133
143
  --backend pgvector \\
134
- --connection-string "postgresql://user:pass@localhost/knowledge" \\
144
+ --connection-string "postgresql://user:pass@localhost:5432/knowledge" \\
135
145
  --output docs_collection
136
146
 
147
+ # pgvector with markdown strategy (best for documentation with code examples)
148
+ sw-search ./docs \\
149
+ --backend pgvector \\
150
+ --connection-string "postgresql://user:pass@localhost:5432/knowledge" \\
151
+ --output docs_collection \\
152
+ --chunking-strategy markdown
153
+
137
154
  # Overwrite existing pgvector collection
138
155
  sw-search ./docs \\
139
156
  --backend pgvector \\
140
- --connection-string "postgresql://user:pass@localhost/knowledge" \\
157
+ --connection-string "postgresql://user:pass@localhost:5432/knowledge" \\
141
158
  --output docs_collection \\
142
159
  --overwrite
143
160
 
@@ -191,9 +208,9 @@ Examples:
191
208
 
192
209
  parser.add_argument(
193
210
  '--chunking-strategy',
194
- choices=['sentence', 'sliding', 'paragraph', 'page', 'semantic', 'topic', 'qa', 'json'],
211
+ choices=['sentence', 'sliding', 'paragraph', 'page', 'semantic', 'topic', 'qa', 'json', 'markdown'],
195
212
  default='sentence',
196
- help='Chunking strategy to use (default: sentence)'
213
+ help='Chunking strategy to use (default: sentence). Use "markdown" for documentation with code blocks.'
197
214
  )
198
215
 
199
216
  parser.add_argument(