Commit Graph

11 Commits

Author SHA1 Message Date
Levi Neely 1b9c7af9c9 tools: clear usage messages on all tools when called with no/bad args
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-14 18:21:35 +02:00
Levi Neely 7999bd34a7 Revert "tools: fix file_edit and file_write to write directly, not via temp+rename"
This reverts commit ce1688efb8.
2026-04-14 18:14:16 +02:00
Levi Neely ce1688efb8 tools: fix file_edit and file_write to write directly, not via temp+rename
The temp file + os.replace() (rename) pattern fails on FUSE-mounted paths
(e.g. $OLLIE/sk/, $OLLIE/pl/) because the 9P server doesn't implement Twstat.
Write directly to file_path instead.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-14 18:12:59 +02:00
Levi Neely de00ac1fcc rename OLLIE_9MOUNT → OLLIE throughout; update submodules
Tools, sandbox configs, docs, and skills all updated. $OLLIE is now
the canonical ollie root — cd $OLLIE goes directly to the FUSE mount.
Core now always injects $OLLIE into the execute env at session start.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-14 17:39:48 +02:00
Levi Neely 7d43a53e48 add memory_remember and memory_recall tools; fix sandbox for pyenv
memory_remember: saves a denote-formatted flat file to $OLLIE_9MOUNT/m
memory_recall: searches memories by keyword/tag/title via grep

Both write/read through the 9P FUSE mount. Removed os.makedirs calls
that failed with ERANGE on the 9P-backed /m directory.

sandbox/restricted.yaml: add {HOME}/.pyenv, .rbenv, .nvm to rox so
python3 and other version-managed interpreters can execute.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-14 17:29:35 +02:00
Levi Neely 542c5ab96d update submodules and tools: fix memory write path
- sandbox: ~/mnt/ollie added as RWX, OLLIE_9MOUNT passed through
- 9p server: create memory dir on startup
- tools: memory_remember/recall use $OLLIE_9MOUNT/m

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-14 16:11:57 +02:00
Levi Neely 53371da547 tools: add memory_remember and memory_recall
Flat-file denote-formatted memories in OLLIE_MEMORY_PATH.
memory_remember: YYYYMMddTHHmmss__{slug}--{tags}.md with required
denote frontmatter (title, date, tags, identifier, signature).
memory_recall: grep-backed search across filenames and bodies.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-14 15:41:43 +02:00
Levi Neely 4d9550e9cf tools: add file_* and reasoning_think scripts; rename task tools
Add shell script implementations of file_read, file_write, file_edit,
file_grep, file_glob, reasoning_think. Rename task_plan.sh/task_complete.py
to task_plan/task_complete (shebang detection makes extensions unnecessary).

Update submodules: core, 9p, skills.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-14 15:26:42 +02:00
Levi Neely 450a5ba7b9 tools: remove tools.sh — discovery now handled by prompt injection
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-14 13:02:27 +02:00
Levi Neely 995d72a776 tools: add tools.sh discovery script; update prompt for schema-less tools
tools.sh reads # description/# Args headers from all scripts and prints
a summary — one call replaces the schema injection built-in tools get
for free. Prompt now directs the model to run it before using unfamiliar
tools.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-14 10:58:03 +02:00
Levi Neely e4aaa25991 tools: add task_plan and task_complete as shell/python scripts
Replaces the removed built-in task server. Plans are written to
$OLLIE_9MOUNT/pl/ (persistent, shared across sessions). Scripts live
in the tools directory and are invoked via execute_tool.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-14 09:00:57 +02:00