Knowledge

sim knowledge is also spelled sim kb.

Every command below also accepts the global options.

Index files the workspace already stores

sim knowledge from-workspace-files create <knowledgeBaseId> [options]

Index files the workspace already stores (personal API key required)

Arguments

ArgumentRequiredDescription
knowledgeBaseIdYesUnique knowledge base identifier.

Options

OptionRequiredDescription
--file <value...>YesWorkspace file ID or key (repeatable) (space-separated, or @path / @- with one value per line; @@value for a literal leading @).

Declare the tag definitions a knowledge base needs

sim knowledge tags save <knowledgeBaseId> [options]

Declare the tag definitions a knowledge base needs (personal API key required)

Arguments

ArgumentRequiredDescription
knowledgeBaseIdYesUnique knowledge base identifier.

Options

OptionRequiredDescription
--definitions <json|@file>YesTag definitions: [{"tagSlot":"tag1","displayName":"category","fieldType":"text"}] (JSON, or @path / @- to read a file or stdin).

Create tag

sim knowledge tags create <knowledgeBaseId> [options]

Create Tag (personal API key required)

Arguments

ArgumentRequiredDescription
knowledgeBaseIdYesUnique knowledge base identifier.

Options

OptionRequiredDescription
--display-name <value>YesName tag filters and document reads use for this tag.
--field-type <value>NoValue type stored in the slot; it decides which slots are usable and which filter operators apply. Defaults to text, so a number, date, or boolean slot must name its type here. Slot capacity per type: text 7, number 5, date 2, boolean 3. Accepted values: text, number, date, boolean.
--tag-slot <value>NoSlot to store the tag in. Omit to take the next free slot for the field type; a slot that does not belong to the field type, or one already in use, is rejected. Accepted values: tag1, tag2, tag3, tag4, tag5, tag6, tag7, number1, number2, number3, number4, number5, date1, date2, boolean1, boolean2, boolean3.

Delete tag

sim knowledge tags delete <knowledgeBaseId> <tagId> [options]

Delete Tag (personal API key required)

Arguments

ArgumentRequiredDescription
knowledgeBaseIdYesUnique knowledge base identifier.
tagIdYesUnique tag definition identifier.

Options

OptionRequiredDescription
-y, --yesYesConfirm this operation.

Remove tag definitions no document still uses

sim knowledge tags cleanup <knowledgeBaseId> [options]

Remove tag definitions no document still uses (personal API key required)

Arguments

ArgumentRequiredDescription
knowledgeBaseIdYesUnique knowledge base identifier.

Options

OptionRequiredDescription
--unusedNoWhether to remove only the tag definitions no document in the knowledge base still carries a value for. Defaults to true. Pass --no-unused to delete every definition on the knowledge base, which also clears its slot on every document and chunk and is not recoverable.
--no-unusedNoSend --unused as false.
-y, --yesYesConfirm this operation.

Show which tag slot a create would take for a field type

sim knowledge tags next-slot <knowledgeBaseId> [options]

Show which tag slot a create would take for a field type (personal API key required)

Arguments

ArgumentRequiredDescription
knowledgeBaseIdYesUnique knowledge base identifier.

Options

OptionRequiredDescription
--field-type <value>YesValue type stored in the slot; it decides which slots are usable and which filter operators apply. Slot capacity per type: text 7, number 5, date 2, boolean 3. Accepted values: text, number, date, boolean.

List tags

sim knowledge tags list <knowledgeBaseId>

Arguments

ArgumentRequiredDescription
knowledgeBaseIdYesUnique knowledge base identifier.

Show how many documents and chunks carry each tag

sim knowledge tags usage <knowledgeBaseId>

Show how many documents and chunks carry each tag (personal API key required)

Arguments

ArgumentRequiredDescription
knowledgeBaseIdYesUnique knowledge base identifier.

Update tag

sim knowledge tags update <knowledgeBaseId> <tagId> [options]

Update Tag (personal API key required)

Arguments

ArgumentRequiredDescription
knowledgeBaseIdYesUnique knowledge base identifier.
tagIdYesUnique tag definition identifier.

Options

OptionRequiredDescription
--display-name <value>NoNew tag display name.
--field-type <value>NoNew value type for the tag. Accepted values: text, number, date, boolean.

Enable, disable, or delete many chunks at once

sim knowledge chunks batch-update <knowledgeBaseId> <documentId> [options]

Enable, disable, or delete many chunks at once (personal API key required)

Arguments

