chore: move skill/ into bindings/python - #3671
Open
lixun910 wants to merge 7 commits into
Open
Conversation
The kepler.gl agent skill documents the keplergl Python package built from bindings/python, so co-locate it there. plugin.json already declared repository.directory = bindings/python. Update the publish-skill workflow paths and add a pointer from the python README. Co-Authored-By: Claude Code <noreply@anthropic.com>
Contributor
There was a problem hiding this comment.
Pull request overview
Relocates the kepler.gl AI assistant skill content so it lives alongside the Python bindings (bindings/python/skill/), updating the publish workflow and Python docs to reference the new location.
Changes:
- Moved the skill directory into
bindings/python/skill/(skill docs, references, agent metadata/assets). - Updated
.github/workflows/publish-skill.ymlto build packages from the new path and keep the source zip layout asskill/.... - Updated
bindings/python/README.mdto point Python users to the shipped skill and skill releases.
Reviewed changes
Copilot reviewed 2 out of 17 changed files in this pull request and generated 1 comment.
Show a summary per file
| File | Description |
|---|---|
.github/workflows/publish-skill.yml |
Repoints path filters and packaging steps to bindings/python/skill. |
bindings/python/README.md |
Adds a pointer to the shipped skill and skill releases from the Python docs. |
bindings/python/skill/README.md |
Skill directory README with setup instructions and reference index. |
bindings/python/skill/SKILL.md |
Main skill instructions and API/config guidance for keplergl. |
bindings/python/skill/plugin.json |
Skill plugin metadata (version, repository directory, skill entrypoint). |
bindings/python/skill/cursor-plugin.json |
Cursor plugin manifest for the skill. |
bindings/python/skill/agents/openai.yaml |
Agent interface metadata for OpenAI-compatible tooling. |
bindings/python/skill/agents/assets/icon-small.svg |
Small icon asset used by agent tooling. |
bindings/python/skill/agents/assets/icon-large.svg |
Large icon asset used by agent tooling. |
bindings/python/skill/skill-references/arc-line-map.md |
Reference example for arc/line layer configs. |
bindings/python/skill/skill-references/geojson-polygon-map.md |
Reference example for GeoJSON/polygon layer configs. |
bindings/python/skill/skill-references/h3-hexagon-map.md |
Reference example for H3 hexagonId layer configs. |
bindings/python/skill/skill-references/heatmap.md |
Reference example for heatmap layer configs. |
bindings/python/skill/skill-references/hexbin-aggregation-map.md |
Reference example for hexagon aggregation layer configs. |
bindings/python/skill/skill-references/point-map.md |
Reference example for point layer configs. |
bindings/python/skill/skill-references/summary-panel.md |
Reference for adding a static HTML overlay panel to exports. |
bindings/python/skill/skill-references/trip-animation-map.md |
Reference example for trip animation layer configs. |
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
Comment on lines
+6
to
+9
| - 'bindings/python/skill/SKILL.md' | ||
| - 'bindings/python/skill/skill-references/**' | ||
| - 'bindings/python/skill/agents/**' | ||
| - 'bindings/python/skill/plugin.json' |
Plain 'pip install keplergl' resolves to the 0.3.x stable on PyPI (old API, sdist fails to build on Python 3.14), which breaks every example in the skill. Pin to the 0.4.0 prerelease until it goes stable. Co-Authored-By: Claude Code <noreply@anthropic.com>
Document the 'flow' layer type for aggregated O-D flow maps: column assignments (Lat/Lng and H3 modes, count/sourceName/targetName), the never-auto-created rule (a configless export falls back to an arc layer for O-D data), colorRange-only coloring, and the full list of flowVisConfig knobs. Verified headless Chrome renders the worked example as a Flow layer with animated lines and location totals.
Port the layer-selection guidance from the fsq-spatial-desktop map-visualization skill: a 'Picking a Layer Type' section in SKILL.md (default to flow for origin-destination requests, arc only on explicit unaggregated requests), a strengthened flow-vs-arc intro in flow-layer.md, and suggested sequential palettes. Verified the fsq fork's flow-layer.ts is an older copy of this repo's file (missing the fields-based accessors, globe occlusion and tooltip fixes), so its column-alias autodetector — which lives in that repo's spatial-agent, not kepler.gl — stays out of this skill. Co-Authored-By: Claude Code <noreply@anthropic.com>
lixun910
force-pushed
the
xli-move-skill-to-bindings-python
branch
from
August 29, 2026 06:16
c4f489f to
4d33f12
Compare
The source package step zips the entire bindings/python/skill/ directory, so the enumerated paths filter left files like README.md and cursor-plugin.json without CI signal. Trigger on all skill files instead of maintaining a per-file list. Co-Authored-By: Claude Code <noreply@anthropic.com>
The skill ships via the skill-v* release zips, so it need not be redundantly packaged into the PyPI source distribution that hatchling builds by default. Co-Authored-By: Claude Code <noreply@anthropic.com>
Adds a plugin marketplace to the repo so the skill is installable via a single command in both agents: - .claude-plugin/marketplace.json at repo root, read by Claude Code and (legacy-compatible) Codex. The plugin is resolved via git-subdir from bindings/python/skill-plugin. - Plugin wrapper with dual manifests (.claude-plugin/ and .codex-plugin/plugin.json), a SETUP.md that runs pip install on first activation, and a skills/kepler-gl mirror kept byte-identical to the canonical bindings/python/skill/ tree. - The skill frontmatter name is normalized kepler.gl -> kepler-gl to satisfy Claude's ^[a-z0-9-]+$ name rule; release zips now package the inner folder as kepler-gl so manual unzip installs also load. - test.yml gains a parity job that fails if the mirror drifts from the source of truth. Co-Authored-By: Claude Code <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Moves the kepler.gl agent skill from
skill/(repo root) tobindings/python/skill/so the keplergl python package can be used with keplergl skill to create maps (output as html file)