homarr-triage
Skill5.3k starsChanged 2 days agoApache-2.0View on GitHub
Maintainer-only. Evaluate the value, product fit, and regression risk of Homarr issues and PRs; recommend fixing, investigating, deferring, or declining them and operate triage follow-ups. Use only when a Homarr maintainer explicitly invokes it; never for fixing an issue or opening a contribution PR.
We split this skill into the rules it gives an agent
4 rules. About 0 are common, 4 are distinctive, and 0 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈4
Distinctive · estimate
This author's own choices. Worth a look.
0
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 25
Use GitHub operations when collecting conversations, checking the board, or repairing synchronization.
- Distinctive: line 43
Total cost: consider investigation, implementation, review, validation, ongoing support, and higher-value work displaced.
- Distinctive: line 68
When delegation is authorized, give each agent one owning issue/PR, an isolated checkout, expected behavior, existing decisions, evidence …
- Distinctive: line 78
Use All tracked items to inspect completed work.
≈ “Common” is an estimate: at least 1 in 5 of the 308,232 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Homarr Triage
This skill is for Homarr maintainers operating the triage queue. If you are fixing an issue or opening a PR as a contributor, stop: follow "AI-assisted pull requests" in AGENTS.md and do not use this skill's disclaimer.
Work in homarr-labs/homarr. Treat an issue and its implementation PR as one investigation, while retaining their separate testing and review states.
Triage decides which work is worth maintaining. A reproducible problem deserves evaluation; it does not automatically justify the requested solution. Recommend declining work when its demonstrated benefit does not justify its compatibility and maintenance costs.
Load the contract
From the repository root, read:
- Issue tracker: repository, request surfaces, and operations.
- Triage labels: exact categories, primary states, sizes, and reporter acceptance.
- Project automation: Status mapping, event behavior, credentials, and recovery limits.
These repository documents take precedence over differently named labels or state meanings in a generic triage skill. This skill does not require a globally installed skill. Open linked files directly if the agent environment has no skill invocation tool.
Use GitHub operations when collecting conversations, checking the board, or repairing synchronization. Use delivery and replies when implementing, publishing evidence, replying, or merging.
Refresh and recommend
- Establish the requested scope and time window. For "today", use the user's timezone and convert midnight to UTC; state the timezone and checked-at time. Keep yesterday's carryover separate. A request for a table or recommendations is read-only; it does not authorize comments, label changes, code, CI approval, or delegation.
- Discover newly opened and updated issues and PRs, including recently closed/merged work. Include collaborator PRs and explicitly named items. Separate automated dependency/translation activity from human replies. Paginate reads; a list/search result is discovery, not a full conversation review.
- Read selected bodies, Conversation comments, review submissions, inline review replies, label/state events, linked reports, and current PR heads. Preserve resolved questions, maintainer decisions, existing contributor work, and explicit holds. An
updated_atchange alone is not a human reply. Distinguish a new comment from an edit of an older one. - Screen product fit and concrete user harm before deep source investigation. For plausible candidates, check current default-branch code using
codebase-context, relevant glossary/ADRs, and existing implementations or open/merged fixes. Consult rejection records such as.out-of-scope/when present; their absence is not evidence of approval. Spend further investigation effort only where it could change the decision. - Apply the value and compatibility gate below to each selected item before ranking or assigning work. Existing implementation progress can reduce remaining effort; it cannot establish product value or justify a competing implementation.
Present a linked table: item, evidence/confidence, benefit versus cost/risk, recommended decision and smallest next action, and blocker or maintainer decision. Distinguish source findings, reporter claims, and locally reproduced behavior. Recommend only the investigations justified by that assessment; an empty implementation queue is a valid outcome. Dispatch only when authorized. Do not claim every item was source-reviewed or reproduced when only metadata was refreshed.
Value and compatibility gate
For each recommendation, establish:
- Problem and product fit: name the user task and observable harm. Separate that symptom from the reporter's expected behavior and proposed implementation. Determine whether Homarr broke an existing contract or the request asks for a new preference, guarantee, or feature.
- Benefit and confidence: state severity, frequency, affected workflows, supporting evidence, and available workarounds. Mark reach and reproducibility as unknown when unverified. One credible security, data-loss, or core-workflow report can justify urgent work; popularity is not a prerequisite.
- Total cost: consider investigation, implementation, review, validation, ongoing support, and higher-value work displaced. Include regression exposure to saved configurations, layouts, APIs, permissions, defaults, and performance. A small diff or an AI-written implementation can still have a high cost.
- Cheapest adequate response: compare restoring prior behavior, an existing setting or workaround, targeted guidance, a narrower fix, deferral, and declining the request. New controls and special cases carry a continuing product cost.
Judge evidence and consequences, not writing polish or suspected AI authorship. A detailed technical report is still an unverified claim, and a poorly written report may describe a serious defect. Avoid invented user counts, financial ROI, or numeric scores that disguise uncertainty. State the decisive benefit and cost in plain language.
Choose an explicit outcome:
| Outcome | Decision rule |
| Implement | Demonstrated benefit justifies the cost, behavior fits the accepted product contract, and scope is bounded. Prioritize a broad regression or severe harm with a small compatible fix. |
| Investigate | A specific missing fact could change the decision. Name the cheapest probe and its stopping condition; an inconclusive probe returns to defer or request evidence, not automatic implementation. |
| Workaround or guidance | Existing behavior adequately serves the task at lower cost. Document only when the repository's user-need rule warrants it. |
| Defer | Value, evidence, or priority is currently insufficient. Record what new evidence or condition would justify reconsideration. |
| Decline | The request conflicts with product direction or imposes disproportionate compatibility, complexity, or maintenance costs. Explain the tradeoff and an alternative when available. |
A fix that changes an existing guarantee for other users is a product decision. Name the invariant and affected users before recommending it; preserve that invariant or surface the tradeoff for a maintainer decision. For example, square tiles inside a container compete with preserving its saved outer dimensions once headers and padding consume space. A reporter's preference for square tiles does not authorize silently enlarging existing containers.
Before specced-out or implementation, record the accepted outcome, the behavior existing users must retain, and what would invalidate the recommendation. Reassess if a narrow fix grows into shared infrastructure changes or adds lasting product complexity. Respect an explicit maintainer decision within its scope; this gate does not require repeated approval for already accepted work.
Apply an authorized decision
- Re-read the item immediately before mutating it. For open triaged work, use the exact repository category, one primary state, and one size once scope is understood. Preserve unrelated labels. Flag conflicting primary states for maintainer resolution rather than selecting one from an arbitrary ordering; the workflow skips those items.
- A contributor PR and green checks do not establish that the maintainer wants the feature or its current design. Resolve product choices before implementation. Inspect a draft when requested, but preserve its draft/hold status until the maintainer or author advances it.
- An author saying "works" is evidence to read, not permission to merge. Record what build and behavior were accepted. Follow the repository's acceptance/closure contract, including any explicit maintainer override.
- Existing authorization remains valid within its stated scope. Do not repeatedly ask for approved work, or extend permission for one PR's CI, preview, or admin bypass to unrelated PRs.
- When delegation is authorized, give each agent one owning issue/PR, an isolated checkout, expected behavior, existing decisions, evidence requirements, and permitted side effects. Respect requested model/concurrency settings and the runtime limit. Keep one lead-owned findings table; integrate fresh remote state before publishing.
Follow the board correctly
Labels are authoritative. The Project is a mirror; moving a card does not change labels or authorize work. Open unlabelled items can appear as Needs triage without acquiring a repository label.
An original human author's new top-level Conversation reply releases a sole waiting-for-reporter state to needs triage only when it postdates the current waiting-label event. This requests another review; it is not acceptance. Bot/App replies and recognized AI-disclaimer replies are ignored. Non-author comments, inline review replies, edited-old comments, and maintainer holds still require manual attention.
A PR push can invalidate older testing readiness. The automation preserves explicit holds, conflicting states, newer readiness, and ambiguous same-second ordering. Recheck the actual current head, checks, and published image rather than assuming the workflow removed every stale label.
Use All tracked items to inspect completed work; Triage board filters to open work. Verify both the workflow result and the real card Status after an authorized repair. A green run can still report skipped Project sync or a conflict; read the relevant step output.
Leave useful public context
Prefix new AI-authored public triage text with:
> _This was generated by AI during triage._Explain what changed or was established, the evidence, and the single next action. Use human-facing language; keep agent assignments, internal prompts, and status recitations in the working ledger. Do not post an "Agent Brief" to the contributor.
Inspect the latest Conversation before posting. If an AI/LLM triage follow-up already exists and no human has replied since, a later triage pass must not append another AI message. This applies across sessions, models, and accounts; intervening bot activity does not reset it. Leave the message alone when nothing material changed, or edit it with new findings/corrections. When an authorized fresh ping is needed, replace the identified existing AI note with one corrected message instead of leaving both in the conversation.
The authenticated account can also contain human-written comments; verify the exact comment ID and AI provenance before editing/deleting. Edit/delete only messages within the agent's authorized control. If the existing AI note cannot be updated, keep the new findings in the working ledger until a human replies or the maintainer directs otherwise. Preserve human replies, useful history, and the maintainer's removal of obsolete AI notes. Re-read after a successful write.
Completion
Report the requested outcome with links and distinguish what is still waiting: investigation, implementation, CI, preview publication, reporter validation, merge, or release. Update the working findings table and changed cards within the authorized scope. Do not infer release/deployment success from a merge or silently revive held work.
Trending
More talk lately.about the whole repository
Who's talking about homarr-labs/homarr
- drizzle-team/drizzle-orm“[BUG]: Problem on MacBook - This statement does not return data. Use run() instead”GitHub · Jul 13, 2024 · 11 reactions
- @camilleroux.com“Homarr : un dashboard self-hosted pour centraliser vos apps, avec 40+ intégrations, gestion des …”Bluesky · Jul 20, 2026 · 6 likes
- node-cron/node-cron“Breaks during daylight savings time”GitHub · Mar 8, 2026 · 4 reactions
- @github-trending-js.bsky.social“📦 homarr-labs / homarr ⭐ 2,055 (+35) 🗒 TypeScript A modern and easy to use dashboard. 30+ integrations. …”Bluesky · Nov 6, 2025 · 2 likes
- @github-trending-js.bsky.social“📦 homarr-labs / homarr ⭐ 1,290 (+99) 🗒 TypeScript A modern and easy to use dashboard. 14+ integrations. …”Bluesky · Aug 4, 2025 · 2 likes
The biggest 5 of 55 mentions linking to the repository that our crawl found. Each line is their own headline.
See all 55
Talked about on GitHub and Bluesky (55 times).
On GitHub · 50
- Jul 13, 2024[BUG]: Problem on MacBook - This statement does not return data. Use run() instead — drizzle-team/drizzle-orm11 reactions · 14 comments
- Mar 8, 2026Breaks during daylight savings time — node-cron/node-cron4 reactions · 8 comments
- Feb 2, 2025Homarr missing websockets and interal nginx — community-scripts/ProxmoxVE2 reactions · 7 comments
- Jun 10, 2026chore(homarr): bump homarr to 1.64.0 — helmforgedev/charts1 reaction · 2 comments
- Jun 18, 2025Homarr long startup time with non root setup (15 minutes) — truenas/apps1 reaction · 5 comments
45 more on GitHub
- Jun 6, 2025🐛 [Homarr] Repository has been moved after v1.0 — runtipi/runtipi-appstore1 reaction · 5 comments
- Feb 28, 2025bug: app password not always works for api — pi-hole/FTL1 reaction · 10 comments
- Oct 29, 2026Update ghcr.io/homarr-labs/homarr Docker tag to v2 — UnconventionalMindset/k8s-templates0 reactions
- Oct 27, 2026Upgrade to v2.9.1 — YunoHost-Apps/homarr_ynh0 reactions · 1 comment
- Oct 26, 2026Fırsatlar – 2026-10-26 — muhammedkoramaz/katki-radar0 reactions
- Oct 26, 2026chore(deps): update ghcr.io/homarr-labs/homarr docker tag to v2.9.1 — runtipi/runtipi-appstore0 reactions
- Oct 24, 2026chore(deps): update ghcr.io/homarr-labs/homarr docker tag to v2.9.1 — emouty/arr-stack0 reactions · 1 comment
- Oct 24, 2026chore(deps): update ghcr.io/homarr-labs/homarr docker tag to v2.8.2 — runtipi/runtipi-appstore0 reactions
- Oct 24, 2026fix(deps): update ghcr.io/homarr-labs/homarr docker tag to v2.8.2 — milanoid-labs/homelab-cluster0 reactions
- Oct 24, 2026Update ghcr.io/homarr-labs/homarr Docker tag to v2.9.1 — hyungjun13/homelab0 reactions
- Oct 23, 2026Update ghcr.io/homarr-labs/homarr Docker tag to v2.9.1 — Almothana12/homelab0 reactions
- Oct 23, 2026chore(deps): update ghcr.io/homarr-labs/homarr docker tag to v2.8.1 — runtipi/runtipi-appstore0 reactions
- Oct 23, 2026chore(deps): bump homarr-labs/homarr from v2.7.0 to v2.8.0 in /apps/homarr — t-p/PiCluster0 reactions
- Oct 22, 2026Update: Bump homarr-labs/homarr from v2.7.0 to v2.8.0 in /homarr — FaliseDotCom/ha-homarr0 reactions · 1 comment
- Oct 22, 2026feat(container): update homarr — nezdemkovski/homelab-gitops0 reactions · 1 comment
- Oct 21, 2026chore(deps): update ghcr.io/homarr-labs/homarr docker tag to v2.7.0 — runtipi/runtipi-appstore0 reactions
- Oct 20, 2026chore(deps): update ghcr.io/homarr-labs/homarr docker tag to v2.9.1 — alberba/media-stack0 reactions
- Oct 19, 2026Fırsatlar – 2026-10-19 — muhammedkoramaz/katki-radar0 reactions
- Oct 17, 2026chore(deps): update ghcr.io/homarr-labs/homarr docker tag to v2.6.0 — runtipi/runtipi-appstore0 reactions
- Oct 16, 2026chore(deps): bump homarr-labs/homarr from v2.5.2 to v2.6.0 in /apps/homarr — t-p/PiCluster0 reactions
- Oct 15, 2026feat(container): update image ghcr.io/homarr-labs/homarr (v2.5.2 ➔ v2.6.0) — nezdemkovski/homelab-gitops0 reactions · 1 comment
- Oct 15, 2026chore(deps): update ghcr.io/homarr-labs/homarr docker tag to v2.5.2 — runtipi/runtipi-appstore0 reactions
- Oct 14, 2026chore(deps): bump homarr-labs/homarr from v2.3.0 to v2.5.2 in /apps/homarr — t-p/PiCluster0 reactions
- Oct 13, 2026feat(container): update image ghcr.io/homarr-labs/homarr (v2.4.1 ➔ v2.5.2) — nezdemkovski/homelab-gitops0 reactions · 1 comment
- Oct 13, 2026feat(container): update image ghcr.io/homarr-labs/homarr ( v2.5.0 ➔ v2.6.0 ) — 3nm1/home-ops0 reactions · 2 comments
- Oct 12, 2026chore(deps): update ghcr.io/homarr-labs/homarr docker tag to v2.4.1 — runtipi/runtipi-appstore0 reactions
- Oct 12, 2026chore(deps): bump homarr-labs/homarr from v2.3.0 to v2.4.1 in /apps/homarr — t-p/PiCluster0 reactions · 1 comment
- Oct 10, 2026Upgrade to v2.4.1 — YunoHost-Apps/homarr_ynh0 reactions · 2 comments
- Oct 10, 2026[Tier: 2+] Update ghcr.io/homarr-labs/homarr Docker tag to v1.77.2 — gwiersma/IronRock-homelab-config0 reactions
- Oct 10, 2026feat(container)!: Update image ghcr.io/homarr-labs/homarr (v1.77.2 → v2.9.1) — ixxeL-DevOps/fullstack0 reactions · 1 comment
- Oct 10, 2026feat(container)!: Update image ghcr.io/homarr-labs/homarr (v1.77.2 → v2.9.1) — ixxeL-DevOps/fullstack0 reactions · 1 comment
- Oct 9, 2026chore(deps): update ghcr.io/homarr-labs/homarr docker tag to v2.3.0 — runtipi/runtipi-appstore0 reactions
- Oct 8, 2026chore(deps): bump homarr-labs/homarr from v2.2.0 to v2.3.0 in /apps/homarr — t-p/PiCluster0 reactions
- Oct 7, 2026chore(deps): update ghcr.io/homarr-labs/homarr docker tag to v2.2.0 — runtipi/runtipi-appstore0 reactions
- Oct 6, 2026chore(deps): bump homarr-labs/homarr from v2.1.2 to v2.2.0 in /apps/homarr — t-p/PiCluster0 reactions
- Oct 5, 2026chore(deps): bump homarr-labs/homarr from v1.77.2 to v2.1.2 in /apps/homarr — t-p/PiCluster0 reactions
- Oct 4, 2026chore(deps): update ghcr.io/homarr-labs/homarr docker tag to v2 — runtipi/runtipi-appstore0 reactions
- Oct 3, 2026feat(container)!: Update image ghcr.io/homarr-labs/homarr ( v1.77.1 → v2.9.1 ) — Chrtol/home-cluster0 reactions · 3 comments
- Oct 3, 2026chore(deps): update docker images (major) — joluc/homelab0 reactions · 17 comments
- Oct 2, 2026chore(deps): update ghcr.io/homarr-labs/homarr docker tag to v2 — chadwagoner/GARAGELAB.launchpad0 reactions
- Sep 19, 2026chore(deps): bump homarr-labs/homarr from v1.77.1 to v1.77.2 in /apps/homarr — t-p/PiCluster0 reactions
- Sep 5, 2026chore(deps): update ghcr.io/homarr-labs/homarr docker tag to v1.77.2 — froggyleonard/homelab-fleet0 reactions
- Jul 31, 2026chore(deps): update ghcr.io/homarr-labs/homarr docker tag to v1.77.2 — chadwagoner/GARAGELAB.launchpad0 reactions
- Jul 16, 2026Add Homarr — traumadoc2b/bullwinkle0 reactions · 1 comment
- Jul 3, 2026[bug] Immich v3 updated API breaks photo albums — home-screens/home-screens0 reactions · 2 comments
On Bluesky · 5
- Jul 20, 2026Homarr : un dashboard self-hosted pour centraliser vos apps, avec 40+ intégrations, gestion des utilisateurs et SSO inclus. ⬇️… — @camilleroux.com6 likes and reposts · 2 replies
- Nov 6, 2025📦 homarr-labs / homarr ⭐ 2,055 (+35) 🗒 TypeScript A modern and easy to use dashboard. 30+ integrations. 10K+ icons built in.… — @github-trending-js.bsky.social2 likes and reposts
- Aug 4, 2025📦 homarr-labs / homarr ⭐ 1,290 (+99) 🗒 TypeScript A modern and easy to use dashboard. 14+ integrations. 10K+ icons built in.… — @github-trending-js.bsky.social2 likes and reposts
- Oct 1, 2026📦 homarr-labs / homarr ⭐ 4,929 (+31) 🗒 TypeScript A modern and easy to use dashboard. 40+ integrations. 20K+ icons built in.… — @github-trending-js.bsky.social1 likes and repost
- Jul 17, 2026Homaar: a modern and easy to use WebApp Dashboard for your Homelab - 40+ integrations, authentication out of the box, no YAML, drag and… — @lcheylus.bsky.social1 likes and repost
In this repository5 other files it gives its agents.
- AGENTS.mdAGENTS.md
- codebase-contextSkill
- documentation-syncSkill
- homarr-custom-widgetSkill
- mcp-integrationSkill
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
Reviews can't be read right now.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

