Skip to content

feat(init): support CLERK_SKILL_SOURCE env override#127

Draft
wyattjoh wants to merge 1 commit intofeat/clerk-cli-skill-pinnedfrom
feat/clerk-cli-skill-local-debug
Draft

feat(init): support CLERK_SKILL_SOURCE env override#127
wyattjoh wants to merge 1 commit intofeat/clerk-cli-skill-pinnedfrom
feat/clerk-cli-skill-local-debug

Conversation

@wyattjoh
Copy link
Copy Markdown
Contributor

@wyattjoh wyattjoh commented Apr 7, 2026

Summary

Adds a CLERK_SKILL_SOURCE env var as an escape hatch for skill authors iterating on the clerk skill without rebuilding the CLI. When set, clerk init passes the value straight to <runner> skills add <value> in place of the bundled source (#126).

Any value the skills CLI accepts works:

# Absolute path to a working-tree skill dir (default symlink install,
# edits to the source are reflected in the installed skill immediately).
CLERK_SKILL_SOURCE="$PWD/skills/clerk" clerk init

# A fork or PR branch on GitHub.
CLERK_SKILL_SOURCE="https://github.com/me/cli/tree/wip/skills/clerk" clerk init

# Shorthand for the default repo (installs from main branch).
CLERK_SKILL_SOURCE="clerk/cli" clerk init

The override path skips the staged temp dir and the --copy flag introduced in #126, so a local working-tree path installs via the default symlink mode and edits to the source are picked up by already-installed projects without re-running clerk init. init logs the value being used so there's no surprise about what got installed.

The override has no effect on the upstream framework-pattern skills.

Stacked on #126.

Test plan

  • bun run test passes (unit tests cover env-var precedence: unset, empty/whitespace, trimmed / remote / local variants)
  • Manual: CLERK_SKILL_SOURCE="$PWD/skills/clerk" bun run dev -- init in a sandbox, confirm the installer logs the override and .claude/skills/clerk/ is a symlink into the working tree
  • Manual: edit skills/clerk/SKILL.md in the working tree, re-open the installed skill, confirm the edit is visible without re-running init
  • Manual: CLERK_SKILL_SOURCE="clerk/cli" bun run dev -- init installs from the remote shorthand and the upstream framework skills still install normally

@wyattjoh
Copy link
Copy Markdown
Contributor Author

wyattjoh commented Apr 7, 2026

@wyattjoh wyattjoh mentioned this pull request Apr 7, 2026
4 tasks
@wyattjoh wyattjoh force-pushed the feat/clerk-cli-skill-pinned branch from 40b1139 to 2b430c5 Compare April 7, 2026 19:40
@wyattjoh wyattjoh force-pushed the feat/clerk-cli-skill-local-debug branch from 209860b to 266ab75 Compare April 7, 2026 19:40
@wyattjoh wyattjoh force-pushed the feat/clerk-cli-skill-pinned branch from 2b430c5 to bd75724 Compare April 7, 2026 20:23
@wyattjoh wyattjoh force-pushed the feat/clerk-cli-skill-local-debug branch from 266ab75 to b801108 Compare April 7, 2026 20:23
@wyattjoh wyattjoh force-pushed the feat/clerk-cli-skill-pinned branch from bd75724 to 510829c Compare April 7, 2026 21:58
@wyattjoh wyattjoh force-pushed the feat/clerk-cli-skill-local-debug branch 2 times, most recently from d7b5c2b to be3bdaf Compare April 8, 2026 21:39
@wyattjoh wyattjoh force-pushed the feat/clerk-cli-skill-pinned branch from 510829c to dae4ecc Compare April 8, 2026 21:39
@wyattjoh wyattjoh force-pushed the feat/clerk-cli-skill-local-debug branch from be3bdaf to fc91eca Compare April 9, 2026 20:23
@wyattjoh wyattjoh force-pushed the feat/clerk-cli-skill-pinned branch from dae4ecc to 75f79d4 Compare April 9, 2026 20:23
@wyattjoh wyattjoh force-pushed the feat/clerk-cli-skill-local-debug branch from fc91eca to d4e2aaf Compare April 9, 2026 22:54
@wyattjoh wyattjoh force-pushed the feat/clerk-cli-skill-pinned branch 2 times, most recently from 2bc5f72 to c52bc3f Compare April 11, 2026 06:48
@wyattjoh wyattjoh force-pushed the feat/clerk-cli-skill-local-debug branch 2 times, most recently from bd6cc3b to 71fcba0 Compare April 11, 2026 06:54
@wyattjoh wyattjoh force-pushed the feat/clerk-cli-skill-pinned branch 2 times, most recently from 27b5058 to f0d314f Compare April 13, 2026 20:01
@wyattjoh wyattjoh force-pushed the feat/clerk-cli-skill-local-debug branch 2 times, most recently from 879a97b to 67098ad Compare April 13, 2026 22:49
@wyattjoh wyattjoh force-pushed the feat/clerk-cli-skill-pinned branch 2 times, most recently from 8e087a7 to 13e75ab Compare April 13, 2026 23:20
@wyattjoh wyattjoh force-pushed the feat/clerk-cli-skill-local-debug branch 2 times, most recently from 6be4db9 to 126bdcd Compare April 14, 2026 18:50
@wyattjoh wyattjoh force-pushed the feat/clerk-cli-skill-pinned branch from 13e75ab to 7154722 Compare April 14, 2026 18:50
@wyattjoh wyattjoh changed the title feat(init): support local debugging of clerk-cli skill source feat(init): support CLERK_CLI_SKILL_SOURCE env override Apr 14, 2026
@wyattjoh wyattjoh force-pushed the feat/clerk-cli-skill-local-debug branch from 126bdcd to 4b6ed6b Compare April 14, 2026 18:56
@wyattjoh wyattjoh force-pushed the feat/clerk-cli-skill-pinned branch 2 times, most recently from 625f5ca to 0e12a02 Compare April 14, 2026 20:10
@wyattjoh wyattjoh force-pushed the feat/clerk-cli-skill-local-debug branch from 4b6ed6b to 381ed15 Compare April 14, 2026 20:10
@wyattjoh wyattjoh force-pushed the feat/clerk-cli-skill-pinned branch from 0e12a02 to 10c68ae Compare April 14, 2026 20:12
@wyattjoh wyattjoh force-pushed the feat/clerk-cli-skill-local-debug branch 2 times, most recently from 2a07fe8 to 5d14faf Compare April 14, 2026 21:10
@wyattjoh wyattjoh force-pushed the feat/clerk-cli-skill-pinned branch from f1b8dd0 to f2fe2c9 Compare April 14, 2026 21:35
@wyattjoh wyattjoh force-pushed the feat/clerk-cli-skill-local-debug branch 2 times, most recently from 042170c to caaeef2 Compare April 14, 2026 21:50
@wyattjoh wyattjoh force-pushed the feat/clerk-cli-skill-local-debug branch 2 times, most recently from f4dc60b to 2870971 Compare April 15, 2026 16:50
@wyattjoh wyattjoh force-pushed the feat/clerk-cli-skill-pinned branch from 97cadfd to 9255b9a Compare April 15, 2026 16:50
@wyattjoh wyattjoh force-pushed the feat/clerk-cli-skill-local-debug branch 2 times, most recently from c704342 to 76a3e0f Compare April 15, 2026 20:06
@wyattjoh wyattjoh force-pushed the feat/clerk-cli-skill-pinned branch from 998207f to 71e2f9f Compare April 15, 2026 20:06
@changeset-bot
Copy link
Copy Markdown

changeset-bot bot commented Apr 15, 2026

🦋 Changeset detected

Latest commit: e6727c1

The changes in this PR will be included in the next version bump.

This PR includes changesets to release 1 package
Name Type
clerk Minor

Not sure what this means? Click here to learn what changesets are.

Click here if you're a maintainer who wants to add another changeset to this PR

@changeset-bot
Copy link
Copy Markdown

changeset-bot bot commented Apr 15, 2026

⚠️ No Changeset found

Latest commit: 76a3e0f

Merging this PR will not cause a version bump for any packages. If these changes should not result in a new version, you're good to go. If these changes should result in a version bump, you need to add a changeset.

This PR includes no changesets

When changesets are added to this PR, you'll see the packages that this PR includes changesets for and the associated semver types

Click here to learn what changesets are, and how to add one.

Click here if you're a maintainer who wants to add a changeset to this PR

@wyattjoh wyattjoh force-pushed the feat/clerk-cli-skill-pinned branch from 71e2f9f to 8078ef6 Compare April 15, 2026 21:13
@wyattjoh wyattjoh force-pushed the feat/clerk-cli-skill-local-debug branch 2 times, most recently from 6291f77 to 0fdb815 Compare April 15, 2026 22:23
@wyattjoh wyattjoh force-pushed the feat/clerk-cli-skill-pinned branch 2 times, most recently from 7a2025d to 61ddd30 Compare April 15, 2026 22:48
@wyattjoh wyattjoh force-pushed the feat/clerk-cli-skill-local-debug branch 2 times, most recently from aebf943 to 1094bac Compare April 15, 2026 23:15
@wyattjoh wyattjoh changed the title feat(init): support CLERK_CLI_SKILL_SOURCE env override feat(init): support CLERK_SKILL_SOURCE env override Apr 15, 2026
Adds an escape hatch for skill authors iterating on the clerk skill
without rebuilding the CLI: set CLERK_SKILL_SOURCE to any value the
`skills` CLI accepts (github URL, org/repo shorthand, absolute or
relative local path), and `clerk init` passes it straight to
`<runner> skills add <value>` in place of the bundled source.

The override path skips the staged temp dir and the --copy flag, so a
local working-tree path installs via the default symlink mode and edits
to the source are picked up immediately by already-installed projects.
The override has no effect on the upstream framework-pattern skills.
@wyattjoh wyattjoh force-pushed the feat/clerk-cli-skill-pinned branch from 9c7d911 to 61a2b63 Compare April 16, 2026 00:41
@wyattjoh wyattjoh force-pushed the feat/clerk-cli-skill-local-debug branch from 1094bac to e6727c1 Compare April 16, 2026 00:41
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