mcpField
A
analytics-export

analytics-export

github.com/laurigatesデータ・データベース5951 回インストール1 日前に更新
リポジトリ

analytics-export について

`~/.claude-analytics` の分析データを外部での分析やレポート用にエクスポートするスキルです。JSON、CSV、Markdown形式に対応し、出力ファイルも指定できます。

主な機能

  1. 01分析データのエクスポート
  2. 02JSON、CSV、Markdown形式
  3. 03出力ファイルの指定

活用シーン

  1. 01表計算ソフトでの分析用データを準備
  2. 02Markdown形式の分析表を作成
  3. 03分析データをファイルに保存

インストール

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

$npx skills add https://github.com/laurigates/claude-plugins --skill analytics-export

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

詳細

/analytics:export

外部での分析やレポート作成に向けて、分析データをエクスポートします。

コンテキスト

分析データが利用可能か確認します。

ANALYTICS_DIR="${HOME}/.claude-analytics"
SUMMARY_FILE="${ANALYTICS_DIR}/summary.json"
EVENTS_FILE="${ANALYTICS_DIR}/events.jsonl"

if [[ ! -f "${SUMMARY_FILE}" ]]; then
  echo "No analytics data to export."
  exit 0
fi

TOTAL=$(cat "${SUMMARY_FILE}" | jq -r '.total_invocations')
echo "Exporting ${TOTAL} invocations..."

パラメーター

  • $ARGS - 形式と省略可能な出力ファイル:
    • json(デフォルト)- JSON としてエクスポートします
    • csv - スプレッドシートでの分析向けに CSV としてエクスポートします
    • markdown - Markdown テーブルとしてエクスポートします

実行

分析データをエクスポートします:

ANALYTICS_DIR="${HOME}/.claude-analytics"
SUMMARY_FILE="${ANALYTICS_DIR}/summary.json"
EVENTS_FILE="${ANALYTICS_DIR}/events.jsonl"

# Parse arguments
FORMAT=$(echo "${ARGS}" | awk '{print $1}')
OUTPUT_FILE=$(echo "${ARGS}" | awk '{print $2}')

FORMAT=${FORMAT:-json}

case "${FORMAT}" in
  json)
    if [[ -n "${OUTPUT_FILE}" ]]; then
      cat "${SUMMARY_FILE}" > "${OUTPUT_FILE}"
      echo "✓ Exported to: ${OUTPUT_FILE}"
    else
      echo "📦 Analytics Summary (JSON):"
      echo ""
      cat "${SUMMARY_FILE}" | jq '.'
    fi
    ;;

  csv)
    OUTPUT=${OUTPUT_FILE:-/dev/stdout}

    if [[ "${OUTPUT}" == "/dev/stdout" ]]; then
      echo "📦 Analytics Summary (CSV):"
      echo ""
    fi

    {
      echo "Name,Type,Count,Success,Failure,Success Rate,First Used,Last Used"
      cat "${SUMMARY_FILE}" | jq -r '
        .items |
        to_entries[] |
        [
          .key,
          .value.type,
          .value.count,
          .value.success,
          .value.failure,
          (.value.success * 100 / (.value.success + .value.failure)),
          .value.first_used,
          .value.last_used
        ] |
        @csv
      '
    } > "${OUTPUT}"

    if [[ "${OUTPUT}" != "/dev/stdout" ]]; then
      echo "✓ Exported to: ${OUTPUT}"
    fi
    ;;

  markdown)
    OUTPUT=${OUTPUT_FILE:-/dev/stdout}

    if [[ "${OUTPUT}" == "/dev/stdout" ]]; then
      echo "📦 Analytics Summary (Markdown):"
      echo ""
    fi

    {
      echo "# Command & Skill Analytics"
      echo ""
      TOTAL=$(cat "${SUMMARY_FILE}" | jq -r '.total_invocations')
      SINCE=$(cat "${SUMMARY_FILE}" | jq -r '.tracking_since')
      echo "**Total invocations:** ${TOTAL}"
      echo "**Tracking since:** ${SINCE}"
      echo ""

      echo "## Commands"
      echo ""
      echo "| Command | Uses | Success | Failure | Success Rate |"
      echo "|---------|------|---------|---------|--------------|"
      cat "${SUMMARY_FILE}" | jq -r '
        .items |
        to_entries[] |
        select(.value.type == "command") |
        "| \(.key) | \(.value.count) | \(.value.success) | \(.value.failure) | \((.value.success * 100 / (.value.success + .value.failure)) | floor)% |"
      ' | sort -t'|' -k2 -nr

      echo ""
      echo "## Skills"
      echo ""
      echo "| Skill | Uses | Success | Failure | Success Rate |"
      echo "|-------|------|---------|---------|--------------|"
      cat "${SUMMARY_FILE}" | jq -r '
        .items |
        to_entries[] |
        select(.value.type == "skill") |
        "| \(.key) | \(.value.count) | \(.value.success) | \(.value.failure) | \((.value.success * 100 / (.value.success + .value.failure)) | floor)% |"
      ' | sort -t'|' -k2 -nr
    } > "${OUTPUT}"

    if [[ "${OUTPUT}" != "/dev/stdout" ]]; then
      echo "✓ Exported to: ${OUTPUT}"
    fi
    ;;

  *)
    echo "❌ Unknown format: ${FORMAT}"
    echo ""
    echo "Supported formats:"
    echo "  • json     - JSON format"
    echo "  • csv      - CSV for spreadsheet import"
    echo "  • markdown - Markdown table"
    echo ""
    echo "Examples:"
    echo "  /analytics:export json"
    echo "  /analytics:export csv analytics.csv"
    echo "  /analytics:export markdown report.md"
    exit 1
    ;;
esac

echo ""
echo "💡 Tip: Raw event data is in ${EVENTS_FILE}"

後処理

ありません。

コメント