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

> ## Agent Instructions
> H Platform has four products: the Agents API (managed computer-use agents, base URL https://agp.eu.hcompany.ai/api/v2 or https://agp.hcompany.ai/api/v2 for the US), the Models API (OpenAI-compatible Holo vision-language models at https://api.hcompany.ai/v1), HoloDesktop CLI (Holo on the user's own desktop), and HoloTab (a free no-code Chrome extension that runs Holo in the user's browser, with recordable routines and schedules).
> Authenticate with a bearer API key from the HAI_API_KEY environment variable. SDKs: `pip install hai-agents` (Python, `from hai_agents import Client`) and `npm install hai-agents` (TypeScript, `import { HaiAgentsClient } from "hai-agents"`). CLI: `hai`.
> Agents do work in a browser or on a desktop; describe the task as an imperative instruction. To run a task quickly, prefer the pre-built agent `h/web-surfer-flash`. Read results from the session's `latest_answer` after it reaches a terminal status.
> Sessions are the unit of work; wait for a terminal status (completed, failed, timed_out, interrupted) before reading the answer. Use webhooks or the `changes` long-poll endpoint to follow progress.

# HoloTab quickstart

> Install HoloTab from the Chrome Web Store, accept the safety notice, sign in, run a first task from the side panel, and write prompts that work.

export const PromptExamples = ({examples}) => <div className="not-prose my-6 overflow-hidden rounded-xl border border-zinc-200 bg-white dark:border-zinc-800 dark:bg-zinc-950">
    {examples.map(([situation, prompt, outcome], i) => <div key={situation} className={`${i > 0 ? "grid gap-4 border-t border-zinc-200 p-5 md:grid-cols-12 dark:border-zinc-800" : "grid gap-4 p-5 md:grid-cols-12"}`}>
        <div className="md:col-span-3">
          <div className="text-xs font-medium uppercase tracking-wide text-zinc-400 dark:text-zinc-500">Situation</div>
          <div className="mt-1 text-sm leading-6 text-zinc-800 dark:text-zinc-200">{situation}</div>
        </div>
        <div className="md:col-span-5">
          <div className="text-xs font-medium uppercase tracking-wide text-zinc-400 dark:text-zinc-500">Prompt</div>
          <div className="mt-1 rounded-lg bg-zinc-100 px-3 py-2 text-sm leading-6 text-zinc-900 dark:bg-zinc-800 dark:text-zinc-100">{prompt}</div>
        </div>
        <div className="md:col-span-4">
          <div className="text-xs font-medium uppercase tracking-wide text-zinc-400 dark:text-zinc-500">HoloTab</div>
          <div className="mt-1 text-sm leading-6 text-zinc-600 dark:text-zinc-400">{outcome}</div>
        </div>
      </div>)}
  </div>;

<Steps titleSize="h3">
  <Step id="install" title="Install and pin">
    [Add HoloTab from the Chrome Web Store](https://chromewebstore.google.com/detail/holotab/hlaoiikljjgcjdhkakedfngifaopbcop), then pin it to the toolbar so it is one click away. Click the icon to open the side panel.
  </Step>

  <Step id="notice" title="Read the safety notice">
    <Frame>
      <img src="https://mintcdn.com/hcompany/2D0h3LjVGVT0_s43/images/holotab/safety-notice.webp?fit=max&auto=format&n=2D0h3LjVGVT0_s43&q=85&s=7253a06e761c915aa830c895d6fe812c" alt="HoloTab onboarding notice: screenshots of the active tab, you stay in control, some sites may try to manipulate AI agents" width="1600" height="1000" data-path="images/holotab/safety-notice.webp" />
    </Frame>

    | The notice says                            | What it means                                                                                                                                              |
    | ------------------------------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------- |
    | HoloTab takes screenshots                  | It needs to see the active tab to act on it. Screenshots are deleted at the end of the session and never used for training.                                |
    | It opens new tabs                          | Booking a table or sending an email means opening Google Calendar, Gmail, and similar sites.                                                               |
    | Some sites may try to manipulate AI agents | Hidden instructions in a page can try to hijack the task. Stick to sites you trust; see [prompt injection](/holotab/autonomy-and-safety#prompt-injection). |
    | Sensitive sites are blocked                | Banking, healthcare, HR, and other high-risk categories are refused by design.                                                                             |

    Accept, then sign in with Google or your email address.
  </Step>

  <Step id="first-task" title="Run a first task">
    <Frame>
      <img src="https://mintcdn.com/hcompany/2D0h3LjVGVT0_s43/images/holotab/prompt.gif?s=ae9fad7eb2ae667b9d2f432a870304ec" alt="The HoloTab side panel prompt box: describe a task or type / for routines" width="704" height="424" data-path="images/holotab/prompt.gif" />
    </Frame>

    Type what you want in the prompt box and press enter. Not sure where to start? Type `/` to pick a pre-built routine, like booking a restaurant or creating an eBay listing.
  </Step>

  <Step id="follow" title="Follow along">
    The panel shows HoloTab's reasoning live: which tab it is looking at, what it decided to do next, what it found. You can stop or redirect at any time, and in the default mode it pauses for your approval before consequential actions like sending a message or confirming a booking. See [Autonomy modes](/holotab/autonomy-and-safety#autonomy-modes) to change that.
  </Step>
</Steps>

## Write good prompts

Name the platform, state constraints, and describe the goal rather than the clicks.

<PromptExamples
  examples={[
["Client lunch to book", "Find a nice Italian restaurant in Midtown for 4 this Thursday at 12:30 for a business lunch and add it to my calendar.", "Searches, checks availability, books the table, adds the event to Google Calendar."],
["Forty unread emails", "Check my Gmail inbox and write draft replies for each unread email that needs a response.", "Reads each email, drafts a reply in context, saves them as drafts for you to review and send."],
["Leads to move into the CRM", "Go to my LinkedIn connections, find anyone with \"Head of Growth\" in their title, and add them as contacts in HubSpot with their name, company, and profile URL.", "Works across both sites and fills HubSpot, no integration needed."],
]}
/>

Tips that make a difference:

* Say where: "use Gmail", "search on OpenTable".
* Say what must not happen without you: "wait for my approval before sending".
* Give the inputs up front: dates, party size, budget, tone.

## Next steps

<CardGroup cols={2}>
  <Card title="Routines and schedules" icon="repeat" href="/holotab/routines-and-schedules">
    Record a task once and run it on a timer.
  </Card>

  <Card title="Autonomy and safety" icon="shield-halved" href="/holotab/autonomy-and-safety">
    Pick how much HoloTab does on its own, and what it should never touch.
  </Card>
</CardGroup>
