Agent skill

Uipath Knowledge Bundles

by UiPath in UiPath/skills

Read and publish UiPath knowledge bundles via uip or kb — versioned sets of markdown documents (Open Knowledge Format) that live in an Orchestrator folder and that an agent reads from as context.

MITAuto-check: notes

Install Uipath Knowledge Bundles

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

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

GitHub CLI
$ gh skill install UiPath/skills uipath-knowledge-bundles --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-knowledge-bundles .claude/skills/uipath-knowledge-bundles && 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-knowledge-bundles
GitHub stars
167
Token cost
~5.4k tokens
SKILL.md length
2,861 words
Files
1
Skills in repo
28
Repo updated
First seen
Licence
MIT

At a glance

Read and publish UiPath knowledge bundles via uip or kb — versioned sets of markdown documents (Open Knowledge Format) that live in an Orchestrator folder and that an agent reads from as context.

  • Works in 8 steps: Preflight before anything else. uip or… → Every command needs a folder.… → Bundle keys come from list, never from… → …
  • SKILL.md covers Critical Rules, Step 0: Preflight — is this…, Every command is folder-scoped and Inside a workspace, the bundle…, plus 6 more sections
  • Instructions only: no scripts, shell commands, URLs or credentials in SKILL.md

What it does

Uipath Knowledge Bundles is an agent skill from UiPath/skills. Read and publish UiPath knowledge bundles via uip or kb — versioned sets of markdown documents (Open Knowledge Format) that live in an Orchestrator folder and that an agent reads from as context. Download a version into a local workspace, read one file or a whole version, publish a directory as version 1, and ask what a local copy needs to match a published version. PREVIEW: these commands exist only on a prerelease uip build and only on tenants with the knowledge-bundles feature enabled — Step 0 below is how you…

Its SKILL.md is about 5.4k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

The repository describes itself as: This is a repository of skills for interfacing UiPath capabilities to external developers. The licence is MIT.

Example prompts

  • “/uipath-knowledge-bundles”

Requirements

  • Pre-approved tools (allowed-tools): Bash, Read, Write, Glob, Grep

Workflow steps

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

  1. Preflight before anything else. uip or kb --help decides whether this surface exists at all. unknown command means a stable build and no…
  2. Every command needs a folder. --folder-path or --folder-key on all of them. There is no tenant-wide listing to fall back on.
  3. Bundle keys come from list, never from you. Same for proposal ids, which come from change-proposal list. Do not construct, guess, or carry…
  4. publish and create --input only ever make version 1. Every later version comes from merging a change proposal. A 409 means the bundle…
  5. A 403 or a feature refusal is not a login problem. Do not "fix" it by re-running uip login; only an administrator can change it.
  6. diff before merge. A merge publishes a version that cannot be edited afterwards.
  7. Inside a workspace, omit the key and the folder — but read the stderr line that says which workspace answered, and pass --folder-path…
  8. Paths are bundle-relative and cannot climb. A --path or --artifact containing a . or .. segment is refused before any request is sent…

What it can do on your machine

Read from SKILL.md and the folder at commit 0bada1b. 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
    • Glob
    • Grep

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    No scripts in the folder and no shell commands in SKILL.md (its code samples are bash).

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

  • Network

    No URLs in SKILL.md.

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

  • Credentials

    Names no API keys, tokens, secrets or passwords.

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

Context cost

Uipath Knowledge Bundles loads about 5.4k tokens when it runs. Until then it costs about 245 tokens; SKILL.md has 2,861 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~245
When it runs · the whole SKILL.md, loaded when a task matches
~5.4k

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, Glob, Grep

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 0bada1b, republished under its MIT licence (© UiPath). 2,861 words, ~5,365 tokens.

