원클릭으로
sync-slack
Slackから自分宛メンション・参加スレッド・主要チャンネルの最新情報を収集し、Obsidian vaultのsnapshot/slack.mdに書き出す
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
Slackから自分宛メンション・参加スレッド・主要チャンネルの最新情報を収集し、Obsidian vaultのsnapshot/slack.mdに書き出す
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
| name | sync-slack |
| description | Slackから自分宛メンション・参加スレッド・主要チャンネルの最新情報を収集し、Obsidian vaultのsnapshot/slack.mdに書き出す |
| user-invocable | true |
| argument-hint | (引数なし) |
| allowed-tools | ["Read","Write","Bash","Grep","Glob","ToolSearch","mcp__claude_ai_Slack__slack_read_user_profile","mcp__claude_ai_Slack__slack_read_channel","mcp__claude_ai_Slack__slack_read_thread","mcp__claude_ai_Slack__slack_search_channels","mcp__claude_ai_Slack__slack_search_users","mcp__claude_ai_Slack__slack_search_public_and_private"] |
Slackから最新情報を収集し、Obsidian vaultに書き出す。
{vault.path}/snapshot/{YYYY-MM-DD}/slack.mdリポジトリルートの config.yaml から設定を読み取る。
vault.path: 出力先の vault パスslack.watch_channels: ウォッチ対象チャンネル一覧(空配列ならスキップ)config.yaml を読み、vault.path と slack.watch_channels を取得する。
slack_read_user_profile (引数なし) で自分のプロフィールを取得し、user_id・表示名を確認する。
slack_search_public_and_private で直近7日間の自分宛メンションを検索する。
重要: to:me はDMにしかマッチしないため、チャンネル内メンションはステップ1で取得した user_id を使って <@{user_id}> で検索する。DMを除外するため channel_types を指定する。
query: "<@{user_id}>"
sort: "timestamp"
sort_dir: "desc"
after: {7日前のUnixタイムスタンプ}
limit: 20
include_context: true
channel_types: "public_channel,private_channel"
include_context: true にすることで、メンション前後のメッセージも取得し、どんな文脈でメンションされたかを把握する。
取得する情報:
slack_search_public_and_private で直近7日間の自分の発言を検索し、スレッドコンテキストを把握する。
query: "from:me is:thread"
sort: "timestamp"
sort_dir: "desc"
after: {7日前のUnixタイムスタンプ}
limit: 10
include_context: false
Watch Channels が設定されている場合のみ実行する。
各チャンネルについて:
slack_search_channels(query={チャンネル名}) でチャンネルIDを取得slack_read_channel(channel_id, limit={設定のlimit or 10}, response_format="concise") で最新メッセージを取得ステップ2で見つかったメンションのうち、スレッド内のもの(thread_ts を持つもの)について slack_read_thread で会話の流れを取得する。これにより、メンションされた背景・依頼内容・結論を正確に把握できる。
対象: スレッド内メンション全件(ただし上限10件)
channel_id: {チャンネルID}
message_ts: {スレッドの親メッセージts}
limit: 20
response_format: "concise"
ステップ2〜4で見つかったスレッドのうち、直近3日以内かつ返信が多いもの(上位5件、ステップ5で未取得のもの)について slack_read_thread で詳細を取得する。
ウォッチチャンネル内で reply_count が多いスレッドも対象に含める。
channel_id: {チャンネルID}
message_ts: {スレッドの親メッセージts}
limit: 20
response_format: "concise"
以下のフォーマットで {VAULT_PATH}/snapshot/{YYYY-MM-DD}/slack.md(日付は実行日) に上書きで書き出す。
---
source: slack
collected_at: {現在のISO-8601日時}
ttl: 7d
auto_generated: true
---
# Slack Snapshot
## Mentions
### {チャンネル名}
- **{送信者}** ({日時}): {メッセージ本文, max 200 chars}
- Context: {前後のメッセージから要約した背景・文脈, 1-2文}
- [thread]({SlackリンクURL}) — {返信数} replies
- Thread summary: {スレッド詳細が取得できた場合、会話の流れ・結論を要約}
### {チャンネル名}
- ...
## Watch Channels
### #{チャンネル名}
- **{送信者}** ({日時}): {メッセージ本文, max 200 chars}
- **{送信者}** ({日時}): {メッセージ本文, max 200 chars}
- [thread]({SlackリンクURL}) — {返信数} replies
- Thread: {スレッド詳細が取得できた場合、要点を1-2文で要約}
- ...
## Recognition
自分宛の感謝・評価メッセージを `#all-thank-you` 等の感謝チャンネルから抽出する。
ステップ2のメンション検索結果のうち、チャンネル名に `thank` を含むものをこのセクションに分類する。
Watch Channels に thank-you 系チャンネルがあればそこからも抽出する。
### #{チャンネル名}
- **{送信者}** ({日時}): {メッセージ本文}
- Context: {何に対する感謝・評価か}
---
## My Active Threads
### {チャンネル名}: {スレッド要約 (親メッセージ冒頭50文字)}
- Participants: {参加者リスト}
- Last activity: {最終返信日時}
- Summary:
- {直近の重要な返信を3件以内で要約}
## My Recent Messages
- **{チャンネル名}** ({日時}): {メッセージ本文, max 200 chars}
- ...
書き出し完了後、scripts/commit-vault.sh を実行して vault リポジトリにコミットする。
bash scripts/commit-vault.sh
config.yamlで指定されたNotionページを取得し、ページごとのカスタムpromptに従ってvaultに書き出す
Google Meet付きカレンダー予定の文字起こし・Geminiメモを取得し、議事録としてvaultに書き出す
daily/weekly/monthlyの振り返りを生成しjournal/に書き出す
日次の思考・感想・ふりかえりをvaultのjournal/timeline/に書き出す
sync-slack, sync-linear, sync-notion を並列実行し、snapshot を一括更新する
Claude セッションの生ログをサマライズして snapshot/claude-log.md に書き出す