Files
skills/tracker

Tracker automation

tracker is the provider-neutral execution seam for issue-tracker skills. It emits one JSON envelope on stdout and delegates authentication and repository work to gh, glab, or tea.

Use

python -m tracker --provider gitea issue get 16
TRACKER_PROVIDER=github tracker issue list --state open --label ready-for-agent
tracker pr get 42 --diff

Provider precedence is --provider, TRACKER_PROVIDER, then the origin Git remote. Explicit resource commands (issue and pr) avoid shared-number ambiguity. Use resolve-reference only when intentional resolution of a bare number is required.

Stable failures are returned as:

{"ok":false,"provider":"gitea","operation":"issue.get","error":{"code":"auth_required","message":"...","retryable":false,"provider":"gitea","operation":"issue.get","details":{}}}

The Python API is the same seam as the CLI:

from tracker import Tracker

tracker = Tracker(provider="gitea")
result = tracker.add_label("issue", 16, "needs-review")

Inject RecordingRunner or another object with run(argv, **kwargs) for deterministic contract tests. Provider-specific capability gaps are explicit in error.code or details; credentials are never accepted or stored by this package.