Skip to content

Sync complete skill directories to remote agent hosts - #333827

Merged
Paul (pwang347) merged 6 commits into
mainfrom
fix/skill-sync-references
Sep 1, 2026
Merged

Paul (pwang347) merged 6 commits into
mainfrom
fix/skill-sync-references

Conversation

@pwang347

@pwang347 Paul (pwang347) commented Sep 1, 2026 •

Copy link
Copy Markdown
Member

Summary

  • recursively copy skill directories into the synthetic plugin used for agent-host synchronization
  • preserve relative resource paths and provenance while excluding .git, node_modules, and nested symlinks
  • preserve explicitly discovered SKILL.md entry points, including symlinked entry points that worked before this change
  • bound filesystem metadata and content operations, and use stable path/mtime/size metadata to avoid rereading unchanged files while detecting additions, removals, and normal updates
  • tolerate unreadable nested resources without dropping the complete skill bundle
  • add regression coverage for nested references, scripts, binary assets, exclusions, symlinks, concurrency, cache invalidation, and resource provenance

Fixes #333259

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot AI balanced review requested due to automatic review settings September 1, 2026 17:52

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Copilot review overview

Review tier: Balanced
Findings: 1 High severity · 2 Medium severity

New issues introduced by this change (3)
Severity Finding
High severity src/​vs/​workbench/​contrib/​chat/​browser/​agentSessions/​agentHost/​syncedCustomizationBundler.ts — This containment check is only lexical, so a path such as references/notes.md can still be a…
Medium severity src/​vs/​workbench/​contrib/​chat/​browser/​agentSessions/​agentHost/​syncedCustomizationBundler.ts — Using UTF-8 text as the nonce input loses information for linked binary files. For example, buffers…
Medium severity src/​vs/​workbench/​contrib/​chat/​browser/​agentSessions/​agentHost/​syncedCustomizationBundler.ts — The default rethrow means an unrecognized provider/I/O read failure (FILE_OTHER_ERROR) aborts the…
What changed in this PR

Adds remote syncing for files linked from SKILL.md.

Changes:

  • Parses inline and reference-style relative Markdown links.
  • Bundles linked files with provenance and nonce invalidation.
  • Adds regression coverage for supported and invalid targets.
File Description
syncedCustomizationBundler.ts Resolves and bundles linked skill files.
syncedCustomizationBundler.test.ts Tests link handling and updates.

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Copilot-Session: d60c8636-9aaa-42ee-b94f-e7daba0c32aa
@pwang347 Paul (pwang347) changed the title Sync linked skill files to remote agent hosts Sync complete skill directories to remote agent hosts Sep 1, 2026
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Copilot-Session: d60c8636-9aaa-42ee-b94f-e7daba0c32aa
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Copilot-Session: d60c8636-9aaa-42ee-b94f-e7daba0c32aa
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 54febce8-3c95-4100-bf37-0e38cca467d1
@pwang347
Paul (pwang347) marked this pull request as ready for review September 1, 2026 21:29
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 54febce8-3c95-4100-bf37-0e38cca467d1
@pwang347
Paul (pwang347) enabled auto-merge (squash) September 1, 2026 22:00
Sign up for free to 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.

Remote agent-host sync drops a skill's sibling references/ files, breaking Markdown links from SKILL.md

3 participants