@sentry/warden 0.6.0 → 0.7.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.
Files changed (87) hide show
  1. package/README.md +1 -1
  2. package/dist/cli/commands/add.js +1 -1
  3. package/dist/cli/commands/add.js.map +1 -1
  4. package/dist/cli/commands/init.js +1 -1
  5. package/dist/cli/commands/setup-app/browser.d.ts +1 -0
  6. package/dist/cli/commands/setup-app/browser.d.ts.map +1 -1
  7. package/dist/cli/commands/setup-app/browser.js +10 -5
  8. package/dist/cli/commands/setup-app/browser.js.map +1 -1
  9. package/dist/cli/git.js +24 -24
  10. package/dist/cli/git.js.map +1 -1
  11. package/dist/cli/index.js +5 -1
  12. package/dist/cli/index.js.map +1 -1
  13. package/dist/cli/main.d.ts.map +1 -1
  14. package/dist/cli/main.js +29 -27
  15. package/dist/cli/main.js.map +1 -1
  16. package/dist/cli/output/ink-runner.d.ts.map +1 -1
  17. package/dist/cli/output/ink-runner.js +5 -7
  18. package/dist/cli/output/ink-runner.js.map +1 -1
  19. package/dist/cli/output/tasks.d.ts +1 -1
  20. package/dist/cli/output/tasks.d.ts.map +1 -1
  21. package/dist/cli/output/tasks.js +194 -161
  22. package/dist/cli/output/tasks.js.map +1 -1
  23. package/dist/config/loader.d.ts +4 -0
  24. package/dist/config/loader.d.ts.map +1 -1
  25. package/dist/config/loader.js +41 -34
  26. package/dist/config/loader.js.map +1 -1
  27. package/dist/config/schema.d.ts +14 -0
  28. package/dist/config/schema.d.ts.map +1 -1
  29. package/dist/config/schema.js +12 -0
  30. package/dist/config/schema.js.map +1 -1
  31. package/dist/diff/context.d.ts.map +1 -1
  32. package/dist/diff/context.js +5 -1
  33. package/dist/diff/context.js.map +1 -1
  34. package/dist/index.d.ts +2 -1
  35. package/dist/index.d.ts.map +1 -1
  36. package/dist/index.js +1 -1
  37. package/dist/index.js.map +1 -1
  38. package/dist/output/dedup.d.ts +22 -0
  39. package/dist/output/dedup.d.ts.map +1 -1
  40. package/dist/output/dedup.js +180 -0
  41. package/dist/output/dedup.js.map +1 -1
  42. package/dist/output/github-checks.d.ts +3 -1
  43. package/dist/output/github-checks.d.ts.map +1 -1
  44. package/dist/output/github-checks.js +3 -3
  45. package/dist/output/github-checks.js.map +1 -1
  46. package/dist/output/github-issues.d.ts.map +1 -1
  47. package/dist/output/github-issues.js +8 -2
  48. package/dist/output/github-issues.js.map +1 -1
  49. package/dist/output/renderer.d.ts +3 -1
  50. package/dist/output/renderer.d.ts.map +1 -1
  51. package/dist/output/renderer.js +39 -9
  52. package/dist/output/renderer.js.map +1 -1
  53. package/dist/output/stale.d.ts +6 -2
  54. package/dist/output/stale.d.ts.map +1 -1
  55. package/dist/output/stale.js +4 -4
  56. package/dist/output/stale.js.map +1 -1
  57. package/dist/output/types.d.ts +2 -0
  58. package/dist/output/types.d.ts.map +1 -1
  59. package/dist/sdk/analyze.d.ts.map +1 -1
  60. package/dist/sdk/analyze.js +287 -205
  61. package/dist/sdk/analyze.js.map +1 -1
  62. package/dist/sentry.d.ts +17 -0
  63. package/dist/sentry.d.ts.map +1 -0
  64. package/dist/sentry.js +119 -0
  65. package/dist/sentry.js.map +1 -0
  66. package/dist/skills/index.d.ts +4 -4
  67. package/dist/skills/index.d.ts.map +1 -1
  68. package/dist/skills/index.js +2 -2
  69. package/dist/skills/index.js.map +1 -1
  70. package/dist/skills/loader.d.ts +48 -6
  71. package/dist/skills/loader.d.ts.map +1 -1
  72. package/dist/skills/loader.js +134 -57
  73. package/dist/skills/loader.js.map +1 -1
  74. package/dist/skills/remote.d.ts +12 -0
  75. package/dist/skills/remote.d.ts.map +1 -1
  76. package/dist/skills/remote.js +81 -32
  77. package/dist/skills/remote.js.map +1 -1
  78. package/dist/utils/async.d.ts +14 -1
  79. package/dist/utils/async.d.ts.map +1 -1
  80. package/dist/utils/async.js +29 -7
  81. package/dist/utils/async.js.map +1 -1
  82. package/dist/utils/index.d.ts +1 -1
  83. package/dist/utils/index.d.ts.map +1 -1
  84. package/dist/utils/index.js +1 -1
  85. package/dist/utils/index.js.map +1 -1
  86. package/package.json +3 -2
  87. package/plugins/warden/skills/warden/references/creating-skills.md +2 -3
@@ -15,22 +15,38 @@ const skillsCache = new Map();
15
15
  * Conventional skill directories, checked in priority order.
16
16
  *
17
17
  * Skills are discovered from these directories in order:
18
- * 1. .warden/skills - Warden-specific skills (highest priority)
19
- * 2. .agents/skills - General agent skills (shared across tools)
20
- * 3. .claude/skills - Claude Code skills (for compatibility)
18
+ * 1. .agents/skills - Primary (recommended)
19
+ * 2. .claude/skills - Backup (matches Claude Code convention)
20
+ * 3. .warden/skills - Legacy
21
21
  *
22
22
  * Skills follow the agentskills.io specification:
