convert-github-issues-to-fixmes

Convert triaged autoclaude GitHub issues into FIXMEs in the codebase. Use when you want to process issues that have been triaged by authorized users.

226 stars

Best use case

convert-github-issues-to-fixmes is best used when you need a repeatable AI agent workflow instead of a one-off prompt.

Convert triaged autoclaude GitHub issues into FIXMEs in the codebase. Use when you want to process issues that have been triaged by authorized users.

Teams using convert-github-issues-to-fixmes should expect a more consistent output, faster repeated execution, less prompt rewriting.

When to use this skill

  • You want a reusable workflow that can be run more than once with consistent structure.

When not to use this skill

  • You only need a quick one-off answer and do not need a reusable workflow.
  • You cannot install or maintain the underlying files, dependencies, or repository context.

Installation

Claude Code / Cursor / Codex

$curl -o ~/.claude/skills/convert-github-issues-to-fixmes/SKILL.md --create-dirs "https://raw.githubusercontent.com/imbue-ai/mngr/main/.claude/skills/convert-github-issues-to-fixmes/SKILL.md"

Manual Installation

  1. Download SKILL.md from GitHub
  2. Place it in .claude/skills/convert-github-issues-to-fixmes/SKILL.md inside your project
  3. Restart your AI agent — it will auto-discover the skill

How convert-github-issues-to-fixmes Compares

Feature / Agentconvert-github-issues-to-fixmesStandard Approach
Platform SupportNot specifiedLimited / Varies
Context Awareness High Baseline
Installation ComplexityUnknownN/A

Frequently Asked Questions

What does this skill do?

Convert triaged autoclaude GitHub issues into FIXMEs in the codebase. Use when you want to process issues that have been triaged by authorized users.

Where can I find the source code?

You can find the source code on GitHub using the link provided at the top of the page.

SKILL.md Source

# Converting GitHub Issues to FIXMEs

This skill provides guidelines for converting triaged "autoclaude" GitHub issues into FIXME comments in the codebase.

## Overview

Issues created by the `create-github-issues` skill are labeled with "autoclaude". After human triage (via comments from authorized users), these issues should be converted into FIXMEs in the code, or marked as non-issues.

## Prerequisites

The authorized users list is maintained in `scripts/authorized_github_users.toml`. This file contains an array of GitHub usernames whose comments are considered authoritative for triage decisions.

## Process

### 1. Load Issues and Filter by Authorized Users

Run the helper script to fetch all open "autoclaude" issues and their comments, filtering to only include comments from authorized users:

```bash
./scripts/load_triaged_issues.sh > triaged_issues.json
```

This script (requires `gh` and `jq`):
1. Loads the list of authorized users from `scripts/authorized_github_users.toml`
2. Fetches all open issues with the "autoclaude" label
3. For each issue, fetches comments and filters to only those from authorized users
4. Outputs only issues that have at least one comment from an authorized user
5. Writes the filtered data as JSON to stdout

### 2. Check If There Are Any Issues to Process

Read the `triaged_issues.json` file. If the `issues` array is empty (i.e., `{"issues": []}`), there are no triaged issues to process. Stop here.

### 3. Create a Working Branch

Create a branch off of main with the naming convention:

```bash
git checkout main
git pull origin main
git checkout -b "mngr/add-fixmes-$(date +%Y%m%d%H%M%S)"
```

### 4. Process Each Issue

For each issue in the triaged issues list:

#### 4a. Determine the Action

Look at the **last** comment from any authorized user:

- If the last comment text (trimmed and lowercased) is exactly "ignore": Add to `non_issues.md`
- Otherwise: Create a FIXME in the code

#### 4b. For "ignore" Comments - Add to non_issues.md

Open the `non_issues.md` file in the relevant sub-project (e.g., `libs/mngr/non_issues.md`) and add a single line describing why this is not an issue. The line should:

