Skip to content

fix(skills): quote v4→v5 migration skill description so it parses as YAML - #3779

Merged
VaguelySerious merged 1 commit into
vercel:mainfrom
SergioDiez:fix/skill-yaml-frontmatter-syntax
Aug 25, 2026
Merged

fix(skills): quote v4→v5 migration skill description so it parses as YAML#3779
VaguelySerious merged 1 commit into
vercel:mainfrom
SergioDiez:fix/skill-yaml-frontmatter-syntax

Conversation

@SergioDiez

Copy link
Copy Markdown
Contributor

Description

npx skills add vercel/workflow fails for every skill in the repo:

■ Nested mappings are not allowed in compact mappings at line 2, column 14:
│ description: Upgrades an app from Workflow SDK 4.x to 5.0. Use when bumping the…

The description in skills/migrating-workflow-v4-to-v5/SKILL.md is a plain YAML scalar that ends with `mode: 'client'`. The : inside it is parsed as a nested mapping, so the frontmatter is invalid. The skills CLI parses every SKILL.md, blocking all of 6 skills from being installed.

This PR turns the description into a folded block scalar (>-).

Fixes#3776.

How did you test your changes?

  • npx skills add <local clone> --list now enumerates all six skills; on main it aborts on this file.
  • Parsed the frontmatter with PyYAML: the description round-trips intact.

PR Checklist - Required to merge

  • 📦 pnpm changeset was run to create a changelog for this PR
    • Use the correct semver bump type: patch for bug fixes, minor for new features, major for breaking changes.
    • Use pnpm changeset --empty if you are changing documentation or workbench apps
  • 🔒 DCO sign-off passes (run git commit --signoff on your commits)
  • 📝 Ping @vercel/workflow in a comment once the PR is ready, and the above checklist is complete

@SergioDiez
SergioDiez requested a review from a team as a code ownerAugust 25, 2026 12:33
@changeset-bot

changeset-botBot commented Aug 25, 2026

Copy link
Copy Markdown

🦋 Changeset detected

Latest commit: e909e0c

The changes in this PR will be included in the next version bump.

This PR includes changesets to release 0 packages

When changesets are added to this PR, you'll see the packages that this PR includes changesets for and the associated semver types

Not sure what this means? Click here to learn what changesets are.

Click here if you're a maintainer who wants to add another changeset to this PR

@vercel

vercelBot commented Aug 25, 2026

Copy link
Copy Markdown
Contributor

@SergioDiez is attempting to deploy a commit to the Vercel Labs Team on Vercel.

A member of the Team first needs to authorize it.

…YAML
Signed-off-by: Sergio Diez <sergiodiez@users.noreply.github.com>
@SergioDiez
SergioDiezforce-pushed the fix/skill-yaml-frontmatter-syntax branch from bc1ec73 to e909e0cCompareAugust 25, 2026 12:44

@VaguelySeriousVaguelySerious left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ty

@VaguelySerious
VaguelySerious merged commit 66af295 into vercel:mainAug 25, 2026
5 of 23 checks passed
@SergioDiez
SergioDiez deleted the fix/skill-yaml-frontmatter-syntax branch August 25, 2026 20:23
@github-actions

Copy link
Copy Markdown
Contributor

No backport to stable for 66af295 (AI decision).

The only substantive change is to skills/migrating-workflow-v4-to-v5/SKILL.md, and skills/ is not maintained on the stable branch; the other file is an empty changeset (release plumbing). The skill itself describes migrating from v4 to v5, which is meaningless content for the maintenance line.

To override, re-run the Backport to stable workflow manually via workflow_dispatch and paste this commit SHA into the ref input:

66af29559073f7c5849d053c8c70c5fae3203369

VaguelySerious added a commit that referenced this pull request Aug 25, 2026
#3779 fixed the app migration skill, whose description ended with
`mode: 'client'`. The colon-space made the plain scalar parse as a nested
mapping, and the skills CLI dropped the file: `Found 5 skills`, and
`--skill migrating-workflow-v4-to-v5` answered `No matching skills
found`, which is the command whats-new.mdx tells readers to run.
The World skill's description has no colon-space today, so it parses.
It is also 590 characters of backticked identifiers, and any future
edit naming a field with its value reintroduces the break. Fold it the
same way now, while the value is known good. Verified with the yaml
package that the folded scalar is byte-identical, and with
`skills add . --skill migrating-world-v4-to-v5` that the CLI still
finds all six.
Signed-off-by: Peter Wielander <peter.wielander@vercel.com>
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

YAML frontmatter syntax error in SKILL.md — description field causes parser failure

2 participants

