Token导航 LogoToken导航TokenDH.com
开发敏感数据unknown未标认证来源可访问许可证需确认审计未展示

knot-prototype-transactions结原型交易

Agent Skill

knot-prototype-transactions 用于补充开发相关能力,适合在 Local Agent 中需要让 Agent 承接开发相关任务时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

总安装

220

周安装

9

下载量

71
Local Agent

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

来源数

2

许可证

unknown

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:knot-prototype-transactions(结原型交易)
来源仓库:https://docs.knotapi.com
仓库路径:knot-prototype-transactions
安装命令:
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。当前暂无明确安装命令,请以来源页面说明为准。

简介

knot-prototype-transactions 用于补充开发相关能力。

  • 适合在 Local Agent 中让 Agent 承接开发相关任务时使用。
  • 可结合来源仓库、安装命令和原始 README 继续核验具体用法。
  • 安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。
  • 适用宿主包括 Local Agent,接入前应确认版本、权限和运行环境要求。

SKILL.md

Prototype with Transaction Data

Generate sample SKU-level transaction data from Knot's development API and use it immediately for prototyping — building UIs, exploring data shapes, or mocking up features. No SDK integration, no webhook setup, no production credentials. Just data.

API Reference

POST /development/accounts/link

Base URL: https://development.knotapi.com

Request body:

{
  "external_user_id": "string (required) — your unique identifier for the user",
  "merchant_id": "integer (required) — unique identifier for the merchant (use 19 for DoorDash)",
  "transactions": {
    "new": "boolean (required) — whether to generate new sample transactions",
    "updated": "boolean (optional, default false) — whether to also update some generated transactions. Requires new: true"
  }
}

Response (200):

{ "message": "Success" }

Errors: 401 with INVALID_API_KEYS means wrong credentials or using production keys against the development URL.

POST /transactions/sync

Base URL: https://development.knotapi.com

Request body:

{
  "merchant_id": "integer (required)",
  "external_user_id": "string (required)",
  "cursor": "string or null — null on first call, then pass next_cursor from previous response",
  "limit": "integer (optional, min 1, max 100, default 5)"
}

Response (200):

{
  "merchant": { "id": 19, "name": "DoorDash" },
  "transactions": [ ...array of transaction objects... ],
  "next_cursor": "string or null — null when no more pages remain",
  "limit": 100
}

Workflow

Step 1: Get Development API Keys

First, check whether the user already has a saved API key from a previous session. Look for a .env file in the working directory (or a parent) containing KNOT_DEV_API_KEY. If found, use it and skip to Step 2.

If no saved key exists, the user needs their development credentials from the Knot Dashboard. Walk them through it:

  1. Go to https://dashboard.knotapi.com/developers/keys
  2. Make sure the Development environment is selected (not Production)
  3. Copy the Client ID (click the copy button)
  4. Click View on the Secret to reveal it, then copy it

Ask the user to provide both values. Once they do, construct the API key:

API Key = base64("CLIENT_ID:SECRET")

Use base64 encoding (e.g., run echo -n "CLIENT_ID:SECRET" | base64 in the terminal) and set the resulting string as the Authorization: Basic <key> header for all subsequent API calls.

Save the key for future sessions: After constructing the base64-encoded API key, save it so the user doesn't need to retrieve their credentials again. Add it to a .env file in the working directory:

KNOT_DEV_API_KEY=<base64-encoded key>

If a .env file already exists, append the line. If .gitignore exists and doesn't already cover .env, add it. Mention to the user that this key is saved locally so they won't need to provide it again next time.

Important: These are development-only credentials. They only work against https://development.knotapi.com. Never use production credentials with this skill.

Step 2: Generate Sample Transactions

Ask the user which merchant(s) they want to generate transaction data for. Present this list:

  • Walmart
  • Amazon
  • DoorDash
  • Uber Eats
  • Instacart
  • Target
  • Costco
  • Gopuff
  • Shop Pay

The user can pick one or multiple. For each selected merchant, call the development account link endpoint. No SDK or webhook setup is required — this endpoint simulates a full merchant account link and transaction generation server-side.

POST https://development.knotapi.com/development/accounts/link
Authorization: Basic <base64(client_id:secret)>
Content-Type: application/json

{
  "external_user_id": "prototype-user-1",
  "merchant_id": <merchant_id>,
  "transactions": {
    "new": true,
    "updated": false
  }
}

This generates ~205 sample transactions per merchant. The external_user_id can be any string — use something descriptive for the prototype session. Use the same external_user_id across merchants if the prototype involves a single user with multiple merchant accounts.

If running this multiple times, use a different external_user_id each time (e.g., prototype-user-2, prototype-user-3) to avoid conflicts with previously generated data.

Merchant ID reference:

MerchantID
Walmart45
Amazon44
DoorDash19
Uber Eats36
Instacart40
Target12
Costco165
Gopuff41
Shop Pay2125

Step 3: Retrieve Transactions

Poll the sync endpoint directly after the link call. No webhook is needed — just query for the data.

For each merchant the user selected, call POST /transactions/sync in a loop with a high limit to pull all generated transactions:

for each merchant_id:
  cursor = null

  loop:
    POST https://development.knotapi.com/transactions/sync
    Authorization: Basic <base64(client_id:secret)>
    Content-Type: application/json

    {
      "merchant_id": <merchant_id>,
      "external_user_id": "prototype-user-1",
      "cursor": cursor,
      "limit": 100
    }

    -> collect response.transactions (along with response.merchant for context)
    -> cursor = response.next_cursor
    -> break if cursor is null

