implement-improvements
Validate improvements from .turbo/improvements.md, recommend a working set tailored to what's in the backlog, and run one lane: direct fixes, investigation, or planned work. One lane per session
Install / Use
npx skills add tobihagemann/turbo --skill implement-improvementsInstalls into whichever agent you are using.
SKILL.md
Installable skill definition
Quality Score
Category
Development & EngineeringSupported Platforms
Tags
Our assessment of implement-improvements
implement-improvements scores 88/100 on our quality scale, 1916th of 4,616 Development & Engineering skills we index (top 42%).
Its SKILL.md is 12 KB long, well organised into 17 sections with 1 code example: a thorough specification that gives an agent plenty to work with.
It has 405 GitHub stars, a meaningful sign that others use it.
Maintenance, license and trust
- The repository was last updated 12 days ago, so implement-improvements is actively maintained.
- It is released under the MIT license, a permissive license that allows use, modification and commercial use with attribution.
- Its trust signals score 100/100, with no cautions. These come from repository metadata, not a code audit — read the skill file before letting an agent act on it.
Safety scan
No issues foundOur scan of the whole file found no instruction hijacking, hidden characters, credential access, data exfiltration or destructive commands. An AI review of the same text found nothing harmful.
AI review by kimi-k2.7-code on 2026-10-05. Automated pattern scan on 2026-10-05. It catches known dangerous patterns, not every risk — read a skill before letting an agent act on it.
implement-improvements compared with similar skills
All 4 of these similar skills score higher than implement-improvements; compare them before choosing.
| Skill | Score | Stars | Updated | Format |
|---|---|---|---|---|
| implement-improvements (this skill)by tobihagemann | 88 | 405 | 12d ago | SKILL.md |
| ai-job-searchby MadsLorentzen | 100 | 45.0k | today | CLAUDE.md |
| claude-howtoby luongnv89 | 100 | 41.8k | 5d ago | CLAUDE.md |
| algorithmic-artby anthropics | 100 | 177.9k | 13d ago | SKILL.md |
| pptxby anthropics | 100 | 177.9k | 13d ago | SKILL.md |
Frequently asked questions
- How do I install implement-improvements?
- Run
npx skills add tobihagemann/turbo --skill implement-improvements. The install tabs above show the steps for each supported agent. - Which AI agents does implement-improvements work with?
- It is written for Universal, as a SKILL.md file. Other agents that read the same format can often use it too.
- Is implement-improvements safe to use?
- Our scan of the whole file found no instruction hijacking, hidden characters, credential access, data exfiltration or destructive commands. An AI review of the same text found nothing harmful. It is MIT-licensed and scores 100/100 on trust signals. Skills are instructions an agent will follow, so read the file before installing it and do not approve commands you do not understand.
- Is implement-improvements still maintained?
- The repository was last updated 12 days ago, so implement-improvements is actively maintained.
Skill content
View source on GitHubname: implement-improvements description: "Validate improvements from .turbo/improvements.md, recommend a working set tailored to what's in the backlog, and run one lane: direct fixes, investigation, or planned work. One lane per session. Use when the user asks to "implement improvements", "work on improvements", "address improvements", "process improvement backlog", "tackle improvements", or "implement noted improvements"."
Implement Improvements
Validate improvements from .turbo/improvements.md, propose a specific working set based on the backlog's actual contents, and run one lane per session: direct, investigate, or plan. Mixing lanes in a single run tangles commits, so the skill processes exactly one lane each time. Entries outside the confirmed working set stay in the backlog for future runs.
Task Tracking
At the start, use TaskCreate to create a task for each step:
- Read the backlog
- Validate and classify
- Recommend, confirm, and update the backlog
- Run the chosen lane
- Prune working-set entries from the backlog
Step 1: Read the Backlog
Read .turbo/improvements.md, relative to the repo root resolved with git rev-parse --show-toplevel, except inside a linked worktree — where git rev-parse --git-dir differs from --git-common-dir — in which case use the parent of the common dir. If the file does not exist, there are no improvements to implement; stop.
Parse all entries, extracting for each:
- Summary (the
###heading) - Type (
direct,investigate, orplan; may be missing in older entries —trivialandstandardare accepted as legacy aliases fordirectandplan) - Category
- Where (file paths or areas)
- Why (rationale)
- Ceiling and Revisit (present when the entry records a deliberate simplification; Revisit alone when the entry waits on an outside event)
- Noted (date)
Step 2: Validate and Classify
Improvements drift: files get renamed, code gets refactored, issues get fixed as side effects of other work. Before routing, validate each improvement and settle the Type of any entry whose Type is missing or wrong.
Validate
For each entry, verify whether the specific problem or opportunity described still exists. Do not rely on git log alone. Recent commits touching the same files do not mean the specific issue was addressed. Read the actual code and confirm:
- Files exist — Do the referenced files/paths still exist? When one was renamed or its code moved, validate the entry at the current location instead. This check marks the entry stale only when the code it names is gone.
- Problem persists — Read the relevant code sections. Is the exact issue or opportunity described in the entry still present? Check the specific claims: if the entry says a function is uncalled, verify it has no callers; if it says error handling is missing, check whether it was added.
- Revisit condition met — For an entry carrying a Revisit field, check whether the recorded condition now holds. A shipped simplification is present by construction, so its presence alone says nothing about whether the fuller version is worth building yet.
- Stated scope matches the real gap — For an entry claiming missing coverage, read what existing tests already pin before accepting its scope: a test that substitutes a test double at a boundary pins the behavior on one side of it and leaves the boundary itself unpinned, so a request to cover several variants often reduces to the single boundary they share. Before dropping an item on the grounds that an existing check covers it, confirm that the check pins that item through its own inputs or match patterns rather than inferring it from the check's name or description; an item no existing check pins stays in the entry's scope. Restate such an entry at its real scope, classify it Active, and use the restatement as its summary in Step 3.
- Claimed consequence holds — For an entry claiming that two paths behave differently, that a change would alter observable behavior, or that the code as it stands leads to a stated outcome, verify the consequence itself rather than confirming only that the code it points at exists. For a claimed difference, between two paths or between the behavior before and after a change, read what each actually returns, exercising both when reading cannot settle it. For a claimed outcome, follow the path from the named code to that outcome and confirm nothing later on that path already stops it. When the claim is that nothing but the case it names reaches or relies on the named code, read that code's own tests: they surface dependents an entry written from a single path routinely omits, and turning up none leaves the claim unproven. When the named code is present but its stated consequence is false, restate the entry at the benefit it actually delivers, classify it Active, and use the restatement as its summary in Step 3; classify it Stale when no benefit survives.
Before using a restatement as an entry's summary in Step 3, confirm each fact it adds to the entry against the code, or against the dependency's shipped artifact when the fact concerns a dependency.
Classify each entry as:
- Active — The described problem or opportunity is confirmed present in the current code
- Deferred — The entry carries a Revisit condition that does not yet hold: the shipped approach remains the right one, or the event the entry waits on has not happened
- Stale — The code the entry names no longer exists, the specific issue has been resolved, or the entry's premise never held (cite evidence: what changed and where, or why the claim is false)
- Unclear — Cannot determine from code alone, needs user input
When in doubt, classify as Active. The cost of re-examining a resolved issue is low; dismissing a valid improvement is high.
Classify or Correct the Type
For any Active entry without a Type field, infer one on the fly. For an Active entry whose Type the code read contradicts, correct it. Base the classification on the code you just read during validation, not just the entry's one-line summary.
- direct — Clear scope and a known approach, ready to apply via
/implement. - investigate — A symptom that needs root-cause analysis first: unclear root cause, performance question, intermittent bug, "something feels off".
- plan — Everything else: the approach warrants writing down before implementing (multi-file refactor, test additions, feature work). Dispatched to
/turboplan, which routes the work itself.
Pick the type without asking the user. Default to plan when a missing Type is genuinely ambiguous, and keep a recorded Type the code read does not contradict.
Step 3: Recommend, Confirm, and Update the Backlog
Output the backlog status as text first, grouped by type and status. Include each entry's category inline and a category tally across active entries:
## Improvement Backlog Status
### Active (N)
Categories: refactor (N), performance (N), testing (N), docs (N)
**Direct (N)**
- [summary] (category) — [one-line reason it's still relevant]
**Investigate (N)**
- [summary] (category) — [one-line reason it's still relevant]
**Plan (N)**
- [summary] (category) — [one-line reason it's still relevant]
### Deferred (N)
- [summary] — [the revisit condition, and what still has to happen]
### Stale (N)
- [summary] — [one-line reason it's stale]
### Unclear (N)
- [summary] — [what's ambiguous]
Recommend a Working Set
Pick one specific working set tailored to the active entries. Read the entries again before recommending and weigh:
- Cohesion — Entries that share files, modules, or themes are stronger when batched. A cluster of related testing or reliability entries usually beats a scattered mix.
- Decisiveness — One investigation that unblocks several deferred entries can outweigh a larger direct batch.
- Impact vs effort — A reliability or correctness entry often outweighs lower-stakes cleanups even when it's a single entry.
- Lane shape — Each lane batches a cluster, just in different shapes. Direct groups clear-scope fixes into one
/implementrun. Investigate dispatches/investigateper symptom, then shares one/implementfor the concluded fixes. Plan hands a cohesive cluster to/turboplan, which routes it to a plan file. - Unit of work size — Right-size the session. Prefer the whole cohesive cluster over a narrow filter unless the filter clearly preserves a coherent unit of work; picking 1–2 entries off a cluster of 7 wastes the slot. Route any entry that turns out to be a clear-scope direct fix to the direct lane instead.
- Backlog state — Heavy direct concentration calls for clearing the cluster; a long-deferred symptom often deserves the slot.
State the recommendation as: lane + concrete working set (specific entries or a category-scoped subset) + one or two sentences on why this beats the alternatives. Then list 1–3 honest alternatives, each named with the actual entry or subset (e.g., "investigate the flaky presence test", "plan lane on persist-before-send"). When only one lane has active entries, recommend that lane and skip alternatives.
Confirm via AskUserQuestion
Use AskUserQuestion to confirm. Combine into the same prompt:
- Confirm the recommended working set or pick one of the named alternatives
- Whether to remove stale entries — include only when stale entries exist
- Resolution for unclear items — include only when unclear entries exist
If the user confirmed stale removal, edit .turbo/improvements.md to delete the stale entries.
Rewrite in .turbo/improvements.md each Active or Deferred entry whose path, scope, count, consequence, or Type Step 2 corrected, changing only the fields the correction touches. When that changes an entry's summary, update each Paired with line in its counterpart entries that names the old title.
Compute the working set from the confirmed choice. If the working set is empty, stop.
Step 4: Run the Chosen Lane
Read the reference file for the confirmed lane and follow its phases:
- Direct lane — references/direct-lane.md
- Investigate lane — references/investigate-lane.md
- Plan lane — references/plan-lane.md
State the chosen lane before continuing with the reference file.
Step 5: Prune Working-Set Entries from the Backlog
Edit .turbo/improvements.md to delete the working-set entries that the lane processed. "Processed" means:
- Direct lane — entries whose fixes were applied
- Investigate lane — entries the applied fixes resolve in full
- Plan lane — entries now captured in the plan produced by
/turboplan; treat them as processed once the plan is written.
Keep any entries the lane re-classified mid-flight (direct → investigate/plan, or investigate → plan). These stay in the backlog for a future run. Delete the file if no entries remain.
Rewrite in place each entry the investigate lane investigated that stays in the backlog: restate its summary and Where as what remains to do, put what the investigation established in its Why (the root cause it confirmed, or the hypotheses it refuted when the cause stayed unresolved), and set the Type the remainder calls for. When the entry waits on an outside event, such as an upstream fix, record that event as its Revisit. When the rewrite changes the summary, update each Paired with line in counterpart entries that names the old title.
When a processed entry carries a Paired with line, drop that reference from each counterpart entry it names, so no backlog is left pointing at an entry that no longer exists.
Rules
.turbo/is gitignored. Edits to.turbo/improvements.mdare local-only and do not need to be staged or committed.- Run exactly one lane per session. Lea
Truncated for display — read the full file on GitHub.
Related Skills
ai-job-search
45.0kThe job search that runs on your machine. AI job application framework built on Claude Code: evaluate postings, tailor CVs, write cover letters, prep interviews. Fork it and own it.
claude-howto
41.8kA visual, example-driven guide to Claude Code — from basic concepts to advanced agents, with copy-paste templates that bring immediate value.
algorithmic-art
177.9kCreating algorithmic art using p5.js with seeded randomness and interactive parameter exploration. Use this when users request creating art using code, generative art, algorithmic art, flow fields, or particle systems.
pptx
177.9kUse this skill any time a .pptx or .potx file is involved in any way — as input, output, or both. This includes: creating slide decks, pitch decks, or presentations; reading, parsing, or extracting text from any .pptx or .potx file (even if the extracted content will be used elsewhere, like in an em…
Languages
Trust signals
From repository metadata: license, adoption, age and documentation. Not a code audit — see the Safety scan above for what the skill file itself contains.