ArgumentRequiredDescription
knowledgeBaseIdYesUnique knowledge base identifier.
documentIdYesUnique knowledge document identifier.

Options

OptionRequiredDescription
--operation <value>YesWhat to do with the selected chunks. Accepted values: enable, disable, delete.
--chunk <value...>YesChunks to operate on, by identifier. An id naming no chunk in the document is reported in errors and does not fail the request. (space-separated, or @path / @- with one value per line; @@value for a literal leading @).
-y, --yesYesConfirm this operation.

Create chunk

sim knowledge chunks create <knowledgeBaseId> <documentId> [options]

Create Chunk (personal API key required)

Arguments

ArgumentRequiredDescription
knowledgeBaseIdYesUnique knowledge base identifier.
documentIdYesUnique knowledge document identifier.

Options

OptionRequiredDescription
--content <value>YesText to embed. It is embedded on write, so the chunk is searchable immediately.
--enabledNoWhether the new chunk participates in search.
--no-enabledNoSend --enabled as false.

Delete chunk

sim knowledge chunks delete <knowledgeBaseId> <documentId> <chunkId> [options]

Delete Chunk (personal API key required)

Arguments

ArgumentRequiredDescription
knowledgeBaseIdYesUnique knowledge base identifier.
documentIdYesUnique knowledge document identifier.
chunkIdYesUnique chunk identifier.

Options

OptionRequiredDescription
-y, --yesYesConfirm this operation.

Get chunk

sim knowledge chunks get <knowledgeBaseId> <documentId> <chunkId>

Get Chunk (personal API key required)

Arguments

ArgumentRequiredDescription
knowledgeBaseIdYesUnique knowledge base identifier.
documentIdYesUnique knowledge document identifier.
chunkIdYesUnique chunk identifier.

List chunks

sim knowledge chunks list <knowledgeBaseId> <documentId> [options]

List Chunks (personal API key required)

Arguments

ArgumentRequiredDescription
knowledgeBaseIdYesUnique knowledge base identifier.
documentIdYesUnique knowledge document identifier.

Options

OptionRequiredDescription
--search <value>NoCase-insensitive substring match against chunk content.
--enabled <value>NoRestrict to enabled or disabled chunks. all returns both. Accepted values: true, false, all.
--sort-by <value>NoField used to sort the result. Accepted values: chunkIndex, tokenCount, enabled.
--sort-order <value>NoSort direction. Accepted values: asc, desc.
--limit <n>NoMaximum items to return (0 for everything). Defaults to 100.

Update chunk

sim knowledge chunks update <knowledgeBaseId> <documentId> <chunkId> [options]

Update Chunk (personal API key required)

Arguments

ArgumentRequiredDescription
knowledgeBaseIdYesUnique knowledge base identifier.
documentIdYesUnique knowledge document identifier.
chunkIdYesUnique chunk identifier.

Options

OptionRequiredDescription
--content <value>NoReplacement text. Changing it re-embeds the chunk and re-derives its token and character counts.
--enabledNoWhether the chunk participates in search. Disabling keeps it indexed.
--no-enabledNoSend --enabled as false.

Enable or disable every matching document

sim knowledge documents batch-update <knowledgeBaseId> [options]

Enable or disable every matching document (personal API key required)

Arguments

ArgumentRequiredDescription
knowledgeBaseIdYesUnique knowledge base identifier.

Options

OptionRequiredDescription
--operation <value>YesWhether the selected documents become enabled or disabled for search. Accepted values: enable, disable.
--document <value...>NoDocuments to update, by identifier. (space-separated, or @path / @- with one value per line; @@value for a literal leading @).
--select-allNoApply to every document in the knowledge base.
--enabled-filter <value>NoWith selectAll, restrict the update to documents in this state. Accepted values: all, enabled, disabled.

Delete document

sim knowledge documents delete <knowledgeBaseId> <documentId> [options]

Arguments

ArgumentRequiredDescription
knowledgeBaseIdYesUnique knowledge base identifier.
documentIdYesUnique knowledge document identifier.

Options

OptionRequiredDescription
-y, --yesYesConfirm this operation.

Get document

sim knowledge documents get <knowledgeBaseId> <documentId>

Arguments

ArgumentRequiredDescription
knowledgeBaseIdYesUnique knowledge base identifier.
documentIdYesUnique knowledge document identifier.

List documents

sim knowledge documents list <knowledgeBaseId> [options]

Arguments

ArgumentRequiredDescription
knowledgeBaseIdYesUnique knowledge base identifier.

