Housekeeping
Scope
Review live work queues and recommend what the engineer should do next. Triage is a recommendation, not an action: every state change this skill produces — assigning, moving, closing, cancelling, re-prioritising — belongs to the engineer, so the output is a table they act on.
Use this skill for:
- Linear issue triage, assigned work, waiting issues, urgent-priority issues, and stale cleanup candidates.
- Pylon customer issues that need an engineer response, engineering follow-up, linked-ticket check, or stale close recommendation.
- GitHub pull requests where the engineer is a direct or team reviewer.
Do not use this skill for deep root-cause debugging, implementation, incident response, or broad roadmap planning unless the user explicitly asks to continue from a recommendation into that work.
Required Behavior
Every reviewed item must include an action recommendation. If evidence is insufficient, recommend the next inspection step rather than leaving the action blank.
Use these action labels:
act-now: needs attention today.
quick-win: likely under 15 minutes.
todo: should be picked up in the next 1-2 weeks.
backlog: real but can wait months.
waiting: next move is outside the engineer or team.
stale-candidate: likely safe to close or cancel, but needs human confirmation.
no-action: no current action beyond monitoring; explain why.
Include confidence for each recommendation: high, medium, low, or unknown.
Workflow
- Identify the current engineer in each system from the available connector, CLI, or authenticated API context. If identity cannot be determined for a system, say so and continue with the other systems.
- Gather live data before recommending action. Do not rely on memory for current queues.
- Inspect comments, latest activity, linked issues, checks, and review threads when status or ownership is ambiguous.
- Cluster duplicates or related items before prioritizing.
- Return recommendations ordered by urgency, then quick wins, then cleanup.
- Present the recommendations as a decision table for the engineer to act on. Every action this skill recommends is a state change reserved for a human, so do not perform them. If a queue item needs a note left on it for someone else, that is a comment or a description edit, which agents do write — see
linear-agent-writes for the shapes and the labels.
Linear Review
Fetch:
- Issues assigned to the engineer in
Triage, In Progress, and Waiting.
- Active urgent-priority issues relevant to the engineer or team.
- Recent comments for waiting, stale, urgent, or ambiguous issues.
Recommend:
act-now for data loss, production regressions, security/privacy risk, billing/cost correctness, repeated customer pain, blocked teammate/release, or reporter waiting on the engineer.
todo for bounded fixes with current customer impact.
backlog for real but lower-impact work, product-design work, or upstream-dependent work.
waiting only when the latest evidence shows the next step is on the customer, upstream, another team, or an external dependency.
stale-candidate when the issue has no recent meaningful activity, no clear current customer blocker, and appears superseded, abandoned, solved, or duplicated.
If a triage issue has an obvious low-risk fix, include the quick-fix path and whether it should be handled before broader prioritization.
Pylon Review
Use a Pylon connector, MCP server, or authenticated API only if already available. Do not ask the user to paste secrets into chat. If Pylon is unavailable, report that limitation and continue.
Review open issues assigned to the engineer or their team, plus urgent or high-priority issues where engineering appears to own the next step. Use Pylon's issue states:
new: no team response yet.
waiting_on_you: next action is on the team.
waiting_on_customer: next action is on the customer.
on_hold: pending external work, commonly an engineering fix.
closed: resolved; include only if it reopened or is linked from an active item.
Inspect:
- latest customer and internal activity;
- priority, requester/account, assignee/team, source, and age;
- linked Linear, GitHub, Jira, or other external issues;
- whether the linked engineering issue is still open, completed, stale, or missing.
Recommend:
act-now when the customer is waiting on the team, priority is urgent/high, an SLA looks at risk, or a linked engineering issue is complete and the customer needs an update.
quick-win for a short reply, clarification request, link repair, or status correction.
waiting when the latest customer-facing state correctly waits on the customer or an external ticket.
todo when engineering owns a real follow-up but it is not same-day urgent.
stale-candidate for old waiting_on_customer or on_hold issues with no meaningful recent activity, but never close them without human approval.
For Pylon issues linked to Linear or GitHub, make the recommended action consistent across systems. Example: if a Linear issue is done and Pylon is still on_hold, recommend a customer update and status change instead of more engineering work.
GitHub Review
Find open pull requests where the engineer is requested as a direct reviewer and where one of the engineer's teams is requested. Include PRs across relevant organization repositories, not only the current repository.
Inspect:
- PR title, repo, age, author, requested reviewer source, mergeability, review decision, and checks;
- changed files and diff size;
- unresolved comments, bot findings, requested changes, and author responses;
- whether failures are code failures or external authorization/noise.
Recommend:
quick-win with approve only for small focused diffs, acceptable checks, no unresolved material concerns, and tests or plainly trivial behavior.
quick-win with comment for small PRs needing one narrow author action such as rebase, CLA, missing test, or cleanup.
act-now for blocked releases, security fixes, production regressions, or PRs where the engineer is the bottleneck.
todo for meaningful PRs that need real review soon.
stale-candidate for old, conflicting, duplicate, or superseded PRs.
no-action when a PR is blocked on the author, failing CLA, merge conflicts, unresolved requested changes, or unrelated team ownership.
Do not approve, request changes, comment, close, merge, or edit a PR without explicit human approval for that PR. This is about GitHub pull requests, not the issue tracker — tracker comments and description edits follow linear-agent-writes and need nobody's permission.
Human Gates
These writes require explicit human confirmation by row ID:
- Linear state — status, priority, assignee, labels, cancellation, or customer-need changes. Comments and description edits are not gated: they are two of the permitted agent write shapes, so leave them to
linear-agent-writes, which owns the shapes and the labels.
- Pylon replies, internal notes, status changes, assignment, tags, snoozes, closes, or external-issue links. This is customer-facing, and that gate stays.
- GitHub approvals, comments, requested changes, reviewer changes, closes, merges, labels, or branch actions.
If the user says "do the quick ones", first show the exact proposed writes and ask for confirmation unless they already named the exact row IDs.
Use this table before writes:
| ID |
System |
Item |
Recommended Action |
Proposed Write |
Confidence |
Human Decision |
Output
Return valid Markdown. Keep the overview concise and action-first.
Default structure:
Top Actions: the highest-priority items across all systems.
Quick Wins: items likely under 15 minutes.
Full Queue: grouped by Linear, Pylon, and GitHub.
Decisions Needed: stale closes, cancellations, comments, approvals, or status changes that require approval.
For each item include:
- system and link or identifier;
- title or short description;
- evidence from current data;
- action recommendation;
- confidence.
Use concrete dates for age and stale reasoning. Avoid vague phrases like "recently" when exact timestamps are available.
1---2name: housekeeping3description: Triage an engineer's work queue across Linear, Pylon, and GitHub. Use for assigned, urgent, waiting, or stale issues, support follow-ups, and PR reviews.4---5
6# Housekeeping
7
8## Scope
9
10Review live work queues and recommend what the engineer should do next. Triage is a recommendation, not an action: every state change this skill produces — assigning, moving, closing, cancelling, re-prioritising — belongs to the engineer, so the output is a table they act on.
11
12Use this skill for:
13
14- Linear issue triage, assigned work, waiting issues, urgent-priority issues, and stale cleanup candidates.
15- Pylon customer issues that need an engineer response, engineering follow-up, linked-ticket check, or stale close recommendation.
16- GitHub pull requests where the engineer is a direct or team reviewer.
17
18Do not use this skill for deep root-cause debugging, implementation, incident response, or broad roadmap planning unless the user explicitly asks to continue from a recommendation into that work.
19
20## Required Behavior
21
22Every reviewed item must include an action recommendation. If evidence is insufficient, recommend the next inspection step rather than leaving the action blank.
23
24Use these action labels:
25
26- `act-now`: needs attention today.
27- `quick-win`: likely under 15 minutes.
28- `todo`: should be picked up in the next 1-2 weeks.
29- `backlog`: real but can wait months.
30- `waiting`: next move is outside the engineer or team.
31- `stale-candidate`: likely safe to close or cancel, but needs human confirmation.
32- `no-action`: no current action beyond monitoring; explain why.
33
34Include confidence for each recommendation: `high`, `medium`, `low`, or `unknown`.
35
36## Workflow
37
381. Identify the current engineer in each system from the available connector, CLI, or authenticated API context. If identity cannot be determined for a system, say so and continue with the other systems.
392. Gather live data before recommending action. Do not rely on memory for current queues.
403. Inspect comments, latest activity, linked issues, checks, and review threads when status or ownership is ambiguous.
414. Cluster duplicates or related items before prioritizing.
425. Return recommendations ordered by urgency, then quick wins, then cleanup.
436. Present the recommendations as a decision table for the engineer to act on. Every action this skill recommends is a state change reserved for a human, so do not perform them. If a queue item needs a note left on it for someone else, that is a comment or a description edit, which agents do write — see [`linear-agent-writes`](../linear-agent-writes/SKILL.md) for the shapes and the labels.
44
45## Linear Review
46
47Fetch:
48
49- Issues assigned to the engineer in `Triage`, `In Progress`, and `Waiting`.
50- Active urgent-priority issues relevant to the engineer or team.
51- Recent comments for waiting, stale, urgent, or ambiguous issues.
52
53Recommend:
54
55- `act-now` for data loss, production regressions, security/privacy risk, billing/cost correctness, repeated customer pain, blocked teammate/release, or reporter waiting on the engineer.
56- `todo` for bounded fixes with current customer impact.
57- `backlog` for real but lower-impact work, product-design work, or upstream-dependent work.
58- `waiting` only when the latest evidence shows the next step is on the customer, upstream, another team, or an external dependency.
59- `stale-candidate` when the issue has no recent meaningful activity, no clear current customer blocker, and appears superseded, abandoned, solved, or duplicated.
60
61If a triage issue has an obvious low-risk fix, include the quick-fix path and whether it should be handled before broader prioritization.
62
63## Pylon Review
64
65Use a Pylon connector, MCP server, or authenticated API only if already available. Do not ask the user to paste secrets into chat. If Pylon is unavailable, report that limitation and continue.
66
67Review open issues assigned to the engineer or their team, plus urgent or high-priority issues where engineering appears to own the next step. Use Pylon's issue states:
68
69- `new`: no team response yet.
70- `waiting_on_you`: next action is on the team.
71- `waiting_on_customer`: next action is on the customer.
72- `on_hold`: pending external work, commonly an engineering fix.
73- `closed`: resolved; include only if it reopened or is linked from an active item.
74
75Inspect:
76
77- latest customer and internal activity;
78- priority, requester/account, assignee/team, source, and age;
79- linked Linear, GitHub, Jira, or other external issues;
80- whether the linked engineering issue is still open, completed, stale, or missing.
81
82Recommend:
83
84- `act-now` when the customer is waiting on the team, priority is urgent/high, an SLA looks at risk, or a linked engineering issue is complete and the customer needs an update.
85- `quick-win` for a short reply, clarification request, link repair, or status correction.
86- `waiting` when the latest customer-facing state correctly waits on the customer or an external ticket.
87- `todo` when engineering owns a real follow-up but it is not same-day urgent.
88- `stale-candidate` for old `waiting_on_customer` or `on_hold` issues with no meaningful recent activity, but never close them without human approval.
89
90For Pylon issues linked to Linear or GitHub, make the recommended action consistent across systems. Example: if a Linear issue is done and Pylon is still `on_hold`, recommend a customer update and status change instead of more engineering work.
91
92## GitHub Review
93
94Find open pull requests where the engineer is requested as a direct reviewer and where one of the engineer's teams is requested. Include PRs across relevant organization repositories, not only the current repository.
95
96Inspect:
97
98- PR title, repo, age, author, requested reviewer source, mergeability, review decision, and checks;
99- changed files and diff size;
100- unresolved comments, bot findings, requested changes, and author responses;
101- whether failures are code failures or external authorization/noise.
102
103Recommend:
104
105- `quick-win` with `approve` only for small focused diffs, acceptable checks, no unresolved material concerns, and tests or plainly trivial behavior.
106- `quick-win` with `comment` for small PRs needing one narrow author action such as rebase, CLA, missing test, or cleanup.
107- `act-now` for blocked releases, security fixes, production regressions, or PRs where the engineer is the bottleneck.
108- `todo` for meaningful PRs that need real review soon.
109- `stale-candidate` for old, conflicting, duplicate, or superseded PRs.
110- `no-action` when a PR is blocked on the author, failing CLA, merge conflicts, unresolved requested changes, or unrelated team ownership.
111
112Do not approve, request changes, comment, close, merge, or edit a PR without explicit human approval for that PR. This is about **GitHub pull requests**, not the issue tracker — tracker comments and description edits follow `linear-agent-writes` and need nobody's permission.
113
114## Human Gates
115
116These writes require explicit human confirmation by row ID:
117
118- Linear state — status, priority, assignee, labels, cancellation, or customer-need changes. Comments and description edits are **not** gated: they are two of the permitted agent write shapes, so leave them to [`linear-agent-writes`](../linear-agent-writes/SKILL.md), which owns the shapes and the labels.
119- Pylon replies, internal notes, status changes, assignment, tags, snoozes, closes, or external-issue links. This is customer-facing, and that gate stays.
120- GitHub approvals, comments, requested changes, reviewer changes, closes, merges, labels, or branch actions.
121
122If the user says "do the quick ones", first show the exact proposed writes and ask for confirmation unless they already named the exact row IDs.
123
124Use this table before writes:
125
126| ID | System | Item | Recommended Action | Proposed Write | Confidence | Human Decision |
127| --- | --- | --- | --- | --- | --- | --- |
128
129## Output
130
131Return valid Markdown. Keep the overview concise and action-first.
132
133Default structure:
134
1351. `Top Actions`: the highest-priority items across all systems.
1362. `Quick Wins`: items likely under 15 minutes.
1373. `Full Queue`: grouped by Linear, Pylon, and GitHub.
1384. `Decisions Needed`: stale closes, cancellations, comments, approvals, or status changes that require approval.
139
140For each item include:
141
142- system and link or identifier;
143- title or short description;
144- evidence from current data;
145- action recommendation;
146- confidence.
147
148Use concrete dates for age and stale reasoning. Avoid vague phrases like "recently" when exact timestamps are available.