devchain-cli 0.9.0 → 0.9.2

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 (80) hide show
  1. package/dist/drizzle/0041_community_skill_sources.sql +12 -0
  2. package/dist/drizzle/0042_nice_flatman.sql +10 -0
  3. package/dist/drizzle/0043_majestic_starhawk.sql +10 -0
  4. package/dist/drizzle/meta/0041_snapshot.json +4102 -0
  5. package/dist/drizzle/meta/0042_snapshot.json +4171 -0
  6. package/dist/drizzle/meta/0043_snapshot.json +4231 -0
  7. package/dist/drizzle/meta/_journal.json +21 -0
  8. package/dist/server/modules/seeders/seeders/0003_seed_preseed_jeffallan_claude_skills.d.ts +3 -0
  9. package/dist/server/modules/seeders/seeders/0003_seed_preseed_jeffallan_claude_skills.js +41 -0
  10. package/dist/server/modules/seeders/seeders/0003_seed_preseed_jeffallan_claude_skills.js.map +1 -0
  11. package/dist/server/modules/seeders/seeders/0004_seed_disable_microsoft_source_default.d.ts +3 -0
  12. package/dist/server/modules/seeders/seeders/0004_seed_disable_microsoft_source_default.js +48 -0
  13. package/dist/server/modules/seeders/seeders/0004_seed_disable_microsoft_source_default.js.map +1 -0
  14. package/dist/server/modules/seeders/services/data-seeder.service.js +4 -0
  15. package/dist/server/modules/seeders/services/data-seeder.service.js.map +1 -1
  16. package/dist/server/modules/skills/adapters/community-skill-source.adapter.d.ts +11 -0
  17. package/dist/server/modules/skills/adapters/community-skill-source.adapter.js +181 -0
  18. package/dist/server/modules/skills/adapters/community-skill-source.adapter.js.map +1 -0
  19. package/dist/server/modules/skills/adapters/github-skill-source.base.d.ts +2 -5
  20. package/dist/server/modules/skills/adapters/github-skill-source.base.js +31 -100
  21. package/dist/server/modules/skills/adapters/github-skill-source.base.js.map +1 -1
  22. package/dist/server/modules/skills/adapters/local-skill-source.adapter.d.ts +16 -0
  23. package/dist/server/modules/skills/adapters/local-skill-source.adapter.js +265 -0
  24. package/dist/server/modules/skills/adapters/local-skill-source.adapter.js.map +1 -0
  25. package/dist/server/modules/skills/adapters/skill-parsing.utils.d.ts +32 -0
  26. package/dist/server/modules/skills/adapters/skill-parsing.utils.js +169 -0
  27. package/dist/server/modules/skills/adapters/skill-parsing.utils.js.map +1 -0
  28. package/dist/server/modules/skills/controllers/community-sources.controller.d.ts +12 -0
  29. package/dist/server/modules/skills/controllers/community-sources.controller.js +71 -0
  30. package/dist/server/modules/skills/controllers/community-sources.controller.js.map +1 -0
  31. package/dist/server/modules/skills/controllers/local-sources.controller.d.ts +12 -0
  32. package/dist/server/modules/skills/controllers/local-sources.controller.js +71 -0
  33. package/dist/server/modules/skills/controllers/local-sources.controller.js.map +1 -0
  34. package/dist/server/modules/skills/controllers/skills.controller.d.ts +11 -1
  35. package/dist/server/modules/skills/controllers/skills.controller.js +35 -3
  36. package/dist/server/modules/skills/controllers/skills.controller.js.map +1 -1
  37. package/dist/server/modules/skills/dtos/community-sources.dto.d.ts +100 -0
  38. package/dist/server/modules/skills/dtos/community-sources.dto.js +138 -0
  39. package/dist/server/modules/skills/dtos/community-sources.dto.js.map +1 -0
  40. package/dist/server/modules/skills/dtos/local-sources.dto.d.ts +42 -0
  41. package/dist/server/modules/skills/dtos/local-sources.dto.js +30 -0
  42. package/dist/server/modules/skills/dtos/local-sources.dto.js.map +1 -0
  43. package/dist/server/modules/skills/dtos/skill.dto.d.ts +16 -0
  44. package/dist/server/modules/skills/dtos/skill.dto.js +7 -1
  45. package/dist/server/modules/skills/dtos/skill.dto.js.map +1 -1
  46. package/dist/server/modules/skills/services/community-sources.service.d.ts +18 -0
  47. package/dist/server/modules/skills/services/community-sources.service.js +158 -0
  48. package/dist/server/modules/skills/services/community-sources.service.js.map +1 -0
  49. package/dist/server/modules/skills/services/local-sources.service.d.ts +20 -0
  50. package/dist/server/modules/skills/services/local-sources.service.js +206 -0
  51. package/dist/server/modules/skills/services/local-sources.service.js.map +1 -0
  52. package/dist/server/modules/skills/services/skill-source-registry.service.d.ts +20 -0
  53. package/dist/server/modules/skills/services/skill-source-registry.service.js +142 -0
  54. package/dist/server/modules/skills/services/skill-source-registry.service.js.map +1 -0
  55. package/dist/server/modules/skills/services/skill-sync.service.d.ts +7 -3
  56. package/dist/server/modules/skills/services/skill-sync.service.js +102 -11
  57. package/dist/server/modules/skills/services/skill-sync.service.js.map +1 -1
  58. package/dist/server/modules/skills/services/skills.service.d.ts +16 -4
  59. package/dist/server/modules/skills/services/skills.service.js +141 -36
  60. package/dist/server/modules/skills/services/skills.service.js.map +1 -1
  61. package/dist/server/modules/skills/skills.module.js +10 -1
  62. package/dist/server/modules/skills/skills.module.js.map +1 -1
  63. package/dist/server/modules/storage/db/schema.d.ts +342 -0
  64. package/dist/server/modules/storage/db/schema.js +30 -1
  65. package/dist/server/modules/storage/db/schema.js.map +1 -1
  66. package/dist/server/modules/storage/interfaces/storage.interface.d.ts +18 -1
  67. package/dist/server/modules/storage/interfaces/storage.interface.js.map +1 -1
  68. package/dist/server/modules/storage/local/local-storage.service.d.ts +28 -1
  69. package/dist/server/modules/storage/local/local-storage.service.js +452 -2
  70. package/dist/server/modules/storage/local/local-storage.service.js.map +1 -1
  71. package/dist/server/modules/storage/models/domain.models.d.ts +20 -0
  72. package/dist/server/tsconfig.tsbuildinfo +1 -1
  73. package/dist/server/ui/assets/{ReviewDetailPage-D_-bS1MK.js → ReviewDetailPage-BvSckWKj.js} +1 -1
  74. package/dist/server/ui/assets/{ReviewsPage-BE1gxYlC.js → ReviewsPage-MKT-vv59.js} +1 -1
  75. package/dist/server/ui/assets/index-BtUq-Qxb.css +32 -0
  76. package/dist/server/ui/assets/{index-C094CE5I.js → index-kTb634Zp.js} +197 -197
  77. package/dist/server/ui/assets/{useReviewSubscription-Bs-17h-m.js → useReviewSubscription-Dc58i6Bk.js} +1 -1
  78. package/dist/server/ui/index.html +2 -2
  79. package/package.json +8 -1
  80. package/dist/server/ui/assets/index-CbtpBUHu.css +0 -32
