assets

package module
v0.68.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 10, 2026 License: MIT Imports: 1 Imported by: 0

README

Výbava

Výbava is FixIt Technologies' portable engineering environment: small tools, agent skills, and workstation diagnostics, distributed as one catalog where every item installs independently.

Packages

ID Kind What it does
memorylint applet Validate and maintain AI memory homes — schema, indexes, wikilinks, fixtures, write hooks. → docs/memorylint.md
claude-guards applet PreToolUse guard hooks for Claude Code — destructive git/docker, secret dumps, host-input automation, commit secrets, whole-disk walks, per-look Appium sessions, uncapped local test runners, and the context-budget rules (no shell-rewritten files, no whole-file dumps, no transcript reads); doctor re-wires hooks a settings.json rewrite dropped, vybava setup mac applies host settings. → docs/claude-guards.md
lok applet Locale catalogs for AI sessions — configured in vybava.config.ts, queried by key, written by verb with every locale kept in sync, extracted from source, gated in CI. → docs/lok.md
merge-assist applet Merge main without the mechanical conflicts — catalogs merge by key, generated files take theirs and regenerate, unmerged migrations renumber past the base; one table of what is left. → docs/merge-assist.md
vybava config verb The shared per-repo vybava.config.ts every applet reads — init scaffolds it with typed helpers, check gates CI, show prints the evaluated JSON. → docs/config.md
shrt applet Terminal-safe short links on luko.to — offline repo rules, team-shared dynamic rules, minted codes; also the redirector server. → docs/shrt.md
posta applet Drive a shared test mailbox end to end — mint a per-run plus-address, wait for the mail a journey triggered, take its links and attachments. → docs/posta.md
fontfreeze applet Freeze variable webfonts at rendered axis positions and subset per language.
perfrig applet Performance drills from a testing/<project>/perf manifest — ramp to first failure, percentile report.
framestats applet Android frame metrics for agents - parse gfxinfo framestats dumps (cadence, present intervals, per-gesture first-input and release-window frames) and perfetto traces (per-frame UI and RenderThread work, texture uploads, ART pauses, FrameTimeline jank). → docs/framestats.md
perflab / expo-device-perf applet + skill Physical-device performance lab for Expo / React Native - one lease holder per phone (raw adb/devicectl on a leased phone is refused by claude-guards), native builds keyed by a portable Expo fingerprint, JS bundle variants without native rebuilds, measured runs through the project's vybava.config.ts perflab adapter, Perfetto and xctrace probes, and every number re-derived from kept evidence with compare and budget gates. The skill carries the loop, the instrument choice and the render-cost rules. → docs/perflab.md
ingressgen applet Render and drift-check complete default-deny Docker ingress policies from a manifest.
reconcile applet Pull-based GitOps for the infra boxes — converge a VPS to its infra repo's merged main from a per-box manifest: HELD hotfixes, transactional nginx hooks, commit rollback, textfile metrics, mesh-only status page + estate hub. → docs/reconcile.md
readiness / release-readiness applet + skill Release prep of a whole integration branch: the skill runs authority questions, an inventory with a completeness critic, one named lane agent per journey cluster (own story, QA task, usertest board), capacity governance, a merged-branch roll-up and a readiness board. The applet validates the vybava.config.ts readiness adapter, freezes production..integration ranges, and seeds and renders the run directory. → docs/readiness.md
stores applet Store release verbs for App Store Connect, Google Play and EAS - versions, builds, the live listing and its store.config.json drift check, prepare/submit an App Store version, Play completed or staged rollouts that keep the live release (5xx retried with a fresh edit), and the one-distribution-certificate iOS signing check; credentials injected by onyx or read from gitignored files, never printed. → docs/stores.md
ui-loop applet The UI polish loop's deterministic layer: syncs the TypeScript/Playwright capture harness (typed screen manifest, capture + lint, app map) into a repo with a drift gate, runs passes from the vybava.config.ts uiLoop section (on a Devbox too), split-publishes them to vitrinka and scores the review backlog. The vitrinka map / review-loop workflows drive it. → docs/uiloop.md
issues / issue-sweep applet + skill A repository's whole GitHub issue backlog to verified outcomes: Codex lanes triage every open issue against a frozen base with a skeptic on each not-live verdict, one human gate settles every decision, live bugs are fixed test-first (RED proven, Claude fixer, independent Codex verify) into one PR per issue or dependency group, stale issues get evidence comments and approved closes, every issue is matched to its vitrinka task and the run is reported as a vitrinka artifact. → docs/issues.md
polish-kit applet The polish skill's deterministic layer: infers app/ui/api targets from the diff through the vybava.config.ts polish globs, resolves device lanes (iOS simulators and phones, Android devices and emulators, URLs) with the exact create/boot fix, keeps the pass ledger (run.json cells: lane x screen x theme x nav x text size, plus adverse-condition matrix cells), shoots simulators and Android natively, renders contact and edge-zoom sheets and the Markdown report with a delta. → docs/polish-kit.md
prm / push-all / sync / push-back skills The git family — prm is the one PR verb (create → review rounds → gated merge → teardown), push-all the commit doctrine, sync the pull/merge-up flow, push-back the claim verifier. Install with vybava install ai-git.
gitkit applet The deterministic layer those skills execute — PR selectors, review triage, merge gates, worktrees, path classification — as vybava gitkit <script>. → docs/gitkit.md
vybava setup team verb One-click henderson-tech Mac — the henderson group's tools (Onyx + Helium with the lazy browser MCPs, vitrinka, SwitcherooBar, Pultík; devbox opt-in) through their own channels plus the git family, as a checklist or --yes --json. → docs/setup-team.md
vybava setup mac verb Idempotent host settings and home folders — Gradle daemon idle timeout, ~/Exports (your own deliverables repo), ~/Backups, and their Finder sidebar favorites; the vybava install tree runs it too. → docs/setup-mac.md
vybava setup agents verb Plan, apply and check lazy Appium and shared cmux badges; safe fleet finish/resume and codexsync audit. → docs/agent-setup.md
codexsync applet Render ~/.claude skills and commands into ~/.agents/skills, the structure Codex discovers — nesting preserved, each command a source-command skill, duplicate discovery suppressed. → docs/codexsync.md
ccx skill Claude Code stays orchestrator and app-source author; usertests, UI verification, computer use, app mapping and e2e writing/running go to Codex — the native codex subagent inside cc sessions, never the Codex CLI — routing table, briefs per mode, status handling, browser etiquette, commit duties, Opus fallback.
codexusage applet Explain where the Codex plan limit went — per-thread spend from ~/.codex rollouts, the derived allowance, and the runway left at the measured burn rate. → docs/codexusage.md
tokentime applet Where your AI tokens went — Claude Code transcripts and Codex rollouts indexed incrementally into permanent hour × project × model buckets (worktrees fold into their repo), rolled up by day, hour, project and model with an API-equivalent USD value. → docs/tokentime.md
readeff applet How agents navigate code — what Claude Code and Codex reads and searches put into context against what they changed: re-reads, whole-file reads of big files, search hit rates and the most-read files, per repository, session and file. → docs/readeff.md
find-session applet + skill Find the Claude Code session a pasted conversation came from — its author ranked above sessions that only quoted it — and the one line that resumes it from its launch directory under the switcheroo preset it started with (cc, cco, ccoo, …); the /find-session skill wraps it. Install with vybava install find-session-cli find-session. → docs/find-session.md
repolicy applet Hold GitHub repository settings to a declared policy across whole owners — GitHub inherits no organization default, so audit reports the drift (exit 1) and apply converges it, touching only the settings the policy names. → docs/repolicy.md
menubar-doctor applet Find and fix macOS menu-bar items that run but never appear — since macOS 26 Control Center files a status item under the process that launched the app, so anything started from a terminal is filed under the terminal and stays invisible while its switch is off. → docs/menubar-doctor.md
reclaim / reclaiming-disk-space applet + skill Emergency disk reclaim for a dev Mac — a fixed ladder of regenerating caches deleted biggest-first with live df after every step, an early-stop target, and by-hand notes for what it refuses to touch. The skill adds the read-only audit (whole-Data-volume size ranking, orphaned Docker volumes by compose project name, session residue: shared-temp scratch, untracked ~/Exports evidence, transcripts, idle simulators) and the confirm-then-delete workflow. Install with vybava install reclaim reclaiming-disk-space. → docs/reclaim.md
macwatch applet Mac load sampler with owner attribution - append load, memory and the heaviest processes to a TSV every interval, each tagged with project, directory and the claude/codex session that spawned it; report integrates the file into offenders, per-project and per-session totals and a spike ledger. → docs/macwatch.md
plugin-gc applet Garbage-collect the Claude Code plugin cache — every version ever installed is kept behind a PID refcount that abandoned sessions never release, and the payload is almost all node_modules; reports by default, deletes only on --apply. → docs/plugin-gc.md
vpn applet Persistent macOS WireGuard tunnels outside WireGuard.app — install pulls the Onyx profile into a root-only LaunchDaemon that survives reboots; status reports the route truth (up via wg-quick (utun11)) beside the app's Disconnected, the daemon kind and whether the tunnel DNS answers. → docs/vpn.md
uplink applet Send one process's traffic out of an iPhone's USB Personal Hotspot while the Mac's default route and VPN stay put — devices finds attached phones by UDID and their hotspot interface, relay is a loopback CONNECT relay bound to it (IP_BOUND_IF: no root, no routes), measure times a bounded random upload. claude-switcheroo's daemon drives it. → docs/uplink.md
onyx-rest applet One REST call with an Onyx-injected secret — Bearer or HTTP Basic, the response in a 0600 --out file; --base first and once, so an Onyx allowed_commands prefix pins the host. → docs/onyx-rest.md
vybava vault-stdin verb Deliver Onyx-injected JSON through a private process pipe; no plaintext credential files or terminal output. → docs/vault-stdin.md
handoffs applet Handoff ledger upkeep — handoffs reconcile judges every open handoff by whether its branches and PRs are still alive and archives the dead ones; unknown is never touched. → docs/handoffs.md
press applet Deterministic state for the document family — project resolution, ~/Exports/<project>/ config and index, ARES lookups, shared doctrine. → docs/press.md
press-pdf / press-logo / press-offer / press-email skills Offer, documentation and legal PDFs; brand marks; Czech commercial DOCX; Outlook-paste client emails. Issuer identity stays machine-local. → docs/press.md
handoff / continue / codrive skills /handoff writes a self-sufficient handoff a fresh session resumes with /continue (a vitrinka task URL routes to pickup); /codrive drives a headed Onyx-browser flow while the human handles sign-in, 2FA, payment or consent.
henderson-instructions instructions The team's "How we work" contract as a managed section at the top of ~/.claude/CLAUDE.md / ~/.codex/AGENTS.md plus its law docs; sync upgrades it, an edited section is kept and reported, `vybava instructions status

