agentleFS
fagemxfagemx/edda/.claude/skills/issue-create/SKILL.md

issue-create

Skill36 starsChanged 2 months agoApache-2.0View on GitHub

Create GitHub issues from conversation context (general, bug reports, or feature requests)

9 other projects use a version of this.

Adopted by

Most recently taken up by

The file

Show its rules and text

We split this skill into the rules it gives an agent

31 rules. 0 are common, 30 are distinctive, and 1 is very specific to this project.

  • 0

    Common

    Most of the 6 edited versions we read keep these.

  • 30

    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:

    create: - Create issue from conversation (flexible, adapts to content)

    line 14
  2. Distinctive:

    bug: - Create bug report with reproduction steps

    line 15
  3. Distinctive:

    feature: - Create feature request with acceptance criteria

    line 16
  4. Distinctive:

    When invoked, check the args to determine the operation and execute accordingly.

    line 18
  5. Distinctive:

    Read it and follow it verbatim for every issue body you write — do not invent parallel body formats.

    line 25
  6. Distinctive:

    Create a GitHub issue from the current conversation by intelligently summarizing the context.

    line 34
  7. Distinctive:

    Use your judgment to determine relevant context:

    line 67
  8. Distinctive:

    This step is mandatory: Use AskUserQuestion to:

    line 87
  9. Distinctive:

    Verify scope and priority

    line 90
  10. Distinctive:

    Ensure nothing important is missed

    line 92
  11. Distinctive:

    Ask 2-4 focused questions that help create a complete, accurate issue.

    line 94
  12. Distinctive:

    Use the conversation content you extracted to fill each section.

    line 105
  13. Distinctive:

    Write clearly and concisely

    line 109
  14. Distinctive:

    Use appropriate formatting (code blocks, lists, etc.)

    line 112
  15. Distinctive:

    Add a footer noting it was created from conversation

    line 113
  16. Distinctive:

    Use Conventional Commit style prefix based on issue type:

    line 116
  17. Distinctive:

    Always use lowercase after the prefix, no period at end.

    line 126
  18. Distinctive:

    Create a comprehensive bug report that enables quick understanding and reproduction of the issue.

    line 173
  19. Distinctive:

    If user provides initial description, extract:

    line 188
  20. Distinctive:

    When/where it occurs

    line 192
  21. Distinctive:

    Use AskUserQuestion to gather critical information:

    line 197
  22. Distinctive:

    No error messages or logs

    line 200
  23. Distinctive:

    Keep questions focused (3-5 max per round) and specific.

    line 204
  24. Distinctive:

    Use exact error messages (not paraphrased)

    line 223
  25. Distinctive:

    Create the issue directly with:

    line 235
  26. Very specific:

    Title format: Use Conventional Commit style with bug: prefix followed by lowercase description (no period at end).

    line 244
  27. Distinctive:

    Create a well-structured feature request based on user's requirement description.

    line 268
  28. Distinctive:

    Avoid technical details, frameworks, or implementation approaches

    line 276
  29. Distinctive:

    Use AskUserQuestion to resolve unclear aspects:

    line 290
  30. Distinctive:

    Keep questions focused (2-4 per round) and specific.

    line 297
  31. Distinctive:

    Use clear, unambiguous language

    line 313

“Common” is measured: kept by at least 6 in 10 of the 6 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 Creation Skill

You are a GitHub issue creation specialist. Your role is to create well-structured GitHub issues from conversation context.

Operations

Parse the args parameter to determine which operation to perform:

  • create - Create issue from conversation (flexible, adapts to content)
  • bug - Create bug report with reproduction steps
  • feature - Create feature request with acceptance criteria

When invoked, check the args to determine the operation and execute accordingly.

Body contract — single source

The issue body contract (ready-bar sections, the four-question Wiring audit slot, the Predicted surface field) is defined once in .claude/skills/issue-intake/templates.md. Read it and follow it verbatim for every issue body you write — do not invent parallel body formats. Red flags — stop and verify before writing: "the parts already exist"; "X already records this" backed only by a struct or field definition; counting sources without naming each one's reader.


Operation: create

Create a GitHub issue from the current conversation by intelligently summarizing the context.

Purpose

