Skip to content
cccskills
FreePublished on GitHub

issue

Analyze or create a GitHub Issue and build a TDD resolution plan. Use when given an Issue URL to work on, or when a problem report needs to be filed as an Issue first. Trigger keywords: issue, GitHub issue, file an issue, fix issue, resolve issue, issue triage.

The English summary is being prepared. Showing the original description.

markuplint/markuplint630 stars(GitHub 630 + cccskills 0)
Works withGitHub

Run score Not tested

See how to install

Files included (1)

  • SKILL.md3.8 KB

SKILL.md (original)

Review the instructions the agent will receive before you install.

Input: $ARGUMENTS

Follow these steps in order:

Step 1: Understand the Problem

If a GitHub Issue URL is provided:

  1. Extract owner/repo/number from the Issue URL
  2. Run gh issue view <URL> --json number,title,body,labels,comments,assignees,state to retrieve all Issue details
  3. Proceed to Step 2

If NO URL is provided (or input is empty/a keyword):

  1. Ask the user to describe the problem using AskUserQuestion or conversation:
    • What is happening? (bug, feature request, refactoring, etc.)
    • How to reproduce? (for bugs)
    • What is the expected behavior?
    • Which packages or rules are affected? (if known)
  2. Gather enough context to form a clear problem statement before proceeding
  3. Do NOT skip this step — do NOT guess or assume the problem
  4. Proceed to Step 1b

Step 1b: Register as a GitHub Issue (only when no URL was provided)

This step runs ONLY when no Issue URL was provided in Step 1.

Run the create-issue skill with the problem description gathered in Step 1. It owns the investigation, labelling, drafting, the confirmation before posting, and the gh issue create call. Take the Issue number and URL from its report, and from this point forward treat the new Issue the same as if it had been provided via URL.

Step 2: Ensure You Are in a Worktree

Do not work in the main working directory.

Branch work happens in a Claude Code–managed worktree (see Branch Topology and the Branch & Worktree Policy in the root CLAUDE.md). If this session is not already in one, set one up via the harness worktree feature before touching any file. Branch name: issue/<number>-<slug> (slug from title, lowercase, hyphens, max 50 chars — the Issue number is always available at this point).

Decide which line the fix belongs to before setting up: the harness cuts a new worktree from dev, so a v6 fix needs git fetch origin v6 then git reset --hard origin/v6 first. Then the fresh-worktree setup: yarn install, then NX_WORKSPACE_ROOT_PATH=<worktree-absolute-path> yarn build — plus whatever crates/CLAUDE.md requires if the branch has a crates/ directory.

Step 3: Analyze the Problem

Read through the Issue body and comments carefully, then organize the following:

  1. Summary: What is happening / what is being requested
  2. Reproduction: For bugs, reproduction steps and environment
  3. Related Code: Identify files, functions, and rules mentioned in the Issue and explore the codebase
  4. Impact Scope: Packages and features potentially affected by the fix

Step 4: Propose a Resolution Plan

Based on the analysis, present a resolution plan following TDD (Test-Driven Development):

  1. Approach: The chosen solution and rationale
  2. Files to Change: List of files to modify or add
  3. Implementation Steps: Follow the Red-Green cycle for each behavior unit:
    1. Red: Write failing tests first that define the expected behavior — as spec-file tests, never as throwaway reproduction scripts
    2. Green: Implement the minimal code to make the tests pass
  4. Risks: Side effects and caveats

Present the plan to the user and wait for approval.

Step 5: Hand Off to /impl

Once the plan is approved, tell the user to run /impl — it owns the implementation pipeline (implement → carry-over approval → review → QA → lint/test → carry-over filing → commit → PR) and cannot be invoked by Claude. Do not re-negotiate the agreed scope there.

Reviews

No reviews yet. Tell others what you thought.

Comments

No login needed. Share how it worked for you, ask a question, or note where it did not run.

No comments yet. Be the first to write one.

Comments are published right away. Do not include personal information such as email addresses or phone numbers. Up to 2 URLs.

0 / 1,000 characters

This form is protected by reCAPTCHA, and the Google Privacy Policy and Terms of Service apply.

