Connect to sku
Open-source e-commerce agent skills for the SKU.io API — authored once, generated for Claude, OpenAI, and Gemini.
npx -y skills add skuio/sku-skills --skill connect-to-skuAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
2 things to look at
- 27 days oldThe repository was created 27 days ago. New is not bad, but a brand new repository carrying a familiar-sounding name is the shape a typosquat arrives in, and there has been no time for anyone else to find a problem with it.
- 1 stars1 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
The entry point for any SKU.io task. Establish an authenticated connection: point at the correct tenant base URL, send a Personal Access Token as a Bearer token, verify it works with a cheap identity call, and inspect the token's scopes so you know what you are allowed to do. Use this first whenever you are about to call the SKU.io API.
The file declares its own license as MIT. 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
4.0 KB, 957 tokens by cl100k_base, as published. Nobody here has run it
Connect to SKU.io
Use this skill to get connected before running any other SKU.io skill. It answers three questions: what URL do I call, how do I authenticate, and what am I allowed to do?
What you need
- A tenant subdomain. Your account URL is
https://{tenant}.sku.io— the{tenant}is your company's subdomain (e.g.acme). Every API path lives under/api. - A Personal Access Token (PAT). Mint one in the web app under
Settings → Developer → Personal Access Tokens. Grant it only the scopes your task needs
(
{resource}:read/{resource}:write). The token value is shown once — store it as a secret, e.g.SKU_PAT.
There is no separate API key or OAuth handshake for first-party access — the PAT is your credential.
Steps
-
Set your base URL and token.
export SKU_TENANT="acme" export SKU_PAT="sku_pat_xxxxxxxx" -
Verify the token with a cheap identity call. A
200with your user/account means the token is valid and reachable:curl -sS "https://$SKU_TENANT.sku.io/api/auth/profile" \ -H "Authorization: Bearer $SKU_PAT" \ -H "Accept: application/json"401→ the token is missing, wrong, or expired.404on every path → the{tenant}subdomain is wrong.
-
Confirm scopes. List the account's tokens to see which scopes each holds, so you can tell whether the current token can perform your intended task:
curl -sS "https://$SKU_TENANT.sku.io/api/personal-access-tokens" \ -H "Authorization: Bearer $SKU_PAT" -H "Accept: application/json"If a later call returns
403with arequired_scopefield, the token lacks that scope — mint a new token that includes it. Scopes are enforced per verb:readforGET,writeforPOST/PUT/PATCH/DELETE.
Then hand off
Once GET /api/auth/profile returns 200, you are connected. Proceed to the domain skill for
your task (e.g. find-product, create-sales-order, adjust-inventory), reusing the same
base URL and Authorization header.
See shared/authentication.md and
shared/api-overview.md for the full picture.
API operations
| Method | Path | What it does |
|---|---|---|
GET | /api/auth/profile | Return the authenticated user and account. Cheapest way to verify a token works. |
GET | /api/personal-access-tokens | List the account's Personal Access Tokens and the scopes granted to each. |
Authentication
Every request authenticates with a SKU.io Personal Access Token sent as a Bearer token:
Authorization: Bearer <YOUR_SKU_PAT>
- Base URL:
https://{tenant}.sku.io(replace{tenant}with your account subdomain) - Required scopes:
settings:read
Mint a token under Settings → Developer → Personal Access Tokens in the SKU.io web app.
See shared/authentication.md for the full flow.
Improve this skill
Did this skill fall short—an unclear step, a wrong endpoint, or something it couldn't finish? Don't just work around it: capture what was off and open a pull request so the next agent does better.
- Repo: https://github.com/skuio/sku-skills
- Edit the canonical skill under
skills/<domain>/<name>/(not this generated file), then runnpm run buildand open a PR. External contributors: fork the repo and PR from the fork. - The full agent workflow is in
AGENTS.md.
Your agent can do this end to end. The library gets better every time someone sends a fix.