> ## Documentation Index
> Fetch the complete documentation index at: https://docs.glasswarp.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Glasswarp

> API for real-time visual access and native input control on Windows machines you already own.

Glasswarp gives an AI agent **eyes and hands on a real Windows machine**:
native-resolution vision and native input through one API. You supply the
**brain** — the model, prompts, and task logic.

<Note>
  Unlike a VNC framebuffer or a throwaway Linux sandbox, Glasswarp drives the
  **real Windows PC you own** — native resolution, sub-30 ms glass-to-glass,
  GPU-accelerated capture, and native Win32 input. Your apps, your files, your GPU.
</Note>

## Start here

<CardGroup cols={2}>
  <Card title="Quickstart" icon="rocket" href="/quickstart">
    Connect the SDK, start a session, capture a frame, and send input in under
    five minutes.
  </Card>

  <Card title="Setup for Agents" icon="robot" href="/setup-for-agents">
    Paste one prompt into your coding agent and let it wire Glasswarp into your
    project.
  </Card>

  <Card title="Install the host" icon="windows" href="/get-started/install-host">
    Put the host agent on a Windows machine, pair it, and enable API access.
  </Card>

  <Card title="API reference" icon="code" href="/api-reference/overview">
    Every `/v1/*` endpoint with an interactive request builder.
  </Card>
</CardGroup>

## The loop

Every integration is the same shape: **see the screen, decide, act, repeat.**
Glasswarp owns the see-and-act transport; your code owns the decide.

```python theme={null}
from glasswarp import GlasswarpClient

gw = GlasswarpClient(api_key="gw_live_sk_...")

rig = next(r for r in gw.list_rigs() if r.online and r.api_access_enabled)
session = gw.create_session(rig_id=rig.id, mode="desktop")
sid = session.session_id

try:
    frame = gw.screenshot(sid)          # eyes: native-resolution JPEG
    gw.click(sid, x=500, y=400)         # hands: native Win32 input
    gw.type_text(sid, "Hello from an agent")
finally:
    gw.end_session(sid)                 # always end metered sessions
```

## What Glasswarp is (and isn't)

<Columns cols={2}>
  <div>
    **Glasswarp provides**

    * Eyes — `screenshot`, `observe`, dirty rects, native-res JPEG
    * Hands — `click`, `type_text`, `key_press`, `drag`, native input
    * Grounding — UIA targets (roles, names, bounds) and Set-of-Mark
    * A safe, observable session — consent, on-screen indicator, kill switch, audit, Live View
  </div>

  <div>
    **You provide**

    * The model and prompts
    * CV, solvers, and planning
    * The agent loop and task decisions

    Task logic lives in your codebase, never in the platform.
  </div>
</Columns>

## Keep going

<CardGroup cols={3}>
  <Card title="Concepts" icon="book" href="/concepts/eyes-and-hands">
    Rigs, sessions, vision, grounding, and safety.
  </Card>

  <Card title="Guides" icon="compass" href="/guides/observe">
    Observe, input, launch apps, Live View, and the agent loop.
  </Card>

  <Card title="Examples" icon="flask" href="/examples/paint">
    Runnable demos on a real Windows PC.
  </Card>
</CardGroup>
