janito 2.20.0__tar.gz → 2.21.0__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 (347) hide show
  1. {janito-2.20.0 → janito-2.21.0}/CHANGELOG.md +346 -346
  2. {janito-2.20.0 → janito-2.21.0}/PKG-INFO +1 -1
  3. janito-2.21.0/docs/pt/README-pt.md +371 -0
  4. janito-2.21.0/docs/pt/README.md +38 -0
  5. janito-2.21.0/docs/pt/configuracao.md +304 -0
  6. janito-2.21.0/docs/pt/exemplos.md +489 -0
  7. janito-2.21.0/docs/pt/faq-pt.md +317 -0
  8. janito-2.21.0/docs/pt/ferramentas.md +447 -0
  9. janito-2.21.0/docs/pt/guia-uso.md +265 -0
  10. janito-2.21.0/docs/pt/instalacao.md +155 -0
  11. janito-2.21.0/docs/pt/perfis.md +361 -0
  12. {janito-2.20.0 → janito-2.21.0}/janito/README.md +47 -4
  13. janito-2.21.0/janito/docs/GETTING_STARTED.md +190 -0
  14. {janito-2.20.0 → janito-2.21.0}/janito/llm/agent.py +6 -0
  15. {janito-2.20.0 → janito-2.21.0}/janito/providers/__init__.py +1 -0
  16. {janito-2.20.0 → janito-2.21.0}/janito/providers/azure_openai/provider.py +1 -1
  17. janito-2.21.0/janito/providers/ibm/README.md +99 -0
  18. janito-2.21.0/janito/providers/ibm/__init__.py +1 -0
  19. janito-2.21.0/janito/providers/ibm/model_info.py +78 -0
  20. janito-2.21.0/janito/providers/ibm/provider.py +149 -0
  21. {janito-2.20.0 → janito-2.21.0}/janito/tools/adapters/local/fetch_url.py +81 -19
  22. {janito-2.20.0 → janito-2.21.0}/janito.egg-info/PKG-INFO +1 -1
  23. {janito-2.20.0 → janito-2.21.0}/janito.egg-info/SOURCES.txt +13 -2
  24. janito-2.20.0/git_diff.txt +0 -0
  25. janito-2.20.0/github_diff +0 -0
  26. janito-2.20.0/janito/docs/GETTING_STARTED.md +0 -117
  27. {janito-2.20.0 → janito-2.21.0}/.codespellrc +0 -0
  28. {janito-2.20.0 → janito-2.21.0}/.gitattributes +0 -0
  29. {janito-2.20.0 → janito-2.21.0}/.github/workflows/python-app.yml.disabled +0 -0
  30. {janito-2.20.0 → janito-2.21.0}/.gitignore +0 -0
  31. {janito-2.20.0 → janito-2.21.0}/.pre-commit-config.yaml +0 -0
  32. {janito-2.20.0 → janito-2.21.0}/.secrets.baseline +0 -0
  33. {janito-2.20.0 → janito-2.21.0}/.vscode/settings.json +0 -0
  34. {janito-2.20.0 → janito-2.21.0}/CHANGELOG_2.16.0.md +0 -0
  35. {janito-2.20.0 → janito-2.21.0}/LICENSE +0 -0
  36. {janito-2.20.0 → janito-2.21.0}/README-dev.md +0 -0
  37. {janito-2.20.0 → janito-2.21.0}/README.md +0 -0
  38. {janito-2.20.0 → janito-2.21.0}/UPDATING_DOCS.md +0 -0
  39. {janito-2.20.0 → janito-2.21.0}/adding_mcp.txt +0 -0
  40. {janito-2.20.0 → janito-2.21.0}/docs/DIV.md +0 -0
  41. {janito-2.20.0 → janito-2.21.0}/docs/Interfaces.txt +0 -0
  42. {janito-2.20.0 → janito-2.21.0}/docs/TOOLBAR-STYLING.md +0 -0
  43. {janito-2.20.0 → janito-2.21.0}/docs/about/costs.md +0 -0
  44. {janito-2.20.0 → janito-2.21.0}/docs/about/vs-webchats.md +0 -0
  45. {janito-2.20.0 → janito-2.21.0}/docs/about/why.md +0 -0
  46. {janito-2.20.0 → janito-2.21.0}/docs/alibaba-setup.md +0 -0
  47. {janito-2.20.0 → janito-2.21.0}/docs/alternatives.md +0 -0
  48. {janito-2.20.0 → janito-2.21.0}/docs/cerebras-setup.md +0 -0
  49. {janito-2.20.0 → janito-2.21.0}/docs/code_intelligence/agentic-frameworks-comparison.md +0 -0
  50. {janito-2.20.0 → janito-2.21.0}/docs/code_intelligence/code-generation-challenges.md +0 -0
  51. {janito-2.20.0 → janito-2.21.0}/docs/code_intelligence/code-generation-observability.md +0 -0
  52. {janito-2.20.0 → janito-2.21.0}/docs/code_intelligence/our-approach.md +0 -0
  53. {janito-2.20.0 → janito-2.21.0}/docs/code_intelligence/why-string-replacement.md +0 -0
  54. {janito-2.20.0 → janito-2.21.0}/docs/concepts/analysis-style.md +0 -0
  55. {janito-2.20.0 → janito-2.21.0}/docs/concepts/human-guided-ai.md +0 -0
  56. {janito-2.20.0 → janito-2.21.0}/docs/concepts/index.md +0 -0
  57. {janito-2.20.0 → janito-2.21.0}/docs/concepts/language-model-clients.md +0 -0
  58. {janito-2.20.0 → janito-2.21.0}/docs/concepts/prompt-design-style.md +0 -0
  59. {janito-2.20.0 → janito-2.21.0}/docs/deepseek-setup.md +0 -0
  60. {janito-2.20.0 → janito-2.21.0}/docs/driver-flow.md +0 -0
  61. {janito-2.20.0 → janito-2.21.0}/docs/driver-request-cancellation.md +0 -0
  62. {janito-2.20.0 → janito-2.21.0}/docs/drivers/events.md +0 -0
  63. {janito-2.20.0 → janito-2.21.0}/docs/drivers.md +0 -0
  64. {janito-2.20.0 → janito-2.21.0}/docs/event-bus.md +0 -0
  65. {janito-2.20.0 → janito-2.21.0}/docs/guides/configuration.md +0 -0
  66. {janito-2.20.0 → janito-2.21.0}/docs/guides/developing.md +0 -0
  67. {janito-2.20.0 → janito-2.21.0}/docs/guides/disabled-tools.md +0 -0
  68. {janito-2.20.0 → janito-2.21.0}/docs/guides/installation.md +0 -0
  69. {janito-2.20.0 → janito-2.21.0}/docs/guides/profiles.md +0 -0
  70. {janito-2.20.0 → janito-2.21.0}/docs/guides/prompting/README.md +0 -0
  71. {janito-2.20.0 → janito-2.21.0}/docs/guides/single-shot-terminal.md +0 -0
  72. {janito-2.20.0 → janito-2.21.0}/docs/guides/terminal-shell.md +0 -0
  73. {janito-2.20.0 → janito-2.21.0}/docs/guides/tools-developer-guide.md +0 -0
  74. {janito-2.20.0 → janito-2.21.0}/docs/guides/using.md +0 -0
  75. {janito-2.20.0 → janito-2.21.0}/docs/guides/using_tools.md +0 -0
  76. {janito-2.20.0 → janito-2.21.0}/docs/imgs/code-generation-observability.png +0 -0
  77. {janito-2.20.0 → janito-2.21.0}/docs/imgs/code_generation_observability.png +0 -0
  78. {janito-2.20.0 → janito-2.21.0}/docs/imgs/happy-programmer.png +0 -0
  79. {janito-2.20.0 → janito-2.21.0}/docs/imgs/happy-programmer.svg +0 -0
  80. {janito-2.20.0 → janito-2.21.0}/docs/imgs/terminal-one-shot.png +0 -0
  81. {janito-2.20.0 → janito-2.21.0}/docs/imgs/terminal-shell.png +0 -0
  82. {janito-2.20.0 → janito-2.21.0}/docs/imgs/terminal_one_shot.png +0 -0
  83. {janito-2.20.0 → janito-2.21.0}/docs/imgs/terminal_shell.png +0 -0
  84. {janito-2.20.0 → janito-2.21.0}/docs/index.md +0 -0
  85. {janito-2.20.0 → janito-2.21.0}/docs/llm-drivers-required-config.md +0 -0
  86. {janito-2.20.0 → janito-2.21.0}/docs/llm-drivers.md +0 -0
  87. {janito-2.20.0 → janito-2.21.0}/docs/meta/developer-toolchain.md +0 -0
  88. {janito-2.20.0 → janito-2.21.0}/docs/meta/quality-checks.txt +0 -0
  89. {janito-2.20.0 → janito-2.21.0}/docs/mistral-setup.md +0 -0
  90. {janito-2.20.0 → janito-2.21.0}/docs/moonshotai-setup.md +0 -0
  91. {janito-2.20.0 → janito-2.21.0}/docs/openai-setup.md +0 -0
  92. {janito-2.20.0 → janito-2.21.0}/docs/overrides/partials/copyright.html +0 -0
  93. {janito-2.20.0 → janito-2.21.0}/docs/provider-platform-access.md +0 -0
  94. {janito-2.20.0 → janito-2.21.0}/docs/reference/api.md +0 -0
  95. {janito-2.20.0 → janito-2.21.0}/docs/reference/azure-openai.md +0 -0
  96. {janito-2.20.0 → janito-2.21.0}/docs/reference/cli-options.md +0 -0
  97. {janito-2.20.0 → janito-2.21.0}/docs/reference/message-handler-model.md +0 -0
  98. {janito-2.20.0 → janito-2.21.0}/docs/reference/rich-message-handler.md +0 -0
  99. {janito-2.20.0 → janito-2.21.0}/docs/security.md +0 -0
  100. {janito-2.20.0 → janito-2.21.0}/docs/supported-providers-models.md +0 -0
  101. {janito-2.20.0 → janito-2.21.0}/docs/tools/search-text.md +0 -0
  102. {janito-2.20.0 → janito-2.21.0}/docs/tools-index.md +0 -0
  103. {janito-2.20.0 → janito-2.21.0}/docs/tools-natural-results.md +0 -0
  104. {janito-2.20.0 → janito-2.21.0}/docs/tools-precision.md +0 -0
  105. {janito-2.20.0 → janito-2.21.0}/docs/z-ai-setup.md +0 -0
  106. {janito-2.20.0 → janito-2.21.0}/janito/__init__.py +0 -0
  107. {janito-2.20.0 → janito-2.21.0}/janito/__main__.py +0 -0
  108. {janito-2.20.0 → janito-2.21.0}/janito/_version.py +0 -0
  109. {janito-2.20.0 → janito-2.21.0}/janito/agent/setup_agent.py +0 -0
  110. {janito-2.20.0 → janito-2.21.0}/janito/agent/templates/profiles/system_prompt_template_Developer_with_Python_Tools.txt.j2 +0 -0
  111. {janito-2.20.0 → janito-2.21.0}/janito/agent/templates/profiles/system_prompt_template_developer.txt.j2 +0 -0
  112. {janito-2.20.0 → janito-2.21.0}/janito/agent/templates/profiles/system_prompt_template_model_conversation_without_tools_or_context.txt.j2 +0 -0
  113. {janito-2.20.0 → janito-2.21.0}/janito/cli/__init__.py +0 -0
  114. {janito-2.20.0 → janito-2.21.0}/janito/cli/chat_mode/bindings.py +0 -0
  115. {janito-2.20.0 → janito-2.21.0}/janito/cli/chat_mode/chat_entry.py +0 -0
  116. {janito-2.20.0 → janito-2.21.0}/janito/cli/chat_mode/prompt_style.py +0 -0
  117. {janito-2.20.0 → janito-2.21.0}/janito/cli/chat_mode/script_runner.py +0 -0
  118. {janito-2.20.0 → janito-2.21.0}/janito/cli/chat_mode/session.py +0 -0
  119. {janito-2.20.0 → janito-2.21.0}/janito/cli/chat_mode/session_profile_select.py +0 -0
  120. {janito-2.20.0 → janito-2.21.0}/janito/cli/chat_mode/shell/autocomplete.py +0 -0
  121. {janito-2.20.0 → janito-2.21.0}/janito/cli/chat_mode/shell/commands/__init__.py +0 -0
  122. {janito-2.20.0 → janito-2.21.0}/janito/cli/chat_mode/shell/commands/_priv_check.py +0 -0
  123. {janito-2.20.0 → janito-2.21.0}/janito/cli/chat_mode/shell/commands/_priv_status.py +0 -0
  124. {janito-2.20.0 → janito-2.21.0}/janito/cli/chat_mode/shell/commands/bang.py +0 -0
  125. {janito-2.20.0 → janito-2.21.0}/janito/cli/chat_mode/shell/commands/base.py +0 -0
  126. {janito-2.20.0 → janito-2.21.0}/janito/cli/chat_mode/shell/commands/clear.py +0 -0
  127. {janito-2.20.0 → janito-2.21.0}/janito/cli/chat_mode/shell/commands/conversation_restart.py +0 -0
  128. {janito-2.20.0 → janito-2.21.0}/janito/cli/chat_mode/shell/commands/execute.py +0 -0
  129. {janito-2.20.0 → janito-2.21.0}/janito/cli/chat_mode/shell/commands/help.py +0 -0
  130. {janito-2.20.0 → janito-2.21.0}/janito/cli/chat_mode/shell/commands/history_view.py +0 -0
  131. {janito-2.20.0 → janito-2.21.0}/janito/cli/chat_mode/shell/commands/lang.py +0 -0
  132. {janito-2.20.0 → janito-2.21.0}/janito/cli/chat_mode/shell/commands/model.py +0 -0
  133. {janito-2.20.0 → janito-2.21.0}/janito/cli/chat_mode/shell/commands/multi.py +0 -0
  134. {janito-2.20.0 → janito-2.21.0}/janito/cli/chat_mode/shell/commands/privileges.py +0 -0
  135. {janito-2.20.0 → janito-2.21.0}/janito/cli/chat_mode/shell/commands/prompt.py +0 -0
  136. {janito-2.20.0 → janito-2.21.0}/janito/cli/chat_mode/shell/commands/read.py +0 -0
  137. {janito-2.20.0 → janito-2.21.0}/janito/cli/chat_mode/shell/commands/role.py +0 -0
  138. {janito-2.20.0 → janito-2.21.0}/janito/cli/chat_mode/shell/commands/session.py +0 -0
  139. {janito-2.20.0 → janito-2.21.0}/janito/cli/chat_mode/shell/commands/session_control.py +0 -0
  140. {janito-2.20.0 → janito-2.21.0}/janito/cli/chat_mode/shell/commands/tools.py +0 -0
  141. {janito-2.20.0 → janito-2.21.0}/janito/cli/chat_mode/shell/commands/utility.py +0 -0
  142. {janito-2.20.0 → janito-2.21.0}/janito/cli/chat_mode/shell/commands/verbose.py +0 -0
  143. {janito-2.20.0 → janito-2.21.0}/janito/cli/chat_mode/shell/commands/write.py +0 -0
  144. {janito-2.20.0 → janito-2.21.0}/janito/cli/chat_mode/shell/commands.bak.zip +0 -0
  145. {janito-2.20.0 → janito-2.21.0}/janito/cli/chat_mode/shell/input_history.py +0 -0
  146. {janito-2.20.0 → janito-2.21.0}/janito/cli/chat_mode/shell/session/__init__.py +0 -0
  147. {janito-2.20.0 → janito-2.21.0}/janito/cli/chat_mode/shell/session/history.py +0 -0
  148. {janito-2.20.0 → janito-2.21.0}/janito/cli/chat_mode/shell/session/manager.py +0 -0
  149. {janito-2.20.0 → janito-2.21.0}/janito/cli/chat_mode/shell/session.bak.zip +0 -0
  150. {janito-2.20.0 → janito-2.21.0}/janito/cli/chat_mode/toolbar.py +0 -0
  151. {janito-2.20.0 → janito-2.21.0}/janito/cli/cli_commands/list_config.py +0 -0
  152. {janito-2.20.0 → janito-2.21.0}/janito/cli/cli_commands/list_drivers.py +0 -0
  153. {janito-2.20.0 → janito-2.21.0}/janito/cli/cli_commands/list_models.py +0 -0
  154. {janito-2.20.0 → janito-2.21.0}/janito/cli/cli_commands/list_profiles.py +0 -0
  155. {janito-2.20.0 → janito-2.21.0}/janito/cli/cli_commands/list_providers.py +0 -0
  156. {janito-2.20.0 → janito-2.21.0}/janito/cli/cli_commands/list_providers_region.py +0 -0
  157. {janito-2.20.0 → janito-2.21.0}/janito/cli/cli_commands/list_tools.py +0 -0
  158. {janito-2.20.0 → janito-2.21.0}/janito/cli/cli_commands/model_selection.py +0 -0
  159. {janito-2.20.0 → janito-2.21.0}/janito/cli/cli_commands/model_utils.py +0 -0
  160. {janito-2.20.0 → janito-2.21.0}/janito/cli/cli_commands/ping_providers.py +0 -0
  161. {janito-2.20.0 → janito-2.21.0}/janito/cli/cli_commands/set_api_key.py +0 -0
  162. {janito-2.20.0 → janito-2.21.0}/janito/cli/cli_commands/show_config.py +0 -0
  163. {janito-2.20.0 → janito-2.21.0}/janito/cli/cli_commands/show_system_prompt.py +0 -0
  164. {janito-2.20.0 → janito-2.21.0}/janito/cli/config.py +0 -0
  165. {janito-2.20.0 → janito-2.21.0}/janito/cli/console.py +0 -0
  166. {janito-2.20.0 → janito-2.21.0}/janito/cli/core/__init__.py +0 -0
  167. {janito-2.20.0 → janito-2.21.0}/janito/cli/core/event_logger.py +0 -0
  168. {janito-2.20.0 → janito-2.21.0}/janito/cli/core/getters.py +0 -0
  169. {janito-2.20.0 → janito-2.21.0}/janito/cli/core/model_guesser.py +0 -0
  170. {janito-2.20.0 → janito-2.21.0}/janito/cli/core/runner.py +0 -0
  171. {janito-2.20.0 → janito-2.21.0}/janito/cli/core/setters.py +0 -0
  172. {janito-2.20.0 → janito-2.21.0}/janito/cli/core/unsetters.py +0 -0
  173. {janito-2.20.0 → janito-2.21.0}/janito/cli/main.py +0 -0
  174. {janito-2.20.0 → janito-2.21.0}/janito/cli/main_cli.py +0 -0
  175. {janito-2.20.0 → janito-2.21.0}/janito/cli/prompt_core.py +0 -0
  176. {janito-2.20.0 → janito-2.21.0}/janito/cli/prompt_handler.py +0 -0
  177. {janito-2.20.0 → janito-2.21.0}/janito/cli/prompt_setup.py +0 -0
  178. {janito-2.20.0 → janito-2.21.0}/janito/cli/rich_terminal_reporter.py +0 -0
  179. {janito-2.20.0 → janito-2.21.0}/janito/cli/single_shot_mode/__init__.py +0 -0
  180. {janito-2.20.0 → janito-2.21.0}/janito/cli/single_shot_mode/handler.py +0 -0
  181. {janito-2.20.0 → janito-2.21.0}/janito/cli/utils.py +0 -0
  182. {janito-2.20.0 → janito-2.21.0}/janito/cli/verbose_output.py +0 -0
  183. {janito-2.20.0 → janito-2.21.0}/janito/config.py +0 -0
  184. {janito-2.20.0 → janito-2.21.0}/janito/config_manager.py +0 -0
  185. {janito-2.20.0 → janito-2.21.0}/janito/conversation_history.py +0 -0
  186. {janito-2.20.0 → janito-2.21.0}/janito/dir_walk_utils.py +0 -0
  187. {janito-2.20.0 → janito-2.21.0}/janito/driver_events.py +0 -0
  188. {janito-2.20.0 → janito-2.21.0}/janito/drivers/azure_openai/driver.py +0 -0
  189. {janito-2.20.0 → janito-2.21.0}/janito/drivers/cerebras/__init__.py +0 -0
  190. {janito-2.20.0 → janito-2.21.0}/janito/drivers/dashscope.bak.zip +0 -0
  191. {janito-2.20.0 → janito-2.21.0}/janito/drivers/openai/README.md +0 -0
  192. {janito-2.20.0 → janito-2.21.0}/janito/drivers/openai/driver.py +0 -0
  193. {janito-2.20.0 → janito-2.21.0}/janito/drivers/openai_responses.bak.zip +0 -0
  194. {janito-2.20.0 → janito-2.21.0}/janito/drivers/zai/__init__.py +0 -0
  195. {janito-2.20.0 → janito-2.21.0}/janito/drivers/zai/driver.py +0 -0
  196. {janito-2.20.0 → janito-2.21.0}/janito/event_bus/__init__.py +0 -0
  197. {janito-2.20.0 → janito-2.21.0}/janito/event_bus/bus.py +0 -0
  198. {janito-2.20.0 → janito-2.21.0}/janito/event_bus/event.py +0 -0
  199. {janito-2.20.0 → janito-2.21.0}/janito/event_bus/handler.py +0 -0
  200. {janito-2.20.0 → janito-2.21.0}/janito/event_bus/queue_bus.py +0 -0
  201. {janito-2.20.0 → janito-2.21.0}/janito/exceptions.py +0 -0
  202. {janito-2.20.0 → janito-2.21.0}/janito/formatting.py +0 -0
  203. {janito-2.20.0 → janito-2.21.0}/janito/formatting_token.py +0 -0
  204. {janito-2.20.0 → janito-2.21.0}/janito/gitignore_utils.py +0 -0
  205. {janito-2.20.0 → janito-2.21.0}/janito/i18n/__init__.py +0 -0
  206. {janito-2.20.0 → janito-2.21.0}/janito/i18n/it.py +0 -0
  207. {janito-2.20.0 → janito-2.21.0}/janito/i18n/messages.py +0 -0
  208. {janito-2.20.0 → janito-2.21.0}/janito/i18n/pt.py +0 -0
  209. {janito-2.20.0 → janito-2.21.0}/janito/llm/README.md +0 -0
  210. {janito-2.20.0 → janito-2.21.0}/janito/llm/__init__.py +0 -0
  211. {janito-2.20.0 → janito-2.21.0}/janito/llm/auth.py +0 -0
  212. {janito-2.20.0 → janito-2.21.0}/janito/llm/auth_utils.py +0 -0
  213. {janito-2.20.0 → janito-2.21.0}/janito/llm/driver.py +0 -0
  214. {janito-2.20.0 → janito-2.21.0}/janito/llm/driver_config.py +0 -0
  215. {janito-2.20.0 → janito-2.21.0}/janito/llm/driver_config_builder.py +0 -0
  216. {janito-2.20.0 → janito-2.21.0}/janito/llm/driver_input.py +0 -0
  217. {janito-2.20.0 → janito-2.21.0}/janito/llm/message_parts.py +0 -0
  218. {janito-2.20.0 → janito-2.21.0}/janito/llm/model.py +0 -0
  219. {janito-2.20.0 → janito-2.21.0}/janito/llm/provider.py +0 -0
  220. {janito-2.20.0 → janito-2.21.0}/janito/mkdocs.yml +0 -0
  221. {janito-2.20.0 → janito-2.21.0}/janito/perf_singleton.py +0 -0
  222. {janito-2.20.0 → janito-2.21.0}/janito/performance_collector.py +0 -0
  223. {janito-2.20.0 → janito-2.21.0}/janito/platform_discovery.py +0 -0
  224. {janito-2.20.0 → janito-2.21.0}/janito/provider_config.py +0 -0
  225. {janito-2.20.0 → janito-2.21.0}/janito/provider_registry.py +0 -0
  226. {janito-2.20.0 → janito-2.21.0}/janito/providers/alibaba/__init__.py +0 -0
  227. {janito-2.20.0 → janito-2.21.0}/janito/providers/alibaba/model_info.py +0 -0
  228. {janito-2.20.0 → janito-2.21.0}/janito/providers/alibaba/provider.py +0 -0
  229. {janito-2.20.0 → janito-2.21.0}/janito/providers/anthropic/model_info.py +0 -0
  230. {janito-2.20.0 → janito-2.21.0}/janito/providers/anthropic/provider.py +0 -0
  231. {janito-2.20.0 → janito-2.21.0}/janito/providers/azure_openai/model_info.py +0 -0
  232. {janito-2.20.0 → janito-2.21.0}/janito/providers/cerebras/__init__.py +0 -0
  233. {janito-2.20.0 → janito-2.21.0}/janito/providers/cerebras/model_info.py +0 -0
  234. {janito-2.20.0 → janito-2.21.0}/janito/providers/cerebras/provider.py +0 -0
  235. {janito-2.20.0 → janito-2.21.0}/janito/providers/dashscope.bak.zip +0 -0
  236. {janito-2.20.0 → janito-2.21.0}/janito/providers/deepseek/__init__.py +0 -0
  237. {janito-2.20.0 → janito-2.21.0}/janito/providers/deepseek/model_info.py +0 -0
  238. {janito-2.20.0 → janito-2.21.0}/janito/providers/deepseek/provider.py +0 -0
  239. {janito-2.20.0 → janito-2.21.0}/janito/providers/google/__init__.py +0 -0
  240. {janito-2.20.0 → janito-2.21.0}/janito/providers/google/model_info.py +0 -0
  241. {janito-2.20.0 → janito-2.21.0}/janito/providers/google/provider.py +0 -0
  242. {janito-2.20.0 → janito-2.21.0}/janito/providers/mistral/__init__.py +0 -0
  243. {janito-2.20.0 → janito-2.21.0}/janito/providers/mistral/model_info.py +0 -0
  244. {janito-2.20.0 → janito-2.21.0}/janito/providers/mistral/provider.py +0 -0
  245. {janito-2.20.0 → janito-2.21.0}/janito/providers/moonshotai/__init__.py +0 -0
  246. {janito-2.20.0 → janito-2.21.0}/janito/providers/moonshotai/model_info.py +0 -0
  247. {janito-2.20.0 → janito-2.21.0}/janito/providers/moonshotai/provider.py +0 -0
  248. {janito-2.20.0 → janito-2.21.0}/janito/providers/openai/__init__.py +0 -0
  249. {janito-2.20.0 → janito-2.21.0}/janito/providers/openai/model_info.py +0 -0
  250. {janito-2.20.0 → janito-2.21.0}/janito/providers/openai/provider.py +0 -0
  251. {janito-2.20.0 → janito-2.21.0}/janito/providers/openai/schema_generator.py +0 -0
  252. {janito-2.20.0 → janito-2.21.0}/janito/providers/registry.py +0 -0
  253. {janito-2.20.0 → janito-2.21.0}/janito/providers/zai/__init__.py +0 -0
  254. {janito-2.20.0 → janito-2.21.0}/janito/providers/zai/model_info.py +0 -0
  255. {janito-2.20.0 → janito-2.21.0}/janito/providers/zai/provider.py +0 -0
  256. {janito-2.20.0 → janito-2.21.0}/janito/providers/zai/schema_generator.py +0 -0
  257. {janito-2.20.0 → janito-2.21.0}/janito/regions/__init__.py +0 -0
  258. {janito-2.20.0 → janito-2.21.0}/janito/regions/cli.py +0 -0
  259. {janito-2.20.0 → janito-2.21.0}/janito/regions/geo_utils.py +0 -0
  260. {janito-2.20.0 → janito-2.21.0}/janito/regions/provider_regions.py +0 -0
  261. {janito-2.20.0 → janito-2.21.0}/janito/report_events.py +0 -0
  262. {janito-2.20.0 → janito-2.21.0}/janito/shell.bak.zip +0 -0
  263. {janito-2.20.0 → janito-2.21.0}/janito/tools/DOCSTRING_STANDARD.txt +0 -0
  264. {janito-2.20.0 → janito-2.21.0}/janito/tools/README.md +0 -0
  265. {janito-2.20.0 → janito-2.21.0}/janito/tools/__init__.py +0 -0
  266. {janito-2.20.0 → janito-2.21.0}/janito/tools/adapters/__init__.py +0 -0
  267. {janito-2.20.0 → janito-2.21.0}/janito/tools/adapters/local/__init__.py +0 -0
  268. {janito-2.20.0 → janito-2.21.0}/janito/tools/adapters/local/adapter.py +0 -0
  269. {janito-2.20.0 → janito-2.21.0}/janito/tools/adapters/local/ask_user.py +0 -0
  270. {janito-2.20.0 → janito-2.21.0}/janito/tools/adapters/local/copy_file.py +0 -0
  271. {janito-2.20.0 → janito-2.21.0}/janito/tools/adapters/local/create_directory.py +0 -0
  272. {janito-2.20.0 → janito-2.21.0}/janito/tools/adapters/local/create_file.py +0 -0
  273. {janito-2.20.0 → janito-2.21.0}/janito/tools/adapters/local/delete_text_in_file.py +0 -0
  274. {janito-2.20.0 → janito-2.21.0}/janito/tools/adapters/local/find_files.py +0 -0
  275. {janito-2.20.0 → janito-2.21.0}/janito/tools/adapters/local/get_file_outline/__init__.py +0 -0
  276. {janito-2.20.0 → janito-2.21.0}/janito/tools/adapters/local/get_file_outline/core.py +0 -0
  277. {janito-2.20.0 → janito-2.21.0}/janito/tools/adapters/local/get_file_outline/java_outline.py +0 -0
  278. {janito-2.20.0 → janito-2.21.0}/janito/tools/adapters/local/get_file_outline/markdown_outline.py +0 -0
  279. {janito-2.20.0 → janito-2.21.0}/janito/tools/adapters/local/get_file_outline/python_outline.py +0 -0
  280. {janito-2.20.0 → janito-2.21.0}/janito/tools/adapters/local/get_file_outline/search_outline.py +0 -0
  281. {janito-2.20.0 → janito-2.21.0}/janito/tools/adapters/local/move_file.py +0 -0
  282. {janito-2.20.0 → janito-2.21.0}/janito/tools/adapters/local/open_html_in_browser.py +0 -0
  283. {janito-2.20.0 → janito-2.21.0}/janito/tools/adapters/local/open_url.py +0 -0
  284. {janito-2.20.0 → janito-2.21.0}/janito/tools/adapters/local/python_code_run.py +0 -0
  285. {janito-2.20.0 → janito-2.21.0}/janito/tools/adapters/local/python_command_run.py +0 -0
  286. {janito-2.20.0 → janito-2.21.0}/janito/tools/adapters/local/python_file_run.py +0 -0
  287. {janito-2.20.0 → janito-2.21.0}/janito/tools/adapters/local/read_files.py +0 -0
  288. {janito-2.20.0 → janito-2.21.0}/janito/tools/adapters/local/remove_directory.py +0 -0
  289. {janito-2.20.0 → janito-2.21.0}/janito/tools/adapters/local/remove_file.py +0 -0
  290. {janito-2.20.0 → janito-2.21.0}/janito/tools/adapters/local/replace_text_in_file.py +0 -0
  291. {janito-2.20.0 → janito-2.21.0}/janito/tools/adapters/local/run_bash_command.py +0 -0
  292. {janito-2.20.0 → janito-2.21.0}/janito/tools/adapters/local/run_powershell_command.py +0 -0
  293. {janito-2.20.0 → janito-2.21.0}/janito/tools/adapters/local/search_text/__init__.py +0 -0
  294. {janito-2.20.0 → janito-2.21.0}/janito/tools/adapters/local/search_text/core.py +0 -0
  295. {janito-2.20.0 → janito-2.21.0}/janito/tools/adapters/local/search_text/match_lines.py +0 -0
  296. {janito-2.20.0 → janito-2.21.0}/janito/tools/adapters/local/search_text/pattern_utils.py +0 -0
  297. {janito-2.20.0 → janito-2.21.0}/janito/tools/adapters/local/search_text/traverse_directory.py +0 -0
  298. {janito-2.20.0 → janito-2.21.0}/janito/tools/adapters/local/validate_file_syntax/__init__.py +0 -0
  299. {janito-2.20.0 → janito-2.21.0}/janito/tools/adapters/local/validate_file_syntax/core.py +0 -0
  300. {janito-2.20.0 → janito-2.21.0}/janito/tools/adapters/local/validate_file_syntax/css_validator.py +0 -0
  301. {janito-2.20.0 → janito-2.21.0}/janito/tools/adapters/local/validate_file_syntax/html_validator.py +0 -0
  302. {janito-2.20.0 → janito-2.21.0}/janito/tools/adapters/local/validate_file_syntax/js_validator.py +0 -0
  303. {janito-2.20.0 → janito-2.21.0}/janito/tools/adapters/local/validate_file_syntax/json_validator.py +0 -0
  304. {janito-2.20.0 → janito-2.21.0}/janito/tools/adapters/local/validate_file_syntax/markdown_validator.py +0 -0
  305. {janito-2.20.0 → janito-2.21.0}/janito/tools/adapters/local/validate_file_syntax/ps1_validator.py +0 -0
  306. {janito-2.20.0 → janito-2.21.0}/janito/tools/adapters/local/validate_file_syntax/python_validator.py +0 -0
  307. {janito-2.20.0 → janito-2.21.0}/janito/tools/adapters/local/validate_file_syntax/xml_validator.py +0 -0
  308. {janito-2.20.0 → janito-2.21.0}/janito/tools/adapters/local/validate_file_syntax/yaml_validator.py +0 -0
  309. {janito-2.20.0 → janito-2.21.0}/janito/tools/adapters/local/view_file.py +0 -0
  310. {janito-2.20.0 → janito-2.21.0}/janito/tools/disabled_tools.py +0 -0
  311. {janito-2.20.0 → janito-2.21.0}/janito/tools/inspect_registry.py +0 -0
  312. {janito-2.20.0 → janito-2.21.0}/janito/tools/outline_file.bak.zip +0 -0
  313. {janito-2.20.0 → janito-2.21.0}/janito/tools/path_security.py +0 -0
  314. {janito-2.20.0 → janito-2.21.0}/janito/tools/permissions.py +0 -0
  315. {janito-2.20.0 → janito-2.21.0}/janito/tools/permissions_parse.py +0 -0
  316. {janito-2.20.0 → janito-2.21.0}/janito/tools/tool_base.py +0 -0
  317. {janito-2.20.0 → janito-2.21.0}/janito/tools/tool_events.py +0 -0
  318. {janito-2.20.0 → janito-2.21.0}/janito/tools/tool_run_exception.py +0 -0
  319. {janito-2.20.0 → janito-2.21.0}/janito/tools/tool_use_tracker.py +0 -0
  320. {janito-2.20.0 → janito-2.21.0}/janito/tools/tool_utils.py +0 -0
  321. {janito-2.20.0 → janito-2.21.0}/janito/tools/tools_adapter.py +0 -0
  322. {janito-2.20.0 → janito-2.21.0}/janito/tools/tools_schema.py +0 -0
  323. {janito-2.20.0 → janito-2.21.0}/janito/utils.py +0 -0
  324. {janito-2.20.0 → janito-2.21.0}/janito.egg-info/dependency_links.txt +0 -0
  325. {janito-2.20.0 → janito-2.21.0}/janito.egg-info/entry_points.txt +0 -0
  326. {janito-2.20.0 → janito-2.21.0}/janito.egg-info/requires.txt +0 -0
  327. {janito-2.20.0 → janito-2.21.0}/janito.egg-info/top_level.txt +0 -0
  328. {janito-2.20.0 → janito-2.21.0}/mkdocs.yml +0 -0
  329. {janito-2.20.0 → janito-2.21.0}/mkdocs_hooks.py +0 -0
  330. {janito-2.20.0 → janito-2.21.0}/pyproject.toml +0 -0
  331. {janito-2.20.0 → janito-2.21.0}/pytest.ini +0 -0
  332. {janito-2.20.0 → janito-2.21.0}/requirements-dev.txt +0 -0
  333. {janito-2.20.0 → janito-2.21.0}/requirements.txt +0 -0
  334. {janito-2.20.0 → janito-2.21.0}/setup.cfg +0 -0
  335. {janito-2.20.0 → janito-2.21.0}/tests/adapters/local/get_file_outline/test_core_outline.py +0 -0
  336. {janito-2.20.0 → janito-2.21.0}/tests/adapters/local/test_read_files.py +0 -0
  337. {janito-2.20.0 → janito-2.21.0}/tests/test_cli_list_models.py +0 -0
  338. {janito-2.20.0 → janito-2.21.0}/tests/test_cli_list_providers.py +0 -0
  339. {janito-2.20.0 → janito-2.21.0}/tests/test_cli_list_providers_alibaba.py +0 -0
  340. {janito-2.20.0 → janito-2.21.0}/tests/test_cli_list_providers_moonshotai.py +0 -0
  341. {janito-2.20.0 → janito-2.21.0}/tests/test_cli_version.py +0 -0
  342. {janito-2.20.0 → janito-2.21.0}/tests/test_disabled_tools.py +0 -0
  343. {janito-2.20.0 → janito-2.21.0}/tests/test_provider_alibaba.py +0 -0
  344. {janito-2.20.0 → janito-2.21.0}/tests/test_provider_cerebras.py +0 -0
  345. {janito-2.20.0 → janito-2.21.0}/tests/test_provider_moonshotai.py +0 -0
  346. {janito-2.20.0 → janito-2.21.0}/tools/release.py +0 -0
  347. {janito-2.20.0 → janito-2.21.0}/tox.ini +0 -0
