Claude Code plugin marketplace for the Hallow team. Public repo, internal-use license — see LICENSE. Source is visible to anyone but only Hallow employees, contractors, and authorized agents are granted rights to use it.
In Claude Code:
/plugin marketplace add hallow-inc/claude-plugins
/plugin install hallow-windmill@hallow-claude-plugins
/reload-plugins
Claude Code handles the clone for you (cached under ~/.claude/plugins/marketplaces/hallow-claude-plugins/). No git clone, no auth setup required — repo is public.
⚠️ Name asymmetry: the GitHub repo isclaude-plugins; the marketplace name (used ininstall/updatecommands) ishallow-claude-plugins. Don't conflate them.marketplace addtakes the repo,install/update/removetake the marketplace name.
Full walkthrough (incl. troubleshooting, Windows paths, no-CLI options): plugins/hallow-windmill/docs/installing.md.
/plugin marketplace update hallow-claude-plugins
/plugin install hallow-windmill@hallow-claude-plugins
/reload-plugins
The marketplace update step fetches new commits. The install step re-resolves the plugin against the fresh marketplace. /reload-plugins re-reads files into the running session.
Re-running just /plugin marketplace add on an already-registered marketplace does not fetch new commits — use /plugin marketplace update to refresh.
To pin to a specific commit, install with explicit ref (if supported) or fall back to manual clone (see installing.md).
| Plugin id | Folder | Purpose |
|---|---|---|
hallow-windmill |
plugins/hallow-windmill/ |
Build automation tools on Hallow's self-hosted Windmill. Includes /wmill-setup, /wmill-doctor, onboarder subagent, windmill-build / windmill-discover / windmill-debug entry skills, windmill-capture-learning for recording gotchas, full set of authoring skills (write-flow, write-script-*, raw-app, triggers, schedules, resources, preview, cli-commands), and reference docs. macOS, Linux/WSL, native Windows. |
Folder names are hallow- prefixed to mark ownership; the plugin name field in .claude-plugin/plugin.json is the identifier users see when installing and invoking.
# Test a plugin without installing (loads for one session only)
claude --plugin-dir ./plugins/hallow-windmill
# Add this marketplace from a local path
/plugin marketplace add /Users/<you>/dev/hallow-claude-plugins
# Validate the marketplace + plugin manifests
claude plugin validate .
# Reload after editing a plugin
/reload-pluginsmkdir -p plugins/hallow-<name>/.claude-pluginand createplugins/hallow-<name>/.claude-plugin/plugin.json.- Add skills under
plugins/hallow-<name>/skills/<skill-name>/SKILL.md. - Add agents under
plugins/hallow-<name>/agents/<agent>.md. - (Optional) Hooks at
hooks/hooks.json, MCP servers at.mcp.json, LSP servers at.lsp.json. - Register the plugin in
.claude-plugin/marketplace.jsonunderplugins. Setsourceto the relative folder path; the pluginnamein marketplace.json must match thenameinplugin.json. - Test locally:
claude --plugin-dir ./plugins/hallow-<name>. - Validate:
claude plugin validate . - Bump
versioninplugin.jsonwhen shipping a change users should pick up — omittingversionmakes every commit a new version, which is fine for internal/active development.
- Folder names use a
hallow-prefix (hallow-windmill,hallow-foo) to mark ownership inside this repo. - Plugin ids (the
namefield) are short and user-facing (hallow-windmill,foo). They drive the install command and slash-command namespace (/hallow-windmill:wmill-setup). - Components live at the plugin root, not inside
.claude-plugin/. Onlyplugin.jsonbelongs in.claude-plugin/. - Plugin-level
.mcp.jsonis forbidden for servers that require user secrets — Claude Code would try to start them at session load with placeholder tokens and fail noisily. Ship an.exampletemplate and have a/wmill-setup-style flow write the real config viaclaude mcp add -s project.
Public repo: github.com/hallow-inc/claude-plugins. Primary install path is /plugin marketplace add hallow-inc/claude-plugins (Claude Code clones + caches). Fallback is manual git clone into ~/.claude/plugins/marketplaces/ for users behind GitHub-blocking networks or who want pinned SHAs. The repo IS the distribution channel — no tarballs, no S3, no Windmill side.
Source is publicly visible; use rights are restricted to Hallow personnel per LICENSE. No GitHub auth required to clone — HTTPS clone works anonymously.
The plugin itself is harmless without tailnet access: Windmill (windmill.platform.hallow.app) is tailnet-only, so an outsider who clones the repo cannot reach the backend.
Plugins omit the version field in plugin.json — every commit on master is a new version. Users update via /plugin marketplace update hallow-claude-plugins + /plugin install hallow-windmill@hallow-claude-plugins + /reload-plugins.
Change history: git log is authoritative.
Plugin-specific runbooks live in plugins/<folder>/docs/. Official Claude Code docs: docs.anthropic.com/en/docs/claude-code — see plugins-reference, skills, sub-agents, slash-commands, plugin-marketplaces.