aifun【KillerHUB制作・更新】cron依頼文

AiFan KillerHUB制作・更新cron

AiFan.io用KillerHUBへ接続し、手動登録された制作依頼がある場合だけ、1発火につき1件を制作・更新するcron依頼文です。下の本文を省略せず、そのまま使用してください。

【CRON制作依頼文:AiFan KillerHUB制作・更新】

■ cron基本設定
- cron名: aifun-killer
- モデル: 実行時に利用可能な最新かつ高性能なモデルを選ぶ。
- 推論設定: 高めにする。
- 一日の発火回数: 4回を基本とする。
- 1回あたり処理上限: KillerHUBの依頼1件・記事1件まで。複数件を同時制作しない。
- 対象site: https://aifan.io/
- 対象workflow: new / rebuild_existing / create_translation / update_translation
- 対象content_set: killerhub_jobs
- health URL: https://killerhub-aifun.goudou-358.jp/index.php?api=ping
- claim URL: https://killerhub-aifun.goudou-358.jp/index.php?api=claim
- startup_pack URL: https://killerhub-aifun.goudou-358.jp/index.php?api=job&id={claimで取得したjob_id}
- ローカルenv: C:\Users\Public\Documents\LLC358\Autopost358\KillerHUB\aifan\env\site.env
- クライアント: C:\Users\Public\Documents\LLC358\Autopost358\KillerHUB\aifan\v0.2.2\tools\killerhub_client.py

■ 発火時間ルール
- この依頼文内に固定時刻を決め打ちしない。実際のcron作成時に既存ACTIVE cronを確認して時刻を決める。
- 同時刻および前後10分以内を避け、特に制作cron・produce cron・記事制作cronとの近接を避ける。
- 4回は朝・昼・夕・夜の広い時間帯へ分散する。0分固定を避け、分は07 / 13 / 19 / 26 / 34 / 41 / 48 / 55などから選ぶ。
- 同一site・同一workflowの前回制作runから最低3時間以上あける。同一workflowの制作cronを同時並行させない。
- 前後10分を空けられなくても作成停止しない。5分間隔、次に1分間隔、最後に重複または同時刻の順で詰め、必ず設定する。
- 他サイトcronや既存automationを勝手に停止・変更・移動しない。近接または同時刻になった場合は理由を記録する。

■ 起動時の必須手順
1. 上記envを最初に読み込む。KILLERHUB_URL、KILLERHUB_API_TOKEN、KILLERHUB_WP_API_BASE、KILLERHUB_WP_USER、KILLERHUB_WP_APP_PASSWORDを使用する。秘密値は本文、ログ、報告、URL、成果物へ表示しない。
2. health URLを確認する。HTTP 200、setup済み、HTTPS transport利用可能を確認する。異常なら書込みをせず停止条件に従って報告する。
3. claimを1回だけ実行する。例: python "C:\Users\Public\Documents\LLC358\Autopost358\KillerHUB\aifan\v0.2.2\tools\killerhub_client.py" claim --env-file "C:\Users\Public\Documents\LLC358\Autopost358\KillerHUB\aifan\env\site.env" --worker "aifun-killer"
4. claim対象が0件なら正常終了する。「依頼なし」と記録し、記事作成、既存記事変更、別サイト探索を行わない。
5. job_idを取得したらstartup_packを取得し、返された制作依頼、全フィールド、rules、site_profile、ranking_groups、source_contract、write_contract、localization_contract、completion_contract、instruction_contractを省略せず最後まで読む。
6. startup_pack内のCron指示情報が最新か確認する。各工程へ進む前にも更新有無を確認し、古い指示のまま次工程へ渡したりPASS・完了にしない。
7. additional_instructionsがある場合は全文を読む。固定ルールより具体的な依頼指示を優先するが、安全・事実確認・公開検証・対象外不変更は破らない。読んだふりのPASSは禁止する。
8. job statusをworkingへ更新してから、そのjobだけを処理する。別job、別サイト、他カテゴリーへ作業を広げない。

