diff --git a/packages/uipath/docs/core/assets/studio_web_select_function_dark.png b/packages/uipath/docs/core/assets/studio_web_select_function_dark.png
new file mode 100644
index 000000000..68a66fc92
Binary files /dev/null and b/packages/uipath/docs/core/assets/studio_web_select_function_dark.png differ
diff --git a/packages/uipath/docs/core/assets/studio_web_select_function_light.png b/packages/uipath/docs/core/assets/studio_web_select_function_light.png
new file mode 100644
index 000000000..617e30c2f
Binary files /dev/null and b/packages/uipath/docs/core/assets/studio_web_select_function_light.png differ
diff --git a/packages/uipath/docs/core/studio_web.md b/packages/uipath/docs/core/studio_web.md
index 762735e48..d1b61ddc3 100644
--- a/packages/uipath/docs/core/studio_web.md
+++ b/packages/uipath/docs/core/studio_web.md
@@ -1,9 +1,9 @@
# Studio Web Integration
-[Studio Web](https://docs.uipath.com/studio-web/automation-cloud/latest/user-guide/overview) is a cloud IDE for building projects such as RPAs, low code agents, and API workflows. It also supports importing coded agents built locally. Bringing your coded agent into Studio Web gives you:
+[Studio Web](https://docs.uipath.com/studio-web/automation-cloud/latest/user-guide/overview) is a cloud IDE for building projects such as RPAs, low code agents, and API workflows. It also supports importing coded agents and coded functions built locally. Bringing your coded agent or coded function into Studio Web gives you:
- Cloud debugging with dynamic breakpoints
-- Running and defining evaluations directly in the cloud
+- Running and defining evaluations directly in the cloud (coded agents only)
- A unified build experience alongside multiple project types
- Self contained solution deployment units
@@ -16,11 +16,11 @@
/>
-There are two ways to connect a coded agent to Studio Web: using a [Cloud Workspace](#cloud-workspace) or a [Local Workspace](#local-workspace).
+There are two ways to connect a coded agent or coded function to Studio Web: using a [Cloud Workspace](#cloud-workspace) or a [Local Workspace](#local-workspace).
---
@@ -28,10 +28,14 @@ There are two ways to connect a coded agent to Studio Web: using a [Cloud Worksp
In a Cloud Workspace, your project lives in Studio Web and you sync code between your local IDE and the cloud.
-### Importing a Coded Agent
+### Importing a Coded Agent or Coded Function
1. Open your solution in Studio Web
-2. Create a new Agent and select **Coded**
+2. Create the project:
+
+ //// tab | Agent
+
+ Create a new Agent and select **Coded**:
-3. Choose a sample project to start from, or push an existing local agent
+ ////
-### Pushing an Existing Agent
+ //// tab | Function
-If you already have a coded agent locally, you can sync it to Studio Web:
+ Use the **Initial setup screen** to get started:
-1. Copy the `UIPATH_PROJECT_ID` from Studio Web into your `.env` file
-
-
+
+ ////
+
+3. Choose a sample project to start from, or push an existing local coded agent or coded function
+
+### Pushing an Existing Coded Agent or Coded Function
+
+If you already have a coded agent or coded function locally, you can sync it to Studio Web:
+
+1. Copy the `UIPATH_PROJECT_ID` from Studio Web into your `.env` file
+
+
+
+
+
+
2. Push your project:
+
```shell
> uipath push
Pushing UiPath project to Studio Web...
@@ -79,7 +104,7 @@ If you already have a coded agent locally, you can sync it to Studio Web:
🔵 Resource import summary: 3 total resources - 1 created, 1 updated, 1 unchanged, 0 not found
```
- Notice the **Resource import summary** at the end. The push command also imports resources defined in `bindings.json` into the Studio Web solution, just like importing resources for a low code agent. This ensures that all required resources are packaged with the solution, so the coded agent works anywhere the solution is deployed.
+ Notice the **Resource import summary** at the end. The push command also imports resources defined in `bindings.json` into the Studio Web solution, just like importing resources for a low code agent. This ensures that all required resources are packaged with the solution, so the coded agent or coded function works anywhere the solution is deployed.
See [`uipath push`](../cli/index.md) in the CLI Reference.
@@ -88,6 +113,7 @@ If you already have a coded agent locally, you can sync it to Studio Web:
To pull the latest version from Studio Web to your local environment:
+
```shell
> uipath pull
Pulling UiPath project from Studio Web...
@@ -116,21 +142,24 @@ See [`uipath pull`](../cli/index.md) in the CLI Reference.
In a Local Workspace, your project lives on your machine and is linked to a Studio Web solution. See the [Local Workspace documentation](https://docs.uipath.com/studio-web/automation-cloud/latest/user-guide/solutions-in-the-local-workspace) for setup details.
-You can either start from a predefined template in Studio Web or set up a new agent from scratch.
+You can either start from a predefined template in Studio Web or set up a new project from scratch.
### Starting from a Template
-When creating a new Coded agent in Studio Web with a Local Workspace, you can pick one of the predefined templates. This creates the project files directly on your machine. Templates come with sample code and predefined evaluations you can run immediately.
+When creating a new coded agent or coded function in Studio Web with a Local Workspace, you can pick one of the predefined templates. This creates the project files directly on your machine. Templates come with sample code and predefined evaluations you can run immediately.
-### Setting Up a New Agent
+### Setting Up a New Project
-You can also create a coded agent from scratch in your local IDE and have it appear in Studio Web.
+You can also create a coded agent or coded function from scratch in your local IDE and have it appear in Studio Web.
+
+#### Coded Agent
First, install the SDK package for the framework you want to use:
//// tab | uv
+
```shell
# Pick the package that matches your framework:
# uipath-langchain - LangChain / LangGraph
@@ -149,6 +178,7 @@ Installed 42 packages in 0.8s
//// tab | pip
+
```shell
# Pick the package that matches your framework:
# uipath-langchain - LangChain / LangGraph
@@ -166,6 +196,7 @@ Successfully installed uipath-langchain
Then authenticate, scaffold the agent, and initialize the project:
+
```shell
> uipath auth
â ‹ Authenticating with UiPath ...
@@ -187,57 +218,133 @@ Selected tenant: Tenant1
That's it, your agent should now be visible in Studio Web.
+#### Coded Function
+
+A coded function doesn't require an additional framework package. Authenticate, scaffold the project, and initialize it:
+
+
+
+```shell
+> uipath auth
+â ‹ Authenticating with UiPath ...
+🔗 If a browser window did not open, please open the following URL in your browser: [LINK]
+👇 Select tenant:
+ 0: Tenant1
+ 1: Tenant2
+Select tenant number: 0
+Selected tenant: Tenant1
+✓ Authentication successful.
+
+> uipath new my-function
+✓ Created 'main.py' file.
+✓ Created 'pyproject.toml' file.
+✓ Created 'uipath.json' file.
+
+> uipath init
+â ‹ Initializing UiPath project ...
+✓ Created 'entry-points.json' file.
+```
+
+That's it, your coded function should now be visible in Studio Web.
+
---
## Publishing
-Once your coded agent is in Studio Web, publishing works the same as any other project. Click **Publish** in Studio Web and it will be packaged and deployed through the standard workflow.
+Once your coded agent or coded function is in Studio Web, publishing works the same as any other project. Click **Publish** in Studio Web and it will be packaged and deployed through the standard workflow.
---
## Running and Debugging
-Your agent can be run both in the cloud (via Studio Web) and locally using the CLI.
+Your coded agent or coded function can be run both in the cloud (via Studio Web) and locally using the CLI.
+
+The CLI commands below take the entrypoint name as the first argument. The entrypoint name is the key declared in `uipath.json` — `agent` for a coded agent project, and the function name (for example `main`) for a coded function project.
### Running Locally
+//// tab | Agent
+
+
```shell
> uipath run agent '{"message": "hello"}'
```
+////
+
+//// tab | Function
+
+
+
+```shell
+> uipath run main '{"message": "hello"}'
+```
+
+////
+
See [`uipath run`](../cli/index.md) in the CLI Reference.
### Debugging Locally
Use `uipath debug` for an enhanced local debugging experience. Unlike `uipath run`, the debug command:
-- Auto polls for trigger responses when the agent suspends (e.g., LangGraph interrupts)
+- Auto polls for trigger responses when the project suspends (e.g., LangGraph interrupts)
- Fetches binding overwrites from Studio Web (configurable in **Debug > Debug Configuration > Solution resources**)
+//// tab | Agent
+
+
```shell
> uipath debug agent '{"message": "hello"}'
```
+////
+
+//// tab | Function
+
+
+
+```shell
+> uipath debug main '{"message": "hello"}'
+```
+
+////
+
See [`uipath debug`](../cli/index.md) in the CLI Reference.
### Evaluating Locally
-Run evaluations against your agent using the CLI:
+Run evaluations against your project using the CLI:
+
+//// tab | Agent
+
```shell
> uipath eval agent .\evaluations\eval-sets\faithfulness-multi-model.json
```
+////
+
+//// tab | Function
+
+
+
+```shell
+> uipath eval main .\evaluations\eval-sets\default.json
+```
+
+////
+
See [`uipath eval`](../cli/index.md) in the CLI Reference and the [Evaluations documentation](../eval/index.md).
---
## Syncing Evaluations
-Evaluations can be defined either in Studio Web or locally. They sync automatically when you use `uipath pull` and `uipath push`.
+Evaluations can be defined either in Studio Web or locally, and sync automatically when you use `uipath pull` and `uipath push`. Defining and running evaluations in Studio Web is supported for coded agents only; coded functions can still be evaluated locally with `uipath eval`.
/// note
Custom evaluators must be created locally. See [Custom Evaluators](../eval/custom_evaluators.md) for details.