janito 3.6.1__tar.gz → 3.7.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.
- janito-3.7.0/PKG-INFO +84 -0
- janito-3.7.0/README.md +49 -0
- janito-3.7.0/docs/CHANGELOG.md +49 -0
- {janito-3.6.1 → janito-3.7.0}/docs/changelogs/CHANGELOG.md +0 -33
- {janito-3.6.1 → janito-3.7.0}/docs/guides/using.md +0 -1
- {janito-3.6.1 → janito-3.7.0}/docs/index.md +1 -6
- {janito-3.6.1 → janito-3.7.0}/docs/moonshot-setup.md +6 -5
- {janito-3.6.1 → janito-3.7.0}/docs/plugins/built-in-plugins/filemanager.md +1 -1
- {janito-3.6.1 → janito-3.7.0}/docs/supported-providers-models.md +1 -2
- {janito-3.6.1 → janito-3.7.0}/janito/README.md +4 -7
- janito-3.7.0/janito/cli/chat_mode/bindings.py +38 -0
- {janito-3.6.1 → janito-3.7.0}/janito/cli/chat_mode/session.py +1 -12
- {janito-3.6.1 → janito-3.7.0}/janito/cli/chat_mode/shell/commands/multi.py +0 -5
- {janito-3.6.1 → janito-3.7.0}/janito/cli/chat_mode/shell/commands/security/allowed_sites.py +33 -47
- {janito-3.6.1 → janito-3.7.0}/janito/cli/cli_commands/list_plugins.py +43 -52
- {janito-3.6.1 → janito-3.7.0}/janito/cli/cli_commands/list_tools.py +1 -6
- {janito-3.6.1 → janito-3.7.0}/janito/cli/core/getters.py +0 -3
- janito-3.7.0/janito/cli/core/model_guesser.py +54 -0
- {janito-3.6.1 → janito-3.7.0}/janito/cli/main_cli.py +13 -10
- {janito-3.6.1 → janito-3.7.0}/janito/cli/prompt_core.py +9 -47
- {janito-3.6.1 → janito-3.7.0}/janito/cli/rich_terminal_reporter.py +4 -4
- {janito-3.6.1 → janito-3.7.0}/janito/docs/GETTING_STARTED.md +9 -8
- {janito-3.6.1 → janito-3.7.0}/janito/drivers/openai/driver.py +0 -1
- {janito-3.6.1 → janito-3.7.0}/janito/drivers/zai/driver.py +0 -1
- {janito-3.6.1 → janito-3.7.0}/janito/i18n/it.py +46 -46
- {janito-3.6.1 → janito-3.7.0}/janito/llm/agent.py +16 -32
- janito-3.7.0/janito/llm/auth_utils.py +21 -0
- {janito-3.6.1 → janito-3.7.0}/janito/llm/driver.py +0 -8
- janito-3.7.0/janito/plugins/__init__.py +17 -0
- {janito-3.6.1 → janito-3.7.0}/janito/plugins/auto_loader.py +11 -12
- {janito-3.6.1 → janito-3.7.0}/janito/plugins/auto_loader_fixed.py +11 -12
- {janito-3.6.1/janito/plugin_system → janito-3.7.0/janito/plugins}/base.py +2 -5
- {janito-3.6.1 → janito-3.7.0}/janito/plugins/builtin.py +1 -15
- janito-3.7.0/janito/plugins/core_adapter.py +53 -0
- janito-3.7.0/janito/plugins/core_loader.py +120 -0
- janito-3.7.0/janito/plugins/core_loader_fixed.py +125 -0
- {janito-3.6.1 → janito-3.7.0}/janito/plugins/discovery.py +5 -5
- {janito-3.6.1 → janito-3.7.0}/janito/plugins/discovery_core.py +9 -14
- {janito-3.6.1 → janito-3.7.0}/janito/plugins/manager.py +1 -1
- {janito-3.6.1 → janito-3.7.0}/janito/providers/__init__.py +0 -1
- {janito-3.6.1 → janito-3.7.0}/janito/providers/moonshot/model_info.py +7 -7
- {janito-3.6.1 → janito-3.7.0}/janito/providers/moonshot/provider.py +1 -1
- janito-3.7.0/janito/tools/__init__.py +36 -0
- janito-3.7.0/janito/tools/adapters/__init__.py +1 -0
- janito-3.7.0/janito/tools/adapters/local/__init__.py +73 -0
- {janito-3.6.1/janito/plugins/tools/core → janito-3.7.0/janito/tools/adapters/local}/ask_user.py +3 -3
- {janito-3.6.1/janito/plugins/tools/core → janito-3.7.0/janito/tools/adapters/local}/create_file.py +6 -6
- {janito-3.6.1/janito/plugins/tools/core → janito-3.7.0/janito/tools/adapters/local}/fetch_url.py +23 -20
- {janito-3.6.1/janito/plugins/tools/core → janito-3.7.0/janito/tools/adapters/local}/python_code_run.py +7 -23
- {janito-3.6.1/janito/plugins/tools/core → janito-3.7.0/janito/tools/adapters/local}/python_command_run.py +5 -21
- {janito-3.6.1/janito/plugins/tools/core → janito-3.7.0/janito/tools/adapters/local}/python_file_run.py +5 -21
- {janito-3.6.1/janito/plugins/tools/core → janito-3.7.0/janito/tools/adapters/local}/replace_text_in_file.py +4 -4
- {janito-3.6.1/janito/plugins/tools/core → janito-3.7.0/janito/tools/adapters/local}/run_bash_command.py +3 -3
- {janito-3.6.1/janito/plugins/tools/core → janito-3.7.0/janito/tools/adapters/local}/run_powershell_command.py +3 -3
- {janito-3.6.1/janito/plugins/tools/core → janito-3.7.0/janito/tools/adapters/local}/show_image.py +6 -15
- {janito-3.6.1/janito/plugins/tools/core → janito-3.7.0/janito/tools/adapters/local}/show_image_grid.py +6 -15
- janito-3.7.0/janito/tools/function_adapter.py +65 -0
- janito-3.7.0/janito/tools/loop_protection_decorator.py +145 -0
- janito-3.7.0/janito.egg-info/PKG-INFO +84 -0
- {janito-3.6.1 → janito-3.7.0}/janito.egg-info/SOURCES.txt +108 -155
- {janito-3.6.1 → janito-3.7.0}/janito.egg-info/requires.txt +3 -0
- {janito-3.6.1 → janito-3.7.0}/mkdocs.yml +3 -21
- {janito-3.6.1/janito → janito-3.7.0}/plugins/core/codeanalyzer/__init__.py +0 -9
- janito-3.7.0/plugins/core/codeanalyzer/tools/get_file_outline/__init__.py +1 -0
- {janito-3.6.1/janito/plugins/tools/core → janito-3.7.0/plugins/core/codeanalyzer/tools}/get_file_outline/core.py +3 -3
- janito-3.7.0/plugins/core/codeanalyzer/tools/search_text/__init__.py +1 -0
- {janito-3.6.1/janito/plugins/tools/core → janito-3.7.0/plugins/core/codeanalyzer/tools}/search_text/core.py +3 -3
- {janito-3.6.1/janito → janito-3.7.0}/plugins/core/filemanager/__init__.py +0 -33
- {janito-3.6.1/janito/plugins/tools/core → janito-3.7.0/plugins/core/filemanager/tools}/copy_file.py +3 -3
- {janito-3.6.1/janito/plugins/tools/core → janito-3.7.0/plugins/core/filemanager/tools}/create_directory.py +3 -3
- {janito-3.6.1/janito → janito-3.7.0}/plugins/core/filemanager/tools/create_file.py +2 -2
- {janito-3.6.1/janito/plugins/tools/core → janito-3.7.0/plugins/core/filemanager/tools}/delete_text_in_file.py +4 -4
- {janito-3.6.1/janito/plugins/tools/core → janito-3.7.0/plugins/core/filemanager/tools}/find_files.py +3 -3
- {janito-3.6.1/janito/plugins/tools/core → janito-3.7.0/plugins/core/filemanager/tools}/move_file.py +3 -3
- {janito-3.6.1/janito/plugins/tools/core → janito-3.7.0/plugins/core/filemanager/tools}/read_files.py +3 -3
- {janito-3.6.1/janito/plugins/tools/core → janito-3.7.0/plugins/core/filemanager/tools}/remove_directory.py +3 -3
- {janito-3.6.1/janito/plugins/tools/core → janito-3.7.0/plugins/core/filemanager/tools}/remove_file.py +3 -3
- janito-3.7.0/plugins/core/filemanager/tools/validate_file_syntax/__init__.py +1 -0
- {janito-3.6.1/janito/plugins/tools/core → janito-3.7.0/plugins/core/filemanager/tools}/validate_file_syntax/core.py +2 -2
- {janito-3.6.1/janito/plugins/tools/core → janito-3.7.0/plugins/core/filemanager/tools}/view_file.py +3 -3
- {janito-3.6.1/janito → janito-3.7.0}/plugins/core/imagedisplay/__init__.py +1 -1
- {janito-3.6.1/janito → janito-3.7.0}/plugins/core/imagedisplay/plugin.py +2 -2
- janito-3.7.0/plugins/core/imagedisplay/tools/__init__.py +1 -0
- {janito-3.6.1/janito → janito-3.7.0}/plugins/core/imagedisplay/tools/show_image.py +3 -12
- {janito-3.6.1/janito → janito-3.7.0}/plugins/core/imagedisplay/tools/show_image_grid.py +3 -12
- {janito-3.6.1/janito → janito-3.7.0}/plugins/core/system/__init__.py +0 -3
- {janito-3.6.1/janito → janito-3.7.0}/plugins/core/system/tools/run_bash_command.py +2 -23
- {janito-3.6.1/janito → janito-3.7.0}/plugins/core/system/tools/run_powershell_command.py +0 -16
- {janito-3.6.1/janito → janito-3.7.0}/plugins/dev/pythondev/__init__.py +0 -9
- janito-3.7.0/plugins/dev/pythondev/tools/python_code_run.py +172 -0
- janito-3.7.0/plugins/dev/pythondev/tools/python_command_run.py +171 -0
- janito-3.7.0/plugins/dev/pythondev/tools/python_file_run.py +172 -0
- {janito-3.6.1/janito → janito-3.7.0}/plugins/dev/visualization/__init__.py +0 -3
- {janito-3.6.1/janito/plugins/tools/core → janito-3.7.0/plugins/dev/visualization/tools}/read_chart.py +3 -3
- {janito-3.6.1/janito → janito-3.7.0}/plugins/example_plugin.py +1 -1
- {janito-3.6.1/janito → janito-3.7.0}/plugins/web/webtools/__init__.py +11 -1
- janito-3.7.0/plugins/web/webtools/tools/fetch_url.py +458 -0
- {janito-3.6.1/janito/plugins/tools/core → janito-3.7.0/plugins/web/webtools/tools}/open_html_in_browser.py +3 -3
- {janito-3.6.1/janito/plugins/tools/core → janito-3.7.0/plugins/web/webtools/tools}/open_url.py +3 -3
- janito-3.7.0/plugins.txt +1 -0
- {janito-3.6.1 → janito-3.7.0}/pyproject.toml +2 -2
- janito-3.6.1/ANNOUNCEMENT_v3.1.0.md +0 -63
- janito-3.6.1/ANNOUNCEMENT_v3.5.1.md +0 -50
- janito-3.6.1/CHANGELOG.md +0 -39
- janito-3.6.1/EVERLYN_README.md +0 -134
- janito-3.6.1/EverlynAI.psd1 +0 -22
- janito-3.6.1/EverlynAI.psm1 +0 -7
- janito-3.6.1/PKG-INFO +0 -228
- janito-3.6.1/README.md +0 -195
- janito-3.6.1/debug_attribute_access.py +0 -41
- janito-3.6.1/debug_conditions.py +0 -83
- janito-3.6.1/debug_detailed.py +0 -77
- janito-3.6.1/debug_exact_logic.py +0 -59
- janito-3.6.1/debug_fetch_url.py +0 -33
- janito-3.6.1/debug_fetch_url2.py +0 -40
- janito-3.6.1/debug_fetch_url3.py +0 -55
- janito-3.6.1/debug_real_status.py +0 -57
- janito-3.6.1/debug_status_code.py +0 -36
- janito-3.6.1/docs/CHANGELOG.md +0 -212
- janito-3.6.1/docs/CHANGELOG_3.0.0.md +0 -141
- janito-3.6.1/docs/CNAME +0 -1
- janito-3.6.1/docs/assets/images/social-preview.png +0 -0
- janito-3.6.1/docs/changelogs/CHANGELOG_3.1.0.md +0 -51
- janito-3.6.1/docs/changelogs/CHANGELOG_3.5.0.md +0 -63
- janito-3.6.1/docs/changelogs/CHANGELOG_3.5.1.md +0 -62
- janito-3.6.1/docs/overrides/main.html +0 -7
- janito-3.6.1/docs/overrides/partials/social.html +0 -55
- janito-3.6.1/docs/together-setup.md +0 -86
- janito-3.6.1/everlyn.md +0 -82
- janito-3.6.1/everlyn_homepage.html +0 -1
- janito-3.6.1/init_janito_tools.py +0 -51
- janito-3.6.1/janito/cli/chat_mode/bindings.py +0 -88
- janito-3.6.1/janito/cli/cli_commands/check_tools.py +0 -212
- janito-3.6.1/janito/cli/core/model_guesser.py +0 -70
- janito-3.6.1/janito/data/blocked.txt +0 -96
- janito-3.6.1/janito/llm/auth_utils.py +0 -30
- janito-3.6.1/janito/llm/cancellation_manager.py +0 -63
- janito-3.6.1/janito/llm/enter_cancellation.py +0 -107
- janito-3.6.1/janito/plugin_system/__init__.py +0 -10
- janito-3.6.1/janito/plugin_system/core_loader.py +0 -217
- janito-3.6.1/janito/plugin_system/core_loader_fixed.py +0 -225
- janito-3.6.1/janito/plugins/core/imagedisplay/tools/__init__.py +0 -1
- janito-3.6.1/janito/plugins/core_adapter.py +0 -131
- janito-3.6.1/janito/plugins/tools/__init__.py +0 -39
- janito-3.6.1/janito/plugins/tools/core/__init__.py +0 -65
- janito-3.6.1/janito/plugins/tools/core/decorators.py +0 -19
- janito-3.6.1/janito/plugins/tools/core/get_file_outline/__init__.py +0 -7
- janito-3.6.1/janito/plugins/tools/core/search_text/__init__.py +0 -7
- janito-3.6.1/janito/plugins/tools/core/validate_file_syntax/__init__.py +0 -7
- janito-3.6.1/janito/providers/together/__init__.py +0 -1
- janito-3.6.1/janito/providers/together/model_info.py +0 -69
- janito-3.6.1/janito/providers/together/provider.py +0 -108
- janito-3.6.1/janito/tools/__init__.py +0 -70
- janito-3.6.1/janito/tools/adapters/__init__.py +0 -6
- janito-3.6.1/janito/tools/adapters/local/__init__.py +0 -10
- janito-3.6.1/janito/tools/adapters/local/copy_file.py +0 -0
- janito-3.6.1/janito/tools/adapters/local/create_file.py +0 -0
- janito-3.6.1/janito/tools/adapters/local/move_file.py +0 -0
- janito-3.6.1/janito/tools/adapters/local/remove_file.py +0 -0
- janito-3.6.1/janito/tools/adapters/local/view_file.py +0 -0
- janito-3.6.1/janito/tools/blocked_sites.py +0 -74
- janito-3.6.1/janito/tools/cli_initializer.py +0 -88
- janito-3.6.1/janito/tools/initialize.py +0 -70
- janito-3.6.1/janito/tools/loop_protection_decorator.py +0 -142
- janito-3.6.1/janito.egg-info/PKG-INFO +0 -228
- janito-3.6.1/test_404.py +0 -16
- janito-3.6.1/test_actual_404.py +0 -27
- janito-3.6.1/test_blocked_sites.py +0 -32
- janito-3.6.1/test_fixed_404.py +0 -27
- janito-3.6.1/test_fixed_404_local.py +0 -37
- janito-3.6.1/test_multiple_status_codes.py +0 -46
- janito-3.6.1/test_real_404.py +0 -19
- janito-3.6.1/test_status_codes.py +0 -50
- {janito-3.6.1 → janito-3.7.0}/.codespellrc +0 -0
- {janito-3.6.1 → janito-3.7.0}/.gitattributes +0 -0
- {janito-3.6.1 → janito-3.7.0}/.github/workflows/python-app.yml.disabled +0 -0
- {janito-3.6.1 → janito-3.7.0}/.gitignore +0 -0
- {janito-3.6.1 → janito-3.7.0}/.pre-commit-config.yaml +0 -0
- {janito-3.6.1 → janito-3.7.0}/.secrets.baseline +0 -0
- {janito-3.6.1 → janito-3.7.0}/.vscode/settings.json +0 -0
- {janito-3.6.1 → janito-3.7.0}/LICENSE +0 -0
- {janito-3.6.1 → janito-3.7.0}/MARKET_ANALYST_README.md +0 -0
- {janito-3.6.1 → janito-3.7.0}/README-dev.md +0 -0
- {janito-3.6.1 → janito-3.7.0}/RELEASE_COMPARISON.md +0 -0
- {janito-3.6.1 → janito-3.7.0}/UPDATING_DOCS.md +0 -0
- {janito-3.6.1 → janito-3.7.0}/adding_mcp.txt +0 -0
- {janito-3.6.1 → janito-3.7.0}/docs/DIV.md +0 -0
- {janito-3.6.1 → janito-3.7.0}/docs/Interfaces.txt +0 -0
- {janito-3.6.1 → janito-3.7.0}/docs/PROFILES.md +0 -0
- {janito-3.6.1 → janito-3.7.0}/docs/TOOLBAR-STYLING.md +0 -0
- {janito-3.6.1 → janito-3.7.0}/docs/about/costs.md +0 -0
- {janito-3.6.1 → janito-3.7.0}/docs/about/vs-webchats.md +0 -0
- {janito-3.6.1 → janito-3.7.0}/docs/about/why.md +0 -0
- {janito-3.6.1 → janito-3.7.0}/docs/alibaba-setup.md +0 -0
- {janito-3.6.1 → janito-3.7.0}/docs/alternatives.md +0 -0
- {janito-3.6.1 → janito-3.7.0}/docs/cerebras-setup.md +0 -0
- {janito-3.6.1 → janito-3.7.0}/docs/changelogs/CHANGELOG_2.16.0.md +0 -0
- {janito-3.6.1 → janito-3.7.0}/docs/changelogs/CHANGELOG_2.23.0.md +0 -0
- {janito-3.6.1 → janito-3.7.0}/docs/changelogs/CHANGELOG_2.26.0.md +0 -0
- {janito-3.6.1 → janito-3.7.0}/docs/changelogs/CHANGELOG_2.27.0.md +0 -0
- {janito-3.6.1 → janito-3.7.0}/docs/changelogs/RELEASE_NOTES_2.22.0.md +0 -0
- {janito-3.6.1 → janito-3.7.0}/docs/changelogs/RELEASE_NOTES_2.24.1.md +0 -0
- {janito-3.6.1 → janito-3.7.0}/docs/code_intelligence/agentic-frameworks-comparison.md +0 -0
- {janito-3.6.1 → janito-3.7.0}/docs/code_intelligence/code-generation-challenges.md +0 -0
- {janito-3.6.1 → janito-3.7.0}/docs/code_intelligence/code-generation-observability.md +0 -0
- {janito-3.6.1 → janito-3.7.0}/docs/code_intelligence/our-approach.md +0 -0
- {janito-3.6.1 → janito-3.7.0}/docs/code_intelligence/why-string-replacement.md +0 -0
- {janito-3.6.1 → janito-3.7.0}/docs/concepts/analysis-style.md +0 -0
- {janito-3.6.1 → janito-3.7.0}/docs/concepts/human-guided-ai.md +0 -0
- {janito-3.6.1 → janito-3.7.0}/docs/concepts/index.md +0 -0
- {janito-3.6.1 → janito-3.7.0}/docs/concepts/language-model-clients.md +0 -0
- {janito-3.6.1 → janito-3.7.0}/docs/concepts/prompt-design-style.md +0 -0
- {janito-3.6.1 → janito-3.7.0}/docs/deepseek-setup.md +0 -0
- {janito-3.6.1 → janito-3.7.0}/docs/driver-flow.md +0 -0
- {janito-3.6.1 → janito-3.7.0}/docs/driver-request-cancellation.md +0 -0
- {janito-3.6.1 → janito-3.7.0}/docs/drivers/events.md +0 -0
- {janito-3.6.1 → janito-3.7.0}/docs/drivers.md +0 -0
- {janito-3.6.1 → janito-3.7.0}/docs/event-bus.md +0 -0
- {janito-3.6.1 → janito-3.7.0}/docs/guides/configuration.md +0 -0
- {janito-3.6.1 → janito-3.7.0}/docs/guides/developing.md +0 -0
- {janito-3.6.1 → janito-3.7.0}/docs/guides/disabled-tools.md +0 -0
- {janito-3.6.1 → janito-3.7.0}/docs/guides/installation.md +0 -0
- {janito-3.6.1 → janito-3.7.0}/docs/guides/market-data-sources.md +0 -0
- {janito-3.6.1 → janito-3.7.0}/docs/guides/profiles.md +0 -0
- {janito-3.6.1 → janito-3.7.0}/docs/guides/prompting/README.md +0 -0
- {janito-3.6.1 → janito-3.7.0}/docs/guides/read-chart-examples.md +0 -0
- {janito-3.6.1 → janito-3.7.0}/docs/guides/security-commands.md +0 -0
- {janito-3.6.1 → janito-3.7.0}/docs/guides/single-shot-terminal.md +0 -0
- {janito-3.6.1 → janito-3.7.0}/docs/guides/stock-market-guide.md +0 -0
- {janito-3.6.1 → janito-3.7.0}/docs/guides/terminal-shell.md +0 -0
- {janito-3.6.1 → janito-3.7.0}/docs/guides/tools-developer-guide.md +0 -0
- {janito-3.6.1 → janito-3.7.0}/docs/guides/url-whitelist.md +0 -0
- {janito-3.6.1 → janito-3.7.0}/docs/guides/using_tools.md +0 -0
- {janito-3.6.1 → janito-3.7.0}/docs/ibm-setup.md +0 -0
- {janito-3.6.1 → janito-3.7.0}/docs/imgs/code-generation-observability.png +0 -0
- {janito-3.6.1 → janito-3.7.0}/docs/imgs/code_generation_observability.png +0 -0
- {janito-3.6.1 → janito-3.7.0}/docs/imgs/happy-programmer.png +0 -0
- {janito-3.6.1 → janito-3.7.0}/docs/imgs/happy-programmer.svg +0 -0
- {janito-3.6.1 → janito-3.7.0}/docs/imgs/terminal-one-shot.png +0 -0
- {janito-3.6.1 → janito-3.7.0}/docs/imgs/terminal-shell.png +0 -0
- {janito-3.6.1 → janito-3.7.0}/docs/imgs/terminal_one_shot.png +0 -0
- {janito-3.6.1 → janito-3.7.0}/docs/imgs/terminal_shell.png +0 -0
- {janito-3.6.1 → janito-3.7.0}/docs/llm-drivers-required-config.md +0 -0
- {janito-3.6.1 → janito-3.7.0}/docs/llm-drivers.md +0 -0
- {janito-3.6.1 → janito-3.7.0}/docs/meta/developer-toolchain.md +0 -0
- {janito-3.6.1 → janito-3.7.0}/docs/meta/quality-checks.txt +0 -0
- {janito-3.6.1 → janito-3.7.0}/docs/mistral-setup.md +0 -0
- {janito-3.6.1 → janito-3.7.0}/docs/openai-setup.md +0 -0
- {janito-3.6.1 → janito-3.7.0}/docs/overrides/partials/copyright.html +0 -0
- {janito-3.6.1 → janito-3.7.0}/docs/plugins/ACTUAL_TOOLS_LOCATION.md +0 -0
- {janito-3.6.1 → janito-3.7.0}/docs/plugins/MIGRATION_COMPLETE.md +0 -0
- {janito-3.6.1 → janito-3.7.0}/docs/plugins/README.md +0 -0
- {janito-3.6.1 → janito-3.7.0}/docs/plugins/api-reference.md +0 -0
- {janito-3.6.1 → janito-3.7.0}/docs/plugins/architecture.md +0 -0
- {janito-3.6.1 → janito-3.7.0}/docs/plugins/built-in-plugins/codeanalyzer.md +0 -0
- {janito-3.6.1 → janito-3.7.0}/docs/plugins/built-in-plugins/imagedisplay.md +0 -0
- {janito-3.6.1 → janito-3.7.0}/docs/plugins/built-in-plugins/pythondev.md +0 -0
- {janito-3.6.1 → janito-3.7.0}/docs/plugins/built-in-plugins/system.md +0 -0
- {janito-3.6.1 → janito-3.7.0}/docs/plugins/built-in-plugins/userinterface.md +0 -0
- {janito-3.6.1 → janito-3.7.0}/docs/plugins/built-in-plugins/visualization.md +0 -0
- {janito-3.6.1 → janito-3.7.0}/docs/plugins/built-in-plugins/webtools.md +0 -0
- {janito-3.6.1 → janito-3.7.0}/docs/plugins/configuration.md +0 -0
- {janito-3.6.1 → janito-3.7.0}/docs/plugins/examples/advanced.md +0 -0
- {janito-3.6.1 → janito-3.7.0}/docs/plugins/examples/basic.md +0 -0
- {janito-3.6.1 → janito-3.7.0}/docs/plugins/examples/intermediate.md +0 -0
- {janito-3.6.1 → janito-3.7.0}/docs/plugins/plugin-development.md +0 -0
- {janito-3.6.1 → janito-3.7.0}/docs/plugins/plugin-resources.md +0 -0
- {janito-3.6.1 → janito-3.7.0}/docs/plugins/publishing.md +0 -0
- {janito-3.6.1 → janito-3.7.0}/docs/plugins/remote-plugins.md +0 -0
- {janito-3.6.1 → janito-3.7.0}/docs/plugins/testing.md +0 -0
- {janito-3.6.1 → janito-3.7.0}/docs/provider-platform-access.md +0 -0
- {janito-3.6.1 → janito-3.7.0}/docs/public-sources.md +0 -0
- {janito-3.6.1 → janito-3.7.0}/docs/reference/api.md +0 -0
- {janito-3.6.1 → janito-3.7.0}/docs/reference/azure-openai.md +0 -0
- {janito-3.6.1 → janito-3.7.0}/docs/reference/cli-options.md +0 -0
- {janito-3.6.1 → janito-3.7.0}/docs/reference/message-handler-model.md +0 -0
- {janito-3.6.1 → janito-3.7.0}/docs/reference/rich-message-handler.md +0 -0
- {janito-3.6.1 → janito-3.7.0}/docs/security.md +0 -0
- {janito-3.6.1 → janito-3.7.0}/docs/tools/search-text.md +0 -0
- {janito-3.6.1 → janito-3.7.0}/docs/tools/show-image-grid.md +0 -0
- {janito-3.6.1 → janito-3.7.0}/docs/tools/show-image.md +0 -0
- {janito-3.6.1 → janito-3.7.0}/docs/tools-index.md +0 -0
- {janito-3.6.1 → janito-3.7.0}/docs/tools-natural-results.md +0 -0
- {janito-3.6.1 → janito-3.7.0}/docs/tools-precision.md +0 -0
- {janito-3.6.1 → janito-3.7.0}/docs/z-ai-setup.md +0 -0
- {janito-3.6.1 → janito-3.7.0}/examples/loop_protection_example.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/examples/loop_protection_tool_example.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/get_nasdaq_top.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/ibm-logo.txt +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/__init__.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/__main__.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/_version.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/agent/setup_agent.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/agent/templates/profiles/system_prompt_template_Developer_with_Python_Tools.txt.j2 +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/agent/templates/profiles/system_prompt_template_developer.txt.j2 +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/agent/templates/profiles/system_prompt_template_market_analyst.txt.j2 +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/agent/templates/profiles/system_prompt_template_model_conversation_without_tools_or_context.txt.j2 +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/cli/__init__.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/cli/chat_mode/chat_entry.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/cli/chat_mode/prompt_style.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/cli/chat_mode/script_runner.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/cli/chat_mode/shell/autocomplete.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/cli/chat_mode/shell/commands/__init__.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/cli/chat_mode/shell/commands/_priv_check.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/cli/chat_mode/shell/commands/_priv_status.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/cli/chat_mode/shell/commands/bang.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/cli/chat_mode/shell/commands/base.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/cli/chat_mode/shell/commands/clear.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/cli/chat_mode/shell/commands/conversation_restart.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/cli/chat_mode/shell/commands/execute.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/cli/chat_mode/shell/commands/help.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/cli/chat_mode/shell/commands/history_view.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/cli/chat_mode/shell/commands/lang.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/cli/chat_mode/shell/commands/model.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/cli/chat_mode/shell/commands/privileges.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/cli/chat_mode/shell/commands/prompt.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/cli/chat_mode/shell/commands/provider.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/cli/chat_mode/shell/commands/read.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/cli/chat_mode/shell/commands/role.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/cli/chat_mode/shell/commands/security/__init__.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/cli/chat_mode/shell/commands/security_command.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/cli/chat_mode/shell/commands/session.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/cli/chat_mode/shell/commands/session_control.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/cli/chat_mode/shell/commands/tools.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/cli/chat_mode/shell/commands/unrestricted.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/cli/chat_mode/shell/commands/utility.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/cli/chat_mode/shell/commands/verbose.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/cli/chat_mode/shell/commands/write.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/cli/chat_mode/shell/commands.bak.zip +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/cli/chat_mode/shell/input_history.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/cli/chat_mode/shell/session/__init__.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/cli/chat_mode/shell/session/history.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/cli/chat_mode/shell/session/manager.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/cli/chat_mode/shell/session.bak.zip +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/cli/chat_mode/toolbar.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/cli/cli_commands/enable_disable_plugin.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/cli/cli_commands/list_config.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/cli/cli_commands/list_drivers.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/cli/cli_commands/list_models.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/cli/cli_commands/list_profiles.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/cli/cli_commands/list_providers.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/cli/cli_commands/list_providers_region.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/cli/cli_commands/model_selection.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/cli/cli_commands/model_utils.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/cli/cli_commands/ping_providers.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/cli/cli_commands/set_api_key.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/cli/cli_commands/show_config.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/cli/cli_commands/show_system_prompt.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/cli/config.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/cli/console.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/cli/core/__init__.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/cli/core/event_logger.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/cli/core/runner.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/cli/core/setters.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/cli/core/unsetters.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/cli/main.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/cli/prompt_handler.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/cli/prompt_setup.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/cli/single_shot_mode/__init__.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/cli/single_shot_mode/handler.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/cli/utils.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/cli/verbose_output.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/config.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/config_manager.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/conversation_history.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/dir_walk_utils.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/driver_events.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/drivers/azure_openai/driver.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/drivers/cerebras/__init__.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/drivers/dashscope.bak.zip +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/drivers/openai/README.md +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/drivers/openai_responses.bak.zip +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/drivers/zai/__init__.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/event_bus/__init__.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/event_bus/bus.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/event_bus/event.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/event_bus/handler.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/event_bus/queue_bus.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/exceptions.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/formatting.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/formatting_token.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/gitignore_utils.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/hello.txt +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/i18n/__init__.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/i18n/messages.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/i18n/pt.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/llm/README.md +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/llm/__init__.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/llm/auth.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/llm/driver_config.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/llm/driver_config_builder.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/llm/driver_input.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/llm/message_parts.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/llm/model.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/llm/provider.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/mkdocs.yml +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/perf_singleton.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/performance_collector.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/platform_discovery.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/plugins/config.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/provider_config.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/provider_registry.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/providers/alibaba/__init__.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/providers/alibaba/model_info.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/providers/alibaba/provider.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/providers/anthropic/model_info.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/providers/anthropic/provider.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/providers/azure_openai/model_info.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/providers/azure_openai/provider.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/providers/cerebras/__init__.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/providers/cerebras/model_info.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/providers/cerebras/provider.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/providers/dashscope.bak.zip +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/providers/deepseek/__init__.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/providers/deepseek/model_info.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/providers/deepseek/provider.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/providers/google/__init__.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/providers/google/model_info.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/providers/google/provider.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/providers/ibm/README.md +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/providers/ibm/__init__.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/providers/ibm/model_info.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/providers/ibm/provider.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/providers/mistral/__init__.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/providers/mistral/model_info.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/providers/mistral/provider.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/providers/moonshot/__init__.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/providers/openai/__init__.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/providers/openai/model_info.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/providers/openai/provider.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/providers/openai/schema_generator.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/providers/registry.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/providers/zai/__init__.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/providers/zai/model_info.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/providers/zai/provider.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/providers/zai/schema_generator.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/regions/__init__.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/regions/cli.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/regions/geo_utils.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/regions/provider_regions.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/report_events.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/shell.bak.zip +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/tools/DOCSTRING_STANDARD.txt +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/tools/README.md +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/tools/adapters/local/adapter.py +0 -0
- {janito-3.6.1/janito/plugins/core/filemanager/tools → janito-3.7.0/janito/tools/adapters/local}/copy_file.py +0 -0
- {janito-3.6.1/janito/plugins/core/filemanager/tools → janito-3.7.0/janito/tools/adapters/local}/create_directory.py +0 -0
- {janito-3.6.1/janito/plugins/core/filemanager/tools → janito-3.7.0/janito/tools/adapters/local}/delete_text_in_file.py +0 -0
- {janito-3.6.1/janito/plugins/core/filemanager/tools → janito-3.7.0/janito/tools/adapters/local}/find_files.py +0 -0
- {janito-3.6.1/janito/plugins/core/codeanalyzer/tools → janito-3.7.0/janito/tools/adapters/local}/get_file_outline/__init__.py +0 -0
- {janito-3.6.1/janito/plugins/core/codeanalyzer/tools → janito-3.7.0/janito/tools/adapters/local}/get_file_outline/core.py +0 -0
- {janito-3.6.1/janito/plugins/core/codeanalyzer/tools → janito-3.7.0/janito/tools/adapters/local}/get_file_outline/java_outline.py +0 -0
- {janito-3.6.1/janito/plugins/core/codeanalyzer/tools → janito-3.7.0/janito/tools/adapters/local}/get_file_outline/markdown_outline.py +0 -0
- {janito-3.6.1/janito/plugins/core/codeanalyzer/tools → janito-3.7.0/janito/tools/adapters/local}/get_file_outline/python_outline.py +0 -0
- {janito-3.6.1/janito/plugins/core/codeanalyzer/tools → janito-3.7.0/janito/tools/adapters/local}/get_file_outline/search_outline.py +0 -0
- {janito-3.6.1/janito/plugins/core/filemanager/tools → janito-3.7.0/janito/tools/adapters/local}/move_file.py +0 -0
- {janito-3.6.1/janito/plugins/web/webtools/tools → janito-3.7.0/janito/tools/adapters/local}/open_html_in_browser.py +0 -0
- {janito-3.6.1/janito/plugins/web/webtools/tools → janito-3.7.0/janito/tools/adapters/local}/open_url.py +0 -0
- {janito-3.6.1/janito/plugins/dev/visualization/tools → janito-3.7.0/janito/tools/adapters/local}/read_chart.py +0 -0
- {janito-3.6.1/janito/plugins/core/filemanager/tools → janito-3.7.0/janito/tools/adapters/local}/read_files.py +0 -0
- {janito-3.6.1/janito/plugins/core/filemanager/tools → janito-3.7.0/janito/tools/adapters/local}/remove_directory.py +0 -0
- {janito-3.6.1/janito/plugins/core/filemanager/tools → janito-3.7.0/janito/tools/adapters/local}/remove_file.py +0 -0
- {janito-3.6.1/janito/plugins/core/codeanalyzer/tools → janito-3.7.0/janito/tools/adapters/local}/search_text/__init__.py +0 -0
- {janito-3.6.1/janito/plugins/core/codeanalyzer/tools → janito-3.7.0/janito/tools/adapters/local}/search_text/core.py +0 -0
- {janito-3.6.1/janito/plugins/core/codeanalyzer/tools → janito-3.7.0/janito/tools/adapters/local}/search_text/match_lines.py +0 -0
- {janito-3.6.1/janito/plugins/core/codeanalyzer/tools → janito-3.7.0/janito/tools/adapters/local}/search_text/pattern_utils.py +0 -0
- {janito-3.6.1/janito/plugins/core/codeanalyzer/tools → janito-3.7.0/janito/tools/adapters/local}/search_text/traverse_directory.py +0 -0
- {janito-3.6.1/janito/plugins/core/filemanager/tools → janito-3.7.0/janito/tools/adapters/local}/validate_file_syntax/__init__.py +0 -0
- {janito-3.6.1/janito/plugins/core/filemanager/tools → janito-3.7.0/janito/tools/adapters/local}/validate_file_syntax/core.py +0 -0
- {janito-3.6.1/janito/plugins/core/filemanager/tools → janito-3.7.0/janito/tools/adapters/local}/validate_file_syntax/css_validator.py +0 -0
- {janito-3.6.1/janito/plugins/core/filemanager/tools → janito-3.7.0/janito/tools/adapters/local}/validate_file_syntax/html_validator.py +0 -0
- {janito-3.6.1/janito/plugins/core/filemanager/tools → janito-3.7.0/janito/tools/adapters/local}/validate_file_syntax/jinja2_validator.py +0 -0
- {janito-3.6.1/janito/plugins/core/filemanager/tools → janito-3.7.0/janito/tools/adapters/local}/validate_file_syntax/js_validator.py +0 -0
- {janito-3.6.1/janito/plugins/core/filemanager/tools → janito-3.7.0/janito/tools/adapters/local}/validate_file_syntax/json_validator.py +0 -0
- {janito-3.6.1/janito/plugins/core/filemanager/tools → janito-3.7.0/janito/tools/adapters/local}/validate_file_syntax/markdown_validator.py +0 -0
- {janito-3.6.1/janito/plugins/core/filemanager/tools → janito-3.7.0/janito/tools/adapters/local}/validate_file_syntax/ps1_validator.py +0 -0
- {janito-3.6.1/janito/plugins/core/filemanager/tools → janito-3.7.0/janito/tools/adapters/local}/validate_file_syntax/python_validator.py +0 -0
- {janito-3.6.1/janito/plugins/core/filemanager/tools → janito-3.7.0/janito/tools/adapters/local}/validate_file_syntax/xml_validator.py +0 -0
- {janito-3.6.1/janito/plugins/core/filemanager/tools → janito-3.7.0/janito/tools/adapters/local}/validate_file_syntax/yaml_validator.py +0 -0
- {janito-3.6.1/janito/plugins/core/filemanager/tools → janito-3.7.0/janito/tools/adapters/local}/view_file.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/tools/base.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/tools/disabled_tools.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/tools/inspect_registry.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/tools/loop_protection.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/tools/outline_file.bak.zip +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/tools/path_security.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/tools/path_utils.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/tools/permissions.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/tools/permissions_parse.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/tools/tool_base.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/tools/tool_events.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/tools/tool_run_exception.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/tools/tool_use_tracker.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/tools/tool_utils.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/tools/tools_adapter.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/tools/tools_schema.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/tools/url_whitelist.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito/utils.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito.egg-info/dependency_links.txt +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito.egg-info/entry_points.txt +0 -0
- {janito-3.6.1 → janito-3.7.0}/janito.egg-info/top_level.txt +0 -0
- {janito-3.6.1 → janito-3.7.0}/market_prompt_fix.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/market_test.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/mkdocs_hooks.py +0 -0
- {janito-3.6.1/janito → janito-3.7.0}/plugins/__init__.py +0 -0
- {janito-3.6.1/janito → janito-3.7.0}/plugins/core/__init__.py +0 -0
- {janito-3.6.1/janito/plugins/tools/core → janito-3.7.0/plugins/core/codeanalyzer/tools}/get_file_outline/java_outline.py +0 -0
- {janito-3.6.1/janito/plugins/tools/core → janito-3.7.0/plugins/core/codeanalyzer/tools}/get_file_outline/markdown_outline.py +0 -0
- {janito-3.6.1/janito/plugins/tools/core → janito-3.7.0/plugins/core/codeanalyzer/tools}/get_file_outline/python_outline.py +0 -0
- {janito-3.6.1/janito/plugins/tools/core → janito-3.7.0/plugins/core/codeanalyzer/tools}/get_file_outline/search_outline.py +0 -0
- {janito-3.6.1/janito/plugins/tools/core → janito-3.7.0/plugins/core/codeanalyzer/tools}/search_text/match_lines.py +0 -0
- {janito-3.6.1/janito/plugins/tools/core → janito-3.7.0/plugins/core/codeanalyzer/tools}/search_text/pattern_utils.py +0 -0
- {janito-3.6.1/janito/plugins/tools/core → janito-3.7.0/plugins/core/codeanalyzer/tools}/search_text/traverse_directory.py +0 -0
- {janito-3.6.1/janito → janito-3.7.0}/plugins/core/filemanager/tools/replace_text_in_file.py +0 -0
- {janito-3.6.1/janito/plugins/tools/core → janito-3.7.0/plugins/core/filemanager/tools}/validate_file_syntax/css_validator.py +0 -0
- {janito-3.6.1/janito/plugins/tools/core → janito-3.7.0/plugins/core/filemanager/tools}/validate_file_syntax/html_validator.py +0 -0
- {janito-3.6.1/janito/plugins/tools/core → janito-3.7.0/plugins/core/filemanager/tools}/validate_file_syntax/jinja2_validator.py +0 -0
- {janito-3.6.1/janito/plugins/tools/core → janito-3.7.0/plugins/core/filemanager/tools}/validate_file_syntax/js_validator.py +0 -0
- {janito-3.6.1/janito/plugins/tools/core → janito-3.7.0/plugins/core/filemanager/tools}/validate_file_syntax/json_validator.py +0 -0
- {janito-3.6.1/janito/plugins/tools/core → janito-3.7.0/plugins/core/filemanager/tools}/validate_file_syntax/markdown_validator.py +0 -0
- {janito-3.6.1/janito/plugins/tools/core → janito-3.7.0/plugins/core/filemanager/tools}/validate_file_syntax/ps1_validator.py +0 -0
- {janito-3.6.1/janito/plugins/tools/core → janito-3.7.0/plugins/core/filemanager/tools}/validate_file_syntax/python_validator.py +0 -0
- {janito-3.6.1/janito/plugins/tools/core → janito-3.7.0/plugins/core/filemanager/tools}/validate_file_syntax/xml_validator.py +0 -0
- {janito-3.6.1/janito/plugins/tools/core → janito-3.7.0/plugins/core/filemanager/tools}/validate_file_syntax/yaml_validator.py +0 -0
- {janito-3.6.1/janito → janito-3.7.0}/plugins/dev/__init__.py +0 -0
- {janito-3.6.1/janito → janito-3.7.0}/plugins/ui/__init__.py +0 -0
- {janito-3.6.1/janito → janito-3.7.0}/plugins/ui/userinterface/__init__.py +0 -0
- {janito-3.6.1/janito → janito-3.7.0}/plugins/ui/userinterface/tools/ask_user.py +0 -0
- {janito-3.6.1/janito → janito-3.7.0}/plugins/web/__init__.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/pytest.ini +0 -0
- {janito-3.6.1 → janito-3.7.0}/requirements-dev.txt +0 -0
- {janito-3.6.1 → janito-3.7.0}/requirements.txt +0 -0
- {janito-3.6.1 → janito-3.7.0}/setup.cfg +0 -0
- {janito-3.6.1 → janito-3.7.0}/test.txt +0 -0
- {janito-3.6.1 → janito-3.7.0}/test_example.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/test_http_errors.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/test_http_errors_direct.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/test_key_field_behavior.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/test_key_field_protection.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/test_loop_protection_return.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/test_market_analyst.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/tests/adapters/local/get_file_outline/test_core_outline.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/tests/adapters/local/test_read_files.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/tests/test_cli_list_models.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/tests/test_cli_list_providers.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/tests/test_cli_list_providers_alibaba.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/tests/test_cli_list_providers_moonshot.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/tests/test_cli_version.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/tests/test_disabled_tools.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/tests/test_plugin_system.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/tests/test_provider_alibaba.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/tests/test_provider_cerebras.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/tests/test_provider_moonshot.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/tools/release.py +0 -0
- {janito-3.6.1 → janito-3.7.0}/tox.ini +0 -0
janito-3.7.0/PKG-INFO
ADDED
@@ -0,0 +1,84 @@
|
|
1
|
+
Metadata-Version: 2.4
|
2
|
+
Name: janito
|
3
|
+
Version: 3.7.0
|
4
|
+
Summary: A new Python package called janito.
|
5
|
+
Author-email: João Pinto <janito@ikignosis.org>
|
6
|
+
Project-URL: Homepage, https://github.com/ikignosis/janito
|
7
|
+
Requires-Python: >=3.7
|
8
|
+
Description-Content-Type: text/markdown
|
9
|
+
License-File: LICENSE
|
10
|
+
Requires-Dist: attrs==25.3.0
|
11
|
+
Requires-Dist: rich==14.0.0
|
12
|
+
Requires-Dist: pathspec==0.12.1
|
13
|
+
Requires-Dist: setuptools>=61.0
|
14
|
+
Requires-Dist: pyyaml>=6.0
|
15
|
+
Requires-Dist: jinja2>=3.0.0
|
16
|
+
Requires-Dist: prompt_toolkit>=3.0.51
|
17
|
+
Requires-Dist: lxml>=5.4.0
|
18
|
+
Requires-Dist: requests>=2.32.4
|
19
|
+
Requires-Dist: bs4>=0.0.2
|
20
|
+
Requires-Dist: questionary>=2.0.1
|
21
|
+
Requires-Dist: openai>=1.68.0
|
22
|
+
Requires-Dist: Pillow>=10.0.0
|
23
|
+
Provides-Extra: dev
|
24
|
+
Requires-Dist: pytest; extra == "dev"
|
25
|
+
Requires-Dist: pre-commit; extra == "dev"
|
26
|
+
Requires-Dist: ruff==0.11.9; extra == "dev"
|
27
|
+
Requires-Dist: detect-secrets==1.4.0; extra == "dev"
|
28
|
+
Requires-Dist: codespell==2.4.1; extra == "dev"
|
29
|
+
Requires-Dist: black; extra == "dev"
|
30
|
+
Requires-Dist: questionary>=2.0.1; extra == "dev"
|
31
|
+
Requires-Dist: setuptools_scm>=8.0; extra == "dev"
|
32
|
+
Provides-Extra: coder
|
33
|
+
Requires-Dist: janito-coder; extra == "coder"
|
34
|
+
Dynamic: license-file
|
35
|
+
|
36
|
+
# nctl
|
37
|
+
|
38
|
+
```bash
|
39
|
+
$ nctl --help
|
40
|
+
Usage: nctl <command>
|
41
|
+
|
42
|
+
Interact with Nine API resources. See https://docs.nineapis.ch for the full API docs.
|
43
|
+
|
44
|
+
Run "nctl <command> --help" for more information on a command.
|
45
|
+
```
|
46
|
+
|
47
|
+
## Setup
|
48
|
+
|
49
|
+
```bash
|
50
|
+
# If you have go already installed
|
51
|
+
go install github.com/ninech/nctl@latest
|
52
|
+
|
53
|
+
# Homebrew
|
54
|
+
brew install ninech/taps/nctl
|
55
|
+
|
56
|
+
# Debian/Ubuntu
|
57
|
+
echo "deb [trusted=yes] https://repo.nine.ch/deb/ /" | sudo tee /etc/apt/sources.list.d/repo.nine.ch.list
|
58
|
+
sudo apt-get update
|
59
|
+
sudo apt-get install nctl
|
60
|
+
|
61
|
+
# Fedora/RHEL
|
62
|
+
cat <<EOF > /etc/yum.repos.d/repo.nine.ch.repo
|
63
|
+
[repo.nine.ch]
|
64
|
+
name=Nine Repo
|
65
|
+
baseurl=https://repo.nine.ch/yum/
|
66
|
+
enabled=1
|
67
|
+
gpgcheck=0
|
68
|
+
EOF
|
69
|
+
dnf install nctl
|
70
|
+
|
71
|
+
# Arch
|
72
|
+
# Install yay: https://github.com/Jguer/yay#binary
|
73
|
+
yay --version
|
74
|
+
yay -S nctl-bin
|
75
|
+
```
|
76
|
+
|
77
|
+
For Windows users, nctl is also built for arm64 and amd64. You can download the
|
78
|
+
latest exe file from the [releases](https://github.com/ninech/nctl/releases) and
|
79
|
+
install it.
|
80
|
+
|
81
|
+
## Getting started
|
82
|
+
|
83
|
+
* login to the API using `nctl auth login`
|
84
|
+
* run `nctl --help` to get a list of all available commands
|
janito-3.7.0/README.md
ADDED
@@ -0,0 +1,49 @@
|
|
1
|
+
# nctl
|
2
|
+
|
3
|
+
```bash
|
4
|
+
$ nctl --help
|
5
|
+
Usage: nctl <command>
|
6
|
+
|
7
|
+
Interact with Nine API resources. See https://docs.nineapis.ch for the full API docs.
|
8
|
+
|
9
|
+
Run "nctl <command> --help" for more information on a command.
|
10
|
+
```
|
11
|
+
|
12
|
+
## Setup
|
13
|
+
|
14
|
+
```bash
|
15
|
+
# If you have go already installed
|
16
|
+
go install github.com/ninech/nctl@latest
|
17
|
+
|
18
|
+
# Homebrew
|
19
|
+
brew install ninech/taps/nctl
|
20
|
+
|
21
|
+
# Debian/Ubuntu
|
22
|
+
echo "deb [trusted=yes] https://repo.nine.ch/deb/ /" | sudo tee /etc/apt/sources.list.d/repo.nine.ch.list
|
23
|
+
sudo apt-get update
|
24
|
+
sudo apt-get install nctl
|
25
|
+
|
26
|
+
# Fedora/RHEL
|
27
|
+
cat <<EOF > /etc/yum.repos.d/repo.nine.ch.repo
|
28
|
+
[repo.nine.ch]
|
29
|
+
name=Nine Repo
|
30
|
+
baseurl=https://repo.nine.ch/yum/
|
31
|
+
enabled=1
|
32
|
+
gpgcheck=0
|
33
|
+
EOF
|
34
|
+
dnf install nctl
|
35
|
+
|
36
|
+
# Arch
|
37
|
+
# Install yay: https://github.com/Jguer/yay#binary
|
38
|
+
yay --version
|
39
|
+
yay -S nctl-bin
|
40
|
+
```
|
41
|
+
|
42
|
+
For Windows users, nctl is also built for arm64 and amd64. You can download the
|
43
|
+
latest exe file from the [releases](https://github.com/ninech/nctl/releases) and
|
44
|
+
install it.
|
45
|
+
|
46
|
+
## Getting started
|
47
|
+
|
48
|
+
* login to the API using `nctl auth login`
|
49
|
+
* run `nctl --help` to get a list of all available commands
|
@@ -0,0 +1,49 @@
|
|
1
|
+
# Changelog
|
2
|
+
|
3
|
+
All notable changes to Janito will be documented in this file.
|
4
|
+
|
5
|
+
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
6
|
+
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
7
|
+
|
8
|
+
## [Unreleased]
|
9
|
+
|
10
|
+
### Removed
|
11
|
+
|
12
|
+
- **Breaking Change**: Removed `--role` argument and interactive profile selection
|
13
|
+
- The `--role` argument has been completely removed from the CLI
|
14
|
+
- Interactive profile selection has been removed from chat mode
|
15
|
+
- Use `--profile <name>` or shorthand flags like `--developer` and `--market` instead
|
16
|
+
- Default behavior now uses the Developer profile when no profile is specified
|
17
|
+
|
18
|
+
### Changed
|
19
|
+
|
20
|
+
- Updated documentation to reflect removal of role argument
|
21
|
+
- Added comprehensive profile documentation in `PROFILES.md`
|
22
|
+
- Simplified profile selection to use explicit flags only
|
23
|
+
|
24
|
+
## [Previous Versions]
|
25
|
+
|
26
|
+
### Added
|
27
|
+
|
28
|
+
- Initial support for profiles and roles
|
29
|
+
- Interactive profile selection in chat mode
|
30
|
+
- `--role` argument for specifying developer roles
|
31
|
+
- `--profile` argument for system prompt templates
|
32
|
+
- `--developer` and `--market` shorthand flags
|
33
|
+
|
34
|
+
### Available Profiles
|
35
|
+
|
36
|
+
- **Developer**: Optimized for software development tasks
|
37
|
+
- **Market Analyst**: Specialized for market analysis and business insights
|
38
|
+
|
39
|
+
### Supported Providers
|
40
|
+
|
41
|
+
- Moonshot AI (default)
|
42
|
+
- OpenAI
|
43
|
+
- Anthropic
|
44
|
+
- IBM WatsonX
|
45
|
+
- Google AI
|
46
|
+
|
47
|
+
---
|
48
|
+
|
49
|
+
For detailed information about profiles and their usage, see [PROFILES.md](PROFILES.md).
|
@@ -517,37 +517,4 @@ For users upgrading from previous versions:
|
|
517
517
|
|
518
518
|
---
|
519
519
|
|
520
|
-
## [3.1.0] - 2025-08-23
|
521
|
-
|
522
|
-
### Added
|
523
|
-
|
524
|
-
- **Enter Key Cancellation Support for Chat Mode**: Revolutionary usability improvement for interactive chat sessions
|
525
|
-
- **Instant Request Cancellation**: Press **Enter key** at any time to immediately cancel current LLM operations
|
526
|
-
- **Global Cancellation Manager**: Robust cross-component cancellation system spanning agent, driver, and prompt handler
|
527
|
-
- **User Feedback**: Clear visual confirmation with red "Request cancelled by Enter key" message
|
528
|
-
- **Clean State Management**: Automatic cleanup of cancellation state after request completion
|
529
|
-
- **Thread-Safe Implementation**: Safe cancellation across multiple threads and async operations
|
530
|
-
|
531
|
-
### Technical Implementation
|
532
|
-
|
533
|
-
- **Global Cancellation Manager**: New `janito.llm.cancellation_manager` module provides centralized cancellation handling
|
534
|
-
- **Key Binding Integration**: Enhanced chat mode with dedicated Enter key handling for cancellation
|
535
|
-
- **Cross-Component Support**: Cancellation signals properly propagate through entire application stack
|
536
|
-
- **Backward Compatible**: All existing functionality preserved, cancellation is additive feature
|
537
|
-
|
538
|
-
### Developer Experience
|
539
|
-
|
540
|
-
- **Extensible Architecture**: Cancellation system designed for future integration with other components
|
541
|
-
- **Clean API**: Simple interface for starting, cancelling, and clearing requests across application
|
542
|
-
- **Comprehensive Testing**: Full test coverage for cancellation scenarios and edge cases
|
543
|
-
|
544
|
-
### Documentation
|
545
|
-
|
546
|
-
- Updated CLI options documentation with new cancellation behavior
|
547
|
-
- Enhanced chat mode guides with cancellation instructions
|
548
|
-
- Added troubleshooting section for long-running requests
|
549
|
-
- New dedicated changelog: [CHANGELOG_3.1.0.md](../changelogs/CHANGELOG_3.1.0.md)
|
550
|
-
|
551
|
-
---
|
552
|
-
|
553
520
|
**Full Changelog**: https://github.com/ikignosis/janito/compare/v2.22.0...v2.23.0
|
@@ -24,7 +24,6 @@ janito --web
|
|
24
24
|
## Basic Usage Tips
|
25
25
|
- Use natural language to describe what you want Janito to do (e.g., "Add type hints to all functions in utils.py").
|
26
26
|
- In the chat shell, use `/help` for available commands. Use `/exec on` to enable code/shell execution tools at runtime.
|
27
|
-
- **Press Enter** at any time to cancel a long-running request in chat mode
|
28
27
|
- Use CLI flags to customize behavior (see [CLI Options](../reference/cli-options.md)).
|
29
28
|
|
30
29
|
## More Resources
|
@@ -1,15 +1,10 @@
|
|
1
|
-
---
|
2
|
-
description: "Janito - AI-powered development assistant that helps you write, analyze, and debug code with precision and transparency. Get started with intelligent code generation, debugging, and development automation."
|
3
|
-
image: https://janito.xyz/assets/images/social-preview.png
|
4
|
-
---
|
5
|
-
|
6
1
|
# Janito Documentation
|
7
2
|
|
8
3
|
Welcome to the Janito documentation! This site contains comprehensive guides, tutorials, and reference materials for using and extending Janito.
|
9
4
|
|
10
5
|
## What is Janito?
|
11
6
|
|
12
|
-
Janito is a powerful
|
7
|
+
Janito is a powerful AI assistant designed for developers, providing intelligent code assistance, terminal integration, and extensible tooling capabilities.
|
13
8
|
|
14
9
|
## Quick Start
|
15
10
|
|
@@ -35,15 +35,16 @@ janito -p moonshot "Your prompt here"
|
|
35
35
|
|
36
36
|
Janito supports the following Moonshot models:
|
37
37
|
|
38
|
-
- `kimi-k2-
|
39
|
-
- `kimi-k2-turbo-preview` - Turbo version with 128k context window
|
40
|
-
- `kimi-
|
41
|
-
|
38
|
+
- `kimi-k2-turbo-preview` (default) - Advanced reasoning model with 128k context window
|
39
|
+
- `kimi-k2-turbo-preview` - Turbo version of the advanced reasoning model with 128k context window
|
40
|
+
- `kimi-k1-8k` - Standard model with 8k context window
|
41
|
+
- `kimi-k1-32k` - Standard model with 32k context window
|
42
|
+
- `kimi-k1-128k` - Standard model with 128k context window
|
42
43
|
|
43
44
|
To select a model:
|
44
45
|
|
45
46
|
```bash
|
46
|
-
janito -p moonshot -m kimi-
|
47
|
+
janito -p moonshot -m kimi-k1-32k "Your prompt here"
|
47
48
|
```
|
48
49
|
|
49
50
|
## 5. Verify Your Configuration
|
@@ -74,7 +74,7 @@ Overwrite existing file (use with caution):
|
|
74
74
|
- **Path Expansion**: Supports `~` for home directory and environment variables like `$HOME`
|
75
75
|
- **Directory Creation**: Automatically creates parent directories as needed
|
76
76
|
- **Encoding Safety**: Uses UTF-8 encoding with proper error handling for international characters
|
77
|
-
- **Loop Protection**: Prevents
|
77
|
+
- **Loop Protection**: Prevents excessive file creation calls (max 5 per 10 seconds per file)
|
78
78
|
|
79
79
|
**Return Values:**
|
80
80
|
|
@@ -61,8 +61,7 @@ For setup instructions, see the [Mistral Setup Guide](mistral-setup.md).
|
|
61
61
|
|
62
62
|
### Moonshot
|
63
63
|
|
64
|
-
- **Kimi K2
|
65
|
-
- **Kimi K2 Turbo Preview** - High-performance turbo version
|
64
|
+
- **Kimi K2 Turbo Preview** (default) - Latest generation with enhanced performance
|
66
65
|
- **Kimi K2 0711 Preview** - Previous preview version
|
67
66
|
|
68
67
|
Moonshot provides open-source Kimi models with competitive performance.
|
@@ -26,7 +26,7 @@ pip install janito
|
|
26
26
|
janito "Create a Python script that reads a CSV file"
|
27
27
|
|
28
28
|
# Using a specific Moonshot model
|
29
|
-
janito -m kimi-
|
29
|
+
janito -m kimi-k1-8k "Explain quantum computing"
|
30
30
|
```
|
31
31
|
|
32
32
|
**Other Providers**
|
@@ -72,14 +72,14 @@ In chat mode, you can:
|
|
72
72
|
Set default provider and model:
|
73
73
|
```bash
|
74
74
|
janito --set provider=moonshot
|
75
|
-
janito --set model=kimi-
|
75
|
+
janito --set model=kimi-k1-8k
|
76
76
|
```
|
77
77
|
|
78
78
|
## Providers
|
79
79
|
|
80
80
|
### Moonshot (Recommended)
|
81
81
|
|
82
|
-
- **Models**: kimi-
|
82
|
+
- **Models**: kimi-k1-8k, kimi-k1-32k, kimi-k1-128k, kimi-k2-turbo-preview, kimi-k2-0905-preview
|
83
83
|
- **Strengths**: Excellent Chinese/English support, competitive pricing, fast responses
|
84
84
|
- **Setup**: Get API key from [Moonshot AI Platform](https://platform.moonshot.cn/)
|
85
85
|
|
@@ -106,9 +106,6 @@ janito --set model=kimi-k2-0905
|
|
106
106
|
|
107
107
|
## Advanced Features
|
108
108
|
|
109
|
-
### 🚀 New in v3.1.0: Enter Key Cancellation
|
110
|
-
**Chat Mode Enhancement**: Press **Enter** at any time to instantly cancel long-running requests in interactive chat mode. No more waiting for stuck requests!
|
111
|
-
|
112
109
|
### Tool Usage
|
113
110
|
|
114
111
|
Janito includes powerful built-in tools for:
|
@@ -133,7 +130,7 @@ You can also configure via environment variables:
|
|
133
130
|
```bash
|
134
131
|
export MOONSHOT_API_KEY=your_key_here
|
135
132
|
export JANITO_PROVIDER=moonshot
|
136
|
-
export JANITO_MODEL=kimi-
|
133
|
+
export JANITO_MODEL=kimi-k1-8k
|
137
134
|
```
|
138
135
|
|
139
136
|
**OpenAI:**
|
@@ -0,0 +1,38 @@
|
|
1
|
+
"""
|
2
|
+
Key bindings for Janito Chat CLI.
|
3
|
+
"""
|
4
|
+
|
5
|
+
from prompt_toolkit.key_binding import KeyBindings
|
6
|
+
from janito.tools.permissions import get_global_allowed_permissions
|
7
|
+
|
8
|
+
|
9
|
+
class KeyBindingsFactory:
|
10
|
+
@staticmethod
|
11
|
+
def create():
|
12
|
+
bindings = KeyBindings()
|
13
|
+
|
14
|
+
@bindings.add("c-y")
|
15
|
+
def _(event):
|
16
|
+
buf = event.app.current_buffer
|
17
|
+
buf.text = "Yes"
|
18
|
+
buf.validate_and_handle()
|
19
|
+
|
20
|
+
@bindings.add("c-n")
|
21
|
+
def _(event):
|
22
|
+
buf = event.app.current_buffer
|
23
|
+
buf.text = "No"
|
24
|
+
buf.validate_and_handle()
|
25
|
+
|
26
|
+
@bindings.add("f2")
|
27
|
+
def _(event):
|
28
|
+
buf = event.app.current_buffer
|
29
|
+
buf.text = "/restart"
|
30
|
+
buf.validate_and_handle()
|
31
|
+
|
32
|
+
@bindings.add("f12")
|
33
|
+
def _(event):
|
34
|
+
buf = event.app.current_buffer
|
35
|
+
buf.text = "Do It"
|
36
|
+
buf.validate_and_handle()
|
37
|
+
|
38
|
+
return bindings
|
@@ -22,7 +22,6 @@ import time
|
|
22
22
|
|
23
23
|
# Shared prompt/agent factory
|
24
24
|
from janito.cli.prompt_setup import setup_agent_and_prompt_handler
|
25
|
-
from janito.llm.cancellation_manager import get_cancellation_manager
|
26
25
|
|
27
26
|
import time
|
28
27
|
|
@@ -114,10 +113,6 @@ class ChatSession:
|
|
114
113
|
|
115
114
|
# Check if multi-line mode should be enabled by default
|
116
115
|
self.multi_line_mode = getattr(args, "multi", False) if args else False
|
117
|
-
|
118
|
-
# Default to single-line mode (Enter submits) unless explicitly enabled
|
119
|
-
if not self.multi_line_mode:
|
120
|
-
self.multi_line_mode = False
|
121
116
|
|
122
117
|
def _select_profile_and_role(self, args, role):
|
123
118
|
profile, role_arg, python_profile, market_profile = self._extract_args(args)
|
@@ -288,13 +283,7 @@ class ChatSession:
|
|
288
283
|
)
|
289
284
|
)
|
290
285
|
|
291
|
-
|
292
|
-
self._prompt_handler.run_prompt(cmd_input)
|
293
|
-
finally:
|
294
|
-
# Ensure cancellation manager is cleared
|
295
|
-
cancel_manager = get_cancellation_manager()
|
296
|
-
cancel_manager.clear_current_request()
|
297
|
-
|
286
|
+
self._prompt_handler.run_prompt(cmd_input)
|
298
287
|
end_time = time.time()
|
299
288
|
elapsed = end_time - start_time
|
300
289
|
self.msg_count += 1
|
@@ -23,11 +23,6 @@ class MultiShellHandler(ShellCmdHandler):
|
|
23
23
|
submitted["value"] = buffer.text
|
24
24
|
event.app.exit(result=buffer.text)
|
25
25
|
|
26
|
-
# Support single ESC to cancel/interrupt (like Ctrl+C)
|
27
|
-
@bindings.add("escape")
|
28
|
-
def _(event):
|
29
|
-
raise KeyboardInterrupt
|
30
|
-
|
31
26
|
# Support Ctrl+D
|
32
27
|
@bindings.add("c-d")
|
33
28
|
def _(event):
|
@@ -59,53 +59,39 @@ Examples:
|
|
59
59
|
command = args[0].lower()
|
60
60
|
whitelist_manager = get_url_whitelist_manager()
|
61
61
|
|
62
|
-
|
63
|
-
|
64
|
-
|
65
|
-
|
66
|
-
|
67
|
-
|
68
|
-
|
69
|
-
|
70
|
-
|
71
|
-
|
62
|
+
if command == "list":
|
63
|
+
sites = whitelist_manager.get_allowed_sites()
|
64
|
+
if sites:
|
65
|
+
print("Allowed sites:")
|
66
|
+
for site in sites:
|
67
|
+
print(f" • {site}")
|
68
|
+
else:
|
69
|
+
print("No sites are whitelisted (all sites are allowed)")
|
70
|
+
|
71
|
+
elif command == "add":
|
72
|
+
if len(args) < 2:
|
73
|
+
print("Error: Please specify a site to add")
|
74
|
+
return
|
75
|
+
site = args[1]
|
76
|
+
if whitelist_manager.add_allowed_site(site):
|
77
|
+
print(f"✅ Added '{site}' to allowed sites")
|
78
|
+
else:
|
79
|
+
print(f"ℹ️ '{site}' is already in allowed sites")
|
80
|
+
|
81
|
+
elif command == "remove":
|
82
|
+
if len(args) < 2:
|
83
|
+
print("Error: Please specify a site to remove")
|
84
|
+
return
|
85
|
+
site = args[1]
|
86
|
+
if whitelist_manager.remove_allowed_site(site):
|
87
|
+
print(f"✅ Removed '{site}' from allowed sites")
|
88
|
+
else:
|
89
|
+
print(f"ℹ️ '{site}' was not in allowed sites")
|
90
|
+
|
91
|
+
elif command == "clear":
|
92
|
+
whitelist_manager.clear_whitelist()
|
93
|
+
print("✅ Cleared all allowed sites (all sites are now allowed)")
|
94
|
+
|
72
95
|
else:
|
73
96
|
print(f"Error: Unknown command '{command}'")
|
74
97
|
print(self.get_usage())
|
75
|
-
|
76
|
-
def _handle_list(self, args, whitelist_manager):
|
77
|
-
"""Handle list command."""
|
78
|
-
sites = whitelist_manager.get_allowed_sites()
|
79
|
-
if sites:
|
80
|
-
print("Allowed sites:")
|
81
|
-
for site in sites:
|
82
|
-
print(f" • {site}")
|
83
|
-
else:
|
84
|
-
print("No sites are whitelisted (all sites are allowed)")
|
85
|
-
|
86
|
-
def _handle_add(self, args, whitelist_manager):
|
87
|
-
"""Handle add command."""
|
88
|
-
if len(args) < 2:
|
89
|
-
print("Error: Please specify a site to add")
|
90
|
-
return
|
91
|
-
site = args[1]
|
92
|
-
if whitelist_manager.add_allowed_site(site):
|
93
|
-
print(f"✅ Added '{site}' to allowed sites")
|
94
|
-
else:
|
95
|
-
print(f"ℹ️ '{site}' is already in allowed sites")
|
96
|
-
|
97
|
-
def _handle_remove(self, args, whitelist_manager):
|
98
|
-
"""Handle remove command."""
|
99
|
-
if len(args) < 2:
|
100
|
-
print("Error: Please specify a site to remove")
|
101
|
-
return
|
102
|
-
site = args[1]
|
103
|
-
if whitelist_manager.remove_allowed_site(site):
|
104
|
-
print(f"✅ Removed '{site}' from allowed sites")
|
105
|
-
else:
|
106
|
-
print(f"ℹ️ '{site}' was not in allowed sites")
|
107
|
-
|
108
|
-
def _handle_clear(self, args, whitelist_manager):
|
109
|
-
"""Handle clear command."""
|
110
|
-
whitelist_manager.clear_whitelist()
|
111
|
-
print("✅ Cleared all allowed sites (all sites are now allowed)")
|