23
23
  * - skill-name/SKILL.md (directory with SKILL.md inside - preferred)
24
24
  * - skill-name.md (flat markdown with SKILL.md frontmatter format)
25
25
  *
26
26
  * When a skill name exists in multiple directories, the first one found wins.
27
- * This allows project-specific skills in .warden/skills to override shared skills.
28
27
  */
29
28
  export const SKILL_DIRECTORIES = [
30
- '.warden/skills',
31
29
  '.agents/skills',
32
30
  '.claude/skills',
31
+ '.warden/skills',
32
+ ];
33
+ /**
34
+ * Conventional agent directories, checked in priority order.
35
+ *
36
+ * Agents are discovered from these directories in order:
37
+ * 1. .agents/agents - Primary (recommended)
38
+ * 2. .claude/agents - Backup (matches Claude Code convention)
39
+ * 3. .warden/agents - Legacy
40
+ *
41
+ * Agents use the same format as skills but with AGENT.md marker files.
42
+ */
43
+ export const AGENT_DIRECTORIES = [
44
+ '.agents/agents',
45
+ '.claude/agents',
46
+ '.warden/agents',
33
47
  ];
48
+ /** Marker filename for agent definitions */
49
+ export const AGENT_MARKER_FILE = 'AGENT.md';
34
50
  /**
35
51
  * Check if a string looks like a path (contains path separators or starts with .)
36
52
  */
