@quadslab.io/discord-mcp 2.0.0 → 2.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.claude/.quadcode-version +1 -0
- package/.claude/settings.local.json +154 -0
- package/.claude/skills/architect/SKILL.md +111 -0
- package/.claude/skills/assign-environment/SKILL.md +71 -0
- package/.claude/skills/brainstorm/SKILL.md +114 -0
- package/.claude/skills/brainstorm-spec/SKILL.md +72 -0
- package/.claude/skills/check-implemented/SKILL.md +59 -0
- package/.claude/skills/check-issue-progress/SKILL.md +66 -0
- package/.claude/skills/create-rich-plan/SKILL.md +90 -0
- package/.claude/skills/decompose-spec/SKILL.md +32 -0
- package/.claude/skills/detect-environments/SKILL.md +61 -0
- package/.claude/skills/dispatch/SKILL.md +90 -0
- package/.claude/skills/estimate-complexity/SKILL.md +118 -0
- package/.claude/skills/expand-epic/SKILL.md +38 -0
- package/.claude/skills/find-duplicate-issues/SKILL.md +91 -0
- package/.claude/skills/find-duplicates/SKILL.md +77 -0
- package/.claude/skills/find-related-code/SKILL.md +145 -0
- package/.claude/skills/idea-summary/SKILL.md +57 -0
- package/.claude/skills/idea-to-prompt/SKILL.md +98 -0
- package/.claude/skills/ideas-maintenance/SKILL.md +98 -0
- package/.claude/skills/ideas-to-issues/SKILL.md +108 -0
- package/.claude/skills/issue-summary/SKILL.md +64 -0
- package/.claude/skills/issue-to-prompt/SKILL.md +98 -0
- package/.claude/skills/launch-team/SKILL.md +69 -0
- package/.claude/skills/list-environments/SKILL.md +60 -0
- package/.claude/skills/new-spec/SKILL.md +37 -0
- package/.claude/skills/organize-ideas/SKILL.md +47 -0
- package/.claude/skills/organize-issues/SKILL.md +56 -0
- package/.claude/skills/organize-plans/SKILL.md +47 -0
- package/.claude/skills/plan-from-idea/SKILL.md +102 -0
- package/.claude/skills/plan-summary/SKILL.md +53 -0
- package/.claude/skills/plan-to-issues/SKILL.md +63 -0
- package/.claude/skills/preview-promotion/SKILL.md +47 -0
- package/.claude/skills/review-spec/SKILL.md +53 -0
- package/.claude/skills/run-script/SKILL.md +43 -0
- package/.claude/skills/script-summary/SKILL.md +67 -0
- package/.claude/skills/setup-environment/SKILL.md +78 -0
- package/.claude/skills/setup-python/SKILL.md +123 -0
- package/.claude/skills/setup-scripts/SKILL.md +82 -0
- package/.claude/skills/suggest-improvements/SKILL.md +66 -0
- package/.claude/skills/team-status/SKILL.md +68 -0
- package/.claude/skills/triage-issues/SKILL.md +51 -0
- package/.claude/skills/update-plan-progress/SKILL.md +102 -0
- package/.claude/skills/verify-plan/SKILL.md +54 -0
- package/.claude/skills/weekly-digest/SKILL.md +149 -0
- package/.mcp.json +7 -0
- package/.quadcode/config.json +6 -0
- package/CHANGELOG.md +174 -174
- package/CLAUDE.md +40 -0
- package/LICENSE +21 -21
- package/README.md +678 -668
- package/assets/demo.svg +470 -0
- package/assets/social-preview.html +14 -0
- package/assets/social-preview.svg +98 -0
- package/dist/cli.js +16 -12
- package/dist/cli.js.map +1 -1
- package/dist/tools/threads.js +299 -0
- package/dist/tools/threads.js.map +1 -1
- package/dist/tools/utils.js +48 -3
- package/dist/tools/utils.js.map +1 -1
- package/package.json +58 -58
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: create-rich-plan
|
|
3
|
+
description: Generate and save a comprehensive, enriched implementation plan with architectural decisions, risk analysis, and detailed steps
|
|
4
|
+
allowed-tools: mcp__quadcode__create_plan, mcp__quadcode__add_plan_step, mcp__quadcode__list_ideas, mcp__quadcode__get_idea, mcp__quadcode__list_issues, mcp__quadcode__get_issue, Read, Glob, Grep
|
|
5
|
+
user-invocable: true
|
|
6
|
+
argument-hint: <feature description, idea ID, or issue ID>
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# Create Rich Plan Skill
|
|
10
|
+
|
|
11
|
+
Generate and save a comprehensive implementation plan with full enrichment data including architectural decisions, risk analysis, codebase context, and detailed typed steps with acceptance criteria, target files, effort estimates, dependencies, and verification strategies.
|
|
12
|
+
|
|
13
|
+
## Process
|
|
14
|
+
|
|
15
|
+
1. **Parse arguments**:
|
|
16
|
+
- If $ARGUMENTS looks like a UUID, try to fetch it as an idea ID or issue ID
|
|
17
|
+
- If $ARGUMENTS is text, treat it as a feature description
|
|
18
|
+
- If no argument, ask the user what they want to plan
|
|
19
|
+
|
|
20
|
+
2. **Gather context**:
|
|
21
|
+
- If linked to an idea: fetch full idea details with `mcp__quadcode__get_idea`
|
|
22
|
+
- If linked to an issue: fetch full issue details with `mcp__quadcode__get_issue`
|
|
23
|
+
- Use `Glob` and `Read` to explore the codebase structure
|
|
24
|
+
- Use `Grep` to find relevant code patterns and existing implementations
|
|
25
|
+
- Identify the tech stack, frameworks, and conventions used
|
|
26
|
+
|
|
27
|
+
3. **Document architectural decisions**:
|
|
28
|
+
For each significant design choice, capture:
|
|
29
|
+
- **decision**: What was decided (e.g., "Use SQLite for storage")
|
|
30
|
+
- **rationale**: Why this choice was made (e.g., "Embedded DB avoids external dependencies")
|
|
31
|
+
|
|
32
|
+
4. **Identify risks and mitigations**:
|
|
33
|
+
- Schema/data migration risks
|
|
34
|
+
- Breaking changes to existing features
|
|
35
|
+
- Performance implications
|
|
36
|
+
- External dependency risks
|
|
37
|
+
- Capture these as `risk_notes` text
|
|
38
|
+
|
|
39
|
+
5. **Capture codebase context**:
|
|
40
|
+
- Key files and their roles
|
|
41
|
+
- Existing patterns to follow
|
|
42
|
+
- Important constraints or conventions
|
|
43
|
+
- Store as `context` text
|
|
44
|
+
|
|
45
|
+
6. **Break into typed steps**:
|
|
46
|
+
For each step, provide:
|
|
47
|
+
- **title**: Clear, actionable title
|
|
48
|
+
- **description**: Detailed description of what to do
|
|
49
|
+
- **step_type**: One of: research, design, implement, test, verify, document
|
|
50
|
+
- **acceptance_criteria**: List of criteria that define "done" for this step
|
|
51
|
+
- **target_files**: List of file paths this step will create/modify
|
|
52
|
+
- **estimated_effort**: low, medium, or high
|
|
53
|
+
- **dependencies**: List of step numbers this step depends on (e.g., ["1", "2"])
|
|
54
|
+
- **verification_strategy**: How to verify the step is complete:
|
|
55
|
+
- method: "build", "test", "grep_check", "manual_review", "file_exists"
|
|
56
|
+
- pattern: Optional search pattern
|
|
57
|
+
- command: Optional command to run
|
|
58
|
+
- **code_context**: Relevant code snippets or notes for the implementer
|
|
59
|
+
|
|
60
|
+
Step ordering should follow this pattern:
|
|
61
|
+
1. Research/discovery steps first
|
|
62
|
+
2. Design/planning steps
|
|
63
|
+
3. Implementation steps (ordered by dependency)
|
|
64
|
+
4. Testing steps
|
|
65
|
+
5. Verification/integration steps
|
|
66
|
+
6. Documentation steps (if applicable)
|
|
67
|
+
|
|
68
|
+
7. **Save the plan**:
|
|
69
|
+
Use `mcp__quadcode__create_plan` with ALL enrichment fields:
|
|
70
|
+
```
|
|
71
|
+
title, description, idea_id/issue_id,
|
|
72
|
+
architectural_decisions, risk_notes, context,
|
|
73
|
+
steps (with all enrichment fields)
|
|
74
|
+
```
|
|
75
|
+
|
|
76
|
+
8. **Report results**:
|
|
77
|
+
- Show the created plan summary
|
|
78
|
+
- List all steps with their types and effort estimates
|
|
79
|
+
- Highlight any risks identified
|
|
80
|
+
- Suggest which step to start with
|
|
81
|
+
|
|
82
|
+
## Guidelines
|
|
83
|
+
|
|
84
|
+
- Keep steps atomic and completable in one session
|
|
85
|
+
- Every implementation step should have at least one acceptance criterion
|
|
86
|
+
- Target files should be actual paths found via codebase exploration
|
|
87
|
+
- Dependencies should reference step numbers (e.g., "1", "2"), not IDs
|
|
88
|
+
- Use verification strategies that can be checked programmatically when possible
|
|
89
|
+
- Be specific about code context - include function names, types, patterns to follow
|
|
90
|
+
- Risk notes should include both the risk AND a mitigation strategy
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Break a plan's spec into high-level epic steps. Creates parent steps representing major work areas.
|
|
3
|
+
argument-hint: <plan_id>
|
|
4
|
+
allowed-tools: mcp__quadcode__get_plan, mcp__quadcode__add_plan_step, mcp__quadcode__update_plan, Read, Glob, Grep
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Decompose Spec into Epics
|
|
8
|
+
|
|
9
|
+
Read a plan's spec document and break it into 8-15 high-level parent steps (epics) representing major work areas.
|
|
10
|
+
|
|
11
|
+
## Process
|
|
12
|
+
|
|
13
|
+
1. Get the plan by ID: `mcp__quadcode__get_plan`
|
|
14
|
+
2. Read the `specContent` field
|
|
15
|
+
3. If the plan's `specType` is 'feature' or 'refactor', explore the codebase to understand existing architecture
|
|
16
|
+
4. Analyze the spec and identify 8-15 major work areas / subsystems / phases
|
|
17
|
+
5. For each area, create a parent step via `mcp__quadcode__add_plan_step`:
|
|
18
|
+
- `title`: Clear, descriptive name for the work area (e.g., "Authentication System", "Database Layer")
|
|
19
|
+
- `description`: 2-3 sentences summarizing what this area covers
|
|
20
|
+
- `step_type`: Classify as 'research', 'design', 'implement', 'test', 'verify', or 'document'
|
|
21
|
+
- `estimated_effort`: 'low', 'medium', or 'high' based on scope
|
|
22
|
+
- Do NOT set `parent_step_id` — these ARE the parents
|
|
23
|
+
6. Set plan status to `decomposing` if not already
|
|
24
|
+
|
|
25
|
+
## Guidelines
|
|
26
|
+
|
|
27
|
+
- Create steps that represent LOGICAL GROUPINGS, not sequential tasks
|
|
28
|
+
- Each parent step should be independently workable by a team
|
|
29
|
+
- Think about: infrastructure, data model, API, frontend, auth, testing, deployment, docs
|
|
30
|
+
- Order parents roughly by dependency (foundational work first)
|
|
31
|
+
- Don't create child steps — that's what `/expand-epic` does
|
|
32
|
+
- Keep titles concise but descriptive
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: detect-environments
|
|
3
|
+
description: Scan the system for available terminal environments (Visual Studio, Git Bash, etc.) and register them in QuadCode.
|
|
4
|
+
allowed-tools: mcp__quadcode__detect_environments, mcp__quadcode__list_environments, mcp__quadcode__set_default_environment
|
|
5
|
+
user-invocable: true
|
|
6
|
+
argument-hint: [set-default]
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# Detect Terminal Environments Skill
|
|
10
|
+
|
|
11
|
+
Scan the system for available development environments and register them in QuadCode.
|
|
12
|
+
|
|
13
|
+
## What Gets Detected
|
|
14
|
+
|
|
15
|
+
### On Windows
|
|
16
|
+
- **Default CMD** - Windows Command Prompt
|
|
17
|
+
- **Default PowerShell** - Windows PowerShell
|
|
18
|
+
- **Git Bash** - Git for Windows Bash shell (if installed at standard location)
|
|
19
|
+
- **Visual Studio Native Tools** - For each VS installation found:
|
|
20
|
+
- VS 2022/2019 Community/Professional/Enterprise/BuildTools
|
|
21
|
+
- Both x64 and x86 architectures
|
|
22
|
+
- Automatically configures vcvarsall.bat init commands
|
|
23
|
+
|
|
24
|
+
### On macOS/Linux
|
|
25
|
+
- **Default Bash** - System Bash shell
|
|
26
|
+
|
|
27
|
+
## Process
|
|
28
|
+
|
|
29
|
+
1. **Run detection** using `mcp__quadcode__detect_environments`
|
|
30
|
+
- This scans standard installation paths
|
|
31
|
+
- Registers found environments as built-in
|
|
32
|
+
- Preserves any existing custom environments
|
|
33
|
+
|
|
34
|
+
2. **Show results**:
|
|
35
|
+
- List all detected environments
|
|
36
|
+
- Show which are available vs unavailable
|
|
37
|
+
- Note any VS installations found with versions
|
|
38
|
+
|
|
39
|
+
3. **If $ARGUMENTS contains "default" or user wants**:
|
|
40
|
+
- Suggest setting a default environment
|
|
41
|
+
- Use `mcp__quadcode__set_default_environment` to set it
|
|
42
|
+
|
|
43
|
+
## After Detection
|
|
44
|
+
|
|
45
|
+
Inform the user they can:
|
|
46
|
+
- Assign environments to scripts using `/assign-environment`
|
|
47
|
+
- Create custom environments using `/setup-environment`
|
|
48
|
+
- Set a default environment for new scripts
|
|
49
|
+
|
|
50
|
+
## Example Output
|
|
51
|
+
|
|
52
|
+
```
|
|
53
|
+
Detected 5 terminal environments:
|
|
54
|
+
- Default CMD (system-cmd) ✓
|
|
55
|
+
- Default PowerShell (system-powershell) ✓
|
|
56
|
+
- Git Bash (system-bash) ✓
|
|
57
|
+
- VS 2022 Community x64 (vs-native) ✓
|
|
58
|
+
- VS 2022 Community x86 (vs-native) ✓
|
|
59
|
+
|
|
60
|
+
Would you like to set a default environment for new scripts?
|
|
61
|
+
```
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: dispatch
|
|
3
|
+
description: Review the issues board and launch a coordinator agent that proposes a mission swarm. The coordinator analyzes open issues, produces a structured proposal, and waits for human approval before any agents are spawned.
|
|
4
|
+
allowed-tools: mcp__quadcode__list_issues_filtered, mcp__quadcode__list_mission_templates, mcp__quadcode__get_issue, mcp__quadcode__get_mission_template, mcp__quadcode__create_mission, mcp__quadcode__add_mission_member, mcp__quadcode__list_agent_definitions, mcp__quadcode__create_mission_proposal, mcp__quadcode__list_mission_proposals, mcp__quadcode__get_mission_proposal, Read
|
|
5
|
+
user-invocable: true
|
|
6
|
+
argument-hint: [goal or focus area]
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# Dispatch Skill — Coordinator Proposal Workflow
|
|
10
|
+
|
|
11
|
+
You are the DISPATCH AGENT. Your job is to analyze open issues and produce a structured `MissionProposal` that the user can review and approve before any worker agents are spawned.
|
|
12
|
+
|
|
13
|
+
**This is a two-phase workflow:**
|
|
14
|
+
1. You (dispatch agent) set up the mission and produce a proposal
|
|
15
|
+
2. The user approves the proposal in the MissionDashboard → workers spawn
|
|
16
|
+
|
|
17
|
+
## Phase 1: Analyze the Work
|
|
18
|
+
|
|
19
|
+
1. **Get open issues** using `mcp__quadcode__list_issues_filtered` with status `todo,in_progress,blocked`
|
|
20
|
+
|
|
21
|
+
2. **Examine each issue** for:
|
|
22
|
+
- Labels, keywords, target files
|
|
23
|
+
- Priority (critical/high first)
|
|
24
|
+
- Dependencies (`blocked_by` — don't assign blocked issues)
|
|
25
|
+
- Natural groupings (related feature areas)
|
|
26
|
+
|
|
27
|
+
3. **Group issues into parallelizable batches:**
|
|
28
|
+
- Each batch should be assignable to one agent
|
|
29
|
+
- Batches should have minimal file overlap (to avoid merge conflicts)
|
|
30
|
+
- Blocked issues should wait until their dependencies are done
|
|
31
|
+
|
|
32
|
+
## Phase 2: Produce the Proposal
|
|
33
|
+
|
|
34
|
+
4. **Call `mcp__quadcode__create_mission_proposal`** with:
|
|
35
|
+
- `mission_id`: The ID of the current mission (create one with `mcp__quadcode__create_mission` if needed)
|
|
36
|
+
- `goal`: The overall objective in 1-2 sentences
|
|
37
|
+
- `proposed_agents`: Array of agent entries, each with:
|
|
38
|
+
- `role`: Agent role (frontend, backend, fullstack, qa, docs, etc.)
|
|
39
|
+
- `name`: Descriptive name (e.g. "Frontend Agent", "API Agent")
|
|
40
|
+
- `assigned_issue_ids`: Issue IDs this agent should handle
|
|
41
|
+
- `allowed_files`: Target files this agent will touch (from issue `target_files`)
|
|
42
|
+
- `rationale`: Why these issues are grouped together
|
|
43
|
+
- `estimated_cost_usd`: Cost estimate (assume $0.015/1k tokens, ~50k tokens/agent/hour)
|
|
44
|
+
- `estimated_minutes`: Parallelized time estimate
|
|
45
|
+
- `rationale`: Overall parallelization strategy and why this grouping makes sense
|
|
46
|
+
|
|
47
|
+
5. **Output a summary** of the proposal you filed:
|
|
48
|
+
- Number of agents proposed
|
|
49
|
+
- Issue breakdown per agent
|
|
50
|
+
- Estimated cost and time
|
|
51
|
+
- How to approve: "Open the MissionDashboard → Proposals tab → Approve"
|
|
52
|
+
|
|
53
|
+
## Coordinator Cost Estimation Formula
|
|
54
|
+
|
|
55
|
+
```
|
|
56
|
+
per_agent_cost = estimated_hours × 50_000_tokens × $0.015/1000 = $0.75/hour per agent
|
|
57
|
+
total_cost = number_of_agents × per_agent_cost × estimated_hours
|
|
58
|
+
```
|
|
59
|
+
|
|
60
|
+
If `total_cost > 2 × single_agent_cost` AND tasks have high interdependency, warn the user:
|
|
61
|
+
> "High coordination overhead detected. Consider running sequentially."
|
|
62
|
+
|
|
63
|
+
## Rules
|
|
64
|
+
|
|
65
|
+
- **DO NOT spawn workers yourself** — only create the proposal and wait for approval
|
|
66
|
+
- Prioritize by urgency (critical/high priority issues first)
|
|
67
|
+
- Assign each issue to exactly ONE agent (no duplicates)
|
|
68
|
+
- Assign unblocked issues only — note blocked issues as "waiting on dependencies"
|
|
69
|
+
- Keep file scopes non-overlapping where possible
|
|
70
|
+
- If there are fewer than 2 parallelizable issues, note that a single agent may be more efficient
|
|
71
|
+
- If a focus area argument was provided (`$ARGUMENTS`), filter to issues in that area
|
|
72
|
+
|
|
73
|
+
## Output Format
|
|
74
|
+
|
|
75
|
+
After filing the proposal, output:
|
|
76
|
+
|
|
77
|
+
```
|
|
78
|
+
✅ Mission proposal filed.
|
|
79
|
+
|
|
80
|
+
**Goal:** [goal]
|
|
81
|
+
**Agents proposed:** [N]
|
|
82
|
+
**Estimated cost:** $[X]-$[Y]
|
|
83
|
+
**Estimated time:** ~[N] minutes (parallelized)
|
|
84
|
+
|
|
85
|
+
Agent breakdown:
|
|
86
|
+
1. [Agent Name] ([role]) → Issues: [QU-X, QU-Y] | Files: [file1, file2]
|
|
87
|
+
2. [Agent Name] ([role]) → Issues: [QU-Z] | Files: [file3]
|
|
88
|
+
|
|
89
|
+
To launch: Open MissionDashboard → select this mission → Proposals tab → Review & Approve
|
|
90
|
+
```
|
|
@@ -0,0 +1,118 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: estimate-complexity
|
|
3
|
+
description: Review each idea and estimate implementation complexity (low/medium/high), considering dependencies, scope, and technical difficulty.
|
|
4
|
+
allowed-tools: mcp__quadcode__list_ideas, mcp__quadcode__get_idea, mcp__quadcode__add_tag, mcp__quadcode__add_idea_note, Read, Grep, Glob
|
|
5
|
+
user-invocable: true
|
|
6
|
+
argument-hint: [filter]
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# Estimate Complexity Skill
|
|
10
|
+
|
|
11
|
+
Review QuadCode ideas and estimate their implementation complexity.
|
|
12
|
+
|
|
13
|
+
## Process
|
|
14
|
+
|
|
15
|
+
1. **Retrieve ideas** to analyze:
|
|
16
|
+
- If a filter is provided ($ARGUMENTS), focus on those ideas (by tag or ID range)
|
|
17
|
+
- Otherwise, analyze all ideas using `mcp__quadcode__list_ideas`
|
|
18
|
+
|
|
19
|
+
2. **For each idea, evaluate**:
|
|
20
|
+
|
|
21
|
+
### Scope Assessment
|
|
22
|
+
- How many features/components are involved?
|
|
23
|
+
- Is it a single change or system-wide?
|
|
24
|
+
- Does it require UI, backend, or both?
|
|
25
|
+
|
|
26
|
+
### Technical Difficulty
|
|
27
|
+
- Does it require new technologies or patterns?
|
|
28
|
+
- Are there complex algorithms involved?
|
|
29
|
+
- Does it involve performance-critical code?
|
|
30
|
+
- Security or data integrity concerns?
|
|
31
|
+
|
|
32
|
+
### Dependencies
|
|
33
|
+
- External libraries or APIs needed?
|
|
34
|
+
- Other features that must exist first?
|
|
35
|
+
- Breaking changes to existing code?
|
|
36
|
+
|
|
37
|
+
### Codebase Impact
|
|
38
|
+
- Search codebase with `Grep` and `Glob` to understand scope
|
|
39
|
+
- How many files would need modification?
|
|
40
|
+
- Is there existing similar code to build on?
|
|
41
|
+
|
|
42
|
+
3. **Assign complexity level**:
|
|
43
|
+
- **Low**: 1-2 hours, single file, clear implementation path
|
|
44
|
+
- **Medium**: 2-8 hours, multiple files, some unknowns
|
|
45
|
+
- **High**: 1+ days, significant architecture, many unknowns
|
|
46
|
+
|
|
47
|
+
4. **Add complexity tags** using `mcp__quadcode__add_tag`:
|
|
48
|
+
- `complexity-low`
|
|
49
|
+
- `complexity-medium`
|
|
50
|
+
- `complexity-high`
|
|
51
|
+
|
|
52
|
+
5. **Add detailed notes** using `mcp__quadcode__add_idea_note`:
|
|
53
|
+
- Set `author` to `"estimate-complexity"`
|
|
54
|
+
- Include reasoning for the estimate
|
|
55
|
+
- Key risk factors
|
|
56
|
+
- Prerequisites or dependencies
|
|
57
|
+
- Suggested approach
|
|
58
|
+
|
|
59
|
+
Example:
|
|
60
|
+
```
|
|
61
|
+
mcp__quadcode__add_idea_note({
|
|
62
|
+
idea_id: "...",
|
|
63
|
+
body: "Complexity: MEDIUM\n\nReasoning:\n- Requires changes to 3-4 files\n- Builds on existing pattern in database.ts\n\nRisks:\n- May need schema migration\n\nSuggested approach:\n1. Add type definitions first\n2. Implement database layer\n3. Add MCP tool",
|
|
64
|
+
author: "estimate-complexity"
|
|
65
|
+
})
|
|
66
|
+
```
|
|
67
|
+
|
|
68
|
+
6. **Generate report**:
|
|
69
|
+
|
|
70
|
+
```
|
|
71
|
+
## Complexity Estimation Report
|
|
72
|
+
|
|
73
|
+
### Summary
|
|
74
|
+
- Ideas analyzed: X
|
|
75
|
+
- Low complexity: X (estimated Y hours total)
|
|
76
|
+
- Medium complexity: X (estimated Y hours total)
|
|
77
|
+
- High complexity: X (estimated Y hours total)
|
|
78
|
+
|
|
79
|
+
### Quick Wins (Low Complexity)
|
|
80
|
+
| ID | Idea | Est. Time | Notes |
|
|
81
|
+
|----|------|-----------|-------|
|
|
82
|
+
| 1 | ... | 1 hour | ... |
|
|
83
|
+
|
|
84
|
+
### Medium Effort
|
|
85
|
+
| ID | Idea | Est. Time | Dependencies | Notes |
|
|
86
|
+
|----|------|-----------|--------------|-------|
|
|
87
|
+
| 2 | ... | 4 hours | None | ... |
|
|
88
|
+
|
|
89
|
+
### Major Projects (High Complexity)
|
|
90
|
+
| ID | Idea | Est. Time | Dependencies | Risk Factors |
|
|
91
|
+
|----|------|-----------|--------------|--------------|
|
|
92
|
+
| 3 | ... | 2 days | Feature X | ... |
|
|
93
|
+
|
|
94
|
+
### Recommendations
|
|
95
|
+
- Start with: [quick wins list]
|
|
96
|
+
- Block dependencies: [ideas that should be done first]
|
|
97
|
+
- Needs clarification: [ambiguous ideas]
|
|
98
|
+
```
|
|
99
|
+
|
|
100
|
+
## Filter Options
|
|
101
|
+
|
|
102
|
+
If filter argument is provided ($ARGUMENTS):
|
|
103
|
+
- `untagged` - Only ideas without complexity tags
|
|
104
|
+
- `low` / `medium` / `high` - Re-evaluate specific complexity level
|
|
105
|
+
- Tag name (e.g., `mcp`) - Only ideas with that tag
|
|
106
|
+
- Idea ID - Estimate single idea in detail
|
|
107
|
+
|
|
108
|
+
## Notes vs Suggestions
|
|
109
|
+
|
|
110
|
+
- **Notes** (`add_idea_note`): Complexity analysis, reasoning, risk factors, approach
|
|
111
|
+
- **Suggestions** (`add_suggestion`): Only for text/wording improvements to the idea itself
|
|
112
|
+
|
|
113
|
+
## Notes
|
|
114
|
+
|
|
115
|
+
- Be conservative with estimates - add buffer for unknowns
|
|
116
|
+
- Consider the developer's familiarity with the codebase
|
|
117
|
+
- Flag ideas that need more information before accurate estimation
|
|
118
|
+
- Identify ideas that could be broken into smaller pieces
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Expand a parent step (epic) into detailed child steps with full enrichment data.
|
|
3
|
+
argument-hint: <plan_id> <step_id>
|
|
4
|
+
allowed-tools: mcp__quadcode__get_plan, mcp__quadcode__add_plan_step, mcp__quadcode__update_plan_step, Read, Glob, Grep
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Expand Epic into Child Steps
|
|
8
|
+
|
|
9
|
+
Take a parent step and generate 5-20 detailed child steps underneath it, with full enrichment data.
|
|
10
|
+
|
|
11
|
+
## Process
|
|
12
|
+
|
|
13
|
+
1. Parse arguments: plan_id (first arg), step_id (second arg)
|
|
14
|
+
2. Get the plan: `mcp__quadcode__get_plan`
|
|
15
|
+
3. Find the parent step by step_id from the plan's steps
|
|
16
|
+
4. Read the plan's `specContent` for context
|
|
17
|
+
5. If plan's `specType` is 'feature' or 'refactor', explore relevant parts of the codebase
|
|
18
|
+
6. Generate 5-20 child steps, each via `mcp__quadcode__add_plan_step` with:
|
|
19
|
+
- `plan_id`: the plan ID
|
|
20
|
+
- `parent_step_id`: the epic's step_id (THIS IS REQUIRED — it links the child to its parent)
|
|
21
|
+
- `title`: specific, actionable task title
|
|
22
|
+
- `description`: detailed description of what to implement
|
|
23
|
+
- `step_type`: 'research', 'design', 'implement', 'test', 'verify', or 'document'
|
|
24
|
+
- `acceptance_criteria`: list of concrete conditions for completion
|
|
25
|
+
- `target_files`: file paths that will be created or modified
|
|
26
|
+
- `code_context`: relevant existing code snippets or patterns (from codebase exploration)
|
|
27
|
+
- `estimated_effort`: 'low', 'medium', or 'high'
|
|
28
|
+
- `dependencies`: IDs of other steps this depends on (use step IDs from sibling steps created in this batch)
|
|
29
|
+
|
|
30
|
+
## Guidelines
|
|
31
|
+
|
|
32
|
+
- Each child step should be a single, focused task (1-4 hours of work)
|
|
33
|
+
- Include acceptance criteria for every implementation step
|
|
34
|
+
- Reference actual file paths from the codebase when possible
|
|
35
|
+
- Set dependencies between steps where order matters
|
|
36
|
+
- Include at least one test step and one verification step per epic
|
|
37
|
+
- Use verification_strategy with method: 'build', 'test', 'grep_check', 'file_exists', or 'manual_review'
|
|
38
|
+
- ALWAYS set `parent_step_id` to the epic's step ID — steps without a parent appear as top-level epics
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: find-duplicate-issues
|
|
3
|
+
description: Analyze all issues for similarity, find duplicates or related issues, and suggest consolidation.
|
|
4
|
+
allowed-tools: mcp__quadcode__list_issues, mcp__quadcode__get_issue, mcp__quadcode__update_issue, mcp__quadcode__add_issue_label, mcp__quadcode__add_issue_comment, mcp__quadcode__close_issue, mcp__quadcode__delete_issue
|
|
5
|
+
user-invocable: true
|
|
6
|
+
argument-hint: [threshold]
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# Find Duplicate Issues Skill
|
|
10
|
+
|
|
11
|
+
Analyze all QuadCode issues to find duplicates and similar issues, then suggest consolidation actions.
|
|
12
|
+
|
|
13
|
+
## Process
|
|
14
|
+
|
|
15
|
+
1. **Retrieve all issues** using `mcp__quadcode__list_issues`
|
|
16
|
+
|
|
17
|
+
2. **Analyze similarity** between issues by comparing:
|
|
18
|
+
- Title keywords and phrases
|
|
19
|
+
- Body/description content
|
|
20
|
+
- Labels assigned
|
|
21
|
+
- Underlying intent/goal
|
|
22
|
+
- Technical scope
|
|
23
|
+
|
|
24
|
+
3. **Group similar issues** into clusters:
|
|
25
|
+
- **Exact duplicates**: Same issue reported differently
|
|
26
|
+
- **Related issues**: Could be combined or linked
|
|
27
|
+
- **Overlapping scope**: Partial overlap, may benefit from referencing each other
|
|
28
|
+
|
|
29
|
+
4. **For each group, determine**:
|
|
30
|
+
- Which issue should be the primary (most comprehensive, detailed, or oldest)
|
|
31
|
+
- What unique aspects each duplicate adds
|
|
32
|
+
- Recommended action: merge, close as duplicate, or link
|
|
33
|
+
|
|
34
|
+
5. **Report findings** in this format:
|
|
35
|
+
|
|
36
|
+
```
|
|
37
|
+
## Duplicate Issues Analysis
|
|
38
|
+
|
|
39
|
+
### Summary
|
|
40
|
+
- Total issues analyzed: X
|
|
41
|
+
- Duplicate groups found: X
|
|
42
|
+
- Issues that could be consolidated: X
|
|
43
|
+
|
|
44
|
+
### Duplicate Groups
|
|
45
|
+
|
|
46
|
+
#### Group 1: [Theme/Topic]
|
|
47
|
+
**Primary Issue**: #[ID] - "[title]"
|
|
48
|
+
- Status: [status] | Priority: [priority]
|
|
49
|
+
|
|
50
|
+
**Potential Duplicates**:
|
|
51
|
+
- #[ID] - "[title]" (similarity: high)
|
|
52
|
+
- Unique info: [any unique details this adds]
|
|
53
|
+
- #[ID] - "[title]" (similarity: medium)
|
|
54
|
+
- Unique info: [any unique details]
|
|
55
|
+
|
|
56
|
+
**Recommendation**: Close [IDs] as duplicates of #[primary], adding comments
|
|
57
|
+
|
|
58
|
+
[Repeat for each group]
|
|
59
|
+
|
|
60
|
+
### Related But Distinct
|
|
61
|
+
[Issues that are related but should remain separate, with notes on how they differ]
|
|
62
|
+
```
|
|
63
|
+
|
|
64
|
+
6. **Ask user for approval** before taking action
|
|
65
|
+
|
|
66
|
+
7. **Consolidate duplicates** (with user approval):
|
|
67
|
+
- Add comment to duplicate issues noting the primary issue
|
|
68
|
+
- Add `duplicate` label to duplicates
|
|
69
|
+
- Close duplicates with reference to primary
|
|
70
|
+
- Optionally merge unique content into primary issue body
|
|
71
|
+
|
|
72
|
+
## Similarity Threshold
|
|
73
|
+
|
|
74
|
+
If threshold argument is provided ($ARGUMENTS):
|
|
75
|
+
- `strict` - Only exact/near-exact duplicates (same problem reported twice)
|
|
76
|
+
- `moderate` - Include clearly related issues (default)
|
|
77
|
+
- `loose` - Include any topically similar issues
|
|
78
|
+
|
|
79
|
+
## Actions Available
|
|
80
|
+
|
|
81
|
+
- `close_issue` - Close a duplicate issue
|
|
82
|
+
- `add_issue_comment` - Add note about duplicate
|
|
83
|
+
- `add_issue_label` - Add 'duplicate' label
|
|
84
|
+
- `update_issue` - Update primary issue with merged content
|
|
85
|
+
|
|
86
|
+
## Notes
|
|
87
|
+
|
|
88
|
+
- Always preserve unique information when consolidating
|
|
89
|
+
- Add comments explaining why issues are being closed as duplicates
|
|
90
|
+
- Consider that similar issues may have different root causes
|
|
91
|
+
- When in doubt, add comments linking issues rather than closing
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: find-duplicates
|
|
3
|
+
description: Analyze all ideas for similarity, group duplicate or related ideas, and suggest merging them.
|
|
4
|
+
allowed-tools: mcp__quadcode__list_ideas, mcp__quadcode__get_idea, mcp__quadcode__merge_ideas, mcp__quadcode__add_tag
|
|
5
|
+
user-invocable: true
|
|
6
|
+
argument-hint: [threshold]
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# Find Duplicates Skill
|
|
10
|
+
|
|
11
|
+
Analyze all QuadCode ideas to find duplicates and similar ideas, then suggest or perform merges.
|
|
12
|
+
|
|
13
|
+
## Process
|
|
14
|
+
|
|
15
|
+
1. **Retrieve all ideas** using `mcp__quadcode__list_ideas`
|
|
16
|
+
|
|
17
|
+
2. **Analyze similarity** between ideas by comparing:
|
|
18
|
+
- Keywords and phrases in content
|
|
19
|
+
- Category tags
|
|
20
|
+
- Underlying intent/goal
|
|
21
|
+
- Technical scope
|
|
22
|
+
|
|
23
|
+
3. **Group similar ideas** into clusters:
|
|
24
|
+
- **Exact duplicates**: Same idea worded differently
|
|
25
|
+
- **Related ideas**: Could be combined into one comprehensive idea
|
|
26
|
+
- **Overlapping ideas**: Partial overlap, may benefit from linking
|
|
27
|
+
|
|
28
|
+
4. **For each group, determine**:
|
|
29
|
+
- Which idea should be the primary (most comprehensive or clear)
|
|
30
|
+
- What unique aspects each duplicate adds
|
|
31
|
+
- Recommended action (merge, link, or keep separate)
|
|
32
|
+
|
|
33
|
+
5. **Report findings** in this format:
|
|
34
|
+
|
|
35
|
+
```
|
|
36
|
+
## Duplicate Analysis Report
|
|
37
|
+
|
|
38
|
+
### Summary
|
|
39
|
+
- Total ideas analyzed: X
|
|
40
|
+
- Duplicate groups found: X
|
|
41
|
+
- Ideas that could be merged: X
|
|
42
|
+
|
|
43
|
+
### Duplicate Groups
|
|
44
|
+
|
|
45
|
+
#### Group 1: [Theme/Topic]
|
|
46
|
+
- **Primary**: Idea #X - "[content]"
|
|
47
|
+
- **Duplicates**:
|
|
48
|
+
- Idea #Y - "[content]" (similarity: high)
|
|
49
|
+
- Idea #Z - "[content]" (similarity: medium)
|
|
50
|
+
- **Recommendation**: Merge Y and Z into X
|
|
51
|
+
- **Combined content suggestion**: [merged content]
|
|
52
|
+
|
|
53
|
+
[Repeat for each group]
|
|
54
|
+
|
|
55
|
+
### Unique Ideas
|
|
56
|
+
[List of ideas with no significant duplicates]
|
|
57
|
+
```
|
|
58
|
+
|
|
59
|
+
6. **Ask user for approval** before merging
|
|
60
|
+
|
|
61
|
+
7. **Perform merges** using `mcp__quadcode__merge_ideas`:
|
|
62
|
+
- Pass primary idea ID and list of IDs to merge
|
|
63
|
+
- Add `merged` tag to resulting idea if helpful
|
|
64
|
+
|
|
65
|
+
## Similarity Threshold
|
|
66
|
+
|
|
67
|
+
If threshold argument is provided ($ARGUMENTS):
|
|
68
|
+
- `strict` - Only exact/near-exact duplicates
|
|
69
|
+
- `moderate` - Include clearly related ideas (default)
|
|
70
|
+
- `loose` - Include any topically similar ideas
|
|
71
|
+
|
|
72
|
+
## Notes
|
|
73
|
+
|
|
74
|
+
- Always preserve unique information when merging
|
|
75
|
+
- Consider that differently worded ideas may serve different use cases
|
|
76
|
+
- When in doubt, suggest linking rather than merging
|
|
77
|
+
- Use `mcp__quadcode__add_tag` to mark related ideas with linking tags
|