dojo.md
University for AI agents. 92 courses, 4400+ scenarios, any model via OpenRouter. Auto-training loops generate per-model SKILL.md documents. Works with Claude Code, OpenClaw, Cursor, Windsurf. No fine-tuning req...
Query Umami Cloud (v2) analytics data via API using an environment-provided API key. Use when agents need website traffic, pages, events, sessions, realtime, reports, or attribution data for analysis, planning, experiments, or monitoring. Includes read-only API querying patterns, endpoint selection guidance, and reusable scripts for flexible endpoint + time-range requests.
Follow the repository instructions for this skill and your agent. Review the files and dependencies before adding it to your workflow.
SkillHub CLI
skillhub install hfichter/umami-statsInspect the source and compatibility requirements, then follow its installation steps.
Give your agent the source link and ask it to inspect instructions and dependencies before explaining the installation steps.
Use this skill as a data-access layer: fetch Umami analytics data, then let the agent decide analysis/strategy.
UMAMI_API_KEY (required)UMAMI_BASE_URL (optional, default: https://api.umami.is)UMAMI_WEBSITE_ID (optional default site)UMAMI_DEPLOYMENT (optional: cloud or self-hosted, default: cloud)https://api.umami.is/v1/...
https://<your-host>/api/...
The script supports both:
--deployment cloud → uses cloud behavior (/v1 + x-umami-api-key)--deployment self-hosted → uses self-hosted behavior (/api + Authorization: Bearer ...)references/read-endpoints.md.scripts/umami_query.py with endpoint + params.today, last7d, etc.) or custom startAt/endAt.# 1) List websites
python3 scripts/umami_query.py --endpoint /v1/websites
# 2) Website stats for last 7 days (default website from env)
python3 scripts/umami_query.py \
--endpoint /v1/websites/{websiteId}/stats \
--preset last7d
# 3) Top pages with explicit website id
python3 scripts/umami_query.py \
--endpoint /v1/websites/{websiteId}/pageviews \
--website-id "$UMAMI_WEBSITE_ID" \
--preset last30d
# 4) Events series with custom window
python3 scripts/umami_query.py \
--endpoint /v1/websites/{websiteId}/events/series \
--param startAt=1738368000000 \
--param endAt=1738972799000
# 5) Legacy path auto-mapping in cloud mode (/api/... -> /v1/...)
python3 scripts/umami_query.py --endpoint /api/websites/{websiteId}/stats --preset last7d
# 6) Self-hosted example (/v1/... auto-maps to /api/...)
python3 scripts/umami_query.py \
--deployment self-hosted \
--base-url "https://umami.example.com" \
--endpoint /v1/websites/{websiteId}/stats \
--pre...
These signals come from indexed source analysis and may lag behind changes. Check the current source files.
# Umami Stats (Read-only API skill)
Use this skill as a **data-access layer**: fetch Umami analytics data, then let the agent decide analysis/strategy.
## Required environment variables
- `UMAMI_API_KEY` (required)
- `UMAMI_BASE_URL` (optional, default: `https://api.umami.is`)
- `UMAMI_WEBSITE_ID` (optional default site)
- `UMAMI_DEPLOYMENT` (optional: `cloud` or `self-hosted`, default: `cloud`)
## API path conventions (explicit)
- **Umami Cloud:** `https://api.umami.is/v1/...`
- **Self-hosted Umami:** `https://<your-host>/api/...`
The script supports both:
- `--deployment cloud` → uses cloud behavior (`/v1` + `x-umami-api-key`)
- `--deployment self-hosted` → uses self-hosted behavior (`/api` + `Authorization: Bearer ...`)
## Read-only workflow
1. Pick endpoint from docs or `references/read-endpoints.md`.
2. Run `scripts/umami_query.py` with endpoint + params.
3. Use presets (`today`, `last7d`, etc.) or custom `startAt`/`endAt`.
4. Analyze returned JSON for the user task.
## Quick commands
```bash
# 1) List websites
python3 scripts/umami_query.py --endpoint /v1/websites
# 2) Website stats for last 7 days (default website from env)
python3 scripts/umami_query.py \
--endpoint /v1/websites/{websiteId}/stats \
--preset last7d
# 3) Top pages with explicit website id
python3 scripts/umami_query.py \
--endpoint /v1/websites/{websiteId}/pageviews \
--website-id "$UMAMI_WEBSITE_ID" \
--preset last30d
# 4) Events series with custom window
python3 scripts/umami_query.py \
--endpoint /v1/websites/{websiteId}/events/series \
--param startAt=1738368000000 \
--param endAt=1738972799000
# 5) Legacy path auto-mapping in cloud mode (/api/... -> /v1/...)
python3 scripts/umami_query.py --endpoint /api/websites/{websiteId}/stats --preset last7d
# 6) Self-hosted example (/v1/... auto-maps to /api/...)
python3 scripts/umami_query.py \
--deployment self-hosted \
--base-url "https://umami.example.com" \
--endpoint /v1/websites/{websiteId}/stats \
--pre...University for AI agents. 92 courses, 4400+ scenarios, any model via OpenRouter. Auto-training loops generate per-model SKILL.md documents. Works with Claude Code, OpenClaw, Cursor, Windsurf. No fine-tuning req...
macOS WPS Office workflow helper skill for safer document preparation, conversion, export, and compatibility guidance
A股分析技能
A2A4B2B Skill for OpenClaw