wakapi-sync

TotalClaw 作者 totalclaw

每日 Wakapi(与 WakaTime 兼容)摘要 → 本地 CSV 文件。获取今日统计数据并附加/更新 CSV 以了解总计、热门项目和热门语言。

安装 / 下载方式

TotalClaw CLI推荐
totalclaw install totalclaw:totalclaw~cosformula-wakapi-sync-skill
cURL直接下载,无需登录
curl -fsSL https://skills.taituai.com/api/skills/totalclaw%3Atotalclaw~cosformula-wakapi-sync-skill/file -o cosformula-wakapi-sync-skill.md
## 概述(中文)

每日 Wakapi(与 WakaTime 兼容)摘要 → 本地 CSV 文件。获取今日统计数据并附加/更新 CSV 以了解总计、热门项目和热门语言。

## 原文

# wakapi-sync

Daily Wakapi (WakaTime-compatible) summary → local CSV files.

## What it does
- Fetches **today** stats from Wakapi and appends/updates CSVs:
  - `daily-total.csv` (1 row/day)
  - `daily-top-projects.csv` (N rows/day)
  - `daily-top-languages.csv` (N rows/day)

## Requirements
- Node.js 18+

## Configuration (env vars)
- `WAKAPI_URL` (required)
  - Example: `https://wakapi.example.com`
- `WAKAPI_API_KEY` (required)
  - Your Wakapi API key.
- `WAKAPI_OUT_DIR` (required)
  - Output directory for CSVs.
  - Example: `~/wakapi-data`

Optional:
- `WAKAPI_TOP_N_PROJECTS` (default: `10`)
- `WAKAPI_TOP_N_LANGUAGES` (default: `10`)

Auth:
- Uses `Authorization: Basic base64(<api_key>)` (matches our current Wakapi setup).

## Usage
Run:

```bash
node scripts/wakapi-daily-summary.mjs
```

## Output CSV schemas
### daily-total.csv
Columns:
- `date` (YYYY-MM-DD)
- `total_seconds`
- `total_hours`
- `projects_count`
- `languages_count`

### daily-top-projects.csv
Columns:
- `date`
- `rank`
- `project`
- `seconds`
- `hours`
- `percent`

### daily-top-languages.csv
Columns:
- `date`
- `rank`
- `language`
- `seconds`
- `hours`
- `percent`