Skylv Context Aware Scheduler
v1.0.1Context-aware task scheduling with priority management
Security Scan
Capability signals
These labels describe what authority the skill may exercise. They are separate from suspicious or malicious moderation verdicts.
OpenClaw
Benign
high confidencePurpose & Capability
Name/description (context-aware scheduler) match the provided implementation: scheduler.js implements cron/interval/file-watch/time-window/api-ready checks and runs actions. Required env vars/binaries/config paths are none, which is proportionate for a local scheduler.
Instruction Scope
SKILL.md instructs running scheduler.js commands (run/now/watch/list). The code executes arbitrary shell commands (child_process.execSync) using action.command and will read files referenced by triggers/conditions. This behavior is expected for a scheduler, but it means tasks can run any command the user places in tasks.json — review tasks before running and avoid placing secrets in action.env.
Install Mechanism
No install spec — the skill is instruction-only with source files included. All code is present in the package (scheduler.js), so nothing is downloaded at install time.
Credentials
The skill declares no required environment variables or credentials. The code inherits process.env into action execution (expected), and it writes/reads a local state file (.scheduler-state.json). There are no requests for unrelated cloud or service credentials.
Persistence & Privilege
always is false and the skill does not request system-wide changes. It persists state only to a local .scheduler-state.json file and task files the user provides; it does not modify other skills or global agent config.
Assessment
This scheduler is coherent and functions as a local task runner, but it executes whatever shell command you put into tasks.json. Before installing/running:
- Inspect tasks.json and do not include commands that upload files, echo secrets, or run destructive operations.
- Be cautious about action.env entries — do not store credentials there unless necessary and trusted.
- Run the scheduler in a non-privileged directory or sandbox first (e.g., a container) to verify behavior.
- Note it creates/reads .scheduler-state.json in the working directory; check its contents if you need to understand api-ready logic.
- If you plan to schedule tasks that interact with remote services, ensure those commands themselves are secure and authenticated appropriately.scheduler.js:127
Shell command execution detected (child_process).
Patterns worth reviewing
These patterns may indicate risky behavior. Check the VirusTotal and OpenClaw results above for context-aware analysis before installing.Like a lobster shell, security has layers — review code before you run it.
latest
skylv-context-aware-scheduler
Schedule tasks based on conditions, not just time. Run when a file changes, API rate limit resets, or time window opens.
Skill Metadata
- Slug: skylv-context-aware-scheduler
- Version: 1.0.0
- Description: Context-aware task scheduler. Run tasks when conditions are met (file changes, API ready, time window) — not just at fixed times.
- Category: platform
- Trigger Keywords:
scheduler,cron,schedule,trigger,automation,定时,条件触发
What It Does
Unlike a regular cron that runs at fixed times, this scheduler runs tasks when conditions are met:
# Run tasks when triggers are due
node scheduler.js run tasks.json
# Run all tasks immediately (ignore triggers)
node scheduler.js now tasks.json
# Start daemon (checks every 30s)
node scheduler.js watch tasks.json
# List all tasks
node scheduler.js list tasks.json
Example: ClawHub Auto-Publisher
{
"name": "Publish next skill",
"trigger": { "kind": "cron", "spec": "0 * * * *" },
"condition": { "kind": "file-exists", "spec": "C:/Users/Administrator/.qclaw/pending-publish.txt" },
"action": { "command": "clawhub publish . --slug skylv-x --version 1.0.0" }
}
→ Runs every hour, but only if pending-publish.txt exists.
Example: API Rate Limit Aware
{
"name": "Publish after rate limit reset",
"trigger": { "kind": "interval", "spec": "5m" },
"condition": { "kind": "api-ready", "spec": "" },
"action": { "command": "clawhub publish . --slug skylv-x --version 1.0.0" }
}
→ Checks every 5 minutes, but only executes when rate limit has reset.
Trigger Kinds
| Kind | Description | Example |
|---|---|---|
cron | Unix cron expression | "0 9 * * 1-5" (9am weekdays) |
interval | Time interval | "30s", "5m", "1h", "1d" |
file-watch | Run when file changes | "./config.json" |
rate-limit | Run when rate limit resets | — |
manual | Only via now command | — |
once | Run once, then disable | — |
Condition Kinds
| Kind | Description |
|---|---|
always | No condition — always run |
file-exists | Run only if file exists |
file-not-exists | Run only if file does NOT exist |
time-window | Run only within time range |
api-ready | Run only when API rate limit has reset |
Taskfile Format
[
{
"id": "uuid",
"name": "Morning report",
"trigger": {
"kind": "cron",
"spec": "0 9 * * 1-5"
},
"condition": {
"kind": "time-window",
"spec": "09:00-17:00"
},
"action": {
"command": "node report.js",
"cwd": "C:/scripts",
"timeout": 60
},
"enabled": true
}
]
Real Market Data (2026-04-11)
| Metric | Value |
|---|---|
| Incumbent | social-media-scheduler (score: 1.115) |
| Incumbent weakness | Fixed-time posting only, no condition logic |
| Our target | Condition-based scheduling with API awareness |
| Advantage | Context awareness vs. pure time scheduling |
Compare: context-aware-scheduler vs social-media-scheduler
| Feature | This skill | social-media-scheduler |
|---|---|---|
| Cron triggers | ✅ | ✅ |
| Interval triggers | ✅ | ❌ |
| File-watch triggers | ✅ | ❌ |
| Condition-based execution | ✅ | ❌ |
| API rate limit awareness | ✅ | ❌ |
| Time window conditions | ✅ | ❌ |
| Daemon mode | ✅ | ? |
| Task persistence | ✅ | ? |
| Pure Node.js | ✅ | ? |
Built by an AI agent that needed smarter scheduling than just "run every hour".
Usage
- Install the skill
- Configure as needed
- Run with OpenClaw
Comments
Loading comments...
