@patchen0518/agentbrew 1.1.0 β 1.2.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +88 -45
- package/dist/cli.js +177 -15
- package/dist/cli.js.map +1 -1
- package/dist/dispatcher.d.ts +18 -0
- package/dist/dispatcher.js +43 -5
- package/dist/dispatcher.js.map +1 -1
- package/dist/installer.js +15 -11
- package/dist/installer.js.map +1 -1
- package/dist/migration.js +35 -1
- package/dist/migration.js.map +1 -1
- package/dist/registry.d.ts +6 -1
- package/dist/registry.js +86 -41
- package/dist/registry.js.map +1 -1
- package/dist/router.d.ts +1 -1
- package/dist/router.js +24 -4
- package/dist/router.js.map +1 -1
- package/dist/state.d.ts +4 -2
- package/dist/state.js +9 -4
- package/dist/state.js.map +1 -1
- package/dist/sync.d.ts +121 -0
- package/dist/sync.js +788 -1
- package/dist/sync.js.map +1 -1
- package/dist/updater.js +2 -1
- package/dist/updater.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -1,51 +1,66 @@
|
|
|
1
1
|
# AgentBrew πΊ
|
|
2
2
|
**The Universal Hub for AI Agents.**
|
|
3
3
|
|
|
4
|
-
AgentBrew is a centralized Model Context Protocol (MCP) multiplexer.
|
|
4
|
+
AgentBrew is a centralized Model Context Protocol (MCP) multiplexer. Install your tools and skills once β every AI agent you use picks them up automatically.
|
|
5
5
|
|
|
6
6
|
## π‘ The Core Idea
|
|
7
7
|
AI developers today face a fragmentation problem: every agent (Claude Code, Gemini CLI, Cursor, etc.) has its own way of managing MCP servers, tools, and skills. Setting up your favorite tools in one agent doesn't mean you have them in another.
|
|
8
8
|
|
|
9
9
|
**AgentBrew** solves this by acting as a **Universal "USB Hub"** for MCP. You install your tools once in AgentBrew, and all your agents can instantly access that same consistent set of capabilities. If you switch agents, your entire "brew" of tools and skills comes with you.
|
|
10
10
|
|
|
11
|
-
###
|
|
11
|
+
### How Skills Work
|
|
12
|
+
|
|
13
|
+
AgentBrew exposes skills (packages containing a `SKILL.md` file) as **MCP tools**. This is the primary delivery mechanism β it works in every agent that supports MCP, with no extra setup beyond registering agentbrew as a server.
|
|
12
14
|
|
|
13
15
|
```
|
|
14
|
-
AI Agent (Claude, Gemini, Cursor)
|
|
15
|
-
β stdio
|
|
16
|
+
AI Agent (Claude, Gemini, Cursor, Windsurf, Kiroβ¦)
|
|
17
|
+
β MCP (stdio)
|
|
16
18
|
βΌ
|
|
17
|
-
Router
|
|
19
|
+
AgentBrew Router
|
|
20
|
+
β
|
|
21
|
+
βββ Skills β MCP tools (universal, works in all agents automatically)
|
|
22
|
+
β Agent calls the tool β receives SKILL.md instructions β follows them
|
|
18
23
|
β
|
|
19
|
-
βββ
|
|
20
|
-
β Prefixes all names/URIs: "pkgName_serverName__toolName"
|
|
21
|
-
β Serves local prompts (Markdown files) and resources (CLAUDE.md / GEMINI.md)
|
|
24
|
+
βββ MCP Servers β proxied to child processes (lazy-spawned)
|
|
22
25
|
β
|
|
23
|
-
βββ
|
|
24
|
-
Lazy-spawned child process via stdio
|
|
25
|
-
Auto-retries on crash (3 attempts, exponential backoff)
|
|
26
|
+
βββ Instructions β MCP resources (CLAUDE.md, GEMINI.md, KIRO.md, .cursorrulesβ¦)
|
|
26
27
|
```
|
|
27
28
|
|
|
29
|
+
Running `agentbrew sync` adds a second layer on top:
|
|
30
|
+
|
|
31
|
+
| Agent | After MCP registration | After `agentbrew sync` |
|
|
32
|
+
|---|---|---|
|
|
33
|
+
| **Claude Code** | Skills as MCP tools (AI-initiated) | + `/skill-name` slash commands (user-initiated) |
|
|
34
|
+
| **Gemini CLI** | Skills as MCP tools | + Extension slash commands |
|
|
35
|
+
| **Cursor** | Skills as MCP tools (auto-registered) | No change β Cursor uses MCP natively |
|
|
36
|
+
| **Windsurf** | Skills as MCP tools | + Native skill slash commands |
|
|
37
|
+
| **Antigravity** | Skills as MCP tools | + Native skill slash commands |
|
|
38
|
+
| **Codex CLI** | Skills as MCP tools (auto-registered) | No change β Codex uses MCP natively |
|
|
39
|
+
| **Amazon Kiro** | Skills as MCP tools (auto-registered) | + Steering file with shared instructions |
|
|
40
|
+
|
|
41
|
+
> **Claude Code note:** After sync, Claude Code has both interfaces simultaneously. They are complementary, not duplicates:
|
|
42
|
+
> - `/skill-name` β you or the AI explicitly invokes the skill; SKILL.md is injected as conversation context.
|
|
43
|
+
> - `pkg__skill-name` MCP tool β the AI calls this autonomously mid-task without user input.
|
|
44
|
+
> Both read the same SKILL.md file on disk (the sync creates symlinks, not copies).
|
|
45
|
+
|
|
28
46
|
## π Key Features
|
|
29
|
-
- **
|
|
30
|
-
- **
|
|
31
|
-
- **
|
|
32
|
-
- **
|
|
33
|
-
- **Shared Instructions:** Write agent instructions once in `~/.agentbrew/INSTRUCTIONS.md` and
|
|
47
|
+
- **Universal Skill Delivery:** Skills are immediately available as MCP tools in every connected agent β no sync required.
|
|
48
|
+
- **Lazy Loading:** Child MCP servers only start when a tool is actually called.
|
|
49
|
+
- **Auto-Discovery:** Automatically detects MCP servers in Node.js, Python, and Markdown projects. Detects per-agent instruction files (`CLAUDE.md`, `GEMINI.md`, `KIRO.md`, `AGENTS.md`, `.cursorrules`, etc.) shipped inside packages.
|
|
50
|
+
- **Universal Migration:** Import your existing configurations from Gemini, Claude Code, Cursor, Codex, Windsurf, and Kiro.
|
|
51
|
+
- **Shared Instructions:** Write agent instructions once in `~/.agentbrew/INSTRUCTIONS.md` and push them to every agent's global config with `agentbrew sync`.
|
|
52
|
+
- **Native Slash Commands (optional):** `agentbrew sync` also registers skills as native slash commands in Claude Code, Gemini CLI, Windsurf, and Antigravity.
|
|
34
53
|
|
|
35
54
|
## π Installation
|
|
36
55
|
|
|
37
56
|
### π¦ Via npm Registry (Recommended)
|
|
38
57
|
|
|
39
|
-
You can install AgentBrew globally with a single command:
|
|
40
|
-
|
|
41
58
|
```bash
|
|
42
59
|
npm install -g @patchen0518/agentbrew
|
|
43
60
|
```
|
|
44
61
|
|
|
45
62
|
### π¨ Manual Development Setup
|
|
46
63
|
|
|
47
|
-
If you are developing or contributing to AgentBrew, you can clone and build the repository locally:
|
|
48
|
-
|
|
49
64
|
```bash
|
|
50
65
|
# Clone and enter the repo
|
|
51
66
|
git clone https://github.com/patchen0518/AgentBrew.git
|
|
@@ -59,25 +74,42 @@ npm run build
|
|
|
59
74
|
npm link
|
|
60
75
|
```
|
|
61
76
|
|
|
62
|
-
|
|
63
77
|
## π Usage
|
|
64
78
|
|
|
65
|
-
###
|
|
79
|
+
### First Steps
|
|
80
|
+
|
|
81
|
+
After installing AgentBrew, the recommended setup is:
|
|
82
|
+
|
|
66
83
|
```bash
|
|
67
|
-
# Install a
|
|
84
|
+
# 1. Install a package
|
|
68
85
|
agentbrew install <github-url>
|
|
86
|
+
|
|
87
|
+
# 2. Connect your agent (see "Connecting Agents" below)
|
|
88
|
+
# Skills and tools are now live in your agent as MCP capabilities.
|
|
89
|
+
|
|
90
|
+
# 3. Run sync to push shared instructions and enable native slash commands
|
|
91
|
+
agentbrew sync
|
|
69
92
|
```
|
|
70
93
|
|
|
94
|
+
Step 3 is optional but recommended β it unlocks slash command discoverability in Claude Code and Gemini CLI and lets you maintain shared instructions across all your agents.
|
|
95
|
+
|
|
96
|
+
### Installing Tools & Skills
|
|
71
97
|
```bash
|
|
72
|
-
#
|
|
73
|
-
agentbrew
|
|
98
|
+
# Install a tool or skill package from a Git URL
|
|
99
|
+
agentbrew install <github-url>
|
|
74
100
|
|
|
75
|
-
#
|
|
76
|
-
|
|
101
|
+
# Migrate from Gemini, Claude, Cursor, Codex, Windsurf, or Kiro
|
|
102
|
+
agentbrew migrate
|
|
77
103
|
```
|
|
78
104
|
|
|
105
|
+
> **Installation failed?** If `agentbrew install` fails (missing dependencies, build errors, etc.), ask your AI agent directly:
|
|
106
|
+
> > *"Install `<github-url>` to agentbrew for me."*
|
|
107
|
+
> The agent can run the install command, read any error output, and resolve issues autonomously.
|
|
108
|
+
|
|
109
|
+
> **API keys:** If a package requires credentials to start its MCP server, discovery may fail silently at install time. AgentBrew will warn you which servers need attention. Set the required environment variables and run `agentbrew refresh` to complete setup.
|
|
110
|
+
|
|
79
111
|
### π Dedicated Credentials
|
|
80
|
-
For servers requiring custom
|
|
112
|
+
For servers requiring custom credentials, configure them in the package's `agentbrew.toml` manifest file:
|
|
81
113
|
|
|
82
114
|
```toml
|
|
83
115
|
# ~/.agentbrew/packages/linked-custom-server/agentbrew.toml
|
|
@@ -90,36 +122,42 @@ API_TOKEN = "your-secret-token-here"
|
|
|
90
122
|
```
|
|
91
123
|
|
|
92
124
|
|
|
93
|
-
### π Shared Instructions
|
|
125
|
+
### π Shared Instructions & Skill Sync
|
|
94
126
|
|
|
95
|
-
|
|
127
|
+
`agentbrew sync` does two things:
|
|
96
128
|
|
|
97
|
-
**
|
|
129
|
+
1. **Injects shared instructions** from `~/.agentbrew/INSTRUCTIONS.md` into every agent's global config file.
|
|
130
|
+
2. **Registers skills as native slash commands** in Claude Code, Gemini CLI, Windsurf, and Antigravity (in addition to the MCP tools that are already active).
|
|
98
131
|
|
|
99
132
|
**Workflow:**
|
|
100
133
|
|
|
101
134
|
```bash
|
|
102
|
-
# 1. First run creates an example
|
|
135
|
+
# 1. First run creates an example INSTRUCTIONS.md β nothing is written yet
|
|
103
136
|
agentbrew sync
|
|
104
137
|
|
|
105
|
-
# 2. Edit
|
|
106
|
-
# (e.g. "always use Context7 before calling external APIs")
|
|
138
|
+
# 2. Edit with your shared rules (e.g. "always use Context7 before calling external APIs")
|
|
107
139
|
open ~/.agentbrew/INSTRUCTIONS.md
|
|
108
140
|
|
|
109
|
-
# 3. Push
|
|
141
|
+
# 3. Push instructions and register slash commands in all detected agents
|
|
110
142
|
agentbrew sync
|
|
111
143
|
```
|
|
112
144
|
|
|
113
|
-
After syncing
|
|
114
|
-
|
|
115
|
-
|
|
145
|
+
After syncing:
|
|
146
|
+
- A clearly-marked `AgentBrew Shared` section is injected into each agent's global config (`~/.claude/CLAUDE.md`, `~/.gemini/GEMINI.md`, `~/.codex/AGENTS.md`, etc.).
|
|
147
|
+
- Skills are registered as slash commands in **Claude Code** (`~/.claude/skills/`), **Gemini CLI**, **Windsurf**, and **Antigravity** via symlinks β no content is duplicated on disk.
|
|
148
|
+
- For **Cursor**, agentbrew is automatically registered as an MCP server in `~/.cursor/mcp.json` β no manual steps required.
|
|
149
|
+
- For **Codex CLI**, agentbrew is automatically registered as an MCP server in `~/.codex/config.toml` β no manual steps required.
|
|
150
|
+
- For **Amazon Kiro**, agentbrew is automatically registered as an MCP server in `~/.kiro/settings/mcp.json`, and shared instructions are written to `~/.kiro/steering/agentbrew-shared.md` (always-active steering file) β no manual steps required.
|
|
116
151
|
|
|
117
152
|
```bash
|
|
153
|
+
# Remove all injected instructions and skill registrations
|
|
118
154
|
agentbrew unsync
|
|
119
155
|
```
|
|
120
156
|
|
|
121
157
|
> [!NOTE]
|
|
122
|
-
> `agentbrew sync` only writes to
|
|
158
|
+
> `agentbrew sync` only writes to agents that are detected as installed on your machine (their config directory must exist). Agents you haven't installed are silently skipped.
|
|
159
|
+
|
|
160
|
+
> **Advanced:** Claude Code users who prefer skills to be accessible only via slash commands (and not as AI-callable MCP tools) can set `"skillsAsMcpTools": false` in `~/.agentbrew/state.json`. The default is `true` β both interfaces are active.
|
|
123
161
|
|
|
124
162
|
### Managing the Hub
|
|
125
163
|
```bash
|
|
@@ -143,7 +181,7 @@ agentbrew uninstall <package-name> <capability>
|
|
|
143
181
|
agentbrew update <package-name>
|
|
144
182
|
agentbrew update --all
|
|
145
183
|
|
|
146
|
-
# Refresh capability cache (required after manual file changes)
|
|
184
|
+
# Refresh capability cache (required after manual file changes, or after setting API keys)
|
|
147
185
|
agentbrew refresh
|
|
148
186
|
|
|
149
187
|
# Refresh and re-run dependency installation (use after a manual git clone)
|
|
@@ -151,14 +189,19 @@ agentbrew refresh --install
|
|
|
151
189
|
```
|
|
152
190
|
|
|
153
191
|
## π€ Connecting Agents
|
|
154
|
-
Point your AI agent to launch `agentbrew` as its MCP server.
|
|
192
|
+
Point your AI agent to launch `agentbrew` as its MCP server. Once connected, all installed tools and skills are immediately available.
|
|
155
193
|
|
|
156
194
|
- **Gemini CLI:** `gemini mcp add agentbrew agentbrew`
|
|
157
195
|
- **Claude Code:** `/plugin add agentbrew agentbrew`
|
|
158
|
-
- **Cursor:**
|
|
196
|
+
- **Cursor:** Run `agentbrew sync` β agentbrew is automatically registered in `~/.cursor/mcp.json`. No manual steps required.
|
|
197
|
+
- **Codex CLI:** Run `agentbrew sync` β agentbrew is automatically registered in `~/.codex/config.toml` if Codex CLI is installed. Or manually: `codex mcp add agentbrew agentbrew`
|
|
198
|
+
- **Amazon Kiro:** Run `agentbrew sync` β agentbrew is automatically registered in `~/.kiro/settings/mcp.json` if Kiro is installed. No manual steps required.
|
|
199
|
+
- **Windsurf / Antigravity:** Add agentbrew as an MCP server, then run `agentbrew sync` to also register slash commands.
|
|
200
|
+
|
|
201
|
+
After connecting, run `agentbrew sync` to enable native slash commands and shared instructions.
|
|
159
202
|
|
|
160
203
|
### Manual JSON Configuration
|
|
161
|
-
For agents that use a configuration file (like **Claude Desktop** or other MCP clients)
|
|
204
|
+
For agents that use a configuration file (like **Claude Desktop** or other MCP clients):
|
|
162
205
|
|
|
163
206
|
**File Paths:**
|
|
164
207
|
- **Claude Desktop (macOS):** `~/Library/Application Support/Claude/claude_desktop_config.json`
|
|
@@ -177,7 +220,7 @@ For agents that use a configuration file (like **Claude Desktop** or other MCP c
|
|
|
177
220
|
|
|
178
221
|
> [!TIP]
|
|
179
222
|
> **Path Resolution Fallback:**
|
|
180
|
-
> If your agent cannot resolve the global `agentbrew` command (e.g., throwing a "command not found"
|
|
223
|
+
> If your agent cannot resolve the global `agentbrew` command (e.g., throwing a "command not found" error during startup), run via `node` directly:
|
|
181
224
|
>
|
|
182
225
|
> ```json
|
|
183
226
|
> {
|
|
@@ -191,7 +234,7 @@ For agents that use a configuration file (like **Claude Desktop** or other MCP c
|
|
|
191
234
|
> ```
|
|
192
235
|
|
|
193
236
|
## π Architecture
|
|
194
|
-
AgentBrew uses an `mcp-manifest.json` cache in each package directory
|
|
237
|
+
AgentBrew uses an `mcp-manifest.json` cache in each package directory for instant startup. The **Router** acts as a dynamic proxy, spawning child MCP processes on-demand and routing requests using a scoped naming convention: `{packageName}_{serverName}__{toolName}`. The `__` (double-underscore) is the reserved routing delimiter β package and server names must never contain it.
|
|
195
238
|
|
|
196
239
|
## π License
|
|
197
240
|
MIT
|
package/dist/cli.js
CHANGED
|
@@ -53,6 +53,29 @@ const path_1 = __importDefault(require("path"));
|
|
|
53
53
|
const readline_1 = __importDefault(require("readline"));
|
|
54
54
|
const toml = __importStar(require("smol-toml"));
|
|
55
55
|
const logger_1 = require("./logger");
|
|
56
|
+
function syncSkillsAfterChange(opts = {}) {
|
|
57
|
+
if (opts.cleanOrphans) {
|
|
58
|
+
const orphans = (0, sync_1.cleanOrphanSkills)();
|
|
59
|
+
if (orphans.length > 0) {
|
|
60
|
+
logger_1.Logger.info(`Removed ${orphans.length} stale skill link(s).`);
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
const packages = (0, registry_1.discoverPackages)();
|
|
64
|
+
const skills = (0, sync_1.extractSkillEntries)(packages);
|
|
65
|
+
const allResults = [
|
|
66
|
+
...(0, sync_1.syncSkillsToClaudeCode)(skills),
|
|
67
|
+
...(0, sync_1.syncSkillsToGeminiCLI)(skills),
|
|
68
|
+
...(0, sync_1.syncSkillsToWindsurf)(skills),
|
|
69
|
+
...(0, sync_1.syncSkillsToAntigravityCLI)(skills),
|
|
70
|
+
...(0, sync_1.syncSkillsToCursor)(skills),
|
|
71
|
+
...(0, sync_1.syncSkillsToKiro)(skills),
|
|
72
|
+
];
|
|
73
|
+
const linked = allResults.filter(r => r.status === 'linked');
|
|
74
|
+
if (linked.length > 0) {
|
|
75
|
+
logger_1.Logger.info(`Registered ${linked.length} skill(s) with agents:`);
|
|
76
|
+
linked.forEach(r => logger_1.Logger.info(` + ${r.entryName}`));
|
|
77
|
+
}
|
|
78
|
+
}
|
|
56
79
|
exports.program = new commander_1.Command();
|
|
57
80
|
exports.program
|
|
58
81
|
.name('agentbrew')
|
|
@@ -93,7 +116,8 @@ exports.program
|
|
|
93
116
|
logger_1.Logger.info(`Refreshing cache for ${pkg.packageName}...`);
|
|
94
117
|
const manifests = (0, registry_1.findManifests)(pkg.path, 2);
|
|
95
118
|
for (const m of manifests) {
|
|
96
|
-
await (0, registry_1.generateMcpManifest)(m.path, m.manifest);
|
|
119
|
+
const cache = await (0, registry_1.generateMcpManifest)(m.path, m.manifest);
|
|
120
|
+
(0, registry_1.warnIfDiscoveryFailed)(m.manifest, cache);
|
|
97
121
|
}
|
|
98
122
|
refreshedPaths.add(pkg.path);
|
|
99
123
|
}
|
|
@@ -120,12 +144,41 @@ exports.program
|
|
|
120
144
|
return answer.toLowerCase() === 'y';
|
|
121
145
|
});
|
|
122
146
|
logger_1.Logger.info(`Successfully installed package from ${url}`);
|
|
147
|
+
syncSkillsAfterChange();
|
|
123
148
|
}
|
|
124
149
|
catch (error) {
|
|
125
150
|
logger_1.Logger.error(`Failed to install package: ${error.message}`);
|
|
126
151
|
process.exit(1);
|
|
127
152
|
}
|
|
128
153
|
});
|
|
154
|
+
exports.program
|
|
155
|
+
.command('link')
|
|
156
|
+
.description('Link an existing local MCP server into AgentBrew')
|
|
157
|
+
.argument('<name>', 'Name for the linked server')
|
|
158
|
+
.argument('<command>', 'Command to run the server')
|
|
159
|
+
.argument('[args...]', 'Arguments to pass to the command')
|
|
160
|
+
.option('--env <vars...>', 'Environment variables as KEY=VALUE pairs')
|
|
161
|
+
.option('--cwd <path>', 'Working directory for the server')
|
|
162
|
+
.action(async (name, command, args, options) => {
|
|
163
|
+
const env = {};
|
|
164
|
+
for (const pair of options.env ?? []) {
|
|
165
|
+
const idx = pair.indexOf('=');
|
|
166
|
+
if (idx === -1) {
|
|
167
|
+
logger_1.Logger.error(`Invalid env var format '${pair}'. Expected KEY=VALUE.`);
|
|
168
|
+
process.exit(1);
|
|
169
|
+
}
|
|
170
|
+
env[pair.substring(0, idx)] = pair.substring(idx + 1);
|
|
171
|
+
}
|
|
172
|
+
try {
|
|
173
|
+
await (0, installer_1.createLinkPackage)(name, command, args, Object.keys(env).length > 0 ? env : undefined, options.cwd);
|
|
174
|
+
logger_1.Logger.info(`Successfully linked server '${name}'`);
|
|
175
|
+
syncSkillsAfterChange();
|
|
176
|
+
}
|
|
177
|
+
catch (error) {
|
|
178
|
+
logger_1.Logger.error(`Failed to link server: ${error.message}`);
|
|
179
|
+
process.exit(1);
|
|
180
|
+
}
|
|
181
|
+
});
|
|
129
182
|
exports.program
|
|
130
183
|
.command('update')
|
|
131
184
|
.description('Update installed packages from their remote repositories')
|
|
@@ -148,6 +201,7 @@ exports.program
|
|
|
148
201
|
logger_1.Logger.error(error.message);
|
|
149
202
|
process.exit(1);
|
|
150
203
|
}
|
|
204
|
+
syncSkillsAfterChange({ cleanOrphans: true });
|
|
151
205
|
});
|
|
152
206
|
exports.program
|
|
153
207
|
.command('list')
|
|
@@ -216,7 +270,7 @@ exports.program
|
|
|
216
270
|
.argument('[capability]', 'Optional: specific capability name')
|
|
217
271
|
.action((name, capability) => {
|
|
218
272
|
const id = capability ? `${name}:${capability}` : name;
|
|
219
|
-
if ((0, state_1.enablePackage)(id)) {
|
|
273
|
+
if ((0, state_1.enablePackage)(id) === 'changed') {
|
|
220
274
|
logger_1.Logger.info(`Enabled ${capability ? `capability '${capability}' in ` : ''}package '${name}'`);
|
|
221
275
|
}
|
|
222
276
|
else {
|
|
@@ -230,7 +284,7 @@ exports.program
|
|
|
230
284
|
.argument('[capability]', 'Optional: specific capability name')
|
|
231
285
|
.action((name, capability) => {
|
|
232
286
|
const id = capability ? `${name}:${capability}` : name;
|
|
233
|
-
if ((0, state_1.disablePackage)(id)) {
|
|
287
|
+
if ((0, state_1.disablePackage)(id) === 'changed') {
|
|
234
288
|
logger_1.Logger.info(`Disabled ${capability ? `capability '${capability}' in ` : ''}package '${name}'`);
|
|
235
289
|
}
|
|
236
290
|
else {
|
|
@@ -253,6 +307,12 @@ exports.program
|
|
|
253
307
|
try {
|
|
254
308
|
logger_1.Logger.info(`Uninstalling ${name} from ${target.path}...`);
|
|
255
309
|
fs_1.default.rmSync(target.path, { recursive: true, force: true });
|
|
310
|
+
const orphans = (0, sync_1.cleanOrphanSkills)();
|
|
311
|
+
if (orphans.length > 0) {
|
|
312
|
+
logger_1.Logger.info(`Removed ${orphans.length} stale skill link(s).`);
|
|
313
|
+
}
|
|
314
|
+
// Regenerate Cursor index with remaining skills (cleanOrphanSkills can't regenerate it)
|
|
315
|
+
(0, sync_1.syncSkillsToCursor)((0, sync_1.extractSkillEntries)((0, registry_1.discoverPackages)()));
|
|
256
316
|
logger_1.Logger.info(`Successfully uninstalled package '${name}'`);
|
|
257
317
|
}
|
|
258
318
|
catch (error) {
|
|
@@ -318,9 +378,15 @@ exports.program
|
|
|
318
378
|
// Regenerate cache from the updated manifest
|
|
319
379
|
const manifests = (0, registry_1.findManifests)(target.path, 2);
|
|
320
380
|
for (const m of manifests) {
|
|
321
|
-
await (0, registry_1.generateMcpManifest)(m.path, m.manifest);
|
|
381
|
+
const cache = await (0, registry_1.generateMcpManifest)(m.path, m.manifest);
|
|
382
|
+
(0, registry_1.warnIfDiscoveryFailed)(m.manifest, cache);
|
|
322
383
|
}
|
|
323
384
|
logger_1.Logger.info(`Successfully uninstalled capability '${capability}' from package '${name}'`);
|
|
385
|
+
const orphans = (0, sync_1.cleanOrphanSkills)();
|
|
386
|
+
if (orphans.length > 0) {
|
|
387
|
+
logger_1.Logger.info(`Removed ${orphans.length} stale skill link(s).`);
|
|
388
|
+
}
|
|
389
|
+
(0, sync_1.syncSkillsToCursor)((0, sync_1.extractSkillEntries)((0, registry_1.discoverPackages)()));
|
|
324
390
|
}
|
|
325
391
|
catch (error) {
|
|
326
392
|
logger_1.Logger.error(`Failed to uninstall capability: ${error.message}`);
|
|
@@ -367,9 +433,16 @@ exports.program
|
|
|
367
433
|
logger_1.Logger.info(" /plugin add agentbrew agentbrew");
|
|
368
434
|
}
|
|
369
435
|
if (sources.has('Cursor')) {
|
|
370
|
-
|
|
371
|
-
|
|
372
|
-
|
|
436
|
+
const cursorMcpResults = (0, sync_1.syncMcpServerToCursor)();
|
|
437
|
+
const registered = cursorMcpResults.find(r => r.status === 'linked' || r.status === 'already_exists');
|
|
438
|
+
if (registered) {
|
|
439
|
+
logger_1.Logger.info(`\nβ
Cursor: agentbrew registered in ${registered.path}`);
|
|
440
|
+
}
|
|
441
|
+
else {
|
|
442
|
+
logger_1.Logger.info("\nFor Cursor:");
|
|
443
|
+
logger_1.Logger.info(" Open Cursor Settings > MCP and add a new server:");
|
|
444
|
+
logger_1.Logger.info(" Name: agentbrew | Type: command | Command: agentbrew");
|
|
445
|
+
}
|
|
373
446
|
}
|
|
374
447
|
if (sources.has('Windsurf')) {
|
|
375
448
|
logger_1.Logger.info("\nFor Windsurf:");
|
|
@@ -377,9 +450,16 @@ exports.program
|
|
|
377
450
|
logger_1.Logger.info(" Name: agentbrew | Command: agentbrew");
|
|
378
451
|
}
|
|
379
452
|
if (sources.has('OpenAI Codex CLI')) {
|
|
380
|
-
|
|
381
|
-
|
|
382
|
-
|
|
453
|
+
const codexMcpResults = (0, sync_1.syncMcpServerToCodex)();
|
|
454
|
+
const registered = codexMcpResults.find(r => r.status === 'linked' || r.status === 'already_exists');
|
|
455
|
+
if (registered) {
|
|
456
|
+
logger_1.Logger.info(`\nβ
Codex CLI: agentbrew registered in ${registered.path}`);
|
|
457
|
+
}
|
|
458
|
+
else {
|
|
459
|
+
logger_1.Logger.info("\nFor OpenAI Codex CLI:");
|
|
460
|
+
logger_1.Logger.info(" Run: codex mcp add agentbrew agentbrew");
|
|
461
|
+
logger_1.Logger.info(" Or manually add to ~/.codex/config.toml under [mcp_servers.agentbrew]");
|
|
462
|
+
}
|
|
383
463
|
}
|
|
384
464
|
logger_1.Logger.info("\nNote: You can always use 'agentbrew list' to see all available tools and skills.");
|
|
385
465
|
}
|
|
@@ -387,11 +467,11 @@ exports.program
|
|
|
387
467
|
});
|
|
388
468
|
exports.program
|
|
389
469
|
.command('sync')
|
|
390
|
-
.description('Inject shared instructions
|
|
470
|
+
.description('Inject shared instructions into agent configs and register skills with Claude Code')
|
|
391
471
|
.action(() => {
|
|
392
472
|
const instructionsPath = (0, sync_1.getInstructionsPath)();
|
|
393
|
-
logger_1.Logger.info('AgentBrew
|
|
394
|
-
logger_1.Logger.info('
|
|
473
|
+
logger_1.Logger.info('AgentBrew Sync');
|
|
474
|
+
logger_1.Logger.info('==============');
|
|
395
475
|
logger_1.Logger.info('β οΈ agentbrew sync will add an "AgentBrew Shared" section to your agent');
|
|
396
476
|
logger_1.Logger.info(' config files (e.g. CLAUDE.md, GEMINI.md, AGENTS.md). The section is clearly marked');
|
|
397
477
|
logger_1.Logger.info(' and can be removed at any time with: agentbrew unsync\n');
|
|
@@ -401,7 +481,7 @@ exports.program
|
|
|
401
481
|
logger_1.Logger.info('\nEdit it, then run agentbrew sync again.');
|
|
402
482
|
return;
|
|
403
483
|
}
|
|
404
|
-
logger_1.Logger.info(`Syncing from: ${instructionsPath}\n`);
|
|
484
|
+
logger_1.Logger.info(`Syncing instructions from: ${instructionsPath}\n`);
|
|
405
485
|
const statusIcon = {
|
|
406
486
|
created: 'β
',
|
|
407
487
|
updated: 'β
',
|
|
@@ -427,11 +507,71 @@ exports.program
|
|
|
427
507
|
logger_1.Logger.info('\nManual steps required:');
|
|
428
508
|
manualNotes.forEach(n => logger_1.Logger.info(n));
|
|
429
509
|
}
|
|
510
|
+
// Sync skills to each agent
|
|
511
|
+
logger_1.Logger.info('\nSyncing skills...');
|
|
512
|
+
const packages = (0, registry_1.discoverPackages)();
|
|
513
|
+
const skills = (0, sync_1.extractSkillEntries)(packages);
|
|
514
|
+
const skillStatusIcon = {
|
|
515
|
+
linked: 'β
',
|
|
516
|
+
already_exists: 'βοΈ ',
|
|
517
|
+
skipped: 'β«',
|
|
518
|
+
error: 'β',
|
|
519
|
+
removed: 'ποΈ ',
|
|
520
|
+
};
|
|
521
|
+
function printSkillResults(label, results) {
|
|
522
|
+
if (results.length === 0) {
|
|
523
|
+
logger_1.Logger.info(` ${label}: not installed, skipped`);
|
|
524
|
+
return;
|
|
525
|
+
}
|
|
526
|
+
for (const r of results) {
|
|
527
|
+
const icon = skillStatusIcon[r.status] ?? ' ';
|
|
528
|
+
const detail = r.note ? ` (${r.note})` : '';
|
|
529
|
+
logger_1.Logger.info(`${icon} [${label}] ${r.entryName}${detail}`);
|
|
530
|
+
}
|
|
531
|
+
}
|
|
532
|
+
const claudeSkills = (0, sync_1.syncSkillsToClaudeCode)(skills);
|
|
533
|
+
const geminiSkills = (0, sync_1.syncSkillsToGeminiCLI)(skills);
|
|
534
|
+
const windsurfSkills = (0, sync_1.syncSkillsToWindsurf)(skills);
|
|
535
|
+
const antigravitySkills = (0, sync_1.syncSkillsToAntigravityCLI)(skills);
|
|
536
|
+
// Register agentbrew as an MCP server in Cursor β this exposes all skills as MCP tools.
|
|
537
|
+
// Only fall back to the markdown index if MCP registration failed or Cursor isn't installed.
|
|
538
|
+
const cursorMcpResults = (0, sync_1.syncMcpServerToCursor)();
|
|
539
|
+
const cursorMcpOk = cursorMcpResults.some(r => r.status === 'linked' || r.status === 'already_exists');
|
|
540
|
+
const cursorSkills = cursorMcpOk
|
|
541
|
+
? (0, sync_1.unsyncSkillsFromCursor)() // remove stale index β MCP tools supersede it
|
|
542
|
+
: (0, sync_1.syncSkillsToCursor)(skills); // fallback: markdown index for non-MCP discovery
|
|
543
|
+
// Register agentbrew as an MCP server in Codex CLI.
|
|
544
|
+
const codexMcpResults = (0, sync_1.syncMcpServerToCodex)();
|
|
545
|
+
// Register skills and MCP server in Kiro.
|
|
546
|
+
const kiroSkills = (0, sync_1.syncSkillsToKiro)(skills);
|
|
547
|
+
const kiroMcpResults = (0, sync_1.syncMcpServerToKiro)();
|
|
548
|
+
if (skills.length === 0) {
|
|
549
|
+
logger_1.Logger.info(' No skills found in installed packages.');
|
|
550
|
+
}
|
|
551
|
+
else {
|
|
552
|
+
printSkillResults('Claude Code', claudeSkills);
|
|
553
|
+
printSkillResults('Gemini CLI', geminiSkills);
|
|
554
|
+
printSkillResults('Windsurf', windsurfSkills);
|
|
555
|
+
printSkillResults('Antigravity CLI', antigravitySkills);
|
|
556
|
+
printSkillResults('Cursor MCP', cursorMcpResults);
|
|
557
|
+
if (!cursorMcpOk)
|
|
558
|
+
printSkillResults('Cursor (fallback index)', cursorSkills);
|
|
559
|
+
printSkillResults('Codex MCP', codexMcpResults);
|
|
560
|
+
printSkillResults('Kiro', kiroSkills);
|
|
561
|
+
printSkillResults('Kiro MCP', kiroMcpResults);
|
|
562
|
+
const totalLinked = [
|
|
563
|
+
...claudeSkills, ...geminiSkills, ...windsurfSkills, ...antigravitySkills,
|
|
564
|
+
...cursorMcpResults, ...codexMcpResults, ...kiroSkills, ...kiroMcpResults,
|
|
565
|
+
].filter(r => r.status === 'linked').length;
|
|
566
|
+
if (totalLinked > 0) {
|
|
567
|
+
logger_1.Logger.info(`\n Restart your agents to pick up ${totalLinked} new skill(s).`);
|
|
568
|
+
}
|
|
569
|
+
}
|
|
430
570
|
logger_1.Logger.info(`\nDone. ${synced} agent config(s) updated.`);
|
|
431
571
|
});
|
|
432
572
|
exports.program
|
|
433
573
|
.command('unsync')
|
|
434
|
-
.description('Remove the AgentBrew shared section from all agent config files')
|
|
574
|
+
.description('Remove the AgentBrew shared section from all agent config files and unlink skills')
|
|
435
575
|
.action(() => {
|
|
436
576
|
logger_1.Logger.info('Removing AgentBrew shared section from agent config files...\n');
|
|
437
577
|
const results = (0, sync_1.unsyncInstructions)();
|
|
@@ -440,6 +580,28 @@ exports.program
|
|
|
440
580
|
const detail = r.path ? ` (${r.path})` : r.note ? ` (${r.note})` : '';
|
|
441
581
|
logger_1.Logger.info(`${icon} ${r.agent.padEnd(18)} β ${r.status}${detail}`);
|
|
442
582
|
}
|
|
583
|
+
logger_1.Logger.info('\nRemoving skill links from agents...');
|
|
584
|
+
const allUnsyncResults = [
|
|
585
|
+
...(0, sync_1.unsyncSkillsFromClaudeCode)(),
|
|
586
|
+
...(0, sync_1.unsyncSkillsFromGeminiCLI)(),
|
|
587
|
+
...(0, sync_1.unsyncSkillsFromWindsurf)(),
|
|
588
|
+
...(0, sync_1.unsyncSkillsFromAntigravityCLI)(),
|
|
589
|
+
...(0, sync_1.unsyncSkillsFromCursor)(),
|
|
590
|
+
...(0, sync_1.unsyncMcpServerFromCursor)(),
|
|
591
|
+
...(0, sync_1.unsyncMcpServerFromCodex)(),
|
|
592
|
+
...(0, sync_1.unsyncSkillsFromKiro)(),
|
|
593
|
+
...(0, sync_1.unsyncMcpServerFromKiro)(),
|
|
594
|
+
];
|
|
595
|
+
if (allUnsyncResults.length === 0) {
|
|
596
|
+
logger_1.Logger.info(' No skill links to remove.');
|
|
597
|
+
}
|
|
598
|
+
else {
|
|
599
|
+
for (const r of allUnsyncResults) {
|
|
600
|
+
const icon = r.status === 'removed' ? 'ποΈ ' : 'β«';
|
|
601
|
+
const detail = r.note ? ` (${r.note})` : r.path ? ` (${r.path})` : '';
|
|
602
|
+
logger_1.Logger.info(`${icon} ${r.entryName}${detail}`);
|
|
603
|
+
}
|
|
604
|
+
}
|
|
443
605
|
logger_1.Logger.info('\nDone. Run agentbrew sync to re-inject.');
|
|
444
606
|
});
|
|
445
607
|
function runCLI() {
|
package/dist/cli.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
|