第一章:OpenGIS-Skills 概述与快速入门
OpenGIS-Skills 是一个面向 AI 编程助手(Claude Code、Cursor、Cline、VS Code Copilot Chat、DeepSeek、OpenCode 等)的开源技能集(Skill Collection)。它不提供可执行代码,不依赖任何特定的 IDE 或平台,只通过一系列结构化的 SKILL.md 文件,为 AI 注入 GIS、CAD、C#、AI、IoT、3D 六大领域的专业知识,让 AI 更准确地编写代码、调用 API、排查错误。
这个仓库源于真实项目中的反复踩坑——GDAL 命令参数记不住、CesiumJS 的 API 版本总对不上、FreeCAD 的 Python API 每次都要重新翻阅上百页文档。与其每次都把零散的提示词粘贴进聊天框,不如把它们沉淀成一套结构化的、可版本管理的、被 AI 工具原生支持的技能文件。这正是 OpenGIS-Skills 要做的事情。
本教程基于 znlgis/opengis-skills 仓库当前版本(截至 2026 年 10 月,114 个技能文件)全面分析整理,面向中文读者系统讲解设计理念、三层索引架构、SKILL.md 编写规范、与主流 AI 工具的集成方式,以及六大领域每个技能的深度解析。
1.1 一句话理解
OpenGIS-Skills 是一套用 Markdown 编写的”AI 专业技能教材”——你把它放进项目里,AI 编程助手就会自动习得 GIS/CAD/C#/AI/IoT/3D 六大领域的专业知识。
它不改变 AI 工具本身,也不重新训练模型,而是利用当今主流 AI 编程助手都支持的 Skill/Agent Skill/Rules/Instructions 机制,在对话上下文中按需注入领域知识。你可以把它理解为:
- 一本给 AI 看的”GIS 开发速查手册”
- 一份可版本管理、可团队共享的”AI 提示词库”
- 一套覆盖六大领域的”专业开发知识图谱”
因为知识是以纯文本 Markdown 文件形式存在的,它天然具备可读性、可维护性、可贡献性——人类开发者可以直接阅读和审校内容,AI 工具可以高效解析和执行其中的指令。
1.2 它解决什么问题
传统 AI 辅助编程在专业领域开发中面临四个核心痛点,OpenGIS-Skills 针对性地给出了解法。
痛点一:AI 不懂专业领域
通用大语言模型对 Web 开发、Python 脚本等常见场景表现尚可,但遇到专业领域库就直接暴露短板:
- 让 AI 写 GDAL 的矢量数据投影转换代码,它可能编造一个不存在的
gdal.ProjectVector()函数 - 让 AI 调用 CesiumJS 的 3D Tiles 加载 API,它给出的方法签名可能来自三年前的旧版本文档
- 让 AI 操作 FreeCAD 的 PartDesign 工作台,它可能混淆 Part 模块和 PartDesign 模块的 API
OpenGIS-Skills 的解法: 每个技能文件都包含该工具的真实 API 签名、正确用法示例、常见错误排查——这些内容基于官方文档实地核对,不是从 AI 训练数据中”猜测”出来的。AI 加载技能后,相当于有了一份准确的参考手册。
痛点二:上下文爆炸
把整个 GDAL 官方文档(几千页)或 CesiumJS API 参考塞进提示词里,既不现实也不经济——当前主流模型的上下文窗口虽然越来越大,但长上下文中信息检索的准确性会下降,Token 成本也直线上升。
OpenGIS-Skills 的解法: 采用三层索引架构,AI 先读全局索引导航、再按需加载具体技能,每次只注入当前任务真正需要的那几 KB 知识。一个典型的 GDAL 重投影任务,AI 只需要加载 gis/gdal/SKILL.md(约 10-20 KB),而不是整个 GIS 知识库。
痛点三:知识无法复用
团队中每个开发者每次遇到同样的 GDAL 命令拼写错误、同样的 CesiumJS API 版本问题,都要花费时间重新向 AI 解释、重新调试、重新验证。张三踩过的坑李四还要再踩一遍。
OpenGIS-Skills 的解法: 技能文件是可提交进 Git 的文本资产。一次编写,全团队(甚至全社区)永久复用。当 GDAL 升级到新版本,只需更新一个技能文件,所有开发者的 AI 助手同步获得最新知识。
痛点四:信息过时
AI 大模型的训练数据存在截止日期,而 GIS 和 CAD 工具库的版本迭代速度非常快——GDAL 每半年一个大版本、CesiumJS 每月都有新发布、FreeCAD 的 Python API 随主版本不断变化。
OpenGIS-Skills 的解法: 技能文件是手写的内容,由社区维护者根据最新版本文档持续更新。当工具的 API 发生变化时,技能文件的更新速度远快于模型重训练周期。
1.3 核心特性
1.3.1 114 个技能,覆盖六大领域
OpenGIS-Skills 当前包含 114 个技能文件(截至 2026 年 10 月),横跨 GIS、CAD、C#、AI、IoT、3D 六个专业领域,外加 Others(通用工具)与 demos(项目演示)两个分类。每个技能都包含该工具的核心理念、常用 API、代码示例和典型错误排查。
这种广度意味着:一个同时做 GIS 后端(GDAL/GeoServer)和前端(CesiumJS/OpenLayers)的全栈 GIS 开发者,只需要这一套技能集就能覆盖日常工作 80% 以上的专业 API 查询需求。
1.3.2 三层索引架构:全局入口 → 分类索引 → 项目技能
这是 OpenGIS-Skills 最核心的设计思想,也是它区别于普通”提示词合集”的关键所在:
- 第一层:根 SKILL.md——AI 加载后获得全部 114 个技能的全局索引,包括每个技能的名称、简介、适用场景、文件路径。这一层约 5-10 KB,足够 AI 完成后续导航。
- 第二层:分类索引——
gis/SKILL.md、cad/SKILL.md等八个分类概述文件,详细描述该领域下所有技能的功能侧重、彼此关系、推荐组合。 - 第三层:项目技能——具体的工具技能文件,如
gis/gdal/SKILL.md,包含 API 签名、代码示例、CLI 命令模板、常见错误和解决方案。
这个设计让 AI 实现了”先看目录、再翻章节”的高效信息获取模式,避免了每次对话都把整个知识库灌进上下文的低效做法。
1.3.3 统一的 SKILL.md 规范
所有技能文件遵循统一的格式规范:
- YAML frontmatter:声明技能名称、分类、标签、适用 AI 工具列表等元数据,供 AI 工具做索引和搜索
- 结构化正文:包含概述、核心 API、代码示例(含 Python/JS/C#/bash 多语言)、常见错误、参考链接
- 中文为主 + 代码示例丰富:面向国内开发者,正文以中文撰写,但 API 签名、命令参数等关键信息保留英文原文以避免歧义
1.3.4 兼容主流 AI 工具
OpenGIS-Skills 不与任何特定工具绑定。目前已验证兼容的 AI 编程助手包括:
- Claude Code(Anthropic):通过
@path/to/SKILL.md引用技能文件 - Cursor:将技能文件目录添加到项目 Rules 或作为上下文文件
- Cline(VS Code 插件):通过
.clinerules或直接引用技能文件 - VS Code Copilot Chat:通过
#file:path/to/SKILL.md引用 - DeepSeek 系列:作为
.deepseek/rules/目录下的规则文件加载 - OpenCode:通过 Skill 机制或
AGENTS.md引用 - Pi Agent、OpenClaw、Hermes Agent 等其他 AI 编码代理
无论你用的哪款工具,只需一种方式把技能文件内容注入 AI 的上下文即可——具体方法在第四章《AI 工具集成指南》中逐一详解。
1.3.5 MIT 开源许可证
OpenGIS-Skills 以 MIT 许可证开源,意味着你可以:
- 自由使用、修改、分发这些技能文件
- 将其集成到商业产品或内部工具中
- Fork 后衍生出面向特定行业(如测绘、规划、BIM)的定制版本
社区贡献通过 Pull Request 进行,所有贡献者保留署名权。详见第十二章《贡献指南与社区》。
1.4 30 秒快速体验
以下是最简单的上手流程,不涉及任何安装或配置——前提是你已经有一个支持 Skill 机制的 AI 编程助手(以 Claude Code 为例)。
第一步:克隆仓库
git clone https://github.com/znlgis/opengis-skills.git
cd opengis-skills
第二步:在 AI 助手中加载技能
# 在 Claude Code 中,用 @ 引用根入口
@SKILL.md
AI 会立即读取根索引,获得 114 个技能的全局视图。此时它已经知道 gis/gdal/SKILL.md 是 GDAL 的技能文件、gis/cesiumjs/SKILL.md 是 CesiumJS 的技能文件,以此类推。
第三步:加载具体技能并提问
# 加载 GDAL 技能
@gis/gdal/SKILL.md
# 现在向 AI 提问
"帮我把 data/input.shp 转成 GeoJSON 并重投影到 EPSG:4326"
AI 会利用技能文件中的 GDAL CLI 知识,准确给出类似以下命令:
ogr2ogr -f GeoJSON -t_srs EPSG:4326 output.geojson data/input.shp
它还能解释每个参数的含义、指出 -t_srs 和 -s_srs 的区别、提醒你 GeoJSON 格式不支持多几何类型的注意事项。
同样的流程适用于任何技能。再举一个 C# 开发的例子:
# 加载 SQLSugar 技能
@csharp/sqlsugar/SKILL.md
# 提问
"用 SQLSugar 写一个分页查询,按创建时间倒序,每页 20 条"
AI 会基于技能文件中的 SQLSugar ORM API 知识,生成正确的 C# 代码并解释 ToPageListAsync 的参数。
零配置也可以直接使用
如果你不想克隆整个仓库,也可以直接在 AI 对话中粘贴技能文件的 Web URL:
请阅读并学习以下技能文件的内容:
https://raw.githubusercontent.com/znlgis/opengis-skills/main/gis/gdal/SKILL.md
然后帮我...
这种方式适合快速试用,但不适合日常使用(每次都要手动粘贴 URL)。长期使用建议克隆仓库到本地并配置 AI 工具自动加载。
1.5 适用人群
OpenGIS-Skills 的价值对不同角色的开发者有不同的体现:
GIS/CAD 开发者
你每天和 GDAL、GeoServer、PostGIS、CesiumJS、OpenLayers、FreeCAD、OCCT 这些专业库打交道。你希望 AI 编程助手能准确写出可运行的代码,而不是编造 API 或使用过时的方法签名。OpenGIS-Skills 就是你的”AI 专业技能外挂”,让它真正理解你的领域。
团队技术负责人 / Tech Lead
你希望把团队积累的 GIS 数据处理 SOP、C# 后端开发规范、CAD 自动化脚本模板沉淀为可复用的知识资产,而不是散落在每个人的聊天记录里。OpenGIS-Skills 的 SKILL.md 规范提供了一种标准化的知识编码方式——你既可以复用社区已有的 114 个技能,也可以按相同规范编写团队专属技能。
全栈 GIS 项目团队
你的项目同时涉及 Web 前端(CesiumJS/OpenLayers)、后端服务(GeoServer/Furion/SqlSugar)、数据处理(GDAL/Geopandas/PyQGIS),团队成员各司其职但都需要 AI 辅助。用一套 OpenGIS-Skills 覆盖所有技术栈,避免了”前端团队自己找 CesiumJS 提示词、后端团队另外整理 GeoServer 提示词”的分裂状态。
开源 GIS/CAD 项目维护者
你维护着一个 GIS 或 CAD 相关的开源项目,希望让 AI 工具更好地支持你的项目 API。你可以参照 OpenGIS-Skills 的规范,为你的项目编写专属技能文件,甚至可以贡献回主仓库,让更多开发者受益。
AI 工具重度用户
你已经深度使用 Claude Code、Cursor、Cline 等 AI 编程助手,但目前主要靠临时编写的提示词或从聊天记录中复制粘贴。你发现散乱的提示词难以维护、效果不稳定。OpenGIS-Skills 给你一套结构化的、可持续改进的知识管理方案——用技能文件替代一次性提示词。
1.6 技能领域总览
OpenGIS-Skills 当前 114 个技能按领域分布如下:
| 领域 | 技能数 | 代表技能 | 核心用途 |
|---|---|---|---|
| GIS(地理信息系统) | 40 | gdal, geoserver, cesiumjs, openlayers, geopandas, pyqgis, postgis, geotools, geolibre, duckdb-spatial |
空间数据处理全链路:数据转换、地图服务发布、Web 可视化、空间分析、遥感处理、云原生 GIS 应用 |
| CAD(计算机辅助设计) | 21 | occt, freecad, clipper2, ifoxcad, kicad, openscad, librecad |
几何建模引擎、参数化设计、工程制图、PCB 设计、路径规划与布尔运算 |
| C#(.NET 企业开发) | 12 | furion, sqlsugar, npoi, admin-net-backend, reogrid, sentry, serilog, polly, hangfire |
Web API 框架、ORM 数据访问、Office 文档处理、后台管理系统、电子表格控件、结构化日志、弹性容错、后台任务 |
| AI(人工智能与 Agent 生态) | 17 | dify, opencode, openclaw, docutranslate, hermes-agent, pi, vllm, crewai, mineru |
LLM 应用开发平台、AI 编码代理配置、多通道消息网关、文档翻译与解析、Agent 编排、推理服务 |
| IoT(物联网与嵌入式) | 4 | ke3036-keyes-pico, node-red, home-assistant, esphome |
树莓派 Pico / MicroPython 嵌入式开发,低代码 IoT 数据流编排,家居自动化与固件生成 |
| 3D(三维可视化与 BIM) | 6 | supersplat, ara3d-sdk, elements, opencsg-net, photo-sphere-viewer, open3d |
3D 高斯泼溅(3DGS)编辑、.NET 三维/BIM 网格处理、纯 C# 建筑生成、CSG 建模、360° 全景查看、点云与网格处理 |
| Others(通用工具) | 10 | go, robotgo, ruoyi-cloud, acme.sh, billionmail, docker-compose, bamboobuddy, ffmpeg |
编程语言速查、桌面自动化、若依微服务框架、HTTPS 证书管理、自托管邮件平台、容器编排、儿童游戏、音视频处理 |
| demos(项目演示) | 4 | map-360-demo, vue3-map-dashboard, ai-water-front, openlayers-vue3-demo |
Vue 3 地图/全景演示工程:360° 全景联动、可视化大屏、AI 水务前端、GeoServer 图层树 |
GIS 领域(40 个技能)细览
GIS 是 OpenGIS-Skills 中规模最大的领域,覆盖了空间数据处理的完整链路:
| 子领域 | 技能 | 说明 |
|---|---|---|
| 数据转换与处理 | gdal |
GDAL/OGR CLI 与 Python API,矢量/栅格数据格式转换、投影变换、数据裁剪 |
geopandas |
Python 地理数据分析库,GeoDataFrame 操作、空间连接、几何运算 | |
pyqgis |
QGIS Python API,自动化制图、数据处理脚本、插件开发 | |
geotools |
Java GIS 工具集,OGC 标准参考实现、数据访问、几何运算 | |
proj |
坐标转换与投影引擎,CRS 定义、EPSG 坐标数据库、转换管线 | |
| 空间数据库 | postgis |
PostgreSQL 空间扩展,空间索引、空间查询、栅格与矢量操作 |
duckdb-spatial |
DuckDB 空间扩展,列式引擎上的空间 SQL 与 GeoParquet 输出 | |
spatialite |
SQLite 空间扩展,单文件空间数据库、RTree 索引 | |
| 地图服务 | geoserver |
开源地图服务器,WMS/WFS/WCS 发布、样式配置(SLD)、图层组管理 |
geoserver-cloud |
GeoServer 云原生微服务架构,容器化服务拆分、Kubernetes 部署 | |
mapserver |
C 语言实现的 OGC 地图服务引擎,Mapfile 配置、WMS/WFS 发布 | |
qgis-server |
将 QGIS 工程发布为 OGC 服务(WMS/WFS/WMTS),项目文件驱动 | |
| Web 前端可视化 | cesiumjs |
三维地球引擎,3D Tiles、Entity/CZML、相机控制、地形与影像图层 |
openlayers |
二维 Web 地图库,图层管理、交互控件、矢量渲染、投影转换 | |
mapsui |
.NET 跨平台地图控件,SkiaSharp 渲染,嵌入 WPF/MAUI/Avalonia/Blazor | |
leaflet |
轻量级 Web 2D 地图库,插件生态丰富、GeoJSON 图层、移动端友好 | |
mapbox-gl-js |
矢量瓦片 WebGL 地图库,样式规范驱动、自定义图层扩展 | |
deck-gl |
基于 WebGL 的大规模数据可视化框架,GPU 渲染海量点与轨迹 | |
| 桌面 GIS | qgis-process |
QGIS 无头批处理,处理工具箱算法、模型构建器、命令行自动化 |
| 遥感与影像 | gdal(栅格子集) |
影像配准、波段运算、金字塔构建、COG(Cloud Optimized GeoTIFF) |
| 空间分析 | geopandas + pyqgis |
缓冲区、叠加分析、网络分析、空间统计 |
grass-gis |
模块化地理处理套件,栅格/矢量分析与命令行批处理 | |
| 点云与 LiDAR | pdal |
点云处理流水线,LAS/LAZ 读写、滤波、裁剪、重投影 |
whitebox-tools |
Rust 地形/水文/LiDAR 分析引擎,CLI 与 Python 双入口 | |
| 桌面与平台应用 | geolibre |
云原生 GIS 应用(浏览器/桌面/Notebook/MCP),自带 DuckDB-WASM 空间分析 |
geonode |
地理空间 CMS:Django + GeoServer + PostGIS 数据门户 | |
| 坐标转换 | projnet4geoapi |
.NET 坐标参考系与投影引擎(NuGet ProjNet 2.x) |
CAD 领域(21 个技能)细览
CAD 领域的技能覆盖了几何内核、参数化建模、工程制图、电子设计自动化(EDA)和网格处理:
| 子领域 | 技能 | 说明 |
|---|---|---|
| 几何内核 | occt |
Open CASCADE Technology,BREP/STEP/IGES 几何表示、布尔运算、倒角/抽壳 |
| 参数化建模 | freecad |
FreeCAD Python API,Part/PartDesign/Sketcher/Draft 工作台脚本 |
cadquery |
基于 OCCT 的 Python 参数化建模库,流畅的 Builder API | |
solvespace |
轻量级参数化 2D/3D CAD,约束求解、布尔运算、STEP/DXF 导出 | |
blender |
Blender Python API(bpy),脚本化 3D 建模、渲染与 glTF 导出 | |
| 几何工具库 | clipper2 |
2D 多边形裁剪与偏移,布尔运算(交集/并集/差集)、路径偏移 |
clipper1 |
Clipper 1.x 旧版本,部分遗留场景仍在使用 | |
| 工程制图 | libredwg |
自由 DWG/DXF 读写库,解析与生成 CAD 图纸 |
design-drawing-svg-md |
设计图 SVG+Markdown 双载体记录,钢结构施工图可复现描述 | |
| 电子设计 | kicad |
KiCad Python API,PCB 设计自动化、原理图脚本、元件库管理 |
| CAD 框架/平台 | ifoxcad |
基于 .NET 的 CAD 开发框架,适用于 AutoCAD 二次开发 |
lightcad |
轻量级 Web 2D CAD 框架,基于 Fabric.js |
C# 领域(12 个技能)细览
面向 .NET 企业开发的技能集,从后端框架到数据处理全覆盖:
| 技能 | 说明 |
|---|---|
furion |
.NET Web API 框架,动态控制器、JWT 鉴权、Swagger、定时任务 |
sqlsugar |
国产 ORM 框架,支持多数据库、导航查询、分库分表、AOP 拦截 |
sod |
PDF.NET SOD,ORM + SQL-MAP + OQL 三合一数据访问框架 |
npoi |
Office 文件处理,Excel/Word 读写(xlsx/docx),批量报表生成 |
reogrid |
.NET 电子表格控件,可嵌入的 Excel 式表格编辑器与公式引擎 |
admin-net-backend |
Admin.NET 后端(基于 Furion),RBAC 权限、代码生成器 |
admin-net-frontend |
Admin.NET 前端(Vue 3 + Vite + Element Plus) |
dotnet-reactor |
.NET 代码保护,混淆、加壳、反编译防护、许可证管理 |
sentry |
Sentry .NET SDK,错误追踪与性能监控 |
serilog |
结构化日志库,sink/enricher/appsettings 配置、ASP.NET Core 请求日志 |
polly |
弹性与容错,v8 ResiliencePipeline 组合重试/超时/断路器/限流 |
hangfire |
后台任务框架,持久化队列、延迟任务、Cron 调度与 Dashboard |
AI 领域(17 个技能)细览
AI 领域技能本身不是教 AI 如何写代码,而是教你如何配置和使用 AI 编程工具本身:
| 技能 | 说明 |
|---|---|
dify |
LLM 应用开发平台,可视化编排工作流、RAG 知识库、Agent 策略配置 |
opencode |
终端优先的 AI 编码代理,配置体系、Agent 路由、Skill 编写、Token 优化 |
openclaw |
多通道消息网关型 AI Agent,支持微信/钉钉/飞书/Telegram/Discord 等多平台接入 |
hermes-agent |
语音+视觉+浏览器的多模态 AI Agent,插件系统、技能记忆、自学习闭环 |
pi |
极简可扩展终端 AI 编码代理(Agent Harness),多 Provider 抽象、容器沙箱执行 |
docutranslate |
基于大模型的文档翻译系统,支持 PDF/Word/Markdown/XML 等多格式 |
superpowers-zh |
中文 AI 编程方法论 Skills 集合,提供 brainstorming/TDD/systematic-debugging 等流程技能 |
oh-my-openagent |
OpenCode 多模型编排与增强插件,并行 Agent、AST/LSP/MCP 集成 |
deepseek-harness |
DeepSeek Harness(dsh),插件化 DeepSeek 智能体框架 |
my-opencode-deepseek-config |
OpenCode × DeepSeek 的最优配置参考 |
langchain |
LLM 应用与 Agent 开发框架,链式编排、工具调用、RAG 集成 |
ollama |
本地大模型推理运行时,模型拉取/运行、REST API 调用 |
llamaindex |
RAG 索引与查询框架,文档加载、向量索引、检索增强问答 |
huggingface-transformers |
Hugging Face 模型推理与微调框架,Pipeline、Tokenizer、PyTorch 生态 |
vllm |
高吞吐 LLM 推理服务,PagedAttention、连续批处理、OpenAI 兼容 API |
crewai |
角色化多 Agent 协作框架,Agent/Task/Crew 与 Flows 事件编排 |
mineru |
PDF/Office → Markdown/JSON 文档解析引擎,公式与表格识别 |
IoT 领域(4 个技能)
当前 IoT 领域规模较小,但代表了一种方向——为嵌入式开发与物联网数据流编排编写 AI 技能:
| 技能 | 说明 |
|---|---|
ke3036-keyes-pico |
基于树莓派 Pico + MicroPython 的嵌入式开发,覆盖 GPIO、ADC、I2C、SPI、PWM、传感器驱动、舵机控制 |
node-red |
低代码 IoT 数据流编排,基于 Node.js 的可视化流程编程、MQTT/HTTP 节点 |
home-assistant |
本地优先家居自动化平台,YAML 自动化 + REST/WebSocket API + MQTT |
esphome |
用 YAML 生成 ESP32/ESP8266 固件,OTA 升级、Home Assistant 原生 API |
3D 领域(6 个技能)
面向三维可视化、BIM/建筑生成、CSG 建模、360° 全景和 3D 高斯泼溅(3D Gaussian Splatting)的前沿方向:
| 技能 | 说明 |
|---|---|
supersplat |
3D 高斯泼溅编辑器,.ply/.splat 格式处理、压缩/裁剪/变换/导出 |
ara3d-sdk |
面向 AEC 的高性能 .NET 三维/BIM 库集合,格式转换、网格处理 |
elements |
Hypar Elements,纯 C# 编程生成建筑/BIM 模型(含 IFC/glTF 导出) |
opencsg-net |
OpenCSG.NET,零依赖 .NET CSG 布尔建模库(STL 输出) |
photo-sphere-viewer |
JavaScript 360° 全景照片/球体查看器(Three.js 驱动) |
open3d |
点云与网格处理库,Python/C++ API、点云配准、网格重建与可视化 |
Others(10 个技能)
收纳跨领域的通用开发工具:
| 技能 | 说明 |
|---|---|
go |
Go 语言速查,并发模式(goroutine/channel)、标准库要点、常见工程模式 |
robotgo |
Go 语言的桌面自动化库,鼠标/键盘模拟、屏幕截图、窗口管理 |
robotgo-flow |
基于 robotgo 的 YAML 驱动 Windows RPA 框架,声明式流程编排 |
ruoyi-cloud |
若依微服务版,Spring Cloud 微服务架构、权限管理、代码生成 |
acme.sh |
免费 HTTPS 证书管理,自动化续期、DNS API 集成、多种部署模式 |
billionmail |
自托管邮件营销与事务邮件平台,群发/自动化 drip/多通道投递 |
chags |
中国历史典故儿童游戏合集(Vue 3 + Phaser),教育类小游戏参考 |
docker-compose |
多容器应用编排工具,Compose 文件语法、服务依赖、网络与卷管理 |
bamboobuddy |
儿童日常习惯养成小游戏(pnpm workspace + Vue3 + Phaser) |
ffmpeg |
音视频转码与切片:抽帧做纹理、HLS 切片、RTSP 拉流 |
1.7 仓库概览
基本信息
| 属性 | 内容 |
|---|---|
| 仓库地址 | https://github.com/znlgis/opengis-skills |
| Stars | 61+(截至 2026 年 9 月) |
| 许可证 | MIT |
| 技能数量 | 114 个(持续增长中) |
| 语言 | 中文为主,API/命令保留英文原词 |
| 贡献方式 | Fork → PR → Code Review → Merge |
目录结构
opengis-skills/
├── SKILL.md # 全局入口(第一层):114 个技能的索引清单
│
├── gis/ # GIS 领域(40 个技能)
│ ├── SKILL.md # GIS 分类索引(第二层)
│ ├── gdal/SKILL.md # GDAL - 空间数据转换瑞士军刀
│ ├── geoserver/SKILL.md # GeoServer - 开源地图服务器
│ ├── cesiumjs/SKILL.md # CesiumJS - 三维地球前端引擎
│ ├── openlayers/SKILL.md # OpenLayers - 二维 Web 地图库
│ ├── geopandas/SKILL.md # GeoPandas - Python 地理数据分析
│ ├── pyqgis/SKILL.md # PyQGIS - QGIS Python API
│ ├── postgis/SKILL.md # PostGIS - 空间数据库
│ ├── mapsui/SKILL.md # MapsUI - .NET 跨平台地图控件
│ ├── sharpmap/SKILL.md # SharpMap - .NET 地图渲染组件
│ ├── shapely/SKILL.md # Shapely - Python 几何对象与运算
│ ├── qgis-process/SKILL.md # QGIS 批处理 - 命令行无头处理
│ ├── geoserver-cloud/SKILL.md # GeoServer Cloud - 云原生微服务
│ ├── geotools/SKILL.md # GeoTools - Java GIS 工具集
│ ├── jts/SKILL.md # JTS - Java 几何拓扑引擎
│ ├── geolibre/SKILL.md # 云原生 GIS 应用
│ ├── duckdb-spatial/SKILL.md # DuckDB 空间扩展
│ ├── spatialite/SKILL.md # SQLite 空间扩展
│ ├── whitebox-tools/SKILL.md # 地形/水文分析引擎
│ └── ...
│
├── cad/ # CAD 领域(21 个技能)
│ ├── SKILL.md # CAD 分类索引(第二层)
│ ├── occt/SKILL.md # Open CASCADE Technology
│ ├── freecad/SKILL.md # FreeCAD Python API
│ ├── clipper2/SKILL.md # 2D 多边形裁剪与偏移
│ ├── ifoxcad/SKILL.md # .NET CAD 开发框架
│ ├── kicad/SKILL.md # KiCad PCB 设计
│ ├── openscad/SKILL.md # OpenSCAD - 脚本式 3D CAD
│ ├── cadquery/SKILL.md # Python 参数化 CAD
│ ├── solvespace/SKILL.md # SolveSpace - 轻量参数化 CAD
│ ├── librecad/SKILL.md # LibreCAD - 开源 2D CAD
│ ├── libredwg/SKILL.md # LibreDWG - DWG 读写库
│ ├── qcad/SKILL.md # QCAD - 开源 2D CAD
│ ├── clipper1/SKILL.md # Clipper 1.x - 多边形裁剪
│ └── ...
│
├── csharp/ # C# 领域(12 个技能)
│ ├── SKILL.md # C# 分类索引(第二层)
│ ├── furion/SKILL.md # .NET Web API 框架
│ ├── sqlsugar/SKILL.md # 国产 ORM 框架
│ ├── npoi/SKILL.md # Office 文件处理
│ ├── admin-net-backend/SKILL.md # Admin.NET 后端框架
│ ├── reogrid/SKILL.md # .NET 电子表格控件
│ ├── sentry/SKILL.md # Sentry .NET 错误追踪
│ ├── serilog/SKILL.md # 结构化日志
│ ├── polly/SKILL.md # 弹性容错
│ ├── hangfire/SKILL.md # 后台任务调度
│ └── ...
│
├── ai/ # AI 与 Agent 生态(17 个技能)
│ ├── SKILL.md # AI 分类索引(第二层)
│ ├── dify/SKILL.md # LLM 应用开发平台
│ ├── opencode/SKILL.md # AI 编码代理配置
│ ├── openclaw/SKILL.md # 多通道消息网关
│ ├── hermes-agent/SKILL.md # 多模态 AI Agent
│ ├── pi/SKILL.md # 极简终端 AI 编码代理
│ ├── docutranslate/SKILL.md # 文档翻译系统
│ ├── vllm/SKILL.md # 高吞吐推理服务
│ ├── crewai/SKILL.md # 多 Agent 协作框架
│ ├── mineru/SKILL.md # 文档解析引擎
│ ├── superpowers-zh/SKILL.md # 中文 AI 编程方法论
│ └── ...
│
├── iot/ # IoT 物联网(4 个技能)
│ ├── SKILL.md # IoT 分类索引(第二层)
│ ├── ke3036-keyes-pico/SKILL.md # 树莓派 Pico 开发
│ ├── node-red/SKILL.md # Node-RED 数据流编排
│ ├── home-assistant/SKILL.md # 家居自动化平台
│ └── esphome/SKILL.md # ESP32/ESP8266 固件生成
│
├── 3d/ # 3D 三维可视化(6 个技能)
│ ├── SKILL.md # 3D 分类索引(第二层)
│ ├── supersplat/SKILL.md # 3D 高斯泼溅编辑器
│ ├── ara3d-sdk/SKILL.md # .NET 三维/BIM 处理 SDK
│ ├── elements/SKILL.md # 纯 C# 建筑/BIM 生成
│ ├── opencsg-net/SKILL.md # .NET CSG 布尔建模
│ ├── photo-sphere-viewer/SKILL.md # 360° 全景查看器
│ └── open3d/SKILL.md # 点云与网格处理
│
├── others/ # 通用工具(10 个技能)
│ ├── SKILL.md # Others 分类索引(第二层)
│ ├── go/SKILL.md # Go 语言速查
│ ├── robotgo/SKILL.md # 桌面自动化
│ ├── robotgo-flow/SKILL.md # YAML 驱动 RPA
│ ├── ruoyi-cloud/SKILL.md # 若依微服务
│ ├── acme.sh/SKILL.md # HTTPS 证书管理
│ ├── billionmail/SKILL.md # 自托管邮件平台
│ ├── chags/SKILL.md # 儿童历史典故小游戏
│ ├── docker-compose/SKILL.md # 多容器编排
│ ├── bamboobuddy/SKILL.md # 儿童养成小游戏
│ └── ffmpeg/SKILL.md # 音视频转码与切片
│
└── demos/ # 项目演示(4 个技能)
├── SKILL.md # demos 分类索引(第二层)
├── map-360-demo/SKILL.md # 全景地图联动演示
├── vue3-map-dashboard/SKILL.md # 可视化大屏
├── ai-water-front/SKILL.md # AI 水务前端
└── openlayers-vue3-demo/SKILL.md # GeoServer 图层树演示
结构设计的几个要点:
- 每个目录都是三层架构的组成部分——
SKILL.md在项目根目录是第一层(全局索引),在各领域目录下是第二层(分类索引),在各工具目录下是第三层(具体技能)。 - 扁平而非深层嵌套——最多三层目录深度,技能路径简单直观(
gis/gdal/SKILL.md而不是gis/vector/ogr/gdal/SKILL.md)。 - 约定优于配置——
SKILL.md是固定命名,AI 工具可以自动发现而无需配置文件指定路径。 - 人类可直接浏览——即便不用 AI 工具,开发者也可以在 GitHub 上直接浏览和搜索这些技能文件,把它们当做一份结构化的技术速查手册。
1.8 教程阅读建议
本教程共 12 章,不同诉求的读者可以选择不同的阅读路径。以下给出三种典型路径:
路径一:使用者——只想用技能,不想写技能
核心章节: 第一章(本文)→ 第二章(三层索引架构)→ 第四章(AI 工具集成指南)
按需查阅: 第五章(GIS 技能详解)→ 第六章(CAD 技能详解)→ 第七章(C# 技能详解)→ 第八章(AI 与 Agent 技能详解)→ 第九章(IoT / 3D / Others 详解)
推荐理由: 你先建立对仓库的整体认知(第一章),然后理解技能如何组织和加载(第二章),最后学会在自己的 AI 工具中正确加载技能(第四章)。之后在工作中有需要时,按领域查阅第五至九章中具体技能的详细说明。
时间估算: 核心路径约 1-2 小时,完整通读约 4-6 小时。
路径二:贡献者——想为社区贡献新技能
核心章节: 第一章(本文)→ 第三章(SKILL.md 编写规范)→ 第十二章(贡献指南与社区)
补充阅读: 第二章(理解现有技能的组织方式)→ 第十一章(最佳实践与 FAQ,避免常见坑)
推荐理由: 在了解项目概况后,优先吃透技能文件的编写规范(第三章),这是贡献新技能的前置知识。然后阅读贡献流程(第十二章),了解如何提交 PR、如何通过 Code Review。编写技能过程中遇到疑问时,查阅第十一章的最佳实践和常见问题。
时间估算: 核心路径约 2-3 小时,动手写第一个技能约 3-5 小时。
路径三:全面掌握——从理念到实战的系统学习
按顺序通读全部 12 章:
- 第一章(本文):建立整体认知
- 第二章(三层索引架构):理解核心设计思想
- 第三章(SKILL.md 编写规范):掌握技能文件格式
- 第四章(AI 工具集成指南):学会在各种工具中加载技能
- 第五章(GIS 技能详解):逐一学习 40 个 GIS 技能
- 第六章(CAD 技能详解):逐一学习 21 个 CAD 技能
- 第七章(C# 技能详解):逐一学习 12 个 C# 技能
- 第八章(AI 与 Agent 技能详解):逐一学习 17 个 AI 技能
- 第九章(IoT / 3D / Others 详解):逐一学习剩余 20 个技能
- 第十章(实战工作流组合):跨技能协作解决真实场景问题
- 第十一章(最佳实践与 FAQ):避坑指南与常见问题解答
- 第十二章(贡献指南与社区):参与社区、提交贡献
推荐理由: 适合技术负责人、全栈 GIS 开发者,或者计划深度使用并可能二次开发技能集的读者。前四章提供方法论基础,五至九章是工具书式的参考内容,最后三章将方法论和实践落地结合。
时间估算: 完整通读约 10-15 小时,建议分 3-5 天完成。
快速跳转
无论选择哪条路径,以下链接可以帮你快速定位:
| 你想…… | 直接看 |
|---|---|
| 了解技能是如何组织和加载的 | 第二章:三层索引架构 |
| 学习怎么写一个技能文件 | 第三章:SKILL.md 编写规范 |
| 搞清楚怎么在 Cursor/Claude Code 里加载技能 | 第四章:AI 工具集成指南 |
| 查询某个 GIS 技能的 API | 第五章:GIS 技能详解 |
| 查询某个 CAD 技能的用法 | 第六章:CAD 技能详解 |
| 查 GDAL 的投影转换命令 | 第五章 GIS 技能详解 → gdal |
| 查 CesiumJS 的 3D Tiles 加载 | 第五章 GIS 技能详解 → cesiumjs |
| 查 FreeCAD 的 Python 脚本 | 第六章 CAD 技能详解 → freecad |
| 查 SQLSugar 的分页查询 | 第七章 C# 技能详解 → sqlsugar |
| 跨技能组合做一个完整工作流 | 第十章:实战工作流组合 |
本章到此结束。接下来请进入第二章《三层索引架构》,深入理解 OpenGIS-Skills 最核心的设计思想——如何用三层结构让 AI 在 114 个技能中精准找到当前任务需要的那一个。