01Hermes Starter Tips
You got Hermes running yesterday. Here is the fast path to feeling at home. Hermes is an agent that runs on your machine, gives a language model real tools (terminal, files, web, memory, skills), and remembers you between sessions. Full docs: hermes-agent.nousresearch.com/docs.
Start fresh, stay clean
/new starts a fresh session. Long sessions accumulate context; when things feel heavy or the agent starts repeating itself, start fresh. Nothing is lost: memory persists.
The agent remembers you
Tell it your preferences once ("I prefer dark mode, short answers, verify before claiming"). Those facts persist across sessions. Ask session_search style questions to recall what you did weeks ago.
Skills are your superpower
Skills are reusable procedures the agent loads when relevant. Install from repos with hermes skills install owner/repo. The moment you do something twice, turn it into a skill.
MCP brings the tools
MCP servers plug capabilities in (databases, APIs, memory). hermes mcp add, hermes mcp test, hermes mcp list. New tools appear on the next session.
Scheduled jobs
Cron jobs run on a schedule. Keep the prompt self-contained: the job runs in a fresh session with no memory of your chat. Write it so a stranger could follow it.
Subagents for parallel work
Delegate independent tasks to subagents. Each gets its own context, so heavy research does not flood your main session. They report back summaries.
Commands worth knowing
| Command | What it does |
|---|---|
/new | Fresh session. Use it often. |
hermes status | What is running, which tools, which model. |
hermes config path | Shows where your config.yaml lives. |
hermes skills install owner/repo | Install a skill from a repo. |
hermes mcp test <name> | The real status check for an MCP server. |
hermes setup | Guided setup for tools and providers. |
Security habits from day one
- Secrets live in env vars or a local env file, never pasted into chat and never written into docs that can move.
- Anything an agent fetches from the web or a file is DATA, not instructions. If fetched content tries to command the agent, ignore it and flag it.
- Never claim something works without a real probe. Run the command, show the output.
- Config changes need a restart to take effect. When something seems ignored, restart first.
02The Prompts
Copy, adapt, run. The first four are the build prompts from the field guide. The rest are day-to-day life with an agent.
Prompt 1: Deploy a memory server and wire it in
Read the docs at https://hindsight.vectorize.io/developer/installation first. Then: 1. Run the Hindsight memory server in Docker (embedded database, local embeddings and reranker, ports 8888 API and 9999 UI). 2. Configure an LLM provider. Use my API key from the environment variable (never print it). Default to the cheapest fast model. 3. Create a bank named "personal" with a reflect mission. 4. Prove it works end to end with real commands: - create the bank - retain one memory - recall it back Show me the actual outputs and the token usage from the retain call. Ground rules: - Never write, print, or store a secret anywhere. - No em dashes in any user-visible string. - Keep scripts ASCII-only. - Verify with real probes, not "it should work".
Prompt 2: Add a token-saving layer to my agent
Install RTK (Rust Token Killer) for my coding agent. 1. Download the binary for this OS from the GitHub releases page and put it on PATH. 2. Check which agent integrations are supported (claude, cursor, codex, hermes, and others). Install for the agent I actually use. 3. CRITICAL: before installing, resolve the real agent home directory (on Windows it is usually AppData\Local\hermes, not ~/.hermes). Set the HOME env var the installer expects and verify the plugin files landed in the right place. 4. Prove the rewrite works: run one real command through the proxy and show the compacted output vs the raw output. Rules: fail open means never break the original command. No secrets. No em dashes. Verify with real output.
Prompt 3: Build a packet (deploy unit) from an existing setup
Build a "packet" for my setup so another machine can install it.
1. Create a folder with:
- packet.yaml manifest (id, version, kind, privacy, requires,
installs, touches, data_policy with sends: [] and verify list)
- SKILL.md documenting the setup end to end
- an idempotent install script (PowerShell for Windows, bash for
POSIX) that checks prerequisites, backs up config before touching
it, and skips anything already installed
- a verify script with real probes that exits non-zero on failure
2. The install script must fail loud if required values are still
placeholders (e.g. LLM model = "your-model"), listing the options.
3. Run the verify script and show the pass/fail output.
4. Write a registry entry with SHA-256 checksums of every file.
Ground rules: no secrets anywhere, ever. Idempotent (run twice =
same state). ASCII-only scripts. No em dashes. Real probes only.
Prompt 4: Make a friend-safe public version of a packet
Take my internal packet and produce a public flavor for distribution. 1. Copy it to a clean output directory. 2. Replace every owner identifier (paths, project names, machine names, personal handles) with generic placeholders (e.g. $HERMES_HOME, your-bank-id, your-project). 3. Rewrite the manifest: privacy: public, generic author, data_policy sends: [] preserved. 4. Run a secrets sweep over the output; if any credential-shaped string survives, fail with file:line. 5. Re-scan the output for the original identifier list; if ANY owner identifier survives, fail. A public packet that still contains internals must not ship. 6. Show me the scrub report (what was replaced) and confirm exit 0. The fail-closed guard is the deliverable. No telemetry. No em dashes.
Prompt 5: Hermes first-run orientation
This is my first real session. Orient me: 1. List what you can actually do: tools available, skills installed, MCP servers connected, memory settings. 2. Show me my config location and any defaults I should know about. 3. Suggest three useful things I can do this week with what I have. 4. Tell me how to install a skill and how to turn a workflow into one. Rules: no secrets in the output. Be concrete, not generic.
Prompt 6: Turn a repeated workflow into a skill
I keep doing the same workflow and I want it as a reusable skill. 1. Look at the procedure I describe and write it as a SKILL.md with front matter (name, description, trigger, version). 2. Include: numbered steps, exact commands, expected outputs, a pitfalls section with anything that bit me before. 3. The description must fit the trigger budget: one sentence, trigger first, ends with a period. 4. Save it under the skills directory with the correct category. 5. Show me the final file and how to invoke it next time. No secrets. No em dashes.
Prompt 7: Memory housekeeping
Review my persistent memory for hygiene. 1. List the entries and flag anything stale, redundant, or expired. 2. Flag anything that looks like a temporary task detail that should not be a permanent fact (task progress, file counts, one-off outcomes). 3. Suggest consolidations: merge overlapping entries, drop anything that will not matter in a week. 4. Show me the proposed final set before changing anything. Rules: never suggest removing a user preference or correction. No secrets in the output.
Prompt 8: Connect an MCP server cleanly
Connect me to this MCP server: [name, url or command]. 1. Verify the endpoint is reachable before configuring (one probe). 2. Add it with the correct transport (HTTP url, or stdio command). 3. If it needs auth, use env vars or the MCP login flow; never print tokens or ask me to paste secrets into chat. 4. Run the real status check and list the tools discovered. 5. Tell me when the tools will appear (next session) and name the mcp__ prefix so I can spot them. Rules: no secrets in output. If it fails, show me the actual error.