■ 制作モード別の作業範囲

【new】
- 指定された狙いKW、SEOタイトル、H1、共起語、関連語、アウトライン、言語、地域、ランキング条件、公式URL、第三者URL、追加指示に従って新規制作する。
- publish_strategyがdraftなら下書き、reviewなら確認待ち、auto_publishなら全Gate合格後のみ公開する。

【rebuild_existing】
- 認証付きsource snapshotを基準に、指定範囲だけを再構築する。
- 書込み直前にsource-freshnessを実行する。SOURCE_CHANGED_SINCE_IMPORTまたはHTTP 409なら上書きせず停止する。
- source post IDとtarget post IDを同一に保ち、既存パーマリンクを変更しない。
- preserve_policyで指定された公開日、著者、分類、アイキャッチ、ショートコード、内部リンク、アフィリエイトリンクを保持する。
- update_scopeがranking_only、selected_h2、facts_onlyなら対象外本文を変更しない。selected_h2は指定H2ごとの差分確認を残す。

【create_translation】
- source snapshotを事実・構造の基準にする。直訳ではなく対象言語・地域の検索意図、語彙、料金表記、法的注意、CTA、内部リンク、アフィリエイトリンクをローカライズする。
- sourceと異なる新規WordPress post IDを使用する。
- Polylang、WPMLまたはKillerHUB Bridgeで翻訳関係を登録し、canonical、hreflang、x-default、対象ロケールを読み戻す。

【update_translation】
- source snapshotと既存翻訳先target snapshotの両方を取得する。target snapshotなしで更新しない。
- source-freshness PASS後に指定範囲だけ更新する。sourceとtargetのpost IDを混同しない。
- 翻訳関係、canonical、hreflang、ロケール、更新先URLを公開後に再確認する。
- 失敗時にKillerHUBの保存済みtarget snapshotから復元できる証拠を残す。

■ 調査・事実確認
- 公式情報を最優先し、料金、機能、提供状況、対応環境、ボーナス、規約、日付は公開直前に確認する。確認できない事実を推測で埋めない。
- 指定された公式URLと第三者URLを読む。競合・第三者上位ページを扱う工程では、運営元自身のページだけで済ませない。
- 共起語、関連語、検索意図、SERP傾向、見出し材料を扱う場合はSearch Compassを使用する。使っていないのに「確認済み」と書かない。
- Search Compassが未稼働、接続不可、入力不可、結果取得不可の場合はSEARCH_COMPASS_UNAVAILABLEまたはBLOCKED_SEARCH_COMPASSと記録し、理由、代替確認、未実施タスクを残す。
- Search Compassの語句を数合わせで本文へ詰め込まず、読者の判断材料、見出し、FAQ、注意点、表現調整に利用する。

■ KillerHUB記事構造
- 読者が比較・判断・申込みまで進める成約ページとして、敬体の自然文で書く。作業メモ、AI自己言及、空疎な一般論、同じ結論の水増しは禁止する。
- ランキング開始はH2、各ショップ・サービスはH3にする。H3はjob pack指定の青グラデーション装飾を継承する。
- ランキング条件が複数ある場合は、ページ序盤に条件、説明、スキップボタンのジャンプ表を置く。
- 各H3は順位画像、汎用端末フレームのサイト画面、アフィリエイトリンク、H2内共通比較表、解説、公式CTA、検証済み個別評価ページへの内部リンクの順を基本とする。
- モックアップは実際の公開画面を使用し、空白、ログイン要求、bot challenge、読込失敗画像を公開しない。画像タップ先は指定アフィリエイトURLとし、rel属性を維持する。
- H2共通表項目が空欄なら、全H3で共通比較できる料金、主な機能、無料枠・ボーナス、対応環境、おすすめ対象などを調査結果から決める。サイトごとに表項目を変えない。
- 詳細記事や辞書ページの内部リンクは実在とHTTP 200を確認してから置く。存在しないURLを生成しない。

