Asi partiful
Access Partiful events, invites, and RSVPs via reverse-engineered API. Use when user asks about party invites, event RSVPs, or social event data.
install
source · Clone the upstream repo
git clone https://github.com/plurigrid/asi
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/plurigrid/asi "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/partiful" ~/.claude/skills/plurigrid-asi-partiful && rm -rf "$T"
manifest:
skills/partiful/SKILL.mdsource content
Partiful
Programmatic access to Partiful event data via Babashka.
Quick Start
# List all RSVPs/invites bb scripts/partiful.clj invites # Get event details bb scripts/partiful.clj event <event-id> # Authenticate (opens browser) bb scripts/partiful.clj auth
Commands
| Command | Description |
|---|---|
| List events you're invited to with RSVP status |
| List events you're hosting |
| List mutual connections |
| Get full details for an event |
| Authenticate via Playwright browser |
Configuration
Set environment variables or store in
~/.partiful-config.edn:
export PARTIFUL_AUTH_TOKEN="..." export PARTIFUL_USER_ID="..." export PARTIFUL_REFRESH_TOKEN="..." export PARTIFUL_FIREBASE_API_KEY="..." # Get from Partiful web app
ACSet Schema
Category-theoretic event modeling with morphisms:
Event <──host──── User ^ ^ │ │ event_of invitee │ │ └─── Invite ─────┘ ↓ RSVP
See
scripts/partiful-acset.clj for queries:
- Events user is invited tomy-invited-events
- All guests for an eventevent-guests
- RSVP statuses for eventevent-rsvps
SDF Interleaving
This skill connects to Software Design for Flexibility (Hanson & Sussman, 2021):
Primary Chapter: 5. Evaluation
Concepts: eval, apply, interpreter, environment
GF(3) Balanced Triad
partiful (○) + SDF.Ch5 (−) + [balancer] (+) = 0
Skill Trit: 0 (ERGODIC - coordination)
Connection Pattern
Evaluation interprets expressions. This skill processes or generates evaluable forms.
Cat# Integration
Trit: +1 (PLUS) Color: #FF6B35 (warm/executor) Triads: partiful(+1) + acsets(0) + calendar-acset(-1) = 0