@link.me/cli-linux-x64 0.3.1 → 0.4.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/linkme +0 -0
- package/package.json +1 -1
- package/skills/{agents/cli → linkme-cli}/SKILL.md +65 -10
- package/skills/linkme-cli/agents/openai.yaml +4 -0
- package/skills/{agents/claude-code → linkme-cli-claude-code}/SKILL.md +4 -4
- package/skills/linkme-cli-codex/SKILL.md +14 -0
- package/skills/linkme-cli-codex/agents/openai.yaml +4 -0
- package/skills/{agents/cowork → linkme-cli-cowork}/SKILL.md +4 -4
- package/skills/{agents/openclaw → linkme-cli-openclaw}/SKILL.md +3 -3
- package/skills/{email/lists → linkme-email-campaigns}/SKILL.md +4 -2
- package/skills/linkme-email-campaigns/agents/openai.yaml +4 -0
- package/skills/{automations/instagram → linkme-instagram-automations}/SKILL.md +4 -2
- package/skills/linkme-instagram-automations/agents/openai.yaml +4 -0
- package/skills/linkme-manage-commerce/SKILL.md +106 -0
- package/skills/linkme-manage-commerce/agents/openai.yaml +4 -0
- package/skills/linkme-manage-media/SKILL.md +65 -0
- package/skills/linkme-manage-media/agents/openai.yaml +4 -0
- package/skills/linkme-manage-merch/SKILL.md +118 -0
- package/skills/linkme-manage-merch/agents/openai.yaml +4 -0
- package/skills/linkme-polish-profile/SKILL.md +95 -0
- package/skills/linkme-polish-profile/agents/openai.yaml +4 -0
- package/skills/linkme-publish-content/SKILL.md +82 -0
- package/skills/linkme-publish-content/agents/openai.yaml +4 -0
- package/skills/linkme-recover-auth/SKILL.md +78 -0
- package/skills/linkme-recover-auth/agents/openai.yaml +4 -0
- package/skills/linkme-review-analytics/SKILL.md +77 -0
- package/skills/linkme-review-analytics/agents/openai.yaml +4 -0
- package/skills/agents/codex/SKILL.md +0 -14
- package/skills/ap/create-post/SKILL.md +0 -134
- package/skills/commerce/merch/SKILL.md +0 -34
- package/skills/profile/make-it-look-good/SKILL.md +0 -311
package/linkme
CHANGED
|
Binary file
|
package/package.json
CHANGED
|
@@ -1,11 +1,20 @@
|
|
|
1
1
|
---
|
|
2
|
-
name:
|
|
3
|
-
description:
|
|
2
|
+
name: linkme-cli
|
|
3
|
+
description: Set up and operate the local `linkme` CLI. Use when MCP tools are unavailable, the binary must be installed, local authentication is needed, a command shape must be discovered, or structured shell output is required.
|
|
4
4
|
---
|
|
5
5
|
|
|
6
6
|
# Linkme CLI
|
|
7
7
|
|
|
8
|
-
|
|
8
|
+
Use this skill for local installation, authentication, output contracts, and command discovery. The client-specific `linkme-cli-*` skills add only sandbox-specific notes.
|
|
9
|
+
|
|
10
|
+
Route domain work to the focused skill when available:
|
|
11
|
+
|
|
12
|
+
- profile presentation: `$linkme-polish-profile`
|
|
13
|
+
- social publishing: `$linkme-publish-content`
|
|
14
|
+
- media and attachments: `$linkme-manage-media`
|
|
15
|
+
- traffic reporting: `$linkme-review-analytics`
|
|
16
|
+
- products and orders: `$linkme-manage-commerce`
|
|
17
|
+
- login or connector recovery: `$linkme-recover-auth`
|
|
9
18
|
|
|
10
19
|
## Install
|
|
11
20
|
|
|
@@ -65,7 +74,37 @@ Rules of thumb:
|
|
|
65
74
|
- Use `--json` whenever the output will be parsed, filtered, or fed into another step (`| jq ...`).
|
|
66
75
|
- Use `--quiet` when you only need one id, count, or status value.
|
|
67
76
|
- Use human output for the final summary shown to the user.
|
|
68
|
-
-
|
|
77
|
+
- Start discovery with `linkme agent schema --areas --json`, then narrow with
|
|
78
|
+
`linkme agent schema "<area or command>" --json`; do not guess a command
|
|
79
|
+
shape or scrape formatted help.
|
|
80
|
+
|
|
81
|
+
## Structured Agent API
|
|
82
|
+
|
|
83
|
+
Prefer a direct typed command with `--json` for a simple call. When an agent
|
|
84
|
+
control loop wants a single request/response boundary, send a strict request to
|
|
85
|
+
stdin:
|
|
86
|
+
|
|
87
|
+
```bash
|
|
88
|
+
linkme agent schema --areas --json
|
|
89
|
+
linkme agent schema "analytics overview" --json
|
|
90
|
+
|
|
91
|
+
printf '%s' \
|
|
92
|
+
'{"id":"step-1","command":"analytics overview","inputs":{"from":"2026-07-01","to":"2026-07-31"}}' \
|
|
93
|
+
| linkme agent exec --json
|
|
94
|
+
```
|
|
95
|
+
|
|
96
|
+
The response always includes `contractVersion`, `ok`, `command`, and
|
|
97
|
+
`exitCode`, then either `data` or `error`. `agent exec` validates unknown
|
|
98
|
+
fields, never evaluates a shell command, never prompts, and preserves the
|
|
99
|
+
underlying CLI exit code. A command whose schema reports
|
|
100
|
+
`safety.approvalRequired: true` is rejected before execution unless the request
|
|
101
|
+
includes `"approval":{"destructive":true}`. Add that approval only after the
|
|
102
|
+
user approves the exact destructive call; also include the command's `force`
|
|
103
|
+
input when its command schema requires one.
|
|
104
|
+
|
|
105
|
+
Default schema discovery omits internal commands, the advanced raw API escape
|
|
106
|
+
hatch, and product areas outside the current agent scope. Use `--all` only when
|
|
107
|
+
the user explicitly needs one of those existing surfaces.
|
|
69
108
|
|
|
70
109
|
## Areas
|
|
71
110
|
|
|
@@ -73,25 +112,27 @@ The authoritative command surface is always `linkme --help`. The table below is
|
|
|
73
112
|
|
|
74
113
|
| Area | Covers |
|
|
75
114
|
|------|--------|
|
|
115
|
+
| `agent` | Versioned command schemas and strict JSON execution |
|
|
76
116
|
| `auth` | Login (browser or manual), resume, logout, sessions, profile switching |
|
|
77
117
|
| `ap` | Post on All Platforms: `accounts`, `connect`/`disconnect`, `upload`, `limits`, `analytics` |
|
|
78
118
|
| `ap post` | `create`, `list`, `calendar`, `status`, `watch`, `insights`, `comments`, `publish`, `cancel`, `retry`, `reschedule` |
|
|
79
|
-
| `profile` | View/edit profile, `theme`, `sections`, `contact`, `forms`, `events`, `bands-in-town`, `video`, `pixels`, `linkme-icon`, `deeplink`, `add-to-contacts` |
|
|
119
|
+
| `profile` | View/edit profile, `theme`, `sections`, `contact`, `forms`, `events`, `bands-in-town`, `video`, `pixels`, `linkme-icon`, `link-style`, `deeplink`, `add-to-contacts`, `age-gate`, `vcard` |
|
|
80
120
|
| `links` | Custom + platform links: `list`, `add`, `edit`, `delete`, `reorder`, `set <platform> <url>` / `unset <platform>`, `schedule` |
|
|
81
121
|
| `featured` | Featured links, `headers`, `multilinks` |
|
|
82
122
|
| `gallery` | Upload, list, delete, reorder gallery media |
|
|
83
123
|
| `automations` | Instagram automations: connection, authorize, config, posts, create/update/publish, metrics/analytics/monitor |
|
|
84
|
-
| `courses` |
|
|
124
|
+
| `courses` | Browse `catalog`, use enrolled `learning`, author courses, and upload local `assets` or lesson `videos` |
|
|
85
125
|
| `contacts` | Collected contacts and stats |
|
|
86
126
|
| `search` | Search Linkme users by username or name |
|
|
87
127
|
| `username` | Check username validity/availability |
|
|
88
128
|
| `waitlist` | Check/join gated feature waitlists |
|
|
89
129
|
| `email` | Templates, sending domains, send/test, history, detail, cancel, upload-image |
|
|
90
|
-
| `analytics` | Overview, visits, links, geo, realtime |
|
|
91
|
-
| `commerce` |
|
|
130
|
+
| `analytics` | Overview, visits, links, geo, realtime, audience demographics, and local-only JSON export |
|
|
131
|
+
| `commerce` | Seller digital products/orders, buyer `purchases`, and print-on-demand `merch` catalog, authoring, AI, mockups, and orders |
|
|
132
|
+
| `creator-finance` | Tips, wallet, payouts, referrals, ambassador status, and billing |
|
|
133
|
+
| `ads` | Permission-scoped campaign/creative reads plus approval-gated ads-admin mutations |
|
|
92
134
|
| `shop` | Physical/storefront products and categories |
|
|
93
|
-
| `
|
|
94
|
-
| `feeds` | Subscribe to and poll provider feeds |
|
|
135
|
+
| `feeds` | Subscribe to connected provider feeds or a public YouTube channel, then list, poll, or unsubscribe |
|
|
95
136
|
| `reviews` | Subscribe to and inspect review sources |
|
|
96
137
|
| `upgrade` | Generate Linkme Pro upgrade links |
|
|
97
138
|
| `config` | Show/set/reset CLI configuration and profiles |
|
|
@@ -100,6 +141,19 @@ The authoritative command surface is always `linkme --help`. The table below is
|
|
|
100
141
|
|
|
101
142
|
Note: there is no top-level `social` area. Social network links live under `links` (`links set <platform> <url>`, `links unset <platform>`, and `links list` shows both custom and platform links).
|
|
102
143
|
|
|
144
|
+
Chat, shouts, notifications, and agency management are outside the current
|
|
145
|
+
agent product scope. Do not infer a content API from a generic profile section
|
|
146
|
+
key. Existing agency CLI commands are compatibility-only and appear in
|
|
147
|
+
`agent schema --all`, not default discovery.
|
|
148
|
+
|
|
149
|
+
Local-only boundaries:
|
|
150
|
+
|
|
151
|
+
- Use the local CLI or local stdio MCP for `analytics export`,
|
|
152
|
+
`courses assets upload`, `courses videos upload`, and file-backed
|
|
153
|
+
`commerce products create`.
|
|
154
|
+
- On hosted MCP, call `linkme_capabilities` and use only file sources declared
|
|
155
|
+
by the selected tool. Do not pass a local or sandbox path.
|
|
156
|
+
|
|
103
157
|
## Discovery Pattern
|
|
104
158
|
|
|
105
159
|
```bash
|
|
@@ -115,4 +169,5 @@ Start broad, then drill into the specific area for the task at hand rather than
|
|
|
115
169
|
- **Read before you write.** For profile-improvement tasks, inspect current state first: `profile`, `links list`, `featured list`, `gallery list`, `profile sections`, `profile theme`, `profile forms`.
|
|
116
170
|
- **Publishing flow.** Connect accounts (`ap connect <provider>`) → create the post (`ap post create`) → confirm with `ap post status <id>` or stream with `ap post watch <id>`.
|
|
117
171
|
- **Reporting flow.** Request `--json`, extract fields with `jq`, and summarize the numbers for the user in human language.
|
|
172
|
+
- **Financial and ads flow.** Inspect state and units first. Require user approval before a billing, payout, credit-consuming, download-allowance, or ad mutation.
|
|
118
173
|
- **Re-read after high-impact writes** (deletes, publishes, schedule changes) to confirm the change landed.
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
---
|
|
2
|
-
name:
|
|
3
|
-
description:
|
|
2
|
+
name: linkme-cli-claude-code
|
|
3
|
+
description: Configure Linkme access in Claude Code. Use when choosing the bundled MCP server versus local CLI, installing the Claude plugin, handling sandbox file limits, authenticating, or selecting structured output.
|
|
4
4
|
---
|
|
5
5
|
|
|
6
6
|
# Linkme CLI for Claude Code
|
|
7
7
|
|
|
8
|
-
See the canonical **`
|
|
8
|
+
See the canonical **`linkme-cli`** skill for install, authentication, output contracts (`--json`/`--quiet`/human), and command discovery. This file only covers what's specific to Claude Code.
|
|
9
9
|
|
|
10
10
|
## Claude Code Specifics
|
|
11
11
|
|
|
12
12
|
- This repo ships a Claude Code plugin (`.claude-plugin/plugin.json` + `.claude-plugin/marketplace.json`) that bundles this whole `skills/` tree and an MCP server (`@link.me/mcp`, binary `linkme-mcp`). If the plugin/MCP server is already installed and enabled, prefer its MCP tools over shelling out to `linkme` — they cover the same commands with structured input/output and no subprocess overhead.
|
|
13
|
-
- If the MCP server is not available, fall back to installing and shelling out to the CLI as described in `
|
|
13
|
+
- If the MCP server is not available, fall back to installing and shelling out to the CLI as described in `linkme-cli`.
|
|
14
14
|
- Use the `Bash` tool for CLI invocations and prefer `--json` output when you intend to parse the result programmatically in the same turn.
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: linkme-cli-codex
|
|
3
|
+
description: Configure Linkme access in Codex. Use when choosing the bundled MCP server versus local CLI, handling local paths or unsupported remote tools, authenticating, or selecting structured output.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Linkme CLI for Codex
|
|
7
|
+
|
|
8
|
+
See the canonical **`linkme-cli`** skill for install, authentication, output contracts (`--json`/`--quiet`/human), and command discovery. This file only covers what's specific to Codex.
|
|
9
|
+
|
|
10
|
+
## Codex Specifics
|
|
11
|
+
|
|
12
|
+
- Prefer the Linkme MCP tools when the plugin connection is available; they provide structured schemas without shell parsing.
|
|
13
|
+
- Fall back to the local CLI when the task needs a local path, a command is unavailable remotely, or the MCP capability tool says the upload is unsupported.
|
|
14
|
+
- Prefer non-interactive CLI flags: use `linkme auth login --manual` plus `linkme auth resume`, and request `--json` for programmatic reads.
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
---
|
|
2
|
-
name:
|
|
3
|
-
description:
|
|
2
|
+
name: linkme-cli-cowork
|
|
3
|
+
description: Configure Linkme access in Cowork. Use when choosing the bundled MCP server versus local CLI, installing without root, handling ephemeral paths, authenticating, or verifying a remote mutation.
|
|
4
4
|
---
|
|
5
5
|
|
|
6
6
|
# Linkme CLI for Cowork
|
|
7
7
|
|
|
8
|
-
See the canonical **`
|
|
8
|
+
See the canonical **`linkme-cli`** skill for install, authentication, output contracts (`--json`/`--quiet`/human), and command discovery. This file only covers what's specific to Cowork.
|
|
9
9
|
|
|
10
10
|
## Cowork Specifics
|
|
11
11
|
|
|
12
|
-
- Cowork sandboxes usually do not have root, so always install to a local prefix (`npm config set prefix /tmp/npm-global`) as described in `
|
|
12
|
+
- Cowork sandboxes usually do not have root, so always install to a local prefix (`npm config set prefix /tmp/npm-global`) as described in `linkme-cli`. The executable is `linkme`, not `link.me`.
|
|
13
13
|
- Cowork sessions may not persist `PATH` changes across separate task invocations — call `/tmp/npm-global/bin/linkme` directly if a fresh task can't find `linkme` on `PATH`.
|
|
14
14
|
- For publishing workflows, always verify the final state with `linkme ap post status <id>` or `linkme ap post watch <id>` before reporting success to the user.
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
---
|
|
2
|
-
name:
|
|
3
|
-
description:
|
|
2
|
+
name: linkme-cli-openclaw
|
|
3
|
+
description: Configure Linkme access in OpenClaw. Use when installing or locating the local CLI, completing manual browser authentication, selecting structured output, or verifying a state-changing Linkme command.
|
|
4
4
|
---
|
|
5
5
|
|
|
6
6
|
# Linkme CLI for OpenClaw
|
|
7
7
|
|
|
8
|
-
See the canonical **`
|
|
8
|
+
See the canonical **`linkme-cli`** skill for install, authentication, output contracts (`--json`/`--quiet`/human), and command discovery. This file only covers what's specific to OpenClaw.
|
|
9
9
|
|
|
10
10
|
## OpenClaw Specifics
|
|
11
11
|
|
|
@@ -1,12 +1,14 @@
|
|
|
1
1
|
---
|
|
2
|
-
name:
|
|
3
|
-
description:
|
|
2
|
+
name: linkme-email-campaigns
|
|
3
|
+
description: Create and send Linkme email campaigns backed by collected contacts. Use for audience inspection, templates, image assets, test sends, scheduling, delivery history, or campaign cancellation.
|
|
4
4
|
---
|
|
5
5
|
|
|
6
6
|
# Email Lists And Campaigns
|
|
7
7
|
|
|
8
8
|
Use `linkme email` for templates, assets, test sends, and campaign delivery. Use `linkme contacts` to inspect the audience behind campaigns.
|
|
9
9
|
|
|
10
|
+
Prefer connected Linkme MCP tools. Their names mirror CLI paths with underscores; use the shell commands below as fallback and discovery examples.
|
|
11
|
+
|
|
10
12
|
## Quick checks
|
|
11
13
|
|
|
12
14
|
- `linkme whoami`
|
|
@@ -1,12 +1,14 @@
|
|
|
1
1
|
---
|
|
2
|
-
name:
|
|
3
|
-
description:
|
|
2
|
+
name: linkme-instagram-automations
|
|
3
|
+
description: Create, inspect, publish, and monitor Linkme Instagram comment and DM automations. Use for Instagram connection, keyword triggers, replies, DMs, activation, metrics, or automation troubleshooting.
|
|
4
4
|
---
|
|
5
5
|
|
|
6
6
|
# Instagram Automations
|
|
7
7
|
|
|
8
8
|
Use `linkme automations` for Instagram comment and DM automations.
|
|
9
9
|
|
|
10
|
+
Prefer connected Linkme MCP tools. Their names mirror CLI paths with underscores; use the shell commands below as fallback and discovery examples.
|
|
11
|
+
|
|
10
12
|
## Quick checks
|
|
11
13
|
|
|
12
14
|
- `linkme whoami`
|
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: linkme-manage-commerce
|
|
3
|
+
description: Manage Linkme digital products, storefront products, buyer purchases, and seller orders. Use when creating, editing, pricing, publishing, organizing, inspecting, downloading, or deleting something sold from Linkme outside the print-on-demand merch workflow.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Manage Commerce
|
|
7
|
+
|
|
8
|
+
Route the request to the correct catalog before changing anything.
|
|
9
|
+
|
|
10
|
+
Prefer connected Linkme MCP tools. Their names mirror CLI paths with underscores; use the shell commands below as fallback and discovery examples.
|
|
11
|
+
|
|
12
|
+
## Choose the catalog
|
|
13
|
+
|
|
14
|
+
- Digital download or pay-to-unlock content: `linkme commerce products`
|
|
15
|
+
- Seller-side digital sales orders: `linkme commerce products orders`
|
|
16
|
+
- PII-safe seller revenue across digital and physical products:
|
|
17
|
+
`linkme commerce sales summary`
|
|
18
|
+
- Buyer-side purchases, downloads, or unlocks: `linkme commerce purchases`
|
|
19
|
+
- Physical or print-on-demand storefront item: `linkme shop products`
|
|
20
|
+
- Storefront organization: `linkme shop categories`
|
|
21
|
+
- Print-on-demand catalog, templates, AI designs, or mockups:
|
|
22
|
+
`$linkme-manage-merch`
|
|
23
|
+
|
|
24
|
+
Do not represent a merch template as a live storefront product. Do not use `shop` for digital delivery.
|
|
25
|
+
|
|
26
|
+
## Inspect first
|
|
27
|
+
|
|
28
|
+
```bash
|
|
29
|
+
linkme commerce products list --json
|
|
30
|
+
linkme commerce products orders --json
|
|
31
|
+
linkme commerce sales summary --json
|
|
32
|
+
linkme commerce purchases list --json
|
|
33
|
+
linkme shop products list --json
|
|
34
|
+
linkme shop categories list --json
|
|
35
|
+
```
|
|
36
|
+
|
|
37
|
+
Run only the reads relevant to the request. Preserve ids from structured output.
|
|
38
|
+
|
|
39
|
+
## Create and edit
|
|
40
|
+
|
|
41
|
+
Create a digital product as a draft:
|
|
42
|
+
|
|
43
|
+
```bash
|
|
44
|
+
linkme commerce products create \
|
|
45
|
+
--name "Creator eBook" \
|
|
46
|
+
--description "A practical launch guide" \
|
|
47
|
+
--price 19.99 \
|
|
48
|
+
--file ./ebook.pdf
|
|
49
|
+
```
|
|
50
|
+
|
|
51
|
+
Publish only after the user has approved the title, description, price, file, and thumbnail:
|
|
52
|
+
|
|
53
|
+
```bash
|
|
54
|
+
linkme commerce products edit <product-id> --publish
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
Create a storefront product:
|
|
58
|
+
|
|
59
|
+
```bash
|
|
60
|
+
linkme shop products add \
|
|
61
|
+
--name "Tour Poster" \
|
|
62
|
+
--price 25 \
|
|
63
|
+
--category "Prints" \
|
|
64
|
+
--link https://example.com/poster \
|
|
65
|
+
--image ./poster.jpg
|
|
66
|
+
```
|
|
67
|
+
|
|
68
|
+
Use `$linkme-manage-media` whenever a product needs a file, thumbnail, or image. Hosted MCP may omit file-backed product creation; check `linkme_capabilities` and use the local CLI when required.
|
|
69
|
+
|
|
70
|
+
`commerce products create` is available only through the local CLI or local
|
|
71
|
+
stdio MCP because it reads a local product file. Hosted MCP can use only file
|
|
72
|
+
objects explicitly declared by an available tool; never pass it a local or
|
|
73
|
+
sandbox path.
|
|
74
|
+
|
|
75
|
+
## Purchased content
|
|
76
|
+
|
|
77
|
+
Inspect an order before requesting access:
|
|
78
|
+
|
|
79
|
+
```bash
|
|
80
|
+
linkme commerce purchases show <order-id> --json
|
|
81
|
+
```
|
|
82
|
+
|
|
83
|
+
Create a download or unlock URL only when the user asks to access that
|
|
84
|
+
purchase:
|
|
85
|
+
|
|
86
|
+
```bash
|
|
87
|
+
linkme commerce purchases download <product-id> <order-id> --json
|
|
88
|
+
linkme commerce purchases unlock <product-id> <order-id> --json
|
|
89
|
+
```
|
|
90
|
+
|
|
91
|
+
These calls record access, downloads may consume an allowance, and their URLs
|
|
92
|
+
are short-lived and private. Do not fetch, print, or share the URL beyond the
|
|
93
|
+
requested handoff.
|
|
94
|
+
|
|
95
|
+
## Verify and protect
|
|
96
|
+
|
|
97
|
+
- Re-read the product or catalog after create, edit, reorder, publish, draft, or delete.
|
|
98
|
+
- Confirm currency and price rather than inferring them from prose.
|
|
99
|
+
- Treat publish and delete as high-impact changes.
|
|
100
|
+
- Treat purchase download and unlock calls as side effects, not harmless reads.
|
|
101
|
+
- Never invent fulfillment URLs, inventory details, customer information, or product files.
|
|
102
|
+
- Summarize orders without exposing unnecessary buyer personal data.
|
|
103
|
+
- Prefer `commerce sales summary` for revenue questions because its DTO omits
|
|
104
|
+
buyer details and keeps currencies separate. It aggregates unpaginated order
|
|
105
|
+
feeds locally; do not describe it as conversion attribution or a server-side
|
|
106
|
+
analytics export.
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: linkme-manage-media
|
|
3
|
+
description: Upload and reuse media safely across Linkme profiles, galleries, AP posts, email, courses, and products. Use when a task includes an image, video, document, local path, attachment, hosted file, or Linkme object reference.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Manage Media
|
|
7
|
+
|
|
8
|
+
Choose the transfer path before invoking a media command. Local CLI and hosted MCP have different access to files.
|
|
9
|
+
|
|
10
|
+
Prefer connected Linkme MCP tools when their schema supports the asset source. Use the local CLI for same-machine paths and capabilities that the hosted server intentionally omits.
|
|
11
|
+
|
|
12
|
+
## Determine the runtime
|
|
13
|
+
|
|
14
|
+
For hosted MCP, call `linkme_capabilities` first and follow its declared file sources, size limit, and video-upload support. Never assume the server can read the agent's local or sandbox path.
|
|
15
|
+
|
|
16
|
+
For the local CLI, pass a readable local path to the relevant command. Discover accepted types and flags with the command's `--help`.
|
|
17
|
+
|
|
18
|
+
## Route the asset
|
|
19
|
+
|
|
20
|
+
| Goal | Local CLI |
|
|
21
|
+
|---|---|
|
|
22
|
+
| Reusable AP video | `linkme ap upload <file>` |
|
|
23
|
+
| Create AP post | `linkme ap post create --video <file-or-ap-key> ...` |
|
|
24
|
+
| Gallery image | `linkme gallery upload <file>` |
|
|
25
|
+
| Profile image | `linkme profile edit --image <file>` |
|
|
26
|
+
| Profile video | `linkme profile video set --file <file>` |
|
|
27
|
+
| Email image | `linkme email upload-image <file>` |
|
|
28
|
+
| Digital product file | `linkme commerce products create --file <file> ...` |
|
|
29
|
+
| Product thumbnail | `linkme commerce products create --thumbnail <file> ...` |
|
|
30
|
+
| Shop product image | `linkme shop products add --image <file> ...` |
|
|
31
|
+
| Course cover | `linkme courses assets upload --kind cover --file <file> --json` |
|
|
32
|
+
| Course attachment | `linkme courses assets upload --kind attachment --file <file> --json` |
|
|
33
|
+
| Course lesson video | `linkme courses videos upload --file <mp4> --json` |
|
|
34
|
+
| AI merch model image | `linkme commerce merch mockups generate <template-id> --model-image <file>` |
|
|
35
|
+
|
|
36
|
+
Prefer a reusable Linkme or AP object reference when the same asset will be used more than once.
|
|
37
|
+
|
|
38
|
+
## Hosted MCP rules
|
|
39
|
+
|
|
40
|
+
- Supply an attachment only through the strict file field exposed by the tool schema.
|
|
41
|
+
- Supply an HTTPS URL only when that tool exposes a URL companion field.
|
|
42
|
+
- Supply an existing Linkme object key only when that tool exposes a reference field.
|
|
43
|
+
- Provide exactly one source for a media input.
|
|
44
|
+
- Treat local paths, `file:` URLs, `data:` URLs, and arbitrary public URLs as unsupported unless capabilities and the tool schema explicitly allow them.
|
|
45
|
+
- For hosted video workflows with proxy uploads disabled, ask for an existing Linkme/AP reference or switch to the local CLI.
|
|
46
|
+
- Course cover, attachment, and lesson-video upload commands are local-only. Do not offer them through hosted MCP.
|
|
47
|
+
- File-backed digital-product creation is local-only. AI merch mockup generation is hosted-capable only through its declared JPEG, PNG, or WebP file field and 8 MiB limit.
|
|
48
|
+
|
|
49
|
+
## Validate and verify
|
|
50
|
+
|
|
51
|
+
Before upload:
|
|
52
|
+
|
|
53
|
+
- confirm the asset belongs to the user and matches the requested destination
|
|
54
|
+
- keep the original filename and MIME type when the host provides them
|
|
55
|
+
- avoid unnecessary re-encoding or quality loss
|
|
56
|
+
- check command help rather than guessing format or size limits
|
|
57
|
+
|
|
58
|
+
After upload, retain the returned id, key, or URL and re-read the destination. Do not report success until the resulting gallery item, profile field, post, template, or product points to the expected asset.
|
|
59
|
+
|
|
60
|
+
## Guardrails
|
|
61
|
+
|
|
62
|
+
- Never turn a sandbox path into a hosted-MCP argument.
|
|
63
|
+
- Never bypass an unsupported video upload by sending an arbitrary URL.
|
|
64
|
+
- Never log attachment download URLs, access tokens, or signed upload URLs.
|
|
65
|
+
- Do not delete or replace existing media without inspecting it and confirming the intended target.
|
|
@@ -0,0 +1,118 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: linkme-manage-merch
|
|
3
|
+
description: Build and manage Linkme print-on-demand merch. Use when browsing the base catalog, opening Design Maker, saving or publishing templates, setting prices, organizing categories, inspecting orders, or generating credit-backed AI designs and mockups.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Manage Merch
|
|
7
|
+
|
|
8
|
+
Use `linkme commerce merch` for Printful-backed catalog discovery, creator
|
|
9
|
+
templates, categories, orders, AI designs, and mockups.
|
|
10
|
+
|
|
11
|
+
Prefer connected Linkme MCP tools. Their names mirror CLI paths with underscores; use the shell commands below as fallback and discovery examples.
|
|
12
|
+
|
|
13
|
+
Do not use this skill for digital downloads (`$linkme-manage-commerce`) or for
|
|
14
|
+
ordinary physical storefront links (`linkme shop`).
|
|
15
|
+
|
|
16
|
+
## Browse before authoring
|
|
17
|
+
|
|
18
|
+
Inspect the base product, variants, stock, sizing, and current creator catalog
|
|
19
|
+
before creating or repricing anything:
|
|
20
|
+
|
|
21
|
+
```bash
|
|
22
|
+
linkme commerce merch catalog categories --json
|
|
23
|
+
linkme commerce merch catalog products <category-id> --json
|
|
24
|
+
linkme commerce merch catalog show <product-id> --json
|
|
25
|
+
linkme commerce merch catalog sizes <product-id> --json
|
|
26
|
+
linkme commerce merch list --json
|
|
27
|
+
linkme commerce merch show <external-product-id> --json
|
|
28
|
+
linkme commerce merch pricing <external-product-id> --json
|
|
29
|
+
linkme commerce merch orders --json
|
|
30
|
+
```
|
|
31
|
+
|
|
32
|
+
## Design Maker and publication
|
|
33
|
+
|
|
34
|
+
For a new base product, create a short-lived Design Maker handoff:
|
|
35
|
+
|
|
36
|
+
```bash
|
|
37
|
+
linkme commerce merch nonce <external-product-id> \
|
|
38
|
+
--product-id <catalog-product-id> \
|
|
39
|
+
--json
|
|
40
|
+
```
|
|
41
|
+
|
|
42
|
+
For an existing creator template, use `nonce <external-product-id> --edit`.
|
|
43
|
+
The returned URL requires user interaction. After the user completes Design
|
|
44
|
+
Maker and supplies the resulting template id, save it:
|
|
45
|
+
|
|
46
|
+
```bash
|
|
47
|
+
linkme commerce merch save <external-product-id> <template-id> \
|
|
48
|
+
--description "Soft heavyweight tee" \
|
|
49
|
+
--json
|
|
50
|
+
```
|
|
51
|
+
|
|
52
|
+
Review the exact title, USD price, description, and draft/public state with the
|
|
53
|
+
user before publication:
|
|
54
|
+
|
|
55
|
+
```bash
|
|
56
|
+
linkme commerce merch publish <external-product-id> \
|
|
57
|
+
--name "Creator Tee" \
|
|
58
|
+
--price 29.00 \
|
|
59
|
+
--description "Heavyweight cotton tee" \
|
|
60
|
+
--draft \
|
|
61
|
+
--json
|
|
62
|
+
```
|
|
63
|
+
|
|
64
|
+
Omit `--draft` only after explicit approval to publish. Re-read `show` and
|
|
65
|
+
`pricing` afterward. Retiring a template is destructive; inspect it first and
|
|
66
|
+
use `retire <template-id> --force` only after explicit approval.
|
|
67
|
+
|
|
68
|
+
## Categories and ordering
|
|
69
|
+
|
|
70
|
+
Use `categories`, `category-edit`, `category-reorder`, `assign`, and `reorder`
|
|
71
|
+
to organize existing templates. Read the current order first. Category deletion
|
|
72
|
+
prompts unless `--force` is provided; never bypass that prompt without the
|
|
73
|
+
user's approval.
|
|
74
|
+
|
|
75
|
+
## AI designs
|
|
76
|
+
|
|
77
|
+
Check credits and existing designs before starting a job:
|
|
78
|
+
|
|
79
|
+
```bash
|
|
80
|
+
linkme commerce merch ai credits --json
|
|
81
|
+
linkme commerce merch ai designs --json
|
|
82
|
+
```
|
|
83
|
+
|
|
84
|
+
`ai generate`, `ai edit`, and `ai upscale` consume credits and run
|
|
85
|
+
asynchronously. Confirm the prompt/source, expected operation, and user
|
|
86
|
+
approval before starting one. Keep the returned job id, poll its matching
|
|
87
|
+
status command, and do not claim success until the job reports completion.
|
|
88
|
+
Treat source URLs and durable generated-image URLs as private user data.
|
|
89
|
+
|
|
90
|
+
## Mockups and media boundaries
|
|
91
|
+
|
|
92
|
+
Inspect the current images before generating or selecting replacements:
|
|
93
|
+
|
|
94
|
+
```bash
|
|
95
|
+
linkme commerce merch mockups list <template-id> --json
|
|
96
|
+
linkme commerce merch mockups ai-list <template-id> --json
|
|
97
|
+
```
|
|
98
|
+
|
|
99
|
+
A local CLI or local stdio MCP can use a local image:
|
|
100
|
+
|
|
101
|
+
```bash
|
|
102
|
+
linkme commerce merch mockups generate <template-id> \
|
|
103
|
+
--model-image ./model.webp \
|
|
104
|
+
--json
|
|
105
|
+
```
|
|
106
|
+
|
|
107
|
+
Hosted MCP accepts a declared JPEG, PNG, or WebP attachment up to 8 MiB for
|
|
108
|
+
this tool. It cannot read a local or sandbox path. Call `linkme_capabilities`
|
|
109
|
+
before choosing the source. Generation consumes credits and is asynchronous;
|
|
110
|
+
require approval, preserve the job id, poll `mockups status <job-id>`, and
|
|
111
|
+
verify the selected mockups with `mockups list`.
|
|
112
|
+
|
|
113
|
+
## Guardrails
|
|
114
|
+
|
|
115
|
+
- Confirm IDs, variant availability, USD pricing, and current publication state.
|
|
116
|
+
- Do not expose buyer details from merch orders beyond what the task requires.
|
|
117
|
+
- Treat handoff URLs and generated media URLs as short-lived or private.
|
|
118
|
+
- Re-read after save, publish, retire, category, ordering, or mockup mutations.
|