@@ -288,6 +288,27 @@
288
288
  "when": 1770843124203,
289
289
  "tag": "0040_typical_mole_man",
290
290
  "breakpoints": true
291
+ },
292
+ {
293
+ "idx": 41,
294
+ "version": "6",
295
+ "when": 1770857026437,
296
+ "tag": "0041_community_skill_sources",
297
+ "breakpoints": true
298
+ },
299
+ {
300
+ "idx": 42,
301
+ "version": "6",
302
+ "when": 1770939323627,
303
+ "tag": "0042_nice_flatman",
304
+ "breakpoints": true
305
+ },
306
+ {
307
+ "idx": 43,
308
+ "version": "6",
309
+ "when": 1770941755877,
310
+ "tag": "0043_majestic_starhawk",
311
+ "breakpoints": true
291
312
  }
292
313
  ]
293
314
  }
@@ -0,0 +1,3 @@
1
+ import type { DataSeeder, SeederContext } from '../services/data-seeder.service';
2
+ export declare function runSeedPreseedJeffallanClaudeSkills(ctx: SeederContext): Promise<void>;
3
+ export declare const seedPreseedJeffallanClaudeSkillsSeeder: DataSeeder;
@@ -0,0 +1,41 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.seedPreseedJeffallanClaudeSkillsSeeder = void 0;
4
+ exports.runSeedPreseedJeffallanClaudeSkills = runSeedPreseedJeffallanClaudeSkills;
5
+ const SEEDER_NAME = '0003_seed_preseed_jeffallan_claude_skills';
6
+ const SEEDER_VERSION = 1;
7
+ const DEFAULT_COMMUNITY_SOURCE = {
8
+ name: 'jeffallan',
9
+ repoOwner: 'Jeffallan',
10
+ repoName: 'claude-skills',
11
+ branch: 'main',
12
+ };
13
+ async function runSeedPreseedJeffallanClaudeSkills(ctx) {
14
+ const existing = await ctx.storage.getCommunitySkillSourceByName(DEFAULT_COMMUNITY_SOURCE.name);
15
+ if (existing) {
16
+ ctx.logger.info({
17
+ seederName: SEEDER_NAME,
18
+ seederVersion: SEEDER_VERSION,
19
+ created: 0,
20
+ skipped: 1,
21
+ existingSourceId: existing.id,
22
+ sourceName: existing.name,
23
+ }, 'Pre-seed jeffallan community source seeder completed');
24
+ return;
25
+ }
26
+ const created = await ctx.storage.createCommunitySkillSource(DEFAULT_COMMUNITY_SOURCE);
27
+ ctx.logger.info({
28
+ seederName: SEEDER_NAME,
29
+ seederVersion: SEEDER_VERSION,
30
+ created: 1,
31
+ skipped: 0,
32
+ sourceId: created.id,
33
+ sourceName: created.name,
34
+ }, 'Pre-seed jeffallan community source seeder completed');
35
+ }
36
+ exports.seedPreseedJeffallanClaudeSkillsSeeder = {
37
+ name: SEEDER_NAME,
38
+ version: SEEDER_VERSION,
39
+ run: runSeedPreseedJeffallanClaudeSkills,
40
+ };
41
+ //# sourceMappingURL=0003_seed_preseed_jeffallan_claude_skills.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"0003_seed_preseed_jeffallan_claude_skills.js","sourceRoot":"","sources":["../../../../src/modules/seeders/seeders/0003_seed_preseed_jeffallan_claude_skills.ts"],"names":[],"mappings":";;;AAaA,kFA6BC;AAvCD,MAAM,WAAW,GAAG,2CAA2C,CAAC;AAChE,MAAM,cAAc,GAAG,CAAC,CAAC;AAEzB,MAAM,wBAAwB,GAA+B;IAC3D,IAAI,EAAE,WAAW;IACjB,SAAS,EAAE,WAAW;IACtB,QAAQ,EAAE,eAAe;IACzB,MAAM,EAAE,MAAM;CACf,CAAC;AAEK,KAAK,UAAU,mCAAmC,CAAC,GAAkB;IAC1E,MAAM,QAAQ,GAAG,MAAM,GAAG,CAAC,OAAO,CAAC,6BAA6B,CAAC,wBAAwB,CAAC,IAAI,CAAC,CAAC;IAChG,IAAI,QAAQ,EAAE,CAAC;QACb,GAAG,CAAC,MAAM,CAAC,IAAI,CACb;YACE,UAAU,EAAE,WAAW;YACvB,aAAa,EAAE,cAAc;YAC7B,OAAO,EAAE,CAAC;YACV,OAAO,EAAE,CAAC;YACV,gBAAgB,EAAE,QAAQ,CAAC,EAAE;YAC7B,UAAU,EAAE,QAAQ,CAAC,IAAI;SAC1B,EACD,sDAAsD,CACvD,CAAC;QACF,OAAO;IACT,CAAC;IAED,MAAM,OAAO,GAAG,MAAM,GAAG,CAAC,OAAO,CAAC,0BAA0B,CAAC,wBAAwB,CAAC,CAAC;IACvF,GAAG,CAAC,MAAM,CAAC,IAAI,CACb;QACE,UAAU,EAAE,WAAW;QACvB,aAAa,EAAE,cAAc;QAC7B,OAAO,EAAE,CAAC;QACV,OAAO,EAAE,CAAC;QACV,QAAQ,EAAE,OAAO,CAAC,EAAE;QACpB,UAAU,EAAE,OAAO,CAAC,IAAI;KACzB,EACD,sDAAsD,CACvD,CAAC;AACJ,CAAC;AAEY,QAAA,sCAAsC,GAAe;IAChE,IAAI,EAAE,WAAW;IACjB,OAAO,EAAE,cAAc;IACvB,GAAG,EAAE,mCAAmC;CACzC,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { DataSeeder, SeederContext } from '../services/data-seeder.service';
2
+ export declare function runSeedDisableMicrosoftSourceDefault(ctx: SeederContext): Promise<void>;
3
+ export declare const seedDisableMicrosoftSourceDefaultSeeder: DataSeeder;
@@ -0,0 +1,48 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.seedDisableMicrosoftSourceDefaultSeeder = void 0;
4
+ exports.runSeedDisableMicrosoftSourceDefault = runSeedDisableMicrosoftSourceDefault;
5
+ const crypto_1 = require("crypto");
6
+ const sqlite_raw_1 = require("../../storage/db/sqlite-raw");
7
+ const SEEDER_NAME = '0004_seed_disable_microsoft_source_default';
8
+ const SEEDER_VERSION = 1;
9
+ const SETTINGS_KEY = 'skills.sources';
10
+ const DEFAULT_SOURCE_SETTINGS = {
11
+ microsoft: false,
12
+ };
13
+ async function runSeedDisableMicrosoftSourceDefault(ctx) {
14
+ const sqlite = (0, sqlite_raw_1.getRawSqliteClient)(ctx.db);
15
+ const existing = sqlite.prepare('SELECT key FROM settings WHERE key = ?').get(SETTINGS_KEY);
16
+ if (existing) {
17
+ ctx.logger.info({
18
+ seederName: SEEDER_NAME,
19
+ seederVersion: SEEDER_VERSION,
20
+ created: 0,
21
+ skipped: 1,
22
+ reason: 'skills.sources already exists',
23
+ }, 'Disable-microsoft-default source seeder completed');
24
+ return;
25
+ }
26
+ const now = new Date().toISOString();
27
+ sqlite
28
+ .prepare(`
29
+ INSERT INTO settings (id, key, value, created_at, updated_at)
30
+ VALUES (?, ?, ?, ?, ?)
31
+ ON CONFLICT(key) DO NOTHING
32
+ `)
33
+ .run((0, crypto_1.randomUUID)(), SETTINGS_KEY, JSON.stringify(DEFAULT_SOURCE_SETTINGS), now, now);
34
+ ctx.logger.info({
35
+ seederName: SEEDER_NAME,
36
+ seederVersion: SEEDER_VERSION,
37
+ created: 1,
38
+ skipped: 0,
39
+ key: SETTINGS_KEY,
40
+ value: DEFAULT_SOURCE_SETTINGS,
41
+ }, 'Disable-microsoft-default source seeder completed');
42
+ }
43
+ exports.seedDisableMicrosoftSourceDefaultSeeder = {
44
+ name: SEEDER_NAME,
45
+ version: SEEDER_VERSION,
46
+ run: runSeedDisableMicrosoftSourceDefault,
47
+ };
48
+ //# sourceMappingURL=0004_seed_disable_microsoft_source_default.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"0004_seed_disable_microsoft_source_default.js","sourceRoot":"","sources":["../../../../src/modules/seeders/seeders/0004_seed_disable_microsoft_source_default.ts"],"names":[],"mappings":";;;AAYA,oFA0CC;AAtDD,mCAAoC;AACpC,4DAAiE;AAGjE,MAAM,WAAW,GAAG,4CAA4C,CAAC;AACjE,MAAM,cAAc,GAAG,CAAC,CAAC;AACzB,MAAM,YAAY,GAAG,gBAAgB,CAAC;AAEtC,MAAM,uBAAuB,GAA4B;IACvD,SAAS,EAAE,KAAK;CACjB,CAAC;AAEK,KAAK,UAAU,oCAAoC,CAAC,GAAkB;IAC3E,MAAM,MAAM,GAAG,IAAA,+BAAkB,EAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAC1C,MAAM,QAAQ,GAAG,MAAM,CAAC,OAAO,CAAC,wCAAwC,CAAC,CAAC,GAAG,CAAC,YAAY,CAE7E,CAAC;IAEd,IAAI,QAAQ,EAAE,CAAC;QACb,GAAG,CAAC,MAAM,CAAC,IAAI,CACb;YACE,UAAU,EAAE,WAAW;YACvB,aAAa,EAAE,cAAc;YAC7B,OAAO,EAAE,CAAC;YACV,OAAO,EAAE,CAAC;YACV,MAAM,EAAE,+BAA+B;SACxC,EACD,mDAAmD,CACpD,CAAC;QACF,OAAO;IACT,CAAC;IAED,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IACrC,MAAM;SACH,OAAO,CACN;;;;OAIC,CACF;SACA,GAAG,CAAC,IAAA,mBAAU,GAAE,EAAE,YAAY,EAAE,IAAI,CAAC,SAAS,CAAC,uBAAuB,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;IAEtF,GAAG,CAAC,MAAM,CAAC,IAAI,CACb;QACE,UAAU,EAAE,WAAW;QACvB,aAAa,EAAE,cAAc;QAC7B,OAAO,EAAE,CAAC;QACV,OAAO,EAAE,CAAC;QACV,GAAG,EAAE,YAAY;QACjB,KAAK,EAAE,uBAAuB;KAC/B,EACD,mDAAmD,CACpD,CAAC;AACJ,CAAC;AAEY,QAAA,uCAAuC,GAAe;IACjE,IAAI,EAAE,WAAW;IACjB,OAAO,EAAE,cAAc;IACvB,GAAG,EAAE,oCAAoC;CAC1C,CAAC"}
@@ -22,11 +22,15 @@ const storage_interface_1 = require("../../storage/interfaces/storage.interface"
22
22
  const watchers_service_1 = require("../../watchers/services/watchers.service");
23
23
  const _0001_seed_compact_on_idle_watcher_1 = require("../seeders/0001_seed_compact_on_idle_watcher");
24
24
  const _0002_seed_replace_permission_mode_plan_1 = require("../seeders/0002_seed_replace_permission_mode_plan");
25
+ const _0003_seed_preseed_jeffallan_claude_skills_1 = require("../seeders/0003_seed_preseed_jeffallan_claude_skills");
26
+ const _0004_seed_disable_microsoft_source_default_1 = require("../seeders/0004_seed_disable_microsoft_source_default");
25
27
  exports.DATA_SEEDERS = 'DATA_SEEDERS';
26
28
  const JOURNAL_KEY = 'seeders.journal';
27
29
  exports.REGISTERED_DATA_SEEDERS = [
28
30
  _0001_seed_compact_on_idle_watcher_1.seedCompactOnIdleWatcherSeeder,
29
31
  _0002_seed_replace_permission_mode_plan_1.seedReplacePermissionModePlanSeeder,
32
+ _0003_seed_preseed_jeffallan_claude_skills_1.seedPreseedJeffallanClaudeSkillsSeeder,
33
+ _0004_seed_disable_microsoft_source_default_1.seedDisableMicrosoftSourceDefaultSeeder,
30
34
  ];
31
35
  function isSeederJournalEntry(value) {
32
36
  if (!value || typeof value !== 'object' || Array.isArray(value)) {
@@ -1 +1 @@
1
- {"version":3,"file":"data-seeder.service.js","sourceRoot":"","sources":["../../../../src/modules/seeders/services/data-seeder.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"data-seeder.service.js","sourceRoot":"","sources":["../../../../src/modules/seeders/services/data-seeder.service.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,2CAAkE;AAClE,mCAAoC;AAGpC,2DAA8D;AAC9D,8DAA6D;AAC7D,4DAAiE;AACjE,kFAAkG;AAClG,+EAA2E;AAC3E,qGAA8F;AAC9F,+GAAwG;AACxG,qHAA8G;AAC9G,uHAAgH;AAEnG,QAAA,YAAY,GAAG,cAAc,CAAC;AAC3C,MAAM,WAAW,GAAG,iBAAiB,CAAC;AAezB,QAAA,uBAAuB,GAAiB;IACnD,mEAA8B;IAC9B,6EAAmC;IACnC,mFAAsC;IACtC,qFAAuC;CACxC,CAAC;AASF,SAAS,oBAAoB,CAAC,KAAc;IAC1C,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QAChE,OAAO,KAAK,CAAC;IACf,CAAC;IAED,MAAM,MAAM,GAAG,KAAgC,CAAC;IAChD,OAAO,OAAO,MAAM,CAAC,OAAO,KAAK,QAAQ,IAAI,OAAO,MAAM,CAAC,UAAU,KAAK,QAAQ,CAAC;AACrF,CAAC;AAED,SAAS,eAAe,CAAC,KAAc;IACrC,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QAChE,OAAO,KAAK,CAAC;IACf,CAAC;IAED,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;QACzC,IAAI,CAAC,oBAAoB,CAAC,KAAK,CAAC,EAAE,CAAC;YACjC,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAGM,IAAM,iBAAiB,GAAvB,MAAM,iBAAiB;IAI5B,YAC2B,OAAwC,EAChD,eAAgC,EAC1B,EAA0C,EAC3C,OAAsC;QAHlB,YAAO,GAAP,OAAO,CAAgB;QAChD,oBAAe,GAAf,eAAe,CAAiB;QACT,OAAE,GAAF,EAAE,CAAuB;QAC1B,YAAO,GAAP,OAAO,CAAc;QAP7C,WAAM,GAAG,IAAA,qBAAY,EAAC,mBAAmB,CAAC,CAAC;QAS1D,IAAI,CAAC,MAAM,GAAG,IAAA,+BAAkB,EAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC5C,CAAC;IAED,KAAK,CAAC,YAAY;QAChB,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,iBAAiB,EAAE,CAAC;QACjC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,EAAE,wCAAwC,CAAC,CAAC;QACzE,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,iBAAiB;QAC7B,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC9B,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,iDAAiD,CAAC,CAAC;YACrE,OAAO;QACT,CAAC;QAED,MAAM,OAAO,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;QAEnC,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YAClC,MAAM,QAAQ,GAAG,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YACtC,IAAI,QAAQ,IAAI,QAAQ,CAAC,OAAO,KAAK,MAAM,CAAC,OAAO,EAAE,CAAC;gBACpD,IAAI,CAAC,MAAM,CAAC,KAAK,CACf,EAAE,UAAU,EAAE,MAAM,CAAC,IAAI,EAAE,aAAa,EAAE,MAAM,CAAC,OAAO,EAAE,EAC1D,oDAAoD,CACrD,CAAC;gBACF,SAAS;YACX,CAAC;YAED,MAAM,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC;gBACrC,UAAU,EAAE,MAAM,CAAC,IAAI;gBACvB,aAAa,EAAE,MAAM,CAAC,OAAO;aAC9B,CAAC,CAAC;YAEH,IAAI,CAAC;gBACH,MAAM,MAAM,CAAC,GAAG,CAAC;oBACf,OAAO,EAAE,IAAI,CAAC,OAAO;oBACrB,eAAe,EAAE,IAAI,CAAC,eAAe;oBACrC,EAAE,EAAE,IAAI,CAAC,EAAE;oBACX,MAAM,EAAE,YAAY;iBACrB,CAAC,CAAC;gBAEH,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG;oBACrB,OAAO,EAAE,MAAM,CAAC,OAAO;oBACvB,UAAU,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;iBACrC,CAAC;gBACF,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;gBAE7B,IAAI,CAAC,MAAM,CAAC,IAAI,CACd,EAAE,UAAU,EAAE,MAAM,CAAC,IAAI,EAAE,aAAa,EAAE,MAAM,CAAC,OAAO,EAAE,EAC1D,8BAA8B,CAC/B,CAAC;YACJ,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,IAAI,CAAC,MAAM,CAAC,KAAK,CACf,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,CAAC,IAAI,EAAE,aAAa,EAAE,MAAM,CAAC,OAAO,EAAE,EACjE,qDAAqD,CACtD,CAAC;YACJ,CAAC;QACH,CAAC;IACH,CAAC;IAEO,WAAW;QACjB,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,0CAA0C,CAAC,CAAC,GAAG,CAAC,WAAW,CAE9E,CAAC;QAEd,IAAI,CAAC,GAAG,IAAI,GAAG,CAAC,KAAK,KAAK,SAAS,IAAI,GAAG,CAAC,KAAK,KAAK,IAAI,EAAE,CAAC;YAC1D,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,OAAO,GAAG,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC;YACjF,IAAI,eAAe,CAAC,MAAM,CAAC,EAAE,CAAC;gBAC5B,OAAO,MAAM,CAAC;YAChB,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,EAAE,4DAA4D,CAAC,CAAC;QAC5F,CAAC;QAED,OAAO,EAAE,CAAC;IACZ,CAAC;IAEO,cAAc,CAAC,OAAsB;QAC3C,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QACrC,IAAI,CAAC,MAAM;aACR,OAAO,CACN;;;;;;OAMD,CACA;aACA,GAAG,CAAC,IAAA,mBAAU,GAAE,EAAE,WAAW,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;IACvE,CAAC;CACF,CAAA;AA1GY,8CAAiB;4BAAjB,iBAAiB;IAD7B,IAAA,mBAAU,GAAE;IAMR,WAAA,IAAA,eAAM,EAAC,mCAAe,CAAC,CAAA;IAEvB,WAAA,IAAA,eAAM,EAAC,2BAAa,CAAC,CAAA;IACrB,WAAA,IAAA,eAAM,EAAC,oBAAY,CAAC,CAAA;6CAFa,kCAAe;GANxC,iBAAiB,CA0G7B"}
@@ -0,0 +1,11 @@
1
+ import type { CommunitySkillSource } from '../../storage/models/domain.models';
2
+ import { GitHubSkillSourceBase } from './github-skill-source.base';
3
+ import type { SkillManifest, SkillSourceAdapter, SkillSourceSyncContext } from './skill-source.adapter';
4
+ export declare class CommunitySkillSourceAdapter extends GitHubSkillSourceBase implements SkillSourceAdapter {
5
+ constructor(source: CommunitySkillSource);
6
+ listSkills(): Promise<Map<string, SkillManifest>>;
7
+ createSyncContext(): Promise<SkillSourceSyncContext>;
8
+ private listSkillNamesFromExtractedRepo;
9
+ protected resolveSkillDirectory(extractedRepoRoot: string, skillName: string): Promise<string>;
10
+ private toSkillManifest;
11
+ }
@@ -0,0 +1,181 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.CommunitySkillSourceAdapter = void 0;
37
+ const node_path_1 = require("node:path");
38
+ const fs = __importStar(require("node:fs/promises"));
39
+ const error_types_1 = require("../../../common/errors/error-types");
40
+ const logger_1 = require("../../../common/logging/logger");
41
+ const github_skill_source_base_1 = require("./github-skill-source.base");
42
+ const logger = (0, logger_1.createLogger)('CommunitySkillSourceAdapter');
43
+ const SKILLS_DIRECTORY = 'skills';
44
+ class CommunitySkillSourceAdapter extends github_skill_source_base_1.GitHubSkillSourceBase {
45
+ constructor(source) {
46
+ super({
47
+ sourceName: source.name,
48
+ repoOwner: source.repoOwner,
49
+ repoName: source.repoName,
50
+ branch: source.branch,
51
+ });
52
+ }
53
+ async listSkills() {
54
+ const context = await this.createSyncContext();
55
+ try {
56
+ return new Map(context.manifests);
57
+ }
58
+ finally {
59
+ await context.dispose();
60
+ }
61
+ }
62
+ async createSyncContext() {
63
+ const repoContext = await this.prepareExtractedRepository();
64
+ const manifests = new Map();
65
+ let disposed = false;
66
+ const dispose = async () => {
67
+ if (disposed) {
68
+ return;
69
+ }
70
+ disposed = true;
71
+ await repoContext.dispose();
72
+ };
73
+ try {
74
+ const skillNames = await this.listSkillNamesFromExtractedRepo(repoContext.extractedRepoRoot);
75
+ for (const skillName of skillNames) {
76
+ try {
77
+ const skillDirectory = await this.resolveSkillDirectory(repoContext.extractedRepoRoot, skillName);
78
+ const parsedSkill = await this.parseSkillMarkdown(skillDirectory);
79
+ if (!parsedSkill) {
80
+ continue;
81
+ }
82
+ manifests.set(skillName, this.toSkillManifest(skillName, parsedSkill));
83
+ }
84
+ catch (error) {
85
+ logger.warn({
86
+ sourceName: this.sourceName,
87
+ skillName,
88
+ error: error instanceof Error ? error.message : String(error),
89
+ }, 'Failed processing community skill. Skipping.');
90
+ }
91
+ }
92
+ return {
93
+ manifests,
94
+ downloadSkill: async (skillName, targetPath) => this.downloadSkillFromExtractedRepo(skillName, targetPath, repoContext.extractedRepoRoot),
95
+ dispose,
96
+ };
97
+ }
98
+ catch (error) {
99
+ await dispose();
100
+ throw error;
101
+ }
102
+ }
103
+ async listSkillNamesFromExtractedRepo(extractedRepoRoot) {
104
+ const skillsRoot = (0, node_path_1.join)(extractedRepoRoot, SKILLS_DIRECTORY);
105
+ let entries;
106
+ try {
107
+ entries = await fs.readdir(skillsRoot, { withFileTypes: true });
108
+ }
109
+ catch (error) {
110
+ if (error.code === 'ENOENT') {
111
+ throw new error_types_1.StorageError('Community skills directory not found in repository archive.', {
112
+ sourceName: this.sourceName,
113
+ skillsRoot,
114
+ });
115
+ }
116
+ throw new error_types_1.StorageError('Failed reading community skills directory in archive.', {
117
+ sourceName: this.sourceName,
118
+ skillsRoot,
119
+ cause: error instanceof Error ? error.message : String(error),
120
+ });
121
+ }
122
+ return entries
123
+ .filter((entry) => entry.isDirectory() && !entry.name.startsWith('.'))
124
+ .map((entry) => entry.name)
125
+ .sort((left, right) => left.localeCompare(right));
126
+ }
127
+ async resolveSkillDirectory(extractedRepoRoot, skillName) {
128
+ const strictSkillsPath = (0, node_path_1.join)(extractedRepoRoot, SKILLS_DIRECTORY, skillName);
129
+ try {
130
+ const stats = await fs.stat(strictSkillsPath);
131
+ if (stats.isDirectory()) {
132
+ return strictSkillsPath;
133
+ }
134
+ }
135
+ catch (error) {
136
+ if (error.code !== 'ENOENT') {
137
+ throw new error_types_1.StorageError('Failed checking extracted community skill directory.', {
138
+ sourceName: this.sourceName,
139
+ skillName,
140
+ candidate: strictSkillsPath,
141
+ cause: error instanceof Error ? error.message : String(error),
142
+ });
143
+ }
144
+ }
145
+ throw new error_types_1.StorageError('Skill directory was not found in extracted repository tarball.', {
146
+ sourceName: this.sourceName,
147
+ skillName,
148
+ extractedRepoRoot,
149
+ candidate: strictSkillsPath,
150
+ });
151
+ }
152
+ toSkillManifest(skillName, parsedSkill) {
153
+ const frontmatter = parsedSkill.frontmatter;
154
+ const manifestName = this.pickString(frontmatter, ['name']) ?? skillName;
155
+ const displayName = this.pickString(frontmatter, ['displayName', 'display_name', 'title']);
156
+ const description = this.pickString(frontmatter, ['description', 'summary', 'shortDescription']) ??
157
+ `Skill instructions for ${skillName}`;
158
+ const shortDescription = this.pickString(frontmatter, [
159
+ 'shortDescription',
160
+ 'short_description',
161
+ 'summary',
162
+ ]);
163
+ const license = this.pickString(frontmatter, ['license']);
164
+ const compatibility = this.pickString(frontmatter, ['compatibility']);
165
+ const resources = this.pickStringArray(frontmatter, ['resources', 'references']);
166
+ return {
167
+ name: manifestName,
168
+ displayName,
169
+ description,
170
+ shortDescription,
171
+ license,
172
+ compatibility,
173
+ frontmatter,
174
+ instructionContent: parsedSkill.instructionContent,
175
+ resources,
176
+ sourceUrl: `${this.repoUrl}/tree/${encodeURIComponent(this.branch)}/${SKILLS_DIRECTORY}/${encodeURIComponent(skillName)}`,
177
+ };
178
+ }
179
+ }
180
+ exports.CommunitySkillSourceAdapter = CommunitySkillSourceAdapter;
181
+ //# sourceMappingURL=community-skill-source.adapter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"community-skill-source.adapter.js","sourceRoot":"","sources":["../../../../src/modules/skills/adapters/community-skill-source.adapter.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
+ import type { ParsedSkillMarkdown } from './skill-parsing.utils';
1
2
  export interface GitHubSkillSourceBaseConfig {
2
3
  sourceName?: string;
3
4
  repoOwner?: string;
@@ -8,10 +9,7 @@ export interface GitHubSkillSourceBaseConfig {
8
9
  storageRootDir?: string;
9
10
  githubToken?: string;
10
11
  }
11
- export interface ParsedSkillMarkdown {
12
- frontmatter: Record<string, unknown>;
13
- instructionContent: string;
14
- }
12
+ export type { ParsedSkillMarkdown } from './skill-parsing.utils';
15
13
  export interface ExtractedRepositoryContext {
16
14
  extractedRepoRoot: string;
17
15
  dispose(): Promise<void>;
@@ -34,7 +32,6 @@ export declare abstract class GitHubSkillSourceBase {
34
32
  protected validatePathSegment(segment: string, fieldName: string): string;
35
33
  protected pickString(frontmatter: Record<string, unknown>, keys: readonly string[]): string | undefined;
36
34
  protected pickStringArray(frontmatter: Record<string, unknown>, keys: readonly string[]): string[];
37
- protected toStringValue(value: unknown): string | undefined;
38
35
  protected resolveSkillDirectory(extractedRepoRoot: string, skillName: string): Promise<string>;
39
36
  protected prepareExtractedRepository(): Promise<ExtractedRepositoryContext>;
40
37
  protected downloadSkillFromExtractedRepo(skillName: string, targetPath: string, extractedRepoRoot: string): Promise<string>;
@@ -32,9 +32,6 @@ var __importStar = (this && this.__importStar) || (function () {
32
32
  return result;
33
33
  };
34
34
  })();
35
- var __importDefault = (this && this.__importDefault) || function (mod) {
36
- return (mod && mod.__esModule) ? mod : { "default": mod };
37
- };
38
35
  Object.defineProperty(exports, "__esModule", { value: true });
39
36
  exports.GitHubSkillSourceBase = void 0;
40
37
  const node_fs_1 = require("node:fs");
@@ -43,17 +40,15 @@ const node_os_1 = require("node:os");
43
40
  const node_path_1 = require("node:path");
44
41
  const node_stream_1 = require("node:stream");
45
42
  const promises_1 = require("node:stream/promises");
46
- const gray_matter_1 = __importDefault(require("gray-matter"));
47
43
  const tar = __importStar(require("tar"));
48
44
  const error_types_1 = require("../../../common/errors/error-types");
49
45
  const logger_1 = require("../../../common/logging/logger");
46
+ const skill_parsing_utils_1 = require("./skill-parsing.utils");
50
47
  const logger = (0, logger_1.createLogger)('GitHubSkillSourceBase');
51
48
  const DEFAULT_BRANCH = 'main';
52
49
  const DEFAULT_TIMEOUT_MS = 30_000;
53
50
  const DEFAULT_USER_AGENT = 'devchain-skills-sync';
54
51
  const DEFAULT_SKILLS_ROOT = (0, node_path_1.join)((0, node_os_1.homedir)(), '.devchain', 'skills');
55
- const CONTROL_CHAR_REGEX = /[\u0000-\u001f\u007f]/;
56
- const SAFE_SKILL_SEGMENT_REGEX = /^[A-Za-z0-9_-]+$/;
57
52
  class GitHubSkillSourceBase {
58
53
  constructor(config = {}) {
59
54
  this.sourceName = config.sourceName ?? 'unknown';
@@ -105,126 +100,62 @@ class GitHubSkillSourceBase {
105
100
  async parseSkillMarkdown(skillDirectory) {
106
101
  const safeSkillDirectory = (0, node_path_1.resolve)(skillDirectory);
107
102
  const skillMdPath = (0, node_path_1.join)(safeSkillDirectory, 'SKILL.md');
108
- let markdown;
109
103
  try {
110
- markdown = await fs.readFile(skillMdPath, 'utf-8');
104
+ return await (0, skill_parsing_utils_1.parseSkillMarkdown)(safeSkillDirectory, {
105
+ onMissingFile: ({ skillMdPath: missingSkillMdPath }) => {
106
+ logger.warn({ sourceName: this.sourceName, skillMdPath: missingSkillMdPath }, 'SKILL.md not found for skill');
107
+ },
108
+ onParseError: ({ skillMdPath: malformedSkillMdPath, error }) => {
109
+ logger.warn({
110
+ sourceName: this.sourceName,
111
+ skillMdPath: malformedSkillMdPath,
112
+ error: error instanceof Error ? error.message : String(error),
113
+ }, 'Failed to parse SKILL.md frontmatter for skill. Skipping malformed file.');
114
+ },
115
+ });
111
116
  }
112
117
  catch (error) {
113
- if (error.code === 'ENOENT') {
114
- logger.warn({ sourceName: this.sourceName, skillMdPath }, 'SKILL.md not found for skill');
115
- return null;
116
- }
117
118
  throw this.wrapStorageError('Failed reading SKILL.md for skill.', error, {
118
119
  sourceName: this.sourceName,
119
120
  skillMdPath,
120
121
  });
121
122
  }
122
- try {
123
- const parsed = (0, gray_matter_1.default)(markdown);
124
- const frontmatter = parsed.data && typeof parsed.data === 'object'
125
- ? parsed.data
126
- : {};
127
- return {
128
- frontmatter,
129
- instructionContent: parsed.content,
130
- };
131
- }
132
- catch (error) {
133
- logger.warn({
134
- sourceName: this.sourceName,
135
- skillMdPath,
136
- error: error instanceof Error ? error.message : String(error),
137
- }, 'Failed to parse SKILL.md frontmatter for skill. Skipping malformed file.');
138
- return null;
139
- }
140
123
  }
141
124
  getSkillStorageRoot() {
142
125
  return (0, node_path_1.resolve)(this.storageRootDir);
143
126
  }
144
127
  validatePathSegment(segment, fieldName) {
145
- const trimmed = segment.trim();
146
- if (!trimmed) {
147
- throw new error_types_1.ValidationError(`Invalid ${fieldName}: value cannot be empty.`, { fieldName });
148
- }
149
- if (trimmed.includes('..') ||
150
- trimmed.includes('/') ||
151
- trimmed.includes('\\') ||
152
- CONTROL_CHAR_REGEX.test(trimmed)) {
153
- throw new error_types_1.ValidationError(`Invalid ${fieldName}: path traversal or control characters are not allowed.`, { fieldName, segment: trimmed });
154
- }
155
- if (!SAFE_SKILL_SEGMENT_REGEX.test(trimmed)) {
156
- throw new error_types_1.ValidationError(`Invalid ${fieldName}: only alphanumeric characters, underscores, and hyphens are allowed.`, { fieldName, segment: trimmed });
157
- }
158
- return trimmed;
128
+ return (0, skill_parsing_utils_1.validatePathSegment)(segment, fieldName);
159
129
  }
160
130
  pickString(frontmatter, keys) {
161
- for (const key of keys) {
162
- const value = this.toStringValue(frontmatter[key]);
163
- if (value) {
164
- return value;
165
- }
166
- }
167
- return undefined;
131
+ return (0, skill_parsing_utils_1.pickString)(frontmatter, keys);
168
132
  }
169
133
  pickStringArray(frontmatter, keys) {
170
- for (const key of keys) {
171
- const value = frontmatter[key];
172
- if (!Array.isArray(value)) {
173
- continue;
174
- }
175
- const items = value
176
- .filter((item) => typeof item === 'string')
177
- .map((item) => item.trim())
178
- .filter((item) => item.length > 0);
179
- if (items.length > 0) {
180
- return items;
181
- }
182
- }
183
- return [];
184
- }
185
- toStringValue(value) {
186
- if (typeof value === 'string' && value.trim().length > 0) {
187
- return value.trim();
188
- }
189
- if (Array.isArray(value)) {
190
- const items = value
191
- .filter((item) => typeof item === 'string')
192
- .map((item) => item.trim())
193
- .filter((item) => item.length > 0);
194
- if (items.length > 0) {
195
- return items.join(', ');
196
- }
197
- }
198
- return undefined;
134
+ return (0, skill_parsing_utils_1.pickStringArray)(frontmatter, keys);
199
135
  }
200
136
  async resolveSkillDirectory(extractedRepoRoot, skillName) {
201
- const candidates = [
202
- (0, node_path_1.join)(extractedRepoRoot, skillName),
203
- (0, node_path_1.join)(extractedRepoRoot, 'skills', skillName),
204
- (0, node_path_1.join)(extractedRepoRoot, 'library', skillName),
205
- ];
206
- for (const candidate of candidates) {
207
- try {
208
- const stats = await fs.stat(candidate);
209
- if (stats.isDirectory()) {
210
- return candidate;
211
- }
212
- }
213
- catch (error) {
214
- if (error.code !== 'ENOENT') {
137
+ const safeExtractedRepoRoot = (0, node_path_1.resolve)(extractedRepoRoot);
138
+ try {
139
+ return await (0, skill_parsing_utils_1.resolveSkillDirectory)(safeExtractedRepoRoot, skillName, {
140
+ onCandidateError: ({ candidate, error }) => {
215
141
  throw this.wrapStorageError('Failed checking extracted skill directory.', error, {
216
142
  candidate,
217
143
  sourceName: this.sourceName,
218
144
  skillName,
219
145
  });
220
- }
146
+ },
147
+ });
148
+ }
149
+ catch (error) {
150
+ if (error instanceof skill_parsing_utils_1.SkillDirectoryNotFoundError) {
151
+ throw new error_types_1.StorageError('Skill directory was not found in extracted repository tarball.', {
152
+ sourceName: this.sourceName,
153
+ skillName,
154
+ extractedRepoRoot: safeExtractedRepoRoot,
155
+ });
221
156
  }
157
+ throw error;
222
158
  }
223
- throw new error_types_1.StorageError('Skill directory was not found in extracted repository tarball.', {
224
- sourceName: this.sourceName,
225
- skillName,
226
- extractedRepoRoot,
227
- });
228
159
  }
229
160
  async prepareExtractedRepository() {
230
161
  this.ensureRepoConfigured();
@@ -1 +1 @@
1
- {"version":3,"file":"github-skill-source.base.js","sourceRoot":"","sources":["../../../../src/modules/skills/adapters/github-skill-source.base.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"github-skill-source.base.js","sourceRoot":"","sources":["../../../../src/modules/skills/adapters/github-skill-source.base.ts"],"names":[],"mappings":"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"}