claude-code - 💡(How to fix) Fix [BUG] CRITICAL: P0 .skill file "Save and Replace" silently fails. Claude Cowork packages the skill from the host-mounted path (which had the OLD files), not from the VM working copy where the edits actually lived causes cascading scheduled task failures. [1 comments, 1 participants]

Official PRs (…)
ON THIS PAGE

Recommended Tools

×6

Utilities matched from this issue’s tags and category — try them while you read without losing context.

GitHub issue graph ai analysis

Paste a GitHub issue URL. We fetch that issue, discover linked issues from bodies/comments/timeline, collect linked pull requests, and produce a structured English report.

The report is written in English Markdown for sharing and archival.

Helpful · Quick feedback

Loading…
GitHub stats
anthropics/claude-code#46844Fetched 2026-04-12 13:31:34
View on GitHub
Comments
1
Participants
1
Timeline
5
Reactions
0
Timeline (top)
labeled ×4commented ×1

The .skill file "Save and Replace" installer does not overwrite existing skill files. It silently succeeds (no error shown to user) but leaves the old skill files untouched on disk. This means every skill edit made through the .skill installer is silently dropped.

This has caused weeks of cascading failures across 10+ scheduled tasks that depend on updated skill definitions, with the user unable to determine why their skill edits were not taking effect.

Error Message

The .skill file "Save and Replace" installer does not overwrite existing skill files. It silently succeeds (no error shown to user) but leaves the old skill files untouched on disk. This means every skill edit made through the .skill installer is silently dropped.

  • Apr 10 (yesterday): Error
  • Apr 9: Error
  • Apr 8: Error
  • Apr 6: Error + Skipped
  • Apr 5: Error
  • Apr 4: Error
  1. Observe: UI shows success. No error.
  • The install dialog appears to succeed (no error message)
  1. Silently catching an error without surfacing it to the user
  2. Silent data loss — No error, no warning. User believes edits are saved.

Error Messages/Logs

The .skill file "Save and Replace" installer does not overwrite existing skill files. It silently succeeds (no error shown to user) but leaves the old skill files untouched on disk. This means every skill edit made through the .skill installer is silently dropped.

  • Apr 10 (yesterday): Error
  • Apr 9: Error
  • Apr 8: Error
  • Apr 6: Error + Skipped
  • Apr 5: Error
  • Apr 4: Error
  1. Observe: UI shows success. No error.
  • The install dialog appears to succeed (no error message)
  1. Silently catching an error without surfacing it to the user
  2. Silent data loss — No error, no warning. User believes edits are saved. Silent data loss — No error, no warning. User believes edits are saved.

Root Cause

Root Cause Hypothesis

Fix Action

Workaround

Mount the actual Cowork skills directory via request_cowork_directory and write files directly:

/Users/spider/Library/Application Support/Claude/local-agent-mode-sessions/skills-plugin/f7bc28d7-29ae-4afb-9416-fd568a5d42e1/b8c94e10-2109-48cc-b4a3-9fe7293ba06a/skills/

This is fragile (UUID paths may change) and requires the user to know the internal directory structure.

Code Example

Archive:  wiki-curator.skill
  Length      Date    Time    Name
---------  ---------- -----   ----
    22471  2026-04-11 22:12   wiki-curator/SKILL.md        <-- 549 lines, has new sections
     2771  2026-04-11 22:12   wiki-curator/references/wiki-structure.md
    10879  2026-04-11 22:12   wiki-curator/scripts/detect_changes.py
    14086  2026-04-11 22:12   wiki-curator/scripts/generate_sitemap.py

---

grep -n "spidernic\|Autonomous\|pre-approved" ~/.claude/skills/wiki-curator/SKILL.md
# (no output — new content is missing)

---

/Users/spider/Library/Application Support/Claude/local-agent-mode-sessions/skills-plugin/f7bc28d7-29ae-4afb-9416-fd568a5d42e1/b8c94e10-2109-48cc-b4a3-9fe7293ba06a/skills/

---

/Users/spider/Library/Application Support/Claude/local-agent-mode-sessions/skills-plugin/f7bc28d7-29ae-4afb-9416-fd568a5d42e1/b8c94e10-2109-48cc-b4a3-9fe7293ba06a/skills/

---



---

Archive:  wiki-curator.skill
  Length      Date    Time    Name
