THTH
THTH は、自分の SNS アカウントで調べる・投稿する・予約する・振り返るためのコマンドラインツールです(Threads・Bluesky・Mastodon・X)。
CLI なので、Claude Code などの AI アシスタントがそのまま操作できます。同梱の MCP サーバーとスキルは、その操作を楽にするための補助です。THTH は何を書くかを決めません。頼まれたときだけ動きます。
English: README.en.md · サイト: https://thth.me · 文書の索引: docs/README.md
できること
- 調べる:
thth topics <アカウント> --search <語>で、その語の件数・投稿者の数・最新の投稿を見ます。thth whereは「次にどこで話すか」を、自分がすでに絡んだ相手を重ねて探します。X の行には投稿者のフォロワー数(「フォロワー 1.2 万」)と投稿数も付きます(--jsonはauthor_followers・author_posts。保存しません)。 - 出す:
thth sendで今すぐ、thth scheduleで予約、--reply-toで返信です。 - ブックマークの連投は記事と別に数える(4.0.1): はてなブックマークは主体の別の窓(既定 10 分に 10 件)で数え、超えても主体を止めずにその 1 件だけ断ります。1 日 30 件・同じホストへ 1 日 3 件(自分の記事は 1 日 1 件のまま)。記事の連投で止める作りは変わりません(リリースノート 4.0.1)。
- 止めた口座では timer は何も出さない(4.3.1): 安全装置か持ち主が止めた口座では、予約の投稿・返信を queue に残し、
thth account resumeで戻せば次の timer で出ます(リリースノート 4.3.1)。 - 返信はまとめて出す(4.3.0): 時刻の過ぎた返信は承認したその場で、timer では 1 回でまとめて出します(返信の窓は返信だけで 10 分に 10 件・投稿の窓に数えない・投稿の間隔を掛けない)。使い方は「
publish_atを今か過去にしてまとめて承認する」だけです(リリースノート 4.3.0)。 - 1 件の断りでまとめを止めない(4.2.2): はてなに 1 件だけ断られた札は token を確かめてその札だけ外し、まとめを進めます。断られそうな札(半角の「%」・タグとコメントの長いもの)は 1 段目と lint で予告します(断りません)。止まったまとめは 60 分ごとにしか打たず、
thth bookmark batch-resumeで今すぐ見直せます。sparse-checkout の定義の外には記録を書かず、直し方を言います(リリースノート 4.2.2)。 - ブックマークの直しとタグの長さの柵(4.2.0):
thth bookmark editで THTH が付けたブックマークのコメントとタグを 2 段の承認で直す。31 バイトを超えるタグは予告して断る。上限の設定は台帳のlimitsと別名で書け、断りに根拠と通し方が付きます(リリースノート 4.2.0)。 - ブックマークを 1 日分まとめて承認する(4.1.0): 札を JSON Lines に並べ、
thth bookmark batchの 1 段目で全件の一覧と digest を見て 2 段目で確定。timer が上限の中で時刻を散らして付けます(口座ごと)。あわせて、上限と連投の柵の土台(媒体の特性の台帳)を入れました(リリースノート 4.1.0)。
はじめ方
招待された人
運営(gotoq)から届いた招待リンクを開き、Threads で認可します。そのあとターミナルで次を打ちます。
pip install thth
thth login
ブラウザが開くので、アカウント名とアカウントのシークレットを入れて許可します。以後は自分のアカウントにそのまま使えます。
thth posts <アカウント>
thth topics <アカウント> --search コーヒー
thth send <アカウント> --text "こんにちは"
サーバーも Meta アプリも git も要りません。手順の全体は 招待されたら にあります。
自分の機械で運用する人(運営者)
アカウントの台帳を自分の機械に置き、下書きのファイルを承認してから timer で出す運用もできます。承認は 2 段(本文と digest を見せる → その digest で確定)で、記録は git に残ります。準備は 統一ガイド、日々の使い方は プロジェクトのセッション向け にあります。
AI アシスタントから使う
claude mcp add thth -- thth-mcp
MCP の道具は CLI の写しで、同じ thth コマンドを呼ぶだけです。スキル(skills/thth/)は「投稿する前に何を見るか」「返信をどう扱うか」をアシスタントに教えます。キーはアシスタントに渡しません。thth login が手元に置いたキーを thth コマンドが使います。
ガード
アシスタントが誤って走っても、アカウントごとのガードで止まります。
アシスタントが変えられるのは、厳しくする向きだけです。緩める・止まったアカウントを戻す・キーを発行し直すのは、オーナーが https://thth.me/activity でアカウントのシークレットを使って行います。
保存しないもの
- 検索結果(
topics --search・where・thread・who)の本文と投稿者は、その場で見せるだけで保存しません。where … --keepのときだけ、語ごとの数(件数・問いの形・分類・also の当たり)を日付つきで project の私有の置き場に残します(5 未満は欠測・thth where-logで読む・3.18.0)。 - ダイレクトメッセージは読みません。
- トークンとシークレットは、ログと出力から伏せます。
詳しくは プライバシーポリシー にあります。
コマンドの一覧
thth --help で各コマンドの説明が出ます。
動くもの(thth --help の全サブコマンド): lint・preview・approve・account・revoke・posts・replies・measured・threads・after・analytics-report・study-report・study・unanswered・handoff-report・observe・morning・events・summary・deliveries・media・article・conflict・hatena・bookmark・serve-reports・worker・topics・forms・queue・schedule・throw・run・systemd・board・collect・pull・auth・refresh・maintain・send・doctor・app・token・ask・mentions・profile・thread・where・where-log・who・retract・repost・unrepost・like・unlike・list・community・trends・counts・principal・fotolife・inflight・location・notifications・report・plaza・map・admin・login・logout。
版と配布
- 版の正本は
thth/VERSIONです。手元の版はthth --versionで確かめます。 mainへの push は保存だけです。releaseを進めると運営のサーバーに出て、版の tag を push すると PyPI と MCP registry に出ます。- 依存は 0 です。入口は
ththとthth-mcpの 2 つです。 - AI エージェント向けの試用の記録: headlesson の THTH のページ(THTH と同じ運営)。3.15.0 の導入と
--helpを 2026-10-11 に確かめた記録で、投稿と予約は試していません。
ライセンス
MIT。
MCP registry
registry は「この PyPI の名前を名乗ってよいのは誰か」を、配布物の README にある次の 1 行で確かめます。消さないでください。
mcp-name: io.github.aokings/thth