Skip to content
Skills Library
Personal productivity · Planning

schedule

/schedule

Schedule time-triggered reminders and deferred verb dispatches, review upcoming events with agenda, and remove pending entries with cancel. Use whenever you want to remind yourself at a future time, automate a verb to run later, check what is on the calendar, or cancel a scheduled item.

Repository
khive ↗
Licence
Apache-2.0
Last repository change
27.10.2026

Assessment and security

84/ 100Class: good
Format9 / 25
Frontmatter with name and description, valid name, description up to 1,024 characters, name matching the folder.
Discoverability25 / 25
Description explains when to use the skill, has a reasonable length and uses third person.
Content35 / 35
At least 150 words and at most 500 lines, headings, step lists, examples or code.
Hygiene15 / 15
No placeholders such as TODO, no Windows paths, with a licence.
Riskno signals detected in the scan
Files in this package
1
Scripts
0
HTML comments
0
URLs in SKILL.md
0
Deprecation

No signals detected. Repository changed on 27.10.2026, without references to retired models or APIs.

Licence

Apache-2.0, otwarta: można używać i zmieniać, z zachowaniem licencji i informacji o zmianach.

What it does and when to use it

Schedule time-triggered reminders and deferred verb dispatches, review upcoming events with agenda, and remove pending entries with cancel. Use whenever you want to remind yourself at a future time, automate a verb to run later, check what is on the calendar, or cancel a scheduled item.

Original author description

Schedule time-triggered reminders and deferred verb dispatches, review upcoming events with agenda, and remove pending entries with cancel. Use whenever you want to remind yourself at a future time, automate a verb to run later, check what is on the calendar, or cancel a scheduled item.

How it works

  1. The pattern
  2. Anti-patterns
Original SKILL.md headings · 82 lines, 435 words
SKILL.md preview
---
description: Schedule time-triggered reminders and deferred verb dispatches, review upcoming events with agenda, and remove pending entries with cancel. Use whenever you want to remind yourself at a future time, automate a verb to run later, check what is on the calendar, or cancel a scheduled item.
---

# Schedule time-triggered reminders and actions

khive schedule is four verbs: `schedule.remind`, `schedule.schedule`, `schedule.agenda`, and
`schedule.cancel`. The distinction worth internalizing is `remind` vs `schedule`: remind stores
a human-readable prompt ("tell me at time T"), schedule stores a DSL verb string to dispatch
("run this verb at time T"). Per-verb param detail is one call away:
`request(ops="schedule.remind(help=true)")`.

## The pattern

### 1. Remind: tell me at time T

Use `remind` when you want the runtime to surface a text note at a future moment.

```
request(ops="schedule.remind(content=\"check CI results\", at=\"2026-06-22T10:00:00Z\")")
```

The `at` param is an RFC 3339 timestamp. It is named `at`, not `due`. Add `repeat` to make it
recurring: `"daily"`, `"weekly"`, or `"monthly"`. Cron expressions are rejected because the
executor cannot advance them safely.

```
request(ops="schedule.remind(content=\"weekly standup prep\", at=\"2026-06-23T09:00:00Z\", repeat=\"weekly\")")
```

### 2. Schedule: run a verb at time T

Use `schedule` to defer any DSL verb call. The `action` param must be a valid khive verb
expression — it is validated at write time. Plain English prose is rejected.

```
request(ops="schedule.schedule(action=\"gtd.assign(title=\\\"weekly review\\\", priority=\\\"p1\\\")\", at=\"2026-06-23T09:00:00Z\")")
```

The action must be one exactly registered public verb call with literal arguments and
all required fields. Batches, chains, `$prev`, bare shorthand, and internal subhandlers
are rejected because the stored call must replay independently:

```
comm.send(to="lambda:leo", content="heartbeat")
gtd.assign(title="weekly review", priority="p1")
```

### 3. Agenda: review what is pending

`schedule.agenda()` returns pending events sorted soonest-first. Cancelled or already-fired
events are excluded. Use a time window to focus.

```
request(ops="schedule.agenda()")
request(ops="schedule.agenda(from=\"2026-06-22T00:00:00Z\", to=\"2026-06-28T23:59:59Z\")")
```

Batch with inbox and tasks for a session-start snapshot:

```
request(ops="[schedule.agenda(limit=10), comm.inbox(limit=10), gtd.next(limit=5)]")
```

### 4. Cancel: remove a pending entry

Pass the full UUID from the response (or an unambiguous 8+ hex prefix). The event's `status` is
set to `cancelled` (with a `cancelled_at` timestamp) — it stays in storage for audit but vanishes
from `agenda`.

```
request(ops="schedule.cancel(id=\"a1b2c3d4-e5f6-7890-abcd-ef1234567890\")")
```

Run `schedule.agenda()` first to confirm the event is still pending before cancelling.

## Anti-patterns

- **`at` named wrong.** The param is `at`, not `due`. Using `due=` is rejected.
- **`action` as prose.** `action="send a heartbeat"` is rejected. The value must be a valid DSL verb call.
- **Batch/chain action.** A scheduled action is one replayable call, not a batch or `$prev` chain.
- **Natural-language timestamps.** `"tomorrow"` or `"next week"` are rejected by both `remind` and `schedule`. Compute the RFC 3339 string.
- **Cancelling by ambiguous prefix.** If the short prefix matches more than one event, the call is rejected. Use a longer prefix or the full UUID.
- **Expecting `agenda` to show cancelled events.** It only returns `status: "pending"`. Use `list(kind="scheduled_event")` via the KG pack to see all states.

Versions

RepositoryScoreLicence
This page · ohdearquant/khive84Apache-2.0
guangshinhaha/shinstack100MIT
LandonSchropp/agent-toolkit100MIT
keshavkatwe/pushwing-claude-plugin100MIT
jikig-ai/soleur93Apache-2.0
odranoelBR/commit-vitals90MIT
cenksimsek1988/cenk-jobs90MIT
Cruna-Noise-To-Signal/cruna-plugins90Apache-2.0
SayandipBagchi/release-notes-plugin90MIT

Database snapshot: 13.11.2026 · package version 8add8827b014 (SHA-256 digest of the entire package)

Downloads in the last 30 days: 0 · ranking

Report a problem with this skill: harmful content, incorrect descriptions or an author’s removal request.

Similar skills

  • 100calendar-events
    Create, view, reschedule, and cancel calendar events and appointments. Use when the user asks to schedule a meeting, check their calendar, book an appointment, reschedule, or set a reminder for an event.
  • 100pipa-follow-up-reminders
    Create and cancel simple one-shot email follow-up reminders through Pipa. Use this when the user wants Pipa to email them a specific reminder at a future time, such as “email me tomorrow at 9 to follow up,” “remind me by email next Friday,” or “send me a reminder in two hours.”…
  • 100ctx-remind
    Manage session reminders. Use when the user says 'remind me to...' or asks about pending reminders.
  • 100calendar
    Google Calendar integration — check schedule, create events, daily briefings, proactive reminders. Triggers on "what's on my calendar", "add to calendar", "schedule a meeting", "when am I free", "daily briefing", or any calendar-related request.
  • 100set-reminders
    Set time- or context-based reminders and surface them when due. Use for "remind me to…", "at 6pm remind me…", "in 20 minutes remind me…", or "when I get home, remind me…". Triggers: remind me, reminder, don't let me forget, at <time>, in <duration>, when I <context>.
  • 90org-agenda
    View and manage org-mode agenda, scheduled tasks, TODOs, and deadlines via the org MCP server. Use when the user asks about their schedule, agenda, tasks, or deadlines. Triggers: "show my agenda", "what's on my schedule", "tasks for today", "tomorrow's agenda", "what do I have…

Feedback and reports

Your message goes to Bartosz Sokoliński. An email address is needed only for a reply. See the privacy policy.