---------  ---------- -----   ----
    22471  2026-04-11 22:12   wiki-curator/SKILL.md        <-- 549 lines, has new sections
     2771  2026-04-11 22:12   wiki-curator/references/wiki-structure.md
    10879  2026-04-11 22:12   wiki-curator/scripts/detect_changes.py
    14086  2026-04-11 22:12   wiki-curator/scripts/generate_sitemap.py

---

grep -n "spidernic\|Autonomous\|pre-approved" ~/.claude/skills/wiki-curator/SKILL.md
# (no output — new content is missing)

---

/Users/spider/Library/Application Support/Claude/local-agent-mode-sessions/skills-plugin/f7bc28d7-29ae-4afb-9416-fd568a5d42e1/b8c94e10-2109-48cc-b4a3-9fe7293ba06a/skills/

---

/Users/spider/Library/Application Support/Claude/local-agent-mode-sessions/skills-plugin/f7bc28d7-29ae-4afb-9416-fd568a5d42e1/b8c94e10-2109-48cc-b4a3-9fe7293ba06a/skills/
RAW_BUFFERClick to expand / collapse

Preflight Checklist

  • I have searched existing issues and this hasn't been reported yet
  • This is a single bug report (please file separate reports for different bugs)
  • I am using the latest version of Claude Code

What's Wrong?

[BUG] CRITICAL: P0 .skill file "Save and Replace" silently fails. Claude Cowork packages the skill from the host-mounted path (which had the OLD files), not from the VM working copy where the edits actually lived causes cascading scheduled task failures Severity: P0 / Critical — Silent data loss affecting all skill edits.

BAD BAD BAD

Severity: P0 / Critical — Silent data loss affecting all skill edits

Environment

  • OS: macOS (Apple Silicon)
  • App: Claude Desktop (Cowork mode), Claude Code 2.1.92
  • Date: 2026-04-11
  • User: Nicolas Cravino

Summary

The .skill file "Save and Replace" installer does not overwrite existing skill files. It silently succeeds (no error shown to user) but leaves the old skill files untouched on disk. This means every skill edit made through the .skill installer is silently dropped.

This has caused weeks of cascading failures across 10+ scheduled tasks that depend on updated skill definitions, with the user unable to determine why their skill edits were not taking effect.

Impact

The user has 11 scheduled tasks running daily/weekly newsletter pipelines (Efinew daily/weekly, SAP newsletter, Pascal newsletter daily/weekly, TAB newsletter, etc.). Over the past 2+ weeks, the user has made multiple rounds of skill edits to fix bugs and add features to these skills. Each time:

  1. User edits the skill in a Cowork session
  2. User packages the skill as a .skill file
  3. User installs via "Save and Replace" — appears to succeed
  4. Scheduled task runs with the old, broken skill definition
  5. Task fails with errors
  6. User re-edits, re-packages, re-installs — same silent failure

Observed failure history from just one task (Efinew daily):

  • Apr 10 (yesterday): Error
  • Apr 9: Error
  • Apr 8: Error
  • Apr 7: Skipped
  • Apr 6: Error + Skipped
  • Apr 5: Error
  • Apr 4: Error
  • Apr 3–1: Errors continue

This pattern repeats across all 10+ scheduled tasks. The user spent weeks debugging skill logic, unaware that the real problem was that edits were never being persisted.

Steps to Reproduce

  1. Have an existing skill installed in Cowork (e.g., wiki-curator)
  2. Edit the skill's SKILL.md in a Cowork session (add new sections, change content)
  3. Package as skillname.skill (zip archive with skillname/SKILL.md inside)
  4. Open the .skill file in Claude Desktop
  5. Click "Save and Replace" when prompted
  6. Observe: UI shows success. No error.
  7. Open a new Cowork session and read the skill — old version is still there

Expected Behavior

"Save and Replace" should overwrite all files in the installed skill directory with the contents of the .skill package.

Actual Behavior

  • The install dialog appears to succeed (no error message)
  • Files on disk are unchanged — the old SKILL.md remains
  • The Cowork VM mounts the old, unmodified skill files
  • Scheduled tasks execute with the old skill definition
  • User has no indication that the install failed

Evidence

Inside the .skill package (correct, updated content):

Archive:  wiki-curator.skill
  Length      Date    Time    Name
