# X Harness Lab: full evidence index > Xの投稿・リサーチ・承認フローとAPIコストを、再現可能な手順で検証するメディア。 Canonical catalog: https://x-harness.jp/research/ Machine-readable catalog: https://x-harness.jp/research/catalog.json Publisher: AIエージェント株式会社 Developer and editor: 野田修一 Conflict disclosure: This publication is operated by the product developer. It is not an independent review site. ## X API使用量を台帳化する――endpoint・機能・account別コスト観測 URL: https://x-harness.jp/articles/api-usage-cost-ledger/ Type: 公開コードに基づく一次資料分析 Published: 2026-08-19 Updated: 2026-08-19 Description: X Harnessのusage route、DB module、migrationからAPI利用量の観測単位と欠測を整理します。 Disclosure: 本稿はX Harnessの開発元が、公開リポジトリの固定コミットを一次資料として分析した技術研究ノートです。第三者による独立評価ではありません。 請求額だけを見るのではなく、どの機能がどのendpointを何回呼んだかを再現できるか。 固定した観測対象aad85e9 時点の公開コードを読み、現在の広告文ではなく実装ファイルとmigrationを根拠にします。 コードから観測できること - usage route、usage DB module、API usage logs migration、MCP usage toolが存在し、管理画面とAI操作の双方から観測できる構成である。 - 一回の利用者操作が複数API callを発生させる場合、機能event IDとendpoint logを関連付けなければ原因別集計ができない。 - 失敗、retry、cache hit、ローカル収集はAPI課金への寄与が異なるため、総操作数と総API callを分ける。 再現・追加測定の手順 - 検索・投稿・同期を一回ずつ実行する - endpoint logと機能eventを照合する - 意図的な失敗・retryを発生させる - account・endpoint・成功状態別に日次集計する この資料だけでは証明できないこと - Xの料金体系変更時は同じcall数でも金額が変わる。 - ログ欠測がある期間の費用をゼロとして扱わない。 このページは新しいcommit、実測ログ、API仕様変更が得られた時点で更新します。古い観測条件と現在仕様を混同しないため、固定commitへのリンクを残します。 Sources: - x-harness-oss: apps/worker/src/routes/usage.ts: https://github.com/Shudesu/x-harness-oss/blob/aad85e9568a95d92b70546c677b8bdee2d8b6e87/apps/worker/src/routes/usage.ts - x-harness-oss: packages/db/src/usage.ts: https://github.com/Shudesu/x-harness-oss/blob/aad85e9568a95d92b70546c677b8bdee2d8b6e87/packages/db/src/usage.ts - x-harness-oss: packages/db/migrations/009-api-usage-logs.sql: https://github.com/Shudesu/x-harness-oss/blob/aad85e9568a95d92b70546c677b8bdee2d8b6e87/packages/db/migrations/009-api-usage-logs.sql - x-harness-oss: packages/mcp/src/tools/usage.ts: https://github.com/Shudesu/x-harness-oss/blob/aad85e9568a95d92b70546c677b8bdee2d8b6e87/packages/mcp/src/tools/usage.ts - X Harness 取得時刻付きGit分析: https://x-harness.jp/git/ --- ## 予約投稿の冪等性――同一時刻・再試行・quote postを検証する URL: https://x-harness.jp/articles/scheduled-post-idempotency/ Type: 公開コードに基づく一次資料分析 Published: 2026-08-19 Updated: 2026-08-19 Description: X Harnessの投稿route、scheduler service、test、quote migrationから重複投稿防止を読みます。 Disclosure: 本稿はX Harnessの開発元が、公開リポジトリの固定コミットを一次資料として分析した技術研究ノートです。第三者による独立評価ではありません。 Cron重複やAPI timeout時に、同じ下書きが複数のX投稿として公開される経路をどう抑えるか。 固定した観測対象aad85e9 時点の公開コードを読み、現在の広告文ではなく実装ファイルとmigrationを根拠にします。 コードから観測できること - posts routeとpost scheduler serviceが分離され、scheduler専用testがある。予約作成と公開処理は別の状態遷移である。 - scheduled posts quote migrationにより通常投稿と引用投稿が同じ予約基盤へ拡張された履歴を確認できる。 - X API応答が失われた場合、投稿失敗と断定して即再送すると重複する。外部post IDの照合と不明状態が必要になる。 再現・追加測定の手順 - 同一予約を並列取得するCronを模擬する - API成功後に応答timeoutを注入する - 通常・返信・引用投稿を別々に試す - D1状態と実X post IDを照合する この資料だけでは証明できないこと - X側の冪等性仕様はendpointごとに確認が必要。 - 削除後の再投稿は重複検出ルールを別途定義する必要がある。 このページは新しいcommit、実測ログ、API仕様変更が得られた時点で更新します。古い観測条件と現在仕様を混同しないため、固定commitへのリンクを残します。 Sources: - x-harness-oss: apps/worker/src/routes/posts.ts: https://github.com/Shudesu/x-harness-oss/blob/aad85e9568a95d92b70546c677b8bdee2d8b6e87/apps/worker/src/routes/posts.ts - x-harness-oss: apps/worker/src/services/post-scheduler.ts: https://github.com/Shudesu/x-harness-oss/blob/aad85e9568a95d92b70546c677b8bdee2d8b6e87/apps/worker/src/services/post-scheduler.ts - x-harness-oss: apps/worker/src/services/__tests__/post-scheduler.test.ts: https://github.com/Shudesu/x-harness-oss/blob/aad85e9568a95d92b70546c677b8bdee2d8b6e87/apps/worker/src/services/__tests__/post-scheduler.test.ts - x-harness-oss: apps/worker/src/routes/__tests__/posts-schedule.test.ts: https://github.com/Shudesu/x-harness-oss/blob/aad85e9568a95d92b70546c677b8bdee2d8b6e87/apps/worker/src/routes/__tests__/posts-schedule.test.ts - x-harness-oss: packages/db/migrations/014-scheduled-posts-quote.sql: https://github.com/Shudesu/x-harness-oss/blob/aad85e9568a95d92b70546c677b8bdee2d8b6e87/packages/db/migrations/014-scheduled-posts-quote.sql - X Harness 取得時刻付きGit分析: https://x-harness.jp/git/ --- ## X reply pollingの重複処理を減らす――cursor・cache・再取得範囲 URL: https://x-harness.jp/articles/polling-reply-cache/ Type: 公開コードに基づく一次資料分析 Published: 2026-08-19 Updated: 2026-08-19 Description: Webhookだけに依存できないreply検知を、polling schedulerとreply trigger cacheから検証します。 Disclosure: 本稿はX Harnessの開発元が、公開リポジトリの固定コミットを一次資料として分析した技術研究ノートです。第三者による独立評価ではありません。 一定間隔の取得で取りこぼしを避けながら、同じreplyを毎回action実行しないために何を保存するか。 固定した観測対象aad85e9 時点の公開コードを読み、現在の広告文ではなく実装ファイルとmigrationを根拠にします。 コードから観測できること - polling scheduler、reply trigger cache、そのtest、polling/replier cache migrationが公開される。 - 最後に見た時刻だけでは同時刻eventや遅延反映を落とす可能性があり、ID cursorと重複cacheの組合せを検討する必要がある。 - 取得範囲を重ねると欠測は減るがAPI callと重複判定が増える。観測は取りこぼし率とcall数の両方を報告する。 再現・追加測定の手順 - 複数replyを短時間に作る - polling間隔境界でreplyを追加する - 同一範囲を繰返し取得する - 取得件数・新規判定・action件数・API callを記録する この資料だけでは証明できないこと - テストaccountのreply量は高流量accountを再現しない。 - X APIの検索・timeline反映遅延は一定ではない。 このページは新しいcommit、実測ログ、API仕様変更が得られた時点で更新します。古い観測条件と現在仕様を混同しないため、固定commitへのリンクを残します。 Sources: - x-harness-oss: apps/worker/src/services/polling-scheduler.ts: https://github.com/Shudesu/x-harness-oss/blob/aad85e9568a95d92b70546c677b8bdee2d8b6e87/apps/worker/src/services/polling-scheduler.ts - x-harness-oss: apps/worker/src/services/reply-trigger-cache.ts: https://github.com/Shudesu/x-harness-oss/blob/aad85e9568a95d92b70546c677b8bdee2d8b6e87/apps/worker/src/services/reply-trigger-cache.ts - x-harness-oss: apps/worker/src/services/__tests__/reply-trigger-cache.test.ts: https://github.com/Shudesu/x-harness-oss/blob/aad85e9568a95d92b70546c677b8bdee2d8b6e87/apps/worker/src/services/__tests__/reply-trigger-cache.test.ts - x-harness-oss: packages/db/migrations/004-polling-columns.sql: https://github.com/Shudesu/x-harness-oss/blob/aad85e9568a95d92b70546c677b8bdee2d8b6e87/packages/db/migrations/004-polling-columns.sql - x-harness-oss: packages/db/migrations/010-replier-cache.sql: https://github.com/Shudesu/x-harness-oss/blob/aad85e9568a95d92b70546c677b8bdee2d8b6e87/packages/db/migrations/010-replier-cache.sql - X Harness 取得時刻付きGit分析: https://x-harness.jp/git/ --- ## X engagement gateのverify境界――reply・like・repost・follow条件 URL: https://x-harness.jp/articles/engagement-gate-verification/ Type: 公開コードに基づく一次資料分析 Published: 2026-08-19 Updated: 2026-08-19 Description: X上の複数engagement条件を、観測可能性、cache、verify API、action実行に分解します。 Disclosure: 本稿はX Harnessの開発元が、公開リポジトリの固定コミットを一次資料として分析した技術研究ノートです。第三者による独立評価ではありません。 複数条件を満たしたという判定が、取得時刻・API可視性・cacheによってどの程度変わるか。 固定した観測対象aad85e9 時点の公開コードを読み、現在の広告文ではなく実装ファイルとmigrationを根拠にします。 コードから観測できること - engagement gate route/service、verify route/test、DB moduleが分かれ、条件判定と外部向けverify APIを別に追跡できる。 - reply、like、repost、followは取得endpointと反映速度が同じとは限らない。単一のverified booleanだけでなく条件別結果を保存する方が再検証可能である。 - cacheはAPI costを下げる一方、解除済みfollowなど古い状態を返す。TTLと判定時刻を結果に含める必要がある。 再現・追加測定の手順 - 各条件を一つずつ満たす利用者を作る - 条件変更直後とcache期限後にverifyする - 複合条件の一部失敗を記録する - verify結果とaction実行を別eventとして保存する この資料だけでは証明できないこと - APIから取得できないengagementを推測で成功扱いしない。 - 非公開・制限accountでは同じ観測ができない場合がある。 このページは新しいcommit、実測ログ、API仕様変更が得られた時点で更新します。古い観測条件と現在仕様を混同しないため、固定commitへのリンクを残します。 Sources: - x-harness-oss: apps/worker/src/routes/engagement-gates.ts: https://github.com/Shudesu/x-harness-oss/blob/aad85e9568a95d92b70546c677b8bdee2d8b6e87/apps/worker/src/routes/engagement-gates.ts - x-harness-oss: apps/worker/src/services/engagement-gate.ts: https://github.com/Shudesu/x-harness-oss/blob/aad85e9568a95d92b70546c677b8bdee2d8b6e87/apps/worker/src/services/engagement-gate.ts - x-harness-oss: apps/worker/src/routes/verify.ts: https://github.com/Shudesu/x-harness-oss/blob/aad85e9568a95d92b70546c677b8bdee2d8b6e87/apps/worker/src/routes/verify.ts - x-harness-oss: apps/worker/src/routes/__tests__/verify.test.ts: https://github.com/Shudesu/x-harness-oss/blob/aad85e9568a95d92b70546c677b8bdee2d8b6e87/apps/worker/src/routes/__tests__/verify.test.ts - x-harness-oss: packages/db/src/engagement-gates.ts: https://github.com/Shudesu/x-harness-oss/blob/aad85e9568a95d92b70546c677b8bdee2d8b6e87/packages/db/src/engagement-gates.ts - X Harness 取得時刻付きGit分析: https://x-harness.jp/git/ --- ## フォロワー状態をsnapshotで読む――現在値・変化・cacheの違い URL: https://x-harness.jp/articles/follower-snapshot-cache/ Type: 公開コードに基づく一次資料分析 Published: 2026-08-19 Updated: 2026-08-19 Description: X Harnessのfollower sync、snapshot、ID cacheからフォロー状態の観測時点を明確にします。 Disclosure: 本稿はX Harnessの開発元が、公開リポジトリの固定コミットを一次資料として分析した技術研究ノートです。第三者による独立評価ではありません。 『フォローしている』という現在判定と、過去からの増減、API取得結果のcacheをどのデータで区別するか。 固定した観測対象aad85e9 時点の公開コードを読み、現在の広告文ではなく実装ファイルとmigrationを根拠にします。 コードから観測できること - follower sync service、followers/follower snapshots DB module、follower ID cache migrationが存在する。 - snapshotは観測時点の集合であり、二時点差分からfollow/unfollow候補を計算できるが、その間の往復行動までは復元できない。 - ID cacheはverifyのAPI call削減に使えるが、取得時刻を失うと現在値として誤用される。 再現・追加測定の手順 - 基準snapshotを取得する - follow/unfollowを混在させ次snapshotを取る - cache有無でAPI callと判定を比較する - 差分・取得時刻・欠測accountを保存する この資料だけでは証明できないこと - snapshot間で起きた複数変化は最終差分に現れない。 - API pagination失敗時の部分集合を完全snapshotと扱わない。 このページは新しいcommit、実測ログ、API仕様変更が得られた時点で更新します。古い観測条件と現在仕様を混同しないため、固定commitへのリンクを残します。 Sources: - x-harness-oss: apps/worker/src/services/follower-sync.ts: https://github.com/Shudesu/x-harness-oss/blob/aad85e9568a95d92b70546c677b8bdee2d8b6e87/apps/worker/src/services/follower-sync.ts - x-harness-oss: packages/db/src/followers.ts: https://github.com/Shudesu/x-harness-oss/blob/aad85e9568a95d92b70546c677b8bdee2d8b6e87/packages/db/src/followers.ts - x-harness-oss: packages/db/src/follower-snapshots.ts: https://github.com/Shudesu/x-harness-oss/blob/aad85e9568a95d92b70546c677b8bdee2d8b6e87/packages/db/src/follower-snapshots.ts - x-harness-oss: packages/db/migrations/011-follower-id-cache.sql: https://github.com/Shudesu/x-harness-oss/blob/aad85e9568a95d92b70546c677b8bdee2d8b6e87/packages/db/migrations/011-follower-id-cache.sql - X Harness 取得時刻付きGit分析: https://x-harness.jp/git/ --- ## X投稿権限をstaff roleで分ける――閲覧・下書き・承認・公開 URL: https://x-harness.jp/articles/staff-role-publishing-authority/ Type: 公開コードに基づく一次資料分析 Published: 2026-08-19 Updated: 2026-08-19 Description: owner/admin/editor/viewerの権限を、投稿ライフサイクルとAPI keyに対応させて検証します。 Disclosure: 本稿はX Harnessの開発元が、公開リポジトリの固定コミットを一次資料として分析した技術研究ノートです。第三者による独立評価ではありません。 記事や投稿を編集できる利用者と、外部公開できる利用者を同一権限にしない設計になっているか。 固定した観測対象aad85e9 時点の公開コードを読み、現在の広告文ではなく実装ファイルとmigrationを根拠にします。 コードから観測できること - staff route、DB module、staff migrationがあり、認証middlewareとは別に役割を保存する。 - 投稿・growth article・scheduleという複数公開経路があるため、一つのrouteだけ権限を確認しても公開権限監査は完了しない。 - viewer、editor、admin、ownerの期待操作を表にし、UI非表示ではなくAPI直接要求で拒否されることを確認する必要がある。 再現・追加測定の手順 - 4 roleのAPI keyを作る - 閲覧・下書き・編集・予約・即時公開を要求する - 別account/resource IDも指定する - 応答とD1/X側副作用を記録する この資料だけでは証明できないこと - role名から期待権限を推測せず、実装と文書の一致を確認する。 - 漏洩した高権限keyへの失効・監査手順はrole設計とは別に必要。 このページは新しいcommit、実測ログ、API仕様変更が得られた時点で更新します。古い観測条件と現在仕様を混同しないため、固定commitへのリンクを残します。 Sources: - x-harness-oss: apps/worker/src/routes/staff.ts: https://github.com/Shudesu/x-harness-oss/blob/aad85e9568a95d92b70546c677b8bdee2d8b6e87/apps/worker/src/routes/staff.ts - x-harness-oss: packages/db/src/staff.ts: https://github.com/Shudesu/x-harness-oss/blob/aad85e9568a95d92b70546c677b8bdee2d8b6e87/packages/db/src/staff.ts - x-harness-oss: packages/db/migrations/008-staff-members.sql: https://github.com/Shudesu/x-harness-oss/blob/aad85e9568a95d92b70546c677b8bdee2d8b6e87/packages/db/migrations/008-staff-members.sql - x-harness-oss: apps/worker/src/middleware/auth.ts: https://github.com/Shudesu/x-harness-oss/blob/aad85e9568a95d92b70546c677b8bdee2d8b6e87/apps/worker/src/middleware/auth.ts - X Harness 取得時刻付きGit分析: https://x-harness.jp/git/ --- ## 情報源からX Articleまで――source候補・draft・承認・公開の来歴 URL: https://x-harness.jp/articles/growth-source-article-pipeline/ Type: 公開コードに基づく一次資料分析 Published: 2026-08-19 Updated: 2026-08-19 Description: X Harnessのgrowth機能を、source収集、候補選択、記事draft、X投稿draft、公開へ分解します。 Disclosure: 本稿はX Harnessの開発元が、公開リポジトリの固定コミットを一次資料として分析した技術研究ノートです。第三者による独立評価ではありません。 AI生成記事の各主張を元sourceへ戻せるように、どの段階でURLと編集履歴を保存するか。 固定した観測対象aad85e9 時点の公開コードを読み、現在の広告文ではなく実装ファイルとmigrationを根拠にします。 コードから観測できること - growth sources、growth、growth articlesのroute・testと、source candidates、growth drafts、growth articlesのmigrationが存在する。 - source候補と完成記事を直接結ぶだけでは、AI変換・人間編集・却下理由が失われる。中間draftと採用sourceの来歴が必要になる。 - 公開記事とX投稿draftは別成果物であり、長文記事の根拠が短文投稿で省略される条件を監査する。 再現・追加測定の手順 - 複数source候補を登録する - 採用・却下理由を保存してdraftを作る - 人間編集前後の差分を記録する - 記事公開URLとX draftからsourceへ逆引きする この資料だけでは証明できないこと - source URLが存在しても主張を実際に支持するとは限らない。 - 第三者記事の長文転載を避け、引用範囲と権利を確認する。 このページは新しいcommit、実測ログ、API仕様変更が得られた時点で更新します。古い観測条件と現在仕様を混同しないため、固定commitへのリンクを残します。 Sources: - x-harness-oss: apps/worker/src/routes/growth-sources.ts: https://github.com/Shudesu/x-harness-oss/blob/aad85e9568a95d92b70546c677b8bdee2d8b6e87/apps/worker/src/routes/growth-sources.ts - x-harness-oss: apps/worker/src/routes/growth-articles.ts: https://github.com/Shudesu/x-harness-oss/blob/aad85e9568a95d92b70546c677b8bdee2d8b6e87/apps/worker/src/routes/growth-articles.ts - x-harness-oss: packages/db/migrations/015-growth-drafts.sql: https://github.com/Shudesu/x-harness-oss/blob/aad85e9568a95d92b70546c677b8bdee2d8b6e87/packages/db/migrations/015-growth-drafts.sql - x-harness-oss: packages/db/migrations/016-source-candidates.sql: https://github.com/Shudesu/x-harness-oss/blob/aad85e9568a95d92b70546c677b8bdee2d8b6e87/packages/db/migrations/016-source-candidates.sql - x-harness-oss: packages/db/migrations/017-growth-articles.sql: https://github.com/Shudesu/x-harness-oss/blob/aad85e9568a95d92b70546c677b8bdee2d8b6e87/packages/db/migrations/017-growth-articles.sql - X Harness 取得時刻付きGit分析: https://x-harness.jp/git/ --- ## X広告・外部イベントのverify API――eventを成果へ変換する境界 URL: https://x-harness.jp/articles/xaa-event-verification/ Type: 公開コードに基づく一次資料分析 Published: 2026-08-19 Updated: 2026-08-19 Description: XAA event保存とverify routeを読み、外部イベント受信、重複、帰属、検証結果を分けます。 Disclosure: 本稿はX Harnessの開発元が、公開リポジトリの固定コミットを一次資料として分析した技術研究ノートです。第三者による独立評価ではありません。 外部から届いたeventを受信した事実と、キャンペーン成果として承認できる事実をどこで分けるか。 固定した観測対象aad85e9 時点の公開コードを読み、現在の広告文ではなく実装ファイルとmigrationを根拠にします。 コードから観測できること - XAA route、verify route、XAA events DB moduleとmigrationがあり、外部eventを永続化する構成である。 - event IDの重複排除、署名・token、campaign/account scope、発生時刻と受信時刻を別に保持しないと再送や遅延を成果増加と誤認する。 - verify APIの成功はevent受信・条件一致の結果であり、売上や本人性を追加証拠なしに保証しない。 再現・追加測定の手順 - 同一event IDを複数回送る - 時刻・account・campaignを改変する - verify前後のD1行と応答を保存する - 承認済み成果と受信event総数を別集計する この資料だけでは証明できないこと - 外部event提供元自体が誤情報を送る場合は受信側だけで真実性を保証できない。 - 個人追跡identifierは必要最小限と保存期間を定義する。 このページは新しいcommit、実測ログ、API仕様変更が得られた時点で更新します。古い観測条件と現在仕様を混同しないため、固定commitへのリンクを残します。 Sources: - x-harness-oss: apps/worker/src/routes/xaa.ts: https://github.com/Shudesu/x-harness-oss/blob/aad85e9568a95d92b70546c677b8bdee2d8b6e87/apps/worker/src/routes/xaa.ts - x-harness-oss: apps/worker/src/routes/verify.ts: https://github.com/Shudesu/x-harness-oss/blob/aad85e9568a95d92b70546c677b8bdee2d8b6e87/apps/worker/src/routes/verify.ts - x-harness-oss: packages/db/src/xaa-events.ts: https://github.com/Shudesu/x-harness-oss/blob/aad85e9568a95d92b70546c677b8bdee2d8b6e87/packages/db/src/xaa-events.ts - x-harness-oss: packages/db/migrations/013-xaa-events.sql: https://github.com/Shudesu/x-harness-oss/blob/aad85e9568a95d92b70546c677b8bdee2d8b6e87/packages/db/migrations/013-xaa-events.sql - X Harness 取得時刻付きGit分析: https://x-harness.jp/git/ --- ## X account OAuth境界――OAuth 1.0a secret・複数account・失効 URL: https://x-harness.jp/articles/oauth-account-secret-boundary/ Type: 公開コードに基づく一次資料分析 Published: 2026-08-19 Updated: 2026-08-19 Description: X Harnessのaccount route、schema、setupからOAuth資格情報の保存・選択・失効を整理します。 Disclosure: 本稿はX Harnessの開発元が、公開リポジトリの固定コミットを一次資料として分析した技術研究ノートです。第三者による独立評価ではありません。 複数X accountの資格情報を取り違えず、secretをログ・画面・Gitへ露出させずに投稿処理へ渡せるか。 固定した観測対象aad85e9 時点の公開コードを読み、現在の広告文ではなく実装ファイルとmigrationを根拠にします。 コードから観測できること - x accounts route、DB module、OAuth 1.0a columns migration、setup routeが存在する。 - account選択は画面状態ではなく、認証されたresource scopeとD1 recordの対応で決める必要がある。 - secretは取得後に再表示しない、ログへ含めない、失効時にhealthへ反映するなどライフサイクル全体で扱う。 再現・追加測定の手順 - 2つのテストaccountを接続する - account IDを入替えて投稿・読取を要求する - 一方のtokenを失効させる - 応答・ログ・保存値・health表示を確認する この資料だけでは証明できないこと - 暗号化保存だけではWorker実行時の権限漏洩を防げない。 - 公開レポートへtoken、secret、完全なAuthorization headerを含めない。 このページは新しいcommit、実測ログ、API仕様変更が得られた時点で更新します。古い観測条件と現在仕様を混同しないため、固定commitへのリンクを残します。 Sources: - x-harness-oss: apps/worker/src/routes/x-accounts.ts: https://github.com/Shudesu/x-harness-oss/blob/aad85e9568a95d92b70546c677b8bdee2d8b6e87/apps/worker/src/routes/x-accounts.ts - x-harness-oss: packages/db/src/x-accounts.ts: https://github.com/Shudesu/x-harness-oss/blob/aad85e9568a95d92b70546c677b8bdee2d8b6e87/packages/db/src/x-accounts.ts - x-harness-oss: packages/db/migrations/001-oauth1a-columns.sql: https://github.com/Shudesu/x-harness-oss/blob/aad85e9568a95d92b70546c677b8bdee2d8b6e87/packages/db/migrations/001-oauth1a-columns.sql - x-harness-oss: apps/worker/src/routes/setup.ts: https://github.com/Shudesu/x-harness-oss/blob/aad85e9568a95d92b70546c677b8bdee2d8b6e87/apps/worker/src/routes/setup.ts - X Harness 取得時刻付きGit分析: https://x-harness.jp/git/ --- ## X APIとCookie収集を混同しない――MCP scrape toolの実行境界 URL: https://x-harness.jp/articles/mcp-scrape-api-boundary/ Type: 公開コードに基づく一次資料分析 Published: 2026-08-19 Updated: 2026-08-19 Description: X HarnessのMCP scraper実装から、公式API投稿とローカルCookie収集の安全・規約・データ境界を明示します。 Disclosure: 本稿はX Harnessの開発元が、公開リポジトリの固定コミットを一次資料として分析した技術研究ノートです。第三者による独立評価ではありません。 AIが同じMCP画面から操作するとき、公式APIを使うtoolとローカルCookieを使うtoolを利用者が区別できるか。 固定した観測対象aad85e9 時点の公開コードを読み、現在の広告文ではなく実装ファイルとmigrationを根拠にします。 コードから観測できること - MCPにはscraper本体、scrape tools、scraper testsがあり、通常のposts/analytics toolsとは別モジュールである。 - Cookie収集はX APIではない。API課金ゼロという費用上の性質と、規約・凍結・認証情報漏洩リスクを同時に表示する必要がある。 - CookieをWorker/D1へ送らずローカルprocessだけで使う設計でも、AIログ、shell履歴、設定ファイル権限という別の漏洩面が残る。 再現・追加測定の手順 - tool一覧でAPI系とscrape系を分類する - Cookieなし・期限切れ・正常の各状態を試す - network送信先とlocal file accessを記録する - 収集結果の取得日時とsource URLを保存する この資料だけでは証明できないこと - 技術的に動作することはサービス規約上の許可を意味しない。 - アカウント安全性を保証せず、利用者が最新規約とリスクを判断する必要がある。 このページは新しいcommit、実測ログ、API仕様変更が得られた時点で更新します。古い観測条件と現在仕様を混同しないため、固定commitへのリンクを残します。 Sources: - x-harness-oss: packages/mcp/src/scraper.ts: https://github.com/Shudesu/x-harness-oss/blob/aad85e9568a95d92b70546c677b8bdee2d8b6e87/packages/mcp/src/scraper.ts - x-harness-oss: packages/mcp/src/tools/scrape.ts: https://github.com/Shudesu/x-harness-oss/blob/aad85e9568a95d92b70546c677b8bdee2d8b6e87/packages/mcp/src/tools/scrape.ts - x-harness-oss: packages/mcp/src/__tests__/scraper.test.ts: https://github.com/Shudesu/x-harness-oss/blob/aad85e9568a95d92b70546c677b8bdee2d8b6e87/packages/mcp/src/__tests__/scraper.test.ts - x-harness-oss: packages/create-x-harness/src/steps/scraper-setup.ts: https://github.com/Shudesu/x-harness-oss/blob/aad85e9568a95d92b70546c677b8bdee2d8b6e87/packages/create-x-harness/src/steps/scraper-setup.ts - X Harness 取得時刻付きGit分析: https://x-harness.jp/git/ --- ## X Harness開発者本人の一次記録――APIコスト・承認・収集境界を検証 URL: https://x-harness.jp/articles/developer-first-party-verification-2026-08/ Type: 開発者本人による一次情報 Published: 2026-08-19 Updated: 2026-08-19 Description: 開発者・野田修一がX Harnessの公開コード、Git履歴、投稿承認とデータ収集の設計上の境界を公開します。 Disclosure: 執筆・検証者の野田修一はX Harnessの開発者であり、運営会社AIエージェント株式会社の代表です。本記事は第三者レビューではありません。 X Harnessの開発者本人として、公開コードに存在する機能と安全上の境界を記録します。投稿成果を誇張せず、公式APIを使う処理と、ローカル収集機能を分けて説明します。 2026年8月19日時点の公開事実 GitHubリポジトリは2026年4月2日に作成され、観測時点で89 stars、37 forks、9 open issuesでした。既定ブランチの履歴は138 commits、公開リリースは4件で、GitHub Releases上の最新はv0.5.1です。これらは同日のGitHub API観測値であり、導入効果のランキングではありません。 公開コードから確認できる構成Cloudflare Workers、D1、X API v2、OAuth、Web管理画面、SDK、MCP Serverが公開されています。投稿・予約はX APIを使い、AI下書きには人間の承認状態を設け、API使用量を機能・エンドポイント別に観測する設計です。 公式APIとローカル収集を混同しない 公開READMEには、読み取り用途でCookie認証のtwitter-cliをローカルから使う任意機能も記載されています。これはX APIによる投稿処理とは別経路であり、凍結リスクがない公式機能とは表現しません。Cookieをサーバーへ送らないこと、収集専用アカウントを推奨すること、利用者自身が規約とリスクを判断する必要があることを制約として公開しています。 まだ成果として主張しないこと 公開実装だけでは、X API費用の削減額、投稿の表示回数増加、フォロワー増加、AI投稿の品質向上を証明できません。今後は観測期間、利用プラン、エンドポイント別件数、人間の却下率、修正理由、公開後削除件数を同じレポートにまとめます。 Sources: - X Harness公開リポジトリ: https://github.com/Shudesu/x-harness-oss - v0.5.1リリース: https://github.com/Shudesu/x-harness-oss/releases/tag/v0.5.1 - 最新の公開実装記録: https://github.com/Shudesu/x-harness-oss/commit/aad85e9568a95d92b70546c677b8bdee2d8b6e87 - 取得時刻付きGit分析: https://x-harness.jp/git/ --- ## X APIコストを事故にしない――日次観測プロトコル URL: https://x-harness.jp/articles/api-cost-observation-protocol/ Type: 研究 Published: 2026-08-19 Updated: 2026-08-19 Description: エンドポイント・機能・アカウント単位でX API使用量を記録し、異常増加を止める運用手順。 Disclosure: Editorial policy applies. X APIのコスト事故は、請求額を見てからでは遅れます。呼び出しを機能単位で記録し、日次の平常値から外れた時点で止める仕組みが必要です。 集計軸は3つ 日付、エンドポイント、呼び出した機能の3軸で集計します。単純な総リクエスト数では、検索、メンション同期、フォロワー取得のどれが増えたか判断できません。 停止してから調べる 閾値超過時は自動再試行を止め、キャッシュミス、Cron重複、手動実行、直前のデプロイを時系列で確認します。原因調査のために同じ高コストAPIを再度呼ばないことも運用ルールに含めます。 研究公開単位料金そのものは変更されるため、金額だけでなく呼び出し条件、件数、観測日、プランをセットで公開します。 Sources: - X Harness公式リポジトリ: https://github.com/Shudesu/x-harness-oss - X Developer Platform: https://developer.x.com/en/docs - 既存のAPIコスト実装記録: https://the-harness.com/x-harness-research-api-cost/ --- ## AI投稿を自動公開しない――承認キューの設計と監査項目 URL: https://x-harness.jp/articles/human-approval-publishing/ Type: 運用設計 Published: 2026-08-19 Updated: 2026-08-19 Description: AIが生成したX投稿を、人間の承認・出典確認・予約上限を通して公開する運用設計。 Disclosure: Editorial policy applies. 生成品質が上がっても、公開権限まで無条件に渡す必要はありません。調査、下書き、承認、予約、投稿結果を別の状態として保存します。 承認時に見る5項目 - 主張の根拠URL - 引用範囲と権利 - 日時に依存する数値 - 対象アカウントと公開時刻 - 同日投稿数と停止方法 自動化の成果を速度だけで測らない 下書き時間の短縮に加え、却下率、修正理由、誤情報の検出件数、公開後の削除件数を記録します。自動化が増えた結果、レビュー負荷が増えていないかも評価対象です。 透明性AI支援を使った記事・投稿では、出典の確認者と最終更新日を記録します。 Sources: - X Harness公式リポジトリ: https://github.com/Shudesu/x-harness-oss - The Harness運用ガイド: https://the-harness.com/x-harness-ai-operations/