Requirements
- Target platform
- OpenClaw
- Install method
- Manual import
- Extraction
- Extract archive
- Prerequisites
- OpenClaw
- Primary doc
- SKILL.md
Provides Git-like version control tools for ArcGIS web maps, enabling branch management, commits, diffs, and sync with ArcGIS Portal using the gitmap CLI.
Provides Git-like version control tools for ArcGIS web maps, enabling branch management, commits, diffs, and sync with ArcGIS Portal using the gitmap CLI.
Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.
I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Tell me what you changed and call out any manual steps you could not complete.
I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Summarize what changed and any follow-up checks I should run.
Version control for ArcGIS web maps โ exposed as native OpenClaw tools.
GitMap provides Git-like version control for ArcGIS Online and Enterprise Portal web maps. This skill wraps the gitmap CLI as thin subprocess calls, exposing branch, commit, diff, push/pull, and map discovery as callable tools. 8 tools | Thin CLI wrapper | No local database | Requires: gitmap-core Python package
pip install gitmap-core
Set the following environment variables: export PORTAL_URL="https://your-org.maps.arcgis.com" export ARCGIS_USERNAME="your_username" export ARCGIS_PASSWORD="your_password" Security Note: Prefer using scoped API tokens over plaintext passwords when possible.
PORTAL_URL: Your ArcGIS Portal or AGOL URL (e.g., https://myorg.maps.arcgis.com) ARCGIS_USERNAME: Portal username ARCGIS_PASSWORD: Portal password (prefer scoped API tokens over plaintext passwords)
gitmap_list โ List available web maps from Portal (with optional filters) gitmap_status โ Show working tree status for a local GitMap repo gitmap_log โ View commit history for a repo
gitmap_commit โ Commit current map state with a message gitmap_branch โ List or create branches in a repo gitmap_diff โ Show changes between commits or branches
gitmap_push โ Push committed changes to ArcGIS Portal gitmap_pull โ Pull latest map from ArcGIS Portal
Discover web maps in Portal. gitmap_list( query=None, # Search query (e.g., "title:MyMap") owner=None, # Filter by owner username tag=None, # Filter by tag max_results=50, # Max results to return portal_url=None, # Portal URL (or use PORTAL_URL env var) username=None, # Portal username (or ARCGIS_USERNAME env var) password=None, # Portal password (or ARCGIS_PASSWORD env var) cwd=None, # Working directory (default: home) )
Show repo status. gitmap_status( cwd, # Path to GitMap repository (required) )
Commit current changes. gitmap_commit( message, # Commit message (required) cwd, # Path to GitMap repository (required) author=None, # Override commit author )
List or create branches. gitmap_branch( cwd, # Path to GitMap repository (required) name=None, # Branch name to create (omit to list) delete=False, # Delete the named branch )
Show changes between versions. gitmap_diff( cwd, # Path to GitMap repository (required) branch=None, # Compare with this branch commit=None, # Compare with this commit hash )
Push changes to Portal. gitmap_push( cwd, # Path to GitMap repository (required) branch=None, # Branch to push (default: current) portal_url=None, # Portal URL username=None, # Portal username password=None, # Portal password )
Pull changes from Portal. gitmap_pull( cwd, # Path to GitMap repository (required) branch=None, # Branch to pull (default: current) portal_url=None, # Portal URL username=None, # Portal username password=None, # Portal password )
View commit history. gitmap_log( cwd, # Path to GitMap repository (required) branch=None, # Branch to show log for limit=None, # Max commits to show )
# Find maps owned by a user gitmap_list(owner="john.doe", max_results=20) # โ returns table of maps with item IDs # Then clone manually: # cd ~/maps && gitmap clone <item_id>
# Check what changed gitmap_status(cwd="~/maps/MyWebMap") # Commit changes gitmap_commit(message="Updated layer symbology", cwd="~/maps/MyWebMap") # Push to Portal gitmap_push(cwd="~/maps/MyWebMap")
# List branches gitmap_branch(cwd="~/maps/MyWebMap") # Create a feature branch gitmap_branch(name="feature/new-basemap", cwd="~/maps/MyWebMap") # After editing, commit and push feature branch gitmap_commit(message="Added satellite basemap", cwd="~/maps/MyWebMap") gitmap_push(cwd="~/maps/MyWebMap", branch="feature/new-basemap")
# Recent commits gitmap_log(cwd="~/maps/MyWebMap", limit=10) # What changed since main? gitmap_diff(cwd="~/maps/MyWebMap", branch="main")
HTTP server at localhost:7400 (when running): python server.py Endpoints: POST /tools/{tool_name} โ Call a tool with JSON body GET /health โ Health check
Install command: pip install gitmap-core The skill uses the gitmap_core Python package directly for API access.
Working directory is required for most commands โ GitMap repos are directory-based like Git. Portal credentials can be passed per-call or via environment variables (PORTAL_URL, ARCGIS_USERNAME, ARCGIS_PASSWORD). gitmap list doesn't require a local repo โ it queries Portal directly. Output is raw CLI text โ parsed lightly for structured responses where possible. NOT implement clone, init,- This skill does merge, checkout, l, or setupsm, context-repos โ call the CLI directly for those.
GitMap Project: https://github.com/14-TR/gitmap
Code helpers, APIs, CLIs, browser automation, testing, and developer operations.
Largest current source with strong distribution and engagement signals.