Repository navigation
feat(skills): one skills add connect (v2.4.0) - #206
Merged
Merged
Conversation
…from the SDK the project uses (v2.4.0)
New `one skills list|add|update|remove` for optional skills that ship
inside an SDK package. Today: `connect`, from @withone/connect.
one skills add connect
1. find node_modules/@withone/connect/skills/one-connect (the
version the code calls); not installed → latest from npm,
checked against the registry's sha512 integrity first
2. copy → .agents/skills/one-connect (Codex, Cursor, Amp, OpenCode)
link → .claude/skills/one-connect (Claude Code); Windsurf, Kiro,
Goose, Roo when the project has their folder; --agents to
choose; symlink → junction → copy fallback for Windows
3. stamp → .one-skill.json (version, source, links; POSIX paths)
4. fresh any `one` command in the project re-copies it when the
installed package version moves (local files, no network)
--global installs to ~/.agents/skills and links the agents this
machine has (same home folders `one init` uses).
Unchanged: `one init`, the One skill, lib/skill-sync.ts and
`one config skills sync|status`. The new preAction step runs after the
existing one, is skipped for `one skills`, and never blocks a command.
Docs: README (one skills), skills/one/SKILL.md (Adding One Connect to
an App), guide overview, help text, CLAUDE.md.
Tests: 22 new (all four steps, --agents, replace/remove, other skills
untouched, refresh on version change, registry integrity + tar path
safety, global, cross-OS stamps). Full suite 641: 635 pass; the 6
failures are the pre-existing resolveConfig tmpdir cases on macOS,
identical on main. Verified end to end against the real npm package.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
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.
Why
The One Connect skill ships inside
@withone/connect. Today a developer has to findnpx skills add withoneai/connecton their own. This PR lets them runone skills add connectfrom the CLI they already have. The skill always matches the SDK version their code calls.How it works
one skills list | update [name] | remove <name>,--global,--agents,--agentJSON on all of them.npx skillsv1.7.0.What does NOT change
one init, the One skill,lib/skill-sync.ts,one config skills sync|status.one skills, wrapped in try/catch, and does nothing unless an optional skill is installed in that project.Tests
--agentsresolveConfigmacOS tmpdir cases and are identical onmain. CI covers Windows.node_modulesnpm install @withone/connect@0.14.0--globalRelease (after merge)
Version is 2.4.0 (lockfile hand-edited per CLAUDE.md). Create the GitHub release
v2.4.0; the existing workflow publishes to npm.Companion: withoneai/connect#19. Its README already points to
one skills add connect.🤖 Generated with Claude Code