Documentation

Inspect, validate, test, configure, and integrate generated SolverForge apps.

Operations Commands

Operations commands do not change the domain model structure. They inspect the generated app, validate the working tree, run tests, show web/API routes, print MCP client connection configs, edit runtime configuration, or emit shell integration files.

solverforge info

solverforge info [OPTIONS]

Prints the project name, shell, planning solution type, score type, entities, facts, scalar and list solvable fields, constraints, model resources, and whether solver.toml exists. It requires a generated-style src/domain/ directory.

solverforge check

solverforge check [OPTIONS]

Validates:

Check Result
src/domain/ exists Errors if missing
planning solution parses Errors if no solution is found
entity modules in src/domain/mod.rs exist Errors for missing files
constraint modules in src/constraints/mod.rs exist Errors for missing files
solver.toml exists Warns if missing
entities have solvable fields Warns for entities with no scalar or list variable
scalar-group and conflict-repair references Errors when generated model-resource refs are stale

solverforge routes

solverforge routes [OPTIONS]

Searches for src/api/routes.rs, src/api/mod.rs, or src/api.rs, then parses Axum .route("...", method(handler)) calls and prints a METHOD / PATH / HANDLER table. This applies to web and API shells.

solverforge connect

solverforge connect [OPTIONS]

Prints ready-to-paste MCP client configuration for an MCP-shell project: the stdio command plus the Streamable HTTP URL for opencode, Claude Code, Claude Desktop, Cursor, VS Code, and other clients.

Options:

Option Meaning
--write <TARGET> Write the in-project client config for the target: vscode, cursor, claude, or opencode
-p, --port <PORT> Port used in the printed Streamable HTTP URL; when omitted, use .solverforgerc and then 7860

Write targets and their in-project files:

Target Written file
vscode .vscode/mcp.json
cursor .cursor/mcp.json
claude .mcp.json
opencode opencode.json

--write updates only the project’s MCP server entry and replaces the config atomically; JSONC comments in an existing file are preserved. Global client files (Claude Desktop) are printed with their path instead of being modified. See the MCP Shell page.

solverforge connect
solverforge connect --write opencode
solverforge connect --write claude
solverforge connect --write cursor
solverforge connect --write vscode
solverforge connect --port 8080

solverforge test

solverforge test [OPTIONS] [EXTRA_ARGS]...

Arguments:

Argument Meaning
[EXTRA_ARGS]... Arguments passed directly to cargo test

Examples:

solverforge test
solverforge test -- --nocapture
solverforge test integration

solverforge config

solverforge config [OPTIONS] <COMMAND>

Subcommands:

Subcommand Usage Purpose
show solverforge config show Print the contents of solver.toml
set solverforge config set <KEY> <VALUE> Set a dotted TOML key path in solver.toml

config set parses values as integer, float, boolean (true or false), then string. Intermediate TOML tables are created when needed.

Examples:

solverforge config show
solverforge config set termination.seconds_spent_limit 60
solverforge config set environment_mode reproducible

config show

solverforge config show [OPTIONS]

Prints the current solver.toml contents. The command has no local arguments or local options beyond the global flags.

config set

solverforge config set [OPTIONS] <KEY> <VALUE>

Arguments:

Argument Meaning
<KEY> Dotted key path in solver.toml
<VALUE> New value

For example, termination.seconds_spent_limit addresses the solver termination limit. Values are parsed as integer, float, boolean, then string. Intermediate TOML tables are created when needed. config set writes non-phase settings; ordered phases edits are manual, and generated model-resource references in solver.toml are exact-ID graph references that destroy re-renders rather than aliases.

solverforge completions

solverforge completions [OPTIONS] <SHELL>

Arguments:

Argument Meaning
<SHELL> One of bash, elvish, fish, powershell, or zsh

Examples:

solverforge completions bash >> ~/.bashrc
solverforge completions zsh >> ~/.zshrc
solverforge completions fish > ~/.config/fish/completions/solverforge.fish

solverforge help

solverforge help [COMMAND]...

Prints the same help text exposed by --help. With no argument, it prints top-level help. With one or more command names, it prints help for that nested command:

solverforge help
solverforge help generate
solverforge help generate variable
solverforge help config set

See Also