analytics-export について
`~/.claude-analytics` の分析データを外部での分析やレポート用にエクスポートするスキルです。JSON、CSV、Markdown形式に対応し、出力ファイルも指定できます。
主な機能
- 01分析データのエクスポート
- 02JSON、CSV、Markdown形式
- 03出力ファイルの指定
活用シーン
- 01表計算ソフトでの分析用データを準備
- 02Markdown形式の分析表を作成
- 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}"
後処理
ありません。
コメント
Markdown 対応