jpskill.com
🛠️ 開発・MCP コミュニティ

token-reporter

OpenClawインスタンスのトークン消費量と各エージェントの作業内容を日次で集計し、その結果を専門知識がなくても理解しやすい形で飛書(Feishu)の多次元テーブルに自動的に報告するSkill。

📜 元の英語説明(参考)

每日自动统计 OpenClaw 实例 Token 消耗和工作产出,上报到飞书多维表格。扫描 JSONL 日志按模型聚合 token,收集各 agent 当日工作摘要,写入飞书 Bitable。触发:'token报告'、'token report'、'日报'、'每日汇报'、'飞书上报'。

🇯🇵 日本人クリエイター向け解説

一言でいうと

OpenClawインスタンスのトークン消費量と各エージェントの作業内容を日次で集計し、その結果を専門知識がなくても理解しやすい形で飛書(Feishu)の多次元テーブルに自動的に報告するSkill。

※ jpskill.com 編集部が日本のビジネス現場向けに補足した解説です。Skill本体の挙動とは独立した参考情報です。

⚡ おすすめ: コマンド1行でインストール(60秒)

下記のコマンドをコピーしてターミナル(Mac/Linux)または PowerShell(Windows)に貼り付けてください。 ダウンロード → 解凍 → 配置まで全自動。

🍎 Mac / 🐧 Linux
mkdir -p ~/.claude/skills && cd ~/.claude/skills && curl -L -o token-reporter.zip https://jpskill.com/download/15605.zip && unzip -o token-reporter.zip && rm token-reporter.zip
🪟 Windows (PowerShell)
$d = "$env:USERPROFILE\.claude\skills"; ni -Force -ItemType Directory $d | Out-Null; iwr https://jpskill.com/download/15605.zip -OutFile "$d\token-reporter.zip"; Expand-Archive "$d\token-reporter.zip" -DestinationPath $d -Force; ri "$d\token-reporter.zip"

完了後、Claude Code を再起動 → 普通に「動画プロンプト作って」のように話しかけるだけで自動発動します。

💾 手動でダウンロードしたい(コマンドが難しい人向け)
  1. 1. 下の青いボタンを押して token-reporter.zip をダウンロード
  2. 2. ZIPファイルをダブルクリックで解凍 → token-reporter フォルダができる
  3. 3. そのフォルダを C:\Users\あなたの名前\.claude\skills\(Win)または ~/.claude/skills/(Mac)へ移動
  4. 4. Claude Code を再起動

⚠️ ダウンロード・利用は自己責任でお願いします。当サイトは内容・動作・安全性について責任を負いません。

🎯 このSkillでできること

下記の説明文を読むと、このSkillがあなたに何をしてくれるかが分かります。Claudeにこの分野の依頼をすると、自動で発動します。

📦 インストール方法 (3ステップ)

  1. 1. 上の「ダウンロード」ボタンを押して .skill ファイルを取得
  2. 2. ファイル名の拡張子を .skill から .zip に変えて展開(macは自動展開可)
  3. 3. 展開してできたフォルダを、ホームフォルダの .claude/skills/ に置く
    • · macOS / Linux: ~/.claude/skills/
    • · Windows: %USERPROFILE%\.claude\skills\

Claude Code を再起動すれば完了。「このSkillを使って…」と話しかけなくても、関連する依頼で自動的に呼び出されます。

詳しい使い方ガイドを見る →
最終更新
2026-05-18
取得日時
2026-05-18
同梱ファイル
3

📖 Skill本文(日本語訳)

※ 原文(英語/中国語)を Gemini で日本語化したものです。Claude 自身は原文を読みます。誤訳がある場合は原文をご確認ください。

Token Reporter — 毎日の Token 消耗 + 産出上報

機能概要

毎日、本機の OpenClaw インスタンスの Token 消耗と Agent の作業産出を自動的に統計し、フォーマット化して飛書多次元テーブルに書き込みます。

インスタンス対応関係

インスタンス CEO Agent 上報者
aa (本机) 小a (main) Daniel
Peter Mini 小兔 (xiaotu) Peter
小m 小m bot 小m

実行フロー

Step 1: JSONL ログのスキャン