---------  ---------- -----   ----
    22471  2026-04-11 22:12   wiki-curator/SKILL.md        <-- 549 lines, has new sections
     2771  2026-04-11 22:12   wiki-curator/references/wiki-structure.md
    10879  2026-04-11 22:12   wiki-curator/scripts/detect_changes.py
    14086  2026-04-11 22:12   wiki-curator/scripts/generate_sitemap.py

Installed on disk after "Save and Replace" — unchanged:

grep -n "spidernic\|Autonomous\|pre-approved" ~/.claude/skills/wiki-curator/SKILL.md
# (no output — new content is missing)

Actual Cowork skills directory:

/Users/spider/Library/Application Support/Claude/local-agent-mode-sessions/skills-plugin/f7bc28d7-29ae-4afb-9416-fd568a5d42e1/b8c94e10-2109-48cc-b4a3-9fe7293ba06a/skills/

Note: this is NOT ~/.claude/skills/ — the installer may be writing to the wrong location, or not writing at all.

Root Cause Hypothesis

The installer may be:

  1. Writing to ~/.claude/skills/ (CLI location) instead of the Cowork skills directory
  2. Not overwriting due to a file permission or directory-exists check
  3. Silently catching an error without surfacing it to the user

Workaround

Mount the actual Cowork skills directory via request_cowork_directory and write files directly:

/Users/spider/Library/Application Support/Claude/local-agent-mode-sessions/skills-plugin/f7bc28d7-29ae-4afb-9416-fd568a5d42e1/b8c94e10-2109-48cc-b4a3-9fe7293ba06a/skills/

This is fragile (UUID paths may change) and requires the user to know the internal directory structure.

Third Impact Vector: Corrupted .skill Deliverables to Customers

