Disabling Tools Guide
Janito allows you to disable specific tools to customize your workflow or enhance security. This guide explains how to disable and manage tools using configuration settings.
Overview
By default, all tools are enabled based on their permission requirements (read, write, execute). However, you can selectively disable individual tools using the disabled_tools
configuration setting.
Setting Disabled Tools
Via CLI
Use the --set
command to disable tools:
# Disable a single tool
janito --set disabled_tools=ask_user
# Disable multiple tools (comma-separated)
janito --set disabled_tools="ask_user,python_code_run"
# Clear all disabled tools
janito --set disabled_tools=""
Via Configuration File
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:
If you use -c NAME
, the disabled tools will be saved and loaded from that custom config file.
Viewing Disabled Tools
Check which tools are currently disabled:
This will display the config file path and a section showing your disabled tools, for example:
Listing Available Tools
To see which tools are currently available (excluding disabled ones):
Disabled tools will not appear in the tool listing.
Common Use Cases
Security Enhancement
Disable potentially dangerous tools in production environments:
Workflow Customization
Disable tools you don't use to reduce clutter:
Temporary Disabling
Temporarily disable tools for specific sessions:
Tool Names
Use the exact tool names as shown in janito --list-tools
. Common tool names include:
ask_user
- Interactive user promptspython_code_run
- Execute Python coderun_powershell_command
- Execute PowerShell commandsrun_bash_command
- Execute bash commandscreate_file
- Create new filesremove_file
- Delete filesopen_url
- Open URLs in browser- And many more...
Best Practices
-
Test Before Disabling: Always test your workflow after disabling tools to ensure essential functionality isn't broken.
-
Document Changes: Keep track of which tools you've disabled and why.
-
Use Sparingly: Only disable tools that pose security risks or aren't needed for your specific use case.
-
Review Regularly: Periodically review your disabled tools list to ensure it still meets your needs.
Troubleshooting
Tool Still Appears Available
- Ensure you're using the exact tool name (case-sensitive)
- Check that the configuration was saved:
janito --show-config
- Restart your terminal session if needed
Accidentally Disabled Essential Tools
- Clear all disabled tools:
janito --set disabled_tools=""
- Or selectively re-enable by removing from the comma-separated list
Configuration Not Persisting
- 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) - Check file permissions for your config file
- Ensure no syntax errors in the JSON configuration