wendy-device-interop
Installation
SKILL.md
Wendy Device Interop
wendy-agent's prime directive against the SaaS stack: apply a change only when it carries a valid operator signature the device can verify itself. Cloud is a queue, never an authority — it can accept, append, relay, and enforce, but it holds no key that lets it originate an authoritative change (§5.3, D3). Everything below flows from that one rule.
Hard Rules
- Poll-only. The device polls cloud's postbox for changes; it never accepts a pushed change. There is no code path where cloud calls the device to mutate its state (§5.3).
- Device presents its own mTLS cert. To cloud (postbox poll) and to wendy-proxy (image pull) alike, the device authenticates with its own hardware-backed certificate. Cloud never holds a certificate of its own to act as a principal (§5.3, §5.7).
- No registry credential or token ever on-device. Images come only through wendy-proxy; the device never talks to a registry directly and never stores a pull credential (§5.7).
- Independent verifiability. Nothing is applied on the strength of "cloud said so." Every change must be independently checkable by the device: valid operator signature, current freshness, and binding to this device — see
references/postbox-verification.mdfor the full checklist.
Fail-Safe Catalogue
| Condition | Response |
|---|---|
| Stale head checkpoint (past TTL, or below the device's high-water mark) | Don't trust the tail; alert (D8) |
| Unknown or too-stale trusted time | Hold current state; apply no time-gated change; alert (§4.4) |
| Unverifiable artifact or signature (chain link, checkpoint, request, or TSA token fails to verify) | Reject; alert |
| SaaS unreachable | Keep operating on held state (degraded mode) — never brick, never accept unverifiable material to stay "available" |