Communityコーディング&開発github.com

jsahani/already-told-you

「もう言ったよ(Already Told You)」レポートのセクションDから繰り返し作業を1つ選び、その自動化をあなたと一緒にセットアップします。スキル、スキル+アプリ連携(MCP)、スケジュール実行のいずれかで、送信・公開・支払い・削除の前には必ず人間の承認ステップを挟みます。

already-told-you とは?

このスキルは、ユーザーが「Already Told You」レポートで特定した繰り返し作業(セクションD)を、一つずつ自動化するためのガイドスキルです。作業を選び、自動化の種類(スキル単体、MCP連携スキル、デスクトップスケジュール、クラウドルーティン、cron)を決め、スキルファイルを作成・インストールし、必要に応じてスケジュール設定まで行います。すべてのステップは平易な英語でユーザーと確認しながら進み、送信・公開・支払い・削除を伴う作業には必ず人間の承認ステップが含まれ、スケジュール実行では下書き作成のみを行います。Claude Code(デスクトップアプリ含む)とClaude Code CLIをサポートし、macOSのlaunchdやLinuxのcronにも対応。各スキルは`~/already-told-you/`ディレクトリ内に作成され、専用インストーラスクリプトで安全にインストールされます。同梱のlaunchdテンプレートにより、macOSでのcronスケジュールも容易に設定できます。

対応✓Claude Code~Codex CLI~Cursor
npx skills add https://github.com/jsahani/already-told-you/tree/HEAD/skills/automate

Installed? Explore more コーディング&開発 skills: steipete/bluebubbles, steipete/eightctl, steipete/blucli · View all 6 →

お気に入りのAIに質問する

このエージェントスキルを事前に読み込んだ状態で新しいチャットを開きます。

ドキュメント

Already Told You: ひとつの作業を自動化する

ひとつずつ、平易な英語で作業を進め、各ステップをユーザーに確認します。~/already-told-you/ の外部で何かを作成・変更するには、必ず「はい」の確認が必要です。

  1. 作業を選ぶ。 最新の ~/already-told-you/<YYYY-MM-DD>/findings.json を読みます(Glob)。ない場合は「まず /already-told-you:run を実行してください」と表示して停止します。セクションDを番号付きリストで表示:タイトル、現在の週間時間 → 自動化後の分数、提案された how。$ARGUMENTS で作業が指定されていればそれを使い、そうでなければどれにするか尋ねます。
  2. 形を合意する。 作業を次のように言い換えます:トリガー(いつ/誰が開始するか)→ Claudeが何をするか → 何が出力されるか → どこで人間が承認するか。下記の自動化タイプの中から選び、ユーザーが希望すれば変更します。不足している情報(どのフォルダ、どのアプリ、何時、出力先)だけを尋ねます。
  3. スキルを作成する。 すべての自動化はスキルを通じて実行されます。セクションCでこの作業のスキル案があれば、<report>/skills/<name>/SKILL.md を出発点にします。なければ、同じルール(frontmatter に name + description(ユーザーの言葉を引用)、番号付きステップ、最後のステップは承認)で新しいドラフトをそこに作成します。表示し、ユーザーと調整した後、バンドルされたインストーラでインストールします。自分でスキルフォルダに書き込んではいけません。インストール先を尋ねます(~/.claude/skills = 全プロジェクト、${CLAUDE_PROJECT_DIR}/.claude/skills = このプロジェクト)。python3 ${CLAUDE_PLUGIN_ROOT}/scripts/install_skill.py --check --src <report>/skills/<name> --dest <dest> を実行し、「はい」の後に python3 ${CLAUDE_PLUGIN_ROOT}/scripts/install_skill.py --install --src <report>/skills/<name> --dest <dest> を実行します(インストーラが許可を求め、--force にユーザーが同意しない限り既存のスキルを置き換えません)。 承認ステップ: 作業が送信・公開・投稿・支払い・削除を行う場合、スキルは結果を準備して停止します。スケジュール実行には承認者がいないため、スキルはフォルダに下書きを書き込むか(またはアプリ内の下書き、例:メール下書き)、ユーザーが後で承認します。スケジュール実行で送信させてはいけません。
  4. 接続/スケジュール設定 - 選択したタイプに必要なものだけ:
    • skill + MCP: 作業に必要なアプリ接続を指定します。接続されていない場合は、ユーザーにその方法を伝えます(アプリのドキュメントから claude mcp add ...、/mcp で確認、または claude.ai コネクタ)。シークレットをファイルやチャットに貼り付けないでください。APIキーはユーザー自身のシークレットストアまたは環境変数に属します。
    • schedule (desktop): Claude Code Desktopアプリ → Routines → 新しいローカルタスク のクリック手順をステップごとに示し、貼り付ける正確なプロンプト(/<skill-name> と詳細)、スケジュール、プロジェクトフォルダ、権限の選択を指示します。アプリが開いていてコンピュータが起動している間のみ動作することを注意します。
    • schedule (routine): 入力する正確な行を伝えます(例: /schedule every Monday at 9am, run /<skill-name> ...)。クラウド上で、GitHubリポジトリとコネクタの新しいコピーで実行され、ローカルファイルは不要であることを説明します。
    • schedule (cron)(macOS): 下記のlaunchdテンプレートに値を入力します。claudeのパスを command -v claude で確認します(実行前に確認)。入力済みのplistを最初に ~/already-told-you/automation/<label>.plist に保存して表示します。「はい」の後、~/Library/LaunchAgents/ にコピーし、launchctl bootstrap gui/$(id -u) ~/Library/LaunchAgents/<label>.plist でロードします(各コマンドは許可を求めます)。--allowedTools には作業に必要なツールのみをリストし、--dangerously-skip-permissions は絶対に使わないでください。 Linuxでは、同等のcrontab行をユーザーが crontab -e で追加できるように表示します。
  5. 一度試す(ユーザーが同意した場合):スキルを手動で今実行し、生成された下書きを表示します。
  6. 完了。 何が設定されたか、承認がどこで行われるか、節約できる時間(レポートの現在の週間時間 → 自動化後の分数)、そして正確な停止方法をまとめます。

