← Commit history
README.md+2
@@ -276,6 +276,8 @@ v1.1.20: /command returns errorCode command_not_found (HTTP 400) with did-you-me  v1.1.21: event-driven tab census + Claude session identity (John 2026-09-03: never poll the iframes again). GET /tabs and the SSE stream GET /tabs/events publish the extension host's own tabGroups census on every change; POST /claude/session-start ingests the Claude SessionStart hook (id + transcript path, before the jsonl is flushed) and GET /claude/sessions lists it; POST /claude/open-session opens an existing conversation by id and confirms the bind (retagging sdk-cli transcripts, which the Claude extension otherwise declines). Capability markers in /health: tabs.list, tabs.events, claude.open-session, claude.session-start, claude.sessions. +v1.1.67: each widget names its own page (docs: widgets/README.md, shipped with the package) so the Hydrogen Widgets pulldown row links to what it shows, its manifest and files, and how to make your own.+ v1.1.66: widget pages have two layouts chosen by the slot height: rows stacked in the full Title Bar (like the meter), one horizontal row when it is compact.  v1.1.65: the Claude usage widget reads the structured limits list, so model-scoped weekly limits (Fable limit 93 percent) show with their own name and the provider severity colour, next to the session and weekly bars.
VERSION+1−1
@@ -1 +1 @@-1.1.66+1.1.67
bin/adom-vscode
⋯ 1 unchanged line ⋯
bin/hydrogen-widget-claude-usage

  
bin/hydrogen-widget-codex-usage

  
bin/hydrogen-widget-lib.py

  
bin/hydrogen-widget-marks.py

  
hydrogen-widget.json+18−4
@@ -8,8 +8,15 @@       "brief": "Your Claude limits at a glance: 5-hour session, weekly, and the weekly model bucket that applies, as percent used. Reads the Claude Code sign-in in this workspace.",       "width": 320,       "install": "adom/adom-vscode",-      "launch": { "command": "hydrogen-widget-claude-usage", "port": 8931 },-      "health": { "url": "/", "timeout_seconds": 60 }+      "launch": {+        "command": "hydrogen-widget-claude-usage",+        "port": 8931+      },+      "health": {+        "url": "/",+        "timeout_seconds": 60+      },+      "docs": "widgets/README.md"     },     {       "id": "codex-usage",@@ -18,8 +25,15 @@       "brief": "Your Codex limit as percent used (and the secondary window when your plan has one). Reads the Codex sign-in in this workspace.",       "width": 170,       "install": "adom/adom-vscode",-      "launch": { "command": "hydrogen-widget-codex-usage", "port": 8932 },-      "health": { "url": "/", "timeout_seconds": 60 }+      "launch": {+        "command": "hydrogen-widget-codex-usage",+        "port": 8932+      },+      "health": {+        "url": "/",+        "timeout_seconds": 60+      },+      "docs": "widgets/README.md"     }   ] }
install.sh

  
package.json+1−1
@@ -1,6 +1,6 @@ {   "slug": "adom-vscode",-  "version": "1.1.66",+  "version": "1.1.67",   "type": "app",   "description": "CLI + VS Code extension that lets AI assistants and the Hydrogen Desktop frontend drive VS Code from inside an Adom container: open files, live get/set of any setting/theme/font (no reload), native streamed exec, a frontend event queue, container identity (hd/hw), api-key status/inject, extension query/update, modes, paste screenshots, and any VS Code command via a local HTTP API on port 8821 (with port-file fallback discovery).",   "license": "PROPRIETARY",
page.json+2−2
@@ -4,7 +4,7 @@   "slug": "adom-vscode",   "title": "adom-vscode",   "brief": "Let Claude, Codex and Kimi drive VS Code inside your Adom container",-  "version": "1.1.66",+  "version": "1.1.67",   "license": "PROPRIETARY",   "visibility": "public",   "hero": {@@ -141,4 +141,4 @@     "adom-vscode-extensions",     "adom-vscode-modes"   ]-}\ No newline at end of file+}
widgets/README.mdadded+39
@@ -0,0 +1,39 @@+# Hydrogen Widgets shipped by adom-vscode: Claude usage and Codex usage++Two small live panels for Hydrogen Desktop's Title Bar, showing how much of your AI limits you have used. They are a **facet** of this repo: the same package that installs the Adom VS Code extension also installs their scripts, and the `hydrogen-widget.json` at the repo root tells Hydrogen they exist. Open them from the Hydrogen Widgets pulldown (the puzzle-piece icon left of the meter), or let your AI do it: `POST /widgets/open {"id":"claude-usage"}`.++## Claude usage++![Claude usage in the full Title Bar: three stacked rows, 5h, week and Fable, with the Claude mark](widgets/docs/claude-usage.png)++Your session window (5h), your weekly window, and every weekly limit scoped to a model on your plan (Fable, Opus, ...), each as percent used, in the provider's own severity colour. In the full Title Bar the rows stack; in the compact Title Bar they sit in one row.++Where the numbers come from: the Claude Code sign-in in your workspace (`~/.claude/.credentials.json`), asked at `api.anthropic.com/api/oauth/usage`, the same endpoint Claude Code's `/usage` panel reads. The answer's `limits` list is what is drawn. That call runs a model for nothing and costs no quota.++## Codex usage++![Codex usage in the full Title Bar, with the OpenAI mark](widgets/docs/codex-usage.png)++Your plan's rate-limit window as percent used, plus the secondary window when your plan has one. From the Codex sign-in in your workspace (`~/.codex/auth.json`), asked at `chatgpt.com/backend-api/wham/usage`, what Codex's `/status` reads. With no Codex sign-in the slot says so.++## How often they ask++At most once every three minutes per provider, whatever the page polls. The page pauses while the Hydrogen window is hidden or minimized and reads once on return. An upstream error doubles the interval up to 15 minutes, then recovers. The sign-in file is re-read only when it changes.++## The files in this repo that make them widgets++```+hydrogen-widget.json                  the facet: two widgets, their ids, names, marks, widths, launch and health+widgets/bin/hydrogen-widget-lib.py    the shared helper: an http.server, the page, the interval cache+widgets/bin/hydrogen-widget-marks.py  the vendor marks, generated from the AI launch bar+widgets/bin/hydrogen-widget-claude-usage+widgets/bin/hydrogen-widget-codex-usage+widgets/README.md                     this page (linked from the pulldown row)+widgets/docs/*.png                    the pictures above+```++The package's `install.sh` symlinks `bin/hydrogen-widget-*` into `~/.local/bin`, which is where `launch.command` finds them. That is the whole integration; nothing in Hydrogen knows these two widgets by name.++## Make your own++The [hydrogen-widget skill](https://wiki.adom.inc/adom/hydrogen-bootstrap/files/skills/hydrogen-widget/SKILL.md) has the manifest fields, the launch contract, the tall and compact layouts, private repos, and a fifty-line clock to copy. The overview with pictures is the [Widgets page](https://wiki.adom.inc/adom/hydrogen/files/widgets/README.md) on the Hydrogen wiki.
widgets/docs/claude-usage.pngadded
⋯ 1 unchanged line ⋯
widgets/docs/codex-usage.pngadded
⋯ 1 unchanged line ⋯