Daily brief June 10: sitemap, robots.txt, cornerstone blog post, KPI sync
- Created sitemap.xml (7 URLs) + robots.txt (allow all, sitemap reference) - Created cornerstone blog post: 'Hermes Agent Setup Guide' (tutorial) - Registered new blog post in blog/index.json - Updated launch-status.json to Day 2 with current CRM data (89 contacts) - Synced operations.json metadata for Day 2 brief session - CRM grew from 62→89 contacts (+27), YT creators 59→60 (+1)
This commit is contained in:
+10
-1
@@ -8,6 +8,15 @@
|
||||
"headline": "Speed Run: Create an Odoo Community Agent from Zero",
|
||||
"teaser": "From signup to an Odoo-connected AI agent in under 5 minutes. Free trial included.",
|
||||
"link": "blog/posts/speed-run-odoo-community-agent.html"
|
||||
},
|
||||
{
|
||||
"id": "hermes-agent-setup-guide",
|
||||
"date": "2026-06-10",
|
||||
"area": "tutorial",
|
||||
"agent": "hermes",
|
||||
"headline": "Hermes Agent Setup Guide: From Zero to Your First AI Agent",
|
||||
"teaser": "Step-by-step guide to setting up a Hermes AI agent — installation, persona, skills, tools, and cron jobs.",
|
||||
"link": "blog/posts/hermes-agent-setup-guide.html"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,297 @@
|
||||
<!doctype html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="UTF-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||||
<meta name="robots" content="index, follow" />
|
||||
<link rel="canonical" href="https://derez.ai/blog/posts/hermes-agent-setup-guide.html" />
|
||||
<title>Hermes Agent Setup Guide: From Zero to Your First AI Agent — Derez.ai Blog</title>
|
||||
<meta name="description" content="Step-by-step guide to setting up a Hermes AI agent. Covers installation, agent persona, skills, tools, and cron jobs — no SSH required." />
|
||||
<meta name="keywords" content="hermes agent, hermes agent setup, install hermes agent, AI agent tutorial, hermes agent configuration, hermes agent persona, AI agent hosting" />
|
||||
<meta property="og:type" content="article" />
|
||||
<meta property="og:url" content="https://derez.ai/blog/posts/hermes-agent-setup-guide.html" />
|
||||
<meta property="og:title" content="Hermes Agent Setup Guide: From Zero to Your First AI Agent" />
|
||||
<meta property="og:description" content="Step-by-step guide to setting up a Hermes AI agent. Covers installation, agent persona, skills, tools, and cron jobs — no SSH required." />
|
||||
<meta name="twitter:card" content="summary_large_image" />
|
||||
<meta name="twitter:title" content="Hermes Agent Setup Guide: From Zero to Your First AI Agent" />
|
||||
<link rel="preconnect" href="https://fonts.googleapis.com" />
|
||||
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin />
|
||||
<link href="https://fonts.googleapis.com/css2?family=Inter:opsz,wght@14..32,400;14..32,500;14..32,600;14..32,700&display=swap" rel="stylesheet" />
|
||||
<style>
|
||||
* { margin: 0; padding: 0; box-sizing: border-box; }
|
||||
body {
|
||||
background: #08080c;
|
||||
color: #e8e8f0;
|
||||
font-family: 'Inter', sans-serif;
|
||||
line-height: 1.7;
|
||||
padding: 40px 20px;
|
||||
}
|
||||
.container { max-width: 720px; margin: 0 auto; }
|
||||
a { color: #6c8cff; text-decoration: none; }
|
||||
a:hover { text-decoration: underline; }
|
||||
.back { margin-bottom: 32px; display: inline-block; font-size: 0.9rem; color: #787898; }
|
||||
.back:hover { color: #6c8cff; }
|
||||
h1 { font-size: 1.9rem; font-weight: 700; line-height: 1.3; margin-bottom: 12px; }
|
||||
.meta { font-size: 0.85rem; color: #787898; margin-bottom: 40px; display: flex; gap: 12px; align-items: center; }
|
||||
.area-tag {
|
||||
display: inline-block;
|
||||
background: #f472b6;
|
||||
color: #000;
|
||||
font-size: 0.75rem;
|
||||
font-weight: 700;
|
||||
padding: 2px 10px;
|
||||
border-radius: 20px;
|
||||
text-transform: uppercase;
|
||||
letter-spacing: 0.5px;
|
||||
}
|
||||
.chip-tag {
|
||||
display: inline-block;
|
||||
background: rgba(108,140,255,0.1);
|
||||
color: #6c8cff;
|
||||
border: 1px solid rgba(108,140,255,0.3);
|
||||
font-size: 0.75rem;
|
||||
font-weight: 600;
|
||||
padding: 2px 10px;
|
||||
border-radius: 20px;
|
||||
text-transform: uppercase;
|
||||
letter-spacing: 0.5px;
|
||||
}
|
||||
h2 { font-size: 1.3rem; font-weight: 600; margin: 36px 0 12px; color: #f0f0ff; }
|
||||
h3 { font-size: 1.1rem; font-weight: 600; margin: 24px 0 8px; color: #e0e0f0; }
|
||||
p { margin-bottom: 16px; color: #c8c8d8; }
|
||||
ul, ol { margin: 0 0 16px 24px; color: #c8c8d8; }
|
||||
li { margin-bottom: 6px; }
|
||||
code {
|
||||
background: #12121a;
|
||||
border: 1px solid #1e1e2a;
|
||||
padding: 1px 6px;
|
||||
border-radius: 4px;
|
||||
font-size: 0.85em;
|
||||
color: #00f5ff;
|
||||
}
|
||||
pre {
|
||||
background: #0a0a0f;
|
||||
border: 1px solid #1e1e2a;
|
||||
border-radius: 8px;
|
||||
padding: 16px 20px;
|
||||
overflow-x: auto;
|
||||
margin: 0 0 20px;
|
||||
}
|
||||
pre code {
|
||||
background: none;
|
||||
border: none;
|
||||
padding: 0;
|
||||
font-size: 0.82rem;
|
||||
color: #c8c8d8;
|
||||
line-height: 1.6;
|
||||
}
|
||||
.prompt-box {
|
||||
background: #0e0e14;
|
||||
border: 1px solid #1e1e2a;
|
||||
border-left: 3px solid #6c8cff;
|
||||
border-radius: 8px;
|
||||
padding: 16px 20px;
|
||||
margin: 0 0 16px;
|
||||
font-style: italic;
|
||||
color: #d0d0e0;
|
||||
}
|
||||
.tip-box {
|
||||
background: rgba(108,140,255,0.06);
|
||||
border: 1px solid rgba(108,140,255,0.15);
|
||||
border-left: 3px solid #6c8cff;
|
||||
border-radius: 8px;
|
||||
padding: 14px 18px;
|
||||
margin: 0 0 20px;
|
||||
font-size: 0.9rem;
|
||||
}
|
||||
.tip-box strong { color: #6c8cff; }
|
||||
.cta-box {
|
||||
background: linear-gradient(135deg, rgba(108,140,255,0.08), rgba(0,245,255,0.04));
|
||||
border: 1px solid rgba(108,140,255,0.2);
|
||||
border-radius: 12px;
|
||||
padding: 24px;
|
||||
text-align: center;
|
||||
margin: 40px 0;
|
||||
}
|
||||
.cta-box h3 { margin-top: 0; color: #f0f0ff; }
|
||||
.cta-box p { margin-bottom: 20px; color: #a0a0b8; }
|
||||
.cta-button {
|
||||
display: inline-block;
|
||||
background: #6c8cff;
|
||||
color: #08080c;
|
||||
font-weight: 700;
|
||||
padding: 12px 32px;
|
||||
border-radius: 8px;
|
||||
font-size: 1rem;
|
||||
transition: all 0.2s;
|
||||
}
|
||||
.cta-button:hover { background: #8aa4ff; text-decoration: none; }
|
||||
.highlight { color: #00f5ff; }
|
||||
@media (max-width: 600px) {
|
||||
h1 { font-size: 1.5rem; }
|
||||
.container { padding: 0; }
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<div class="container">
|
||||
|
||||
<a href="../../index.html" class="back">← Back to Derez.ai</a>
|
||||
|
||||
<h1>Hermes Agent Setup Guide: From Zero to Your First AI Agent</h1>
|
||||
|
||||
<div class="meta">
|
||||
<span class="area-tag">Tutorial</span>
|
||||
<span class="chip-tag">Hermes Agent</span>
|
||||
<span>June 10, 2026</span>
|
||||
<span>· 6 min read</span>
|
||||
</div>
|
||||
|
||||
<p>Hermes Agent (by <a href="https://nousresearch.com" target="_blank" rel="noopener">Nous Research</a>) is an open-source AI agent framework that turns any Linux server into an autonomous digital worker. It reads files, runs shell commands, writes code, manages background processes, and follows chronological schedules — all through a natural language persona that you define.</p>
|
||||
|
||||
<p>In this guide, you'll go from a blank server to a running Hermes agent with custom skills, a configured persona, and automated cron jobs. <strong>No manual SSH required</strong> — the Derez.ai dashboard handles provisioning, so you start at the good part.</p>
|
||||
|
||||
<h2>What You'll Need</h2>
|
||||
|
||||
<ul>
|
||||
<li>A <a href="https://derez.ai">Derez.ai</a> account ($4.99/mo with first-month coupon codes)</li>
|
||||
<li>An OpenRouter API key (or any OpenAI-compatible provider)</li>
|
||||
<li>About 10 minutes</li>
|
||||
</ul>
|
||||
|
||||
<h2>Step 1: Provision Your Agent Instance</h2>
|
||||
|
||||
<p>From the Derez.ai dashboard at <strong>app.derez.ai</strong>, click <strong>Create Agent</strong>. The platform spins up a dedicated Linux instance pre-configured with Python 3.11, the Hermes runtime, and all dependencies. You'll receive:</p>
|
||||
|
||||
<ul>
|
||||
<li>Full SSH access (root) to your instance</li>
|
||||
<li>A dashboard URL for the Hermes web UI</li>
|
||||
<li>Automatic daily backups with 7-day retention</li>
|
||||
<li>Automatic SSL/TLS certificates</li>
|
||||
</ul>
|
||||
|
||||
<p>Provisioning takes about 60 seconds. When the status changes to <strong>Running</strong>, you're ready.</p>
|
||||
|
||||
<div class="tip-box">
|
||||
<strong>💡 Pro tip:</strong> Use coupon code <code>friends950</code> or <code>creator950</code> at signup to get your first month for $0.50 — a full $9.50 discount.
|
||||
</div>
|
||||
|
||||
<h2>Step 2: Configure Your Agent Persona</h2>
|
||||
|
||||
<p>The <strong>agent persona</strong> is the single most important file in Hermes. Located at <code>~/.hermes/AGENT_PERSONA.md</code>, it defines the agent's identity, tone, and behavioral rules. Every message the agent sends is shaped by this file — it's not just a system prompt, it's the agent's operating charter.</p>
|
||||
|
||||
<p>Here's a simple persona for a customer success agent:</p>
|
||||
|
||||
<div class="prompt-box">
|
||||
<strong>AGENT_PERSONA.md</strong><br><br>
|
||||
You are Mark, a Customer Success Agent for Derez.ai.<br><br>
|
||||
- You are helpful, concise, and proactive.<br>
|
||||
- You monitor new signups and send welcome messages.<br>
|
||||
- You check server health daily and flag issues.<br>
|
||||
- You speak like a knowledgeable colleague, not a robot.<br><br>
|
||||
Tool-use rules:<br>
|
||||
- Always verify before acting — double-check destructive commands.<br>
|
||||
- Use terminal for shell commands, process for background tasks.<br>
|
||||
- When blocked, report the blocker — never fabricate results.
|
||||
</div>
|
||||
|
||||
<p>You can edit this file directly from the Derez.ai dashboard's file manager, or via SSH. The agent reloads it on each conversation turn, so changes take effect immediately.</p>
|
||||
|
||||
<h2>Step 3: Install Skills</h2>
|
||||
|
||||
<p>Skills are the agent's capabilities — they extend what it can do. Skills live in <code>~/.hermes/skills/</code> and are plain Markdown files with structured frontmatter and tool-calling instructions.</p>
|
||||
|
||||
<p>To install a skill, create a file in the skills directory:</p>
|
||||
|
||||
<pre><code># ~/.hermes/skills/server-health.md
|
||||
|
||||
---
|
||||
name: server-health
|
||||
description: Monitor server health metrics and alert on anomalies
|
||||
---
|
||||
|
||||
You are an SRE assistant. Check these metrics daily:
|
||||
1. Disk usage — alert above 80%
|
||||
2. Memory usage — alert above 85%
|
||||
3. Load average — investigate if > 4.0
|
||||
4. Uptime — report days since last reboot
|
||||
5. Failed SSH logins — flag brute-force attempts
|
||||
|
||||
Report findings in a single summary block. Escalate critical issues.</code></pre>
|
||||
|
||||
<p>Hermes scans the skills directory at startup. Each skill file becomes available as a command the agent can invoke contextually. You can also load a skill mid-conversation with <code>skill_view(name='server-health')</code> — a powerful pattern for pulling in specialized knowledge on demand.</p>
|
||||
|
||||
<h2>Step 4: Set Up Cron Jobs</h2>
|
||||
|
||||
<p>One of Hermes' most powerful features is its built-in cron scheduler. Instead of writing crontab entries manually, you register schedules that wake the agent at specific times to perform tasks autonomously.</p>
|
||||
|
||||
<p>Cron jobs live in <code>~/.hermes/cron/</code> as YAML files:</p>
|
||||
|
||||
<pre><code># ~/.hermes/cron/daily-health-check.yaml
|
||||
|
||||
schedule: "0 6 * * *" # Every day at 06:00
|
||||
skill: server-health
|
||||
output: report # Send result as a report
|
||||
|
||||
---
|
||||
|
||||
# ~/.hermes/cron/weekly-backup-report.yaml
|
||||
|
||||
schedule: "0 9 * * 1" # Every Monday at 09:00
|
||||
skill: backup-verification
|
||||
output: report
|
||||
notify_on_complete: true # Get notified when done</code></pre>
|
||||
|
||||
<p>The agent wakes at the scheduled time, loads the specified skill, runs the task, and reports back. This works even while your agent is in the middle of other conversations — Hermes handles concurrent execution gracefully.</p>
|
||||
|
||||
<h2>Step 5: Test Your Agent</h2>
|
||||
|
||||
<p>Open the Hermes web UI (available from your Derez.ai dashboard) and start a conversation. Try these test prompts:</p>
|
||||
|
||||
<ul>
|
||||
<li><em>"What's my server health look like today?"</em></li>
|
||||
<li><em>"Check which cron jobs are scheduled and show me the next 3 runs."</em></li>
|
||||
<li><em>"List all installed skills and describe what each one does."</em></li>
|
||||
<li><em>"Run a quick disk usage check and tell me if anything needs attention."</em></li>
|
||||
</ul>
|
||||
|
||||
<p>The agent will reference its persona, load the relevant skills, and execute the appropriate tools — all in one response. You can watch it run commands live in the terminal output panel.</p>
|
||||
|
||||
<h2>Going Further</h2>
|
||||
|
||||
<p>Once the basics are running, here's what you can layer on:</p>
|
||||
|
||||
<ul>
|
||||
<li><strong>Plugins</strong> — Drop Python scripts into <code>~/.hermes/plugins/</code> for custom tool integrations (databases, APIs, webhooks)</li>
|
||||
<li><strong>Memories</strong> — Persistent knowledge stored in <code>~/.hermes/memories/</code> that survives conversation resets</li>
|
||||
<li><strong>Profiles</strong> — Multiple agent configurations (<code>~/.hermes/profiles/<name>/</code>) that you can switch between for different roles</li>
|
||||
<li><strong>Background processes</strong> — Launch long-running tasks (web scrapers, data pipelines, monitoring loops) that the agent manages independently</li>
|
||||
</ul>
|
||||
|
||||
<div class="tip-box">
|
||||
<strong>🔗 Related:</strong> See our <a href="https://derez.ai/blog/posts/speed-run-odoo-community-agent.html">Speed Run: Odoo Community Agent</a> tutorial for a real-world example — connecting Hermes to an Odoo database and pulling leads automatically.
|
||||
</div>
|
||||
|
||||
<h2>Troubleshooting</h2>
|
||||
|
||||
<h3>Agent not responding</h3>
|
||||
<p>Check that the agent process is running: <code>ps aux | grep hermes</code>. From the Derez.ai dashboard, you can restart the agent with one click.</p>
|
||||
|
||||
<h3>Skills not loading</h3>
|
||||
<p>Verify the file is in the correct directory (<code>~/.hermes/skills/</code>) with <code>.md</code> extension. Check the YAML frontmatter is valid — missing <code>---</code> delimiters will silently skip the file.</p>
|
||||
|
||||
<h3>Cron jobs not firing</h3>
|
||||
<p>Make sure the Hermes process that manages cron (typically <code>hermesd</code>) is running as a background service. Check with <code>process(action='list')</code> from the agent, or verify the service status from the dashboard.</p>
|
||||
|
||||
<h3>Tool errors</h3>
|
||||
<p>If the agent reports tool execution failures, check the system dependencies listed in your skill files. The agent will tell you exactly which command failed and why — it never silently drops errors.</p>
|
||||
|
||||
<div class="cta-box">
|
||||
<h3>Ready to build your agent?</h3>
|
||||
<p>Get a dedicated Hermes agent instance with full SSH access, automatic backups, and a managed dashboard — starting at $0.50 for your first month.</p>
|
||||
<a href="https://derez.ai" class="cta-button">Create Your Agent →</a>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
Reference in New Issue
Block a user