# Supermap Iclient Mapboxgl Skills

> 生成 SuperMap iClient for MapboxGL 代码片段和完整 HTML 示例，覆盖地图加载、图层管理、数据查询、空间分析、MapboxGL API 用法等场景，以及 iServer REST 服务、GeoJSON、WMTS/WMS、矢量瓦片等数据源接入。

- Skill: `supermap/supermap-iclient-mapboxgl-skills` (Agent Skill, multi-file: 363 files)
- Install (CLI): `npx skillmds@latest add supermap/supermap-iclient-mapboxgl-skills`
- Raw SKILL.md: https://api.skillmd.com/api/skills/supermap/supermap-iclient-mapboxgl-skills/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Web & Frontend
- Author: supermap (https://skillmd.com/u/supermap)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/supermap/supermap-iclient-mapboxgl-skills

---


# SuperMap iClient for MapboxGL Skills

## 概述

本技能辅助开发者生成 SuperMap iClient for MapboxGL 的代码片段和完整 HTML 文件。采用两层策略：

- **metadata/**：完整 JSDoc JSON 元数据，优先查阅，用于 API 精确查询（参数名、类型、返回值结构等）
- **modules/**：高频场景的预构建模板，作为补充，提供参数说明、返回结果示例、完整可运行代码

行为规则（CDN 约束、API 选择、错误预防等）见 `prompts/system-prompt.md`。

## 目录结构

```
skills/
├── templates/        index.html
├── modules/
│   ├── core/         init-map.md, empty-map.md
│   ├── mapping/      add-geojson.md, vector-tile.md, WMTS.md, WMS.md
│   ├── services/     feature-service.md, query-service.md, buffer-analysis.md
│   └── utils/        ogc-capabilities.md, rest-data-vector.md
├── metadata/
│   ├── iclient-mapboxgl/   # SDK API（JSDoc JSON）
│   └── mapbox-gl-enhance/  # 原生 API + enhance 扩展（index.d.ts, style-spec.json）
├── rules/            intent-mapping.json, url-patterns.json, param-defaults.json,
│                     coordinate-system.md, error-handling.md
└── prompts/          system-prompt.md, fallback-questions.md, few-shot-examples/
```

## 工作流

```
用户请求
  ↓
识别意图（关键词 → rules/intent-mapping.json）
  ↓
优先从 metadata/iclient-mapboxgl/ 检索 API
  ↓
检索成功 → 使用 metadata 参数定义，从 modules/ 获取代码示例
检索失败 → 尝试 modules/ 中是否有相似模板
  ↓
参数缺失 → 用 prompts/fallback-questions.md 补问
  ↓
生成完整 HTML / 代码片段
```

### 各目录职责

| 场景                           | 来源                      | 说明                                         |
| ------------------------------ | ------------------------- | -------------------------------------------- |
| 参数名、参数类型、返回值结构   | `metadata/`               | JSDoc 是权威来源                             |
| 代码示例、模板、最佳实践       | `modules/`                | 补充说明，提供完整可运行示例                 |
| 业务规则、叠加要求、坐标系说明 | `rules/`                  | 校验和约束条件                               |
| URL 格式校验                   | `rules/url-patterns.json` | 不依赖 JSDoc（JSDoc 中 URL 类型仅为 string） |
| CDN、API 选择、错误预防        | `prompts/system-prompt.md`| AI 行为规则，权威约束来源                    |

## 限制与指南

### modules 仅包含高频模式

- ✅ **包含**：地图初始化、GeoJSON/矢量瓦片/WMTS/WMS 图层、SQL/几何/缓冲区查询、缓冲区分析
- ❌ **不包含**：叠加分析、插值分析、量算、网络分析等 — 通过 metadata 检索对应 API

### 模块新增标准

仅在满足以下条件时才添加新模块：

- **频率**：多次用户请求表明为高频需求
- **明确性**：存在稳定且清晰的最佳实践，变体少
- **互补性**：填补核心工作流缺口（非小众场景）

### 开发原则

- **以元数据为权威**：模块未覆盖的 API 一律从 metadata 检索并校验
- **可伸缩设计**：避免穷举式枚举，优先自助式元数据查询
- **可组合性**：modules 提供通用模式，metadata 提供精确细节

