mcpField
P
pp-autotempest

pp-autotempest

github.com/mvanhorn其他2.1k53 次安装今天更新
代码仓库

关于 pp-autotempest

pp-autotempest 技能用于操作 AutoTempest 二手车搜索 CLI,面向购车者和 Agent。它将聚合搜索与本地价格记录、跨平台 VIN 去重及价格比较结合起来。

主要功能

  1. 01搜索聚合二手车源
  2. 02跟踪价格变化
  3. 03按 VIN 合并重复车源
  4. 04与相似车辆比较价格
  5. 05为 Agent 导出筛选后的 JSON

适用场景

  1. 01按预算和地点筛选车辆
  2. 02发现近期降价的车源
  3. 03找出某 VIN 最便宜的来源

MCP 相关

该技能说明了 autotempest-pp-mcp 服务的安装及其在 Claude Code 中的注册方式。

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/mvanhorn/printing-press-library --skill pp-autotempest

安装后在 Claude Code 中输入/pp-autotempest确认已加载。

详细介绍

AutoTempest — Printing Press CLI

前置条件:安装 CLI

此技能通过 autotempest-pp-cli 二进制文件运行。**调用此技能中的任何命令前,必须确认 CLI 已安装。**如果尚未安装,请先安装:

  1. 使用 Printing Press 安装程序安装。默认情况下,二进制文件会安装到 macOS/Linux 上的 $HOME/.local/bin,以及 Windows 上的 %LOCALAPPDATA%\Programs\PrintingPress\bin:
    npx -y @mvanhorn/printing-press-library install autotempest --cli-only
    
  2. 验证:autotempest-pp-cli --version
  3. 确保报告的安装目录位于将调用此技能的 Agent/运行时的 $PATH 中。

如果 npx 安装失败(没有 Node、处于离线状态等),请改用直接 Go 安装(需要 Go 1.26.6 或更高版本)。此方式会安装到 $GOPATH/bin(默认为 $HOME/go/bin),因此请将该目录添加到 $PATH:

go install github.com/mvanhorn/printing-press-library/library/commerce/autotempest/cmd/autotempest-pp-cli@latest

如果安装后 --version 报告“command not found”,说明运行时无法在 $PATH 中找到二进制文件目录。验证成功前,请勿继续执行技能命令。

AutoTempest 已将主要的二手车市场整合到一个搜索中,但只能通过浏览器使用。此 CLI 通过普通 HTTP 访问相同的聚合搜索,将车辆信息保存到本地 SQLite 数据库,在不同来源间对同一 VIN 去重,并跟踪价格随时间的变化。drops、dedupe、deal 和 spread 等命令可将一次性浏览转变为可查询、不断累积的汽车搜索状态,供购车者和 Agent 使用。

何时使用此 CLI

使用此 CLI 可在终端或通过 Agent 搜索 AutoTempest 所有来源的二手车信息,将结果保存到本地,并回答网站无法解答的问题:哪些车辆降价了、哪个来源列出的某个 VIN 价格最低,以及相较于同类车辆,某个价格是否划算。它非常适合 Agent 定期轮询的搜索,也适合将汽车数据以 JSON 格式传入下游工作流。

不适用场景

请勿在以下场景中使用此 CLI:

  • 请勿使用此 CLI 购买、竞拍、融资或联系卖家;它只能用于只读的汽车搜索。
  • 请勿将其用于新车 MSRP 或经销商发票价格查询;它只显示现有的二手车信息。
  • 请勿将其用于 VIN 历史记录或事故报告;它提供的是车辆信息,而非 Carfax 式记录。

独特功能

其他用于此 API 的工具都不具备以下功能。

可不断累积的本地状态
  • drops — 显示自上次 find 或 watch 运行以来降价的车辆,并按降价幅度从大到小排序。

    当 Agent 或购车者需要了解价格随时间的变化,而不是获取一份最新车辆信息时,可使用此功能。

    autotempest-pp-cli drops "civic-fl" --since 7d --min-drop 500 --agent
    
  • watch — 注册带有筛选条件的命名搜索,然后通过 run 重放这些搜索,以便让 drops 和 diff 对比快照。

    需要设置 Agent 可定期轮询的搜索时,请使用此功能;一次性查询则使用 search。

    autotempest-pp-cli watch run --agent
    
跨来源智能分析
  • dedupe — 将同一辆车在多个市场上发布的相同 VIN 合并为一行,其中列出所有来源和价格,并按价格从低到高排序。

    当同一辆车同时出现在 eBay、Cars.com 和经销商信息源中,而你需要找出该 VIN 最便宜的来源时,请使用此功能。

    autotempest-pp-cli dedupe --select vin,min_price,sources.source,sources.price --agent
    
  • deal — 根据同类车辆(相同车型、年份、里程范围)的中位价,按机械计算的价格差为车辆信息排序。

    当你想用数字而非主观看法回答“与同类车辆相比,这个价格真的划算吗”时,请使用此功能。

    autotempest-pp-cli deal "Camry" --select title,price,deal_score --agent
    
  • spread — 按市场报告某车型的最低价、中位价和最高价,帮助你了解哪些来源价格偏低或偏高。

    在为某个车型选择购车市场时,请使用此功能。

    autotempest-pp-cli spread "F-150" --agent
    
  • auctions — 筛选出 eBay 上的竞拍车辆信息,其中包含当前实时出价和出价次数,并可按出价排序。

    寻找竞拍车辆,而非固定价格的库存时,请使用此功能。

    autotempest-pp-cli auctions --select title,current_bid,bids,url --agent
    

命令参考

makes — 列出 AutoTempest 可识别的车辆品牌(slug + 显示名称)。

  • autotempest-pp-cli makes — 列出品牌。使用返回的 slug(例如 'honda')作为 find 的 --make 值。

models — 列出指定品牌的车型(slug + 显示名称 + 年份范围)。

  • autotempest-pp-cli models <make> — 列出某个品牌的车型。传入品牌 slug(例如 'honda');使用返回的车型 slug 作为 find 的 --model 值。

sources — 列出 AutoTempest 搜索来源及其类型。

  • autotempest-pp-cli sources — 有两种类型:inline 来源(te、hem、cs、cv、cm、eb、ot)会返回解析后的逐车列表;link 来源(fbm = Facebook Marketplace,st = SearchTempest / Craigslist)仅提供比价链接,因为这些网站会阻止抓取或要求登录。find 默认使用 7 个 inline 来源;传入 --sites fbm,st 也会在 comparison_links 数组中获取它们的比价 URL。
找到合适的命令

当你知道要做什么,但不确定该用哪个命令时,可以直接询问 CLI:

autotempest-pp-cli which "<capability in your own words>"

which 会根据此 CLI 精选的功能索引,将自然语言功能查询匹配到最合适的命令。退出代码 0 表示至少有一个匹配项;退出代码 2 表示没有足够可靠的匹配项——请改用 --help 或使用更具体的查询。

用法示例

查找附近预算内的无事故标题 AWD 车辆
autotempest-pp-cli find "subaru outback" --zip 33701 --radius 150 --max-price 28000 --title clean --drive awd --json --select title,price_cents,mileage,location,sitecode

使用 --select 从深层嵌套的多来源实时结果中筛选出重要字段。

查找特定 VIN 的最低价来源
autotempest-pp-cli dedupe --select vin,min_price,sources.source,sources.price --json

每辆实车只显示一次,并列出它出现过的所有市场平台及价格。

本周有哪些车辆降价
autotempest-pp-cli drops "my-search" --since 7d --min-drop 500 --json

对比本地价格快照,找出有意出售的卖家。

这个价格划算吗
autotempest-pp-cli deal "tacoma" --select title,price,deal_score --json

根据你所在商店中可比车辆的中位数,为每条列表评分。

身份验证设置

无需身份验证。

运行 autotempest-pp-cli doctor 以验证设置。

Agent 模式

在任意命令中添加 --agent。它会展开为:--json --compact --no-input --no-color --yes。

  • 可通过管道传递 — JSON 输出到 stdout,错误输出到 stderr

  • 可筛选 — --select 可保留部分字段。点分路径会深入嵌套结构;数组会逐项遍历。对于内容冗长的 API,这对于控制上下文大小至关重要:

    autotempest-pp-cli makes --agent --select id,name,status
    
  • 可预览 — --dry-run 会显示请求,但不会发送

  • 适合离线使用 — 有本地 SQLite 存储时,find/sync 命令可使用该存储

  • 非交互式 — 不会提示输入,所有输入都通过标志传入

  • 只读 — 请勿使用此 CLI 执行创建、更新、删除、发布、评论、点赞、邀请、下单、发送或其他会修改数据的请求