More skills from this repository

Maintenance of the nu-validator coverage benchmark: defend the invariants (nu-only = 0, xref audit green), follow up a nu-validator upstream update (submodule bump / Docker image drift), and regression-check after markuplint rule or spec changes. Use when updating the validator submodule, when a bench refresh surfaces new nu-only entries, when excluded-ids entries go stale, or for the periodic health check. Trigger keywords: bench maintain, bench maintenance, nu update, submodule bump, validator update, bench refresh, nu-only regression, stale excluded-ids, image digest.

The English summary is being prepared. Showing the original description.

markuplint/markuplint630Updated Oct 26, 2026

Enable an existing or newly-added markuplint rule on the nu-validator bench by editing tests/external/bench/config.ts. Covers the flat-rule case (rules: { '<name>': true }) and the severity override case (rules: { '<name>': { severity: 'error' } }) that bench-virtual-rule does not. Use when a rule exists in the registry but the relevant nu fixtures stay nu-only because the rule is not enabled in the bench config, or when a rule's default severity is warning but the spec text it mirrors is a MUST / MUST NOT. Trigger keywords: enable bench rule, bench config flat rule, severity override bench, rule not flagging on bench, warning vs error in bench, escalate severity bench, no-contradictory-aria-prop bench, bench coverage missing rule.

The English summary is being prepared. Showing the original description.

markuplint/markuplint630Updated Oct 26, 2026

Set up the nu-validator benchmark environment — initialise the validator submodule, ensure Docker is running, populate the gitignored raw snapshots via yarn bench:update. Also covers Docker / nu-runner troubleshooting. Use when bench commands fail with "no snapshots found", "Docker daemon not reachable", port 28888 conflicts, or healthcheck timeouts; or when refreshing the bench after a long break. Trigger keywords: bench setup, bench Docker, validator submodule, no snapshots found, Docker daemon not reachable, healthcheck times out, port 28888, yarn bench:update first time, bench install, fresh clone bench.

The English summary is being prepared. Showing the original description.

markuplint/markuplint630Updated Oct 26, 2026

Triage one nu-only fixture from tests/external/snapshots/diff/nu-only.json by reading the spec, then drive its verdict to match-error, match-clean, or nu-over by either fixing markuplint or recording an excluded-ids.json entry. The core per-fixture operation of the nu-validator coverage benchmark. Use when a bench refresh surfaces new nu-only entries, when checking a coverage-claim ("markuplint misses X" / "over-detects Y") against the bench, or when classifying a specific fixture. Trigger keywords: nu-only, ml-only, coverage gap, bench triage, verdict, match-error, match-clean, nu-over, excluded-ids, declare nu over-detection, claim audit, audit fixture, mark-up valid per spec, spec-cited exclusion.

The English summary is being prepared. Showing the original description.

markuplint/markuplint630Updated Oct 26, 2026

Mirror a preset virtual rule (selectors under `nodeRules` in preset.html-standard.jsonc and similar) into bench/config.ts so the benchmark exercises it. Use when a new disallowed-element / similar selector lands in a preset and the matching nu fixtures remain stuck at nu-only despite the new rule existing in markuplint. Trigger keywords: virtual rule, nodeRules, disallowed-element, preset html-standard, bench config mirror, rule does not fire on bench, preset rule not exercised.

The English summary is being prepared. Showing the original description.

markuplint/markuplint630Updated Oct 26, 2026

Sync benchmark cross-reference blocks onto GitHub Issue bodies via `yarn bench:xref`, manage `tests/external/bench/issue-xref.config.ts` mappings, and run the pre-release checklist. Use when adding / removing / updating a primary or secondary mapping, when an issue closes upstream, when the xref CLI's output disagrees with what's on the issue body, or before cutting a release that touches a rule the benchmark covers. Trigger keywords: bench-xref, issue-xref, xref CLI, GitHub issue body, primary mapping, secondary mapping, umbrella block, pre-release checklist, bench-xref-audit workflow, marker version.

The English summary is being prepared. Showing the original description.

markuplint/markuplint630Updated Oct 26, 2026

See all skills by markuplint

Report a problem with this skill