尚未偵測到更新。GitHub 發布版本後會顯示在這裡。
個人 GitHub 帳號下公開儲存庫的擁有者可以登入並驗證所有權,自行管理介紹,無需管理員核准。
登入並產生驗證檔案,在 30 分鐘內將其提交至此儲存庫的預設分支。其他分支或分叉儲存庫中的檔案無效。然後在下方檢查檔案,即可無需管理員核准直接管理專案。請保留檔案以維持管理權限。
如需登入,將前往登入頁面。登入後請回到此處,再次點擊所選的驗證按鈕。
在專案資料夾中執行 /nomorevibe verify,即可驗證所有權並自行管理介紹。
一分鐘完成驗證正在載入完整 README。 以下為已儲存的摘錄。
A GNOME Shell extension to monitor AI provider usage metrics directly from the system panel. This extension acts as a graphical interface for the CodexBar CLI, providing real-time visibility into your API quotas and usage tiers.檢視完整 README ↗FEATURED on Codexbar Official repo!
The best GNOME Shell extension to use Codexbar. The most used Codexbar port for GNOME. Feel free to contribute and join our community (links below)
(TO DO: Update this image)
We are a Linux community where everyone is welcome, from beginners to professionals, without ideology or elitism. Join us!
The extension requires the CodexBar CLI tool installed on your system.
It is recommended to install the CLI via Homebrew, which is the official way:
brew install steipete/tap/codexbar
Homebrew exists for Linux (and is a good package manager). For those who don't know, it can be installed with
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
It is now distributed separately from the extension and no longer requires PyPI. Download it directly from the repo into ~/.local/bin (the extension looks there by default):
mkdir -p ~/.local/bin && curl -fsSL https://raw.githubusercontent.com/InledGroup/codexbar-gnome/main/scripts/codexbar-cookie-importer -o ~/.local/bin/codexbar-cookie-importer && chmod +x ~/.local/bin/codexbar-cookie-importer
It is a dependency-free bash script (uses secret-tool, openssl, sqlite3).
This minimal script is invoked by the extension when you click on the trust antigravity cert button and what it does is save the certificate in the system trust store, elevating privileges.
Since it elevates privileges, it would be unreasonable to integrate the elevation logic into the extension (as JustPerfection told me) so it is served as a standalone script that the user must decide to install, thus complying with GJS guidelines. It is now a dependency-free bash script (no PyPI):
mkdir -p ~/.local/bin && curl -fsSL https://raw.githubusercontent.com/InledGroup/codexbar-gnome/main/scripts/codexbar-ssl-helper -o ~/.local/bin/codexbar-ssl-helper && chmod +x ~/.local/bin/codexbar-ssl-helper && codexbar-ssl-helper
You can download it from the official GNOME store. It takes longer to be updated. https://extensions.gnome.org/extension/9841/codexbar/
./install scriptdbus-run-session gnome-shell --wayland --devkit. You need to have installed Mutter DevkitAlt+F2 and type r and press enter.Access the settings through the gear icon in the extension menu or using your extension manager client.
Each provider must be configured with a command that returns JSON output.
Example for Gemini:
codexbar --provider gemini --source api --format json
The extension will automatically attempt to locate the codexbar binary in common locations such as /home/linuxbrew/.linuxbrew/bin/ if an absolute path is not provided.
Certain vendors have specific fields in Codexbar CLI, whose interpretation may not have been implemented so this is a great opportunity for you to implement support (if you want) and do a PR.
Some providers (OpenRouter with --source api) authenticate the CodexBar CLI via an environment variable, e.g. OPENROUTER_API_KEY, instead of a token cached on disk. Setting that variable in ~/.zshrc, ~/.bashrc, or similar is not enough: GNOME Shell is started by your login/display manager, not by an interactive shell, so it never sources your shell's dotfiles, and any command the extension runs (as a child process of GNOME Shell) inherits GNOME Shell's environment, not your terminal's.
To make the variable visible to the extension, add it to your systemd user environment instead:
mkdir -p ~/.config/environment.d
echo 'OPENROUTER_API_KEY=sk-or-v1-...' > ~/.config/environment.d/codexbar.conf
chmod 600 ~/.config/environment.d/codexbar.conf
Then log out and log back in. environment.d files are only read once, when your systemd --user manager starts — if it's still running from before you added the file (e.g. lingering is enabled: loginctl show-user $USER | grep Linger), a normal logout/login won't pick it up. In that case, apply it to the running instance once, then log out/in as usual:
systemctl --user import-environment OPENROUTER_API_KEY
You can confirm GNOME Shell actually has the variable with:
tr '\0' '\n' < /proc/$(pgrep -x gnome-shell)/environ | grep OPENROUTER_API_KEY
Without it, codexbar --provider openrouter --source api still returns valid JSON, but with a top-level error field and no usage.details — so the OpenRouter tab shows only a bare, empty tier instead of the Credits / API key / Spend history breakdown.
You can choose how metrics are displayed:
This project is licensed under MIT-INLED. Click on the name to see the license.
[!WARNING] If you base your code on ours or remix it using AI, you must credit the original repository out of respect for the contributors and the creator.
[!NOTE] ABOUT AI
AI is used to develop this project and we accept contributions with AI as long as you review what the AI does, have tested it and do not rewrite many lines of code, and the PR and Issues must be written by a human, simply so that you are not talking to an AI that you do not know if it is AI or human. Our community is friendly, without ideology or politics, and you can join us on the channels described above. Being against positioning ourselves ideologically, we are not against AI, so its use is welcome