← 返回 Skills 市场
charleiwang

Ship Position

作者 charleiWang · GitHub ↗ · v0.1.7 · MIT-0
cross-platform ✓ 安全检测通过
232
总下载
1
收藏
0
当前安装
7
版本数
在 OpenClaw 中安装
/install hifleet-skills
功能描述
船位、档案、区域船舶、红海波斯湾海峡通航、港口、性能、航程、航线、租船、航运、气象海况、船队、AIS。Use when user asks for vessel position (船位), ship info, area traffic (区域船舶 范围内船舶), strait traffic (红海 波斯湾...
使用说明 (SKILL.md)

技能说明

不配置鉴权也可使用本技能中不需 token 的部分;船位、档案等已实现功能需配置 token 后可用。技能列表与触发词见 references/skills_index.md

技能 状态 说明
船位 Ship Position ✅ 已实现 获取最新船舶位置
档案 Archive ✅ 已实现 船舶/公司档案
红海/波斯湾通航 Strait Traffic ✅ 已实现 海峡通航统计(曼德、苏伊士、好望角、霍尔木兹),POST;无 token 限最近 1 周,有 token 不限
区域船舶 Area Traffic ✅ 已实现 查询指定区域内的当前船舶:支持 bbox、areaId(区域清单 id)或 polygon(WKT),需 token
港口 Port 待实现 港口、泊位、锚地
性能 Performance 待实现 油耗、能效、主机性能
航程 Voyage 待实现 航次、挂港、ETA/ETD
航线 Route 待实现 推荐航线、航路点
租船 Charter 待实现 租约、租家、租金
航运 Shipping 待实现 运价、市场、新闻
气象海况 Weather 待实现 风浪、台风、能见度
船队 Fleet 待实现 多船监控、船队报表
AIS 待实现 AIS 报文、轨迹回放

Token 配置(可选,部分接口必填)

船位、档案等已实现功能依赖 HiFleet API 鉴权;不配置 token 时这些接口不可用,但技能中其他不需鉴权的部分仍可使用。需要用到船位/档案时,请配置:

  1. 环境变量(二选一):HIFLEET_USER_TOKENHIFLEET_USERTOKEN
  2. 项目/ClawHub 配置usertoken / userToken
  3. 请求参数:接口支持时传入 usertoken

建议使用仅限本技能使用的专用 token,停用后及时轮换。

常用定义

国际航行船舶 : 通常有有效的IMO注册号码的船舶 电子围栏: 区域范围


已实现功能

船位 / Ship Position

获取(岸基+卫星+移动)船舶最新位置信息。支持**关键字(船名或 MMSI)**查询,自动走“先搜船、再查位”的两步流程。

  • 触发:船位、位置、报位、在哪、MMSI、ship position、vessel position
  • 输入:关键字(船名或 MMSI)或直接 9 位 MMSI;usertoken 从配置读取
  • API 详情references/position_api.md(含 shipSearch 与 position/get/token)
  • 脚本scripts/get_position.py(支持关键字或 MMSI,可选用于命令行/集成)

两步流程

  1. 第一步 - 搜船:用用户关键字调用 position/shipSearch(shipname、usertoken、i18n=zh、count)。
  2. 第二步 - 查位:根据结果数量处理:
    • 0 条:提示未找到,请检查关键字。
    • 1 条:直接取该条 mmsi,调用 position/position/get/token 查位置并展示。
    • 多条:若可推断用户目标船(如关键字为完整 MMSI 或唯一匹配船名),则用对应 MMSI 查位;否则列出船名/MMSI/船型/船籍等,请用户选择具体 MMSI,再按所选 MMSI 调用 position/position/get/token 查位置。

若用户已提供 9 位数字 MMSI,可省略第一步,直接调用 position/position/get/token。展示时经纬度需将接口返回的 la/lo 除以 60 转为度。

档案 / Archive

根据 IMO 或 MMSI 获取船舶档案(基本信息、尺度、舱容、建造、入级、动力、公司信息、互保协会等)。接口支持 imo 与 mmsi 二选一内贸船无 IMO 时仅传 mmsi 即可。船名不支持,需先通过 shipSearch 得到 MMSI/IMO。

  • 触发:档案、船舶信息、船籍、船型、船东、管理公司、archive、vessel profile、ship info
  • 输入:IMO(7 位)或 MMSI(9 位);usertoken 从配置读取
  • API 详情references/archive_api.md
  • 脚本scripts/get_archive.py(支持 IMO 或 MMSI,MMSI 直接传 mmsi 参数,需 token)

调用流程:检查 token → 若为 IMO:GET ...?imo={imo}&usertoken=...;若为 MMSI:GET ...?mmsi={mmsi}&usertoken=...(支持内贸船无 IMO)→ 解析 data,按 labelZh 分块展示。船名需先 shipSearch 得到 MMSI/IMO 再查档案。

红海与波斯湾海峡通航 / Strait Traffic

咽喉航道通航船舶统计,支持曼德海峡、苏伊士运河、好望角、霍尔木兹海峡,按日期区间与方向返回船型统计及船舶明细。无 usertoken 仅可查最近 1 周,有 usertoken 时间区间不限

  • 触发:红海、波斯湾、海峡通航、曼德海峡、苏伊士运河、好望角、霍尔木兹、strait traffic、Red Sea、Persian Gulf
  • 输入:海峡名称或 oid;可选开始/结束日期(yyyy-MM-dd),不传默认最近 7 天;可选 i18n(zh/en)。usertoken 从配置读取,有则时间不限。
  • API 文档references/strait_traffic_api.md;完整接口以 ShowDoc 45/2234 为准。
  • 脚本scripts/get_strait_traffic.py(海峡名或 oid + 可选 startdate/enddate/i18n,有 token 可查超 7 天)

接口POST http://api.hifleet.com/position/statisticzonetraffic,Query 参数 oid、startdate、enddate、i18n(可选)、usertoken(可选)。海峡 oid:曼德海峡 24480、苏伊士运河 132808、好望角 1062830、霍尔木兹海峡 24471。无 token 时校验时间区间 ≤ 7 天。

区域船舶 / Area Traffic

查询当前指定区域内的船舶列表。支持三种区域指定方式:矩形 bbox区域 id(areaId)WKT 多边形(polygon)。用户仅文字描述区域(如 [波斯湾]「红海」「北太平洋」「马六甲海峡」)时,先查区域清单再按 areaId 查询。

  • 触发:区域船舶、范围内船舶、区域船位、某区域有多少船、area traffic、vessels in area
  • 输入:① 矩形区域(左下经度、左下纬度、右上经度、右上纬度);或 ② 区域名称/海区/贸易区(先调区域清单接口,用 name/cnName 匹配得到 id,再按 areaId 查);或 ③ WKT 格式 polygon;usertoken 必填
  • API 详情references/area_traffic_api.md(gettraffic 支持 bbox、areaId、polygon);references/areas_api.md(区域清单)
  • 脚本scripts/get_areas.py(获取区域清单,供按名称选区域);scripts/get_area_traffic.py(bbox 四参数、--area-id \x3Cid>--polygon "POLYGON((...))",需 token)

调用流程:检查 token → 若用户给的是矩形坐标:组 bbox → GET position/gettraffic/token?bbox=...&usertoken=...;若用户给的是文字描述:GET position/areas/token(可选 usertoken)→ 用 name/cnName 匹配得 id → GET position/gettraffic/token?areaId={id}&usertoken=...;若用户给的是WKT 多边形:GET position/gettraffic/token?polygon=...&usertoken=... → 解析 list 展示船名、MMSI、经纬度、航速、状态、目的港等。


安全与合规

本技能仅向 api.hifleet.com 的船位/档案/海峡通航/区域船舶等接口发起只读请求(GET 或 POST);海峡通航统计无需 token,其余需鉴权的接口使用 token。详见 SECURITY.md

参考资料与脚本

路径 说明
SECURITY.md 安全说明(网络行为、Token 用途、无动态代码)
references/skills_index.md 技能清单(中英双语、触发词)
references/position_api.md 船位 API 完整说明与响应字段
references/archive_api.md 档案 API 说明与 data 分类
references/strait_traffic_api.md 红海/波斯湾海峡通航 API(oid、时间范围、ShowDoc 链接)
references/area_traffic_api.md 区域船舶 API(bbox、areaId、polygon、usertoken)
references/areas_api.md 区域清单 API(海区/贸易区列表,供按名称选 areaId)
scripts/get_position.py 按关键字或 MMSI 获取船位(需 token)
scripts/get_archive.py 按 IMO 或 MMSI 获取船舶档案(接口支持 mmsi 参数,内贸船无 IMO 可用 MMSI,需 token)
scripts/get_strait_traffic.py 海峡通航统计(POST statisticzonetraffic),oid+日期+i18n;无 token 限 7 天,有 token 不限
scripts/get_areas.py 区域清单(海区/贸易区),供按名称匹配 areaId
scripts/get_area_traffic.py 区域船舶(bbox、--area-id 或 --polygon,需 token)
安全使用建议
This skill is internally coherent and appears to only query api.hifleet.com. Before installing: 1) If you will supply a token, create a dedicated, minimal-permission token just for this skill and rotate it if you stop using the skill. 2) Be aware the strait-statistics endpoint is called over HTTP and (when a token is provided) the token is placed in the URL query string — that can expose the token on the network; avoid providing a token for that query or ask the maintainer to use HTTPS. 3) The skill may read a project/ClawHub config value for usertoken in addition to environment variables; confirm where you store tokens. 4) Review any organizational policy about sending vessel/location queries to an external provider (api.hifleet.com), since requests and queried identifiers (MMSI/IMO/areas) will be visible to that service.
功能分析
Type: OpenClaw Skill Name: hifleet-skills Version: 0.1.7 The skill bundle is a legitimate integration for the HiFleet maritime data API, providing tools to query ship positions, archives, and traffic statistics. The Python scripts (e.g., get_position.py, get_archive.py) use only standard libraries, contain no dynamic code execution (eval/exec), and strictly communicate with documented hifleet.com endpoints. While one script uses an unencrypted HTTP endpoint for traffic statistics, there is no evidence of malicious intent, data exfiltration, or prompt injection.
能力评估
Purpose & Capability
Name/description align with the provided scripts and reference docs: all code and docs target vessel position, archive, area traffic and strait traffic via api.hifleet.com. The optional token (HIFLEET_USER_TOKEN / HIFLEET_USERTOKEN) is consistent with the API usage described.
Instruction Scope
Runtime instructions and scripts only perform read queries against api.hifleet.com endpoints listed in SECURITY.md (shipSearch, position/get, shiparchive, areas, gettraffic, statisticzonetraffic). They do not read arbitrary local files or send data to other domains. Important exception: the strait statistics endpoint is implemented as http://api.hifleet.com/position/statisticzonetraffic (plain HTTP) and the code includes the usertoken as a URL query parameter when provided — this can expose tokens over the network. The SKILL.md also mentions reading project/ClawHub config (usertoken/userToken) as an alternative to env vars; registry metadata does not declare any required config paths, so that is a minor mismatch to be aware of.
Install Mechanism
No install specification is present (instruction-only). The package includes Python scripts but nothing is automatically installed; scripts use only Python standard library. No downloads from untrusted URLs or extract/install steps are present.
Credentials
The only secret-like items are optional HIFLEET_USER_TOKEN / HIFLEET_USERTOKEN which are appropriate for an API client. No other credentials or unrelated env vars are requested. Caveat: if you supply a token, the strait-statistics call may transmit it in the URL over plain HTTP, increasing risk of interception — consider not providing a token for that call or asking the maintainer to support HTTPS for that endpoint.
Persistence & Privilege
Skill is not always-enabled; default autonomous invocation is allowed (platform default) but the skill does not request elevated or persistent system privileges, nor does it modify other skills' configs.
如何使用
  1. 确保已安装 OpenClaw(本地或 Docker 部署)
  2. 在对话框中输入安装命令:/install hifleet-skills
  3. 安装完成后,直接呼叫该 Skill 的名称或使用 /hifleet-skills 触发
  4. 根据 Skill 的参数说明提供必要输入,即可获得结构化输出
