Developer workflow, productivity, and writing plugins for Claude Code.
See: Claude Code: Plugin Marketplaces
| Plugin | Description |
|---|---|
| dev-workflow | Workflows for common development tasks. |
| writing-tools | Writing and editing tools for content creation. |
Add the marketplace once, then install the plugins you want:
claude plugin marketplace add noahlz/claude-plugins
claude plugin install dev-workflow@noahlz.github.io
claude plugin install writing-tools@noahlz.github.io- Node.js 22+ (required for dev-workflow only)
Several writing-oriented skills are available standalone for use on claude.ai. Accounts must be Pro, Max, Team, or Enterprise plan with code execution enabled.
Available web-packaged skills:
de-llmcraft-linkedin-post— bundles thelinkedin-revieweragenttighten-for-llms
See writing-tools and dev-workflow sections below for descriptions.
To install:
- Download zip from the latest release page
- In Claude.ai, open Settings → Capabilities and choose Upload skill.
- Drag the skill ZIP file to Upload skill. The skill will now be available in your chats.
Workflows for common development tasks.
| Skill | Description | Slash Command |
|---|---|---|
run-tests |
Run tests, analyze failures, and propose fixes via sub-agents. | /run-tests |
commit-with-costs |
Create git commits with Claude Code attribution and session cost metrics. | /commit-with-costs |
merge-with-costs |
Merge sub-agent worktree branches, resolve any conflicts, and record the project session's cost in the merge commit. | /merge-with-costs |
preview-commit-message |
Draft a commit message from staged changes without committing. | /preview-commit-message |
commit-only |
Commit staged changes with an AI-generated message. No cost metrics. | /commit-only |
view-cost-metrics |
Display current session cost metrics without creating a commit. | /view-cost-metrics |
check-claude-changelog |
Check Claude Code changelog for updates since your last commit, with relevance scoring. | /check-claude-changelog [since <version>] |
update-changelog |
Inspect commits since last release and compose changelog entries matching your project's format. | /update-changelog |
tighten-for-llms |
Make skill, agent, reference, rule, or doc files more concise and LLM-friendly. | /tighten-for-llms [file-path | skill-name | agent-name | docs | readme | rules] |
zero-shot |
Experimental. Aggressively distill LLM-facing prose: skill files → 1–3 imperative sentences, instruction files → imperative bullets per section. | /zero-shot [apply] [file-path | skill-name | agent-name | rules] |
| Agent | Description |
|---|---|
broken-build-analyzer |
Analyzes build/compilation failures and provides diagnosis suitable for creating a plan to fix the build. Used by run-tests. |
failed-test-analyzer |
Analyzes test failures and provides diagnosis suitable for creating a plan to fix the tests. Used by run-tests. |
react-code-reviewer |
Reviews React/TypeScript code changes for quality, maintainability, and best practices. Reports findings by priority with concrete fixes. |
test-quality-reviewer |
Reviews written or modified tests for assertion quality, mock validity, and clean test structure. Reports findings by severity. |
Writing and editing tools for content creation.
| Skill | Description | Slash Command |
|---|---|---|
craft-linkedin-post |
Draft, review, and iterate a LinkedIn post from an outline. Uses the linkedin-reviewer agent. |
/craft-linkedin-post |
de-llm |
Post-process prose to strip AI-telltale patterns: puffery, inline meta-commentary, unsourced evaluative claims. Derived from Wikipedia: Signs of AI writing. | /de-llm [file-path] |
| Agent | Description |
|---|---|
linkedin-reviewer |
Reviews a LinkedIn draft post for hook strength, clarity, mobile structure, authenticity, and engagement potential. |
When developing these plugins, you can install them from local source:
claude plugin marketplace add ./Claude Code caches installed plugins as full copies in ~/.claude/plugins/cache/<marketplace>/<plugin>/<version>/. These are regular files, not symlinks — editing your source directory does not change what Claude Code reads.
/reload-plugins reloads from this version-keyed cache. If you modify plugin files without bumping the version in marketplace.json, /reload-plugins will reload the stale cached copy and not pick up your source changes.
To pick up source changes without bumping the version, run ./force-reinstall.sh:
./force-reinstall.shThis script clears the cache directories, uninstalls, and reinstalls from local source.
Use this when:
- You've modified SKILL.md, scripts, agents, or other plugin files without bumping the version
/reload-pluginsis not reflecting your changes
Claude Code substitutes two variables in SKILL.md content at load time:
${CLAUDE_PLUGIN_ROOT}– the plugin's installed directory. Skills use it for shared code inlib/and shared docs inreferences/.${CLAUDE_SKILL_DIR}– the skill's own directory (added in Claude Code 2.1.69). Skills use it for their ownscripts/.
Minimum required version: Claude Code 2.1.69
release-it drives releases, configured in .release-it.json.
Never edit version numbers by hand. The @release-it/bumper plugin writes all of them: package.json, package-lock.json, and .claude-plugin/marketplace.json (both metadata.version and each plugin's version).
| Step | Command | Notes |
|---|---|---|
| 1. Write the changelog | /update-changelog |
Composes CHANGELOG.md entries from commits since the last tag |
| 2. Preview | npm run release:dry-run |
Shows the version bump and files it would touch |
| 3. Release | npm run release |
Bumps versions, commits Version X.Y.Z, tags vX.Y.Z |
| 4. Push | git push --follow-tags |
.release-it.json sets git.push: false, so this is manual |
The changelog entry must land before the tag. release-web-skills.yml extracts the GitHub release notes by matching a # X.Y.Z heading in CHANGELOG.md — a single #, version only, no v prefix. A missing or misspelled heading produces an empty release body.
Pushing a v* tag builds the claude.ai-uploadable ZIPs listed in scripts/build-web-skills/manifest.js and attaches them to the GitHub release. To dry-run that build without cutting a tag, dispatch the workflow manually — it uploads the zips as workflow artifacts instead.
Version choice: a new skill, agent, or plugin is a minor bump; fixes and refinements to existing ones are a patch.
Scripts used by skills are tested using Node.js with the native node:test module.
Run tests with this plugin's dev-workflow:run-tests skill ("eat your own dogfood") or:
npm testSee test/CLAUDE.md for testing methodology, patterns, and examples.