@@ -1,346 +1,346 @@
1
- # Changelog
2
-
3
- All notable changes to this project will be documented in this file.
4
-
5
- ## [2.20.0] - 2025-08-10
6
-
7
- ### Added
8
-
9
- - **Mistral AI Provider**: Added complete support for Mistral AI models
10
- - **General Purpose Models**:
11
- - `mistral-large-latest`: 128k context, most capable model (default)
12
- - `mistral-medium-latest`: 32k context, balanced performance
13
- - `mistral-small-latest`: 32k context, compact and efficient
14
- - **Code-Focused Models**:
15
- - `codestral-latest`: 256k context, specialized for code generation
16
- - `codestral-2405`: Previous version of code-focused model
17
- - **Development-Focused Models**:
18
- - `devstral-small-latest`: 128k context, optimized for agentic tool use
19
- - `devstral-medium-latest`: 128k context, enhanced agentic capabilities
20
- - **Mistral Setup Guide**: Comprehensive documentation for Mistral AI integration
21
- - **Tool Support**: Full tool/function calling support across all Mistral models
22
- - **API Integration**: Uses OpenAI-compatible API format via Mistral's La Plateforme
23
-
24
- ## [2.19.0] - 2025-08-08
25
-
26
- ### Added
27
-
28
- - **Alibaba Cloud Provider**: Added support for new Qwen3 1M context models
29
- - `qwen3-235b-a22b-thinking-2507`: 1M context thinking model
30
- - `qwen3-235b-a22b-instruct-2507`: 1M context instruct model
31
- - `qwen3-30b-a3b-thinking-2507`: 1M context thinking model
32
- - `qwen3-30b-a3b-instruct-2507`: 1M context instruct model
33
- - **Thinking Mode Support**: Added thinking mode indicators (📖) for models that support chain-of-thought reasoning
34
- - **Default Model Highlighting**: Added star (⭐) indicators to highlight default models in provider listings
35
- - **Provider Connectivity Testing**: Added `--ping` flag to test connectivity with all providers when used with `--list-providers`
36
- - **Enhanced Model Display**: Improved model listing with better formatting of context sizes and response limits
37
-
38
- ### Changed
39
-
40
- - **Alibaba Cloud Provider**: Updated default model from `qwen3-coder-plus` to `qwen3-235b-a22b-instruct-2507` (129k context)
41
- - **Model Information**: Added thinking mode support tracking in LLMModelInfo class
42
- - **Documentation**: Updated Alibaba setup guide with comprehensive configuration instructions
43
-
44
- ## [2.18.0] - 2025-08-07
45
-
46
- ### Added
47
-
48
- - Added OpenAI GPT-5 models (gpt-5, gpt-5-mini, gpt-5-nano) and set default model to gpt-5
49
- - Chat session: improved backend hostname detection
50
- - Cleaned up test file
51
-
52
- ## [2.17.0] - 2025-08-05
53
-
54
- ### Added
55
-
56
- - **New Provider Support**
57
- - **Cerebras Provider**: Added complete support for Cerebras with qwen-3-coder-480b model
58
- - qwen-3-coder-480b: 32k context, reasoning-focused model with function calling support
59
-
60
- - **Enhanced UX**
61
- - Improved error handling for invalid provider names in set-api-key command
62
- - Better error messages when provider is not found
63
-
64
- ### Changed
65
-
66
- - **Provider Improvements**
67
- - Updated Alibaba endpoint to international URL for better global access
68
- - Simplified region display to 2-letter codes for cleaner output
69
- - Improved driver listing and region display functionality
70
-
71
- - **Zero Mode Enhancement**
72
- - Zero mode now properly disables system prompt and tools for minimal interaction
73
-
74
- ### Fixed
75
-
76
- - **Bug Fixes**
77
- - Added missing tools adapter to Cerebras provider
78
- - Improved error handling for invalid provider names in set-api-key command
79
-
80
- ## [2.16.0] - 2025-01-08
81
-
82
- ### Added
83
-
84
- - **New CLI Features**
85
- - `--python` flag: Start directly with Python developer profile without manual selection
86
- - `--multi` option: Enable default multiline input in chat mode
87
- - `--list-drivers` command: List available LLM drivers and their dependencies
88
- - `--list-providers-region` command: Show providers with region information
89
-
90
- - **New Providers**
91
- - **Z.AI Provider**: Complete support for Z.AI with GLM-4.5, GLM-4, and GLM-4V models
92
- - GLM-4.5: 128k context with thinking support for advanced reasoning
93
- - GLM-4: General-purpose model with 128k context
94
- - GLM-4V: Vision model for image understanding with 128k context
95
- - **Alibaba Cloud Provider**: Support for Qwen models including qwen-turbo, qwen-plus, qwen-max, and qwen3-coder-plus
96
-
97
- - **Enhanced UX**
98
- - Model information display now includes backend hostname in both chat and single-shot modes
99
- - Improved region management with geolocation utilities
100
- - Enhanced error handling for missing API keys and dependencies
101
-
102
- ### Changed
103
-
104
- - **Provider Improvements**
105
- - Updated Z.AI provider to use official SDK with improved model support
106
- - Changed default GLM model from air to regular version
107
- - Updated Alibaba endpoint to international URL for better global access
108
- - Simplified region display to 2-letter codes for cleaner output
109
-
110
- - **Documentation**
111
- - Updated documentation URLs to use GitHub Pages default domain
112
- - Fixed documentation URL to docs.janito.dev
113
- - Enhanced provider documentation with new Z.AI and Alibaba Cloud details
114
-
115
- ### Fixed
116
-
117
- - **Bug Fixes**
118
- - Fixed AttributeError when ZAIProvider API key is missing
119
- - Removed accidentally committed test files
120
- - Improved error handling and user experience in profile selection
121
- - Fixed various import order issues for better code organization
122
-
123
- - **Code Quality**
124
- - Refactored provider registry for reduced complexity
125
- - Improved CLI argument handling and validation
126
- - Enhanced terminal output styling and formatting
127
-
128
- ### Security
129
-
130
- - **Enhanced Security**
131
- - Improved privilege checking and status display in chat sessions
132
- - Enhanced error handling for missing dependencies and API keys
133
- - Better validation of provider configurations
134
-
135
- ### Technical Improvements
136
-
137
- - **Architecture**
138
- - Refactored core CLI and runner modules for better maintainability
139
- - Improved prompt handling and streamlined main CLI logic
140
- - Enhanced provider registry with new visual indicators
141
- - Better separation of concerns in driver and provider implementations
142
-
143
- - **Performance**
144
- - Optimized model information retrieval
145
- - Improved startup performance with better configuration handling
146
- - Enhanced memory usage in chat sessions
147
-
148
- ### Developer Experience
149
-
150
- - **Testing**
151
- - Added comprehensive tests for new CLI commands
152
- - Improved test coverage for provider configurations
153
- - Enhanced error handling in test scenarios
154
-
155
- - **Documentation**
156
- - Updated all provider documentation with new features
157
- - Added comprehensive setup guides for new providers
158
- - Improved CLI usage examples and syntax highlighting
159
-
160
- ## [2.15.0] - 2025-08-05
161
-
162
- ## [2.16.0] - 2025-01-08
163
-
164
- ### Added
165
-
166
- - Added `--python` CLI flag to start with the Python developer profile without manual profile selection
167
- - Added `--list-drivers` CLI command to list available LLM drivers and their dependencies
168
- - Added `--multi` CLI option for default multiline input in chat mode
169
- - Enhanced model information display with backend hostname in both chat and single-shot modes
170
-
171
- ### Changed
172
-
173
- - Updated Z.AI provider to use official SDK with improved model support
174
- - Changed default GLM model from air to regular version
175
- - Updated documentation URLs to use GitHub Pages default domain
176
-
177
- ### Fixed
178
-
179
- - Fixed AttributeError when ZAIProvider API key is missing
180
- - Removed accidentally committed test files
181
- - Improved error handling and user experience in profile selection
182
-
183
- ### Security
184
-
185
- - Enhanced privilege checking and status display in chat sessions
186
-
187
- ## [2.15.0] - 2025-08-05
188
-
189
- ### Added
190
-
191
- - **Z.AI Provider**: Added complete support for Z.AI with GLM-4.5, GLM-4, and GLM-4V models
192
- - GLM-4.5: 128k context with thinking support for advanced reasoning
193
- - GLM-4: General-purpose model with 128k context
194
- - GLM-4V: Vision model for image understanding with 128k context
195
- - **Alibaba Cloud Provider**: Added support for Alibaba Cloud's Qwen models
196
- - qwen-turbo, qwen-plus, qwen-max, and qwen3-coder-plus models
197
- - Updated supported providers documentation to include new Z.AI and Alibaba Cloud providers
198
-
199
- ### Changed
200
-
201
- - Enhanced provider registry with new visual indicators and improved model listing
202
- - Updated documentation to reflect new provider additions and model availability
203
-
204
- ### Removed
205
-
206
- - Removed deprecated PROVIDERS.md file from janito/docs (content merged into supported-providers-models.md)
207
-
208
- ## [2.9.0] - 2025-07-16
209
- ### Added
210
- - Added new `kimi-k2-turbo-preview` model to MoonshotAI provider
211
- - Added visual indicators for default models in provider registry with star icons
212
-
213
- ### Changed
214
- - Updated default MoonshotAI model from `kimi-k2-0711-preview` to `kimi-k2-turbo-preview`
215
- - Updated all documentation to reflect new MoonshotAI model names and recommendations
216
- - Updated project URLs, author email, and documentation for migration to ikignosis organization
217
- - Updated repository links in documentation and configuration files to point to ikignosis GitHub organization
218
- - Changed maintainer email in provider modules to janito@ikignosis.org
219
- - Updated homepage and repo_url in pyproject.toml and mkdocs.yml to new organization URLs
220
-
221
- ### Fixed
222
- - Fixed duplicate entries in supported providers documentation
223
- - Fixed formatting in CLI command and privilege status modules
224
-
225
- ## [2.8.0] - 2025-07-16
226
- ### Added
227
- - **Parallel tool calls**: Enabled for OpenAI provider when tools are available.
228
- - **No-tools mode**: New CLI option to disable all tool usage.
229
- - **Disabled tools functionality**: Support for selectively disabling specific tools.
230
-
231
- ### Changed
232
- - **Configuration system**: Simplified by removing provider-specific settings.
233
- - **Max wait time**: Increased from 300s to 600s in LLMAgent for better handling of long-running operations.
234
- - **Custom system prompt UX**: Improved profile selection flow and user experience.
235
- - **OpenAI dependency**: Updated to require openai>=1.68.0.
236
- - **Code formatting**: Applied black formatting across the codebase.
237
-
238
- ### Removed
239
- - **MistralAI provider**: Completely removed from the codebase.
240
- - **Provider-specific settings**: Simplified configuration system.
241
-
242
- ### Documentation
243
- - Updated MoonshotAI setup guide with platform.moonshot.ai domain.
244
- - Improved CLI usage documentation and fixed syntax highlighting.
245
- - Removed broken references to model_info.py files in supported-providers-models.md.
246
- - Added comprehensive documentation updates across the project.
247
-
248
- ## [2.5.0] - 2025-07-01
249
- ### Added
250
- - Show working directory in chat mode startup message.
251
- - Bang (`!`) shell command handler for direct shell access from the chat interface.
252
- - Elapsed time reporting to token usage summary and improved terminal output styling.
253
- - CLI support for reading prompt from stdin and suppressing token usage summary in non-interactive mode.
254
-
255
- ### Changed
256
- - Import `os` in help command handler for future extensibility.
257
- - Refactored `ChatSession._chat_loop` to reduce complexity by extracting command and prompt handling methods.
258
- - Refactored profile selection, removed `ProfileShellHandler`, and improved terminal reporter output for STDOUT/STDERR.
259
- - Refactored to remove `exec_enabled` argument from agent and CLI setup; now uses `args.exec` directly.
260
- - Improved terminal output: added `delete_current_line` to `RichTerminalReporter` for cleaner UI.
261
- - Refactored and cleaned up: removed redundant import of `handle_command`, removed backup, structure, and test strategy files, and added `.vscode/settings.json` for VSCode excludes.
262
-
263
- ### Removed
264
- - MistralAI provider and driver references and related files.
265
- - Conversation history persistence and updated input history path.
266
-
267
- ### Documentation
268
- - Removed inline web file viewer documentation from `README.md` for clarity and focus on core options.
269
-
270
- ## [2.4.0]
271
-
272
- ### Changed
273
- - Refactored tool permission management: migrated to a permission-based model (read/write/execute), updated CLI and docs, removed legacy execution toggling.
274
- - Enhanced tool permissions: tools are now grouped by permission, config supports tool_permissions, ask_user is read-only, and permissions are applied at startup.
275
- - Refined permission and tool output messages in shell commands; improved tool listing by permission class in tools.py.
276
- - Refactored agent and prompt handler setup, improved model switching, and enhanced user interrupt handling. Includes new /model shell command and fixes for provider registry ASCII fallback.
277
- - Refactored agent system prompt and permissions logic, switched to profile-based template selection, removed unused templates, and added --profile CLI support.
278
- - Refactored chat mode startup messages and permission reset handling for improved clarity.
279
- - Refactored ChatSession and ChatShellState: removed allow_execution logic and related assignments, use exec_enabled directly for execution control.
280
- - Refactored tool system to use latest git tag for version detection in release script.
281
- - Refined release script to recommend creating a new git tag if version exists on PyPI.
282
- - Removed termweb: web file viewer and related CLI/editor features, updated docs and config accordingly.
283
- - Removed temporary file x.txt.
284
- - Restored tool permissions to CLI defaults on /restart; store and retrieve default tool permissions in AllowedPermissionsState. Runner now sets and saves default permissions for restoration. Updated conversation_restart to restore or fallback to all-off permissions.
285
- - Updated disabled execution tools message for clarity.
286
- - Docs and UX: clarified permissions (read/write/exec), added profiles doc links, and removed localhost references from UI/toolbar.
287
-
288
- ### Added
289
- - Agent/driver: drain driver's input queue before sending new messages in chat() to prevent stale DriverInput processing.
290
-
291
- ### Fixed
292
- - Ensure tools adapter is always available in provider classes, even if driver is missing. Prevents AttributeError in generic code paths relying on execute_tool().
293
-
294
- ## [2.3.1] - 2025-06-25
295
- ### Changed
296
- - Bumped version to 2.3.1 in `version.py`, `pyproject.toml`, and `__init__.py`.
297
-
298
- ## [2.3.0] - 2025-06-25
299
- ### Added
300
- - requirements-dev.txt with development dependencies (pytest, pre-commit, ruff, detect-secrets, codespell, black) for code quality and testing
301
- - Java outline support to get_file_outline tool, including package-private methods
302
- - create_driver method to AzureOpenAIProvider for driver instantiation
303
- - CLI --version test and suppress pytest-asyncio deprecation warning
304
- - New dependencies: prompt_toolkit, lxml, requests, bs4 to requirements.txt
305
-
306
- ### Changed
307
- - Improved error messages and documentation
308
- - Refined error handling in open_html_in_browser.py and open_url.py
309
- - Refactor remove_file tool: use ReportAction.DELETE for all file removal actions
310
- - Remove redundant _prepare_api_kwargs override in AzureOpenAIModelDriver
311
- - Refactor(azure_openai): use 'model' directly in API kwargs, remove deployment_name remapping
312
- - Add public read-only driver_config property to AzureOpenAIProvider
313
- - Add _prepare_api_kwargs to support deployment_name for Azure OpenAI API compatibility
314
- - Update toolbar bindings: add CTRL-C for interrupt/exit, clarify F1 usage
315
- - Update pyproject.toml optional-dependencies section for setuptools compatibility
316
- - Remove references to max_results in FindFilesTool docstring
317
- - Refactor: use .jsonl extension for input history files instead of .log
318
- - Refactor get_file_outline core logic to remove duplication and add tests
319
- - Test CLI: Ensure error on missing provider and validate supported models output for each provider
320
- - Configure dynamic dependencies in pyproject.toml
321
- - Define dependencies in requirements.txt: attrs, rich, pathspec, setuptools, pyyaml, jinja2
322
- - Add workdir support to LocalToolsAdapter and CLI; improve Python tool adapters
323
- - Friendly error message when the provider is not present from the available ones
324
-
325
- ### Fixed
326
- - Ensure error on missing provider and validate supported models output for each provider
327
- - Update supported models table; remove o4-mini-high model from code and docs
328
-
329
- ## [2.1.1] - 2024-06-23
330
- ### Changed
331
- - Bumped version to 2.1.1 in `version.py`, `pyproject.toml`, and `__init__.py`.
332
- - docs: add DeepSeek setup guide, update navigation and references
333
- - Add docs/deepseek-setup.md with setup instructions for DeepSeek provider
334
- - Link DeepSeek setup in docs/index.md and mkdocs.yml navigation
335
- - Fix model name: change 'deepseek-coder' to 'deepseek-reasoner' in DeepSeek provider and model_info
336
- - Update DeepSeek provider docstrings and options to match supported models
337
-
338
- ## [2.1.0] - 2024-06-09
339
- ### Added
340
-
341
- ### Changed
342
- - Bumped version to 2.1.0 in `version.py`, `pyproject.toml`, and `__init__.py`.
343
-
344
- ---
345
-
346
- *Older changes may not be listed.*
1
+ # Changelog
2
+
3
+ All notable changes to this project will be documented in this file.
4
+
5
+ ## [2.20.0] - 2025-08-10
6
+
7
+ ### Added
8
+
9
+ - **Mistral AI Provider**: Added complete support for Mistral AI models
10
+ - **General Purpose Models**:
11
+ - `mistral-large-latest`: 128k context, most capable model (default)
12
+ - `mistral-medium-latest`: 32k context, balanced performance
13
+ - `mistral-small-latest`: 32k context, compact and efficient
14
+ - **Code-Focused Models**:
15
+ - `codestral-latest`: 256k context, specialized for code generation
16
+ - `codestral-2405`: Previous version of code-focused model
17
+ - **Development-Focused Models**:
18
+ - `devstral-small-latest`: 128k context, optimized for agentic tool use
19
+ - `devstral-medium-latest`: 128k context, enhanced agentic capabilities
20
+ - **Mistral Setup Guide**: Comprehensive documentation for Mistral AI integration
21
+ - **Tool Support**: Full tool/function calling support across all Mistral models
22
+ - **API Integration**: Uses OpenAI-compatible API format via Mistral's La Plateforme
23
+
24
+ ## [2.19.0] - 2025-08-08
25
+
26
+ ### Added
27
+
28
+ - **Alibaba Cloud Provider**: Added support for new Qwen3 1M context models
29
+ - `qwen3-235b-a22b-thinking-2507`: 1M context thinking model
30
+ - `qwen3-235b-a22b-instruct-2507`: 1M context instruct model
31
+ - `qwen3-30b-a3b-thinking-2507`: 1M context thinking model
32
+ - `qwen3-30b-a3b-instruct-2507`: 1M context instruct model
33
+ - **Thinking Mode Support**: Added thinking mode indicators (📖) for models that support chain-of-thought reasoning
34
+ - **Default Model Highlighting**: Added star (⭐) indicators to highlight default models in provider listings
35
+ - **Provider Connectivity Testing**: Added `--ping` flag to test connectivity with all providers when used with `--list-providers`
36
+ - **Enhanced Model Display**: Improved model listing with better formatting of context sizes and response limits
37
+
38
+ ### Changed
39
+
40
+ - **Alibaba Cloud Provider**: Updated default model from `qwen3-coder-plus` to `qwen3-235b-a22b-instruct-2507` (129k context)
41
+ - **Model Information**: Added thinking mode support tracking in LLMModelInfo class
42
+ - **Documentation**: Updated Alibaba setup guide with comprehensive configuration instructions
43
+
44
+ ## [2.18.0] - 2025-08-07
45
+
46
+ ### Added
47
+
48
+ - Added OpenAI GPT-5 models (gpt-5, gpt-5-mini, gpt-5-nano) and set default model to gpt-5
49
+ - Chat session: improved backend hostname detection
50
+ - Cleaned up test file
51
+
52
+ ## [2.17.0] - 2025-08-05
53
+
54
+ ### Added
55
+
56
+ - **New Provider Support**
57
+ - **Cerebras Provider**: Added complete support for Cerebras with qwen-3-coder-480b model
58
+ - qwen-3-coder-480b: 32k context, reasoning-focused model with function calling support
59
+
60
+ - **Enhanced UX**
61
+ - Improved error handling for invalid provider names in set-api-key command
62
+ - Better error messages when provider is not found
63
+
64
+ ### Changed
65
+
66
+ - **Provider Improvements**
67
+ - Updated Alibaba endpoint to international URL for better global access
68
+ - Simplified region display to 2-letter codes for cleaner output
69
+ - Improved driver listing and region display functionality
70
+
71
+ - **Zero Mode Enhancement**
72
+ - Zero mode now properly disables system prompt and tools for minimal interaction
73
+
74
+ ### Fixed
75
+
76
+ - **Bug Fixes**
77
+ - Added missing tools adapter to Cerebras provider
78
+ - Improved error handling for invalid provider names in set-api-key command
79
+
80
+ ## [2.16.0] - 2025-01-08
81
+
82
+ ### Added
83
+
84
+ - **New CLI Features**
85
+ - `--python` flag: Start directly with Python developer profile without manual selection
86
+ - `--multi` option: Enable default multiline input in chat mode
87
+ - `--list-drivers` command: List available LLM drivers and their dependencies
88
+ - `--list-providers-region` command: Show providers with region information
89
+
90
+ - **New Providers**
91
+ - **Z.AI Provider**: Complete support for Z.AI with GLM-4.5, GLM-4, and GLM-4V models
92
+ - GLM-4.5: 128k context with thinking support for advanced reasoning
93
+ - GLM-4: General-purpose model with 128k context
94
+ - GLM-4V: Vision model for image understanding with 128k context
95
+ - **Alibaba Cloud Provider**: Support for Qwen models including qwen-turbo, qwen-plus, qwen-max, and qwen3-coder-plus
96
+
97
+ - **Enhanced UX**
98
+ - Model information display now includes backend hostname in both chat and single-shot modes
99
+ - Improved region management with geolocation utilities
100
+ - Enhanced error handling for missing API keys and dependencies
101
+
102
+ ### Changed
103
+
104
+ - **Provider Improvements**
105
+ - Updated Z.AI provider to use official SDK with improved model support
106
+ - Changed default GLM model from air to regular version
107
+ - Updated Alibaba endpoint to international URL for better global access
108
+ - Simplified region display to 2-letter codes for cleaner output
109
+
110
+ - **Documentation**
111
+ - Updated documentation URLs to use GitHub Pages default domain
112
+ - Fixed documentation URL to docs.janito.dev
113
+ - Enhanced provider documentation with new Z.AI and Alibaba Cloud details
114
+
115
+ ### Fixed
116
+
117
+ - **Bug Fixes**
118
+ - Fixed AttributeError when ZAIProvider API key is missing
119
+ - Removed accidentally committed test files
120
+ - Improved error handling and user experience in profile selection
121
+ - Fixed various import order issues for better code organization
122
+
123
+ - **Code Quality**
124
+ - Refactored provider registry for reduced complexity
125
+ - Improved CLI argument handling and validation
126
+ - Enhanced terminal output styling and formatting
127
+
128
+ ### Security
129
+
130
+ - **Enhanced Security**
131
+ - Improved privilege checking and status display in chat sessions
132
+ - Enhanced error handling for missing dependencies and API keys
133
+ - Better validation of provider configurations
134
+
135
+ ### Technical Improvements
136
+
137
+ - **Architecture**
138
+ - Refactored core CLI and runner modules for better maintainability
139
+ - Improved prompt handling and streamlined main CLI logic
140
+ - Enhanced provider registry with new visual indicators
141
+ - Better separation of concerns in driver and provider implementations
142
+
143
+ - **Performance**
144
+ - Optimized model information retrieval
145
+ - Improved startup performance with better configuration handling
146
+ - Enhanced memory usage in chat sessions
147
+
148
+ ### Developer Experience
149
+
150
+ - **Testing**
151
+ - Added comprehensive tests for new CLI commands
152
+ - Improved test coverage for provider configurations
153
+ - Enhanced error handling in test scenarios
154
+
155
+ - **Documentation**
156
+ - Updated all provider documentation with new features
157
+ - Added comprehensive setup guides for new providers
158
+ - Improved CLI usage examples and syntax highlighting
159
+
160
+ ## [2.15.0] - 2025-08-05
161
+
162
+ ## [2.16.0] - 2025-01-08
163
+
164
+ ### Added
165
+
166
+ - Added `--python` CLI flag to start with the Python developer profile without manual profile selection
167
+ - Added `--list-drivers` CLI command to list available LLM drivers and their dependencies
168
+ - Added `--multi` CLI option for default multiline input in chat mode
169
+ - Enhanced model information display with backend hostname in both chat and single-shot modes
170
+
171
+ ### Changed
172
+
173
+ - Updated Z.AI provider to use official SDK with improved model support
174
+ - Changed default GLM model from air to regular version
175
+ - Updated documentation URLs to use GitHub Pages default domain
176
+
177
+ ### Fixed
178
+
179
+ - Fixed AttributeError when ZAIProvider API key is missing
180
+ - Removed accidentally committed test files
181
+ - Improved error handling and user experience in profile selection
182
+
183
+ ### Security
184
+
185
+ - Enhanced privilege checking and status display in chat sessions
186
+
187
+ ## [2.15.0] - 2025-08-05
188
+
189
+ ### Added
190
+
191
+ - **Z.AI Provider**: Added complete support for Z.AI with GLM-4.5, GLM-4, and GLM-4V models
192
+ - GLM-4.5: 128k context with thinking support for advanced reasoning
193
+ - GLM-4: General-purpose model with 128k context
194
+ - GLM-4V: Vision model for image understanding with 128k context
195
+ - **Alibaba Cloud Provider**: Added support for Alibaba Cloud's Qwen models
196
+ - qwen-turbo, qwen-plus, qwen-max, and qwen3-coder-plus models
197
+ - Updated supported providers documentation to include new Z.AI and Alibaba Cloud providers
198
+
199
+ ### Changed
200
+
201
+ - Enhanced provider registry with new visual indicators and improved model listing
202
+ - Updated documentation to reflect new provider additions and model availability
203
+
204
+ ### Removed
205
+
206
+ - Removed deprecated PROVIDERS.md file from janito/docs (content merged into supported-providers-models.md)
207
+
208
+ ## [2.9.0] - 2025-07-16
209
+ ### Added
210
+ - Added new `kimi-k2-turbo-preview` model to MoonshotAI provider
211
+ - Added visual indicators for default models in provider registry with star icons
212
+
213
+ ### Changed
214
+ - Updated default MoonshotAI model from `kimi-k2-0711-preview` to `kimi-k2-turbo-preview`
215
+ - Updated all documentation to reflect new MoonshotAI model names and recommendations
216
+ - Updated project URLs, author email, and documentation for migration to ikignosis organization
217
+ - Updated repository links in documentation and configuration files to point to ikignosis GitHub organization
218
+ - Changed maintainer email in provider modules to janito@ikignosis.org
219
+ - Updated homepage and repo_url in pyproject.toml and mkdocs.yml to new organization URLs
220
+
221
+ ### Fixed
222
+ - Fixed duplicate entries in supported providers documentation
223
+ - Fixed formatting in CLI command and privilege status modules
224
+
225
+ ## [2.8.0] - 2025-07-16
226
+ ### Added
227
+ - **Parallel tool calls**: Enabled for OpenAI provider when tools are available.
228
+ - **No-tools mode**: New CLI option to disable all tool usage.
229
+ - **Disabled tools functionality**: Support for selectively disabling specific tools.
230
+
231
+ ### Changed
232
+ - **Configuration system**: Simplified by removing provider-specific settings.
233
+ - **Max wait time**: Increased from 300s to 600s in LLMAgent for better handling of long-running operations.
234
+ - **Custom system prompt UX**: Improved profile selection flow and user experience.
235
+ - **OpenAI dependency**: Updated to require openai>=1.68.0.
236
+ - **Code formatting**: Applied black formatting across the codebase.
237
+
238
+ ### Removed
239
+ - **MistralAI provider**: Completely removed from the codebase.
240
+ - **Provider-specific settings**: Simplified configuration system.
241
+
242
+ ### Documentation
243
+ - Updated MoonshotAI setup guide with platform.moonshot.ai domain.
244
+ - Improved CLI usage documentation and fixed syntax highlighting.
245
+ - Removed broken references to model_info.py files in supported-providers-models.md.
246
+ - Added comprehensive documentation updates across the project.
247
+
248
+ ## [2.5.0] - 2025-07-01
249
+ ### Added
250
+ - Show working directory in chat mode startup message.
251
+ - Bang (`!`) shell command handler for direct shell access from the chat interface.
252
+ - Elapsed time reporting to token usage summary and improved terminal output styling.
253
+ - CLI support for reading prompt from stdin and suppressing token usage summary in non-interactive mode.
254
+
255
+ ### Changed
256
+ - Import `os` in help command handler for future extensibility.
257
+ - Refactored `ChatSession._chat_loop` to reduce complexity by extracting command and prompt handling methods.
258
+ - Refactored profile selection, removed `ProfileShellHandler`, and improved terminal reporter output for STDOUT/STDERR.
259
+ - Refactored to remove `exec_enabled` argument from agent and CLI setup; now uses `args.exec` directly.
260
+ - Improved terminal output: added `delete_current_line` to `RichTerminalReporter` for cleaner UI.
261
+ - Refactored and cleaned up: removed redundant import of `handle_command`, removed backup, structure, and test strategy files, and added `.vscode/settings.json` for VSCode excludes.
262
+
263
+ ### Removed
264
+ - MistralAI provider and driver references and related files.
265
+ - Conversation history persistence and updated input history path.
266
+
267
+ ### Documentation
268
+ - Removed inline web file viewer documentation from `README.md` for clarity and focus on core options.
269
+
270
+ ## [2.4.0]
271
+
272
+ ### Changed
273
+ - Refactored tool permission management: migrated to a permission-based model (read/write/execute), updated CLI and docs, removed legacy execution toggling.
274
+ - Enhanced tool permissions: tools are now grouped by permission, config supports tool_permissions, ask_user is read-only, and permissions are applied at startup.
275
+ - Refined permission and tool output messages in shell commands; improved tool listing by permission class in tools.py.
276
+ - Refactored agent and prompt handler setup, improved model switching, and enhanced user interrupt handling. Includes new /model shell command and fixes for provider registry ASCII fallback.
277
+ - Refactored agent system prompt and permissions logic, switched to profile-based template selection, removed unused templates, and added --profile CLI support.
278
+ - Refactored chat mode startup messages and permission reset handling for improved clarity.
279
+ - Refactored ChatSession and ChatShellState: removed allow_execution logic and related assignments, use exec_enabled directly for execution control.
280
+ - Refactored tool system to use latest git tag for version detection in release script.
281
+ - Refined release script to recommend creating a new git tag if version exists on PyPI.
282
+ - Removed termweb: web file viewer and related CLI/editor features, updated docs and config accordingly.
283
+ - Removed temporary file x.txt.
284
+ - Restored tool permissions to CLI defaults on /restart; store and retrieve default tool permissions in AllowedPermissionsState. Runner now sets and saves default permissions for restoration. Updated conversation_restart to restore or fallback to all-off permissions.
285
+ - Updated disabled execution tools message for clarity.
286
+ - Docs and UX: clarified permissions (read/write/exec), added profiles doc links, and removed localhost references from UI/toolbar.
287
+
288
+ ### Added
289
+ - Agent/driver: drain driver's input queue before sending new messages in chat() to prevent stale DriverInput processing.
290
+
291
+ ### Fixed
292
+ - Ensure tools adapter is always available in provider classes, even if driver is missing. Prevents AttributeError in generic code paths relying on execute_tool().
293
+
294
+ ## [2.3.1] - 2025-06-25
295
+ ### Changed
296
+ - Bumped version to 2.3.1 in `version.py`, `pyproject.toml`, and `__init__.py`.
297
+
298
+ ## [2.3.0] - 2025-06-25
299
+ ### Added
300
+ - requirements-dev.txt with development dependencies (pytest, pre-commit, ruff, detect-secrets, codespell, black) for code quality and testing
301
+ - Java outline support to get_file_outline tool, including package-private methods
302
+ - create_driver method to AzureOpenAIProvider for driver instantiation
303
+ - CLI --version test and suppress pytest-asyncio deprecation warning
304
+ - New dependencies: prompt_toolkit, lxml, requests, bs4 to requirements.txt
305
+
306
+ ### Changed
307
+ - Improved error messages and documentation
308
+ - Refined error handling in open_html_in_browser.py and open_url.py
309
+ - Refactor remove_file tool: use ReportAction.DELETE for all file removal actions
310
+ - Remove redundant _prepare_api_kwargs override in AzureOpenAIModelDriver
311
+ - Refactor(azure_openai): use 'model' directly in API kwargs, remove deployment_name remapping
312
+ - Add public read-only driver_config property to AzureOpenAIProvider
313
+ - Add _prepare_api_kwargs to support deployment_name for Azure OpenAI API compatibility
314
+ - Update toolbar bindings: add CTRL-C for interrupt/exit, clarify F1 usage
315
+ - Update pyproject.toml optional-dependencies section for setuptools compatibility
316
+ - Remove references to max_results in FindFilesTool docstring
317
+ - Refactor: use .jsonl extension for input history files instead of .log
318
+ - Refactor get_file_outline core logic to remove duplication and add tests
319
+ - Test CLI: Ensure error on missing provider and validate supported models output for each provider
320
+ - Configure dynamic dependencies in pyproject.toml
321
+ - Define dependencies in requirements.txt: attrs, rich, pathspec, setuptools, pyyaml, jinja2
322
+ - Add workdir support to LocalToolsAdapter and CLI; improve Python tool adapters
323
+ - Friendly error message when the provider is not present from the available ones
324
+
325
+ ### Fixed
326
+ - Ensure error on missing provider and validate supported models output for each provider
327
+ - Update supported models table; remove o4-mini-high model from code and docs
328
+
329
+ ## [2.1.1] - 2024-06-23
330
+ ### Changed
331
+ - Bumped version to 2.1.1 in `version.py`, `pyproject.toml`, and `__init__.py`.
332
+ - docs: add DeepSeek setup guide, update navigation and references
333
+ - Add docs/deepseek-setup.md with setup instructions for DeepSeek provider
334
+ - Link DeepSeek setup in docs/index.md and mkdocs.yml navigation
335
+ - Fix model name: change 'deepseek-coder' to 'deepseek-reasoner' in DeepSeek provider and model_info
336
+ - Update DeepSeek provider docstrings and options to match supported models
337
+
338
+ ## [2.1.0] - 2024-06-09
339
+ ### Added
340
+
341
+ ### Changed
342
+ - Bumped version to 2.1.0 in `version.py`, `pyproject.toml`, and `__init__.py`.
343
+
344
+ ---
345
+
346
+ *Older changes may not be listed.*