InnerOS Ambient Guardian

A premium local-first AI guardian for smart homes.

Modern smart homes already contain Alexa, cameras, smart locks, alarms, access control, sensors, lighting, automation and Ring-class devices, but those systems still behave like separate products. Homeowners receive alerts, open multiple apps, reconstruct what happened, decide what to do, and then have to trust that the action actually worked.

InnerOS Ambient Guardian turns that fragmented hardware into one coherent home intelligence layer.

Your smart home should not only react. It should understand what is happening, help decide what should happen next, and prove what actually happened.

What the demo does

Ambient Guardian provides a no-terminal Judge Mode with three reproducible scenarios:

  1. Home status — ask whether everything is okay at home.
  2. Front-door context — inject a clearly labeled Ring-compatible simulated entrance event and ask what happened.
  3. Prepare lock — prepare a bounded door-lock action that remains executed=false until a separate human approval occurs, then verify the observed result and create evidence.

The UI makes the truth boundary explicit:

  • REAL: official MCP Streamable HTTP runtime
  • REAL: Ambient Guardian state, policy and verification logic
  • REAL: AWS Strands Agent calling local Qwen/vLLM
  • SIMULATED: Alexa+ browser interaction layer
  • SIMULATED: Ring-compatible event source
  • OPTIONAL PRODUCT VALIDATION: physical Echo and Ring devices

The simulated Alexa+ layer is not a screenshot or mocked result. It talks to the same live backend and policy boundary used by the MCP server.

Alexa+ primary track

Ambient Guardian implements a self-hosted MCP server using the official MCP Python SDK v2 and Streamable HTTP at /mcp, compatible with the hackathon requirement of MCP spec 2025-11-25 or later.

The MCP surface exposes:

  • Guardian status
  • recent normalized home events
  • safety reasoning
  • bounded action preparation
  • verification evidence
  • integration diagnostics

There is intentionally no approve_action MCP tool. Alexa or another model may understand context and prepare a proposal, but it cannot approve or execute its own physical action.

Local-first AI + AWS Strands

Sensitive home context such as occupancy, visitors, access events and routines should not require a permanently cloud-dependent intelligence layer.

Ambient Guardian therefore uses local Qwen/vLLM on our AMD AI node for primary reasoning. The live Judge Mode path is:

Judge UI → Ambient Guardian runtime → AWS Strands Agent → local Qwen/vLLM → response

AWS Strands is a real read-only orchestration and synthesis layer. strands.Agent uses an explicit OpenAI-compatible provider pointed at local Qwen/vLLM and receives no physical-action tools. Deterministic application code remains responsible for action parsing, authorization, execution and verification.

We also optimized the final runtime so that when Strands is enabled there is only one model-backed Qwen inference per turn, instead of a redundant direct Qwen request followed by a second Strands/Qwen request. The failure path falls back deterministically without making a second model attempt.

Amazon Bedrock is optional and is not claimed as working while the account returns ValidationException: Operation not allowed.

Human approval and verified evidence

Physical consequences follow a strict sequence:

request → deterministic parser → allowlist → prepare → one-time expiring token → human approval → execute → verify → evidence

Safety properties include:

  • fail-closed natural-language parsing
  • unlock cannot be misread as lock
  • negated commands do not create proposals
  • one-time expiring approval tokens
  • replay protection
  • atomic token consumption
  • no success claim until observed state verifies the requested result

The public hackathon adapter controls a simulator only. No customer lock credential, camera URL, private network configuration or access-control secret is exposed.

Ring-ready architecture

Ring is commercially important for the premium homes we target, but we do not claim a production Ring integration that we have not demonstrated.

The current build contains a clearly labeled Ring-compatible simulator/event-normalization boundary. A physical Ring device is not required for this Alexa+-primary submission. Ring track eligibility would only be claimed after demonstrating official Ring API, SDK, simulator or device integration.

Open Source mini challenge

The project is public under the MIT License and includes:

  • complete source code
  • official MCP server
  • Alexa+ Judge Mode source
  • AWS Strands integration
  • local Qwen/vLLM path
  • Ring-compatible simulator boundary
  • tests and GitHub Actions CI
  • Docker packaging
  • architecture, security and deployment docs
  • executable MCP/runtime smokes
  • Judge Mode and video shot-list docs
  • detailed friction log

GitHub username: Rafa-Innerchispa.

Current verification

Canonical main:

655fa9d1ffff908ca240964b57d650ac24c191e5

Verified evidence:

  • 30/30 automated tests PASS
  • GitHub Actions SUCCESS
  • compileall PASS
  • git diff --check PASS
  • official MCP client connected over real Streamable HTTP
  • MCP tool discovery/calls PASS
  • explicit proof that approve_action is absent from MCP
  • runtime HTTP + MCP smoke PASS
  • persistent local Judge Mode service validated on loopback only
  • AWS Strands → local Qwen/vLLM returned HTTP 200 in the live Judge Mode
  • live post-merge proof of one Qwen request per Strands-enabled turn
  • all three Judge Mode scenarios exercised through browser QA

Product potential

Our first natural market is premium homes and residential communities in Samborondón and Guayaquil, Ecuador, where many homeowners already own sophisticated but fragmented smart-home hardware.

The opportunity extends globally to premium residences, vacation homes and small residential communities. The customer does not need another isolated dashboard. They need a privacy-conscious intelligence layer that understands the hardware they already own, explains what is happening, keeps humans in control of physical consequences and proves the result.

That is the difference between a collection of smart devices and an intelligent home.

Built With

  • alexa+
  • amd-rocm
  • aws-strands-agents-sdk
  • docker
  • github-actions
  • model-context-protocol
  • python
  • qwen
  • starlette
  • uvicorn
  • vllm
Share this project:

Updates