With limit: 100 and ~205 sample transactions per merchant, each merchant takes about 3 pages. Collect all transactions into a single array (or group by merchant, depending on the prototype).

If the response returns 0 transactions, the data may not be ready yet. Retry the request. Development transaction generation typically completes within a few seconds.

Step 4: Use the Data

Once transactions are retrieved, ask the user how they want to use the data:

Option A: Prototype in this session

Keep the transaction data in memory and start building immediately. Use real field values from the retrieved data to make the prototype feel realistic.

Option B: Export to a Markdown file

Save the transaction data to a structured .md file that can be referenced later or shared with others. Write the file with this structure:

# Knot Transaction Data — Prototype

Generated: {date}
Merchant: {merchant_name} (ID: {merchant_id})
External User ID: {external_user_id}
Transaction Count: {count}

## Summary

- Total transactions: {count}
- Date range: {earliest_date} to {latest_date}
- Order statuses: {list of unique statuses with counts}
- Total spend: {sum of price.total values}

## Transactions

### {transaction.id}

- **Date:** {datetime}
- **Status:** {order_status}
- **Total:** {price.total} {price.currency}
- **Products:**
  - {product.name} (qty: {quantity}) — {product.price.total}
  - ...
- **Payment:** {payment_methods[0].type} ending {last_four}
- **Order URL:** {url}

...repeated for each transaction...

Save the file in the user's working directory (e.g., knot-transactions-prototype.md). This file can then be used as context for future prototyping sessions.

Transaction Object Reference

Each transaction returned by /transactions/sync has this shape:

Top-level fields

FieldTypeNullableDescription
idstring (UUID)NoUnique transaction identifier
external_idstringYesMerchant-provided order identifier
datetimestring (ISO 8601)NoTransaction timestamp in UTC
order_statusenumNoORDERED, BILLED, SHIPPED, DELIVERED, PICKED_UP, COMPLETED, REFUNDED, CANCELLED, FAILED, RETURNED, UNRECOGNIZED
urlstringYesDirect link to order in merchant account
priceobjectNo{sub_total, total, currency, adjustments[]}
productsarrayNoSKU-level items (see below)
payment_methodsarrayNoPayment methods used (see below)
shippingobjectYesDelivery details (see below). Null for digital/in-store orders.

The merchant object ({id, name}) is in the sync response wrapper, not inside each transaction.

shipping

Nullable at the top level. Contains a single location field (also nullable).

shipping.location

FieldTypeNullableDescription
first_namestringYesRecipient's first name
last_namestringYesRecipient's last name
addressobjectYesDelivery address (see below)

shipping.location.address

FieldTypeNullableDescription
line1stringYesFirst line of the address
line2stringYesSecond line of the address
citystringYesCity
regionstringYesState/region (ISO 3166-2 code, e.g. "CA")
postal_codestringYesPostal code
countrystringNoCountry (ISO 3166-1 alpha-2 code, e.g. "US")

products[]

FieldTypeNullableDescription
external_idstringYesMerchant-provided product identifier
namestringNoProduct name
descriptionstringYesAdditional product details
urlstringYesLink to product page
image_urlstringYesLink to product image
quantityintegerYesNumber of units
eligibilityarray of stringsNoSpecial spending categories (e.g. "FSA/HSA")
priceobjectYes{sub_total, total, unit_price} — all nullable strings
sellerobjectYesSeller info for marketplace products (see below). Null when the merchant is also the seller. Never an empty object.

products[].seller

FieldTypeNullableDescription
namestringYesName of the seller offering the product
urlstringYesURL of the seller's page within the merchant's marketplace

payment_methods[]

FieldTypeNullableDescription
typeenumNoCARD, APPLE_PAY, GOOGLE_PAY, PAYPAL, CASH_APP, VENMO, AFFIRM, KLARNA, GIFT_CARD, CASH, BANK_ACCOUNT, LOYALTY_POINTS, UNRECOGNIZED
brandstringYesCard network or store card name
last_fourstringYesLast four digits
transaction_amountstringYesAmount charged to this method

price.adjustments[]

Each adjustment: type (enum: DISCOUNT, TAX, TIP, FEE, REFUND, UNRECOGNIZED), label (nullable string), amount (string — positive increases total, negative decreases).

Rules

  • Development only. This skill uses https://development.knotapi.com exclusively. Never use production credentials or the production base URL.
  • New user ID each run. Reusing the same external_user_id across multiple link calls can produce unexpected results. Increment or randomize the ID.
  • Retry on empty results. If /transactions/sync returns 0 transactions, the data isn't ready yet. Retry the request.
  • Paginate fully. Even in development, transactions come in pages. Loop until next_cursor is null.
  • No webhooks. This prototyping flow skips webhook setup entirely. The sync endpoint returns data regardless of whether a webhook was received.
  • Use the merchant ID table. Always look up the merchant ID from the reference table in Step 2. Do not guess or hardcode IDs.

适合场景

01

用户想查找某类 Agent Skill 时

02

需要根据任务场景推荐可安装能力包时

03

需要对比不同来源的安装命令和来源信息时

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

保留来源站点、仓库和原始说明,方便继续核验

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

Local Agent

78.55%
按下载量换算56

安全审计

暂无安全审计结果可展示。

权限和风险

敏感数据

该 Skill 可能接触密钥、Token、环境变量或敏感配置,应进入高风险复核队列,默认不自动发布。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。当前只有一个来源,正式发布前建议补源仓库或其他目录站核验。

来源信息

继续浏览同类 Skills