LocalGPT 开源发布:用自然语言构建 3D 世界并内置本地 AI 助手
localgpt-app/localgpt
LocalGPT 开源发布,包含 localgpt-gen 与 localgpt 两个二进制:前者基于 Bevy 引擎,用自然语言生成几何体、PBR 材质、灯光、行为与音频,并支持导出 glTF/GLB 与 HTML;后者是本地优先 AI 助手,带持久记忆、自主任务和 HTTP API。
Build explorable 3D worlds with natural language — geometry, materials, lighting, audio, and behaviors. Open source, runs locally.
Install
From crates.io (for users)
If you just want to run LocalGPT — no source checkout needed:
# World Building cargo install localgpt-gen # AI Assistant (chat, memory, daemon) cargo install localgpt
From source (for developers)
If you've cloned the repository and want to hack on the code, use cargo run to iterate without installing:
git clone https://github.com/localgpt-app/localgpt.git cd localgpt # World Building cargo run -p localgpt-gen -- "Create a desert scene with pyramids" # AI Assistant cargo run -- chat cargo run -- daemon start
Full options (feature flags, headless builds, Docker): see Installation.
Gen Mode (World Building)
localgpt-gen is a standalone binary for AI-driven 3D world creation with the Bevy game engine.
# Start interactive mode localgpt-gen # Start with an initial prompt localgpt-gen "Create a desert scene with pyramids and a UFO hovering above" # Load an existing scene localgpt-gen --scene ./world.glb # Verbose logging localgpt-gen --verbose
Features
- Parametric shapes — box, sphere, cylinder, capsule, plane, torus, pyramid, tetrahedron, icosahedron, wedge
- PBR materials — color, metalness, roughness, emissive, alpha, double-sided
- Lighting — point, spot, directional lights with color and intensity
- Behaviors — orbit, spin, bob, look_at, pulse, path_follow, bounce
- Audio — ambient sounds (wind, rain, forest, ocean, cave) and spatial emitters
- Export — glTF/GLB, HTML (browser-viewable), screenshots
- World skills — save/load complete worlds as reusable skills
Headless Mode & Experiment Queue
Queue world experiments and generate without a window — overnight batch runs, CI pipelines, or scripted variations:
# Generate a single world (no window) localgpt-gen headless --prompt "Build a cozy cabin in a snowy forest" # With style hint localgpt-gen headless --prompt "Village marketplace" --style "Studio Ghibli"
The memory system learns your creative style across sessions — palettes, lighting preferences, entity templates — and applies them automatically in future generations.
Full docs: Headless Mode & Experiment Queue
MCP Server
Use Gen from Claude Desktop, Codex Desktop, or any MCP-compatible editor (VS Code, Zed, Cursor):
localgpt-gen mcp-server
Add to Claude Desktop config (~/Library/Application Support/Claude/claude_desktop_config.json on macOS):
{
"mcpServers": {
"localgpt-gen": {
"command": "localgpt-gen",
"args": ["mcp-server"]
}
}
}For CLI tools (Claude CLI, Gemini CLI, Codex CLI), use --connect to route tool calls to your existing window. See CLI Mode (MCP Relay).
Full docs: LocalGPT Gen | MCP Server
Built something cool? Share on Discord or YouTube!
AI Assistant
localgpt is a local-first AI assistant with persistent memory, autonomous tasks, and multiple interfaces.
# Interactive chat localgpt chat # Single question localgpt ask "What is the meaning of life?" # Run as daemon with HTTP API and web UI localgpt daemon start
Why LocalGPT?
- Single binary — no Node.js, Docker, or Python required
- Local device focused — runs entirely on your machine, your data stays yours
- Persistent memory — markdown-based knowledge store with full-text and semantic search
- Hybrid web search — native provider search passthrough plus client-side fallback
- Autonomous heartbeat — delegate tasks and let it work in the background
- Multiple interfaces — CLI, web UI, desktop GUI, mobile apps
- Defense-in-depth security — signed policy files, kernel-enforced sandbox, prompt injection defenses
- Multiple LLM providers — LM Studio, Ollama, Anthropic, OpenAI, xAI, GLM, Vertex AI, CLI providers
How It Works
LocalGPT uses XDG-compliant directories for config/data/state/cache. Run localgpt paths to see resolved paths.
Workspace memory layout:
<workspace>/
├── MEMORY.md # Long-term knowledge (auto-loaded each session)
├── HEARTBEAT.md # Autonomous task queue
├── SOUL.md # Personality and behavioral guidance
└── knowledge/ # Structured knowledge bank
Files are indexed with SQLite FTS5 for keyword search and sqlite-vec for semantic search with local embeddings.
Configuration
Stored at <config_dir>/config.toml:
Local models via LM Studio (no API key, fully offline):
[agent] default_model = "openai/qwen/qwen3.5-35b-a3b" [providers.openai] api_key = "lm-studio" base_url = "http://127.0.0.1:1234/v1"
Cloud providers (Anthropic, OpenAI, etc.):
[agent] default_model = "claude-cli/opus" [providers.anthropic] api_key = "${ANTHROPIC_API_KEY}"
Full config reference: website/docs/configuration.md
Security
- Kernel-enforced sandbox — Landlock/seccomp on Linux, Seatbelt on macOS
- Protected policy file —
POLICY.mdstanding instructions, sanitized before injection and protected from agent self-modification - Prompt injection defenses — marker stripping, pattern detection, content boundaries
Security docs: website/docs/sandbox.md | website/docs/policy.md
HTTP API
| Endpoint | Description |
|---|---|
GET / |
Embedded web UI |
POST /api/chat |
Chat with assistant |
POST /api/chat/stream |
SSE streaming chat |
GET /api/memory/search?q=<query> |
Search memory |
Full API reference: website/docs/http-api.md
CLI Commands
localgpt chat # Interactive chat localgpt ask "question" # Single question localgpt daemon start # Start daemon localgpt memory search "query" # Search memory localgpt config show # Show config localgpt paths # Show resolved paths
Full CLI reference: website/docs/cli-commands.md
Devlog
Built With
Rust, Tokio, Axum, Bevy, SQLite (FTS5 + sqlite-vec), fastembed, eframe
Contributors
License
来源:GitHub · github.com