Agent skill
schedule
Schedule a task to run later or on a recurring basis. Prefer the schedule_task tool; fallback to IPC only if needed.
Install this agent skill to your Project
npx add-skill https://github.com/rcarmo/piclaw/tree/main/runtime/skills/builtin/schedule
SKILL.md
Schedule a Task
Prefer the built-in schedule_task tool.
Preferred method (tool)
Use schedule_task directly with:
schedule_type:once|cron|intervalschedule_value:once: ISO timestamp (UTC recommended)cron: cron expressioninterval: milliseconds
task_kind:agentorshellprompt(agent) orcommand(shell)
Examples:
- One-time agent task at 09:00 UTC:
schedule_type=once,schedule_value=2026-03-09T09:00:00Z
- Daily shell task at 08:30 UTC:
schedule_type=cron,schedule_value=30 8 * * *
Fallback method (IPC file)
If tool access is unavailable, write an IPC JSON file to $PICLAW_DATA/ipc/tasks/:
cat > "$PICLAW_DATA/ipc/tasks/schedule_$(date +%s).json" <<EOF
{
"type": "schedule_task",
"chatJid": "$PICLAW_CHAT_JID",
"task_kind": "agent",
"prompt": "Describe what should happen when this task fires",
"schedule_type": "once",
"schedule_value": "2026-03-09T09:00:00Z"
}
EOF
Shell command variant:
cat > "$PICLAW_DATA/ipc/tasks/schedule_$(date +%s).json" <<EOF
{
"type": "schedule_task",
"chatJid": "$PICLAW_CHAT_JID",
"task_kind": "shell",
"command": "ls -la /workspace",
"cwd": ".",
"timeout_sec": 30,
"schedule_type": "interval",
"schedule_value": "3600000"
}
EOF
Verify it was scheduled
After scheduling, confirm with SQL introspection:
SELECT id, chat_jid, task_kind, schedule_type, schedule_value, status, next_run
FROM scheduled_tasks
ORDER BY created_at DESC
LIMIT 5;
For execution history:
SELECT task_id, run_at, duration_ms, status
FROM task_run_logs
ORDER BY id DESC
LIMIT 10;
Managing existing tasks (IPC)
- Pause:
{ "type": "pause_task", "taskId": "task-xxx" } - Resume:
{ "type": "resume_task", "taskId": "task-xxx" } - Cancel:
{ "type": "cancel_task", "taskId": "task-xxx" } - Update:
{ "type": "update_task", "taskId": "task-xxx", "prompt": "...", "model": "...", "schedule_value": "..." } - Cleanup:
{ "type": "cleanup_tasks", "chatJid": "web:default" }
Notes
- Shell tasks are pre-validated (no newlines, no destructive patterns, cwd inside
/workspace). - Use UTC for human-facing schedules unless asked otherwise.
- Always acknowledge the created schedule and include next run time if available.
Environment
PICLAW_DATA— piclaw data directory (containsipc/,sessions/)PICLAW_CHAT_JID— JID of the triggering chat
Recommended Agent Skills
Expand your agent's capabilities with these related and highly-rated skills.
autoresearch-create
Set up and run an autonomous experiment loop for any optimization target. Gathers what to optimize, then starts the loop immediately. Use when asked to "run autoresearch", "optimize X in a loop", "set up autoresearch for X", or "start experiments".
portainer-container-compare-chart
Compare two containers using native portainer tool data collection and render SVG/CSV outputs.
proxmox-guest-compare-chart
Compare two Proxmox guests using native proxmox tool data collection and render SVG/CSV outputs.
reload
Reinstall piclaw from workspace source and force-restart the running process. Use after making code changes to piclaw.
send-message
Send a message to the chat immediately without waiting for the current task to finish. Useful for acknowledging requests or sending progress updates while working.
playwright
Use Playwright for browser automation in this workspace. Install locally and run scripts as needed.
Didn't find tool you were looking for?