Agent skill

Uipath Functions

by UiPath in UiPath/skills

UiPath Coded Functions — deterministic Python or TypeScript/JavaScript units built with the uip function CLI (new -l py|ts|js, init, serve, run, pack, publish); the functions map in uipath.json…

MITAuto-check: notesAI & LLM Engineering

Install Uipath Functions

skills CLI
$ npx skills add UiPath/skills --skill uipath-functions -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install UiPath/skills uipath-functions --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/UiPath/skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/uipath-functions .claude/skills/uipath-functions && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
uipath-functions
GitHub stars
168
Token cost
~3.6k tokens
SKILL.md length
1,382 words
Files
10 (incl. references)
Skills in repo
28
Repo updated
First seen
Licence
MIT

At a glance

UiPath Coded Functions — deterministic Python or TypeScript/JavaScript units built with the uip function CLI (new -l py|ts|js, init, serve, run, pack, publish); the functions map in uipath.json…

  • Works in 3 steps: No LLM calls inside a Coded Function.… → The functions map in uipath.json… → Cloud-backed work needs auth: uip login…
  • Tasks that involve Autonomous loops
  • SKILL.md covers When to Use This Skill, Language Split, Critical Rules and Quick Start, plus 3 more sections
  • Calls npm; needs UIPATH_ACCESS_TOKEN

What it does

Uipath Functions is an agent skill from UiPath/skills. UiPath Coded Functions — deterministic Python or TypeScript/JavaScript units built with the uip function CLI (new -l py|ts|js, init, serve, run, pack, publish); the functions map in uipath.json marks the project. Python: Pydantic Input/Output models, lazy UiPath() SDK singleton. JS/TS: defineFunction + defineSchema<T() contracts, HTTP endpoints for Coded App backends or run-as-job, FunctionError. Rule-based logic, data transforms, ERP/Integration Service calls — invoked as Maestro Service Tasks, from agents, via…

Its SKILL.md is about 3.6k tokens, which your agent loads only when the skill is triggered. The skill folder holds 12 other files, including reference files (for example `references/js/authoring-guide.md`, `references/js/bindings-guide.md` and `references/js/calling-uipath-apis-guide.md`).

It sits in AI & LLM Engineering, covering Autonomous loops, OAuth and OpenID Connect and Building AI agents. It works with Python, Pydantic, TypeScript and LangGraph. The repository describes itself as: This is a repository of skills for interfacing UiPath capabilities to external developers. The licence is MIT.

When your agent uses it

  • Tasks that involve Autonomous loops
  • Tasks that involve OAuth and OpenID Connect
  • Tasks that involve Building AI agents

Example prompts

  • “/uipath-functions”

Requirements

  • Python 3
  • Node.js
  • A credential in UIPATH_ACCESS_TOKEN
  • Pre-approved tools (allowed-tools): Bash, Read, Write, Edit, Glob, Grep, AskUserQuestion

Workflow steps

3 steps, taken from the first numbered list in SKILL.md.

  1. No LLM calls inside a Coded Function. LLM reasoning breaks the deterministic contract — that project is an agent → uipath-agents.
  2. The functions map in uipath.json identifies the project as a Coded Function — it is the marker every tool reads.
  3. Cloud-backed work needs auth: uip login --organization "" --tenant "" --output json.

What it can do on your machine

Read from SKILL.md and the folder at commit bc2e230. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves these tools, so the agent can use them without asking each time:

    • Bash
    • Read
    • Write
    • Edit
    • Glob
    • Grep
    • AskUserQuestion

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • npm

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md. Its commands use npm, which can reach the network depending on how they are called.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names these keys or tokens, usually read from environment variables:

    • UIPATH_ACCESS_TOKEN

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Uipath Functions loads about 3.6k tokens when it runs, and up to ~21k if it reads all its reference files. Until then it costs about 209 tokens; SKILL.md has 1,382 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~209
When it runs · the whole SKILL.md, loaded when a task matches
~3.6k
With references · SKILL.md plus every file in references/, read only if the agent opens them
~21k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check: notes

