npx skills add ...
npx skills add ilamanov/skills --skill project-health-check
Runs a project's scheduled health checks in order — syncing the main worktree's main branch with origin, refreshing installed skills, then triaging the Linear backlog to pick and ship a next ticket. Use when the user asks to run the project health check, do the scheduled/periodic project checks, run routine project maintenance, or when this is invoked as a recurring scheduled agent. The Linear team (name or key) to triage is provided when the skill is invoked; an optional date cutoff for ignoring stale tickets may also be provided.
npx skills add ilamanov/skills --skill project-health-check
Run the scheduled health checks for this project, in order. Each check is independent — if one can't complete (a tool is missing, a command fails, access is denied), report what went wrong and continue to the next check. Never let one failed check abort the rest. Post a short summary at the end covering every check.
These are provided when the skill is invoked — don't hardcode them:
PXL). If it wasn't provided and can't be inferred unambiguously from the project, ask once.In the main worktree (not any feature worktree), bring the local main branch in sync with origin/main via a fast-forward only. Do this regardless of which branch the worktree is currently on or whether it's dirty — a worktree sitting on a feature branch with uncommitted changes is the normal case, not a reason to skip. The mechanism for not disturbing in-progress work is to stash it, sync, and put everything back exactly as it was — not to bail out. A worktree that ends on the same branch it started on, with the same changes restored, has not been disturbed.
The shape of the work, which is safe and reversible throughout:
main can be checked out cleanly. Use a reversible mechanism (stashing, including untracked files); nothing should be lost.main and fast-forward it to origin/main. If main has diverged so a fast-forward isn't possible, leave it untouched and note the divergence — then still finish the restore steps so the worktree ends where it started.Restoring the work usually reapplies cleanly. In the case where the worktree started on main itself, the changes now reapply on top of the freshly fast-forwarded main, which can conflict if upstream touched the same files. Resolve only very simple, unambiguous conflicts automatically. For anything non-trivial or where you're not certain of the right resolution, stop and consult the user — keep their set-aside work preserved and intact, surface the conflict, and don't make risky edits to their uncommitted changes.
Guardrails:
main. If it has diverged, report and move on.main moved (and to what SHA), and whether you set work aside / restored it or returned to a non-main branch, so the final summary is concrete.npx skills update --project --yes. This resolves each skill's source automatically and updates the skill files under .agents/skills (and the skills lock file) in place.chore: refresh installed skills, body listing the updated skills. This is a plain PR — do not run it through the ship stacked-PR flow. Then surface the list of updated skills and the PR link in the final summary.Look at the open tickets in the provided Linear team and pick a good next ticket to work on, then hand it to the ship skill.
Filter conflicts before settling on a ticket — exclude any candidate that has:
Blocked by relation pointing at unfinished work.In Progress / In Review.Always present your proposal and wait for the user's explicit approval before any work begins — never hand a ticket to ship on your own initiative, even when the choice seems obvious. Present a recommended next ticket with a one-line rationale, plus 3–5 other candidates with one-line summaries as alternatives, and stop. If there's no suitable actionable ticket at all, say so and skip the ship — don't force one.
Only once the user has explicitly picked or confirmed a ticket, hand it to the ship skill and follow that skill's workflow for the rest (worktree, stack, review, merge). ship owns all its own approval gates from there.
End with a brief report covering every check: