mcpbeat

Create Issue

googleapis/create-issue

Helps create a GitHub issue that strictly follows the conventions in CONTRIBUTING.md. Use this skill when asked to create, draft, or open a GitHub issue or bug report.

814 tokens
context cost
the whole folder, loaded on every use
1
files
instructions only
0
copies elsewhere
how many repositories repackaged it
43
stars on the repo
on the repository, not the skill itself

Install

one command, takes just this skill from the repository
npx skills add https://github.com/googleapis/librarian --skill create-issue

The instruction itself

11 sections, as written by the author

Create Issue

Overview

Use this skill when asked to write or draft a GitHub issue. It ensures issues follow the conventions established in CONTRIBUTING.md and matches the user's specific architectural and stylistic preferences.

Instructions

When the user asks you to create a GitHub issue, follow these steps to draft the issue title, body, assignee, labels, and milestone. You MUST ALWAYS ask for explicit confirmation before creating the issue using the gh CLI. You should output the drafted issue to the terminal so the user can review it first.

1. Issue Title

All issues must have a path prefix indicating the relevant domain, followed by a lowercase summary.

Path Prefixes:

  • Use package names or tool paths (e.g., librarian:, cli:, tool/cmd/migrate:).
  • For language-specific code under internal/librarian/<language>, use the lowercase language name (e.g., java:, dotnet:).
  • For systemic proposals, chain prefixes (e.g., proposal: config:).
  • Aside from proper nouns, the rest of the issue title must use lowercase.

2. Issue Body Structure

Match the user's specific writing style based on the type of issue:

Implementation/Tracking Issues
  • Opening: Start with "This issue tracks the implementation of..." or "This issue tracks integrating..."
  • Architecture Awareness: Explicitly call out the exact packages and files that need to be created or modified (e.g., "The implementation in internal/librarian/dotnet/publish.go (and wired into internal/librarian/publish.go)").
  • Action-Oriented Steps: Use a numbered list to break down the required logic into precise, ordered steps.
Systemic Proposals
  • Use a cross-language comparative structure:
  • Bolded categories for each language (e.g., Python, Go).
  • A brief 1-2 sentence explanation of the current state.
  • A markdown code block demonstrating the exact file output or configuration.
  • Conclusion: A single, decisive concluding sentence that frames the evaluation goal without jumping to a solution.
Migration Tasks
  • Use a two-sentence format:
  • An imperative command to update a specific tool.
  • A reference to an internal design document (e.g., "See go/sdk-librarian-nodejs for details.").

3. Assignee & Labels

  • Assignee: Default to assigning if there's a clear owner; otherwise, leave unassigned.
  • Labels:
  • Use critical for immediate attention (e.g., broken build on main).
  • Use needs fix soon for high-priority items.

4. Milestone

  • Run gh milestone list to retrieve available milestones.
  • Ask the user to choose one, or suggest "Unplanned" if not on the roadmap.

Output Format

Present the drafted issue clearly:

Title: prefix: issue description

Assignee: @username (or Unassigned)

Labels: critical, needs fix soon, or None

Milestone: milestone_name

Body:

[Issue body here]

Ask the user if they would like to refine the issue or create it using gh issue create.

How to use it

Copy the folder

Take googleapis/create-issue from the repository into ~/.claude/skills for personal use, or into .claude/skills inside a project.

Check the name does not clash

The agent identifies a skill by the name field in its header. Two skills with the same name cannot sit side by side — one of them will be ignored.