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
- Configuration - what the CLI writes into
solver.tomlandsolverforge.app.toml - Solver Configuration - runtime phase, selector, acceptor, and termination options