agentleFS
fab-codesfab-codes/agent-workflow-template/.claude/skills/issue/SKILL.md

issue

Skill2 starsChanged 24 days agoMITView on GitHub

Step 1 of AGENTS.md §12 — write the agreed change as a GitHub issue, or one issue per slice, from the issue template

50 other projects use a version of this.

Adopted by

Most recently taken up by

Used with

Projects with it also use branch, commit and 9 more.

Other files people use alongside this one.

Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
  • MindgamesSkill

    branch

    Use when a user asks to create a new local git branch and start issue work (for example, "create branch" or "start working on issue XYZ"). Use this for issue-based branch naming in the `type/scope-short-description` pattern and for always syncing local `main` from `origin/main` before creating the new branch, creating the local tracking `main` branch first when needed.

    Also in 3 projects that use this

  • SentrySkill

    commit

    Create commit messages following Sentry conventions. Use when committing code changes, writing commit messages, or formatting git history. Follows conventional commits with Sentry-specific issue references.

    Also in 19 projects that use this

  • vertz-devSkill

    backlog

    Manages deferred/blocked work items as GitHub Issues with labels and blocker tracking

    Also in 3 projects that use this

  • CodeWithBehnamSkill

    browse

    Fast headless browser for QA testing and site dogfooding. Navigate any URL, interact with elements, verify page state, diff before/after actions, take annotated screenshots, check responsive layouts, test forms and uploads, handle dialogs, and assert element states. ~100ms per command. Use when you need to test a feature, verify a deployment, dogfood a user flow, or file a bug with evidence.

    Also in 3 projects that use this

  • Microsoft AzureSkill

    test

    Also in 7 projects that use this

  • Microsoft AzureSkill

    lint

    Run all linting and spell checking for TypeScript and Rust code. Run this before committing to catch style issues, clippy warnings, and misspellings.

    Also in 4 projects that use this

  • +1 more from Azure

The file

We split this skill into the rules it gives an agent

5 rules. 0 are common, 4 are distinctive, and 1 is very specific to this project.

  • 0

    Common

    Most of the 48 edited versions we read keep these.

  • 4

    Distinctive

    This author's own choices. Worth a look.

  • 1

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Distinctive:

    Run the commands from the Bash tool: PowerShell 5.1 mangles the quotes in the arguments of external programs.

    line 13
  2. Distinctive:

    No secrets and no user data (§8.3): whoever can read the repository reads its issues.

    line 53
  3. Distinctive:

    Every paragraph and every list item sits on one line, because GitHub renders even a single line break of the body as a line break.

    line 55
  4. Very specific:

    Write the body to issue.md in $(git rev-parse --path-format=absolute --git-common-dir), and show the title and the body.

    line 62
  5. Distinctive:

    If a creation fails or its prompt is denied, stop.

    line 69

“Common” is measured: kept by at least 6 in 10 of the 48 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

Issue

Step 1 of the cycle in AGENTS.md §12. Only the user launches this skill, and launching it is the go-ahead for one issue on GitHub: nothing more, no branch, no commit. Several issues take a second go-ahead, on their breakdown (Split).

Run the commands from the Bash tool: PowerShell 5.1 mangles the quotes in the arguments of external programs.

Source

The change is $ARGUMENTS, read together with this conversation; if empty, the plan agreed in this conversation. Stop, and say why, if nothing was agreed, or one of the decisions is still open: the issue records decisions, it does not make them.

Split

One issue is one branch and one PR (§12, Rules). Split the change only when some of its parts can each be merged on their own, or when it does not fit one session; the number of files it touches does not matter. Otherwise the change is one issue.

Each part is a slice, and every slice is a tracer bullet:

  • a narrow but complete path through every layer it needs (§5.1), never one layer of the change;
  • verifiable on its own: its Acceptance fails on the commit the slice starts from, and passes within the slice with deno task verify green;
  • small enough for a fresh session to finish it reading only its issue.

Prefactoring, if any, comes first, as its own slice.

Show the breakdown as a numbered list, each slice with its title, its Blocked by and what it delivers end to end, and stop: nothing is created without the user's go-ahead on this list, even when a split was sketched earlier in the conversation. Each slice is then a complete issue, with its own title and body.

Title and body

Title: what changes, in English, with no number and no Conventional Commits prefix. The PR will take it as <n> - <title> (§12, Rules).

Body: .github/ISSUE_TEMPLATE/change.md without its front matter, each comment replaced by the content of its section, in English (§11).

  • Decisions: what was agreed, at the level of modules and behaviors, with no code and no line numbers.
  • Acceptance: one observable behavior per item, the one its test will check (§9).
  • Blocked by: one #<n> per item, for each issue that must be closed as completed before this one starts (§12, Rules), or "Nothing". The Out of scope of a slice names the other slices by title: the ones created after it have no number yet.
  • No secrets and no user data (§8.3): whoever can read the repository reads its issues.

Every paragraph and every list item sits on one line, because GitHub renders even a single line break of the body as a line break.

Publish

One issue at a time, blocking issues first, so that every Blocked by cites real numbers:

  1. Write the body to issue.md in $(git rev-parse --path-format=absolute --git-common-dir), and show the title and the body.
  2. MSYS_NO_PATHCONV=1 gh issue create --title "<title>" --body-file <file>, as written: no labels, no parent issue. The prefix keeps Git Bash from rewriting a title that starts with / into a Windows path (CLAUDE.md, Local environment).
  3. Show the URL of the issue.

If a creation fails or its prompt is denied, stop. The issues already created stay as they are: list them, with their URLs, and the slices still missing. No issue is deleted or edited, not even to add a number later.

After

Propose the branch of the issue, as §12, Rules, describes it, and create it only on the user's go-ahead: the work on an issue can also start later. After a split, propose the branch of the first issue with no blockers: the others start at step 2, when the user names them.

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.