Diagnose a stayfixed installation — hooks, memory store, budgets, overrides and trust. Use when a hook is silent, memory does not arrive, a gate fails unexpectedly, or the user asks whether stayfixed is set up correctly.
Install
npx skillscat add stayfixed/stayfixed-plugin/doctor Install via the SkillsCat registry.
SKILL.md
Diagnosing an installation
- Run
stayfixed doctor --jsonand read the report: seventeen checks, each with a status, a
detail and a remedy. Between them they answer whether the repository is initialised, whether
the hook wrapper can reach stayfixed at all, whether this checkout is attached, whether the
overlay's delivery is in place and what shape its memory path has, every hook entry with its
provenance, each budget raised or lowered, the layer each preference and machine-owner key
came from, a bundle that does not fit its slots, the last reasons a hook failed, and, as
information, an environment variable that is set and ignored. - Relay each finding with the remedy the report names, verbatim. Do not change settings or
hook entries on the user's behalf — name the command that would. - A
skipis not a fault, and it is not always harmless either. Ten checks skip on a
state of the machine or of the repository:wrapperandfiles
when no plugin root can be vouched for,filesagain on a build with no release record,attachedwhen no overlay is recorded or the overlay cannot be asked,pre-commitwith no
overlay root recorded,overlay-requireswith no overlay root recorded or no requirement
declared — and those last two also skip when the overlay root this machine records is not a
directory any more, which is the one overlay skip that carries a remedy (put the overlay
back, or record where it is now), because the note store is broken with it —bundleswhen the note store does not resolve,diagnosticswith no harness data root set, andci-refwhen the repository records no[ci] ref— whichstayfixed initwrites once a released stayfixed exists to pin, so that
row's skip says "nothing recorded here", not "this build cannot answer". With no project
configuration to read,budgets,ci-ref,attachedandbundlesskip
saying so; that is one state, not several, and it bringsbudgetsto the nine. Each says which
state it is in its own detail. Report each as the state it names, and relay the remedy where
the row carries one. filesandwrapperskipping together is the report's loudest finding, and it is not
red. It means this process could not find the plugin — so no hook entry reaches stayfixed
on this machine, and nothing else in the report can say so. Lead with it, and relay the
remedy both rows carry.- When
not-initialisedwarns, either there is nostayfixed.toml— the guards and this
report work, and its remedy adds the rest — or the file loaded with some settings ignored or
put back to the preset's, which the row names by key; relay its words and its remedy. When it
is red, the session drops the file whole; relay the row's words and its remedy first. Every
other row is still answered.