feat(tasks): install and apply skill bundle artifacts in the sandbox#2924
feat(tasks): install and apply skill bundle artifacts in the sandbox#2924tatoalo wants to merge 1 commit into
Conversation
|
Warning This pull request is not mergeable via GitHub because a downstack PR is open. Once all requirements are satisfied, merge this PR as a stack on Graphite.
This stack of pull requests is managed by Graphite. Learn more about stacking. |
|
React Doctor found no issues in the changed files. 🎉 Reviewed by React Doctor for commit |
|
259d373 to
e8dec75
Compare
dbe89f8 to
bcbc926
Compare
|
Reviews (2): Last reviewed commit: "feat(tasks): install and apply skill bun..." | Re-trigger Greptile |
| return text; | ||
| } | ||
|
|
||
| function isLocalSkillCommandChunk( |
There was a problem hiding this comment.
This feels kinda risky to me what if a the string is "hello please run /skill_name - thank you" could the tokens split the skill name?
There was a problem hiding this comment.
chunk is an ACP prompt content block, not model tokens, and the matcher is anchored to a slash command at the start of the trimmed block so that ^ example would not fly
It also can't reach this as a "skill" at all since localSkillName is only set when the leading text block parses as / and exactly equals an installed skill_bundle artifact's skill_name. The name is captured and compared by full equality so ther;s no tokenization, no prefix matches, and the skill name never feeds the regex

Problem
for cloud tasks, local skill invocations only sent the slash command text. User-local and repo-local skills were available in the local editor but not in the cloud sandbox
Changes
let's bundle uploadable local skills into zip artifacts with SHA-256 metadata and send them through the existing cloud artifact upload flow.
install
skill_bundleartifacts in the agent server before prompt delivery, inject the bundled skill instructions for the invoked turn, and suppress the raw slash command from the model-facing prompt so local skills behave like actual skills rather than unsupported commandsrefresh slash command metadata when a follow-up command is submitted, so newly created local skills can be selected and invoked without starting a brand-new task.
closes #2260