MCPInstall

fusion-rule-author

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.

Installs
906
Last 24h
—
Trending rank
—
Security
Not audited

Install

Works with every agent the skills CLI supports.

npx skills add https://github.com/equinor/fusion-skills --skill fusion-rule-author
  1. 01

    Install

    Run the command in your project. The CLI asks which agents to install for.

  2. 02

    Describe the task

    Ask your agent for something this skill covers. It loads fusion-rule-author automatically when relevant.

  3. 03

    Review the result

    The agent follows the SKILL.md steps, scripts and references bundled with the skill.

SKILL.md

The instructions your agent reads when the skill is triggered.

Rule Author

Canonical workflow, templates, and references for authoring AI coding assistant rules. Supports GitHub Copilot, Cursor, and Claude Code.

Internal skill. Users interact via the fusion-rules gateway, which routes to editor-specific agents that follow the workflow defined here.

Scope

This skill provides:

  • Workflow (Steps 1–7 below) — the guided authoring process
  • Templates (assets/) — starter files for each editor format
  • References (references/) — tech-stack examples

It does not provide agents. Agents live in fusion-rules/agents/ and reference this skill's assets and workflow.

Required inputs

Mandatory

  • Repository context (working directory or repo URL)

Gathered during interview

  • Tech stack (languages, frameworks, build tools)
  • Code conventions (naming, formatting, patterns)
  • Testing expectations (framework, coverage, style)
  • Documentation preferences (comments, TSDoc/JSDoc, README standards)
  • Commit and PR conventions
  • Error handling patterns
  • Security or compliance constraints
  • File/path-specific conventions that need scoped rules

Instructions

Step 1 — Assess current state

Check the repository for existing rule files:

.github/copilot-instructions.md
.github/instructions/*.instructions.md
.cursor/rules/*.md
.cursor/rules/*.mdc
.cursor/rules/**/*.md
.cursor/rules/**/*.mdc
CLAUDE.md
.claude/CLAUDE.md
.claude/rules/*.md
.claude/rules/**/*.md

Report what exists, what is missing, and whether updates or new files are needed.

Step 2 — Scan repository

Before interviewing, scan for existing documentation and configuration that encodes conventions. Extract actionable directives from:

Documentation files:

  • README.md — project overview, setup, tech stack
  • CONTRIBUTING.md — code style, PR workflow, commit conventions
  • AGENTS.md, CLAUDE.md — existing AI instructions
  • docs/adr/**, adr/**, docs/decisions/** — Architecture Decision Records
  • docs/**/*.md — developer guides, onboarding docs, style guides
  • SECURITY.md — security policies
  • CODE_OF_CONDUCT.md — collaboration guidelines (rarely rule-relevant)

