npm / @metamask/skills
@metamask/skills
What changed in @metamask/skills 0.2 to 0.3, from its official release notes, upgrade guides and advisories. Sources checked 2026-10-19.
6 breaking18 new APIs and options5 behavior and defaults8 tooling10 fixes and other
See which of these apply to your code, ranked, in your agent:
npx @unstale/cli init@metamask/skills 0.339 changes
Breaking changes 5
A
base: trueskill cannot also be experimental; the linter treats this as an error.All four implementations now use consistent truthiness for
base:values;base: onno longer passes lint while being skipped by the installer.A base skill description must be long enough to self-trigger; violations are errors.
Domain values are validated against existing domains instead of silently installing the base set and exiting successfully on a typo.
The frontmatter key
mandatorywas renamed tobase; update skills still using the old key.
New APIs and options 11
Adds skills for the assets domain.
Skills marked
base: truein frontmatter install on every automatic postinstall regardless of domain selection, providing a useful set with no configuration.Adds a MetaMask mobile content-guidelines skill.
Adds an analyzer flag for setting the context minimum percentage.
Adds a skill for adding EVM networks in the extension repository.
Adds a skill for using Flashlight to assess Android vitals.
Adds a skill for choosing mobile test-layer placement.
Adds a MetaMask Mobile visual-testing skill.
Adds opt-in pruning of stale project skills.
Setting
SKILLS_PRUNE_STALE=1opts in to stale project skill pruning.Adds an analyzer flag for restricting the audit to swaps.
Behavior and default changes 5
The Extension UI skill is now an MMDS gateway.
Mobile testing guidance now defaults to the component-view layer, and the Appium local-run playbook moved into this skill.
Automatic postinstall syncing is now the default; set
SKILLS_AUTO_UPDATE=0to opt out. An explicitly empty value still means off.The audit now covers the whole capture, classifies non-swaps frames by their relation to swaps call stacks, and reports named context areas alongside swaps rows.
Reports swaps-owned, swaps-path, and concurrent non-swaps areas in separate tables; adds inclusive time to the swaps table and caps non-swaps fix-table rows.
Tooling 8
Guidance adds flakiness and assertion patterns, requires awaiting async-gated content, and bans nested
findByinsidewaitFor.Adds a unified extension-testing skill.
Clarifies where integration tests belong.
Adds a mobile integration-testing skill.
Unifies the Mobile testing skills.
Adds context for a wider CPU audit.
Adds a skill that parses Hermes or React Native Release Profiler
.cpuprofilecaptures and audits slow frames in swaps and bridge.Updates the extension UI-development skill to include newly added design-system components.
Fixes and other changes 10
A failed automatic sync now warns instead of exiting 0 silently, allowing the caller's guard to react and preventing stale skills from appearing fresh; postinstall still never fails yarn install.
The sync installer selection works when npm or Yarn drops the executable bit, so a configured private overlay no longer prevents base skills from being installed.
Appends
-oBatchMode=yesto an existing value rather than replacing it, preserving custom SSH keys, agents, and ProxyCommand configuration.When no valid entries are selected, installs the base set instead of every domain.
Domain selections are validated against existing domains; a saved empty value from the old all-choice picker is no longer treated as no saved selection.
Readers now strip inline comments consistently so comments do not become part of domain names.
Preserves
METAMASK_SKILLS_DIRandCONSENSYS_SKILLS_DIRentries when rewriting.skills.local.Caps the delegated sync subprocess so it cannot hang yarn install indefinitely and reports
ETIMEDOUTexplicitly.Executes the
tools/installshipped beside the pinned package instead of preferring executable code from the unpinned cache clone.The command remains unchanged and still installs every domain.
@metamask/skills 0.28 changes
Breaking changes 1
Prefixes all perps skill names with perps-, changing the names developers use to identify those skills.
New APIs and options 7
Adds a skill for breaking down perps tickets.
Adds a component-scaffold skill for MetaMask Mobile.
Adds a controller-integration skill for mobile and extension development.
Adds EVM network integration skills for swaps.
Adds a flaky-test-detection skill.
Adds a multiproject validation skill for perps.
Adds a product-authoring skill for writing perps tickets.