docs: added documentation for the new tool_timeout configuration field

Dark-Alex-17 committed 2026-09-08 17:23:41 -06:00
1 parent 1d120bc3fb
commit 8510337795
3 files changed
+7 -4

No files matched your search

+1
@@ -152,6 +152,7 @@ silently abandoned.
```yaml ```yaml
# config.yaml (global) # config.yaml (global)
max_concurrent_jobs: 5 # default: 5; 0 disables background jobs entirely max_concurrent_jobs: 5 # default: 5; 0 disables background jobs entirely
tool_timeout: 1800 # per-tool-call wall-clock cap in seconds, also applied to process jobs (default: 1800; 0 = unlimited)
``` ```
```yaml ```yaml
+4 -3
@@ -33,9 +33,10 @@ A few things to know about how Coyote runs your tool's subprocess:
* **`stdin` is `/dev/null`.** Tools must not read from standard input. Anything that blocks on stdin (interactive * **`stdin` is `/dev/null`.** Tools must not read from standard input. Anything that blocks on stdin (interactive
editors, `read` without `</dev/tty`, watch-mode test runners) will see EOF immediately instead of hanging the editors, `read` without `</dev/tty`, watch-mode test runners) will see EOF immediately instead of hanging the
session. Interactive prompts that genuinely need the user should read from `/dev/tty` directly. session. Interactive prompts that genuinely need the user should read from `/dev/tty` directly.
* **Every tool call has a wall-clock cap** controlled by the `COYOTE_TOOL_TIMEOUT` environment variable * **Every tool call has a wall-clock cap** controlled by the `tool_timeout` config key or the `COYOTE_TOOL_TIMEOUT`
(default: `1800` seconds; `0` = unlimited). If the tool exceeds it, the process is killed and a `tool_call_error` environment variable (the environment variable takes precedence; default: `1800` seconds; `0` = unlimited). If the
is returned to the model, and the session keeps going. See [Environment Variables](Environment-Variables). tool exceeds it, the process is killed and a `tool_call_error` is returned to the model, and the session keeps
going. See [Environment Variables](Environment-Variables).
The following section explains how you can add parameters to your bash functions and how to test out your scripts. The following section explains how you can add parameters to your bash functions and how to test out your scripts.
+2 -1
@@ -31,6 +31,7 @@ Below are the most commonly used configuration settings and their corresponding
| `compression_threshold` | `COYOTE_COMPRESSION_THRESHOLD` | | `compression_threshold` | `COYOTE_COMPRESSION_THRESHOLD` |
| `function_calling_support` | `COYOTE_FUNCTION_CALLING_SUPPORT` | | `function_calling_support` | `COYOTE_FUNCTION_CALLING_SUPPORT` |
| `enabled_tools` | `COYOTE_ENABLED_TOOLS` | | `enabled_tools` | `COYOTE_ENABLED_TOOLS` |
| `tool_timeout` | `COYOTE_TOOL_TIMEOUT` |
| `mcp_server_support` | `COYOTE_MCP_SERVER_SUPPORT` | | `mcp_server_support` | `COYOTE_MCP_SERVER_SUPPORT` |
| `enabled_mcp_servers` | `COYOTE_ENABLED_MCP_SERVERS` | | `enabled_mcp_servers` | `COYOTE_ENABLED_MCP_SERVERS` |
| `rag_embedding_model` | `COYOTE_RAG_EMBEDDING_MODEL` | | `rag_embedding_model` | `COYOTE_RAG_EMBEDDING_MODEL` |
@@ -59,7 +60,7 @@ The following environment variables are available for clients in Coyote:
| `COYOTE_PLATFORM` | Combine with `{client}_API_KEY` to run Coyote without a configuration file. <br>This variable is ignored if a configuration file exists. | | `COYOTE_PLATFORM` | Combine with `{client}_API_KEY` to run Coyote without a configuration file. <br>This variable is ignored if a configuration file exists. |
| `COYOTE_PATCH_{client}_CHAT_COMPLETIONS` | Patch chat completion requests to models on the corresponding client; Can modify the URL, body, <br>or headers. | | `COYOTE_PATCH_{client}_CHAT_COMPLETIONS` | Patch chat completion requests to models on the corresponding client; Can modify the URL, body, <br>or headers. |
| `COYOTE_SHELL` | Specify the shell that Coyote should be using when executing commands | | `COYOTE_SHELL` | Specify the shell that Coyote should be using when executing commands |
| `COYOTE_TOOL_TIMEOUT` | Wall-clock cap in seconds for any single tool-call subprocess (built-in and custom tools alike). <br>When exceeded, the tool process is killed and a `tool_call_error` is returned to the model instead of hanging the session forever. <br>Set to `0` for unlimited. Default: `1800` (30 minutes). | | `COYOTE_TOOL_TIMEOUT` | Wall-clock cap in seconds for any single tool-call subprocess (built-in and custom tools alike). <br>When exceeded, the tool process is killed and a `tool_call_error` is returned to the model instead of hanging the session forever. <br>Set to `0` for unlimited. Default: `1800` (30 minutes). <br>Counterpart of the `tool_timeout` config key; the environment variable takes precedence. |
# Files and Directory Related Variables # Files and Directory Related Variables
You can also customize the files and directories that Coyote loads its configuration files from: You can also customize the files and directories that Coyote loads its configuration files from: