claude-code - 💡(How to fix) Fix [BUG] Enabled scheduled tasks no longer surface in available-skills list (Desktop 1.5354.0 / 1.5220.0) [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#54605Fetched 2026-04-30 06:41:04
View on GitHub
Comments
1
Participants
1
Timeline
7
Reactions
0
Author
Participants
Timeline (top)
labeled ×4closed ×1commented ×1cross-referenced ×1

After this morning's Desktop app auto-update, individual enabled scheduled tasks are no longer included in the available skills list injected at session start. The tasks themselves still execute on cron as expected — only the in-session discoverability/invokability is gone.

Root Cause

After this morning's Desktop app auto-update, individual enabled scheduled tasks are no longer included in the available skills list injected at session start. The tasks themselves still execute on cron as expected — only the in-session discoverability/invokability is gone.

Fix Action

Workaround

Junctioning each enabled task into ~/.claude/skills/:

$skills = "$env:USERPROFILE\.claude\skills"
$tasks  = "$env:USERPROFILE\.claude\scheduled-tasks"
foreach ($name in @("sf-fixer","sf-triage")) {
  New-Item -ItemType Junction -Path (Join-Path $skills $name) -Target (Join-Path $tasks $name)
}

Single source of truth — the SKILL.md still lives in scheduled-tasks/ and the MCP server still finds it. New sessions started after the junctions exist do see the tasks again. (Not yet verified end-to-end since this current session's skill list was locked at start time.)

Code Example

$skills = "$env:USERPROFILE\.claude\skills"
$tasks  = "$env:USERPROFILE\.claude\scheduled-tasks"
foreach ($name in @("sf-fixer","sf-triage")) {
  New-Item -ItemType Junction -Path (Join-Path $skills $name) -Target (Join-Path $tasks $name)
}
RAW_BUFFERClick to expand / collapse

Summary

After this morning's Desktop app auto-update, individual enabled scheduled tasks are no longer included in the available skills list injected at session start. The tasks themselves still execute on cron as expected — only the in-session discoverability/invokability is gone.

Environment

  • OS: Windows 11 Pro for Workstations 10.0.26200.8246
  • Claude Desktop app: app-1.5354.0 (installed 2026-04-29 10:19 local time)
  • Previous version on disk: app-1.5220.0 (installed 2026-04-29 00:58 local time)
  • Older version still on disk: app-1.4758.0, app-1.3109.0 — under those, scheduled tasks surfaced as skills correctly
  • claude --version (CLI in PATH): 2.1.72 (separate install, not used for this session)

What's Wrong

mcp__scheduled-tasks__list_scheduled_tasks returns 6 enabled tasks with valid SKILL.md files at C:\Users\hl4ag\.claude\scheduled-tasks\<id>\SKILL.md:

  • sf-fixer, sf-triage, sf-release-manager, sf-security-audit, sf-ai-auditor, sf-repo-health

All have correct frontmatter (name, description) and are firing on schedule (lastRunAt timestamps confirm cron is alive).

But none of them appear in the system-reminder skill list at session start. Only the meta skills schedule and anthropic-skills:schedule show up. Compare to behaviour before today's update, where each enabled task appeared as its own skill entry that the model could see and that Skill could invoke by name.

Expected

Enabled scheduled tasks (those with valid SKILL.md frontmatter under ~/.claude/scheduled-tasks/<id>/) should remain discoverable in the available-skills list, as they were prior to this version.

Steps to Reproduce

  1. Have one or more tasks created via the Desktop app's Scheduled Tasks UI (each becomes ~/.claude/scheduled-tasks/<id>/SKILL.md with frontmatter).
  2. Mark them enabled: true.
  3. Start a new Claude Code session and check the available-skills list.
  4. Observe: the per-task entries are missing; only the management skill (schedule) and the management MCP tools (mcp__scheduled-tasks__*) are present.

Likely Cause

Release notes for v2.1.121 mention --dangerously-skip-permissions no longer prompting for writes to .claude/skills/, .claude/agents/, .claude/commands/. Reads as a refactor that consolidated the user-skills loader to those three roots. .claude/scheduled-tasks/ appears to have been dropped from the skill-discovery scan (intentionally or not).

Workaround

Junctioning each enabled task into ~/.claude/skills/:

$skills = "$env:USERPROFILE\.claude\skills"
$tasks  = "$env:USERPROFILE\.claude\scheduled-tasks"
foreach ($name in @("sf-fixer","sf-triage")) {
  New-Item -ItemType Junction -Path (Join-Path $skills $name) -Target (Join-Path $tasks $name)
}

Single source of truth — the SKILL.md still lives in scheduled-tasks/ and the MCP server still finds it. New sessions started after the junctions exist do see the tasks again. (Not yet verified end-to-end since this current session's skill list was locked at start time.)

Suggested Fix

Restore .claude/scheduled-tasks/<id>/SKILL.md as a discovered skill source for enabled tasks (the enabled flag is already in the task index, so the loader can filter to only-enabled). If the consolidation is intentional, document it in the release notes and add an automatic migration that creates the junctions.

extent analysis

TL;DR

The most likely fix is to restore the .claude/scheduled-tasks/<id>/SKILL.md directory as a discovered skill source for enabled tasks or create junctions to .claude/skills/ to maintain discoverability.

Guidance

  • Verify that the SKILL.md files in .claude/scheduled-tasks/<id>/ have correct frontmatter and are enabled.
  • Check the release notes for any changes related to skill discovery and permissions.
  • Consider creating junctions to .claude/skills/ as a temporary workaround to restore discoverability.
  • Test the workaround by starting a new session and checking the available-skills list.

Example

The provided PowerShell script can be used to create junctions:

$skills = "$env:USERPROFILE\.claude\skills"
$tasks  = "$env:USERPROFILE\.claude\scheduled-tasks"
foreach ($name in @("sf-fixer","sf-triage")) {
  New-Item -ItemType Junction -Path (Join-Path $skills $name) -Target (Join-Path $tasks $name)
}

Notes

The issue seems to be related to a change in the skill discovery mechanism, possibly due to the consolidation of the user-skills loader. The workaround may not be a permanent solution and may require further changes to the application.

Recommendation

Apply the workaround by creating junctions to .claude/skills/ to restore discoverability of enabled scheduled tasks. This will allow the tasks to be visible in the available-skills list until a permanent fix is implemented.

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

claude-code - 💡(How to fix) Fix [BUG] Enabled scheduled tasks no longer surface in available-skills list (Desktop 1.5354.0 / 1.5220.0) [1 comments, 1 participants]