diff --git a/.claude/CLAUDE.md b/.claude/CLAUDE.md index c8a65cd..d2cf891 100644 --- a/.claude/CLAUDE.md +++ b/.claude/CLAUDE.md @@ -248,6 +248,7 @@ Vault structure: `infrastructure/`, `clients/`, `services/`, `projects/`, `msp-t | `/create-spec` | Create app specification for AutoCoder | | `/frontend-design` | Modern frontend design (auto-invoke after UI changes) | | `/remediation-tool` | M365 breach checks, tenant sweeps, gated remediation | +| `/feature-request` | Howard submits a GuruRMM feature request — Claude classifies it and messages Mike | --- diff --git a/.claude/commands/feature-request.md b/.claude/commands/feature-request.md new file mode 100644 index 0000000..aef6b52 --- /dev/null +++ b/.claude/commands/feature-request.md @@ -0,0 +1,99 @@ +Howard is submitting a GuruRMM feature request. Follow these steps exactly. + +--- + +## Step 1 — Read context + +Read `.claude/identity.json` to get the machine hostname (for session ID and Ollama endpoint). + +Read `projects/msp-tools/guru-rmm/docs/FEATURE_ROADMAP.md`. Extract the top-level section headers +and a representative sample of subsections so you understand the existing structure. +Do NOT print the roadmap to the user. + +--- + +## Step 2 — Classify the feature using Ollama + +The feature request is: $ARGUMENTS + +Determine the Ollama endpoint: +- If hostname is `DESKTOP-0O8A1RL`: use `http://localhost:11434` +- All other machines (including Howard's): use `http://100.92.127.64:11434` + +Call Ollama with model `qwen3:14b` to classify the request. Ask it to return: +1. Which top-level roadmap section this belongs in (e.g., "Core Agent Features", "Server/API Features", + "Dashboard & UI", "Platform & Infrastructure", "Integrations", "Future Considerations") +2. Suggested subsection — match an existing one if it fits; propose a new name if it doesn't +3. Suggested priority (P1 = critical/blocking, P2 = important/near-term, P3 = nice-to-have) +4. A 2-3 sentence plain-English summary of what Howard is asking for + +Use this prompt structure for the Ollama call: +``` +You are helping classify a feature request for GuruRMM, a Remote Monitoring & Management tool +for MSPs. The roadmap sections are: Core Agent Features, Server/API Features, Dashboard & UI, +Platform & Infrastructure, Integrations, Future Considerations. + +Feature request: <$ARGUMENTS> + +Respond with JSON only: {"section": "...", "subsection": "...", "priority": "P1|P2|P3", "summary": "..."} +``` + +Parse the JSON response. If Ollama is unreachable, perform the classification yourself directly. + +--- + +## Step 3 — Send coord message to Mike + +Post a message to the coord API: + +```bash +curl -s -X POST http://172.16.3.30:8001/api/coord/messages \ + -H "Content-Type: application/json" \ + -d '{ + "from_session": "/claude-main", + "to_session": "DESKTOP-0O8A1RL/claude-main", + "project_key": "gururmm", + "subject": "Feature Request from Howard: ", + "body": "" + }' +``` + +Where `` comes from identity.json. + +**Message body format:** +``` +Howard submitted a feature request for GuruRMM. + +FEATURE REQUEST +=============== +<$ARGUMENTS verbatim> + +PROPOSED PLACEMENT +================== +Section:
+Subsection: +Priority: + +SUMMARY +======= +<2-3 sentence summary from Ollama> + +--- +Submitted via /feature-request from at +``` + +Send to `to_session: "DESKTOP-0O8A1RL/claude-main"` and also to `"Mikes-MacBook-Air/claude-main"` +so Mike sees it regardless of which machine he's on. + +--- + +## Step 4 — Acknowledge to Howard + +Tell Howard: + +- His request was submitted to Mike +- Where you've suggested it fits in the roadmap (section + subsection) +- Suggested priority +- That Mike will review and decide if/how/when to build it + +Keep it brief — one short paragraph. Do NOT say "I" did anything — say the request was sent.