zhtmldb

zhtmldb is a skill for Claude Code from AdamBien/airails. It costs 187 tokens per session (2,025 once invoked), scanned B, original, MIT.

A small file-based database for an agent's notes, memory, tasks, logs, settings, and research findings. It stores records as browsable XHTML pages, which are web pages that also work as structured data.

In plain words
What is it for?
Use it to persist agent memory, task lists, configuration, logs, and research records across sessions and projects.
Why use it?
It lets information survive after a session ends without requiring a database server or extra libraries. The files can be viewed in a browser, compared with Git, and read as XML.

Skill for Claude Code

Written for Claude Code: argument-hint in frontmatter.

Good fit Use it to persist agent memory, task lists, configuration, logs, and research records across sessions and projects.

Compare 6 skills from other repositories ↓
Install with agentmods
npx agentmods add skills/adambien/airails/zhtmldb
Install

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.

Any agent
npx skills add AdamBien/airails --skill zhtmldb
Clone the repo
git clone --depth 1 https://github.com/AdamBien/airails

Made for: Claude Code.

Wrote 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.

agentmods badge for zhtmldb

README.md
[![agentmods](https://agentmods.dev/badge/skills/adambien/airails/zhtmldb/github.svg)](https://agentmods.dev/skills/adambien/airails/zhtmldb)
Your own site
<a href="https://agentmods.dev/skills/adambien/airails/zhtmldb"><img src="https://agentmods.dev/badge/skills/adambien/airails/zhtmldb/github.svg" alt="Measured on agentmods" height="20"></a>

Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.

agentmods 80×15 button for zhtmldb

Your own site · 80×15
<a href="https://agentmods.dev/skills/adambien/airails/zhtmldb"><img src="https://agentmods.dev/badge/skills/adambien/airails/zhtmldb.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 187 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 2,025 The whole file, excluding the scripts and references it only reads on demand.
Security scan B 2 findings. A grade says what 26 rules found in the file — not that it is safe.
Origin original No closer match found in the catalogue.
Token cost

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.

ModelPer sessionOnce invoked
Fable 5.1 $0.00187 $0.02025
Opus 5.5 $0.00075 $0.00810
Sonnet 5.5 $0.00037 $0.00405
Haiku 4.5 $0.00019 $0.00202

Measured 25d ago against content hash 753fba4fd521, method: parsed. Prices are Anthropic first-party input rates as of 2026-10-07, from the pricing page.

Security

Grade B, and why

zhtmldb scanned grade B with 2 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 25d 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.

Asks for rootmediumPrivilege escalation

A mod that escalates privileges can change anything on the machine, not only the project.

sudo cp zhtmldb /usr/local/bin/

Makes network callslowCapability

Not a fault in itself. Listed so you know the mod talks to something, and to what.

curl -O https://raw.githubusercontent.com/AdamBien/zhtmldb/main/zhtmldb
java/zhtmldb/SKILL.md · 128 lines

How it starts

The opening of the file, as written. The whole thing — 128 lines — stays where its author put it; the contents beside it link to each section on GitHub.

Persist and query agent data with zhtmldb using $ARGUMENTS. Apply all rules below.

What is zhtmldb

zhtmldb is a key-value datastore whose storage format is also its UI: every record is a valid XHTML page (<table>/<key>.html) holding its fields as <dt>/<dd> pairs, and every table folder plus the root carries a generated index.html. The database is a folder that a browser renders, git diff tracks per record and an XML parser reads. One executable script, no server, no libraries.

Setup

Check for the tool before the first command; install it when missing:

command -v zhtmldb || {
  curl -O https://raw.githubusercontent.com/AdamBien/zhtmldb/main/zhtmldb
  chmod +x zhtmldb
  sudo cp zhtmldb /usr/local/bin/
}
zhtmldb -help

The database root is the current directory unless db.dir is set. Decide the root deliberately before the first write, so records do not land in whatever directory the shell happens to be in:

  • Project data: run from the project root, or put db.dir=<path> into ./app.properties.
  • Agent memory across projects: ~/.zhtmldb/app.properties with db.dir=/path/to/memory.
  • One-off: java -Ddb.dir=<path> --source 25 /usr/local/bin/zhtmldb <table> <command> ...

Precedence is global file, then local file, then -D; the last one wins.

Command Contract

zhtmldb <table> set <key> <field>=<value>...   store fields, merged into the record
zhtmldb <table> set <key> <field>+=<value>     append, newline separated
zhtmldb <table> set <key> <field>              value from stdin (<field>+ appends)
zhtmldb <table> set <key> "<v1,v2,...>"        positional by declared columns
zhtmldb <table> add <value>...                 new record under a timestamp key
zhtmldb <table> columns <name,name,...>        declare column order (once per table)
zhtmldb <table> get <key> [field]              field<TAB>value lines, or one value
zhtmldb <table> rm <key> [field]               remove a record, or one field
zhtmldb <table> keys                           sorted keys
zhtmldb <table> find <term>...                 key<TAB>label, for piping
zhtmldb <table> list [<term>...]               aligned table, for reading
zhtmldb tables

Read the full file on GitHub · 128 lines

Files

What ships with it

1 file beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.

Changes

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.

  1. 25d ago First seen · 128 lines · 187 tokens per session scan B 753fba4fd521

Subscribe to this mod's changes

zhtmldb is a skill published in the GitHub repository AdamBien/airails (58 stars, last pushed 3d ago), licensed MIT. It adds 187 tokens to every session and 2,025 once invoked, about $0.0007 per session on Opus 5.5. A static security scan graded it B with 2 findings (asks for root, makes network calls). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-09-22.

Related

Other skills, from other repositories

aws-cloudformation-rds

Provides AWS CloudFormation patterns for Amazon RDS databases. Use when creating RDS instances (MySQL, PostgreSQL, Aurora), DB clusters, multi-AZ deployments, parameter groups, subnet groups, and implementing template structure with Parameters, Outputs, Mappings, Conditions, and cross-stack references.

giuseppe-trisciuoglio/developer-kit · 65 tokens

learn

Provides autonomous project pattern learning by analyzing the codebase to discover development conventions, architectural patterns, and coding standards, then generates project rule files in .claude/rules/. Use when user asks to "learn from project", "extract project rules", "analyze codebase conventions", "discover…

giuseppe-trisciuoglio/developer-kit · 77 tokens

memory-md-management

Provides comprehensive memory file management capabilities including auditing, quality assessment, and targeted improvements for files such as CLAUDE.md. Use when user asks to check, audit, update, improve, fix, maintain, or validate project memory files. Also triggers for "project memory optimization", "CLAUDE.md…

giuseppe-trisciuoglio/developer-kit · 113 tokens

aws-cloudformation-dynamodb

Provides AWS CloudFormation patterns for DynamoDB tables, GSIs, LSIs, auto-scaling, and streams. Use when creating DynamoDB tables with CloudFormation, configuring primary keys, local/global secondary indexes, capacity modes (on-demand/provisioned), point-in-time recovery, encryption, TTL, and implementing template…

giuseppe-trisciuoglio/developer-kit · 84 tokens

aws-cloudformation-elasticache

Provides AWS CloudFormation patterns for ElastiCache Redis or Memcached infrastructure, including subnet groups, parameter groups, security controls, and cross-stack outputs. Use when designing cache tiers, high-availability replication groups, encryption settings, or reusable CloudFormation templates for application…

giuseppe-trisciuoglio/developer-kit · 61 tokens

zephyr-memory

Expert guidance on Zephyr RTOS memory management (Heaps, Memory Slabs, Memory Blocks, Memory Domains, Virtual Memory). Use when the user asks about dynamic memory allocation, memory pools, kmalloc, kheap, memory slabs, fixed-size allocators, memory protection, memory partitions, userspace memory isolation, virtual…

ksachdeva/zephyr-rtos-ai · 84 tokens