Configuration files:

  • package.json / pyproject.toml / *.csproj — tech stack, scripts, dependencies
  • tsconfig.json / jsconfig.json — language settings, strictness
  • biome.json / .eslintrc* / .prettierrc* / ruff.toml / .editorconfig — formatting and linting
  • .github/workflows/*.yml — CI checks, required validations, test commands
  • Dockerfile / docker-compose.yml — runtime environment
  • Makefile / Justfile / Taskfile.yml — build and task commands

Code patterns (sample, don't exhaustively read):

  • Entry points (src/index.*, src/main.*, app.*) — architecture patterns
  • Test files — testing framework, naming conventions, file placement
  • Directory structure — architectural boundaries, feature organization

For each source, extract:

  1. Concrete conventions that can become imperative directives
  2. Build/test/lint commands the AI should know
  3. Architecture boundaries or patterns to follow
  4. Explicit "do this / don't do that" rules

Skip:

  • Implementation details that change frequently
  • Content that restates language/framework defaults
  • Aspirational rules not enforced by CI or team practice

Present summary of discovered conventions to the developer, organized by area, before proceeding to the interview.

Step 3 — Interview (fill gaps)

Use scan results to skip areas already well-documented. Ask focused questions only for gaps. Cover these areas one at a time:

  1. Tech stack — languages, frameworks, runtime, package manager
  2. Code style — naming conventions, formatting rules, import ordering
  3. Architecture — project structure, key patterns (MVC, hexagonal, etc.)
  4. Testing — framework, conventions, coverage expectations
  5. Documentation — inline comments style, doc generation, README standards
  6. Git workflow — branch naming, commit message format, PR expectations
  7. Security — sensitive data handling, auth patterns, compliance rules
  8. Path-specific concerns — directories or file types needing specialized guidance

For each area, present what the scan found and ask: "Is this accurate? Anything to add or correct?" Don't re-ask for information already captured.

For each convention needing deeper context, use follow-up questions in assets/creation-follow-up.md — purpose, exceptions, boundaries, voice.

Step 4 — Classify guidance

Separate the gathered conventions into buckets:

GitHub Copilot:

BucketTarget fileWhen it activates
Always-on conventions.github/copilot-instructions.mdEvery Copilot interaction
Scoped conventions.github/instructions/<name>.instructions.mdOnly when matching files are open/referenced

Cursor:

BucketTarget fileWhen it activates
Always-on conventions.cursor/rules/<name>.mdc with alwaysApply: trueEvery Cursor Agent session
Auto-attached conventions.cursor/rules/<name>.mdc with globsWhen matching files are in context
Agent-selected conventions.cursor/rules/<name>.mdc with description onlyWhen the Agent decides it is relevant
Manual conventions.cursor/rules/<name>.mdc (no alwaysApply, no globs)Only when @-mentioned in chat

Claude Code:

BucketTarget fileWhen it activates
Always-on conventionsCLAUDE.md or .claude/CLAUDE.mdEvery Claude Code session
Scoped conventions.claude/rules/<name>.md with paths frontmatterWhen Claude reads matching files
Unconditional rule.claude/rules/<name>.md (no paths)Every session (like always-on)

Decision rule: If a convention applies to all files in the repo, it belongs in root / always-on instructions. If it applies only to specific paths or file types, create a scoped rule.

When targeting multiple editors, generate parallel files with equivalent content — do not duplicate guidance within a single editor's files.

Step 5 — Draft rule files

Generate files using templates in assets/:

GitHub Copilot:

  • Root instructions: use assets/copilot-instructions-template.md
  • Scoped instructions: use assets/scoped-rule-template.md with correct applyTo glob

Cursor:

  • Use assets/cursor-rule-template.mdc and set frontmatter accordingly

Claude Code:

  • Project instructions: use assets/claude-rule-template.md
  • Scoped rules: place in .claude/rules/ with paths frontmatter

Quality rules (enforced during drafting):

  • Keep instructions concise — actionable directives, not explanations
  • Use imperative voice ("Use camelCase for variables", not "Variables should use camelCase")
  • Avoid duplicating guidance between root and scoped files
  • Validate applyTo / globs / paths glob patterns match intended files
  • Warn if total root instructions exceed ~80 lines (risk of context dilution)
  • Warn if scoped instruction file exceeds ~50 lines (GitHub Copilot), ~500 lines (Cursor), ~200 lines (Claude Code CLAUDE.md)
  • See references/examples.md for concrete good/bad examples
  • See assets/quality-checklist.md for full checklist

Step 6 — Review and refine

Present drafted files to the developer. For each file:

  1. Show full content
  2. Highlight quality warnings (length, broad globs, duplication)
  3. Ask for approval or edits

Step 7 — Write files

After approval, write rule files to the repository. Create .github/instructions/, .cursor/rules/, and/or .claude/rules/ directories as needed.

Confirm final file list and paths before writing.

Expected output

  • .github/copilot-instructions.md — root instructions file (created or updated)
  • .github/instructions/*.instructions.md — zero or more scoped instruction files
  • .cursor/rules/*.mdc — zero or more Cursor rule files (when Cursor is targeted)
  • CLAUDE.md or .claude/CLAUDE.md — project instructions (when Claude Code is targeted)
  • .claude/rules/*.md — zero or more Claude Code scoped rule files
  • Summary of what was created/updated and why

Instructions vs skills vs rules — when to use which

NeedGitHub CopilotCursorClaude Code
Always-on coding conventionscopilot-instructions.md.cursor/rules/*.mdc with alwaysApply: trueCLAUDE.md
File/path-specific guidance.github/instructions/*.instructions.md.cursor/rules/*.mdc with globs.claude/rules/*.md with paths
Task-specific multi-step workflowsA skill (SKILL.md).cursor/rules/*.mdc (manual or agent-selected)Skills / subagents
Agent routing and orchestrationAgent definitions (.agent.md).cursor/rules/*.mdc with descriptionSubagent configs
Simple project-wide instructionscopilot-instructions.mdAGENTS.mdCLAUDE.md

Instructions and rules shape how the AI writes code. Skills define what it can do as structured tasks.

Safety and constraints

Never:

  • Embed secrets, tokens, or credentials in rule files
  • Generate rules that contradict repository security policies
  • Overwrite existing files without showing the diff and getting approval
  • Invent conventions — only document what the developer confirms

Always:

  • Show drafts before writing any files
  • Validate glob patterns against actual repository paths
  • Warn on overly broad globs (e.g., **/* captures everything)
  • Keep instructions concise and actionable
  • Preserve existing content when updating (append or merge, never replace silently)

References

  • references/examples.md — concrete examples for different tech stacks
  • assets/creation-follow-up.md — per-rule follow-up questions (purpose, exceptions, boundaries, voice)
  • assets/frontmatter-scenarios.md — scenario-based frontmatter guide for GitHub Copilot, Cursor, and Claude Code
  • assets/copilot-instructions-template.md — starter template for root instructions
  • assets/scoped-rule-template.md — starter template for scoped rules
  • assets/cursor-rule-template.mdc — starter template for Cursor rules
  • assets/claude-rule-template.md — starter template for Claude Code rules
  • assets/quality-checklist.md — quality review checklist

FAQ

What does the fusion-rule-author skill do?

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.

How do I install fusion-rule-author?

