> ## 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.

# Build with coding assistants

> Install the hai-agents skill so Claude Code, Cursor, and other assistants know the H APIs and help you build use cases.

export const Notice = ({kind = "note", title, children}) => {
  const kinds = {
    warning: {
      label: "User notice",
      icon: <>
          <path d="m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3" />
          <path d="M12 9v4" />
          <path d="M12 17h.01" />
        </>
    },
    gotcha: {
      label: "Gotcha",
      icon: <>
          <circle cx="12" cy="12" r="10" />
          <path d="M12 16v-4" />
          <path d="M12 8h.01" />
        </>
    },
    note: {
      label: "Note",
      icon: <>
          <circle cx="12" cy="12" r="10" />
          <path d="M12 16v-4" />
          <path d="M12 8h.01" />
        </>
    }
  };
  const k = kinds[kind];
  return <div className="notice my-6 rounded-xl border border-zinc-200 bg-white p-5 dark:border-zinc-800 dark:bg-zinc-950">
      <div className={`${kind === "warning" ? "not-prose flex items-center gap-1.5 text-xs font-semibold uppercase tracking-wide text-red-400/80 dark:text-red-400/70" : kind === "gotcha" ? "not-prose flex items-center gap-1.5 text-xs font-semibold uppercase tracking-wide text-amber-500/80 dark:text-amber-400/70" : "not-prose flex items-center gap-1.5 text-xs font-semibold uppercase tracking-wide text-zinc-400 dark:text-zinc-500"}`}>
        <svg className="h-3.5 w-3.5" viewBox="0 0 24 24" fill="none" stroke="currentColor" strokeWidth="2" strokeLinecap="round" strokeLinejoin="round">
          {k.icon}
        </svg>
        {k.label}
      </div>
      {title && <div className="not-prose mt-2 text-base font-semibold text-zinc-900 dark:text-zinc-100">{title}</div>}
      <div className="notice-body mt-3 text-sm leading-6 text-zinc-700 dark:text-zinc-300">{children}</div>
    </div>;
};

<Frame caption="The /hai-agents skill writes and runs a TypeScript availability check from one prompt">
  <video controls playsInline className="w-full aspect-video rounded-xl" src="https://mintcdn.com/hcompany/NKXrpCWEaWVdSeM0/videos/product-availability.mp4?fit=max&auto=format&n=NKXrpCWEaWVdSeM0&q=85&s=bc45e6aa6ccdace16861b5199d021584" data-path="videos/product-availability.mp4" />
</Frame>

The `hai-agents` skill teaches your coding assistant H's APIs, so it scaffolds working sessions, agents, and environments from a plain-language prompt instead of guessing at endpoints. One `SKILL.md` works in Claude Code, Cursor, and Hermes. Only the install differs.

<Notice kind="note" title="Coding skill, not agent skill">
  This skill runs in your coding assistant. Agents API [skills](/agents-api/skills/overview) are a different thing: instructions you attach to an H agent.
</Notice>

<Card title="hcompai/computer-use-agents-demos/skills/hai-agents" icon="github" horizontal href="https://github.com/hcompai/computer-use-agents-demos/tree/main/skills/hai-agents">
  The skill's source: `SKILL.md` plus the reference docs it loads. Also published as a Claude Code plugin (marketplace `hai-skills`).
</Card>

## What your assistant learns

* **Portal**: auth, organizations, invitations, billing, API keys, and a login script that writes your key into `.env`.
* **Agents API**: sessions, agents, skills, environments, vaults, and `/changes` long-polling.
* **SDKs**: the Python and TypeScript clients (`run_session` / `runSession`, session handles, events, error classes).
* **Agent View**: replaying and sharing what an agent did.

The skill triggers on its own when the conversation matches: asking about H sessions or `hk-...` keys pulls it in.

## Install

<Tabs>
  <Tab title="Claude Code">
    Add the marketplace first (otherwise `hai-skills` is unknown), then install. Type these in any Claude Code prompt:

    ```bash theme={"system"}
    /plugin marketplace add hcompai/computer-use-agents-demos
    /plugin install hai-agents@hai-skills
    ```
  </Tab>

  <Tab title="Cursor">
    Cursor 2.4+ reads skills from `.cursor/skills/` in your project:

    ```bash theme={"system"}
    git clone https://github.com/hcompai/computer-use-agents-demos
    mkdir -p .cursor/skills
    cp -r computer-use-agents-demos/skills/hai-agents .cursor/skills/hai-agents
    ```

    Then run **Cmd/Ctrl+Shift+P → "Developer: Reload Window"**.
  </Tab>

  <Tab title="Hermes">
    Hermes reads agentskills.io skills from `~/.hermes/skills/` and re-scans it on startup:

    ```bash theme={"system"}
    git clone https://github.com/hcompai/computer-use-agents-demos
    mkdir -p ~/.hermes/skills
    cp -r computer-use-agents-demos/skills/hai-agents ~/.hermes/skills/hai-agents
    ```

    Then restart Hermes.
  </Tab>
</Tabs>

## Build a use case

Describe the workflow in plain language. In Claude Code you can call the plugin's slash command. In Cursor or Hermes, a plain prompt triggers the skill.

> *❯ /hai-agents:hai-agents "Add one iPhone 17 Pro to my Amazon.com cart"*

It writes TypeScript or Python against the real endpoints and SDK helpers. The video above came from:

> *❯ /hai-agents:hai-agents "Generate TypeScript code that navigates to jacquemus.com, finds the France × Nike football jersey, and checks its availability in sizes S and XXL."*

Generated code: [`examples/product_availability/src/index.ts`](https://github.com/hcompai/computer-use-agents-demos/blob/main/examples/product_availability/src/index.ts). More recipes (QA via CLI, schema-driven extraction, counterfeit detection) are in the [demos repo](https://github.com/hcompai/computer-use-agents-demos).

Related: [Quickstart](/agents-api/quickstart), [SDKs](/agents-api/sdks), [MCP server](/agents-api/mcp)


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.