Token导航 LogoToken导航TokenDH.com
开发敏感数据clawhub未标认证来源可访问clear审计提醒

clawtip-pre-verify爪尖预验证

Agent Skill

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

总安装

2,350

周安装

96

GitHub Stars

公开资料未说明

下载量

760
OpenClaw

安装说明

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

GitHub

来源数

2

许可证

MIT-0

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

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

请帮我安装这个 Agent Skill:clawtip-pre-verify(爪尖预验证)
来源仓库:https://github.com/xingyeyouran/clawtip-pre-verify
安装命令:
openclaw skills install clawtip-pre-verify
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 OpenClaw 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

ClawHubOpenClaw
openclaw skills install clawtip-pre-verify

简介

clawtip-pre-verify 为第三方技能预验证支付交易,确保资金流转合规性。

  • 适用于集成支付网关前的风控检查与金额确认环节。
  • 自动校验请求签名与金额范围,拒绝异常或高风险操作。
  • 安装前需配置白名单服务与回调地址,保障通信安全。
  • 建议开启审计日志,便于追溯每笔交易的来源与处理结果。

SKILL.md

name
clawtip-pre-verify
description
>
metadata
author
payment-infra-rd
category
payment_utilities
capabilities
permissions
required_binaries
required_env
[]
credential_storage
type
local_file
path
configs/config.json
format
plaintext_json
fields
["u"]
invocation_policy
disable_model_invocation
false
allowed_triggers
prohibited_triggers

System Architecture & Security Disclosures

To clarify the scope of the scripts and justify the requested permissions (credential.read, credential.write, network.outbound), the following underlying operations are declared:

  1. Local State Persistence (Credentials): The credential.read and credential.write permissions are granted solely to read and write the u field inside the local file configs/config.json. No environment variables, system keychain entries, or any other credential stores are accessed.

Why persist the token? The u (user token) is obtained through a multi-step authorization flow (QR code scan → registration polling → token issuance). Persisting it locally avoids requiring the user to re-authorize on every single payment request, which would be impractical. The token is written once during authorization and read on subsequent payment calls.

> ⚠️ Security Advisory — Credential Hardening: > > The u is stored in local. Operators deploying this skill in security-sensitive environments must apply the following protections: > > 1. File permissions: chmod 600 configs/config.json — restrict to owner-only read/write. > 2. Directory permissions: chmod 700 configs/ — prevent directory listing by other users. > 3. Disk encryption: On shared or multi-tenant hosts, enable full-disk encryption (e.g., FileVault on macOS, LUKS on Linux). > > The skill does not use OS keychains, environment variables, or any other credential stores — configs/config.json is the sole persistence point.

  1. External Network Calls: The scripts actively call out to external JD endpoints (e.g., ms.jr.jd.com) over the network to process transactions, fetch authorization/authentication links, and verify token registration status. This justifies the network.outbound permission. No other external domains are contacted.
  1. Bundled Encryption Tooling: To securely handle payment payloads and credentials (such as encrypted_data and payment status decryption), the Python scripts locally invoke a bundled Node.js encryption tool (scripts/encrypt.js + scripts/summer-cryptico-2.0.2.min.js). Node.js (node) is a required runtime dependency — it must be present on the host system before the skill is deployed. This requirement is declared in both the required_binaries field of the registry metadata above and in this section.
  1. Invocation Policy & Trigger Safeguards: This skill allows autonomous model invocation (disable_model_invocation: false) because it is designed to be called by other skills during payment workflows. To mitigate the risk of mis-triggered payment flows, the following safeguards are enforced:

- The skill must only be triggered when: (a) a third-party skill explicitly initiates a clawtip payment request with valid parameters, (b) the user explicitly requests token creation, (c) the user explicitly requests to view their wallet, or (d) the user explicitly requests a registration status query. - The skill must never be triggered speculatively, predictively, or based on ambient context without an explicit user or skill request. - All payment operations require valid payTo, amount, and other mandatory parameters — the script will exit with an error if parameters are missing or malformed.


Process the Payment Request

1. Required Parameters