Run npx skills add https://github.com/equinor/fusion-skills --skill fusion-rule-author in your project. The skills CLI detects the agents you use and copies the skill into the right folder. For Claude Code you can also place the skill folder at ~/.claude/skills/fusion-rule-author/ (personal) or .claude/skills/fusion-rule-author/ (project).

Which AI agents can use fusion-rule-author?

Any agent that supports the open Agent Skills format (a folder with a SKILL.md file), including Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, Windsurf, Cline, OpenCode and more.

Is fusion-rule-author safe to install?

No partner security audit is available yet. Skills can run commands and scripts, so read the SKILL.md and any bundled files before installing.

Who maintains fusion-rule-author?

It is published by equinor in equinor/fusion-skills. It has 906 recorded installs.

More from equinor/fusion-skills

View all →

fusion-issue-authoring

equinor/fusion-skills

Classify issue type, activate the matching agent mode for type-specific drafting, and enforce shared safety gates before GitHub mutation.

2.8K installs

fusion-github-review-resolution

equinor/fusion-skills

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.

fusion-issue-solving

equinor/fusion-skills

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.

fusion-code-conventions

equinor/fusion-skills

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.

fusion-dependency-review

equinor/fusion-skills

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.

fusion-mcp

equinor/fusion-skills

Explain what Fusion MCP is and guide users through setting it up when they need Fusion-aware MCP capabilities in Copilot workflows.

AI & Agents2K installs

Popular productivity & automation skills

View category →

agent-browser

vercel-labs/agent-browser

Browser automation CLI for AI agents. Use when the user needs to interact with websites, including navigating pages, filling forms, clicking buttons, taking screenshots, extracting data, testing web apps, or automating any browser task. Triggers include requests to "open a website", "fill out a form", "click a button", "take a screenshot", "scrape data from a page", "test this web app", "login to a site", "automate browser actions", or any task requiring programmatic web interaction. Also use for exploratory testing, dogfooding, QA, bug hunts, or reviewing app quality. Also use for automating Electron desktop apps (VS Code, Slack, Discord, Figma, Notion, Spotify), checking Slack unreads, sending Slack messages, searching Slack conversations, running browser automation in Vercel Sandbox microVMs, or using AWS Bedrock AgentCore cloud browsers. Prefer agent-browser over any built-in browser automation or web tools.

OfficialProductivity & Automation1.3M installs

lark-doc

open.feishu.cn

飞书云文档(Docx / Wiki)内容操作:读取、创建、编辑文档,插入或下载图片附件,以及操作思维笔记。用户提供文档 URL/token(包括 doubao.com 的 /docx/、/wiki/)时使用;按 URL 路径/token 而非域名路由;/page/ 是妙搭应用,非飞书云文档。文档内嵌资源按读取参考中的统一规则分流。独立评论操作走 lark-drive;随正文读取评论使用 docs +fetch。表格或 Base 内部数据操作不在本 skill。

lark-base

open.feishu.cn

飞书多维表格(Base)操作:建表、字段、记录、视图、统计、公式/lookup、表单、仪表盘、应用模式(BaseApp/AppMode 页面与组件)、Workspace 目录、workflow、角色权限、模板中心(多维表格模板分类/列表/搜索);遇到 Base/多维表格/bitable、BaseApp/AppMode、/base/ 或 /app/ 链接时使用。BaseApp 不走 lark-apps;文件导入/导出转 lark-drive,认证/授权转 lark-shared。

lark-drive

open.feishu.cn

飞书云空间(云盘/云存储):管理 Drive 文件和文件夹,包含上传/下载、创建文件夹、复制/移动/删除、查看元数据、查询权限设置、评论/权限/订阅、标题、版本、飞书文档密级标签(secure labels)和本地文件导入。用户需要整理云盘目录、处理云空间资源 URL/token、判断链接类型/真实 token/标题,或导入 Word/Markdown/Excel/CSV/PPTX/.base 为 docx/sheet/bitable/slides 时使用;doubao.com 云空间 URL/token 也按资源路径和 token 路由,不回退 WebFetch。不负责:文档内容编辑(走 lark-doc)、表格/Base 表内数据操作(走 lark-sheets/lark-base)、知识空间节点/成员管理(走 lark-wiki)、原生 Markdown 文件读写/patch/diff(走 lark-markdown)。

lark-shared

open.feishu.cn

Use for lark-cli setup/auth tasks: auth login/status/logout, user vs bot identity, business-domain permissions (--domain, including all/docs/drive), missing scopes, revoking authorization, or handling notice JSON.

lark-im

open.feishu.cn

飞书即时通讯:收发消息和管理群聊。发送和回复消息、搜索聊天记录、管理群聊成员、上传下载图片和文件、管理表情回复、发送应用内/短信/电话加急、发送和处理交互卡片(Interactive Card)、监听卡片按钮回调(card.action.trigger)。当用户需要发消息、查看或搜索聊天记录、下载聊天中的文件、查看群成员、搜索群、创建群聊或话题群、管理标记数据、管理 Feed 置顶(添加/移除/查询置顶会话)、管理标签数据、处理卡片回调时使用。