From 47642b33574b46168141f1ce876ee73e806b0ae1 Mon Sep 17 00:00:00 2001 From: Enrico Piovesan Date: Wed, 14 Oct 2026 14:54:28 -0600 Subject: [PATCH] docs(site): correct CLI install to traverse-cli-rs (crates.io traverse-cli is unrelated), refs traverse#1687 --- src/pages/questions/what-crates-make-up-traverse.astro | 4 ++-- src/pages/questions/what-is-the-traverse-cli.astro | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/pages/questions/what-crates-make-up-traverse.astro b/src/pages/questions/what-crates-make-up-traverse.astro index cb161ec..347ee5e 100644 --- a/src/pages/questions/what-crates-make-up-traverse.astro +++ b/src/pages/questions/what-crates-make-up-traverse.astro @@ -2,8 +2,8 @@ import QuestionLayout from '@layouts/QuestionLayout.astro'; const relatedLinks = []; -const _body = "

Traverse's own repo is a workspace of eight Rust crates. Each one has a specific job. You can use them together through the CLI or pull individual crates into your own code.

\n\n

traverse-runtime

\n

The core execution engine. It drives the state machine from idle through discovery, constraint evaluation, selection, and execution. Every placement target builds on this crate. You use it if you are embedding Traverse in a Rust application rather than calling it from the CLI.

\n\n

traverse-contracts

\n

Defines the contract schema: input and output types, preconditions, postconditions, placement constraints, and the governing spec. The runtime uses this crate to parse, validate, and enforce contracts. You interact with it by writing TOML contract files.

\n\n

traverse-cli

\n

The traverse command you install with cargo install traverse-cli. It wraps the runtime and MCP server in a terminal interface. Most developers only need this crate directly.

\n\n

traverse-mcp

\n

Implements the MCP stdio server that exposes your capabilities to AI agents. It supports tools/list and tools/call. It ships as its own binary, started with traverse-mcp stdio. See how the MCP server works for details.

\n\n

traverse-embedder

\n

The public Rust embedder SDK for host applications — Linux GTK apps and CLI tools — that want to load and run an application-owned bundle of capabilities directly, without going through the CLI's server process.

\n\n

traverse-native-bridge and traverse-swift-host

\n

The building blocks for platform-native mobile embedders. traverse-native-bridge is a deterministic builder for the governed WebAssembly runtime artifact those bridges load. traverse-swift-host is the Apple static-library host — packaged as the TraverseSwiftHost XCFramework — behind the Swift/iOS runtime bridge.

\n\n

traverse-expedition-wasm

\n

Compiles the bundled \"expedition\" example domain to wasm32-wasi for testing and demos. It is not the browser embedder — browser execution is handled separately by the public Web/TypeScript embedder SDK, which runs directly against the browser's native WebAssembly host.

\n\n

What about traverse-registry?

\n

It used to live in this workspace, but it was extracted into its own repository, traverse-framework/registry, and is now consumed here as an independently versioned, externally published dependency rather than a workspace crate.

