Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add znlgis/opengis-skills --skill sharpmapgit clone --depth 1 https://github.com/znlgis/opengis-skillsWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/znlgis/opengis-skills/sharpmap)<a href="https://agentmods.dev/skills/znlgis/opengis-skills/sharpmap"><img src="https://agentmods.dev/badge/skills/znlgis/opengis-skills/sharpmap/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/znlgis/opengis-skills/sharpmap"><img src="https://agentmods.dev/badge/skills/znlgis/opengis-skills/sharpmap.svg" alt="Reviewed on agentmods" width="80" height="20"></a>- NVIDIA SkillSpector pass
What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00044 | $0.02254 |
| Opus 5 | $0.00022 | $0.01127 |
| Sonnet 5 | $0.00009 | $0.00451 |
| Haiku 4.5 | $0.00004 | $0.00225 |
Grade A, and why
sharpmap scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured yesterday.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 303 lines — stays where its author put it; the contents beside it link to each section on GitHub.
项目地址: https://github.com/SharpMap/SharpMap
官方文档: https://github.com/SharpMap/SharpMap/wiki
NuGet:
SharpMap、SharpMap.UI.WinForms许可证: LGPL-2.1
概述
SharpMap 提供:
- 数据源:Shapefile、PostGIS、SQL Server Spatial、Oracle Spatial、SQLite/SpatiaLite、WMS、WFS、TileSource(OSM/Bing)
- 图层模型:
VectorLayer、LabelLayer、TileLayer、WmsLayer - 样式:
VectorStyle、LabelStyle、按属性主题样式 - 坐标变换:通过
ProjNet - 几何:基于 NetTopologySuite
- 渲染:System.Drawing 位图 / WMS 服务输出
- UI 控件:WinForms
MapBox
注意:SharpMap 主要面向 .NET Framework / 较旧 .NET,新项目建议改用 Mapsui。
安装
dotnet add package SharpMap
dotnet add package SharpMap.UI.WinForms
dotnet add package SharpMap.Extensions
dotnet add package ProjNet
核心对象
| 类型 | 说明 |
|---|---|
Map |
地图 |
ILayer / VectorLayer / LabelLayer / TileLayer |
图层 |
IProvider |
数据提供者 |
VectorStyle / LabelStyle |
样式 |
WinForms 入门
using SharpMap;
using SharpMap.Layers;
using SharpMap.Data.Providers;
using SharpMap.Styles;
using System.Drawing;
var map = new Map(new Size(800, 600));
var prov = new ShapeFile("countries.shp", true);
var layer = new VectorLayer("countries", prov)
{
Style = new VectorStyle {
Fill = new SolidBrush(Color.LightGreen),
Outline = Pens.Black,
EnableOutline = true
}
};
map.Layers.Add(layer);
var labels = new LabelLayer("labels") {
DataSource = prov,
LabelColumn = "NAME",
Style = new LabelStyle { Font = new Font("Arial", 10) }
};
map.Layers.Add(labels);
map.ZoomToExtents();
mapBox1.Map = map;
mapBox1.Refresh();
PostGIS 数据源
var conn = "Host=localhost;Database=gisdb;User Id=postgres;Password=pg";
var prov = new PostGIS(conn, "poi", "geom", "id");
map.Layers.Add(new VectorLayer("poi", prov));
OSM 瓦片底图
using BruTile.Predefined;
var src = KnownTileSources.Create(KnownTileSource.OpenStreetMap);
map.Layers.Add(new TileAsyncLayer(src, "OSM"));
map.SRID = 3857;
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- yesterday Changed 4036834f2f72
- 8d ago First seen · 303 lines · 44 tokens per session scan A ff981847c389
sharpmap is a skill published in the GitHub repository znlgis/opengis-skills (60 stars, last pushed 2d ago), licensed MIT. It adds 44 tokens to every session and 2,254 once invoked, about $0.0002 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-09-03.
Other skills, from other repositories
wpf
Build and modernize WPF applications on .NET with correct XAML, data binding, commands, threading, styling, and Windows desktop migration decisions. USE FOR: working on WPF UI, MVVM, binding, commands, or desktop modernization; migrating WPF from .NET Framework to .NET; integrating newer Windows capabilities into a…
mvvm
Implement the Model-View-ViewModel pattern in .NET applications with proper separation of concerns, data binding, commands, and testable ViewModels using MVVM Toolkit. USE FOR: implementing UI separation with Model-View-ViewModel; using MVVM Toolkit (CommunityToolkit.Mvvm) for ViewModels; designing testable UI…
blazor
Build and review Blazor applications across server, WebAssembly, web app, and hybrid scenarios with correct component design, state flow, rendering, and hosting choices. USE FOR: building interactive web UIs with C# instead of JavaScript; choosing between Server, WebAssembly, or Auto render modes; designing component…
sharpconsoleui
Use SharpConsoleUI to build full terminal (TUI) applications in .NET — equally suited to full-screen single-window apps and multi-window desktops with overlapping draggable windows — using a compositor, a DOM layout engine, and 40+ reactive controls (data tables, tree views, forms, an embedded PTY terminal, markdown…
winforms
Build, maintain, or modernize Windows Forms applications with practical guidance on designer-driven UI, event handling, data binding, MVP separation, and migration to modern .NET. USE FOR: working on Windows Forms UI, event-driven workflows, or classic LOB applications; migrating WinForms from .NET Framework to modern…
Hex1b.McpServer
This skill provides guidance for AI agents working with the Hex1b TUI (Terminal User Interface) library and its MCP diagnostic tools.