[FEATURE] Skill management is fragmented and confusing
Preflight Checklist
- [x] I have searched existing requests and this feature hasn't been requested yet
- [x] This is a single feature request (not multiple features)
Problem Statement
Managing skills in Claude is currently a complete mess.
Two overlapping systems for the same job
It's confusing when to use Cowork scheduled tasks vs Claude Code routines:
- For an end user they're almost the same: a recurring task with a trigger.
- Scheduled tasks aren't nice to manage. Routines offer improvements (e.g. renaming).
- Now with routines, there are two separate places to create recurring tasks.
- Routines can't properly access Cowork skills.
Skill storage is fragmented across several locations
Skills can live in ~/.claude/skills/, ~/.claude/commands/, Cowork installed plugins, or inlined in routine prompts. None is reachable from all execution contexts (interactive chat, Cowork chat, local routine, remote routine).
The result: a routine asked to use a skill installed via claude plugin install refuses with "skill not in the available list". This forces full skill bodies to be inlined into every routine, killing the single-source-of-truth benefit of skills.
End-user impact
It's gotten so complex that it's not properly usable for end users in non-technical roles. I have friends in customer success and sales who've given up - the maintenance overhead of skill management has become too painful for the value it delivers to them.
Proposed Solution
- One source of truth for all skills, stored on Anthropic's servers and mirrored locally on the user's devices (like iCloud), reusable across every Claude session type - Chat, Cowork, local routine, remote routine
- One place to create recurring tasks, unifying Cowork scheduled tasks and Claude Code routines into a single management surface.
Alternative Solutions
Alternative Solutions / Workarounds tried
None of the workarounds I've tried fully solve this - each covers only one execution context:
- Local marketplace (
~/.claude/super-skills/registered viaclaude plugin marketplace add): works for local Claude Code chat, invisible to Cowork and routines. - Inlining the full skill body into each routine's Instructions field: works, but means maintaining the same skill in N+1 places. Drift is inevitable.
/create-cowork-plugin: closest to a "central" solution, but requires opening a Cowork session, manually packaging, and clicking install through the UI. There's no programmatic install API, and even after install it's unclear whether routines pick it up.- Custom bash scripts (
~/.claude/bin/sync-cowork-mirror.sh,sync-my-skills.sh,diff-cowork-mirror.sh) to mirror Cowork plugins and session-output drafts into a browsable local folder and detect drift between local and Cowork copies. Read-only — doesn't help routines. - Telling a local routine to read the SKILL.md from disk: the routine refuses, citing "I cannot load skills from arbitrary file paths."
The fact that I needed to build three custom shell scripts and still don't have a working single-source-of-truth setup is itself a sign the current model isn't working for end users.
Priority
High - Significant impact on productivity
Feature Category
File operations
Use Case Example
I built a skill that syncs my newly accepted LinkedIn connections into my Attio CRM and emails me a summary. I want it to:
- Run on a schedule (Mon–Fri, 11am and 6pm) — even when my laptop is off.
- Be runnable on demand in any Cowork chat ("hey Claude, run my LinkedIn sync now").
- Be editable from one place so I don't have to update three copies when I tweak the workflow.
What it took today:
- Authored the skill at
~/.claude/super-skills/plugins/gtm/skills/check-linkedin-accepted-requests-update-in-crm/SKILL.md. - Couldn't reference it from the routine — had to copy the entire skill body into the routine Instructions field.
- To make it work in Cowork chats and remote routines, I'd also need to package and install it as a Cowork plugin via
/create-cowork-plugin— a third copy. - Result: 3 copies of the same workflow. Edit one, the other two silently drift.
What it should take: write the skill once, tag it as "recurring on this schedule," done.
Additional Context
_No response_
This issue has 4 comments on GitHub. Read the full discussion on GitHub ↗