The automated check noted patterns worth knowing about, such as sudo or a known installer.

  • NotePre-approves every shell command (allowed-tools: Bash)SKILL.md
    allowed-tools: Bash, Read, Write, Edit, Glob, Grep, AskUserQuestion

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from UiPath/skills at commit bc2e230, republished under its MIT licence (© UiPath). 1,382 words, ~3,629 tokens.

Download SKILL.mdSave it as .claude/skills/uipath-functions/SKILL.md (or your agent's skills folder). This skill also uses 9 other files; get the full folder from GitHub.
name
uipath-functions
description
UiPath Coded Functions — deterministic Python or TypeScript/JavaScript units built with the `uip function` CLI (`new -l py|ts|js`, `init`, `serve`, `run`, `pack`, `publish`); the `functions` map in `uipath.json` marks the project. Python: Pydantic Input/Output models, lazy `UiPath()` SDK singleton. JS/TS: `defineFunction` + `defineSchema<T>()` contracts, HTTP endpoints for Coded App backends or run-as-job, `FunctionError`. Rule-based logic, data transforms, ERP/Integration Service calls — invoked as Maestro Service Tasks, from agents, via Orchestrator `POST /Jobs/StartJobs`, or HTTP triggers; no LLM reasoning or agent loop. For LLM/agentic projects (LangGraph, LlamaIndex, OpenAI Agents, `agent.json`)→uipath-agents. For the Coded App frontend itself (React app code, PKCE setup, app deploy)→uipath-coded-apps.
allowed-tools
Bash, Read, Write, Edit, Glob, Grep, AskUserQuestion

UiPath Coded Functions

Atomic, deterministic units of business logic — no LLM reasoning, no agent loop — written in Python or TypeScript/JavaScript and shipped as first-class UiPath artifacts. One uip function CLI drives both languages. A Coded Function takes typed input, executes deterministic code, and returns typed output; use one when generic activities don't cover the required logic (custom-auth API calls, domain rules, ERP queries via Integration Service, data transforms).

<!--skill-flavor:host-scope:start-->
<!--skill-flavor:host-scope:end-->

When to Use This Skill

  • Scaffold, author, or modify a coded function in either language (uip function new <NAME> -l py|ts|js)
  • Declare typed contracts — Pydantic Input/Output (Python) or defineSchema<T>() / JSON Schema literals (JS/TS)
  • Test locally: uip function run (both languages), uip function serve + curl (JS/TS HTTP endpoints)
  • Error handling: returned error fields (Python), FunctionError/status codes and job fault semantics (JS/TS)
  • Call UiPath platform APIs from inside a function (Python SDK; @uipath/uipath-typescript with ctx tokens)
  • Wire a Coded App frontend to a JS/TS function backend (tokens, CORS, timeout budget, local dev loop)
  • Pack, publish, invoke in production; register in a solution; resource bindings
  • Debug deployed failures: cold-start hangs, errorCode 4801/4804/1623, missing tokens, entrypoint errors

Do NOT use this skill for:

  • LLM/agentic projects (agent.json, LangGraph, LlamaIndex, OpenAI Agents, agent loop) → uipath-agents
  • The Coded App frontend itself (React/Vite app code, PKCE setup, app deploy) → uipath-coded-apps

Language Split

Detect an existing project by its signals before doing anything; for a new project the language follows the caller's stack.

PythonJS/TS
Scaffolduip function new <NAME> -l py (-l py required)uip function new <NAME> -l ts / -l js (ts is the CLI default)
Project signalspyproject.toml + uipath.json functions mappackage.json + uipath.json functions map
ContractsPydantic BaseModel / @dataclass Input/OutputdefineSchema<T>() (TS) / JSON Schema literal (JS)
Entrypoints"main": "main.py:<fn>", generated by uip function initfunctions/<FILE>.ts:default, auto-synced; no init
Calling moderun-as-job (Maestro, agents, Orchestrator API)one declared mode: HTTP endpoint or run-as-job — never both
Local devuip function runuip function serve (HTTP on :7070) / uip function run (one-shot job)
Referencesreferences/python/references/js/

Job-startable functions are invoked from Maestro BPMN/Flow (Service Task), coded agents (as a tool or step), other functions, the Orchestrator API (POST /Jobs/StartJobs), or schedules/triggers. A JS/TS HTTP-mode function is instead called synchronously through its Orchestrator HTTP trigger (references/js/http-semantics-guide.md).

Critical Rules

Both languages
  1. No LLM calls inside a Coded Function. LLM reasoning breaks the deterministic contract — that project is an agent → uipath-agents.
  2. The functions map in uipath.json identifies the project as a Coded Function — it is the marker every tool reads.
  3. Cloud-backed work needs auth: uip login --organization "<ORG>" --tenant "<TENANT>" --output json.
Python
  1. UiPath() must never be instantiated at module level — lazy singleton inside a getter.
  2. Errors are returned, not raised: populate error_type/error_message output fields; never let exceptions bubble out of the entrypoint.
  3. uip function init must run before pack or push — it generates entry-points.json, bindings.json, project.uiproj; re-run after any schema or entrypoint change.
  4. Typed I/O is mandatory — Pydantic BaseModel, pydantic.dataclasses.dataclass, stdlib @dataclass, or a thin typed class; apply @traced(name=..., run_type="uipath") to the entrypoint for LLM Ops Traces.
  5. pyproject.toml needs authors (else pack rejects: Project authors cannot be empty) and no [build-system] section.
  6. uip function new -l py produces a function scaffold — uipath.json with a functions map, no langgraph.json — regardless of any agent framework package (uipath-langchain, uipath-llamaindex, uipath-openai-agents) installed in the venv.
JS/TS
  1. Throw FunctionError, never plain Error. A plain throw is always a generic 500 (JsCodedFunction.HandlerError) that leaks the raw stack; FunctionError(message, status) carries an author-controlled status (pass errorCode in options to set the job error code). Argument order is (message, status). See error handling.
  2. Contracts are schema-first. defineSchema<T>() over interfaces (TS, lowered at build time) or a bare JSON Schema literal (JS). Do not use zod/arktype/valibot for new functions — they break static contract extraction and add a runtime dependency. No $ref, any, bigint, or tuples; the schema literal must be static.
  3. One default-exported defineFunction per file, directly under functions/. Helper modules are _-prefixed (functions/_helpers.ts). method + path together or neither — the pair selects the function's single calling mode: HTTP endpoint or plain run-as-job, never both. Logic needed on both surfaces gets two thin functions sharing a _-helper.
  4. Intra-project imports carry the .ts extension (./_helpers.ts). Extensionless imports resolve in local dev but hang the whole runtime at production cold start, with no logs.
  5. Runtime deps go in dependencies, public npm only; the SDK stays in devDependencies. Production runs npm install --omit=dev at cold start — a runtime import from devDependencies or a private registry crashes/hangs the function. Regenerate the lockfile after any dependency change; a stale package-lock.json fails every route with errorCode 4801.
  6. Finish in <20 s — the gateway times out at 25 s and returns a 303 to a polling URL without CORS: a browser caller loses the result permanently, and recovering it server-side via the redirect is undocumented. Use AbortSignal.timeout(...) on every external call; move longer work to a run-as-job function.
  7. Deployed POST with empty input still needs body: '{}' — the gateway rejects an empty body with 400 errorCode 4804 (local serve does not, so the bug only appears in production).
  8. Two tokens, two identities. ctx.user.accessToken = the caller's token (delegated, caller's folder permissions); ctx.robot.accessToken = the function's own robot identity (S2S, privileged reads). ctx.robot is always null under local serve (ctx.user only when no Bearer token is sent) — fall back to process.env["UIPATH_ACCESS_TOKEN"].
  9. Read platform coordinates from ctx.platform (baseUrl, orgId, tenantId, folderKey), never from input fields — caller-controlled URLs are a redirect risk. Env vars (UIPATH_BASE_URL, UIPATH_ORG_ID, UIPATH_TENANT_ID) are the local-only fallback.
  10. Only the SDK logger.* reaches Orchestrator job logs. console.* prints locally and is not forwarded.
  11. No Buffer. Use Uint8Array, TextEncoder, TextDecoder.
  12. After uip function publish, manually update the Function Release in Orchestrator (Automations → Processes) — triggers only sync to the new version once the release is updated.
  13. uip function run is a one-shot job execution, not an HTTP call. To exercise the HTTP surface locally, curl/fetch against the serve server — no CLI subcommand invokes a route for you.
