mcpField
G
groove-utilities-stats

groove-utilities-stats

github.com/andreadellacorte生産性6264 回インストール14 週間前に更新
リポジトリ

groove-utilities-stats について

groove-utilities-stats は、期間を指定してワークフローの状態を集計する読み取り専用スキルです。記録した学びと昇格、ログの実施状況、利用可能なデータソースのタスクやコミットをまとめます。

主な機能

  1. 01週、月、全期間のレポート
  2. 02学びの記録と昇格の指標
  3. 03日次ログの記録率と連続日数
  4. 04ロールアップの鮮度と評価の集計
  5. 05タスクとコミットの件数

活用シーン

  1. 01ワークフロー習慣の継続状況を確認
  2. 02学びの記録と昇格の推移を確認
  3. 03ログの記録率とロールアップの鮮度を点検
  4. 04タスクとコミットの進捗を集計

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/andreadellacorte/groove --skill groove-utilities-stats

インストール後、Claude Code で/groove-utilities-statsを入力して読み込まれたか確認します。

同梱ファイルscripts/stats.sh

詳細

groove-utilities-stats

期間を指定するには、$ARGUMENTS に week(デフォルト)、month、または all を指定します。

Bash による高速実行

このスキルには scripts/stats.sh の Bash スクリプトがあります。モデルを介さず高速に実行するには、直接実行してください。

bash .agents/skills/groove-utilities-stats/scripts/stats.sh week

($ARGUMENTS に合わせて week、month、または all を渡します。)スクリプトが 0 で終了した場合は、標準出力を報告して終了してください。以下の手順には進まないでください。0 以外で終了した場合は、Markdown の手順を続けてください(終了コード 3 はローカルの指標が出力されたものの、linear/github のタスク数を以下で計算する必要があることを意味します。終了コード 1 は .groove/ がないことを意味します)。

結果

対象期間の複合ループの健全性を数値化した、読み取り専用のダッシュボードが会話に出力されます。内容は、複合ファネル(記録した教訓と昇格した教訓の比較)、取り組み状況(日次ログのカバー率、連続記録、集計の鮮度、評価)、速度(タスクの未完了数/完了数、コミット数)です。ファイルは書き込まれません。「ワークフローは複利的に改善しているか/リズムを保てているか」という問いに答えるものです。定性的な傾向については、/groove-utilities-memory-retrospective を参照します。

受け入れ条件

  • 複合ファネルが表示される:記録した教訓(合計と期間内)、昇格した教訓(合計と期間内)、昇格率
  • 取り組み状況が表示される:直近の memory.review_days 営業日における日次ログのカバー率、現在の連続記録、週次/月次集計の鮮度、評価数と平均
  • 速度が表示される:タスクの未完了数/完了数(タスクバックエンドが設定されている場合)と期間内のコミット数
  • 出力先は会話のみで、何も書き込まれない
  • データソースがない場合は、エラーではなく、妥当な「n/a」/「NA」プレースホルダーで省略される

手順

(モデルによるフォールバックです。上記の Bash による高速実行では、同じ内容を決定的に処理します。同じ出力形式を再現してください。)

  1. メモリのパスは常に .groove/memory/ です。.groove/` がない場合は、インストール方法を案内して終了してください。

  2. .groove/index.md のフロントマターから、tasks.storage(バックエンド。旧キーは tasks.backend)と memory.review_days(デフォルトは 5)を読み取ります。

  3. $ARGUMENTS から日付範囲を決定します。week = 直近 7 日間、month = 直近 30 日間、all = 全期間です。開始日を <since> と呼びます。

  4. 複合ファネル:

    • 記録数:.groove/memory/learned/*.md 内の日付付きエントリー ## YYYY-MM-DD を数えます(signals.md は除外)。合計と、日付が <since> 以降のものを数えます。
    • 昇格数:同じファイル内の [graduated YYYY-MM-DD] マーカーを数えます。合計と、日付が <since> 以降のものを数えます。
    • 昇格率 = graduated_total / captured_total をパーセンテージで表示します(記録数が 0 の場合は n/a)。
  5. 取り組み状況:

    • 日次ログのカバー率:直近の review_days 営業日(月~金、今日まで)について、.groove/memory/daily/YYYY-MM-DD.md が存在する日数を数えます。
    • 連続記録:今日から遡って、日次ログが存在する直近の連続した営業日数を数えます。最初に欠けている日で止めます。
    • 集計の鮮度:現在または前週の .groove/memory/weekly/<ISO-year>-W<ISO-week>.md が存在すれば weekly は fresh、そうでなければ stale です。monthly も同様に .groove/memory/monthly/YYYY-MM.md を確認します。
    • 評価:.groove/memory/learned/signals.md の表の行(| YYYY-MM-DD | N/5 | note |)を解析し、日付が <since> 以降のものについて、件数と平均を報告します(3 件以上の場合は ▁▂▄▆█ のスパークラインも表示します)。
  6. 速度:

    • コミット:git log --oneline --since=<since> の件数。
    • タスク:tasks.storage に基づきます。
      • beans:未完了数 = beans list --json --no-status completed --no-status scrapped | jq length。完了数 = --status completed + --status scrapped。最善努力で、「Mistakes」/「Promises」エピック配下の終端状態ではない子の未完了数も数えます。
      • linear:Linear CLI/MCP を使用し、割り当てられた課題を未完了と完了に分類します。
      • github:gh issue list --assignee @me --state all を使い、課題を未完了とクローズ済みに分類します。
      • none:タスク数は省略し、コミット数のみ表示します。
  7. 以下の 出力形式 でダッシュボードを出力します。

出力形式

## Groove Stats — <period> (<start> to <today>)

### 🔁 Compound funnel
Lessons captured: <N> (<n> this <period>)   Graduated: <G> (<g> this <period>)
Graduation rate: <pct>

### 📿 Adherence
Daily logs: <x>/<review_days> business days   Streak: <s> days
Rollups: weekly <fresh|stale>, monthly <fresh|stale>
Ratings: <c> in period | avg <a>/5  <sparkline>

### 🚀 Velocity
Tasks: <open> open / <closed> closed   Commits: <k> in period
Open: <m> mistakes, <p> promises

_For qualitative patterns and learnings, run `/groove-utilities-memory-retrospective`._

制約

  • 読み取り専用です。ファイルには一切書き込みません(メモリ、AGENTS.md、設定ファイルも含みます)。
  • データソースが存在しない場合は、エラーにせず、n/a/NA の1行でスキップします。テーブルと日付は堅牢に解析します。
  • パスは .groove/memory/ の下にハードコードされており、設定できません。これは groove の他の部分と一貫しています。
  • このスキルは /groove-utilities-memory-retrospective(定性的な振り返り)を補完するものです。その内容を重複させず、相互リンクを付けてください。

コメント