Problem
The Claude Agent Host harness does not offer migration hints or Migrate... entries for prompt/customization files that are otherwise migratable.
Also, the 'New Skill' commands in the chat customization dialog don't offer any locations
Reproduction
- Open a workspace containing workspace- and user-scoped prompt customizations in legacy/configured locations.
- Enable
chat.customizations.migrationHint and the customization migration settings.
- Create a Claude-backed chat, send
Hello, and open Customizations.
Actual: No migration hint appears and the Customizations overview has no Migrate... entries.
Expected: Claude should report the available workspace and user customization migrations in the hint, and the overview should expose matching Migrate... entries.
Root cause
CustomizationMigrationService.createFileMigration filters every candidate by a compatible source folder returned from the active harness. AgentCustomizationItemProvider.provideSourceFolders only returns writable DirectoryCustomization records in the active session.
Claude creates .claude/agents, .claude/skills, .claude/rules, and .claude/hooks DirectoryCustomization records only when discovery already found a customization of that type in the respective workspace/user bucket. Consequently, an empty but valid target directory (particularly user-scoped directories) is not advertised, so the migration service filters out legacy candidates.
Copilot discovery exposes configured writable roots independently of their current contents, allowing it to supply the migration destinations.
Recommendation
Have Claude discovery publish writable DirectoryCustomization target folders for every supported scope/type, even when a folder has no discovered children. These entries are used by provideSourceFolders as migration destinations; the customization UI renders children rather than the empty directory containers, so this should not surface phantom customization items.
This allows the migration service to retain the workspace/user candidates, making the chat hint and management overview agree.
Problem
The Claude Agent Host harness does not offer migration hints or Migrate... entries for prompt/customization files that are otherwise migratable.
Also, the 'New Skill' commands in the chat customization dialog don't offer any locations
Reproduction
chat.customizations.migrationHintand the customization migration settings.Hello, and open Customizations.Actual: No migration hint appears and the Customizations overview has no Migrate... entries.
Expected: Claude should report the available workspace and user customization migrations in the hint, and the overview should expose matching Migrate... entries.
Root cause
CustomizationMigrationService.createFileMigrationfilters every candidate by a compatible source folder returned from the active harness.AgentCustomizationItemProvider.provideSourceFoldersonly returns writableDirectoryCustomizationrecords in the active session.Claude creates
.claude/agents,.claude/skills,.claude/rules, and.claude/hooksDirectoryCustomizationrecords only when discovery already found a customization of that type in the respective workspace/user bucket. Consequently, an empty but valid target directory (particularly user-scoped directories) is not advertised, so the migration service filters out legacy candidates.Copilot discovery exposes configured writable roots independently of their current contents, allowing it to supply the migration destinations.
Recommendation
Have Claude discovery publish writable
DirectoryCustomizationtarget folders for every supported scope/type, even when a folder has no discovered children. These entries are used byprovideSourceFoldersas migration destinations; the customization UI renders children rather than the empty directory containers, so this should not surface phantom customization items.This allows the migration service to retain the workspace/user candidates, making the chat hint and management overview agree.