Clerk
geekskai/blog
Clerk authentication router. An agent skill from geekskai/blog.
UiPath Integration Service connector authoring (REST+JSON) on disk via uip is connectors builder.
$ npx skills add UiPath/skills --skill uipath-connector-builder -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install UiPath/skills uipath-connector-builder --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/UiPath/skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/uipath-connector-builder .claude/skills/uipath-connector-builder && 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-connector-builder" agent skill from https://github.com/UiPath/skills/tree/main/skills/uipath-connector-builder into .claude/skills/uipath-connector-builder/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "uipath-connector-builder", 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/UiPath/skills/tree/main/skills/uipath-connector-builderType 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 UiPath/skills --skill uipath-connector-builder -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install UiPath/skills uipath-connector-builder --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/UiPath/skills.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills/uipath-connector-builder .agents/skills/uipath-connector-builder && 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-connector-builder" agent skill from https://github.com/UiPath/skills/tree/main/skills/uipath-connector-builder into .agents/skills/uipath-connector-builder/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "uipath-connector-builder", 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 UiPath/skills --skill uipath-connector-builder -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install UiPath/skills uipath-connector-builder --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/UiPath/skills.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills/uipath-connector-builder .cursor/skills/uipath-connector-builder && 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-connector-builder" agent skill from https://github.com/UiPath/skills/tree/main/skills/uipath-connector-builder into .cursor/skills/uipath-connector-builder/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "uipath-connector-builder", 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/UiPath/skills.git --path skills/uipath-connector-builder--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 UiPath/skills --skill uipath-connector-builder -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install UiPath/skills uipath-connector-builder --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/UiPath/skills.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills/uipath-connector-builder .gemini/skills/uipath-connector-builder && 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-connector-builder" agent skill from https://github.com/UiPath/skills/tree/main/skills/uipath-connector-builder into .gemini/skills/uipath-connector-builder/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "uipath-connector-builder", 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 UiPath/skills uipath-connector-builderInstalls 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 UiPath/skills --skill uipath-connector-builder -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/UiPath/skills.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills/uipath-connector-builder .github/skills/uipath-connector-builder && 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-connector-builder" agent skill from https://github.com/UiPath/skills/tree/main/skills/uipath-connector-builder into .github/skills/uipath-connector-builder/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "uipath-connector-builder", 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 UiPath/skills --skill uipath-connector-builder -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install UiPath/skills uipath-connector-builder --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/UiPath/skills.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills/uipath-connector-builder .opencode/skills/uipath-connector-builder && 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-connector-builder" agent skill from https://github.com/UiPath/skills/tree/main/skills/uipath-connector-builder into .opencode/skills/uipath-connector-builder/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "uipath-connector-builder", 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-connector-builderUiPath Integration Service connector authoring (REST+JSON) on disk via uip is connectors builder.
Uipath Connector Builder is an agent skill from UiPath/skills. UiPath Integration Service connector authoring (REST+JSON) on disk via uip is connectors builder. Triggers on element.json, element-metadata.json, standard-resources/.json, a periodic-uipath-/periodic-design- connector repo, or any request to build/edit an IS connector: init the connector shell, configure auth (19 types via auth set, incl. jwtOauth claims, FPS, none), add activities with fields/params/methods/hooks, wire polling/webhook triggers, add auth-system resources, inspect, validate, and surgically…
Its SKILL.md is about 6.2k tokens, which your agent loads only when the skill is triggered. The skill folder holds 11 other files, including reference files (for example `references/auth.md`, `references/configuration.md` and `references/debugging.md`).
It sits in Backend & APIs, covering Mobile testing and debugging and Webhooks. The repository describes itself as: This is a repository of skills for interfacing UiPath capabilities to external developers. The licence is MIT.
12 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit 0bada1b. It shows what the files ask for, not the result of running them.
Pre-approves these tools, so the agent can use them without asking each time:
BashReadWriteEditGlobGrepAskUserQuestionFrom allowed-tools in the SKILL.md frontmatter.
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.
Hosts in commands or code, which the agent is likely to contact:
acme.comapi.acme.comFrom 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 Connector Builder loads about 6.2k tokens when it runs, and up to ~30k if it reads all its reference files. Until then it costs about 201 tokens; SKILL.md has 2,368 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 noted patterns worth knowing about, such as sudo or a known installer.
allowed-tools: Bash, Read, Write, Edit, Glob, Grep, AskUserQuestionAutomated 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 UiPath/skills at commit 0bada1b, republished under its MIT licence (© UiPath). 2,368 words, ~6,167 tokens.
.claude/skills/uipath-connector-builder/SKILL.md (or your agent's skills folder). This skill also uses 10 other files; get the full folder from GitHub.Author UiPath Integration Service connectors on disk with uip is connectors builder, then import + publish them through the parent uip is connectors. A connector is a periodic-* repo (periodic-uipath-{vendor}-{product} for official; periodic-design-{org}-{slug} for custom — init derives the design-{org}-{slug} element key from --name + --organization) whose core is app/element/element.json plus standard-resources/*.json and JavaScript hooks/. Connectors wrap REST APIs that return JSON only — no SOAP, GraphQL, or XML. Terminology: the authoring noun is activity (it maps to an element.json resource + a standard-resource file).
element.json / a standard-resource file.builder inspect first to map auth, config, activities, hooks, and triggers. Never edit blind. Never invent config keys, activity paths, or IDs — read state first (inspect, activity list, state query).builder validate at the end of every workflow and after each fix — it runs the full periodic check set and exits non-zero on failure. On failure, read the reported field, fix that one entry, re-validate. After 3 failed attempts on the same error, stop and surface the validate output — don't keep guessing. Don't stop at "0 errors": read the WARNINGS too — they flag real gaps that still ship a half-built connector (a fieldless activity, a broken SR link). Treat them as must-fix unless you can articulate why a given one is acceptable.auth set owns all authentication. It writes the config entries, authentication.type / typeOauth / authenticationTypes, and the token-refresh resource in one call. Define scopes here too (--scope, --scope-options, --required-scopes, --preselected-scopes) — there is no separate scope command. init --auth oauth2|customApiKey is inline sugar for the create-time common case; everything else goes through auth set. Never hand-roll auth via state patch.activity create writes both sides in one call — the standard-resource file AND one element.json entry per method. Re-running on an existing activity appends/merges. Pass --skip-sr (or use auth system create) only for system resources that need no SR file. Model GETBYID/PATCH/PUT/DELETE only for TRUE by-id endpoints — never for search. The by-id /{id} path param is added automatically: ALWAYS for GETBYID, and for PATCH/PUT/DELETE only when the activity is CRUD (it also has a GET/GETBYID); a write-only/action activity keeps its base path. The by-id path token and the primary key are separate — the token is substituted before the request leaves us (the vendor never sees its name), while the primary key names a field read back from the vendor's response. A trailing {token} in --vendor-path is NOT adopted as the key; pass --primary-key <vendor response key>.state patch REPLACES the whole node at a pointer (no merge). To change one field: state query the entry, edit it, then state patch the COMPLETE object back. element-metadata.json has no addressable sub-paths — round-trip the whole file. Activity paths in pointers are URL-encoded: /contacts → %2Fcontacts. Use the dedicated authoring verbs for creation, not state patch..uip-connector.json marker init writes in the directory it ran from — so follow-up commands from that same directory hit the last-init connector automatically, even next to other connector dirs. Pass --connector-dir <PATH> to override or when working from elsewhere. import reads --connector-dir the same way (the connector root holding app/element/element.json); on download it instead names the OUTPUT directory to write the pulled connector into. Exception — init does NOT scan subdirectories (it would otherwise resolve a SIBLING connector and silently EDIT/rename it): to CREATE, run init from a fresh/empty directory (a dir that merely contains connector subdirs — e.g. /tmp — creates a new connector, it will not dive into a child to edit it); to EDIT, run from inside the connector or pass --connector-dir.{Result, Code, Data} envelope. Add --output json to parse it. Failures exit non-zero. Never suppress stderr.import / download / publish — and init when CREATING — need uip login. Authenticate before any tenant pull/push. A NEW connector's key design-{org}-{slug} takes its org from your logged-in session, so init create ERRORS when you're not logged in. Let it derive the org; do NOT pass a guessed --organization (a wrong org bakes into the key and only surfaces, mismatched, at import/publish) — --organization <slug> is only for offline/CI builds with a known org.auth set ENCRYPTED (encrypt: true) — most as PASSWORD fields, though some (OAuth tokens, a service-account JSON) are encrypted TEXTFIELD/TEXTAREA. End users supply real credentials at connection time; the connector holds only the auth TYPE + endpoint URLs + scopes. Use placeholders in every example command.require('axios') for secondary calls) and must end every path with done()./ is rewritten to a Windows path before the CLI ever sees it — --vendor-path /latest lands in element.json as C:/Program Files/Git/latest, validate PASSES it, the connector publishes, and it only fails at request time against the vendor with no local trace. Export MSYS_NO_PATHCONV=1 and MSYS2_ARG_CONV_EXCL='*' once per shell (or prefix every builder command). Affects every path option — --vendor-path, --resource-path, --method-vendor-path, --reference-path, --validation-vendor-path, --path, --polling-url. Quoting does NOT help (the rewrite happens after the shell strips quotes). If a connector already carries a mangled path, repair it with state patch.activity create does NOT infer fields. An activity with no fields renders in Studio Web as a single raw JSON body in and raw JSON out, with zero typed inputs/outputs — a half-built connector that still validates and publishes, so the omission is easy to miss (it's a recurring failure: "got it valid and published" while skipping the schema). After activity create, ALWAYS define the request/response fields from the vendor's documented schema — either pass --fields-file <json> on activity create for the whole schema at once, or add them one at a time with activity field create. validate emits a WARNING for any fieldless activity — treat it as must-fix. Never report a connector "done" with fieldless activities; if a raw-body passthrough is genuinely intended, say so explicitly.app/element/image.svg is the connector's icon in Studio Web. builder validate does NOT check this (it only warns when the file is missing), but the periodic build fails an icon whose ink has under 1.5:1 contrast on Studio Web's dark surface (#1F1F1F) — a black logo, or shapes with no fill. When you add or replace the icon, check it against the rules in references/icon.md. Fix black ink with a @media (prefers-color-scheme: dark) rule or fill="currentColor". Never recolour a brand logo.Decide how each per-connection value reaches the request BEFORE scaffolding — getting this wrong is the most common rework:
init --base-url 'https://{instance}.../api' + auth set --token-url 'https://{instance}.../token' --authorization-url 'https://{instance}.../authorize'. The CLI auto-seeds a single fillable {instance} field that resolves all three (references/configuration.md §Templated hosts). Do NOT expose base.url/oauth.token.url/oauth.authorization.url as separate connection fields.state patch the seeded entry to type:COMBO with options, whose value can be the host fragment itself).postRequest hook that validates (https + allowlisted host, never log the token) and persists via done({configuration}) — recipe: references/hooks.md §"Pattern: base URL …". Discoverable id → an onProvision system resource that calls the lookup at connection time (references/system-resources.md).configScreenType:"pre" or "pre-optional" field should have hintText with an example or where to find the value. give every visible connection-form field a hint (validate does not currently check this) for instance/workspace IDs, tenant hosts, and token-type-specific credentials.--token-url/--authorization-url too, not just the base URL.Each workflow is an ordered sequence of copy-paste-ready commands. Use placeholders (<ORG>, https://api.example.com) — never real secrets.
# 0. Log in FIRST. The key `design-{org}-{slug}` takes its org from your logged-in
# session, so `init` (create) ERRORS if you're not logged in. Let it derive the
# org — do NOT guess --organization (a wrong org bakes into the key and only
# surfaces, mismatched, at import). --organization <slug> is for offline/CI only.
uip login status # check Data.Status == "Logged in" — NOT the envelope
# Result/exit, which is "Success" even when the session
# is dead (refresh-failed / expired). (`init` create
# itself re-checks the live login status and blocks.)
# 1. Scaffold the shell. --name is required when creating; key + folder are derived
# (the org comes from your login — see step 0).
uip is connectors builder init --name 'Acme Widgets' \
--description 'Acme Widgets connector' --categories 'CRM,Sales and marketing' \
--base-url https://api.acme.com --auth oauth2 \
--authorization-url https://acme.com/oauth/authorize \
--token-url https://acme.com/oauth/token --scope 'read write'
# --categories must be approved DISPLAY-NAME values (e.g. 'CRM', 'Sales and marketing',
# 'Collaboration', 'Productivity', 'E-commerce') — NOT lowercase slugs like `crm,sales`.
# Validated at init AND `validate`: wrong case is canonicalized, an unknown value fails fast
# and the error lists the approved enum. init seeds element-metadata.json:latestVersion = "1.0.0".
# 2. Add an activity (writes element.json entries + standard-resources/accounts.json).
uip is connectors builder activity create --name accounts --vendor-path /v1/accounts \
--methods GET,GETBYID,POST,PATCH,DELETE --primary-key id --has-ceql
# 3. Author the field schema — REQUIRED, not optional (Rule 12). `activity create`
# does NOT infer fields; without this the activity ships as a raw JSON body and
# `validate` warns. Pass `--fields-file <json>` on `activity create` for the whole
# schema at once, or add fields one at a time with `field create`
# (visibility flags apply to every --method listed; re-runs merge):
uip is connectors builder activity field create --resource accounts --name email \
--type string --method GET --method POST --response
# 4. Replace the placeholder app/element/image.svg with the vendor's logo, and check
# it stays visible on a dark surface (Rule 13). validate does not check this.
# 5. Validate — must be 0 errors AND no unresolved warnings (fieldless activity,
# broken SR link) before import.
uip is connectors builder validate
# 6. Import (create-or-update on the tenant) then publish.
uip login
uip is connectors import
uip is connectors publish --wait # blocks until SUCCESS; live in Studio Web then
# (fire-and-forget without --wait: allow ~5-10 min)Publishing a NEW connector needs no --version (init seeded 1.0.0). Re-publishing an existing connector requires a HIGHER version — bump element-metadata.json:latestVersion (or pass --version 1.0.1); the server rejects an equal version.
uip is connectors builder inspect --output json # map what exists first
# research the vendor API, then:
uip is connectors builder activity create --name contacts --vendor-path /v1/contacts \
--methods GET,GETBYID,POST --primary-key id --fields-file ./contacts-fields.json
uip is connectors builder activity field create --resource contacts --name status \
--type string --method GET --response --searchable
uip is connectors builder activity hook create --resource-name contacts --method GET \
--hook-type postRequest --custom-code-file ./contacts-postRequest.js # optional response shaping (you write the JS)
uip is connectors builder validatetrigger create authors a POLLING trigger. The target activity must already exist and have an SR file (trigger create hard-fails otherwise).
uip is connectors builder activity list --output json # confirm the activity exists
uip is connectors builder trigger create --resource-name accounts --event-kind polling \
--updated-date-field LastModifiedDate --id-field Id # seeds the event config + hasEvents flag
uip is connectors builder validate--updated-date-field is REQUIRED for every --event-kind — the command always authors a polling loop. --event-kind polling|webhook|all (default polling) only picks the config bundle; webhook/all add webhook config keys but don't implement delivery. Webhook delivery, the polling-vs-webhook semantics, and per-flag defaults all live in references/events.md.
activity create auto-curates every method into a standalone Studio activity by default (opt out with --no-curate). Use method curate only to override the generated name/displayName, or to curate a --no-curate method.
Generic CRUD activities are always present separately from curated activities: List/Get/Create/Update/Delete Records let the user choose any object that supports that method. Do not remove them or report them as pollution when you add a curated/list-capable object; author the curated service action alongside the generic object picker.
uip is connectors builder activity method curate --resource cases --method GET \
--display-name 'Get Support Request'
uip is connectors builder activity field create --resource cases --name subject --type string \
--method GET --response --response-curated --design-position primary
uip is connectors builder validateuip is connectors builder inspect --output json
# state patch REPLACES the node — query the WHOLE entry, change ONLY the field at fault, patch it ALL back:
uip is connectors builder state query element.json/configuration/oauth.token.url --output json
uip is connectors builder state patch element.json/configuration/oauth.token.url \
--value '<full entry from the query above, with defaultValue corrected>'
uip is connectors builder validateFor a base URL or id derived at connection time: use a token-response postRequest hook when the value is returned by the token call, or an onProvision system resource when it must be discovered after auth. Validate the value, then persist it with done({configuration}) — NOT state patch, which baking-time-edits one connection's value into every connection. Full recipe: references/hooks.md §"Pattern: base URL …"; investigation checklists: references/debugging.md.
uip is connectors # tenant/catalog + design-connector lifecycle (needs `uip login`)
list | get <key> | swagger <key> | export <key> | audit-logs | event-operations
download <key> | import | publish | publish-status <id> | probe
builder # author a connector ON DISK
init # create-or-EDIT the connector shell in ONE verb
# (folds the old scaffold / metadata / global / base+pagination preset)
preset apply --kind base|pagination
header delete <vendorName>
auth set | get | system (create|list)
activity create | list | get | delete
field (create|list|get|delete)
method (get|set|curate)
param (create|list|get|delete)
hook (create|list|get|delete)
trigger create # --event-kind polling|webhook|all (folds the event preset + polling)
inspect # read-only whole-connector rollup
validate # full check set; exits non-zero on failure
state query <pointer> | patch <pointer>publish returns a PublishId; --wait polls to SUCCESS/FAILURE (timeout via --timeout-seconds, default 600); check later with publish-status <id> (positional). Status enum: IN_PROGRESS | SUCCESS | FAILURE.
Depth lives in references/ — each self-contained. SKILL.md owns the workflows, command map, and rules above; references must not repeat them. The always-current flag source is uip is connectors builder <noun> <verb> --help.
| Task → read this | Reference |
|---|---|
| What a connector is, file layout, the CRUD/curated/HTTP activity model | references/overview.md |
Connector icon (image.svg): how the periodic build judges dark-surface visibility, fixes | references/icon.md |
| element.json internals: top-level fields, resources[], parameters[], value interpolation, hook order | references/element-json.md |
| Standard-resource files: linking, metadata.method, curated, fields (visibility/design/searchable) | references/standard-resources.md |
| configuration[] entries: widget types, screen types, per-auth key sets, pagination + event keys | references/configuration.md |
| Authentication setup: all 19 auth types (incl. JWT Bearer claims, FPS, none) and the OAuth/JWT scope surface | references/auth.md |
| Auth-system resources: auth-validation, onProvision/onDelete, OAuth token overrides | references/system-resources.md |
| When to write a hook vs use a built-in (decision table + good/avoidable patterns), execution order, context vars, done(), naming | references/hooks.md |
| Polling and webhook triggers: config keys, event.poller.configuration schema | references/events.md |
| Debugging auth / activity / hook / trigger / pagination issues (workflow + checklists) | references/debugging.md |
builder inspect first (Rule 1) — you'll invent keys/paths that don't exist.state patch instead of auth set (Rule 3) — leaves the auth block inconsistent.state patch REPLACES the node, dropping omitted fields. Query the whole entry and patch the complete object back.activity create with a name that already exists when you meant a SEPARATE activity — it's an idempotent upsert that MERGES into the same-named activity (appends methods, preserves existing field definitions unless --overwrite-fields); it does not error, so a wrong name silently merges instead of warning.GETBYID for a search/list endpoint (Rule 4) — by-id verbs auto-add the /{id} param; reserve them for true single-record reads.latestVersion or pass --version.--categories values — they must come from the approved enum; validate reports the list.done() so the hook never returns.connector scaffold/inspect/validate wrapper (use init/inspect/validate directly), no global/metadata/config/resource*/event polling add/auth scope/remote*/describe/reference.activity create writes endpoints/methods/auth but NOT the field schema; an activity with no field create / --fields-file shows only a raw JSON body in Studio and trips a validate WARNING. Author fields before finishing, and never treat a 0-error/has-warnings validate as a pass.validate and then disappears on Studio Web's dark surface, and the periodic build fails it. Add a prefers-color-scheme: dark rule or use currentColor.© UiPath, 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 10 other files (references) in skills/uipath-connector-builder of UiPath/skills.
Open the folder on GitHubat commit 0bada1b
Uipath Connector Builder 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 Connector Builder this skillUiPath/skills | 167 | — | ~6.2k | Automated safety check: Notes | MIT | |
| Clerkgeekskai/blog | 103 | 3 repos | ~1.5k | Automated safety check: Pass | MIT | |
| Novu Design Workflownovuhq/novu | 40k | — | ~2.6k | Automated safety check: Pass | Custom licence | |
| Golivemikehasa/golive-skill | 1.3k | — | ~13k | Automated safety check: Notes | MIT | |
| Stripe Appsfossasia/eventyay | 1.7k | 1 repos | ~3.6k | Automated safety check: Pass | Apache-2.0 | |
| Dingtalk Messageagentscope-ai/ReMe | 3.6k | — | ~1.6k | Automated safety check: Pass | Apache-2.0 |
geekskai/blog
Clerk authentication router. An agent skill from geekskai/blog.
novuhq/novu
Design notification workflows the Novu way — choose channels, set severity, decide when a workflow is critical, configure digests, and route based on subscriber state.
mikehasa/golive-skill
Take an agent-written app from repo to live production on the user's OWN accounts, with providers they choose (hosting, database, auth, payments, email, domain/DNS).
fossasia/eventyay
A skill your agent uses when building, modifying, or reviewing a Stripe App — or when the user describes something that implies one (e.g.
agentscope-ai/ReMe
钉钉消息发送技能。支持企业内部机器人(批量单聊/群聊)和 Webhook 自定义机器人两种接入方式,支持多机器人管理,支持文本、Markdown、链接、ActionCard、FeedCard等多种消息类型。
yansongda/pay
A skill your agent uses when reviewing PRs that add or modify a payment Provider in yansongda/pay - covers plugin pipeline, multi-tenant safety, signature verification, docs, and naming conventions.
UiPath/skills
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…
UiPath/skills
Maintain build-time skill flavors in the UiPath skills repository.
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…
UiPath/skills
TRIGGER for authoring, operating or diagnosing UiPath Maestro BPMN.
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…
UiPath/skills
UiPath causal investigation across every product, runtime, and activity package.
Categories
UiPath Integration Service connector authoring (REST+JSON) on disk via uip is connectors builder. Uipath Connector Builder is an agent skill from UiPath/skills. UiPath Integration Service connector authoring (REST+JSON) on disk via uip is connectors builder.
Uipath Connector Builder fits situations like: element-metadata.json; standard-resources/.json; A periodic-uipath-/periodic-design- connector repo; any request to build/edit an IS connector: init the connector shell.
Run `npx skills add UiPath/skills --skill uipath-connector-builder -a claude-code`. Or copy the skill folder (skills/uipath-connector-builder in UiPath/skills) into .claude/skills/uipath-connector-builder in your project. Claude Code loads it when a task matches its description.
Run `npx skills add UiPath/skills --skill uipath-connector-builder -a codex`. Or copy the skill folder (skills/uipath-connector-builder in UiPath/skills) into .agents/skills/uipath-connector-builder 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 UiPath/skills --skill uipath-connector-builder -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-connector-builder, .gemini/skills/uipath-connector-builder, .github/skills/uipath-connector-builder and .opencode/skills/uipath-connector-builder in your project.
SKILL.md names no scripts, command-line tools or credentials: Uipath Connector Builder is instructions for the agent only. Its frontmatter pre-approves these tools: Bash, Read, Write, Edit, Glob, Grep, AskUserQuestion.
SKILL.md names 2 domains. In commands or code: acme.com and api.acme.com; the agent is likely to contact these when it follows the instructions. This is read from the text; nothing was executed.
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.
Uipath Connector Builder is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 6.2k tokens (SKILL.md is roughly 25k 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 24k tokens, read only when the agent opens those files.
Skills that share tags, products or a category with Uipath Connector Builder: Clerk (geekskai/blog, 103 stars), Novu Design Workflow (novuhq/novu, 40k stars), Golive (mikehasa/golive-skill, 1.3k stars) and Stripe Apps (fossasia/eventyay, 1.7k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
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.