janito 2.8.0__tar.gz → 2.10.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-2.8.0 → janito-2.10.0}/CHANGELOG.md +19 -1
- janito-2.10.0/CNAME +1 -0
- {janito-2.8.0 → janito-2.10.0}/PKG-INFO +8 -8
- {janito-2.8.0 → janito-2.10.0}/README.md +5 -5
- {janito-2.8.0 → janito-2.10.0}/docs/Interfaces.txt +1 -1
- janito-2.10.0/docs/concepts/human-guided-ai.md +87 -0
- {janito-2.8.0 → janito-2.10.0}/docs/concepts/index.md +2 -0
- {janito-2.8.0 → janito-2.10.0}/docs/deepseek-setup.md +1 -1
- {janito-2.8.0 → janito-2.10.0}/docs/drivers.md +3 -3
- {janito-2.8.0 → janito-2.10.0}/docs/guides/configuration.md +18 -2
- {janito-2.8.0 → janito-2.10.0}/docs/guides/developing.md +2 -2
- {janito-2.8.0 → janito-2.10.0}/docs/guides/disabled-tools.md +7 -4
- {janito-2.8.0 → janito-2.10.0}/docs/guides/installation.md +1 -1
- {janito-2.8.0 → janito-2.10.0}/docs/moonshotai-setup.md +3 -2
- {janito-2.8.0 → janito-2.10.0}/docs/reference/cli-options.md +6 -7
- {janito-2.8.0 → janito-2.10.0}/docs/supported-providers-models.md +11 -3
- {janito-2.8.0 → janito-2.10.0}/docs/tools-index.md +1 -1
- janito-2.10.0/janito/README.md +149 -0
- {janito-2.8.0 → janito-2.10.0}/janito/cli/chat_mode/script_runner.py +2 -2
- {janito-2.8.0 → janito-2.10.0}/janito/cli/chat_mode/session.py +24 -6
- janito-2.10.0/janito/cli/chat_mode/shell/commands/_priv_status.py +13 -0
- janito-2.10.0/janito/cli/cli_commands/list_config.py +31 -0
- janito-2.10.0/janito/cli/cli_commands/list_profiles.py +79 -0
- {janito-2.8.0 → janito-2.10.0}/janito/cli/cli_commands/show_config.py +4 -11
- {janito-2.8.0 → janito-2.10.0}/janito/cli/core/getters.py +14 -1
- {janito-2.8.0 → janito-2.10.0}/janito/cli/main_cli.py +52 -3
- {janito-2.8.0 → janito-2.10.0}/janito/config.py +1 -0
- {janito-2.8.0 → janito-2.10.0}/janito/config_manager.py +11 -2
- janito-2.10.0/janito/docs/GETTING_STARTED.md +117 -0
- janito-2.10.0/janito/docs/PROVIDERS.md +224 -0
- {janito-2.8.0 → janito-2.10.0}/janito/drivers/azure_openai/driver.py +7 -0
- {janito-2.8.0 → janito-2.10.0}/janito/drivers/openai/driver.py +10 -2
- {janito-2.8.0 → janito-2.10.0}/janito/llm/provider.py +1 -1
- janito-2.10.0/janito/mkdocs.yml +40 -0
- {janito-2.8.0 → janito-2.10.0}/janito/provider_registry.py +14 -4
- {janito-2.8.0 → janito-2.10.0}/janito/providers/__init__.py +1 -1
- janito-2.10.0/janito/providers/alibaba/__init__.py +0 -0
- janito-2.10.0/janito/providers/alibaba/model_info.py +33 -0
- janito-2.10.0/janito/providers/alibaba/provider.py +102 -0
- {janito-2.8.0 → janito-2.10.0}/janito/providers/anthropic/provider.py +6 -0
- {janito-2.8.0 → janito-2.10.0}/janito/providers/azure_openai/provider.py +8 -2
- {janito-2.8.0 → janito-2.10.0}/janito/providers/deepseek/provider.py +7 -1
- {janito-2.8.0 → janito-2.10.0}/janito/providers/google/provider.py +7 -1
- {janito-2.8.0 → janito-2.10.0}/janito/providers/moonshotai/model_info.py +11 -0
- {janito-2.8.0 → janito-2.10.0}/janito/providers/moonshotai/provider.py +8 -2
- {janito-2.8.0 → janito-2.10.0}/janito/providers/openai/provider.py +7 -1
- {janito-2.8.0 → janito-2.10.0}/janito.egg-info/PKG-INFO +8 -8
- {janito-2.8.0 → janito-2.10.0}/janito.egg-info/SOURCES.txt +12 -4
- {janito-2.8.0 → janito-2.10.0}/mkdocs.yml +2 -1
- {janito-2.8.0 → janito-2.10.0}/pyproject.toml +2 -2
- {janito-2.8.0 → janito-2.10.0}/tests/test_disabled_tools.py +21 -29
- janito-2.8.0/docs/terms.md +0 -44
- janito-2.8.0/janito/providers/groq/__init__.py +0 -1
- janito-2.8.0/janito/providers/groq/model_info.py +0 -46
- janito-2.8.0/janito/providers/groq/provider.py +0 -76
- {janito-2.8.0 → janito-2.10.0}/.codespellrc +0 -0
- {janito-2.8.0 → janito-2.10.0}/.gitattributes +0 -0
- {janito-2.8.0 → janito-2.10.0}/.github/workflows/python-app.yml +0 -0
- {janito-2.8.0 → janito-2.10.0}/.gitignore +0 -0
- {janito-2.8.0 → janito-2.10.0}/.pre-commit-config.yaml +0 -0
- {janito-2.8.0 → janito-2.10.0}/.secrets.baseline +0 -0
- {janito-2.8.0 → janito-2.10.0}/.vscode/settings.json +0 -0
- {janito-2.8.0 → janito-2.10.0}/LICENSE +0 -0
- {janito-2.8.0 → janito-2.10.0}/README-dev.md +0 -0
- {janito-2.8.0 → janito-2.10.0}/UPDATING_DOCS.md +0 -0
- {janito-2.8.0 → janito-2.10.0}/adding_mcp.txt +0 -0
- {janito-2.8.0 → janito-2.10.0}/docs/DIV.md +0 -0
- {janito-2.8.0 → janito-2.10.0}/docs/TOOLBAR-STYLING.md +0 -0
- {janito-2.8.0 → janito-2.10.0}/docs/about/costs.md +0 -0
- {janito-2.8.0 → janito-2.10.0}/docs/about/vs-webchats.md +0 -0
- {janito-2.8.0 → janito-2.10.0}/docs/about/why.md +0 -0
- {janito-2.8.0 → janito-2.10.0}/docs/alternatives.md +0 -0
- {janito-2.8.0 → janito-2.10.0}/docs/code_intelligence/agentic-frameworks-comparison.md +0 -0
- {janito-2.8.0 → janito-2.10.0}/docs/code_intelligence/code-generation-challenges.md +0 -0
- {janito-2.8.0 → janito-2.10.0}/docs/code_intelligence/code-generation-observability.md +0 -0
- {janito-2.8.0 → janito-2.10.0}/docs/code_intelligence/our-approach.md +0 -0
- {janito-2.8.0 → janito-2.10.0}/docs/code_intelligence/why-string-replacement.md +0 -0
- {janito-2.8.0 → janito-2.10.0}/docs/concepts/analysis-style.md +0 -0
- {janito-2.8.0 → janito-2.10.0}/docs/concepts/language-model-clients.md +0 -0
- {janito-2.8.0 → janito-2.10.0}/docs/concepts/prompt-design-style.md +0 -0
- {janito-2.8.0 → janito-2.10.0}/docs/driver-flow.md +0 -0
- {janito-2.8.0 → janito-2.10.0}/docs/driver-request-cancellation.md +0 -0
- {janito-2.8.0 → janito-2.10.0}/docs/drivers/events.md +0 -0
- {janito-2.8.0 → janito-2.10.0}/docs/event-bus.md +0 -0
- {janito-2.8.0 → janito-2.10.0}/docs/guides/profiles.md +0 -0
- {janito-2.8.0 → janito-2.10.0}/docs/guides/prompting/README.md +0 -0
- {janito-2.8.0 → janito-2.10.0}/docs/guides/single-shot-terminal.md +0 -0
- {janito-2.8.0 → janito-2.10.0}/docs/guides/terminal-shell.md +0 -0
- {janito-2.8.0 → janito-2.10.0}/docs/guides/tools-developer-guide.md +0 -0
- {janito-2.8.0 → janito-2.10.0}/docs/guides/using.md +0 -0
- {janito-2.8.0 → janito-2.10.0}/docs/guides/using_tools.md +0 -0
- {janito-2.8.0 → janito-2.10.0}/docs/imgs/code-generation-observability.png +0 -0
- {janito-2.8.0 → janito-2.10.0}/docs/imgs/code_generation_observability.png +0 -0
- {janito-2.8.0 → janito-2.10.0}/docs/imgs/happy-programmer.png +0 -0
- {janito-2.8.0 → janito-2.10.0}/docs/imgs/happy-programmer.svg +0 -0
- {janito-2.8.0 → janito-2.10.0}/docs/imgs/terminal-one-shot.png +0 -0
- {janito-2.8.0 → janito-2.10.0}/docs/imgs/terminal-shell.png +0 -0
- {janito-2.8.0 → janito-2.10.0}/docs/imgs/terminal_one_shot.png +0 -0
- {janito-2.8.0 → janito-2.10.0}/docs/imgs/terminal_shell.png +0 -0
- {janito-2.8.0 → janito-2.10.0}/docs/index.md +0 -0
- {janito-2.8.0 → janito-2.10.0}/docs/llm-drivers-required-config.md +0 -0
- {janito-2.8.0 → janito-2.10.0}/docs/llm-drivers.md +0 -0
- {janito-2.8.0 → janito-2.10.0}/docs/meta/developer-toolchain.md +0 -0
- {janito-2.8.0 → janito-2.10.0}/docs/meta/quality-checks.txt +0 -0
- {janito-2.8.0 → janito-2.10.0}/docs/reference/api.md +0 -0
- {janito-2.8.0 → janito-2.10.0}/docs/reference/azure-openai.md +0 -0
- {janito-2.8.0 → janito-2.10.0}/docs/reference/message-handler-model.md +0 -0
- {janito-2.8.0 → janito-2.10.0}/docs/reference/rich-message-handler.md +0 -0
- {janito-2.8.0 → janito-2.10.0}/docs/security.md +0 -0
- {janito-2.8.0 → janito-2.10.0}/docs/tools/search-text.md +0 -0
- {janito-2.8.0 → janito-2.10.0}/docs/tools-natural-results.md +0 -0
- {janito-2.8.0 → janito-2.10.0}/docs/tools-precision.md +0 -0
- {janito-2.8.0 → janito-2.10.0}/git_diff.txt +0 -0
- {janito-2.8.0 → janito-2.10.0}/github_diff +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/__init__.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/__main__.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/_version.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/agent/setup_agent.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/agent/templates/profiles/system_prompt_template_Developer_with_Python_Tools.txt.j2 +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/agent/templates/profiles/system_prompt_template_developer.txt.j2 +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/agent/templates/profiles/system_prompt_template_model_conversation_without_tools_or_context.txt.j2 +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/cli/__init__.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/cli/chat_mode/bindings.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/cli/chat_mode/chat_entry.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/cli/chat_mode/prompt_style.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/cli/chat_mode/session_profile_select.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/cli/chat_mode/shell/autocomplete.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/cli/chat_mode/shell/commands/__init__.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/cli/chat_mode/shell/commands/_priv_check.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/cli/chat_mode/shell/commands/bang.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/cli/chat_mode/shell/commands/base.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/cli/chat_mode/shell/commands/clear.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/cli/chat_mode/shell/commands/conversation_restart.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/cli/chat_mode/shell/commands/execute.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/cli/chat_mode/shell/commands/help.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/cli/chat_mode/shell/commands/history_view.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/cli/chat_mode/shell/commands/lang.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/cli/chat_mode/shell/commands/model.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/cli/chat_mode/shell/commands/multi.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/cli/chat_mode/shell/commands/privileges.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/cli/chat_mode/shell/commands/prompt.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/cli/chat_mode/shell/commands/read.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/cli/chat_mode/shell/commands/role.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/cli/chat_mode/shell/commands/session.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/cli/chat_mode/shell/commands/session_control.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/cli/chat_mode/shell/commands/tools.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/cli/chat_mode/shell/commands/utility.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/cli/chat_mode/shell/commands/verbose.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/cli/chat_mode/shell/commands/write.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/cli/chat_mode/shell/commands.bak.zip +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/cli/chat_mode/shell/input_history.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/cli/chat_mode/shell/session/__init__.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/cli/chat_mode/shell/session/history.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/cli/chat_mode/shell/session/manager.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/cli/chat_mode/shell/session.bak.zip +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/cli/chat_mode/toolbar.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/cli/cli_commands/list_models.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/cli/cli_commands/list_providers.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/cli/cli_commands/list_tools.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/cli/cli_commands/model_selection.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/cli/cli_commands/model_utils.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/cli/cli_commands/set_api_key.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/cli/cli_commands/show_system_prompt.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/cli/config.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/cli/console.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/cli/core/__init__.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/cli/core/event_logger.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/cli/core/runner.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/cli/core/setters.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/cli/core/unsetters.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/cli/main.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/cli/prompt_core.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/cli/prompt_handler.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/cli/prompt_setup.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/cli/rich_terminal_reporter.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/cli/single_shot_mode/__init__.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/cli/single_shot_mode/handler.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/cli/utils.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/cli/verbose_output.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/conversation_history.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/dir_walk_utils.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/driver_events.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/drivers/dashscope.bak.zip +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/drivers/driver_registry.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/drivers/openai/README.md +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/drivers/openai_responses.bak.zip +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/event_bus/__init__.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/event_bus/bus.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/event_bus/event.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/event_bus/handler.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/event_bus/queue_bus.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/exceptions.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/formatting.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/formatting_token.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/gitignore_utils.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/i18n/__init__.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/i18n/messages.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/i18n/pt.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/llm/README.md +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/llm/__init__.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/llm/agent.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/llm/auth.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/llm/driver.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/llm/driver_config.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/llm/driver_config_builder.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/llm/driver_input.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/llm/message_parts.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/llm/model.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/perf_singleton.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/performance_collector.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/platform_discovery.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/provider_config.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/providers/anthropic/model_info.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/providers/azure_openai/model_info.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/providers/dashscope.bak.zip +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/providers/deepseek/__init__.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/providers/deepseek/model_info.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/providers/google/__init__.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/providers/google/model_info.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/providers/moonshotai/__init__.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/providers/openai/__init__.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/providers/openai/model_info.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/providers/openai/schema_generator.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/providers/registry.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/report_events.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/shell.bak.zip +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/tools/DOCSTRING_STANDARD.txt +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/tools/README.md +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/tools/__init__.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/tools/adapters/__init__.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/tools/adapters/local/__init__.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/tools/adapters/local/adapter.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/tools/adapters/local/ask_user.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/tools/adapters/local/copy_file.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/tools/adapters/local/create_directory.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/tools/adapters/local/create_file.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/tools/adapters/local/delete_text_in_file.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/tools/adapters/local/fetch_url.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/tools/adapters/local/find_files.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/tools/adapters/local/get_file_outline/__init__.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/tools/adapters/local/get_file_outline/core.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/tools/adapters/local/get_file_outline/java_outline.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/tools/adapters/local/get_file_outline/markdown_outline.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/tools/adapters/local/get_file_outline/python_outline.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/tools/adapters/local/get_file_outline/search_outline.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/tools/adapters/local/move_file.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/tools/adapters/local/open_html_in_browser.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/tools/adapters/local/open_url.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/tools/adapters/local/python_code_run.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/tools/adapters/local/python_command_run.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/tools/adapters/local/python_file_run.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/tools/adapters/local/read_files.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/tools/adapters/local/remove_directory.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/tools/adapters/local/remove_file.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/tools/adapters/local/replace_text_in_file.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/tools/adapters/local/run_bash_command.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/tools/adapters/local/run_powershell_command.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/tools/adapters/local/search_text/__init__.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/tools/adapters/local/search_text/core.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/tools/adapters/local/search_text/match_lines.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/tools/adapters/local/search_text/pattern_utils.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/tools/adapters/local/search_text/traverse_directory.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/tools/adapters/local/validate_file_syntax/__init__.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/tools/adapters/local/validate_file_syntax/core.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/tools/adapters/local/validate_file_syntax/css_validator.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/tools/adapters/local/validate_file_syntax/html_validator.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/tools/adapters/local/validate_file_syntax/js_validator.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/tools/adapters/local/validate_file_syntax/json_validator.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/tools/adapters/local/validate_file_syntax/markdown_validator.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/tools/adapters/local/validate_file_syntax/ps1_validator.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/tools/adapters/local/validate_file_syntax/python_validator.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/tools/adapters/local/validate_file_syntax/xml_validator.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/tools/adapters/local/validate_file_syntax/yaml_validator.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/tools/adapters/local/view_file.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/tools/disabled_tools.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/tools/inspect_registry.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/tools/outline_file.bak.zip +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/tools/path_security.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/tools/permissions.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/tools/permissions_parse.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/tools/tool_base.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/tools/tool_events.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/tools/tool_run_exception.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/tools/tool_use_tracker.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/tools/tool_utils.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/tools/tools_adapter.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/tools/tools_schema.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito/utils.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito.egg-info/dependency_links.txt +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito.egg-info/entry_points.txt +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito.egg-info/requires.txt +0 -0
- {janito-2.8.0 → janito-2.10.0}/janito.egg-info/top_level.txt +0 -0
- {janito-2.8.0 → janito-2.10.0}/pytest.ini +0 -0
- {janito-2.8.0 → janito-2.10.0}/requirements-dev.txt +0 -0
- {janito-2.8.0 → janito-2.10.0}/requirements.txt +0 -0
- {janito-2.8.0 → janito-2.10.0}/setup.cfg +0 -0
- {janito-2.8.0 → janito-2.10.0}/tests/adapters/local/get_file_outline/test_core_outline.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/tests/adapters/local/test_read_files.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/tests/test_cli_list_models.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/tests/test_cli_list_providers.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/tests/test_cli_list_providers_moonshotai.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/tests/test_cli_version.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/tests/test_provider_moonshotai.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/tools/release.py +0 -0
- {janito-2.8.0 → janito-2.10.0}/tox.ini +0 -0
@@ -2,9 +2,27 @@
|
|
2
2
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
4
4
|
|
5
|
+
## [Unreleased]
|
6
|
+
|
7
|
+
## [2.9.0] - 2025-07-16
|
8
|
+
### Added
|
9
|
+
- Added new `kimi-k2-turbo-preview` model to MoonshotAI provider
|
10
|
+
- Added visual indicators for default models in provider registry with star icons
|
11
|
+
|
12
|
+
### Changed
|
13
|
+
- Updated default MoonshotAI model from `kimi-k2-0711-preview` to `kimi-k2-turbo-preview`
|
14
|
+
- Updated all documentation to reflect new MoonshotAI model names and recommendations
|
15
|
+
- Updated project URLs, author email, and documentation for migration to ikignosis organization
|
16
|
+
- Updated repository links in documentation and configuration files to point to ikignosis GitHub organization
|
17
|
+
- Changed maintainer email in provider modules to janito@ikignosis.org
|
18
|
+
- Updated homepage and repo_url in pyproject.toml and mkdocs.yml to new organization URLs
|
19
|
+
|
20
|
+
### Fixed
|
21
|
+
- Fixed duplicate entries in supported providers documentation
|
22
|
+
- Fixed formatting in CLI command and privilege status modules
|
23
|
+
|
5
24
|
## [2.8.0] - 2025-07-16
|
6
25
|
### Added
|
7
|
-
- **Groq provider**: New provider with support for moonshotai/kimi-k2-instruct model.
|
8
26
|
- **Parallel tool calls**: Enabled for OpenAI provider when tools are available.
|
9
27
|
- **No-tools mode**: New CLI option to disable all tool usage.
|
10
28
|
- **Disabled tools functionality**: Support for selectively disabling specific tools.
|
janito-2.10.0/CNAME
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
docs.ikignosis.org
|
@@ -1,9 +1,9 @@
|
|
1
1
|
Metadata-Version: 2.4
|
2
2
|
Name: janito
|
3
|
-
Version: 2.
|
3
|
+
Version: 2.10.0
|
4
4
|
Summary: A new Python package called janito.
|
5
|
-
Author-email: João Pinto <
|
6
|
-
Project-URL: Homepage, https://github.com/
|
5
|
+
Author-email: João Pinto <janito@ikignosis.org>
|
6
|
+
Project-URL: Homepage, https://github.com/ikignosis/janito
|
7
7
|
Requires-Python: >=3.7
|
8
8
|
Description-Content-Type: text/markdown
|
9
9
|
License-File: LICENSE
|
@@ -30,7 +30,7 @@ Requires-Dist: questionary>=2.0.1; extra == "dev"
|
|
30
30
|
Requires-Dist: setuptools_scm>=8.0; extra == "dev"
|
31
31
|
Dynamic: license-file
|
32
32
|
|
33
|
-
# Janito
|
33
|
+
# Janito, control you context
|
34
34
|
|
35
35
|
[](https://badge.fury.io/py/janito)
|
36
36
|
|
@@ -39,7 +39,7 @@ Janito is a command-line interface (CLI) tool for managing and interacting with
|
|
39
39
|
## Features
|
40
40
|
|
41
41
|
- 🔑 Manage API keys and provider configurations
|
42
|
-
- 🤖 Interact with multiple LLM providers (OpenAI, Google Gemini,
|
42
|
+
- 🤖 Interact with multiple LLM providers (OpenAI, Google Gemini, DeepSeek, and more)
|
43
43
|
- 🛠️ List and use a variety of registered tools
|
44
44
|
- 📝 Submit prompts and receive responses directly from the CLI
|
45
45
|
- 📋 List available models for each provider
|
@@ -61,7 +61,7 @@ Janito is a command-line interface (CLI) tool for managing and interacting with
|
|
61
61
|
Janito is a Python package. Since this is a development version, you can install it directly from GitHub:
|
62
62
|
|
63
63
|
```bash
|
64
|
-
pip install git+
|
64
|
+
pip install git+git@github.com:ikignosis/janito.git
|
65
65
|
```
|
66
66
|
|
67
67
|
### First launch and quick setup
|
@@ -307,7 +307,7 @@ For more information, see the documentation in the `docs/` directory or run `jan
|
|
307
307
|
|
308
308
|
## 📖 Detailed Documentation
|
309
309
|
|
310
|
-
Full and up-to-date documentation is available at: https://
|
310
|
+
Full and up-to-date documentation is available at: https://ikignosis.github.io/janito/
|
311
311
|
|
312
312
|
---
|
313
313
|
|
@@ -388,7 +388,7 @@ janito -p deepseek --list-models
|
|
388
388
|
## Ask Me Anything
|
389
389
|
|
390
390
|
<div align="center">
|
391
|
-
<a href="
|
391
|
+
<a href="git@github.com:ikignosis/janito.git" title="Ask Me Anything">
|
392
392
|
<img width="250" src="docs/imgs/ama.png" alt="Ask Me Anything">
|
393
393
|
</a>
|
394
394
|
</div
|
@@ -1,4 +1,4 @@
|
|
1
|
-
# Janito
|
1
|
+
# Janito, control you context
|
2
2
|
|
3
3
|
[](https://badge.fury.io/py/janito)
|
4
4
|
|
@@ -7,7 +7,7 @@ Janito is a command-line interface (CLI) tool for managing and interacting with
|
|
7
7
|
## Features
|
8
8
|
|
9
9
|
- 🔑 Manage API keys and provider configurations
|
10
|
-
- 🤖 Interact with multiple LLM providers (OpenAI, Google Gemini,
|
10
|
+
- 🤖 Interact with multiple LLM providers (OpenAI, Google Gemini, DeepSeek, and more)
|
11
11
|
- 🛠️ List and use a variety of registered tools
|
12
12
|
- 📝 Submit prompts and receive responses directly from the CLI
|
13
13
|
- 📋 List available models for each provider
|
@@ -29,7 +29,7 @@ Janito is a command-line interface (CLI) tool for managing and interacting with
|
|
29
29
|
Janito is a Python package. Since this is a development version, you can install it directly from GitHub:
|
30
30
|
|
31
31
|
```bash
|
32
|
-
pip install git+
|
32
|
+
pip install git+git@github.com:ikignosis/janito.git
|
33
33
|
```
|
34
34
|
|
35
35
|
### First launch and quick setup
|
@@ -275,7 +275,7 @@ For more information, see the documentation in the `docs/` directory or run `jan
|
|
275
275
|
|
276
276
|
## 📖 Detailed Documentation
|
277
277
|
|
278
|
-
Full and up-to-date documentation is available at: https://
|
278
|
+
Full and up-to-date documentation is available at: https://ikignosis.github.io/janito/
|
279
279
|
|
280
280
|
---
|
281
281
|
|
@@ -356,7 +356,7 @@ janito -p deepseek --list-models
|
|
356
356
|
## Ask Me Anything
|
357
357
|
|
358
358
|
<div align="center">
|
359
|
-
<a href="
|
359
|
+
<a href="git@github.com:ikignosis/janito.git" title="Ask Me Anything">
|
360
360
|
<img width="250" src="docs/imgs/ama.png" alt="Ask Me Anything">
|
361
361
|
</a>
|
362
362
|
</div
|
@@ -0,0 +1,87 @@
|
|
1
|
+
# Human-Guided AI: A Principle for Empowerment Through Tools and Instruments
|
2
|
+
|
3
|
+
In the accelerating world of artificial intelligence, the **Human-Guided AI principle** emphasizes that AI systems exist as **extensions of human intent**, designed to deliver powerful tools and instruments under human direction. This framework not only clarifies the role of AI in society but also anchors ethical responsibility and governance firmly with users and designers.
|
4
|
+
|
5
|
+
---
|
6
|
+
|
7
|
+
## Human-Guided AI Principle
|
8
|
+
|
9
|
+
At the core, the **Human-Guided AI principle** asserts that every AI system should operate as a **tool for human purposes**, avoiding undue autonomy—that is, preventing the system from acting or making decisions beyond the scope of intended human oversight and control. AI under this principle is valued for its capacity to augment human capabilities, automate repetitive tasks, and generate novel insights—all while remaining firmly under human oversight and ethical accountability.
|
10
|
+
|
11
|
+
---
|
12
|
+
|
13
|
+
## What Are AI Instruments?
|
14
|
+
|
15
|
+
Under the Human-Guided AI principle, an **AI instrument** is any system explicitly designed as a **tool for human use**, with clear boundaries of operation defined by its creators and users. Unlike autonomous AI agents, which may perceive environments and pursue goals independently, AI instruments function strictly as **means to human-defined ends**.
|
16
|
+
|
17
|
+
> **Instrumentality:** Under Human-Guided AI, every algorithm and model is a means to amplify human skill and judgment, never to supplant it.
|
18
|
+
|
19
|
+
---
|
20
|
+
|
21
|
+
## Examples of AI Instruments
|
22
|
+
|
23
|
+
AI instruments manifest across diverse domains, each embodying the Human-Guided AI principle in action:
|
24
|
+
|
25
|
+
* **Scientific Discovery Tools**
|
26
|
+
AI-driven simulations, drug-design algorithms, and protein-folding models (e.g., AlphaFold) accelerate human-led research and hypothesis testing.
|
27
|
+
|
28
|
+
* **Creative Assistance**
|
29
|
+
Generative text, image, and music platforms serve as digital co-creators, enabling artists and writers to explore new creative horizons.
|
30
|
+
|
31
|
+
* **Data Analysis**
|
32
|
+
Machine learning frameworks that surface patterns in massive datasets support economists, epidemiologists, and climate scientists in human-led decision making.
|
33
|
+
|
34
|
+
* **Accessibility Technology**
|
35
|
+
Speech-to-text converters, real-time translators, and other assistive AIs extend communication capabilities, underpinned by human values of inclusion.
|
36
|
+
|
37
|
+
---
|
38
|
+
|
39
|
+
## Instruments and Agents: Complementary Roles under Human-Guided AI
|
40
|
+
|
41
|
+
While similar technologies underlie both AI instruments and AI agents, the **Human-Guided AI principle** differentiates them by intent and control:
|
42
|
+
|
43
|
+
| Aspect | AI Instrument (Human-Guided) | AI Agent |
|
44
|
+
| ------------------ | --------------------------------- | ----------------------------------- |
|
45
|
+
| **Role** | Tool under human direction | Autonomous actor |
|
46
|
+
| **Control** | Defined and managed by users | Independent decision making |
|
47
|
+
| **Responsibility** | Clearly human | Shared or ambiguous |
|
48
|
+
| **Examples** | ChatGPT as co-writer, AI art apps | Self-driving vehicles, trading bots |
|
49
|
+
|
50
|
+
This spectrum underscores that applying the Human-Guided AI principle ensures clarity in both design and governance.
|
51
|
+
|
52
|
+
---
|
53
|
+
|
54
|
+
## Why Human-Guided AI Matters
|
55
|
+
|
56
|
+
Framing AI through this principle:
|
57
|
+
|
58
|
+
1. **Centers human creativity and judgment.**
|
59
|
+
2. **Anchors accountability with tool operators and designers.**
|
60
|
+
3. **Guides policy toward regulating instruments rather than hypothetical actors.**
|
61
|
+
|
62
|
+
By viewing AI as instruments of human agency, stakeholders can better craft regulations, standards, and best practices that prioritize human welfare and ethical use.
|
63
|
+
|
64
|
+
---
|
65
|
+
|
66
|
+
## Toward a Responsible Future
|
67
|
+
|
68
|
+
Integrating the Human-Guided AI principle into development and governance prompts key questions:
|
69
|
+
|
70
|
+
* Are our systems built to amplify human potential or to operate with hidden objectives?
|
71
|
+
* Do we embed technical controls in AI tools and instruments to require explicit user validation and prevent blind acceptance of AI outputs?
|
72
|
+
|
73
|
+
Adopting Human-Guided AI as a guiding philosophy empowers researchers, policymakers, and communities to ensure that AI technologies remain true to human values and oversight.
|
74
|
+
|
75
|
+
---
|
76
|
+
|
77
|
+
## Security & Safety Considerations
|
78
|
+
|
79
|
+
Although AI instruments amplify human capability, they can, like any other tool, be mis-used to cause harm. The Human-Guided AI principle therefore makes **no claim of providing additional, intrinsic technical safeguards beyond those that already apply at the point of use**. Ultimate responsibility for secure, lawful, and ethical operation lies with each user. Every deployment must adhere to the laws, regulations, and policies that govern the user’s jurisdiction and domain.
|
80
|
+
|
81
|
+
---
|
82
|
+
|
83
|
+
## Conclusion
|
84
|
+
|
85
|
+
The **Human-Guided AI principle** reframes artificial intelligence not as an independent mind but as a suite of instruments and tools—each a testament to human ingenuity and responsibility. As we harness these capabilities, we must remember:
|
86
|
+
|
87
|
+
> **Tools are only as good as the skill and integrity of those who wield them.**
|
@@ -9,4 +9,6 @@ This section collects foundational explanations, terminology, and conventions us
|
|
9
9
|
- [Prompt Analysis Style](analysis-style.md)
|
10
10
|
- [Prompt Design Style](prompt-design-style.md)
|
11
11
|
|
12
|
+
- [Human-Guided AI Principle](human-guided-ai.md)
|
13
|
+
|
12
14
|
*More topics will be added here as the documentation evolves.*
|
@@ -53,7 +53,7 @@ See `janito/drivers/openai/driver.py` for a complete example. Highlights:
|
|
53
53
|
- Handles cancellation and error reporting robustly.
|
54
54
|
|
55
55
|
## References
|
56
|
-
- Base class: [`janito/llm/driver.py`](
|
57
|
-
- OpenAI driver: [`janito/drivers/openai/driver.py`](
|
58
|
-
- Driver events: [`janito/driver_events.py`](
|
56
|
+
- Base class: [`janito/llm/driver.py`](git@github.com:ikignosis/janito.git/tree/main/janito/llm/driver.py)
|
57
|
+
- OpenAI driver: [`janito/drivers/openai/driver.py`](git@github.com:ikignosis/janito.git/tree/main/janito/drivers/openai/driver.py)
|
58
|
+
- Driver events: [`janito/driver_events.py`](git@github.com:ikignosis/janito.git/tree/main/janito/driver_events.py)
|
59
59
|
|
@@ -16,9 +16,23 @@ janito -p openai -m gpt-3.5-turbo "Your prompt here"
|
|
16
16
|
- Use `-m MODEL_NAME` to select a model for the provider.
|
17
17
|
- See [CLI Options](../reference/cli-options.md) for the full list of flags.
|
18
18
|
|
19
|
-
##
|
19
|
+
## 2. Using Custom Configuration Files
|
20
20
|
|
21
|
-
|
21
|
+
You can use the `-c NAME` or `--config NAME` option to load and save configuration from a custom file:
|
22
|
+
|
23
|
+
```bash
|
24
|
+
janito -c myproject "Prompt for my project"
|
25
|
+
```
|
26
|
+
|
27
|
+
This will use the config file at:
|
28
|
+
- Windows: `C:\Users\<YourUser>\.janito\configs\myproject.json`
|
29
|
+
- Linux/macOS: `/home/<youruser>/.janito/configs/myproject.json`
|
30
|
+
|
31
|
+
If the file does not exist, it will be created automatically when you save settings.
|
32
|
+
|
33
|
+
## 3. Default Configuration File
|
34
|
+
|
35
|
+
By default, Janito uses a `config.json` file located in the `.janito` directory under your home folder for persistent settings.
|
22
36
|
|
23
37
|
**Path:**
|
24
38
|
|
@@ -34,6 +48,8 @@ Show the current configuration with:
|
|
34
48
|
janito --show-config
|
35
49
|
```
|
36
50
|
|
51
|
+
This will display the config file path at the top. If you use `-c NAME`, this will show the configuration for that custom file and its path.
|
52
|
+
|
37
53
|
## Advanced Configuration
|
38
54
|
|
39
55
|
### Disabling Tools
|
@@ -7,7 +7,7 @@ This guide explains how to set up Janito for development and install the latest
|
|
7
7
|
To install the most recent development version from the GitHub main branch, run:
|
8
8
|
|
9
9
|
```bash
|
10
|
-
pip install git+
|
10
|
+
pip install git+git@github.com:ikignosis/janito.git@main
|
11
11
|
```
|
12
12
|
|
13
13
|
## Editable Install for Local Development
|
@@ -15,7 +15,7 @@ pip install git+https://github.com/janito-dev/janito.git@main
|
|
15
15
|
To make code changes and see them reflected immediately (without reinstalling), use an editable install:
|
16
16
|
|
17
17
|
```bash
|
18
|
-
git clone
|
18
|
+
git clone git@github.com:ikignosis/janito.git
|
19
19
|
cd janito
|
20
20
|
git checkout main
|
21
21
|
pip install -e .
|
@@ -25,7 +25,7 @@ janito --set disabled_tools=""
|
|
25
25
|
|
26
26
|
### Via Configuration File
|
27
27
|
|
28
|
-
Edit your
|
28
|
+
Edit your configuration file (by default `~/.janito/config.json`, or a custom file if using `-c NAME` such as `~/.janito/configs/NAME.json`) and add the `disabled_tools` key:
|
29
29
|
|
30
30
|
```json
|
31
31
|
{
|
@@ -35,6 +35,8 @@ Edit your `config.json` file (located in `~/.janito/config.json`) and add the `d
|
|
35
35
|
}
|
36
36
|
```
|
37
37
|
|
38
|
+
If you use `-c NAME`, the disabled tools will be saved and loaded from that custom config file.
|
39
|
+
|
38
40
|
## Viewing Disabled Tools
|
39
41
|
|
40
42
|
Check which tools are currently disabled:
|
@@ -43,8 +45,9 @@ Check which tools are currently disabled:
|
|
43
45
|
janito --show-config
|
44
46
|
```
|
45
47
|
|
46
|
-
This will display a section showing your disabled tools, for example:
|
48
|
+
This will display the config file path and a section showing your disabled tools, for example:
|
47
49
|
```
|
50
|
+
Config file: /home/youruser/.janito/config.json
|
48
51
|
Disabled tools: ask_user, python_code_run
|
49
52
|
```
|
50
53
|
|
@@ -116,6 +119,6 @@ Use the exact tool names as shown in `janito --list-tools`. Common tool names in
|
|
116
119
|
|
117
120
|
### Configuration Not Persisting
|
118
121
|
|
119
|
-
- Verify the config file path: `janito --show-config` shows the location
|
120
|
-
- Check file permissions for your
|
122
|
+
- Verify the config file path: `janito --show-config` shows the config file location at the top (if using `-c NAME`, it will show the custom config file)
|
123
|
+
- Check file permissions for your config file
|
121
124
|
- Ensure no syntax errors in the JSON configuration
|
@@ -17,7 +17,7 @@ pip install janito
|
|
17
17
|
|
18
18
|
### From GitHub (Development Version)
|
19
19
|
```bash
|
20
|
-
pip install git+
|
20
|
+
pip install git+git@github.com:ikignosis/janito.git
|
21
21
|
```
|
22
22
|
|
23
23
|
> For development setup and contributing, see [Developing & Extending](developing.md).
|
@@ -35,7 +35,8 @@ janito -p moonshotai "Your prompt here"
|
|
35
35
|
|
36
36
|
Janito supports the following MoonshotAI models:
|
37
37
|
|
38
|
-
- `kimi-k2-
|
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
|
39
40
|
- `kimi-k1-8k` - Standard model with 8k context window
|
40
41
|
- `kimi-k1-32k` - Standard model with 32k context window
|
41
42
|
- `kimi-k1-128k` - Standard model with 128k context window
|
@@ -48,7 +49,7 @@ janito -p moonshotai -m kimi-k1-32k "Your prompt here"
|
|
48
49
|
|
49
50
|
## 5. Verify Your Configuration
|
50
51
|
|
51
|
-
Show your current configuration:
|
52
|
+
Show your current configuration (the config file path will be shown at the top):
|
52
53
|
|
53
54
|
```bash
|
54
55
|
janito --show-config
|
@@ -1,6 +1,6 @@
|
|
1
1
|
# 🏁 Janito CLI Options
|
2
2
|
|
3
|
-
This page documents all command-line options for Janito, as shown by `janito --help`. These options temporarily override configuration for a single session and do not persist changes to config files
|
3
|
+
This page documents all command-line options for Janito, as shown by `janito --help`. These options temporarily override configuration for a single session and do not persist changes to config files unless you use `--set` or a custom config file with `-c`.
|
4
4
|
|
5
5
|
**Syntax:** `janito [options] [prompt]`
|
6
6
|
|
@@ -14,6 +14,7 @@ These options are useful for one-off runs, scripting, or experimentation. They t
|
|
14
14
|
|--------|-------------|
|
15
15
|
| `prompt` | Prompt to submit (optional positional argument) |
|
16
16
|
| `-h`, `--help` | Show this help message and exit |
|
17
|
+
| `-c NAME`, `--config NAME` | Use custom configuration file `~/.janito/configs/NAME.json` instead of the default config.json |
|
17
18
|
| `--verbose-api` | Print API calls and responses of LLM driver APIs for debugging/tracing. |
|
18
19
|
| `--verbose-tools` | Print info messages for tool execution in tools adapter. |
|
19
20
|
| `--verbose-agent` | Print info messages for agent event and message part handling. |
|
@@ -25,21 +26,19 @@ These options are useful for one-off runs, scripting, or experimentation. They t
|
|
25
26
|
| `--unset KEY` | Unset (remove) a config key |
|
26
27
|
| `--version` | Show program's version number and exit |
|
27
28
|
| `--list-tools` | List all registered tools |
|
28
|
-
| `--show-config` | Show the current config |
|
29
|
+
| `--show-config` | Show the current config and config file path |
|
30
|
+
| `--list-config` | List all config files (default and custom) |
|
29
31
|
| `--list-providers` | List supported LLM providers |
|
30
32
|
| `-l`, `--list-models` | List all supported models |
|
31
33
|
| `--set-api-key API_KEY` | Set API key for the provider (requires -p PROVIDER) |
|
32
34
|
| `--set KEY=VALUE` | Set a config key |
|
33
35
|
| `-s SYSTEM_PROMPT`, `--system SYSTEM_PROMPT` | Set a system prompt |
|
34
36
|
| `-S`, `--show-system` | Show the resolved system prompt for the main agent |
|
35
|
-
|
36
37
|
| `-p PROVIDER`, `--provider PROVIDER` | Select the provider |
|
37
38
|
| `-m MODEL`, `--model MODEL` | Select the model |
|
38
39
|
| `-t TEMPERATURE`, `--temperature TEMPERATURE` | Set the temperature |
|
39
40
|
| `-v`, `--verbose` | Print extra information before answering |
|
40
41
|
| `-R`, `--raw` | Print the raw JSON response from the OpenAI API (if applicable) |
|
41
|
-
|
42
|
-
|
43
42
|
| `--effort {low, medium, high, none}` | Set the reasoning effort for models that support it (low, medium, high, none) |
|
44
43
|
| `-e`, `--event-log` | Enable event logging to the system bus |
|
45
44
|
| `--event-debug` | Print debug info on event subscribe/submit methods |
|
@@ -49,7 +48,7 @@ These options are useful for one-off runs, scripting, or experimentation. They t
|
|
49
48
|
```sh
|
50
49
|
janito [options] [prompt]
|
51
50
|
janito -p openai -m gpt-3.5-turbo "Your prompt here"
|
52
|
-
janito -
|
51
|
+
janito -c myproject -p openai "Prompt for my project (uses ~/.janito/configs/myproject.json)"
|
53
52
|
janito --list-tools
|
54
53
|
janito --web # Enable clickable file links via web viewer
|
55
54
|
janito -u -x --read --write "Run a tool with unrestricted paths (DANGEROUS)"
|
@@ -96,7 +95,7 @@ The `--set` command supports the following configuration keys:
|
|
96
95
|
| `model` | Set the default model | `--set model=gpt-4.1` |
|
97
96
|
| `max_tokens` | Set maximum tokens | `--set max_tokens=4000` |
|
98
97
|
| `base_url` | Set custom API base URL | `--set base_url=https://api.example.com` |
|
99
|
-
| `tool_permissions` | Set tool permission level | `--set tool_permissions=
|
98
|
+
| `tool_permissions` | Set tool permission level | `--set tool_permissions=rwx` |
|
100
99
|
| `disabled_tools` | Disable specific tools | `--set disabled_tools=ask_user,python_code_run` |
|
101
100
|
|
102
101
|
For more details on disabling tools, see the [Disabling Tools Guide](../guides/disabled-tools.md).
|
@@ -18,11 +18,19 @@ This page lists the supported providers and their available models.
|
|
18
18
|
- Claude 3 Haiku
|
19
19
|
|
20
20
|
## MoonshotAI
|
21
|
-
-
|
22
|
-
-
|
21
|
+
- kimi-k2-turbo-preview
|
22
|
+
- kimi-k2-turbo-preview
|
23
|
+
- kimi-k1-8k
|
24
|
+
- kimi-k1-32k
|
25
|
+
- kimi-k1-128k
|
23
26
|
|
24
|
-
## Groq
|
25
27
|
- Llama-3-8b-8192
|
26
28
|
- Llama-3-70b-8192
|
27
29
|
|
30
|
+
## Alibaba
|
31
|
+
- qwen-turbo
|
32
|
+
- qwen-plus
|
33
|
+
- qwen-max
|
34
|
+
- qwen3-coder-plus
|
35
|
+
|
28
36
|
<!-- Removed links to model_info.py files for all providers to avoid broken references. -->
|
@@ -0,0 +1,149 @@
|
|
1
|
+
# Janito CLI
|
2
|
+
|
3
|
+
A powerful command-line tool for running LLM-powered workflows with built-in tool execution capabilities.
|
4
|
+
|
5
|
+
## Quick Start
|
6
|
+
|
7
|
+
### Installation
|
8
|
+
|
9
|
+
```bash
|
10
|
+
pip install janito
|
11
|
+
```
|
12
|
+
|
13
|
+
### First-Time Setup
|
14
|
+
|
15
|
+
1. **Get your API key**: Sign up at [Moonshot AI](https://platform.moonshot.cn/) and get your API key
|
16
|
+
2. **Set your API key**:
|
17
|
+
```bash
|
18
|
+
janito --set-api-key YOUR_MOONSHOT_API_KEY -p moonshotai
|
19
|
+
```
|
20
|
+
|
21
|
+
### Basic Usage
|
22
|
+
|
23
|
+
**MoonshotAI (Recommended - Default Provider)**
|
24
|
+
```bash
|
25
|
+
# Using the default provider (moonshotai) and model
|
26
|
+
janito "Create a Python script that reads a CSV file"
|
27
|
+
|
28
|
+
# Using a specific MoonshotAI model
|
29
|
+
janito -m kimi-k1-8k "Explain quantum computing"
|
30
|
+
```
|
31
|
+
|
32
|
+
**Other Providers**
|
33
|
+
```bash
|
34
|
+
# OpenAI
|
35
|
+
janito -p openai -m gpt-4 "Write a React component"
|
36
|
+
|
37
|
+
# Anthropic
|
38
|
+
janito -p anthropic -m claude-3-5-sonnet-20241022 "Analyze this code"
|
39
|
+
|
40
|
+
# Google
|
41
|
+
janito -p google -m gemini-2.0-flash-exp "Generate unit tests"
|
42
|
+
```
|
43
|
+
|
44
|
+
### Interactive Chat Mode
|
45
|
+
|
46
|
+
Start an interactive session:
|
47
|
+
```bash
|
48
|
+
janito --chat
|
49
|
+
```
|
50
|
+
|
51
|
+
In chat mode, you can:
|
52
|
+
|
53
|
+
- Have multi-turn conversations
|
54
|
+
- Execute code and commands
|
55
|
+
- Read and write files
|
56
|
+
- Use built-in tools
|
57
|
+
|
58
|
+
### Available Commands
|
59
|
+
|
60
|
+
- `janito --list-providers` - List all supported providers
|
61
|
+
- `janito --list-models` - List all available models
|
62
|
+
- `janito --list-tools` - List available tools
|
63
|
+
- `janito --show-config` - Show current configuration
|
64
|
+
|
65
|
+
### Configuration
|
66
|
+
|
67
|
+
Set default provider and model:
|
68
|
+
```bash
|
69
|
+
janito --set provider=moonshotai
|
70
|
+
janito --set model=kimi-k1-8k
|
71
|
+
```
|
72
|
+
|
73
|
+
## Providers
|
74
|
+
|
75
|
+
### MoonshotAI (Recommended)
|
76
|
+
|
77
|
+
- **Models**: kimi-k1-8k, kimi-k1-32k, kimi-k1-128k, kimi-k2-turbo-preview
|
78
|
+
- **Strengths**: Excellent Chinese/English support, competitive pricing, fast responses
|
79
|
+
- **Setup**: Get API key from [Moonshot AI Platform](https://platform.moonshot.cn/)
|
80
|
+
|
81
|
+
### OpenAI
|
82
|
+
|
83
|
+
- **Models**: gpt-4, gpt-4-turbo, gpt-3.5-turbo
|
84
|
+
- **Setup**: Get API key from [OpenAI Platform](https://platform.openai.com/)
|
85
|
+
|
86
|
+
### Anthropic
|
87
|
+
|
88
|
+
- **Models**: claude-3-5-sonnet-20241022, claude-3-opus-20240229
|
89
|
+
- **Setup**: Get API key from [Anthropic Console](https://console.anthropic.com/)
|
90
|
+
|
91
|
+
### Google
|
92
|
+
|
93
|
+
- **Models**: gemini-2.0-flash-exp, gemini-1.5-pro
|
94
|
+
- **Setup**: Get API key from [Google AI Studio](https://makersuite.google.com/)
|
95
|
+
|
96
|
+
## Advanced Features
|
97
|
+
|
98
|
+
### Tool Usage
|
99
|
+
|
100
|
+
Janito includes powerful built-in tools for:
|
101
|
+
|
102
|
+
- File operations (read, write, search)
|
103
|
+
- Code execution
|
104
|
+
- Web scraping
|
105
|
+
- System commands
|
106
|
+
- And more...
|
107
|
+
|
108
|
+
### Profiles and Roles
|
109
|
+
Use predefined system prompts:
|
110
|
+
```bash
|
111
|
+
janito --profile developer "Create a REST API"
|
112
|
+
janito --role python-expert "Optimize this algorithm"
|
113
|
+
```
|
114
|
+
|
115
|
+
### Environment Variables
|
116
|
+
You can also configure via environment variables:
|
117
|
+
```bash
|
118
|
+
export MOONSHOTAI_API_KEY=your_key_here
|
119
|
+
export JANITO_PROVIDER=moonshotai
|
120
|
+
export JANITO_MODEL=kimi-k1-8k
|
121
|
+
```
|
122
|
+
|
123
|
+
## Examples
|
124
|
+
|
125
|
+
### Code Generation
|
126
|
+
```bash
|
127
|
+
janito "Create a Python FastAPI application with user authentication"
|
128
|
+
```
|
129
|
+
|
130
|
+
### File Analysis
|
131
|
+
```bash
|
132
|
+
janito "Analyze the performance bottlenecks in my_app.py"
|
133
|
+
```
|
134
|
+
|
135
|
+
### Data Processing
|
136
|
+
```bash
|
137
|
+
janito "Process this CSV file and generate summary statistics"
|
138
|
+
```
|
139
|
+
|
140
|
+
### Web Development
|
141
|
+
```bash
|
142
|
+
janito "Create a responsive landing page with Tailwind CSS"
|
143
|
+
```
|
144
|
+
|
145
|
+
## Support
|
146
|
+
|
147
|
+
- **Documentation**: Check individual provider directories for detailed setup guides
|
148
|
+
- **Issues**: Report bugs and feature requests on GitHub
|
149
|
+
- **Discord**: Join our community for help and discussions
|
@@ -52,8 +52,8 @@ class ChatScriptRunner:
|
|
52
52
|
inputs: List[str],
|
53
53
|
*,
|
54
54
|
console: Optional[Console] = None,
|
55
|
-
provider: str = "
|
56
|
-
model: str = "
|
55
|
+
provider: str = "moonshotai",
|
56
|
+
model: str = "kimi-k1-8k",
|
57
57
|
use_real_agent: bool = True,
|
58
58
|
**chat_session_kwargs,
|
59
59
|
) -> None:
|