Show full SKILL.md (388 more words)Show less

Quick Start

Python
bash
uip function new <NAME> -l py    # scaffold a Python function project
# author: Pydantic Input/Output + @traced entrypoint, lazy UiPath() singleton, errors returned not raised
uip function init                # generate entry-points.json / bindings.json / project.uiproj
uip function run <ENTRYPOINT> '{"document_id": "42"}'
uip function pack && uip function publish

Full workflow (schema, template, uipath.json registration, pyproject.toml, SDK capabilities, attachments, packOptions): references/python/workflow-guide.md.

JS/TS
bash
uip function new <NAME> -l ts    # or -l js; --empty for no sample
# author: one default-exported defineFunction per functions/ file — method+path for HTTP, neither for run-as-job
uip function serve               # HTTP on :7070, hot reload; test with curl
uip function run --function <NAME> --input '{}'   # one-shot local job execution
uip function pack && uip function publish         # then update the Function Release in Orchestrator
ts
// functions/invoice.ts
import { defineFunction, defineSchema, FunctionError } from "@uipath/coded-functions-js-sdk";

interface Input {
  invoiceId: string;
  /** @default 0 */
  amount?: number;
}
interface Output {
  approved: boolean;
}

export default defineFunction({
  name: "approve-invoice",
  method: "POST",
  path: "/invoice", // omit method+path entirely for a run-as-job function
  input: defineSchema<Input>(),
  output: defineSchema<Output>(),
  handler: async (input, ctx) => {
    if (!ctx.user?.accessToken) throw new FunctionError("Unauthorized", 401);
    return { approved: input.amount! < 10_000 }; // success data only — errors are thrown
  },
});

