Ene Documentation

Tools

The agent has access to the following tools:

Tool Description
read_file Read file contents with optional offset/limit
read_image Send a local PNG, JPEG, GIF, or WebP image to a multimodal model (not registered for text-only models)
write_file Create or overwrite files, creating parent directories
edit_file Surgical text replacement in files (whitespace-tolerant match)
multi_edit Apply an ordered batch of edits to one file atomically (all-or-nothing)
ls List a directory's immediate contents (gitignore-aware)
exec_command Run foreground shell commands with real-time streaming output
wait Pause before subsequent sequential tool calls, with an interruptible countdown
glob_files Find files matching a glob pattern (gitignore-aware)
grep_files Search file contents using ripgrep regex (gitignore-aware)
web_search Search the web via DuckDuckGo
web_fetch Fetch and parse content from a URL with an interruptible 30-second overall timeout; honors HTTP_PROXY, HTTPS_PROXY, ALL_PROXY, SOCKS_PROXY, and NO_PROXY from the environment
remove_file Remove a file or directory
load_skill Load the full prompt instructions for a skill by name
start_process Start a managed background process with file-backed output
inspect_processes Inspect one or all managed background processes, with an optional bounded log tail for one process
wait_processes Block until a selected managed process exits, optionally writes output, or an optional timeout expires; omit the timeout for ordinary finite jobs
stop_process Stop a managed background process and its child process tree

Managed background process tools are built into ene so permitted model calls, the /ps command, and the live terminal/web status use the same process registry. Like other built-in model tools, their advertisement is subject to the active persona's tool policy; /ps and live status remain available to the UI.

The status bar shows (Proc: N running [M finished]) while jobs are active. Use /ps to list jobs and /ps <process-id> for details and recent output. Processes are terminated on /clear, session switch, and exit. The bundled monitor skill adds an active-monitoring workflow. For periodic monitoring, call the core wait tool first and put the inspection or status calls after it in the same sequential tool-call batch; do not group the wait and checks in parallel.

Skill-provided tools

A skill may ship a tools.py at its root (a module-level TOOLS list of {schema, run, describe, describe_output} entries; both descriptors are optional). describe(arguments) returns a ToolCallDescription for the call label. describe_output(result) returns a concise string for the successful result; failures use the standard error formatter. This keeps each skill's call and result semantics beside its tools while the shared UI owns rendering. The full result still goes to the model, while the concise output is persisted for consistent live and replay display. Those tools are registered and advertised to the model only while the skill is loaded, and removed when it is unloaded.

The bundled batch skill follows the same split: the agent owns the context-isolated turn, while the skill owns everything around it. See its batch instructions for the workflow.

Tool Description
run_batch Run one task per item in a fresh context, appending per-item results to a JSONL file

Type to search.