Skip to content

[CRF-1145] add local init and remove subcommands#239

Merged
mfauzaan merged 6 commits into
mainfrom
CRF-1145
May 5, 2026
Merged

[CRF-1145] add local init and remove subcommands#239
mfauzaan merged 6 commits into
mainfrom
CRF-1145

Conversation

@amirulabu

@amirulabu amirulabu commented Apr 22, 2026

Copy link
Copy Markdown
Contributor

https://mindvalley.atlassian.net/browse/CRF-1145

Screenshot

Screenshot 2026-04-23 at 10 45 36 AM Screenshot 2026-04-23 at 10 51 55 AM Screenshot 2026-04-23 at 10 52 05 AM

Summary

  • New wukong skills command group with two local-only actions.
  • skills init [name] scaffolds ./.claude/skills/<name>/SKILL.md from a vercel-labs/skills-style template; refuses to overwrite an existing file. <name> defaults to the current directory's basename.
  • skills remove scans four roots (~/.claude/skills, ~/.agents/skills, ./.claude/skills, ./.agents/skills), shows a multi-select of every folder containing a SKILL.md (each tagged with its scope), then deletes after a confirmation prompt.
  • Both handlers emit telemetry via the existing wukong_telemetry macro — no SDK changes required.
  • Adds cli/src/commands/skills/README.md documenting the module, layout, and design notes (including the deltas from vercel-labs/skills).

Future network-backed actions (e.g. registry fetch / install) will be added under this same command group later.

Test plan

  • cargo check -p wukong passes
  • wukong skills --help lists init and remove
  • wukong skills init my-skill creates ./.claude/skills/my-skill/SKILL.md with the template
  • Re-running wukong skills init my-skill prints "Skill already exists" and does not overwrite
  • wukong skills init (no arg) uses the cwd basename
  • wukong skills remove lists skills from all four roots, scope-tagged
  • Selecting + confirming in remove deletes the chosen folders
  • Declining the confirmation in remove aborts without deleting

Introduce `wukong skills` command group with two local actions:

- `init [name]` scaffolds ./.claude/skills/<name>/SKILL.md from a
  vercel-labs/skills style template; refuses to overwrite.
- `remove` scans ~/.claude/skills, ~/.agents/skills, ./.claude/skills
  and ./.agents/skills, then multi-selects and deletes after confirm.

Both handlers are local-only and emit telemetry via the existing
wukong_telemetry macro. README documents the module and design notes.
@amirulabu amirulabu changed the title feat(skills): add local init and remove subcommands [CRF-1145] add local init and remove subcommands Apr 22, 2026
- Set workspace.resolver = "2" to match edition 2021 members.
- Drop unnecessary parentheses around an `if` condition in
  application/init.rs.
Drop the optional positional `<name>` arg. `wukong skills init` now
always prompts for a required, non-empty skill name and asks for
confirmation before writing anything to disk.
`wukong skills init` now prompts for a scope (Project or Global) before
the skill name. The source SKILL.md is written to
<root>/.agents/skills/<name>/SKILL.md and a relative symlink is created
at <root>/.claude/skills/<name>/SKILL.md so both agent surfaces resolve
to the same file. Unix only.
@amirulabu amirulabu requested a review from mfauzaan April 24, 2026 02:31

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lint warning fix

@mfauzaan

Copy link
Copy Markdown
Member
Screenshot 2026-04-28 at 3 47 17 PM After doing init, can we have something like this?

So its more readable, also im not sure if i wanna support global init, just something to talk about in the huddle

@mfauzaan

Copy link
Copy Markdown
Member
Screenshot 2026-04-28 at 3 48 43 PM Should be avoid using absolute path? feels bit noisy with all those long urls (Maybe a styling might help)

Replace absolute paths in confirmation, success, and existence-check
messages with paths relative to the scope root, prefixed by a dim
[project] or [global] tag. Restructure success output into Created /
Next steps sections.

Addresses review comments on PR #239.
@amirulabu

Copy link
Copy Markdown
Contributor Author

Screenshot 2026-04-28 at 3 47 17 PM After doing init, can we have something like this?
So its more readable, also im not sure if i wanna support global init, just something to talk about in the huddle

Screenshot 2026-04-30 at 10 41 54 AM

we will add the "push" functionality when it is done in cli

@mfauzaan mfauzaan merged commit cb9db79 into main May 5, 2026
6 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

2 participants