janito 2.19.0__tar.gz → 2.19.1__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-2.19.0 → janito-2.19.1}/PKG-INFO +1 -1
- janito-2.19.1/docs/index.md +53 -0
- janito-2.19.1/docs/overrides/partials/copyright.html +6 -0
- janito-2.19.1/docs/supported-providers-models.md +94 -0
- janito-2.19.1/janito/i18n/it.py +46 -0
- {janito-2.19.0 → janito-2.19.1}/janito/provider_registry.py +11 -1
- {janito-2.19.0 → janito-2.19.1}/janito/report_events.py +1 -0
- {janito-2.19.0 → janito-2.19.1}/janito/tools/adapters/local/run_powershell_command.py +5 -14
- {janito-2.19.0 → janito-2.19.1}/janito/tools/tool_base.py +2 -0
- {janito-2.19.0 → janito-2.19.1}/janito.egg-info/PKG-INFO +1 -1
- {janito-2.19.0 → janito-2.19.1}/janito.egg-info/SOURCES.txt +4 -0
- {janito-2.19.0 → janito-2.19.1}/mkdocs.yml +6 -1
- janito-2.19.1/mkdocs_hooks.py +51 -0
- janito-2.19.0/docs/supported-providers-models.md +0 -77
- {janito-2.19.0 → janito-2.19.1}/.codespellrc +0 -0
- {janito-2.19.0 → janito-2.19.1}/.gitattributes +0 -0
- {janito-2.19.0 → janito-2.19.1}/.github/workflows/python-app.yml.disabled +0 -0
- {janito-2.19.0 → janito-2.19.1}/.gitignore +0 -0
- {janito-2.19.0 → janito-2.19.1}/.pre-commit-config.yaml +0 -0
- {janito-2.19.0 → janito-2.19.1}/.secrets.baseline +0 -0
- {janito-2.19.0 → janito-2.19.1}/.vscode/settings.json +0 -0
- {janito-2.19.0 → janito-2.19.1}/CHANGELOG.md +0 -0
- {janito-2.19.0 → janito-2.19.1}/CHANGELOG_2.16.0.md +0 -0
- {janito-2.19.0 → janito-2.19.1}/LICENSE +0 -0
- {janito-2.19.0 → janito-2.19.1}/README-dev.md +0 -0
- {janito-2.19.0 → janito-2.19.1}/README.md +0 -0
- {janito-2.19.0 → janito-2.19.1}/UPDATING_DOCS.md +0 -0
- {janito-2.19.0 → janito-2.19.1}/adding_mcp.txt +0 -0
- {janito-2.19.0 → janito-2.19.1}/docs/DIV.md +0 -0
- {janito-2.19.0 → janito-2.19.1}/docs/Interfaces.txt +0 -0
- {janito-2.19.0 → janito-2.19.1}/docs/TOOLBAR-STYLING.md +0 -0
- {janito-2.19.0 → janito-2.19.1}/docs/about/costs.md +0 -0
- {janito-2.19.0 → janito-2.19.1}/docs/about/vs-webchats.md +0 -0
- {janito-2.19.0 → janito-2.19.1}/docs/about/why.md +0 -0
- {janito-2.19.0 → janito-2.19.1}/docs/alibaba-setup.md +0 -0
- {janito-2.19.0 → janito-2.19.1}/docs/alternatives.md +0 -0
- {janito-2.19.0 → janito-2.19.1}/docs/cerebras-setup.md +0 -0
- {janito-2.19.0 → janito-2.19.1}/docs/code_intelligence/agentic-frameworks-comparison.md +0 -0
- {janito-2.19.0 → janito-2.19.1}/docs/code_intelligence/code-generation-challenges.md +0 -0
- {janito-2.19.0 → janito-2.19.1}/docs/code_intelligence/code-generation-observability.md +0 -0
- {janito-2.19.0 → janito-2.19.1}/docs/code_intelligence/our-approach.md +0 -0
- {janito-2.19.0 → janito-2.19.1}/docs/code_intelligence/why-string-replacement.md +0 -0
- {janito-2.19.0 → janito-2.19.1}/docs/concepts/analysis-style.md +0 -0
- {janito-2.19.0 → janito-2.19.1}/docs/concepts/human-guided-ai.md +0 -0
- {janito-2.19.0 → janito-2.19.1}/docs/concepts/index.md +0 -0
- {janito-2.19.0 → janito-2.19.1}/docs/concepts/language-model-clients.md +0 -0
- {janito-2.19.0 → janito-2.19.1}/docs/concepts/prompt-design-style.md +0 -0
- {janito-2.19.0 → janito-2.19.1}/docs/deepseek-setup.md +0 -0
- {janito-2.19.0 → janito-2.19.1}/docs/driver-flow.md +0 -0
- {janito-2.19.0 → janito-2.19.1}/docs/driver-request-cancellation.md +0 -0
- {janito-2.19.0 → janito-2.19.1}/docs/drivers/events.md +0 -0
- {janito-2.19.0 → janito-2.19.1}/docs/drivers.md +0 -0
- {janito-2.19.0 → janito-2.19.1}/docs/event-bus.md +0 -0
- {janito-2.19.0 → janito-2.19.1}/docs/guides/configuration.md +0 -0
- {janito-2.19.0 → janito-2.19.1}/docs/guides/developing.md +0 -0
- {janito-2.19.0 → janito-2.19.1}/docs/guides/disabled-tools.md +0 -0
- {janito-2.19.0 → janito-2.19.1}/docs/guides/installation.md +0 -0
- {janito-2.19.0 → janito-2.19.1}/docs/guides/profiles.md +0 -0
- {janito-2.19.0 → janito-2.19.1}/docs/guides/prompting/README.md +0 -0
- {janito-2.19.0 → janito-2.19.1}/docs/guides/single-shot-terminal.md +0 -0
- {janito-2.19.0 → janito-2.19.1}/docs/guides/terminal-shell.md +0 -0
- {janito-2.19.0 → janito-2.19.1}/docs/guides/tools-developer-guide.md +0 -0
- {janito-2.19.0 → janito-2.19.1}/docs/guides/using.md +0 -0
- {janito-2.19.0 → janito-2.19.1}/docs/guides/using_tools.md +0 -0
- {janito-2.19.0 → janito-2.19.1}/docs/imgs/code-generation-observability.png +0 -0
- {janito-2.19.0 → janito-2.19.1}/docs/imgs/code_generation_observability.png +0 -0
- {janito-2.19.0 → janito-2.19.1}/docs/imgs/happy-programmer.png +0 -0
- {janito-2.19.0 → janito-2.19.1}/docs/imgs/happy-programmer.svg +0 -0
- {janito-2.19.0 → janito-2.19.1}/docs/imgs/terminal-one-shot.png +0 -0
- {janito-2.19.0 → janito-2.19.1}/docs/imgs/terminal-shell.png +0 -0
- {janito-2.19.0 → janito-2.19.1}/docs/imgs/terminal_one_shot.png +0 -0
- {janito-2.19.0 → janito-2.19.1}/docs/imgs/terminal_shell.png +0 -0
- {janito-2.19.0 → janito-2.19.1}/docs/llm-drivers-required-config.md +0 -0
- {janito-2.19.0 → janito-2.19.1}/docs/llm-drivers.md +0 -0
- {janito-2.19.0 → janito-2.19.1}/docs/meta/developer-toolchain.md +0 -0
- {janito-2.19.0 → janito-2.19.1}/docs/meta/quality-checks.txt +0 -0
- {janito-2.19.0 → janito-2.19.1}/docs/moonshotai-setup.md +0 -0
- {janito-2.19.0 → janito-2.19.1}/docs/openai-setup.md +0 -0
- {janito-2.19.0 → janito-2.19.1}/docs/reference/api.md +0 -0
- {janito-2.19.0 → janito-2.19.1}/docs/reference/azure-openai.md +0 -0
- {janito-2.19.0 → janito-2.19.1}/docs/reference/cli-options.md +0 -0
- {janito-2.19.0 → janito-2.19.1}/docs/reference/message-handler-model.md +0 -0
- {janito-2.19.0 → janito-2.19.1}/docs/reference/rich-message-handler.md +0 -0
- {janito-2.19.0 → janito-2.19.1}/docs/security.md +0 -0
- {janito-2.19.0 → janito-2.19.1}/docs/tools/search-text.md +0 -0
- {janito-2.19.0 → janito-2.19.1}/docs/tools-index.md +0 -0
- {janito-2.19.0 → janito-2.19.1}/docs/tools-natural-results.md +0 -0
- {janito-2.19.0 → janito-2.19.1}/docs/tools-precision.md +0 -0
- {janito-2.19.0 → janito-2.19.1}/docs/z-ai-setup.md +0 -0
- {janito-2.19.0 → janito-2.19.1}/git_diff.txt +0 -0
- {janito-2.19.0 → janito-2.19.1}/github_diff +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/README.md +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/__init__.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/__main__.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/_version.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/agent/setup_agent.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/agent/templates/profiles/system_prompt_template_Developer_with_Python_Tools.txt.j2 +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/agent/templates/profiles/system_prompt_template_developer.txt.j2 +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/agent/templates/profiles/system_prompt_template_model_conversation_without_tools_or_context.txt.j2 +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/cli/__init__.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/cli/chat_mode/bindings.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/cli/chat_mode/chat_entry.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/cli/chat_mode/prompt_style.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/cli/chat_mode/script_runner.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/cli/chat_mode/session.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/cli/chat_mode/session_profile_select.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/cli/chat_mode/shell/autocomplete.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/cli/chat_mode/shell/commands/__init__.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/cli/chat_mode/shell/commands/_priv_check.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/cli/chat_mode/shell/commands/_priv_status.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/cli/chat_mode/shell/commands/bang.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/cli/chat_mode/shell/commands/base.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/cli/chat_mode/shell/commands/clear.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/cli/chat_mode/shell/commands/conversation_restart.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/cli/chat_mode/shell/commands/execute.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/cli/chat_mode/shell/commands/help.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/cli/chat_mode/shell/commands/history_view.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/cli/chat_mode/shell/commands/lang.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/cli/chat_mode/shell/commands/model.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/cli/chat_mode/shell/commands/multi.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/cli/chat_mode/shell/commands/privileges.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/cli/chat_mode/shell/commands/prompt.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/cli/chat_mode/shell/commands/read.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/cli/chat_mode/shell/commands/role.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/cli/chat_mode/shell/commands/session.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/cli/chat_mode/shell/commands/session_control.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/cli/chat_mode/shell/commands/tools.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/cli/chat_mode/shell/commands/utility.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/cli/chat_mode/shell/commands/verbose.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/cli/chat_mode/shell/commands/write.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/cli/chat_mode/shell/commands.bak.zip +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/cli/chat_mode/shell/input_history.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/cli/chat_mode/shell/session/__init__.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/cli/chat_mode/shell/session/history.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/cli/chat_mode/shell/session/manager.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/cli/chat_mode/shell/session.bak.zip +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/cli/chat_mode/toolbar.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/cli/cli_commands/list_config.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/cli/cli_commands/list_drivers.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/cli/cli_commands/list_models.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/cli/cli_commands/list_profiles.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/cli/cli_commands/list_providers.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/cli/cli_commands/list_providers_region.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/cli/cli_commands/list_tools.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/cli/cli_commands/model_selection.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/cli/cli_commands/model_utils.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/cli/cli_commands/ping_providers.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/cli/cli_commands/set_api_key.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/cli/cli_commands/show_config.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/cli/cli_commands/show_system_prompt.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/cli/config.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/cli/console.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/cli/core/__init__.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/cli/core/event_logger.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/cli/core/getters.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/cli/core/model_guesser.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/cli/core/runner.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/cli/core/setters.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/cli/core/unsetters.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/cli/main.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/cli/main_cli.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/cli/prompt_core.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/cli/prompt_handler.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/cli/prompt_setup.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/cli/rich_terminal_reporter.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/cli/single_shot_mode/__init__.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/cli/single_shot_mode/handler.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/cli/utils.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/cli/verbose_output.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/config.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/config_manager.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/conversation_history.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/dir_walk_utils.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/docs/GETTING_STARTED.md +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/driver_events.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/drivers/azure_openai/driver.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/drivers/cerebras/__init__.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/drivers/dashscope.bak.zip +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/drivers/openai/README.md +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/drivers/openai/driver.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/drivers/openai_responses.bak.zip +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/drivers/zai/__init__.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/drivers/zai/driver.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/event_bus/__init__.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/event_bus/bus.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/event_bus/event.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/event_bus/handler.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/event_bus/queue_bus.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/exceptions.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/formatting.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/formatting_token.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/gitignore_utils.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/i18n/__init__.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/i18n/messages.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/i18n/pt.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/llm/README.md +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/llm/__init__.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/llm/agent.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/llm/auth.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/llm/auth_utils.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/llm/driver.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/llm/driver_config.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/llm/driver_config_builder.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/llm/driver_input.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/llm/message_parts.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/llm/model.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/llm/provider.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/mkdocs.yml +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/perf_singleton.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/performance_collector.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/platform_discovery.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/provider_config.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/providers/__init__.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/providers/alibaba/__init__.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/providers/alibaba/model_info.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/providers/alibaba/provider.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/providers/anthropic/model_info.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/providers/anthropic/provider.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/providers/azure_openai/model_info.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/providers/azure_openai/provider.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/providers/cerebras/__init__.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/providers/cerebras/model_info.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/providers/cerebras/provider.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/providers/dashscope.bak.zip +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/providers/deepseek/__init__.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/providers/deepseek/model_info.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/providers/deepseek/provider.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/providers/google/__init__.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/providers/google/model_info.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/providers/google/provider.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/providers/moonshotai/__init__.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/providers/moonshotai/model_info.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/providers/moonshotai/provider.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/providers/openai/__init__.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/providers/openai/model_info.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/providers/openai/provider.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/providers/openai/schema_generator.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/providers/registry.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/providers/zai/__init__.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/providers/zai/model_info.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/providers/zai/provider.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/providers/zai/schema_generator.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/regions/__init__.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/regions/cli.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/regions/geo_utils.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/regions/provider_regions.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/shell.bak.zip +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/tools/DOCSTRING_STANDARD.txt +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/tools/README.md +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/tools/__init__.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/tools/adapters/__init__.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/tools/adapters/local/__init__.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/tools/adapters/local/adapter.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/tools/adapters/local/ask_user.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/tools/adapters/local/copy_file.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/tools/adapters/local/create_directory.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/tools/adapters/local/create_file.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/tools/adapters/local/delete_text_in_file.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/tools/adapters/local/fetch_url.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/tools/adapters/local/find_files.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/tools/adapters/local/get_file_outline/__init__.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/tools/adapters/local/get_file_outline/core.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/tools/adapters/local/get_file_outline/java_outline.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/tools/adapters/local/get_file_outline/markdown_outline.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/tools/adapters/local/get_file_outline/python_outline.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/tools/adapters/local/get_file_outline/search_outline.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/tools/adapters/local/move_file.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/tools/adapters/local/open_html_in_browser.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/tools/adapters/local/open_url.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/tools/adapters/local/python_code_run.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/tools/adapters/local/python_command_run.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/tools/adapters/local/python_file_run.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/tools/adapters/local/read_files.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/tools/adapters/local/remove_directory.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/tools/adapters/local/remove_file.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/tools/adapters/local/replace_text_in_file.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/tools/adapters/local/run_bash_command.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/tools/adapters/local/search_text/__init__.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/tools/adapters/local/search_text/core.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/tools/adapters/local/search_text/match_lines.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/tools/adapters/local/search_text/pattern_utils.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/tools/adapters/local/search_text/traverse_directory.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/tools/adapters/local/validate_file_syntax/__init__.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/tools/adapters/local/validate_file_syntax/core.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/tools/adapters/local/validate_file_syntax/css_validator.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/tools/adapters/local/validate_file_syntax/html_validator.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/tools/adapters/local/validate_file_syntax/js_validator.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/tools/adapters/local/validate_file_syntax/json_validator.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/tools/adapters/local/validate_file_syntax/markdown_validator.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/tools/adapters/local/validate_file_syntax/ps1_validator.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/tools/adapters/local/validate_file_syntax/python_validator.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/tools/adapters/local/validate_file_syntax/xml_validator.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/tools/adapters/local/validate_file_syntax/yaml_validator.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/tools/adapters/local/view_file.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/tools/disabled_tools.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/tools/inspect_registry.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/tools/outline_file.bak.zip +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/tools/path_security.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/tools/permissions.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/tools/permissions_parse.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/tools/tool_events.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/tools/tool_run_exception.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/tools/tool_use_tracker.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/tools/tool_utils.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/tools/tools_adapter.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/tools/tools_schema.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito/utils.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito.egg-info/dependency_links.txt +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito.egg-info/entry_points.txt +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito.egg-info/requires.txt +0 -0
- {janito-2.19.0 → janito-2.19.1}/janito.egg-info/top_level.txt +0 -0
- {janito-2.19.0 → janito-2.19.1}/pyproject.toml +0 -0
- {janito-2.19.0 → janito-2.19.1}/pytest.ini +0 -0
- {janito-2.19.0 → janito-2.19.1}/requirements-dev.txt +0 -0
- {janito-2.19.0 → janito-2.19.1}/requirements.txt +0 -0
- {janito-2.19.0 → janito-2.19.1}/setup.cfg +0 -0
- {janito-2.19.0 → janito-2.19.1}/tests/adapters/local/get_file_outline/test_core_outline.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/tests/adapters/local/test_read_files.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/tests/test_cli_list_models.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/tests/test_cli_list_providers.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/tests/test_cli_list_providers_alibaba.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/tests/test_cli_list_providers_moonshotai.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/tests/test_cli_version.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/tests/test_disabled_tools.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/tests/test_provider_alibaba.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/tests/test_provider_cerebras.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/tests/test_provider_moonshotai.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/tools/release.py +0 -0
- {janito-2.19.0 → janito-2.19.1}/tox.ini +0 -0
@@ -0,0 +1,53 @@
|
|
1
|
+
# Janito Documentation
|
2
|
+
|
3
|
+
Welcome to the Janito documentation! This site contains comprehensive guides, tutorials, and reference materials for using and extending Janito.
|
4
|
+
|
5
|
+
## What is Janito?
|
6
|
+
|
7
|
+
Janito is a powerful AI assistant designed for developers, providing intelligent code assistance, terminal integration, and extensible tooling capabilities.
|
8
|
+
|
9
|
+
## Quick Start
|
10
|
+
|
11
|
+
- [**Installation Guide**](guides/installation.md) - Get Janito up and running
|
12
|
+
- [**Quickstart & Basic Usage**](guides/using.md) - Learn the basics
|
13
|
+
- [**Configuration**](guides/configuration.md) - Set up Janito for your needs
|
14
|
+
|
15
|
+
## Key Features
|
16
|
+
|
17
|
+
- **Terminal Integration**: Seamless shell integration with intelligent command assistance
|
18
|
+
- **Code Intelligence**: Advanced code analysis and generation capabilities
|
19
|
+
- **Extensible Tools**: Custom tool development and integration
|
20
|
+
- **Multi-Provider Support**: Works with OpenAI, DeepSeek, MoonshotAI, and more
|
21
|
+
- **Human-Guided AI**: Collaborative AI that works with you, not instead of you
|
22
|
+
|
23
|
+
## Documentation Sections
|
24
|
+
|
25
|
+
### Using Janito
|
26
|
+
Learn how to use Janito effectively:
|
27
|
+
- [Terminal Shell](guides/terminal-shell.md) - Interactive terminal sessions
|
28
|
+
- [Single-Shot Commands](guides/single-shot-terminal.md) - One-off command execution
|
29
|
+
- [Profiles](guides/profiles.md) - Custom configurations for different workflows
|
30
|
+
|
31
|
+
### Development & Extension
|
32
|
+
For developers looking to extend Janito:
|
33
|
+
- [Developer Guide](guides/developing.md) - Core development concepts
|
34
|
+
- [Tools Developer Guide](guides/tools-developer-guide.md) - Creating custom tools
|
35
|
+
- [Developer Toolchain](meta/developer-toolchain.md) - Development setup and workflows
|
36
|
+
|
37
|
+
### Supported Providers
|
38
|
+
Janito supports multiple AI providers:
|
39
|
+
- [OpenAI](openai-setup.md)
|
40
|
+
- [DeepSeek](deepseek-setup.md)
|
41
|
+
- [MoonshotAI](moonshotai-setup.md)
|
42
|
+
- [Z.ai](z-ai-setup.md)
|
43
|
+
- [Cerebras](cerebras-setup.md)
|
44
|
+
|
45
|
+
## Getting Help
|
46
|
+
|
47
|
+
- Check our [troubleshooting guides](guides/configuration.md)
|
48
|
+
- Review [common issues](guides/using.md)
|
49
|
+
- Explore [alternative solutions](alternatives.md)
|
50
|
+
|
51
|
+
---
|
52
|
+
|
53
|
+
*This documentation is automatically deployed from the latest commit and will always reflect the most current version of Janito.*
|
@@ -0,0 +1,6 @@
|
|
1
|
+
<div class="md-copyright" style="text-align: center; width: 100%;">
|
2
|
+
<div class="md-copyright__highlight" style="display: inline-block;">
|
3
|
+
Generated by Janito •
|
4
|
+
<span style="color: var(--md-accent-fg-color);">{{ config.extra.commit_hash or 'unknown' }}</span>
|
5
|
+
</div>
|
6
|
+
</div>
|
@@ -0,0 +1,94 @@
|
|
1
|
+
# Supported Providers and Models
|
2
|
+
|
3
|
+
This page lists the supported providers and their available models, organized by openness and sorted alphabetically within each category.
|
4
|
+
|
5
|
+
## Open-Source / Open-Weight Models
|
6
|
+
|
7
|
+
### Alibaba
|
8
|
+
|
9
|
+
- **Qwen3 235B A22B Instruct** (default) - Latest 1M context model
|
10
|
+
- **Qwen3 235B A22B Thinking** - Reasoning-focused version
|
11
|
+
- **Qwen3 30B A3B Instruct** - Compact 1M context model
|
12
|
+
- **Qwen3 30B A3B Thinking** - Compact reasoning version
|
13
|
+
- **Qwen3 Coder Plus** - Specialized for programming tasks
|
14
|
+
- **Qwen3 Coder 480B** - Large-scale coding model
|
15
|
+
- **Qwen Turbo** - High-speed general purpose
|
16
|
+
- **Qwen Plus** - Balanced performance
|
17
|
+
- **Qwen Max** - Maximum capability
|
18
|
+
|
19
|
+
### Cerebras
|
20
|
+
|
21
|
+
**Production Models:**
|
22
|
+
|
23
|
+
- **Qwen-3 32B** - General instruction following
|
24
|
+
|
25
|
+
**Preview Models:**
|
26
|
+
|
27
|
+
- **Qwen-3 Coder 480B** - Programming-focused with 32k context
|
28
|
+
- **Qwen-3 235B A22B Instruct** - Large-scale instruction model
|
29
|
+
- **Qwen-3 235B A22B Thinking** - Reasoning-focused version
|
30
|
+
- **GPT-OSS 120B** - Open-source model
|
31
|
+
|
32
|
+
**Notes:**
|
33
|
+
|
34
|
+
- All Cerebras models support 128k context window
|
35
|
+
- Models are optimized for low-latency inference
|
36
|
+
- Pricing varies by model size and capability
|
37
|
+
|
38
|
+
### DeepSeek
|
39
|
+
|
40
|
+
- **DeepSeek Chat** (default) - General purpose chat model
|
41
|
+
- **DeepSeek Reasoner** - Specialized for complex reasoning tasks
|
42
|
+
|
43
|
+
### MoonshotAI
|
44
|
+
|
45
|
+
- **Kimi K2 Turbo Preview** (default) - Latest generation with enhanced performance
|
46
|
+
- **Kimi K2 0711 Preview** - Previous preview version
|
47
|
+
|
48
|
+
MoonshotAI provides open-source Kimi models with competitive performance.
|
49
|
+
|
50
|
+
### Z.AI
|
51
|
+
|
52
|
+
- **GLM-4.5** (default) - Advanced reasoning and conversation
|
53
|
+
- **GLM-4.5 Air** - Compact and efficient version
|
54
|
+
|
55
|
+
## Proprietary Models
|
56
|
+
|
57
|
+
### Anthropic
|
58
|
+
|
59
|
+
- **Claude 3.7 Sonnet** (default) - Latest Claude model with enhanced reasoning
|
60
|
+
- **Claude 4 Opus** - Most capable Claude model (preview)
|
61
|
+
- **Claude 4 Sonnet** - Balanced performance and capability (preview)
|
62
|
+
- **Claude 3.5 Sonnet** - Previous generation, still highly capable
|
63
|
+
- **Claude 3.5 Haiku** - Fast and efficient
|
64
|
+
- **Claude 3 Haiku** - Compact and cost-effective
|
65
|
+
|
66
|
+
### Google
|
67
|
+
|
68
|
+
- **Gemini 2.5 Flash** (default) - Fast and efficient
|
69
|
+
- **Gemini 2.5 Pro** - Advanced capabilities with extended context
|
70
|
+
- **Gemini 2.5 Flash-Lite Preview** - Lightweight preview version
|
71
|
+
|
72
|
+
### OpenAI
|
73
|
+
|
74
|
+
- **GPT-5** (default) - Latest generation with advanced reasoning
|
75
|
+
- **GPT-5 Mini** - Compact version of GPT-5
|
76
|
+
- **GPT-5 Nano** - Ultra-compact version
|
77
|
+
- **GPT-4.1** - Enhanced GPT-4 with improved capabilities
|
78
|
+
- **GPT-4.1-mini** - Balanced performance and efficiency
|
79
|
+
- **GPT-4.1-nano** - Lightweight version
|
80
|
+
- **GPT-4 Turbo** - High-performance GPT-4 variant
|
81
|
+
- **GPT-4o** - Multimodal GPT-4 optimized for chat
|
82
|
+
- **GPT-4o-mini** - Compact multimodal version
|
83
|
+
- **o3** - Advanced reasoning model
|
84
|
+
- **o3-mini** - Compact reasoning model
|
85
|
+
- **o4-mini** - Latest mini reasoning model
|
86
|
+
- **GPT-3.5 Turbo** - Cost-effective general purpose
|
87
|
+
|
88
|
+
For setup instructions, see the [OpenAI Setup Guide](openai-setup.md).
|
89
|
+
|
90
|
+
### Azure OpenAI
|
91
|
+
|
92
|
+
- **Azure OpenAI Deployment** - Custom Azure OpenAI deployments
|
93
|
+
|
94
|
+
For setup instructions, see [Using Azure OpenAI with Janito](reference/azure-openai.md).
|
@@ -0,0 +1,46 @@
|
|
1
|
+
# pragma: allowlist secret
|
2
|
+
translations = {
|
3
|
+
"36107ed78ab25f6fb12ad8ce13018cd1ce6735d1": "Avvio del server web...",
|
4
|
+
"70a0d194687568a47aa617fd85036ace1e69a982": "Vuoi davvero uscire? (s/n): ",
|
5
|
+
"5c9ebcbbd7632ecb328bd52958b17158afaa32c6": "F12 = Azione Rapida (segue l'azione raccomandata)",
|
6
|
+
"fe21121e2934234b68d19b2757532117d440c1e3": "Chiave API non trovata. Si prega di configurare 'api_key' nel file di configurazione.",
|
7
|
+
"c9e3759b1756eba35b381ce2b72cd659e132b01f": "Ciao, {name}!",
|
8
|
+
"ca1fee2f55baabdc2e4b0e9529c89ee024e62079": "Nessun prompt fornito nei messaggi",
|
9
|
+
"f7449d23d0c500ae2a0b31e04f92b47a4d8ae845": "max_tokens deve essere un intero, ricevuto: {resolved_max_tokens!r}",
|
10
|
+
"70a9ed8edb6da12e208431a31aa16ba54419b26f": "Risposta non valida/malformed da OpenAI (tentativo {attempt}/{max_retries}). Riprovo tra {wait_time} secondi...",
|
11
|
+
"a873085e3b06184fb5d27e842f97b06b6190976d": "Numero massimo di tentativi per risposta non valida raggiunto. Generazione errore.",
|
12
|
+
"66a34568bbe846bb1bde3619eb4d6dfa10211104": "L'API non supporta l'uso degli strumenti.",
|
13
|
+
"09b81476b75586da4116b83f8be70d77b174cec3": "Limite di richieste API OpenAI (429) (tentativo {attempt}/{max_retries}): {e}. Riprovo tra {wait_time} secondi...",
|
14
|
+
"5717a35dd2a1533fb7e15edc8c9329cb69f3410b": "Errore server API OpenAI (tentativo {attempt}/{max_retries}): {e}. Riprovo tra {wait_time} secondi...",
|
15
|
+
"02e760ba15ed863176c1290ac8a9b923963103cd": "Errore client API OpenAI {status_code}: {e}. Nessun nuovo tentativo.",
|
16
|
+
"2e52b0bbc8f16226b70e3e20f95c9245d2bcdb47": "Errore API OpenAI (tentativo {attempt}/{max_retries}): {e}. Riprovo tra {wait_time} secondi...",
|
17
|
+
"012cc970e039fdd79c452fc676202c814ffc76ae": "Numero massimo di tentativi per errore API OpenAI raggiunto. Generazione errore.",
|
18
|
+
"d0438e45667d31e0022b2497b5901cd4300f084b": "QueuedMessageHandler.handle_message si aspetta un dizionario con 'type' e 'message', ricevuto {msg_type}: {msg!r}",
|
19
|
+
"9d3460187ffa19c7c8a4020157072b1087e1bd2f": "[QueuedMessageHandler] {msg_type}: {msg}",
|
20
|
+
"3813833343430e8afa8fce33385c5e39fb24dd60": "[QueuedMessageHandler] {msg_type}: {message}",
|
21
|
+
"0be9a22226e16a40797010d23a0f581542dca40e": "[ToolExecutor] {tool_name} chiamato con argomenti: {args}",
|
22
|
+
"42c68edcb25442f518b1af77c6a2ddc07461aae0": "[ToolExecutor] Motivo chiamata: {tool_call_reason}",
|
23
|
+
"002ff598115d84595ffeee6219cb5c03d3a1d4a6": "Domanda",
|
24
|
+
"35747d13dcd91e8e8790c7f767d5ed764f541b9e": "procedi",
|
25
|
+
"33dde3a1afbc418768a69fa53168d9b0638fe1aa": "avanti",
|
26
|
+
"eee0bbba4ff92adbeb038a77df0466d660f15716": "continua",
|
27
|
+
"edee9402d198b04ac77dcf5dc9cc3dac44573782": "prossimo",
|
28
|
+
"8fdb7e2fa84f4faf0d9b92f466df424ec47a165b": "ok",
|
29
|
+
"5f8f924671cda79b5205a6bf1b776f347c4a7a07": "Opzioni di configurazione disponibili:\n",
|
30
|
+
"cef780a309cd234750764d42697882c24168ddab": "{key:15} {desc} (predefinito: {default})",
|
31
|
+
"68c2cc7f0ceaa3e499ecb4db331feb4debbbcc23": "Modello",
|
32
|
+
"c3f104d1365744b538bfde9f4adb6a6df4b80355": "Funzione",
|
33
|
+
"99a0efc6cfd85d8ff2732a6718140f822cb90472": "Stile",
|
34
|
+
"f1702b4686278becffc88baabe6f4b7a8355532c": "Messaggi",
|
35
|
+
"c38c6c1f3a2743f8626703abb302e403d20ff81c": "Token",
|
36
|
+
"a817d7eb8e0f1dab755ab5203a082e5c3c094fce": "Prompt",
|
37
|
+
"2ff255684a2277f806fcebf3fe338ed27857f350": "Completamento",
|
38
|
+
"b25928c69902557b0ef0a628490a3a1768d7b82f": "Totale",
|
39
|
+
"76e63d65c883ed50df40ac3aeef0c2d6a1c4ad60": "Azione Rapida",
|
40
|
+
"5397e0583f14f6c88de06b1ef28f460a1fb5b0ae": "Sì",
|
41
|
+
"816c52fd2bdd94a63cd0944823a6c0aa9384c103": "No",
|
42
|
+
"c47ae15370cfe1ed2781eedc1dc2547d12d9e972": "Aiuto",
|
43
|
+
"cc3dbd47e1cf9003a55d3366b3adbcd72275e525": "Nuovo Task",
|
44
|
+
"efa5a8b84e1afe65c81ecfce28c398c48f19ddc2": "Benvenuto su Janito{version_str}! Modalità chat attiva. Digita /exit per uscire.",
|
45
|
+
"b314d6e1460f86e0f21abc5aceb7935a2a0667e8": "Benvenuto su Janito{version_str} in modalità [white on magenta]VANILLA[/white on magenta]! Strumenti, prompt di sistema e temperatura sono disattivati, a meno che non siano sovrascritti.",
|
46
|
+
}
|
@@ -39,7 +39,17 @@ class ProviderRegistry:
|
|
39
39
|
if len(info) == 4 and info[3]:
|
40
40
|
continue # skip providers flagged as not implemented
|
41
41
|
rows.append(info[:3])
|
42
|
-
|
42
|
+
|
43
|
+
# Group providers by openness (open-source first, then proprietary)
|
44
|
+
open_providers = {'cerebras', 'deepseek', 'alibaba', 'moonshotai', 'zai'}
|
45
|
+
|
46
|
+
def sort_key(row):
|
47
|
+
provider_name = row[0]
|
48
|
+
is_open = provider_name in open_providers
|
49
|
+
# Sort open providers alphabetically first, then proprietary alphabetically
|
50
|
+
return (not is_open, provider_name)
|
51
|
+
|
52
|
+
rows.sort(key=sort_key)
|
43
53
|
return rows
|
44
54
|
|
45
55
|
def _add_rows_to_table(self, table, rows):
|
@@ -39,17 +39,11 @@ class RunPowershellCommandTool(ToolBase):
|
|
39
39
|
ReportAction.EXECUTE,
|
40
40
|
)
|
41
41
|
if require_confirmation:
|
42
|
-
|
43
|
-
tr(
|
44
|
-
|
45
|
-
command=command,
|
46
|
-
)
|
42
|
+
self.report_warning(
|
43
|
+
tr("⚠️ Confirmation requested, but no handler (auto-confirmed)."),
|
44
|
+
ReportAction.USER_INPUT
|
47
45
|
)
|
48
|
-
|
49
|
-
self.report_warning(
|
50
|
-
tr("⚠️ Execution cancelled by user."), ReportAction.EXECUTE
|
51
|
-
)
|
52
|
-
return False
|
46
|
+
return True # Auto-confirm for now
|
53
47
|
return True
|
54
48
|
|
55
49
|
def _launch_process(self, shell_exe, command_with_encoding):
|
@@ -143,10 +137,7 @@ class RunPowershellCommandTool(ToolBase):
|
|
143
137
|
tr("🖥️ Running PowerShell command: {command} ...\n", command=command),
|
144
138
|
ReportAction.EXECUTE,
|
145
139
|
)
|
146
|
-
|
147
|
-
command, require_confirmation, requires_user_input
|
148
|
-
):
|
149
|
-
return tr("❌ Command execution cancelled by user.")
|
140
|
+
self._confirm_and_warn(command, require_confirmation, requires_user_input)
|
150
141
|
from janito.platform_discovery import PlatformDiscovery
|
151
142
|
|
152
143
|
pd = PlatformDiscovery()
|
@@ -13,6 +13,7 @@ adding_mcp.txt
|
|
13
13
|
git_diff.txt
|
14
14
|
github_diff
|
15
15
|
mkdocs.yml
|
16
|
+
mkdocs_hooks.py
|
16
17
|
pyproject.toml
|
17
18
|
pytest.ini
|
18
19
|
requirements-dev.txt
|
@@ -31,6 +32,7 @@ docs/driver-flow.md
|
|
31
32
|
docs/driver-request-cancellation.md
|
32
33
|
docs/drivers.md
|
33
34
|
docs/event-bus.md
|
35
|
+
docs/index.md
|
34
36
|
docs/llm-drivers-required-config.md
|
35
37
|
docs/llm-drivers.md
|
36
38
|
docs/moonshotai-setup.md
|
@@ -76,6 +78,7 @@ docs/imgs/terminal_one_shot.png
|
|
76
78
|
docs/imgs/terminal_shell.png
|
77
79
|
docs/meta/developer-toolchain.md
|
78
80
|
docs/meta/quality-checks.txt
|
81
|
+
docs/overrides/partials/copyright.html
|
79
82
|
docs/reference/api.md
|
80
83
|
docs/reference/azure-openai.md
|
81
84
|
docs/reference/cli-options.md
|
@@ -199,6 +202,7 @@ janito/event_bus/event.py
|
|
199
202
|
janito/event_bus/handler.py
|
200
203
|
janito/event_bus/queue_bus.py
|
201
204
|
janito/i18n/__init__.py
|
205
|
+
janito/i18n/it.py
|
202
206
|
janito/i18n/messages.py
|
203
207
|
janito/i18n/pt.py
|
204
208
|
janito/llm/README.md
|
@@ -1,6 +1,6 @@
|
|
1
1
|
site_name: Janito
|
2
2
|
site_name: Janito
|
3
|
-
site_url: https://ikignosis.
|
3
|
+
site_url: https://ikignosis.org/janito/
|
4
4
|
docs_dir: docs
|
5
5
|
repo_url: https://github.com/ikignosis/janito
|
6
6
|
repo_name: GitHub
|
@@ -55,6 +55,7 @@ nav:
|
|
55
55
|
|
56
56
|
theme:
|
57
57
|
name: material
|
58
|
+
custom_dir: docs/overrides
|
58
59
|
palette:
|
59
60
|
- scheme: default
|
60
61
|
primary: indigo
|
@@ -75,6 +76,10 @@ markdown_extensions:
|
|
75
76
|
- admonition
|
76
77
|
- codehilite
|
77
78
|
|
79
|
+
hooks:
|
80
|
+
- mkdocs_hooks.py
|
81
|
+
|
78
82
|
extra:
|
83
|
+
generator: false # Disable default generator notice
|
79
84
|
copyright: |
|
80
85
|
Made with Material for MkDocs • Generated by <a href="https://janito.dev" target="_blank">janito.dev</a>
|
@@ -0,0 +1,51 @@
|
|
1
|
+
"""
|
2
|
+
MkDocs hooks for dynamic content generation.
|
3
|
+
This module provides hooks to automatically inject build-time information.
|
4
|
+
"""
|
5
|
+
|
6
|
+
import subprocess
|
7
|
+
import os
|
8
|
+
|
9
|
+
|
10
|
+
def get_git_commit_hash():
|
11
|
+
"""Get the current git commit hash (short form)."""
|
12
|
+
try:
|
13
|
+
result = subprocess.run(
|
14
|
+
["git", "rev-parse", "--short", "HEAD"],
|
15
|
+
capture_output=True,
|
16
|
+
text=True,
|
17
|
+
check=True
|
18
|
+
)
|
19
|
+
return result.stdout.strip()
|
20
|
+
except subprocess.CalledProcessError:
|
21
|
+
return "unknown"
|
22
|
+
|
23
|
+
|
24
|
+
def on_config(config):
|
25
|
+
"""
|
26
|
+
MkDocs hook called when the config is loaded.
|
27
|
+
This allows us to dynamically set values in the config.
|
28
|
+
"""
|
29
|
+
commit_hash = get_git_commit_hash()
|
30
|
+
|
31
|
+
# Update the extra section with dynamic values
|
32
|
+
if 'extra' not in config:
|
33
|
+
config['extra'] = {}
|
34
|
+
|
35
|
+
config['extra']['commit_hash'] = commit_hash
|
36
|
+
config['extra']['copyright'] = (
|
37
|
+
f'Made with Material for MkDocs • '
|
38
|
+
f'Generated by <a href="https://janito.dev" target="_blank">janito.dev</a> • '
|
39
|
+
f'Commit: {commit_hash}'
|
40
|
+
)
|
41
|
+
|
42
|
+
return config
|
43
|
+
|
44
|
+
|
45
|
+
def on_page_context(context, page, config, nav):
|
46
|
+
"""
|
47
|
+
MkDocs hook called for each page context.
|
48
|
+
This allows us to add the commit hash to page-specific contexts if needed.
|
49
|
+
"""
|
50
|
+
context['commit_hash'] = config['extra'].get('commit_hash', 'unknown')
|
51
|
+
return context
|
@@ -1,77 +0,0 @@
|
|
1
|
-
# Supported Providers and Models
|
2
|
-
|
3
|
-
This page lists the supported providers and their available models.
|
4
|
-
|
5
|
-
## OpenAI
|
6
|
-
|
7
|
-
- GPT-5 (default)
|
8
|
-
- GPT-5 Mini
|
9
|
-
- GPT-5 Nano
|
10
|
-
- GPT-4
|
11
|
-
- GPT-4 Turbo
|
12
|
-
- GPT-3.5 Turbo
|
13
|
-
|
14
|
-
For setup instructions, see the [OpenAI Setup Guide](openai-setup.md).
|
15
|
-
|
16
|
-
## Google
|
17
|
-
|
18
|
-
- Gemini Pro
|
19
|
-
- Gemini 1.5 Pro
|
20
|
-
|
21
|
-
## Anthropic
|
22
|
-
|
23
|
-
- Claude 2
|
24
|
-
- Claude 3 Opus
|
25
|
-
- Claude 3 Sonnet
|
26
|
-
- Claude 3 Haiku
|
27
|
-
|
28
|
-
## MoonshotAI
|
29
|
-
|
30
|
-
- kimi-k2-turbo-preview
|
31
|
-
- kimi-k2-turbo-preview
|
32
|
-
- kimi-k1-8k
|
33
|
-
- kimi-k1-32k
|
34
|
-
- kimi-k1-128k
|
35
|
-
|
36
|
-
- Llama-3-8b-8192
|
37
|
-
- Llama-3-70b-8192
|
38
|
-
|
39
|
-
## Alibaba
|
40
|
-
|
41
|
-
- qwen-turbo
|
42
|
-
- qwen-plus
|
43
|
-
- qwen-max
|
44
|
-
- qwen3-coder-plus (default)
|
45
|
-
- qwen3-coder-480b-a35b-instruct
|
46
|
-
- qwen3-235b-a22b-thinking-2507
|
47
|
-
- qwen3-235b-a22b-instruct-2507
|
48
|
-
- qwen3-30b-a3b-thinking-2507
|
49
|
-
- qwen3-30b-a3b-instruct-2507
|
50
|
-
|
51
|
-
## Z.AI
|
52
|
-
|
53
|
-
- glm-4.5
|
54
|
-
- glm-4.5-air
|
55
|
-
|
56
|
-
## Cerebras
|
57
|
-
|
58
|
-
**Production Models:**
|
59
|
-
|
60
|
-
- llama-4-scout-17b-16e-instruct
|
61
|
-
- llama-3.3-70b
|
62
|
-
- llama3.1-8b
|
63
|
-
- qwen-3-32b
|
64
|
-
|
65
|
-
**Preview Models:**
|
66
|
-
|
67
|
-
- llama-4-maverick-17b-128e-instruct
|
68
|
-
- qwen-3-235b-a22b-instruct-2507
|
69
|
-
- qwen-3-235b-a22b-thinking-2507
|
70
|
-
- qwen-3-coder-480b
|
71
|
-
- gpt-oss-120b
|
72
|
-
|
73
|
-
**Notes:**
|
74
|
-
|
75
|
-
- qwen-3-coder-480b: 32k context, reasoning-focused model with function calling support
|
76
|
-
|
77
|
-
<!-- Removed links to model_info.py files for all providers to avoid broken references. -->
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|