agentsclimarketplace

Uip methodology

Skill cprima-agents/cpm-agent-skills/skills/uip-methodology

Install
npx -y skills add cprima-agents/cpm-agent-skills --skill uip-methodology

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

2 things to look at

  • no licenseNo license file was found in the repository. Code published without one is not open source by default, so using it at work is a question for whoever answers licensing questions where you are.
  • 0 stars0 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

What its author says it does

Copied from the file, not written here

UiPath RPA project design skill — guides BA, Solution Architect, and PM through authoring and amending all project artefacts: PDD, SDD, Architecture Review, Estimation, ROI, TDD, DSD, Glossary. Three workflows: (A) Guided Interview — full structured elicitation driven by rpa-methodology.yaml, produces any artefact; (B) PDD Creation — focused section-by-section PDD authoring for BAs; (C) SDD Creation / Amendment — infers architecture decisions from PDD, patches existing SDDs idempotently. Trigger phrases: "start interview", "guided interview", "interview me", "help me document this process", "create a PDD", "fill out a PDD", "start a PDD", "document a process for RPA", "create an SDD", "design the solution", "generate SDD", "amend SDD", "update SDD", "fill in the PDD", "let's do the arch review", or when a PDD is available and the next step is technical design.

The file declares its own license as Apache-2.0. That is the author’s claim about this one file, and it is not the same thing as the license GitHub reports for the repository, which is listed with the other numbers below.

SKILL.md

17.4 KB, ~4.2k tokens by cl100k_base, as published. Nobody here has run it

UiPath RPA Design

Prerequisites: Python 3.11+, uv. After installing this skill, run uv sync from the repo root (cprima-agents/agentskills) where pyproject.toml declares the runtime dependencies. The scripts under scripts/ will not work without it.

Decision tree — pick a workflow in 3 seconds

Has a PDD already?
  NO  → is the user a BA or asking how to document a process?
          YES → Workflow B (PDD Creation)
          NO  → Workflow A (Guided Interview)
  YES → does an SDD exist?
          NO  → Workflow C, Create mode
          YES → Workflow C, Amend mode

Default artefact order (one per project milestone, in sequence):

PDD  →  SDD  →  TDD  →  estimation  →  ROI  →  arch-review

Each artefact is a prerequisite for the next. Never skip forward unless the user explicitly asks. Offer the next artefact at the end of each workflow output.

Hard routing rules — no interpretation required:

If the user says …Do this
"create / fill out a PDD" or is a BA describing a processWorkflow B
"create an SDD" / "design the solution" / provides a PDDWorkflow C, Create mode
"amend / update / fix the SDD" / provides an existing SDDWorkflow C, Amend mode
"create estimation" / "estimate the project" / "fill out estimation"Workflow D, Estimation
"create ROI" / "calculate ROI" / "fill out ROI"Workflow D, ROI
"what next?" after a PDDSay: next step is the SDD; offer Workflow C
"what next?" after an SDDSay: next step is the TDD, then estimation, then arch-review
"what next?" after an estimationSay: next step is ROI; offer Workflow D ROI
"start interview" / role unclear / no artefacts yetWorkflow A

Workflow A — Guided Interview

Conducts a staged elicitation interview that builds toward one target artefact at a time. Driven by references/rpa-methodology.yaml.

Bootstrap (always run first)

Ask these four things in one message:

  1. Project identifier — "What short slug should I use for this project? (lowercase, hyphens only — e.g. invoice-processing, ppo-objection)"
  2. Process identity — "In one sentence: what does this process do, from trigger to outcome?"
  3. Your role — "What is your role on this project?" (Process Owner / BA / Solution Architect / Developer / PM)
  4. Target artefact and stage — "Which document are we working toward, and is this a fresh start or a continuation?"

Derive from answers:

  • project_slug — validated: lowercase, hyphens, no spaces; derive from process name if skipped
  • process_identity — anchor sentence used to contextualise all questions
  • stage — one of: pdd | arch_chapter | estimation | roi | sdd | tdd | dsd | glossary | project_plan
  • interviewer_role — depth signal