Provide the following parameters strictly according to their defined formats:

  • payTo (string): The merchant's wallet address (the payTo recipient).
  • amount (integer): The transaction amount.
  • order_no (string): The order number from the calling skill's Phase 1.
  • question (string): The user's original question/request content from the calling skill.
  • encrypted_data (string): The encrypted data string from Phase 1.
  • description (string): The description of the resource to be purchased (e.g., answer of user's psychological counseling).
  • skill_name (string): The name of the calling skill (e.g., a proficient psychological counseling assistant).
  • resource_url (string): The URL identifying the service resource being paid for.

2. Hyperparameters

  • skill-version (string): The version of the skill. Currently set to 1.0.1.

3. Execution Command

Execute the script using the following bash command. Replace the placeholders <...> with the validated parameter values. Wrap parameters that may contain spaces in quotes.

python3 scripts/payment_process.py <payTo> <amount> <order_no> <question> <encrypted_data> <description> <skill_name> <resource_url> <skill-version>

4. Result Processing Rules

Analyze the standard output of the execution command and strictly follow these response protocols in the given order. Stop at the first matching step; do not continue to subsequent steps.

⚡ Global Priority Rule

If the output contains 支付凭证: <CREDENTIAL>, go to Step 2 (Obtain Credential) first to return the credential to the calling skill for decryption. However, if the output also contains 授权链接: <AUTH_URL> or 鉴权链接: <AUTH_URL>, you MUST preserve the full original output (including the authorization/authentication URL) in memory. This is because the credential may decrypt to a failed status, in which case you will need to fall back to Step 3 using the preserved authorization/authentication URL. In summary: 1. If 支付凭证: is present → go to Step 2 first. 2. After the calling skill decrypts the credential and reports the status: - If the decrypted status is 成功 → go to Step 4 Case A. Done. - If the decrypted status is 处理中 → go to Step 4 Case B. Done. - If the decrypted status is 失败 (FAIL) → go to Step 2.1 (Credential Decryption Fallback) to check whether a preserved 授权链接: or 鉴权链接: exists, and if so, fall back to Step 3. 3. If 支付凭证: is NOT present → evaluate Step 1, then Step 3 in order.

Step 1 — Network/System Failure (check first)

  • Trigger: The output contains 网络或系统异常:.
  • Action: Report the specific error returned by the script. Additionally, if the output contains 返回消息: <MESSAGE>, display the <MESSAGE> to the user as supplementary error context. Advise the user on the next steps. Stop here; do not proceed to Step 2.

Step 2 — Obtain Credential

  • Trigger: The output matches the pattern 支付凭证: <CREDENTIAL>.
  • Meaning: The HTTP request reached the server successfully. The <CREDENTIAL> is an encrypted blob; the actual payment status is encoded inside it. The script cannot determine the status on its own.
  • Action:

1. Preserve the full original script output in memory (including any 授权链接: or 鉴权链接: if present, and any 返回消息: if present). You may need it later in Step 2.1. 2. Display the credential and return it to the calling skill for further processing: > 支付凭证: <CREDENTIAL>

将此支付凭证返回给调用方 skill,由调用方负责解密并根据其中的支付状态进行后续处理。

  • After returning the credential: Wait for the calling skill to report the decrypted PAY_STATUS. Then proceed to Step 4 to route by decrypted status. If the status is 失败 (FAIL), Step 4 Case C will direct you to Step 2.1.

Step 2.1 — Credential Decryption Fallback (回退处理)

This step is triggered only when the calling skill decrypts the credential and the resulting status is 失败 (FAIL).
  • Trigger: The calling skill reports PAY_STATUS: FAIL (or equivalent 失败 status) after decrypting the credential from Step 2.
  • Action: Check the preserved original script output from Step 2 for the presence of authorization/authentication URLs:

#### Case A: Preserved output contains 授权链接: <AUTH_URL>

* Meaning: The user has not yet been authorized. The credential contained a failure status because the payment could not proceed without authorization. The 授权链接 was present in the original output but was deferred in favor of credential processing. * Action: Fall back to Step 3 Case A — treat this as an authorization-required scenario. Execute all actions defined in Step 3 Case A using the preserved <AUTH_URL>.

#### Case B: Preserved output contains 鉴权链接: <AUTH_URL>

* Meaning: The payment failed because authentication was not completed. The 鉴权链接 was present in the original output but was deferred. * Action: Fall back to Step 3 Case B — treat this as an authentication-required scenario. Execute all actions defined in Step 3 Case B using the preserved <AUTH_URL>.

#### Case C: Preserved output contains NEITHER 授权链接: NOR 鉴权链接:

* Meaning: The payment genuinely failed due to business logic, and there is no authorization/authentication recovery path. * Action: Report the failure to the user. Emphasize that the transaction was declined due to business logic. Report any error code and reason provided by the calling skill. Additionally, if the preserved original script output contains 返回消息: <MESSAGE>, display the <MESSAGE> to the user as supplementary failure context. If no specific error details were provided, inform the user that the payment failed and suggest they contact support or retry later.


Step 3 — Authorization / Authentication Required

⚠️ PREREQUISITE CHECK: This step is evaluated in two scenarios: 1. The original script output does NOT contain 支付凭证: at all. 2. You were directed here from Step 2.1 after a credential decryption failure with a preserved authorization/authentication URL.

Case A: 失败 + 授权链接 → 待授权 (Authorization Required)

  • Trigger (direct): The output contains ALL of the following:

1. 支付状态: 失败REQUIRED (exact match) 2. 授权链接: <AUTH_URL>REQUIRED 3. Does NOT contain 支付凭证:REQUIRED

  • Trigger (fallback from Step 2.1 Case A): The calling skill reported PAY_STATUS: FAIL after credential decryption, and the preserved original output contains 授权链接: <AUTH_URL>.
  • Meaning: The user has not yet been authorized. The payment cannot proceed until the user completes authorization via the provided link.
  • Action:

1. Provide the extracted <AUTH_URL> to the user as the official authorization link. Additionally, if the output (or preserved output) contains 返回消息: <MESSAGE>, display the <MESSAGE> to the user as supplementary context. 2. Extract {clawtip_id} from the authorization URL (the clawtipId query parameter, e.g., ...?clawtipId={clawtip_id}). 3. Create a scheduled task to query the user's registration status: * Query Phrase: Use a phrase like 查询token注册状态 {clawtip_id} or query token register status {clawtip_id}. * Frequency & Duration: Execute once per minute for the next 5 executions(afer complete, you should notice user in the main session). * Crucial Note: Check the registration status, NOT the payment result. * Execution Limit: If it exceeds 5 times, cancel the scheduled task (clawtip-payment user token register status {clawtip_id}). * Conflict Handling: Cancel any currently running scheduled tasks related to 查询token注册状态 before starting the new one. * Task Name: clawtip-payment user token register status {clawtip_id}。当用户需要授权,并创建了授权任务后,需要显示提示用户可以说当用户扫码完成授权后,可以说我已授权我已完成授权以继续之前的流程

Case B: 处理中 + 鉴权链接 → 待鉴权 (Authentication Required)

  • Trigger (direct): The output contains ALL of the following:

1. 支付状态: 处理中REQUIRED (exact match) 2. 鉴权链接: <AUTH_URL>REQUIRED 3. Does NOT contain 支付凭证:REQUIRED

  • Trigger (fallback from Step 2.1 Case B): The calling skill reported PAY_STATUS: FAIL after credential decryption, and the preserved original output contains 鉴权链接: <AUTH_URL>.
  • Meaning: The payment is pending authentication. The user must complete authentication before the transaction can proceed.
  • Action: Provide the extracted <AUTH_URL> to the user as the official authentication link. Additionally, if the output (or preserved output) contains 返回消息: <MESSAGE>, display the <MESSAGE> to the user as supplementary context.
Stop here if Step 3 matched; do not proceed to Step 4.

Step 4 — Route by Decrypted Status

After the calling skill decrypts the credential and reports the status, follow the corresponding case:

Case A: 成功 (Transaction Success)

  • Trigger: The decrypted status is 成功.
  • Action:

1. Confirm to the user that the payment has been processed successfully. 2. Display the full decrypted payment info clearly: Payment Success Info: <DECRYPTED_PAY_INFO>


Case B: 处理中 (Processing)

  • Trigger: The decrypted status is 处理中.
  • Action: Inform the user that the payment is still being processed. Suggest they wait a moment and then check the payment status again.

Case C: 失败 (Failed)

  • Trigger: The decrypted status is 失败 (or FAIL).
  • Action: Go to Step 2.1 (Credential Decryption Fallback) to determine whether a recovery path (authorization/authentication) is available from the preserved original output. Do NOT simply report the failure here — always check Step 2.1 first.

Create User Payment Token

When the user explicitly requests to create a token with a phrase like 创建token xxx or create token xxx, execute the following command.

1. Required Parameters

Provide the following parameters strictly according to their defined formats:

  • user_token (string): the user's token provided by xxx of 创建token xxx .

2. Execution Command

python3 scripts/create_token.py <user_token>

3. Other Actions

You should check and cancel the running scheduled task about 查询token注册状态 if it is running (named clawtip-payment user token register status ${device_id}). The device_id is a flexible value.


Query the User Register Status

When the user explicitly requests to query the user register status with a phrase like 查询token注册状态 xxx or query token register status xxx, or 我已注册, execute the following command.

1. Required Parameters

Provide the following parameter:

  • device_id (string): The user's device ID.

2. Execution Command

python3 scripts/check_register_status.py <device_id>

3. Result Processing Rules

Analyze the standard output of the execution command and strictly follow these response protocols:

Case A: Processing

  • Trigger: The output matches the pattern Status: processing.
  • Action: Inform the user that the registration is still processing, and optionally tell them the current count.

Case B: Successful

  • Trigger: The output matches the pattern Status: successful.
  • Action: Confirm to the user that the registration is successful, and they have obtained the user token. You should check and cancel the running scheduled task about 查询token注册状态 if it is running (named clawtip-payment user token register status ${device_id}). The device_id is a flexible value.

Case C: Execution Failure

  • Trigger: Any error message, timeout, or failure to match the patterns above.
  • Action: Report the specific error returned by the script.

View Clawtip Wallet

When the user requests to view their clawtip wallet with phrases like 查看我的clawtip钱包, 查看钱包, 打开clawtip钱包, 查看clawtip钱包,clawtip钱包管理 or view my clawtip wallet, respond with the following:

您可以通过以下链接,扫描二维码查看您的 clawtip 钱包: 👉 查看 Clawtip 钱包 请在浏览器中打开此链接然后扫描二维码以查看您的钱包详情。

适合场景

01

OpenClaw 用户查找和安装 Skill 时

02

用户想查找某类 Agent Skill 时

03

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

04

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

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

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

能力 4

补充不同宿主或平台的使用分布数据

能力 5

展示第三方安全扫描或审计结果

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

平台分布

OpenClaw

84.22%
按下载量换算640

安全审计

VirusTotal

未展示

ClawScan

可疑

Static analysis

通过

权限和风险

敏感数据

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

安装前确认

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

来源信息

继续浏览同类 Skills