원클릭으로
wrapup
Summarize the day's work and append to the daily note in Obsidian.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
Summarize the day's work and append to the daily note in Obsidian.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
Use when starting the workday. Conducts a scrum-style daily standup (Inspect prior day, Adapt today's plan against quarterly goals), gathering calendar / Gmail / Linear / Obsidian context and creating today's Obsidian daily note.
日次セルフコーチングの問いを1つだけ投げ、回答を coaching/log.md に append する。/today と /wrapup の末尾から呼び出される。引数 morning|evening で時間帯を切り替える。
月次セルフコーチング。過去30日のdaily note・coaching/log.md・過去4〜5週分のcoaching/weeklyから繰り返しテーマを3つ抽出し、深い問いで掘り下げる。結果はcoaching/monthly/YYYY-MM.mdに保存する。月初60分想定。
週次セルフコーチング。過去7日のdaily noteとcoaching/log.mdから観察を抽出し、Sir John WhitmoreのGROW(Goal/Reality/Options/Will)で対話する。結果はcoaching/weekly/YYYY-Wnn.mdに保存する。週末(日曜夜想定)に20〜30分で回す。
Cross-model PR review. Claude Code and Cursor review a PR alternately on a shared Obsidian document, rallying until issues converge or disagreements are documented for human decision.
End-of-day review command that helps reflect on the day's work and prepare for tomorrow.
SOC 직업 분류 기준
| name | wrapup |
| description | Summarize the day's work and append to the daily note in Obsidian. |
| argument-hint | [date] |
| disable-model-invocation | true |
Summarize the day's work and append to the daily note in Obsidian.
タスク管理は Things3 から手離れさせているため、/wrapup でも Things3 は読み書きしない。代わりに Linear で「今日自分が更新した Issue」を取得してサマリーに含める。
/wrapup [date]
Examples:
/wrapup # Today's daily note
/wrapup yesterday # Yesterday's daily note
/wrapup 2026-02-05 # Specific date
Parse the argument to determine which daily note to update:
yesterday → yesterday's dateYYYY-MM-DD → specified dateUse mcp__google-calendar__get-current-time to get the current date for reference.
Check if the target daily note exists:
Read: /Users/asonas/Documents/asonas/daily/YYYY-MM-DD.md
If it doesn't exist, ask the user whether to (a) create today's note and append, (b) append to yesterday's note instead, or (c) abort.
メインスレッドが持っている session context は「今 /wrapup を回しているこの 1 セッション」の範囲でしかない。asonas は 1 日のうちに複数のリポジトリ・複数のセッションを跨いで作業するため、現在セッションのコンテキストだけでは当日の作業を取りこぼす。そこで外部情報は 2 つの Sonnet サブエージェントを並列で 取りに行く。どちらも model: "sonnet" の Agent tool で、Step 3a と Step 3b を 同時に 起動する。
メインスレッドはこの 2 つの subagent 起動と同時に Step 4 (現在 session context からのサマリー組み立て) を進めてよい。3 者の結果は Step 4 で統合する。
プロンプト要旨:
あなたは asonas が今日 Linear で更新した Issue を抽出する任務を持つ。
対象日は YYYY-MM-DD (Step 1 で確定した日付)。
1. mcp__claude_ai_Linear__get_user で自分(viewer)の user_id を取得
2. mcp__claude_ai_Linear__list_issues で以下を取得:
- assignee=自分、updatedAt が対象日のもの
- 加えて、自分がコメント/編集した Issue があれば(API で取れる範囲で)含める
3. 出力フォーマット:
## 今日更新したLinear Issue
- [TEAM-123] タイトル — status: started / updatedAt: HH:MM
- ...
該当なしなら "該当なし" を返す。
Linear MCP が認証されていない場合は "Linear未認証" を返す。
推測は禁止。MCP の応答に無いフィールドを捏造しないこと。
当日 asonas が回した Claude Code セッションを全プロジェクト横断で拾い、プロジェクト別の作業サマリーを返す。セッションを跨いだ作業を取りこぼさないための中核ステップ。
プロンプト要旨:
あなたは asonas が今日 Claude Code で行った作業を全プロジェクト横断でまとめる任務を持つ。
対象日は YYYY-MM-DD (Step 1 で確定した日付)。
1. まず ToolSearch で cman のツールをロードする
(query 例: "select:mcp__plugin_cman_cman__list_sessions,mcp__plugin_cman_cman__search_sessions")
2. mcp__plugin_cman_cman__list_sessions (limit=60 程度) で直近セッションを列挙する。
各エントリの相対時刻 ("X hours ago" 等) と対象日を突き合わせ、対象日のセッションだけを対象にする。
3. 次のセッションは除外する:
- `agent-*` で始まるサブエージェントのセッション (実作業の主体ではない)
- 最初のメッセージが "Base directory for this skill: .../commit" の /commit スキル単独セッション
- 最初のメッセージが /wrapup や /today など日報運用スキル自体のセッション
4. 残った各セッションについて、何をしたのかを把握する。セッションタイトル(最初のユーザーメッセージ)
だけでは着手した話題しか分からないので、成果まで書くには中身の確認が要る。必要に応じて
mcp__plugin_cman_cman__search_sessions を keyword=対象日付 や keyword=プロジェクト固有語 で叩き、
マッチしたスニペットから「実際に何が完了/前進したか」を読み取る。
確認しても成果が判然としないセッションは、成果を捏造せず「〜に着手」「〜を調査」など
着手した作業内容として記述する (推測で完了扱いにしない)。
5. 出力フォーマット (プロジェクトごとにまとめ、時系列がわかる場合は時刻を添える):
## 今日のセッション横断サマリー
### <リポジトリ名 / プロジェクト名>
- HH:MM 内容 (成果 or 着手した作業)
- ...
### <別のリポジトリ>
- ...
対象日のセッションが無ければ "該当なし" を返す。
cman が使えない (ツール未ロード・エラー) 場合は "cman利用不可" を返す。
推測は禁止。セッションに実在しない成果を書かないこと。リポジトリ名・Issue番号は実データに従う。
返ってきたサマリーは、現在 session context と重なる部分がある(まさに今のセッションも含まれる)。Step 4 で重複を排除して統合する。
メインスレッドで以下のソースから「やったこと」のドラフトを組み立てる。
From Step 3b (cman-sessions subagent) — 当日全体の網羅ソース
cman:cm-search を keyword=対象日付 で直接叩くFrom the current session context — 深さの補強
From Claude Code auto memory(永続メモリ)
From Step 3a (linear-today subagent)
[[TEAM-XXX]] の wikilink 付きで言及情報の統合
Show the user what will be added:
## ログに追記予定
- HH:MM カテゴリ: 内容
- HH:MM カテゴリ: 内容
- ...
## 今日更新したLinear Issue
- [TEAM-123] タイトル
- ...
この内容でよろしいですか?
Wait for user confirmation or edits.
After confirmation, append under the ## ログ heading. 公式CLIはheading指定のinsertに対応していないため、Vaultの実ファイルをReadツールで読んでEditツールで挿入する。
ログのフォーマット:
- HH:MM <カテゴリ>: <内容> 形式実装 / 調査 / レビュー / MTG / 学び / その他- <カテゴリ>: <内容> でよい[[TEAM-XXX]], [[asonas/foo]]) で記述してよい# Read tool:
Read: /Users/asonas/Documents/asonas/daily/YYYY-MM-DD.md
# Edit tool: "## ログ" セクション末尾に追記
# old_string: "## ログ\n" (空セクションの場合) または既存ログ末尾の一意なスニペット
# new_string: "## ログ\n\n- HH:MM 実装: ...\n- HH:MM レビュー: ...\n"
注意:
## ログ セクションに既存のエントリがある場合は、その末尾に時系列順で追記する# YYYY-MM-DD 等のh1ヘッディングを絶対に追加しないこと。ファイル名がObsidian上のタイトルになるため重複する## やったこと セクションは廃止した。古い daily note にこのセクションが残っていても新規追記はしないasonas が自分で書いたテキストソース (Bluesky 投稿、Scrapbox ページ) を取得し、activities/YYYY-MM-DD.md の各セクションに反映する。/wiki-update がこのファイルを後段でソースとして読むため、wiki 化前に実行する。
cd /Users/asonas/ghq/github.com/asonas/activities
mise exec -- bundle exec bin/activities-snapshot --source bluesky --source scrapbox --date YYYY-MM-DD || echo "Warning: snapshot failed, skipping"
/wrapup を一日の終わりに回す前提なので、当日分だけ再描画すれば足りる (前日分は朝の /today 5b でカバーされている)。
なぜ --source で絞るか: github / browser / claude_code の3ソースは ~/Library/LaunchAgents/asonas.activities.{github,browser,claude}.plist の launchd ジョブが 15〜60 分間隔で常時バックグラウンド収集しており、当日分の activities ファイルは常に最新化されている。/wrapup から重複して走らせると同じ state ファイルを並行書き込みするリスクがあるため、launchd でカバーされていない bluesky と scrapbox だけを明示的に拾う。
activities-snapshot は collect + render を1コマンドで実行する薄いラッパで、各スキル (today / wrapup / tempest909-draft) から共通利用される。
daily note への追記が完了したら、/wiki-update スキルを ingest <target-date> モードで呼び出し、当日の daily note と activities ファイルから固有名詞・概念を抽出して wiki/ 配下のページに統合する。ユーザへの確認は不要。
Skill(wiki-update, args: "ingest <YYYY-MM-DD>")
<YYYY-MM-DD> は Step 1 で確定した対象日。today 引数で wrapup を起動した場合は ingest today でもよい。
wiki ingest のあとで、Alfred の qmd 検索(ws/wsq、/Users/asonas/workspace/qmd-alfred/)が最新の vault を引けるよう、qmd のインデックスを更新する。差分インデックスのため低コスト。失敗してもワークフロー全体は止めない(警告のみ)。collection asonas が未登録なら(command -v qmd も含め)スキップしてよい。
qmd update && qmd embed 2>&1 | tail -3 || echo "Warning: qmd reindex failed, skipping"
Report to the user:
daily/YYYY-MM-DD.md の「ログ」セクションに追記しました。
wiki/ を更新しました(更新 N ページ、新規 M ページ)。
今日更新したLinear Issue: N件
- [TEAM-XXX] タイトル
- ...
Linear が「該当なし」または「未認証」だった場合はその旨を 1 行で報告する。
完了報告のあとで、coach-daily-question スキルを evening 引数で呼び出す。
Skill(coach-daily-question, args: "evening")
このスキル内ではコーチング縛り(解決策禁止、観察と問いのみ)に従う。回答が coaching/log.md に追記されたら /wrapup 全体が終了する。
ユーザーが「今日はコーチングはスキップで」等を事前に明言している場合のみ、このステップを省略してよい。なお、過去30日の節目(月初)であれば、夜の問いではなく /coach-monthly を回すのが望ましい旨を1行だけ提案してよい(提案であって押し付けではない)。
Always respond in Japanese.
## ログ section doesn't exist (古いテンプレで作られた daily note の場合), create it at the end of the file before appending- HH:MM <カテゴリ>: <内容> format consistently/wrapup では Things3 を読まない・書かない・残タスクを表示しない