Groups (recommended, experimental, claude-hooks, ai-git, press-family, everything) are composable presets in the catalog — never code. claude-hooks is what a Claude home's hooks call; on Linux (a Devbox portal box) the same release archive installs it: vybava install claude-hooks.

Install

Homebrew, on the WireGuard mesh (the tap is public, the archives come from the mesh-only apps.fixit.app shelf — no GitHub authentication needed):

brew install --cask henderson-tech/tap/vybava

A new henderson-tech Mac, after Homebrew's own installer:

brew install --cask henderson-tech/tap/vybava && vybava install

vybava install opens the tree of everything henderson-tech ships — Claude Code and Codex, the Onyx vault, vitrinka, deployik, switcheroo, Pultík, the skills — installs the picked set and runs the sign-ins in order. Later, vybava sync brings the Mac current (or vybava sync auto on, ticked during onboarding, does it once a day), vybava version is the line to paste when something is off, and vybava doctor --fix repairs what broke. Details: docs/install.md.

CI images, workflows and provisioning scripts use the release installer in ci/ — never a checkout of this repository:

curl -fsSL -o /tmp/vybava-install.sh \
  https://apps.fixit.app/releases/vybava-ci-install/0.68.0/install.sh \
  && bash /tmp/vybava-install.sh --version 0.68.0 --bin-dir /usr/local/bin --install memorylint,hotfix

