dots dotabases, dots row-templates, and dots spaces
Every dots dotabases, dots row-templates, and dots spaces subcommand — 51 commands with their arguments and options, read from the CLI command tree.
The dots dotabases, dots row-templates, and dots spaces families, command by command.
Every signature, argument, and option below is read from the CLI's own command tree,
so this page cannot drift from dots --help. Every other family is listed in
CLI Reference.
The survey read on this page — dotabases list —
answers at summary by default: identity plus the bounded fields, under a
footer naming the tier.
--level scan narrows a survey read to the identity fields for that record family.
dotabases list keeps the Dotabase name, slug, human id, and icon.
--level full restores the widest record, and a row's body renders at full alone;
--fields bypasses the ladder for an exact allowlist. A read that names one record
answers at full already, so the pattern is scan-then-select: survey the collection
cheaply, then pull the one record you chose in full.
dots dotabases
dots dotabases [options] [command]
List, create, update, describe, delete, and seed Dotabases.
dots dotabases list
dots dotabases list [options]
List Dotabases in the workspace.
Options:
--space <id>— Filter to a single Space by id.--foundational— Filter to foundational Dotabases only.--limit <n>— Maximum records to return.--offset <n>— Records to skip before returning the page.--count— Print the number of records this list returns instead of the records themselves.
dots dotabases activity
dots dotabases activity [options] <dotabase>
Read a 's newest-first row-activity feed (creates, status changes, edges, consolidation proposals).
Arguments:
<dotabase>— Dotabase id, slug, or canonical human-id whose activity feed should be read.
Options:
--limit <n>— Max events to return (integer from 1 to 1000; default 200).--kind <eventKind>— Filter to a single event kind, matched over the returned window (e.g. consolidation_proposed, status_changed).
dots dotabases create
dots dotabases create [options]
Options:
--name <name>— Display name (required).--slug <slug>— URL slug, unique per workspace (required).--prefix <prefix>— Human-id prefix for rows, e.g. DOC (required).--description <text>— Description.--icon <icon>— Icon identifier.--space <id>— id to create the Dotabase in.--body-renderer-key <key>— First-party body-renderer key stored on the Dotabase (e.g. roadmap), selecting how row bodies render; create-only, lowercase [a-z][a-z0-9_]*.--creation-plan <rowId>— Originating Artifacts row id (uuid, a Dotabase Creation Plan) — draws a produces provenance edge artifact→Dotabase.--manual-purpose <text>— Operating Manual purpose — a one-line framing of the Dotabase.--manual-judgment <md>— Operating Manual judgment (markdown) authored at create.--manual-judgment-file <path>— Read the Operating Manual judgment from a file (mutually exclusive with --manual-judgment).--properties-file <path>— Path to a JSON file with an array of property definitions to seed (initial_properties).--views-file <path>— Path to a JSON file with an array of saved-view configurations to seed (initial_views).--behaviors-file <path>— Path to a JSON file with an array of behavior bindings to attach (_bindings: { behavior_id, enabled, config, bound_to_properties? }), e.g. ai_fill / deterministic_fill.--normalizer <key>— Default markdown-import normalizer key for this Dotabase (e.g. field_map, inline_block, auto); imports resolve it unless overridden per-import.--normalizer-config <path>— Path to a JSON file with the normalizer's declarative config (the MappingConfig / AutoConfig bag) stored as the Dotabase default.--no-embedding— Disable vector embedding for this Dotabase (on by default — most Dotabases want semantic search).--no-diiice— Disable DIIICE auto-classification for this Dotabase (on by default).
dots dotabases update
dots dotabases update [options] <ref>
Update a Dotabase's settings (name, description, icon, and the embedding / DIIICE toggles). Sidebar placement moves with dots dotabases move.
Arguments:
<ref>— Dotabase id, slug, or canonical human-id.
Options:
--name <name>— New display name.--description <text>— New description.--icon <icon>— New icon identifier.--icon-color <color>— New icon color.--embedding <bool>— Enable or disable vector embedding (true|false). Flipping it true makes the Dotabase's rows eligible for the embedding-backfill job (rundots jobs run embedding-backfill).--diiice <bool>— Enable or disable DIIICE auto-classification (true|false).
dots dotabases move
dots dotabases move [options] <ref>
Move a Dotabase to a Space and an exact sidebar position. Rows, human ids, and schema are untouched — only the sidebar placement changes.
Arguments:
<ref>— Dotabase id, slug, or canonical human-id.
Options:
--space <ref>— Destination Space, by id (uuid) or slug.--position <n>— 0-based slot among the destination Space's sidebar items; omit to land last.
dots dotabases seed
dots dotabases seed [options]
Provision the workspace — ensure the company, System Space, and every Foundational Dotabase (idempotent).
dots dotabases import-markdown
dots dotabases import-markdown [options] <dir>
Recursively import every .md file in a directory tree into a Dotabase, normalizing frontmatter to row fields.
Arguments:
<dir>— Root directory containing .md files to import recursively.
Options:
--dotabase <slug>— Target Dotabase slug (required).--skip-behaviors <list>— Comma-separated behavior ids to suppress on every imported row (e.g. classification,tag_inference to preserve authored DIIICE/tags).--defer-enrichment— Import immediately and enrich embedding, classification, AI fill, and tag inference in the background.--normalizer <key>— Markdown normalizer key for this import (e.g. field_map, inline_block, auto); overrides the Dotabase default for this run.--normalizer-config <path>— Path to a JSON file with the normalizer's declarative config (MappingConfig / AutoConfig) for this import.
dots dotabases index
dots dotabases index [options] <dir>
Incrementally ingest a directory tree of .md files into a Dotabase: import new files, update changed ones (by content hash), skip unchanged.
Arguments:
<dir>— Root directory to recursively index for .md files.
Options:
--dotabase <slug>— Target Dotabase slug (required).--skip-behaviors <list>— Comma-separated behavior ids to suppress on every newly imported row (e.g. classification,tag_inference to preserve authored DIIICE/tags).--defer-enrichment— Index immediately and enrich embedding, classification, AI fill, and tag inference in the background.--exclude <glob>— Glob (repeatable) matched against each file's relative path / basename; matches are skipped (e.g. --exclude "-agent-.md").--set <pair>— Property to stamp on every imported row as key=value (repeatable); the type is resolved from the Dotabase schema (e.g. --set artifact_type=plan).--normalizer <key>— Markdown normalizer key for this index run (e.g. field_map, inline_block, auto); overrides the Dotabase default.--normalizer-config <path>— Path to a JSON file with the normalizer's declarative config (MappingConfig / AutoConfig) for this index run.
dots dotabases describe
dots dotabases describe [options] [id]
Show a single Dotabase by id or slug.
Arguments:
[id]— Dotabase id or slug.
Options:
--slug <slug>— Look up by slug without a positional id.--schema-only— Print only the property roster (key, display name, type, option ids) instead of the full record.--property <key>— Print the full config of a single schema property by key.
dots dotabases delete
dots dotabases delete [options] <id>
Delete a Dotabase by id.
Arguments:
<id>— Dotabase id to delete.
Options:
--yes— Confirm the destructive action (required; it cannot be undone).--dry-run— Resolve and report what would change; writes nothing.
dots dotabases derive
dots dotabases derive [options]
Derive rows from one Dotabase into another via a named extractor (e.g. conversation_qa). Idempotent: re-running creates no duplicates.
Options:
--from <ref>— Source Dotabase to read from (UUID or canonical human-id) (required).--to <ref>— Target Dotabase to write derived rows into (UUID or canonical human-id) (required).--extractor <id>— Extractor id to run over each source row (required).--config <file>— Path to a JSON file with the optional extractor-interpreted per-run config (a JSON object of scalar values).
dots dotabases behaviors
dots dotabases behaviors [options] [command]
Inspect and attach behavior bindings (ai_fill, deterministic_fill, …) on a Dotabase.
dots dotabases behaviors list
dots dotabases behaviors list [options] <ref>
Show a Dotabase's current behavior bindings and the applicable builtin behavior catalog.
Arguments:
<ref>— Dotabase id, slug, or canonical human-id.
Options:
--limit <n>— Maximum records to return.--offset <n>— Records to skip before returning the page.--count— Print the number of records this list returns instead of the records themselves.
dots dotabases behaviors set
dots dotabases behaviors set [options] <ref>
Replace a Dotabase's entire behavior-binding array from a JSON file (the updateBindings replace contract).
Arguments:
<ref>— Dotabase id, slug, or canonical human-id.
Options:
--file <path>— Path to a JSON file with the full array of behavior bindings to set.--force— Proceed even when the new array DROPS a behavior_id currently bound (the replace would otherwise refuse to silently unbind it).--dry-run— Resolve and report what would change; writes nothing.
dots dotabases schema
dots dotabases schema [options] [command]
Inspect and edit a Dotabase's property schema — add, remove, reorder, rename, and retype properties, and manage a selection property's option roster.
dots dotabases schema scaffold
dots dotabases schema scaffold [options]
Emit the canonical schema property array: the server-authoritative system properties (title, edges, embedding — each carrying config.system_field) plus your custom properties appended. Never hand-roll a system property.
Options:
--file <path>— Path to a JSON file with an array of CUSTOM property definitions to append after the system scaffold.--out <path>— Write the composed property array to this path instead of printing it.
dots dotabases schema set
dots dotabases schema set [options] <ref>
Replace a Dotabase's entire property array from a JSON file (the updateDotabaseSchema replace contract).
Arguments:
<ref>— Dotabase id, slug, or canonical human-id.
Options:
--file <path>— Path to a JSON file with the full array of property definitions to set.--force— Proceed even when the new array DROPS or RETYPES a property currently declared (the replace would otherwise refuse to silently lose or migrate it).--agent-write-guidance <text>— Guidance text carried on a REQUIRED_PROPERTIES_MISSING write refusal (names the capture workflow that collects the required properties). Empty string clears it; omitted preserves the stored value.--dry-run— Resolve and report what would change; writes nothing.
dots dotabases schema add-property
dots dotabases schema add-property [options] <ref>
Add one or more property definitions to a Dotabase's schema (additive — e.g. the Edges / Embedding / Created / Updated surfacing properties).
Arguments:
<ref>— Dotabase id, slug, or canonical human-id.
Options:
--file <path>— Path to a JSON file with an array of property definitions to append.--dry-run— Resolve and report what would change; writes nothing.
dots dotabases schema remove-property
dots dotabases schema remove-property [options] <ref> <key>
Remove one property from a Dotabase's schema. The property declaration goes; the values rows already stored under it stop being declared and stop surfacing.
Arguments:
<ref>— Dotabase id, slug, or canonical human-id.<key>— Key of the property to remove.
Options:
--yes— Confirm the destructive action (required; it cannot be undone).--dry-run— Resolve and report what would change; writes nothing.
dots dotabases schema reorder-property
dots dotabases schema reorder-property [options] <ref>
Reorder a Dotabase's property array. Pass EVERY current property key in the order you want — the order is the schema's column order.
Arguments:
<ref>— Dotabase id, slug, or canonical human-id.
Options:
--keys <keys>— The complete property-key list in its new order (repeatable, and comma/whitespace-separated within one flag). Read the current keys withdots dotabases describe <ref> --schema-only.--dry-run— Resolve and report what would change; writes nothing.
dots dotabases schema add-option
dots dotabases schema add-option [options] <ref>
Append one option to a select / multi_select / status property's roster (additive; refuses a duplicate option id).
Arguments:
<ref>— Dotabase id, slug, or canonical human-id.
Options:
--property <key>— Key of the option-bearing property to extend (select, multi_select, or status).--id <id>— New option id — the stable value rows store (kebab-case like the existing ids).--name <name>— New option display name.--color <color>— Option color token.--dry-run— Resolve and report what would change; writes nothing.
dots dotabases schema rename-option
dots dotabases schema rename-option [options] <ref>
Rename one option's display name on a select / multi_select / status property. The option id rows store is unchanged — use rename-option-id to migrate the id itself.
Arguments:
<ref>— Dotabase id, slug, or canonical human-id.
Options:
--property <key>— Key of the option-bearing property whose option is renamed (select, multi_select, or status).--id <id>— Existing option id whose display name changes (the stable value rows store).--name <name>— New display name for the option.--dry-run— Resolve and report what would change; writes nothing.
dots dotabases schema recolor-option
dots dotabases schema recolor-option [options] <ref>
Change one option's color on a select / multi_select / status property (presentation only — no stored row value changes).
Arguments:
<ref>— Dotabase id, slug, or canonical human-id.
Options:
--property <key>— Key of the option-bearing property whose option is recolored (select, multi_select, or status).--id <id>— Existing option id to recolor (the stable value rows store).--color <color>— New option color token.--dry-run— Resolve and report what would change; writes nothing.
dots dotabases schema delete-option
dots dotabases schema delete-option [options] <ref>
Remove one option from a select / multi_select / status property's roster. Rows that already selected it KEEP the raw option id, which no longer resolves to a label — rename the id onto a surviving option instead if the rows should be migrated.
Arguments:
<ref>— Dotabase id, slug, or canonical human-id.
Options:
--property <key>— Key of the option-bearing property to remove the option from (select, multi_select, or status).--id <id>— Option id to remove from the roster (the stable value rows store).--yes— Confirm the destructive action (required; it cannot be undone).--dry-run— Resolve and report what would change; writes nothing.
dots dotabases schema reorder-option
dots dotabases schema reorder-option [options] <ref>
Reorder a select / multi_select / status property's option roster. Pass EVERY current option id in the order you want; the route refuses a list that is not exactly the current roster.
Arguments:
<ref>— Dotabase id, slug, or canonical human-id.
Options:
--property <key>— Key of the option-bearing property to reorder (select, multi_select, or status).--ids <ids>— The complete option-id roster in its new order (repeatable, and comma/whitespace-separated within one flag). Read the current ids withdots dotabases describe <ref> --property <key>.--dry-run— Resolve and report what would change; writes nothing.
dots dotabases schema rename-option-id
dots dotabases schema rename-option-id [options] <ref>
Rename one option's id on a select / multi_select / status property (old-id to new-id), rewriting every row, saved- filter, and schema reference in one server-side transaction.
Arguments:
<ref>— Dotabase id, slug, or canonical human-id.
Options:
--property <key>— Key of the option-bearing property whose option is renamed (select, multi_select, or status).--old-id <id>— Existing option id to rename (the stable value rows currently store).--new-id <id>— New option id to migrate to (kebab-case like the existing ids).--dry-run— Resolve and report what would change; writes nothing.
dots dotabases schema rename-property
dots dotabases schema rename-property [options] <ref>
Rename a property's key across the whole Dotabase (old-key to new-key), rewriting every row, saved-view reference, dashboard-widget reference, and the page-property config in one server-side transaction.
Arguments:
<ref>— Dotabase id, slug, or canonical human-id.
Options:
--old-key <key>— Existing property key to rename (the key rows currently store).--new-key <key>— New property key (letters, digits, underscore).--dry-run— Resolve and report what would change; writes nothing.
dots dotabases schema retype-property
dots dotabases schema retype-property [options] <ref> <key>
Retype a property between the value-compatible select and status types, preserving its option roster and every stored row value in one server-side transaction.
Arguments:
<ref>— Dotabase id, slug, or canonical human-id.<key>— Key of the select or status property to retype.
Options:
--to <type>— Target type to retype to (select or status).--dry-run— Resolve and report what would change; writes nothing.
dots dotabases derive-binding
dots dotabases derive-binding [options] [command]
Manage real-time cross-Dotabase derivation bindings (keep a target Dotabase in sync with a source via an extractor).
dots dotabases derive-binding create
dots dotabases derive-binding create [options]
Register a real-time derivation binding (idempotent). By default also backfills the target from the existing source rows.
Options:
--from <ref>— Source Dotabase to derive from (UUID, slug, or canonical human-id) (required).--to <ref>— Target Dotabase to write derived rows into (UUID, slug, or canonical human-id) (required).--extractor <id>— Extractor id to run over each source row (required).--no-backfill— Skip the one-pass backfill over the existing source rows at bind time.--disabled— Register the binding disabled (the consumer ignores it until re-enabled).--config <file>— Path to a JSON file with the optional extractor-interpreted per-run config (a JSON object of scalar values).
dots dotabases derive-binding list
dots dotabases derive-binding list [options]
List this company's real-time derivation bindings (newest first).
Options:
--limit <n>— Maximum records to return.--offset <n>— Records to skip before returning the page.--count— Print the number of records this list returns instead of the records themselves.
dots dotabases derive-binding toggle
dots dotabases derive-binding toggle [options] <id>
Enable or disable a derivation binding by id.
Arguments:
<id>— Derivation binding id to toggle.
Options:
--enabled— Enable the binding (the consumer resumes deriving from it).--disabled— Disable the binding (the consumer ignores it).
dots dotabases derive-binding delete
dots dotabases derive-binding delete [options] <id>
Delete a derivation binding by id.
Arguments:
<id>— Derivation binding id to delete.
Options:
--yes— Confirm the destructive action (required; it cannot be undone).--dry-run— Resolve and report what would change; writes nothing.
dots dotabases templates
dots dotabases templates [options] [command]
The Add-Type Templates Registry — the Dotabase types this workspace can add, and adding one.
dots dotabases templates list
dots dotabases templates list [options]
List the registered Dotabase templates (built-in plus this company's), each tagged with whether this company already has an instance and which Dotabase that is. The route answers the whole registry, so --limit/--offset window what it returned.
Options:
--limit <n>— Maximum records to return.--offset <n>— Records to skip before returning the page.--count— Print the number of records this list returns instead of the records themselves.
dots dotabases templates instantiate
dots dotabases templates instantiate [options] <template>
Provision a Dotabase from a registered template into the Space the template targets. Single-instance idempotent: a second call on an already-provisioned single-instance template returns the existing Dotabase with created:false rather than a second copy. A non-built-in template requires an admin actor.
Arguments:
<template>— Template id to instantiate, exactly asdotabases templates listreports it (a dotted lowercase id, e.g. forge.skill).
Options:
--name <name>— Display name for the new Dotabase, overriding the template's own. The human-id prefix is not overridable on a single-instance built-in template.
dots row-templates
dots row-templates [options] [command]
Read and author a Dotabase's page templates — the authoritative body scaffold a new row is created from.
dots row-templates list
dots row-templates list [options] <dotabase>
List a Dotabase's page templates (id, slug, title, source) — the scaffolds its new-row popover offers.
Arguments:
<dotabase>— Dotabase id, slug, or canonical human-id whose page templates should be listed.
Options:
--limit <n>— Maximum records to return.--offset <n>— Records to skip before returning the page.--count— Print the number of records this list returns instead of the records themselves.
dots row-templates get
dots row-templates get [options] <dotabase> <slug>
Read one page template by its per-Dotabase slug, body scaffold included; a slug the Dotabase does not carry exits 4.
Arguments:
<dotabase>— Dotabase id, slug, or canonical human-id containing the page template.<slug>— Page-template slug to read, unique within the Dotabase.
dots row-templates save
dots row-templates save [options] <dotabase> <row> <title>
Save an existing row as a new page template — its body, icon, layout, and schema-declared property values are copied; the source row is never touched. The new template has no slug until one is seeded.
Arguments:
<dotabase>— Dotabase id, slug, or canonical human-id the source row lives in.<row>— Source row to copy — its canonical human-id (SPEC-12) or UUID.<title>— Title for the new page template.
dots row-templates instantiate
dots row-templates instantiate [options] <dotabase> <template>
Create a new live row from a page template — a fresh human-id, the template's body and property values, and every create behavior fires. The template is unchanged.
Arguments:
<dotabase>— Dotabase id, slug, or canonical human-id the template lives in.<template>— Page template to instantiate — its per-Dotabase slug or UUID.
dots row-templates update
dots row-templates update [options] <dotabase> <template>
Edit a page template's own fields. At least one flag is required; none clears --icon, --icon-color, or --layout-key.
Arguments:
<dotabase>— Dotabase id, slug, or canonical human-id the template lives in.<template>— Page template to edit — its per-Dotabase slug or UUID.
Options:
--body <text>— New body scaffold (Markdown); pass an empty string to empty it.--body-file <path>— Path to a file whose full UTF-8 content is used instead of --body (for text too large to pass inline). Mutually exclusive with --body.--title <title>— New template title.--icon <token>— New icon token, ornoneto clear it.--icon-color <token>— New icon colour token, ornoneto clear it.--layout-key <key>— New layout registry key (lowercase letters, digits, underscore, ; must start with a letter), ornoneto clear it.
dots row-templates set-property
dots row-templates set-property [options] <dotabase> <template> <key> [value]
Set one property value on a page template. The value is validated server-side against the property's declared type on the Dotabase schema; an undeclared key is refused.
Arguments:
<dotabase>— Dotabase id, slug, or canonical human-id the template lives in.<template>— Page template to edit — its per-Dotabase slug or UUID.<key>— Property key as declared on the Dotabase schema (letters, digits, underscore).[value]— Property value as a raw string; omit it and pass --json for a number, boolean, array, object, or null.
Options:
--json <json>— Property value as JSON — the structured channel for a number, boolean, array, object, or an explicit null. Mutually exclusive with the [value] positional.
dots row-templates delete
dots row-templates delete [options] <dotabase> <template>
Delete a page template. Rows already created from it are untouched; no action restores the template.
Arguments:
<dotabase>— Dotabase id, slug, or canonical human-id the template lives in.<template>— Page template to delete — its per-Dotabase slug or UUID.
Options:
--yes— Confirm the destructive action (required; it cannot be undone).--dry-run— Resolve and report what would change; writes nothing.
dots spaces
dots spaces [options] [command]
Create, read, restyle, sort, and delete the workspace's Spaces (the sidebar groupings Dotabases and pages belong to).
dots spaces list
dots spaces list [options]
List the workspace's Spaces (id, name, slug, position, is_system, is_locked) — the Space membership Dotabases and pages resolve against.
Options:
--limit <n>— Maximum records to return.--offset <n>— Records to skip before returning the page.--count— Print the number of records this list returns instead of the records themselves.
dots spaces create
dots spaces create [options] <name>
Create a Space. It lands last in the sidebar; move it with dots spaces update --position. Tenant and creator are server-injected.
Arguments:
<name>— Display name for the new Space.
Options:
--icon <value>— Icon value — a picker icon name (e.g. IconPointFilled, folder) or an emoji. Defaults to "folder", the icon the sidebar's New Space dialog starts on.--icon-kind <kind>— Icon kind: "icon" (default) or "emoji".--color <token>— Icon color token (e.g. a DIIICE category like "context").
dots spaces update
dots spaces update [options] <ref>
Update one Space's name, icon, color, or position. A locked (DIIICE) Space accepts icon / color / position and refuses a rename (SPACE_LOCKED).
Arguments:
<ref>— Space id (uuid) or slug.
Options:
--name <name>— New display name (refused on a locked Space).--icon <value>— Icon value — a picker icon name (e.g. IconPointFilled, folder) or an emoji.--icon-kind <kind>— Icon kind: "icon" (default stored kind) or "emoji".--color <token>— Icon color token (e.g. a DIIICE category like "context"); "none" clears it.--position <n>— Sidebar position (non-negative integer).
dots spaces sort
dots spaces sort [options] <ref>
Sort a Space's Dotabases A–Z in the sidebar. Pages keep their slots — only the Dotabase positions are rewritten.
Arguments:
<ref>— Space id (uuid) or slug.
dots spaces delete
dots spaces delete [options] <ref>
Delete an empty Space. A Space still holding Dotabases is refused (SPACE_NOT_EMPTY) — move them out with dots dotabases move first; a locked (DIIICE) Space and the System Space are refused outright.
Arguments:
<ref>— Space id (uuid) or slug.
Options:
--yes— Confirm the destructive action (required; it cannot be undone).--dry-run— Resolve and report what would change; writes nothing.
generator: apps/docs/pipeline/generate-reference.ts — regenerate with pnpm --filter @dots/docs docs:generate:reference; a hand edit to this page fails the docs drift gate.
dots dotabases, dots row-templates, and dots spaces · This page in the graph
- mentionstoDIIICE: Context
- mentionstoDOT
- mentionstoView
- mentionstoEdge
- mentionstoDIIICE
- mentionstoCreate A Dotabase
- mentionstoDotabase
- mentionstoBehavior
- mentionstoSpace
- mentionstoDIIICE
- mentionstoDOT
- referencestoCLI Reference
- mentionsfromdots rows, dots edges, and dots pages
- mentionsfromQuickstart
- mentionsfromImport From Markdown
- mentionsfromCLI Reference
- referencesfromCLI Overview
- documented byfromCLI Markdown Import and Incremental Indexing