版本历史
v0.1.7
- Area Traffic (区域船舶) 支持按区域名称(areaId)、WKT 多边形(polygon)、或矩形 bbox 查询;不仅限于原有的矩形区域参数 - 新增区域清单接口文档(references/areas_api.md)和脚本(scripts/get_areas.py),用于区域名称到 areaId 的转换 - get_area_traffic.py 脚本现支持传入 areaId 与 polygon 查询 - 文档全面更新,细化了区域船舶功能用法、调用流程,以及 API 参数与说明 - 维护性更新:完善安全说明与接口文档指引
v0.1.6
- Strait traffic (海峡通航) API updated from GET to POST, now using /position/statisticzonetraffic with support for direction, vessel type stats, and internationalization (i18n); query time window without token still limited to 7 days, no limit with token. - Documentation clarified and updated to describe the new strait traffic parameters, POST request details, and response content. - Script scripts/get_strait_traffic.py and references/strait_traffic_api.md revised to match POST interface and new features. - Improved safety description in SECURITY.md and clarified endpoint usage. - Skills index updated for consistency with new and existing functionality.
v0.1.5
hifleet-skills v0.1.5 - 新增“区域船舶”和“红海/波斯湾/海峡通航”能力,可查询指定区域及主要海峡内船舶与通航情况 - skills_index.md、SECURITY.md 等文档同步更新,增加新技能说明及安全声明 - 新增 API 参考文档:area_traffic_api.md、strait_traffic_api.md - 新增脚本 get_area_traffic.py、get_strait_traffic.py,分别支持区域船舶和海峡通航数据获取 - 更新技能触发词列表,适配区域/海峡相关查询场景
v0.1.4
- Added metadata: new optionalEnv section documents environment variables for token configuration. - Clarified that skill partially works without authentication; only position/archive features require token. - Documented homepage and API source for transparency and auditing. - Improved token guidance, marking it as optional except for select features. - No functional code/API changes; documentation changes only.
v0.1.3
- Added SECURITY.md with details on network behavior, token usage, and no dynamic code execution. - Updated SKILL.md: added a security/compliance section, with reference to SECURITY.md. - Updated references in SKILL.md to include SECURITY.md. - No changes to core feature set or logic; existing archive and position script usage unchanged.
v0.1.2
Version 0.1.2 of hifleet-skills brings support for船舶档案 (Archive)查询与脚本,并增强了船位查询: - 新增船舶档案(Archive)查询功能,支持用 IMO 或 MMSI 调用档案 API。 - 新增 archive_api 参考文档与 get_archive.py 查询脚本。 - 船位查询支持关键字(船名或 MMSI)自动“搜船-查位”两步流程,提升易用性。 - 更新 position_api.md 和 skills_index.md 以反映支持的技能。 - SKILL.md 文档重写,明确两大已实现技能的调用流程和限制。
v0.1.0
Initial release of HiFleet Claw skills. - Provides ship position lookup via HiFleet API (requires user token). - Outlines planned support for ship archive, port, performance, voyage, route, charter, shipping market, weather, fleet, and AIS features. - Documents skill triggers and required parameters for ship position queries. - Details token configuration and reference documentation for further setup.
元数据
Slug hifleet-skills
版本 0.1.7
许可证 MIT-0
累计安装 0
当前安装数 0
历史版本数 7
常见问题

Ship Position 是什么?

船位、档案、区域船舶、红海波斯湾海峡通航、港口、性能、航程、航线、租船、航运、气象海况、船队、AIS。Use when user asks for vessel position (船位), ship info, area traffic (区域船舶 范围内船舶), strait traffic (红海 波斯湾... 它是一个面向 Claude Code / OpenClaw 的 AI Agent Skill 插件,目前累计下载 232 次。

如何安装 Ship Position?

在 OpenClaw 或 Claude Code 对话框中运行命令「/install hifleet-skills」即可一键安装,无需额外配置。

Ship Position 是免费的吗?

是的,Ship Position 完全免费,采用 MIT-0 许可证,可自由下载、安装和使用。

Ship Position 支持哪些平台?

Ship Position 跨平台运行,可在任意部署了 OpenClaw / Claude Code 的环境中使用(cross-platform)。

谁开发了 Ship Position?

由 charleiWang(@charleiwang)开发并维护,当前版本 v0.1.7。

💬 留言讨论