Skip to content

help bias: Quick Start in omni --help traps first-time users (and LLMs) when no default instance is set #656

@gstvbatista

Description

@gstvbatista

Problem

When Omni is freshly installed (no defaultInstance configured), omni --help shows at the top:

Quick Start:
  omni send --to +5511999999999 --text "Hello"
  omni chats list
  omni events list --limit 10

But on a fresh install, every one of those fails with:

✗ No instance specified. Use --instance <id> or set default: omni config set defaultInstance <id>

This is particularly painful when an LLM agent reads omni --help to orient itself — it anchors on "Quick Start" and confidently suggests omni send, not realizing the Status: configured (no default instance) line actually means "you cannot send anything yet."

Reproducible on v2.260410.1.

Why it bites LLMs hard

LLMs trust the structure of CLI help output. "Quick Start" is the strongest signal in the page. When it lies, the model fails the user on the very first request and then has to backtrack into channels add / instances create / pair / config set defaultInstance before recovering.

The error message also misleads: it suggests omni config set defaultInstance <id> but on a fresh install there is no <id> yet — the user (or agent) first needs to create a channel and an instance.

Suggested fixes

  1. Make Quick Start conditional on state. If Status: configured (no default instance), replace Quick Start with a bootstrap path:

    First time? Bootstrap an instance:
      omni channels list                            # see available channels
      omni instances create --name <n> --channel whatsapp-baileys
      omni instances pair <id> --phone +55...       # or: omni instances qr <id>
      omni config set defaultInstance <id>
    

    Then on subsequent runs (with a default set), show the current omni send Quick Start.

  2. Improve the "No instance specified" error to detect whether any instances exist:

    • If 0 instances: suggest omni channels list + omni instances create first.
    • If ≥1 instance: suggest omni config set defaultInstance <id> and list candidates.
  3. (Optional) Surface omni install more prominently in the bootstrap state — the wizard exists but isn't mentioned in --help.

Acceptance criteria

  • omni --help on a fresh install does not show commands that will immediately fail.
  • First-time bootstrap path is discoverable from --help alone.
  • No instance specified error differentiates "no instances exist" from "no default set."

Metadata

Metadata

Assignees

No one assigned

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions