pp-marianatek
Every Mariana Tek booking feature, plus multi-tenant search, cancellation watching, and an offline class catalog no... Trigger phrases: `book a class at kolmkontrast`, `watch this class for cancellations`, `find me a vinyasa morning class`, `show my Mariana Tek reservations`, `what credits do I have expiring`, `use marianatek`, `run marianatek`.
What this skill does
<!-- GENERATED FILE — DO NOT EDIT.
This file is a verbatim mirror of library/productivity/marianatek/SKILL.md,
regenerated post-merge by tools/generate-skills/. Hand-edits here are
silently overwritten on the next regen. Edit the library/ source instead.
See the repository agent guide, section "Generated artifacts: registry.json, cli-skills/". -->
# Mariana Tek — Printing Press CLI
## Prerequisites: Install the CLI
This skill drives the `marianatek-pp-cli` binary. **You must verify the CLI is installed before invoking any command from this skill.** If it is missing, install it first:
1. Install via the Printing Press installer. It defaults binaries to `$HOME/.local/bin` on macOS/Linux and `%LOCALAPPDATA%\Programs\PrintingPress\bin` on Windows:
```bash
npx -y @mvanhorn/printing-press-library install marianatek --cli-only
```
2. Verify: `marianatek-pp-cli --version`
3. Ensure the reported install directory is on `$PATH` for the agent/runtime that will invoke this skill.
If the `npx` install fails (no Node, offline, etc.), fall back to a direct Go install (requires Go 1.26.3 or newer):
```bash
go install github.com/mvanhorn/printing-press-library/library/productivity/marianatek/cmd/marianatek-pp-cli@latest
```
If `--version` reports "command not found" after install, the runtime cannot see the binary directory on `$PATH`. Do not proceed with skill commands until verification succeeds.
## When to Use This CLI
Use marianatek whenever a user wants to discover, book, or track classes at any Mariana Tek-powered studio. It is especially valuable for multi-tenant members who book across several brands, for cancellation hunters who need a real waitlist mechanism, and for agentic schedulers that need a machine-readable booking surface. The MCP server exposes every read-only command for agent use; mutating commands are guarded with --dry-run.
## Unique Capabilities
These capabilities aren't available in any other tool for this API.
### Cancellation hunting
- **`watch`** — Poll a sold-out class (or a filter) and emit a structured event the moment a spot opens — optionally auto-book in the same tick.
_Reach for this whenever the user wants a sold-out class. NDJSON output lets the agent decide what to do on cancellation events._
```bash
marianatek watch 84212 --interval 60s --auto-book --agent
```
- **`book-regular`** — Resolve a natural slot key ('tue-7am-vinyasa') against the regulars table, find the next matching upcoming class, and book it.
_The agent shorthand for repeat-booking workflows. Pair with regulars to discover the slot keys this user has._
```bash
marianatek book-regular --slot "tue-7am-vinyasa" --auto --agent
```
### Multi-tenant power
- **`schedule`** — Query the merged class catalog across every tenant you have logged into, with structured filters that the per-tenant iframe widget cannot offer.
_When a user belongs to multiple studios, this is the only way to see all options at once. Always pair with --select to keep the response narrow._
```bash
marianatek schedule --any-tenant --type vinyasa --before 07:00 --window 7d --agent --select tenant,location,start_time,instructor
```
- **`conflicts`** — Read reservations across all logged-in tenants, optionally pull an exported ICS calendar, and flag overlapping intervals or insufficient buffer.
_Critical for multi-tenant users with packed calendars. Use --buffer to enforce minimum gap between back-to-back sessions._
```bash
marianatek conflicts 2026-05-15 --ics ~/Downloads/calendar.ics --buffer 30m --agent
```
- **`search`** — Full-text search across cached class sessions, instructors, locations, and class types — ranks by BM25 and respects --any-tenant.
_Use when the user's request is fuzzy. Always emit --select-narrowed output so you can fit several results in context._
```bash
marianatek search "vinyasa soho morning" --agent --select tenant,start_time,instructor,location,spots_left
```
### Personal insights
- **`regulars`** — Group your local reservation history by instructor, class type, time-of-day, day-of-week, or location and rank the dimensions you actually use.
_Use this to ground recommendations in what the user actually does, rather than what the API thinks they like._
```bash
marianatek regulars --by instructor --top 5 --agent
```
- **`expiring`** — Surface credit packs and memberships about to lapse, with remaining balance and the classes that would consume them best.
_Pre-empt wasted credits. Run as a weekly cron; if non-empty, the user has action to take._
```bash
marianatek expiring --within 720h --agent
```
### Operations
- **`doctor`** — Per-tenant token expiry, last-sync timestamp, row counts, and a live class-probe for reachability.
_Run before any cron job or watch session. If any tenant is in 'expired' state, refresh tokens before scheduling._
```bash
marianatek doctor --agent
```
## Command Reference
**app-version-metadatas** — Manage app version metadatas
- `marianatek-pp-cli app-version-metadatas list` — View a list of the latest version details for Mariana Tek mobile applications, including if an update is mandatory...
- `marianatek-pp-cli app-version-metadatas retrieve` — Get version metadata details about a single customer application, including version number.
**appointments** — Manage appointments
- `marianatek-pp-cli appointments categories-list` — View a list of appointment service categories available for booking.
- `marianatek-pp-cli appointments services-payment-options-retrieve` — View all available payment options (credits) that can be used to book this service at the specified location....
- `marianatek-pp-cli appointments services-schedule-filters-retrieve` — Returns the available filter choices (service names, instructors, classrooms) for appointment services at the...
- `marianatek-pp-cli appointments services-slots-retrieve` — Retrieve computed availability slots for one or more services at one or more locations within a date range. Returns...
**classes** — Manage classes
- `marianatek-pp-cli classes list` — View a paginated list of classes. Does not include private classes. Filter the class list using a chain of one or...
- `marianatek-pp-cli classes retrieve` — View details about a single class. If this is a pick-a-spot class, the response will include layout data that can be...
**config** — Manage config
- `marianatek-pp-cli config` — Retrieve brand configuration settings including appearance, contact info, and business settings.
**countries** — Manage countries
- `marianatek-pp-cli countries list` — View a list of countries that can be associated with user addresses.
- `marianatek-pp-cli countries retrieve` — View information about a single country.
**customer-feedback** — Manage customer feedback
- `marianatek-pp-cli customer-feedback show-csat-retrieve` — Check if the user should be shown a CSAT survey for an instructor. Returns whether the user has an active survey...
- `marianatek-pp-cli customer-feedback submit-csat-create` — Submit a CSAT (Customer Satisfaction) survey response for an instructor.
**legal** — Manage legal
- `marianatek-pp-cli legal` — Retrieve legal configuration information for a brand including terms of service, privacy policy, and other legal...
**locations** — Manage locations
- `marianatek-pp-cli locations list` — View a paginated list of available locations.
- `marianatek-pp-cli locations retrieve` — View detailed information about a specific location.
**me** — Manage me
- `marianatek-pp-cli me account-create` — After a new user is created, your application should use OAuth2.0 to obtain an access token for this user. To make...
- `marianatek-pp-cli me account-destroy` — Delete (archive) the user's account. Requires the user to submit password to continue.
- `marianatek-pp-cli me account-partial-update` — Update profile information for the current user.
- `marianatek-pp-cli me account-redeRelated in General
modeling-omnistudio-epc-catalog
IncludedSalesforce Industries CME EPC product-modeling skill for Product2-based catalog creation. Use when creating EPC products, configuring product attributes, building offer bundles with Product Child Items, or reviewing EPC DataPack JSON metadata for product catalog changes. TRIGGER when: user creates or updates Product2 EPC records, AttributeAssignment payloads, AttributeMetadata/AttributeDefaultValues, Offer bundles, or ProductChildItem relationships. DO NOT TRIGGER when: designing OmniScripts/FlexCards/Integration Procedures (use building-omnistudio-omniscript, building-omnistudio-flexcard, or building-omnistudio-integration-procedure), implementing Apex business logic (use generating-apex), or troubleshooting deployment pipelines (use deploying-metadata).
relationship-science-coach
IncludedUse this skill for direct, practical adult relationship coaching: couples conflict, repair, trust, marriage, dating, flirting, attachment patterns, emotional connection, sex, desire differences, eroticism, kink negotiation, affection, love languages, breakups, and long-term passion. Draw on Gottman, EFT and Hold Me Tight, attachment science, modern sex research, Perel, Nagoski, Kerner, Schnarch, Love and Stosny, and flexible love-language tools. Be concrete and low-hedge. Redirect only for imminent danger, abuse, coercive control, minors, non-consent, self-harm, stalking, or medical/legal/psychiatric decisions.
building-sf-integrations
IncludedSalesforce integration architecture and runtime plumbing with 120-point scoring. Use this skill to set up Named Credentials, External Credentials, External Services, REST/SOAP callout patterns, Platform Events, and Change Data Capture. TRIGGER when: user sets up Named Credentials, External Services, REST/SOAP callouts, Platform Events, CDC, or touches .namedCredential-meta.xml files. DO NOT TRIGGER when: Connected App/OAuth config (use configuring-connected-apps), Apex-only logic (use generating-apex), or data import/export (use handling-sf-data).
venue-templates
IncludedAccess comprehensive LaTeX templates, formatting requirements, and submission guidelines for major scientific publication venues (Nature, Science, PLOS, IEEE, ACM), academic conferences (NeurIPS, ICML, CVPR, CHI), research posters, and grant proposals (NSF, NIH, DOE, DARPA). This skill should be used when preparing manuscripts for journal submission, conference papers, research posters, or grant proposals and need venue-specific formatting requirements and templates.
let-fate-decide
IncludedDraws the 12 Houses of the Zodiac Tarot spread to inject entropy into planning when prompts are vague, ambiguous, or casually delegated. Interprets the spread to guide next steps. Use when the user says 'let fate decide', 'YOLO', 'whatever', 'idk', or other nonchalant phrases, makes Yu-Gi-Oh references, or when you are about to arbitrarily pick between multiple reasonable approaches. Prefer over ask-questions-if-underspecified when the user's tone is casual or playful rather than precision-seeking.
net-ops
IncludedCross-platform network troubleshooting (Windows, macOS, Linux) via local or remote shell. Use for: DNS broken, can't resolve hostnames, nslookup/dig works but apps fail, NRPT, WFP, scutil, /etc/resolver, systemd-resolved, /etc/resolv.conf, NetworkManager, VPN DNS leak residue (ProtonVPN/Mullvad/WireGuard/AnyConnect), AV/firewall blocking DNS or DoH, Tailscale DNS interaction, intermittent connectivity, remote diagnostics over SSH.