diff --git a/README.md b/README.md index 2171740..b95defd 100644 --- a/README.md +++ b/README.md @@ -39,7 +39,7 @@ OLLIE_ANTHROPIC_KEY=sk-ant-... OLLIE_COPILOT_TOKEN=... OLLIE_KIRO_TOKEN=... # bearer token or sqlite:// path (auto-detected from Kiro CLI if unset) OLLIE_MODEL=qwen/qwen3-235b-a22b -OLLIE_TOOLS_PATH=~/.local/share/ollie/tools # directory for execute_tool scripts +OLLIE_TOOLS_PATH=~/.config/ollie/tools # directory for execute_tool scripts ``` Shell environment variables take precedence over the env file. @@ -76,7 +76,7 @@ Controls landrun sandboxing for `execute_code`. Created automatically with defau Five built-in tools across two servers: - `execute_code` — run inline shell code in a sandbox -- `execute_tool` — run a named tool script from `OLLIE_TOOLS_PATH` (default: `~/.local/share/ollie/tools`) +- `execute_tool` — run a named tool script from `OLLIE_TOOLS_PATH` (default: `~/.config/ollie/tools`) - `execute_pipe` — chain steps as a pipeline - `reasoning_think` — externalize intermediate reasoning - `reasoning_plan` — decompose a goal into ordered steps; persists to task backend if available, otherwise queued via fallback backend or in-context only diff --git a/pkg/tools/execute/tool.go b/pkg/tools/execute/tool.go index 8fcc34c..c33fdca 100644 --- a/pkg/tools/execute/tool.go +++ b/pkg/tools/execute/tool.go @@ -14,13 +14,17 @@ import ( ) // ToolsPath returns the directory to search for named tool scripts. -// Resolved in order: OLLIE_TOOLS_PATH env var, then ~/.local/share/ollie/tools. +// Resolved in order: first entry of OLLIE_TOOLS_PATH (colon-separated), +// then ~/.config/ollie/tools. func ToolsPath() string { if p := os.Getenv("OLLIE_TOOLS_PATH"); p != "" { + if i := strings.Index(p, ":"); i >= 0 { + p = p[:i] + } return p } home, _ := os.UserHomeDir() - return filepath.Join(home, ".local", "share", "ollie", "tools") + return filepath.Join(home, ".config", "ollie", "tools") } // detectLanguage infers the script language from the shebang line.