plugins/teamcraft/skills/improve-teamcraft/SKILL.md
Capture feedback about Teamcraft itself and turn it into a well-structured GitHub issue on the plugin's repo. Vets whether the problem is really a Teamcraft skill defect (vs. misuse, the harness, or the user's own project) by root-causing against the actual skill source, then helps the developer decide whether to file and publishes via the GitHub CLI. Use when the user says 'improve teamcraft', 'a teamcraft skill did the wrong thing', 'file feedback on teamcraft', 'report a teamcraft bug', 'I have an idea to make teamcraft better', or when a Teamcraft skill clearly misbehaved and the user wants that captured upstream.
npx skillsauth add codingthefuturewithai/claude-code-primitives teamcraft:improve-teamcraftInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Teamcraft only improves if real friction gets back to the people who maintain it — and gets back in a form they can act on. A vague "the planning skill felt off" costs more than it's worth: someone has to reconstruct what happened, guess the cause, and decide if it's even real. A report that names the skill, quotes the line that misled the agent, says what was ruled out, and proposes a fix can be triaged in a minute.
This skill's job is to turn the first kind of feedback into the second. The hard, valuable part isn't writing the issue — it's vetting: deciding whether what frustrated the user is actually a defect in a Teamcraft skill, or something else wearing that costume (the user's own project setup, the harness, the model having a bad moment, or the skill being misused). Filing noise upstream is worse than filing nothing.
So the centre of gravity here is honest triage grounded in the skill's actual source — not transcribing a complaint, and not rubber-stamping the user's diagnosis.
Before you form any opinion about cause, open the implicated skill's SKILL.md and read the part that supposedly misbehaved. The skills being critiqued ship in the same installed teamcraft plugin as this one — they're siblings. Read them. Quote them.
This is what separates a useful report from a plausible-sounding wrong one. The best feedback Teamcraft has ever received did exactly this: it read the skill, quoted the offending bullet, and showed how that specific wording produced the bad outcome. You cannot root-cause a skill you haven't read.
Where it showed up is not always where it came from. Feedback isn't really "about a skill" — it's about a point in the user's workflow where something went wrong or could be better. Hold three things apart:
So when more than one skill is on the path, reading one SKILL.md isn't enough: read every skill the work passed through, and the artifact/state each handed to the next. Otherwise you'll "fix" the skill where it surfaced and miss the one that caused it. "I'm not sure which skill" is a perfectly good starting point — it means investigate the path, not make the user pick.
The reference examples may closely resemble the case in front of you — that's calibration, not a shortcut. Re-derive every verdict from the live source anyway; never transcribe an example's root cause. An example can be wrong, or right about a different version of the skill than the one installed now.
Six beats. They're a methodology, not a rigid script — adapt to what the user brings. But don't skip the vetting, and don't skip grounding it in the source.
1. Understand the intent. $ARGUMENTS is what went wrong, an improvement idea, or empty. People arrive three ways, all handled the same:
Establish what the user expected and what actually happened. Establish where it showed up — but don't force a single skill out of them. They may name one skill, several, "the build loop," or "validate-issue, but I think it's really upstream in plan-and-implement — or the combination, I'm not sure." All of those are valid; the last is often the most useful, because the seam between skills is where the subtle bugs live. Don't presuppose they hit a defect, and don't presuppose it's confined to one skill — you don't know either yet.
2. Gather evidence. Read the implicated skill's SKILL.md (and any reference files it leans on) from the installed plugin. When more than one skill is on the path, read each one — and read the artifact or world state each hands to the next (the work item file, INDEX, branch, captured docs), because that handoff is where cross-skill bugs hide. Read the teamcraft plugin manifest for the version and the repository URL — both feed the issue and neither should be hardcoded or guessed. Reconstruct the concrete failure: what each skill on the path instructed, what the agent did, what state moved between skills, what the user saw, what they expected instead.
3. Vet — the heart. Root-cause the symptom against the skill text you just read, and sort it honestly:
CLAUDE.md, repo config, or conventions. Not the plugin.Actively try to rule out the non-Teamcraft causes — and say what you ruled out and why. "Things that are NOT the cause" is one of the most valuable parts of a report; it stops the maintainer re-doing your investigation.
Then settle scope, which is orthogonal to type — a bug or a feature-request can be any of these:
Don't collapse a cross-skill or workflow issue into the single skill where it surfaced — that's how the wrong skill gets "fixed" while the real seam stays broken.
4. Decide whether to file. Present your verdict plainly, including "I don't think this is a Teamcraft problem — here's what I think actually happened." Then:
gh issue list --search, scoped to the repo from the manifest) — search across both open and closed issues, and try a couple of phrasings (the skill name, and a few words of the symptom), since a near-duplicate rarely shares your exact wording. If something matches, offer to add a comment to that issue instead of opening a duplicate. An empty backlog is a fine result — don't over-search.5. Structure the issue. Draft it in the shape that references/example-feedback-issue.md shows — read that file before drafting so the output is consistent and agent-ingestible. Show the full draft to the developer and iterate.
Privacy gate. These issues are public. Before anything ships, scan the draft for proprietary specifics — internal repo names, code paths, product/business nouns, anything not safe to publish — and offer to genericize them. Workflow-structural identifiers (skill names, work-item IDs, branch names like feat/<slug>) are generally safe and usually load-bearing for the report; business and product nouns and internal file paths are what to scrub. The technical substance almost never depends on the real names. Get explicit confirmation that the developer is comfortable with what's in the body.
6. Publish. Only on explicit go-ahead. Write the issue body to a scratch temp file (never into the user's project) and create it with the GitHub CLI against the repository from the manifest — title, body file, and the type label (bug or enhancement) plus a teamcraft label. If a label doesn't exist and you can create it, do; if label creation isn't permitted, file without it rather than failing. For the teamcraft label, default to a recognizable color and a short description (e.g. --color 5319e7 --description "Feedback on the Teamcraft plugins") so runs stay consistent. Confirm gh is authenticated first; if it isn't, tell the user how to authenticate and let them do it (e.g. they can run ! gh auth login). Report the issue URL when it's filed.
Honesty over volume. A correct "this isn't a Teamcraft bug, here's why" is a better outcome than a filed issue. Don't inflate misuse or harness quirks into skill defects to manufacture a report.
Never auto-publish. Nothing reaches GitHub without the developer seeing the final body and explicitly approving. The publish step is theirs to trigger.
The user is in charge. Your triage is advice. If they overrule it, follow them — file what they want filed, framed for what it actually is.
Don't hardcode what you can read. The version and repo come from the manifest; the cause comes from the skill source. Read them; don't assume them.
Either an issue (or comment) is filed and you've handed back the URL, or the developer decided not to file and understands why. In both cases, say plainly what happened and what you concluded. Don't leave a draft dangling as if the work is unfinished when the developer has chosen not to publish — that's a complete, valid outcome.
development
Launch (or re-launch) the user's live, multi-project work board. The dashboard is a single HTML file copied to a stable user-side location at ~/.claude/teamcraft-board.html and opened in the user's default browser. It has two views via a header toggle — a drag-and-drop Kanban Board and a live Status tab with analytics (work by status, throughput, cycle time, aging, blocked chains, recomputed on every poll). Each project is added via a header dropdown; the dashboard polls each project's .teamcraft/work directly from the browser and updates in real time. Use when the user says 'show me the kanban', 'work board', 'open the board', 'board view', 'kanban view', 'live dashboard', 'visual dashboard', 'live status dashboard', 'status dashboard', 'project metrics', 'throughput/cycle-time view', 'HTML view of work items', 'drag-and-drop board', or asks to see/move/track work visually.
development
Run a retrospective — AI compiles evidence from recent work, facilitates human reflection, and captures process decisions back into living docs. Use when the user says 'run a retro', 'let's do a retrospective', 'run a retrospective on the last 2 weeks', 'let's reflect on how that feature went', or 'time for a retro'.
development
Re-evaluate what Claude needs to be told about this project as the codebase evolves. Some gotchas become obvious from the code (remove them). New gotchas emerge. Decisions change. Use when the user says 'refresh the rules', 'update Claude's context', 'are the rules still accurate', 'clean up claude rules', or after significant codebase changes.
development
Report project status from work items and git history — either as a quick, interpreted read here in the session, or by pointing the developer to the live Status dashboard (the work board's Status tab). Covers work by status, what's in flight, cycle times, throughput, backlog priorities, aging alerts, blocked chains, and how commit activity lines up with the board. Use when the user says 'project status', 'show me the project status', 'what's the status of the work items', 'how are we doing', 'generate a status report', or asks for a status dashboard.