| name | gitrakz |
| description | Drive a self-hosted gitrakz instance — the tool that syncs a GitHub user's activity into local SQLite, renders a filterable timeline and derived work sessions, and runs deterministic programmatic templates that export to CSV/PDF/JSON. Install or run it with Docker, then query its bearer-protected REST API under /api/v1 (owners, repos, timeline, sessions, sync + sync status, templates CRUD, LLM template generation, run, export) — or drive the same capabilities as MCP tools over streamable HTTP (/mcp) or stdio (`gitrakz mcp`). Use when the user wants to set up gitrakz, trigger or check a GitHub activity sync, pull a timeline or work-sessions timesheet, or run and export a template. |
| homepage | https://github.com/psyb0t/gitrakz |
| user-invocable | true |
| metadata | {"openclaw":{"emoji":"🛰️","primaryEnv":"GITRAKZ_URL","requires":{"bins":"[Truncated]"}}} |
| permissions | {"network":"Outbound HTTP only to the user-configured GITRAKZ_URL (the local gitrakz server). gitrakz itself shells out to the GitHub CLI and reaches api.github.com to sync activity; point it only at a gitrakz instance the user runs.","shell":"bash, curl, and the docker / gitrakz-wrapper commands shown in references/setup.md, for user-requested setup or verification. gitrakz reads its GitHub token from `gh auth token`.","filesystem":"Normal use reads GITRAKZ_URL and GITRAKZ_AUTH_TOKEN from the environment. Setup writes only the owner-only ~/.config/gitrakz/.env and docker-compose.yml."} |
gitrakz
gitrakz is a self-hosted GitHub activity tracker. It syncs a user's gh
activity into a local SQLite database, renders a filterable timeline and derived
work sessions, and runs programmatic templates — deterministic transform
pipelines over the timeline that export to CSV, PDF, or JSON. One Go binary with
the Svelte UI embedded; no external services required.
For setup — the installer, the direct-Docker path, config, and auth — read
references/setup.md before touching a stack.
Security and safety
- This skill drives a gitrakz instance the user already runs. Take
GITRAKZ_URL
(e.g. http://127.0.0.1:8080) and, if set, GITRAKZ_AUTH_TOKEN from the
environment or ask — do not hunt the workspace for tokens.
- gitrakz authenticates to GitHub with a token from
gh auth token, injected at
runtime and never written to disk. It reads activity only; mount a read-scoped
token where you control the scope.
POST /api/v1/sync starts a GitHub sync (network + rate-limit spend) and
POST /api/v1/run may call an LLM if the template uses describe-work or a
prose block. Only trigger these for the task the user named.
GITRAKZ_ELELEM_BASE_URL receives commit titles / diffs when LLM steps run.
Point it only at endpoints the user trusts. Template output is typed display
blocks, never author-supplied HTML.
- gitrakz also exposes its capabilities as MCP tools (see "MCP" below), over the
same two surfaces: streamable HTTP at
/mcp (Bearer-gated exactly like
/api/v1 when GITRAKZ_AUTH_TOKEN is set) and stdio via the binary's mcp
subcommand. Every MCP tool wraps the same read-mostly service layer as the
REST API above — same sync/LLM cost caveats apply to gitrakz_trigger_sync
and gitrakz_run_template.
Use it for
- Installing or running gitrakz and confirming it is up.
- Triggering an incremental sync (
POST /api/v1/sync) and checking progress
(GET /api/v1/sync/status).
- Pulling a filtered timeline or a derived work-sessions timesheet.
- Listing, creating, editing, and running templates, and exporting a run to
CSV / PDF / JSON.
- Any of the above through MCP tools instead of raw REST calls, when the
driving client speaks MCP (see "MCP" below).
Do not use it for