Skip to content

skills: add local directory source alongside the registry#316

Open
zbl94 wants to merge 1 commit into
mainfrom
local-skills-mode
Open

skills: add local directory source alongside the registry#316
zbl94 wants to merge 1 commit into
mainfrom
local-skills-mode

Conversation

@zbl94

@zbl94 zbl94 commented Jul 15, 2026

Copy link
Copy Markdown
Collaborator

Introduce a local skills source parallel to the Gemini Enterprise Skill Registry integration. A local source points at a directory already on disk (a parent dir holding /SKILL.md subfolders, the same layout as examples/skills and a registry's target_dir); nothing is fetched and the directory is used as-is.

  • New mode-agnostic result shape (internal/skills: Available/Group/Skill) so both sources feed the same consumers without either depending on the other.
  • internal/skills/local.Discover enumerates enabled local paths, treating immediate subfolders with a SKILL.md as skills (subfolder name = id). It is fail-safe like registry materialization: a missing/unreadable/empty path is logged and skipped, never blocking harness creation.
  • config.SkillsConfig gains Local []LocalSkillsConfig (enabled + path) with validation; geminienterprise.Materialize now returns skills.Available.
  • cliutil combines registry and local groups into one system-instruction pointer for the Antigravity Interactions harness. The Antigravity SDK harness (SKILLS_DIR-based) is left as a TODO.

Only the interactions harness is wired; tests cover discovery, fail-safe degradation, config validation, and the examples/skills fixture.

rakyll pushed a commit that referenced this pull request Jul 21, 2026
@rakyll

rakyll commented Jul 21, 2026

Copy link
Copy Markdown
Member

We caused a bunch of conflicts for this PR. If it's still relevant, can we fix the merge conflicts?

@zbl94
zbl94 force-pushed the local-skills-mode branch 2 times, most recently from 06158f1 to f2618b2 Compare July 21, 2026 18:19
@zbl94

zbl94 commented Jul 21, 2026

Copy link
Copy Markdown
Collaborator Author

We caused a bunch of conflicts for this PR. If it's still relevant, can we fix the merge conflicts?

The conflicts are fixed. Please take a look again.

Introduce a local skills source parallel to the Gemini Enterprise Skill
Registry integration. A local source points at a directory already on disk
(a parent dir holding <skill-id>/SKILL.md subfolders, the same layout as
examples/skills and a registry's target_dir); nothing is fetched and the
directory is used as-is.

- New mode-agnostic result shape (internal/skills: Available/Group/Skill) so
  both sources feed the same consumers without either depending on the other.
- internal/skills/local.Discover enumerates enabled local paths, treating
  immediate subfolders with a SKILL.md as skills (subfolder name = id). It is
  fail-safe like registry materialization: a missing/unreadable/empty path is
  logged and skipped, never blocking harness creation.
- config.SkillsConfig gains Local []LocalSkillsConfig (enabled + path) with
  validation; geminienterprise.Materialize now returns skills.Available.
- cliutil combines registry and local groups into one system-instruction
  pointer for the Antigravity Interactions harness. The Antigravity SDK
  harness (SKILLS_DIR-based) is left as a TODO.

Only the interactions harness is wired; tests cover discovery, fail-safe
degradation, config validation, and the examples/skills fixture.
@zbl94
zbl94 force-pushed the local-skills-mode branch from f2618b2 to 49d0c1b Compare July 23, 2026 18:44
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants