Rpa Feat
coddy-project/coddy-agent
Run when the user invokes /rpa-feat together with a clear feature description (for example issue text).
Generates UiPath Tasks workflows for form tasks, external tasks and task management, with form.io schemas, lint rules and scaffold hooks loaded through uipath-core.
$ npx skills add marcelocruzrpa/uipath-ai-skills --skill uipath-tasks -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install marcelocruzrpa/uipath-ai-skills uipath-tasks --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/marcelocruzrpa/uipath-ai-skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/uipath-tasks .claude/skills/uipath-tasks && rm -rf skills-srcUse ~/.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/
Install the "uipath-tasks" agent skill from https://github.com/marcelocruzrpa/uipath-ai-skills/tree/main/uipath-tasks into .claude/skills/uipath-tasks/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "uipath-tasks", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/marcelocruzrpa/uipath-ai-skills/tree/main/uipath-tasksType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add marcelocruzrpa/uipath-ai-skills --skill uipath-tasks -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install marcelocruzrpa/uipath-ai-skills uipath-tasks --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/marcelocruzrpa/uipath-ai-skills.git skills-src && mkdir -p .agents/skills && cp -r skills-src/uipath-tasks .agents/skills/uipath-tasks && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "uipath-tasks" agent skill from https://github.com/marcelocruzrpa/uipath-ai-skills/tree/main/uipath-tasks into .agents/skills/uipath-tasks/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "uipath-tasks", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add marcelocruzrpa/uipath-ai-skills --skill uipath-tasks -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install marcelocruzrpa/uipath-ai-skills uipath-tasks --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/marcelocruzrpa/uipath-ai-skills.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/uipath-tasks .cursor/skills/uipath-tasks && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "uipath-tasks" agent skill from https://github.com/marcelocruzrpa/uipath-ai-skills/tree/main/uipath-tasks into .cursor/skills/uipath-tasks/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "uipath-tasks", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/marcelocruzrpa/uipath-ai-skills.git --path uipath-tasks--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add marcelocruzrpa/uipath-ai-skills --skill uipath-tasks -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install marcelocruzrpa/uipath-ai-skills uipath-tasks --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/marcelocruzrpa/uipath-ai-skills.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/uipath-tasks .gemini/skills/uipath-tasks && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "uipath-tasks" agent skill from https://github.com/marcelocruzrpa/uipath-ai-skills/tree/main/uipath-tasks into .gemini/skills/uipath-tasks/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "uipath-tasks", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install marcelocruzrpa/uipath-ai-skills uipath-tasksInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add marcelocruzrpa/uipath-ai-skills --skill uipath-tasks -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/marcelocruzrpa/uipath-ai-skills.git skills-src && mkdir -p .github/skills && cp -r skills-src/uipath-tasks .github/skills/uipath-tasks && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "uipath-tasks" agent skill from https://github.com/marcelocruzrpa/uipath-ai-skills/tree/main/uipath-tasks into .github/skills/uipath-tasks/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "uipath-tasks", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add marcelocruzrpa/uipath-ai-skills --skill uipath-tasks -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install marcelocruzrpa/uipath-ai-skills uipath-tasks --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/marcelocruzrpa/uipath-ai-skills.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/uipath-tasks .opencode/skills/uipath-tasks && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "uipath-tasks" agent skill from https://github.com/marcelocruzrpa/uipath-ai-skills/tree/main/uipath-tasks into .opencode/skills/uipath-tasks/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "uipath-tasks", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
uipath-tasksGenerates UiPath Tasks workflows for form tasks, external tasks and task management, with form.io schemas, lint rules and scaffold hooks loaded through uipath-core.
The skill covers three families of workflows. Form Tasks use CreateFormTask, WaitForFormTaskAndResume and GetFormTasks with form.io schemas and FormData bindings. External Tasks use CreateExternalTask and WaitForExternalTaskAndResume for patterns where a system rather than a person completes the step. Task Management uses CompleteTask and AssignTasks for programmatic operations. It is aimed at human-in-the-loop approval, task assignment, task completion and recovery workflows, and any use of Persistence.Activities.
It is self-contained but plugs into uipath-core: its extensions folder is discovered by plugin_loader.py, which registers generators, lint rules, scaffold hooks, namespaces and known activities, so core's generate_workflow.py, validate_xaml and scaffold_project.py see them. The skill documents the version 2 plugin contract, where REQUIRED_API_VERSION must be declared and a failed load rolls back all registrations. Assets include generator snapshots and lint test cases for bad patterns, such as persistence activities inside loops.
11 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit b3dad28. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
No scripts in the folder and no shell commands in SKILL.md.
From the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
UiPath Tasks Workflows loads about 3k tokens when it runs, and up to ~16k if it reads all its reference files. Until then it costs about 162 tokens; SKILL.md has 1,139 words of instructions outside code blocks.
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.
The automated check found no risky patterns in SKILL.md.
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.
The full file from marcelocruzrpa/uipath-ai-skills at commit b3dad28, republished under its MIT licence (© marcelocruzrpa). 1,139 words, ~3,042 tokens.
.claude/skills/uipath-tasks/SKILL.md (or your agent's skills folder). This skill also uses 31 other files; get the full folder from GitHub.Generate Tasks workflows for human-in-the-loop, system-in-the-loop, and task management patterns in UiPath.
Plugin architecture: This skill's
extensions/directory is auto-discovered by uipath-core'splugin_loader.py. Generators, lint rules, scaffold hooks, namespaces, and known activities are registered at import time — no manual wiring needed. Core'sgenerate_workflow.py,validate_xaml, andscaffold_project.pyquery the plugin registries at runtime.
This skill is the canonical example for out-of-tree plugin authors. The contract:
REQUIRED_API_VERSION = 2 must be declared at the top of extensions/__init__.py. Plugins on v1 (or with no declaration) fail to load with a clear API version mismatch error and any partial registrations are rolled back.register_version_profile(package, profile_version, profile_dict) and register_band_profile_mapping(band, package, profile_version) — used by lint 122 (version-band drift). Call register_band_profile_mapping once per (band, package) pair. Registering after the lint module is already imported automatically invalidates the lint caches, so the new entries take effect on the next lint pass without any reload.register_* call made during a plugin's load (including from submodules imported from __init__.py) is captured in the registry snapshot. If __init__.py raises before completing, all registrations from that plugin are reverted. The registry is never observed in a partially-loaded state by other plugins or by core.assert plugin_loader.get_load_failures() == [] after load_plugins(). A plugin that raised during load surfaces in that list with its filename and exception.Worked example: see uipath-tasks/extensions/__init__.py:34 (the REQUIRED_API_VERSION = 2 declaration) and :310-312 (the Persistence/1.4 profile + band-25/26 mapping calls).
uipath-tasks/
├── SKILL.md
├── references/
│ ├── tasks.md ← Form Tasks + form.io + Action Types Comparison
│ ├── external-tasks.md ← External Tasks (system-in-the-loop)
│ └── task-management.md ← GetFormTasks, CompleteTask, AssignTasks
└── extensions/
├── __init__.py ← Registers all AC components with plugin_loader
├── generators.py ← 7 generators (form, external, task management)
├── lint_rules.py ← AC-10, AC-11, AC-12, AC-26
├── scaffold_hooks.py ← enable_persistence_support
└── battle_test_grading.py ← 8 battle test scenario gradersWhat gets registered:
create_form_task, wait_for_form_task, create_external_task, wait_for_external_task, get_form_tasks, complete_task, assign_taskssupportsPersistence when Persistence.Activities is in depsupaf (FormTask), upae (ExternalTask), upat (Tasks)CreateFormTask, WaitForFormTaskAndResume, CreateExternalTask, WaitForExternalTaskAndResume, GetFormTasks, CompleteTask, AssignTasks| Task | Read |
|---|---|
| Create a form task workflow | references/tasks.md → Create Form Task + FormData Bindings |
| Design a form.io form schema | references/tasks.md → Form.io Component Reference |
| Wait for human approval / resume | references/tasks.md → Wait for Form Task and Resume |
| Any PDD with "for each X" / "multiple X" / "batch of X" / N rows (default for N-item approvals, not advanced) | references/tasks.md → Shadow Task Pattern |
| Compare action types (Form vs External) | references/tasks.md → Action Types Comparison |
| Create an external task (system-in-the-loop) | references/external-tasks.md → Create External Task |
| Wait for external system resolution | references/external-tasks.md → Wait for External Task and Resume |
| Retrieve existing tasks (recovery workflow) | references/task-management.md → Get Form Tasks |
| Complete a task programmatically | references/task-management.md → Complete Task |
| Assign a task to a user/group | references/task-management.md → Assign Tasks |
| Escalation / reassignment patterns | references/task-management.md → Escalation Pattern |
| Task lifecycle states | references/task-management.md → Task Lifecycle States |
| Persistence constraints | references/tasks.md → Prerequisites (Main.xaml constraint) |
| Lint issues on AC workflows | references/tasks.md → Validation & Lint Rules + external-tasks.md → Validation |
| Scaffold a project with persistence | Scaffold hook in extensions/scaffold_hooks.py — auto-runs via core's scaffold_project.py |
| Validate AC workflow XAML | Lint rules in extensions/lint_rules.py — auto-run via core's validate_xaml --lint |
| Resolve NuGet versions | Use uipath-core's resolve_nuget.py for UiPath.Persistence.Activities + UiPath.FormActivityLibrary |
extensions/generators.py).WaitForFormTaskAndResume, WaitForExternalTaskAndResume, and all Wait*AndResume activities are persistence points — they serialize workflow state to Orchestrator. They ONLY work in the entry-point file. AC-26 enforces this.UiPath.Persistence.Activities (runtime) AND UiPath.FormActivityLibrary (form designer UI). External Tasks and Task Management only need UiPath.Persistence.Activities.supportsPersistence: true must be in project.json runtimeOptions when using Wait*AndResume activities. Scaffold sets this automatically.ui:ForEachRow / ui:ForEach that only calls CreateFormTask and appends the returned FormTaskData to a List(Of FormTaskData), followed by a second ui:ForEach (at the root-Sequence level) that runs WaitForFormTaskAndResume + decision handling per task. The List(FormTaskData) variable MUST be initialized — set Default="[New System.Collections.Generic.List(Of UiPath.Persistence.Activities.FormTask.FormTaskData)()]" on the variable declaration (or pass "default": "[...]" in the JSON spec). A null List throws Value cannot be null. (Parameter 'TargetObject') on the first InvokeMethod.Add. Never emit inline Create → Wait per item, and never unroll the loop into hardcoded If Rows.Count >= N / Rows(0..N-1) blocks. The inline form ties up the robot for the sum of all wait times instead of the max; the unrolled form additionally bypasses AC-27. See references/form-tasks.md → Shadow Task Pattern (default for N-item batches). Loop-nested case enforced by AC-27; unrolled case enforced by AC-34.| File | Coverage |
|---|---|
references/tasks.md | Form Tasks — prerequisites, CreateFormTask, FormData, form.io, WaitForFormTask, patterns, lint, Config keys |
references/external-tasks.md | External Tasks — CreateExternalTask, WaitForExternalTask, TaskData dict, external system completion |
references/task-management.md | Task Management — GetFormTasks, CompleteTask, AssignTasks, recovery pattern, escalation pattern, lifecycle |
| Generator | Activity | Prefix | Key Args |
|---|---|---|---|
gen_create_form_task() | CreateFormTask | upaf: | task_title_expr, task_output_variable, form_layout_json, form_data= |
gen_wait_for_form_task() | WaitForFormTaskAndResume | upaf: | task_input_variable |
gen_create_external_task() | CreateExternalTask | upae: | task_title_expr, task_output_variable, task_data= |
gen_wait_for_external_task() | WaitForExternalTaskAndResume | upae: | task_input_variable |
gen_get_form_tasks() | GetFormTasks | upaf: | output_variable, filter_expr= |
gen_complete_task() | CompleteTask | upat: | task_id_expr, action_expr= |
gen_assign_tasks() | AssignTasks | upat: | task_id_expr, user_name_or_email= |
JSON spec "gen" values: create_form_task, wait_for_form_task, create_external_task, wait_for_external_task, get_form_tasks, complete_task, assign_tasks
| Wrong | Right | Impact |
|---|---|---|
TaskObject= | TaskOutput= (Create) / TaskInput= (Wait) | Studio crash — property doesn't exist |
EnableDynamicForms="False" | EnableDynamicForms="True" | Form designer button does nothing |
| Persistence activity in sub-workflow | Move to Main.xaml | Runtime error — bookmark context unavailable |
Missing UiPath.FormActivityLibrary | Add explicitly alongside Persistence.Activities | "Install FormActivityLibrary" error in Studio |
"supportsPersistence": false | Set to true in project.json runtimeOptions | WaitFor*AndResume fails at runtime |
FormLayout= on CreateExternalTask | Use TaskData dict instead | Property doesn't exist on external tasks |
FormData on CreateExternalTask | Use TaskData dict instead | Property doesn't exist on external tasks |
© marcelocruzrpa, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 31 other files (references, assets) in uipath-tasks of marcelocruzrpa/uipath-ai-skills.
Open the folder on GitHubat commit b3dad28
UiPath Tasks Workflows 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.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| UiPath Tasks Workflows this skillmarcelocruzrpa/uipath-ai-skills | 108 | — | ~3k | Automated safety check: Pass | MIT | |
| Rpa Featcoddy-project/coddy-agent | 168 | — | ~407 | Automated safety check: Pass | MIT | |
| AI2Human Task RouterBankrBot/skills | 1.2k | — | ~3.2k | Automated safety check: Pass | None | |
| n8n AI Agent Designczlonkowski/n8n-skills | 6.4k | — | ~6.8k | Automated safety check: Pass | MIT | |
| Workflow AutomationJoelLewis/finance_skills | 206 | — | ~7.3k | Automated safety check: Pass | MIT | |
| Verify Gatepskoett/pskoett-ai-skills | 315 | — | ~2.6k | Automated safety check: Pass | None |
coddy-project/coddy-agent
Run when the user invokes /rpa-feat together with a clear feature description (for example issue text).
BankrBot/skills
Creates AI2Human tasks for steps that need a real person, such as manual QA or local checks, and returns a task URL the agent can track.
czlonkowski/n8n-skills
Guide to designing n8n AI agents: choosing between Agent, chain, classifier and extractor nodes, wiring model, memory, tools and parser, plus RAG and human review.
JoelLewis/finance_skills
Design human-in-the-loop workflow orchestration for securities operations: task routing, approval chains, and SLA monitoring.
pskoett/pskoett-ai-skills
Runs project compile, test, and lint commands between implementation and quality review.
Skyvern-AI/skyvern
Picks the right Skyvern CLI command for a web task, from quick yes/no checks to reusable multi-page workflows, instead of falling back to plain page fetching.
marcelocruzrpa/uipath-ai-skills
Generates UiPath Studio projects, REFramework scaffolds, XAML workflows and expressions through 104 deterministic Python generators instead of hand-written XAML.
Categories
Generates UiPath Tasks workflows for form tasks, external tasks and task management, with form.io schemas, lint rules and scaffold hooks loaded through uipath-core. The skill covers three families of workflows.io schemas and FormData bindings.
UiPath Tasks Workflows fits situations like: building a UiPath workflow that waits for a person to complete a form task; pausing a process until an external system finishes its part; assigning or completing tasks programmatically from an automation; linting Tasks workflows for persistence and form-task mistakes.
Run `npx skills add marcelocruzrpa/uipath-ai-skills --skill uipath-tasks -a claude-code`. Or copy the skill folder (uipath-tasks in marcelocruzrpa/uipath-ai-skills) into .claude/skills/uipath-tasks in your project. Claude Code loads it when a task matches its description.
Run `npx skills add marcelocruzrpa/uipath-ai-skills --skill uipath-tasks -a codex`. Or copy the skill folder (uipath-tasks in marcelocruzrpa/uipath-ai-skills) into .agents/skills/uipath-tasks in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add marcelocruzrpa/uipath-ai-skills --skill uipath-tasks -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-tasks, .gemini/skills/uipath-tasks, .github/skills/uipath-tasks and .opencode/skills/uipath-tasks in your project.
SKILL.md names no scripts, command-line tools or credentials: UiPath Tasks Workflows is instructions for the agent only. Our summary lists: The uipath-core skill, which loads this plugin.
SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
UiPath Tasks Workflows is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 3k tokens (SKILL.md is roughly 12k 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 13k tokens, read only when the agent opens those files.
Skills that share tags, products or a category with UiPath Tasks Workflows: Rpa Feat (coddy-project/coddy-agent, 168 stars), AI2Human Task Router (BankrBot/skills, 1.2k stars), n8n AI Agent Design (czlonkowski/n8n-skills, 6.4k stars) and Workflow Automation (JoelLewis/finance_skills, 206 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
marcelocruzrpa (a GitHub user) maintains it in marcelocruzrpa/uipath-ai-skills, which has 108 GitHub stars. The repository holds 2 skills in this directory. The repository was last updated on July 17, 2026.
Source: marcelocruzrpa/uipath-ai-skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.