xs-arxiv
arXiv論文の検索・トレンド発見・詳細分析を行う統合スキル。興味度スコアでユーザーに刺さる論文を自動選定。PDF全文読み込み・Notion蓄積対応。「arXivチェックして」「論文検索」「論文分析して」で使用。
xangi 上で起きた事象(再投稿・cron が回らない・データ不整合・想定外の動作・エラー等)の調査・根本原因分析・横展開・報告を行い、明示依頼時にだけ修正する汎用スキル。「調査して」「原因調べて」「再発防止」「横展開して」「xangi-kaizen」「事象を分析して」で発動。
$ npx -y skills add karaage0703/ai-assistant-workspace --skill xs-xangi-kaizen --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/xs-xangi-kaizenContext preview
The summary Claude sees to decide when to auto-load this skill.
xangi 上で起きた事象(再投稿・cron が回らない・データ不整合・想定外の動作・エラー等)の調査・根本原因分析・横展開・報告を行い、明示依頼時にだけ修正する汎用スキル。「調査して」「原因調べて」「再発防止」「横展開して」「xangi-kaizen」「事象を分析して」で発動。
name: xs-xangi-kaizen description: xangi 上で起きた事象(再投稿・cron が回らない・データ不整合・想定外の動作・エラー等)の調査・根本原因分析・横展開・報告を行い、明示依頼時にだけ修正する汎用スキル。「調査して」「原因調べて」「再発防止」「横展開して」「xangi-kaizen」「事象を分析して」で発動。
AIアシスタントで起きた事象を調査し、根拠のある原因と対策を報告する。xangi固有のコマンドは、その環境で利用できる場合だけhelpを確認して使う。
スキルの背景・設計思想・参考文献は [README.md](./README.md) を参照。
1. **フェーズを飛ばさない** — 「事象整理」を飛ばすと検証ポイントを見失う。「横展開」を飛ばすと同じ事故を別箇所で繰り返す 2. **想定で終わらせず証拠で詰める** — 「たぶん」を提出物にしない。仮説 → 証拠(git log / reflog / mtime / 履歴出力) → 検証 3. **真因が特定できるまで実装に進まない** — 表面的な対症療法は再発の温床 4. **コードで推測する前に、事象が出た実際のターンのログを必ず開く** — とくに「変な応答が返った」「空だった」「想定と違う出力」系。コードを読んで fallback を見つけると「原因はこれ」と早合点しがちだが、それは「どこで出るか」であって「そのターンで実際に何が起きたか」ではない。先に Phase 2 で対象 bot の session log / tool-trajectory を開き、そのターンの生データを確定してから、コードで「なぜそうなったか」を辿る。
何が起きた / いつ / どこで(チャンネル・対象スキル)。事実を時系列で整理する。
**ステップ:**
1. 引用メッセージ・チャンネル履歴を取得して事象の輪郭をつかむ
xangi tool discord_history --count 30 xangi tool discord_history --channel <ID> --count 50
2. 関係するスキル名・cron スケジュール・関連ファイルを箇条書きで把握する 3. **過去事例(KEDB = Known Error Database)を必ず確認** — `[NOTES_DIR]` の過去 xangi-kaizen ノートを事象キーワードで grep
# xangi-kaizen タグの全事例 grep -rl '#xangi-kaizen' [NOTES_DIR] | sort # 対象スキル名・キーワードで絞り込み grep -rl '#<対象スキル名>' [NOTES_DIR] grep -rl 'state\|cron\|<キーワード>' [NOTES_DIR]/*xangi-kaizen* 2>/dev/null
ヒットした事例は中身を読む。似た症状だけで同因とせず、今回と過去の発生条件・ログ・変更点を比較してから対策の適用可否を判断する。
複数のソースを横断的に追う。一つの観点で結論を出さない。
**ステップ 0(重要): 調査対象 bot の workspace を特定する。** xangi は bot ごとに別 workspace・別プロセスで動く構成を取りうる。複数 bot を運用している場合、手元の workspace だけを見ても対象 bot の事象は写っていないことがある。
# Docker 運用の場合: bot がどのコンテナか確認
docker ps --format '{{.Names}}\t{{.Image}}'
# コンテナの workspace マウント元を確認
docker inspect <container> --format '{{range .Mounts}}{{.Source}} -> {{.Destination}}{{println}}{{end}}' | grep '/workspace'特定した `<bot-workspace>` 配下の `logs/sessions/` と `logs/tool-trajectory/` を見る。環境変数やチャンネル割り当ては各 bot の `.env` で確認する。
| 観点 | コマンド/対象 | |------|--------------| | state ファイル | `[STATE_DIR]/*_state.json`、`references/*_last_check.json` 等の中身と `stat -c "%y %n"` | | git 履歴 | `git log -p --all -- <path>`、`git show <commit>:<path>` | | git reflog | `git reflog --since=<時刻>`(ブランチ切替・rebase・reset の追跡) | | cron / schedule | `xangi tool schedule_list 2>&1 \| grep -B2 -A3 <キーワード>` | | セッションログ(生応答) | 対象 bot の `<bot-workspace>/logs/sessions/*.jsonl`。事象の出たチャンネル ID で `grep -rl <channelId>` → 該当ファイルの当該ターンを開き、assistant result を確認 | | tool-trajectory ログ | `<bot-workspace>/logs/tool-trajectory/*.jsonl`。tool search / loop / drift / stream buffer / cache などのイベントが時系列で残る | | 該当スクリプト/コード | `skills/<name>/scripts/`、または対象リポのソース。ログで事象を確定した後に「なぜそうなるか」を辿る | | 投稿履歴 | `xangi tool discord_history --channel <ID> --count 30` |
「これしか見ていない」状態で次フェーズに行かない。
**「なぜ」を最低3回掘る。** 誰が読んでも納得できる説明になるまで掘り続ける。
仮説 → 証拠 → 検証のサイクル。仮説が間違っていたら戻る。証拠が不足する場合は原因未確定として報告する。
patchが適用できない場合は、期待した本文と現ファイルを再比較する。表記差・読み取り後の変更・別hunkの失敗を区別し、mtime/hashや他プロセスの更新証拠がある場合だけ「競合」と報告する。
例:
「ここまで掘れば再発防止策が書ける」と思える深さまで掘る。一段で止まると対症療法になる。
応答内容系(変な出力・空・drift)はコードからの推測で終わらせない。「コードのこの fallback だ」で止めず、Phase 2 で開いた当該ターンの生ログと突き合わせて確定する。ログで確定するまでは報告に「ここは未確認の推測」と明示する。
同じパターンの他ファイル/問題を網羅検索する。1件直しても、別の場所で同じ事故が起きうる。
# ランタイム状態ファイル系を全部洗い出し
git ls-files | grep -iE "state|cache|last_check|cookie|credential|\.pid$"
# 巨大ログ系(リポジトリ肥大化のリスク)
git ls-files | xargs -I {} stat -c "%s %n" {} 2>/dev/null | sort -rn | head -20
# 最近書き換えられた tracked ファイル(書き換え頻度 + tracked = 罠)
git ls-files | xargs -I {} stat -c "%y %n" {} 2>/dev/null | sort -r | head -30事象の根本パターンに沿って検索クエリを組み立てる。「state ファイルが git ロールバックされた」が真因なら「他に git 管理されてる runtime state は無いか」を網羅する。
診断依頼なら原因・証拠・対策案・未確認事項を報告して完了する。変更依頼の場合だけ以下へ進む。
実装方針:
報告フォーマット:
詳細レポートは `[NOTES_DIR]` にタグ付きで保存する。事例は積み重ねていく(次回の調査で Phase 1 の KEDB として効く)。
---
title: <事象タイトル>
date: YYYY-MM-DD
type: incident
tags:
- xangi-kaizen
- incident
- <対象スキル名>
---過去事例を参照したいときは:
grep -rl '#xangi-kaizen' [NOTES_DIR] | sort
詳細経緯はノートや `knowledge/lessons_archive.md` に残し、繰り返し使う判断基準だけを短くAGENTS.mdへ反映する案を示す。調査だけの依頼で行動ルールを勝手に書き換えない。
xs-xangi-kaizen xangi-kaizen でこの事象を調査して 原因調べて 再発防止策を立てて 調査して、横展開もしてほしい 事象を分析して
AIコーディングツール(Claude Code / Codex CLI / Grok CLI など)を、継続的なパーソナルアシスタントとして使うためのスターターキットです。初回起動時に対話形式で設定を作り、以後はファイルに残した記憶・ルール・スキルを読みながら動きます。 xangi(Discord常駐型AIアシスタント)の推奨ワークスペースです。xangiと組み合わせることで、チャットからスキルを呼び出して日常タスクを自動化できます。
arXiv論文の検索・トレンド発見・詳細分析を行う統合スキル。興味度スコアでユーザーに刺さる論文を自動選定。PDF全文読み込み・Notion蓄積対応。「arXivチェックして」「論文検索」「論文分析して」で使用。
ワークスペース内の遠い知識や活動をつないで、新しいアイデアを生成する思考支援スキル。過去記事・メモ・発信資産から企画や実装ネタを出したい時に使用。「アイデア出して」「知識をつないで」「一見関係ないものをつないで」で使用。
カレンダー予定を確認するスキル。ICS(Googleカレンダー等)と手動追加(画像読み取り)を統合。「今日の予定」「明日の予定」「カレンダー画像送って」「スケジュール確認」で使用。`/calendar` で発動。
猫の写真を自動判定して猫日記を作成するスキル。写真を送ると猫かどうか判定し、猫ならNotion猫日記DBに自動保存。毎週ベストショットを選出。「猫日記」「ねこ日記」「猫写真」「今週のベストショット」で使用。
ソフトウェア開発タスクを進めるときの基本フロー。立ち上げ、ブランチ運用、実装、検証、PR作成、記録までを一気通貫で扱う。「実装して」「修正して」「PR作って」「コードを書く」「dev-workflow」で使用。