A centralized Claude Code plugin containing agents, skills, hooks, and coding rules. Use this across all your projects without duplicating setup.
git clone https://github.com/judigot/ai.git ~/aiAdd to your .bashrc, .zshrc, or shell config:
alias cc='claude --plugin-dir ~/ai'Reload your shell:
source ~/.bashrccd /path/to/any/project
ccAll your agents, skills, hooks, and rules are now available!
ai/
├── .claude-plugin/
│ └── plugin.json # Plugin manifest (required)
├── agents/ # Agent definitions (.md files)
│ ├── code-reviewer.md # Git-based PR review
│ ├── task-master.md # Worktree task execution
│ ├── multitasker.md # Parallel worktree management
│ └── agentic-workflow.md # Multi-agent coordination
├── skills/ # Specialized skills (subdirectories)
│ ├── lint-master/
│ │ └── SKILL.md # Multi-tool linting workflow
│ └── test-master/
│ └── SKILL.md # Testing infrastructure
├── hooks/
│ └── hooks.json # SessionStart, PreToolUse, Stop hooks
├── commands/ # Slash commands (.md files)
├── scripts/ # Helper scripts
├── settings/ # Personal settings (compartmentalized)
│ └── rules.md # Coding rules loaded on session start
├── CLAUDE.md # Plugin entry point
└── README.md
Your personal coding rules are stored in settings/rules.md, separate from ~/.claude. This provides:
- Single source of truth: One repository for all global settings
- Version control: Track changes to your rules over time
- Portability: Same settings across all machines
The hooks/hooks.json loads your rules on every session start:
{
"SessionStart": [
{
"matcher": "*",
"hooks": [
{
"type": "command",
"command": "cat ${CLAUDE_PLUGIN_ROOT}/settings/rules.md"
}
]
}
]
}The --plugin-dir flag tells Claude Code to load this plugin for any project:
claude --plugin-dir ~/aiThis applies your agents, skills, hooks, and settings globally without copying files to each project.
| Agent | Purpose |
|---|---|
code-reviewer |
Git-based PR review with enterprise-grade analysis |
task-master |
Worktree task execution with scope enforcement |
multitasker |
Parallel worktree management |
agentic-workflow |
Multi-agent coordination architecture |
| Skill | Purpose |
|---|---|
lint-master |
Multi-tool linting workflow (ESLint > Oxlint > Biome) |
test-master |
Testing infrastructure and implementation |
Local projects can have their own settings that extend the global ones:
my-project/
├── CLAUDE.md # Project-specific rules
├── .claude/
│ └── settings.local.json # Project-specific settings
└── agents/ # Project-specific agents (optional)
Claude Code loads in this order:
- Global plugin (from
--plugin-dir) ← This repository - Project
CLAUDE.md - Local
.claude/settings
cd ~/ai
git pullChanges apply to the next Claude Code session.
Create a new .md file in agents/:
---
name: my-agent
description: Use this agent when [conditions]. Examples:
<example>
Context: [Situation]
user: "[Request]"
assistant: "[Response]"
<commentary>
[Why this agent triggers]
</commentary>
</example>
model: inherit
color: blue
tools: ["Read", "Write", "Bash"]
---
You are an expert at...
[Agent instructions here]Create a new subdirectory in skills/ with a SKILL.md file:
skills/
└── my-skill/
└── SKILL.md
The skill file follows the same format as agents.
Create a new .md file in commands/ for slash commands.
MIT