Task completion is a planning signal and should not replace tests, review, or acceptance criteria., Branch-derived issue numbers are a convenience; set GITHUB_ISSUE_NUMBER explicitly when branch names contain unrelated numbers., Keep issue bodies free of secrets before using them in terminal-visible automation.
Privacy notes
The statusline prints only aggregate task counts and an issue number or local label., If GitHub CLI fetches private issue bodies, access follows the local account and organization policy., Local issue-body files can contain sensitive planning details; avoid echoing raw bodies in shared logs.
Author
MkDev11
Submitted by
MkDev11
Claim status
unclaimed
Last verified
2026-06-04
Decision playbook
Review trust signals before you adopt
Signals are present but mixed. Use the checklist below to confirm the source and operational safety for your environment.
Compare context
Selected
0
Current score
78
Baseline
—
Delta
No baseline selected
No major trust-signal divergence detected in the current selection.
Source and provenance checks
Complete
Confirm ownership and provenance before trusting install instructions.
Source link availableRequired
Open the canonical repository and verify ownership.
Done
Source provenance statusRequired
Marked as source-backed.
Done
Metadata reviewed
Registry metadata indicates a reviewed listing.
Done
Safety and privacy checks
Complete
Validate risk disclosures before installation or API wiring.
Safety notes presentRequired
Review the listed safety guidance before running commands.
Done
Privacy notes presentRequired
Review data handling notes before connecting accounts or secrets.
Done
Trust level risk gateRequired
Trust level does not block evaluation.
Done
Package and install checks
Needs review
Check package metadata and artifact integrity signals.
Install payload available
Install or copy payload is available for review.
Done
Package verification flag
No package verification flag provided.
Pending
Checksum metadata
No checksum provided for downloaded artifact.
Pending
Compare-driven decision checks
Needs review
Use compare context to validate trade-offs before adoption.
Compare tray has multiple entries
Add at least one more entry to compare trust differences.
GitHub Flavored Markdown defines task list items as checkbox-style list items.
This statusline counts those GFM task markers and can read them from a local issue-body file or from a linked GitHub issue.
Duplicate check
Checked existing statuslines, live HeyClaude statuslines, open pull requests, and repository content for gfm-issue-task-progress-statusline, GFM task lists, issue task progress, task checklist, and GitHub CLI issue statuslines. The earlier cli.github.com submission was self-closed after #960 showed that source domain overlaps the accepted repository-health statusline; this replacement uses the GFM task-list specification as its canonical source.
Disclosure
Editorial statusline recipe. No paid placement or affiliate link is used.
Show that GFM Issue Task Progress Statusline is listed on HeyClaude. Paste this Markdown into your README — it renders the badge and links back to this page.
[](https://heyclau.de/entry/statuslines/gfm-issue-task-progress-statusline)
How it compares
GFM Issue Task Progress Statusline side by side with 3 alternatives on trust, install, platform support, and disclosed safety notes — all from reviewed registry metadata.
Claude Code statusline that reads Anthropic Claude Code Analytics Admin API data and shows daily estimated cost, hourly pace, sessions, and budget pressure.
✓Task completion is a planning signal and should not replace tests, review, or acceptance criteria.
Branch-derived issue numbers are a convenience; set GITHUB_ISSUE_NUMBER explicitly when branch names contain unrelated numbers.
Keep issue bodies free of secrets before using them in terminal-visible automation.
✓Closing keywords are workflow signals, not proof that the PR actually satisfies the linked issue.
Some repositories use manual issue closure or external trackers, so missing keywords should be interpreted with project policy.
Keep automated PR body edits separate from this read-only statusline.
✓Repository counts are orientation signals and should not replace issue triage, release gates, or maintainer review.
The `--limit 100` query cap keeps the statusline fast; very large queues may need a dedicated dashboard.
The script does not modify repository settings, issues, or pull requests.
✓Claude Code Analytics data is daily aggregated and can lag recent activity, so the burn-rate display is a pacing signal rather than real-time billing control.
Keep the refresh interval moderate because the statusline calls an authenticated Admin API endpoint.
Treat budget thresholds as operational prompts; reconcile invoices and Console reports before making spending decisions.
Privacy notes
✓The statusline prints only aggregate task counts and an issue number or local label.
If GitHub CLI fetches private issue bodies, access follows the local account and organization policy.
Local issue-body files can contain sensitive planning details; avoid echoing raw bodies in shared logs.
✓The script prints only aggregate closing-reference counts and the pull request number.
It reads the pull request body, which can contain private planning details in private repositories.
Private repository access follows the local GitHub CLI account and organization policy.
✓The statusline prints repository owner/name, counts, default branch, and state.
Private repository metadata follows the local GitHub CLI login and may appear in terminal screenshots.
Organization policies can restrict which counts are visible to the local account.
✓The script sends an Admin API request to Anthropic and receives organization-level Claude Code analytics.
It prints aggregate cost, session, and budget numbers, not email addresses, model names, prompts, file paths, or code.
Admin API keys can expose organization analytics; store them in a scoped local secret manager or shell environment with restricted access.
The script feeds the API key to curl through a config file descriptor instead of command-line arguments and unsets the exported key before launching curl, reducing process-list exposure on shared machines.
Prerequisites
An issue body available through GFM_TASK_BODY_FILE, GITHUB_ISSUE_NUMBER plus GitHub CLI, or a branch name containing the issue number.
The issue body uses GitHub Flavored Markdown task list syntax.
GitHub CLI is optional unless the statusline should fetch the issue body directly.
GitHub CLI installed and logged in for the current repository.
jq available for reading pull request JSON.
The current branch has an associated pull request with a body that can be read by the local account.
GitHub CLI installed and logged in with access to the current repository.
jq available for reading GitHub CLI JSON output.
A refresh interval that respects repository size and GitHub API rate limits.
Anthropic Admin API access for an organization with Claude Code Analytics enabled.
ANTHROPIC_ADMIN_API_KEY set in the statusline environment; prefer a narrowly scoped/read-only credential if Anthropic offers one for analytics access.
curl and jq available on the machine running the Claude Code statusline command.
Optional CLAUDE_CODE_ANALYTICS_EMAIL to limit the display to one user and CLAUDE_CODE_DAILY_BUDGET_USD to set the budget denominator.