Skip to content

fix(cli): say init's skills install is global and how to skip it - #7691

Open
wonjangcloud9 wants to merge 1 commit into
heygen-com:mainfrom
wonjangcloud9:fix/init-skills-notice
Open

wonjangcloud9 wants to merge 1 commit into
heygen-com:mainfrom
wonjangcloud9:fix/init-skills-notice

Conversation

@wonjangcloud9

Copy link
Copy Markdown
Contributor

Context: I've been using HyperFrames every day for the past two weeks to make Korean Shorts and long-form videos, and it's been great to work with. This PR is one of a batch of fixes for things I ran into along the way, so you'll see several PRs from me at once — sorry for the pile-up, and thanks for your patience. Each one is reproduced on current main, independent of the others, and can be reviewed, merged or closed on its own.

What

No behaviour change. init now tells you that the skills it installs are machine-wide and how to opt out:

  • init --help: --skip-skills reads "Leave AI skills alone. Without it, init installs missing core skills globally (~/.claude/skills, ~/.agents/skills), for every project. Also HYPERFRAMES_SKIP_SKILLS=1" (was "Skip installing missing core AI skills (also HYPERFRAMES_SKIP_SKILLS=1)").
  • After an install, one dim line: "These skills are global: every project on this machine uses them. init --skip-skills (or HYPERFRAMES_SKIP_SKILLS=1) leaves skills alone."
  • docs/packages/cli.mdx (init): the paragraph about the skills install names the two folders and --skip-skills.

Why

Running init inside a project that already has a local npm i hyperframes installs the core skills into the global ~/.claude/skills and ~/.agents/skills and creates ~/.agents/.skill-lock.json. That is deliberate (GLOBAL_INSTALL_ARGS_TAIL in commands/skills.ts: "installing once globally beats copying a full set into every project"; skills/hyperframes/references/skill-lifecycle.md documents it). But nothing in init said so: --help only offered "Skip installing missing core AI skills", the CLI reference said "installs the core AI skills from the current GitHub source", and the run printed the skills tool's install box plus "Workflow skills not installed here are added on demand" — where "here" reads as "this project". A user who scaffolds a project expects it to touch that project; finding six skill folders and a lock file in their home directory afterwards was a surprise.

Related work

No existing issue or PR (searched "skip-skills", "skills global init"). #5704/#5706 were about symlink vs copy mode, not about saying where the install goes.

How

  • packages/cli/src/commands/init.ts: the skip-skills arg description, and one console.log in keepSkillsCurrent's "installed" branch (not printed when nothing was installed, when skills were already current, or offline).
  • docs/packages/cli.mdx: one sentence.

Test plan

Real CLI, isolated HOME (so nothing touched the real ~/.claude), init proj --non-interactive without --skip-skills:

  • main: the install box lists ~/.claude/skills/<name> / ~/.agents/skills/<name>, then Workflow skills not installed here are added on demand, when first used., then Get started:.

  • this branch: same, plus These skills are global: every project on this machine uses them. init --skip-skills (or HYPERFRAMES_SKIP_SKILLS=1) leaves skills alone.

  • init --help before/after as quoted above.

  • Unit tests added (init.skillsNotice.test.ts): runs init in-process with updateSkills mocked to report an install and asserts the new line; checks the --skip-skills description names ~/.claude/skills and the env var. Both fail on main's init.ts, both pass here; all src/commands/init* tests pass (98/98).

  • Manual testing performed (above).

  • Documentation updated (docs/packages/cli.mdx)

  • Comments follow CONTRIBUTING.md "Comments"

  • Gates: oxlint, oxfmt, typecheck, fallow, comment ratchet — pass.

🤖 Generated with Claude Code

init installs missing core skills into ~/.claude/skills and
~/.agents/skills, shared by every project, even when run inside a project
with its own hyperframes dependency. That is the intended design, but
`init --help` only said "Skip installing missing core AI skills" and the
run itself never said the install is machine-wide or how to opt out. The
help text and docs now name the global folders, and after an install init
prints one line saying the skills are global and that --skip-skills (or
HYPERFRAMES_SKIP_SKILLS=1) leaves them alone. Behaviour is unchanged.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@mintlify

mintlify Bot commented Nov 14, 2026

Copy link
Copy Markdown

Preview approval required

This pull request comes from a fork, so Mintlify won't build a preview until someone with write access approves commit 04b93f2.

Approve preview

This branch has not been deployed

No deployments
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.

1 participant