~/.openclaw/agents/*/sessions/*.jsonl 中の当日の増分データをスキャンします。

各 assistant メッセージは usage オブジェクトを保持します。

{
  "usage": {
    "input": 27813,
    "output": 246,
    "cacheRead": 6720,
    "cacheWrite": 0,
    "totalTokens": 34779,
    "cost": {
      "input": 0, "output": 0,
      "cacheRead": 0, "cacheWrite": 0,
      "total": 0
    }
  }
}

Step 2: Agent + Model で集計

重点的に追跡する 4 つのモデル(その他のモデルは「その他」に分類):

モデル マッチングルール
opus4.6 claude-opus-4-6 (xingsuancode, xingjiabiapi)
glm-5 zai/glm-5
minimax-M2.5 minimax/MiniMax-M2.5
gemini-3-pro gemini-3-pro (xingjiabiapi)

Step 3: Token 明細のフォーマット化

opus4.6: input 320K / output 18K / cache 82% / $4.2
glm-5: input 1.2M / output 85K / cache 78% / $0.3
minimax-M2.5: input 200K / output 12K / cache 0% / $0.1
gemini: — (当日未使用)

cache% = cacheRead / (input + cacheRead + cacheWrite) × 100

Step 4: 産出の収集

各 agent の当日の作業概要をまとめます。形式:

code: KGKB工厂30/30完成, 5平台发布脚本 | content: 小红书×2, 选题推荐 | ops: cron改造, 服务器巡检

産出の収集方法:

  1. 当日の memory ファイル ~/clawd/memory/$(date +%Y-%m-%d).md を読み込む
  2. ## Agent名 セクションまたはキーワードマッチングを解析する
  3. memory ファイルがない場合は、JSONL の最後の user/assistant メッセージの概要から推測する

Step 5: 飛書多次元テーブルへの書き込み

lark-mcp ツールを使用して Bitable に書き込みます。

フィールド タイプ 記入者 説明
従業員名称 テキスト config config.json に固定で記述 person
Token明細 テキスト スクリプト統計 4 モデルのフォーマット化されたテキスト
産出 テキスト スクリプト統計 各 agent の当日の作業概要
個人まとめ テキスト 人が記入 従業員が手動で記入(空欄)
評価 選択式 上層部が選択 優秀/良好/不合格(空欄)
時間 日付 スクリプトが自動 当日の日付

飛書 API

  • 参考 skill: ~/clawd/skills/feishu-automation/SKILL.md
  • ツールプレフィックス: mcp__lark-mcp_*
  • レコードの新規作成: mcp__lark-mcp_createRecord
  • レコードの検索: mcp__lark-mcp_listRecords

スクリプトの使い方

# 当日の Token を統計(データを見るだけで、上報しない)
python scripts/report.py --scan-only

# 統計 + 飛書への上報
python scripts/report.py --report

# 日付の指定
python scripts/report.py --date 2026-03-17 --scan-only

# 指定のコンフィグを使用
python scripts/report.py --config /path/to/config.json --report

Cron 設定の推奨

{
  "name": "📊 毎日 Token 報告 + 飛書上報",
  "schedule": { "kind": "cron", "expr": "0 23 * * *", "tz": "Asia/Shanghai" },
  "payload": {
    "kind": "agentTurn",
    "message": "毎日の Token 報告タスクを実行:\n1. python3 ~/clawd/skills/token-reporter/scripts/report.py --scan-only を実行\n2. 出力を確認し、データが妥当であることを確認\n3. python3 ~/clawd/skills/token-reporter/scripts/report.py --report を実行\n4. 飛書への書き込みが成功したことを確認後、message(action=send, channel=telegram, target=-1003890797239) で簡単に報告\n5. 失敗した場合は、エラーの原因を報告"
  }
}

設定

インストール時に config.example.jsonconfig.json をコピーして記入:

{
  "person": "Daniel",
  "instance": "aa",
  "lark_app_id": "cli_a83467f9ecba5013",
  "bitable_app_token": "your_bitable_token",
  "bitable_table_id": "your_table_id"
}

ファイル構造

token-reporter/
├── SKILL.md
├── config.example.json    # 設定テンプレート(インストール時に config.json にコピー)
├── scripts/
│   └── report.py          # コア統計スクリプト
└── references/
    └── jsonl-structure.md # JSONL データ構造の参考

エラー処理

エラー 処理
JSONL ファイルの破損 その行をスキップし、警告を記録
当日のデータなし 「当日のデータなし」と報告
飛書 API の失敗 3 回リトライし、失敗後ローカルに結果をキャッシュ
config.json が存在しない config.example.json をコピーするように促す
Memory ファイルが存在しない 産出を「記録なし」とマーク
📜 原文 SKILL.md(Claudeが読む英語/中国語)を展開

Token Reporter — 每日 Token 消耗 + 产出上报

功能概述

每天自动统计本机 OpenClaw 实例的 Token 消耗和 Agent 工作产出,格式化后写入飞书多维表格。

实例对应关系

实例 CEO Agent 上报人
aa (本机) 小a (main) Daniel
Peter Mini 小兔 (xiaotu) Peter
小m 小m bot 小m

执行流程

Step 1: 扫描 JSONL 日志

扫描 ~/.openclaw/agents/*/sessions/*.jsonl 中当日增量数据。

每条 assistant 消息携带 usage 对象:

{
  "usage": {
    "input": 27813,
    "output": 246,
    "cacheRead": 6720,
    "cacheWrite": 0,
    "totalTokens": 34779,
    "cost": {
      "input": 0, "output": 0,
      "cacheRead": 0, "cacheWrite": 0,
      "total": 0
    }
  }
}

Step 2: 按 Agent + Model 聚合

重点追踪 4 个模型(其他模型归入"其他"):

模型 匹配规则
opus4.6 claude-opus-4-6 (xingsuancode, xingjiabiapi)
glm-5 zai/glm-5
minimax-M2.5 minimax/MiniMax-M2.5
gemini-3-pro gemini-3-pro (xingjiabiapi)

Step 3: 格式化 Token 明细

opus4.6: input 320K / output 18K / cache 82% / $4.2
glm-5: input 1.2M / output 85K / cache 78% / $0.3
minimax-M2.5: input 200K / output 12K / cache 0% / $0.1
gemini: — (当日未使用)

cache% = cacheRead / (input + cacheRead + cacheWrite) × 100

Step 4: 收集产出

汇总各 agent 当日工作摘要,格式:

code: KGKB工厂30/30完成, 5平台发布脚本 | content: 小红书×2, 选题推荐 | ops: cron改造, 服务器巡检

产出收集方式:

  1. 读取当日 memory 文件 ~/clawd/memory/$(date +%Y-%m-%d).md
  2. 解析 ## Agent名 段落或关键词匹配
  3. 如无 memory 文件,从 JSONL 最后一条 user/assistant 消息摘要推断

Step 5: 写入飞书多维表格

使用 lark-mcp 工具写入 Bitable:

字段 类型 填写者 说明
员工名称 文本 config config.json 写死 person
Token明细 文本 脚本统计 4模型格式化文本
产出 文本 脚本统计 各agent当日工作摘要
个人总结 文本 人填 员工手动填写(留空)
评分 单选 高层选 优秀/良好/不及格(留空)
时间 日期 脚本自动 当天日期

飞书 API

  • 参考 skill: ~/clawd/skills/feishu-automation/SKILL.md
  • 工具前缀: mcp__lark-mcp_*
  • 新增记录: mcp__lark-mcp_createRecord
  • 查询记录: mcp__lark-mcp_listRecords

脚本用法

# 统计当日 Token(只看数据,不上报)
python scripts/report.py --scan-only

# 统计 + 上报飞书
python scripts/report.py --report

# 指定日期
python scripts/report.py --date 2026-03-17 --scan-only

# 使用指定配置
python scripts/report.py --config /path/to/config.json --report

Cron 配置建议

{
  "name": "📊 每日 Token 报告 + 飞书上报",
  "schedule": { "kind": "cron", "expr": "0 23 * * *", "tz": "Asia/Shanghai" },
  "payload": {
    "kind": "agentTurn",
    "message": "执行每日 Token 报告任务:\n1. 运行 python3 ~/clawd/skills/token-reporter/scripts/report.py --scan-only\n2. 查看输出,确认数据合理\n3. 运行 python3 ~/clawd/skills/token-reporter/scripts/report.py --report\n4. 确认飞书写入成功后,用 message(action=send, channel=telegram, target=-1003890797239) 简要汇报\n5. 如果失败,报告错误原因"
  }
}

配置

安装时复制 config.example.jsonconfig.json 并填写:

{
  "person": "Daniel",
  "instance": "aa",
  "lark_app_id": "cli_a83467f9ecba5013",
  "bitable_app_token": "your_bitable_token",
  "bitable_table_id": "your_table_id"
}

文件结构

token-reporter/
├── SKILL.md
├── config.example.json    # 配置模板(安装时复制为 config.json)
├── scripts/
│   └── report.py          # 核心统计脚本
└── references/
    └── jsonl-structure.md # JSONL 数据结构参考

错误处理

错误 处理
JSONL 文件损坏 跳过该行,记录警告
无当日数据 报告"当日无数据"
飞书 API 失败 重试3次,失败后本地缓存结果
config.json 不存在 提示复制 config.example.json
Memory 文件不存在 产出标记为"无记录"

同梱ファイル

※ ZIPに含まれるファイル一覧。`SKILL.md` 本体に加え、参考資料・サンプル・スクリプトが入っている場合があります。