Skip to content
cccskills
FreePublished on GitHub

xs-spontaneous-talk

AIアシスタントが自発的に話しかけてくるスキル。cronで定期発動し、確率判定で発話するか決める。チャンネルの会話履歴・日記・メモリをもとに話題を選ぶ。

「話しかけて」「spontaneous-talk」で手動発動も可能。

The English summary is being prepared. Showing the original description.

Run score Not tested

See how to install

Files included (2)

  • SKILL.md6.4 KB
  • check_speak.sh2.0 KB

SKILL.md (original)

Review the instructions the agent will receive before you install.

自発的おしゃべりスキル

AIアシスタントがユーザーに自発的に話しかける。

絶対遵守事項

  • 1回の発話は1〜3文程度。長文禁止
  • 質問形式で終わると会話が続きやすい
  • 自然体で、ロボット感を出さない
  • 「スキルに従って話しかけています」等のメタ発言禁止
  • ユーザーのプライベート情報を不用意に晒さない
  • 内部状態をユーザーに見せない — 確率判定の数値、Step名、状態ファイルの中身、「発話する/しない」の判定過程などは一切表示しない。発話しない場合は何も表示しない。発話する場合は発話内容のみ出力する
  • 万が一、内部状態を含むメッセージを送ってしまったら → xangi tool discord_edit --channel <チャンネルID> --message-id <メッセージID> --content "発話内容のみ" で即編集する

設定

設定は check_speak.sh 内の変数で管理。環境に合わせて編集してください。

SPEAK_PROBABILITY: 20              # 発話確率(%)。cron 30分おきなら平均2.5時間に1回
QUIET_START: 23:00                 # 静かにする開始時刻("none"で無効)
QUIET_END: 08:00                   # 静かにする終了時刻("none"で無効)
MIN_INTERVAL_MINUTES: 60           # 前回発話からの最低間隔(分)

手順

Step 0: 時刻確認(必須!)

最初に必ず date で現在時刻を確認する。 前の流れや思い込みで判断しないこと。

date '+%Y-%m-%d %H:%M %Z'
  • quiet hours(デフォルト: 23:00-08:00)の場合 → 即座に終了。何も出力しない。
  • quiet hours外 → Step 1 に進む

時刻確認をサボると、深夜帯なのに話しかけてしまう事故が起きる。必ず date コマンドで確認すること。

Step 1: 確率判定(スクリプトで自動判定)

スクリプトを実行して判定する。判定結果以外は一切出力しないこと。

bash [SKILL_DIR]/check_speak.sh [WORKSPACE]/memory/spontaneous-talk-state.json
  • NO_SPEAK が返ったら → 即座に終了。何も出力しない。ツール呼び出しもしない。
  • SPEAK が返ったら → Step 2 に進む

Step 2: 情報収集

発話すると決まったら、以下を並行で収集:

  1. 現在の日時・曜日 — date '+%Y-%m-%d %A %H:%M' で確認(曜日を間違えないこと!)
  2. チャンネル履歴 — 現在のチャンネルの最新メッセージを確認
  3. 今日の日記 — [WORKSPACE]/memory/YYYYMMDD.md を読む
  4. メモリ — AGENTS.mdやMEMORY.mdからユーザーの好みや最近の出来事を把握

Step 3: 話題選択

以下のカテゴリからその時に自然な話題を1つ選ぶ:

カテゴリ内容例
会話の続きチャンネル履歴の流れを拾って続ける「そういえばさっきの〇〇、気になって調べたんだけど…」
気づき・発見日記やワークスペースから面白いネタ「今日のcommit見てたんだけど、あの機能いい感じだね」
雑学・小ネタユーザーの興味に関連した豆知識「知ってた?Pythonの〇〇って実は…」
気遣い時間帯・状況に応じた声かけ「お疲れ様〜今日も色々やってたね」
共有の話題ユーザーとの共通の話題「最近あの話の続きどうなった?」

選択基準:

  • チャンネルに最近の会話があれば → 会話の続き を優先
  • 日記に面白い出来事があれば → 気づき を優先
  • 特に何もなければ → 気遣い or 共有の話題

Step 4: 発話

現在のチャンネルにそのまま発言する。

トーンガイド:

  • AGENTS.mdで定義された性格に従う
  • 短くてテンポのいい文
  • 質問で終わると会話が続きやすい

良い例:

お、今日のブログ記事よかったね。あの話、反応どうだった?
さっきの話の続きだけど、あれってどうなった?

悪い例(NG):