@@ -68,7 +84,7 @@ export function clearSkillsCache() {
68
84
  function parseMarkdownFrontmatter(content) {
69
85
  const match = content.match(/^---\n([\s\S]*?)\n---\n([\s\S]*)$/);
70
86
  if (!match) {
71
- throw new SkillLoaderError('Invalid SKILL.md: missing YAML frontmatter');
87
+ throw new SkillLoaderError('Invalid markdown: missing YAML frontmatter');
72
88
  }
73
89
  const [, yamlContent, body] = match;
74
90
  // Simple YAML parser for frontmatter (handles basic key: value pairs)
@@ -145,10 +161,10 @@ export async function loadSkillFromMarkdown(filePath, options) {
145
161
  }
146
162
  const { frontmatter, body } = parseMarkdownFrontmatter(content);
147
163
  if (!frontmatter['name'] || typeof frontmatter['name'] !== 'string') {
148
- throw new SkillLoaderError(`Invalid SKILL.md: missing 'name' in frontmatter`);
164
+ throw new SkillLoaderError(`Invalid markdown: missing 'name' in frontmatter`);
149
165
  }
150
166
  if (!frontmatter['description'] || typeof frontmatter['description'] !== 'string') {
151
- throw new SkillLoaderError(`Invalid SKILL.md: missing 'description' in frontmatter`);
167
+ throw new SkillLoaderError(`Invalid markdown: missing 'description' in frontmatter`);
152
168
  }
153
169
  const allowedTools = parseAllowedTools(frontmatter['allowed-tools'], options?.onWarning);
154
170
  return {
@@ -181,8 +197,10 @@ export async function loadSkillFromFile(filePath) {
181
197
  * @returns Map of skill name to LoadedSkill (includes entry path for tracking)
182
198
  */
183
199
  export async function loadSkillsFromDirectory(dirPath, options) {
200
+ const markerFile = options?.markerFile ?? 'SKILL.md';
201
+ const cacheKey = `${dirPath}:${markerFile}`;
184
202
  // Check cache first
185
- const cached = skillsCache.get(dirPath);
203
+ const cached = skillsCache.get(cacheKey);
186
204
  if (cached) {
187
205
  return cached;
188
206
  }
@@ -192,28 +210,28 @@ export async function loadSkillsFromDirectory(dirPath, options) {
192
210
  entries = await readdir(dirPath);
193
211
  }
194
212
  catch {
195
- skillsCache.set(dirPath, skills);
213
+ skillsCache.set(cacheKey, skills);
196
214
  return skills;
197
215
  }
198
216
  // Process entries following agentskills.io format priority:
199
- // 1. Directories with SKILL.md (preferred)
200
- // 2. Flat .md files with valid SKILL.md frontmatter
217
+ // 1. Directories with marker file (preferred)
218
+ // 2. Flat .md files with valid frontmatter
201
219
  for (const entry of entries) {
202
220
  const entryPath = join(dirPath, entry);
203
- // Check for agentskills.io format: skill-name/SKILL.md (preferred)
204
- const skillMdPath = join(entryPath, 'SKILL.md');
205
- if (existsSync(skillMdPath)) {
221
+ // Check for agentskills.io format: entry-name/{markerFile} (preferred)
222
+ const markerPath = join(entryPath, markerFile);
223
+ if (existsSync(markerPath)) {
206
224
  try {
207
- const skill = await loadSkillFromMarkdown(skillMdPath, { onWarning: options?.onWarning });
225
+ const skill = await loadSkillFromMarkdown(markerPath, { onWarning: options?.onWarning });
208
226
  skills.set(skill.name, { skill, entry });
209
227
  }
210
228
  catch (error) {
211
229
  const message = error instanceof Error ? error.message : String(error);
212
- options?.onWarning?.(`Failed to load skill from ${skillMdPath}: ${message}`);
230
+ options?.onWarning?.(`Failed to load skill from ${markerPath}: ${message}`);
213
231
  }
214
232
  continue;
215
233
  }
216
- // Check for flat .md files (with SKILL.md format frontmatter)
234
+ // Check for flat .md files (with frontmatter format)
217
235
  if (entry.endsWith('.md')) {
218
236
  try {
219
237
  const skill = await loadSkillFromMarkdown(entryPath, { onWarning: options?.onWarning });
@@ -229,34 +247,26 @@ export async function loadSkillsFromDirectory(dirPath, options) {
229
247
  }
230
248
  }
231
249
  }
232
- skillsCache.set(dirPath, skills);
250
+ skillsCache.set(cacheKey, skills);
233
251
  return skills;
234
252
  }
235
253
  /**
236
- * Discover all available skills from conventional directories.
237
- *
238
- * @param repoRoot - Repository root path for finding skills
239
- * @param options - Options for skill loading (e.g., warning callback)
240
- * @returns Map of skill name to discovered skill info
254
+ * Discover all entries (skills or agents) from conventional directories.
255
+ * Scans directories in order; first occurrence of a name wins.
241
256
  */
242
- export async function discoverAllSkills(repoRoot, options) {
257
+ async function discoverFromDirectories(repoRoot, directories, options) {
243
258
  const result = new Map();
244
- if (!repoRoot) {
245
- return result;
246
- }
247
- // Scan conventional directories for skills
248
- for (const dir of SKILL_DIRECTORIES) {
259
+ for (const dir of directories) {
249
260
  const dirPath = join(repoRoot, dir);
250
261
  if (!existsSync(dirPath))
251
262
  continue;
252
- const skills = await loadSkillsFromDirectory(dirPath, options);
253
- for (const [name, loaded] of skills) {
254
- // First directory wins - don't overwrite existing skills
263
+ const loaded = await loadSkillsFromDirectory(dirPath, options);
264
+ for (const [name, entry] of loaded) {
255
265
  if (!result.has(name)) {
256
266
  result.set(name, {
257
- skill: loaded.skill,
267
+ skill: entry.skill,
258
268
  directory: `./${dir}`,
259
- path: join(dirPath, loaded.entry),
269
+ path: join(dirPath, entry.entry),
260
270
  });
261
271
  }
262
272
  }
@@ -264,56 +274,123 @@ export async function discoverAllSkills(repoRoot, options) {
264
274
  return result;
265
275
  }
266
276
  /**
267
- * Resolve a skill by name or path.
277
+ * Discover all available skills from conventional directories.
278
+ *
279
+ * @param repoRoot - Repository root path for finding skills
280
+ * @param options - Options for skill loading (e.g., warning callback)
281
+ * @returns Map of skill name to discovered skill info
282
+ */
283
+ export async function discoverAllSkills(repoRoot, options) {
284
+ if (!repoRoot) {
285
+ return new Map();
286
+ }
287
+ return discoverFromDirectories(repoRoot, SKILL_DIRECTORIES, options);
288
+ }
289
+ /**
290
+ * Resolve a skill or agent by name or path.
268
291
  *
269
292
  * Resolution order:
270
293
  * 1. Remote repository (if remote option is set)
271
294
  * 2. Direct path (if nameOrPath contains / or \ or starts with .)
272
- * - Directory: load SKILL.md from it
295
+ * - Directory: load marker file from it
273
296
  * - File: load the .md file directly
274
297
  * 3. Conventional directories (if repoRoot provided)
275
- * - .warden/skills/{name}/SKILL.md or .warden/skills/{name}.md
276
- * - .agents/skills/{name}/SKILL.md or .agents/skills/{name}.md
277
- * - .claude/skills/{name}/SKILL.md or .claude/skills/{name}.md
278
298
  */
279
- export async function resolveSkillAsync(nameOrPath, repoRoot, options) {
299
+ async function resolveEntry(nameOrPath, repoRoot, options, config) {
280
300
  const { remote, offline } = options ?? {};
281
301
  // 1. Remote repository resolution takes priority when specified
282
302
  if (remote) {
283
303
  // Dynamic import to avoid circular dependencies
284
- const { resolveRemoteSkill } = await import('./remote.js');
285
- return resolveRemoteSkill(remote, nameOrPath, { offline });
304
+ const { resolveRemoteSkill, resolveRemoteAgent } = await import('./remote.js');
305
+ const resolver = config.kind === 'skill' ? resolveRemoteSkill : resolveRemoteAgent;
306
+ return resolver(remote, nameOrPath, { offline });
286
307
  }
287
308
  // 2. Direct path resolution
288
309
  if (isSkillPath(nameOrPath)) {
289
310
  const resolvedPath = resolveSkillPath(nameOrPath, repoRoot);
290
- // Check if it's a directory with SKILL.md
291
- const skillMdPath = join(resolvedPath, 'SKILL.md');
292
- if (existsSync(skillMdPath)) {
293
- return loadSkillFromMarkdown(skillMdPath);
311
+ const markerPath = join(resolvedPath, config.markerFile);
312
+ if (existsSync(markerPath)) {
313
+ return loadSkillFromMarkdown(markerPath);
294
314
  }
295
- // Check if it's a file directly
296
315
  if (existsSync(resolvedPath)) {
297
316
  return loadSkillFromFile(resolvedPath);
298
317
  }
299
- throw new SkillLoaderError(`Skill not found at path: ${nameOrPath}`);
318
+ throw new SkillLoaderError(`${config.label} not found at path: ${nameOrPath}`);
300
319
  }
301
- // 3. Check conventional skill directories
320
+ // 3. Check conventional directories
302
321
  if (repoRoot) {
303
- for (const dir of SKILL_DIRECTORIES) {
322
+ for (const dir of config.directories) {
304
323
  const dirPath = join(repoRoot, dir);
305
- // Check for skill-name/SKILL.md (preferred agentskills.io format)
306
- const skillMdPath = join(dirPath, nameOrPath, 'SKILL.md');
307
- if (existsSync(skillMdPath)) {
308
- return loadSkillFromMarkdown(skillMdPath);
324
+ const markerPath = join(dirPath, nameOrPath, config.markerFile);
325
+ if (existsSync(markerPath)) {
326
+ return loadSkillFromMarkdown(markerPath);
309
327
  }
310
- // Check for skill-name.md (flat markdown file with SKILL.md format)
311
328
  const mdPath = join(dirPath, `${nameOrPath}.md`);
312
329
  if (existsSync(mdPath)) {
313
330
  return loadSkillFromMarkdown(mdPath);
314
331
  }
315
332
  }
316
333
  }
317
- throw new SkillLoaderError(`Skill not found: ${nameOrPath}`);
334
+ throw new SkillLoaderError(`${config.label} not found: ${nameOrPath}`);
335
+ }
336
+ const SKILL_RESOLVE_CONFIG = {
337
+ markerFile: 'SKILL.md',
338
+ directories: SKILL_DIRECTORIES,
339
+ label: 'Skill',
340
+ kind: 'skill',
341
+ };
342
+ const AGENT_RESOLVE_CONFIG = {
343
+ markerFile: AGENT_MARKER_FILE,
344
+ directories: AGENT_DIRECTORIES,
345
+ label: 'Agent',
346
+ kind: 'agent',
347
+ };
348
+ /**
349
+ * Resolve a skill by name or path.
350
+ *
351
+ * Resolution order:
352
+ * 1. Remote repository (if remote option is set)
353
+ * 2. Direct path (if nameOrPath contains / or \ or starts with .)
354
+ * - Directory: load SKILL.md from it
355
+ * - File: load the .md file directly
356
+ * 3. Conventional directories (if repoRoot provided)
357
+ * - .agents/skills/{name}/SKILL.md or .agents/skills/{name}.md
358
+ * - .claude/skills/{name}/SKILL.md or .claude/skills/{name}.md
359
+ * - .warden/skills/{name}/SKILL.md or .warden/skills/{name}.md
360
+ */
361
+ export async function resolveSkillAsync(nameOrPath, repoRoot, options) {
362
+ return resolveEntry(nameOrPath, repoRoot, options, SKILL_RESOLVE_CONFIG);
363
+ }
364
+ /**
365
+ * Discover all available agents from conventional directories.
366
+ *
367
+ * @param repoRoot - Repository root path for finding agents
368
+ * @param options - Options for loading (e.g., warning callback)
369
+ * @returns Map of agent name to discovered agent info
370
+ */
371
+ export async function discoverAllAgents(repoRoot, options) {
372
+ if (!repoRoot) {
373
+ return new Map();
374
+ }
375
+ return discoverFromDirectories(repoRoot, AGENT_DIRECTORIES, {
376
+ ...options,
377
+ markerFile: AGENT_MARKER_FILE,
378
+ });
379
+ }
380
+ /**
381
+ * Resolve an agent by name or path.
382
+ *
383
+ * Resolution order:
384
+ * 1. Remote repository (if remote option is set)
385
+ * 2. Direct path (if nameOrPath contains / or \ or starts with .)
386
+ * - Directory: load AGENT.md from it
387
+ * - File: load the .md file directly
388
+ * 3. Conventional directories (if repoRoot provided)
389
+ * - .agents/agents/{name}/AGENT.md or .agents/agents/{name}.md
390
+ * - .claude/agents/{name}/AGENT.md or .claude/agents/{name}.md
391
+ * - .warden/agents/{name}/AGENT.md or .warden/agents/{name}.md
392
+ */
393
+ export async function resolveAgentAsync(nameOrPath, repoRoot, options) {
394
+ return resolveEntry(nameOrPath, repoRoot, options, AGENT_RESOLVE_CONFIG);
318
395
  }
319
396
  //# sourceMappingURL=loader.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"loader.js","sourceRoot":"","sources":["../../src/skills/loader.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAC/D,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAElC,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAErD,MAAM,OAAO,gBAAiB,SAAQ,KAAK;IACzC,YAAY,OAAe,EAAE,OAA6B;QACxD,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QACxB,IAAI,CAAC,IAAI,GAAG,kBAAkB,CAAC;IACjC,CAAC;CACF;AAWD,uEAAuE;AACvE,MAAM,WAAW,GAAG,IAAI,GAAG,EAAoC,CAAC;AAEhE;;;;;;;;;;;;;;GAcG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG;IAC/B,gBAAgB;IAChB,gBAAgB;IAChB,gBAAgB;CACR,CAAC;AAEX;;GAEG;AACH,SAAS,WAAW,CAAC,UAAkB;IACrC,OAAO,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,UAAU,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;AAC7F,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,gBAAgB,CAAC,UAAkB,EAAE,QAAiB;IACpE,6BAA6B;IAC7B,IAAI,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;QAChC,OAAO,IAAI,CAAC,OAAO,EAAE,EAAE,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IAC9C,CAAC;IACD,IAAI,UAAU,KAAK,GAAG,EAAE,CAAC;QACvB,OAAO,OAAO,EAAE,CAAC;IACnB,CAAC;IAED,4BAA4B;IAC5B,IAAI,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;QAC3B,OAAO,UAAU,CAAC;IACpB,CAAC;IAED,kDAAkD;IAClD,OAAO,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC;AAC5D,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,gBAAgB;IAC9B,WAAW,CAAC,KAAK,EAAE,CAAC;AACtB,CAAC;AAED;;;GAGG;AACH,SAAS,wBAAwB,CAAC,OAAe;IAC/C,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,mCAAmC,CAAC,CAAC;IACjE,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,MAAM,IAAI,gBAAgB,CAAC,4CAA4C,CAAC,CAAC;IAC3E,CAAC;IAED,MAAM,CAAC,EAAE,WAAW,EAAE,IAAI,CAAC,GAAG,KAAK,CAAC;IAEpC,sEAAsE;IACtE,MAAM,WAAW,GAA4B,EAAE,CAAC;IAChD,IAAI,UAAU,GAAkB,IAAI,CAAC;IACrC,IAAI,UAAU,GAAG,KAAK,CAAC;IACvB,MAAM,QAAQ,GAA2B,EAAE,CAAC;IAE5C,KAAK,MAAM,IAAI,IAAI,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;QACnD,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;QAC5B,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC;YAAE,SAAS;QAElD,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,UAAU,EAAE,CAAC;YACxC,wBAAwB;YACxB,MAAM,SAAS,GAAG,OAAO,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;YACnD,IAAI,SAAS,IAAI,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC9B,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,cAAc,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC;YAC3E,CAAC;YACD,SAAS;QACX,CAAC;QAED,UAAU,GAAG,KAAK,CAAC;QACnB,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAC;QACpD,IAAI,QAAQ,IAAI,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;YAC5B,UAAU,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;YACzB,MAAM,KAAK,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;YAEzC,IAAI,UAAU,KAAK,UAAU,IAAI,CAAC,KAAK,EAAE,CAAC;gBACxC,UAAU,GAAG,IAAI,CAAC;gBAClB,WAAW,CAAC,UAAU,CAAC,GAAG,QAAQ,CAAC;YACrC,CAAC;iBAAM,IAAI,KAAK,EAAE,CAAC;gBACjB,WAAW,CAAC,UAAU,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC,cAAc,EAAE,EAAE,CAAC,CAAC;YAC9D,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,IAAI,EAAE,EAAE,CAAC;AAC3C,CAAC;AAED;;GAEG;AACH,SAAS,iBAAiB;IACxB,OAAO,cAAc,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC3C,CAAC;AAED;;;;GAIG;AACH,SAAS,iBAAiB,CACxB,YAAqB,EACrB,SAAqC;IAErC,IAAI,OAAO,YAAY,KAAK,QAAQ,EAAE,CAAC;QACrC,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,MAAM,KAAK,GAAG,YAAY,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IACxD,MAAM,UAAU,GAAe,EAAE,CAAC;IAElC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,MAAM,MAAM,GAAG,cAAc,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QAC9C,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;YACnB,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAC/B,CAAC;aAAM,CAAC;YACN,SAAS,EAAE,CACT,sBAAsB,IAAI,8CAA8C,iBAAiB,EAAE,EAAE,CAC9F,CAAC;QACJ,CAAC;IACH,CAAC;IAED,OAAO,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC;AACxD,CAAC;AAUD;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,qBAAqB,CACzC,QAAgB,EAChB,OAAsC;IAEtC,IAAI,OAAe,CAAC;IACpB,IAAI,CAAC;QACH,OAAO,GAAG,MAAM,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IAC9C,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,IAAI,gBAAgB,CAAC,8BAA8B,QAAQ,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;IACzF,CAAC;IAED,MAAM,EAAE,WAAW,EAAE,IAAI,EAAE,GAAG,wBAAwB,CAAC,OAAO,CAAC,CAAC;IAEhE,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,IAAI,OAAO,WAAW,CAAC,MAAM,CAAC,KAAK,QAAQ,EAAE,CAAC;QACpE,MAAM,IAAI,gBAAgB,CAAC,iDAAiD,CAAC,CAAC;IAChF,CAAC;IACD,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,IAAI,OAAO,WAAW,CAAC,aAAa,CAAC,KAAK,QAAQ,EAAE,CAAC;QAClF,MAAM,IAAI,gBAAgB,CAAC,wDAAwD,CAAC,CAAC;IACvF,CAAC;IAED,MAAM,YAAY,GAAG,iBAAiB,CAAC,WAAW,CAAC,eAAe,CAAC,EAAE,OAAO,EAAE,SAAS,CAAC,CAAC;IAEzF,OAAO;QACL,IAAI,EAAE,WAAW,CAAC,MAAM,CAAC;QACzB,WAAW,EAAE,WAAW,CAAC,aAAa,CAAC;QACvC,MAAM,EAAE,IAAI,CAAC,IAAI,EAAE;QACnB,KAAK,EAAE,YAAY,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC,SAAS;QAC3D,OAAO,EAAE,OAAO,CAAC,QAAQ,CAAC;KAC3B,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,QAAgB;IACtD,MAAM,GAAG,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC,WAAW,EAAE,CAAC;IAE5C,IAAI,GAAG,KAAK,KAAK,EAAE,CAAC;QAClB,OAAO,qBAAqB,CAAC,QAAQ,CAAC,CAAC;IACzC,CAAC;IAED,MAAM,IAAI,gBAAgB,CAAC,2BAA2B,QAAQ,iEAAiE,CAAC,CAAC;AACnI,CAAC;AAUD;;;;;;;;;;GAUG;AACH,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAC3C,OAAe,EACf,OAA2B;IAE3B,oBAAoB;IACpB,MAAM,MAAM,GAAG,WAAW,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IACxC,IAAI,MAAM,EAAE,CAAC;QACX,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,MAAM,MAAM,GAAG,IAAI,GAAG,EAAuB,CAAC;IAE9C,IAAI,OAAiB,CAAC;IACtB,IAAI,CAAC;QACH,OAAO,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC,CAAC;IACnC,CAAC;IAAC,MAAM,CAAC;QACP,WAAW,CAAC,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QACjC,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,4DAA4D;IAC5D,2CAA2C;IAC3C,oDAAoD;IACpD,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;QAC5B,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;QAEvC,mEAAmE;QACnE,MAAM,WAAW,GAAG,IAAI,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;QAChD,IAAI,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;YAC5B,IAAI,CAAC;gBACH,MAAM,KAAK,GAAG,MAAM,qBAAqB,CAAC,WAAW,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC,CAAC;gBAC1F,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;YAC3C,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gBACvE,OAAO,EAAE,SAAS,EAAE,CAAC,6BAA6B,WAAW,KAAK,OAAO,EAAE,CAAC,CAAC;YAC/E,CAAC;YACD,SAAS;QACX,CAAC;QAED,8DAA8D;QAC9D,IAAI,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;YAC1B,IAAI,CAAC;gBACH,MAAM,KAAK,GAAG,MAAM,qBAAqB,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC,CAAC;gBACxF,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;YAC3C,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,uEAAuE;gBACvE,+DAA+D;gBAC/D,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gBACvE,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,0BAA0B,CAAC,EAAE,CAAC;oBAClD,OAAO,EAAE,SAAS,EAAE,CAAC,6BAA6B,KAAK,KAAK,OAAO,EAAE,CAAC,CAAC;gBACzE,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAED,WAAW,CAAC,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IACjC,OAAO,MAAM,CAAC;AAChB,CAAC;AAaD;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,QAAiB,EACjB,OAA2B;IAE3B,MAAM,MAAM,GAAG,IAAI,GAAG,EAA2B,CAAC;IAElD,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,2CAA2C;IAC3C,KAAK,MAAM,GAAG,IAAI,iBAAiB,EAAE,CAAC;QACpC,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;QACpC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC;YAAE,SAAS;QAEnC,MAAM,MAAM,GAAG,MAAM,uBAAuB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QAC/D,KAAK,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,MAAM,EAAE,CAAC;YACpC,yDAAyD;YACzD,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;gBACtB,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE;oBACf,KAAK,EAAE,MAAM,CAAC,KAAK;oBACnB,SAAS,EAAE,KAAK,GAAG,EAAE;oBACrB,IAAI,EAAE,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,KAAK,CAAC;iBAClC,CAAC,CAAC;YACL,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AASD;;;;;;;;;;;;GAYG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,UAAkB,EAClB,QAAiB,EACjB,OAA6B;IAE7B,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,OAAO,IAAI,EAAE,CAAC;IAE1C,gEAAgE;IAChE,IAAI,MAAM,EAAE,CAAC;QACX,gDAAgD;QAChD,MAAM,EAAE,kBAAkB,EAAE,GAAG,MAAM,MAAM,CAAC,aAAa,CAAC,CAAC;QAC3D,OAAO,kBAAkB,CAAC,MAAM,EAAE,UAAU,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC;IAC7D,CAAC;IAED,4BAA4B;IAC5B,IAAI,WAAW,CAAC,UAAU,CAAC,EAAE,CAAC;QAC5B,MAAM,YAAY,GAAG,gBAAgB,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;QAE5D,0CAA0C;QAC1C,MAAM,WAAW,GAAG,IAAI,CAAC,YAAY,EAAE,UAAU,CAAC,CAAC;QACnD,IAAI,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;YAC5B,OAAO,qBAAqB,CAAC,WAAW,CAAC,CAAC;QAC5C,CAAC;QAED,gCAAgC;QAChC,IAAI,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;YAC7B,OAAO,iBAAiB,CAAC,YAAY,CAAC,CAAC;QACzC,CAAC;QAED,MAAM,IAAI,gBAAgB,CAAC,4BAA4B,UAAU,EAAE,CAAC,CAAC;IACvE,CAAC;IAED,0CAA0C;IAC1C,IAAI,QAAQ,EAAE,CAAC;QACb,KAAK,MAAM,GAAG,IAAI,iBAAiB,EAAE,CAAC;YACpC,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;YAEpC,kEAAkE;YAClE,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,EAAE,UAAU,EAAE,UAAU,CAAC,CAAC;YAC1D,IAAI,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;gBAC5B,OAAO,qBAAqB,CAAC,WAAW,CAAC,CAAC;YAC5C,CAAC;YAED,oEAAoE;YACpE,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,EAAE,GAAG,UAAU,KAAK,CAAC,CAAC;YACjD,IAAI,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;gBACvB,OAAO,qBAAqB,CAAC,MAAM,CAAC,CAAC;YACvC,CAAC;QACH,CAAC;IACH,CAAC;IAED,MAAM,IAAI,gBAAgB,CAAC,oBAAoB,UAAU,EAAE,CAAC,CAAC;AAC/D,CAAC"}
1
+ {"version":3,"file":"loader.js","sourceRoot":"","sources":["../../src/skills/loader.ts"],"names":[],"mappings":"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"}
@@ -113,5 +113,17 @@ export declare function listCachedRemotes(): {
113
113
  ref: string;
114
114
  entry: RemoteEntry;
115
115
  }[];
116
+ export type DiscoveredRemoteAgent = DiscoveredRemoteSkill;
117
+ /**
118
+ * Discover all agents in a cached remote repository.
119
+ * Uses traditional discovery only (no marketplace format for agents).
120
+ */
121
+ export declare function discoverRemoteAgents(ref: string): Promise<DiscoveredRemoteAgent[]>;
122
+ /**
123
+ * Resolve an agent from a remote repository.
124
+ * Ensures the remote is fetched/cached, then loads the agent.
125
+ * Matches by agent name (from AGENT.md), not directory name.
126
+ */
127
+ export declare function resolveRemoteAgent(ref: string, agentName: string, options?: FetchRemoteOptions): Promise<SkillDefinition>;
116
128
  export {};
117
129
  //# sourceMappingURL=remote.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"remote.d.ts","sourceRoot":"","sources":["../../src/skills/remote.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAK3D,qDAAqD;AACrD,QAAA,MAAM,iBAAiB;;;iBAGrB,CAAC;AAEH,4CAA4C;AAC5C,QAAA,MAAM,iBAAiB;;;;;iBAErB,CAAC;AAEH,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAC5D,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAoB5D,8BAA8B;AAC9B,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AA2BD;;;;;;;GAOG;AACH,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,eAAe,CA+D3D;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,eAAe,GAAG,MAAM,CAG/D;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,IAAI,MAAM,CAM1C;AAED;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAQjD;AAED;;GAEG;AACH,wBAAgB,YAAY,IAAI,MAAM,CAErC;AAED;;;GAGG;AACH,wBAAgB,SAAS,IAAI,WAAW,CAiBvC;AAED;;;GAGG;AACH,wBAAgB,SAAS,CAAC,KAAK,EAAE,WAAW,GAAG,IAAI,CAelD;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,IAAI,MAAM,CAS3C;AAED;;;GAGG;AACH,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,WAAW,GAAG,OAAO,CAkBtE;AAED,MAAM,WAAW,kBAAkB;IACjC,2CAA2C;IAC3C,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,+CAA+C;IAC/C,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,qCAAqC;IACrC,UAAU,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;CACxC;AAgBD;;;GAGG;AACH,wBAAsB,WAAW,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,GAAE,kBAAuB,GAAG,OAAO,CAAC,MAAM,CAAC,CAwFhG;AAED,MAAM,WAAW,qBAAqB;IACpC,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,gDAAgD;IAChD,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAiID;;;;;GAKG;AACH,wBAAsB,oBAAoB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,qBAAqB,EAAE,CAAC,CAexF;AAED;;;;GAIG;AACH,wBAAsB,kBAAkB,CACtC,GAAG,EAAE,MAAM,EACX,SAAS,EAAE,MAAM,EACjB,OAAO,GAAE,kBAAuB,GAC/B,OAAO,CAAC,eAAe,CAAC,CAiB1B;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAW9C;AAED;;GAEG;AACH,wBAAgB,iBAAiB,IAAI;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,WAAW,CAAA;CAAE,EAAE,CAGzE"}
1
+ {"version":3,"file":"remote.d.ts","sourceRoot":"","sources":["../../src/skills/remote.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,9 @@
1
1
  import { existsSync, mkdirSync, readFileSync, writeFileSync, rmSync, renameSync, readdirSync, statSync } from 'node:fs';
2
2
  import { homedir } from 'node:os';
3
- import { dirname, join } from 'node:path';
3
+ import { dirname, join, resolve } from 'node:path';
4
4
  import { z } from 'zod';
5
5
  import { execGitNonInteractive } from '../utils/exec.js';
6
- import { loadSkillFromMarkdown, SkillLoaderError } from './loader.js';
6
+ import { loadSkillFromMarkdown, SkillLoaderError, AGENT_MARKER_FILE } from './loader.js';
7
7
  /** Default TTL for unpinned remote skills: 24 hours */
8
8
  const DEFAULT_TTL_SECONDS = 86400;
9
9
  /** Schema for a single remote entry in state.json */
@@ -114,6 +114,15 @@ export function parseRemoteRef(ref) {
114
114
  if (sha?.startsWith('-')) {
115
115
  throw new SkillLoaderError(`Invalid remote ref: ${ref} (SHA cannot start with -)`);
116
116
  }
117
+ // Security: Prevent path traversal via '..' in owner or repo.
118
+ // Only allow characters valid in GitHub usernames/repo names: alphanumeric, hyphens, dots, underscores.
119
+ const safeNamePattern = /^[a-zA-Z0-9][a-zA-Z0-9._-]*$/;
120
+ if (!safeNamePattern.test(owner)) {
121
+ throw new SkillLoaderError(`Invalid remote ref: ${ref} (owner contains invalid characters)`);
122
+ }
123
+ if (!safeNamePattern.test(repo)) {
124
+ throw new SkillLoaderError(`Invalid remote ref: ${ref} (repo contains invalid characters)`);
125
+ }
117
126
  return { owner, repo, sha };
118
127
  }
119
128
  /**
@@ -344,18 +353,27 @@ function parseMarketplaceConfig(remotePath) {
344
353
  const REMOTE_SKILL_DIRECTORIES = [
345
354
  '', // root level
346
355
  'skills', // skills/ subdirectory
347
- '.warden/skills', // Warden-specific
348
- '.agents/skills', // General agent skills
356
+ '.agents/skills', // General agent skills (primary)
349
357
  '.claude/skills', // Claude Code skills
358
+ '.warden/skills', // Warden-specific (legacy)
359
+ ];
360
+ /** Directories to search for agents in remote repositories */
361
+ const REMOTE_AGENT_DIRECTORIES = [
362
+ '', // root level
363
+ 'agents', // agents/ subdirectory
364
+ '.agents/agents', // Primary
365
+ '.claude/agents', // Claude Code agents
366
+ '.warden/agents', // Legacy
350
367
  ];
351
368
  /**
352
- * Discover skills using traditional directory layout.
353
- * Searches root level, skills/, and conventional skill directories.
369
+ * Discover entries (skills or agents) using traditional directory layout.
370
+ * Searches the given subdirectories for directories containing the marker file.
371
+ * First occurrence of a name wins (earlier directories have higher precedence).
354
372
  */
355
- async function discoverTraditionalSkills(remotePath) {
356
- const skills = [];
373
+ async function discoverTraditional(remotePath, directories, markerFile) {
374
+ const results = [];
357
375
  const seenNames = new Set();
358
- for (const subdir of REMOTE_SKILL_DIRECTORIES) {
376
+ for (const subdir of directories) {
359
377
  const searchPath = subdir ? join(remotePath, subdir) : remotePath;
360
378
  if (!existsSync(searchPath))
361
379
  continue;
@@ -366,28 +384,27 @@ async function discoverTraditionalSkills(remotePath) {
366
384
  const entryPath = join(searchPath, entry);
367
385
  const stat = statSync(entryPath);
368
386
  if (stat.isDirectory()) {
369
- const skillMdPath = join(entryPath, 'SKILL.md');
370
- if (existsSync(skillMdPath)) {
387
+ const markerPath = join(entryPath, markerFile);
388
+ if (existsSync(markerPath)) {
371
389
  try {
372
- const skill = await loadSkillFromMarkdown(skillMdPath);
373
- // First occurrence wins (root takes precedence over skills/)
374
- if (!seenNames.has(skill.name)) {
375
- seenNames.add(skill.name);
376
- skills.push({
377
- name: skill.name,
378
- description: skill.description,
390
+ const loaded = await loadSkillFromMarkdown(markerPath);
391
+ if (!seenNames.has(loaded.name)) {
392
+ seenNames.add(loaded.name);
393
+ results.push({
394
+ name: loaded.name,
395
+ description: loaded.description,
379
396
  path: entryPath,
380
397
  });
381
398
  }
382
399
  }
383
400
  catch {
384
- // Skip invalid skill directories
401
+ // Skip invalid entries
385
402
  }
386
403
  }
387
404
  }
388
405
  }
389
406
  }
390
- return skills;
407
+ return results;
391
408
  }
392
409
  /**
393
410
  * Discover skills using marketplace format.
@@ -400,6 +417,12 @@ async function discoverMarketplaceSkills(remotePath, config) {
400
417
  // Resolve plugin source path (e.g., "./plugins/sentry-skills" -> "plugins/sentry-skills")
401
418
  const pluginSource = plugin.source.replace(/^\.\//, '');
402
419
  const skillsPath = join(remotePath, pluginSource, 'skills');
420
+ // Security: Ensure plugin source doesn't escape the repo directory via path traversal
421
+ const resolvedSkillsPath = resolve(skillsPath);
422
+ const resolvedRemotePath = resolve(remotePath);
423
+ if (!resolvedSkillsPath.startsWith(resolvedRemotePath + '/')) {
424
+ continue; // Silently skip — attacker-controlled marketplace.json, don't leak info
425
+ }
403
426
  if (!existsSync(skillsPath))
404
427
  continue;
405
428
  const entries = readdirSync(skillsPath);
@@ -413,7 +436,6 @@ async function discoverMarketplaceSkills(remotePath, config) {
413
436
  if (existsSync(skillMdPath)) {
414
437
  try {
415
438
  const skill = await loadSkillFromMarkdown(skillMdPath);
416
- // First plugin wins for duplicate skill names
417
439
  if (!seenNames.has(skill.name)) {
418
440
  seenNames.add(skill.name);
419
441
  skills.push({
@@ -450,24 +472,32 @@ export async function discoverRemoteSkills(ref) {
450
472
  return discoverMarketplaceSkills(remotePath, marketplaceConfig);
451
473
  }
452
474
  // Fall back to traditional discovery
453
- return discoverTraditionalSkills(remotePath);
475
+ return discoverTraditional(remotePath, REMOTE_SKILL_DIRECTORIES, 'SKILL.md');
454
476
  }
455
477
  /**
456
- * Resolve a skill from a remote repository.
457
- * Ensures the remote is fetched/cached, then loads the skill.
458
- * Matches by skill name (from SKILL.md), not directory name.
478
+ * Resolve a remote entry (skill or agent) by name.
479
+ * Fetches the remote, discovers available entries, and loads the matching one.
459
480
  */
460
- export async function resolveRemoteSkill(ref, skillName, options = {}) {
481
+ async function resolveRemoteEntry(ref, name, markerFile, discoverFn, label, options = {}) {
461
482
  await fetchRemote(ref, options);
462
- const availableSkills = await discoverRemoteSkills(ref);
463
- const match = availableSkills.find((s) => s.name === skillName);
483
+ const available = await discoverFn(ref);
484
+ const match = available.find((entry) => entry.name === name);
464
485
  if (match) {
465
- return loadSkillFromMarkdown(join(match.path, 'SKILL.md'));
486
+ return loadSkillFromMarkdown(join(match.path, markerFile));
466
487
  }
467
- if (availableSkills.length === 0) {
468
- throw new SkillLoaderError(`No skills found in remote: ${ref}`);
488
+ const labelLower = label.toLowerCase();
489
+ if (available.length === 0) {
490
+ throw new SkillLoaderError(`No ${labelLower}s found in remote: ${ref}`);
469
491
  }
470
- throw new SkillLoaderError(`Skill '${skillName}' not found in remote: ${ref}. Available skills: ${availableSkills.map((s) => s.name).join(', ')}`);
492
+ throw new SkillLoaderError(`${label} '${name}' not found in remote: ${ref}. Available ${labelLower}s: ${available.map((e) => e.name).join(', ')}`);
493
+ }
494
+ /**
495
+ * Resolve a skill from a remote repository.
496
+ * Ensures the remote is fetched/cached, then loads the skill.
497
+ * Matches by skill name (from SKILL.md), not directory name.
498
+ */
499
+ export async function resolveRemoteSkill(ref, skillName, options = {}) {
500
+ return resolveRemoteEntry(ref, skillName, 'SKILL.md', discoverRemoteSkills, 'Skill', options);
471
501
  }
472
502
  /**
473
503
  * Remove a remote from the cache.
@@ -489,4 +519,23 @@ export function listCachedRemotes() {
489
519
  const state = loadState();
490
520
  return Object.entries(state.remotes).map(([ref, entry]) => ({ ref, entry }));
491
521
  }
522
+ /**
523
+ * Discover all agents in a cached remote repository.
524
+ * Uses traditional discovery only (no marketplace format for agents).
525
+ */
526
+ export async function discoverRemoteAgents(ref) {
527
+ const remotePath = getRemotePath(ref);
528
+ if (!existsSync(remotePath)) {
529
+ throw new SkillLoaderError(`Remote not cached: ${ref}. Run fetch first.`);
530
+ }
531
+ return discoverTraditional(remotePath, REMOTE_AGENT_DIRECTORIES, AGENT_MARKER_FILE);
532
+ }
533
+ /**
534
+ * Resolve an agent from a remote repository.
535
+ * Ensures the remote is fetched/cached, then loads the agent.
536
+ * Matches by agent name (from AGENT.md), not directory name.
537
+ */
538
+ export async function resolveRemoteAgent(ref, agentName, options = {}) {
539
+ return resolveRemoteEntry(ref, agentName, AGENT_MARKER_FILE, discoverRemoteAgents, 'Agent', options);
540
+ }
492
541
  //# sourceMappingURL=remote.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"remote.js","sourceRoot":"","sources":["../../src/skills/remote.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"remote.js","sourceRoot":"","sources":["../../src/skills/remote.ts"],"names":[],"mappings":"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"}