Metadata-Version: 2.4
Name: uipath-langchain
Version: 0.5.68
Summary: Python SDK that enables developers to build and deploy LangGraph agents to the UiPath Cloud Platform
Project-URL: Homepage, https://uipath.com
Project-URL: Repository, https://github.com/UiPath/uipath-langchain-python
Project-URL: Documentation, https://uipath.github.io/uipath-python/
Maintainer-email: Marius Cosareanu <marius.cosareanu@uipath.com>, Cristian Pufu <cristian.pufu@uipath.com>
License-File: LICENSE
Classifier: Intended Audience :: Developers
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Topic :: Software Development :: Build Tools
Requires-Python: >=3.11
Requires-Dist: httpx>=0.27.0
Requires-Dist: jsonpath-ng>=1.7.0
Requires-Dist: jsonschema-pydantic-converter>=0.1.8
Requires-Dist: langchain-core<2.0.0,>=1.2.11
Requires-Dist: langchain-mcp-adapters==0.2.1
Requires-Dist: langchain-openai<2.0.0,>=1.0.0
Requires-Dist: langchain<2.0.0,>=1.0.0
Requires-Dist: langgraph-checkpoint-sqlite<4.0.0,>=3.0.3
Requires-Dist: langgraph<2.0.0,>=1.0.0
Requires-Dist: mcp==1.26.0
Requires-Dist: openinference-instrumentation-langchain>=0.1.56
Requires-Dist: pydantic-settings>=2.6.0
Requires-Dist: python-dotenv>=1.0.1
Requires-Dist: uipath-runtime<0.9.0,>=0.8.6
Requires-Dist: uipath<2.9.0,>=2.8.39
Provides-Extra: bedrock
Requires-Dist: boto3-stubs>=1.41.4; extra == 'bedrock'
Requires-Dist: langchain-aws>=0.2.35; extra == 'bedrock'
Provides-Extra: vertex
Requires-Dist: google-generativeai>=0.8.0; extra == 'vertex'
Requires-Dist: langchain-google-genai>=2.0.0; extra == 'vertex'
Description-Content-Type: text/markdown

# UiPath LangChain Python SDK

[![PyPI - Version](https://img.shields.io/pypi/v/uipath-langchain)](https://pypi.org/project/uipath-langchain/)
[![PyPI downloads](https://img.shields.io/pypi/dm/uipath-langchain.svg)](https://pypi.org/project/uipath-langchain/)
[![Python versions](https://img.shields.io/pypi/pyversions/uipath-langchain.svg)](https://pypi.org/project/uipath-langchain/)

A Python SDK that enables developers to build and deploy LangGraph agents to the UiPath Cloud Platform. It provides programmatic interaction with UiPath Cloud Platform services and human-in-the-loop (HITL) semantics through Action Center integration.

This package is an extension to the [UiPath Python SDK](https://github.com/UiPath/uipath-python) and implements the [UiPath Runtime Protocol](https://github.com/UiPath/uipath-runtime-python).

This [quickstart guide](https://uipath.github.io/uipath-python/) walks you through deploying your first agent to UiPath Cloud Platform.

Check out these [sample projects](https://github.com/UiPath/uipath-langchain-python/tree/main/samples) to see the SDK in action.

## Requirements

-   Python 3.11 or higher
-   UiPath Automation Cloud account

## Installation

```bash
pip install uipath-langchain
```

using `uv`:

```bash
uv add uipath-langchain
```

## Configuration

### Environment Variables

Create a `.env` file in your project root with the following variables:

```
UIPATH_URL=https://cloud.uipath.com/ACCOUNT_NAME/TENANT_NAME
UIPATH_ACCESS_TOKEN=YOUR_TOKEN_HERE
```

## Command Line Interface (CLI)

The SDK provides a command-line interface for creating, packaging, and deploying LangGraph Agents:

### Initialize a Project

```bash
uipath init
```

Running `uipath init` will process the graph definitions in the `langgraph.json` file and create the corresponding `entry-points.json` file needed for deployment.

For more details on the configuration format, see the [UiPath configuration specifications](https://github.com/UiPath/uipath-python/blob/main/specs/README.md).

### Authentication

```bash
uipath auth
```

This command opens a browser for authentication and creates/updates your `.env` file with the proper credentials.

### Debug a Project

```bash
uipath run GRAPH [INPUT]
```

Executes the agent with the provided JSON input arguments.

### Package a Project

```bash
uipath pack
```

Packages your project into a `.nupkg` file that can be deployed to UiPath.

**Note:** Your `pyproject.toml` must include:

-   A description field (avoid characters: &, <, >, ", ', ;)
-   Author information

Example:

```toml
description = "Your package description"
authors = [{name = "Your Name", email = "your.email@example.com"}]
```

### Publish a Package

```bash
uipath publish
```

Publishes the most recently created package to your UiPath Orchestrator.

## Project Structure

To properly use the CLI for packaging and publishing, your project should include:

-   A `pyproject.toml` file with project metadata
-   A `langgraph.json` file with your graph definitions (e.g., `"graphs": {"agent": "graph.py:graph"}`)
-   A `entry-points.json` file (generated by `uipath init`)
-   A `bindings.json` file (generated by `uipath init`) to configure resource overrides
-   Any Python files needed for your automation

## Development

### Developer Tools

Check out [uipath-dev](https://github.com/uipath/uipath-dev-python) - an interactive terminal application for building, testing, and debugging UiPath Python runtimes, agents, and automation scripts.

### Setting Up a Development Environment

Please read our [contribution guidelines](https://github.com/UiPath/uipath-langchain-python/blob/main/CONTRIBUTING.md) before submitting a pull request.

### Special Thanks

A huge thank-you to the open-source community and the maintainers of the libraries that make this project possible:

- [LangChain](https://github.com/langchain-ai/langchain) for providing a powerful framework for building stateful LLM applications.
- [Pydantic](https://github.com/pydantic/pydantic) for reliable, typed configuration and validation.
- [OpenInference](https://github.com/Arize-ai/openinference) for observability and instrumentation support.