响应封装

从本地存储或 API 读取数据的命令会在输出外层附加来源信息:

{
  "meta": {"source": "live" | "local", "synced_at": "...", "reason": "..."},
  "results": <data>
}

解析 .results 获取数据,并查看 .meta.source 判断数据来自实时来源还是本地存储。只有当 stdout 指向终端,且未设置机器格式标志(--json、--csv、--compact、--quiet、--plain、--select)时,才会将人类可读的 N results (live) 摘要输出到 stderr——通过管道运行或由 Agent 使用时,以及显式指定格式时,stdout 都只会输出纯 JSON。

Agent 反馈

当你(或 Agent)发现此 CLI 有问题时,请记录下来:

autotempest-pp-cli feedback "the --since flag is inclusive but docs say exclusive"
autotempest-pp-cli feedback --stdin < notes.txt
autotempest-pp-cli feedback list --json --limit 10

条目会本地存储在 ~/.local/share/autotempest-pp-cli/feedback.jsonl 中。除非设置了 AUTOTEMPEST_FEEDBACK_ENDPOINT,并且传入了 --send 或设置了 AUTOTEMPEST_FEEDBACK_AUTO_SEND=true,否则不会 POST。默认情况下,反馈仅存储在本地。

请写下令你感到意外的地方,而不是提交 Bug 报告。简短、具体、单行即可:这些细节会逐渐累积起来。

输出传递

每个命令都接受 --deliver <sink>。输出会发送到指定的目标,同时也会(或替代)输出到 stdout,因此 Agent 无需手动管道传递即可路由命令结果。支持三种目标:

目标效果
stdout默认;仅写入 stdout
file:<path>将输出原子性地写入 <path>(临时文件 + 重命名)
webhook:<url>将输出正文 POST 到 URL(使用 --compact 时为 application/json 或 application/x-ndjson)

不支持的方案会被拒绝,并返回说明支持方案的结构化错误。Webhook 请求失败时会返回非零状态,并在 stderr 中记录 URL 和 HTTP 状态码。

命名配置

配置文件是一组保存的标志值,可在多次调用中重复使用。如果计划任务中的 Agent 每次运行都以相同配置调用同一命令,就可以使用配置文件——这就是 HeyGen 的“Beacon”模式。

autotempest-pp-cli profile save briefing --json
autotempest-pp-cli --profile briefing makes
autotempest-pp-cli profile list --json
autotempest-pp-cli profile show briefing
autotempest-pp-cli profile delete briefing --yes

显式标志始终优先于配置文件中的值;配置文件中的值优先于默认值。agent-context 会在 available_profiles 下列出所有可用配置文件,以便 Agent 在运行时发现它们。

退出代码

代码含义
0成功
2用法错误(参数错误)
3未找到资源
5API 错误(上游问题)
7请求过于频繁(等待后重试)
10配置错误

参数解析

解析 $ARGUMENTS:

  1. 为空、help 或 --help → 显示 autotempest-pp-cli --help 输出
  2. 以 install 开头 → 以 mcp 结尾 → 安装 MCP;否则 → 参见上文的先决条件
  3. 其他任何内容 → 直接使用(作为带 --agent 的 CLI 命令执行)

MCP 服务安装

  1. 安装 MCP 服务:
    go install github.com/mvanhorn/printing-press-library/library/commerce/autotempest/cmd/autotempest-pp-mcp@latest
    
  2. 在 Claude Code 中注册:
    claude mcp add autotempest-pp-mcp -- autotempest-pp-mcp
    
  3. 验证:claude mcp list

直接使用

  1. 检查是否已安装:which autotempest-pp-cli 如果未找到,请提供安装选项(参见本技能顶部的先决条件)。
  2. 将用户查询匹配到上文“独特功能”和“命令参考”中的最佳命令。
  3. 使用 --agent 标志执行:
    autotempest-pp-cli <command> [subcommand] [args] --agent
    
  4. 如果存在歧义,请查看子命令帮助:autotempest-pp-cli <command> --help。

评论

支持 Markdown