From source:

go build -o ./bin/vybava ./cmd/vybava
./bin/vybava catalog list
./bin/vybava install recommended

install takes item or group selectors (default: the recommended group) and supports --agent claude|codex|all, --scope user|project, --dry-run, and --json. Installed applets are links to the vybava binary, so vybava memory lint . and memorylint . are equivalent.

Layout

catalog/catalog.yaml   package and group source of truth
cmd/vybava/            multicall entrypoint
internal/<id>/         one focused Go package per capability
skills/<id>/           canonical cross-agent skill payloads (SKILL.md plus any
                       references/ and assets/ the skill ships)
docs/                  per-tool references, release flow, decisions
Dockerfile             the luko.to redirector image (deployik app "luko")

Extending

One payload + one catalog entry = one package; presets are one more catalog line. Contract: docs/decisions/0001-modular-catalog.md · checklist: CONTRIBUTING.md · releases: docs/homebrew.md.

Documentation

Overview

Package assets exposes Výbava's versioned catalog and installable payloads.

Index

Constants

This section is empty.

Variables

FS is the immutable payload shipped inside the Výbava binary.

The bare "skills" pattern walks the whole payload tree — a skill is not always a lone SKILL.md; press-pdf ships references/ and an assets/ pipeline. Without the all: prefix Go skips _ and . prefixed entries, which keeps __pycache__ and editor droppings out of the binary for free.

Mods need the all: prefix: the plugin manifest lives in .claude-plugin/. The installer skips what that drags in — the engine-written .claude-plugin/types/ a local load lays beside a mod, and .DS_Store.

Instructions are a section body plus docs (instructions/<id>/), spliced into a person's own CLAUDE.md / AGENTS.md by internal/instructions.

Functions

This section is empty.

Types

This section is empty.

Directories