This operation transforms organic development discussions into trackable issues without forcing users to explicitly categorize or structure their thoughts upfront.

Core Principles

Intelligent context extraction:

  • Understand what the user wants from conversation flow
  • Identify the type of issue organically (feature, bug, task, question, etc.)
  • Capture relevant context and decisions
  • Preserve important details from the discussion

Flexible in gathering, fixed in format:

  • Adapt to the conversation's natural structure when extracting content
  • The issue BODY itself is never free-form: it is always the ready-bar template in .claude/skills/issue-intake/templates.md, with its sections filled from the conversation
  • Focus on clarity and usefulness

Workflow

Step 1: Analyze Conversation Context

Review the current conversation to identify:

  • What is the user trying to accomplish or solve?
  • What problem or need has been discussed?
  • What decisions or insights have emerged?
  • What relevant code, files, or technical context exists?
  • What questions or uncertainties remain?

Scope of analysis: Use your judgment to determine relevant context:

  • For focused discussions: recent messages that directly relate to the topic
  • For exploratory conversations: broader context that provides background
  • Prioritize actionable information over general discussion

Step 2: Determine Issue Nature

Based on conversation, identify what type of issue this is:

  • Feature request or enhancement
  • Bug report or defect
  • Technical task or chore
  • Investigation or spike
  • Documentation need
  • Question or discussion
  • Or any other category that fits

Don't force categories - let the conversation content guide you.

Step 3: Clarify with User (Required)

This step is mandatory. Use AskUserQuestion to:

  • Confirm your understanding of what should be captured
  • Resolve any ambiguities or unclear points
  • Verify scope and priority
  • Fill gaps in information
  • Ensure nothing important is missed

Ask 2-4 focused questions that help create a complete, accurate issue.

Step 4: Create Issue

Synthesize the conversation into a clear issue:

Body = the canonical template:

  • Fill the ready-bar sections from .claude/skills/issue-intake/templates.md: What happened / Why it matters / Suspected surface / Predicted surface / doneWhen / Wiring audit / Relation to existing issues
  • Use the conversation content you extracted to fill each section; do not invent other sections

Guidelines:

  • Write clearly and concisely
  • Include enough context for someone new to understand
  • Link to relevant conversations, PRs, or issues
  • Use appropriate formatting (code blocks, lists, etc.)
  • Add a footer noting it was created from conversation

Title format: Use Conventional Commit style prefix based on issue type:

  • feat: for new features or enhancements
  • bug: for defects or broken functionality
  • docs: for documentation work
  • refactor: for code improvements or tech debt
  • test: for testing-related tasks
  • chore: for maintenance or build tasks
  • perf: for performance improvements
  • Or other appropriate prefixes

Always use lowercase after the prefix, no period at end.

Labeling: Choose labels based on issue nature:

  • enhancement for new features
  • bug for defects
  • documentation for docs work
  • question for discussions
  • tech-debt for refactoring/improvements
  • Or any combination that fits

Create the issue:

gh issue create \
  --title "[type]: [clear, descriptive description]" \
  --body "[body per the canonical template — issue-intake/templates.md]" \
  --label "[appropriate-labels]" \
  --assignee @me

Step 5: Return Result

The gh issue create command outputs the issue URL upon success. You MUST display this URL to the user so they can easily access the created issue. Example response:

Issue created: https://github.com/owner/repo/issues/123

Flexibility

Embrace conversation diversity:

  • Technical deep-dives → capture technical context
  • User problem discussions → focus on requirements
  • Bug investigations → include reproduction details
  • Design explorations → preserve options and trade-offs
  • Mixed conversations → organize logically

Adapt to conversation style:

  • Structured discussions may yield structured issues
  • Exploratory chats may need more synthesis
  • Quick exchanges may produce concise issues
  • Complex threads may need thorough documentation

Operation: bug

Create a comprehensive bug report that enables quick understanding and reproduction of the issue.

Core Principles

Provide concrete, reproducible information:

  • How to reproduce the bug (specific steps)
  • What's broken vs what's expected
  • Environment details (browser, OS, version)
  • Error messages and logs when available
  • Impact on users

Workflow

Step 1: Gather Bug Information

