Install
openclaw skills install openclaw-scheduler-token-auditorAudit OpenClaw scheduler token usage for cron jobs, scheduled tasks, and heartbeat sessions. Use when the user wants to know which scheduled job is expensive, which cron is burning the most tokens, whether a cron or heartbeat run exceeds a token threshold or budget, why scheduler token usage is high, or to investigate unexpected token burn. Trigger explicitly on slash-style phrases like "/token_auditor" and "/schedule_auditor". Also match requests such as "audit scheduler tokens", "which cron uses the most tokens", "check whether this scheduled task exceeds 50000 tokens", "audit heartbeat token usage", "find expensive scheduled tasks", "查哪个 cron 最烧 token", or "检查这个定时任务有没有超 token".
openclaw skills install openclaw-scheduler-token-auditorAudit scheduler token usage conservatively. Separate what is measured, what is only bounded, and what remains unknown.
Use this skill to answer questions like:
This skill should trigger for requests such as:
/token_auditor/schedule_auditorAudit scheduler token usageFind expensive cron jobsCheck whether this cron exceeds 50000 tokensInvestigate unexpected token burn in scheduled tasksAudit heartbeat token usageWhich scheduled runs are the costly ones?If the user gives no threshold, use 50000 tokens per run.
usage.total_tokens is authoritative.
Do not replace it with hand-summed input + output values.usage.total_tokens, do not call it cheap or safe.Use exactly one label per audited target:
usage.total_tokensSeparate the audit by evidence type:
Do not blur them into one vague conclusion.
Preferred path:
cron(action="list")cron(action="runs", jobId=..., limit=...)Procedure:
usage.total_tokens from each run.CLI fallback only if needed:
openclaw cron list
openclaw cron runs --id <jobId> --limit 50
Interpretation:
usage.total_tokens -> Exactusage.total_tokens -> Inconclusiveinput + outputOnce a run is already verified as expensive, look for causes such as:
These are explanations for an exact finding, not substitutes for exact usage.
Treat heartbeat as bounded-risk analysis unless explicit usage data exists.
Useful checks:
sessions_list to find heartbeat sessionssession_status to inspect context accumulationsessions_history to inspect recent transcript size, repetition, and tool fan-outA Bounded conclusion is reasonable when the observed pattern shows:
Without explicit usage, phrase conclusions like:
No evidence of 50000+-per-run behaviorObserved structure appears lightweightExact per-run tokens are unavailableusage.total_tokensAllowed:
Not allowed:
usage.total_tokensAllowed:
InconclusiveNot allowed:
Allowed:
current evidence rules out obvious 80000+-per-run behaviorNot allowed:
Always state the threshold used.
Examples:
Threshold used: 50000 tokens per runThreshold used: 80000 tokens per runFor each target, report:
cron or heartbeatExact, Bounded, or InconclusiveExample phrasings:
Nightly report cron — Exact — 158784 tokens on the latest run — exceeds 50000.Main heartbeat — Bounded — observed structure rules out obvious 80000+-per-run behavior, but exact per-run tokens are unavailable.Daily digest cron — Inconclusive — run record lacks usage.total_tokens, so the threshold result is unknown.input + output may disagree with usage.total_tokensopenclaw help firstA run record contains usage.total_tokens: 158784, and the user gave no threshold.
Correct conclusion:
50000Exactexceeds 50000A run record contains usage.total_tokens: 47617, and the user asks for 80000.
Correct conclusion:
80000Exactdoes not exceed 80000A run shows input_tokens: 49680 and output_tokens: 9612, while the authoritative record says usage.total_tokens: 47617.
Correct conclusion:
4761759292A heartbeat session shows near-zero context accumulation and a repeating pattern of small checklist reads plus short acknowledgements.
Correct conclusion:
Boundedno evidence of <threshold>+-per-run behaviorexact per-run tokens unavailableA cron run exists but the record has no usage.total_tokens.
Correct conclusion:
Inconclusiveunknown