Skills Plugins MCP Prompt Model 博客 我的中心

ops-package

Ship parcels via any configured carrier — MyParcel, Sendcloud, DHL Parcel NL, PostNL, DPD, UPS, FedEx. Auto-selects the first carrier whose credentials are configured, or pass --carrier <name> to override. Verbs: ship, label, track, list, carriers.

DeepseekModel 官方收录技能 质量 优秀 · 90 v1.0.0

获取

https://deepseekmodel.com/api/download.php?id=davepoon-buildwithclaude-plugins-claude-ops-skills-ops-package-skill-md&format=skill
下载 .skill 标准格式,含 system_prompt 与 model_config,导入任意 Agent 框架即可使用
.skill 文件中 system_prompt 字段的实际内容。
name ops-package description Ship parcels via any configured carrier — MyParcel, Sendcloud, DHL Parcel NL, PostNL, DPD, UPS, FedEx. Auto-selects the first carrier whose credentials are configured, or pass --carrier <name> to override. Verbs: ship, label, track, list, carriers. OPS ► PACKAGE — multi-carrier shipping One skill, seven carriers. The router picks the carrier automatically based on which credentials are configured. Which carrier do I get? Condition Selected carrier --carrier <name> flag passed That carrier (validated) Exactly one carrier has credentials That carrier Multiple carriers have credentials First match in this order No carrier has credentials Exit 2 with setup help Preference order: myparcel → sendcloud → dhl → postnl → dpd → ups → fedex . Credential resolution Each carrier resolves its credential(s) from, in order: Environment variable(s) listed below. preferences.json key (lowercase of the env var name) at ${CLAUDE_PLUGIN_DATA_DIR:-$HOME/.claude/plugins/data/ops-ops-marketplace}/preferences.json . Doppler: doppler secrets get <NAME> --plain . Carrier Env vars required Docs MyParcel MYPARCEL_API_KEY https://developer.myparcel.nl/api-reference/ Sendcloud SENDCLOUD_PUBLIC_KEY + SENDCLOUD_PRIVATE_KEY https://api.sendcloud.dev/docs/ DHL NL DHL_PARCEL_USER_ID + DHL_PARCEL_KEY https://api-gw.dhlparcel.nl/docs PostNL POSTNL_API_KEY + POSTNL_CUSTOMER_CODE + POSTNL_CUSTOMER_NUMBER https://developer.postnl.nl/ DPD DPD_DELIS_ID + DPD_PASSWORD https://esolutions.dpd.com/ UPS UPS_CLIENT_ID + UPS_CLIENT_SECRET + UPS_SHIPPER_NUMBER https://developer.ups.com/api/reference/shipping FedEx FEDEX_CLIENT_ID + FEDEX_CLIENT_SECRET + FEDEX_ACCOUNT_NUMBER https://developer.fedex.com/api/en-us/catalog/ Routing All API calls are delegated to ${CLAUDE_PLUGIN_ROOT}/skills/ops-package/ops-package.sh . Do not re-implement curl logic inline — pass args through. First token Action carriers Show configured vs unconfigured carriers ship Create a shipment label Download + open label PDF track Show status + tracking barcode list List last 10 shipments (MyParcel / Sendcloud; others unsupported) (empty) Show usage ship Required: --to "<address>" . Address format: "Person / Company, Street 12A, 1011AB Amsterdam, NL" / Company segment is optional. Postcode accepts with/without space; NL postcodes are normalised to uppercase without space. Country defaults to NL; common names (Netherlands, Belgium, Germany, France, UK, USA) map to ISO codes. Flags (not every carrier honours every flag — unsupported flags are safely ignored per adapter): --from "<address>" override sender; default is the account's configured sender. --weight <grams> integer grams. --package-type 1|2|3 1=parcel (default), 2=mailbox, 3=letter (MyParcel only). --signature require signature on delivery. --insurance <EUR> integer EUR; 0 disables (MyParcel only). --description "<text>" label reference (carriers differ; ~45 char max). --pickup request home pickup at sender (MyParcel only). Invocation ${CLAUDE_PLUGIN_ROOT} /skills/ops-package/ops-package.sh \ [--carrier myparcel|sendcloud|dhl|postnl|dpd|ups|fedex] \ ship --to " $TO " [--from " $FROM " ] [--weight " $W " ] \ [--signature] [--insurance " $INS " ] [--description " $DESC " ] \ [--package-type " $TYPE " ] [--pickup] Returns: { "carrier" : "<name>" , "shipment_id" : "<id>" , "response" : { /* raw carrier JSON */ } } Summarise to the user as: Shipment created — <carrier> #<id> Next: /ops:ops-package label <id> to download the PDF. Offer via AskUserQuestion (≤4 options): [Download label now] — call label <id> immediately [Track it] — call track <id> [Ship another] [Done] label <shipment-id> ${CLAUDE_PLUGIN_ROOT} /skills/ops-package/ops-package.sh label " $ID " Behaviour per carrier: MyParcel : PDF saved to /tmp/myparcel_label_<id>.pdf and opened on macOS. If unpaid, returns {"status":"payment_required","payment_url":"..."} and opens the MultiSafepay URL. Sendcloud : Fetches the CDN PDF URL (v2 /labels/<id> ) and saves locally. DHL NL : Fetches /labels/<id>?format=PDF&printerType=A4 . DPD : Fetches /v1/parcellabelnumber/<id>?paperFormat=A4 . PostNL / UPS / FedEx : PDF is returned inline with the ship call and cached to /tmp/<carrier>_label_<id>.pdf . Calling label re-opens that cached file. If the cache is gone, re-run ship (none of these carriers expose a stable label-recovery endpoint here). track <shipment-id> Returns a normalised object across all carriers: { "carrier" : "<n>" , "id" : "<id>" , "status" : "<s>" , "barcode" : "<b>" , "tracking_url" : "<u>" , "recipient" : <o> , "updated" : "<ts>" } list MyParcel returns the last 10 shipments. Sendcloud returns the last 10 parcels. All other carriers return {"shipments":[],"note":"..."} because their APIs don't expose a customer-facing list endpoint — track by id instead. carriers Prints which carriers are configured ( ✓ ) vs which are missing credentials ( · ). Use this when deciding which --carrier to pass. Error handling No carrier configured → script exits 2 with a checklist of envs. Surface it verbatim, then via AskUserQuestion : [Paste key now] [Open carriers doc] [Skip — configure later] On "Paste key now", collect via AskUserQuestion free-text and write to preferences.json . 4xx from carrier → dump the JSON error body and stop. Do not retry silently. Address parser looks wrong → re-prompt the user with the parsed breakdown and ask for corrections before POSTing. Verification status Carrier Status MyParcel Verified against api.myparcel.nl v1.1 (same working reference) Sendcloud Verified request/response shapes against Sendcloud Panel API v3 DHL NL UNVERIFIED — modelled on My DHL Parcel Swagger, needs live account PostNL UNVERIFIED — modelled on Send API v2.2 docs, needs live account DPD UNVERIFIED — modelled on DPD eSolutions REST, needs live account UPS UNVERIFIED — modelled on UPS v2403 Ship/Track REST, needs account FedEx UNVERIFIED — modelled on FedEx Ship v1 + Track v1 REST Unverified adapters are tagged with # UNVERIFIED - pending live test with account in the source. Payloads match the documented contract; adjustments may be needed when tested against live accounts.
Agent 识别该技能的关键词,点击任意一个即可复制。