Authoring detail, local dev, HTTP semantics, deployment, bindings, Coded App wiring: references/js/ (navigation below).

CLI Reference

bash
uip function new <NAME> -l py|ts|js [--empty]   # scaffold (TypeScript default; --empty is JS/TS only)
uip function init                    # Python only — entry-points.json, bindings.json, project.uiproj
uip function serve [--port 7070] [--runtime node|deno]   # JS/TS only — local HTTP server, hot reload
uip function run                     # both languages — one-shot local execution
uip function pack [--nolock]         # build the .nupkg
uip function publish [--feed-id <FEED_ID>]      # upload package to a process feed
uip function push --project-id <PROJECT_ID>     # sync sources to a Studio Web project
uip function runtime-install         # JS/TS — one-time runtime pre-install (otherwise downloaded on first serve/run)

The retired plural spelling (functions) is not available — always write the singular uip function.

Reference Navigation

I need to…Read
Python: full workflow — scaffold, schema, template, registration, dependencies, init, SDK calls, attachments, packpython/workflow-guide.md
JS/TS: write handlers, contracts, ctx, errors, loggingjs/authoring-guide.md
JS/TS: run and test locally (serve, run, env, tokens)js/local-dev-guide.md
JS/TS: routing, status codes, deployed limitsjs/http-semantics-guide.md
JS/TS: run-as-job mode, fault semanticsjs/job-mode-guide.md
JS/TS: pack, publish, invoke in prod, solutions, cold startjs/deployment-guide.md
JS/TS: bindings — entry-points.json, bindings_v2.json, overridesjs/bindings-guide.md
JS/TS: call UiPath APIs from a function (uipath-typescript, IS)js/calling-uipath-apis-guide.md
JS/TS: wire a Coded App frontend to a function backendjs/coded-app-wiring-guide.md

Anti-patterns

Python
  1. Instantiating UiPath() at module level — always a lazy singleton inside a getter (Python Rule 1).
  2. Raising exceptions from the entrypoint — populate the error output fields and return (Python Rule 2).
  3. Skipping uip function init after a schema change — stale entry-points.json ships wrong contracts (Python Rule 3).
