add-component
Checklists for adding a new MCP tool, a new Flyway database migration, or a new Gradle dependency to the Task Orchestrator…
Triages pending improvement-proposal MCP items — presents each with its scope and evidence, collects an accept/reject/defer decision per proposal, and carries out the disposition: project-scoped acceptances get their exact YAML applied to .taskorchestrator/config.yaml and pushed
$ npx -y skills add jpicklyk/task-orchestrator --skill review-proposals --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/review-proposalsContext preview
The summary Claude sees to decide when to auto-load this skill.
Triages pending improvement-proposal MCP items — presents each with its scope and evidence, collects an accept/reject/defer decision per proposal, and carries out the disposition: project-scoped acceptances get their exact YAML applied to .taskorchestrator/config.yaml and pushed
name: review-proposals description: "Triages pending improvement-proposal MCP items — presents each with its scope and evidence, collects an accept/reject/defer decision per proposal, and carries out the disposition: project-scoped acceptances get their exact YAML applied to .taskorchestrator/config.yaml and pushed per-root; global acceptances get a tracked GitHub issue (or dwell in review for the maintainer); rejections are recorded and cancelled; deferrals are recorded and left in queue. Use when a user says: review proposals, triage proposals, pending proposals, what proposals are open, adopt proposals, process improvement proposals, accept or reject proposals." argument-hint: "[optional: proposal UUID | --scope global|project]"
Triages `improvement-proposal` MCP items created by `/session-retrospective` when a cross-session trend graduates. Presents pending proposals, collects a per-proposal decision, and carries out the disposition — including applying project-scoped config changes and filing/linking GitHub issues for global changes.
Shared GitHub conventions (issue template, scrub rule, `gh` guard, dedup procedure) are **not** duplicated here — see `<skill-base-dir>/../session-retrospective/references/github-feedback.md` for the full C2/C4/C5 contract and dedup steps referenced throughout Step 5.
---
Parse `$ARGUMENTS`:
that one item.
Absent → run both discovery queries.
Read the config file directly (file read, not MCP) — the path on the SessionStart context's `Config:` line when there is one, otherwise the workspace `.taskorchestrator/config.yaml`. In personal scope that path is the user-level file; below, "the config file" means whichever file you read here. Read it for:
in Step 5. In personal scope the root is the anchor-only personal root: skip the project-scoped discovery query (proposals live in the global container) but a project-scoped acceptance still edits and pushes the user-level file with rootId = the personal root. If absent, project-scoped discovery and project-scoped acceptance are unavailable — proceed with global-only discovery.
---
**Skip this step entirely in single-proposal mode (UUID argument supplied).**
Run both queries in parallel (unless `--scope` narrows to one):
**Global:**
query_items(operation="search", query="Improvement Proposals", limit=5)
Find the "Improvement Proposals" container from the result, then:
query_items(operation="overview", anchorId="<container-uuid>", includeChildren=true)
**Project-scoped** (only if `project.rootId` is known):
query_items(operation="search", tags="improvement-proposal", ancestorId="<rootId>", limit=50)
For each candidate item, classify by role and notes:
List in a **separate section**; do not re-offer for a decision unless the user explicitly asks to revisit deferred proposals, or the stated revisit condition in the note plausibly holds now.
`review`/terminal — an interrupted or stuck adoption). Flag as **stalled adoption**; offer to resume (fill remaining notes and `complete`) or cancel.
**If nothing is pending** (no queue-role items without an adoption-decision, and no stalled items), report:
No pending improvement proposals.
and stop — do not proceed to later steps.
---
For each candidate (pending + stalled; cap at 15 — if more, take the 15 oldest by creation and note the overflow count), fetch notes:
query_notes(operation="list", itemId="<uuid>", includeBody=true)
From the returned notes, extract:
If it cannot be parsed unambiguously, **treat as global** — this is conservative: never auto-edit a project's `config.yaml` on an ambiguous scope reading.
form `github-issue: <url>`. Carry this forward so Step 5's global-accept path can reuse it instead of filing a duplicate.
---
Render one compact table covering all pending + stalled candidates (deferred proposals get their own short list underneath, not full rows):
| # | ID | Proposal | Scope | Evidence | Age | Issue | |---|-----|----------|-------|----------|-----|-------| | 1 | `a1b2c3d4` | Add `session-tracking` maxLength guard | project | 3 sessions, sparse-note trend | 4d | — | | 2 | `e5f6a7b8` | Nudge cooldown too short for solo dev | global | 2 sessions, friction theme | 1d | #142 |
the proposal body or summary).
Below the table, list deferred proposals as a short reminder line each: `` `<short-id>` — deferred: <condition>
Server-enforced workflow discipline for AI agents. Prompt-based frameworks hope the LLM follows instructions. This one blocks the call if it doesn't.
Checklists for adding a new MCP tool, a new Flyway database migration, or a new Gradle dependency to the Task Orchestrator…
Compatibility assessment for items with the needs-api-compat-review trait. Evaluates the MCP tool surface and the REST surface…
Guides the full lifecycle of a feature-implementation tagged MCP item (the feature container) — from queue through review.…
End-to-end workflow for taking MCP work items from backlog to merged PR. Handles git branching, schema-driven planning,…
SQLite migration assessment for items with the needs-migration-review trait. Evaluates schema changes, table recreation patterns,…
Performance impact assessment for items with the needs-perf-review trait. Evaluates hot paths, query patterns, and measurement…