Pulse Copilot

Pulse Copilot capability parity

← Back to Pulse Copilot

Pulse Copilot got a large capability expansion in the June-July batch. The goal: parity with everything the operator can do in the UI, so the operator can drive routine work via chat.

Pulse Copilot panel

Approval gate on all mutations

Every WRITE — task template edit, teammate update, message template change, FAQ create, price change, cleaner assign — hits a confirm-before-mutate approval gate.

Copilot proposes the change → the surface shows a "Confirm" button with the diff → operator taps to commit.

Applies to both:

  • Intent tools (structured actions Copilot maps to).
  • Raw execute_trpc (the fallback tool Copilot uses when no intent matches).

Anti-clobber read-merge

Copilot's .update calls do a read-merge — fetch the current row, apply the partial change as an overlay, submit the full row. Fields you didn't mention keep their current values.

Approval gate

Copilot's write actions require your confirmation. It can never confirm its own approval gate — including mid-way through multi-turn plans.

Fuzzy / substring fallback

When operator asks about "the coffee capsule supply" and the actual row is "CAFISSIMO 70g FINE AROMA capsules", Copilot's lookup falls back through:

  1. Exact match
  2. Substring match
  3. Fuzzy (edit distance)

Anchor-hints — when Copilot has an ambiguous match, it asks "Did you mean CAFISSIMO 70g FINE AROMA or CAFISSIMO STR INTENSO?" instead of guessing.

Admin surfaces Copilot can reach

  • Email templates — read + write via approval gate.
  • Pricing — read + write per property.
  • set_cleaner — assign a cleaner to a reservation.
  • FAQ — read + write + create.
  • Message templates — read + write via approval gate.
  • AI Cockpit config — read tools + ergonomic approval-gated writes.
  • User-owned-config audit — Copilot's edits to message_templates + teammates show up in the audit log with actor=copilot:<agent-name>.

Operator-friendly language

Copilot never surfaces:

  • Raw tRPC path names
  • Internal field jargon
  • Chain-of-thought reasoning
  • System-prompt leakage

Copilot speaks operator English: "I'll update the check-in template" instead of "I'll call operations.messageTemplates.update on slug=checkin_instructions".

Copilot cache + cost work

Prompt caching and context-window management keep per-turn cost down and long conversations stable. What you see:

  • Lower per-turn cost visible in Cost dashboard.
  • Faster Copilot responses.
Source: the luxury.host operator manual.