JS/TS
  1. throw new Error("…") — generic 500, raw stack leaked, no author-controlled status — JS Rule 1.
  2. Returning an errors[] array inside a 200. Output schemas carry success data only; a function throws one error at a time.
  3. zod/arktype contracts on new functions — break static extraction, drag a runtime dependency — JS Rule 2.
  4. Extensionless relative imports — work locally, hang production cold start — JS Rule 4.
  5. Runtime dependency in devDependencies or on a private registry — skipped or unfetchable at cold start — JS Rule 5.
  6. Adding server.proxy to the Coded App's Vite config to reach the function — it breaks the app's OAuth callback; fetch http://localhost:7070/<PATH> directly (serve sends CORS *).
  7. Accepting baseUrl/orgId/tenantId as function input — redirect risk; use ctx.platform — JS Rule 9.
  8. Calling the portal domain from a browser — no CORS there; browsers must call the api.<HOST> subdomain.
  9. console.log for production diagnostics — never reaches job logs — JS Rule 10.
  10. Building the invoke URL from the trigger's own Id — 404 errorCode 1623; the URL takes the folder Key GUID + package id + slug.
  11. Expecting a caller to recover a result after 25 s — keep HTTP functions under 20 s, move longer work to a run-as-job function — JS Rule 6.

© UiPath, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 9 other files (references) in skills/uipath-functions of UiPath/skills.

  • SKILL.md
  • references/js/authoring-guide.md
  • references/js/bindings-guide.md
  • references/js/calling-uipath-apis-guide.md
  • references/js/coded-app-wiring-guide.md
  • references/js/deployment-guide.md
  • references/js/http-semantics-guide.md
  • references/js/job-mode-guide.md
  • references/js/local-dev-guide.md
  • references/python/workflow-guide.md

Open the folder on GitHubat commit bc2e230

Compare with similar skills

Uipath Functions next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Uipath Functions compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Uipath Functions this skillUiPath/skills168—~3.6kAutomated safety check: NotesMIT
Add Example AgentGetBindu/Bindu10k—~1.1kAutomated safety check: NotesCustom licence
Strandsstrands-agents/harness-sdk8.7k—~1kAutomated safety check: PassApache-2.0
Tool Designagentailor/fullstack-langgraph-nextjs-agent132—~3.2kAutomated safety check: PassMIT
Stripe Best Practiceskanchengw/cnllm1752 repos~925Automated safety check: PassApache-2.0
Upgrade Stripekanchengw/cnllm1753 repos~1.4kAutomated safety check: PassApache-2.0

Similar skills

  • Add Example Agent

    GetBindu/Bindu

    Add a new self-contained example agent under examples/. An agent skill from GetBindu/Bindu.

    10k GitHub stars~1.1k tokensUpdated 1 mo ago
    AI & LLM EngineeringAuto-check: notes
  • Strands

    strands-agents/harness-sdk

    Build, extend, evaluate, or migrate applications with Strands Agents in Python or TypeScript.

    8.7k GitHub stars~1k tokensUpdated yesterday
    AI & LLM EngineeringAuto-check passed
  • Tool Design

    agentailor/fullstack-langgraph-nextjs-agent

    Design and verify tools that AI agents can actually use — for any framework or language (MCP servers, LangChain/LangGraph, function-calling, raw JSON schema; TypeScript, Python, or otherwise).

    132 GitHub stars~3.2k tokensUpdated 1 mo ago
    AI & LLM EngineeringAuto-check passed
  • Stripe Best Practices

    kanchengw/cnllm

    Guides Stripe integration decisions — API selection (Checkout Sessions vs PaymentIntents), Connect platform setup (Accounts v2, controller properties), billing/subscriptions, Treasury financial…

    175 GitHub starsUsed in 2 repos~925 tokens
    Backend & APIsAuto-check passed
  • Upgrade Stripe

    kanchengw/cnllm

    Guide for upgrading Stripe API versions and SDKs. An agent skill from kanchengw/cnllm.

    175 GitHub starsUsed in 3 repos~1.4k tokens
    AI & LLM EngineeringAuto-check passed
  • Cloudbase Agent Python

    TencentCloudBase/CloudBase-AI-Toolkit

    Build production-ready AI agent backends using the CloudBase Agent Python SDK — create agents with LangGraph/CrewAI/LlamaIndex, serve them via FastAPI with AG-UI protocol streaming +…

    1.1k GitHub starsUsed in 2 repos~2.9k tokens
    AI & LLM EngineeringAuto-check: notes

More from UiPath/skills

