Add portable plugin configuration for cross-host sync
- Create plugins/config.json with marketplace sources and desired plugins - Remove plugins/installed_plugins.json from tracking (host-specific paths) - Add installed_plugins.json to .gitignore - Update README with plugin installation instructions - Enable example-skills plugin in settings.json
This commit is contained in:
1
.gitignore
vendored
1
.gitignore
vendored
@@ -26,3 +26,4 @@ plugins/marketplaces/
|
||||
plugins/repos/
|
||||
plugins/install-counts-cache.json
|
||||
plugins/known_marketplaces.json
|
||||
plugins/installed_plugins.json
|
||||
|
||||
17
README.md
17
README.md
@@ -31,5 +31,20 @@ git submodule update --remote --merge
|
||||
|------|-------------|
|
||||
| `CLAUDE.md` | Global instructions for all projects |
|
||||
| `settings.json` | User permissions and plugin config |
|
||||
| `plugins/` | Plugin configuration |
|
||||
| `plugins/config.json` | Portable plugin manifest (marketplaces + desired plugins) |
|
||||
| `skills/` | User-level skills (as submodules) |
|
||||
|
||||
## Install Plugins on New Host
|
||||
|
||||
After cloning, install the desired plugins listed in `plugins/config.json`:
|
||||
|
||||
```bash
|
||||
# Install plugins from known marketplaces
|
||||
claude plugins install example-skills@anthropic-agent-skills
|
||||
|
||||
# For plugins with unknown marketplace sources, search and install manually:
|
||||
claude plugins search superpowers
|
||||
claude plugins search frontend-design
|
||||
```
|
||||
|
||||
The `plugins/installed_plugins.json` file is auto-generated with host-specific paths and should not be committed. The portable configuration is stored in `plugins/config.json`.
|
||||
|
||||
@@ -1,3 +1,29 @@
|
||||
{
|
||||
"repositories": {}
|
||||
"repositories": {
|
||||
"claude-plugins-official": {
|
||||
"source": "github",
|
||||
"repo": "anthropics/claude-plugins-official"
|
||||
},
|
||||
"anthropic-agent-skills": {
|
||||
"source": "github",
|
||||
"repo": "anthropics/skills"
|
||||
}
|
||||
},
|
||||
"desired_plugins": [
|
||||
{
|
||||
"id": "superpowers@superpowers-marketplace",
|
||||
"version": "4.0.0",
|
||||
"gitCommitSha": "84283dfc058f61b8985e07d20eb6838a6e7388fe",
|
||||
"note": "Marketplace source unknown - install manually if needed"
|
||||
},
|
||||
{
|
||||
"id": "frontend-design@claude-code-plugins",
|
||||
"version": "1.0.0",
|
||||
"gitCommitSha": "5880baedc387d8bad189b4c778f69477e88feb7f",
|
||||
"note": "Marketplace source unknown - install manually if needed"
|
||||
},
|
||||
{
|
||||
"id": "example-skills@anthropic-agent-skills"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -1,27 +0,0 @@
|
||||
{
|
||||
"version": 2,
|
||||
"plugins": {
|
||||
"superpowers@superpowers-marketplace": [
|
||||
{
|
||||
"scope": "user",
|
||||
"installPath": "/home/bill/.claude/plugins/cache/superpowers-marketplace/superpowers/4.0.0",
|
||||
"version": "4.0.0",
|
||||
"installedAt": "2025-11-23T20:31:21.915Z",
|
||||
"lastUpdated": "2025-12-21T16:54:24.259Z",
|
||||
"gitCommitSha": "84283dfc058f61b8985e07d20eb6838a6e7388fe",
|
||||
"isLocal": false
|
||||
}
|
||||
],
|
||||
"frontend-design@claude-code-plugins": [
|
||||
{
|
||||
"scope": "user",
|
||||
"installPath": "/home/bill/.claude/plugins/cache/claude-code-plugins/frontend-design/1.0.0",
|
||||
"version": "1.0.0",
|
||||
"installedAt": "2025-11-24T21:24:25.872Z",
|
||||
"lastUpdated": "2025-11-24T21:24:25.872Z",
|
||||
"gitCommitSha": "5880baedc387d8bad189b4c778f69477e88feb7f",
|
||||
"isLocal": true
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
@@ -1,12 +1,9 @@
|
||||
{
|
||||
"attribution": {
|
||||
"commit": "",
|
||||
"pr": ""
|
||||
},
|
||||
"permissions": {
|
||||
"ask": [
|
||||
"Bash(make dev:*)",
|
||||
"Bash(git merge:*)",
|
||||
"Bash(git branch -d:*)",
|
||||
"Bash(git branch -D:*)",
|
||||
"Bash(git branch --delete:*)"
|
||||
],
|
||||
"allow": [
|
||||
"Bash(git:*)",
|
||||
"Bash(npm:*)",
|
||||
@@ -33,6 +30,13 @@
|
||||
"Skill(superpowers:*)",
|
||||
"Skill(frontend-design:*)",
|
||||
"WebSearch"
|
||||
],
|
||||
"ask": [
|
||||
"Bash(make dev:*)",
|
||||
"Bash(git merge:*)",
|
||||
"Bash(git branch -d:*)",
|
||||
"Bash(git branch -D:*)",
|
||||
"Bash(git branch --delete:*)"
|
||||
]
|
||||
},
|
||||
"statusLine": {
|
||||
@@ -41,11 +45,8 @@
|
||||
},
|
||||
"enabledPlugins": {
|
||||
"superpowers@superpowers-marketplace": true,
|
||||
"frontend-design@claude-code-plugins": true
|
||||
"frontend-design@claude-code-plugins": true,
|
||||
"example-skills@anthropic-agent-skills": true
|
||||
},
|
||||
"alwaysThinkingEnabled": true,
|
||||
"attribution": {
|
||||
"commit": "",
|
||||
"pr": ""
|
||||
}
|
||||
"alwaysThinkingEnabled": true
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user