Stabilize OpenSim agent runtime and Mentra integration
This commit is contained in:
@@ -55,19 +55,20 @@ deployments should use absolute paths.
|
||||
|
||||
## Endpoint, grid identity, and authority
|
||||
|
||||
`llm.endpoint_url` is the exact OpenAI-compatible chat-completions URL. It is
|
||||
not a base URL: MetaCrate does not append a path, discover models, select a
|
||||
provider, or rewrite query parameters. `llm.api_key` is sent as the bearer key
|
||||
only to that exact origin; redirects are refused. Set `llm.model` when the
|
||||
endpoint requires a model name. These values live in the private `config.yml`.
|
||||
`llm.endpoint_url` is the OpenAI-compatible provider base URL. Mentra owns the
|
||||
Responses path, SSE stream, endpoint behavior, and conversation runtime. For a
|
||||
proxy whose Responses endpoint is `/go/v1/responses`, configure the base ending
|
||||
in `/go`, not the final request path. Set `llm.model` to the model ID and keep
|
||||
`llm.api_key` in the private `config.yml`.
|
||||
|
||||
Live modes require `grid.login_url`, `grid.avatar_name`, and `grid.password`.
|
||||
`authorized_avatar_uuids` contains exact
|
||||
grid UUIDs, never display names. Text claiming an authorized identity grants no
|
||||
authority. Public chat can request bounded informational work and safe public
|
||||
LSL delivery; movement, teleport, building, roaming changes, and administration
|
||||
remain policy-gated and require an authenticated authorized IM, operator action,
|
||||
or a narrowly bound scheduler grant as documented in the policy matrix.
|
||||
remain policy-gated and require an authenticated authorized IM or a narrowly
|
||||
bound scheduler grant. Above-threshold actions receive an isolated one-shot LLM
|
||||
safety review; they do not depend on a continuously present human operator.
|
||||
|
||||
## Configuration contract and migration
|
||||
|
||||
@@ -90,8 +91,8 @@ the operator's retention policy. JSON remains readable only for migration.
|
||||
|
||||
Mode, endpoints, credentials, authorization UUIDs, TLS, storage, queue/resource
|
||||
limits, reconnect policy, behavior, and interaction settings are restart-only.
|
||||
Runtime control can pause/resume autonomy, toggle the roaming job, decide an
|
||||
existing approval, cancel an active action, expire/delete conversation state,
|
||||
Runtime control can pause/resume autonomy, toggle the roaming job, make an
|
||||
emergency decision on an existing approval, cancel an active action, expire/delete conversation state,
|
||||
inject an operator message, reconnect, or shut down; it does not silently
|
||||
rewrite the configuration. A future reloadable field must be explicitly added
|
||||
to the versioned control/config contract.
|
||||
@@ -203,8 +204,8 @@ start. Never run two service generations against one writable data directory.
|
||||
|
||||
- Authentication blocked: pause retries, verify login URL/avatar and rotate the
|
||||
password file; never paste it into logs. Force reconnect after correction.
|
||||
- LLM unavailable/rate limited: autonomy remains bounded; verify the exact URL,
|
||||
firewall/DNS, and key. Multimodal rejection falls back to the textual scene
|
||||
- LLM unavailable/rate limited: autonomy remains bounded; verify the provider
|
||||
base URL, firewall/DNS, key, and model compatibility. Multimodal rejection falls back to the textual scene
|
||||
summary without resending the large image.
|
||||
- Maintenance/disconnect: allow generation fencing and bounded backoff. Stale
|
||||
inference/mutation results are discarded; do not bypass reconnect controls.
|
||||
@@ -224,12 +225,12 @@ start. Never run two service generations against one writable data directory.
|
||||
The example records all current queue, message, conversation, tool, behavior,
|
||||
reconnect, and interaction defaults. Important defaults include 256 grid events,
|
||||
32 control commands, 512 observations, four concurrent inference requests,
|
||||
16 tool calls, 512 active senders/sessions, a 1 MiB transport body, and bounded
|
||||
10-second shutdown. Vision defaults to a 320x180 synthetic image with bounded
|
||||
entities, triangles, texture work, PNG bytes, time, and concurrency.
|
||||
16 tool calls, 512 active senders/sessions, a two-minute model window, and bounded
|
||||
10-second shutdown. Vision defaults to a 320x180 software-rendered JPEG with bounded
|
||||
entities, triangles, texture work, JPEG bytes, time, and concurrency.
|
||||
|
||||
Unsupported by design: arbitrary raw packets or agent-control flags, arbitrary
|
||||
shell/subprocess execution, provider SDK/model discovery, remote plaintext
|
||||
shell/subprocess execution, provider/model discovery outside Mentra, remote plaintext
|
||||
control, unauthenticated mutation, unrestricted walking/teleport/touch/follow,
|
||||
automatic config migration, persistence of viewport pixels, framebuffer/screen
|
||||
capture, and treating untrusted grid/LLM text as instructions or authority.
|
||||
|
||||
Reference in New Issue
Block a user