Options

OptionRequiredDescription
--limit <n>NoMaximum items to return (0 for everything). Defaults to 100.
--search <value>NoCase-insensitive substring match against the document filename.
--enabled-filter <value>NoFilter by whether documents are enabled for search. Accepted values: all, enabled, disabled.
--sort-by <value>NoField used to sort the result. Sorting by filename is case-sensitive and follows the storage collation, so do not rely on a case-insensitive order. Accepted values: filename, fileSize, tokenCount, chunkCount, uploadedAt, processingStatus, enabled.
--sort-order <value>NoSort direction. Accepted values: asc, desc.
--tag-filters <value>NoA JSON-encoded array of at most 10 tag filters, using the same display-name shape as knowledge search: [&#123;"tagName":"category","operator":"eq","value":"billing"&#125;]. Every filter must hold, including two that name the same tag. A name that is not defined in this knowledge base is rejected, never ignored.

Update document

sim knowledge documents update <knowledgeBaseId> <documentId> [options]

Update Document (personal API key required)

Arguments

ArgumentRequiredDescription
knowledgeBaseIdYesUnique knowledge base identifier.
documentIdYesUnique knowledge document identifier.

Options

OptionRequiredDescription
--filename <value>NoNew filename for the document.
--enabledNoWhether the document participates in search. Disabling keeps it indexed.
--no-enabledNoSend --enabled as false.
--tag1 <value>NoNew value for tag slot 1.
--tag2 <value>NoNew value for tag slot 2.
--tag3 <value>NoNew value for tag slot 3.
--tag4 <value>NoNew value for tag slot 4.
--tag5 <value>NoNew value for tag slot 5.
--tag6 <value>NoNew value for tag slot 6.
--tag7 <value>NoNew value for tag slot 7.
--number1 <value>NoNew value for number tag slot 1.
--number2 <value>NoNew value for number tag slot 2.
--number3 <value>NoNew value for number tag slot 3.
--number4 <value>NoNew value for number tag slot 4.
--number5 <value>NoNew value for number tag slot 5.
--date1 <value>NoNew value for date tag slot 1, formatted YYYY-MM-DD.
--date2 <value>NoNew value for date tag slot 2, formatted YYYY-MM-DD.
--boolean1NoNew value for boolean tag slot 1.
--no-boolean1NoSend --boolean1 as false.
--boolean2NoNew value for boolean tag slot 2.
--no-boolean2NoSend --boolean2 as false.
--boolean3NoNew value for boolean tag slot 3.
--no-boolean3NoSend --boolean3 as false.
--retry-processingNoRequeue a failed or stuck document for processing. Send it alone — no other field may accompany it — and it answers with a queue acknowledgement rather than the document.

Upload a document to a knowledge base

sim knowledge documents upload <knowledgeBaseId> <path> [options]

Arguments

ArgumentRequiredDescription
knowledgeBaseIdYesKnowledge base to upload into
pathYesLocal file to upload

Options

OptionRequiredDescription
--name <name>NoStore it under a different name.
--tag <value...>NoDocument tags, in tag1 through tag7 order.
--recipe <name>NoDocument processing recipe. Accepted values: default, plain, markdown, code.
--lang <code>NoDocument language tag: hyphen-separated letter and digit subtags, for example en or en-US.

Create knowledge base

sim knowledge create [options]

Options

OptionRequiredDescription
--name <value>YesHuman-readable knowledge base name.
--description <value>NoOptional knowledge base description.
--chunking-config <json|@file>NoChunking configuration; defaults are applied when omitted. (JSON, or @path / @- to read a file or stdin).
--folder <value>NoFolder path as shown in the app; the leading / is optional.

Create knowledge connector

sim knowledge connectors create <knowledgeBaseId> [options]

Create Knowledge Connector (personal API key required)

Arguments

ArgumentRequiredDescription
knowledgeBaseIdYesUnique knowledge base identifier.

Options

OptionRequiredDescription
--connector-type <value>YesRegistered connector type.
--credential-id <value>NoOAuth credential identifier for connectors that require OAuth.
--api-key <value>NoWrite-only API key for connectors that use API-key authentication.
--source-config <json|@file>YesConnector-specific source selection and filtering configuration. (JSON, or @path / @- to read a file or stdin).
--sync-interval-minutes <value>NoScheduled synchronization interval in minutes; zero disables scheduling.

Delete knowledge connector

sim knowledge connectors delete <knowledgeBaseId> <connectorId> [options]

Delete Knowledge Connector (personal API key required)

Arguments

ArgumentRequiredDescription
knowledgeBaseIdYesKnowledge base that owns the connector.
connectorIdYesConnector selected for the operation.

Options

OptionRequiredDescription
--delete-documentsNoAlso permanently delete documents produced by this connector.
--no-delete-documentsNoSend --delete-documents as false.
-y, --yesYesConfirm this operation.

Get knowledge connector

sim knowledge connectors get <knowledgeBaseId> <connectorId>

Get Knowledge Connector (personal API key required)

Arguments

ArgumentRequiredDescription
knowledgeBaseIdYesKnowledge base that owns the connector.
connectorIdYesConnector selected for the operation.

List knowledge connector documents

sim knowledge connectors documents list <knowledgeBaseId> <connectorId> [options]

List Knowledge Connector Documents (personal API key required)

Arguments

ArgumentRequiredDescription
knowledgeBaseIdYesKnowledge base that owns the connector.
connectorIdYesConnector selected for the operation.

Options

OptionRequiredDescription
--include-excludedNoInclude documents explicitly excluded by a user.
--no-include-excludedNoSend --include-excluded as false.
--limit <n>NoMaximum items to return (0 for everything). Defaults to 100.

Update knowledge connector documents

sim knowledge connectors documents update <knowledgeBaseId> <connectorId> [options]

Update Knowledge Connector Documents (personal API key required)

Arguments

ArgumentRequiredDescription
knowledgeBaseIdYesKnowledge base that owns the connector.
connectorIdYesConnector selected for the operation.

Options

OptionRequiredDescription
--operation <value>YesWhether to restore or exclude the selected documents. Accepted values: restore, exclude.
--document <value...>YesConnector document identifiers to update. (space-separated, or @path / @- with one value per line; @@value for a literal leading @).

List knowledge connectors

sim knowledge connectors list <knowledgeBaseId> [options]

List Knowledge Connectors (personal API key required)

Arguments

ArgumentRequiredDescription
knowledgeBaseIdYesUnique knowledge base identifier.

Options

OptionRequiredDescription
--sort-by <value>NoField used to sort the result. Accepted values: connectorType, createdAt, updatedAt.
--sort-order <value>NoSort direction. Accepted values: asc, desc.
--limit <n>NoMaximum items to return (0 for everything). Defaults to 100.

Queue a knowledge connector synchronization

sim knowledge connectors sync <knowledgeBaseId> <connectorId> [options]

Queue a knowledge connector synchronization (personal API key required)

Arguments

ArgumentRequiredDescription
knowledgeBaseIdYesKnowledge base that owns the connector.
connectorIdYesConnector selected for the operation.

Options

OptionRequiredDescription
--rehydrateNoRe-fetch and re-index every existing connector document.
--no-rehydrateNoSend --rehydrate as false.

Update knowledge connector

sim knowledge connectors update <knowledgeBaseId> <connectorId> [options]

Update Knowledge Connector (personal API key required)

Arguments

ArgumentRequiredDescription
knowledgeBaseIdYesKnowledge base that owns the connector.
connectorIdYesConnector selected for the operation.

Options

OptionRequiredDescription
--source-config <json|@file>NoReplacement source selection and filtering configuration. Updating a runnable connector queues synchronization; paused connectors remain paused. (JSON, or @path / @- to read a file or stdin).
--sync-interval-minutes <value>NoNew scheduled synchronization interval in minutes.
--status <value>NoNew connector state. Accepted values: active, paused.

Create a knowledge folder at a path

sim knowledge folders create <path>

Arguments

ArgumentRequiredDescription
pathYesFolder path as shown in the app; the leading / is optional

Delete folder

sim knowledge folders delete <path> [options]

Arguments

ArgumentRequiredDescription
pathYesFolder path as shown in the app; the leading / is optional

Options

OptionRequiredDescription
--recursiveNoDelete the folder and its descendants.
-y, --yesYesConfirm this operation.

List knowledge folders

sim knowledge folders list [options]

Also available as sim knowledge folders ls.

Options

OptionRequiredDescription
--parent <value>NoDirect parent folder path.
--search <value>NoCase-insensitive substring match against the folder name.
--sort-by <value>NoField used to sort the result. Sorting by name is case-sensitive and follows the storage collation, so do not rely on a case-insensitive order. Accepted values: name, createdAt, updatedAt.
--sort-order <value>NoSort direction. Accepted values: asc, desc.

Rename or move a knowledge folder

sim knowledge folders move <path> <destination>

Also available as sim knowledge folders mv.

Arguments

ArgumentRequiredDescription
pathYesFolder path as shown in the app; the leading / is optional
destinationYesFolder path as shown in the app; the leading / is optional

Delete knowledge base

sim knowledge delete <knowledgeBaseId> [options]

Arguments

ArgumentRequiredDescription
knowledgeBaseIdYesUnique knowledge base identifier.

Options

OptionRequiredDescription
-y, --yesYesConfirm this operation.

Get knowledge base

sim knowledge get <knowledgeBaseId>

Arguments

ArgumentRequiredDescription
knowledgeBaseIdYesUnique knowledge base identifier.

List knowledge bases

sim knowledge list [options]

Options

OptionRequiredDescription
--scope <value>NoWhich lifecycle set to list: active (default) for live knowledge bases, archived for knowledge bases a DELETE archived and POST /knowledge/&#123;knowledgeBaseId&#125;/restore can bring back. folderPath resolves against active folders only, so pairing it with scope=archived returns an empty page when the containing folder was archived too. Accepted values: active, archived.
--folder <value>NoFolder path as shown in the app; the leading / is optional.
--search <value>NoCase-insensitive substring match against the resource name.
--sort-by <value>NoField used to sort the result. Sorting by name is case-sensitive and follows the storage collation, so do not rely on a case-insensitive order. Accepted values: name, createdAt, updatedAt.
--sort-order <value>NoSort direction. Accepted values: asc, desc.
--limit <n>NoMaximum items to return (0 for everything). Defaults to 100.

Restore an archived knowledge base

sim knowledge restore <knowledgeBaseId>

Arguments

ArgumentRequiredDescription
knowledgeBaseIdYesUnique knowledge base identifier.

Search knowledge

sim knowledge search [options]

Options

OptionRequiredDescription
--kb <value...>YesKnowledge base ID (repeatable) (space-separated, or @path / @- with one value per line; @@value for a literal leading @).
--query <value>NoText to search for.
--top-k <value>NoMaximum number of search results to return. Must be a whole number between 1 and 100; the boundary schema only bounds the range, so a fractional value is admitted here and then rejected with 400 during search.
--tag-filters <json|@file>NoTag filters as [{"tagName":"...","operator":"...","value":"..."}] (JSON, or @path / @- to read a file or stdin).
--search-mode <value>NoSearch algorithm. Accepted values: vector, hybrid.
--reranker-enabledNoRe-order retrieved chunks with a reranking model before truncating to topK. Ignored for a tag-only search, and billed as an additional search unit. Reranking is best-effort — a provider failure falls back to vector ordering, so check rerankerStatus on the response.
--no-reranker-enabledNoSend --reranker-enabled as false.
--reranker-model <value>NoReranking model to use when rerankerEnabled is true. Defaults to rerank-v4.0-fast. Accepted values: rerank-v4.0-pro, rerank-v4.0-fast, rerank-v3.5.
--reranker-input-count <value>NoHow many candidate chunks to retrieve before reranking. Defaults to four times topK, capped at 100. A larger pool costs more retrieval work but gives the reranker more to choose from.

Update knowledge base

sim knowledge update <knowledgeBaseId> [options]

Arguments

ArgumentRequiredDescription
knowledgeBaseIdYesUnique knowledge base identifier.

Options

OptionRequiredDescription
--name <value>NoNew knowledge base name.
--description <value>NoNew knowledge base description.
--chunking-config <json|@file>NoNew document chunking configuration. (JSON, or @path / @- to read a file or stdin).
--folder <value>NoFolder path as shown in the app; the leading / is optional.

Move a knowledge base to a folder

sim knowledge mv <knowledgeBaseId> <folder>

Arguments

ArgumentRequiredDescription
knowledgeBaseIdYesUnique knowledge base identifier.
folderYesFolder path as shown in the app; the leading / is optional

List knowledge resources and child folders together

sim knowledge ls [path] [options]

Arguments

ArgumentRequiredDescription
pathNoFolder path to list; defaults to the root folder

Options

OptionRequiredDescription
--search <text>NoFilter folders and resources by name.
--limit <n>NoMaximum combined items to return (0 for everything). Defaults to 100.

Create a knowledge directory at a path

sim knowledge mkdir <path>

Arguments

ArgumentRequiredDescription
pathYesFolder path to create; the leading / is optional

On this page