@pulsemcp/air-adapter-claude 0.0.41 → 0.1.0
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/dist/claude-adapter.d.ts +33 -22
- package/dist/claude-adapter.d.ts.map +1 -1
- package/dist/claude-adapter.js +152 -164
- package/dist/claude-adapter.js.map +1 -1
- package/package.json +2 -2
package/dist/claude-adapter.d.ts
CHANGED
|
@@ -17,9 +17,12 @@ export declare class ClaudeAdapter implements AgentAdapter {
|
|
|
17
17
|
* Writes .mcp.json, injects skills + references into .claude/skills/,
|
|
18
18
|
* injects path-based hooks into .claude/hooks/, and returns the start command.
|
|
19
19
|
*
|
|
20
|
-
*
|
|
21
|
-
*
|
|
22
|
-
*
|
|
20
|
+
* Inputs to activation lists (root defaults, overrides, plugin-declared
|
|
21
|
+
* primitives) are accepted as either qualified (`@scope/id`) or short form;
|
|
22
|
+
* ambiguous short forms are rejected. Filesystem materialization uses
|
|
23
|
+
* shortnames — Claude's `.mcp.json`, `.claude/skills/`, `.claude/hooks/`,
|
|
24
|
+
* and the manifest are scope-naive. Two activated qualified IDs that share
|
|
25
|
+
* a shortname hard-fail with a clear "add one to exclude" message.
|
|
23
26
|
*/
|
|
24
27
|
prepareSession(artifacts: ResolvedArtifacts, targetDir: string, options?: PrepareSessionOptions): Promise<PreparedSession>;
|
|
25
28
|
/**
|
|
@@ -31,7 +34,7 @@ export declare class ClaudeAdapter implements AgentAdapter {
|
|
|
31
34
|
listLocalArtifacts(targetDir: string): Promise<LocalArtifacts>;
|
|
32
35
|
/**
|
|
33
36
|
* Resolve subagent roots from the root's default_subagent_roots.
|
|
34
|
-
*
|
|
37
|
+
* IDs are already qualified after composition-time canonicalization.
|
|
35
38
|
*/
|
|
36
39
|
private resolveSubagentRoots;
|
|
37
40
|
/**
|
|
@@ -41,20 +44,37 @@ export declare class ClaudeAdapter implements AgentAdapter {
|
|
|
41
44
|
private mergeSubagentArtifacts;
|
|
42
45
|
/**
|
|
43
46
|
* Build a system prompt section describing the subagent root dependencies.
|
|
44
|
-
* Gives the agent context about what capabilities were merged and from where.
|
|
45
47
|
*/
|
|
46
48
|
private buildSubagentContext;
|
|
47
|
-
/**
|
|
48
|
-
|
|
49
|
+
/**
|
|
50
|
+
* Translate a shortname-keyed MCP server map into Claude's `.mcp.json` shape.
|
|
51
|
+
* Callers convert qualified IDs to shortnames before invoking this — Claude's
|
|
52
|
+
* config is scope-naive.
|
|
53
|
+
*/
|
|
54
|
+
translateMcpServersByShort(servers: Record<string, McpServerEntry>): Record<string, unknown>;
|
|
49
55
|
/** Translate AIR oauth config to Claude Code oauth format */
|
|
50
56
|
private translateOAuth;
|
|
51
|
-
/**
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
57
|
+
/**
|
|
58
|
+
* Translate an AIR plugin to Claude Code plugin format.
|
|
59
|
+
* `name` is the plugin's bare shortname — Claude's plugin namespace is
|
|
60
|
+
* scope-naive.
|
|
61
|
+
*/
|
|
62
|
+
translatePlugin(shortId: string, plugin: PluginEntry): Record<string, unknown>;
|
|
63
|
+
/**
|
|
64
|
+
* Resolve a list of activation IDs (each qualified or short) into qualified
|
|
65
|
+
* IDs paired with shortnames suitable for filesystem materialization.
|
|
66
|
+
*
|
|
67
|
+
* Throws on:
|
|
68
|
+
* - unknown IDs (after attempting both qualified and short-form lookup)
|
|
69
|
+
* - ambiguous short references (multiple scopes contribute the shortname)
|
|
70
|
+
* - shortname collisions in the activation set itself (two qualified IDs
|
|
71
|
+
* with the same shortname can't share a single .claude/skills/<dir>)
|
|
72
|
+
*/
|
|
73
|
+
private resolveActivations;
|
|
74
|
+
private formatPoolKeys;
|
|
56
75
|
/**
|
|
57
76
|
* Copy referenced documents into a references/ subdirectory of the target.
|
|
77
|
+
* `refIds` are qualified IDs (post-canonicalization).
|
|
58
78
|
*/
|
|
59
79
|
private copyReferences;
|
|
60
80
|
/**
|
|
@@ -64,18 +84,9 @@ export declare class ClaudeAdapter implements AgentAdapter {
|
|
|
64
84
|
* `_airHookId` marker on each entry) whose ID is in `managedHookIds`,
|
|
65
85
|
* leaving user-authored entries untouched. Then registers the hooks in
|
|
66
86
|
* `newHookPaths` for each mapped event, tagging each new entry with its
|
|
67
|
-
*
|
|
68
|
-
*
|
|
69
|
-
* Returns the settings path if it was touched (written or an existing file
|
|
70
|
-
* pruned), otherwise `null` — callers include the path in configFiles only
|
|
71
|
-
* when relevant.
|
|
87
|
+
* shortname so future runs can identify it.
|
|
72
88
|
*/
|
|
73
89
|
private reconcileSettingsHooks;
|
|
74
|
-
/**
|
|
75
|
-
* Check whether a settings hook entry was written by AIR — i.e., carries
|
|
76
|
-
* an `_airHookId` marker whose value is in the managed set. User-authored
|
|
77
|
-
* entries (no marker, or a marker AIR doesn't know about) are left alone.
|
|
78
|
-
*/
|
|
79
90
|
private isManagedHookEntry;
|
|
80
91
|
/**
|
|
81
92
|
* Merge translated MCP server config with an existing `.mcp.json`,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"claude-adapter.d.ts","sourceRoot":"","sources":["../src/claude-adapter.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EACV,YAAY,EACZ,kBAAkB,EAClB,YAAY,EACZ,iBAAiB,EACjB,SAAS,EACT,cAAc,EAEd,WAAW,EACX,qBAAqB,EACrB,eAAe,EACf,cAAc,
|
|
1
|
+
{"version":3,"file":"claude-adapter.d.ts","sourceRoot":"","sources":["../src/claude-adapter.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EACV,YAAY,EACZ,kBAAkB,EAClB,YAAY,EACZ,iBAAiB,EACjB,SAAS,EACT,cAAc,EAEd,WAAW,EACX,qBAAqB,EACrB,eAAe,EACf,cAAc,EAEf,MAAM,oBAAoB,CAAC;AAoB5B,qBAAa,aAAc,YAAW,YAAY;IAChD,IAAI,SAAY;IAChB,WAAW,SAAiB;IAE5B;;;;;OAKG;IACH,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,mBAAmB,CAMzC;IAEI,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC;IASrC,cAAc,CACZ,SAAS,EAAE,iBAAiB,EAC5B,IAAI,CAAC,EAAE,SAAS,EAChB,QAAQ,CAAC,EAAE,MAAM,GAChB,kBAAkB;IAmDrB,iBAAiB,CAAC,MAAM,EAAE,kBAAkB,GAAG,YAAY;IAW3D;;;;;;;;;;;OAWG;IACG,cAAc,CAClB,SAAS,EAAE,iBAAiB,EAC5B,SAAS,EAAE,MAAM,EACjB,OAAO,CAAC,EAAE,qBAAqB,GAC9B,OAAO,CAAC,eAAe,CAAC;IAmL3B;;;;;OAKG;IACG,kBAAkB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC;IAIpE;;;OAGG;IACH,OAAO,CAAC,oBAAoB;IAkB5B;;;OAGG;IACH,OAAO,CAAC,sBAAsB;IAwB9B;;OAEG;IACH,OAAO,CAAC,oBAAoB;IA4B5B;;;;OAIG;IACH,0BAA0B,CACxB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,GACtC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAwB1B,6DAA6D;IAC7D,OAAO,CAAC,cAAc;IA2BtB;;;;OAIG;IACH,eAAe,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAQ9E;;;;;;;;;OASG;IACH,OAAO,CAAC,kBAAkB;IAgD1B,OAAO,CAAC,cAAc;IAStB;;;OAGG;IACH,OAAO,CAAC,cAAc;IAqBtB;;;;;;;;OAQG;IACH,OAAO,CAAC,sBAAsB;IAoG9B,OAAO,CAAC,kBAAkB;IAO1B;;;;;;OAMG;IACH,OAAO,CAAC,cAAc;IAkCtB;;;;;OAKG;IACH,OAAO,CAAC,gBAAgB;IAcxB,OAAO,CAAC,gBAAgB;CAYzB"}
|
package/dist/claude-adapter.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { execSync } from "child_process";
|
|
2
2
|
import { existsSync, mkdirSync, writeFileSync, readFileSync, readdirSync, copyFileSync, rmSync, statSync, } from "fs";
|
|
3
3
|
import { join, dirname, relative } from "path";
|
|
4
|
-
import { buildManifest, diffManifest, loadManifest, writeManifest, } from "@pulsemcp/air-core";
|
|
4
|
+
import { buildManifest, diffManifest, loadManifest, writeManifest, parseQualifiedId, resolveReference, } from "@pulsemcp/air-core";
|
|
5
5
|
import { scanLocalSkills } from "./scan-local-skills.js";
|
|
6
6
|
export class ClaudeAdapter {
|
|
7
7
|
name = "claude";
|
|
@@ -29,33 +29,35 @@ export class ClaudeAdapter {
|
|
|
29
29
|
}
|
|
30
30
|
}
|
|
31
31
|
generateConfig(artifacts, root, _workDir) {
|
|
32
|
-
const
|
|
33
|
-
? this.
|
|
34
|
-
:
|
|
35
|
-
|
|
36
|
-
const
|
|
37
|
-
|
|
32
|
+
const pluginActivations = root?.default_plugins
|
|
33
|
+
? this.resolveActivations(artifacts.plugins, root.default_plugins, "plugin")
|
|
34
|
+
: [];
|
|
35
|
+
const plugins = {};
|
|
36
|
+
for (const a of pluginActivations)
|
|
37
|
+
plugins[a.qualified] = artifacts.plugins[a.qualified];
|
|
38
|
+
// Merge plugin-declared MCP servers and skills into root defaults (additive).
|
|
39
|
+
// All incoming IDs are qualified (post-canonicalization at composition time),
|
|
40
|
+
// so we deduplicate on qualified IDs.
|
|
41
|
+
const mcpQualSet = new Set(root?.default_mcp_servers ?? []);
|
|
42
|
+
const skillQualSet = new Set(root?.default_skills ?? []);
|
|
38
43
|
for (const plugin of Object.values(plugins)) {
|
|
39
44
|
if (plugin.mcp_servers) {
|
|
40
45
|
for (const id of plugin.mcp_servers)
|
|
41
|
-
|
|
46
|
+
mcpQualSet.add(id);
|
|
42
47
|
}
|
|
43
48
|
if (plugin.skills) {
|
|
44
49
|
for (const id of plugin.skills)
|
|
45
|
-
|
|
50
|
+
skillQualSet.add(id);
|
|
46
51
|
}
|
|
47
52
|
}
|
|
48
|
-
const
|
|
49
|
-
const
|
|
50
|
-
const mcpServers =
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
const mcpConfig = this.
|
|
54
|
-
const pluginConfigs =
|
|
55
|
-
|
|
56
|
-
this.validateIds(artifacts.skills, skillIds, "skill");
|
|
57
|
-
}
|
|
58
|
-
const skillPaths = skillIds.map((id) => artifacts.skills[id].path);
|
|
53
|
+
const mcpActivations = this.resolveActivations(artifacts.mcp, [...mcpQualSet], "MCP server");
|
|
54
|
+
const skillActivations = this.resolveActivations(artifacts.skills, [...skillQualSet], "skill");
|
|
55
|
+
const mcpServers = {};
|
|
56
|
+
for (const a of mcpActivations)
|
|
57
|
+
mcpServers[a.short] = artifacts.mcp[a.qualified];
|
|
58
|
+
const mcpConfig = this.translateMcpServersByShort(mcpServers);
|
|
59
|
+
const pluginConfigs = pluginActivations.map((a) => this.translatePlugin(a.short, artifacts.plugins[a.qualified]));
|
|
60
|
+
const skillPaths = skillActivations.map((a) => artifacts.skills[a.qualified].path);
|
|
59
61
|
return {
|
|
60
62
|
agent: "claude",
|
|
61
63
|
mcpConfig,
|
|
@@ -78,35 +80,24 @@ export class ClaudeAdapter {
|
|
|
78
80
|
* Writes .mcp.json, injects skills + references into .claude/skills/,
|
|
79
81
|
* injects path-based hooks into .claude/hooks/, and returns the start command.
|
|
80
82
|
*
|
|
81
|
-
*
|
|
82
|
-
*
|
|
83
|
-
*
|
|
83
|
+
* Inputs to activation lists (root defaults, overrides, plugin-declared
|
|
84
|
+
* primitives) are accepted as either qualified (`@scope/id`) or short form;
|
|
85
|
+
* ambiguous short forms are rejected. Filesystem materialization uses
|
|
86
|
+
* shortnames — Claude's `.mcp.json`, `.claude/skills/`, `.claude/hooks/`,
|
|
87
|
+
* and the manifest are scope-naive. Two activated qualified IDs that share
|
|
88
|
+
* a shortname hard-fail with a clear "add one to exclude" message.
|
|
84
89
|
*/
|
|
85
90
|
async prepareSession(artifacts, targetDir, options) {
|
|
86
91
|
const root = options?.root;
|
|
87
92
|
const configFiles = [];
|
|
88
93
|
const skillPaths = [];
|
|
89
94
|
const hookPaths = [];
|
|
90
|
-
// Load the manifest that records which artifacts this adapter wrote on
|
|
91
|
-
// the previous run. IDs present here but not in the new selection are
|
|
92
|
-
// stale and get cleaned up before we write. Missing or corrupt manifests
|
|
93
|
-
// yield null — that's treated as "no prior state" so the current run is
|
|
94
|
-
// purely additive.
|
|
95
95
|
const prevManifest = loadManifest(targetDir);
|
|
96
96
|
// 1. Resolve which artifacts to activate (overrides take precedence over root defaults)
|
|
97
|
-
let mcpServerIds = options?.mcpServerOverrides
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
let skillIds = options?.skillOverrides
|
|
101
|
-
?? root?.default_skills
|
|
102
|
-
?? [];
|
|
103
|
-
let hookIds = options?.hookOverrides
|
|
104
|
-
?? root?.default_hooks
|
|
105
|
-
?? [];
|
|
97
|
+
let mcpServerIds = options?.mcpServerOverrides ?? root?.default_mcp_servers ?? undefined;
|
|
98
|
+
let skillIds = options?.skillOverrides ?? root?.default_skills ?? [];
|
|
99
|
+
let hookIds = options?.hookOverrides ?? root?.default_hooks ?? [];
|
|
106
100
|
// 1b. Merge subagent roots' artifacts if applicable.
|
|
107
|
-
// Skip merge per-artifact type when explicit overrides are provided —
|
|
108
|
-
// overrides represent the caller's final selection (e.g. from the TUI)
|
|
109
|
-
// and should not be augmented by implicit merge.
|
|
110
101
|
const subagentRoots = this.resolveSubagentRoots(root, artifacts, options);
|
|
111
102
|
if (subagentRoots.length > 0) {
|
|
112
103
|
const merged = this.mergeSubagentArtifacts(subagentRoots, mcpServerIds, skillIds);
|
|
@@ -118,46 +109,47 @@ export class ClaudeAdapter {
|
|
|
118
109
|
}
|
|
119
110
|
}
|
|
120
111
|
// 1c. Resolve plugins and merge their declared artifacts (additive)
|
|
121
|
-
const pluginIds = options?.pluginOverrides
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
112
|
+
const pluginIds = options?.pluginOverrides ?? root?.default_plugins ?? undefined;
|
|
113
|
+
const pluginActivations = pluginIds?.length
|
|
114
|
+
? this.resolveActivations(artifacts.plugins, pluginIds, "plugin")
|
|
115
|
+
: [];
|
|
116
|
+
const plugins = {};
|
|
117
|
+
for (const a of pluginActivations)
|
|
118
|
+
plugins[a.qualified] = artifacts.plugins[a.qualified];
|
|
127
119
|
const mcpSet = new Set(mcpServerIds ?? []);
|
|
128
120
|
const skillSet = new Set(skillIds);
|
|
129
121
|
const hookSet = new Set(hookIds);
|
|
130
122
|
for (const plugin of Object.values(plugins)) {
|
|
131
|
-
if (plugin.mcp_servers)
|
|
123
|
+
if (plugin.mcp_servers)
|
|
132
124
|
for (const id of plugin.mcp_servers)
|
|
133
125
|
mcpSet.add(id);
|
|
134
|
-
|
|
135
|
-
if (plugin.skills) {
|
|
126
|
+
if (plugin.skills)
|
|
136
127
|
for (const id of plugin.skills)
|
|
137
128
|
skillSet.add(id);
|
|
138
|
-
|
|
139
|
-
if (plugin.hooks) {
|
|
129
|
+
if (plugin.hooks)
|
|
140
130
|
for (const id of plugin.hooks)
|
|
141
131
|
hookSet.add(id);
|
|
142
|
-
}
|
|
143
132
|
}
|
|
144
133
|
if (mcpSet.size > 0 || mcpServerIds !== undefined)
|
|
145
134
|
mcpServerIds = [...mcpSet];
|
|
146
135
|
skillIds = [...skillSet];
|
|
147
136
|
hookIds = [...hookSet];
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
const
|
|
137
|
+
// 2. Resolve activations: qualified ID + shortname per artifact.
|
|
138
|
+
// Throws on unknown IDs, ambiguous shortnames, and shortname collisions.
|
|
139
|
+
const skillActs = this.resolveActivations(artifacts.skills, skillIds, "skill");
|
|
140
|
+
const mcpActs = mcpServerIds
|
|
141
|
+
? this.resolveActivations(artifacts.mcp, mcpServerIds, "MCP server")
|
|
142
|
+
: [];
|
|
143
|
+
const hookActs = this.resolveActivations(artifacts.hooks, hookIds, "hook");
|
|
144
|
+
const skillShortIds = skillActs.map((a) => a.short);
|
|
145
|
+
const hookShortIds = hookActs.map((a) => a.short);
|
|
146
|
+
const mcpShortIds = mcpActs.map((a) => a.short);
|
|
147
|
+
// 3. Reconcile against prior manifest using shortnames — those are the keys
|
|
148
|
+
// used for filesystem materialization and stored in the manifest.
|
|
157
149
|
const diff = diffManifest(prevManifest, {
|
|
158
|
-
skills:
|
|
159
|
-
hooks:
|
|
160
|
-
mcpServers:
|
|
150
|
+
skills: skillShortIds,
|
|
151
|
+
hooks: hookShortIds,
|
|
152
|
+
mcpServers: mcpShortIds,
|
|
161
153
|
});
|
|
162
154
|
for (const staleSkillId of diff.staleSkills) {
|
|
163
155
|
const staleDir = join(targetDir, ".claude", "skills", staleSkillId);
|
|
@@ -171,98 +163,72 @@ export class ClaudeAdapter {
|
|
|
171
163
|
rmSync(staleDir, { recursive: true, force: true });
|
|
172
164
|
}
|
|
173
165
|
}
|
|
174
|
-
//
|
|
175
|
-
// Preserve any mcpServers keys not managed by AIR (user-authored),
|
|
176
|
-
// remove keys for stale IDs, and replace keys for the current selection.
|
|
166
|
+
// 4. Write .mcp.json (${VAR} patterns are left as-is for transforms to resolve).
|
|
177
167
|
const mcpConfigPath = join(targetDir, ".mcp.json");
|
|
178
|
-
const
|
|
168
|
+
const translatedServers = {};
|
|
169
|
+
for (const a of mcpActs)
|
|
170
|
+
translatedServers[a.short] = artifacts.mcp[a.qualified];
|
|
171
|
+
const mcpConfig = this.mergeMcpConfig(mcpConfigPath, this.translateMcpServersByShort(translatedServers), diff.staleMcpServers);
|
|
179
172
|
writeFileSync(mcpConfigPath, JSON.stringify(mcpConfig, null, 2) + "\n");
|
|
180
173
|
configFiles.push(mcpConfigPath);
|
|
181
|
-
//
|
|
182
|
-
for (const
|
|
183
|
-
const skill = artifacts.skills[
|
|
184
|
-
const skillTargetDir = join(targetDir, ".claude", "skills",
|
|
185
|
-
// Skip if skill already exists locally (local takes priority)
|
|
174
|
+
// 5. Inject skills + references into .claude/skills/<short>/
|
|
175
|
+
for (const a of skillActs) {
|
|
176
|
+
const skill = artifacts.skills[a.qualified];
|
|
177
|
+
const skillTargetDir = join(targetDir, ".claude", "skills", a.short);
|
|
186
178
|
if (existsSync(skillTargetDir))
|
|
187
179
|
continue;
|
|
188
|
-
// Copy skill directory contents (paths are absolute from resolveArtifacts)
|
|
189
180
|
const skillSourceDir = skill.path;
|
|
190
181
|
if (existsSync(skillSourceDir)) {
|
|
191
182
|
this.copyDirRecursive(skillSourceDir, skillTargetDir);
|
|
192
183
|
skillPaths.push(skillTargetDir);
|
|
193
184
|
}
|
|
194
|
-
// Copy referenced documents
|
|
195
185
|
if (skill.references && skill.references.length > 0) {
|
|
196
186
|
this.copyReferences(skill.references, skillTargetDir, artifacts);
|
|
197
187
|
}
|
|
198
188
|
}
|
|
199
|
-
//
|
|
200
|
-
// A hook is "AIR-registered" iff AIR wrote (or previously wrote) its
|
|
201
|
-
// directory — i.e. the dir didn't pre-exist as user content before any
|
|
202
|
-
// AIR run touched it. `hookPaths` collects dirs to register in
|
|
203
|
-
// settings.json (includes both freshly-written dirs and ones carried
|
|
204
|
-
// over from the prior manifest run).
|
|
205
|
-
if (hookIds.length > 0) {
|
|
206
|
-
this.validateIds(artifacts.hooks, hookIds, "hook");
|
|
207
|
-
}
|
|
189
|
+
// 6. Validate and inject path-based hooks into .claude/hooks/<short>/.
|
|
208
190
|
const prevHookIds = new Set(prevManifest?.hooks ?? []);
|
|
209
|
-
const
|
|
210
|
-
for (const
|
|
211
|
-
const hook = artifacts.hooks[
|
|
212
|
-
const hookTargetDir = join(targetDir, ".claude", "hooks",
|
|
191
|
+
const registeredHookShortIds = [];
|
|
192
|
+
for (const a of hookActs) {
|
|
193
|
+
const hook = artifacts.hooks[a.qualified];
|
|
194
|
+
const hookTargetDir = join(targetDir, ".claude", "hooks", a.short);
|
|
213
195
|
const alreadyExists = existsSync(hookTargetDir);
|
|
214
|
-
|
|
215
|
-
// is user-authored — preserve it and skip both copy and registration.
|
|
216
|
-
if (alreadyExists && !prevHookIds.has(hookId)) {
|
|
196
|
+
if (alreadyExists && !prevHookIds.has(a.short)) {
|
|
217
197
|
continue;
|
|
218
198
|
}
|
|
219
|
-
// AIR-owned dir: copy (fresh) or re-register (carried over). We always
|
|
220
|
-
// want it registered in settings.json on this run.
|
|
221
199
|
if (!alreadyExists) {
|
|
222
200
|
const hookSourceDir = hook.path;
|
|
223
|
-
if (!existsSync(hookSourceDir))
|
|
224
|
-
// Source is gone — don't register the hook or track it in the
|
|
225
|
-
// manifest. Otherwise the ID gets recorded as "AIR-owned" with
|
|
226
|
-
// nothing backing it, and a later user-created dir at the same
|
|
227
|
-
// path would be mis-identified as stale on the next run.
|
|
201
|
+
if (!existsSync(hookSourceDir))
|
|
228
202
|
continue;
|
|
229
|
-
}
|
|
230
203
|
this.copyDirRecursive(hookSourceDir, hookTargetDir);
|
|
231
204
|
if (hook.references && hook.references.length > 0) {
|
|
232
205
|
this.copyReferences(hook.references, hookTargetDir, artifacts);
|
|
233
206
|
}
|
|
234
207
|
}
|
|
235
208
|
hookPaths.push(hookTargetDir);
|
|
236
|
-
|
|
209
|
+
registeredHookShortIds.push(a.short);
|
|
237
210
|
}
|
|
238
|
-
//
|
|
239
|
-
// Always prune settings entries that AIR previously wrote (stale +
|
|
240
|
-
// current) so that re-runs don't accumulate duplicates and stale
|
|
241
|
-
// entries are cleaned up even when no current hooks are active.
|
|
211
|
+
// 7. Register AIR-owned hooks in .claude/settings.json.
|
|
242
212
|
const managedHookIds = new Set([
|
|
243
213
|
...diff.staleHooks,
|
|
244
|
-
...
|
|
214
|
+
...registeredHookShortIds,
|
|
245
215
|
]);
|
|
246
216
|
const settingsPath = this.reconcileSettingsHooks(targetDir, hookPaths, managedHookIds);
|
|
247
217
|
if (settingsPath) {
|
|
248
218
|
configFiles.push(settingsPath);
|
|
249
219
|
}
|
|
250
|
-
//
|
|
251
|
-
// Only IDs that AIR actually wrote/touched go into the manifest.
|
|
220
|
+
// 8. Persist the updated manifest (shortnames — keyed by filesystem dir).
|
|
252
221
|
writeManifest(buildManifest(targetDir, {
|
|
253
|
-
skills:
|
|
254
|
-
hooks:
|
|
255
|
-
mcpServers:
|
|
222
|
+
skills: skillShortIds,
|
|
223
|
+
hooks: registeredHookShortIds,
|
|
224
|
+
mcpServers: mcpShortIds,
|
|
256
225
|
}));
|
|
257
|
-
//
|
|
226
|
+
// 9. Generate ephemeral subagent context for system prompt
|
|
258
227
|
let subagentContext;
|
|
259
228
|
if (subagentRoots.length > 0) {
|
|
260
229
|
subagentContext = this.buildSubagentContext(subagentRoots);
|
|
261
230
|
}
|
|
262
|
-
//
|
|
263
|
-
// Pass undefined as root — prepareSession already handled all filtering/validation above.
|
|
264
|
-
// Passing root here would cause generateConfig to re-validate with the original (pre-merge)
|
|
265
|
-
// root defaults, which is both redundant and fragile.
|
|
231
|
+
// 10. Build start command
|
|
266
232
|
const config = this.generateConfig(artifacts, undefined, targetDir);
|
|
267
233
|
const startCommand = this.buildStartCommand({
|
|
268
234
|
...config,
|
|
@@ -284,7 +250,7 @@ export class ClaudeAdapter {
|
|
|
284
250
|
}
|
|
285
251
|
/**
|
|
286
252
|
* Resolve subagent roots from the root's default_subagent_roots.
|
|
287
|
-
*
|
|
253
|
+
* IDs are already qualified after composition-time canonicalization.
|
|
288
254
|
*/
|
|
289
255
|
resolveSubagentRoots(root, artifacts, options) {
|
|
290
256
|
if (options?.skipSubagentMerge)
|
|
@@ -293,9 +259,9 @@ export class ClaudeAdapter {
|
|
|
293
259
|
return [];
|
|
294
260
|
const resolved = [];
|
|
295
261
|
for (const id of root.default_subagent_roots) {
|
|
296
|
-
const
|
|
297
|
-
if (
|
|
298
|
-
resolved.push(
|
|
262
|
+
const res = resolveReference(artifacts.roots, id, undefined);
|
|
263
|
+
if (res.status === "ok") {
|
|
264
|
+
resolved.push(artifacts.roots[res.qualified]);
|
|
299
265
|
}
|
|
300
266
|
}
|
|
301
267
|
return resolved;
|
|
@@ -318,15 +284,12 @@ export class ClaudeAdapter {
|
|
|
318
284
|
}
|
|
319
285
|
}
|
|
320
286
|
return {
|
|
321
|
-
mcpServerIds: parentMcpServerIds !== undefined || mcpSet.size > 0
|
|
322
|
-
? [...mcpSet]
|
|
323
|
-
: undefined,
|
|
287
|
+
mcpServerIds: parentMcpServerIds !== undefined || mcpSet.size > 0 ? [...mcpSet] : undefined,
|
|
324
288
|
skillIds: [...skillSet],
|
|
325
289
|
};
|
|
326
290
|
}
|
|
327
291
|
/**
|
|
328
292
|
* Build a system prompt section describing the subagent root dependencies.
|
|
329
|
-
* Gives the agent context about what capabilities were merged and from where.
|
|
330
293
|
*/
|
|
331
294
|
buildSubagentContext(subagentRoots) {
|
|
332
295
|
const lines = [
|
|
@@ -353,8 +316,12 @@ export class ClaudeAdapter {
|
|
|
353
316
|
}
|
|
354
317
|
return lines.join("\n");
|
|
355
318
|
}
|
|
356
|
-
/**
|
|
357
|
-
|
|
319
|
+
/**
|
|
320
|
+
* Translate a shortname-keyed MCP server map into Claude's `.mcp.json` shape.
|
|
321
|
+
* Callers convert qualified IDs to shortnames before invoking this — Claude's
|
|
322
|
+
* config is scope-naive.
|
|
323
|
+
*/
|
|
324
|
+
translateMcpServersByShort(servers) {
|
|
358
325
|
const mcpServers = {};
|
|
359
326
|
for (const [name, server] of Object.entries(servers)) {
|
|
360
327
|
if (server.type === "stdio") {
|
|
@@ -365,7 +332,6 @@ export class ClaudeAdapter {
|
|
|
365
332
|
};
|
|
366
333
|
}
|
|
367
334
|
else {
|
|
368
|
-
// Claude Code uses "http" for the streamable-http transport
|
|
369
335
|
const claudeType = server.type === "streamable-http" ? "http" : server.type;
|
|
370
336
|
mcpServers[name] = {
|
|
371
337
|
type: claudeType,
|
|
@@ -405,33 +371,74 @@ export class ClaudeAdapter {
|
|
|
405
371
|
}
|
|
406
372
|
return result;
|
|
407
373
|
}
|
|
408
|
-
/**
|
|
409
|
-
|
|
374
|
+
/**
|
|
375
|
+
* Translate an AIR plugin to Claude Code plugin format.
|
|
376
|
+
* `name` is the plugin's bare shortname — Claude's plugin namespace is
|
|
377
|
+
* scope-naive.
|
|
378
|
+
*/
|
|
379
|
+
translatePlugin(shortId, plugin) {
|
|
410
380
|
return {
|
|
411
|
-
name:
|
|
381
|
+
name: shortId,
|
|
412
382
|
description: plugin.description,
|
|
413
383
|
...(plugin.version && { version: plugin.version }),
|
|
414
384
|
};
|
|
415
385
|
}
|
|
416
|
-
/**
|
|
417
|
-
|
|
418
|
-
|
|
419
|
-
|
|
420
|
-
|
|
421
|
-
|
|
422
|
-
|
|
423
|
-
|
|
424
|
-
|
|
425
|
-
|
|
426
|
-
|
|
427
|
-
const
|
|
386
|
+
/**
|
|
387
|
+
* Resolve a list of activation IDs (each qualified or short) into qualified
|
|
388
|
+
* IDs paired with shortnames suitable for filesystem materialization.
|
|
389
|
+
*
|
|
390
|
+
* Throws on:
|
|
391
|
+
* - unknown IDs (after attempting both qualified and short-form lookup)
|
|
392
|
+
* - ambiguous short references (multiple scopes contribute the shortname)
|
|
393
|
+
* - shortname collisions in the activation set itself (two qualified IDs
|
|
394
|
+
* with the same shortname can't share a single .claude/skills/<dir>)
|
|
395
|
+
*/
|
|
396
|
+
resolveActivations(pool, ids, artifactType) {
|
|
397
|
+
const acts = [];
|
|
398
|
+
const errors = [];
|
|
399
|
+
const shortToQualified = new Map();
|
|
428
400
|
for (const id of ids) {
|
|
429
|
-
|
|
401
|
+
const res = resolveReference(pool, id, undefined);
|
|
402
|
+
if (res.status === "missing") {
|
|
403
|
+
errors.push(`Unknown ${artifactType} ID "${id}". Available: ${this.formatPoolKeys(pool)}.`);
|
|
404
|
+
continue;
|
|
405
|
+
}
|
|
406
|
+
if (res.status === "ambiguous") {
|
|
407
|
+
errors.push(`${artifactType} reference "${id}" is ambiguous — candidates: ` +
|
|
408
|
+
`${res.candidates.join(", ")}. Use the qualified form to disambiguate.`);
|
|
409
|
+
continue;
|
|
410
|
+
}
|
|
411
|
+
const qualified = res.qualified;
|
|
412
|
+
const { id: short } = parseQualifiedId(qualified);
|
|
413
|
+
const prior = shortToQualified.get(short);
|
|
414
|
+
if (prior !== undefined && prior !== qualified) {
|
|
415
|
+
errors.push(`${artifactType} shortname collision: both "${prior}" and "${qualified}" ` +
|
|
416
|
+
`are activated and would write to the same target name "${short}". ` +
|
|
417
|
+
`Add one to air.json#exclude or activate only one of them.`);
|
|
418
|
+
continue;
|
|
419
|
+
}
|
|
420
|
+
if (prior === qualified)
|
|
421
|
+
continue; // dedup
|
|
422
|
+
shortToQualified.set(short, qualified);
|
|
423
|
+
acts.push({ qualified, short });
|
|
424
|
+
}
|
|
425
|
+
if (errors.length > 0) {
|
|
426
|
+
throw new Error(errors.length === 1 ? errors[0] : `Activation errors:\n - ${errors.join("\n - ")}`);
|
|
430
427
|
}
|
|
431
|
-
return
|
|
428
|
+
return acts;
|
|
429
|
+
}
|
|
430
|
+
formatPoolKeys(pool) {
|
|
431
|
+
const keys = Object.keys(pool);
|
|
432
|
+
if (keys.length === 0)
|
|
433
|
+
return "(none)";
|
|
434
|
+
if (keys.length > 8) {
|
|
435
|
+
return `${keys.slice(0, 8).join(", ")}, … (${keys.length} total)`;
|
|
436
|
+
}
|
|
437
|
+
return keys.join(", ");
|
|
432
438
|
}
|
|
433
439
|
/**
|
|
434
440
|
* Copy referenced documents into a references/ subdirectory of the target.
|
|
441
|
+
* `refIds` are qualified IDs (post-canonicalization).
|
|
435
442
|
*/
|
|
436
443
|
copyReferences(refIds, targetDir, artifacts) {
|
|
437
444
|
const refsTargetDir = join(targetDir, "references");
|
|
@@ -454,16 +461,11 @@ export class ClaudeAdapter {
|
|
|
454
461
|
* `_airHookId` marker on each entry) whose ID is in `managedHookIds`,
|
|
455
462
|
* leaving user-authored entries untouched. Then registers the hooks in
|
|
456
463
|
* `newHookPaths` for each mapped event, tagging each new entry with its
|
|
457
|
-
*
|
|
458
|
-
*
|
|
459
|
-
* Returns the settings path if it was touched (written or an existing file
|
|
460
|
-
* pruned), otherwise `null` — callers include the path in configFiles only
|
|
461
|
-
* when relevant.
|
|
464
|
+
* shortname so future runs can identify it.
|
|
462
465
|
*/
|
|
463
466
|
reconcileSettingsHooks(targetDir, newHookPaths, managedHookIds) {
|
|
464
467
|
const settingsPath = join(targetDir, ".claude", "settings.json");
|
|
465
468
|
const settingsExists = existsSync(settingsPath);
|
|
466
|
-
// No settings file and nothing to write — nothing to do.
|
|
467
469
|
if (!settingsExists && newHookPaths.length === 0) {
|
|
468
470
|
return null;
|
|
469
471
|
}
|
|
@@ -473,9 +475,6 @@ export class ClaudeAdapter {
|
|
|
473
475
|
settings = JSON.parse(readFileSync(settingsPath, "utf-8"));
|
|
474
476
|
}
|
|
475
477
|
catch {
|
|
476
|
-
// Treat an unparseable settings.json as empty — same contract as
|
|
477
|
-
// the manifest's corrupt-file fallback. The adapter never silently
|
|
478
|
-
// mangles user state; it just rewrites with the new selection.
|
|
479
478
|
settings = {};
|
|
480
479
|
}
|
|
481
480
|
}
|
|
@@ -513,14 +512,13 @@ export class ClaudeAdapter {
|
|
|
513
512
|
hookJson = JSON.parse(readFileSync(hookJsonPath, "utf-8"));
|
|
514
513
|
}
|
|
515
514
|
catch {
|
|
516
|
-
continue;
|
|
515
|
+
continue;
|
|
517
516
|
}
|
|
518
517
|
const claudeEvent = ClaudeAdapter.AIR_TO_CLAUDE_EVENT[hookJson.event];
|
|
519
518
|
if (!claudeEvent || !hookJson.command)
|
|
520
519
|
continue;
|
|
521
520
|
const hookRelDir = relative(targetDir, hookPath);
|
|
522
521
|
const command = this.buildHookCommand(hookRelDir, hookJson.command, hookJson.args);
|
|
523
|
-
// hookPath is .claude/hooks/<id>/, so the last path segment is the id.
|
|
524
522
|
const hookId = hookPath.split(/[\\/]/).filter(Boolean).pop() || "";
|
|
525
523
|
const hookEntry = {
|
|
526
524
|
type: "command",
|
|
@@ -539,10 +537,6 @@ export class ClaudeAdapter {
|
|
|
539
537
|
}
|
|
540
538
|
hooks[claudeEvent].push(matcherGroup);
|
|
541
539
|
}
|
|
542
|
-
// When the adapter was asked to register new hooks, keep `settings.hooks`
|
|
543
|
-
// present (even if all registrations were skipped — unknown events,
|
|
544
|
-
// malformed HOOK.json, etc.) so downstream consumers see a stable shape.
|
|
545
|
-
// When we're only pruning stale entries, drop an empty hooks object.
|
|
546
540
|
if (newHookPaths.length > 0 || Object.keys(hooks).length > 0) {
|
|
547
541
|
settings.hooks = hooks;
|
|
548
542
|
}
|
|
@@ -553,11 +547,6 @@ export class ClaudeAdapter {
|
|
|
553
547
|
writeFileSync(settingsPath, JSON.stringify(settings, null, 2) + "\n");
|
|
554
548
|
return settingsPath;
|
|
555
549
|
}
|
|
556
|
-
/**
|
|
557
|
-
* Check whether a settings hook entry was written by AIR — i.e., carries
|
|
558
|
-
* an `_airHookId` marker whose value is in the managed set. User-authored
|
|
559
|
-
* entries (no marker, or a marker AIR doesn't know about) are left alone.
|
|
560
|
-
*/
|
|
561
550
|
isManagedHookEntry(entry, managedHookIds) {
|
|
562
551
|
if (!entry || typeof entry !== "object")
|
|
563
552
|
return false;
|
|
@@ -581,7 +570,6 @@ export class ClaudeAdapter {
|
|
|
581
570
|
existing = JSON.parse(readFileSync(mcpConfigPath, "utf-8"));
|
|
582
571
|
}
|
|
583
572
|
catch {
|
|
584
|
-
// Unparseable existing file — start fresh rather than mangle it.
|
|
585
573
|
existing = {};
|
|
586
574
|
}
|
|
587
575
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"claude-adapter.js","sourceRoot":"","sources":["../src/claude-adapter.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"claude-adapter.js","sourceRoot":"","sources":["../src/claude-adapter.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@pulsemcp/air-adapter-claude",
|
|
3
|
-
"version": "0.0
|
|
3
|
+
"version": "0.1.0",
|
|
4
4
|
"publishConfig": {
|
|
5
5
|
"access": "public"
|
|
6
6
|
},
|
|
@@ -29,7 +29,7 @@
|
|
|
29
29
|
"lint": "tsc --noEmit"
|
|
30
30
|
},
|
|
31
31
|
"dependencies": {
|
|
32
|
-
"@pulsemcp/air-core": "0.0
|
|
32
|
+
"@pulsemcp/air-core": "0.1.0"
|
|
33
33
|
},
|
|
34
34
|
"devDependencies": {
|
|
35
35
|
"@types/node": "^22.10.0",
|