feat(agents): cross-tool skill layout — html-deck + s3-now, curated hermes profile#43
Open
alycda wants to merge 3 commits into
Open
feat(agents): cross-tool skill layout — html-deck + s3-now, curated hermes profile#43alycda wants to merge 3 commits into
alycda wants to merge 3 commits into
Conversation
First skill promoted onto the cross-tool layout (issue #40 shape: canonical declared content in dotfiles, each runtime mounts natively). html-deck is tool-agnostic — it generates self-contained single-file HTML decks — so one canonical source serves both runtimes with no fork. Introduces home-manager/modules/tools/agent-skills.nix as the mounting surface. Imported by the desktop profiles only (home.nix / work.nix), not common.nix: its oosSymlink targets assume the ~/dotfiles checkout path, which does not hold in the dev devcontainer. Specific changes: - Capture skill at tools/agents/skills/html-deck/ (SKILL.md + template) - agent-skills.nix: mount ~/.claude/skills/html-deck and ~/.hermes/skills/creative/html-deck (hermes nests skills by category) - home.nix / work.nix: import the new module
Second skill on the cross-tool layout. s3-now (private-S3 +
pre-signed-URL sharing from the personal AWS scratchpad) was live-only
in ~/.claude/skills — never captured — so this both captures and ports.
Scanned before tracking: no account IDs, bucket names (derived at
runtime as s3now-{account-id}), or SSO URLs in the content; only the
local AWS profile name alyssa-scratch, which carries no secret.
Specific changes:
- Capture ~/.claude/skills/s3-now -> tools/agents/skills/s3-now/
- agent-skills.nix: mount ~/.claude/skills/s3-now and
~/.hermes/skills/productivity/s3-now
- The live unmanaged ~/.claude/skills/s3-now dir gets .hm-backup
treatment on first switch (backupFileExtension already on main)
A hermes profile whose skill surface is hand-curated: bundled-skill
seeding is disabled via the .no-bundled-skills marker, and only skills
already ported onto the cross-tool layout get mounted — currently
html-deck and s3-now. Model is gpt-5.6-sol via openai-codex OAuth
(ChatGPT subscription; the enterprise Claude/Gemini plans prohibit
API-key use from third-party harnesses).
Auth stays runtime state (hermes owns auth.json): after activation run
`hermes profile use curated` and `hermes login --provider openai-codex`.
Specific changes:
- tools/hermes/profiles/curated/{config.yaml,SOUL.md}: tracked profile
- agent-skills.nix: mount profile config, seed opt-out marker, and the
two curated skill mounts
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.
First two skills promoted onto the cross-tool layout (issue #40 shape: canonical declared content in dotfiles, each runtime mounts natively), plus a hermes profile with a hand-curated skill surface.
agent-skills.nix— new mounting surface; imported by desktop profiles only (oosSymlink targets assume~/dotfiles, which does not hold in the devcontainer)html-deck: moved totools/agents/skills/, mounted for Claude + Hermes (creativecategory)s3-now: captured (was live-only) + mounted for both (productivity); scanned for AWS identifiers before tracking — none presentcuratedhermes profile: gpt-5.6-sol via openai-codex OAuth,.no-bundled-skillsseeding opt-out, skills added one at a time as they get portedVerification:
nix flake checkclean; fulldarwin-rebuild switchon the dotfiles-ci tart VM (exit 0); all nine deployed paths verified resolving. Post-activation on a real machine:hermes profile use curated && hermes login --provider openai-codexonce.Note for #39: when it rebases onto this, its
claude.nix/hermes.nixhtml-deck mounts should defer toagent-skills.nix.🤖 Generated with Claude Code