"; -const _jsonLd = "{\"@context\":\"https://schema.org\",\"@type\":\"FAQPage\",\"mainEntity\":[{\"@type\":\"Question\",\"name\":\"What crates make up Traverse?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"Traverse's repo is made up of eight crates: traverse-runtime (core execution engine), traverse-contracts (contract schema and validation), traverse-cli (command-line interface), traverse-mcp (MCP stdio server for AI agents), traverse-embedder (public Rust embedder SDK), traverse-native-bridge and traverse-swift-host (native mobile bridge building blocks), and traverse-expedition-wasm (the bundled example domain compiled to wasm32-wasi). The capability registry, traverse-registry, was extracted into its own repository and is now an external published dependency, not a workspace crate.\"}}]}"; +const _body = "

Traverse's own repo is a workspace of eight Rust crates. Each one has a specific job. You can use them together through the CLI or pull individual crates into your own code.

\n\n

traverse-runtime

\n

The core execution engine. It drives the state machine from idle through discovery, constraint evaluation, selection, and execution. Every placement target builds on this crate. You use it if you are embedding Traverse in a Rust application rather than calling it from the CLI.

\n\n

traverse-contracts

\n

Defines the contract schema: input and output types, preconditions, postconditions, placement constraints, and the governing spec. The runtime uses this crate to parse, validate, and enforce contracts. You interact with it by writing TOML contract files.

\n\n

traverse-cli-rs

\n

The traverse-cli command, installed with cargo install traverse-cli-rs --locked. The plain traverse-cli crate on crates.io is an unrelated project, so don't install that one. It wraps the runtime and MCP server in a terminal interface. Most developers only need this crate directly.

\n\n

traverse-mcp

\n

Implements the MCP stdio server that exposes your capabilities to AI agents. It supports tools/list and tools/call. It ships as its own binary, started with traverse-mcp stdio. See how the MCP server works for details.

\n\n

traverse-embedder

\n

The public Rust embedder SDK for host applications — Linux GTK apps and CLI tools — that want to load and run an application-owned bundle of capabilities directly, without going through the CLI's server process.

\n\n

traverse-native-bridge and traverse-swift-host

\n

The building blocks for platform-native mobile embedders. traverse-native-bridge is a deterministic builder for the governed WebAssembly runtime artifact those bridges load. traverse-swift-host is the Apple static-library host — packaged as the TraverseSwiftHost XCFramework — behind the Swift/iOS runtime bridge.

\n\n

traverse-expedition-wasm

\n

Compiles the bundled \"expedition\" example domain to wasm32-wasi for testing and demos. It is not the browser embedder — browser execution is handled separately by the public Web/TypeScript embedder SDK, which runs directly against the browser's native WebAssembly host.

\n\n

What about traverse-registry?

\n

It used to live in this workspace, but it was extracted into its own repository, traverse-framework/registry, and is now consumed here as an independently versioned, externally published dependency rather than a workspace crate.

"; +const _jsonLd = "{\"@context\":\"https://schema.org\",\"@type\":\"FAQPage\",\"mainEntity\":[{\"@type\":\"Question\",\"name\":\"What crates make up Traverse?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"Traverse's repo is made up of eight crates: traverse-runtime (core execution engine), traverse-contracts (contract schema and validation), traverse-cli-rs (command-line interface, binary traverse-cli), traverse-mcp (MCP stdio server for AI agents), traverse-embedder (public Rust embedder SDK), traverse-native-bridge and traverse-swift-host (native mobile bridge building blocks), and traverse-expedition-wasm (the bundled example domain compiled to wasm32-wasi). The capability registry, traverse-registry, was extracted into its own repository and is now an external published dependency, not a workspace crate.\"}}]}"; --- how the MCP server works for details.

\n\n

Installation

\n

Install from crates.io with Cargo:

\n
cargo install traverse-cli
\n

You need Rust 1.94 or newer (the pinned toolchain version) and the wasm32-wasip1 target installed. See the CLI reference for a full command listing.

"; -const _jsonLd = "{\"@context\":\"https://schema.org\",\"@type\":\"FAQPage\",\"mainEntity\":[{\"@type\":\"Question\",\"name\":\"What is the Traverse CLI?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"The Traverse CLI (traverse-cli) is the command-line tool for compiling contracts, registering capabilities, running them locally, and inspecting trace artifacts. It is the primary interface for developing with Traverse outside of an IDE.\"}}]}"; +const _body = "

The Traverse CLI is the traverse command-line tool you use to compile contracts, register capabilities, execute them locally, and inspect results. It is published on crates.io as traverse-cli-rs (the installed binary is traverse-cli) and wraps the full runtime in a developer-friendly interface.

\n\n

What you can do with it

\n \n\n

Basic usage

\n
# Scaffold a new capability package\ntraverse-cli capability new pricing.calculate-total\n\n# After you build the wasm32-wasip1 binary, register a bundle's\n# capabilities, events, and workflows\ntraverse-cli bundle register examples/expedition/registry-bundle/manifest.json\n\n# Execute a capability package against a runtime request\ntraverse-cli capability-package execute capabilities/pricing.calculate-total/manifest.json request.json\n\n# List registered capabilities\ntraverse-cli registry list
\n\n

Starting the MCP server

\n

The MCP stdio server ships as its own binary, separate from the CLI:

\n
traverse-mcp stdio
\n

This makes your local registry available to any MCP-compatible client, including Claude Desktop. See how the MCP server works for details.

\n\n

Installation

\n

Install from crates.io with Cargo:

\n
cargo install traverse-cli-rs --version =0.15.0 --locked
\n

Watch the crate name: traverse-cli on crates.io is an unrelated project (a Solidity analysis tool) that installs a binary with the same name, so cargo install traverse-cli gets you the wrong tool. You need Rust 1.94 or newer (for example rustup toolchain install 1.94.0, then cargo +1.94.0 install traverse-cli-rs --locked) and the wasm32-wasip1 target installed. model package-onnx also needs the ONNX runner guest, which the crate doesn't ship yet; for now it comes from fixtures/onnx/runner.wasm at the release tag (tracked in #1687). See the CLI reference for a full command listing.

"; +const _jsonLd = "{\"@context\":\"https://schema.org\",\"@type\":\"FAQPage\",\"mainEntity\":[{\"@type\":\"Question\",\"name\":\"What is the Traverse CLI?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"The Traverse CLI (crate traverse-cli-rs, binary traverse-cli) is the command-line tool for compiling contracts, registering capabilities, running them locally, and inspecting trace artifacts. It is the primary interface for developing with Traverse outside of an IDE.\"}}]}"; ---