Add /arch-refine-issue command for architectural issue refinement
Creates a new command that refines issues with architectural perspective by spawning the software-architect agent to analyze the codebase before proposing implementation guidance. The command: - Fetches issue details and spawns software-architect agent - Analyzes existing patterns and affected components - Identifies architectural concerns and dependencies - Proposes refined description with technical notes - Allows user to apply, edit, or skip the refinement Closes #59 Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit was merged in pull request #66.
This commit is contained in:
164
commands/arch-refine-issue.md
Normal file
164
commands/arch-refine-issue.md
Normal file
@@ -0,0 +1,164 @@
|
||||
---
|
||||
description: Refine an issue with architectural perspective. Analyzes existing codebase patterns and provides implementation guidance.
|
||||
argument-hint: <issue-number>
|
||||
---
|
||||
|
||||
# Architecturally Refine Issue #$1
|
||||
|
||||
@~/.claude/skills/gitea/SKILL.md
|
||||
@~/.claude/skills/issue-writing/SKILL.md
|
||||
|
||||
## Overview
|
||||
|
||||
Refine an issue in the context of the project's architecture. This command:
|
||||
1. Fetches the issue details
|
||||
2. Spawns the software-architect agent to analyze the codebase
|
||||
3. Identifies how the issue fits existing patterns
|
||||
4. Proposes refined description and acceptance criteria
|
||||
|
||||
## Process
|
||||
|
||||
### Step 1: Fetch Issue Details
|
||||
|
||||
```bash
|
||||
tea issues $1 --comments
|
||||
```
|
||||
|
||||
Capture:
|
||||
- Title
|
||||
- Description
|
||||
- Acceptance criteria
|
||||
- Any existing discussion
|
||||
|
||||
### Step 2: Spawn Software-Architect Agent
|
||||
|
||||
Use the Task tool to spawn the software-architect agent for issue refinement analysis:
|
||||
|
||||
```
|
||||
Task tool with:
|
||||
- subagent_type: "software-architect"
|
||||
- prompt: See prompt below
|
||||
```
|
||||
|
||||
**Agent Prompt:**
|
||||
```
|
||||
Analyze the architecture for issue refinement.
|
||||
|
||||
ANALYSIS_TYPE: issue-refine
|
||||
TARGET: $1
|
||||
CONTEXT:
|
||||
<issue title and description from step 1>
|
||||
|
||||
Repository path: <current working directory>
|
||||
|
||||
Focus on:
|
||||
1. Understanding existing project structure and patterns
|
||||
2. Identifying packages/modules that will be affected
|
||||
3. Analyzing existing conventions and code style
|
||||
4. Detecting potential architectural concerns
|
||||
5. Suggesting implementation approach that fits existing patterns
|
||||
```
|
||||
|
||||
### Step 3: Parse Agent Analysis
|
||||
|
||||
The software-architect agent returns structured output with:
|
||||
- Summary of architectural findings
|
||||
- Affected packages/modules
|
||||
- Pattern recommendations
|
||||
- Potential concerns (breaking changes, tech debt, pattern violations)
|
||||
- Implementation suggestions
|
||||
|
||||
### Step 4: Present Refinement Proposal
|
||||
|
||||
Present the refined issue to the user with:
|
||||
|
||||
**1. Architectural Context**
|
||||
- Affected packages/modules
|
||||
- Existing patterns that apply
|
||||
- Dependency implications
|
||||
|
||||
**2. Concerns and Risks**
|
||||
- Breaking changes
|
||||
- Tech debt considerations
|
||||
- Pattern violations to avoid
|
||||
|
||||
**3. Proposed Refinement**
|
||||
- Refined description with architectural context
|
||||
- Updated acceptance criteria (if needed)
|
||||
- Technical notes section
|
||||
|
||||
**4. Implementation Guidance**
|
||||
- Suggested approach
|
||||
- Files likely to be modified
|
||||
- Recommended order of changes
|
||||
|
||||
### Step 5: User Decision
|
||||
|
||||
Ask the user what action to take:
|
||||
|
||||
- **Apply**: Update the issue with refined description and technical notes
|
||||
- **Edit**: Let user modify the proposal before applying
|
||||
- **Skip**: Keep the original issue unchanged
|
||||
|
||||
### Step 6: Update Issue (if approved)
|
||||
|
||||
If user approves, update the issue using tea CLI:
|
||||
|
||||
```bash
|
||||
tea issues edit $1 --description "<refined description>"
|
||||
```
|
||||
|
||||
Add a comment with the architectural analysis:
|
||||
|
||||
```bash
|
||||
tea comment $1 "## Architectural Analysis
|
||||
|
||||
<findings from software-architect agent>
|
||||
|
||||
---
|
||||
Generated by /arch-refine-issue"
|
||||
```
|
||||
|
||||
## Output Format
|
||||
|
||||
Present findings in a clear, actionable format:
|
||||
|
||||
```markdown
|
||||
## Architectural Analysis for Issue #$1
|
||||
|
||||
### Affected Components
|
||||
- `package/name` - Description of impact
|
||||
- `another/package` - Description of impact
|
||||
|
||||
### Existing Patterns
|
||||
- Pattern 1: How it applies
|
||||
- Pattern 2: How it applies
|
||||
|
||||
### Concerns
|
||||
- [ ] Breaking change: description (if applicable)
|
||||
- [ ] Tech debt: description (if applicable)
|
||||
- [ ] Pattern violation risk: description (if applicable)
|
||||
|
||||
### Proposed Refinement
|
||||
|
||||
**Updated Description:**
|
||||
<refined description>
|
||||
|
||||
**Updated Acceptance Criteria:**
|
||||
- [ ] Original criteria (unchanged)
|
||||
- [ ] New criteria based on analysis
|
||||
|
||||
**Technical Notes:**
|
||||
<implementation guidance based on architecture>
|
||||
|
||||
### Recommended Approach
|
||||
1. Step 1
|
||||
2. Step 2
|
||||
3. Step 3
|
||||
```
|
||||
|
||||
## Error Handling
|
||||
|
||||
- If issue does not exist, inform user
|
||||
- If software-architect agent fails, report partial analysis
|
||||
- If tea CLI fails, show manual instructions
|
||||
Reference in New Issue
Block a user