/00. Claude Plugins

A Claude Code plugin is a folder of skills, agents, hooks, and slash commands that Claude installs per project. 28 plugins, 68 skills here.

/plugin marketplace add aiocean/claude-plugins
/plugin install <plugin-name>@aiocean-plugins

Skills load when their description matches your message, hooks fire on tool-call events, agents spawn on the Agent tool. Idle plugins cost nothing — browse plugins or read the guides.

Folders

Articles

/03. aio-patch-setup

aio-patch-setup

From plugin aio-claude-toolkit

Install

/plugin install aio-claude-toolkit@aiocean-plugins

aio-patch-setup — scaffold a new Claude-binary-patching project

Goal

Drop a complete, runnable patching pipeline into the target directory so the user can immediately:

  1. Edit tools/pipeline/patches.json (start from empty schema or copy from patches.json.example)
  2. Run /aio-claude-toolkit:aio-patch-extract to extract cli.js + natives from their installed claude
  3. Run /aio-claude-toolkit:aio-patch-compile to apply patches + recompile a custom claude binary
  4. Run /aio-claude-toolkit:aio-patch-run to exec the patched binary

What gets copied

PathSourceUser-owned?
tools/extract.shtemplates/tools/extract.sh (synced from dirty-claude + ARCH patch)No — generic
tools/build.shtemplates/tools/build.shNo — generic
tools/run.shtemplates/tools/run.shNo — generic
tools/pipeline/*.pydirty-claude pipeline (extract_cli, patch_cli, resolve_symbols, inline_sources, extract_native_modules)No — generic
tools/pipeline/patches.jsonEMPTY schema templateYES — user content
tools/pipeline/patches.json.exampledirty-claude pinned referenceNo — reference
tools/pipeline/sources/*.exampledirty-claude reference patch bodyNo — reference
tools/cli-nav/*.cjsAST navigator (acorn-based)No — generic
docs/*.mdcurated generic guides (anchor strategy, drift recovery, etc.)No — generic
.gitignoresensible defaults (dist/, *.backup, pycache/)No — generic
CLAUDE.md.exampletemplate for your project's CLAUDE.mdNo — template
README.md.exampletemplate for your project's READMENo — template
.aio-patch-setup (hidden)sync metadata (VERSION)No — generated

NOT copied (opt-in via sibling skill): control/ — call /aio-claude-toolkit:aio-patch-control scaffold to install the reference HTTP control-channel sample.

Usage

/aio-claude-toolkit:aio-patch-setup [target_dir]
  • target_dir defaults to CWD.
  • FORCE=1 env var: overwrite generic scripts in an existing scaffold. Does NOT overwrite tools/pipeline/patches.json or tools/pipeline/sources/*.js (your patch content).

Next steps printed at end

After scaffold, prints:

  1. Edit tools/pipeline/patches.json (start from patches.json.example if you want the dirty-claude HTTP control-channel patch body).
  2. /aio-claude-toolkit:aio-patch-extract to extract cli.js.
  3. /aio-claude-toolkit:aio-patch-compile to apply + build.
  4. /aio-claude-toolkit:aio-patch-run to exec.

Implementation

The skill body invokes ${CLAUDE_PLUGIN_ROOT}/skills/aio-patch-setup/scripts/setup.sh "$@".

When invoked:

  1. Resolves TARGET = $1 ?? $PWD
  2. Guard: if $TARGET/tools/pipeline/ exists and FORCE is unset → exit 1 with hint
  3. cp -r templates/tools + cp -r templates/docs + copy ancillary files into $TARGET/
  4. Copy templates/VERSION$TARGET/.aio-patch-setup (hidden — sync metadata for drift recovery)
  5. Run check-deps.sh (warn-only)
  6. Print "Next steps" hint