2.9 KiB
2.9 KiB
Hermes Agent Quick Reference (Draft v0.1)
One-page cheat sheet for core Hermes tools. For full docs see https://hermes-agent.nousresearch.com/docs
Core Tools
| Tool | Purpose |
|---|---|
terminal(command) |
Run shell commands. |
execute_code(code) |
Run Python with Hermes tool imports. |
web_search(query) |
Search the web (returns up to 5). |
web_extract(urls) |
Extract page content as markdown. |
read_file(path) |
Read text files with pagination. |
write_file(path, content) |
Overwrite a file (read first if existing). |
patch(path, old_string, new_string) |
Targeted find-and-replace. |
search_files(pattern) |
Ripgrep-backed content or filename search. |
browser_exec(code) |
Drive a real browser via Python. |
delegate_task(tasks) |
Spawn parallel subagents. |
clarify(questions) |
Ask the user multiple questions in one form. |
memory(action, target, ...) |
Persistent memory across sessions. |
skill_view(name) |
Load a skill's full content and templates. |
tool_search(queries) |
Find deferred tool schemas. |
tool_call(calls) |
Invoke deferred tools. |
manage_connections(...) |
Hosted connectors and MCP servers. |
Common Patterns
Shell
- Foreground:
terminal("ls -la /root") - Background:
terminal("python server.py", background=True, notify=True) - Timeout override:
terminal("long-task", timeout=600)
Files
- Read:
read_file("/path/to/file", offset=1, limit=2000) - Write:
read_file(path) first, then write_file(path, content) - Edit:
patch(path, "OLD", "NEW")(fuzzy match, unique required)
Code Execution
from hermes_tools import web_search, terminal
print(web_search("hermes agent docs", limit=3)["data"]["web"])
Delegation
- One task:
delegate_task([{"goal": "Do X", "context": "..."}]) - Parallel: multiple entries in
tasksarray - Live control:
delegate_task(action="list")or"steer"
Browser
- First nav:
new_tab("https://example.com") - Subsequent:
goto_url(url) - Extract text:
js("document.body.innerText") - Screenshot:
capture_screenshot()
Flags Cheat Sheet
| Flag | Tool | Effect |
|---|---|---|
background=True |
terminal | Returns session_id immediately |
notify=['pattern'] |
terminal | Notify on line match |
pty=True |
terminal | Interactive REPL support |
persist_on_release=True |
terminal | Survive session end |
timeout=N |
terminal, browser_exec | Max seconds (600+ = tracked bg) |
file_glob="*.py" |
search_files | Filter files by extension |
output_mode="files_only" |
search_files | Return paths only |
char_limit=N |
web_extract | Per-page budget (min 2000) |
Rules
- Evidence only: measured > claimed. No fabricated results.
- One artifact per lane call. Commit to troupe repo when done.
- CHECK command must be a real test, not a tautology.
- Memory budget: 2200 chars. Save durable facts only.