Cases

What applications gain from the service boundary

Each case starts with a task a person recognizes and one capability that can span an operating-system facility, a local program, or a remote service. OA checks permission and preserves the capability's meaning across those implementations.

Find an application integration · See how AI applications share models and memory. Measurements below describe dated development experiments; current qualification is recorded in coverage.

Development preview: the OpenCode refresh and saved preference, Comfy workflow, and Lemonade-to-Comfy examples below retain their separately recorded verification and limits. The latest runtime release notes identify shipped packages.

An image editor keeps rendering while a chat engine gives the card back

The task

ComfyUI needs more of the graphics card than is free. LM Studio is holding a model on the same card and neither program knows the other exists.

OA's role

ComfyUI asks the resource service for room on the graphics card. The service asks LM Studio to yield through LM Studio's own unload endpoint, then grants a lease once the bytes are free.

On the owner's machine, a render needing 106 GiB of a 124 GiB pool asked while LM Studio held one model. LM Studio gave back 21.4 GB of graphics memory (yielded, in OA's word) in 7.3 s, the reservation (lease) was granted, and the render finished in about 31 s and saved an image. A deny rule written for the same holder changed the identical ask into a refusal read from ComfyUI's own queue in about 150 ms, with LM Studio's model still loaded and nothing allocated.

Measured: 132,766,306,304 bytes (123.65 GiB) pool; 113,952,739,328 bytes (106.13 GiB) reserve; 21,446,795,264 bytes yielded in 7.305 s; render in 30.98 s; refusal in 146 ms. research/resources/COMFY-CARD-2026-09-22.md, sections 1 and 3.

LM Studio unloads its model, then ComfyUI loads its own weights into the freed memory. The resource repository is preparing its first tagged release.

A coding assistant reaches every local model through one runtime

The task

An OpenCode user with a local model wants to chat with it through OA, with nothing to type into OpenCode's own configuration.

OA's role

The adapter's configure.js reads the router's servable chat families through the runtime and writes OpenCode's provider block for them.

Observed UI demonstration: the patched OpenCode 1.18.31 TUI refreshed its model chooser in the same running process after Ctrl+Alt+R. A newly advertised local model appeared from a deterministic fixture; the check sent no prompt.

Keep one model preference when a local engine goes offline

The task

A coding session should keep using its chosen model family when one local engine is unavailable.

OA's role

A saved, ordered selection policy names eligible local candidates. Each new request selects an available candidate and records the model that answered.

Observed API demonstration: two completed turns in one OpenCode session used the same saved preference. Lemonade answered the first; after it became unavailable, Ollama answered the next fresh request. OA identified the actual host and model for each answer. The preference alias has not yet been shown in OpenCode's rendered model picker, and first-use policy setup was not observed.

Controlled local-provider run; no hosted account, model download, or paid request.

A model file downloaded once is served by another engine

The task

A model file (GGUF) sits in the Jan app's model folder (the jan store) on this machine. LM Studio never downloaded it and cannot see it.

OA's role

The model bridge resolves the file through the storage inventory and lends it into LM Studio's own models folder by link, once the operator permits lending to that engine.

On 2026-09-22 a 46 MB GGUF from the jan store was hard-linked into LM Studio's models folder in 6.3 seconds end to end: the first lend attempt was refused not_permitted, the lend after the rule placed one hard link, and LM Studio listed the file under its own derived name inside a 30-second window. unlend removed the link and its directories again; the source file in the jan store never moved.

Measured: 45,949,216 bytes in 6.3 s end to end. abstraction-provider-modelbridge/README.md, "Measured".

Model bridge source and recovery guide. Its first tagged release is in preparation.

A coding assistant can change model providers

The task

A coding assistant streams an answer from a requested model. The operator may run that model locally today and through a remote host tomorrow.

OA's role

The assistant requests a model and execution placement. OA checks its rights, selects an eligible declared host, and mediates a connection pinned to that provider declaration.

The same inference family also carries embeddings, speech synthesis, transcription, live sessions, and image generation. Each modality has a defined request and a streamed or final result. Current modality and language results live in coverage.

An image editor can return to the same download

The task

A node-based image editor needs a multi-gigabyte model. The user closes the editor while the transfer is active and later returns.

OA's role

The editor submits one retained job. OA owns progress and settlement. The editor saves the returned operation reference and observes the same accepted work after restart.

The ComfyUI source adopter supplies this integration path. Storage lookup can reuse matching content before the editor requests another transfer.

Verify workflow assets, approve the canvas change, and render in ComfyUI

The task

Prepare a pinned FLUX.2 Klein workflow with its diffusion model, text encoder, and VAE, then produce an image in ComfyUI.

OA's role

The adopter checks the required files, verifies their declared digests, and asks before replacing the current canvas. ComfyUI remains in control of the final Run action and image generation.

Observed ComfyUI demonstration: all three verified assets were already present. The run checked readiness, received approval for one canvas replacement, then invoked ComfyUI Run. The editable 512 × 512 workflow completed a four-step CPU render. This confirms prepared workflow use; first-time asset acquisition through the UI remains untested.

A red fox making espresso in a sunlit greenhouse, generated by the ComfyUI FLUX.2 Klein workflow
Example ComfyUI output from the prepared FLUX.2 Klein workflow. OA supplied verified workflow assets and the canvas approval step; ComfyUI generated the image.

This was a repeat-use demonstration with all required files present. The first-time UI download path and matched setup savings remain unmeasured.

A Comfy render can use GPU memory after Lemonade becomes idle

The task

A Comfy workflow needs the graphics card while Lemonade is serving a local chat request.

OA's role

The resource service tracks the holder and grants Comfy a reservation after Lemonade yields its model. Canceling Comfy's waiting request releases its reservation while the chat request continues.

Observed ComfyUI and Lemonade demonstration: while Qwen was serving a chat request, Comfy's first card request waited. The demonstration canceled the Comfy waiter; the card status showed no reservation and no model entries, while Qwen continued and completed. After Qwen became idle, a later Comfy request asked Lemonade to unload its model. Lemonade then reported no loaded model, the resource service granted Comfy a reservation, and the workflow rendered. The instrument attributed 15.1 GB of GPU memory to the Comfy process.

The render and handover were observed, but the full scenario remains under qualification: its final process-measurement check failed, and the corrected scenario has not been rerun. The configured admission threshold is not the workflow's hardware requirement or a guarantee against other GPU users.

An assistant can open an app and propose a specific action

The task

An assistant needs an image editor, then wants to preview a sampling-step change in the document the user is viewing.

OA's role

With permission, OA activates an operator-registered app and waits for that app to report readiness from the same signed-in session. The app reports its current document and revision.

The OA Model Context Protocol (MCP) gateway lists visible applications under its own verified program identity. Activation uses the facade API. A separate image-editor adapter owns the preview, apply, and readback tools. A proposal carries the exact app instance, document, and revision; a changed document produces a stale result. Presentation stays inside the requesting task and application tool surface.

This is a scoped development composition with current live evidence. OA defines no universal application UI protocol. Coverage records the tested source and limits.

An operator can see and control the boundary

Rights and providers

The OA Panel shows which programs may do what, which providers and model hosts are registered, whether they are ready, and which saved credential names exist. Revoking permission changes later decisions.

Configuration and evidence

The Panel edits revisioned user settings, follows effective configuration, reads retained logs, and shows caller identity and provider diagnostics.

Limits remain part of the product