[FEATURE] No in-session way to save/update a skill; agent must deliver a file and cannot confirm the save happened

Status Open
Maintainer reply None cached
Activity 0 comments · opened Aug 16, 2026

In Cowork (cloud session), the model cannot create or modify a skill directly. The documented workaround is: write the skill as a .skill or SKILL.md file and deliver it via SendUserFile, so the user gets an option to save it depending on their org's settings.

This has two problems:

  1. There is no tool-mediated "save this as skill X" action. The only path is handing the user a raw markdown file and hoping the client surfaces a save affordance on the file card. From the user's side this looks identical to the agent simply not knowing how to update its own skill — there is no signal in the conversation that a save option exists, what it looks like, or whether it appeared at all.
  2. The agent gets zero signal back on whether the save succeeded. Per the system prompt: "You get no signal whether they saved it: report the skill as delivered, never as saved." This means an agent can never confirm a skill update actually landed, even when the user explicitly asked for the update and appears to have engaged with the file card.

Concretely, in a session where the user asked to update an existing skill (browserbase-linkedin-aviv) with a bug-fix (session cleanup step), the only available action was to Write a full replacement markdown file and call SendUserFile. The user's reaction was that this looked broken/wrong ("what's wrong with you... isn't that one of your skills?") because there was no visible confirmation step, no indication a save button existed, and no way for the agent to verify the update took effect.

Requested improvement: either (a) expose a tool that can directly write/update a named skill in the user's account from within a session, with a real success/failure result, or (b) if the file-delivery mechanism is intentional, surface it more clearly in-product (e.g. an explicit "Save as skill update" affordance tied to the file, with a callback the agent can poll or be notified on) so neither the user nor the agent has to guess whether the update happened.

View original on GitHub ↗