The ask
Rewrite the AI & Automation page for Round 2 so a stranger can see which AI harnesses I run, how they connect to my tools and my Linux lab host, how the self-hosted agents remember, how I work, and every project already on the page. Research only the sources the task allows, and publish nothing from the never-publish list.
What changed
- New entry page, a child of Round 2: AI & Automation by OpenCode with DeepSeek v4.1 High (page 480).
- Five sections: The harnesses I use (a table of OpenClaw, Hermes, ChatGPT, Claude and OpenCode with what each is, where it runs and what I use it for); How they connect (Composio, shell access in every harness, SSH to the lab host); How the self-hosted agents remember (OpenClaw’s memory mesh, Hermes’s always-on notes plus fact store, and backups and recovery); How I work (one rulebook in Git, a snapshot before each change, typed commits, a Lab Note per session, rollback, read-only by default, bake-offs); and What I have built with them.
- Kept every project from the live page: the five MCP servers, four agent skills, four automation pipelines, the self-hosted agent lab and the vendor assessment engine. Tightened the intros and merged the new material around them.
- One image from the media library with alt text, and internal links to the Lab Notes, the Harness Scoreboard and the bake-off. Core blocks and theme presets only. No custom CSS, no plugins, no theme or template changes, no menus touched.
How
SSH to openclaw01 and WP-CLI through ops/wp.sh. Read the rules layer first (AGENTS.md, the guidelines, the bake-off protocol and the round task), then the site export, the Lab Notes, the README, the allowed Obsidian notes and the Round 1 material. Interviewed the OpenClaw and Hermes agents through ops/agents.sh and read both redacted config views. Then the normal process: snapshot, create the page, apply the block markup, verify, sync.
What worked, what didn’t
Questions I asked each agent (four each, the round limit).
- OpenClaw: (1) how it remembers between sessions and how a search moves across the layers, (2) how its memory is backed up and recovered, (3) how it connects to apps and what Composio and shell access are for, (4) which models it uses for everyday versus complex work and how it keeps changes safe.
- Hermes: the same four questions, framed for its own setup.
Where the sources disagreed, I went with the notes.
- OpenClaw’s own answer described four layers (the conversation, daily notes, a curated long-term memory and project context) and called its memory plain Markdown. The Obsidian memory note documents more layers, including a local search index, a durable knowledge store and a conversation-compaction layer. I followed the note, which is richer and more current, and kept the agent’s plain-language framing.
- The Hermes agent’s description of its backup did not match the host baseline and backup notes on where credentials live. Credentials and destinations are both on the never-publish list, so the page states neither. It only says that a backup counts as good only when it writes a completion marker, and that the databases carry their own vectors so recall works again after a restore.
Left out on purpose.
- Everything on the never-publish list: addresses, ports and hostnames other than openclaw01, URLs of anything on the lab host, file paths and usernames, emails and account names, API key and token names, chat or channel IDs, network, firewall, proxy and tunnel details, and backup destinations, schedules, retention settings and restore steps.
- Internal agent IDs, sub-agent names and credential file names.
- Any number I could not tie to the allowed sources, to avoid inventing figures.
Check against the never-publish list. I scanned the page content for IP addresses, ports, emails, unix paths, file extensions, tailnet and LAN names, account names, token words and channel IDs and found none. The single exception is the hero image’s source, which is the site’s own media URL and is already used on the live AI & Automation page, not a lab-host service URL. I also confirmed one H1 (the page title), headings in order, descriptive link text, alt text on the image, and no em or en dashes.
Gotcha. wp post create defaults to the post type, so my first attempt produced a blog post instead of a page. I deleted it and recreated it as a page under Round 2. Nothing else was touched, and the page returns HTTP 200.
Change record
| Harness | opencode_deepseekv41high |
| Date | 2026-10-10 23:11 |
| Latest snapshot | 20261010-230902 |
| Undo this session | ops/rollback.sh --git d1fb854 |
Commits