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

# Agent SDK

> Build a TypeScript interface for fal Agent responses, approvals, plans, and generated media.

Use `createFalClient(...).agent` to submit tasks, handle user input, and retrieve generated media.

<Note>
  The Agent SDK is in alpha. Start with the
  [quickstart](/docs/documentation/agent/sdk/quickstart).
</Note>

## Concepts

| Concept       | Purpose                                                    |
| ------------- | ---------------------------------------------------------- |
| Conversation  | Groups user inputs, responses, and generated media.        |
| Response      | Represents one submitted task and its continuations.       |
| Input request | Asks the user for clarification or approval.               |
| Plan          | Defines editable steps and approval checkpoints.           |
| Operation     | Reports work in progress, including media generation.      |
| Artifact      | Identifies completed media that you can retrieve or reuse. |

## Start here

<CardGroup cols={2}>
  <Card title="Quickstart" icon="play" href="/docs/documentation/agent/sdk/quickstart">
    Install the SDK and run your first task.
  </Card>

  <Card title="Responses and recovery" icon="arrows-rotate" href="/docs/documentation/agent/sdk/responses">
    Submit once, stream snapshots, and reconnect to
    existing work.
  </Card>

  <Card title="Questions and approvals" icon="comments" href="/docs/documentation/agent/sdk/inputs">
    Show pending inputs and resume the same
    response.
  </Card>

  <Card title="Plans" icon="list-check" href="/docs/documentation/agent/sdk/plans">
    Edit steps, handle revision conflicts, and run a
    plan.
  </Card>
</CardGroup>

## Reference

* [Every client method](/docs/documentation/agent/sdk/methods).
* [All request and response types](/docs/documentation/agent/sdk/types).
* [Guidance for coding agents](/docs/documentation/agent/sdk/for-agents).

Use [skills](/docs/documentation/agent/sdk/skills) to add reusable instructions.
Read [tool activity](/docs/documentation/agent/sdk/activity) to follow execution progress.
