Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Track project blockers, bugs, and gaps across sessions — use when issues pile up or need triage
.claude/skills/hashgraph-online-skill-issues/SKILL.md| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-08 | ✗→✓ | ▲ Improved | 61% | 0% |
| case-09 | ✗→✓ | ▲ Improved | 91% | 0% |
| case-17 | ✗→✓ | ▲ Improved | 160% | 0% |
| case-19 | ✗→✓ | ▲ Improved | 97% | 0% |
| case-22 | ✗→✓ | ▲ Improved | 55% | 0% |
> Host: Codex CLI — This skill was designed for Claude Code and adapted for Codex. > Cross-reference commands use installed skill names in Codex rather than /octo:* slash commands. > Use the active Codex shell and subagent tools. Do not claim a provider, model, or host subagent is available until the current session exposes it. > For host tool equivalents, see skills/blocks/codex-host-adapter.md.
Cross-session issue tracking for persistent problem management. Issues are stored in .octo/ISSUES.md and survive across Claude Code sessions.
Core principle: Track → Resolve → Learn.
Use this skill when user wants to:
Do NOT use for:
Trigger: /octo:issues or /octo:issues list
Show all open issues in table format:
markdown## Open Issues | ID | Severity | Category | Description | Created | Phase | |----|----------|----------|-------------|---------|-------| | ISS-20260203-001 | high | integration | Auth not working | 2026-02-03 | Develop | | ISS-20260203-002 | medium | performance | Slow query performance | 2026-02-03 | Deliver |
Pattern Detection: After listing, check if 3+ open issues share the same category. If so, alert:
text⚠ Pattern detected: 3 open issues in category "integration" — may indicate a systemic problem.
Implementation:
.octo/ISSUES.md existsTrigger: /octo:issues add <description>
Add new issue with auto-generated ID.
Flow:
Use AskUserQuestion with two questions:
javascriptAskUserQuestion({ questions: [ { question: "What severity is this issue?", header: "Severity", multiSelect: false, options: [ {label: "critical", description: "Blocks all progress"}, {label: "high", description: "Significant impact"}, {label: "medium", description: "Should address"}, {label: "low", description: "Nice to fix"} ] }, { question: "What category does this issue fall into?", header: "Category", multiSelect: false, options: [ {label: "logic-error", description: "Incorrect behavior or wrong output"}, {label: "integration", description: "Cross-component or API compatibility"}, {label: "quality-gate", description: "Quality gate failures during workflows"}, {label: "security", description: "Security vulnerabilities or concerns"}, {label: "performance", description: "Speed, memory, or scalability issues"}, {label: "ux", description: "User experience or usability problems"}, {label: "architecture", description: "Structural or design pattern issues"} ] } ] })
bash# Check if STATE.md exists if [ -f .octo/STATE.md ]; then grep "current_phase:" .octo/STATE.md else echo "Unknown" fi
Format: ISS-YYYYMMDD-NNN
bash# Get today's date TODAY=$(date +%Y%m%d) # Find existing issues for today grep "ISS-${TODAY}-" .octo/ISSUES.md | tail -1 # Increment sequence number # If ISS-20260203-001 exists, next is ISS-20260203-002
Add new row to Open Issues table:
markdown| ISS-20260203-003 | medium | performance | Slow query performance | 2026-02-03 | Develop |
Preserve existing issues - append only, don't overwrite.
markdown✅ Issue created: ISS-20260203-003 **Severity:** medium **Category:** performance **Description:** Slow query performance **Created:** 2026-02-03 **Phase:** Develop View with: /octo:issues show ISS-20260203-003
Trigger: /octo:issues resolve <id>
Mark issue as resolved and move to Resolved section.
Flow:
bash# Check if issue ID exists in Open Issues grep "ISS-20260203-001" .octo/ISSUES.md
If not found, show error:
markdown❌ Issue ISS-20260203-001 not found in open issues. Use `/octo:issues list` to see all open issues.
markdown**Resolving issue:** ISS-20260203-001 Please provide resolution notes:
Resolved Issues format:
markdown| ID | Severity | Category | Description | Created | Resolved | Resolution | |----|----------|----------|-------------|---------|----------|------------| | ISS-20260203-001 | high | integration | Auth not working | 2026-02-03 | 2026-02-04 | Fixed OAuth token refresh |
markdown✅ Issue resolved: ISS-20260203-001 **Resolution date:** 2026-02-04 **Resolution notes:** Fixed OAuth token refresh View with: /octo:issues show ISS-20260203-001
Trigger: /octo:issues show <id>
Display full details of specific issue.
Flow:
Search both Open and Resolved sections for issue ID.
For open issue:
markdown## Issue Details: ISS-20260203-001 **Status:** Open **Severity:** high **Category:** integration **Description:** Auth not working **Created:** 2026-02-03 **Phase:** Develop **Actions:** - Resolve: `/octo:issues resolve ISS-20260203-001`
For resolved issue:
markdown## Issue Details: ISS-20260203-001 **Status:** Resolved **Severity:** high **Category:** integration **Description:** Auth not working **Created:** 2026-02-03 **Resolved:** 2026-02-04 **Resolution:** Fixed OAuth token refresh
markdown❌ Issue ISS-20260203-001 not found. Use `/octo:issues list` to see all open issues.
When: First time skill is used or .octo/ISSUES.md doesn't exist.
Action:
bash# Create .octo directory if needed mkdir -p .octo # Copy template cp ${HOME}/.claude-octopus/plugin/config/templates/ISSUES.md.template .octo/ISSUES.md # Replace {{PROJECT_NAME}} with actual project name PROJECT_NAME=$(basename $(pwd)) sed -i '' "s/{{PROJECT_NAME}}/$PROJECT_NAME/g" .octo/ISSUES.md
CRITICAL: When adding or resolving issues, NEVER overwrite existing content.
Pattern:
bash# Read existing content EXISTING=$(cat .octo/ISSUES.md) # Modify specific section only # Append new issue to Open Issues table # OR move issue from Open to Resolved # Write back with all content preserved echo "$MODIFIED" > .octo/ISSUES.md
Format: ISS-YYYYMMDD-NNN
Example: ISS-20260203-001
Implementation:
bash#!/bin/bash # Get today's date in YYYYMMDD format TODAY=$(date +%Y%m%d) # Find all issues created today TODAY_ISSUES=$(grep -o "ISS-${TODAY}-[0-9]\{3\}" .octo/ISSUES.md || echo "") if [ -z "$TODAY_ISSUES" ]; then # No issues today, start at 001 NEXT_NUM="001" else # Get highest number for today HIGHEST=$(echo "$TODAY_ISSUES" | sed "s/ISS-${TODAY}-//" | sort -n | tail -1) # Increment NEXT_NUM=$(printf "%03d" $((10#$HIGHEST + 1))) fi # Generate ID ISSUE_ID="ISS-${TODAY}-${NEXT_NUM}" echo "$ISSUE_ID"
| Level | Meaning | Example | |-------|---------|---------| | critical | Blocks all progress | Production down, data loss | | high | Significant impact | Feature broken, security issue | | medium | Should address | Performance degradation, UX issue | | low | Nice to fix | Minor bug, cosmetic issue |
User: "track this bug for later"
1. Use skill-issues to create issue
2. Use skill-debug to investigate if time permits
3. Link issue ID in debug notesUser: "add fixing ISS-20260203-001 to todos"
1. Use skill-task-management to add todo
2. Reference issue ID in todo description
3. Mark issue as resolved when todo completesUser: "implement fix for ISS-20260203-001"
1. Use flow-develop to implement fix
2. Use skill-issues to resolve issue after fix
3. Link commit SHA in resolution notesGood:
Auth token refresh fails after 15 minutesPoor:
Auth brokenCritical: Only for blockers that stop all work High: Significant but workarounds exist Medium: Should fix but not urgent Low: Nice to have
Good:
Fixed OAuth token refresh by updating expiration logic in auth.ts
Commit: abc123Poor:
FixedUser: "track this issue: API rate limiting not working"
Action:
1. Create issue with appropriate severity
2. Record current phase from STATE.md
3. Continue developmentUser: "resolve ISS-20260203-001, fixed in commit abc123"
Action:
1. Ask for resolution notes
2. Move to Resolved section
3. Record resolution date and notesUser: "what issues do we have?"
Action:
1. List all open issues
2. Show severity and phase
3. Offer to show details or resolve| Action | Why It's Wrong | |--------|----------------| | Overwrite ISSUES.md | Lose all existing issues | | Skip severity validation | Invalid data in file | | Duplicate issue IDs | ID collision | | Vague descriptions | Can't remember what issue was | | Resolve without notes | No record of what was done |
| User Intent | Skill Action | Output | |-------------|--------------|--------| | "list issues" | Read and display Open Issues | Table of issues | | "add issue X" | Generate ID, append to file | Issue created | | "resolve ISS-X" | Move to Resolved section | Issue resolved | | "show ISS-X" | Find and display details | Issue details |
Issue tracking → Persistent memory across sessions
Otherwise → Forget problems, repeat mistakesTrack everything. Resolve systematically. Learn from history.
| Case | Status | Duration (ms) | Turns | Tokens | Tool calls | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Without | With | Δ | Without | With | Δ | Without | With | Δ | Without | With | Δ | ||
case-01 | fail→fail | 7,772 | 9,596 | +23% | 1 | 1 | 0% | 411 | 3,482 | +747% | 0 | 0 | — |
case-02 | fail→fail | 11,936 | 9,662 | -19% | 1 | 1 | 0% | 1,207 | 3,433 | +184% | 0 | 0 | — |
case-03 | fail→fail | 13,965 | 10,176 | -27% | 1 | 1 | 0% | 300 | 3,508 | +1069% | 0 | 0 | — |
case-04 | pass→fail | 12,659 | 16,760 | +32% | 1 | 1 | 0% | 1,617 | 3,575 | +121% | 0 | 0 | — |
case-05 | pass→pass | 3,731 | 6,036 | +62% | 1 | 1 | 0% | 499 | 4,217 | +745% | 0 | 0 | — |
case-06 | pass→fail | 2,907 | 10,208 | +251% | 1 | 1 | 0% | 350 | 3,337 | +853% | 0 | 0 | — |
case-07 | pass→pass | 2,224 | 11,316 | +409% | 1 | 1 | 0% | 442 | 4,502 | +919% | 0 | 0 | — |
case-08 | fail→pass | 15,741 | 2,025 | -87% | 1 | 1 | 0% | 2,192 | 3,535 | +61% | 0 | 0 | — |
case-09 | fail→pass | 16,595 | 4,061 | -76% | 1 | 1 | 0% | 2,054 | 3,914 | +91% | 0 | 0 | — |
case-10 | pass→pass | 7,808 | 8,667 | +11% | 1 | 1 | 0% | 1,321 | 3,817 | +189% | 0 | 0 | — |
case-11 | pass→pass | 8,714 | 9,403 | +8% | 1 | 1 | 0% | 1,547 | 3,779 | +144% | 0 | 0 | — |
case-12 | fail→fail | 9,390 | 18,832 | +101% | 1 | 1 | 0% | 261 | 3,365 | +1189% | 0 | 0 | — |
case-13 | fail→fail | 4,858 | 9,863 | +103% | 1 | 1 | 0% | 223 | 3,421 | +1434% | 0 | 0 | — |
case-14 | pass→pass | 13,134 | 2,494 | -81% | 1 | 1 | 0% | 1,494 | 3,534 | +137% | 0 | 0 | — |
case-15 | pass→pass | 7,833 | 3,133 | -60% | 1 | 1 | 0% | 1,280 | 3,648 | +185% | 0 | 0 | — |
case-16 | pass→pass | 4,716 | 2,399 | -49% | 1 | 1 | 0% | 747 | 3,492 | +367% | 0 | 0 | — |
case-17 | fail→pass | 8,451 | 7,114 | -16% | 1 | 1 | 0% | 1,334 | 3,473 | +160% | 0 | 0 | — |
case-18 | pass→pass | 28,319 | 2,579 | -91% | 1 | 1 | 0% | 3,937 | 3,604 | -8% | 0 | 0 | — |
case-19 | fail→pass | 16,589 | 2,861 | -83% | 1 | 1 | 0% | 1,775 | 3,501 | +97% | 0 | 0 | — |
case-20 | pass→pass | 15,553 | 7,124 | -54% | 1 | 1 | 0% | 1,774 | 3,411 | +92% | 0 | 0 | — |
case-21 | pass→pass | 4,697 | 1,922 | -59% | 1 | 1 | 0% | 752 | 3,457 | +360% | 0 | 0 | — |
case-22 | fail→pass | 18,394 | 6,977 | -62% | 1 | 1 | 0% | 2,202 | 3,424 | +55% | 0 | 0 | — |
DecimalAI ran this skill against gemini-3.6-flash twice over the same eval suite — once with the skill loaded and once without — and compared the two runs case by case. 22 cases were attempted, and 15 counted toward the lift figure. The other 7 produced results that are not comparable between the two arms, so they are excluded from the headline rather than averaged into it. The headline lift of +14 percentage points is the difference between those two pass rates over the 15 comparable cases. 2 cases got worse with the skill loaded, and they are included in that figure.
Without the skill loaded, the model failed this case. With it loaded, the same prompt on the same model passed. This is one improved case from the latest verified run; every case, including any that regressed, is in the table above.
Other measured skills in the registry, with their headline benchmark lift.