该技能未提供触发词。

下载的 .skill 包内含以下字段。
字段 说明
format格式标识(skill/v1)
skill_id技能唯一 ID
name技能名称
version版本号
description技能描述
category所属分类(数组)
trigger_words触发词列表
tags标签列表
source来源标识
source_url来源链接(本页地址)
exported_at导出时间(每次下载生成)
system_prompt系统提示词正文
model_config模型参数:provider / model / temperature / max_tokens / top_p
examples示例
install_guide各平台导入说明(Coze / Dify / Claude / 自定义框架)
同一份技能可按不同平台格式导出。
.skill 标准格式,含 system_prompt 与 model_config,导入任意 Agent 框架即可使用 下载
.skillpro 增强格式,额外含脚本 / 工具 / 依赖 / 钩子占位 下载
.json 纯 JSON 导出,只含 system_prompt 与模型参数 下载
Coze 带 frontmatter 的 Markdown,Coze 平台导入用 下载
Dify Dify DSL,创建应用后直接导入 下载

每日精选 Skill 推荐,免费送到你邮箱

输入邮箱,每天接收一个精选 AI Agent 技能推荐。完全免费,持续更新。

提交后我们会发送一封确认邮件,点击邮件里的链接才会开始收信。

完全免费,取消任意时间。我们不会发送垃圾邮件。