with one click
metta-issue
Log an issue with root-cause analysis
Install with Codex or Claude Copy this prompt, paste it into Codex, Claude, or another assistant, and let it review the skill page and install it for you.
Menu
Log an issue with root-cause analysis
Install with Codex or Claude Copy this prompt, paste it into Codex, Claude, or another assistant, and let it review the skill page and install it for you.
Based on SOC occupation classification
Start a new change with Metta
Full lifecycle loop — discover, build, verify, ship
Resolve a reconciliation gap through the full metta change lifecycle
Resolve an issue through the full metta change lifecycle
Quick mode — small change without full planning
Finalize and ship the active change
| name | metta:issue |
| description | Log an issue with root-cause analysis |
| allowed-tools | ["Bash","AskUserQuestion","Read","Grep","Glob"] |
| context | fork |
| agent | metta-skill-host |
Log an issue to spec/issues/ via the metta CLI, running a short root-cause analysis (RCA) session first so the issue carries evidence and candidate solutions.
Parse arguments. Inspect the skill invocation. Extract a --quick flag if present and strip it from the input. Set TITLE to the remaining text (may be empty).
Collect description. If TITLE is empty, use AskUserQuestion with a single free-form question "What is the issue?"; set TITLE to the response.
Collect severity. Use AskUserQuestion with options critical | major | minor (default minor). Only ask if severity is not already supplied.
--quick short-circuit. If --quick was set in step 1, set BODY="$TITLE" and jump to step 7. Do NOT use Read, Grep, Glob, or Bash file/git inspection in this branch.
RCA session (default path). Investigate the symptom to build a structured analysis:
Grep and Glob to locate source files most relevant to the symptom.Read on the 2–5 most relevant files.Bash with git log -20 --oneline -- <path> for each relevant file to see recent history.BODY using this exact schema (stop when Evidence is solid — no hard file-read cap, but be efficient):
## Symptom
<one paragraph describing the observed behavior>
## Root Cause Analysis
<narrative explaining the probable cause>
### Evidence
- `path/to/file.ts:LINE` — <one sentence explaining why this supports the RCA>
## Candidate Solutions
1. **<Option>** — <one paragraph describing the approach>. Tradeoff: <drawback, risk, or cost>.
## Symptom → ## Root Cause Analysis → ### Evidence → ## Candidate Solutions); between 1 and 3 Evidence items; between 1 and 3 Candidate Solutions; each solution MUST include a Tradeoff: clause.RCA-failure fallback. If any tool call in step 5 fails, or if the evidence is insufficient to write a credible RCA, set BODY to this form instead:
> RCA skipped: <one-sentence reason>
<TITLE>
No ## Root Cause Analysis or ## Candidate Solutions sections appear in this form. Issue capture MUST proceed.
Write ticket. Run:
printf '%s' "$BODY" | METTA_SKILL=1 metta issue "$TITLE" --severity <level>
The CLI auto-detects the piped stdin and uses $BODY as the issue body. The $TITLE argument becomes the issue title. After the CLI returns, echo the slug and path to the user (the CLI prints Issue logged: <slug> (<severity>) on success).
--quick to the CLI — it is a skill-side flag only. Filter it out before calling metta issue.critical, major, minor. Do not invent other values.spec/issues/*.md from this skill; the CLI owns that file..env*, *.pem, *.key, id_rsa*, credentials*, or any file under a directory literally named secrets/ during RCA. If the symptom appears to require such a file, state so in the ## Root Cause Analysis section by name without citing contents.