Files
command-center/omp-docs/tools/index.md
T
Frank 56fc899763 Ship the PCIe probe instruments with a guard that refuses to contend with a service
The RDNA4 offload campaign left three HIP probes and a driver sitting loose in
$HOME, where the next agent cannot find them and a stray `rm -rf` ends them. They
answer a recurring question on the R9700 box — is decode limited by the link or by
the engine's read path — so they move into scripts/probes/ with a driver, tests,
and a page.

Two things changed in the code, not just the address:

- The driver measures only after a guard that runs BEFORE anything is built:
  gpu_busy_percent over PCIE_PROBE_MAX_BUSY, or any process holding /dev/kfd, is a
  refusal (exit 3) rather than a measurement. A benchmark taken beside a live
  endpoint is both disruptive and worthless, and silently unloading a production
  service is not a tool's decision — --force is the human saying otherwise. The
  refusal-before-build ordering is pinned by a test, because the sysfs and kfd
  paths are overridable and a refusal is otherwise untestable off the card box.
- hip_smoke.hip and pcie_probe.hip called hipGetDeviceProperties, which SEGFAULTS
  on this ROCm build even though hipGetDeviceCount works; only pcie_bw.hip avoided
  it, and that is the one that produced the campaign's numbers. Device identity now
  comes from the sysfs topology block the driver prints, so all three probes are
  runnable on the build we ship. Verified here: refusal on a real busy APU (exit 3),
  missing toolchain (exit 4), missing sources (exit 2). Compile-and-run still needs
  the box with hipcc.

Refs #53
2026-10-20 19:24:58 -07:00

3.2 KiB

Tool Documentation

Configuration guides and reference material for installed software. Each tool has its own directory with an index.md entry point.


Available Tools

  • applications — Default userspace applications on CachyOS with Niri — browsers, editor, terminal, file manager, audio, screenshots, gaming.
  • cachyos — Arch-based rolling release with performance-optimized kernels, repositories, and gaming stack. Running on the workstation.
  • comfyui — Node-based AI image generation engine on dankclaw. FLUX.2 klein 4B, CPU backend, systemd managed.
  • dotfiles-deploy — How dotfiles/ packages become live config: deploy.sh modes, host override packages, and why theme media and worktree-enabled units are traps.
  • ghostty — GPU-accelerated terminal emulator with extensive configuration, keybindings, and shaders.
  • gitea — Private Git hosting on dankclaw. Quadlet-managed containers: Gitea, PostgreSQL, Caddy.
  • handy — Offline speech-to-text transcription with WebKitGTK backend and Tauri v2 UI.
  • live-sync — Heartbeat daemon committing machine-written paths (memories, managed-skills, live config, dotfiles) in the command-center checkout; systemd user timer, alerts via ntfy.
  • llama.cpp — Local LLM inference server supporting GGUF models with OpenAI-compatible API.
  • linux-power-management — Sleep/wake troubleshooting, NVIDIA GPU power management, and diagnostics for Linux systems.
  • neovim — Two editors in one binary: vanilla nvim for quick edits and the lazyvim NVIM_APPNAME profile, with the base16 wallpaper-palette hook and fresh-box install.
  • niri — Scrollable-tiling Wayland compositor — configuration, keybindings, and architecture for the workstation.
  • noctalia-shell — Native desktop environment for Niri — launcher, control center, settings, lock screen, session menu, hotkey overlay, media controls, and system management.
  • packages — packages/*.pkgs desired state and the two tools that keep a machine and its manifest agreeing: install.sh installs the delta, pkg-inventory.sh reports what the machine has outgrown.
  • pcie-probe — HIP probes that separate PCIe link bandwidth from the engine's read path at the expert-slab size, and the refuse-by-default guard against benchmarking beside a live service.
  • remote-job — Detached job runner for ssh work: completion sentinels on the host replace the tail -f | sed -n /ready/q pattern that reported success on jobs that never finished.
  • tmux — Terminal multiplexer configuration, extended-keys setup, keyboard input best practices, and reload/restart procedures.

Adding a New Tool

  1. Create a directory: tools/<tool-name>/
  2. Add index.md as the entry point (no frontmatter for directory listings)
  3. Create concept files with frontmatter if content exceeds one file
  4. Update this index

Skills tooling lives in /skills/, not in this directory.