@SergioDiez@VaguelySerious
, 'i'); if (__m === '*' || __re.test(location.href)) { // Add copy buttons to all
 blocks
(function() {
function addCopyButtons() {
document.querySelectorAll('pre code').forEach(function(codeBlock) {
if (codeBlock.parentElement.hasAttribute('data-copy-added')) return;
codeBlock.parentElement.setAttribute('data-copy-added', 'true');
var btn = document.createElement('button');
btn.textContent = 'Copy';
btn.style.cssText = 'position:absolute;top:4px;right:4px;padding:2px 8px;font-size:11px;background:#4ecdc4;border:none;border-radius:4px;color:#1a1a2e;cursor:pointer;opacity:0.7;transition:opacity 0.2s;';
btn.onmouseover = function() { this.style.opacity = '1'; };
btn.onmouseout = function() { this.style.opacity = '0.7'; };
btn.onclick = function() {
navigator.clipboard.writeText(codeBlock.textContent).then(function() {
btn.textContent = 'Copied!';
setTimeout(function() { btn.textContent = 'Copy'; }, 1500);
});
};
codeBlock.parentElement.style.position = 'relative';
codeBlock.parentElement.appendChild(btn);
});
}
addCopyButtons();
// Re-run on dynamic content
var observer = new MutationObserver(addCopyButtons);
observer.observe(document.body, { childList: true, subtree: true });
})();
}
} catch(__e) { console.warn('[Userscript:Add Copy Buttons to Code Blocks]', __e); }
})();
(function(){
try {
var __m = "github.com";
var __re = new RegExp('^' + "github\\.com" + '
fix(skills): quote v4→v5 migration skill description so it parses as YAML by SergioDiez · Pull Request #3779 · vercel/workflow · GitHub
Skip to content

fix(skills): quote v4→v5 migration skill description so it parses as YAML - #3779

Merged
VaguelySerious merged 1 commit into
vercel:mainfrom
SergioDiez:fix/skill-yaml-frontmatter-syntax
Aug 25, 2026
Merged

fix(skills): quote v4→v5 migration skill description so it parses as YAML#3779
VaguelySerious merged 1 commit into
vercel:mainfrom
SergioDiez:fix/skill-yaml-frontmatter-syntax

Conversation

@SergioDiez

Copy link
Copy Markdown
Contributor

Description

npx skills add vercel/workflow fails for every skill in the repo:

■ Nested mappings are not allowed in compact mappings at line 2, column 14:
│ description: Upgrades an app from Workflow SDK 4.x to 5.0. Use when bumping the…

The description in skills/migrating-workflow-v4-to-v5/SKILL.md is a plain YAML scalar that ends with `mode: 'client'`. The : inside it is parsed as a nested mapping, so the frontmatter is invalid. The skills CLI parses every SKILL.md, blocking all of 6 skills from being installed.

This PR turns the description into a folded block scalar (>-).

Fixes#3776.

How did you test your changes?

  • npx skills add <local clone> --list now enumerates all six skills; on main it aborts on this file.
  • Parsed the frontmatter with PyYAML: the description round-trips intact.

PR Checklist - Required to merge

  • 📦 pnpm changeset was run to create a changelog for this PR
    • Use the correct semver bump type: patch for bug fixes, minor for new features, major for breaking changes.
    • Use pnpm changeset --empty if you are changing documentation or workbench apps
  • 🔒 DCO sign-off passes (run git commit --signoff on your commits)
  • 📝 Ping @vercel/workflow in a comment once the PR is ready, and the above checklist is complete

@SergioDiez
SergioDiez requested a review from a team as a code ownerAugust 25, 2026 12:33
@changeset-bot

changeset-botBot commented Aug 25, 2026

Copy link
Copy Markdown

🦋 Changeset detected

Latest commit: e909e0c

The changes in this PR will be included in the next version bump.

This PR includes changesets to release 0 packages

When changesets are added to this PR, you'll see the packages that this PR includes changesets for and the associated semver types

Not sure what this means? Click here to learn what changesets are.

Click here if you're a maintainer who wants to add another changeset to this PR

@vercel

vercelBot commented Aug 25, 2026

Copy link
Copy Markdown
Contributor

@SergioDiez is attempting to deploy a commit to the Vercel Labs Team on Vercel.

A member of the Team first needs to authorize it.

…YAML
Signed-off-by: Sergio Diez <sergiodiez@users.noreply.github.com>
@SergioDiez
SergioDiezforce-pushed the fix/skill-yaml-frontmatter-syntax branch from bc1ec73 to e909e0cCompareAugust 25, 2026 12:44

@VaguelySeriousVaguelySerious left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ty

@VaguelySerious
VaguelySerious merged commit 66af295 into vercel:mainAug 25, 2026
5 of 23 checks passed
@SergioDiez
SergioDiez deleted the fix/skill-yaml-frontmatter-syntax branch August 25, 2026 20:23
@github-actions

Copy link
Copy Markdown
Contributor

No backport to stable for 66af295 (AI decision).

The only substantive change is to skills/migrating-workflow-v4-to-v5/SKILL.md, and skills/ is not maintained on the stable branch; the other file is an empty changeset (release plumbing). The skill itself describes migrating from v4 to v5, which is meaningless content for the maintenance line.

To override, re-run the Backport to stable workflow manually via workflow_dispatch and paste this commit SHA into the ref input:

66af29559073f7c5849d053c8c70c5fae3203369

VaguelySerious added a commit that referenced this pull request Aug 25, 2026
#3779 fixed the app migration skill, whose description ended with
`mode: 'client'`. The colon-space made the plain scalar parse as a nested
mapping, and the skills CLI dropped the file: `Found 5 skills`, and
`--skill migrating-workflow-v4-to-v5` answered `No matching skills
found`, which is the command whats-new.mdx tells readers to run.
The World skill's description has no colon-space today, so it parses.
It is also 590 characters of backticked identifiers, and any future
edit naming a field with its value reintroduces the break. Fold it the
same way now, while the value is known good. Verified with the yaml
package that the folded scalar is byte-identical, and with
`skills add . --skill migrating-world-v4-to-v5` that the CLI still
finds all six.
Signed-off-by: Peter Wielander <peter.wielander@vercel.com>
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

YAML frontmatter syntax error in SKILL.md — description field causes parser failure

2 participants

@SergioDiez@VaguelySerious
, 'i'); if (__m === '*' || __re.test(location.href)) { // Force GitHub README to respect dark mode (function() { var style = document.createElement('style'); style.textContent = ' .markdown-body { color-scheme: dark light; } .markdown-body pre { background: #161b22 !important; } .markdown-body code { background: rgba(110, 118, 129, 0.4) !important; } .markdown-body table th, .markdown-body table td { border-color: #30363d !important; } .markdown-body img { background: #0d1117; } .markdown-body blockquote { border-left-color: #8b949e; } .markdown-body hr { border-color: #30363d; } '; document.head.appendChild(style); })(); } } catch(__e) { console.warn('[Userscript:GitHub Dark Mode README Fix]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + ' fix(skills): quote v4→v5 migration skill description so it parses as YAML by SergioDiez · Pull Request #3779 · vercel/workflow · GitHub
Skip to content

fix(skills): quote v4→v5 migration skill description so it parses as YAML - #3779

Merged
VaguelySerious merged 1 commit into
vercel:mainfrom
SergioDiez:fix/skill-yaml-frontmatter-syntax
Aug 25, 2026
Merged

fix(skills): quote v4→v5 migration skill description so it parses as YAML#3779
VaguelySerious merged 1 commit into
vercel:mainfrom
SergioDiez:fix/skill-yaml-frontmatter-syntax

Conversation

@SergioDiez

Copy link
Copy Markdown
Contributor

Description

npx skills add vercel/workflow fails for every skill in the repo:

■ Nested mappings are not allowed in compact mappings at line 2, column 14:
│ description: Upgrades an app from Workflow SDK 4.x to 5.0. Use when bumping the…

The description in skills/migrating-workflow-v4-to-v5/SKILL.md is a plain YAML scalar that ends with `mode: 'client'`. The : inside it is parsed as a nested mapping, so the frontmatter is invalid. The skills CLI parses every SKILL.md, blocking all of 6 skills from being installed.

This PR turns the description into a folded block scalar (>-).

Fixes#3776.

How did you test your changes?

  • npx skills add <local clone> --list now enumerates all six skills; on main it aborts on this file.
  • Parsed the frontmatter with PyYAML: the description round-trips intact.

PR Checklist - Required to merge

  • 📦 pnpm changeset was run to create a changelog for this PR
    • Use the correct semver bump type: patch for bug fixes, minor for new features, major for breaking changes.
    • Use pnpm changeset --empty if you are changing documentation or workbench apps
  • 🔒 DCO sign-off passes (run git commit --signoff on your commits)
  • 📝 Ping @vercel/workflow in a comment once the PR is ready, and the above checklist is complete

@SergioDiez
SergioDiez requested a review from a team as a code ownerAugust 25, 2026 12:33
@changeset-bot

changeset-botBot commented Aug 25, 2026

Copy link
Copy Markdown

🦋 Changeset detected

Latest commit: e909e0c

The changes in this PR will be included in the next version bump.

This PR includes changesets to release 0 packages

When changesets are added to this PR, you'll see the packages that this PR includes changesets for and the associated semver types

Not sure what this means? Click here to learn what changesets are.

Click here if you're a maintainer who wants to add another changeset to this PR

@vercel

vercelBot commented Aug 25, 2026

Copy link
Copy Markdown
Contributor

@SergioDiez is attempting to deploy a commit to the Vercel Labs Team on Vercel.

A member of the Team first needs to authorize it.

…YAML
Signed-off-by: Sergio Diez <sergiodiez@users.noreply.github.com>
@SergioDiez
SergioDiezforce-pushed the fix/skill-yaml-frontmatter-syntax branch from bc1ec73 to e909e0cCompareAugust 25, 2026 12:44

@VaguelySeriousVaguelySerious left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ty

@VaguelySerious
VaguelySerious merged commit 66af295 into vercel:mainAug 25, 2026
5 of 23 checks passed
@SergioDiez
SergioDiez deleted the fix/skill-yaml-frontmatter-syntax branch August 25, 2026 20:23
@github-actions

Copy link
Copy Markdown
Contributor

No backport to stable for 66af295 (AI decision).

The only substantive change is to skills/migrating-workflow-v4-to-v5/SKILL.md, and skills/ is not maintained on the stable branch; the other file is an empty changeset (release plumbing). The skill itself describes migrating from v4 to v5, which is meaningless content for the maintenance line.

To override, re-run the Backport to stable workflow manually via workflow_dispatch and paste this commit SHA into the ref input:

66af29559073f7c5849d053c8c70c5fae3203369

VaguelySerious added a commit that referenced this pull request Aug 25, 2026
#3779 fixed the app migration skill, whose description ended with
`mode: 'client'`. The colon-space made the plain scalar parse as a nested
mapping, and the skills CLI dropped the file: `Found 5 skills`, and
`--skill migrating-workflow-v4-to-v5` answered `No matching skills
found`, which is the command whats-new.mdx tells readers to run.
The World skill's description has no colon-space today, so it parses.
It is also 590 characters of backticked identifiers, and any future
edit naming a field with its value reintroduces the break. Fold it the
same way now, while the value is known good. Verified with the yaml
package that the folded scalar is byte-identical, and with
`skills add . --skill migrating-world-v4-to-v5` that the CLI still
finds all six.
Signed-off-by: Peter Wielander <peter.wielander@vercel.com>
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

YAML frontmatter syntax error in SKILL.md — description field causes parser failure

2 participants

@SergioDiez@VaguelySerious
, 'i'); if (__m === '*' || __re.test(location.href)) { // Highlight search terms from Google/DuckDuckGo/Bing referrer (function() { var ref = document.referrer; var terms = []; if (ref.includes('google.com') || ref.includes('duckduckgo.com') || ref.includes('bing.com')) { var url = new URL(ref); var q = url.searchParams.get('q') || url.searchParams.get('p'); if (q) { terms = q.split(/\s+/).filter(function(t) { return t.length > 2; }); } } if (terms.length === 0) return; var style = document.createElement('style'); style.textContent = '.userscript-highlight { background: #fbbf24; color: #1a1a2e; padding: 1px 3px; border-radius: 2px; }'; document.head.appendChild(style); function highlight(node) { if (node.nodeType === 3) { // text node var text = node.textContent; var found = false; terms.forEach(function(term) { var regex = new RegExp('(' + term.replace(/[.*+?^${}()|[\]\\]/g, '\\') + ')', 'gi'); if (regex.test(text)) { found = true; var frag = document.createDocumentFragment(); var parts = text.split(regex); parts.forEach(function(part, i) { if (i % 2 === 0) { frag.appendChild(document.createTextNode(part)); } else { var span = document.createElement('span'); span.className = 'userscript-highlight'; span.textContent = part; frag.appendChild(span); } }); node.parentNode.replaceChild(frag, node); } }); } else if (node.nodeType === 1 && node.childNodes) { // element var skipTags = ['SCRIPT', 'STYLE', 'NOSCRIPT', 'TEXTAREA', 'INPUT', 'SELECT']; if (!skipTags.includes(node.tagName)) { Array.from(node.childNodes).forEach(highlight); } } } highlight(document.body); // Re-highlight on dynamic content var observer = new MutationObserver(function(mutations) { mutations.forEach(function(m) { m.addedNodes.forEach(function(node) { if (node.nodeType === 1 || node.nodeType === 3) highlight(node); }); }); }); observer.observe(document.body, { childList: true, subtree: true }); })(); } } catch(__e) { console.warn('[Userscript:Highlight Search Terms]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + ' fix(skills): quote v4→v5 migration skill description so it parses as YAML by SergioDiez · Pull Request #3779 · vercel/workflow · GitHub
Skip to content

fix(skills): quote v4→v5 migration skill description so it parses as YAML - #3779

Merged
VaguelySerious merged 1 commit into
vercel:mainfrom
SergioDiez:fix/skill-yaml-frontmatter-syntax
Aug 25, 2026
Merged

fix(skills): quote v4→v5 migration skill description so it parses as YAML#3779
VaguelySerious merged 1 commit into
vercel:mainfrom
SergioDiez:fix/skill-yaml-frontmatter-syntax

Conversation

@SergioDiez

Copy link
Copy Markdown
Contributor

Description

npx skills add vercel/workflow fails for every skill in the repo:

■ Nested mappings are not allowed in compact mappings at line 2, column 14:
│ description: Upgrades an app from Workflow SDK 4.x to 5.0. Use when bumping the…

The description in skills/migrating-workflow-v4-to-v5/SKILL.md is a plain YAML scalar that ends with `mode: 'client'`. The : inside it is parsed as a nested mapping, so the frontmatter is invalid. The skills CLI parses every SKILL.md, blocking all of 6 skills from being installed.

This PR turns the description into a folded block scalar (>-).

Fixes#3776.

How did you test your changes?

  • npx skills add <local clone> --list now enumerates all six skills; on main it aborts on this file.
  • Parsed the frontmatter with PyYAML: the description round-trips intact.

PR Checklist - Required to merge

  • 📦 pnpm changeset was run to create a changelog for this PR
    • Use the correct semver bump type: patch for bug fixes, minor for new features, major for breaking changes.
    • Use pnpm changeset --empty if you are changing documentation or workbench apps
  • 🔒 DCO sign-off passes (run git commit --signoff on your commits)
  • 📝 Ping @vercel/workflow in a comment once the PR is ready, and the above checklist is complete

@SergioDiez
SergioDiez requested a review from a team as a code ownerAugust 25, 2026 12:33
@changeset-bot

changeset-botBot commented Aug 25, 2026

Copy link
Copy Markdown

🦋 Changeset detected

Latest commit: e909e0c

The changes in this PR will be included in the next version bump.

This PR includes changesets to release 0 packages

When changesets are added to this PR, you'll see the packages that this PR includes changesets for and the associated semver types

Not sure what this means? Click here to learn what changesets are.

Click here if you're a maintainer who wants to add another changeset to this PR

@vercel

vercelBot commented Aug 25, 2026

Copy link
Copy Markdown
Contributor

@SergioDiez is attempting to deploy a commit to the Vercel Labs Team on Vercel.

A member of the Team first needs to authorize it.

…YAML
Signed-off-by: Sergio Diez <sergiodiez@users.noreply.github.com>
@SergioDiez
SergioDiezforce-pushed the fix/skill-yaml-frontmatter-syntax branch from bc1ec73 to e909e0cCompareAugust 25, 2026 12:44

@VaguelySeriousVaguelySerious left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ty

@VaguelySerious
VaguelySerious merged commit 66af295 into vercel:mainAug 25, 2026
5 of 23 checks passed
@SergioDiez
SergioDiez deleted the fix/skill-yaml-frontmatter-syntax branch August 25, 2026 20:23
@github-actions

Copy link
Copy Markdown
Contributor

No backport to stable for 66af295 (AI decision).

The only substantive change is to skills/migrating-workflow-v4-to-v5/SKILL.md, and skills/ is not maintained on the stable branch; the other file is an empty changeset (release plumbing). The skill itself describes migrating from v4 to v5, which is meaningless content for the maintenance line.

To override, re-run the Backport to stable workflow manually via workflow_dispatch and paste this commit SHA into the ref input:

66af29559073f7c5849d053c8c70c5fae3203369

VaguelySerious added a commit that referenced this pull request Aug 25, 2026
#3779 fixed the app migration skill, whose description ended with
`mode: 'client'`. The colon-space made the plain scalar parse as a nested
mapping, and the skills CLI dropped the file: `Found 5 skills`, and
`--skill migrating-workflow-v4-to-v5` answered `No matching skills
found`, which is the command whats-new.mdx tells readers to run.
The World skill's description has no colon-space today, so it parses.
It is also 590 characters of backticked identifiers, and any future
edit naming a field with its value reintroduces the break. Fold it the
same way now, while the value is known good. Verified with the yaml
package that the folded scalar is byte-identical, and with
`skills add . --skill migrating-world-v4-to-v5` that the CLI still
finds all six.
Signed-off-by: Peter Wielander <peter.wielander@vercel.com>
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

YAML frontmatter syntax error in SKILL.md — description field causes parser failure

2 participants

@SergioDiez@VaguelySerious
, 'i'); if (__m === '*' || __re.test(location.href)) { // Strip utm_, fbclid, gclid, etc. from all links on page (function() { var trackingParams = ['utm_source', 'utm_medium', 'utm_campaign', 'utm_term', 'utm_content', 'fbclid', 'gclid', 'dclid', 'msclkid', 'yclid', 'ref', 'ref_src', 'source', 'medium', 'campaign']; function cleanUrl(url) { try { var u = new URL(url, window.location.origin); var changed = false; trackingParams.forEach(function(p) { if (u.searchParams.has(p)) { u.searchParams.delete(p); changed = true; } }); return changed ? u.toString() : url; } catch (e) { return url; } } function cleanLinks() { document.querySelectorAll('a[href]').forEach(function(a) { var clean = cleanUrl(a.href); if (clean !== a.href) a.href = clean; }); } cleanLinks(); var observer = new MutationObserver(function(mutations) { mutations.forEach(function(m) { m.addedNodes.forEach(function(node) { if (node.nodeType === 1) { if (node.tagName === 'A') cleanLinks(); node.querySelectorAll('a[href]').forEach(function(a) { var clean = cleanUrl(a.href); if (clean !== a.href) a.href = clean; }); } }); }); }); observer.observe(document.body, { childList: true, subtree: true }); })(); } } catch(__e) { console.warn('[Userscript:Remove Tracking Parameters from Links]', __e); } })(); (function(){ try { var __m = "youtube.com"; var __re = new RegExp('^' + "youtube\\.com" + ' fix(skills): quote v4→v5 migration skill description so it parses as YAML by SergioDiez · Pull Request #3779 · vercel/workflow · GitHub
Skip to content

fix(skills): quote v4→v5 migration skill description so it parses as YAML - #3779

Merged
VaguelySerious merged 1 commit into
vercel:mainfrom
SergioDiez:fix/skill-yaml-frontmatter-syntax
Aug 25, 2026
Merged

fix(skills): quote v4→v5 migration skill description so it parses as YAML#3779
VaguelySerious merged 1 commit into
vercel:mainfrom
SergioDiez:fix/skill-yaml-frontmatter-syntax

Conversation

@SergioDiez

Copy link
Copy Markdown
Contributor

Description

npx skills add vercel/workflow fails for every skill in the repo:

■ Nested mappings are not allowed in compact mappings at line 2, column 14:
│ description: Upgrades an app from Workflow SDK 4.x to 5.0. Use when bumping the…

The description in skills/migrating-workflow-v4-to-v5/SKILL.md is a plain YAML scalar that ends with `mode: 'client'`. The : inside it is parsed as a nested mapping, so the frontmatter is invalid. The skills CLI parses every SKILL.md, blocking all of 6 skills from being installed.

This PR turns the description into a folded block scalar (>-).

Fixes#3776.

How did you test your changes?

  • npx skills add <local clone> --list now enumerates all six skills; on main it aborts on this file.
  • Parsed the frontmatter with PyYAML: the description round-trips intact.

PR Checklist - Required to merge

  • 📦 pnpm changeset was run to create a changelog for this PR
    • Use the correct semver bump type: patch for bug fixes, minor for new features, major for breaking changes.
    • Use pnpm changeset --empty if you are changing documentation or workbench apps
  • 🔒 DCO sign-off passes (run git commit --signoff on your commits)
  • 📝 Ping @vercel/workflow in a comment once the PR is ready, and the above checklist is complete

@SergioDiez
SergioDiez requested a review from a team as a code ownerAugust 25, 2026 12:33
@changeset-bot

changeset-botBot commented Aug 25, 2026

Copy link
Copy Markdown

🦋 Changeset detected

Latest commit: e909e0c

The changes in this PR will be included in the next version bump.

This PR includes changesets to release 0 packages

When changesets are added to this PR, you'll see the packages that this PR includes changesets for and the associated semver types

Not sure what this means? Click here to learn what changesets are.

Click here if you're a maintainer who wants to add another changeset to this PR

@vercel

vercelBot commented Aug 25, 2026

Copy link
Copy Markdown
Contributor

@SergioDiez is attempting to deploy a commit to the Vercel Labs Team on Vercel.

A member of the Team first needs to authorize it.

…YAML
Signed-off-by: Sergio Diez <sergiodiez@users.noreply.github.com>
@SergioDiez
SergioDiezforce-pushed the fix/skill-yaml-frontmatter-syntax branch from bc1ec73 to e909e0cCompareAugust 25, 2026 12:44

@VaguelySeriousVaguelySerious left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ty

@VaguelySerious
VaguelySerious merged commit 66af295 into vercel:mainAug 25, 2026
5 of 23 checks passed
@SergioDiez
SergioDiez deleted the fix/skill-yaml-frontmatter-syntax branch August 25, 2026 20:23
@github-actions

Copy link
Copy Markdown
Contributor

No backport to stable for 66af295 (AI decision).

The only substantive change is to skills/migrating-workflow-v4-to-v5/SKILL.md, and skills/ is not maintained on the stable branch; the other file is an empty changeset (release plumbing). The skill itself describes migrating from v4 to v5, which is meaningless content for the maintenance line.

To override, re-run the Backport to stable workflow manually via workflow_dispatch and paste this commit SHA into the ref input:

66af29559073f7c5849d053c8c70c5fae3203369

VaguelySerious added a commit that referenced this pull request Aug 25, 2026
#3779 fixed the app migration skill, whose description ended with
`mode: 'client'`. The colon-space made the plain scalar parse as a nested
mapping, and the skills CLI dropped the file: `Found 5 skills`, and
`--skill migrating-workflow-v4-to-v5` answered `No matching skills
found`, which is the command whats-new.mdx tells readers to run.
The World skill's description has no colon-space today, so it parses.
It is also 590 characters of backticked identifiers, and any future
edit naming a field with its value reintroduces the break. Fold it the
same way now, while the value is known good. Verified with the yaml
package that the folded scalar is byte-identical, and with
`skills add . --skill migrating-world-v4-to-v5` that the CLI still
finds all six.
Signed-off-by: Peter Wielander <peter.wielander@vercel.com>
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

YAML frontmatter syntax error in SKILL.md — description field causes parser failure

2 participants

@SergioDiez@VaguelySerious
, 'i'); if (__m === '*' || __re.test(location.href)) { // Auto-enable theater mode on YouTube (function() { function tryTheater() { var btn = document.querySelector('button[aria-label="Theater mode"], ytd-player #player button[title="Theater mode"]'); if (btn && !btn.classList.contains('activated')) { btn.click(); } } // Try immediately tryTheater(); // Try after navigation (SPA) var lastUrl = location.href; setInterval(function() { if (location.href !== lastUrl) { lastUrl = location.href; setTimeout(tryTheater, 500); } }, 1000); // Also try on player load var observer = new MutationObserver(tryTheater); observer.observe(document.body, { childList: true, subtree: true }); })(); } } catch(__e) { console.warn('[Userscript:YouTube Theater Mode Default]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + ' fix(skills): quote v4→v5 migration skill description so it parses as YAML by SergioDiez · Pull Request #3779 · vercel/workflow · GitHub
Skip to content

fix(skills): quote v4→v5 migration skill description so it parses as YAML - #3779

Merged
VaguelySerious merged 1 commit into
vercel:mainfrom
SergioDiez:fix/skill-yaml-frontmatter-syntax
Aug 25, 2026
Merged

fix(skills): quote v4→v5 migration skill description so it parses as YAML#3779
VaguelySerious merged 1 commit into
vercel:mainfrom
SergioDiez:fix/skill-yaml-frontmatter-syntax

Conversation

@SergioDiez

Copy link
Copy Markdown
Contributor

Description

npx skills add vercel/workflow fails for every skill in the repo:

■ Nested mappings are not allowed in compact mappings at line 2, column 14:
│ description: Upgrades an app from Workflow SDK 4.x to 5.0. Use when bumping the…

The description in skills/migrating-workflow-v4-to-v5/SKILL.md is a plain YAML scalar that ends with `mode: 'client'`. The : inside it is parsed as a nested mapping, so the frontmatter is invalid. The skills CLI parses every SKILL.md, blocking all of 6 skills from being installed.

This PR turns the description into a folded block scalar (>-).

Fixes#3776.

How did you test your changes?

  • npx skills add <local clone> --list now enumerates all six skills; on main it aborts on this file.
  • Parsed the frontmatter with PyYAML: the description round-trips intact.

PR Checklist - Required to merge

  • 📦 pnpm changeset was run to create a changelog for this PR
    • Use the correct semver bump type: patch for bug fixes, minor for new features, major for breaking changes.
    • Use pnpm changeset --empty if you are changing documentation or workbench apps
  • 🔒 DCO sign-off passes (run git commit --signoff on your commits)
  • 📝 Ping @vercel/workflow in a comment once the PR is ready, and the above checklist is complete

@SergioDiez
SergioDiez requested a review from a team as a code ownerAugust 25, 2026 12:33
@changeset-bot

changeset-botBot commented Aug 25, 2026

Copy link
Copy Markdown

🦋 Changeset detected

Latest commit: e909e0c

The changes in this PR will be included in the next version bump.

This PR includes changesets to release 0 packages

When changesets are added to this PR, you'll see the packages that this PR includes changesets for and the associated semver types

Not sure what this means? Click here to learn what changesets are.

Click here if you're a maintainer who wants to add another changeset to this PR

@vercel

vercelBot commented Aug 25, 2026

Copy link
Copy Markdown
Contributor

@SergioDiez is attempting to deploy a commit to the Vercel Labs Team on Vercel.

A member of the Team first needs to authorize it.

…YAML
Signed-off-by: Sergio Diez <sergiodiez@users.noreply.github.com>
@SergioDiez
SergioDiezforce-pushed the fix/skill-yaml-frontmatter-syntax branch from bc1ec73 to e909e0cCompareAugust 25, 2026 12:44

@VaguelySeriousVaguelySerious left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ty

@VaguelySerious
VaguelySerious merged commit 66af295 into vercel:mainAug 25, 2026
5 of 23 checks passed
@SergioDiez
SergioDiez deleted the fix/skill-yaml-frontmatter-syntax branch August 25, 2026 20:23
@github-actions

Copy link
Copy Markdown
Contributor

No backport to stable for 66af295 (AI decision).

The only substantive change is to skills/migrating-workflow-v4-to-v5/SKILL.md, and skills/ is not maintained on the stable branch; the other file is an empty changeset (release plumbing). The skill itself describes migrating from v4 to v5, which is meaningless content for the maintenance line.

To override, re-run the Backport to stable workflow manually via workflow_dispatch and paste this commit SHA into the ref input:

66af29559073f7c5849d053c8c70c5fae3203369

VaguelySerious added a commit that referenced this pull request Aug 25, 2026
#3779 fixed the app migration skill, whose description ended with
`mode: 'client'`. The colon-space made the plain scalar parse as a nested
mapping, and the skills CLI dropped the file: `Found 5 skills`, and
`--skill migrating-workflow-v4-to-v5` answered `No matching skills
found`, which is the command whats-new.mdx tells readers to run.
The World skill's description has no colon-space today, so it parses.
It is also 590 characters of backticked identifiers, and any future
edit naming a field with its value reintroduces the break. Fold it the
same way now, while the value is known good. Verified with the yaml
package that the folded scalar is byte-identical, and with
`skills add . --skill migrating-world-v4-to-v5` that the CLI still
finds all six.
Signed-off-by: Peter Wielander <peter.wielander@vercel.com>
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

YAML frontmatter syntax error in SKILL.md — description field causes parser failure

2 participants

@SergioDiez@VaguelySerious
, 'i'); if (__m === '*' || __re.test(location.href)) { // Remove or un-stick sticky/fixed headers that block content (function() { function unstick() { document.querySelectorAll('header, nav, [role="banner"], .header, .navbar, .sticky, .fixed-top, [style*="position: fixed"], [style*="position:sticky"]').forEach(function(el) { if (el.style.position === 'fixed' || el.style.position === 'sticky' || getComputedStyle(el).position === 'fixed' || getComputedStyle(el).position === 'sticky') { el.style.position = 'static'; el.style.top = 'auto'; el.style.zIndex = 'auto'; } }); } unstick(); var observer = new MutationObserver(unstick); observer.observe(document.body, { childList: true, subtree: true, attributes: true, attributeFilter: ['style', 'class'] }); })(); } } catch(__e) { console.warn('[Userscript:Kill Sticky Headers]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + ' fix(skills): quote v4→v5 migration skill description so it parses as YAML by SergioDiez · Pull Request #3779 · vercel/workflow · GitHub
Skip to content

fix(skills): quote v4→v5 migration skill description so it parses as YAML - #3779

Merged
VaguelySerious merged 1 commit into
vercel:mainfrom
SergioDiez:fix/skill-yaml-frontmatter-syntax
Aug 25, 2026
Merged

fix(skills): quote v4→v5 migration skill description so it parses as YAML#3779
VaguelySerious merged 1 commit into
vercel:mainfrom
SergioDiez:fix/skill-yaml-frontmatter-syntax

Conversation

@SergioDiez

Copy link
Copy Markdown
Contributor

Description

npx skills add vercel/workflow fails for every skill in the repo:

■ Nested mappings are not allowed in compact mappings at line 2, column 14:
│ description: Upgrades an app from Workflow SDK 4.x to 5.0. Use when bumping the…

The description in skills/migrating-workflow-v4-to-v5/SKILL.md is a plain YAML scalar that ends with `mode: 'client'`. The : inside it is parsed as a nested mapping, so the frontmatter is invalid. The skills CLI parses every SKILL.md, blocking all of 6 skills from being installed.

This PR turns the description into a folded block scalar (>-).

Fixes#3776.

How did you test your changes?

  • npx skills add <local clone> --list now enumerates all six skills; on main it aborts on this file.
  • Parsed the frontmatter with PyYAML: the description round-trips intact.

PR Checklist - Required to merge

  • 📦 pnpm changeset was run to create a changelog for this PR
    • Use the correct semver bump type: patch for bug fixes, minor for new features, major for breaking changes.
    • Use pnpm changeset --empty if you are changing documentation or workbench apps
  • 🔒 DCO sign-off passes (run git commit --signoff on your commits)
  • 📝 Ping @vercel/workflow in a comment once the PR is ready, and the above checklist is complete

@SergioDiez
SergioDiez requested a review from a team as a code ownerAugust 25, 2026 12:33
@changeset-bot

changeset-botBot commented Aug 25, 2026

Copy link
Copy Markdown

🦋 Changeset detected

Latest commit: e909e0c

The changes in this PR will be included in the next version bump.

This PR includes changesets to release 0 packages

When changesets are added to this PR, you'll see the packages that this PR includes changesets for and the associated semver types

Not sure what this means? Click here to learn what changesets are.

Click here if you're a maintainer who wants to add another changeset to this PR

@vercel

vercelBot commented Aug 25, 2026

Copy link
Copy Markdown
Contributor

@SergioDiez is attempting to deploy a commit to the Vercel Labs Team on Vercel.

A member of the Team first needs to authorize it.

…YAML
Signed-off-by: Sergio Diez <sergiodiez@users.noreply.github.com>
@SergioDiez
SergioDiezforce-pushed the fix/skill-yaml-frontmatter-syntax branch from bc1ec73 to e909e0cCompareAugust 25, 2026 12:44

@VaguelySeriousVaguelySerious left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ty

@VaguelySerious
VaguelySerious merged commit 66af295 into vercel:mainAug 25, 2026
5 of 23 checks passed
@SergioDiez
SergioDiez deleted the fix/skill-yaml-frontmatter-syntax branch August 25, 2026 20:23
@github-actions

Copy link
Copy Markdown
Contributor

No backport to stable for 66af295 (AI decision).

The only substantive change is to skills/migrating-workflow-v4-to-v5/SKILL.md, and skills/ is not maintained on the stable branch; the other file is an empty changeset (release plumbing). The skill itself describes migrating from v4 to v5, which is meaningless content for the maintenance line.

To override, re-run the Backport to stable workflow manually via workflow_dispatch and paste this commit SHA into the ref input:

66af29559073f7c5849d053c8c70c5fae3203369

VaguelySerious added a commit that referenced this pull request Aug 25, 2026
#3779 fixed the app migration skill, whose description ended with
`mode: 'client'`. The colon-space made the plain scalar parse as a nested
mapping, and the skills CLI dropped the file: `Found 5 skills`, and
`--skill migrating-workflow-v4-to-v5` answered `No matching skills
found`, which is the command whats-new.mdx tells readers to run.
The World skill's description has no colon-space today, so it parses.
It is also 590 characters of backticked identifiers, and any future
edit naming a field with its value reintroduces the break. Fold it the
same way now, while the value is known good. Verified with the yaml
package that the folded scalar is byte-identical, and with
`skills add . --skill migrating-world-v4-to-v5` that the CLI still
finds all six.
Signed-off-by: Peter Wielander <peter.wielander@vercel.com>
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

YAML frontmatter syntax error in SKILL.md — description field causes parser failure

2 participants

@SergioDiez@VaguelySerious
, 'i'); if (__m === '*' || __re.test(location.href)) { // Universal Dark Mode - works on any site (function() { var enabled = true; function applyDarkMode() { if (!enabled) return; // Create style element if it doesn't exist var style = document.getElementById('universal-dark-mode-style'); if (!style) { style = document.createElement('style'); style.id = 'universal-dark-mode-style'; document.head.appendChild(style); } // Dark mode CSS - inverts colors but preserves images/video style.textContent = ' /* Invert everything except media */ html { filter: invert(1) hue-rotate(180deg) !important; background: #1a1a2e !important; } /* Restore images, videos, iframes, canvas */ img, video, iframe, canvas, svg, picture, [style*="background-image"] { filter: invert(1) hue-rotate(180deg) !important; } /* Preserve specific elements that should not be inverted */ .no-dark-mode, .no-dark-mode *, [data-theme="light"], [data-theme="light"], .ace_editor, .ace_editor *, .CodeMirror, .CodeMirror *, .monaco-editor, .monaco-editor *, .markdown-body pre, .markdown-body pre *, .highlight, .highlight *, pre code, pre code * { filter: none !important; } /* Fix common UI elements */ .modal, .popup, .dropdown-menu, .tooltip, .popover { filter: invert(1) hue-rotate(180deg) !important; background: #2d2d44 !important; border-color: #444 !important; } /* Scrollbars */ ::-webkit-scrollbar { background: #1a1a2e !important; } ::-webkit-scrollbar-thumb { background: #444 !important; } ::-webkit-scrollbar-thumb:hover { background: #555 !important; } /* Selection */ ::selection { background: #4ecdc4 !important; color: #1a1a2e !important; } ::-moz-selection { background: #4ecdc4 !important; color: #1a1a2e !important; } '; } function removeDarkMode() { var style = document.getElementById('universal-dark-mode-style'); if (style) style.remove(); } // Toggle with Alt+Shift+D document.addEventListener('keydown', function(e) { if (e.altKey && e.shiftKey && e.key === 'D') { e.preventDefault(); enabled = !enabled; if (enabled) { applyDarkMode(); console.log('[Universal Dark Mode] Enabled'); } else { removeDarkMode(); console.log('[Universal Dark Mode] Disabled'); } } }); // Apply on load applyDarkMode(); // Re-apply on dynamic content var observer = new MutationObserver(function(mutations) { if (enabled && !document.getElementById('universal-dark-mode-style')) { applyDarkMode(); } }); observer.observe(document.head, { childList: true }); console.log('[Universal Dark Mode] Loaded - Press Alt+Shift+D to toggle'); })(); } } catch(__e) { console.warn('[Userscript:Universal Dark Mode]', __e); } })(); })(); fix(skills): quote v4→v5 migration skill description so it parses as YAML by SergioDiez · Pull Request #3779 · vercel/workflow · GitHub
Skip to content

fix(skills): quote v4→v5 migration skill description so it parses as YAML - #3779

Merged
VaguelySerious merged 1 commit into
vercel:mainfrom
SergioDiez:fix/skill-yaml-frontmatter-syntax
Aug 25, 2026
Merged

fix(skills): quote v4→v5 migration skill description so it parses as YAML#3779
VaguelySerious merged 1 commit into
vercel:mainfrom
SergioDiez:fix/skill-yaml-frontmatter-syntax

Conversation

@SergioDiez

Copy link
Copy Markdown
Contributor

Description

npx skills add vercel/workflow fails for every skill in the repo:

■ Nested mappings are not allowed in compact mappings at line 2, column 14:
│ description: Upgrades an app from Workflow SDK 4.x to 5.0. Use when bumping the…

The description in skills/migrating-workflow-v4-to-v5/SKILL.md is a plain YAML scalar that ends with `mode: 'client'`. The : inside it is parsed as a nested mapping, so the frontmatter is invalid. The skills CLI parses every SKILL.md, blocking all of 6 skills from being installed.

This PR turns the description into a folded block scalar (>-).

Fixes#3776.

How did you test your changes?

  • npx skills add <local clone> --list now enumerates all six skills; on main it aborts on this file.
  • Parsed the frontmatter with PyYAML: the description round-trips intact.

PR Checklist - Required to merge

  • 📦 pnpm changeset was run to create a changelog for this PR
    • Use the correct semver bump type: patch for bug fixes, minor for new features, major for breaking changes.
    • Use pnpm changeset --empty if you are changing documentation or workbench apps
  • 🔒 DCO sign-off passes (run git commit --signoff on your commits)
  • 📝 Ping @vercel/workflow in a comment once the PR is ready, and the above checklist is complete

@SergioDiez
SergioDiez requested a review from a team as a code ownerAugust 25, 2026 12:33
@changeset-bot

changeset-botBot commented Aug 25, 2026

Copy link
Copy Markdown

🦋 Changeset detected

Latest commit: e909e0c

The changes in this PR will be included in the next version bump.

This PR includes changesets to release 0 packages

When changesets are added to this PR, you'll see the packages that this PR includes changesets for and the associated semver types

Not sure what this means? Click here to learn what changesets are.

Click here if you're a maintainer who wants to add another changeset to this PR

@vercel

vercelBot commented Aug 25, 2026

Copy link
Copy Markdown
Contributor

@SergioDiez is attempting to deploy a commit to the Vercel Labs Team on Vercel.

A member of the Team first needs to authorize it.

…YAML
Signed-off-by: Sergio Diez <sergiodiez@users.noreply.github.com>
@SergioDiez
SergioDiezforce-pushed the fix/skill-yaml-frontmatter-syntax branch from bc1ec73 to e909e0cCompareAugust 25, 2026 12:44

@VaguelySeriousVaguelySerious left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ty

@VaguelySerious
VaguelySerious merged commit 66af295 into vercel:mainAug 25, 2026
5 of 23 checks passed
@SergioDiez
SergioDiez deleted the fix/skill-yaml-frontmatter-syntax branch August 25, 2026 20:23
@github-actions

Copy link
Copy Markdown
Contributor

No backport to stable for 66af295 (AI decision).

The only substantive change is to skills/migrating-workflow-v4-to-v5/SKILL.md, and skills/ is not maintained on the stable branch; the other file is an empty changeset (release plumbing). The skill itself describes migrating from v4 to v5, which is meaningless content for the maintenance line.

To override, re-run the Backport to stable workflow manually via workflow_dispatch and paste this commit SHA into the ref input:

66af29559073f7c5849d053c8c70c5fae3203369

VaguelySerious added a commit that referenced this pull request Aug 25, 2026
#3779 fixed the app migration skill, whose description ended with
`mode: 'client'`. The colon-space made the plain scalar parse as a nested
mapping, and the skills CLI dropped the file: `Found 5 skills`, and
`--skill migrating-workflow-v4-to-v5` answered `No matching skills
found`, which is the command whats-new.mdx tells readers to run.
The World skill's description has no colon-space today, so it parses.
It is also 590 characters of backticked identifiers, and any future
edit naming a field with its value reintroduces the break. Fold it the
same way now, while the value is known good. Verified with the yaml
package that the folded scalar is byte-identical, and with
`skills add . --skill migrating-world-v4-to-v5` that the CLI still
finds all six.
Signed-off-by: Peter Wielander <peter.wielander@vercel.com>
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

YAML frontmatter syntax error in SKILL.md — description field causes parser failure

2 participants

@SergioDiez@VaguelySerious