Path Synopsis
cmd
vybava command
internal
agentsetup
Package agentsetup owns the reproducible host settings for agent helpers.
Package agentsetup owns the reproducible host settings for agent helpers.
blip
Package blip is a chaos proxy for adverse-condition testing: one named proxy per `blip up <name> --listen <addr> --to <upstream>`, whose fault is toggled live from the CLI while the app under test keeps pointing at it.
Package blip is a chaos proxy for adverse-condition testing: one named proxy per `blip up <name> --listen <addr> --to <upstream>`, whose fault is toggled live from the CLI while the app under test keeps pointing at it.
claudeguards
Package claudeguards is the single-binary PreToolUse enforcement for the hard bans in ~/.claude/CLAUDE.md: destructive git/docker calls, secret and environment dumps, host-input automation, /e2e screenshot hygiene, pattern kills and kills of agent sessions (`claude-guards list process`), commit-time secret scanning, the machine-health rules (`claude-guards list machine`) — and the context-budget rules that keep an agent from dumping whole files or rewriting them through the shell.
Package claudeguards is the single-binary PreToolUse enforcement for the hard bans in ~/.claude/CLAUDE.md: destructive git/docker calls, secret and environment dumps, host-input automation, /e2e screenshot hygiene, pattern kills and kills of agent sessions (`claude-guards list process`), commit-time secret scanning, the machine-health rules (`claude-guards list machine`) — and the context-budget rules that keep an agent from dumping whole files or rewriting them through the shell.
cli
cmux
Package cmux is the one client of the cmux terminal's control socket (JSON lines, v2): socket discovery, the reachability/version/access check, and the handful of methods fleet and watch need — resolve a session's surface by pid, read its screen, paste into it, press a key, focus it, open a tab beside it, and follow the event stream.
Package cmux is the one client of the cmux terminal's control socket (JSON lines, v2): socket discovery, the reachability/version/access check, and the handful of methods fleet and watch need — resolve a session's surface by pid, read its screen, paste into it, press a key, focus it, open a tab beside it, and follow the event stream.
codexsync
Package codexsync renders the Claude Code personal home (skills and commands) into the structure Codex actually discovers.
Package codexsync renders the Claude Code personal home (skills and commands) into the structure Codex actually discovers.
codexusage
Package codexusage explains where a Codex CLI plan limit went.
Package codexusage explains where a Codex CLI plan limit went.
configdiscover
Package configdiscover composes lok parsing and vconfig without making the config loader depend on its consumers.
Package configdiscover composes lok parsing and vconfig without making the config loader depend on its consumers.
converge
Package converge is the inventory and convergence engine behind `vybava install`, `sync`, `doctor --fix` and `version`.
Package converge is the inventory and convergence engine behind `vybava install`, `sync`, `doctor --fix` and `version`.
devboxguest
Package devboxguest answers one question: does this process run inside a Devbox guest (the devbox-vm on Devulinka or Produlinka) rather than on the owner's Mac? A Devbox portal session runs Claude Code there with the Mac's Claudik settings, so the hooks those settings wire meet a different machine: claude-guards' Mac rules (route this command to the Devbox, cap this Mac's dev servers, reap this Mac's orphans) must stand down — the command already runs on the Devbox, and the process table is every workspace's — and memo must not write the personal homes of the box's pull-only Claudik clone.
Package devboxguest answers one question: does this process run inside a Devbox guest (the devbox-vm on Devulinka or Produlinka) rather than on the owner's Mac? A Devbox portal session runs Claude Code there with the Mac's Claudik settings, so the hooks those settings wire meet a different machine: claude-guards' Mac rules (route this command to the Devbox, cap this Mac's dev servers, reap this Mac's orphans) must stand down — the command already runs on the Devbox, and the process table is every workspace's — and memo must not write the personal homes of the box's pull-only Claudik clone.
devlab
Package devlab is the machine-global ledger of physical test phones and the leases that give exactly one holder a phone at a time.
Package devlab is the machine-global ledger of physical test phones and the leases that give exactly one holder a phone at a time.
envbridge
Package envbridge transfers an explicit environment through a private, short-lived Unix socket.
Package envbridge transfers an explicit environment through a private, short-lived Unix socket.
filelock
Package filelock is the shared exclusive file lock for new applet code: an OS-managed lock (flock on unix, LockFileEx on windows) the kernel releases when the holder's handle closes or its process dies, so a crash never leaves a stale lock.
Package filelock is the shared exclusive file lock for new applet code: an OS-managed lock (flock on unix, LockFileEx on windows) the kernel releases when the holder's handle closes or its process dies, so a crash never leaves a stale lock.
findsession
Package findsession finds the Claude Code session a piece of conversation came from — a pasted ending, a phrase or a session id — and names the switcheroo preset (cc, cco, ccoo, …) that reopens it the way it started.
Package findsession finds the Claude Code session a piece of conversation came from — a pasted ending, a phrase or a session id — and names the switcheroo preset (cc, cco, ccoo, …) that reopens it the way it started.
fleet
Package fleet is the one reader of Claude Code's session registry (~/.claude/sessions/<pid>.json): every session's state for the /fleet pane, proven-dead detection for `fleet revive`, Codex rows read-only, and the per-session job ledger the lazarus mod writes.
Package fleet is the one reader of Claude Code's session registry (~/.claude/sessions/<pid>.json): every session's state for the /fleet pane, proven-dead detection for `fleet revive`, Codex rows read-only, and the per-session job ledger the lazarus mod writes.
fontfreeze
Package fontfreeze freezes variable webfonts at the style positions a site actually renders, then subsets them to the languages it actually sets.
Package fontfreeze freezes variable webfonts at the style positions a site actually renders, then subsets them to the languages it actually sets.
framestats
Package framestats reads Android frame evidence: `dumpsys gfxinfo <pkg> framestats` dumps (Parse) and Perfetto protobuf traces (ReadTrace).
Package framestats reads Android frame evidence: `dumpsys gfxinfo <pkg> framestats` dumps (Parse) and Perfetto protobuf traces (ReadTrace).
gitkit
Package gitkit is the deterministic layer the git-family skills (prm, push-all, sync) execute: PR selector parsing, review-thread triage, merge preconditions, worktree resolution, path classification, DB-url safety.
Package gitkit is the deterministic layer the git-family skills (prm, push-all, sync) execute: PR selector parsing, review-thread triage, merge preconditions, worktree resolution, path classification, DB-url safety.
gittest
Package gittest keeps every git a test binary starts from outliving the command that started it.
Package gittest keeps every git a test binary starts from outliving the command that started it.
handoffs
Package handoffs keeps the handoff ledger honest: it decides which open handoffs under `~/.claude/handoffs` still have a branch or pull request alive and archives the rest — done when the work merged, abandoned when it simply stopped.
Package handoffs keeps the handoff ledger honest: it decides which open handoffs under `~/.claude/handoffs` still have a branch or pull request alive and archives the rest — done when the work merged, abandoned when it simply stopped.
hostsetup
Package hostsetup applies the idempotent per-machine settings a Mac needs: health under many parallel agent sessions, and the home folders the team rules point at.
Package hostsetup applies the idempotent per-machine settings a Mac needs: health under many parallel agent sessions, and the home folders the team rules point at.
hotfix
Package hotfix drives one release-lineage hotfix end to end: a branch cut from the tag production runs, an isolated worktree, a PR against the default branch (the forward-port), a production deploy dispatched ON the hotfix branch, and the merge that lands the fix — and its tag — on main.
Package hotfix drives one release-lineage hotfix end to end: a branch cut from the tag production runs, an isolated worktree, a PR against the default branch (the forward-port), a production deploy dispatched ON the hotfix branch, and the merge that lands the fix — and its tag — on main.
ingressgen
Package ingressgen renders a complete, default-deny DOCKER-USER ruleset from a small YAML manifest.
Package ingressgen renders a complete, default-deny DOCKER-USER ruleset from a small YAML manifest.
instructions
Package instructions keeps a Výbava-managed section inside a person's own agent instructions file (~/.claude/CLAUDE.md, ~/.codex/AGENTS.md) and the whole-file docs it links (~/.claude/docs/vybava/).
Package instructions keeps a Výbava-managed section inside a person's own agent instructions file (~/.claude/CLAUDE.md, ~/.codex/AGENTS.md) and the whole-file docs it links (~/.claude/docs/vybava/).
journeys
Package journeys validates human-authored journey libraries and records evidence.
Package journeys validates human-authored journey libraries and records evidence.
lok
Package lok owns locale catalogs for AI-driven sessions: a JSON catalog is never read whole — it is queried by key, written by verb, and kept in sync across locales by construction.
Package lok owns locale catalogs for AI-driven sessions: a JSON catalog is never read whole — it is queried by key, written by verb, and kept in sync across locales by construction.
macwatch
Package macwatch samples what is loading a Mac and attributes every heavy process to a project, a directory and the Claude/Codex session that owns it.
Package macwatch samples what is loading a Mac and attributes every heavy process to a project, a directory and the Claude/Codex session that owns it.
memo
Package memo is the append-only memory ledger: LEDGER.md holds every row ever written, MEMORY.md is rendered from it (pinned, then usage score, then newest), usage.jsonl records the citations a session actually made.
Package memo is the append-only memory ledger: LEDGER.md holds every row ever written, MEMORY.md is rendered from it (pinned, then usage score, then newest), usage.jsonl records the citations a session actually made.
menubar
Package menubar diagnoses and repairs macOS menu-bar items that run but never appear.
Package menubar diagnoses and repairs macOS menu-bar items that run but never appear.
mergeassist
Package mergeassist takes the mechanical conflict classes out of a merge — locale catalogs (lok's driver), generated files, migration timestamps — so a session only reads genuine code conflicts.
Package mergeassist takes the mechanical conflict classes out of a merge — locale catalogs (lok's driver), generated files, migration timestamps — so a session only reads genuine code conflicts.
mergeassist/gitmerge
Package gitmerge is the leaf both merge drivers share (lok's catalog driver and merge-assist's generated-file driver): the journal a driver appends what it did to, and the text-merge fallback that keeps git's default behaviour for anything a driver will not own.
Package gitmerge is the leaf both merge drivers share (lok's catalog driver and merge-assist's generated-file driver): the journal a driver appends what it did to, and the text-merge fallback that keeps git's default behaviour for anything a driver will not own.
onyxrest
Package onyxrest is one REST call with a vault-injected secret: Onyx's run_command puts the token in ONYX_REST_TOKEN, this process adds the auth header, and the response lands in a 0600 file (Onyx suppresses the stdout of every secret-injected child, so a file is the only channel back).
Package onyxrest is one REST call with a vault-injected secret: Onyx's run_command puts the token in ONYX_REST_TOKEN, this process adds the auth header, and the response lands in a 0600 file (Onyx suppresses the stdout of every secret-injected child, so a file is the only channel back).
operator
Package operator records observations, Codex delivery receipts and human-rated proposals.
Package operator records observations, Codex delivery receipts and human-rated proposals.
perflab
Package perflab is the verb layer of the perflab applet: physical-device performance testing of Expo / React Native apps.
Package perflab is the verb layer of the perflab applet: physical-device performance testing of Expo / React Native apps.
perflab/analysis
Package analysis is perflab's analyze, compare and report: pure functions of stored evidence (an xctrace .trace, framestats dumps, a poll sidecar, a Perfetto trace, marks, the runner log), so `perflab analyze --reread` recomputes every number from the files alone and compare reads only the metrics re-derived here, never a repo's own result JSON.
Package analysis is perflab's analyze, compare and report: pure functions of stored evidence (an xctrace .trace, framestats dumps, a poll sidecar, a Perfetto trace, marks, the runner log), so `perflab analyze --reread` recomputes every number from the files alone and compare reads only the metrics re-derived here, never a repo's own result JSON.
perflab/buildindex
Package buildindex is perflab's native build index and JS bundle variants: the portable native key computed from `@expo/fingerprint --debug`, the content-addressed store under the perflab cache dir (builds, bundles, variants), the serialised native builds with a no-progress watchdog, the Hermes bundle export, the iOS and Android pack (bundle swap + re-sign) and the device install with its fencing stamp.
Package buildindex is perflab's native build index and JS bundle variants: the portable native key computed from `@expo/fingerprint --debug`, the content-addressed store under the perflab cache dir (builds, bundles, variants), the serialised native builds with a no-progress watchdog, the Hermes bundle export, the iOS and Android pack (bundle swap + re-sign) and the device install with its fencing stamp.
perflab/doctor
Package doctor is `perflab doctor`: every preflight that cost the 2026-10-01 calendar campaign hours, run before a build, a measured run or a probe, each failure a closed diagnostic with the exact fix and `next` listing the fixes in dependency order (host before device, transport before app).
Package doctor is `perflab doctor`: every preflight that cost the 2026-10-01 calendar campaign hours, run before a build, a measured run or a probe, each failure a closed diagnostic with the exact fix and `next` listing the fixes in dependency order (host before device, transport before app).
perflab/hostexec
Package hostexec is how perflab's preflight, network and WDA verbs reach the Mac: one external-process seam (each child in its own process group, a hard timeout and an optional no-output stall watchdog that stop exactly that group, never anything found by name), the kernel pipe capacity probe that predicts an xcodebuild "Planning build" hang, and the `perflab[...]` progress lines Monitor greps on stderr.
Package hostexec is how perflab's preflight, network and WDA verbs reach the Mac: one external-process seam (each child in its own process group, a hard timeout and an optional no-output stall watchdog that stop exactly that group, never anything found by name), the kernel pipe capacity probe that predicts an xcodebuild "Planning build" hang, and the `perflab[...]` progress lines Monitor greps on stderr.
perflab/netfwd
Package netfwd is `perflab net`: how an Android phone reaches an API it cannot route to.
Package netfwd is `perflab net`: how an Android phone reaches an API it cannot route to.
perflab/wda
Package wda is perflab's prebuilt WebDriverAgent index.
Package wda is perflab's prebuilt WebDriverAgent index.
perfrig
Package perfrig is the reusable performance-drill orchestrator behind the `testing/<project>/perf/` convention.
Package perfrig is the reusable performance-drill orchestrator behind the `testing/<project>/perf/` convention.
plaud
Package plaud talks to the Plaud developer API directly: OAuth 2.0 authorization-code + PKCE for the public client, a short-lived access-token cache, and the handful of read-only data calls the retired @plaud-ai/mcp server wrapped (files, notes, transcript blocks, current user).
Package plaud talks to the Plaud developer API directly: OAuth 2.0 authorization-code + PKCE for the public client, a short-lived access-token cache, and the handful of read-only data calls the retired @plaud-ai/mcp server wrapped (files, notes, transcript blocks, current user).
plugingc
Package plugingc keeps the Claude Code plugin cache honest.
Package plugingc keeps the Claude Code plugin cache honest.
polishkit
Package polishkit is the `polish-kit` applet: the deterministic layer of the polish skill (target app|ui|api x intensity quick|default|full).
Package polishkit is the `polish-kit` applet: the deterministic layer of the polish skill (target app|ui|api x intensity quick|default|full).
posta
Package posta drives the shared AI test mailbox — the one inbox an agent may read end to end.
Package posta drives the shared AI test mailbox — the one inbox an agent may read end to end.
press
Package press is the determinism layer of the press skill family (press-pdf, press-logo, press-offer, press-email).
Package press is the determinism layer of the press skill family (press-pdf, press-logo, press-offer, press-email).
readeff
Package readeff measures how coding agents navigate code: what their reads and searches put into context, how much of it was re-read, and how that compares with what they changed.
Package readeff measures how coding agents navigate code: what their reads and searches put into context, how much of it was re-read, and how that compares with what they changed.
readiness
Package readiness is the deterministic layer of the release-readiness skill: it validates a project's `readiness` section of vybava.config.ts, freezes each repo's production..integration range, seeds a run directory with the skill's scripts and ledgers, and renders lane rules, lane bodies and agent briefs from the run's manifests.
Package readiness is the deterministic layer of the release-readiness skill: it validates a project's `readiness` section of vybava.config.ts, freezes each repo's production..integration range, seeds a run directory with the skill's scripts and ledgers, and renders lane rules, lane bodies and agent briefs from the run's manifests.
reclaim
Package reclaim is the emergency disk reclaimer: when a dev Mac is minutes away from processes crashing on a full disk, it must free the most space in the fewest seconds, visibly, without asking anything.
Package reclaim is the emergency disk reclaimer: when a dev Mac is minutes away from processes crashing on a full disk, it must free the most space in the fewest seconds, visibly, without asking anything.
reconcile
Package reconcile is the pull-based GitOps engine for the infra boxes: a cron tick pulls origin/main into a clone and converges the mapped files onto the box.
Package reconcile is the pull-based GitOps engine for the infra boxes: a cron tick pulls origin/main into a clone and converges the mapped files onto the box.
redact
Package redact finds secret material leaked into agent conversation history — Claude Code sessions, their subagents, workflow journals, persisted tool results and background-task output, Codex rollouts, both CLIs' prompt history — and overwrites it in place.
Package redact finds secret material leaked into agent conversation history — Claude Code sessions, their subagents, workflow journals, persisted tool results and background-task output, Codex rollouts, both CLIs' prompt history — and overwrites it in place.
repolicy
Package repolicy converges GitHub repository settings to a declared policy.
Package repolicy converges GitHub repository settings to a declared policy.
runx
Package runx is the AI-first envelope contract shared by Výbava applets: one versioned JSON document per invocation under --json, a closed diagnostic vocabulary, and real exit codes.
Package runx is the AI-first envelope contract shared by Výbava applets: one versioned JSON document per invocation under --json, a closed diagnostic vocabulary, and real exit codes.
secretscan
Package secretscan is the one catalogue of what a leaked secret looks like in text: provider token shapes, credential and secret-named env assignments, URL credentials, auth headers and the "length + prefix" fragments an agent prints when it believes a fragment is harmless.
Package secretscan is the one catalogue of what a leaked secret looks like in text: provider token shapes, credential and secret-named env assignments, URL credentials, auth headers and the "length + prefix" fragments an agent prints when it believes a fragment is harmless.
selfupdate
Package selfupdate keeps a cask-installed vybava current: a daily look at the tap's cask file (exactly what `brew upgrade` will install), a one-line notice through the claude-guards SessionStart hook, and an opt-in auto-upgrade.
Package selfupdate keeps a cask-installed vybava current: a daily look at the tap's cask file (exactly what `brew upgrade` will install), a one-line notice through the claude-guards SessionStart hook, and an opt-in auto-upgrade.
shellseg
Package shellseg is the ONE definition of "what commands does this string run": quote-aware splitting, heredoc stripping, assignment and subshell trimming, and runner-payload unwrapping.
Package shellseg is the ONE definition of "what commands does this string run": quote-aware splitting, heredoc stripping, assignment and subshell trimming, and runner-payload unwrapping.
shellword
Package shellword renders a string as one POSIX shell word, for the commands vybava prints for a human or agent to paste (Fix lines, `next` steps, generated scripts).
Package shellword renders a string as one POSIX shell word, for the commands vybava prints for a human or agent to paste (Fix lines, `next` steps, generated scripts).
shrt
Package shrt shortens long URLs into terminal-safe luko.to forms and serves the redirector that expands them back.
Package shrt shortens long URLs into terminal-safe luko.to forms and serves the redirector that expands them back.
skillmeta
Package skillmeta reads the YAML frontmatter of a skill's SKILL.md or a Claude command file: the keys Výbava's installers act on.
Package skillmeta reads the YAML frontmatter of a skill's SKILL.md or a Claude command file: the keys Výbava's installers act on.
skipci
Package skipci is the org standard for opting a pull request out of the machinery that would otherwise gate it: two labels and one job guard.
Package skipci is the org standard for opting a pull request out of the machinery that would otherwise gate it: two labels and one job guard.
stores
Package stores is the store-release applet: App Store Connect (ES256 JWT), the Google Play Developer API (service-account OAuth) and the EAS GraphQL API (Expo token or session), each behind read verbs and a few named write verbs that emit the runx envelope.
Package stores is the store-release applet: App Store Connect (ES256 JWT), the Google Play Developer API (service-account OAuth) and the EAS GraphQL API (Expo token or session), each behind read verbs and a few named write verbs that emit the runx envelope.
tokentime
Package tokentime answers "where did my AI tokens go" — by project, model and hour — for every Claude Code session and Codex thread on this machine.
Package tokentime answers "where did my AI tokens go" — by project, model and hour — for every Claude Code session and Codex thread on this machine.
toolsetup
Package toolsetup installs and updates the catalog's `tool` items — the external apps and CLIs a henderson-tech Mac runs on — through each product's own published channel: Homebrew, the apps.fixit.app pultik shelf, bun, or the product's installer.
Package toolsetup installs and updates the catalog's `tool` items — the external apps and CLIs a henderson-tech Mac runs on — through each product's own published channel: Homebrew, the apps.fixit.app pultik shelf, bun, or the product's installer.
transcripts
Package transcripts reads the append-only JSONL logs agent CLIs write — Claude Code transcripts and Codex rollouts — incrementally and read-only.
Package transcripts reads the append-only JSONL logs agent CLIs write — Claude Code transcripts and Codex rollouts — incrementally and read-only.
tsgate
Package tsgate typechecks a TypeScript program on the TypeScript 7 native compiler while the repo's `typescript` dependency stays on 6 (or 5.9) for every tool that imports the classic compiler API, which TS 7 does not ship (ts-node, jest config loaders, typescript-eslint, declaration builders).
Package tsgate typechecks a TypeScript program on the TypeScript 7 native compiler while the repo's `typescript` dependency stays on 6 (or 5.9) for every tool that imports the classic compiler API, which TS 7 does not ship (ts-node, jest config loaders, typescript-eslint, declaration builders).
ui
uiloop
Package uiloop is the `ui-loop` applet: the deterministic layer of the UI polish loop (map → capture + lint → review → fix → verify).
Package uiloop is the `ui-loop` applet: the deterministic layer of the UI polish loop (map → capture + lint → review → fix → verify).
uplink
Package uplink sends one process's traffic out of a chosen network interface — an iPhone's USB Personal Hotspot — while the Mac's default route stays where it is.
Package uplink sends one process's traffic out of a chosen network interface — an iPhone's USB Personal Hotspot — while the Mac's default route stays where it is.
vaultstdin
Package vaultstdin delivers Onyx-injected JSON to a consuming process's stdin.
Package vaultstdin delivers Onyx-injected JSON to a consuming process's stdin.
vconfig
Package vconfig loads the shared per-repository Výbava configuration: vybava.config.ts (evaluated by bun, the repo's TypeScript is the source of truth) or vybava.config.json (the same shape, for machines without bun).
Package vconfig loads the shared per-repository Výbava configuration: vybava.config.ts (evaluated by bun, the repo's TypeScript is the source of truth) or vybava.config.json (the same shape, for machines without bun).
vpn
Package vpn runs named macOS WireGuard tunnels outside WireGuard.app as persistent LaunchDaemons, and reports honestly how each one is carried.
Package vpn runs named macOS WireGuard tunnels outside WireGuard.app as persistent LaunchDaemons, and reports honestly how each one is carried.
watch
Package watch is the one machine-wide poller behind `vybava watch`: sessions and scripts subscribe to a target (a PR, a devbox box or workspace run, a vitrinka task, a deployik environment) and a condition, and the daemon (`watch serve`, the LaunchAgent vybava.watchd) probes each DISTINCT target once per interval however many subscribers it has, under one GitHub budget, and queues per-session events: change, met, error, expired.
Package watch is the one machine-wide poller behind `vybava watch`: sessions and scripts subscribe to a target (a PR, a devbox box or workspace run, a vitrinka task, a deployik environment) and a condition, and the daemon (`watch serve`, the LaunchAgent vybava.watchd) probes each DISTINCT target once per interval however many subscribers it has, under one GitHub budget, and queues per-session events: change, met, error, expired.
worktime
Package worktime provides metadata-only workstation activity observations.
Package worktime provides metadata-only workstation activity observations.
xctrace
Package xctrace reads Instruments traces through `xctrace export`: the table of contents, any exported table as a stream of rows with id/ref resolved, and the hitch, render, update and time-profile readings perflab's analyze builds on.
Package xctrace reads Instruments traces through `xctrace export`: the table of contents, any exported table as a stream of rows with id/ref resolved, and the hitch, render, update and time-profile readings perflab's analyze builds on.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL