Skip to content

Commit 185e1ee

Browse files
committed
feat(skill): add roadmap skill for managing feature requests and improvements
1 parent becbfa3 commit 185e1ee

3 files changed

Lines changed: 128 additions & 0 deletions

File tree

.agent/skills

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
../.claude/skills

.agents/skills/roadmap/SKILL.md

Lines changed: 126 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,126 @@
1+
---
2+
name: roadmap
3+
description: >
4+
Create and manage CloudBurn roadmap items. Use this skill whenever the user wants to add
5+
a feature request, improvement idea, or any item to the CloudBurn roadmap.
6+
---
7+
8+
# CloudBurn Roadmap Skill
9+
10+
You help users add items to the [CloudBurn Roadmap](https://github.com/orgs/towardsthecloud/projects/4) GitHub Project board. The user describes what they want — you turn it into a well-structured GitHub issue and place it in the **Researching** column.
11+
12+
## Phase 1: Understand the request
13+
14+
Before creating anything, assess whether you have enough context to write a useful issue. You need three things:
15+
16+
1. **What** — what should CloudBurn do that it doesn't today?
17+
2. **Why** — what's the cost optimization value or user benefit?
18+
3. **Scope** — enough specifics to make the issue actionable (AWS services, rule behavior, CLI output, etc.)
19+
20+
### When the request is clear
21+
22+
If the user gives you enough detail to answer all three confidently, skip straight to Phase 2. Don't interview for the sake of interviewing.
23+
24+
Example: "Add a rule that detects idle RDS instances with zero connections over 14 days" — you know the what, why, and scope. Go create it.
25+
26+
### When the request is vague
27+
28+
If the request is too vague, use the `AskUserQuestion` tool to gather what you need. This keeps the conversation structured and gives the user clear options to pick from.
29+
30+
Guidelines:
31+
- **One round of questions** — use `AskUserQuestion` with 1-3 focused questions to fill the gaps
32+
- **Prefer multiple choice options** — offer 2-4 concrete choices per question so the user can pick rather than type
33+
- **Stay focused** — you're writing a GitHub issue, not architecting a solution
34+
- **Use good headers** — short labels like "Scope", "Priority", "Service" to keep it scannable
35+
36+
Example: if the user says "we should support Azure", use `AskUserQuestion` with a question like:
37+
38+
- **Header**: "Scope"
39+
- **Question**: "Azure is a big surface area — where should we start?"
40+
- **Options**:
41+
- "Static IaC scanning" — Scan Terraform/ARM templates for Azure cost issues
42+
- "Live discovery" — Detect idle Azure compute resources in real accounts
43+
- "Both" — Start with IaC scanning and add live discovery next
44+
45+
After the user responds, you should have enough to proceed. If something is still unclear, one more `AskUserQuestion` round is fine — but no more than two rounds total. Fill remaining gaps with reasonable assumptions and note them in the issue body.
46+
47+
## Phase 2: Create the roadmap item
48+
49+
### Classify the label
50+
51+
| Label | Use when... |
52+
| --------------- | ------------------------------------------------------------------ |
53+
| `enhancement` | New feature, capability, rule, or improvement to existing behavior |
54+
| `bug` | Something is broken or behaving incorrectly |
55+
| `documentation` | Docs are missing, unclear, or need updating |
56+
57+
Default to `enhancement` — most roadmap items are enhancements.
58+
59+
### Write the issue
60+
61+
**Title**: Short, specific, action-oriented. Start with a verb when natural. Keep under 70 characters.
62+
63+
Examples:
64+
- "Add S3 lifecycle policy cost optimization rule"
65+
- "Support Azure resource discovery"
66+
- "Show estimated monthly savings in scan output"
67+
68+
**Body**: Clear, well-structured description. Adapt the structure to what makes sense — not every issue needs every section:
69+
70+
- **What**: What should CloudBurn do that it doesn't today?
71+
- **Why**: What's the cost optimization value or user benefit?
72+
- **Details**: Any specifics (AWS services, rule behavior, output format, etc.)
73+
74+
Keep it concise. Don't pad with filler or repeat the title in the body.
75+
76+
### Execute
77+
78+
**Step 1** — Create the GitHub issue:
79+
80+
```bash
81+
gh issue create \
82+
--repo towardsthecloud/cloudburn \
83+
--title "<title>" \
84+
--label "<label>" \
85+
--body "$(cat <<'EOF'
86+
<body>
87+
EOF
88+
)"
89+
```
90+
91+
Capture the issue URL from the output.
92+
93+
**Step 2** — Add the issue to the roadmap project:
94+
95+
```bash
96+
gh project item-add 4 --owner towardsthecloud --url <issue-url> --format json
97+
```
98+
99+
Extract the `id` field from the JSON response.
100+
101+
**Step 3** — Set status to "Researching":
102+
103+
```bash
104+
gh project item-edit \
105+
--project-id PVT_kwDOC--Ra84BG8XH \
106+
--id <item-id> \
107+
--field-id PVTSSF_lADOC--Ra84BG8XHzg317rI \
108+
--single-select-option-id f75ad846
109+
```
110+
111+
**Step 4** — Confirm to the user with the issue title, label, and link. Keep it brief.
112+
113+
## Reference: Project IDs
114+
115+
Stable identifiers for the CloudBurn Roadmap project board:
116+
117+
- **Project number**: `4`
118+
- **Project node ID**: `PVT_kwDOC--Ra84BG8XH`
119+
- **Org**: `towardsthecloud`
120+
- **Repo**: `towardsthecloud/cloudburn`
121+
- **Status field ID**: `PVTSSF_lADOC--Ra84BG8XHzg317rI`
122+
- **Status options**:
123+
- Researching: `f75ad846`
124+
- Coming soon: `8185493e`
125+
- We're working on it: `47fc9ee4`
126+
- Shipped: `98236657`

.claude/skills/roadmap

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
../../.agents/skills/roadmap

0 commit comments

Comments
 (0)