メインコンテンツへ移動
AIチュートリアル

Auto-CheckinでAIの毎日のクォータ確認を自動化

Auto-Checkinのインストール方法、GoRouter、Tabi AI、JustDoWork、SeekAIのアカウント設定、Cloudflare Turnstileの認証解除に向けたYesCaptchaの接続、チェックインの実行、cronによる毎日の実行スケジュール設定について説明します。

Auto-CheckinでAIの毎日のクォータ確認を自動化

Auto-Checkinの機能

Auto-Checkinは、GoRouter、Tabi AI、JustDoWork、SeekAIの複数アカウントで毎日のチェックインを実行するPython自動化ツールキットです。各アカウントを手動で確認しなくても、これらのプロバイダーが提供する毎日の無料LLMクォータを収集することを目的としています。

このツールキットはセッションを検証し、各プラットフォームが要求する認証ヘッダーを適用して、YesCaptchaを使用してCloudflare Turnstileのチャレンジを解決します。アカウントを自動化する前に、対象プラットフォームの利用規約を確認し、利用が許可されていることを確認してください。

主な機能

  • 4つのプロバイダーに対応: GoRouter、Tabi AI、JustDoWork、SeekAI。
  • 複数アカウントの設定: 対応アカウントを1つのJSON設定ファイルに複数登録できます。
  • セッションの自動検証: チェックイン処理の一環として、設定済みセッションを検証します。
  • プラットフォーム固有の認証: 必要なトークンとヘッダーパラメーターを決められた方法で送信します。
  • Turnstileの解決: YesCaptchaのクライアントキーを使用して、Cloudflare Turnstileを自動的に解決します。
  • スケジュール実行: cronでスクリプトを毎日実行できます。
  • AIエージェント向けコンテキスト: 付属のエージェント指示ファイルと機械可読コンテキストファイルを使用できます。

対応プラットフォームと認証情報

各アカウントにはアクセストークンが必要です。GoRouterでは、アカウントダッシュボードに表示される数値のユーザーIDも必要です。

  • GoRouter: https://gorouter.appを使用します。アクセストークンと数値のユーザーIDを指定してください。そのミドルウェアでは、IDと一致するNew-Api-User: <USER_ID>ヘッダーが必要です。
  • Tabi AI: https://tabitoken.comを使用し、アクセストークンが必要です。
  • JustDoWork: https://api.justwoker.icuを使用し、アクセストークンが必要です。
  • SeekAI: https://seekai.ccを使用し、アクセストークンが必要です。

READMEによると、1日の報酬はGoRouterとTabi AIが2.5M~5.0Mクォータ、JustDoWorkが10.0M~15.0M、SeekAIが10.0Mです。これらはプロバイダー側の提供内容であり、ツールキットとは別に変更される場合があります。

前提条件

  • Python 3.9以降。
  • リポジトリのクローンに使用するGit。
  • 対応プラットフォームのアカウントを1つ以上。
  • 対象プラットフォームのアクセストークン。
  • GoRouterの設定時に使用する数値のダッシュボードユーザーID。
  • Turnstileの解決に使用するYesCaptchaクライアントキー。

ステップ1: ツールキットをインストールする

リポジトリをクローンし、そのディレクトリに移動して、分離したPython環境を作成・有効化し、指定された依存関係をインストールします。

git clone https://github.com/d4ncboz/auto-checkin.git
cd auto-checkin
python -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt

上記のコマンドはLinuxおよびmacOSのシェルで使用する有効化構文です。後述するcronの例でプロジェクトを実行する予定がある場合は、仮想環境をそのまま保持してください。

ステップ2: YesCaptchaクライアントキーを取得する

プロジェクトのYesCaptcha紹介リンクから登録し、メールアドレスでログインします。READMEによると、登録済みメールアドレスと紹介コードakS4rPを提示してTelegramのYesCaptchaサポートに連絡すると、1,500ポイントの無料ポイントを申請できます。

READMEでは、1,500ポイントで約750~1,500回のTurnstile解決が可能と見積もっています。実際の使用量はソルバーサービスによって異なります。

ポイントが付与されたら、YesCaptchaダッシュボードからclientKeyをコピーします。これをローカルのアカウント設定に追加します。

ステップ3: アカウント設定を作成する

付属のサンプルファイルをコピーします。

cp accounts.example.json accounts.json

accounts.jsonを開き、プレースホルダーをYesCaptchaキーと各プラットフォームの認証情報に置き換えます。対応するすべてのプロバイダーに1つずつアカウントを設定する場合は、次のようになります。

{
  "yescaptcha_key": "YOUR_YESCAPTCHA_CLIENT_KEY",
  "accounts": [
    {
      "platform": "gorouter",
      "name": "GoRouter_Account_1",
      "token": "YOUR_GOROUTER_ACCESS_TOKEN",
      "user_id": 12345
    },
    {
      "platform": "tabitoken",
      "name": "Tabi_Account_1",
      "token": "YOUR_TABI_ACCESS_TOKEN"
    },
    {
      "platform": "justwoker",
      "name": "JustDoWork_Account_1",
      "token": "YOUR_JUSTDOWORK_ACCESS_TOKEN"
    },
    {
      "platform": "seekai",
      "name": "SeekAI_Account_1",
      "token": "YOUR_SEEKAI_ACCESS_TOKEN"
    }
  ]
}

各フィールドについて

  • yescaptcha_keyには、YesCaptchaダッシュボードからコピーしたクライアントキーを指定します。
  • accountsは、スクリプトで処理するアカウントの一覧です。
  • platformは、例に示されている値を使用してプロバイダーを識別します。
  • nameは、設定済みアカウントを区別するためのわかりやすいラベルです。
  • tokenには、プロバイダーのアクセストークンを指定します。
  • user_idはGoRouterで必須であり、ダッシュボードのプロフィールに表示される数値IDでなければなりません。

使用するプロバイダーだけを設定したり、追加アカウント用の項目を増やしたりできます。同じオブジェクト構造を維持し、各項目に適切なプラットフォーム値を使用してください。

ステップ4: チェックインを実行する

仮想環境を有効化し、accounts.jsonを設定した状態で、次を実行します。

python checkin.py

設定されているすべてのアカウントに対して、チェックインを1回実行します。スケジュールを設定する前にコマンドを手動で実行し、無効なトークン、誤ったGoRouterのユーザーID、不正なJSON、またはYesCaptchaの設定問題を特定できるようにしてください。

ステップ5:毎日の実行をスケジュールする

cronを利用できるシステムでは、次のコマンドで、サーバーに設定されたタイムゾーンの午前11時に毎日実行されるジョブを登録できます。READMEでは想定スケジュールをWIBの午前11時と説明しているため、ホストのタイムゾーンがその想定と一致していることを確認してください。

(crontab -l 2>/dev/null; echo "0 11 * * * cd $(pwd) && .venv/bin/python checkin.py >> checkin.log 2>&1") | crontab -

このジョブは現在のプロジェクトディレクトリに移動し、.venv内のPythonインタープリターを呼び出して、標準出力とエラーをcheckin.logに追記します。

cronエントリを確認する

登録後、アクティブなcrontabを確認します:

crontab -l

最初のスケジュール実行後には、checkin.logも確認してください。これにより、cronがプロジェクトディレクトリ、仮想環境、設定ファイル、ネットワークにアクセスできることを確認できます。

高度な設定のヒント

プラットフォーム識別子を正確に使用する

プラットフォームの値は、例に示されているとおり正確に維持してください:gorouter、tabitoken、justwoker、seekai。設定名はすべてのプロバイダーの公開表示名と一致するわけではないため、正確にコピーすることでアカウントの誤ったルーティングを防げます。

GoRouter認証を再確認する

有効なGoRouterトークンだけでは不十分です。数値のuser_idはダッシュボードのプロフィールと一致している必要があります。プラットフォームはこの値をNew-Api-Userヘッダーで要求するためです。user_idを引用符付きの説明的なユーザー名として追加しないでください。

認証情報ファイルを保護する

accounts.jsonにはアクセストークンとYesCaptchaのクライアントキーが含まれています。非公開に保ち、コミットやログで公開せず、他のユーザーと共有するマシンではアクセスを制限してください。

自動化には安定したパスを使用する

提供されたコマンドは$(pwd)を展開するため、リポジトリ内でシェルを開いている状態でcronエントリを登録してください。後でリポジトリを移動した場合は、cronエントリを新しい場所に更新してください。

ログを定期的に確認する

提供されたcronコマンドは、実行のたびにcheckin.logへ追記します。このファイルで認証エラー、ソルバーの問題、プロバイダーの変更を確認し、通常のサーバーメンテナンスの一環としてサイズを管理してください。

AIエージェントとの統合

このリポジトリには、互換性のあるAIコーディングおよび自動化エージェントがプロジェクトを理解するためのコンテキストファイルが含まれています:

  • SKILL.mdは、Hermes AgentとOpenClawによる自律的なツール実行のコンテキストを提供します。
  • AGENTS.mdには、Claude Code、Cursor、Windsurf、Codex向けの指示が記載されています。
  • llms.txtは、LLMクローラーによる取り込み用の機械可読な仕様を提供します。

エージェントにツールキットの変更や実行を依頼する前に、これらのファイルを確認し、リポジトリ固有の指示に従えるようにしてください。

まとめ

Auto-Checkinは、4つのAIアグリゲーションプロバイダーに対する毎日のチェックインを、軽量なPythonワークフローに集約します。Pythonの依存関係、accounts.json、プラットフォームの認証情報、YesCaptchaを設定すれば、python checkin.pyですべてのアカウントをテストし、cronで無人の毎日実行を利用できます。生成されたログを監視し、すべての認証情報ファイルを安全に保管してください。

Auto-CheckinでAIの毎日のクォータ確認を自動化