[BUG] Custom skills fail with "Unknown skill" in Claude Code cloud sessions.

Open 💬 0 comments Opened Jul 11, 2026 by terence0815

Preflight Checklist

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

What's Wrong?

Account-level custom skills (uploaded via Settings > Skills) appear in the in-session skill search with enabled: true, source: custom, but invoking them fails with "Unknown skill: <name>". Anthropic-provisioned skills work fine in the same session. The same custom skills execute correctly in local Claude Code sessions on the same account. Reproduced with a minimal 3-line test skill, so it is not content-related. Example skill ID: skill_01EAeuiFZjbpb2TWxLEyRHrq. Environment: Claude Desktop app → Claude Code → cloud session on a GitHub repo.

What Should Happen?

Custom skills uploaded to my account via Settings > Skills should be executable in Claude Code cloud sessions (Desktop app / claude.ai/code working on a GitHub repo), just as they are in local Claude Code sessions. The documentation states: "Skills you enable on claude.ai are loaded into cloud sessions automatically." So invoking /skilltest (or any enabled custom skill) in a cloud session should load and execute the skill — the same way it already works locally and the same way Anthropic-provisioned skills (e.g. internal-comms, brand-guidelines) already work inside the same cloud session.

Error Messages/Logs

Skill execution failed
/skilltest
Unknown skill: skilltest
Same for my other custom skill:
/agent-company
Unknown skill: agent-company
Note the contradiction: immediately before the failed invocation, the in-session skill search returns the skill as registered and enabled:
json{"id":"skill_01EAeuiFZjbpb2TWxLEyRHrq","name":"agent-company","enabled":true,"creator_type":"user","partition_by":"account","source":"custom","content_scan":null,"user_invocable":null}
Checking the VM filesystem shows no custom skills were provisioned:
$ ls ~/.claude/skills/
session-start-hook

Steps to Reproduce

Create a minimal skill — a folder containing only a SKILL.md:
---
name: skilltest
description: A minimal diagnostic skill. Use whenever the user says "run skilltest" or asks to test whether custom skills execute correctly.
---

Skilltest

When invoked, reply with exactly: "SKILLTEST OK — custom skill executed successfully."

Zip it (SKILL.md at archive root) and upload via claude.ai / Desktop app: Settings > Skills > upload. The skill appears in the skill list and is enabled.
Open the Claude Desktop app > Claude Code, start a new cloud session on a GitHub repository (not a local folder).
Prompt: "run skilltest" (or invoke /skilltest).
Result: "Unknown skill: skilltest". Skill search inside the session finds it (enabled: true, source: custom), but execution fails and ~/.claude/skills/ in the VM does not contain it.
Control tests: (a) The identical skill executes correctly in a local Claude Code session on the same account. (b) Anthropic-provisioned skills (internal-comms, brand-guidelines) execute correctly inside the same cloud session. (c) Reproduced identically with a full-size custom skill, so it is independent of skill content or size.

Claude Model

Other

Is this a regression?

I don't know

Last Working Version

_No response_

Claude Code Version

2.1.207 (Claude Code)

Platform

Anthropic API

Operating System

macOS

Terminal/Shell

Terminal.app (macOS)

Additional Information

_No response_

View original on GitHub ↗