makepad/apps/aichat/Cargo.toml
Admin 922a61736d apps: Code, Translator, Weather, Amp and the rest
Makepad Code (editor layout, selection, sidebar, early yield), the EN/ZH
Translator with voice, Weather with a generated offline forecast, Amp
playing its offline library, and fixes
across the other apps and examples.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-10-13 12:26:21 +02:00

58 lines
2.6 KiB
TOML

# aichat — the assistant, as an app.
#
# One conversation that drives every application through the AI services
# layer. It is hosted three ways with one code base: under the window
# manager as a special child seated in the pane slot (this binary,
# `--stdin-loop`), standalone as its own window (this binary), and inside
# any app's Window as the F10 overlay or inside the mobile/web superbuild
# (this crate's lib, `makepad_app_aichat::script_mod` + `AiChatPanel{}`).
#
# The panel widget OWNS the engine: the service registry, the model, the
# transcript. Hosts only feed it links (in-process) or bus frames (the
# window manager's studio Custom frames) and give it a place to draw.
#
# Plan of record: repo-root aicontrol.md.
[package]
name = "makepad-app-aichat"
version = "0.1.0"
edition = "2021"
license = "MIT OR Apache-2.0"
default-run = "makepad-app-aichat"
[lib]
name = "makepad_app_aichat"
path = "src/lib.rs"
[[bin]]
name = "makepad-app-aichat"
path = "src/main.rs"
[features]
default = ["tweaker", "engine", "gen"]
# The design overlay (Shift+F10 with the dev overlays on). On for development
# builds; the Builder's releases build without it (--no-default-features).
tweaker = ["dep:makepad-widgets-tweaker", "makepad-widgets/data", "makepad-widgets/dock", "makepad-widgets/fab"]
# The chat backends: the person's own Claude Code / Codex CLIs, Claude
# Desktop over MCP, the Claude API. No model runtime. Off for a build
# without any backend — the web page answers with NoModel and the tool
# console still works.
engine = ["makepad-ai-services/engine"]
# The machine's own model (Qwen through the hub's local runtime: the llm
# crate, the Metal/CUDA stores and their kernel builds). Off by default;
# an app that hosts the chat forwards its own `localai` feature here.
localai = ["engine", "makepad-ai-services/localai"]
# The assistant's own `gen` service (src/gen.rs): the hub's one-job runner
# picks a fleet node and brings the picture back.
gen = ["dep:makepad-ai-hub"]
[dependencies]
# The `ai` family is the F10 slot this chat fills: an app gets the slot by
# linking the chat, and no other app has it.
makepad-widgets = { path = "../../widgets", default-features = false, features = ["rich_text", "ai"] }
makepad-widgets-tweaker = { path = "../../widgets/families/tweaker", optional = true }
makepad-wm-api = { path = "../../libs/wm_api" }
makepad-ai-services = { path = "../../libs/ai/services", default-features = false, features = ["platform"] }
makepad-strict-json = { path = "../../libs/strict_json" }
# The fleet client behind `gen`. Native only.
makepad-ai-hub = { path = "../../libs/ai/hub", default-features = false, optional = true }