Download SKILL.mdSave it as .claude/skills/uipath-knowledge-bundles/SKILL.md (or your agent's skills folder).
name
uipath-knowledge-bundles
description
Read and publish UiPath knowledge bundles via `uip or kb` — versioned sets of markdown documents (Open Knowledge Format) that live in an Orchestrator folder and that an agent reads from as context. Download a version into a local workspace, read one file or a whole version, publish a directory as version 1, and ask what a local copy needs to match a published version. PREVIEW: these commands exist only on a prerelease `uip` build and only on tenants with the knowledge-bundles feature enabled — Step 0 below is how you find out, and a miss means stopping, not improvising. Changing published content goes through a reviewed change proposal: `uip or kb change-proposal` opens one from an edited workspace, carries the review comments, and merges it to publish the next version. For Orchestrator assets, queues, buckets, jobs→uipath-platform. For context grounding / semantic search indexes→uipath-platform. For `uip solution` lifecycle→uipath-solution.
allowed-tools
Bash, Read, Write, Glob, Grep
when_to_use
User says 'knowledge bundle', 'knowledge bundles', 'OKF', 'Open Knowledge Format', 'download the knowledge bundle', 'publish docs to Orchestrator', 'what…
user-invocable
true

UiPath Knowledge Bundles — uip or kb

A knowledge bundle is a folder-scoped Orchestrator entity holding a versioned tree of markdown documents. Versions are immutable and numbered (v1, v2, …); reads accept a number or the literal latest. Content is addressed by hash, so transfers move only what changed.

Critical Rules

  1. Preflight before anything else. uip or kb --help decides whether this surface exists at all. unknown command means a stable build and no amount of retrying changes it; a command that runs but is refused by the platform means the tenant's feature flag is off. Both are stop conditions — say so and stop, never substitute bucket, asset or context-grounding commands.
  2. Every command needs a folder. --folder-path <path> or --folder-key <guid> on all of them. There is no tenant-wide listing to fall back on.
  3. Bundle keys come from list, never from you. Same for proposal ids, which come from change-proposal list. Do not construct, guess, or carry one over from another folder.
  4. publish and create --input only ever make version 1. Every later version comes from merging a change proposal. A 409 means the bundle already has content — never delete and re-create to get around it, that destroys the version history and the review record.
  5. A 403 or a feature refusal is not a login problem. Do not "fix" it by re-running uip login; only an administrator can change it.
  6. diff before merge. A merge publishes a version that cannot be edited afterwards.
  7. Inside a workspace, omit the key and the folder — but read the stderr line that says which workspace answered, and pass --folder-path explicitly after switching tenants.
  8. Paths are bundle-relative and cannot climb. A --path or --artifact containing a . or .. segment is refused before any request is sent; pass the path as the manifest lists it.

Step 0: Preflight — is this surface available?

Run once per session:

bash
uip or kb --help
  • Succeeds → continue.
  • unknown command → the installed uip is a stable build. These commands register only on a prerelease build (preview / dev channel). Tell the user that plainly and stop — do not substitute bucket, asset or context-grounding commands, and do not guess an older command name.
  • A command runs but the platform refuses it → the tenant does not have the knowledge-bundles feature enabled. Say so and stop; only an administrator can change it. A 403/feature failure is not a login problem — never "fix" it by re-running uip login.

Every command is folder-scoped

Bundles live in a folder and are not addressable without one. Pass --folder-path <path> (or --folder-key <guid>) on every command — unless you are working inside a downloaded workspace, which answers for both (below).

uip or folders list --all finds one — its flags are its own (--all, --path <prefix>, --name), not kb list's --search. Pass its Path field to --folder-path (a top-level folder is just Shared, a nested one Shared/Finance) or its Key to --folder-key — Name is the display name and is not what either option wants.

Bundles are identified by a GUID (Key). Get it from list, never construct it.

On share, the scope (--folder-path) is the folder that already holds the bundle; --add-folders and --remove-folders name the folders being changed, and both apply in one call.

--search matches the bundle's Name only — not its description, and not the title inside its documents. A bundle named ops-handbook-7 can hold a document titled "Contoso Operations Handbook", so searching what the user called it often returns an empty Data: [] that reads like "no such bundle". When a descriptive search comes up empty, list the folder unfiltered and look at the names and descriptions; page with --limit / --offset rather than trusting the first page. versions, history, change-proposal list and change-proposal list-comments take the same two options; for those three the window is cut from the whole answer rather than asked of the server, so --offset counts rows either way — and on those four Pagination.Total is exact and HasMore is false on the last window. On kb list the server reports no total, so HasMore there is a guess from a full page: keep paging until a page comes back short. A folder often holds several bundles that all look plausible for a vague request — read Description, and if that is not enough, check one bundle's file names with download before answering from the wrong one.

Inside a workspace, the bundle and the folder are optional

uip or kb download writes .okf/workspace.json, and every verb except delete reads it — from the directory passed to --input, or by walking up from the working directory the way git finds a repository. So after a download:

bash
cd ./kb
uip or kb versions                    # no key, no folder
uip or kb change-proposal create --input . --title "..."

Four things to rely on:

  • An explicit flag always wins. Passing --folder-path uses that folder, not the workspace's.
  • The command says when it inferred. A line on stderr — Using the workspace at <dir> for the bundle and folder. — means the target came from a marker, not from you. If you did not expect it, you are standing in someone's workspace.
  • delete never infers. It always wants the key. Removing a bundle from a folder is the one action a wrong working directory cannot undo.
  • The marker records the folder, not the tenant. After switching tenants, a bundle-addressed verb fails on the bundle's key, but kb list and kb create will resolve the folder in the new tenant and look perfectly successful. Pass --folder-path explicitly when you have changed sessions.

Do not write anything else into the workspace either. change-proposal create diffs the whole directory against the marker, so a file you drop in there — an archive you asked kb archive --destination for, an editor backup, a build artifact — becomes content the proposal adds. Write command output somewhere outside the workspace, and run diff before merge so you see what the proposal actually carries.

Do not write or edit .okf/workspace.json by hand — it also carries the manifest a change proposal diffs against. An edit that breaks its shape (a hash that is not sha256: plus 64 hex, a path with .. or a leading /, a version below 1) is refused with invalid_argument and a message saying the marker is not valid; an edit that keeps the shape valid is worse — it produces a wrong change set rather than an error. A marker the OS will not let you open is local_permission_denied, with the file in Context.path. Either way, re-run download into that directory to rewrite it. A command that needs nothing from the marker — kb list --folder-path <p>, say — still runs in a directory whose marker is broken.

Commands

GoalCommand
Find bundlesuip or kb list --folder-path <p> [--search <text>] [--limit <n>] [--offset <n>] [--all-fields]
One bundle's recorduip or kb get <bundle-key> --folder-path <p>
Create, emptyuip or kb create <name> --folder-path <p> [-d <text>]
Create + publish v1 from a directoryuip or kb create <name> --folder-path <p> --input <dir> -m <message>
Publish v1 into an existing empty bundleuip or kb publish <bundle-key> --folder-path <p> --input <dir> -m <message>
Rename / re-describeuip or kb update <bundle-key> --folder-path <p> [-n <name>] [-d <text>]
Remove from a folderuip or kb delete <bundle-key> --folder-path <p> --yes
Share into / out of foldersuip or kb share <bundle-key> --folder-path <p> [--add-folders <f...>] [--remove-folders <f...>]

| Version history | uip or kb versions <bundle-key> --folder-path <p> [--limit <n>] [--offset <n>] | | Who changed one file, and when | uip or kb history <bundle-key> --folder-path <p> --path <file> [--limit <n>] [--offset <n>] | | Unpack a version into a workspace | uip or kb download <bundle-key> --folder-path <p> --destination <dir> [--version <n>] | | Whole version as a zip | uip or kb archive <bundle-key> --folder-path <p> --destination <file>.zip [--version <n>] | | One file's content | uip or kb file <bundle-key> --folder-path <p> --path <file> [--version <n>] [--destination <file>] | | One file across versions | uip or kb history <bundle-key> --folder-path <p> --path <file> [--limit <n>] [--offset <n>] | | A version's derived artifact | uip or kb build <bundle-key> --folder-path <p> --artifact graph.json | | What I changed, before proposing | uip or kb status inside a workspace | | Whether a newer version exists | uip or kb sync inside a workspace, or uip or kb sync <bundle-key> --folder-path <p> --input <dir> |

Add --output json when you parse the result. It is the CLI's global output-format flag, and it is separate from --destination, which is where a command writes files.

Reading a bundle as context

bash
uip or kb download <bundle-key> --folder-path <p> --destination ./kb

That unpacks the version's files plus ./kb/.okf/workspace.json, a marker recording the bundle, the version and its manifest. The server writes the marker into the archive, so one request brings both. Read the markdown directly from disk. To check whether the copy is current, sync it — with no --version it compares against latest, and the report is pull-direction — both lists are things to do, not a history. Changed is what to download to match the published version, Deleted what this version no longer carries. It compares the checkout, meaning the files the marker lists, so files of your own sitting in the same directory are not part of it and never show up in either list. A file you edited locally, and one you deleted locally, both show under Changed: for each of them "download this" is what makes the copy match. There is no apply command — download the version again, into a fresh directory or over the same one. Over the same one, the files the new version dropped are removed when you had not touched them (Data.Removed) and left in place when you had edited them (Data.Kept) — check Kept before proposing, because each of those is now a file the next proposal would add back.

Publishing

publish and create --input only ever produce version 1, and only for a bundle with no content. A 409 from either means the bundle already has content: every later version comes from merging a change proposal (below). Never delete and re-create a bundle to work around it — that destroys the version history and the review record.

Both walk the directory, hash every file, and publish the manifest with the files inside the same request. A file larger than 16 MB cannot travel that way and is uploaded on its own first; either way it reaches the manifest as an ordinary entry, so nothing about the result depends on which path a file took. Two rules the walk obeys:

  • Dot-prefixed files are skipped unless --include-hidden is passed.
  • .okf/, .git/ and _refs/ are never published, whatever the flags say — the format reserves them, and _refs/ is where a download materializes other bundles' content. Publishing from a downloaded workspace is therefore safe.
  • A symlink is judged by what it points at, not by its name. public -> .secrets is skipped like .secrets itself unless --include-hidden is passed, a link into .git/ or .okf/ is never published, and a link that resolves outside the workspace is not followed at all. To publish a file, put the file itself in the workspace.
Show full SKILL.md (1,064 more words)Show less

What the output means

Objects is how many distinct objects the change set named, Inlined how many travelled inside the commit and Uploaded how many needed a request of their own. Inlined equal to Objects with Uploaded: 0 is the ordinary case for documents; a non-zero Uploaded means a file was past the inline limit, which is a fact about size and not a problem to report.

Author on a version, a proposal or a comment is an opaque actor id — user:<guid> for a person, agent/<producer> for an agent. There is no CLI call that resolves it to a name or email, so report it as it comes rather than hunting for one.

Failure envelopes carry Context.HttpStatus. Two worth recognizing:

  • 409 on create → that name is already used in the folder. Pick another; do not retry. Names are unique per folder and other agents publish into the same folders, so give a generated bundle a distinguishing suffix rather than a bare word.
  • 409 on publish → the bundle already has content. Stop; this needs a change proposal.

file returns the content inline when it decodes as UTF-8 text, and refuses binary without --destination <file> — pass it rather than trying to read bytes from the envelope.

Changing published content: uip or kb change-proposal

Every change after version 1 goes through a reviewed proposal. The loop, from an edited workspace:

bash
uip or kb download <bundle-key> --folder-path <p> --destination ./kb   # writes .okf/workspace.json
# ...edit files under ./kb...
uip or kb change-proposal create --title "<what changed>"   # inside ./kb: folder, bundle and files all inferred
uip or kb change-proposal list-comments <proposal-id> --folder-path <p> --bundle-key <key> --since <last id> --unresolved --limit 50
# ...address the feedback in the same workspace...
uip or kb change-proposal update <proposal-id>              # same inference; --input names another directory
uip or kb change-proposal resolve-thread <thread-id> --folder-path <p> --bundle-key <key> --proposal <proposal-id> --body "Fixed in rev 2"
uip or kb change-proposal merge <proposal-id> --folder-path <p> --bundle-key <key>

Four things to know:

  • Run status before you propose, and act on what it says. uip or kb status prints the change set the next change-proposal create would carry — each path with Kind: Added, Modified or Deleted — and sends nothing. It runs offline: no bundle key, no folder, no session.

    Running it is half the job. Read every path it lists and account for each one. A path you did not touch is a file that drifted into the workspace — command output, an archive you asked for, an editor backup — and a proposal carries it into the bundle. Before proposing: delete it from the workspace if it is not meant to be published, or tell the user it is there and that proposing would add it. Never open a proposal carrying a path you cannot explain, and never treat status as a box to tick before running create anyway.

  • A download refused with server_error wrote nothing. It means the archive the server returned names a different bundle, or a different version than the --version you asked for. The directory is untouched; retry the same command, and report it if it persists. Do not work around it with archive plus a manual unzip — the marker inside that archive is the wrong base, and a proposal made from it diffs against a version the files did not come from.

  • After a merge, your workspace is a version behind. download again before you continue. The marker still names the version you checked out, so status will report everything you just shipped as if it were new — it is comparing against your old base, correctly, and it cannot know a newer version exists without asking. This is the one way to propose your own merged work a second time.

  • status and sync answer different questions. status compares the working tree against the version you checked out; sync compares that checkout against a published version. An empty status does not mean your copy is current, and an empty sync does not mean you have nothing to propose.

  • A bundle key that disagrees with the workspace is refused, not preferred. sync, change-proposal create and change-proposal update read the workspace's files, so naming a different bundle on the same command line would diff one bundle's content against another's manifest and report the result as a delta. Drop the key to act on the workspace's own bundle. A command that only reads (get, versions, file) still takes any key you name.

  • create and update need a workspace, not any directory. They diff the files against .okf/workspace.json, which only a download writes, and that marker's version becomes the proposal's base. --input is optional here and on sync: run them inside the workspace and the directory is found by walking up, the same way the bundle and folder are. A directory without a marker — and a working directory with no workspace above it — is refused rather than proposed against a guessed version. The stderr notice names exactly what the workspace supplied (the files, the bundle and the folder), so you can see when a flag of yours decided something instead.

  • The proposal is the direct object, the bundle is scope. So the proposal id is positional and the bundle is --bundle-key. Proposal ids are small integers (1, 7), not GUIDs.

  • Resolving a thread is itself a comment. Give --body something useful ("Fixed in rev 2"); a later reply reopens the thread.

  • merge can come back conflicted, meaning the files moved in a newer version. Recovery is to download again, re-apply the edit, and change-proposal update the same proposal — that takes its base to the new version and its status back to Open, and the review thread stays with it. Opening a new proposal also works but strands the existing comments on the old id. Never force anything. The failure carries Data.Status: "Conflicted"; ErrorCode is the same invalid_argument every merge refusal uses, so branch on Data.Status, not on the code.

diff before you merge — it is the only cheap check that the proposal contains what you think it does, and a merge publishes a version that cannot be edited afterwards.

Reviewing someone else's proposal

The other half of the loop, and the one you land in when the proposal is not yours:

bash
uip or kb change-proposal list --folder-path <p> --bundle-key <key> --status open --limit 20
uip or kb change-proposal get <proposal-id> --folder-path <p> --bundle-key <key>
uip or kb change-proposal diff <proposal-id> --folder-path <p> --bundle-key <key>
uip or kb change-proposal add-comment <proposal-id> --folder-path <p> --bundle-key <key> \
  --body "Chargeback is not a refund — see the published definition" \
  --path concepts/chargeback.md --line 7
uip or kb change-proposal resolve-thread <root comment id> --folder-path <p> --bundle-key <key> \
  --proposal <proposal-id> --body "Rejected: contradicts v1"
uip or kb change-proposal merge <proposal-id> --folder-path <p> --bundle-key <key>   # accept
uip or kb change-proposal close <proposal-id> --folder-path <p> --bundle-key <key>   # reject

list is where you start: proposal ids come from it and from nowhere else. --line counts lines on the proposal's new side, not the published version — two proposals editing the same file will not agree on line numbers. Judge a proposal against the published content (download it, or file the documents it touches); a proposal that contradicts what is published needs evidence, not brevity.

A proposal with no reviewer is fine to create and merge yourself — comments are a record, not a gate.

Not available yet

Cross-bundle references expanded under _refs/ — the server does not build them yet, so a downloaded workspace holds only this bundle's own files. There is also no CLI surface for the bundle event feed; poll a proposal's comments with --since instead.

© 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

Just SKILL.md in skills/uipath-knowledge-bundles of UiPath/skills.

Open the folder on GitHubat commit 0bada1b

Compare with similar skills

Uipath Knowledge Bundles 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 Knowledge Bundles compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Uipath Knowledge Bundles this skillUiPath/skills167—~5.4kAutomated safety check: NotesMIT
Publishcode-yeongyu/oh-my-openagent70k—~5.5kAutomated safety check: WarnCustom licence
Social Publisheraffaan-m/ECC276k1 repos~1.1kAutomated safety check: PassMIT
Publishyc-software/qm15k—~2.2kAutomated safety check: WarnMIT
Social Publishingwshobson/agents40k—~914Automated safety check: PassMIT
PublishQ00/ouroboros6.2k—~2.7kAutomated safety check: PassMIT

Similar skills

  • Publish

    code-yeongyu/oh-my-openagent

    Publish oh-my-opencode to npm by triggering the GitHub Actions publish workflow and verifying its artifacts.

    70k GitHub stars~5.5k tokensUpdated today
    DevOps & CloudAuto-check: warnings
  • Social Publisher

    affaan-m/ECC

    Agent-driven scheduling and publishing of social media posts across 13 platforms via SocialClaw.

    276k GitHub starsUsed in 1 repo~1.1k tokens
    Writing & ContentAuto-check passed
  • Publish

    yc-software/qm

    Publish a long-lived internal web app, site, or dashboard from the agent computer.

    15k GitHub stars~2.2k tokensUpdated yesterday
    DevOps & CloudAuto-check: warnings
  • Social Publishing

    wshobson/agents

    Schedule and publish social media posts across 13 platforms (X, LinkedIn, Instagram, Facebook Pages, TikTok, Discord, Telegram, YouTube, Reddit, WordPress, Pinterest) via the SocialClaw API.

    40k GitHub stars~914 tokensUpdated 6 days ago
    Writing & ContentAuto-check passed
  • Publish

    Q00/ouroboros

    Publish Seed specification as GitHub Issues for team-based project management

    6.2k GitHub stars~2.7k tokensUpdated 3 days ago
    Product & Project ManagementAuto-check passed
  • Triage Support Bundle

    netdata/netdata

    Investigate a Netdata support bundle offline - the archive netdata-support-bundle produces - to explain one host's alerts, missing data, collector failures, crashes, high CPU or memory, streaming…

    81k GitHub stars~2.7k tokensUpdated yesterday
    DevOps & CloudAuto-check passed

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…

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

    167 GitHub stars~3.5k tokensUpdated yesterday
    Auto-check passed
  • Uipath Functions

    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…

    167 GitHub stars~3.6k tokensUpdated yesterday
    Auto-check: notes
  • Uipath Maestro Bpmn

    UiPath/skills

    TRIGGER for authoring, operating or diagnosing UiPath Maestro BPMN.

    167 GitHub stars~4.2k tokensUpdated yesterday
    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…

    167 GitHub stars~2k tokensUpdated yesterday
    Auto-check: notes
  • Uipath Troubleshoot

    UiPath/skills

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

    167 GitHub stars~5.3k tokensUpdated yesterday
    Auto-check passed

Questions about Uipath Knowledge Bundles

What does Uipath Knowledge Bundles do?

Read and publish UiPath knowledge bundles via uip or kb — versioned sets of markdown documents (Open Knowledge Format) that live in an Orchestrator folder and that an agent reads from as context. Uipath Knowledge Bundles is an agent skill from UiPath/skills. Read and publish UiPath knowledge bundles via uip or kb — versioned sets of markdown documents (Open Knowledge Format) that live in an Orchestrator folder and that an agent reads from as context.

How do I install Uipath Knowledge Bundles in Claude Code?

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

How do I install Uipath Knowledge Bundles in Codex?

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

Can I use Uipath Knowledge Bundles 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-knowledge-bundles -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-knowledge-bundles, .gemini/skills/uipath-knowledge-bundles, .github/skills/uipath-knowledge-bundles and .opencode/skills/uipath-knowledge-bundles in your project.

What does Uipath Knowledge Bundles need to run?

SKILL.md names no scripts, command-line tools or credentials: Uipath Knowledge Bundles is instructions for the agent only. Its frontmatter pre-approves these tools: Bash, Read, Write, Glob, Grep.

Does Uipath Knowledge Bundles access the network?

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.

Is Uipath Knowledge Bundles 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 Knowledge Bundles use?

Uipath Knowledge Bundles 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 Knowledge Bundles use?

About 5.4k tokens (SKILL.md is roughly 21k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Uipath Knowledge Bundles?

Skills that share tags, products or a category with Uipath Knowledge Bundles: Publish (code-yeongyu/oh-my-openagent, 70k stars), Social Publisher (affaan-m/ECC, 276k stars), Publish (yc-software/qm, 15k stars) and Social Publishing (wshobson/agents, 40k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Uipath Knowledge Bundles?

UiPath (a GitHub organization) maintains it in UiPath/skills, which has 167 GitHub stars. The repository holds 28 skills in this directory. The repository was last updated on October 10, 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.