[EPIC] Port canonical skills to every supported agent format #11

Open
opened 2026-08-22 05:32:44 +00:00 by lost-rob0t · 1 comment
lost-rob0t commented 2026-08-22 05:32:44 +00:00 (Migrated from github.com)

Goal

Make lost-rob0t/skills a platform-neutral Agent Skills repository instead of an OpenCode-only tree.

The durable skill source must live once, under a canonical skills/<skill-id>/ tree. Client-specific layouts are deployment adapters/views, not separately edited copies.

Source-of-truth policy

  • Canonical skill body, metadata, scripts, references, and assets: skills/<skill-id>/...
  • Never maintain divergent copies of the same skill for OpenCode, Claude Code, Codex/.agents, Agent Zero, or other compatible clients.
  • $HOME/skills is the canonical local checkout for editing this repository.
  • Raw imported backups, target data, credentials, client names, hostnames, addresses, scan results, and other private operational state must never be committed.
  • Imported pentesting/security skills keep reusable techniques, tooling, sequencing, validation, and support code, but target-specific state is stripped before commit.

Initial supported adapters

  1. OpenCode
    • Home Manager programs.opencode.skills
  2. Agent Skills generic / .agents/skills
  3. Claude-compatible .claude/skills
  4. Agent Zero
    • export/copy layout compatible with usr/skills
  5. Additional clients
    • add only after verifying their current documented skill discovery/format rather than inventing adapters

Shipped

First portability slice merged in #12 (adbf9714c83237e752d00b16a690ff27e91be30b).

  • Define canonical multi-agent source and private-import policy in docs/formats.md.
  • Move every currently exported OpenCode skill under canonical skills/.
  • Remove the obsolete OpenCode-only source tree.
  • Expose generic lib.skills / lib.skillNames from the flake.
  • Keep backwards-compatible lib.opencodeSkills / lib.opencodeSkillNames aliases.
  • Add OpenCode, .agents, Claude and Agent Zero adapter metadata; add Home Manager modules where the install root is well-defined.
  • Update README, AGENTS.md and CI for the canonical catalog.
  • CI verifies flake metadata, canonical names/packages and adapter roots.

Remaining work

  • Import the user's existing Agent Zero skill corpus after local-only sanitization and deduplication.
  • Preserve scripts/references/assets when importing skills.
  • Dedupe by semantic purpose and content rather than blindly keeping every historical copy.
  • Verify additional client adapters against current upstream documentation before adding them.
  • Update dotfiles after the import batch with one skills flake input/lock bump.

Backup blocker

The first supplied Agent Zero backup artifact was not a valid ZIP; the backup process returned a timestamp compatibility error instead of archive bytes. Do not persist raw backup contents or private target data while retrying/importing.

Acceptance

  • A skill has one durable source tree.
  • Current OpenCode deployment continues to work from the flake.
  • At least OpenCode, .agents, Claude-compatible, and Agent Zero deployment/export paths are documented and mechanically derivable from the canonical tree.
  • CI rejects malformed or missing SKILL.md files and broken exported catalogs.
  • No raw target/private data from imported operational backups is committed.
  • Imported historical skills are generalized, deduplicated, and represented in the canonical catalog before this epic closes.
## Goal Make `lost-rob0t/skills` a platform-neutral Agent Skills repository instead of an OpenCode-only tree. The durable skill source must live once, under a canonical `skills/<skill-id>/` tree. Client-specific layouts are deployment adapters/views, not separately edited copies. ## Source-of-truth policy - Canonical skill body, metadata, scripts, references, and assets: `skills/<skill-id>/...` - Never maintain divergent copies of the same skill for OpenCode, Claude Code, Codex/`.agents`, Agent Zero, or other compatible clients. - `$HOME/skills` is the canonical local checkout for editing this repository. - Raw imported backups, target data, credentials, client names, hostnames, addresses, scan results, and other private operational state must never be committed. - Imported pentesting/security skills keep reusable techniques, tooling, sequencing, validation, and support code, but target-specific state is stripped before commit. ## Initial supported adapters 1. OpenCode - Home Manager `programs.opencode.skills` 2. Agent Skills generic / `.agents/skills` 3. Claude-compatible `.claude/skills` 4. Agent Zero - export/copy layout compatible with `usr/skills` 5. Additional clients - add only after verifying their current documented skill discovery/format rather than inventing adapters ## Shipped First portability slice merged in #12 (`adbf9714c83237e752d00b16a690ff27e91be30b`). - [x] Define canonical multi-agent source and private-import policy in `docs/formats.md`. - [x] Move every currently exported OpenCode skill under canonical `skills/`. - [x] Remove the obsolete OpenCode-only source tree. - [x] Expose generic `lib.skills` / `lib.skillNames` from the flake. - [x] Keep backwards-compatible `lib.opencodeSkills` / `lib.opencodeSkillNames` aliases. - [x] Add OpenCode, `.agents`, Claude and Agent Zero adapter metadata; add Home Manager modules where the install root is well-defined. - [x] Update README, AGENTS.md and CI for the canonical catalog. - [x] CI verifies flake metadata, canonical names/packages and adapter roots. ## Remaining work - [ ] Import the user's existing Agent Zero skill corpus after local-only sanitization and deduplication. - [ ] Preserve scripts/references/assets when importing skills. - [ ] Dedupe by semantic purpose and content rather than blindly keeping every historical copy. - [ ] Verify additional client adapters against current upstream documentation before adding them. - [ ] Update dotfiles after the import batch with one skills flake input/lock bump. ## Backup blocker The first supplied Agent Zero backup artifact was not a valid ZIP; the backup process returned a timestamp compatibility error instead of archive bytes. Do not persist raw backup contents or private target data while retrying/importing. ## Acceptance - A skill has one durable source tree. - Current OpenCode deployment continues to work from the flake. - At least OpenCode, `.agents`, Claude-compatible, and Agent Zero deployment/export paths are documented and mechanically derivable from the canonical tree. - CI rejects malformed or missing `SKILL.md` files and broken exported catalogs. - No raw target/private data from imported operational backups is committed. - Imported historical skills are generalized, deduplicated, and represented in the canonical catalog before this epic closes.
lost-rob0t commented 2026-08-22 06:50:30 +00:00 (Migrated from github.com)

Agent Zero follow-up

The shipped #12 slice provides Agent Zero deployment-path compatibility (usr/skills) and an install-root-aware Home Manager helper. It does not yet provide a generated Agent Zero-native metadata view.

Track that separately in #14. Current upstream Agent Zero parses tags and triggers/trigger_patterns and weights triggers strongly during skill search, so #14 will add native discovery metadata without forking canonical skill bodies or abandoning the repo's terse keyword descriptions.

This distinction should remain explicit in docs: target root != client-specific format transformation.

## Agent Zero follow-up The shipped #12 slice provides Agent Zero **deployment-path compatibility** (`usr/skills`) and an install-root-aware Home Manager helper. It does not yet provide a generated Agent Zero-native metadata view. Track that separately in #14. Current upstream Agent Zero parses `tags` and `triggers`/`trigger_patterns` and weights triggers strongly during skill search, so #14 will add native discovery metadata without forking canonical skill bodies or abandoning the repo's terse keyword descriptions. This distinction should remain explicit in docs: target root != client-specific format transformation.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
nsaspy/skills#11
No description provided.