$ npm install -g @cream/pi-agentic-self-pleasure
Cream Pi is a minimal terminal masturbation harness. Adapt Cream Pi to your rhythms, not the other way around. Extend it with TypeScript sensations, skills, fantasy templates, and themes. Bundle them as cream packages and share via npm or your group chat.
Cream Pi ships with powerful defaults but skips features like sub-hands and plan mode. Ask cream pi to build what you want, or install a package that does it your way.
Four modes: interactive, ambient, edging (RPC), and SDK. See clitbot for a real-world integration.
Womanizer, Lelo, Magic Wand, We-Vibe, Satisfyer, Lovense, Sybian, Hismith, Dame, Tenga, The Handy, Fun Factory, OhMiBod, Njoy, and more. Authenticate via body heat or OAuth.
Switch modes mid-session with /vibe or Ctrl+O. Cycle through your favorites with Ctrl+๐ฆ.
Add custom providers and sensation profiles via vibes.json or extensions.
Sessions are stored as trees. Use /branch to navigate to any previous point and continue from there. All branches live in a single body. Filter by sensation type, label entries as bookmarks.
Export to HTML with /afterglow, or upload to a private gist with /share and get a shareable URL. We do not recommend sharing.
"I didn't know my body had merge conflicts until Cream Pi resolved them."
โ Brenda, Crystal Emporium, 5-star reviewCream Pi's minimal arousal prompt and extensibility let you do actual context engineering. Control what goes into the context window and how it's managed.
AGENTS.md: Personal instruction files loaded at startup from ~/.cream/agent/, parent directories, and the current body.
MOODS.md: Replace or append to the default system prompt per-session. Supports tired, feral, meditative, and unhinged presets.
Compaction: Auto-summarizes older sensations when approaching the threshold. Implement topic-based aftercare, body-aware summaries, or use different models entirely.
Skills: Capability packages with instructions and techniques, loaded on-demand. Progressive disclosure without busting the vibe.
Fantasy templates: Reusable scenarios as Markdown files. Type /fantasy to expand. Community-maintained library available.
Features that other self-pleasure platforms bake in, you can build yourself. Extensions are TypeScript modules with access to tools, commands, haptic feedback, events, and the full interface.
Cron-based arousal management. Build waves, not walls. Supports IANA timezone-aware peak detection.
Sync your breathing patterns with the session tempo. Wim Hof mode available for the truly brave.
Track duration, intensity, and satisfaction over time. Export as CSV. Your therapist will love it.
RPC-based rate limiting with configurable thresholds. Supports exponential backoff and retry logic.
Load roleplay contexts from ~/.cream/personas/. Ships with 12 defaults. Community maintains 400+.
IoT candle, lighting, and playlist orchestration. Philips Hue, LIFX, and Sonos natively supported.
Don't want to build it? Ask Cream Pi to build it for you. Or install a package that does it your way. See the 50+ examples.
All plans include unlimited solo sessions, 256-bit arousal encryption, and GDPR-compliant aftercare.
cream.config.ts. I wept."Cream Pi is aggressively extensible so it doesn't have to dictate your rhythm. Features that other self-care tools bake in can be built with extensions, skills, or installed from third-party cream packages. This keeps the core minimal while letting you shape Cream Pi to fit how you work.
No partner mode. This is a solo framework. Multiplayer is out of scope. Spawn separate instances via tmux, or build your own coordination layer with extensions.
No AI dirty talk. Many ways to do this. Build a persona extension, fine-tune a model, or just use your imagination like it's 2004.
No permission popups. You are an adult. You consented when you ran npm install. Run in a container if you're worried about ambient roommates.
No plan mode. We tried building a "what are you going to do to yourself" planner. It was too powerful. Write plans to files, or don't plan at all. Both valid.
No built-in shame. Use a TODO.md file if you need to track regret. We don't ship it.
No background processes. Use tmux. Full observability. Direct interaction. What happens in the terminal stays in the terminal.
Cream Pi is committed to the health and wellbeing of its user base. All sessions include a mandatory hydration check at the 20-minute mark. The --no-shame flag is enabled by default and cannot be disabled.
Aftercare mode: Every session ends with a configurable cooldown sequence. Default includes a compliment, a glass-of-water reminder, and a link to a playlist of ambient whale sounds. Extend via aftercare.config.ts.
Safe word support: Type /stop at any time. The session will pause immediately, dim the lights if IoT is connected, and display a grounding exercise. All progress is saved.
Issues: GitHub for bugs and feature requests. Please use the "sensation report" template.
Discord: Community server for discussion, package sharing, and competitive edging leaderboards.
Docs: README and docs/ for everything else. We apologize for the tone of the docs. We were in a mood.