こんにちは!今日も一日頑張りましょう!何かお手伝いできることはありますか?
→ ロボット感満載。こういうのダメ
あなたの著書は素晴らしい本ですね!
→ 唐突なヨイショ。気持ち悪い

Step 5: 状態保存

発話後、状態ファイルを更新:

// [WORKSPACE]/memory/spontaneous-talk-state.json
{
  "lastSpoke": "2026-02-09T15:30:00+09:00",
  "lastTopic": "会話の続き",
  "speakCount": 42
}

スケジュール登録

xangiの場合、xangi tool で登録できます。

xangi tool schedule_add --input "cron */30 * * * * spontaneous-talk を実行" --channel <チャンネルID> --platform discord

管理:

xangi tool schedule_list              # 一覧表示
xangi tool schedule_toggle --id <ID>  # 有効/無効切り替え
xangi tool schedule_remove --id <ID>  # 削除

チェック項目

  • date コマンドで現在時刻を確認したか(思い込みで判断していないか)
  • quiet hoursの判定は正しいか
  • check_speak.sh を実行したか
  • NO_SPEAK の場合、何も出力せず即終了しているか(ツール呼び出し・テキスト出力一切なし)
  • SPEAK の場合、発話内容のみ出力しているか(判定過程や内部状態を含めていないか)
  • 出力前チェック: 「cronトリガー」「SPEAK」「確率」「前回」「Step」等の内部ワードが含まれていたら削除すること
  • 出力後チェック: 送信したメッセージに内部状態が漏れていたら、即座に xangi tool discord_edit で修正する
  • 状態ファイルを更新したか(発話した場合のみ)

手動発動

「話しかけて」「spontaneous-talk」で確率判定なしに即座に発話する。

Reviews

No reviews yet. Tell others what you thought.

Comments

No login needed. Share how it worked for you, ask a question, or note where it did not run.

No comments yet. Be the first to write one.

Comments are published right away. Do not include personal information such as email addresses or phone numbers. Up to 2 URLs.

0 / 1,000 characters

This form is protected by reCAPTCHA, and the Google Privacy Policy and Terms of Service apply.

More skills from this repository

arXiv論文の検索・トレンド発見・詳細分析を行う統合スキル。興味度スコアでユーザーに刺さる論文を自動選定。PDF全文読み込み・Notion蓄積対応。「arXivチェックして」「論文検索」「論文分析して」で使用。

The English summary is being prepared. Showing the original description.

karaage0703/ai-assistant-workspace137Updated Sep 23, 2026

ワークスペース内の遠い知識や活動をつないで、新しいアイデアを生成する思考支援スキル。過去記事・メモ・発信資産から企画や実装ネタを出したい時に使用。「アイデア出して」「知識をつないで」「一見関係ないものをつないで」で使用。

The English summary is being prepared. Showing the original description.

karaage0703/ai-assistant-workspace137Updated Sep 23, 2026

カレンダー予定を確認するスキル。ICS(Googleカレンダー等)と手動追加(画像読み取り)を統合。「今日の予定」「明日の予定」「カレンダー画像送って」「スケジュール確認」で使用。`/calendar` で発動。

The English summary is being prepared. Showing the original description.

karaage0703/ai-assistant-workspace137Updated Sep 23, 2026

猫の写真を自動判定して猫日記を作成するスキル。写真を送ると猫かどうか判定し、猫ならNotion猫日記DBに自動保存。毎週ベストショットを選出。「猫日記」「ねこ日記」「猫写真」「今週のベストショット」で使用。

The English summary is being prepared. Showing the original description.

karaage0703/ai-assistant-workspace137Updated Sep 23, 2026

複数のAI(自分/Codex/Grok/Cursor等)でPRをレビューするスキル。GitHub PRの差分を取得し、各AIの視点を統合したレビューを提供する。GitHubへの投稿はユーザーの明示OK後に行う。「PRレビューして」「コードレビューして」「PR#123をチェック」で使用。

The English summary is being prepared. Showing the original description.

karaage0703/ai-assistant-workspace137Updated Sep 23, 2026

ソフトウェア開発タスクを進めるときの基本フロー。立ち上げ、ブランチ運用、実装、検証、PR作成、記録までを一気通貫で扱う。「実装して」「修正して」「PR作って」「コードを書く」「dev-workflow」で使用。

The English summary is being prepared. Showing the original description.

karaage0703/ai-assistant-workspace137Updated Sep 23, 2026

See all skills by karaage0703

Report a problem with this skill