ase-code-resolve

SkillDev tools

Resolve Problem: Use when user wants to "bugfix" or "fix" code or "resolve" a problem.

Available today. Use it from your connected AI after setup.

Connect ahel once, and every AI you use reads what you have installed.

Then ask your AI: use the ase-code-resolve skill

What this skill tells your AI

The instructions your AI receives, as published by rse/ase in plugin/skills/ase-code-resolve/SKILL.md and read by ahel’s review.

@${CLAUDE_SKILL_DIR}/../../meta/ase-control.md @${CLAUDE_SKILL_DIR}/../../meta/ase-skill.md @${CLAUDE_SKILL_DIR}/../../meta/ase-dialog.md @${CLAUDE_SKILL_DIR}/../../meta/ase-getopt.md

$ARGUMENTS

@${CLAUDE_SKILL_DIR}/../../meta/ase-format-task.md @${CLAUDE_SKILL_DIR}/../../meta/ase-tenets.md @${CLAUDE_SKILL_DIR}/../../meta/ase-common-code.md

Procedure

    1. If matches the regexp ^[PT]\d+$ (i.e. a bare issue identifier like P1, P2, T1, T2, ...), set and , then call the ase_kv_get(key: "ase-issue-<problem-id/>") tool of the ase MCP server to retrieve the previously persisted problem description. If the returned text is non-empty, set and call the ase_task_id(id: "<ase-task-id/>", session: "<ase-session-id/>") tool from the ase MCP server to implicitly switch the task, otherwise complain to the user that no analyzer result exists for and stop processing.

    2. Set (set task id to problem) and (set problem empty), call the ase_task_id(id: "<ase-task-id/>", session: "<ase-session-id/>") tool from the ase MCP server to switch the task, and then only output the following :

    3. Set and and call the ase_task_id(id: "<ase-task-id/>", session: "<ase-session-id/>") tool from the ase MCP server to implicitly switch the task. Do not output anything.

    4. **No problem details known yet. What is the problem you want to resolve?**

      Then set to the response of the user.

    5. Set to a unique task id, derived from , which consists of two lower-case words concatenated with a - character. Then call the ase_task_id(id: "<ase-task-id/>", session: "<ase-session-id/>") tool from the ase MCP server to implicitly switch the task. Do not output anything.

    6. Report the task and problem with the following :

    1. Check the existing source files for all code which is related to the requested resolution.

    2. Check the architecture of the existing code base to understand the overall structures and dynamics.

    3. Investigate and figure out details related to this problem.

      PROBLEM DETAILS: ● [...] ● [...] ● [...]

      Hints:

      • Give a short one-sentence of the plus a short excerpt of the affected code .

      • Give a short one-sentence of the plus precise but brief code processing information to understand the problem. Try to keep the number of bullet points (●) in the range of 1-4.

      • In case of a complex context situation with complex structure (layout, components, dependencies, etc.), complex control flow (branching, concurrency, etc.), complex state machine (states, transitions, etc.), complex data flow (actors, messages, etc.), or complex data structure (classes, entities, relationships, etc.), visualize it with an optional diagram by building a Mermaid specification (e.g. flowchart TB, stateDiagram-v2, sequenceDiagram, classDiagram, or erDiagram, depending on intent) and dispatching the rendering to the ase-meta-diagram sub-agent by calling the tool Agent(description: "Diagram Rendering", subagent_type: "ase:ase-meta-diagram", prompt: <mermaid-spec/>, run_in_background: false), reproducing its returned fenced code block verbatim. Omit entirely for simple or purely local situations.

    4. Do not output anything else in this STEP 2.

    1. RESOLVING

    2. Do not output anything in this STEP 3.

    1. Directly resolve the by modifying the affected artifacts with a corresponding, complete change set, based on your gathered knowledge about the code base and your internalized problem resolution tenets. Also, if a CHANGELOG.md file exists, make an appropriate entry there, too.

    2. Output only the following :

    3. Then IMMEDIATELY STOP all further skill processing. You MUST NOT output anything else in this STEP 4 or after it -- independent of , whose exposure rules are explicitly overridden here. Especially, do not output a change summary, a list of modified artifacts, a rationale, or a unified diff of the changes.

    1. Compose a plan with code references, a precise description of the problem, the chosen resolution approach, a preview of the unified diff of the necessary code changes, and a possible way to verify the success of the resolution, by using the defined for a task plan. Store the resulting task plan in .

      If a CHANGELOG.md file exists in the project (or in any affected sub-package), the plan MUST include, as part of its ## CHANGES section, an explicit bullet point describing the addition of a corresponding new entry to that CHANGELOG.md file, aligned with its existing style and conventions.

      You MUST NOT call Edit, Write, NotebookEdit, or any filesystem-modifying tool during this step.

    2. Call the ase_timestamp(format: "yyyy-LL-dd HH:mm") tool of the ase MCP server and use the text field of its response for and information. Then insert the current , , , and information.

    3. You then MUST save the resulting plan content with the ase_task_save(id: "<ase-task-id/>", text: "<task-content/>") MCP tool call only -- NEVER by executing a shell command.

    4. If is set (i.e. the was retrieved from ase_kv_get in STEP 1.1 via key ase-issue-<problem-id/>), you MUST additionally call the ase_kv_delete(key: "ase-issue-<problem-id/>") tool of the ase MCP server to remove the now-resolved analyzer result from the in-memory key/value store.

    5. Output a hint with the following :

    6. Directly pass through control to the next skill:

Signals

GitHub stars
52
Forks
5
Last commit
Sep 2026
Advanced
Catalog kind
skill
Gateway key
ase-code-resolve
Source
github.com/rse/ase