---
name: today-cli
description: Use this skill to operate the Mere Today booking CLI for workspace calendar, service, availability, and booking workflows through the supported authenticated command surface.
---

# Today CLI

Use this skill for requests that operate the Mere Today booking CLI through the root `mere today ...` command path or the product-local `mere-today`/`yourtime` CLI.

## Scope

- Browser-authenticated CLI sessions.
- Workspace booking setup and inspection.
- Services, availability rules, calendar entries, bookings, and Google calendar connection status.
- JSON output for automation and agent handoff.

## Base commands and environment

Prefer the root CLI when it is available:

```sh
mere today auth whoami --json
mere today tenant resolve --workspace WORKSPACE_ID --json
mere today service list --workspace WORKSPACE_ID --json
mere today booking list --workspace WORKSPACE_ID --json
```

When working inside the Today repo, use the product CLI directly:

```sh
cd /Users/nerd/mere/today
pnpm build:cli
./dist/run.js auth login
./dist/run.js auth whoami --json
```

Use `--json` for automation. Mutations may accept `--data JSON` or `--data-file FILE`; explicit flags override structured payload fields. Destructive or external-account changes require `--yes --confirm <exact-id>` when the CLI asks for them.

## Immediate runbook

1. Check session state with `auth whoami --json`.
2. Resolve the workspace or tenant context before acting.
3. Inspect current services, availability, calendar entries, and bookings before mutating them.
4. Ask the user before creating bookings, changing availability, disconnecting Google, or deleting records.
5. Summarize the resulting public booking state in customer language.

## Authentication workflow

1. `auth login` opens the browser-based login flow.
2. `auth whoami --json` confirms the active user and workspace access.
3. `auth logout` clears the local CLI session.
4. Session files are local machine state and must not be printed or copied into chat.

## Domain commands

### workspace
- Resolve the current booking workspace.
- Inspect workspace-level booking settings before making changes.

### services
- List/get/create/update/delete customer-facing services.
- Supports active/inactive toggles, slug-based resolution, metadata flags.

### availability
- List/add/update/delete availability rules.
- Supports slots expansion by date or date range with service fallback.

### calendar
- List manual series and events by date window.
- Manage one-off and recurring calendar entries plus occurrence overrides/cancellations.

### booking
- List/get/create/confirm/cancel/reschedule bookings.
- Booking create flow updates booking+calendar linkage.

### google
- Read Google connection status.
- Build connect URL for SSO setup.
- Refresh busy-time sync when the CLI exposes it.
- Disconnect Google integration.

## Guardrails

- Prefer reads before writes.
- Do not expose local session files, refresh tokens, browser cookies, or private URLs.
- Ask before external account changes such as Google connect/disconnect.
- Use the CLI's own confirmation flags for destructive commands.
