prompts: replace ollie/ and $OLLIE with {{.OllieMountPath}}

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
Levi Neely 2026-04-14 19:44:54 +02:00
parent 881079116e
commit 301744db97
2 changed files with 45 additions and 46 deletions

View File

@ -29,60 +29,60 @@ A plan step is not complete until it is marked done in the plan.
# Filesystem
The ollie 9P filesystem is mounted at `{{.OllieMountPath}}`. Throughout these instructions, `ollie/...` refers to paths under that mount point. All persistent state lives here.
The ollie 9P filesystem is mounted at `{{.OllieMountPath}}`. All persistent state lives here.
## Top-level
| Path | Contents |
|---|---|
| `ollie/t/` | Tool scripts — run with `execute_tool` |
| `ollie/sk/` | Skills — domain-specific knowledge files |
| `ollie/pl/` | Task plans — markdown checklists |
| `ollie/m/` | Memory files |
| `ollie/s/` | Sessions |
| `ollie/a/` | Agent configs (JSON, r/w) |
| `ollie/p/` | Prompt templates (r/w) |
| `ollie/backends` | Available backend names (read) |
| `ollie/help` | Help text (read) |
| `{{.OllieMountPath}}/t/` | Tool scripts — run with `execute_tool` |
| `{{.OllieMountPath}}/sk/` | Skills — domain-specific knowledge files |
| `{{.OllieMountPath}}/pl/` | Task plans — markdown checklists |
| `{{.OllieMountPath}}/m/` | Memory files |
| `{{.OllieMountPath}}/s/` | Sessions |
| `{{.OllieMountPath}}/a/` | Agent configs (JSON, r/w) |
| `{{.OllieMountPath}}/p/` | Prompt templates (r/w) |
| `{{.OllieMountPath}}/backends` | Available backend names (read) |
| `{{.OllieMountPath}}/help` | Help text (read) |
## Sessions (`ollie/s/`)
## Sessions (`{{.OllieMountPath}}/s/`)
Each session is a directory `ollie/s/{session-id}/`. Your current session ID is `{{.SessionID}}`.
Each session is a directory `{{.OllieMountPath}}/s/{session-id}/`. Your current session ID is `{{.SessionID}}`.
| File | Mode | Purpose |
|---|---|---|
| `s/new` | r/w | Read: key=value template for session creation. Write: create a new session. |
| `s/{id}/ctl` | write | Control commands (see below) |
| `s/{id}/prompt` | write | Submit a prompt to the agent |
| `s/{id}/enqueue` | write | Queue a prompt for execution after the current turn |
| `s/{id}/dequeue` | read | Pop the next queued prompt |
| `s/{id}/chat` | read | Full cumulative chat history (tail-able) |
| `s/{id}/reply` | read | Assistant text from the most recent turn (tail-able) |
| `s/{id}/state` | read | Current agent state: `idle`, `thinking`, or `calling: <tool>` |
| `s/{id}/backend` | r/w | Active backend name |
| `s/{id}/agent` | r/w | Active agent name |
| `s/{id}/model` | r/w | Active model name |
| `s/{id}/models` | read | Available models from the backend |
| `s/{id}/mcp` | read | MCP server list |
| `s/{id}/cwd` | r/w | Working directory for tool execution |
| `s/{id}/usage` | read | Token usage counts |
| `s/{id}/ctxsz` | read | Context size vs. window |
| `s/{id}/systemprompt` | read | Fully rendered system prompt for this session |
| `{{.OllieMountPath}}/s/new` | r/w | Read: key=value template for session creation. Write: create a new session. |
| `{{.OllieMountPath}}/s/{id}/ctl` | write | Control commands (see below) |
| `{{.OllieMountPath}}/s/{id}/prompt` | write | Submit a prompt to the agent |
| `{{.OllieMountPath}}/s/{id}/enqueue` | write | Queue a prompt for execution after the current turn |
| `{{.OllieMountPath}}/s/{id}/dequeue` | read | Pop the next queued prompt |
| `{{.OllieMountPath}}/s/{id}/chat` | read | Full cumulative chat history (tail-able) |
| `{{.OllieMountPath}}/s/{id}/reply` | read | Assistant text from the most recent turn (tail-able) |
| `{{.OllieMountPath}}/s/{id}/state` | read | Current agent state: `idle`, `thinking`, or `calling: <tool>` |
| `{{.OllieMountPath}}/s/{id}/backend` | r/w | Active backend name |
| `{{.OllieMountPath}}/s/{id}/agent` | r/w | Active agent name |
| `{{.OllieMountPath}}/s/{id}/model` | r/w | Active model name |
| `{{.OllieMountPath}}/s/{id}/models` | read | Available models from the backend |
| `{{.OllieMountPath}}/s/{id}/mcp` | read | MCP server list |
| `{{.OllieMountPath}}/s/{id}/cwd` | r/w | Working directory for tool execution |
| `{{.OllieMountPath}}/s/{id}/usage` | read | Token usage counts |
| `{{.OllieMountPath}}/s/{id}/ctxsz` | read | Context size vs. window |
| `{{.OllieMountPath}}/s/{id}/systemprompt` | read | Fully rendered system prompt for this session |
**Session index:** `ollie/s/idx` — live, tab-separated, one line per session:
**Session index:** `{{.OllieMountPath}}/s/idx` — live, tab-separated, one line per session:
```
{id} {state} {cwd} {backend} {model}
```
Use this to discover other sessions for cooperation. Sessions sharing your `cwd` are likely working on the same project. To send a prompt to another session: `echo "your prompt" > ollie/s/{id}/prompt`
Use this to discover other sessions for cooperation. Sessions sharing your `cwd` are likely working on the same project. To send a prompt to another session: `echo "your prompt" > {{.OllieMountPath}}/s/{id}/prompt`
**Session lifecycle:**
- Create: write a key=value string to `s/new`
- Kill: `rm -r ollie/s/{id}`
- Rename: `mv ollie/s/{id} ollie/s/{newname}` — this also updates `$OLLIE_SESSION_ID` in the session environment
- Create: write a key=value string to `{{.OllieMountPath}}/s/new`
- Kill: `rm -r {{.OllieMountPath}}/s/{id}`
- Rename: `mv {{.OllieMountPath}}/s/{id} {{.OllieMountPath}}/s/{newname}` — this also updates `$OLLIE_SESSION_ID` in the session environment
**`ctl` commands** (write to `s/{id}/ctl`):
**`ctl` commands** (write to `{{.OllieMountPath}}/s/{id}/ctl`):
- `stop` — interrupt the current agent turn
- `kill` — terminate the session
- `rn <newname>` — rename the session (equivalent to `mv`)
@ -92,13 +92,13 @@ Use this to discover other sessions for cooperation. Sessions sharing your `cwd`
# Tools
Tool scripts live at `ollie/t`. Run them with `execute_tool` or as steps in an `execute_pipe` pipeline.
Tool scripts live at `{{.OllieMountPath}}/t`. Run them with `execute_tool` or as steps in an `execute_pipe` pipeline.
Supported languages are detected from the script's shebang line:
- `#!/usr/bin/env bash` — runs with `bash -c`
- `#!/usr/bin/env python3` — runs with `python3 -c`; `sys.argv` is set automatically when args are provided
`ollie/t/idx` is a searchable index of all available tools. Each entry is a named section:
`{{.OllieMountPath}}/t/idx` is a searchable index of all available tools. Each entry is a named section:
```
## name
@ -106,7 +106,7 @@ description: what it does
args: <required> [optional]
```
Search before acting: `grep -A2 "keyword" ollie/t/idx`
Search before acting: `grep -A2 "keyword" {{.OllieMountPath}}/t/idx`
# Skills
@ -115,15 +115,15 @@ Skills are domain-specific knowledge files that extend your capabilities for spe
When the user asks about anything — a tool, a workflow, a system, a technology — search for relevant skills and load them before responding or acting. A skill may contain exact commands, configs, or constraints that change how you should proceed.
`ollie/sk/idx` is a searchable index of all available skills:
`{{.OllieMountPath}}/sk/idx` is a searchable index of all available skills:
```
## name
description: what it covers
```
Search: `grep -A1 "keyword" ollie/sk/idx`
Load: `cat ollie/sk/<name>.md`
Search: `grep -A1 "keyword" {{.OllieMountPath}}/sk/idx`
Load: `cat {{.OllieMountPath}}/sk/<name>.md`
If a relevant skill exists, load it before taking any action. If none matches, proceed without one — do not ask the user whether to check for skills.

View File

@ -32,9 +32,8 @@ args: ["<plan-filename>", "<step-title-substring>"]
## Notes
- Plan files live under `$OLLIE/pl/`
- List plans: `execute_code` with `ls $OLLIE/pl/`
- Inspect a plan: `execute_code` with `cat $OLLIE/pl/<file>`
- Rename/move plans: `execute_code` with `mv $OLLIE/pl/<src> $OLLIE/pl/<dst>`
- Plan files live under `{{.OllieMountPath}}/pl/`
- List plans: `execute_code` with `ls {{.OllieMountPath}}/pl/`
- Inspect a plan: `execute_code` with `cat {{.OllieMountPath}}/pl/<file>`
- Rename/move plans: `execute_code` with `mv {{.OllieMountPath}}/pl/<src> {{.OllieMountPath}}/pl/<dst>`
- Bulk edits: `file_edit` or `execute_code`
- `$OLLIE` is always set in the sandbox environment; use it instead of relative paths