Xtral exposes your application's semantic state to AI agents like Claude. No more guessing from screenshots — explicit state, deterministic feedback.
import { useXtralState, useXtralAction } from "@xtral/react";
function Checkout() {
// Expose cart state to agents
const [cart, setCart] = useXtralState("cart", []);
// Declare actions agents can perform
useXtralAction("placeOrder", {
handler: async () => {
await api.placeOrder(cart);
return { outcome: "confirmed" };
},
outcomes: ["confirmed", "failed"]
});
return <CheckoutForm cart={cart} />;
}Use hooks like useXtralState and useXtralForm to make your app's semantic state visible.
Claude connects via MCP, reads your state directly — no DOM scraping or screenshots.
Actions return explicit outcomes. Agents know exactly what happened.
Free to start. Record sessions and get insights as you scale.
Get Started Free