mit einem Klick
fusion-issue-authoring
// Classify issue type, activate the matching agent mode for type-specific drafting, and enforce shared safety gates before GitHub mutation.
// Classify issue type, activate the matching agent mode for type-specific drafting, and enforce shared safety gates before GitHub mutation.
| name | fusion-issue-authoring |
| description | Classify issue type, activate the matching agent mode for type-specific drafting, and enforce shared safety gates before GitHub mutation. |
| license | MIT |
| metadata | {"version":"0.3.3","status":"active","owner":"@equinor/fusion-core","tags":["github","issue-authoring"],"mcp":{"required":["github"]}} |
This skill uses internal agent modes for type-specific drafting logic:
agents/bug.agent.md: bug-focused issue drafting and triage structureagents/feature.agent.md: feature-focused scope and acceptance structureagents/user-story.agent.md: role/workflow/scenario-driven story structureagents/task.agent.md: checklist-first task decomposition and dependency planningagents/devils-advocate.agent.md: always-on quality collaborator that raises key concerns after classification (moderate mode) and runs a full structured interview when explicitly asked or when scope/criteria gaps are significant (interrogator mode)Agent modes are activated internally based on issue type classification. Users never reference agent files directly. Shared gates (labels, assignee confirmation, draft review, publish confirmation, and mutation sequencing) remain in this skill.
Use this skill when you need to turn ideas, bugs, feature requests, or user needs into clear, actionable GitHub issues. Use it as the top-level router for both creating and updating issues.
Typical triggers:
Do not use this skill for:
Collect before publishing:
.tmp/ cache file that is never committed.@me or an exact login.If required details are missing, ask concise clarifying questions from references/questions.md.
If issue destination is unclear, ask explicitly where the issue should be created/updated before drafting mutation commands.
Classify request as Bug, Feature, User Story, or Task, then activate the matching agent mode:
agents/bug.agent.mdagents/feature.agent.mdagents/user-story.agent.mdagents/task.agent.mdIf ambiguous, ask only essential clarifying questions.
Devil's advocate pass: agents/devils-advocate.agent.md is always active in moderate mode — it surfaces the 2–3 most important concerns after classification without interrupting flow. When the user asks to be "grilled", says "stress-test this", or when scope/criteria gaps are significant, escalate to interrogator mode for a full structured interview before the type-specific agent. The devil's advocate returns confirmed decisions and noted risks, then hands off to the type-specific drafting agent.
CONTRIBUTING.md, contribute/) that define default issue routing by type. Apply any routing rules found there before asking the user..github/ISSUE_TEMPLATE/)Run one focused duplicate search with mcp_github::search_issues and surface matches before drafting/publishing.
Do not run repeated broad duplicate scans unless the user changes scope/title materially.
Before writing, check user preferences and session memory for a preferred draft location. If a stored preference exists, use it. If no preference is found and the intent is ambiguous, ask once and remember the answer for the session. Default to .tmp/{TYPE}-{CONTEXT}.md when no preference is found and there is nothing to ask about. Write the draft using GitHub Flavored Markdown.
Before mutation, confirm:
@me, specific login, or unassigned)Shared gate cache policy:
owner/repo, fetch the repository label set once and cache it for the active session. Prefer /memories/session/<owner>-<repo>-labels.json when the host exposes session memory; otherwise use .tmp/issue-authoring-labels-<owner>-<repo>.json.mcp_github::issue_write call and handle a single rejection path.mcp_github::search_users when the user already gave @me or an exact GitHub login./memories/session/<owner>-<repo>-assignee-candidates.json or /memories/session/<owner>-assignee-candidates.json; otherwise use .tmp/issue-authoring-assignee-candidates-<owner>-<repo>.json.After explicit confirmation, execute MCP mutations in this order:
mcp_github::issue_write create/update with the full known payload (title, body, and include labels, assignees, type only when supported)mcp_github::issue_write only when required fields were unknown in step 1 and become available latermcp_github::sub_issue_write only when relationship/order changes are requestedmcp_github::add_issue_comment only when blocker/status notes are explicitly requestedIf mutation fails due to missing MCP server/auth/config:
references/mcp-server.mdRate-limit behavior:
API rate limit exceeded, secondary rate limit, GraphQL quota exhaustion).gh api/GraphQL retries when equivalent MCP capability exists.retry-after and x-ratelimit-reset headers before retrying any request.type rule:
type if the repository has issue types configured.mcp_github::list_issue_types only on cache miss or invalid cache.type for the rest of the session.Before linking:
Use detailed behavior and payload examples in references/instructions.md and references/mcp-server.md.
Use detailed authoring guidance in references/instructions.md.
Fallback template locations:
assets/issue-templates/bug.mdassets/issue-templates/feature.mdassets/issue-templates/user-story.mdassets/issue-templates/task*.md.tmp/Awaiting user content approval before any publish/update commandNever:
mcp_github::issue_write create/update without explicit user confirmationAlways:
owner/repo#123)fixes owner/repo#123, resolves owner/repo#123, or closes owner/repo#123)Explain what Fusion MCP is and guide users through setting it up when they need Fusion-aware MCP capabilities in Copilot workflows.
Batch-process Dependabot PRs end-to-end: checkout, rebase, review, changeset, validate, and auto-merge high-confidence PRs. USE FOR: process all Dependabot PRs, clear dependency backlog, batch-merge safe Dependabot updates, batch-process dependency PRs. DO NOT USE FOR: single-PR deep review (use fusion-dependency-review), feature PRs, non-Dependabot dependency PRs, or PRs requiring manual code changes.
Review dependency PRs with structured research, existing-PR-discussion capture, multi-lens analysis (security, code quality, impact), and a repeatable verdict template. USE FOR: dependency update PRs, Renovate/Dependabot PRs, library upgrade reviews, "review this dependency PR", "should we merge this update". DO NOT USE FOR: feature PRs, application code reviews, dependency automation/bot configuration, or unattended merge without confirmation.
Handles GitHub issue resolution end-to-end for prompts like "solve #123", "lets solve #123", "work on #123", "work on https://github.com/owner/repo/issues/123", or by pasting a direct GitHub issue URL as the request. USE FOR: solve #123, continue work on issue #123, work on https://github.com/owner/repo/issues/123, paste a GitHub issue URL for implementation work. DO NOT USE FOR: issue drafting only, PR review only, or non-implementation research.
Plan and break down user-story issues into ordered, traceable task issue drafts with explicit publish gates.
Iterative evaluation of Fusion Framework MCP search quality against documented domain patterns. Loads domain files from eval/index/, queries Fusion MCP for each pattern, validates recall against must/should requirements, and produces a human-readable pass/fail report. USE FOR: eval core, eval all, evaluate MCP index accuracy, validate search recall for a domain, check index freshness. DO NOT USE FOR: writing domain patterns, populating eval/index/ files, running CI pipelines, or batch automation.