Desktop scheduled task ignores model selection (always uses Sonnet)

Resolved 💬 3 comments Opened Apr 1, 2026 by jaeeyoonpark Closed Apr 5, 2026

Bug Description

Desktop app scheduled tasks always run with Sonnet 4.6 regardless of the model selected in the Edit UI.

Steps to Reproduce

  1. Open Claude Desktop app -> Code tab -> Schedule panel
  2. Create or edit a scheduled task
  3. In the Edit form, select Opus 4.6 1M as the model
  4. Save
  5. Click "Run now" or wait for the scheduled run

Expected Behavior

The task should run with Opus 4.6 as selected in the UI.

Actual Behavior

The task always runs with Sonnet 4.6 (visible in the bottom-right of the session window).

Root Cause Investigation

The scheduled task config is stored at:

~/Library/Application Support/Claude/claude-code-sessions/{org-id}/{user-id}/scheduled-tasks.json

The JSON structure does not include a model field:

{
  "scheduledTasks": [
    {
      "id": "daily-paper-digest",
      "cronExpression": "30 7 * * 1-5",
      "enabled": true,
      "filePath": "~/.claude/scheduled-tasks/daily-paper-digest/SKILL.md",
      "createdAt": 1772856369081,
      "cwd": "/path/to/project",
      "useWorktree": false,
      "permissionMode": "acceptEdits",
      "approvedPermissions": [...]
    }
  ]
}
  • Manually adding "model": "claude-opus-4-6" to the JSON is overwritten on app restart (the field is stripped).
  • Adding model: claude-opus-4-6 to the SKILL.md frontmatter also has no effect (per the docs: "Schedule, folder, model, and enabled state are not in this file").
  • The global ~/.claude/settings.json has "model": "claude-opus-4-6" but this is also ignored for scheduled tasks.

Environment

  • Claude Desktop app (macOS, darwin 25.3.0)
  • Claude Code version: current as of 2026-04-02

View original on GitHub ↗

This issue has 3 comments on GitHub. Read the full discussion on GitHub ↗