Skip to main content

THTH(ThreadsThrower・承認済み投稿の投げ手)

設計: docs/設計_THTH_2026-09-08.md(§8 の裁定済み。現行の設計書)。

承認済み(status: approved)の投稿ファイルを読み、静かな時間帯と最短間隔を守って 1 件だけ投げ、 post_id を書き戻して push し、投稿済みの返信を拾って追記し、走った記録と鮮度を出し、 走らなかったことを外部に知らせるまでを持つ。意味(何を書くか・承認・返信の解釈・採集箱への昇格)は持たない。 watchtower(~/Developer/watchtower)の隣に同じ流儀で並べる。watchtower は POST しないので投稿は混ぜない。

2.0.1。門を無料で開ける版(2.0.1: 同席送信の採集・セキュリティ監査 2 回の直し)(pip installthth askthth share・台帳を repo の外へ)。範囲と裁定は docs/設計_v2_泉と門_2026-09-13.md §3・§7、その前の版は docs/設計_v1.0.0_他人が導入できる版_2026-09-12.md、導入は docs/導入_自分のMetaアプリで動かす.md、文書の索引は docs/README.md

thth/VERSION2.0.1(版は thth/VERSION の 1 か所・server.json はテストで一致を強制)。origin/release は v2.0.0(216af9f)で、v2.0.1 はまだ配っていない(配布は masaru の一言)。出口条件の試験は(運用日誌 thth-notes: 記録/試験_LLMに選ばせる_2026-09-13.md)。

main への push は保存だけ。release を進める操作が配布(VM は release だけを追う。設計 §3.2.1)。

使う人へ

各プロジェクトのセッションが読むのは docs/使い方_プロジェクトのセッション向け_2026-09-09.md だけ。設計書は作った側の記録なので読まなくてよい。

いまの状態(2026-09-13)

2.2.0。全件テスト 2196 件python -m pytest tests/ -q -n auto -p no:cacheprovider・1 skip・rc=0)。

媒体: Threads(稼働)・Bluesky・Mastodon(同席用の台帳あり・未稼働)。

本番稼働中: Threads の 4 アカウント(nigamilab・asmon 関東・kopicha・masaru の同席用)。 timer(systemd・thth systemd で生成)で毎時投稿、返信の採集(thth replies)と数の採集 (thth measured)は稼働、トークン更新は thth maintain が毎日。

入口は 4 つ: 厚い CLI(bin/ththpython -m thth)、薄い MCP(mcp/server.py・読み取りと 同席の投稿・before_you_post)、timer、そして pip installthththth-mcp の entry point・ 依存 0。PyPI に公開済み・MCP registry に io.github.aokings/thth として登録済み)。

トピックの棚thth topics): 観測者ごとに並ぶ・打ち消し retract-notehistory

v2.0.0 で増えた口

  • 台帳を repo の外へ(設計 v2 §3・裁定 §7-1)。正は $THTH_ROOT/accounts/$THTH_ACCOUNTS_DIR があればそちら)。 repo に台帳は入っていない(2026-09-14 に 6 本を削除)——clone しても他人の台帳は付いて来ないので、 thth account add で自分の 1 本を作るところから始まる。配るのは雛形 accounts.example/ の 3 本だけ。 repo の accounts/1 版だけ互換で読む(stderr に警告 1 行・移行前の機械を止めないため)。 thth account migrate が repo の中を外へ copy(移動しない・上書きしない・冪等)、 thth account add <name> --media threads|bluesky|mastodon --project <p>accounts.example/<media>.json の雛形から 1 本書く(必ず production: false)。 書く先は互換に落ちていても常に外doctorboard が置き場を 1 行で言う。

  • thth ask before-you-post <account> --topic <語>(設計 v2 §1)。この語・この型・この時刻帯で スレッドがどう伸びたかを、件数と期間つきで返す。読むだけ・手元の台帳だけprovenance.sourcelocal。泉のサーバはまだ無い)。原稿本文は渡さないし、答えにも出ない。 n が閾値(既定 20)に満たない群は中央値を返さず cannot_say に理由を出す—— 手元の水ではほとんどが cannot_say になる。それが正しい答えで、rc は 0。MCP からは before_you_post

  • thth share on|off|status|log|sync(設計 v2 §3・裁定 §7-3)。既定 off、設定が無い・壊れて いるときも off。off のあいだは outbox が 0 バイト。on にしても $THTH_ROOT/state/share/outbox/<YYYY-MM>.ndjson に積むだけで、送り先はまだ無い(v2-5)。 積んだ全部は thth share log で読める。落ちるのは語・audience・型・件数・時刻帯・ post_id の塩つき sha256(塩は outbox に出ない)。本文・返信本文・返信者の username・ 自分の判断・アカウント名・トークン・repo のパス・生の post_id は落ちない。

  • 英語の文書: README.en.mddocs/usage.en.mdllms.txt

  • skill: skills/thth/SKILL.md(wheel にも入る)。

  • 動くものthth --help の全 27 サブコマンド): lintpreviewapproveaccountrevokepostsrepliesmeasuredthreadstopicsformsqueueschedulethrowrunsystemdshareboardcollectauthrefreshmaintainsenddoctorapptokenask

  • 最初の本番投稿の記録: 2026-09-09、@aoking に疎通確認を 1 本(17916074118445631)。

  • 未着手: X・Facebook ページ・Instagram の各アダプタ。トピック検索の権限(tester には降りない)。泉のサーバ(v2-5)。

  • 権限の制約: tester に降りる scope は 5 つ。削除はできない。

  • masaru の手が要るもの: repo を public にする切替と LICENSE、tag と release を進める操作(PyPI と MCP registry は 2.0.1 まで公開済み)。

MCP registry

registry は「この PyPI の名前を名乗ってよいのは誰か」を、配布物の README にこの 1 行があるかで確かめる(設計 v2-4 §3・一次資料は quickstart・L2)。だから消さないこと——消すと登録(mcp-publisher publish)が通らなくなる。形(server.json と版の一致)は tests/test_server_json.py が見張る。

mcp-name: io.github.aokings/thth

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

thth-2.2.0.tar.gz (943.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

thth-2.2.0-py3-none-any.whl (504.1 kB view details)

Uploaded Python 3

File details

Details for the file thth-2.2.0.tar.gz.

File metadata

  • Download URL: thth-2.2.0.tar.gz
  • Upload date:
  • Size: 943.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.12.10

File hashes

Hashes for thth-2.2.0.tar.gz
Algorithm Hash digest
SHA256 fb467707dd32e5a59797b454dd197611c0eab95cd45eed96156ea070a98c7b08
MD5 621f8d5bdd879aba229ac3e3efdd181f
BLAKE2b-256 955e4a1eeb46b7f29657608104452e0555c274fc4556b294f566c0c397a01102

See more details on using hashes here.

File details

Details for the file thth-2.2.0-py3-none-any.whl.

File metadata

  • Download URL: thth-2.2.0-py3-none-any.whl
  • Upload date:
  • Size: 504.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.12.10

File hashes

Hashes for thth-2.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 6fa1d463c28aee33bccb189d1472342fe35ccd656899fb4b69db123747f2ff8d
MD5 c9b8e8cc0d8067c62d12a31783a4bc04
BLAKE2b-256 1ad0c558da71ee15b48a81f4526cd2685124470318d2fb55afc83624b901ec51

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

2.2.0 This release

2 files

2.0.1

2 files

2.0.0

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page