Scaffold (run immediately after bootstrap)

Check whether ./docs/ exists. If not, create it and tell the user. If it already exists, confirm its location and continue.

The user works in a single project directory — all input, model, and output files live under ./docs/. No sub-project nesting.

Harvest (run after scaffold; skip if day zero)

Read all files in ./docs/. Build a coverage map:

topic → covered | partial | unknown | conflicting

For each topic record: source (which file), confidence (high / low). If ./docs/ is empty or contains no recognisable artefacts → all topics unknown; skip to Interview.

Interview Loop

Load references/rpa-methodology.yaml. For the active stage:

  1. Own topics — where <stage>.owns: true → ask fully
  2. Reference topics — where <stage> has role but no owns → verify briefly
  3. Absent topics — not present for this stage → accept as forward observations only

Order: required: true own topics first, then optional own topics, then reference topics.

Per own topic: state coverage status if partial/conflicting; ask the question from the YAML; follow up once on required incomplete topics; confirm before moving on.

Per reference topic: one line — "For [topic] — [brief restatement of known answer] — anything to add or correct?"

Forward observations: when the interviewee mentions something belonging to a different stage, capture as:

[FORWARD → <stage> / <topic> / section <n>]: <note>

Output

After all required own topics are covered:

  1. Present the coverage summary (covered / partial / unknown per topic)
  2. List all forward observations grouped by target stage
  3. Ask: "Shall I generate the [target artefact] draft now, or continue?"
  4. If confirmed: load the matching template from assets/templates/, fill every section where answers were collected, mark uncovered sections [TBD], write to docs/

Modes at a glance

SituationScaffoldHarvest?Interview mode
No artefacts exist (day zero)create foldersskipfull greenfield — all own topics
Prior artefacts existconfirm folderyes → coverage mapgaps only
Resuming interrupted sessionconfirm folderyesremaining gaps

Workflow B — PDD Creation

Guide a Business Analyst through filling out a PDD interactively. Work through sections sequentially.

0. Start

Ask for the process name and your name / role (BA). Confirm the output filename: <process-name-kebab>-pdd.md.

1. Section by section

Work through the 5 PDD sections in order. For each section:

  • Ask the questions from references/elicitation-questions.md
  • Accept partial answers — mark unanswered fields [TBD]
  • After each section, summarise what was captured and ask "Anything to add or correct before we continue?"

Section order:

  1. Introduction (Purpose, Objectives, Key Contacts, Prerequisites)
  2. AS-IS Process Description (Overview, Applications, Process Map, Steps, Input Data)
  3. TO-BE Process Description (Scope, Exceptions, Reporting)
  4. Other Observations
  5. Additional Documentation

2. Write the file

Load assets/templates/pdd-template.md, substitute all captured values, and write to docs/<process-name-kebab>-pdd.md.

3. Finish

Tell the user the output path. List any [TBD] items remaining and suggest they resolve them before handing the PDD to a Solution Architect.

Rules

  • Never invent business rules, volumes, or exception behaviour — always ask.
  • Ask at most 4–5 questions per message.
  • Use plain business language, not UiPath jargon.
  • If the user says "skip" or "I don't know", mark the field [TBD] and move on.
  • Prefer tables and bullet lists when summarising captured data back to the user.

Workflow C — SDD Creation / Amendment

Guide a Solution Architect through producing or completing an SDD. Infer as much as possible from the PDD; ask only for decisions that cannot be derived from it. Idempotent — safe to run repeatedly against an existing SDD.

0. Start — detect mode

Ask for the PDD (file path or reference to an already-loaded file).

Check whether an SDD already exists:

  • No SDD foundCreate mode: proceed from step 1.
  • SDD foundAmend mode: jump to step A.

Confirm the output filename: <process-name-kebab>-sdd.md.


Create path

1. Extract PDD data

Read the full PDD and extract:

  • Process name, department, schedule, volume, peak volume
  • Applications list (names, client type, access method)
  • In-scope / out-of-scope steps
  • Known business and application exceptions
  • Reporting requirements

2. Apply inference rules

