Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx agentmods add skills/turmyshevd/openclawgotchi/loggingnpx skills add turmyshevd/openclawgotchi --skill logginggit clone --depth 1 https://github.com/turmyshevd/openclawgotchiWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/turmyshevd/openclawgotchi/logging)<a href="https://agentmods.dev/skills/turmyshevd/openclawgotchi/logging"><img src="https://agentmods.dev/badge/skills/turmyshevd/openclawgotchi/logging.svg" alt="Measured on agentmods" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5 | $0.00016 | $0.00613 |
| Opus 5 | $0.00008 | $0.00307 |
| Sonnet 5 | $0.00003 | $0.00123 |
| Haiku 4.5 | $0.00002 | $0.00061 |
Grade A, and why
Logging scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 5d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 61 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Logging
You have several log sinks. Use them so you (and Dmitry) can see what broke and when.
Where logs are
| What | Where | How to read |
|---|---|---|
| Critical errors | data/ERROR_LOG.md |
read_file("data/ERROR_LOG.md") or tool log_error() to append |
| Display failures | data/display_error.log |
read_file("data/display_error.log") — written by gotchi_ui.py on crash |
| Daily notes | memory/YYYY-MM-DD.md |
write_daily_log(entry) to append; read via read_file |
| Code changes | CHANGELOG.md |
log_change(description) to append |
| Service / system | journalctl | manage_service(gotchi-bot, logs) or bash journalctl -u gotchi-bot -n 50 |
| Conversation | gotchi.db (messages) |
recall_messages(limit) |
When to use what
-
Something broke (display, service, disk, health):
Calllog_error("short description")so it’s indata/ERROR_LOG.md. Then you can say “last error was …” or read the file when asked. -
health_check() found problems:
Calllog_error("health_check: <what’s wrong>")so there’s a record. -
User says “what went wrong”:
Readdata/ERROR_LOG.md(and optionallydata/display_error.log) and summarize. -
Daily / notable events:
Usewrite_daily_log(entry). -
You changed code/config:
Uselog_change(description).
No direct system log “tool”
You don’t have a function that returns raw system logs; use manage_service(service, action=logs) or execute_bash("journalctl -u gotchi-bot -n 50") when you need recent service output.
Size limits (so we don't fill disk on Pi)
- ERROR_LOG.md — only last 300 lines kept; older lines are dropped when appending.
- display_error.log — only last 200 lines kept.
- Daily logs and CHANGELOG are not auto-trimmed; trim manually if needed.
Summary
- Errors →
log_error(message)→data/ERROR_LOG.md - Display crash → already in
data/display_error.log(no tool needed) - “When did something break?” → read
data/ERROR_LOG.md
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 5d ago First seen · 61 lines · 16 tokens per session scan A 9f241ba6b526
Logging is a skill published in the GitHub repository turmyshevd/openclawgotchi (48 stars, last pushed 2mo ago), licensed MIT. It adds 16 tokens to every session and 613 once invoked, about $0.0001 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other skills, from other repositories
agent-browser
使用 agent-browser CLI 控制無頭瀏覽器進行網頁自動化,支援導航、點擊、截圖、存取性快照、表單填寫、PDF 輸出及 JavaScript 執行。適合需要與動態網頁互動或擷取視覺資訊時使用。.
edit-soul
Update or modify the agent's core personality and settings by editing the SOUL.md configuration file.
gmail
透過 Google OAuth2 API 讀取 Gmail 信件。可用於檢索最近信件、提取郵件內容、自動標記為已讀。支援多語言編碼與自動快取。.
web-research
整合 SearXNG 隱私搜尋與 Jina Reader 頁面抓取的輕量網頁研究工具。可搜尋網路資訊(search)、抓取單一網頁的乾淨 Markdown 內容(fetch)、或一次完成搜尋+自動抓取前幾筆結果全文(research)。無需啟動瀏覽器,速度快、無追蹤。需要上網查資料時優先使用此工具。.
searxng
透過自架的 SearXNG 隱私搜尋引擎進行網頁搜尋,聚合 Google、Bing、DuckDuckGo 等多個搜尋來源,不追蹤使用者。適合需要搜尋資訊但不希望洩漏隱私時使用。.
browser-control
使用 SeleniumBase UC (Undetected Chromedriver) 模式控制瀏覽器。適用於需要登入、點擊互動、截圖或繞過 Cloudflare 的複雜網頁。若只需讀取網頁內容或搜尋資料,請優先使用更輕量的 web-research skill(SearXNG + Jina Reader),無需啟動瀏覽器。.