{"id":50670031,"url":"https://github.com/phun333/pi-infobar","last_synced_at":"2026-06-11T13:00:52.060Z","repository":{"id":362864017,"uuid":"1260143846","full_name":"phun333/pi-infobar","owner":"phun333","description":"Native macOS (menu bar) \u0026 Windows (system tray) dashboard for Pi agent usage, cost, languages, models, projects \u0026 tokens. Local-first, optional SSH sync.","archived":false,"fork":false,"pushed_at":"2026-06-07T19:52:25.000Z","size":1945,"stargazers_count":66,"open_issues_count":0,"forks_count":3,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-06-10T12:23:52.134Z","etag":null,"topics":["ai-agents","analytics-dashboard","cross-platform","developer-tools","dotnet","macos","menu-bar","menubar-app","statusbar","swift","swiftui","usage-stats","windows","wpf"],"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/phun333.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"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":null,"dco":null,"cla":null}},"created_at":"2026-06-05T07:42:20.000Z","updated_at":"2026-06-09T22:36:44.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/phun333/pi-infobar","commit_stats":null,"previous_names":["phun333/pi-infobar"],"tags_count":3,"template":false,"template_full_name":null,"purl":"pkg:github/phun333/pi-infobar","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/phun333%2Fpi-infobar","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/phun333%2Fpi-infobar/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/phun333%2Fpi-infobar/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/phun333%2Fpi-infobar/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/phun333","download_url":"https://codeload.github.com/phun333/pi-infobar/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/phun333%2Fpi-infobar/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34199516,"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":["ai-agents","analytics-dashboard","cross-platform","developer-tools","dotnet","macos","menu-bar","menubar-app","statusbar","swift","swiftui","usage-stats","windows","wpf"],"created_at":"2026-06-08T10:04:27.641Z","updated_at":"2026-06-11T13:00:52.018Z","avatar_url":"https://github.com/phun333.png","language":"C#","funding_links":[],"categories":["Development"],"sub_categories":["Other Development"],"readme":"\u003cdiv align=\"center\"\u003e\n\n\u003cimg src=\"docs/screenshots/icon.png\" width=\"120\" alt=\"Pi Stats icon\" /\u003e\n\n# Pi Stats\n\n**A native menu-bar / system-tray dashboard for your [Pi](https://pi.dev) agent usage.**\n\nSee your total spend, the languages you actually code in, model costs, projects\nand token usage — all computed locally from your session logs. Local by default,\nwith optional SSH sync from your own remote Pi server.\n\n\u003e **Available on macOS *and* Windows** — same data, same design.\n\u003e The macOS app (SwiftUI) lives in [`macos/`](macos/); the Windows app (WPF)\n\u003e lives in [`windows/`](windows/).\n\n\u003ca href=\"https://github.com/phun333/pi-infobar/releases/tag/v0.3.0\"\u003e\u003cimg src=\"https://img.shields.io/badge/download-v0.3.0-4D7CFF?style=flat-square\" alt=\"Download v0.3.0\" /\u003e\u003c/a\u003e\n\u003cimg src=\"https://img.shields.io/badge/platform-macOS%2014%2B%20%7C%20Windows%2010%2F11-111?style=flat-square\" alt=\"macOS 14+ | Windows 10/11\" /\u003e\n\u003cimg src=\"https://img.shields.io/badge/built%20with-SwiftUI%20%2B%20WPF-F05138?style=flat-square\" alt=\"SwiftUI + WPF\" /\u003e\n\u003cimg src=\"https://img.shields.io/badge/privacy-local--first-4EAA25?style=flat-square\" alt=\"local-first\" /\u003e\n\n\u003c/div\u003e\n\n\u003cbr /\u003e\n\n\u003cdiv align=\"center\"\u003e\n\u003cimg src=\"docs/screenshots/overview.png\" width=\"320\" alt=\"Overview\" /\u003e\n\u0026nbsp;\n\u003cimg src=\"docs/screenshots/languages.png\" width=\"320\" alt=\"Languages\" /\u003e\n\u003c/div\u003e\n\n\u003cbr /\u003e\n\n\u003cdiv align=\"center\"\u003e\n\u003cimg src=\"docs/screenshots/models.png\" width=\"260\" alt=\"Models\" /\u003e\n\u0026nbsp;\n\u003cimg src=\"docs/screenshots/projects.png\" width=\"260\" alt=\"Projects\" /\u003e\n\u0026nbsp;\n\u003cimg src=\"docs/screenshots/usage.png\" width=\"260\" alt=\"Usage\" /\u003e\n\u003c/div\u003e\n\n\u003cbr /\u003e\n\n## Features\n\n- **Cost** — today's spend in the menu bar; total / avg / daily-spend chart (hover any day for its exact spend).\n- **Languages** — donut + ranked bars by lines written (TypeScript, Python, Swift, Go…).\n- **Models, Projects, Tokens \u0026 Tools** — cost and counts, per item.\n- **Time ranges** — `1d / 7d / 30d / All` across every tab.\n- **Native** — translucent rounded panel, launch-at-login, Settings window. Menu bar on macOS, system tray on Windows.\n- **Remote (optional)** — sync session logs from your own server over SSH, then browse them locally; flip between Local and Remote from the popover.\n- **Private** — local by default (reads only your `~/.pi/agent/sessions`, no network). Remote mode only pulls logs from the host *you* configure — nothing is ever uploaded.\n- **Cross-platform** — identical feature set on macOS and Windows.\n\n## Download\n\nGrab the latest from the **[v0.3.0 release](https://github.com/phun333/pi-infobar/releases/tag/v0.3.0)**.\n\n### 🤖 macOS\n\nThe app is **unsigned** (no paid Apple Developer account), so macOS quarantines it on\ndownload and may say *“Pi Stats is damaged and can’t be opened”*. That's Gatekeeper, not\na broken app — you just have to clear the quarantine flag once.\n\n**Easiest — one-line install.** Paste into **Terminal** (downloads, installs, unquarantines, opens):\n\n```bash\ncurl -L https://github.com/phun333/pi-infobar/releases/download/v0.3.0/Pi-Stats.zip -o /tmp/PiStats.zip \u0026\u0026 \\\n  ditto -xk /tmp/PiStats.zip /Applications \u0026\u0026 \\\n  xattr -dr com.apple.quarantine \"/Applications/Pi Stats.app\" \u0026\u0026 \\\n  open \"/Applications/Pi Stats.app\"\n```\n\n**Manual.** Download **`Pi-Stats.dmg`**, drag **Pi Stats** into **Applications**, then run\n`xattr -dr com.apple.quarantine \"/Applications/Pi Stats.app\"` once and open it. The **π**\nmark appears in your menu bar. Universal binary (Apple Silicon + Intel).\n\n### 🪟 Windows\n\n1. Download **`PiStats.exe`** (single portable file — no installer, no .NET required).\n2. Double-click it. The **π** icon appears in your system tray.\n\nBecause the app is **unsigned**, Windows SmartScreen may show *“Windows protected your\nPC”* on first launch. Click **More info → Run anyway** (one time). It's not malware —\njust the Windows equivalent of macOS Gatekeeper.\n\n**Start with Windows / install for real:** clone the repo and run\n`windows\\install.ps1` (copies the exe to `%LOCALAPPDATA%\\PiStats`, adds a Start-Menu\nshortcut, and enables auto-start at sign-in). Remove it any time with\n`windows\\uninstall.ps1`. Or just enable **Settings → General → Launch at login** in-app.\n\n\u003e Remote sync on Windows uses the built-in OpenSSH client (`ssh.exe`) + `tar.exe`\n\u003e (both ship with Windows 10/11).\n\n## How it works\n\nStreams every `~/.pi/agent/sessions/**/*.jsonl` (`%USERPROFILE%\\.pi\\agent\\sessions`\non Windows), aggregates per day, and caches the result. Cost comes from each message's\nrecorded `usage.cost` (no estimates); languages from the file extension of every\n`edit`/`write`; projects from each session's `cwd`.\n\n**Remote mode** (optional) pulls the matching `*.jsonl` files from a server you configure\nin Settings into a separate local cache, then runs the exact same local aggregation\n(macOS uses `rsync`; Windows streams a `tar` over `ssh`). Data only ever flows from your\nhost to your machine — never out.\n\n## Build\n\n**macOS** — Swift 6 toolchain (Command Line Tools, no full Xcode):\n\n```bash\ncd macos\n./build_app.sh \u0026\u0026 open \"build/Pi Stats.app\"   # build + run\n./release.sh v0.3.0                            # package DMG/zip + GitHub release\n```\n\n**Windows** — .NET 8 SDK:\n\n```powershell\ncd windows\ndotnet run --project PiStats   # dev run (system tray)\n.\\build.ps1                     # -\u003e windows\\dist\\PiStats.exe (single file)\n```\n\n## License\n\nMIT — see [LICENSE](LICENSE).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fphun333%2Fpi-infobar","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fphun333%2Fpi-infobar","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fphun333%2Fpi-infobar/lists"}