Fusion repo for agent skills
npx skills add https://github.com/equinor/fusion-skills --skill fusion-mcpCLI を使用してこのスキルをインストールし、ワークスペースで SKILL.md ワークフローの使用を開始します。
This is Fusion’s shared catalog of GitHub Copilot Agent Skills — reusable, versioned “mini playbooks” that help you run common workflows consistently.
Skills are designed to be:
If you just want to use the skills, start with Quick start.
For Fusion issue-authoring with GitHub Copilot, use the explicit agent-targeted install command:
npx skills add equinor/fusion-skills \
--skill fusion-issue-authoring \
--agent github-copilot \
-y
For GitHub Copilot project installs, skills are placed in .agents/skills.
See https://skills.sh for CLI behavior and agent support details.
[!TIP]
Use project installs as the default for team sharing and reproducible onboarding.
| Step | Command | Scope | Typical use |
|---|---|---|---|
| Discover | npx skills add equinor/fusion-skills --list |
Project | See available skills |
| Install | npx skills add equinor/fusion-skills |
Project | Add skills to the repo |
| Restore | npx skills experimental_install |
Project | Rehydrate from skills-lock.json (fresh clones/CI) |
| Remove | npx skills remove |
Project | Remove installed skills |
Install for your user (local experimentation):
npx skills add equinor/fusion-skills -g
Check if global updates are available:
npx skills check
Update globally installed skills:
npx skills update
[!NOTE]
npx skills checkandnpx skills updatecurrently read the global lock file (~/.agents/.skill-lock.json).
This repository provides a GitHub Actions workflow you can copy into your repo for automated skill updates — like Dependabot for GitHub Copilot Agent Skills.
[!IMPORTANT]
Current CLI lock scope differs by command:
npx skills experimental_installrestores from projectskills-lock.jsonnpx skills checkandnpx skills updateread the global lock file (~/.agents/.skill-lock.json)
The workflow automatically:
equinor/fusion-skills)In your repository's .github/workflows/ directory, create a workflow file (e.g., skills-update.yml):
name: Upgrade Agent Skills
on:
schedule:
# Run weekdays at 8 AM UTC
- cron: '0 8 * * 1-5'
workflow_dispatch: # Allow manual trigger
permissions:
contents: write
pull-requests: write
jobs:
upgrade:
uses: equinor/fusion-skills/.github/workflows/skills-update.yml@main
Schedule: Adjust the cron expression to your preferred frequency. Examples:
0 2 * * 1 — Every Monday at 2 AM UTC0 0 * * 0 — Every Sunday at midnight UTC0 9 * * 1-5 — Every weekday at 9 AM UTCVersion pinning: Replace @main with a specific release tag to pin to a version:
uses: equinor/fusion-skills/.github/workflows/[email protected]
Manual-only updates: If you prefer manual-only triggers, remove the schedule: section and keep only workflow_dispatch:.
Permissions: The workflow requires write access to:
contents — to commit skill updatespull-requests — to create and manage pull requestsConcurrency: This workflow does not use concurrency limits. If you run multiple concurrent updates (e.g., from both scheduled and manual triggers), they may update the same PR. This is safe—later commits will overwrite earlier ones on the branch. If you prefer stricter control, add a concurrency block at the job level:
concurrency:
group: skills-upgrade
cancel-in-progress: true
This repository also provides a separate reusable workflow for discovering new skills and creating one PR per skill.
The workflow compares:
npx skills add --list equinor/fusion-skillsnpx skills add --list .Then it filters ignored skills from .github/skills-ignore.json, and opens one branch/PR per remaining skill.
Create .github/workflows/skills-discovery.yml:
name: Discover New Agent Skills
on:
schedule:
- cron: '0 8 * * 1-5'
workflow_dispatch:
permissions:
contents: write
pull-requests: write
jobs:
discover:
uses: equinor/fusion-skills/.github/workflows/skills-discovery.yml@main
Optional inputs:
jobs:
discover:
uses: equinor/fusion-skills/.github/workflows/skills-discovery.yml@main
with:
source: equinor/fusion-skills
ignore-file: .github/skills-ignore.json
draft-prs: false
skip-if-rejected-pr-exists: true
Optional ignore list in your repository at .github/skills-ignore.json:
{
"ignored": [
"fusion-example-skill"
]
}
If the ignore file exists, the workflow validates this shape before continuing.
If a skill already has an open PR from branch chore/skills-discovery/<skill>, the workflow updates that PR.
skip-if-rejected-pr-exists blocks re-proposing skills where a previous PR from that skill branch was closed without merge.
The update workflow also scans installed skills for metadata.status: deprecated or archived in their SKILL.md frontmatter. For each such skill it creates a separate removal PR that:
npx skills removeThis runs automatically as part of the update workflow above. To customize or disable:
jobs:
upgrade:
uses: equinor/fusion-skills/.github/workflows/skills-update.yml@main
with:
skip-deprecation-cleanup: false # set true to disable
draft-deprecation-prs: false # set true for draft PRs
skip-if-rejected-pr-exists: true # respect rejected PRs
This repo contains reusable skills for common workflows (planning, triage, reviews, runbooks, etc.).
Each skill should tell you:
Skills live under skills/. The structure inside a skill is intentionally flexible, but most skills have an entry file:
skills/fusion-<skill-name>/SKILL.md
In this repository, use fusion-<skill-name> as the default skill naming convention.
skills/ 👍 default, generally available skillsskills/.experimental/ 🧪 preview / in-development skillsskills/.curated/ 👌 curated, broadly reusable skillsskills/.system/ ⚙️ internal/system skills and shared building blocksMain Copilot skill gate for the Fusion ecosystem — cross-domain router. USE FOR: routing between different Fusion domains (skills, issues, PRs, reviews) when the right domain skill is unclear; getting install guidance for missing skills. DO NOT USE FOR: skill lifecycle operations (use fusion-skills directly), tasks where a specific Fusion skill is already active.
Applies and explains code conventions across TypeScript, React, C#, and Markdown. Enforces naming rules, file naming patterns, TSDoc and XML doc standards, inline comment intent (the why, not the what), code structure, error handling, async patterns, and dead code policy. Also enforces ADR and contributor doc decisions, and flags decisions that appear stale or misaligned with current tooling. USE FOR: convention questions, code review against project standards, applying naming rules, auditing intent comments, checking TSDoc completeness, enforcing recorded ADR decisions, and flagging stale architectural decisions. DO NOT USE FOR: security vulnerability scanning, performance profiling, runtime debugging, or generating net-new code without a review target.
Guides integrations across Fusion Core service APIs from a single installable skill. USE FOR: service discovery across apps, people, context, roles, notifications, reports, tasks, and other Fusion Core APIs; cross-service integration planning; choosing the right endpoint/model guidance for a workflow. DO NOT USE FOR: modifying Fusion backend source code, non-Fusion APIs, or generic cloud architecture work without a Fusion service integration target.
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.
Guides feature development in Fusion Framework React apps, including app-scoped framework research needed to choose the right hooks, modules, packages, and integration patterns before implementation. USE FOR: building new features, adding components or pages, creating hooks and services, wiring up API endpoints, extending Fusion module configuration, and answering app implementation questions about which Fusion Framework surface to use. DO NOT USE FOR: issue authoring, skill authoring, CI/CD configuration, backend service changes, or general Fusion documentation that is not tied to app implementation.
Guides development of Fusion portal shells — scaffolding, module configuration, app loading, routing, header/context integration, analytics, and deployment using the Fusion Framework CLI portal commands. USE FOR: create portal, scaffold portal, configure portal modules, portal app loading, portal routing, portal header, context selector, portal analytics, portal telemetry, portal manifest, ffc portal dev, portal deployment, embed apps in portal. DO NOT USE FOR: app-level feature development (use fusion-app-react-dev), backend service changes, Fusion Help Center integration, skill authoring.
Resolves unresolved GitHub PR review threads end-to-end: evaluates whether each review comment is correct, applies a targeted fix when valid, replies with rationale when not, commits, and resolves the thread. USE FOR: unresolved review threads, PR review feedback, changes requested PRs, PR review URLs (#pullrequestreview-...), fix the review comments, close the open threads, address PR feedback. DO NOT USE FOR: summarizing feedback without code changes, creating new PRs, or read-only branches.
Guides developers and admins through direct interaction with the Fusion Help REST API — reading articles, FAQs, release notes, searching content, and managing help documentation programmatically. USE FOR: fetch help articles from API, integrate help content in app, search help content, manage help documentation via API, automate help content, build help tooling. DO NOT USE FOR: using the fhelp CLI tool (use fusion-help-docs skill), modifying Fusion.Services.Help backend code, or non-help-API tasks.
Guides app teams through authoring, structuring, and publishing help documentation (articles, release notes, FAQs) using the fusion-help-cli. USE FOR: write help articles, create release notes, set up help docs, publish documentation, sync articles, configure help config file, maintain app help content. DO NOT USE FOR: building the CLI itself, modifying Fusion.Services.Help internals, or non-documentation tasks.
Wires Fusion Help Center into app pages — creates article slug constants, adds useHelpCenter hook, and connects PageLayout props so users can open contextual help articles. USE FOR: add help button to page, wire useHelpCenter, create helpArticles constants, integrate Fusion Help in app, connect PageLayout to help center, add openHelpArticle to page. DO NOT USE FOR: authoring markdown help articles (use fusion-help-docs), direct Help REST API calls (use fusion-help-api), modifying @fra/ui shared components.
Classify issue type, activate the matching agent mode for type-specific drafting, and enforce shared safety gates before GitHub mutation.
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.
Explain what Fusion MCP is and guide users through setting it up when they need Fusion-aware MCP capabilities in Copilot workflows.
Source-backed research orchestrator for the Fusion ecosystem. Routes to the correct research agent based on question type. Returns source-backed evidence only; will not invent Framework behavior, component APIs, skill catalog relationships, or platform guidance. USE FOR: any research question needing source-backed evidence about Fusion Framework APIs, EDS components, the Fusion skill catalog, or Fusion platform documentation. DO NOT USE FOR: implementing code changes, installing or editing skills, MCP setup or troubleshooting, or inventing Fusion behavior without evidence.
Support skill providing the workflow, templates, and references for AI coding assistant rule authoring. Invoked by fusion-rules gateway agents — not intended for direct use.
Entrypoint for AI coding assistant rule authoring across GitHub Copilot, Cursor, and Claude Code. USE FOR: setting up rules, reviewing existing rules, scaffolding instruction files, or asking which editor format to use. DO NOT USE FOR: authoring skills (SKILL.md), agent definitions (.agent.md), or CI enforcement of rule files.
Creates or modernizes repository skills with clear activation cues, purposeful support files, and practical review loops. USE FOR: creating a new skill, tightening an existing skill, improving discovery wording, and structuring references/assets/optional helper agents when they genuinely add value. DO NOT USE FOR: product-code changes, routine copy edits outside skills/, or documentation that should not become an installable skill.
Entrypoint for all Fusion skill lifecycle operations. USE FOR: finding, installing, updating, syncing, or greenkeeping skills; setting up skill automation; creating or authoring a new skill; reporting a bug with a skill. DO NOT USE FOR: resolving GitHub issues, reviewing PRs, planning task breakdowns, or authoring GitHub issues — those are handled by other Fusion skills.
For predictable consumer upgrades with npx skills add|update:
vMAJOR.MINOR.PATCH)main as latest stable-ish; use prerelease tags for experiments (v1.3.0-beta.1)npx skills add equinor/[email protected]See CHANGELOG.md for release notes.
If you are developing or maintaining skills in this repository, use CONTRIBUTING.md for changesets, release automation, and validation workflows.
.agents/skills/ in the current repo.[!CAUTION]
- Never paste secrets (tokens/keys/credentials) into prompts, logs, or docs
- Only install skills from sources you trust; skills may include executable commands or scripts
- Treat
skills/**/scripts/as security-sensitive code; review and verify before execution- Confirm side effects before running commands (especially destructive operations)
For details and reporting guidance, see SECURITY.md.
[!WARNING]
- This is NOT a general Fusion documentation site (keep long-form docs in the relevant product repos)
- This is NOT a place for secrets, tokens, or environment-specific configuration
- This is NOT a dumping ground for one-off prompts — skills should be owned and maintained
Want to contribute or review changes? See CONTRIBUTING.md.
Are you an agent making changes in this repo? See AGENTS.md.