Inspiration
AI agents are becoming much better at reasoning, but actually operating software reliably is still difficult.
Most computer-use systems depend on screenshots, coordinates, brittle selectors, or custom integrations for each application. That works until the interface changes, the agent crosses into a different environment, or the system needs to prove that an action really succeeded.
We wanted to explore a different idea:
What if an AI agent could operate software through one semantic execution layer instead of learning every interface separately?
That became Nexus Semantic.
For the Alexa+ hackathon, we wanted to make that idea tangible with one simple experience: a user gives Alexa a single natural-language request, and the system carries it across a live web application and a native Windows application while preserving safety and verification throughout.
What it does
The demo starts with one request:
“Alexa, set me up for the Acme review.”
Amazon Bedrock converts that request into a constrained plan grounded in the capabilities Nexus exposes.
From that single request, the system:
- Maps the application's semantic controls.
- Extracts its design tokens.
- Reads the current theme from a live Firefox session.
- Changes the theme to dark and verifies the resulting state.
- Reaches a sensitive action and pauses for explicit human confirmation.
- Crosses into native Windows Notepad, writes the review brief, reads it back through Windows UI Automation, and verifies the exact text.
The key idea is that Alexa is not directly automated against Firefox or Notepad.
Both environments are controlled through the same Nexus Semantic runtime.
How we built it
We separated the system into two clear layers.
The first layer is the Alexa+ experience and planning layer. The project exposes an MCP 2025-11-25 Streamable HTTP server, and Amazon Bedrock interprets the user's request and proposes an ordered plan using a declared capability surface.
The second layer is Nexus Semantic, which owns execution.
For the live demo:
- Firefox is controlled through a real WebDriver BiDi-backed substrate.
- Windows Notepad is controlled through native Windows UI Automation.
- Nexus handles semantic queries, capability discovery, live-state reads, invocation, desktop reads and writes, safety enforcement, and post-action verification.
- Sensitive actions are gated by explicit confirmation before execution.
This separation is intentional:
Bedrock reasons about what should happen. Nexus determines how it happens, enforces the safety boundary, and verifies the result.
The web and desktop steps both pass through one Nexus runtime rather than being separate automation systems stitched together.
Challenges we ran into
One of the biggest challenges was making the demo reliable across two very different environments.
Web automation and native desktop automation expose different concepts, state models, and failure modes. We had to make both work through the same higher-level semantic contract without pretending those differences did not exist.
Verification was another major challenge. We did not want an action to count as successful simply because an automation command returned without throwing an error.
After changing the theme, Nexus reads the live browser state again. After writing to Notepad, Nexus reads the native editor back through UI Automation and compares the observed text with the expected result.
A late issue exposed exactly why that matters: the planner expected metadata that the live Windows adapter did not actually provide. The write itself was correct, but verification failed. The right fix was not to fake that metadata, but to narrow the expected state to only what the live substrate could genuinely prove.
Safety was also important. The sensitive step needed to stop before execution, request explicit approval, and only proceed after confirmation.
Finally, we had to keep the language model in the right role. The model plans the workflow, but it does not get to invent application state or declare success on its own.
Accomplishments that we're proud of
We are especially proud that the final demo is not a mocked cross-platform sequence.
It performs one coherent live workflow across:
- a real Firefox session,
- a real native Windows application,
- one Nexus Semantic runtime,
- Amazon Bedrock planning,
- explicit human confirmation,
- and post-action verification.
The final six-step workflow completes end to end with the system verifying both browser state and exact native text output.
We are also proud that the architecture fails closed. If the required live substrate, authorization, or verification path is unavailable, Nexus does not silently downgrade the demo into a weaker execution mode.
And perhaps most importantly, the experience remains simple from the user's perspective:
one request in, verified work across multiple applications out.
What we learned
The biggest lesson was that agent reliability is not only a model problem.
A stronger model helps with reasoning, but dependable execution depends on the architecture around it.
We learned that:
- semantic capabilities are more durable than pixel coordinates;
- execution and reasoning should be separate responsibilities;
- verification should be part of the workflow, not an afterthought;
- safety controls are stronger when enforced below the planner;
- an agent should reason over constrained capabilities rather than directly manipulate low-level interfaces;
- and a shared semantic model can make very different environments feel like one execution surface.
The project also reinforced a simple principle:
The agent should not say something happened because it intended it to happen. It should prove it happened.
What's next for Nexus Semantic
The live hackathon demo focuses on Firefox and Windows, but the architecture is designed to extend beyond those two environments.
The broader direction is a common semantic execution layer across web, desktop, and mobile substrates.
That means extending the same model to additional environments such as Chrome, macOS, Android, and iOS while preserving the same core ideas:
- discover capabilities semantically,
- execute through a controlled substrate,
- enforce explicit safety boundaries,
- and verify the resulting state.
The long-term goal is for AI agents to stop needing a custom integration for every application they encounter.
Instead, they should be able to reason over one trusted execution layer that understands the interface beneath them.
One semantic engine for every interface.
Built With
- agentic
- agents
- ai
- alexa+
- amazon
- amazon-web-services
- automation
- bidi
- computer
- context
- human-in-the-loop
- interface
- language
- mcp
- model
- natural
- node.js
- protocol
- semantic
- typescript
- voice
- webdriver
- windows
Log in or sign up for Devpost to join the conversation.