-
-
Notifications
You must be signed in to change notification settings - Fork 80.7k
[Feature]: cron add: support custom job IDs via --id #65636
Copy link
Copy link
Open
BingqingLyu/openclaw
#2444Labels
P2Normal backlog priority with limited blast radius.Normal backlog priority with limited blast radius.clawsweeper:linked-pr-openClawSweeper found an open linked pull request for this issue.ClawSweeper found an open linked pull request for this issue.clawsweeper:needs-product-decisionClawSweeper marked this issue as needing a product or behavior decision.ClawSweeper marked this issue as needing a product or behavior decision.clawsweeper:no-new-fix-prClawSweeper does not recommend queueing a new automated fix PR for this issue.ClawSweeper does not recommend queueing a new automated fix PR for this issue.clawsweeper:source-reproClawSweeper found a high-confidence source-level issue reproduction.ClawSweeper found a high-confidence source-level issue reproduction.enhancementNew feature or requestNew feature or requestimpact:otherThis issue has meaningful maintainer-visible impact outside the owned taxonomy.This issue has meaningful maintainer-visible impact outside the owned taxonomy.issue-rating: 🦞 diamond lobsterVery strong issue quality with high-confidence source-level or clear reproduction.Very strong issue quality with high-confidence source-level or clear reproduction.
Description
Metadata
Metadata
Assignees
Labels
P2Normal backlog priority with limited blast radius.Normal backlog priority with limited blast radius.clawsweeper:linked-pr-openClawSweeper found an open linked pull request for this issue.ClawSweeper found an open linked pull request for this issue.clawsweeper:needs-product-decisionClawSweeper marked this issue as needing a product or behavior decision.ClawSweeper marked this issue as needing a product or behavior decision.clawsweeper:no-new-fix-prClawSweeper does not recommend queueing a new automated fix PR for this issue.ClawSweeper does not recommend queueing a new automated fix PR for this issue.clawsweeper:source-reproClawSweeper found a high-confidence source-level issue reproduction.ClawSweeper found a high-confidence source-level issue reproduction.enhancementNew feature or requestNew feature or requestimpact:otherThis issue has meaningful maintainer-visible impact outside the owned taxonomy.This issue has meaningful maintainer-visible impact outside the owned taxonomy.issue-rating: 🦞 diamond lobsterVery strong issue quality with high-confidence source-level or clear reproduction.Very strong issue quality with high-confidence source-level or clear reproduction.
Type
Fields
Priority
None yet
Summary
Tested on v2026.4.11, Docker on Windows 11. Confirmed that string IDs written directly to jobs.json load correctly — so the store format already supports this.
Summary
openclaw cron addcurrently auto-generates a UUID for each job and does not provide a supported way to set a custom human-readable job ID.Current behavior
CronJobCreatedoes not expose anidfieldopenclaw cron add --helphas no--idflagCron jobs stored in
~/.openclaw/cron/jobs.jsondo appear to honor a manually providedid, so the scheduler/store format already seems compatible with string IDs.Problem
For users managing multiple cron jobs, UUIDs are hard to work with in:
openclaw cron listopenclaw cron edit <id>openclaw cron run <id>openclaw cron runs --id <id>Human-readable IDs would make cron jobs much easier to operate and automate.
Proposed behavior
Support an optional custom ID at creation time, for example:
bash
openclaw cron add --id daily-brief ...
Suggested behavior:
--idis optionalnamefield separately fromidExample use cases
bash
openclaw cron add --id daily-brief --name "Daily Brief" ...
openclaw cron edit daily-brief --no-deliver
openclaw cron run daily-brief
openclaw cron runs --id daily-brief
Current workaround
Right now the only workaround seems to be editing
~/.openclaw/cron/jobs.jsondirectly before startup and supplying a readableidthere.That works, but it feels like an internal/unsupported path rather than an intended interface.
Why this would help
This would improve:
Problem to solve
CLI ergonomics
Proposed solution
Support an optional custom ID at creation time, for example:
bash
openclaw cron add --id daily-brief ...
Suggested behavior:
--idis optionalnamefield separately fromidExample use cases
bash
openclaw cron add --id daily-brief --name "Daily Brief" ...
openclaw cron edit daily-brief --no-deliver
openclaw cron run daily-brief
openclaw cron runs --id daily-brief
Current workaround
Alternatives considered
Right now the only workaround seems to be editing
~/.openclaw/cron/jobs.jsondirectly before startup and supplying a readableidthere.That works, but it feels like an internal/unsupported path rather than an intended interface.
Why this would help
Impact
Anyone managing more than a handful of cron jobs. UUID-based IDs make routine operations like
cron edit,cron run, andcron runs --idunnecessarily painful since you have to look up the ID every time instead of just typing a meaningful name.Evidence/examples
No response
Additional information
No response