Because the installed skill files on the host are never updated, when a Cowork session packages a .skill file for distribution, it reads from the mounted host path (which contains the old, unedited files) rather than the VM's working copy where edits were actually made. This means:

  1. User edits a skill in the VM (changes are correct in the VM's working directory)
  2. User asks to package and export a .skill file
  3. The packaging step reads from the host-mounted skill directory — which still has the old version
  4. The exported .skill file contains stale, pre-edit content
  5. User delivers this to customers believing it contains their edits
  6. Customers receive broken/outdated skills

This is a supply chain integrity issue — the user has unknowingly distributed incorrect skill packages to paying customers over multiple weeks.

Why This is P0

  1. Silent data loss — No error, no warning. User believes edits are saved.
  2. Cascading impact — Every scheduled task that depends on the edited skill breaks.
  3. Weeks of user time wasted — Debugging skill logic when the real problem is the installer.
  4. No discoverability — Only discovered by accident when grep showed missing content.
  5. Core workflow broken — Editing skills is a fundamental Cowork operation. If "Save and Replace" doesn't work, the entire skill iteration loop is broken.
  6. Customer-facing impact — Exported .skill files contain stale content, meaning customers receive broken deliverables. This is a supply chain integrity failure.

Related Issues

  • #26172 — Skills not loading to Claude Cowork on Mac
  • #26254 — SKILL.md files not mounted in container
  • #26998 — Skills not saving/loading on Windows

Additional Context

The third screenshot shows that today's run (Apr 11 at 3:09 AM) is STILL prompting for permission to run commands — despite the skill being edited to include an "Autonomous operation" section that pre-approves all access. This confirms the edit was never installed.

What Should Happen?

Claude Cowork MUST package the skill from rom the VM working copy where the edits actually lived, AND NOT FROM the host-mounted path (which had the OLD files) !!

Error Messages/Logs

Steps to Reproduce

[BUG] CRITICAL: .skill file "Save and Replace" silently fails — causes cascading scheduled task failures

Severity: P0 / Critical — Silent data loss affecting all skill edits

Environment

  • OS: macOS (Apple Silicon)
  • App: Claude Desktop (Cowork mode), Claude Code 2.1.92
  • Date: 2026-04-11
  • User: Nicolas Cravino

Summary

The .skill file "Save and Replace" installer does not overwrite existing skill files. It silently succeeds (no error shown to user) but leaves the old skill files untouched on disk. This means every skill edit made through the .skill installer is silently dropped.

This has caused weeks of cascading failures across 10+ scheduled tasks that depend on updated skill definitions, with the user unable to determine why their skill edits were not taking effect.

Impact

The user has 11 scheduled tasks running daily/weekly newsletter pipelines (Efinew daily/weekly, SAP newsletter, Pascal newsletter daily/weekly, TAB newsletter, etc.). Over the past 2+ weeks, the user has made multiple rounds of skill edits to fix bugs and add features to these skills. Each time:

  1. User edits the skill in a Cowork session
  2. User packages the skill as a .skill file
  3. User installs via "Save and Replace" — appears to succeed
  4. Scheduled task runs with the old, broken skill definition
  5. Task fails with errors
  6. User re-edits, re-packages, re-installs — same silent failure

Observed failure history from just one task (Efinew daily):

  • Apr 10 (yesterday): Error
  • Apr 9: Error
  • Apr 8: Error
  • Apr 7: Skipped
  • Apr 6: Error + Skipped
  • Apr 5: Error
  • Apr 4: Error
  • Apr 3–1: Errors continue

This pattern repeats across all 10+ scheduled tasks. The user spent weeks debugging skill logic, unaware that the real problem was that edits were never being persisted.

Steps to Reproduce

  1. Have an existing skill installed in Cowork (e.g., wiki-curator)
  2. Edit the skill's SKILL.md in a Cowork session (add new sections, change content)
  3. Package as skillname.skill (zip archive with skillname/SKILL.md inside)
  4. Open the .skill file in Claude Desktop
  5. Click "Save and Replace" when prompted
  6. Observe: UI shows success. No error.
  7. Open a new Cowork session and read the skill — old version is still there

Expected Behavior

"Save and Replace" should overwrite all files in the installed skill directory with the contents of the .skill package.

Actual Behavior

  • The install dialog appears to succeed (no error message)
  • Files on disk are unchanged — the old SKILL.md remains
  • The Cowork VM mounts the old, unmodified skill files
  • Scheduled tasks execute with the old skill definition
  • User has no indication that the install failed

Evidence

Inside the .skill package (correct, updated content):

Archive:  wiki-curator.skill
  Length      Date    Time    Name
---------  ---------- -----   ----
    22471  2026-04-11 22:12   wiki-curator/SKILL.md        <-- 549 lines, has new sections
     2771  2026-04-11 22:12   wiki-curator/references/wiki-structure.md
    10879  2026-04-11 22:12   wiki-curator/scripts/detect_changes.py
    14086  2026-04-11 22:12   wiki-curator/scripts/generate_sitemap.py

Installed on disk after "Save and Replace" — unchanged:

grep -n "spidernic\|Autonomous\|pre-approved" ~/.claude/skills/wiki-curator/SKILL.md
# (no output — new content is missing)

Actual Cowork skills directory:

/Users/spider/Library/Application Support/Claude/local-agent-mode-sessions/skills-plugin/f7bc28d7-29ae-4afb-9416-fd568a5d42e1/b8c94e10-2109-48cc-b4a3-9fe7293ba06a/skills/

Note: this is NOT ~/.claude/skills/ — the installer may be writing to the wrong location, or not writing at all.

Root Cause Hypothesis

The installer may be:

  1. Writing to ~/.claude/skills/ (CLI location) instead of the Cowork skills directory
  2. Not overwriting due to a file permission or directory-exists check
  3. Silently catching an error without surfacing it to the user

Workaround

Mount the actual Cowork skills directory via request_cowork_directory and write files directly:

/Users/spider/Library/Application Support/Claude/local-agent-mode-sessions/skills-plugin/f7bc28d7-29ae-4afb-9416-fd568a5d42e1/b8c94e10-2109-48cc-b4a3-9fe7293ba06a/skills/

This is fragile (UUID paths may change) and requires the user to know the internal directory structure.

Third Impact Vector: Corrupted .skill Deliverables to Customers

Because the installed skill files on the host are never updated, when a Cowork session packages a .skill file for distribution, it reads from the mounted host path (which contains the old, unedited files) rather than the VM's working copy where edits were actually made. This means:

  1. User edits a skill in the VM (changes are correct in the VM's working directory)
  2. User asks to package and export a .skill file
  3. The packaging step reads from the host-mounted skill directory — which still has the old version
  4. The exported .skill file contains stale, pre-edit content
  5. User delivers this to customers believing it contains their edits
  6. Customers receive broken/outdated skills

This is a supply chain integrity issue — the user has unknowingly distributed incorrect skill packages to paying customers over multiple weeks.

Why This is P0

  1. Silent data loss — No error, no warning. User believes edits are saved.
  2. Cascading impact — Every scheduled task that depends on the edited skill breaks.
  3. Weeks of user time wasted — Debugging skill logic when the real problem is the installer.
  4. No discoverability — Only discovered by accident when grep showed missing content.
  5. Core workflow broken — Editing skills is a fundamental Cowork operation. If "Save and Replace" doesn't work, the entire skill iteration loop is broken.
  6. Customer-facing impact — Exported .skill files contain stale content, meaning customers receive broken deliverables. This is a supply chain integrity failure.

Related Issues

  • #26172 — Skills not loading to Claude Cowork on Mac
  • #26254 — SKILL.md files not mounted in container
  • #26998 — Skills not saving/loading on Windows

Additional Context

The third screenshot shows that today's run (Apr 11 at 3:09 AM) is STILL prompting for permission to run commands — despite the skill being edited to include an "Autonomous operation" section that pre-approves all access. This confirms the edit was never installed.

Claude Model

Opus

Is this a regression?

No, this never worked

Last Working Version

No response

Claude Code Version

Code 2.1.92. (The Cowork VM doesn't expose a separate Cowork version number — it runs on Claude Code 2.1.92 under the hood, with CLAUDE_CODE_ENTRYPOINT=local-agent. The Claude Desktop app version would be visible from the macOS app menu (Claude → About Claude). For the bug report, I'd reference it as Claude Desktop (Cowork mode), powered by Claude Code 2.1.92.)

Platform

Anthropic API

Operating System

macOS

Terminal/Shell

Other

Additional Information

Why This is P0

Silent data loss — No error, no warning. User believes edits are saved. Cascading impact — Every scheduled task that depends on the edited skill breaks. Weeks of user time wasted — Debugging skill logic when the real problem is the installer. No discoverability — Only discovered by accident when grep showed missing content. Core workflow broken — Editing skills is a fundamental Cowork operation. If "Save and Replace" doesn't work, the entire skill iteration loop is broken. Customer-facing impact — Exported .skill files contain stale content, meaning customers receive broken deliverables. This is a supply chain integrity failure.

<img width="942" height="860" alt="Image" src="https://github.com/user-attachments/assets/78da285e-aca8-4a67-9fd8-34245ca4f6e8" /> <img width="1136" height="924" alt="Image" src="https://github.com/user-attachments/assets/8a760b16-b16c-4f7b-903a-afd42a4f5114" /> <img width="2256" height="692" alt="Image" src="https://github.com/user-attachments/assets/0c88fd89-3792-442d-a2a4-1f7b119ed4ee" />

extent analysis

TL;DR

The .skill file "Save and Replace" installer silently fails to overwrite existing skill files, causing cascading scheduled task failures and silent data loss, likely due to writing to the wrong location or not overwriting due to file permission issues.

Guidance

  1. Verify the installer's target directory: Check if the installer is writing to the correct Cowork skills directory instead of the CLI location ~/.claude/skills/.
  2. Check file permissions: Ensure that the installer has the necessary permissions to overwrite files in the target directory.
  3. Enable error logging: Modify the installer to log any errors that occur during the installation process to help diagnose the issue.
  4. Use the workaround: Mount the actual Cowork skills directory via request_cowork_directory and write files directly to this location as a temporary solution.
  5. Review related issues: Investigate related issues (#26172, #26254, #26998) to see if they are connected to this problem.

Example

No code example is provided as the issue is more related to the installer's behavior and configuration rather than a specific code snippet.

Notes

The root cause of the issue is not explicitly stated, but it is likely related to the installer's configuration or file system permissions. The workaround provided may help mitigate the issue, but a more permanent solution would require identifying and addressing the underlying cause.

Recommendation

Apply the workaround by mounting the actual Cowork skills directory via request_cowork_directory and writing files directly to this location. This will help ensure that the installer overwrites the correct files and reduces the risk of silent data loss.

Vote matrix · Quick signals

Works
Did the solution work? Tap to confirm.
Easy Fix
Was it a quick fix?
Time Saver
Did it save you time?
Blocking
Was it severely blocking?
Common Issue
Are others likely hitting this too?
Flaky / Intermittent
Is it intermittent?
Verified / Reproducible
Can you reproduce it reliably?
Loading…

Still need to ship something?

×6

Another batch ranked right after the header list — different links, same matching logic.

Back to top recommendations

TRENDING