After install and model setup, Preview opens on Chat.
The left rail shows Chat, Agents,
Create (when installed), and Memory.
Everything else lives under More — Notes, Library,
Tasks, Files, Models, Providers, Settings, Caps, Audit, DeclUI
modules, Scenarios, and Feedback. Network is an
Allow network grant (status / Settings), not a rail
tab. Create is the image and media studio. Each section below is how
to operate one of those surfaces. Prefer the local model offline;
turn on network only when you mean to search, browse, or fetch.
Après install et réglage des modèles, Preview ouvre sur
Chat. Le rail gauche montre Chat,
Agents, Create (quand installé) et
Memory. Tout le reste est sous Plus
— Notes, Bibliothèque, Tâches, Fichiers, Modèles, Providers,
Paramètres, Caps, Audit, modules DeclUI, Scénarios et Retour. Le
réseau est un grant Autoriser le réseau (statut /
Paramètres), pas un onglet du rail. Create est le studio image /
média. Chaque section ci-dessous explique une de ces surfaces.
Préférez le modèle local hors ligne ; n’activez le réseau que pour
chercher, parcourir ou télécharger.
Chat / Sessions
Chat / Sessions
Parallel conversations persist across restart. Each session keeps
its own history and can pick its own model from the combo (fallback:
the default instruct model). Streaming replies come from the local
backend when routing is local_only; once GGUFs are on
disk, chat works with Allow network off.
Stop cancels the in-flight model.infer;
Copy puts a message (or Troubleshooting body) on the
clipboard. Fork from here opens a branch session
from a message; after an interrupt you can
continue the turn. Live status shows while awaiting
tokens. Before infer, Preview injects mem.context
(session hits, user facts, and product-doc RAG
chunks from FEATURES / STATUS / TESTER). Under context pressure (or
after repeated steers), instincts may offer
Create | Later for a reusable skill (Settings → Me,
on by default). User and assistant messages use distinct bubbles.
Background agents attached via /agent or assistant
delegation show as cards in the thread. Attach images or documents
(PDF, txt, md) from the paperclip — documents are read into context
for the model.
Les conversations parallèles survivent au redémarrage. Chaque
session garde son historique et peut choisir son modèle dans le
combo (sinon le modèle instruct par défaut). Les réponses en flux
viennent du backend local quand le routage est
local_only ; une fois les GGUF sur disque, le chat
marche avec Autoriser le réseau éteint. Stop annule
le model.infer en cours ; Copier met
un message (ou le corps Dépannage) dans le presse-papiers.
Créer une branche ici ouvre une session dérivée
depuis un message ; après une interruption vous pouvez
continuer le tour. Un statut live s’affiche pendant
l’attente de tokens. Avant l’inférence, la Preview injecte
mem.context (hits de session, faits utilisateur, et
chunks RAG produit depuis FEATURES / STATUS /
TESTER). Sous pression de contexte (ou après des steers répétés),
les instincts peuvent proposer Créer | Plus tard
pour une skill réutilisable (Paramètres → Moi, activé par défaut).
Les messages user et assistant ont des bulles distinctes. Les agents
de fond via /agent ou délégation apparaissent en cartes
dans le fil. Joignez images ou documents (PDF, txt, md) depuis le
trombone — les documents sont lus en contexte pour le modèle.
Slash commands (popup above the input with /):
/commands, /help (system snapshot),
/agent <task>, /notes,
/notenew, /notesearch,
/audit [n], /kill / /pause,
/image <prompt>, and
/speak <text>. Chat « crée un module … » (or
“create a module”) launches a scaffold agent. Markdown renders agent
actions in the thread.
Commandes slash (popup au-dessus de la saisie avec /) :
/commands, /help (instantané système),
/agent <tâche>, /notes,
/notenew, /notesearch,
/audit [n], /kill / /pause,
/image <prompt> et
/speak <texte>. Le chat « crée un module … »
lance un agent de scaffold. Le markdown affiche les actions d’agent
dans le fil.
Canvas
Canvas
Session-scoped vector drawing surface shared by you and agents.
Open it with /canvas or the session-bar
Canvas toggle (Salon / Canvas) — not a primary-rail
tab. Humans get Select (move / delete / align / rotate), Pan +
scroll zoom, pen, line, spline, path, rect, ellipse, and text
labels; layers (hide / lock / opacity); grid and snap; semantic
scenes and shared guides; export
PNG, SVG, or JSON (round-trip import). Agents use the bundled WASM
canvas.* tools and can read / review the document. A
CPU-only validator checks geometry every few mutations. Document:
var/sessions/<id>/canvas.json. Distinct from Create
on the primary rail (image / media studio).
Surface de dessin vectoriel liée à la session, partagée avec les
agents. Ouvrez-la avec /canvas ou le bascule
Canvas de la barre de session (Salon / Canvas) —
pas un onglet du rail principal. Humains : Select (déplacer /
supprimer / aligner / rotation), Pan + zoom molette, stylo, ligne,
spline, path, rect, ellipse, labels texte ; calques (masquer /
verrouiller / opacité) ; grille et aimantation ;
scènes sémantiques et guides
partagés ; export PNG, SVG ou JSON (import aller-retour). Les
agents utilisent les outils WASM canvas.* et peuvent
lire / revoir le document. Un validateur CPU vérifie la géométrie
toutes les quelques mutations. Document :
var/sessions/<id>/canvas.json. Distinct de Create
sur le rail principal (studio image / média).
Models
Models
The Models tab lists installed offerings, loads them, and downloads
alternatives from share/models/catalog-offerings.json
into share/models/. Live metrics (TTFT, tok/s, VRAM /
RAM / disk) appear in the sidebar and on this tab. A green banner
appears when newer packs fit your detected VRAM tier. After a
download, restart so etc/modeld.yaml sees new paths.
CLI: aos-session --download-models <id>….
L’onglet Models liste les offres installées, les charge et
télécharge des alternatives depuis
share/models/catalog-offerings.json vers
share/models/. Des métriques live (TTFT, tok/s, VRAM /
RAM / disque) apparaissent dans la barre latérale et ici. Une
bannière verte s’affiche quand de nouvelles offres tiennent dans
votre palier VRAM. Après un téléchargement, redémarrez pour que
etc/modeld.yaml voie les chemins. CLI :
aos-session --download-models <id>….
Optional image and TTS packs (for example local:sd-v1-5,
Piper en_US / fr_FR, plus Flux2-class,
Ideogram4-class, Piper en_GB in 0.9.0) are
not in the zip; first-run does not pull them.
Download also fetches bin/sd / bin/piper
(and sidecars via extra_files) if missing. Settings /
Models pick the default image pack and Piper voice; honor them after
restart. Without weights or engine, Preview writes a visible stub
PNG or short WAV so the pipeline stays testable.
Les packs image et TTS optionnels (par ex. local:sd-v1-5,
Piper en_US / fr_FR, plus Flux2-class,
Ideogram4-class, Piper en_GB en 0.9.0) ne sont
pas dans le zip ; le premier lancement ne les télécharge pas.
Download installe aussi bin/sd / bin/piper
(et les sidecars via extra_files) s’ils manquent.
Settings / Models choisissent le pack image et la voix Piper par
défaut ; honorez-les après redémarrage. Sans poids ou moteur, la
Preview écrit un PNG stub visible ou un court WAV pour garder le
pipeline testable.
Memory
Memory
Memory V2 is the Preview default: structured
cognitive memory with a decision journal and
Mind Palace supervision views on the Memory rail.
Legacy fact writes stay in sync via shadow projection. On top of
that layer: Remember / Recall / list / edit / delete for long-term
user facts. Typed relations similar,
updates, and supersedes auto-link on close
remembers. Session and user hits assemble as mem.context
for chat and agents. Agents also use episodic memory and
memory.remember / memory.recall. Bootstrap
is memory-first: task.assess then structured
mem.bootstrap (active facts and similar neighbors;
superseded omitted).
Memory V2 est le défaut Preview : mémoire cognitive
structurée avec un journal de décisions et des vues
Mind Palace sur le rail Memory. Les écritures de
faits legacy restent synchronisées en shadow. Par-dessus : Remember /
Recall / lister / éditer / supprimer pour les faits utilisateur long
terme. Les relations typées similar,
updates et supersedes se lient
automatiquement. Hits de session et utilisateur forment
mem.context pour le chat et les agents. Les agents ont
aussi une mémoire épisodique et
memory.remember / memory.recall. Le
bootstrap est memory-first : task.assess puis
mem.bootstrap structuré (faits actifs et voisins
similaires ; les supersédés sont omis).
Auto-remember from chat (Settings → Me, on by
default): after each turn, low-priority mem.extract
proposes durable facts → mem.user.remember with
source=chat. Secrets (API keys, tokens, IBAN-like) are
never auto-stored (audited). The Memory list shows a
[chat] badge on extracted facts. Extraction is
non-blocking and skips if a previous extract is still running.
Mémorisation auto depuis le chat (Paramètres → Moi,
activée par défaut) : après chaque tour, un
mem.extract basse priorité propose des faits durables →
mem.user.remember avec source=chat. Les
secrets (clés API, tokens, IBAN-like) ne sont jamais auto-stockés
(audité). La liste Memory affiche un badge [chat] sur
les faits extraits. L’extraction est non bloquante et saute si une
extraction précédente tourne encore.
Notes
Notes
Dual-surface WASM module (notes.aospkg), under
More → Notes. Human UI: title + body → Create;
tags, live search, and
delete so large collections stay findable. Agent
tools: notes.create, notes.update,
notes.search, notes.delete, and related
intents. Same data for humans and agents. On boot,
share/modules/notes.aospkg is copied to
var/modules/notes when the manifest hash or WASM
fingerprint differs, so a Preview update does not keep a stale
module. notes.read accepts title,
name, path, or slug. Via
agent: Agents tab or Chat /agent with a task such as
“create a note titled cohort with content hello”.
Module WASM dual-surface (notes.aospkg), sous
Plus → Notes. UI humaine : titre + corps → Créer ;
tags, recherche live et
suppression pour les grandes collections. Outils
agent : notes.create, notes.update,
notes.search, notes.delete, et intents
liés. Les mêmes données pour humains et agents. Au boot,
share/modules/notes.aospkg est recopié vers
var/modules/notes si le hash manifest ou l’empreinte
WASM diffère, pour qu’une update Preview ne garde pas un module
périmé. notes.read accepte title,
name, path ou slug. Via
agent : onglet Agents ou Chat /agent avec une tâche du
type « create a note titled cohort with content hello ».
Tasks
Tasks
Dual-surface WASM module (tasks.aospkg). Human UI:
Tasks under More when installed —
create / list / complete / reopen via declarative widgets. Agent tools:
tasks.create, tasks.list,
tasks.update, tasks.complete. Same JSON
store under /documents/tasks/tasks.json. Preinstalled
official app: uninstall persists; host upgrades do not reinstall it.
Skill tasks ships under
share/skills/.
Module WASM dual-surface (tasks.aospkg). UI humaine :
Tâches sous Plus lorsque installé —
créer / lister / terminer / réouvrir via widgets déclaratifs. Outils agent :
tasks.create, tasks.list,
tasks.update, tasks.complete. Même store
JSON sous /documents/tasks/tasks.json. Application
officielle préinstallée : la désinstallation persiste ; une mise à
jour du core ne la réinstalle pas. La skill tasks est livrée sous
share/skills/.
Modules (declarative_ui)
Modules (declarative_ui)
Installed packages with ui.mode=declarative_ui get a
dynamic entry under More → Modules (or a named
DeclUI tab). Notes, Tasks (More when installed),
and ext-rt stay off the generic Modules list. The local
catalogue also lists experimental Illustration Studio
0.7.23 (same module in the Win / Linux / Mac Preview zips;
install via Settings → Local module catalogue;
wgpu edit view ≠ beauty). The host paints ui/index.html
— no webview, no free HTML/JS UI. Widgets include column / row,
heading, text, markdown, stat_row, table, line_chart, form (JSON
Schema), button, select / radio / checkbox / textarea, bar_chart,
image, and audio.
Les paquets installés avec ui.mode=declarative_ui
obtiennent une entrée dynamique sous Plus → Modules
(ou un onglet DeclUI nommé). Notes, Tâches (Plus
si installé) et ext-rt restent hors de la liste Modules
générique. Le catalogue local liste aussi le
Studio Illustration 0.7.23 expérimental
(même module dans les zips Preview Win / Linux / Mac ; installer
via Paramètres → Catalogue local de modules ; vue
d’édition wgpu ≠ beauté). L’hôte peint ui/index.html —
pas de webview, pas d’UI HTML/JS libre. Widgets : column / row,
heading, text, markdown, stat_row, table, line_chart, form (JSON
Schema), button, select / radio / checkbox / textarea, bar_chart,
image et audio.
Intent module.ui validates the document fail-closed;
invalid ui/index.html shows an error banner (no partial
widgets). Button and form submits use the same cap review as
module.invoke. Install still requires confirmation;
refuse → quarantine. Settings →
Local module catalogue lists the local signed
catalogue and can uninstall non-bundled modules under
Installed modules (not notes /
tasks / ext-rt).
L’intent module.ui valide le document en fail-closed ;
un ui/index.html invalide affiche une bannière (pas de
widgets partiels). Soumissions bouton / formulaire : même revue de
caps que module.invoke. L’install exige encore une
confirmation ; refus → quarantaine. Paramètres →
Catalogue local de modules liste le catalogue
local signé et peut désinstaller les modules non bundle sous
Modules installés (pas notes /
tasks / ext-rt).
Agents
Agents
Observe / Think / Act with capability checks, confirmation, and
audit. Create an agent with a task and a model (or
/agent <task> from Chat). Goal loop:
goal.complete / goal.fail; max steps and
timeout come from Settings defaults. task.assess
classifies simple vs complex; complex activates the planner skill.
Shipped skills: notes-writer, research, file-author, planner,
tasks. Tools may be native, WASM module, MCP, or runtime (plan /
spawn / memory). Sub-agents: agent.spawn /
agent.await. Mid-task user.ask pauses in
the linked chat (Blocked) until the next reply (FIFO;
10 min timeout).
Observe / Think / Act avec contrôles de caps, confirmation et audit.
Créez un agent avec une tâche et un modèle (ou
/agent <tâche> depuis Chat). Boucle de goal :
goal.complete / goal.fail ; max steps et
timeout depuis Paramètres. task.assess classe simple vs
complexe ; le complexe active la skill planner. Skills livrées :
notes-writer, research, file-author, planner, tasks. Outils :
natifs, module WASM, MCP ou runtime (plan / spawn / mémoire).
Sous-agents : agent.spawn /
agent.await. user.ask en cours de tâche
met en pause dans le chat lié (Blocked) jusqu’à la
prochaine réponse (FIFO ; timeout 10 min).
Sensitive actions raise a blocking confirmation banner; Deny once,
Accept another; timeout = deny (fail-closed). Open
Detail (Agents tab or chat card) for live state,
step n/max, tokens, duration, simple/complex badge, skills
and MCP servers, parent / children, Sources (web / document /
fetch), and the step timeline (agent.trace). Controls:
Pause, Resume, Retry, Kill, Steer. Advanced Runtime
(Native vs Codex / Claude / Grok) runs allowlisted local CLIs under
the worker via harness.run — details on GitHub
docs/harness.md
— with the same Steer / Pause / Kill. Schedules
(schedule.create / list / cancel) live under Settings →
Advanced → Schedule; ticker min interval 30s; persist in
var/schedules/.
Une action sensible affiche une bannière de confirmation ; Deny une
fois, Accept une autre ; timeout = refus (fail-closed). Ouvrez
Détail (onglet Agents ou carte chat) pour l’état
live, step n/max, tokens, durée, badge simple/complexe,
skills et serveurs MCP, parent / enfants, Sources (web / document /
fetch) et la timeline (agent.trace). Contrôles :
Pause, Reprendre, Retry, Kill, Steer. Le Runtime
Avancé (Native vs Codex / Claude / Grok) lance des CLI locaux
allowlistés sous le worker via harness.run — détail
docs/fr/harness.md
— avec les mêmes Steer / Pause / Kill. Les schedules
(schedule.create / list / cancel) sont dans Paramètres →
Avancé → Planif ; intervalle min 30 s ; persistance dans
var/schedules/.
On the Agents tab, Name is required and becomes the
label on the agent thread and linked chat cards. In Room
sessions, the salon member picker lists built-in roster personas and
your library Task agents — one row each (ephemeral
/agent spawns are excluded).
Dans l’onglet Agents, le champ Nom est obligatoire et
devient l’étiquette du fil agent et des cartes chat liées. En session
Salon, le sélecteur de membres liste les personas du
roster intégré et vos agents Task de la bibliothèque — une ligne
chacun (les spawns éphémères /agent sont exclus).
Caps
Caps
Caps tab: list capabilities by holder (cap.list) and
revoke (audited). Hot-grant via cap.request still
requires trust plus confirmation. Module install and tool invoke
paths go through the same review surface — nothing auto-approves a
new package.
Onglet Caps : lister les capacités par détenteur
(cap.list) et révoquer (audité). Le hot-grant via
cap.request exige toujours trust plus confirmation.
Install de module et invoke d’outil passent par la même revue —
rien n’auto-approuve un nouveau paquet.
Audit
Audit
Append-only hashed journal of signed events. Audit tab → Refresh.
The Health panel (E23) shows runtime canary,
SLO/EWMA, residual anomaly, and stderr clusters from
health.snapshot — the same snapshot Help →
Troubleshooting consumes. Kill aos-auditd: chat must
continue; the supervisor restarts auditd in the background. Slash
/audit [n] shows the last n events in Chat.
Journal hashé append-only d’événements signés. Onglet Audit →
Refresh. Le panneau Santé (E23) montre canary
runtime, SLO/EWMA, anomalie résiduelle et clusters stderr depuis
health.snapshot — le même snapshot que consomme Aide →
Dépannage. Tuer aos-auditd : le chat doit continuer ; le
superviseur relance auditd en arrière-plan. Slash
/audit [n] montre les n derniers événements
dans Chat.
Providers
Providers
Providers tab: add / list / test / remove OpenAI-compatible cloud
endpoints and loopback (Ollama / vLLM / LM Studio). API keys live in
the encrypted vault, never in the provider file. Chat combo groups
local vs provider. Routing local_only (default) still
allows loopback; WAN cloud needs balanced plus Allow
network. Infer with secret data stays local. Native
Messages / Gemini / Bedrock APIs are not shipped — OpenAI-compat
only.
Onglet Providers : ajouter / lister / tester / retirer des endpoints
cloud OpenAI-compat et loopback (Ollama / vLLM / LM Studio). Les
clés API vivent dans le vault chiffré, jamais dans le fichier
provider. Le combo Chat groupe local vs provider. Le routage
local_only (défaut) autorise encore le loopback ; le
cloud WAN exige balanced plus Allow network. L’inférence
avec données secret reste locale. Pas d’API natives
Messages / Gemini / Bedrock — OpenAI-compat seulement.
Settings
Paramètres
Preferences persist in var/run/preferences.json
(migrated from onboarding.json if needed). Pills:
Me (language en / fr; auto-remember; instincts
“Suggest skills when context is high”); Models
(Inference auto / gpu / cpu with mid-token migrate; routing
local_only / balanced; LAN cluster);
Image (default image pack and Piper voice);
Trust (default trust low / medium);
Agent (default model, max steps 1–128, timeout
60–86400 s); Web (search engine, browse max chars,
fetch max bytes; Allow network). Advanced folds:
Secrets vault (Brave / GitHub / OpenAI keys —
master key in OS keyring, file 0600 fallback with
AOS_SECRETS_FILE_KEY=1; in-Settings keygen);
Catalogue —
Local module catalogue Install / Installed modules
Uninstall, plus opt-in community Git index;
Schedule; Backup. Typing in
Settings filters Me / Models / Trust and the expert folds.
Les préférences persistent dans
var/run/preferences.json (migrées depuis
onboarding.json si besoin). Pilules :
Moi (langue en / fr ; mémorisation auto ;
instincts « Proposer des skills quand le contexte est élevé ») ;
Modèles (Inférence auto / gpu / cpu avec migrate
mid-token ; routage local_only /
balanced ; cluster LAN) ; Image (pack
image et voix Piper par défaut) ; Confiance (trust
défaut low / medium) ; Agent (modèle, max steps
1–128, timeout 60–86400 s) ; Web (moteur, max
chars browse, max bytes fetch ; Autoriser le réseau). Plis Avancé :
coffre Secrets (clés Brave / GitHub / OpenAI —
clé maître dans le keyring OS, repli fichier 0600 avec
AOS_SECRETS_FILE_KEY=1 ; keygen intégré) ;
Catalogue —
Catalogue local de modules Installer / Modules
installés Désinstaller, plus index Git communautaire opt-in ;
Planif ; Sauvegarde. La recherche
dans Paramètres filtre Moi / Modèles / Confiance et les plis
experts.
Network
Network
Default mode is offline_strict (deny-by-default
egress). Enable Allow network in the status area or
Settings → Web before search, browse, or fetch. Intents:
web.search (engine auto = Brave →
DuckDuckGo → Bing, or force one), web.browse (HTML →
plain text, no JavaScript), net.fetch (URL into the
logical FS, default /downloads/), and
files.generate (md / txt / json / csv / png / pdf).
Without a Brave key, auto falls through to DuckDuckGo
then Bing HTML. Optional keys live under Settings → Secrets vault.
JavaScript-rendered pages need an optional headless-browser MCP
(Network).
Mode défaut : offline_strict (egress deny-by-default).
Activez Autoriser le réseau dans la zone de statut
ou Paramètres → Web avant recherche, browse ou fetch. Intents :
web.search (moteur auto = Brave →
DuckDuckGo → Bing, ou forcer un), web.browse (HTML →
texte, pas de JavaScript), net.fetch (URL dans le FS
logique, défaut /downloads/), et
files.generate (md / txt / json / csv / png / pdf).
Sans clé Brave, auto bascule sur DuckDuckGo puis Bing
HTML. Clés optionnelles sous Paramètres → Coffre à secrets. Les
pages rendues en JavaScript demandent un MCP navigateur headless
optionnel (Network).
Create & TTS
Create & TTS
Intents media.image.generate /
media.audio.generate write PNG / WAV under
/downloads; cap media.generate; audited.
Options are a closed deny_unknown_fields object (size,
steps, CFG, seed, sampler, negative, Piper knobs). Unknown keys are
refused and audited; aos-sd maps only allowlisted flags
— never a free-form argv string. Placement Manager treats media
weights as evictable shards vs the loaded LLM.
Les intents media.image.generate /
media.audio.generate écrivent PNG / WAV sous
/downloads ; cap media.generate ; audité.
Les options sont un objet fermé deny_unknown_fields
(taille, steps, CFG, seed, sampler, negative, knobs Piper). Les clés
inconnues sont refusées et auditées ; aos-sd ne mappe
que des flags allowlistés — jamais une chaîne argv libre. Le
Placement Manager traite les poids média comme shards évincables
face au LLM chargé.
Primary-rail Create is the image / media studio:
prompt, size, steps, CFG, seed, sampler, catalogue style / LoRA /
VAE, composition canvas, upscale,
and history (reload prompt / composition from PNG
sidecars). From Chat, a generated PNG offers
Open in studio. Slash /image shows the
PNG in the thread. Slash /speak opens an in-chat
TTS card (voice + knobs) then Generate; agents may
still call the audio intent directly. Download media packs from
Models first (engine arrives with the pack). In Create you can pass
a reference image, use Fix a region
to repaint part of a result, and generate short video
clips (2–4 s) when a Wan or LTX pack is installed.
Create sur le rail principal est le studio image /
média : prompt, taille, steps, CFG, seed, sampler, style / LoRA /
VAE du catalogue, canvas composition,
upscale et historique (recharge
prompt / composition depuis les sidecars PNG). Depuis Chat, un PNG
généré propose Ouvrir dans le studio. Slash
/image affiche le PNG dans le fil. Slash
/speak ouvre une carte TTS (voix +
knobs) puis Generate ; les agents peuvent encore appeler l’intent
audio directement. Téléchargez d’abord les packs média dans Modèles
(le moteur arrive avec le pack). Dans Create vous pouvez passer une
image de référence, utiliser
Corriger une zone pour repeindre une partie du
résultat, et générer des courts clips vidéo
(2–4 s) quand un pack Wan ou LTX est installé.
Tap the painted ? in the Create header for the
in-app guide: prompt, reference photo, Fix a region,
video mode, size and quality, Generate, negative
prompt, LoRA from the model list, pack-default VAE, and
Composition.
Touchez le ? peint dans l’en-tête Créer pour le guide
intégré : prompt, photo de référence, Corriger une zone,
mode vidéo, taille et qualité, Générer, prompt
négatif, LoRA depuis la liste du modèle, VAE par défaut du pack, et
Composition.
Extend Preview
Étendre la Preview
Preview is meant to be extended on the host without waiting for a
bootable image. The extension surfaces below are what ships in
0.9.0.
La Preview est faite pour être étendue sur l’hôte sans attendre une
image bootable. Les surfaces ci-dessous sont celles livrées en
0.9.0.
Dual-surface WASM modules
Modules WASM dual-surface
A module is a sandboxed WASM package (wasmtime) with tools humans
and agents share. Notes and Tasks are the bundled examples: same
store, human tab, agent intents. Scripted packages go through
ext-rt (module.scaffold /
module.package) then install with cap review.
Un module est un paquet WASM sandboxed (wasmtime) dont les outils
sont partagés humains / agents. Notes et Tasks sont les exemples
bundle : même store, onglet humain, intents agent. Les paquets
scriptés passent par ext-rt
(module.scaffold / module.package) puis
install avec revue de caps.
declarative_ui (no webview)
declarative_ui (pas de webview)
Set ui.mode=declarative_ui and ship a closed widget
tree in ui/index.html. The host validates via
module.ui and paints egui widgets — there is no
sandboxed HTML/JS compositor in Preview. Schema export:
docs/bridge/aos-proto-decl-ui.json. Optional
ui JSON on module.scaffold; package /
compile copy a real tree (default: heading + form + table on the
primary tool).
Réglez ui.mode=declarative_ui et livrez un arbre de
widgets fermé dans ui/index.html. L’hôte valide via
module.ui et peint des widgets egui — pas de
compositeur HTML/JS sandboxé en Preview. Schéma :
docs/bridge/aos-proto-decl-ui.json. Champ
ui JSON optionnel sur module.scaffold ;
package / compile copient un vrai arbre (défaut : heading + form +
table sur l’outil principal).
Scaffold / package / install
Scaffold / package / install
From Chat, ask « crée un module … » (or “create a module”) — the
host launches an agent (fallback if the model dumps UI JSON instead
of agent.spawn). Scenarios can launch the same
scaffold → package → install path for a script module. Step-by-step
without cargo: first module. Settings →
Local module catalogue → Install reads the local
signed catalogue (share/modules/catalogue.yaml +
ed25519); hash check on install.
Depuis Chat, demandez « crée un module … » — l’hôte lance un agent
(filet si le modèle dump du JSON d’UI au lieu de
agent.spawn). Scénarios peut lancer le même chemin
scaffold → package → install pour un module script. Pas à pas sans
cargo : premier module. Paramètres →
Catalogue local de modules → Installer lit le
catalogue local signé
(share/modules/catalogue.yaml + ed25519) ; contrôle de
hash à l’install.
Skills
Skills
Declarative recipes under share/skills/, overridable
under var/skills/. Agents load them by name; authoring
also exposes skill.create. Ten minutes, no cargo:
write a skill (copy
morning-brief or write ping).
Recettes déclaratives sous share/skills/, surchargeables
sous var/skills/. Les agents les chargent par nom ;
l’authoring expose aussi skill.create. Dix minutes, sans
cargo : écrire un skill (copier
morning-brief ou écrire ping).
MCP stdio
MCP stdio
As client: copy
share/mcp/servers.yaml.example, add stdio servers, and
reference vault secrets with ${secret:name}. MCP tools
appear in the agent Detail panel alongside native and module tools.
Native web.browse does not run page JavaScript; a
headless-browser MCP you install is the Preview path for SPA /
hydrated pages, and it does its own network egress (not wrapped by
net.connect). Server façade: optional
aos-mcpd exposes akasha_models /
akasha_infer / akasha_mem_* over stdio so
external IDEs can use a running Preview.
En client : copiez
share/mcp/servers.yaml.example, ajoutez des serveurs
stdio, et référencez les secrets du vault avec
${secret:name}. Les outils MCP apparaissent dans le
panneau Détail de l’agent à côté des outils natifs et modules.
web.browse natif n’exécute pas le JavaScript de la
page ; un MCP navigateur headless que vous installez est le chemin
Preview pour les SPA / pages hydratées, et il sort sur le réseau
tout seul (pas encadré par net.connect).
Façade serveur :aos-mcpd optionnel
expose akasha_models / akasha_infer /
akasha_mem_* en stdio pour que des IDE externes
utilisent une Preview déjà lancée.
As server: optional bin/aos-mcpd
(not started by session) exposes akasha_models /
akasha_infer / akasha_mem_* so Claude
Code, Codex, Cursor, or Copilot can use a running Preview. Example
config: share/mcp/akasha-mcp.example.json. Details:
docs/mcp-server.md.
En serveur :bin/aos-mcpd optionnel
(pas démarré par la session) expose akasha_models /
akasha_infer / akasha_mem_* pour que
Claude Code, Codex, Cursor ou Copilot utilisent un Preview lancé.
Exemple : share/mcp/akasha-mcp.example.json. Détail :
docs/fr/mcp-server.md.
Providers as extension
Providers comme extension
Beyond local GGUF, add OpenAI-compat cloud or loopback providers
from the Providers tab. Keys stay in the vault. Loopback works
under local_only; remote cloud needs balanced routing
and network grant.
Au-delà des GGUF locaux, ajoutez des providers cloud OpenAI-compat
ou loopback depuis l’onglet Providers. Les clés restent dans le
vault. Le loopback marche sous local_only ; le cloud
distant exige le routage balanced et le grant réseau.
Catalogue livré complet :
docs/fr/FEATURES.md
sur GitHub. Bloqué ou besoin d’une superposition :
Diagnostic & MAJ.
Feedback et protocole de cohorte :
feedback. Ce que la Preview ne fera pas :
limits.