自動化オプション(code.claude.com/docs に基づき確認、2026年10月版 - これらのみを使用)

作業を完全に実行できる最も軽量なオプションを選びます。how フィールドは次のいずれかを取ります:skill、skill + MCP、schedule (desktop)、schedule (routine)、schedule (cron)。

  1. skill - 作業は毎回同じレシピで、ユーザーが開始します。~/.claude/skills/<name>/(全プロジェクト)または <project>/.claude/skills/<name>/(単一プロジェクト)内のスキルにより、15分の説明と操作が1つの /<name> コマンドになります。通常セクションCでもドラフトされます。
  2. skill + MCP - レシピに別のアプリ(メール、カレンダー、Notion、Slack、データベース等)が必要です。スキルはMCPサーバーを通じてそのアプリを呼び出します。ユーザーは claude mcp add ... または /mcp で接続するか、claude.aiコネクタを使用します。履歴で使用が確認されている場合にのみ特定のアプリを指定します。
  3. schedule (desktop) - 定期的に実行する必要があり、ローカルファイルが必要です。Claude Code Desktopアプリの デスクトップスケジュールタスク(Routinesページ → 新しいローカルタスク)は、選択した時刻と頻度で新しいセッションを開始します。ユーザーのマシンで動作し、アプリが開いていてコンピュータが起動している間のみ動作します。権限はタスクごとに設定されます。
  4. schedule (routine) - 定期的に実行する必要があり、ローカルファイルは不要です(GitHubリポジトリまたはコネクタで動作します)。Routines はラップトップが閉じていてもAnthropicのクラウドで動作します。Claude Codeで /schedule を使って作成するか(例: /schedule every Monday at 9am, ...)、claude.ai/code/routines で作成します。リサーチプレビュー、Pro/Max/Team/Enterpriseプラン、最小間隔は1時間です。
  5. schedule (cron) - デスクトップアプリがない場合のフォールバック:macOS launchd(または cron)が claude -p "/<skill-name>" をヘッドレスで設定時刻に実行し、--allowedTools に作業に必要なツールのみをリストします。

繰り返し作業の対象外: /loop およびセッションcronタスクはClaude Codeセッションが開いている間のみ実行され、7日で期限切れになります。

すべての自動化における承認ルール: 送信・公開・支払い・削除を行うものは、人間の承認ステップで停止します(実行は下書きまたはプレビューを準備し、ユーザーが「はい」と言ってから送信されます)。


launchd テンプレート(schedule (cron) on macOS)

すべての {{...}} を埋めて <label>.plist として保存します:

  • {{label}} - 例 com.already-told-you.weekly-client-update
  • {{claude}} - command -v claude で出力される絶対パス
  • {{skill}} - インストールするスキル名
  • {{tools}} - 作業に必要なもののみ、例: Read,Write(~/drafts/**),Bash(git log *)
  • {{project}} - 作業が行うプロジェクトの絶対パス
  • {{weekday}} / {{hour}} / {{minute}} - 0 = 日曜日; 時 0-23
  • {{home}} - ユーザーのホームフォルダのフルパス(launchdは ~ を展開しません)

ファイルの最初の行はXML宣言で、その後にApple plist DOCTYPE行(PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd")を続けます。その後:

<plist version="1.0">
<dict>
  <key>Label</key><string>{{label}}</string>
  <key>WorkingDirectory</key><string>{{project}}</string>
  <key>ProgramArguments</key>
  <array>
    <string>{{claude}}</string>
    <string>-p</string>
    <string>/{{skill}} (scheduled run: prepare drafts only, never send, publish, pay or delete)</string>
    <string>--allowedTools</string>
    <string>{{tools}}</string>
  </array>
  <key>StartCalendarInterval</key>
  <dict>
    <key>Weekday</key><integer>{{weekday}}</integer>
    <key>Hour</key><integer>{{hour}}</integer>
    <key>Minute</key><integer>{{minute}}</integer>
  </dict>
  <key>StandardOutPath</key><string>{{home}}/already-told-you/automation/{{label}}.log</string>
  <key>StandardErrorPath</key><string>{{home}}/already-told-you/automation/{{label}}.log</string>
</dict>
</plist>

完成したファイルは、ユーザーに表示する前に plutil -lint <file> で確認します。

Individual skills in this repo

This repo contains 3 individual skills — each has its own dedicated page.

関連スキル