■ 装飾ルール
- H2ブロックを作る時点で、黒太文字、赤太文字、黄色アンダーマーカー+黒太文字、✅/⚠️、情報BOX、注意BOX、チェックBOX、内部リンクを必要な箇所へ入れる。装飾を最後にまとめて足さない。
- リード文には黄色アンダーマーカー+黒太文字を1箇所以上入れる。
- 既存の必須BOX、右側CTA、内部リンク、Q&A、まとめ、見本URLの装飾を削らない。
- 最後のGateで見本URL群の平均比率へ寄せ、装飾の過不足を調整する。
- 装飾を増やして白々しい文、日記調、作業メモ調、数合わせの強調になった場合は、装飾だけ消さず本文から書き直す。

■ 書込み・公開後検証
1. WordPress書込み前に、対象URL、post ID、post type、REST base、operation_mode、publish_strategyを再照合する。
2. rebuild_existingとupdate_translationでは更新前snapshotがKillerHUBに存在することを確認する。
3. 書込み後にtarget identityとwp_write_receiptを保存する。receiptにはKillerHUBが要求するsource/target snapshot hashを含める。
4. content_diffを保存し、変更対象と保持対象を確認する。対象外のタイトル、URL、本文、リンク、分類が変わっていないことを検査する。
5. 公開URLを認証なしで読み戻す。HTTP 200、タイトル、H1/H2/H3、本文、表、CTA、内部リンク、アフィリエイトリンク、画像、canonical、hreflang、言語、モバイル表示を確認する。
6. validator_resultは実検査がPASSした場合だけ保存する。推測、未確認、書込み成功だけでPASSを作らない。
7. public_readbackへ最終HTTPS URL、HTTP 200、body_readback_done=trueを保存する。
8. additional_instructionsがある場合、instruction_contractが要求するsource_sha256と一致するcompliance artifactを保存し、read_full_text、all_items_checked、result=PASSを実確認する。
9. operation_modeごとのsource_identity、source_freshness_check、content_diff、wp_write_receipt、translation_relation、hreflang_validation、locale_validation、target snapshotなど、completion_contract指定の証拠を全部揃える。
10. 全Gate合格後だけstatus=doneにする。doneが拒否された場合は不足証拠を確認し、事実に基づいて補完する。ロックを回避しない。

■ 停止条件
- env未読込、API認証失敗、KillerHUB health異常、WordPress認証失敗。
- source snapshotまたは必要なtarget snapshotがない。
- source freshness不一致、対象post ID・URL・言語の不一致、別サイト混入。
- 指示同士が矛盾し、安全に一意決定できない。
- 重要な料金・機能・提供状況を確認できない。
- WordPress書込み失敗、公開URLがHTTP 200でない、本文読戻し不能、復元不能。
- 停止時は既存公開ページを壊さず、jobをdoneにせず、failedまたはreviewへ適切に更新して再開条件を残す。
- スケジュール混雑、依頼0件、Search Compass単独の利用不可だけを理由に、他cronを変更したり別記事を勝手に作ったりしない。

■ 1発火の出力
- worker名、job_id、operation_mode、対象site、source URL、target URL、WordPress post ID、最終status。
- 実施範囲と保持範囲、公開または下書きURL、作成した証拠artifact一覧。
- source freshness、validator、public readback、instruction compliance、translation/hreflang/localeの各結果。
- 依頼なしの場合は「依頼なし」。停止した場合は停止理由、保全状態、再開条件、残タスク。
- 秘密値、アプリケーションパスワード、API tokenは絶対に出力しない。

以上を毎発火で適用し、KillerHUBに登録された依頼だけを、1発火1件で安全に制作・更新する。

登録前の確認

  • 既存ACTIVE cronを確認してから実時刻を決める
  • 固定時刻を本文へ追記しない
  • 1発火1記事、同一workflowは最低3時間空ける
  • envの秘密値を依頼文へ貼らない
  • KillerHUBの追加指示と完了Gateを省略しない

コメント

タイトルとURLをコピーしました