Skip to content

ana chat new: expose tool toggles (ontology / ontology-editing / auto-approve / web-search / sql / python) as flags #36

@bradfair

Description

@bradfair

Problem

ana chat new currently only accepts --connector and --title. The TextQL web UI exposes a richer set of tool toggles when creating a chat:

  • Web Search
  • JavaScript
  • Bash
  • Text to SQL
  • Ontology
  • Ontology Editing
  • Auto Approve

There is no CLI path to enable these — every chat created with ana chat new defaults to whatever the server uses for unset fields. In practice that means the chat is created without ontology / ontology-editing / auto-approve, and any prompt that tries to drive ontology work via the CLI silently fails to do real ontology authoring.

This blocks the Phase 6 ontology-authoring step of the mock-data-forge skill and any other automation that wants to drive ontology builds from a script.

Repro

ana chat new --connector 7518 --title "Build ontology" --json
# → paradigm.options.universal only carries connectorIds + (default-on) sqlEnabled/pythonEnabled/webSearchEnabled.
# No ontologyEnabled / ontologyEditingEnabled / autoApproveEnabled even if you wanted them.
ana chat new --help
# Flags:
#   --connector value     connector id(s), comma-separated (required)
#   --endpoint string     override API endpoint URL
#   --json                emit JSON output
#   --profile string      config profile to use
#   --title string        optional chat summary/title
#   --token-file string   path to bearer-token file

Workaround

The underlying RPC already accepts the toggles — the CLI just doesn't surface them. Hitting CreateChat directly works:

ana api textql.rpc.public.chat.ChatService/CreateChat --data '{
  "summary": "Phase 6 ontology",
  "paradigm": {
    "type": "TYPE_UNIVERSAL", "version": 1,
    "options": {"universal": {
      "connectorIds": [7518],
      "pythonEnabled": true,
      "sqlEnabled": true,
      "webSearchEnabled": true,
      "ontologyEnabled": true,
      "ontologyEditingEnabled": true,
      "autoApproveEnabled": true
    }}
  }
}'

Response confirms the fields land:

{
  "chat": {
    "paradigm": {"options": {"universal": {
      "ontologyEnabled": true,
      "ontologyEditingEnabled": true,
      "autoApproveEnabled": true,
      ...
    }}}
  }
}

Subsequent ana chat send against that chat produces real ontologyEditorCell cells and authors objects in the connector's ontology.

Proposal

Add CLI flags on ana chat new that map 1:1 to the universal-paradigm toggles:

Flag Effect
--ontology / --no-ontology Set ontologyEnabled
--ontology-editing / --no-ontology-editing Set ontologyEditingEnabled
--auto-approve / --no-auto-approve Set autoApproveEnabled
--web-search / --no-web-search Set webSearchEnabled
--sql / --no-sql Set sqlEnabled
--python / --no-python Set pythonEnabled
--javascript / --bash (?) If those are exposed in the proto — currently the UI shows them as separate toggles

Defaults should match current server behavior so existing scripts don't change.

A grouped --tools <comma,sep,list> form would also work but is less discoverable — explicit per-toggle flags match the UI's mental model.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions