worlding-calendar
Calendar events tied to 26 letter-worlds via org-mode. Links events to beeper messages, voice notes, and Goblins capabilities. Replaces 13K-token Google Calendar MCP with CalDAV + DuckDB interactome.
Best use case
worlding-calendar is best used when you need a repeatable AI agent workflow instead of a one-off prompt.
Calendar events tied to 26 letter-worlds via org-mode. Links events to beeper messages, voice notes, and Goblins capabilities. Replaces 13K-token Google Calendar MCP with CalDAV + DuckDB interactome.
Teams using worlding-calendar should expect a more consistent output, faster repeated execution, less prompt rewriting.
When to use this skill
- You want a reusable workflow that can be run more than once with consistent structure.
When not to use this skill
- You only need a quick one-off answer and do not need a reusable workflow.
- You cannot install or maintain the underlying files, dependencies, or repository context.
Installation
Claude Code / Cursor / Codex
Manual Installation
- Download SKILL.md from GitHub
- Place it in
.claude/skills/worlding-calendar/SKILL.mdinside your project - Restart your AI agent — it will auto-discover the skill
How worlding-calendar Compares
| Feature / Agent | worlding-calendar | Standard Approach |
|---|---|---|
| Platform Support | Not specified | Limited / Varies |
| Context Awareness | High | Baseline |
| Installation Complexity | Unknown | N/A |
Frequently Asked Questions
What does this skill do?
Calendar events tied to 26 letter-worlds via org-mode. Links events to beeper messages, voice notes, and Goblins capabilities. Replaces 13K-token Google Calendar MCP with CalDAV + DuckDB interactome.
Where can I find the source code?
You can find the source code on GitHub using the link provided at the top of the page.
SKILL.md Source
# Worlding Calendar
Every calendar event contributes to a world. This skill manages that mapping.
## Architecture
```
CalDAV (Google)
│
voice notes ──→ org-worlding-calendar.el ←── beeper messages
│
~/worlds/p/calendar.org
│
┌────────────┼────────────┐
▼ ▼ ▼
:WORLD: a :WORLD: b :WORLD: g ...
~/worlds/a/ ~/worlds/b/ ~/worlds/g/
```
## Three Layers
| Layer | Source | Function |
|-------|--------|----------|
| **Org** | `~/worlds/p/calendar.org` | Canonical event store with world tags |
| **DuckDB** | `~/worlds/beeper_interactome.duckdb` | Contact→world inference from messaging history |
| **Emacs** | `~/.emacs.d/lisp/org-worlding-calendar.el` | UI, transient menus, agenda views |
## World Inference
Events are auto-tagged with `:WORLD:` letter based on content:
```
"barton bci meeting" → :WORLD: b
"goblins ocapn sync" → :WORLD: g
"vivarium hackathon" → :WORLD: v
"plurigrid standup" → :WORLD: p
```
Inference uses regex patterns + DuckDB interactome queries on beeper contact names.
## Properties Per Event
```org
* RISING Yoyo hackathon prep
:PROPERTIES:
:WORLD: y
:WORLD_PATH: ~/worlds/y/
:BEEPER_CHAT: !0xZ1HWPM91hEOzuwxzBR:beeper.local
:VOICE_NOTE: ~/Library/Application Support/BeeperTexts/media/...
:OCAPN_REF: ocapn://...
:CREATED: [2026-03-26 Thu]
:END:
<2026-03-26 Thu 14:00>--<2026-03-26 Thu 16:00>
```
## Worlding States (from org-worlding.el)
Events use worlding states instead of TODO/DONE:
| State | Meaning | Calendar use |
|-------|---------|-------------|
| SEEDING | Sub-threshold | Tentative, not confirmed |
| RISING | Gaining amplitude | Confirmed, approaching |
| RESONANT | Phase-locked | Happening NOW |
| WAVE | Self-sustaining | Recurring/habit |
| ERGODIC | Full exploration | Open-ended session |
| ACTIVE | Self-sustaining | Ongoing project event |
| BEATING | Interference | Conflict/double-booked |
| DRIVEN | Externally forced | Obligation/external |
| STABLE | Fixed point | Completed, archived |
| FADED | Below threshold | Cancelled/no-showed |
## Emacs Keybindings
```
C-c w c e → Create world-tagged event
C-c w c v → Link voice note to event
C-c w c b → Link beeper message to event
C-c w c c → Set OCapN capability ref
C-c w c C → Agenda grouped by world
C-c w W → Worlding dashboard
```
## Querying from Claude Code
### List events by world
```bash
grep -A5 ":WORLD: b" ~/worlds/p/calendar.org
```
### Query interactome for contact→world mapping
```bash
duckdb ~/worlds/beeper_interactome.duckdb -c "
SELECT name, protocol, sent, total
FROM interactome
WHERE lower(name) LIKE '%barton%'
"
```
### Create event from CLI
```bash
emacsclient -e '(org-worlding-calendar-new-event "Boris sync" "2026-03-27" "2026-03-27" "b")'
```
### View calendar agenda
```bash
emacsclient -e '(org-agenda nil "C")'
```
## CalDAV Sync (Planned)
Google Calendar CalDAV endpoint: `https://apidata.googleusercontent.com/caldav/v2/`
Auth via OAuth2 token from `fnox get GOOGLE_CLIENT_SECRET_PATH`. Bidirectional sync:
- Google → org: pull events, auto-tag with :WORLD:
- org → Google: push world-tagged events to specific sub-calendars per letter
Replaces Anthropic's `claude_ai_Google_Calendar` MCP (13,566 tokens) with ~0 tokens (local org files + emacsclient calls).
## Goblins Integration
Each event source is modeled as a Goblins capability:
```scheme
;; CalDAV server as actor
(define caldav-cap
(vat-spawn vat
(lambda (bcom)
(methods
((list-events start end) ...)
((create-event title start end world) ...)))))
;; Beeper chat as capability reference
(define beeper-cap
(vat-spawn vat
(lambda (bcom)
(methods
((search query) ...)
((send chat-id text) ...)))))
```
Events store their source capability as `:OCAPN_REF:` — a sturdyref URI that can be resolved at runtime to interact with the originating system.
## Files
| File | Purpose |
|------|---------|
| `~/.emacs.d/lisp/org-worlding-calendar.el` | Emacs integration |
| `~/worlds/p/calendar.org` | Event store |
| `~/worlds/beeper_interactome.duckdb` | Contact intelligence |
| `~/.claude/skills/worlding-calendar/SKILL.md` | This skill |
## Relation to Other Skills
- **beeper** — message source, contact→world inference
- **calendar-acset** — predecessor (GF(3) theoretical framework)
- **goblins** — capability model for event sources
- **emacs** / **org** — UI layer
- **sdf** — if events need spatial world coordinates
- **tree-sitter** — if parsing structured event descriptionsRelated Skills
worlding
Gay.jl world_ pattern: persistent composable state builders with GF(3) conservation, Möbius invertibility, and Narya verification
world-memory-worlding
World memory is world remembering is world worlding - the autopoietic loop where memory enables remembering enables worlding enables memory
nix-acset-worlding
Model Nix store as Attributed C-Set for dependency verification, GC analysis,
calendar-acset
Google Calendar management via CalendarACSet. Transforms scheduling operations into GF(3)-typed Interactions, routes to triadic queues, detects saturation for balanced-calendar-as-condensed-state.
unworlding-involution
Self-inverse derivation patterns where ι∘ι = id for frame-invariant self
zx-calculus
Coecke's ZX-calculus for quantum circuit reasoning via string diagrams with Z-spiders (green) and X-spiders (red)
zulip-cogen
Zulip Cogen Skill 🐸⚡
zls-integration
zls-integration skill
zig
zig skill
zig-syrup-bci
Multimodal BCI pipeline in Zig: DSI-24 EEG, fNIRS mBLL, eye tracking IVT, LSL sync, EDF read/write, GF(3) conservation
zig-programming
zig-programming skill
zeroth-bot
Zeroth Bot - 3D-printed open-source humanoid robot platform for sim-to-real and RL research. Affordable entry point for humanoid robotics.