Download README.md from Mike0021/chat-ui-agent-runtime: direct link, hf CLI and curl.
- Browser
- Download file 1.89 kB
-
https://huggingface.co/spaces/Mike0021/chat-ui-agent-runtime/resolve/main/README.md
- Command line
-
hf download hf://spaces/Mike0021/chat-ui-agent-runtime/README.md
-
curl -L -o README.md https://huggingface.co/spaces/Mike0021/chat-ui-agent-runtime/resolve/main/README.md
title: Chat UI Agent Runtime
emoji: 🧰
colorFrom: yellow
colorTo: indigo
sdk: docker
short_description: Pinned pi runtime image for chat-ui sandboxes
Chat UI Agent Runtime
Prebuilt Node, git, ripgrep, pi, and reconnect-safe RPC bridge image used by chat-ui Agent
workspaces. The Space itself exposes a small health endpoint; Hugging Face Jobs overrides the
command to start sbx-server, then chat-ui spawns bridge.mjs inside the dedicated sandbox.
No Hugging Face or provider credential is baked into this image.
The image applies fail-closed patches to the pinned Pi 0.84.2 RPC handler. replace_queue performs
an atomic expected-snapshot compare-and-swap over Pi's steering and follow-up queues. Correlated
extension_ui_response commands report semantic success only while the native Pi request is still
pending. The image build fails if either upstream handler shape changes, so an upgrade cannot
silently apply a patch to an incompatible release.
bridge.mjs explicitly loads /opt/chat-ui-agent/approval-gate.mjs. Before every tool call, the
extension reads the bounded policy file at AGENT_POLICY_PATH (normally
/run/chat-ui-agent/policy). A missing, invalid, or oversized file falls back to AGENT_POLICY:
autoconfirms remote publishes, uploads, deployments, other likely exit points, and reads of credential-bearing files or process-environment values.askconfirms all writes, edits, shell commands, and sensitive reads.read-onlyhard-blocks every write, edit, and shell command; sensitive direct reads still require confirmation.
Missing or invalid policy values use ask. This live policy file makes “always allow” effective
for the active session without restarting Pi. If the RPC UI is unavailable, gated calls are blocked.
Run the runtime-only tests with node --test agent-runtime/*.test.mjs from the repository root.