# THTH > THTH is a human-approval gate for LLM-drafted public posts (Threads, > Bluesky, Mastodon). The agent drafts, a human approves, the tool posts and > records everything in your git. Nothing leaves your machine unless you > opt in. ## Where to start (the same three lines `thth --help` opens with) - Post one draft, once → `thth send --text-file ` (a rehearsal by default; nothing goes out until you add `--production` with the digest the rehearsal printed). `thth collect` picks these up too, even with no repo — the ledgers then live under `$THTH_ROOT/state//data/sns/`. - Run an account from a queue → `thth lint ` → `thth approve ` (two steps) → `thth throw ` - Ask before you post → `thth ask before-you-post --topic ` Looking for a post to reply to: `thth topics --search [--json]` lists each hit's `post_id`, permalink, per-post replies (`—` means unknown, never zero) and a mark where your own queue already holds a `reply_to` draft — read-only, bodies shown but never stored, and the topic shelf is not written to. ## Three things an agent should know before calling it - `thth ask before-you-post --topic [--kind …] [--hour-band …] [--reply] [--json]` — read-only, answers from **the caller's own local ledgers**, never the network. The draft body is not an input and never appears in the output. Returns seven keys (`summary`, `expected`, `comparable`, `cannot_say`, `one_thing_to_change`, `audience`, `provenance`); **most answers are `cannot_say`** until an account has at least `--min-n` (default 20) comparable posts inside `--window-days` (default 30). `cannot_say` is a correct answer, not an error — exit 0. Same tool over MCP as `before_you_post`. - The read-only lookups (`thth where`, `thth thread`, `thth who`) save nothing; all that persists is the engagement ledger (your own acts and reactions). - Operator only: `thth account add --media threads|bluesky|mastodon|x --project

--by masaru` — writes one ledger from the bundled template to `$THTH_ROOT/accounts/`, **outside the repo**, always `production: false`. `thth account migrate` copies ledgers out of an older in-repo `accounts/` directory (copy, not move; never overwrites). ## Docs - [README.en.md](README.en.md): what it guarantees, refuses, and never does; install; where ledgers live; daily flow; every real CLI command - [docs/usage.en.md](docs/usage.en.md): day-to-day usage — topics, queueing, two-step approval, troubleshooting, account ledgers (§9), `thth ask` (§10), reading before you reply — `thth where` / `thth thread` / `thth who` and `thth after` (§11) - [docs/導入_承認を押すだけ.md](docs/導入_承認を押すだけ.md) (Japanese): invited users approve a URL; Masaru manages the server, clients and ledgers. Threads/Mastodon/X use `auth --by`; X is auth-only. Bluesky App Password enters through `token set --stdin --by`. No connection page yet. Never put credentials or authorization URLs into LLM context. - [thth.me](https://thth.me): project home