360 Secure SkillHub
360 安全技能中心

Esri Workflow Smell Detector (Consumer)

该 Skill 是 Esri Workflow Smell Detector 的付费消费端:先由 arcgispro-cli 导出 ArcGIS Pro 项目快照 JSON,再携带 constraints 经 x402(Base/USDC)支付流程 POST 到 https://api.x402layer.cc/e/esri-smells,返回 summary、risk_score、issues…

danmaps
danmaps
热度 78.43
最近更新 2026-05-18 11:56:47
分类:数据依赖:代码执行 / 读写文件 / 第三方 API应用场景:报告撰写 / 数据处理 / API 集成 / 工作流

安装技能

复制下面的话术发给你的 Agent,它会通过 secure-skills 检索并安装该技能。

执行命令安装此 skill: npx secure-skills-cli add esri-smells-consumer
Metadata
name
esri-workflow-smell-detector (consumer)
version
1.0.0
description
Paid client skill for Esri Workflow Smell Detector via x402 (Base/USDC). Use when you want to run a deterministic automation preflight scan on an ArcGIS Pro project snapshot by calling https://api.x402layer.cc/e/esri-smells (HTTP 402 payment flow).

Esri Workflow Smell Detector (Consumer Skill)

This skill helps an agent call the paid Smell Detector endpoint (x402 pay-per-request) using Base/USDC.

It does not host the service.

How this relates to arcgispro-cli

The expected input, project_snapshot, is the JSON artifact produced by the open-source ArcGIS Pro CLI (arcgispro-cli).

Recommended workflow:

  1. Use arcgispro-cli to export a project snapshot/context artifact (safe-by-default, no raw data)
  2. Send that JSON to this paid endpoint for a deterministic preflight risk report
  3. Use the report to decide whether to proceed with automation (ArcPy/GP/AGOL) and what to fix first

This keeps a clean boundary:

  • Open core (arcgispro-cli) answers: what is in the project
  • Paid layer (this service) answers: how risky is it to automate, and why

Endpoint

  • POST https://api.x402layer.cc/e/esri-smells

Input

Required JSON body:

{
  "project_snapshot": { },
  "constraints": {
    "target": "arcpy" | "geoprocessing" | "agol",
    "deployment": "desktop" | "server",
    "max_runtime_sec": 300
  }
}

Output (guaranteed fields)

  • summary
  • risk_score (0.0–1.0)
  • issues[]
  • flags
  • version
  • requestHash

Determinism

  • Stateless
  • No external network calls (beyond the paid endpoint itself)
  • Same input produces same output
  • Safe to cache by requestHash

Pricing

  • x402 pay-per-request on Base
  • Target price: $0.001 per call

How to call (Python helper)

  1. Install deps:
pip install -r {baseDir}/requirements.txt
  1. Set wallet env (consumer wallet):
export PRIVATE_KEY="0x..."
export WALLET_ADDRESS="0x..."
  1. Call the endpoint:
python {baseDir}/scripts/call_smells.py path/to/project_snapshot.json

Notes

  • The script implements the x402 HTTP 402 challenge flow and retries with X-Payment.
  • If the endpoint is unreachable or the network rejects the payment, surface the error as-is.