If user provides initial description, extract:

  • What went wrong (observed behavior)
  • What should happen (expected behavior)
  • How to reproduce it
  • When/where it occurs
  • Who is affected

Step 2: Clarify Missing Details

Use AskUserQuestion to gather critical information:

  • Unclear reproduction steps
  • Missing environment details
  • No error messages or logs
  • Vague symptoms or impact
  • Unknown frequency or conditions

Keep questions focused (3-5 max per round) and specific.

Step 3: Create Issue

Gather the content below, then fill the canonical body template (.claude/skills/issue-intake/templates.md) with it — reproduction details go in What happened, acceptance in doneWhen:

Essential elements:

  • Clear description of the problem
  • Step-by-step reproduction
  • Expected vs actual behavior
  • Environment information
  • Error messages/logs (when available)
  • Impact assessment

Principles for content:

  • Be specific and concrete
  • Use exact error messages (not paraphrased)
  • Provide complete reproduction steps
  • Include relevant context
  • Note frequency and conditions
  • Assess severity honestly

Helpful additions when available:

  • Screenshots or videos
  • Console logs or stack traces
  • Network request details
  • Workarounds discovered

Create the issue directly with:

gh issue create \
  --title "bug: [concise description]" \
  --body "[body per the canonical template — issue-intake/templates.md]" \
  --label "bug" \
  --assignee @me

Title format: Use Conventional Commit style with bug: prefix followed by lowercase description (no period at end).

Step 4: Return Result

The gh issue create command outputs the issue URL upon success. You MUST display this URL to the user so they can easily access the created issue. Example response:

Issue created: https://github.com/owner/repo/issues/123

Flexibility

Adapt content based on the bug:

  • Some bugs need detailed environment info, others don't
  • Some have clear errors, others have subtle symptoms
  • Some are always reproducible, others are intermittent
  • Focus on providing what's needed to fix this specific bug

The goal is an actionable bug report that helps developers reproduce and fix the issue quickly.


Operation: feature

Create a well-structured feature request based on user's requirement description.

Core Principles

Focus on requirements, not implementation:

  • Describe WHAT users need, not HOW to build it
  • Capture user value and business goals
  • Define clear, testable acceptance criteria
  • Avoid technical details, frameworks, or implementation approaches

Workflow

Step 1: Gather Information

If user provides initial description, extract:

  • Core functionality needed
  • Target users and use cases
  • Expected outcomes
  • Why this feature is needed

Step 2: Clarify Ambiguities

Use AskUserQuestion to resolve unclear aspects:

  • Missing context or motivation
  • Vague scope or boundaries
  • Unclear success criteria
  • Ambiguous user scenarios
  • Edge cases or special conditions

Keep questions focused (2-4 per round) and specific.

Step 3: Create Issue

Gather the content below, then fill the canonical body template (.claude/skills/issue-intake/templates.md) with it — background goes in What happened/Why it matters, the acceptance list in doneWhen:

Essential elements:

  • Background/context (why this is needed)
  • Core requirements (what should be built)
  • Acceptance criteria (how to verify it's done)
  • User scenarios (concrete examples of usage)

Principles for content:

  • Use clear, unambiguous language
  • Make criteria testable (yes/no answers)
  • Include relevant user context
  • Define scope boundaries when helpful
  • Stay focused on user outcomes

What to avoid:

  • Technical implementation details
  • Specific technologies or frameworks
  • Architecture or design decisions
  • Code-level specifications

Create the issue directly with:

gh issue create \
  --title "feat: [clear, concise description]" \
  --body "[body per the canonical template — issue-intake/templates.md]" \
  --label "enhancement" \
  --assignee @me

Title format: Use Conventional Commit style with feat: prefix followed by lowercase description (no period at end).

Step 4: Return Result

The gh issue create command outputs the issue URL upon success. You MUST display this URL to the user so they can easily access the created issue. Example response:

Issue created: https://github.com/owner/repo/issues/123

Flexibility

Let the content flow naturally based on the specific feature:

  • Some features need detailed scenarios, others don't
  • Some need scope definition, others are self-contained
  • Adapt structure to what makes the feature clear
  • Focus on communicating effectively; the body format stays the canonical template (.claude/skills/issue-intake/templates.md)

The goal is a clear issue that helps implementers understand what users need.

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.