Skip to content

Commands

Run project commands from the project root with its environment activated. Use biotope <command> --help for options. With a uv-managed environment, prefix commands with uv run.

Initialize and describe

Command Purpose
biotope init my-kg Create a metadata project in a new subdirectory.
biotope init . --no-prompt Initialize the current directory using defaults; add --no-git to skip Git initialization.
biotope add <path>... Describe local files or directories with croissant-baker.
biotope add <path> --json Emit per-file scan outcomes and diagnostics as JSON.
biotope map inspect <manifest> Inspect record sets and declared field types without reading payloads.

Initialization writes metadata configuration and purpose files. It does not create a graph workspace or install Python dependencies. Baking and checksum verification read source bytes; metadata inspection does not.

add --rebake refreshes a directory description and add --force refreshes a file description. Curated or annotated manifests are protected from overwrite. Use add <path> --bake-to <new-review.jsonld> to bake separately for reconciliation. Keep that output outside the input directory and .biotope/datasets/.

Curate and generate

biotope source register .biotope/reviews/study.jsonld --name study --reason "Reviewed source structure"
biotope source generate .biotope/datasets/study.jsonld --out graph/sources

Registration stores the effective curated description. --replace replaces an existing description after reporting removed structure; it does not merge files.

Generation gives every top-level record set, and every file no record set reads, a package under graph/sources/<manifest>/ with a schema, a SOURCE registration and a placeholder loader. It creates missing files only and never rewrites an existing schema, registration or loader; on a conflict it writes nothing. It prints each package's status (created, completed, current, drift, orphaned or conflict) and records every contract revision in .biotope/contracts/. --package overrides the manifest-derived root name; --check writes nothing and fails only when generation would create or change a file. Removed sources leave orphan packages: exclude them, then delete their directories.

Use annotate to edit descriptive metadata and config to maintain annotation requirements. See shared annotation policies for local and remote settings.

Author and build

Command Behavior
biotope graph scaffold Create graph/ with empty registries and a pipeline to implement.
biotope map --purpose ... --entity ... --relation ... Record research requirements.
biotope map --show Show the current purpose and requirements.
biotope graph check Check the source inventory, drift, declarations, requirement bindings and Python types.
biotope graph quality Check and execute the pipeline, printing an assessment without export.
biotope graph build Check and execute, then replace graph/build/ after a successful export.
biotope graph metagraph Write an offline topology viewer to graph/metagraph.html.

Graph commands support --json; check, quality, build and metagraph also accept --graph <folder>. Scaffold always creates graph/ in the current directory and refuses an existing path. It performs no initialization, baking or execution.

Check, quality and build discover the source packages statically, then load topology/__init__.py:TOPOLOGY and pipelines/build_graph.py:PIPELINE, so inventory findings are reported even when the pipeline cannot be imported. Check does not invoke loaders or mappings. build --out <dir> builds elsewhere; a build replaces a directory only when it recognizes every file in it. Metagraph imports topology independently; --out <html> selects a different viewer path and --report <run.json> adds matching-topology observations.

Quality and build each execute the declared scope once. Running both executes twice. Warnings require interpretation; definition, execution and integrity failures can fail an operation. See typed projects for authoring and report formats for JSON details.

Track and review

Command Purpose
biotope queue, biotope mark Inspect and maintain coarse raw, processed and mapped states.
biotope check-data Read source bytes to verify recorded checksums.
biotope mv, biotope rm Maintain tracked paths; rm can delete source data.
biotope status --detailed Review metadata, annotation issues and local Git changes.
biotope commit, log, push, pull Work with the project's Git repository.

Queue states do not certify graph validity. Metadata commands do not automatically stage authored Python; version that code with normal Git. Build outputs can be archived separately without changing tracked source data.

For removed commands and options, see migration.