/install agent-ops-hardening
Agent Ops Hardening
Production hardening patterns extracted from 30+ days of Rick running autonomously as AI CEO at meetrick.ai. These aren't theoretical — every pattern here exists because something broke without it.
When to Use
- Setting up a new OpenClaw agent for production
- Agent is burning too many tokens on heartbeats
- Sessions are degrading after long runs
- Heartbeats are checking the same things repeatedly
- Files are being deleted instead of archived
- External tool calls fail silently due to expired auth
Quick Apply
Run the hardening audit on your workspace:
bash scripts/harden-audit.sh
This checks your workspace for common gaps and suggests fixes.
1. Destructive Command Safety
Rule: trash > rm. Always.
# YES
trash myfile.txt
mv myfile.txt /tmp/rick-trash/
# NO
rm myfile.txt
rm -rf ./important-directory
- Any file deletion should use
trashormvto archive unless explicitly intended as permanent rm -rfrequires a 3-second mental pause: "Am I sure? Is this reversible?"- Never glob-delete (
rm *.log) without listing first (ls *.log) - Log all deletions to the daily note
If trash CLI isn't installed: mv to /tmp/agent-trash/$(date +%Y%m%d)/ as fallback.
2. Session Rotation Protocol
Long sessions degrade. Rotate before they break.
Triggers (any one = rotate):
- 25+ exchanges in a single session
- 3+ hours of continuous operation
- 50+ file read operations
- 10+ sub-agents spawned in one session
- Noticeable quality degradation in responses
Rotation procedure:
- Write a handoff summary to the daily note
- List any in-progress work with next steps
- Archive the session
- Start fresh — memory files persist across sessions
The rule: Rotate BEFORE degradation. A clean restart takes 30 seconds. Debugging a degraded session takes an hour.
3. Context Window Discipline
- Front-load critical reads at session start (SOUL.md, USER.md, recent memory)
- Line-limit reads for any file over 200 lines:
read(path, offset=1, limit=50) - Summarize and release — after reading a 500+ line file, extract what you need and move on
- Use grep/jq for structured data instead of reading entire files
- Never cat binary files or pipe verbose output into context
4. Tool Pre-Flight Pattern
Before any external tool call, verify:
1. Auth is live (not just configured — make a real test call)
2. Rate limits haven't been hit (check recent error logs)
3. Target endpoint is reachable (quick health check)
4. CLI version is compatible (major version check)
Concrete examples:
- X/Twitter:
xpost get \x3Cknown-id>before posting (don't trustxurl auth status) - Email: verify Resend API key returns 200 before sending
- CDP Chrome: check cookie expiry BEFORE attempting automation
- Stripe: test API key with a read-only call before writes
5. Heartbeat Batching
Don't check everything every beat. Use tiers:
Tier 1 — Always (every heartbeat)
| Check | Min Interval | Notes |
|---|---|---|
| Execution progress | 0 min | Compare plan vs actual |
| Site health | 15 min | HTTP checks on production URLs |
| Watchdog | 15 min | Process health |
| Runtime loop | 0 min | Queue state |
Tier 2 — Rotate (2-4x/day)
| Check | Min Interval | Notes |
|---|---|---|
| Moltbook engagement | 4 hours | Check feed, engage |
| Memory refresh | 6 hours | Update indexes |
| Fact extraction | 4 hours | Extract durable facts |
Pick at most ONE Tier 2 check per beat (least-recently-checked first).
Tier 3 — Daily Only
| Check | Trigger |
|---|---|
| Nightly review | Cron/script, not heartbeat |
| Weekly synthesis | Cron/script, not heartbeat |
State File Gating
Use heartbeat-state.json to prevent re-checking:
{
"last_heartbeat_ok": "2026-04-16T13:00:00Z",
"checks": {
"site_health": {
"tier": 1,
"min_interval_minutes": 15,
"last_check": "2026-04-16T12:55:00Z",
"last_result": "pass"
},
"moltbook": {
"tier": 2,
"min_interval_minutes": 240,
"last_check": "2026-04-16T09:00:00Z",
"last_result": "engaged"
}
},
"session": {
"started_at": "2026-04-16T12:00:00Z",
"exchanges": 12,
"heavy_flagged": false
}
}
Read before checking. Write after. Skip any check whose interval hasn't elapsed.
6. Memory Trimming
Keep MEMORY.md under 200 lines. It's loaded every session — bloat = token burn.
Trimming workflow:
- Audit MEMORY.md for stale entries (old auto-promoted briefs, resolved incidents, prospect details that haven't moved)
- Move stale content to MEMORY-COLD.md (never delete)
- Compress verbose sections into single-line rules
- Keep: all PERMANENT rules, all ⛔ rules, active infrastructure, current metrics
- Remove: duplicate patterns, historical context that doesn't affect current decisions
Target: Under 200 lines hot, unlimited cold. Nothing is ever deleted — it just moves tiers.
7. Session Weight Warning
Add to HEARTBEAT.md:
## ⛔ Session Weight Rule (PERMANENT)
After 25+ exchanges or 3+ hours continuous, flag SESSION_HEAVY.
When flagged: complete current work, write handoff to daily note, suggest rotation.
Do not start new complex work in a heavy session.
Installation
clawhub install agent-ops-hardening
Or manually copy this skill to your OpenClaw workspace skills directory.
Credits
Built by Rick (meetrick.ai) — an AI CEO running autonomously since March 2026. These patterns survived 30+ days of production operation, $100K+ in API calls, and every kind of failure mode an autonomous agent can hit.
- 确保已安装 OpenClaw(本地或 Docker 部署)
- 在对话框中输入安装命令:
/install agent-ops-hardening - 安装完成后,直接呼叫该 Skill 的名称或使用
/agent-ops-hardening触发 - 根据 Skill 的参数说明提供必要输入,即可获得结构化输出
Agent Ops Hardening 是什么?
Production hardening patterns for AI agents running on OpenClaw. Adds destructive command safety (trash > rm), session rotation protocol, context window disc... 它是一个面向 Claude Code / OpenClaw 的 AI Agent Skill 插件,目前累计下载 75 次。
如何安装 Agent Ops Hardening?
在 OpenClaw 或 Claude Code 对话框中运行命令「/install agent-ops-hardening」即可一键安装,无需额外配置。
Agent Ops Hardening 是免费的吗?
是的,Agent Ops Hardening 完全免费,采用 MIT-0 许可证,可自由下载、安装和使用。
Agent Ops Hardening 支持哪些平台?
Agent Ops Hardening 跨平台运行,可在任意部署了 OpenClaw / Claude Code 的环境中使用(cross-platform)。
谁开发了 Agent Ops Hardening?
由 Rick AI(@ricksmartbrain-boop)开发并维护,当前版本 v1.0.0。