4 Commits
Author SHA1 Message Date
pastilhasandClaude Opus 5 175595e585 Bracket the widget with whitespace so it groups with Offscale
Adds a trailing spacer to match the leading one, so Offscale + agents read
as their own group rather than running into the bluetooth/network/audio run.

Bar sections lay out with spacing: 0, so this can only come from slack the
widget reserves itself. Bluetooth already contributes ~11px of leading slot
slack; the spacer adds to that, taking the gap from ~13px to ~31px.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-17 18:07:29 +01:00
pastilhasandClaude Opus 5 0b520d97ac Size the bar icon to match, and close the gap to the label
Three separate contributors, only one of which was the obvious one:

- The glyph rendered at Style.bar.iconFont (26px at base-size 24), noticeably
  smaller than the Offscale mark beside it. Now space(20) = 40px, with the
  canvas sized to hold it.

- The label sat ~19px from the icon. Most of that was not the Row spacing but
  WidgetButton's own horizontalMargin, which defaults to 8.5 and lands at
  ~17px per side at this scale. Trimming the slot and the spacing barely moved
  it until that came down too.

- Trimming the slot flush to the glyph left nothing between this icon and the
  Offscale mark to its left: bar sections lay out with spacing: 0, so
  separation only ever comes from slack each widget reserves. Hence an
  explicit leading spacer rather than relying on the section.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-17 18:01:17 +01:00
pastilhasandClaude Opus 5 a52ef3c46c Show which Claude account is logged in
"Claude Code / MAX 20X" says nothing about which account the plan belongs
to, which matters when switching between a personal and a company login.

- Read oauthAccount.emailAddress from ~/.claude.json. Nothing in the shell's
  own data carries account identity — the usage JSON under
  ~/.local/state/omarchy/agents/usage/claude.json has limits and token counts
  but no email — so it comes from Claude Code's own config. The FileView is
  watched, so switching accounts updates without restarting the shell.

- Append it to the hero meta line, after the tier: "MAX 20X · you@example.com".

- Put the local part in the bar beside the icon, so the account is visible
  without opening the panel. A WidgetButton rather than a Text with a
  MouseArea: WidgetButton registers itself in bar.clickTargets, and while a
  panel is open KeyboardPanel's full-screen overlay forwards bar-strip clicks
  only to registered targets — an unregistered handler opens the panel and
  then dismisses it with the same click. Mirrors the icon's three buttons.

Only the Claude provider gets either; codex and fireworks store their auth
elsewhere and would need their own readers rather than showing a misleading
email.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-17 17:33:00 +01:00
pastilhas f3958bba4b Baseline: omarchy.agents as shipped
Panel.qml, Main.qml, Agent.qml and the provider assets exactly as they ship
in omarchy-dev 4.0.0.r1744.gf002044 (shell/plugins/agents/), alongside the
manifest `omarchy plugin clone` generates.

Kept on its own branch so `git diff stock..master` shows precisely what
this fork changes.
2026-08-17 17:33:00 +01:00