{"id":45953102,"url":"https://github.com/rygel/aiusagetracker","last_synced_at":"2026-06-11T20:00:52.833Z","repository":{"id":336612841,"uuid":"1149858393","full_name":"rygel/AIUsageTracker","owner":"rygel","description":"Token usage tracker for (not only) OpenCode","archived":false,"fork":false,"pushed_at":"2026-06-06T15:14:13.000Z","size":48812,"stargazers_count":30,"open_issues_count":3,"forks_count":2,"subscribers_count":1,"default_branch":"main","last_synced_at":"2026-06-06T16:21:08.552Z","etag":null,"topics":["antigravity","claude-code","github-copilot","kimi","minimax","openai-codex","opencode","synthetic","windows","xiaomi","zai"],"latest_commit_sha":null,"homepage":"","language":"C#","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/rygel.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":"AGENTS.md","dco":null,"cla":null}},"created_at":"2026-02-04T15:52:09.000Z","updated_at":"2026-06-04T21:47:47.000Z","dependencies_parsed_at":"2026-02-09T22:01:06.025Z","dependency_job_id":null,"html_url":"https://github.com/rygel/AIUsageTracker","commit_stats":null,"previous_names":["rygel/aiconsumptiontracker","rygel/aiusagetracker"],"tags_count":183,"template":false,"template_full_name":null,"purl":"pkg:github/rygel/AIUsageTracker","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rygel%2FAIUsageTracker","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rygel%2FAIUsageTracker/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rygel%2FAIUsageTracker/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rygel%2FAIUsageTracker/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/rygel","download_url":"https://codeload.github.com/rygel/AIUsageTracker/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rygel%2FAIUsageTracker/sbom","scorecard":{"id":1245907,"data":{"date":"2026-04-11T11:25:09Z","repo":{"name":"github.com/rygel/AIUsageTracker","commit":"20418396144511fde300774a03356b292607f6fd"},"scorecard":{"version":"v5.3.0","commit":"c22063e786c11f9dd714d777a687ff7c4599b600"},"score":5,"checks":[{"name":"Code-Review","score":0,"reason":"Found 0/11 approved changesets -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/c22063e786c11f9dd714d777a687ff7c4599b600/docs/checks.md#code-review"}},{"name":"Maintained","score":0,"reason":"project was created within the last 90 days. Please review its contents carefully","details":["Warn: Repository was created within the last 90 days."],"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/c22063e786c11f9dd714d777a687ff7c4599b600/docs/checks.md#maintained"}},{"name":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/c22063e786c11f9dd714d777a687ff7c4599b600/docs/checks.md#packaging"}},{"name":"Dependency-Update-Tool","score":10,"reason":"update tool detected","details":["Info: detected update tool: Dependabot: .github/dependabot.yml:1"],"documentation":{"short":"Determines if the project uses a dependency update tool.","url":"https://github.com/ossf/scorecard/blob/c22063e786c11f9dd714d777a687ff7c4599b600/docs/checks.md#dependency-update-tool"}},{"name":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/c22063e786c11f9dd714d777a687ff7c4599b600/docs/checks.md#dangerous-workflow"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/c22063e786c11f9dd714d777a687ff7c4599b600/docs/checks.md#binary-artifacts"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: jobLevel 'contents' permission set to 'write': .github/workflows/publish.yml:122","Info: jobLevel 'contents' permission set to 'read': .github/workflows/publish.yml:14","Info: jobLevel 'contents' permission set to 'read': .github/workflows/publish.yml:69","Info: jobLevel 'contents' permission set to 'read': .github/workflows/scorecard.yml:34","Info: jobLevel 'actions' permission set to 'read': .github/workflows/scorecard.yml:37","Info: jobLevel 'contents' permission set to 'read': .github/workflows/workflow-security.yml:53","Info: topLevel 'contents' permission set to 'read': .github/workflows/analyzer-quality-gate.yml:19","Info: topLevel 'contents' permission set to 'read': .github/workflows/code-coverage.yml:23","Info: topLevel 'contents' permission set to 'read': .github/workflows/codeql.yml:26","Warn: topLevel 'security-events' permission set to 'write': .github/workflows/codeql.yml:27","Warn: topLevel 'contents' permission set to 'write': .github/workflows/dependency-updates.yml:13","Info: topLevel 'contents' permission set to 'read': .github/workflows/docs-image-integrity.yml:27","Info: topLevel 'contents' permission set to 'read': .github/workflows/monitor-openapi-contract.yml:25","Info: topLevel 'contents' permission set to 'read': .github/workflows/pr-size-check.yml:13","Info: topLevel 'contents' permission set to 'read': .github/workflows/provider-contract-drift.yml:21","Warn: no topLevel permission defined: .github/workflows/publish.yml:1","Info: topLevel 'contents' permission set to 'read': .github/workflows/release-script-validation.yml:35","Warn: topLevel 'contents' permission set to 'write': .github/workflows/release.yml:25","Info: topLevel 'contents' permission set to 'read': .github/workflows/scorecard.yml:25","Info: topLevel 'contents' permission set to 'read': .github/workflows/secret-scanning.yml:19","Info: topLevel 'contents' permission set to 'read': .github/workflows/security-scan.yml:13","Warn: topLevel 'security-events' permission set to 'write': .github/workflows/semgrep.yml:23","Info: topLevel 'contents' permission set to 'read': .github/workflows/semgrep.yml:22","Warn: topLevel 'contents' permission set to 'write': .github/workflows/slim-screenshot-baseline.yml:39","Info: topLevel 'contents' permission set to 'read': .github/workflows/tests.yml:59","Info: topLevel 'contents' permission set to 'read': .github/workflows/theme-validation.yml:28","Info: topLevel 'contents' permission set to 'read': .github/workflows/trivy.yml:28","Warn: topLevel 'security-events' permission set to 'write': .github/workflows/trivy.yml:29","Warn: topLevel 'contents' permission set to 'write': .github/workflows/update-screenshot-baselines.yml:18","Info: topLevel 'contents' permission set to 'read': .github/workflows/workflow-security.yml:19"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/c22063e786c11f9dd714d777a687ff7c4599b600/docs/checks.md#token-permissions"}},{"name":"Pinned-Dependencies","score":8,"reason":"dependency not pinned by hash detected -- score normalized to 8","details":["Warn: nugetCommand not pinned by hash: .github/workflows/tests.yml:503: pin your dependecies by either enabling central package management (https://learn.microsoft.com/nuget/consume-packages/Central-Package-Management) or using a lockfile (https://learn.microsoft.com/nuget/consume-packages/package-references-in-project-files#locking-dependencies)","Warn: nugetCommand not pinned by hash: .github/workflows/tests.yml:506: pin your dependecies by either enabling central package management (https://learn.microsoft.com/nuget/consume-packages/Central-Package-Management) or using a lockfile (https://learn.microsoft.com/nuget/consume-packages/package-references-in-project-files#locking-dependencies)","Warn: pipCommand not pinned by hash: .github/workflows/workflow-security.yml:62","Info:  59 out of  59 GitHub-owned GitHubAction dependencies pinned","Info:   8 out of   8 third-party GitHubAction dependencies pinned","Info:   0 out of   2 nugetCommand dependencies pinned","Info:   0 out of   1 pipCommand dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/c22063e786c11f9dd714d777a687ff7c4599b600/docs/checks.md#pinned-dependencies"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/c22063e786c11f9dd714d777a687ff7c4599b600/docs/checks.md#cii-best-practices"}},{"name":"Vulnerabilities","score":10,"reason":"0 existing vulnerabilities detected","details":null,"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/c22063e786c11f9dd714d777a687ff7c4599b600/docs/checks.md#vulnerabilities"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE:0","Info: FSF or OSI recognized license: MIT License: LICENSE:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/c22063e786c11f9dd714d777a687ff7c4599b600/docs/checks.md#license"}},{"name":"SAST","score":9,"reason":"SAST tool detected but not run on all commits","details":["Info: SAST configuration detected: CodeQL","Warn: 27 commits out of 29 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/c22063e786c11f9dd714d777a687ff7c4599b600/docs/checks.md#sast"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/c22063e786c11f9dd714d777a687ff7c4599b600/docs/checks.md#security-policy"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/c22063e786c11f9dd714d777a687ff7c4599b600/docs/checks.md#fuzzing"}},{"name":"Branch-Protection","score":3,"reason":"branch protection is not maximal on development and all release branches","details":["Info: 'allow deletion' disabled on branch 'main'","Info: 'force pushes' disabled on branch 'main'","Warn: branch 'main' does not require approvers","Warn: codeowners review is not required on branch 'main'","Warn: no status checks found to merge onto branch 'main'"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/c22063e786c11f9dd714d777a687ff7c4599b600/docs/checks.md#branch-protection"}},{"name":"Signed-Releases","score":0,"reason":"Project has not signed or included provenance with any releases.","details":["Warn: release artifact v2.3.4-beta.29 not signed: https://api.github.com/repos/rygel/AIUsageTracker/releases/307240557","Warn: release artifact v2.3.4-beta.28 not signed: https://api.github.com/repos/rygel/AIUsageTracker/releases/305626954","Warn: release artifact v2.3.4-beta.27 not signed: https://api.github.com/repos/rygel/AIUsageTracker/releases/305398675","Warn: release artifact v2.3.4-beta.26 not signed: https://api.github.com/repos/rygel/AIUsageTracker/releases/305333917","Warn: release artifact v2.3.4-beta.25 not signed: https://api.github.com/repos/rygel/AIUsageTracker/releases/305296618","Warn: release artifact v2.3.4-beta.29 does not have provenance: https://api.github.com/repos/rygel/AIUsageTracker/releases/307240557","Warn: release artifact v2.3.4-beta.28 does not have provenance: https://api.github.com/repos/rygel/AIUsageTracker/releases/305626954","Warn: release artifact v2.3.4-beta.27 does not have provenance: https://api.github.com/repos/rygel/AIUsageTracker/releases/305398675","Warn: release artifact v2.3.4-beta.26 does not have provenance: https://api.github.com/repos/rygel/AIUsageTracker/releases/305333917","Warn: release artifact v2.3.4-beta.25 does not have provenance: https://api.github.com/repos/rygel/AIUsageTracker/releases/305296618"],"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/c22063e786c11f9dd714d777a687ff7c4599b600/docs/checks.md#signed-releases"}},{"name":"Contributors","score":6,"reason":"project has 2 contributing companies or organizations -- score normalized to 6","details":["Info: found contributions from: actions, pippo-java"],"documentation":{"short":"Determines if the project has a set of contributors from multiple organizations (e.g., companies).","url":"https://github.com/ossf/scorecard/blob/c22063e786c11f9dd714d777a687ff7c4599b600/docs/checks.md#contributors"}},{"name":"CI-Tests","score":10,"reason":"10 out of 10 merged PRs checked by a CI test -- score normalized to 10","details":null,"documentation":{"short":"Determines if the project runs tests before pull requests are merged.","url":"https://github.com/ossf/scorecard/blob/c22063e786c11f9dd714d777a687ff7c4599b600/docs/checks.md#ci-tests"}}]},"last_synced_at":"2026-04-11T13:20:35.492Z","repository_id":336612841,"created_at":"2026-04-11T13:20:35.492Z","updated_at":"2026-04-11T13:20:35.492Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34215254,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-11T02:00:06.485Z","response_time":57,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["antigravity","claude-code","github-copilot","kimi","minimax","openai-codex","opencode","synthetic","windows","xiaomi","zai"],"created_at":"2026-02-28T13:16:58.378Z","updated_at":"2026-06-11T20:00:52.827Z","avatar_url":"https://github.com/rygel.png","language":"C#","funding_links":[],"categories":[],"sub_categories":[],"readme":"# \u003cimg src=\"AIUsageTracker.Web/wwwroot/favicon.png\" width=\"32\" height=\"32\" valign=\"middle\"\u003e AI Usage Tracker\n\n![Version](https://img.shields.io/badge/version-2.3.5-orange)\n![License](https://img.shields.io/badge/license-MIT-green)\n![Platforms](https://img.shields.io/badge/platforms-Windows%20|%20Linux%20-blue)\n![Language](https://img.shields.io/badge/language-C%23%20|%20.NET-purple)\n[![](https://dcbadge.limes.pink/api/server/AZtNQtWuJA?style=flat)](https://discord.gg/AZtNQtWuJA)\n![Downloads](https://img.shields.io/github/downloads/rygel/AIUsageTracker/total)\n\n\u003cimg src=\"docs/screenshot_dashboard_privacy.png\" alt=\"Dashboard\" width=\"50%\" /\u003e\n\nA streamlined Windows dashboard and tray utility to monitor AI API usage, costs, and quotas across multiple providers.\n\n## Support\nIf you want to support me and are interested in different AI model providers, you can sign up with my referral codes:\n- [Opencode Go](https://opencode.ai/go?ref=BJK682KYXH):GLM-5.1, Kimi K2.6, MiMo-V2.5 (Pro), MiniMax M3, Qwen3.7 Max, DeepSeek V4 Pro/Flash\n- [Z.AI](https://z.ai/subscribe?ic=JQTB1W1M0L): GLM-5.1, GLM-5, GLM-4.7, GLM-4.6, GLM-4.7-flash\n- [MiniMax](https://platform.minimax.io/subscribe/token-plan?code=7tAWJBCP5L\u0026source=link): Minimax M2.7\n- [synthetic.new](https://synthetic.new/?referral=SNJDbFCgSUZso9E): Minimax M2.1, Kimi K2.5, GLM-4.7, etc.\n\n\n### Documentation\n- [User Manual](docs/user_manual.md)\n- [CLI Reference](docs/cli_documentation.md)\n- [Architecture \u0026 Philosophy](docs/ARCHITECTURE.md)\n- [Monitor Guidelines](MONITORS.md)\n\n### Community\nJoin the discussion on our [Discord Server](https://discord.gg/AZtNQtWuJA).\n\n## Download\nDownload the latest installer or .zip file from the [Release](https://github.com/rygel/AIUsageTracker/releases) page.\n\n## Key Features\n\n- **Multi-Provider Support**: Track usage for Anthropic, Gemini, OpenRouter, OpenCode, Kilo Code, DeepSeek, OpenAI, GitHub Copilot, Codex, Mistral, and more.\n- **Smart Discovery**: Automatically scans environment variables, Claude Code credentials, and standard configuration files for existing API keys.\n- **Auto-Updates**: Notifies you of new releases directly in the dashboard with a one-click download link.\n- **Minimalist Dashboard**: A compact, topmost window providing a quick overview of your current spend and token usage.\n- **Compact Settings UI**: Streamlined provider cards with 40-50% less vertical space, larger dialog for better visibility.\n- **Dynamic Tray Integration**:\n  - **Auto-Hide**: Dashboard hides automatically when focus is lost.\n  - **Individual Tracking**: Option to spawn separate tray icons for specific providers.\n  - **Live Progress Bars**: Tray icons feature \"Core Temp\" style bars that reflect usage levels in real-time.\n- **Pace Projection \u0026 Badges**: See at a glance whether you'll exhaust your quota before it resets.\n  - **Headroom** (green) — projected usage under 70%, plenty of room left.\n  - **On pace** (green) — projected 70–100%, healthy usage rate.\n  - **Over pace** (red) — projected over 100%, on track to hit the limit before reset.\n  - Shows the projected end-of-period percentage (e.g. \"Projected: 73%\") so you can judge for yourself.\n  - Works independently for both 5-hour burst and 7-day rolling windows.\n  - Can be toggled on/off in Settings → Cards → \"Pace-Aware Colours\".\n- **Inverted Progress Bars**: Default \"Health Bar\" mode showing **Remaining** capacity (starting green/full) instead of \"Used\" capacity.\n- **Improved DeepSeek Support**: Detailed multi-currency (CNY/USD) balance tracking with official branding.\n- **Secure Management**: Manage all keys and preferences through a refined, dark-themed settings menu.\n\n## Supported Providers\n\n| Provider                         | Integration         | Status              | Comment                                                      |\n|:---------------------------------|:--------------------|:--------------------|--------------------------------------------------------------|\n| **Antigravity**                  | via Antigravity GUI | ✅ Tested           |                                                              |\n| **Claude Code**                  |                     | ✅ Tested           |                                                              |\n| **DeepSeek**                     | API Key¹            | ⚠️ Beta             | Testers welcome                                              |\n| **Gemini**                       | OAuth Device Flow   | ✅ Tested           |                                                              |\n| **GitHub Copilot**               | OAuth Device Flow   | ✅ Tested           |                                                              |\n| **Kimi (Moonshot)**              | API Key¹            | ✅ Tested           |                                                              |\n| **Minimax** (China)              | API Key¹            | ⚠️ Beta             | Testers welcome                                              |\n| **Minimax** (International)      | API Key¹            | ⚠️ Beta             | Testers welcome                                              |\n| **Mistral**                      | API Key¹            | ✅ Tested            | but Mistral does not provide usage information via their API |\n| **OpenAI (Codex)**               | via Opencli OAuth   | ️ ⚠️ Beta           | Testers welcome                                              |\n| **OpenRouter**                   | not integrated yet  | 🚧 Planned          | Testers welcome                                              |\n| **Opencode Zen** (coding plan)   | API Key¹            | ⚠️ Beta             | Testers welcome                                              |\n| **Opencode Zen** (pay-as-you-go) | API Key¹            | ✅ Tested            |                                                              |\n| **Synthetic**                    | API Key¹            | ✅ Tested            |                                                              |\n| **Z.AI** (Coding Plan)           | API Key¹            | ✅ Tested            |                                                              |\n\n¹ API Key can be either entered directly or discovered automatically via opencode configuration  \n\n### Screenshots\n\n**Dashboard (Main Interface)**\n\u003cimg src=\"docs/screenshot_dashboard_privacy.png\" alt=\"Dashboard\" width=\"50%\" /\u003e\n\n**Providers**\n\u003cimg src=\"docs/screenshot_settings_providers_privacy.png\" alt=\"Providers\" width=\"50%\" /\u003e\n\nFor the complete screenshot set (all settings tabs, info dialog, tray states, and context menu), see the [User Manual](docs/user_manual.md).\n\n## Installation\n\n### Manual\n1. Download the latest `AIUsageTracker_Setup_v2.3.4-beta.11.exe` from the [Releases](https://github.com/rygel/AIUsageTracker/releases) page.\n2. Run the installer.\n3. The app will launch and automatically scan for common API keys.\n\n## Configuration \u0026 Settings\n\nAccess the **Settings** menu by right-clicking the tray icon or using the gear icon on the dashboard.\n\n### Application Settings\n- **Show All Providers**: Toggle to show all configured providers, even those with 0 usage or errors.\n- **Compact Mode**: Reduces the height of each item, removing the icon and condensing the layout.\n- **Pin Window**: Keeps the dashboard open even when focus is lost.\n- **Always On Top**: Ensures the dashboard floats above other windows.\n- **Invert Progress Bars**: \n    - **Checked**: Bars represent **Remaining** capacity (Start Full/Green -\u003e End Empty/Red).\n    - **Unchecked**: Bars represent **Used** capacity (Start Empty -\u003e End Full/Red).\n- **Color Thresholds**: Customize the percentage at which bars turn Yellow (Warning) or Red (Critical).\n- **Auto Refresh Interval**: \n    - **Minutes**: Set how often (in minutes) the app should automatically check provider APIs for new consumption data.\n    - **Disable**: Set to **0** to disable automatic background refreshing.\n\n### Provider Management\n- **API Keys**: enter or update specific keys for each provider.\n- **Track in Tray**: Check the box next to any provider to add a dedicated icon for it in your system tray.\n- **Sub-Quotas**: For complex providers like Antigravity, you can pin specific model quotas to the tray.\n\n## Storage\nConfiguration is stored in `auth.json` in the application data directory.\n- **Automatic Backup**: Your previous configuration is preserved during updates.\n- **Secure**: API keys are stored locally.\n\n## License\nMIT\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frygel%2Faiusagetracker","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frygel%2Faiusagetracker","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frygel%2Faiusagetracker/lists"}