Guides

Cloud Canvas & companion packages

Build, test, sign and ship packs from the browser — no local toolchain.

The Canvas in [Edge Studio](/studio) is fully cloud-based: designing, validation, the eval gate, Try-it simulation, publisher keygen, pack signing and OTA publishing all run on LyboAI Cloud. Nothing to install — no Rust, no CLI. (Connecting a self-hosted runtime remains an optional override via the *runtime* button.)

Learning as you build: the *first companion package* course runs in parallel with the Canvas — a progress rail docks on the right and ticks steps off automatically as you add nodes, trigger phrases, knowledge and a passing test run. *Learn — first package* in the sidebar is the written reference.

Projects & workspaces

Each project is one companion package for one use case — the canvas draft (workflows, skill, knowledge, evals) plus its policies and prompts — grouped under a workspace and saved to your account (Firestore, owner-only). Create one in *Studio → Projects & Workspaces*, seeded from a blank canvas or one of the demo-app templates (beauty salon, tradie, restaurant, education, accountant, retail, real estate). Changes on the Canvas sync automatically.

The node palette

GroupNodes
InputAsk user · Voice → text (STT, audio.transcribe) · Photo → text (OCR) · Camera capture
AI · on-device modelClassify · Extract · Summarise — these run on the device model
RAG · vector storeRetrieve (RAG) · Answer from docs · pack documents (Knowledge tab)
AgentsDelegate → cloud · Tag @agent (A2A) · Call webhook (webhook.post)
OutputSpeak (TTS, speech.tts) · Send email · Export summary · Progress · Confirm
Tools / FlowWeb search, records, notes, reminders, custom tool_call · Set data, Checkpoint, End
Integration nodes are pre-configured tool_call steps — every tool id shown is one your host app registers on the runtime, so everything on the palette actually executes. A fresh canvas pre-loads the Voice FAQ starter (STT → RAG → answer → TTS) so you start from a working example.

Server-side work: cloud nodes and webhooks

Everything in a pack is a LYBO workflow — the same step primitives run on the phone, on a desktop node or on a cloud runtime. When a step needs more power than the device has, use Delegate → cloud (hands the task to a LYBO workflow on a cloud or desktop node, with an offline fallback via tool_failed) or Tag @agent (A2A). To hand off to any external automation platform, use the Call webhook tool (webhook.post) — it is governed like every other step: permission, policy, confirmation and audit trail.

AI Builder

Describe the workflow in plain English and the AI drafts it as a workflow (steps, skill and evals) loaded straight onto the canvas — validated, with a self-repair pass. Uses the site's LLM config (ANTHROPIC_API_KEY, with an OpenAI-compatible fallback).

Prove, sign, run

  1. 1

    Validate + Evals

    Structural checks, then your eval cases run on the cloud simulator — the gate must be green before signing.

  2. 2

    Register & try

    The Try-it runner executes your draft on the cloud simulator with a step-by-step trace.

  3. 3

    Sign & download

    Compose → keygen (save the secret once, in a vault) → sign. No licence = dev channel (watermarked); a lybo_live_ licence stamps a production pack.

  4. 4

    Run it

    Cloud simulator (zero install) · your own Expo app + .lybopack on an emulator or phone · the planned LyboAI Core playground app (Google Play) that installs packs directly.

    npm i @lyboai/runtime expo-lyboai
    npx expo run:android

Observability, prompts & sandbox runtimes

Observability (Canvas → Govern): every Try-it and eval run on the cloud simulator is recorded with its full step trace — inputs, transitions taken, outputs, final result — viewable and exportable as JSON, and saved with the project. Traces from packs running on devices stay on the device by design (observability: local_only in the manifest). Prompts (Canvas → Build): author the pack's prompt templates and test them against the live model (the site's LLM config) with {{variables}} filled in — real prompt engineering before anything ships.

Sandbox runtime — to exercise the *real* Rust runtime (real on-device models, real tool execution, its own trace inspector) without touching a phone, run it yourself in a container or VM and point the Canvas at it (*runtime* button → self-hosted):

Your own sandbox runtime (any Docker host / VM)
# inside the cloned runtime repo
cargo build -p lybo-cli --release
./target/release/lybo serve --http --port 4242 --token <token>
# expose it (Cloud Run / Fly / your VM), set LYBO_STUDIO_CORS_ORIGIN to the site,
# then Canvas → runtime → Self-hosted → paste URL + token
A hosted one-click sandbox (ephemeral runtime instances with a downloadable on-device model, spun up per session) is on the roadmap — the Canvas' runtime switcher is already the integration point. New to this? Studio has an end-to-end guided course: Studio → Learn — first package walks you from a blank project to a signed pack running on a device, with progress saved to your account.