Tune any Antigravity Skill through config instead of forking it.
Antigravity Agent Skills are portable
SKILL.md packages — but they're static. Want the official
git-commit-formatter to allow a ci type, or use gitmoji, or require a scope?
Today your only option is to fork the skill and edit its markdown. Share a
skill and everyone who wants it slightly different forks it, and the ecosystem
fragments.
Configurable Skills is a tiny convention plus one reusable loader that lets a skill read a project-level config file, so you adopt a shared skill and customize its behavior by editing a few lines of YAML — no fork.
# .agent/skills.config.yaml <-- you edit THIS, never the skill
git-commit-formatter:
style: gitmoji
extra_types: [ci, build]
scope_required: trueThat's the whole idea. Drop the skill in, set a few keys, done.
A configurable skill ships its knobs and defaults in config.default.yaml, and
its SKILL.md tells the agent to resolve config first:
python scripts/resolve_config.py git-commit-formatter --project-root .
resolve_config.py merges the skill's defaults with your
.agent/skills.config.yaml overrides and prints the effective settings, which
the agent then applies. Deterministic, local, no network. Full details in
SPEC.md.
| Path | What it is |
|---|---|
lib/resolve_config.py |
The reusable loader (the one novel piece). Canonical copy. |
lib/test_resolve_config.py |
Runnable tests for the loader. |
skills/git-commit-formatter/ |
Commit messages: Conventional or gitmoji, configurable types/scope. |
skills/changelog-generator/ |
Changelog from git history: format, grouping, included types. |
skills/license-header-adder/ |
License headers: license, holder, per-language comment style. |
.agent/skills.config.example.yaml |
Example overrides for all three skills. |
index.json |
Community index of configurable skills. |
examples/demo/ |
A tiny before/after you can run. |
Each skill folder is self-contained (it vendors its own resolve_config.py), so
you can copy just one skill anywhere.
- Install a skill. Copy a folder from
skills/into your Antigravity skills directory — either~/.gemini/antigravity/skills/(global) or<your-project>/.agent/skills/(workspace). - Use it as-is. Ask the agent to "commit these changes" — the
git-commit-formatterskill triggers and uses its defaults. - Customize. Add a
.agent/skills.config.yamlto your project (copy from.agent/skills.config.example.yaml) and change only the keys you want. The next run picks them up — no fork, no edit to the skill.
Requirement: Python 3 with PyYAML (python -m pip install pyyaml).
python3 lib/test_resolve_config.py
# -> All tests passed.
python3 skills/git-commit-formatter/scripts/resolve_config.py \
git-commit-formatter \
--project-root examples/demo --print-sources
# prints the effective config = defaults + examples/demo overrides
See CONTRIBUTING.md. In short: build your skill to the
convention (add config.default.yaml, vendor resolve_config.py, tell the
SKILL.md to resolve config first), then add an entry to index.json.
Apache-2.0. See LICENSE.
Built for the Google Developer Experts Agentic Architect Sprint (topic: Serverless Ad-hoc Skill Execution Engines).