Skip to content

fix(server): show new skills in the picker without restarting - #3

Draft
dakdevs wants to merge 1 commit into
mainfrom
t3code/8db1ecd9
Draft

dakdevs wants to merge 1 commit into
mainfrom
t3code/8db1ecd9

Conversation

@dakdevs

@dakdevs dakdevs commented Sep 20, 2026 •

Copy link
Copy Markdown
Owner

Why

The $ picker keeps the first skill snapshot for a workspace until T3 restarts.

Evidence:

  • refreshWorkspaceSnapshot returns the cached list once a cwd snapshot exists, so a later composer open does not scan again.
  • Web and mobile only request that snapshot when the cwd is missing from workspaceSnapshots.
  • The 5-minute health probe updates machine-level skills, but the composer reads workspaceSnapshots[cwd].skills first.

Fix: Watch the skill files and folders Claude, Cursor, and Antigravity already look at. If a root is missing, watch the nearest existing parent so creating that folder still fires. Refresh when a skill file there changes, or when a directory on the path to a missing root appears. Keep the last complete catalog until that refresh succeeds.

Summary

Skills show up in $ and / when the files we already look for change. How skills are found does not change.

What

  • Claude, Cursor, and Antigravity expose the roots they already load via skillCatalogRoots.
  • Existing roots are watched recursively. Missing roots retarget when they appear.
  • A failed refresh leaves the previous complete catalog in place.

Who this helps

Anyone who adds or edits a skill while T3 is already open: installing a skill mid-session, an agent writing SKILL.md, or copying a folder into .claude/skills / .agents/skills.

Test plan

  • Open a thread so a workspace snapshot exists, add a skill folder under a provider root, open $, and confirm the new skill appears without restarting.
  • Edit that skill's SKILL.md and confirm the picker reflects the change without restarting.
  • Same path with /.
  • Repeat on mobile New task and an existing thread.

@github-actions github-actions Bot added vouch:trusted PR author is trusted by repo permissions or the VOUCHED list. size:L size:M and removed size:L size:M labels Sep 20, 2026
@github-actions

Copy link
Copy Markdown

Thread transfer impact

⚠️ The latest CI run did not produce a thread transfer result for d890c03.

This comment will update automatically after the next completed run.

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size:L vouch:trusted PR author is trusted by repo permissions or the VOUCHED list.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant