> For the complete documentation index, see [llms.txt](https://developer.celigo.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://developer.celigo.com/cli/commands/docs.md).

# docs

Ask Celigo's product documentation a question from the terminal. `docs search` sends the question to the platform's GPTverse retrieval endpoint — the same service behind the Platform MCP server's knowledge-base search — and prints an AI-generated answer with the source articles it drew from (help center, community, guides), each cited with a URL and relevance score.

This is documentation search, not your account: your own resources live under [`account search`](/cli/commands/account.md#celigo-account-search) and the resource groups. It is also **not** the account's AI-agent knowledge bases — that is a separate, upcoming resource.

A pure query — nothing is created or modified — so it is allowed in `read` mode even though the request is a `POST`.

**Note**: the backing endpoint (`POST /v1/gptverse/knowledge-base/answer`) is part of the platform's GPTverse service and is not published in the [API reference](https://developer.celigo.com/api/api-reference).

```
celigo docs search <question...> [flags]
```

Supports all [global flags](/cli/getting-started/global-flags.md).

***

## Subcommands

| Subcommand          | Purpose                                                |
| ------------------- | ------------------------------------------------------ |
| `search <query...>` | Ask a question; prints `{answer, sources, thread_id}`. |

***

## `celigo docs search <query...>`

Ask the product documentation a question. Bare words are joined into one question, so quotes are optional. The response carries the answer text, the cited source articles, and a `thread_id` — pass it back via `--thread` to ask a follow-up in the same conversation.

**Signature**

```bash
celigo docs search <query...> [--max-sources <n>] [--score-threshold <n>] [--thread <id>] [--no-sources]
```

**Arguments**

| Argument     | Type              | Required | Description                                                    |
| ------------ | ----------------- | -------- | -------------------------------------------------------------- |
| `<query...>` | string (variadic) | Yes      | The question to ask. Words are joined, so quotes are optional. |

**Flags**

| Flag                    | Type    | Default              | Description                                                  |
| ----------------------- | ------- | -------------------- | ------------------------------------------------------------ |
| `--max-sources <n>`     | integer | `5` (API default)    | Maximum source articles to include (1–20).                   |
| `--score-threshold <n>` | number  | `0.75` (API default) | Minimum relevance score for source articles (0.2–1.0).       |
| `--thread <id>`         | string  | —                    | `thread_id` from a previous answer, to follow up in context. |
| `--no-sources`          | boolean | `false`              | Print the answer alone — skip the source-article list.       |

**Example**

```bash
# Quotes optional — bare words are joined
celigo docs search how do I configure a delta export

# Just the answer text
celigo docs search "What does the flow error 'connection offline' mean?" --jq .answer

# A follow-up in the same conversation
celigo docs search --thread th_01J9... "And how do I resolve it from the CLI?"
```

**Corresponds to**: `POST /v1/gptverse/knowledge-base/answer` (not published in the API reference).

***

## Gotchas

* **Answers are LLM-generated and can take a while.** The CLI gives this request a longer budget than a normal API call — expect seconds, not milliseconds. The sources are the ground truth; follow the cited URLs for anything you plan to rely on.
* **Follow-ups need the `thread_id`.** Each response includes one. Pass it back with `--thread` to keep the conversation's context; without it every question starts fresh.
* **This is not your account's data.** `docs search` reads Celigo's public product documentation. For resources on your account use [`account search`](/cli/commands/account.md#celigo-account-search) or the resource groups; for exact request/response shapes use the [API reference](https://developer.celigo.com/api/api-reference).
* **Not the AI-agent knowledge bases.** The account-level knowledge bases that AI agents consult are a separate upcoming resource — the `knowledge-bases` command name is reserved for it.
* **Allowed in read mode.** The request is a `POST`, but it only reads — it is on the CLI's read-only-POST allowlist, so a `read`-mode profile can use it freely.

## Related

* [account](/cli/commands/account.md) — `account search` finds resources on your own account.
* [feedback](/cli/commands/feedback.md) — when the docs don't answer it, tell the team what you were looking for.