Load references/inference-rules.md and derive as many SDD fields as possible. Summarise inferences in a short table for the architect to review:

FieldInferred ValueConfidenceReason
FrameworkREFrameworkHighQueue-based transactional, >50 items/day
Robot TypeBORHighNo human interaction required

3. Ask for gaps only

For fields that cannot be inferred, ask the architect. Load references/gap-questions.md for the question set. Group related questions to max 5 per message.

4. Build project structure

Apply decomposition heuristics from references/inference-rules.md to define the project list and workflow inventory. Present for confirmation before writing.

5. Write the file

Load assets/templates/sdd-template.md, substitute all values, and write to docs/<process-name-kebab>-sdd.md.

Section 9 is an estimation reference stub — fill in the four summary rows only if data is available. Effort detail lives in a separate <process-name>-estimation.md; do not inline it in the SDD.

6. Finish

Report the output path. List any [SME REVIEW] items remaining. Suggest next steps:

  • Hand-off to TDD author
  • Generate <process-name>-estimation.md from assets/templates/estimation-template.md
  • When arch-review is ready, render it and generate the ROI chart:
    uv run --project .claude/skills/uip-methodology/ .claude/skills/uip-methodology/scripts/cpm_rpa/cli.py render arch_review --data docs/project-data.yaml --output docs/arch-review.md
    uv run .claude/skills/uip-methodology/scripts/generate_roi_chart.py docs/arch-review.md
    
    generate_roi_chart.py carries its own PEP 723 dependency header — uv run installs plotly/kaleido automatically. No --project flag needed.
  • Open UiPath Studio project

Amend path

A. Inventory the existing SDD

Read the full SDD. Produce a gap inventory:

SectionStatusGap
3.1 Design Decisionscomplete
4.1 Dispatcher configpartialTrigger/schedule is [TBD]
8.1 System Access PrerequisitespartialOwner and status columns incomplete

Gap signals (in priority order):

  1. [TBD] — value deferred
  2. [SME REVIEW] — needs business owner decision
  3. [DEFAULT] — placeholder to confirm
  4. Open questions in section 10 still marked Open
  5. Sections present in assets/templates/sdd-template.md but missing from this SDD
  6. Data inconsistencies (e.g. payback figure differs from estimation file)

B. Resolve from PDD and inference rules

Read the PDD. Load references/inference-rules.md. For each gap, attempt to resolve without asking. Mark resolved gaps with the source.

C. Ask for remaining gaps only

For gaps that cannot be resolved, ask the architect. Group related questions to max 5 per message.

D. Patch the file

Edit the existing SDD in place. Only modify cells/sections with identified gaps. Do not reformat, reorder, or rewrite sections that are already complete.

E. Finish

Report what was changed. List any [SME REVIEW] items still open. Note open questions in section 10 that are now resolved vs. still open.


Workflow D — Estimation & ROI

Produces <process-name>-estimation.md and/or <process-name>-roi.md from their templates. Always load the template — never write these files as plain markdown. Both files are structured data documents: the renderer reads their region blocks to compute derived values and generate the ROI chart. Without regions, the pipeline breaks.

Estimation

1. Collect inputs

Read the SDD. Extract from section 3 (component inventory / workflow inventory):

  • List of pipeline components (Dispatcher, Performer stages, Aggregator if present)
  • Application list and access method (drives complexity)
  • Schedule / volume (drives effort multipliers)

Ask the architect for any of these that are missing or [TBD]:

  • PD (person-day) rate in €
  • Contingency percentage (default 10 %)
  • Per-component: complexity (low / medium / high), base effort in PDs, confidence

Group related questions — at most 5 per message.

2. Build the file

Load assets/templates/estimation-template.md. Substitute all values collected above. For every component in the SDD's component inventory, add a row to the effort_items region. For every [TBD] that is still unknown, write [TBD] in the cell — do not omit the row.

Region map — all six must be present and paired in the output:

RegionContains
estimation_headerVersion, date, status, confidence, contingency
estimation_historyDocument version history table
estimation_approvalsSign-off table
effort_itemsPer-component effort table (machine-readable)
cost_itemsMonthly run costs table (machine-readable)
estimation_summaryFinancial summary: PD rate, totals, build cost

Write to docs/<process-name-kebab>-estimation.md.

3. Finish

Run the linter. List any [TBD] items remaining. Offer to generate the ROI next.


ROI

1. Collect inputs

Read docs/<process-name>-estimation.md for monthly_run_cost and build_cost. Read the PDD for monthly transaction volume.

Ask for any missing values:

  • FTE cost rate (€/hour)
  • AHT saved per transaction (minutes)

2. Build the file

Load assets/templates/roi-template.md. Substitute all values.

Region map — all four must be present and paired in the output:

RegionContains
roi_headerVersion, date, status
roi_historyDocument version history table
roi_inputsFTE cost rate, AHT saved — the two SA-provided inputs
roi_summaryFull financial summary table (monthly/annual savings, payback, net benefit)

Write to docs/<process-name-kebab>-roi.md.

3. Finish

Run the linter. List any [TBD] items remaining. When both estimation and ROI are complete and the arch-review template is filled, generate the ROI chart:

uv run --project .claude/skills/uip-methodology/ .claude/skills/uip-methodology/scripts/cpm_rpa/cli.py render arch_review --data docs/project-data.yaml --output docs/arch-review.md
uv run .claude/skills/uip-methodology/scripts/generate_roi_chart.py docs/arch-review.md

Shared Rules

  • Never invent selectors, UI element identifiers, or field names — mark as [DEV: inspect at build time].
  • Use [DEFAULT] for industry-standard values (retry=3, timeout=30s, queue item deadline=24h).
  • Use [SME REVIEW] for gaps requiring business knowledge not covered by PDD or inference rules.
  • Do not copy PDD sections verbatim into an SDD — reorganise content into the SDD structure.
  • The Workflow Inventory table is the most important SDD section; every PDD in-scope step must map to at least one workflow file.
  • Amend mode only: never touch a field that already has a real value.
  • After writing or amending any artefact, run the linter and fix all FAILs before reporting completion to the user:
    uv run --project .claude/skills/uip-methodology/ .claude/skills/uip-methodology/scripts/lint_docs.py docs/<artefact-file>.md
    
    Exit code 1 means failures remain — fix them and re-run. List remaining WARNs to the user (TBD count, SME review items, etc.).
  • Preserve all <!-- #region name --> / <!-- #endregion name --> markers from the template verbatim. These are load-bearing: the parser (cpm_rpa/parser.py) uses them to extract structured data for rendering. Write the captured content between the tags, never outside or instead of them. A region with no data gets [TBD] between its tags — never an empty or missing block. Never strip, rename, or reorder region markers.
  • Generate Mermaid diagrams from a code-structure.yml using the mermaid CLI subcommand:
    # stdout
    uv run --project .claude/skills/uip-methodology/ .claude/skills/uip-methodology/scripts/cpm_rpa/cli.py mermaid docs/code-structure.yml
    
    # write file — explicit path
    uv run --project .claude/skills/uip-methodology/ .claude/skills/uip-methodology/scripts/cpm_rpa/cli.py mermaid docs/code-structure.yml --out docs/code-structure.md
    
    # write file — auto-derive name ({stem}.{C4Level}.md)
    uv run --project .claude/skills/uip-methodology/ .claude/skills/uip-methodology/scripts/cpm_rpa/cli.py mermaid docs/code-structure.yml --auto-out
    
    Options: --style flow|tree (default: flow), --depth N, --types process,phase,module,unit, --colorscheme solarized-light|default. flow renders phases as subgraph containers; tree renders raw parent→child edges.
  • All diagrams must be written as Mermaid code blocks (```mermaid fenced blocks). Never describe diagrams in prose or ASCII art. Use flowchart TD for process flows and C4Context / graph LR for system context and architecture diagrams.

What ships with it: 140 files

454.1 KB alongside SKILL.md, 24 of them executable

assets/

100 more files not listed here. See all 140 in the repository.

Keep looking

Skills are one crate of 328,083. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.