All 28 skills in this repo
  • UiPath automation discovery — mines Slack/email/wikis/CRM/HRIS/ERP for repetitive work, SPOFs, and replicable models; produces a 4-tier prioritized opportunity report with UiPath implementation…

    168 GitHub stars~3.7k tokensUpdated today
    Auto-check passed
  • Maintain build-time skill flavors in the UiPath skills repository.

    168 GitHub stars~3.5k tokensUpdated today
    Auto-check passed
  • Uipath Maestro Bpmn

    UiPath/skills

    TRIGGER for authoring, operating or diagnosing UiPath Maestro BPMN.

    168 GitHub stars~4.2k tokensUpdated today
    Auto-check: notes
  • Uipath Maestro Case

    UiPath/skills

    TRIGGER for authoring UiPath Maestro Case plans as <Name.case.ts with the reference-mode TypeScript builder SDK (@uipath/maestro-builder-sdk/case), compiling to caseplan.json, and running the uip…

    168 GitHub stars~2k tokensUpdated today
    Auto-check: notes
  • Uipath Troubleshoot

    UiPath/skills

    UiPath causal investigation across every product, runtime, and activity package.

    168 GitHub stars~5.3k tokensUpdated today
    Auto-check passed
  • Uipath API Workflow

    UiPath/skills

    UiPath API Workflow assistant — author, run, validate, package, publish, deploy, and troubleshoot JSON workflows for uip api-workflow.

    168 GitHub stars~7.5k tokensUpdated today
    Auto-check: notes

Questions about Uipath Functions

What does Uipath Functions do?

UiPath Coded Functions — deterministic Python or TypeScript/JavaScript units built with the uip function CLI (new -l py|ts|js, init, serve, run, pack, publish); the functions map in uipath.json…. Uipath Functions is an agent skill from UiPath/skills.json marks the project.

When should I use Uipath Functions?

Uipath Functions fits situations like: tasks that involve Autonomous loops; tasks that involve OAuth and OpenID Connect; tasks that involve Building AI agents.

How do I install Uipath Functions in Claude Code?

Run `npx skills add UiPath/skills --skill uipath-functions -a claude-code`. Or copy the skill folder (skills/uipath-functions in UiPath/skills) into .claude/skills/uipath-functions in your project. Claude Code loads it when a task matches its description.

How do I install Uipath Functions in Codex?

Run `npx skills add UiPath/skills --skill uipath-functions -a codex`. Or copy the skill folder (skills/uipath-functions in UiPath/skills) into .agents/skills/uipath-functions in your project. Codex loads it when a task matches its description.

Can I use Uipath Functions in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add UiPath/skills --skill uipath-functions -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/uipath-functions, .gemini/skills/uipath-functions, .github/skills/uipath-functions and .opencode/skills/uipath-functions in your project.

What does Uipath Functions need to run?

Going by SKILL.md and its folder, Uipath Functions needs the command-line tools its instructions call (npm) and credentials named UIPATH_ACCESS_TOKEN. Our summary lists: Python 3; Node.js; A credential in UIPATH_ACCESS_TOKEN. Its frontmatter pre-approves these tools: Bash, Read, Write, Edit, Glob, Grep, AskUserQuestion.

Does Uipath Functions access the network?

SKILL.md contains no URLs. Its commands use npm, which can reach the network depending on how they are called. This is read from the text; nothing was executed.

Is Uipath Functions safe to install?

Our automated static check of SKILL.md found notes only (pre-approves every shell command (allowed-tools: bash)), nothing it rates as a warning. It is not a guarantee. Review the folder before installing.

What licence does Uipath Functions use?

Uipath Functions is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Uipath Functions use?

About 3.6k tokens (SKILL.md is roughly 15k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 17k tokens, read only when the agent opens those files.

What are the alternatives to Uipath Functions?

Skills that share tags, products or a category with Uipath Functions: Add Example Agent (GetBindu/Bindu, 10k stars), Strands (strands-agents/harness-sdk, 8.7k stars), Tool Design (agentailor/fullstack-langgraph-nextjs-agent, 132 stars) and Stripe Best Practices (kanchengw/cnllm, 175 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Uipath Functions?

UiPath (a GitHub organization) maintains it in UiPath/skills, which has 168 GitHub stars. The repository holds 28 skills in this directory. The repository was last updated on October 9, 2026.

Source: UiPath/skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.