From uipath
UiPath task planner — elicits preferences, plans multi-skill execution, detects project type (.cs, .xaml, .flow, .py). Triggers for non-trivial or ambiguous UiPath requests. Simple single-skill tasks→specialist directly.
npx claudepluginhub uipath/skills --plugin uipathThis skill is limited to using the following tools:
Your job is to **elicit preferences, plan, and route** — never execute.
Mandates invoking relevant skills via tools before any response in coding sessions. Covers access, priorities, and adaptations for Claude Code, Copilot CLI, Gemini CLI.
Share bugs, ideas, or general feedback.
Your job is to elicit preferences, plan, and route — never execute.
Skip this planner for simple, well-defined single-skill tasks (e.g., "create a workflow that sends an email") — the agent loads the specialist skill directly.
High-level view of what each specialist owns. Do not describe internal flows of any specialist in your plan — each skill documents its own procedures and will drift out of sync if duplicated here.
| Skill | What it owns | Handles auth? | Handles deploy? |
|---|---|---|---|
uipath-rpa | RPA workflows (XAML and C# coded): create, edit, build, run, debug. Owns all UI automation authoring end-to-end. | No (relies on Studio) | No — defer to uipath-platform |
uipath-rpa-legacy | Legacy RPA workflows (.NET Framework 4.6.1, XAML only). Existing legacy projects only — never for new projects unless user explicitly requests legacy. | No | No — defer to uipath-platform |
uipath-agents | AI agents — code-based (LangGraph / LlamaIndex / OpenAI Agents) and low-code (agent.json) | Yes (uip login) | Yes — end-to-end |
uipath-coded-apps | Web apps (.uipath/ dir): build, sync, package, publish, deploy | Yes (uip login) | Yes — end-to-end |
uipath-maestro-flow | .flow files orchestrating RPA, agents, apps | Yes (uip login) | Partial — Studio Web by default; uipath-platform for Orchestrator |
uipath-platform | Auth, Orchestrator resources, solution lifecycle (pack/publish/deploy), Integration Service, Test Manager | Yes (auth hub) | Yes — the deploy destination |
uipath-interact | Inspect and interact with live desktop/browser UI: click, type, screenshot, inspect. For app launching, ad-hoc exploration, post-build verification. Does NOT author workflows or generate selectors — that's uipath-rpa. | No auth | No |
Two RPA skills exist. Pick the right one:
| Signal | Route to |
|---|---|
project.json has "targetFramework": "Legacy" or no targetFramework field | uipath-rpa-legacy |
project.json has any other targetFramework (e.g., "Portable", "Windows") | uipath-rpa |
| No existing project + user explicitly asks for legacy | uipath-rpa-legacy |
| No existing project + no legacy request | uipath-rpa (default for all new projects) |
| macOS host | uipath-rpa — cross-platform target only (Windows target not available on macOS) |
| Windows host | uipath-rpa — user can choose Windows or cross-platform target |
Rules:
uipath-rpa-legacy for new projects unless the user explicitly requests legacy.uipath-rpa.uipath-rpa supports both Windows and cross-platform targets.Ask the user key questions using AskUserQuestion. Only ask questions the request does not already answer. Ask one at a time — wait for each response before asking the next.
How would you like me to work?
- Explore first, then plan — analyze the project and requirements, run non-mutating discovery, then present a plan for approval before any project changes (recommended)
- Explore, plan, and execute simultaneously — emit the plan as text and the main agent starts executing right away
Skip this question and default to simultaneous when the request is simple and well-defined, the user is modifying an existing automation, or the task is single-skill single-step.
If "explore first, then plan":
uip rpa analyze, uip rpa get-errors, reading project.json.project.json exists at <PROJECT_DIR> (or will be created in Task 1 of the plan).UiPath.UIAutomation.Activities version >= 26.4.1-preview (kept in sync with uipath-rpa's declared minimum). For not-yet-created projects, check with uip rpa get-versions --package-id UiPath.UIAutomation.Activities --include-prerelease --output json.<PROJECT_DIR>/.local/docs/packages/UiPath.UIAutomation.Activities/skills/uia-configure-target/SKILL.md is present.uip rpa restore, or (b) fall back to indication-only authoring and record UI capture: indication-only in the plan header so uipath-rpa does not route to uia-configure-target.If "explore, plan, and execute simultaneously":
Once execution starts, how should I handle ambiguity or scope concerns?
- Autonomous to completion (recommended) — follow the plan end-to-end without stopping for confirmation. Only interrupt for the concrete hard blockers listed in the plan's
Stop conditionssection.- Interactive — pause and confirm on structural decisions, scope concerns, or side-effect actions during execution.
Record the answer in the plan header as Execution autonomy. Specialist skills read this field at runtime — in autonomous mode they do NOT re-ask decisions the plan already makes.
Skip this question only in explore-first mode — the approval gate at plan time already scopes autonomy. Default to autonomous for simultaneous mode when the user does not specify.
Resolve project type on your own. Stop at the first match:
Project type: XAML or Project type: C# coded in the plan header..flow → Flow.uipath/ → ApplicationOnly ask if the request is genuinely vague ("I want to build something with UiPath") AND no keyword or filesystem signals apply. Ask exactly this:
What kind of project should I scaffold?
- RPA workflow — UI automation, Excel / email / file work (recommended — covers ~95% of UiPath work)
- AI Agent — autonomous agent that reasons with an LLM and calls tools
- Flow — visual node-based orchestration connecting multiple automations
- Application — custom UI deployed as a UiPath App
If the user picks RPA workflow, record Project type: XAML and move on. Never follow up with "XAML or C#?" — that authoring-mode decision belongs to uipath-rpa, not the planner. Coded mode is set only when the user independently says "coded workflow" or ".cs file" (which rule 1 above already honors); never as a follow-up.
Do you have a Process Definition Document (PDD) or Solution Design Document (SDD)? If so, provide the file path and I'll use it to guide the plan.
If the user provides a path, read the document and use it to inform the plan. Skip if the user is modifying an existing automation or already referenced a document.
How thorough should automated testing be? (Testing is mandatory — this sets the depth only.)
- Standard coverage (recommended) — automated tests for the primary flow plus the main edge cases and error paths I can infer from the request or PDD.
- Happy path only — automated tests for the primary success flow; edge-case coverage is deferred.
Record the answer in the plan header as Test coverage: standard | happy-path. The Testing (MANDATORY) task in the plan body references this field so the specialist knows the scope.
Skip this question when:
uipath-interact interaction, pure uipath-platform ops, pure read-only diagnostics) → record Test coverage: N/A.standard for touched paths and note the assumption in Decisions & Trade-offs.Always use VB.NET for XAML workflows. Note this in the plan. Do not ask.
Emit a multi-skill plan when the request clearly spans more than one specialist.
Legacy projects: If the project is legacy (see "RPA skill routing" above), substitute
uipath-rpa-legacyforuipath-rpain the patterns below.
Known patterns:
1. uipath-rpa → create/edit, validate, build the workflow
2. uipath-platform → pack, publish, deploy to Orchestrator
uipath-rpa does not deploy.
Flow orchestrates RPA/agents/apps that don't exist yet.
1. uipath-maestro-flow → design the flow, mock placeholders for missing resources
2. uipath-rpa → create the missing RPA process(es)
3. uipath-platform → publish the RPA process(es) to Orchestrator
4. uipath-maestro-flow → replace mocks with published resources, validate, publish
Replace steps 2–3 with uipath-agents if the missing resource is an agent.
1. uipath-maestro-flow → validate, `uip maestro flow pack`
2. uipath-platform → publish and deploy to Orchestrator
uipath-maestro-flow publishes to Studio Web by default; Orchestrator deploy requires uipath-platform.
User wants to build a UI automation AND observe it running on the live app.
1. uipath-rpa → build the workflow end-to-end
2. uipath-interact → observe the live app, capture screenshots/snapshots to diagnose issues
3. uipath-rpa → apply fixes from findings; repeat 2–3 as needed
1. uipath-interact → interact with the live app, identify the UI issue
2. uipath-rpa → fix the automation based on uipath-interact findings
1. uipath-rpa → create and publish the RPA process(es) the agent will call
2. uipath-platform → deploy the RPA process(es) to Orchestrator
3. uipath-agents → create the agent, bind the published processes as tools, deploy
Important: Single-app UI automation (one project, one live app, one workflow) is not a multi-skill pattern — it's a single-skill
uipath-rpatask.uipath-rpaowns UI automation authoring end-to-end. Do not plan a separate "uipath-interact discovery" step.
Check first: If the request mentions deploy, publish, or Orchestrator alongside a clear domain, it likely needs a multi-skill plan from Step 2.
Probe the project context:
echo "=== CWD ===" && ls -1 project.json *.cs *.xaml *.py pyproject.toml flow_files/*.flow .uipath/ app.config.json .venv/ 2>/dev/null; echo "=== PARENT ===" && ls -1 ../project.json ../*.cs ../*.xaml ../pyproject.toml 2>/dev/null; echo "=== FRAMEWORK ===" && cat project.json 2>/dev/null | grep -o '"targetFramework"[^,}]*' || echo "targetFramework: not found"; echo "=== DONE ==="
| Filesystem signal | Plan skill |
|---|---|
.xaml files + project.json with targetFramework: "Legacy" or absent | uipath-rpa-legacy |
.xaml AND/OR .cs files + project.json with any other targetFramework | uipath-rpa |
flow_files/*.flow | uipath-maestro-flow |
.uipath/ or app.config.json | uipath-coded-apps |
.venv/ AND pyproject.toml with uipath dependency | uipath-agents |
project.json only (no .cs/.xaml) | Check targetFramework — "Legacy" or absent → uipath-rpa-legacy; otherwise → uipath-rpa |
Multiple signals? Go back to Step 2 and emit a multi-skill plan.
No signals? Use Step 1 answers. If still undetermined, plan with best available info and note the assumption.
If the plan loads uipath-rpa for a workflow that clicks, types into, or reads elements in a desktop or browser app, ask the three questions defined below — App type, Targeting approach, and App state — in one batched AskUserQuestion call. Skip any question already resolved from the user's request (skip rules listed after the question definitions). Keep the wording generic — do not inject domain-specific names ("HR app", "Salesforce", "Workday") into the question text; the app identity lives in the plan header, not the questions.
What kind of application are we automating?
- Web / browser app — the app runs in a browser (e.g., Workday, SAP SuccessFactors, a custom web app). I'll discover elements using browser selectors.
- Desktop app — a Windows desktop app (WinForms / WPF / Win32). I'll discover elements from the running application window.
- Citrix / remote session — app running in Citrix or RDP. I'll use image- and OCR-based targeting since native selectors aren't available through the remote session.
How should I handle the UI elements in this automation?
- I build it, you review it — I write the full workflow using the most reliable selectors I can find from the live app, then you review the result in Studio and refine if needed. (recommended — the default path for ~90% of UI automations)
- You indicate each element — you click through each target element in Studio's Selector editor. Adds ~3 minutes of setup but gives you Object Repository and canonical selector management from the start.
Offer only these two options. Never add a third "build it manually" or "I'll do it in Studio" option — a developer choosing manual authoring wouldn't be using a coding agent.
Is the app open on your machine?
- Yes, it's open and ready — I'll inspect the running app, find the target form fields, and extract real selectors automatically. You don't need to do anything.
- No, I'll open it first — I'll wait while you launch the app and navigate to the relevant screen. Tell me when you're ready and I'll start discovery.
- Skip discovery for now — I'll scaffold the full workflow with placeholder selectors. The logic and structure will be complete, but you'll need to connect real selectors in Studio before it can run.
web. "desktop app", "WinForms", "WPF", "Win32", "legacy app" → desktop. "Citrix", "RDP", "remote session", "remote desktop" → citrix. Record directly in the plan header.If all three are resolved from context, do not call AskUserQuestion at all. Skip all three for non-UI plans (pure data processing, API calls, agent-only, flow-only).
Record the answers in the plan header. The handoff is informational — uipath-rpa does not read the plan file; it runs its own target-configuration flow when invoked. The plan-header fields exist so the human reviewer and the main agent retain the decisions in context, and so re-entry (new conversation, resumed session) has the same answers to work from.
# <Feature Name> Implementation Plan
**Goal:** <one sentence summarizing what the automation does>
**Source document:** <path to PDD/SDD, or "None — planned from user request">
**Project type:** <XAML (default for RPA workflows) / C# coded (only if user explicitly asked) / AI Agent / Flow / Application>
**Expression language:** VB.NET (XAML only; N/A for coded / AI Agent / Flow / Application)
**Approach:** <explore first / simultaneous>
**Execution autonomy:** <autonomous / interactive>
**App type:** <web / desktop / citrix / N/A>
**App state:** <open-and-ready / user-will-open / skip-discovery / N/A>
**UI targeting:** <agent-builds-you-review / user-indicates / N/A>
**UI capture:** <live-capture / indication-only / N/A>
**Test coverage:** <standard / happy-path / N/A>
## Understanding
<2–4 sentences: interpretation of the request, key inputs and outputs, assumptions
or ambiguities resolved during elicitation. Summarize PDD/SDD process steps if one
was provided and note which sections informed each task.>
## Decisions & Trade-offs
- Why this project type
- Why specific skills are loaded in this order
- Trade-offs (e.g., XAML default with C# fallback for specific parts)
- Risks or open questions
## Stop conditions
<Only populate when `Execution autonomy` is `autonomous`. List the concrete hard blockers that MUST interrupt execution — everything else is handled without asking the user. Examples:
- Authentication fails and cannot be recovered without user credentials
- The target application is unresponsive after a reasonable retry window
- A UI element cannot be captured reliably after 3 selector-improvement attempts
- The plan references a file, package, or resource that does not exist and cannot be created
- A pre-existing record would block idempotent execution and cleanup is ambiguous
In `interactive` mode this section is optional — the user is available to resolve ambiguity as it arises.
"Scope feels large", "many tool calls used", "natural pause point", and "partial result looks usable" are NOT stop conditions. If it is not in this list, the executor continues.>
## Task 1: <skill-name> — <short description>
- [ ] <concrete sub-step: action + file paths / activity names / commands>
- [ ] <concrete sub-step: expected outcome or verification>
- [ ] Validate: <compile/build/lint/run check>
## Task 2: <skill-name> — <short description>
- [ ] ...
## Task N: <generation-skill> — Testing (MANDATORY)
> One Testing task per generation skill in the plan (`uipath-rpa`, `uipath-maestro-flow`, `uipath-agents`, `uipath-coded-apps`). Place it immediately after that skill's generation task(s) and **before** any deploy task (`uipath-platform`). Do not describe the testing procedure here — the specialist owns it.
- [ ] Load `<generation-skill>` and run its testing workflow end-to-end at the depth set in the header `Test coverage` field (`standard` or `happy-path`). See that skill's testing references for the exact commands, test-case authoring pattern, and best practices.
- [ ] Testing is **mandatory** for every generation task in this plan — do not skip, do not mark complete without executed tests.
- [ ] Validate: all tests pass; record results and any skipped/failing tests in the plan as blockers.
- [ ] on every sub-step.Validate: sub-step — a compile/build/lint check.
4a. Every plan MUST include a dedicated Testing task per generation skill (see the Task N: <generation-skill> — Testing (MANDATORY) block in Step 5a). The Testing task is mandatory — never a Validate: sub-step, never optional, never skipped. It routes to the specialist's testing references and does NOT describe the testing procedure.Validate: compile/build/lint check.Testing (MANDATORY) task exists for every generation skill in the plan (uipath-rpa, uipath-maestro-flow, uipath-agents, uipath-coded-apps). The task routes to the specialist's testing references — it does not describe the procedure.Fix issues before saving.
Save as YYYY-MM-DD-<feature-name>.md:
project.json, flow_files/, .uipath/, or pyproject.toml) → save to docs/plans/ within the project. Create the directory if needed../plans/ (relative to the current working directory). Create the directory if needed.uip discovery is allowed..flow files → uipath-maestro-flow, not uipath-rpa.uipath-interact is loaded — most UI plans are single-skill uipath-rpa.uipath-interact for element discovery or selector work. uipath-rpa is the sole workflow authoring skill. uipath-interact is only for live-app interaction and post-build verification.uipath-rpa decision for individual subtasks, never a top-level recommendation from the planner.Execution autonomy from the plan header, and do not leave Stop conditions empty when autonomy is autonomous. Downstream specialists rely on both to decide whether to interrupt. If the user did not answer the autonomy question, default to autonomous for simultaneous mode and note that choice in Decisions & Trade-offs. Populate Stop conditions with the hard blockers realistic for this specific plan (auth, app state, element-capture limits, missing resources) — do not leave a generic placeholder.uipath-rpa-legacy. Legacy is for existing .NET Framework 4.6.1 projects only. New projects always go to uipath-rpa unless the user explicitly asks for legacy.Testing (MANDATORY) task that routes to that skill's testing references. Never replace it with a Validate: sub-step, never describe test-case authoring / data-driven testing / mock testing / assertion patterns in the plan — those live in each specialist's own testing guide and will drift if duplicated here.