omarchy-plugin-weigh

Measure an Omarchy plugin's CPU and child processes via consented shell A/B restarts.

3|Updated Sep 12, 2026
One-click install
npx skills add https://github.com/mtolhuys/omakit --skill omarchy-plugin-weigh-mtolhuys
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: omarchy-plugin-weigh
Source: https://github.com/mtolhuys/omakit/tree/main/skills/omarchy-plugin-weigh
Command: npx skills add https://github.com/mtolhuys/omakit --skill omarchy-plugin-weigh-mtolhuys

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Plugin authors and users have no reliable way to know how heavy an Omarchy Quattro plugin is on the shell. Declared timer intervals and source code say nothing about actual CPU usage or spawned child processes, and per-plugin memory inside the shell is only knowable through a controlled A/B measurement. ## Core Features & Use Cases - A/B shell measurement: Restarts the omarchy-shell without and with the plugin multiple times, measuring CPU deltas against a printed noise floor and counting child processes with their memory and CPU. - Consent-gated execution: Refuses to run without explicit agreement (exit 2, NOT WEIGHED), since each run restarts the user's bar, panels, and plugins; protects shell.json with a backup and verifies restoration via MD5 comparison. - README-ready evidence sentence: Prints a paste-ready sentence per plugin naming the CPU floor, child processes, Omarchy version, and measurement date, backed by a JSON evidence file. - Use Case: Before submitting a plugin to the marketplace, run omakit weigh my-plugin after the user agrees, then paste the produced sentence into the plugin's README under a "What it weighs" heading. ## Quick Start Ask the user for explicit permission to restart their shell several times, then run omakit weigh on the installed plugin and paste the resulting measurement sentence into its README.

Frequently Asked Questions about omarchy-plugin-weigh

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I measure an Omarchy plugin's CPU usage?▼

Run omakit weigh <plugin-id-or-dir> after the user explicitly agrees to shell restarts. The command restarts omarchy-shell without and with the plugin several times, reporting median CPU delta against a measured noise floor plus child process counts.

Why does omakit weigh refuse to run with NOT WEIGHED?▼

The refusal happens when consent is missing (no --yes after explicit agreement), the shell lacks omarchy-shell or omarchy-restart-shell, the session is locked, the plugin is of kind bar, or a leftover shell.json.omakit-backup exists from an interrupted earlier measurement.

Can omakit weigh measure a plugin's memory usage?▼

No, per-plugin memory inside the shell is not measurable because Qt allocates from shared heaps and the shell settles on one of two levels 35 MB apart after restart. The printed memory delta is the shell's own startup variance, never attributable to the plugin.

When should I re-run omakit weigh on a plugin?▼

Re-run before marketplace submission and after any change adding a Timer, Process, FileView with watchChanges, SystemClock, or Connections to a busy service. A sentence measured on an older commit describes a plugin that no longer exists.

What are the limitations of omakit weigh measurements?▼

It cannot measure per-plugin memory, panel weight while open, or weight depending on other plugins. A result of no measurable CPU means the delta is within the noise floor, not zero, and --all is only suitable for unused lab machines.