- Be concise (one sentence)
- Reference the original issue content to prevent it from being flagged again
- Follow the existing format in the file

Example:
```markdown
- using default arguments in CLI option parsing is intentional for usability (issue #123)
```

#### 4c. For Other Comments - Create a FIXME

Transfer the issue data into a `# FIXME` comment in the correct location in the codebase:

1. Identify the file and line number from the issue body
2. Navigate to that location
3. Add a FIXME comment that includes:
   - The issue title as a summary
   - Key details from the issue description
   - Any relevant guidance from the authorized user's comment(s)
   - A reference to the original issue number

Example FIXME format:
```python
# FIXME(#123): Short description from issue title
# Details: Key information from issue body
# Guidance: Any relevant notes from triage comments
```

Make sure to:
- Place the FIXME at the correct file and line
- Include all relevant information
- Keep the comment concise but complete

### 5. Commit Changes

After processing all issues, commit the changes:

```bash
git add -A
git commit -m "Add FIXMEs and update non_issues.md from triaged GitHub issues"
```

### 6. Create a Pull Request

Push the branch and create a PR:

```bash
git push -u origin HEAD
gh pr create --title "Add FIXMEs from triaged GitHub issues" --body "$(cat <<'EOF'
## Summary
- Converted triaged autoclaude issues into FIXMEs
- Updated non_issues.md for issues marked as 'ignore'

## Issues Processed
See individual commits for details on each issue processed.

Generated with [Claude Code](https://claude.com/claude-code)
EOF
)"
```

### 7. Close the Processed Issues

For each issue that was processed, close it with a comment linking to the PR:

```bash
gh issue close <issue_number> --comment "Processed in PR #<pr_number>"
```

## Notes

- Only issues with comments from authorized users are considered "triaged"
- The authorized users list should be maintained by project administrators
- Always create a new branch - never commit directly to main
- Each issue should be fully processed (either FIXME created or added to non_issues.md) before moving to the next

Related Skills

update-issues-in-repo

226
from imbue-ai/mngr

Convert a file containing identified issues into a tracked file in current_tasks/. Use after running identify-* commands to create a local record of current issues.

identify-style-issues

226
from imbue-ai/mngr

Identify divergences from the style guide in the $1 library

create-github-issues-from-file

226
from imbue-ai/mngr

Convert a file containing identified issues into GitHub issues. Use after running identify-* commands to create corresponding GitHub issues.

create-fixmes

226
from imbue-ai/mngr

Create FIXME's in the codebase for each of the issues in the given input file.

writing-specs

226
from imbue-ai/mngr

Write high quality specifications or design docs for a program. Use any time you are asked to write, improve, or update specs / design docs (e.g., files in a `specs/` folder).

writing-ratchet-tests

226
from imbue-ai/mngr

Write ratchet tests to prevent accumulation of code anti-patterns. Use when asked to create a "ratchet test" for tracking and preventing specific code patterns (e.g., TODO comments, inline imports, broad exception handling).

writing-docs

226
from imbue-ai/mngr

Write high quality, user-facing documentation. Use any time you need to write, improve, or update a significant amount of user-facing documentation (e.g., files in a "docs/" folder or README file).

wait-for-agent

226
from imbue-ai/mngr

Wait for another agent to enter WAITING state, then execute follow-up instructions

triage-backlog

226
from imbue-ai/mngr

Interactively triage the user's local engineering backlog file into GitHub issues. Use when the user wants to process their raw thought notes / ticket backlog into proper GitHub issues.

think-of-something-to-fix

226
from imbue-ai/mngr

Come up with good ideas about what to fix. Use when you have to fix something, but you're not sure what.

sync-tutorial-to-e2e-tests

226
from imbue-ai/mngr

Match tutorial script blocks to e2e pytest functions and add missing tests

minds-dev-iterate

226
from imbue-ai/mngr

Set up and iterate on the minds app stack (desktop client, workspace server, mngr, forever-claude-template) with a running Docker agent