Installation
中文:安装与本地环境
Local development setup for UModel.
Requirements
| Tool | Required for | Minimum |
|---|---|---|
| Go | Service, CLI, MCP, Go tests | 1.22 |
| Make | Local workflows | any recent version |
| Python | Schema expansion, validation, SDK generation | 3.10 |
| Node.js | Web UI | 22 |
| pnpm | Web UI dependencies | 9 preferred |
| Java + Maven | Java SDK verification | Java 8 / Maven 3.6 |
Clone And Prepare
Repository-root setup:
make check-env
make install-envmake check-env verifies Go, Python, Node.js, Web package-manager support, and optional Java/Maven tooling. make install-env creates .venv, installs Python dependencies from tools/requirements.txt, downloads Go modules, installs Web UI dependencies, and pre-resolves Java dependencies when Maven is available.
make setup is kept as an alias for make install-env.
Web Package Manager Resolution
The Web UI prefers pnpm 9 or newer, but the Makefile also supports:
corepack pnpmwhencorepackis available.npm exec --package pnpm@<version>when npm is available.- Existing
web/node_modulesfor local build/dev commands when dependencies are already installed.
Build Service Binaries
make build-serviceThis builds:
umodel-serverumctlumodel-mcp
Start Local Development Services
make devImmediate demo workspace:
make quickstartmake quickstart starts the same local services with GRAPHSTORE=memory and preloads the bundled multi-domain sample into demo.
Defaults:
| Setting | Value |
|---|---|
| API | http://localhost:8080 |
| Web UI | http://localhost:5173 |
| GraphStore | file.memory |
| Data root | data |
Check status:
make statusStop local services:
make stop-allRun The API Without The Web UI
go run ./cmd/umodel-server --addr :8080 --data data --graphstore file.memoryRun The Web UI
In another terminal:
make dev-webmake dev-web uses the same package-manager resolution as make install-env.
Provider Selection
Normal local development:
go run ./cmd/umodel-server --addr :8080 --data data --graphstore file.memoryShort-lived tests:
go run ./cmd/umodel-server --addr :8080 --graphstore memoryLadybug runtime:
go run -tags ladybug ./cmd/umodel-server --addr :8080 --data data --graphstore local.ladybugVerify The Checkout
make guard
make test-service
make example-validate
make verifyFor Web UI changes:
make test-uimake test-ui runs the Web UI type check and production build through the Makefile dependency wrapper.
Next Step
Continue with Quick Start.