Releases: nixfred/infomarchy
Releases · nixfred/infomarchy
Release list
Infomarchy 1.0.0 — every card reaches its session, the desk fits the screen
1.0 marks the desk as complete for daily use: every card reaches its session (terminal, Herdr, tmux, Boomux or a Claude background job), the whole desk fits a 1920×1080 screen with nothing clipped or running off the edge, and the layout is instrumented so future fixes are measured rather than guessed.
Added
- Every Claude card reaches its session. Claude Code's own registry (
claude agents --json) is merged by pid: exact job ids on Herdr-hosted sessions, session names on cards, busy state from the registry,blockedshown as waiting. Background sessions open withclaude attach <id>in a terminal. Theclaude daemon runsupervisor is no longer mistaken for a session (the phantom "Improving Pi" card). - Zombie sessions. A session that is unattended (background, or no window and nothing attachable), not busy and idle for six hours gets a STALE · idle Nh tag. The inspector offers STOP SESSION (
claude stop <id>, transcript kept) and END PROCESS (SIGTERM, only if the pid's start time and agent argv still match the card). Two clicks, four-second arm window, never automatic. - SUPER+I / SUPER+D legend. Header hints in the overlay; one quiet line under the MACHINE card on the wallpaper.
omarchy-shell infomarchy geometry— the settled layout widths (view, columns, LOCAL AI card/body/rows/tag/meter and each row's implicit width) as JSON. Read it before touching a layout constant.
Changed
- The desk fits 1080p end to end. MACHINE is a two-column grid (CPU|RAM, DISK|WIFI) with a one-line footer (WAN · LAN / rates · ping · BAT); sessions sit on one row; ops cards are content-sized; RECENT TASKS keeps a minimum height; LOCAL AI rows share one action column with fixed arrow and action slots; Meter values elide instead of pushing; both columns are fractions of the view width, never constants.
Fixed
- SUPER+D shows the real desktop (theme background behind the wallpaper) and SUPER+I applies inside the overlay as well as on the wallpaper. SUPER+D then SUPER+I now does what it says.
- LOCAL AI pills lost their right border. The provider-chips row was a
RowLayoutof rigid tags whose minimum (514 px) exceeded the card body (512 px); the column then laid every row out 2 px past the clip, cutting the right edge of LOAD/UNLOAD and the GPU bar. The chips are now aFlow(no minimum; wraps if labels grow). Found by measuring, not guessing: newomarchy-shell infomarchy geometryIPC reports the settled layout widths.
Infomarchy 0.5.0 — token trend, jump into Herdr/tmux/Boomux
Added
- 7-day token trend in USAGE & LIMITS: one line per provider, tokens per day, hover for exact figures, with a TOKENS / ≈ $ VALUE toggle. Per-provider rows show today's and lifetime estimated API value, cache-read share and session count. Fed entirely from Omarchy's Agents usage cache — no new scanning. Prices from a pinned, attributed LiteLLM snapshot (
pricing.json,THIRD_PARTY_NOTICES.md); unknown models are shown as unpriced, never guessed. - Clicking a card jumps inside the multiplexer. Herdr: the agent descends from
herdr server, so the client terminal is found through the Herdr client process and the pane is focused over Herdr's socket API (workspace.focus → tab.focus → pane.focus, bundledherdr-focus.ts). tmux:select-window,select-pane,switch-client. Boomux: window matched via the__attachclient or Boomux's own window title, thenboomux open <shell-id> --workspace <name>(verified on 1.9.7). - Sessions running under Claude Code's background daemon (
bg-pty-host) are labelled background · claude daemon and dimmed instead of looking like a duplicate of the interactive session in the same repository.
Fixed
- Attention rows and the inspector's FOCUS use the multiplexer-aware path.
Infomarchy 0.4.1 — marketplace review follow-up
Marketplace security-review follow-up (omacom/omarchy-plugin-marketplace#2931).
Changed
- Subprocess deadlines are firm: SIGTERM, a 250 ms grace period, SIGKILL if still alive, then reaped — in the collector and in every window-preview stage.
- Successful preview artifacts are deleted with an ownership check when a preview is replaced, when previews are disabled, when the session's window is gone, and when the view is destroyed; the stale sweep is capped at 32 removals per run.
Infomarchy 0.4.0 — the operations desk
First marketplace release with the operations desk. Verified on a stock Omarchy 4.0.2 VM (fresh install, no bun → install hint → pacman -S bun → desk fills in without a restart), and by two independent Codex reviews (gpt-5.6-sol and gpt-6-astra) whose 60+ confirmed findings were each reproduced before being fixed.
Added
- Operations desk: WHAT CHANGED (per-repository working-tree summary with seen/unseen tracking), NEXT ACTIONS (specific blocked / waiting / review signals with one-click ANSWER / RESOLVE / REVIEW / RESUME), PROJECT HEALTH (branch, dirty state, ahead/behind, last commit, newest GitHub Actions run via authenticated
gh, click to filter the whole dashboard). All three are draggable and individually removable. - Proactive alerts through Omarchy's notification service: blocked, waiting, ready-for-review, ended, and title-reported crashes; persistent seven-day deduplication with episode tracking; global switch, per-provider mutes, and quiet hours (22:00–08:00). Clicking an alert opens the fullscreen desk.
- Multiplexer-hosted sessions: agents inside Herdr, Boomux, or tmux stay visible with their bounded host identity; an attached tmux pane focuses its real client terminal and switches the client to that pane.
- Ollama controls: pick any installed model, LOAD (pinned) / UNLOAD per loaded row, size-aware CONFIRM for large models.
- Hermes (NousResearch) detected as a provider.
- Session inspector (right-click a card): move to workspace, focus, open a terminal in the project, toggle hover previews.
- Prompt search, pinning, and per-cell heatmap drill-down; recent rows shipped up to 1,000 for a full week.
CHANGELOG.md, and abuninstall step in the README (Omarchy does not ship bun).
Changed
- Collector output is one awaited write; snapshots are capped at 960 KiB, below the shell-side limit, so a valid frame can never be rejected.
- Every external JSON source (histories, usage caches, Ollama, hyprctl, gh) is parsed through one bounded, coercion-safe path; malformed or hostile content degrades a single card, never the desk.
- Automatic topic refinement talks only to a loopback Ollama unless
INFOMARCHY_ALLOW_REMOTE_OLLAMA=1is set — prompt text does not leave the machine by default. - Demo mode now covers the SUPER+D overlay as well as the wallpaper.
- Credential redaction covers env-style assignments, credentials in URLs, PEM blocks, JWTs, and common cloud key shapes (best effort).
- Provider detection matches the executable only (or a script run by a known interpreter):
cat /tmp/claudeis no longer an agent. - Attention signals are evaluated only for idle agents; a title that mentions "permission" or "failed" mid-task no longer alerts.
- The collector keeps running at a quarter cadence while the desk is hidden so alerts still arrive; it stops entirely only when alerts are off too.
- Throughput is displayed in bits/s; COPY PROMPT is now COPY EXCERPT (140-character redacted excerpt).
Fixed
- Desk went blank on: a
%in a Grok session directory name, a non-arrayactive_sessions.json, a nested object in a Grok pid, a null entry fromhyprctl clients,{"toString":0}anywhere in external JSON, two large usage caches, and ahistory.jsonlover 8 MB (Claude then showed as "not installed"). All degrade gracefully now. - Desk froze when a killed helper left a child holding its pipe (
gh→git, shell →sleep); the collector now abandons the pipe at its deadline and exits explicitly. - Ollama LOAD / UNLOAD never completed (helper waited for stdin EOF that Quickshell never sends).
- Topic refinement cached its own timeouts as summaries and never retried; Codex rows had no project and RESUME opened
$HOME; pinned prompts vanished past 80 rows; quiet-hours and muted alerts were marked delivered and never shown; the first snapshot after a restart dropped ended-session events. - Display escaping corrupted paths and clipboard text (
~/R&D→~/R&D);/home/pi2was treated as inside/home/pi; Git paths with non-ASCII characters were shown as octal escapes. - Session inference could bind a live agent to a later session's prompts or steal an id another live agent owned.
- Resource leaks: preview temp directories, orphaned state temp files, unbounded topic/pin/mute/seen maps, per-tick full scans of
opencode.db, unbounded git/gh/Ollama fan-out, rollout enumeration past the cap. - Inspector drawer froze on stale data; the wallpaper search box could never receive keystrokes; busy/attention animations ran while hidden; garbage
nvidia-smi/df/pingoutput rendered as an empty GPU, a null disk, or a QML binding error.