positron-issue-creator
This skill should be used when drafting GitHub issues for the Positron repository. It provides workflows for searching duplicates, selecting appropriate labels, gathering complete context through questioning, and writing terse, fluff-free issues that precisely describe what is needed or wrong. The skill prepares issues for manual submission by the user. Use this skill when the user asks to draft or prepare an issue for Positron.
Install
mkdir -p .claude/skills/positron-issue-creator && curl -L -o skill.zip "https://mcp.directory/api/skills/download/4170" && unzip -o skill.zip -d .claude/skills/positron-issue-creator && rm skill.zipInstalls to .claude/skills/positron-issue-creator
About this skill
Positron Issue Creator
Purpose
This skill guides the drafting of high-quality GitHub issues for the Positron IDE repository. It ensures issues are:
- Thoroughly checked for duplicates before drafting
- Properly labeled for efficient triage
- Written with complete, specific information
- Free of unnecessary fluff and filler
- Actionable by the development team
- Ready for manual submission by the user
When to Use This Skill
Use this skill when:
- User explicitly asks to draft, create, file, or report an issue
- User describes a bug or feature request that should be tracked
- Drafting documentation or improvement requests
- User says "can you draft an issue for..." or similar
Do NOT use this skill for:
- Intake rotation duties (use
positron-intake-rotationinstead) - Responding to existing issues
- General Positron development tasks
GitHub Access Policy
Read operations (ALLOWED):
- Search for existing issues and discussions via
ghCLI - Fetch repository labels via
ghCLI - View issue details for duplicate checking
- Read any public repository information
Write operations (NOT ALLOWED):
- Creating issues directly via
gh issue create - Commenting on issues
- Modifying labels on existing issues
- Any other GitHub write operations
Instead: Prepare issues in markdown files or clipboard-ready format for manual user submission.
Core Workflow
Important: This skill prepares issues for manual submission. It does NOT automatically create GitHub issues. The user maintains full control over submitting to GitHub.
Follow this workflow for every issue drafting request:
1. Gather Complete Context
Before drafting anything, ensure all necessary information is available. Use iterative questioning if needed.
For Bug Reports, obtain:
- Positron version (Help > About or specific build number)
- Operating system and version
- Session details (R/Python version)
- Exact steps to reproduce
- Expected vs. actual behavior
- Error messages (from UI, Output panel, or Developer Console)
- Screenshots if relevant
For Feature Requests, obtain:
- Clear description of the desired feature
- Use case (why it's needed, what problem it solves)
- Proposed behavior (how it should work)
- Any related issues or examples from other tools
Ask specific questions when information is missing:
- "What Positron version are you using? Check Help > About"
- "What's the exact error message displayed?"
- "What did you expect to happen vs. what actually happened?"
- "Can you provide the specific steps to reproduce this?"
Never make assumptions. If unclear, ask rather than guess.
2. Search for Duplicates
Use scripts/search_duplicates.sh to search for existing issues and discussions:
cd /path/to/positron/.claude/skills/positron-issue-creator
./scripts/search_duplicates.sh "keywords from issue"
Review results carefully:
- Check both open and closed issues
- Look at discussions as well
- Consider variations of the search terms
Present findings to user:
- Show all potentially related issues
- Highlight any that seem very similar
- Ask user to confirm whether these are duplicates
- For uncertain matches, explicitly ask: "Is this the same issue as #1234?"
If duplicate found:
- Inform user that issue already exists
- Provide link to existing issue
- Suggest they add a comment or 👍 reaction if they want to track it
- Do NOT create new issue
If no duplicates:
- Proceed to drafting the issue
- Reference any related issues in the draft
3. Select Appropriate Labels
Use scripts/fetch_labels.sh to retrieve current repository labels:
cd /path/to/positron/.claude/skills/positron-issue-creator
./scripts/fetch_labels.sh
Choose labels based on:
Area labels (select 1-2):
area: console- Console/REPL functionalityarea: notebook- Jupyter notebook integrationarea: editor- Text editor functionalityarea: plots- Plot viewer and visualizationarea: data-explorer- Data viewer and explorerarea: connections- Database connectionsarea: help- Help pane and documentationarea: ui- General UI/UX issues- Review full list from
fetch_labels.shfor complete options
Type label (select 1):
Bug- Something doesn't work as intendedFeature Request- New capability or enhancementDocumentation- Documentation improvementsPerformance- Works but too slowly
Other considerations:
- Avoid adding priority labels (set during triage)
- Don't add status labels (will be set by team)
- Multiple area labels are acceptable if issue spans components
4. Draft the Issue
Use the templates in references/issue_templates.md as starting points, but adapt to the specific issue.
Load templates when needed:
- Bug reports: Reference bug report structure
- Feature requests: Reference feature request structure
- Hybrid cases: Adapt as appropriate
Follow writing guidelines from references/writing_guidelines.md:
Core principles:
- Be terse - Every word serves a purpose
- Be fluff-free - No apologies, preambles, or unnecessary politeness
- Be specific - Exact versions, precise steps, concrete details
- Be direct - Get to the point immediately
Title guidelines:
- Bug:
[Component] fails when [condition] - Feature:
Add [feature] to [component] - Complete sentence that tells the full story
- Scannable and searchable
Body structure:
- What - The issue itself (1 sentence)
- Why - Impact/context (1-2 sentences if not obvious)
- How - Steps or proposed solution (bullet points)
- Details - System info, errors, screenshots (as needed)
Example bug report:
Title: Console freezes when printing dataframes with 100k+ rows
The console becomes unresponsive when printing large dataframes.
## Steps to reproduce
1. Create dataframe: `df = pd.DataFrame({'a': range(100000)})`
2. Print it: `print(df)`
3. Console freezes, UI becomes unresponsive
## System details
- Positron 2024.10.0 Build 123
- macOS 14.5
- Python 3.11.6
## Error messages
Developer Console shows: "Maximum call stack size exceeded"
Example feature request:
Title: Add keyboard shortcut to insert markdown cell in notebooks
Currently inserting markdown cells requires clicking the dropdown menu.
Keyboard shortcut would improve notebook authoring workflow.
## Proposed behavior
- Add keyboard shortcut (e.g., Cmd+M or Ctrl+M)
- Should work when focus is in notebook
- Should insert cell below current cell
## Context
Similar to Jupyter's 'M' key in command mode. Notebook workflows
frequently alternate between code and markdown cells.
Common anti-patterns to avoid:
- Unnecessary background or preambles
- Vague descriptions ("it doesn't work", "sometimes crashes")
- Combining multiple unrelated issues
- Apologetic or overly polite language
- Missing concrete details (exact versions, error messages)
- Long-winded explanations when concise ones suffice
Review checklist before presenting:
- Title is complete and specific
- Body starts with the core issue
- Reproduction steps are clear (for bugs)
- System details included (for bugs)
- Error messages are exact quotes
- No unnecessary fluff
- Each sentence adds value
- Single, focused topic
- Appropriate labels selected
5. Present Draft to User
Show the complete drafted issue including:
- Title
- Full body text
- Proposed labels
Ask user: "Does this accurately capture the issue? Would you like any changes before I create it?"
Allow for iteration:
- User may want to adjust wording
- May remember additional details
- May want to emphasize different aspects
Make requested changes and show updated draft.
6. Prepare Issue for Manual Submission
Once user approves the draft, offer options for how they want to use it:
Ask the user: "How would you like me to prepare this issue?"
- Option 1: Save to a markdown file
- Option 2: Format for clipboard (provide text ready to copy)
Option 1: Save to Markdown File
Create a markdown file with all issue details:
# Create file with timestamp in name for uniqueness
cat > "positron-issue-$(date +%Y%m%d-%H%M%S).md" <<'EOF'
---
title: Issue title here
labels: area: console, Bug
repository: posit-dev/positron
---
Full issue body here
with multiple lines
EOF
After saving:
- Show the file path
- Remind user to manually create the issue on GitHub
- Provide quick link:
https://github.com/posit-dev/positron/issues/new
Option 2: Format for Clipboard
Present the issue in a format ready to copy:
**Title:**
Issue title here
**Labels:**
area: console, Bug
**Body:**
Full issue body here
with multiple lines
---
Create this issue at: https://github.com/posit-dev/positron/issues/new
After presenting:
- Explain that user should copy this text
- Remind them to paste into GitHub's new issue form
- Note that they'll need to manually select labels in the UI
Important Guidelines
Duplicate Detection
Be thorough but not pedantic:
- Search with multiple keyword combinations
- Check both issues and discussions
- Look at closed items too (might be fixed or wontfix)
When uncertain:
- Show user the potentially similar issues
- Ask explicitly: "Is this the same as what you're reporting?"
- Err on the side of creating new issues rather than incorrectly marking as duplicate
Context Gathering
Never guess or assume:
- If version is unclear, ask specifically
- If steps are vague, request clarification
- If error message is paraphrased, ask for exact text
Be patient with iteration:
- Users may not have all information immediately
- May need to reproduce issue to get details
- It's better to ask multiple questions than create incomplete issue
Writing Style
Optimize for scanability:
- Busy developers need to quickly understand the issue
- Put m
Content truncated.
More by posit-dev
View all skills by posit-dev →You might also like
flutter-development
aj-geddes
Build beautiful cross-platform mobile apps with Flutter and Dart. Covers widgets, state management with Provider/BLoC, navigation, API integration, and material design.
drawio-diagrams-enhanced
jgtolentino
Create professional draw.io (diagrams.net) diagrams in XML format (.drawio files) with integrated PMP/PMBOK methodologies, extensive visual asset libraries, and industry-standard professional templates. Use this skill when users ask to create flowcharts, swimlane diagrams, cross-functional flowcharts, org charts, network diagrams, UML diagrams, BPMN, project management diagrams (WBS, Gantt, PERT, RACI), risk matrices, stakeholder maps, or any other visual diagram in draw.io format. This skill includes access to custom shape libraries for icons, clipart, and professional symbols.
ui-ux-pro-max
nextlevelbuilder
"UI/UX design intelligence. 50 styles, 21 palettes, 50 font pairings, 20 charts, 8 stacks (React, Next.js, Vue, Svelte, SwiftUI, React Native, Flutter, Tailwind). Actions: plan, build, create, design, implement, review, fix, improve, optimize, enhance, refactor, check UI/UX code. Projects: website, landing page, dashboard, admin panel, e-commerce, SaaS, portfolio, blog, mobile app, .html, .tsx, .vue, .svelte. Elements: button, modal, navbar, sidebar, card, table, form, chart. Styles: glassmorphism, claymorphism, minimalism, brutalism, neumorphism, bento grid, dark mode, responsive, skeuomorphism, flat design. Topics: color palette, accessibility, animation, layout, typography, font pairing, spacing, hover, shadow, gradient."
godot
bfollington
This skill should be used when working on Godot Engine projects. It provides specialized knowledge of Godot's file formats (.gd, .tscn, .tres), architecture patterns (component-based, signal-driven, resource-based), common pitfalls, validation tools, code templates, and CLI workflows. The `godot` command is available for running the game, validating scripts, importing resources, and exporting builds. Use this skill for tasks involving Godot game development, debugging scene/resource files, implementing game systems, or creating new Godot components.
nano-banana-pro
garg-aayush
Generate and edit images using Google's Nano Banana Pro (Gemini 3 Pro Image) API. Use when the user asks to generate, create, edit, modify, change, alter, or update images. Also use when user references an existing image file and asks to modify it in any way (e.g., "modify this image", "change the background", "replace X with Y"). Supports both text-to-image generation and image-to-image editing with configurable resolution (1K default, 2K, or 4K for high resolution). DO NOT read the image file first - use this skill directly with the --input-image parameter.
fastapi-templates
wshobson
Create production-ready FastAPI projects with async patterns, dependency injection, and comprehensive error handling. Use when building new FastAPI applications or setting up backend API projects.
Related MCP Servers
Browse all serversUnlock seamless Figma to code: streamline Figma to HTML with Framelink MCP Server for fast, accurate design-to-code work
Official Laravel-focused MCP server for augmenting AI-powered local development. Provides deep context about your Larave
Safely connect cloud Grafana to AI agents with MCP: query, inspect, and manage Grafana resources using simple, focused o
Empower your workflows with Perplexity Ask MCP Server—seamless integration of AI research tools for real-time, accurate
Boost your productivity by managing Azure DevOps projects, pipelines, and repos in VS Code. Streamline dev workflows wit
Boost AI coding agents with Ref Tools—efficient documentation access for faster, smarter code generation than GitHub Cop
Stay ahead of the MCP ecosystem
Get weekly updates on new skills and servers.