feat(agents): add skill authoring standard#27733
Conversation
|
CLA Signature Action: All authors have signed the CLA. You may need to manually re-run the blocking PR check if it doesn't pass in a few minutes. |
NicolasMassart
left a comment
There was a problem hiding this comment.
After reviewing the full file set, my main concern is the signal-to-noise ratio: 6 files added, 5 of which are one-liner pointers to the single docs/repo-skill-authoring.md that holds the actual content.
A leaner approach:
- Put content directly in
.agents/skills/repo-skill-authoring/SKILL.md— Cursor and Codex already discover skills from there. No need for a separatedocs/file. - Auto-generate
.claude/skills/and.claude/commands/shims via ayarn claude:generate:skillsscript that scans.agents/skills/*/SKILL.mdand emits pointers..gitignorethe generated files so they don't pollute the repo. - Drop
.cursor/commands/create-repo-skill.md— Cursor discovers skills from.agents/skills/, not from.cursor/commands/. - Drop the per-skill
AGENTS.mdsection — skill discovery is already automated by each harness.AGENTS.mdis useful for things that aren't auto-discovered (setup, architecture, conventions).
This brings the per-skill cost down from 6 hand-maintained files to 2 (SKILL.md + openai.yaml), with Claude shims derived automatically.
The authoring standard itself is valuable — I'd just inline it into the skill's SKILL.md rather than giving it its own SSOT + pointer chain.
There was a problem hiding this comment.
.cursor/commands/create-repo-skill.md is a double indirection
The Cursor command shim references the Claude command, which itself references the docs SSOT. That's two hops to reach the actual content: Cursor command → Claude command → docs/repo-skill-authoring.md. Every other shim goes directly to the docs. This one should too for consistency.
There was a problem hiding this comment.
Skill discovery is already automated by each harness — Cursor reads available_skills, Claude scans .claude/skills/, Codex scans .agents/skills/. No agent reads AGENTS.md to find skills.
AGENTS.md is useful for things that aren't auto-discovered: project setup commands, architecture overview, testing conventions, directory structure. Adding per-skill entries to it is redundant with the discovery mechanism and creates one more place to keep in sync.
So in my proposed structure, AGENTS.md stays as-is — no per-skill section added.
🔍 Smart E2E Test Selection
click to see 🤖 AI reasoning detailsE2E Test Selection: Performance Test Selection: |
|



Description
Adds a canonical repo-local skill authoring standard directly in
.agents/skills/repo-skill-authoring/SKILL.mdso agents can create and update MetaMask Mobile repo-local skills with a minimal file set.This PR introduces the
repo-skill-authoringskill as the canonical artifact in.agents/skills/, keeps a thin Claude skill shim that points directly to it, and removes the redundant docs SSOT, Cursor command shim, Claude command shim, and per-skillAGENTS.mdentry.Changelog
CHANGELOG entry: null
Related issues
Fixes:
Manual testing steps
N/A
Screenshots/Recordings
Before
N/A
After
N/A
Pre-merge author checklist
Pre-merge reviewer checklist
Note
Low Risk
Low risk documentation/config-only change that adds new agent skill guidance without impacting runtime app code.
Overview
Adds a new canonical repo-local agent skill,
repo-skill-authoring, defining the standard structure, naming rules, and authoring workflow for skills under.agents/skills/.Registers the skill for the OpenAI/Codex harness via
agents/openai.yamland adds a minimal Claude shim in.claude/skills/that points back to the canonical.agentsSKILL.md.Written by Cursor Bugbot for commit 4cc1eb1. This will update automatically on new commits. Configure here.