Skip to main content
Schedules run an agent on a recurring cron schedule with a fixed prompt — no person needs to start the run. Use them for recurring work like a daily standup summary, a weekly report, or an hourly data check. A schedule attaches to an existing agent and is made up of these fields:
FieldDescription
NameA display label for the schedule.
AgentThe agent that runs when the schedule fires.
PromptThe instruction sent to the agent on each run.
ScheduleA standard 5-field cron expression (e.g. 0 9 * * 1 = every Monday at 9 AM).
TimezoneAn IANA timezone (e.g. America/New_York) the cron is evaluated against.
Approval channelOptional, Slack-only — where the run’s approval requests go.
Shared templateOptional — lets others reuse this schedule as a starting point. See Templates.

Building a schedule

Like agents and skills, schedules are built conversationally — tell Major which agent to run and how often. It translates your cadence into a cron expression and timezone (e.g. “every weekday at 9am ET” → 0 9 * * 1-5 in America/New_York), asking for your timezone if it isn’t clear. The schedule goes live immediately and starts firing on the next matching time. Refine it the same way later (“change it to 8am”, “only on Mondays”), or disable it while you make changes.

Templates

Mark a schedule as a shared template to let other people in your organization reuse it. A shared template is visible org-wide and others can copy it as the starting point for their own schedule — the copy runs as them, with their own prompt and credentials, so a template never points runs or approvals at someone else’s account.

Managing schedules

  • Enable / disable — pause a schedule without deleting it, and resume it later.
  • Run now — trigger a run immediately, outside the schedule, to test it.
  • View runs — see the history of past runs and open any of them.
  • Share — grant other users edit access to a schedule (unless its agent uses per-user connectors — see below).
Scheduled runs execute as the user who created the schedule, so the agent uses that person’s credentials for any connectors that require them. For this reason, a schedule whose agent uses per-user connectors can’t be shared, and only its creator can run it. See Access & Permissions for the full rules.

Approvals

If an agent has tools set to Ask (see Tool Permissions), an unattended scheduled run has no one to prompt. You can configure a schedule to route those approval requests to a Slack channel, where a person can approve or deny the action. Connect Slack and select the channel when configuring the schedule.