agent-skills-cli 1.0.9 → 1.1.1

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 (94) hide show
  1. package/README.md +110 -14
  2. package/dist/__tests__/git-auth.test.d.ts +11 -0
  3. package/dist/__tests__/git-auth.test.d.ts.map +1 -0
  4. package/dist/__tests__/git-auth.test.js +160 -0
  5. package/dist/__tests__/git-auth.test.js.map +1 -0
  6. package/dist/__tests__/skill-lock.test.d.ts +8 -0
  7. package/dist/__tests__/skill-lock.test.d.ts.map +1 -0
  8. package/dist/__tests__/skill-lock.test.js +104 -0
  9. package/dist/__tests__/skill-lock.test.js.map +1 -0
  10. package/dist/__tests__/skillsrc.test.d.ts +11 -0
  11. package/dist/__tests__/skillsrc.test.d.ts.map +1 -0
  12. package/dist/__tests__/skillsrc.test.js +185 -0
  13. package/dist/__tests__/skillsrc.test.js.map +1 -0
  14. package/dist/__tests__/source-parser.test.d.ts +16 -0
  15. package/dist/__tests__/source-parser.test.d.ts.map +1 -0
  16. package/dist/__tests__/source-parser.test.js +231 -0
  17. package/dist/__tests__/source-parser.test.js.map +1 -0
  18. package/dist/adapters/adapter.d.ts +51 -0
  19. package/dist/adapters/adapter.d.ts.map +1 -0
  20. package/dist/adapters/adapter.js +51 -0
  21. package/dist/adapters/adapter.js.map +1 -0
  22. package/dist/adapters/claude.d.ts +16 -0
  23. package/dist/adapters/claude.d.ts.map +1 -0
  24. package/dist/adapters/claude.js +30 -0
  25. package/dist/adapters/claude.js.map +1 -0
  26. package/dist/adapters/copilot.d.ts +16 -0
  27. package/dist/adapters/copilot.d.ts.map +1 -0
  28. package/dist/adapters/copilot.js +32 -0
  29. package/dist/adapters/copilot.js.map +1 -0
  30. package/dist/adapters/cursor.d.ts +17 -0
  31. package/dist/adapters/cursor.d.ts.map +1 -0
  32. package/dist/adapters/cursor.js +34 -0
  33. package/dist/adapters/cursor.js.map +1 -0
  34. package/dist/adapters/index.d.ts +11 -0
  35. package/dist/adapters/index.d.ts.map +1 -0
  36. package/dist/adapters/index.js +10 -0
  37. package/dist/adapters/index.js.map +1 -0
  38. package/dist/adapters/universal.d.ts +12 -0
  39. package/dist/adapters/universal.d.ts.map +1 -0
  40. package/dist/adapters/universal.js +16 -0
  41. package/dist/adapters/universal.js.map +1 -0
  42. package/dist/cli/agents.d.ts +11 -0
  43. package/dist/cli/agents.d.ts.map +1 -1
  44. package/dist/cli/agents.js +47 -0
  45. package/dist/cli/agents.js.map +1 -1
  46. package/dist/cli/commands/convert.d.ts.map +1 -1
  47. package/dist/cli/commands/convert.js +16 -65
  48. package/dist/cli/commands/convert.js.map +1 -1
  49. package/dist/cli/commands/export.d.ts.map +1 -1
  50. package/dist/cli/commands/export.js +15 -7
  51. package/dist/cli/commands/export.js.map +1 -1
  52. package/dist/cli/commands/install.d.ts +8 -0
  53. package/dist/cli/commands/install.d.ts.map +1 -1
  54. package/dist/cli/commands/install.js +203 -90
  55. package/dist/cli/commands/install.js.map +1 -1
  56. package/dist/cli/commands/score.d.ts +10 -0
  57. package/dist/cli/commands/score.d.ts.map +1 -0
  58. package/dist/cli/commands/score.js +91 -0
  59. package/dist/cli/commands/score.js.map +1 -0
  60. package/dist/cli/commands/show.d.ts.map +1 -1
  61. package/dist/cli/commands/show.js +8 -0
  62. package/dist/cli/commands/show.js.map +1 -1
  63. package/dist/cli/commands/submit-repo.d.ts +11 -0
  64. package/dist/cli/commands/submit-repo.d.ts.map +1 -0
  65. package/dist/cli/commands/submit-repo.js +133 -0
  66. package/dist/cli/commands/submit-repo.js.map +1 -0
  67. package/dist/cli/commands/submit.d.ts.map +1 -1
  68. package/dist/cli/commands/submit.js +10 -0
  69. package/dist/cli/commands/submit.js.map +1 -1
  70. package/dist/cli/index.js +4 -0
  71. package/dist/cli/index.js.map +1 -1
  72. package/dist/core/git-auth.d.ts +74 -0
  73. package/dist/core/git-auth.d.ts.map +1 -0
  74. package/dist/core/git-auth.js +299 -0
  75. package/dist/core/git-auth.js.map +1 -0
  76. package/dist/core/index.d.ts +6 -0
  77. package/dist/core/index.d.ts.map +1 -1
  78. package/dist/core/index.js +7 -1
  79. package/dist/core/index.js.map +1 -1
  80. package/dist/core/quality.d.ts +48 -0
  81. package/dist/core/quality.d.ts.map +1 -0
  82. package/dist/core/quality.js +241 -0
  83. package/dist/core/quality.js.map +1 -0
  84. package/dist/core/skill-lock.d.ts +1 -1
  85. package/dist/core/skill-lock.d.ts.map +1 -1
  86. package/dist/core/skillsrc.d.ts +65 -0
  87. package/dist/core/skillsrc.d.ts.map +1 -0
  88. package/dist/core/skillsrc.js +161 -0
  89. package/dist/core/skillsrc.js.map +1 -0
  90. package/dist/core/source-parser.d.ts +9 -1
  91. package/dist/core/source-parser.d.ts.map +1 -1
  92. package/dist/core/source-parser.js +85 -6
  93. package/dist/core/source-parser.js.map +1 -1
  94. package/package.json +9 -3
@@ -0,0 +1,133 @@
1
+ /**
2
+ * Submit-Repo Command
3
+ * Submit a GitHub repo link for marketplace indexing.
4
+ * We extract everything from the repo — user only provides the link.
5
+ */
6
+ import chalk from 'chalk';
7
+ import ora from 'ora';
8
+ /**
9
+ * Register the submit-repo command
10
+ */
11
+ export function registerSubmitRepoCommand(program) {
12
+ program
13
+ .command('submit-repo <repo>')
14
+ .description('Submit a GitHub repo to be indexed in the marketplace')
15
+ .action(async (repo) => {
16
+ try {
17
+ await submitRepoCommand(repo);
18
+ }
19
+ catch (err) {
20
+ console.error(chalk.red('Error:'), err.message);
21
+ process.exit(1);
22
+ }
23
+ });
24
+ }
25
+ // API endpoint
26
+ const SUBMIT_REPO_API = 'https://www.agentskills.in/api/repos/submit';
27
+ /**
28
+ * Run the submit-repo command
29
+ */
30
+ async function submitRepoCommand(repo) {
31
+ // Parse owner/repo from any format
32
+ const parts = repo
33
+ .replace(/https?:\/\/(www\.)?github\.com\//, '')
34
+ .replace(/\.git$/, '')
35
+ .replace(/\/$/, '')
36
+ .split('/');
37
+ if (parts.length !== 2 || !parts[0] || !parts[1]) {
38
+ console.error(chalk.red('Invalid repo. Use: owner/repo or a GitHub URL'));
39
+ console.log(chalk.dim(' Example: skills submit-repo facebook/react'));
40
+ process.exit(1);
41
+ }
42
+ const [owner, repoName] = parts;
43
+ console.log('');
44
+ console.log(chalk.bold('📤 Submit Skills Repository'));
45
+ console.log('');
46
+ // Step 1: Fetch repo info from GitHub
47
+ const spinner = ora('Fetching repo info from GitHub...').start();
48
+ let repoData;
49
+ try {
50
+ const res = await fetch(`https://api.github.com/repos/${owner}/${repoName}`, {
51
+ headers: { 'Accept': 'application/vnd.github.v3+json' },
52
+ });
53
+ if (!res.ok) {
54
+ spinner.fail(res.status === 404 ? 'Repository not found' : `GitHub API error: ${res.status}`);
55
+ process.exit(1);
56
+ }
57
+ repoData = await res.json();
58
+ spinner.succeed(`Found ${chalk.cyan(repoData.full_name)}`);
59
+ }
60
+ catch (err) {
61
+ spinner.fail('Could not reach GitHub API');
62
+ console.log(chalk.dim(` ${err.message}`));
63
+ process.exit(1);
64
+ }
65
+ // Step 2: Scan for SKILL.md files
66
+ const scanSpinner = ora('Scanning for skills...').start();
67
+ let skillPaths = [];
68
+ try {
69
+ const treeRes = await fetch(`https://api.github.com/repos/${owner}/${repoName}/git/trees/${repoData.default_branch}?recursive=1`, { headers: { 'Accept': 'application/vnd.github.v3+json' } });
70
+ if (treeRes.ok) {
71
+ const treeData = await treeRes.json();
72
+ skillPaths = (treeData.tree || [])
73
+ .filter((f) => f.type === 'blob' && f.path.endsWith('SKILL.md'))
74
+ .map((f) => f.path);
75
+ }
76
+ }
77
+ catch { /* non-critical */ }
78
+ if (skillPaths.length === 0) {
79
+ scanSpinner.warn('No SKILL.md files found — repo will still be submitted for review');
80
+ }
81
+ else {
82
+ scanSpinner.succeed(`Found ${chalk.bold(skillPaths.length)} skill(s)`);
83
+ for (const p of skillPaths.slice(0, 5)) {
84
+ console.log(chalk.dim(` ${p}`));
85
+ }
86
+ if (skillPaths.length > 5) {
87
+ console.log(chalk.dim(` ... and ${skillPaths.length - 5} more`));
88
+ }
89
+ }
90
+ // Step 3: Submit
91
+ const submitSpinner = ora('Submitting for indexing...').start();
92
+ try {
93
+ const response = await fetch(SUBMIT_REPO_API, {
94
+ method: 'POST',
95
+ headers: { 'Content-Type': 'application/json' },
96
+ body: JSON.stringify({
97
+ full_name: repoData.full_name,
98
+ html_url: repoData.html_url,
99
+ description: repoData.description || '',
100
+ stars: repoData.stargazers_count || 0,
101
+ language: repoData.language || '',
102
+ license: repoData.license?.spdx_id || '',
103
+ default_branch: repoData.default_branch,
104
+ skills_count: skillPaths.length,
105
+ skill_paths: skillPaths,
106
+ }),
107
+ });
108
+ if (response.ok) {
109
+ submitSpinner.succeed('Submitted!');
110
+ console.log('');
111
+ console.log(chalk.green('✨ Your repo has been submitted for indexing!'));
112
+ console.log(chalk.dim(' Skills will appear in the marketplace once processed.'));
113
+ }
114
+ else {
115
+ const data = await response.json().catch(() => ({}));
116
+ if (response.status === 409) {
117
+ submitSpinner.warn('Already submitted');
118
+ console.log(chalk.dim(` Status: ${data.status || 'pending'}`));
119
+ }
120
+ else {
121
+ submitSpinner.fail(data.error || `Failed (${response.status})`);
122
+ }
123
+ }
124
+ }
125
+ catch (err) {
126
+ submitSpinner.fail('Could not reach API');
127
+ console.log(chalk.dim(` ${err.message}`));
128
+ console.log(chalk.dim(' Submit via GitHub issue instead:'));
129
+ console.log(chalk.dim(` ${chalk.white('https://github.com/Karanjot786/agent-skills-cli/issues/new')}`));
130
+ }
131
+ console.log('');
132
+ }
133
+ //# sourceMappingURL=submit-repo.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"submit-repo.js","sourceRoot":"","sources":["../../../src/cli/commands/submit-repo.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"submit.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/submit.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAMpC,MAAM,WAAW,aAAa;IAC1B,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;CACjB;AAKD;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAc5D"}
1
+ {"version":3,"file":"submit.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/submit.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAOpC,MAAM,WAAW,aAAa;IAC1B,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;CACjB;AAKD;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAc5D"}
@@ -9,6 +9,7 @@ import { readFile, stat } from 'fs/promises';
9
9
  import { existsSync } from 'fs';
10
10
  import { resolve, join, basename } from 'path';
11
11
  import { loadSkill, validateMetadata, validateBody } from '../../core/index.js';
12
+ import { assessQuality, formatScoreBar, getScoreColor } from '../../core/quality.js';
12
13
  // Supabase API for submission
13
14
  const SUBMIT_API = 'https://www.agentskills.in/api/skills/submit';
14
15
  /**
@@ -87,6 +88,15 @@ async function submitCommand(targetPath, options) {
87
88
  }
88
89
  spinner.succeed('Skill validated');
89
90
  console.log('');
91
+ // Step 1.5: Quality score
92
+ const quality = await assessQuality(resolvedPath);
93
+ const qColor = getScoreColor(quality.overall);
94
+ console.log(` ${chalk.dim('Quality:')} ${chalk[qColor](formatScoreBar(quality.overall, 15))} ${chalk.bold[qColor](quality.grade)}`);
95
+ if (quality.overall < 50) {
96
+ console.log(chalk.yellow(` ⚠ Low quality score (${quality.overall}/100). Consider improving before submitting.`));
97
+ console.log(chalk.dim(` Run: skills score ${targetPath} --verbose`));
98
+ }
99
+ console.log('');
90
100
  // Step 2: Extract metadata
91
101
  const skillName = options.name || skill.metadata?.name || basename(resolvedPath);
92
102
  const description = skill.metadata?.description || '';
@@ -1 +1 @@
1
- {"version":3,"file":"submit.js","sourceRoot":"","sources":["../../../src/cli/commands/submit.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"submit.js","sourceRoot":"","sources":["../../../src/cli/commands/submit.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,GAAG,MAAM,KAAK,CAAC;AAEtB,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,UAAU,EAAE,MAAM,IAAI,CAAC;AAChC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,MAAM,CAAC;AAC/C,OAAO,EAAE,SAAS,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAChF,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAOrF,8BAA8B;AAC9B,MAAM,UAAU,GAAG,8CAA8C,CAAC;AAElE;;GAEG;AACH,MAAM,UAAU,qBAAqB,CAAC,OAAgB;IAClD,OAAO;SACF,OAAO,CAAC,eAAe,CAAC;SACxB,WAAW,CAAC,gDAAgD,CAAC;SAC7D,MAAM,CAAC,eAAe,EAAE,mDAAmD,CAAC;SAC5E,MAAM,CAAC,eAAe,EAAE,6CAA6C,CAAC;SACtE,MAAM,CAAC,KAAK,EAAE,IAAwB,EAAE,OAAsB,EAAE,EAAE;QAC/D,IAAI,CAAC;YACD,MAAM,aAAa,CAAC,IAAI,IAAI,GAAG,EAAE,OAAO,CAAC,CAAC;QAC9C,CAAC;QAAC,OAAO,GAAQ,EAAE,CAAC;YAChB,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;YAChD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACpB,CAAC;IACL,CAAC,CAAC,CAAC;AACX,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,aAAa,CAAC,UAAkB,EAAE,OAAsB;IACnE,MAAM,YAAY,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;IAEzC,qCAAqC;IACrC,MAAM,OAAO,GAAG,GAAG,CAAC,qBAAqB,CAAC,CAAC,KAAK,EAAE,CAAC;IAEnD,IAAI,WAAmB,CAAC;IACxB,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,CAAC;IAE1C,IAAI,QAAQ,CAAC,WAAW,EAAE,EAAE,CAAC;QACzB,WAAW,GAAG,IAAI,CAAC,YAAY,EAAE,UAAU,CAAC,CAAC;IACjD,CAAC;SAAM,CAAC;QACJ,WAAW,GAAG,YAAY,CAAC;IAC/B,CAAC;IAED,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;QAC3B,OAAO,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;QAClC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,gBAAgB,WAAW,EAAE,CAAC,CAAC,CAAC;QACtD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,sBAAsB,KAAK,CAAC,KAAK,CAAC,qBAAqB,CAAC,EAAE,CAAC,CAAC,CAAC;QACnF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACpB,CAAC;IAED,oBAAoB;IACpB,MAAM,YAAY,GAAG,MAAM,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;IAE1D,IAAI,KAAK,CAAC;IACV,IAAI,CAAC;QACD,KAAK,GAAG,MAAM,SAAS,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,OAAO,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC,CAAC;IACjG,CAAC;IAAC,OAAO,GAAQ,EAAE,CAAC;QAChB,OAAO,CAAC,IAAI,CAAC,yBAAyB,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;QACrD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACpB,CAAC;IAED,IAAI,CAAC,KAAK,EAAE,CAAC;QACT,OAAO,CAAC,IAAI,CAAC,qCAAqC,CAAC,CAAC;QACpD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACpB,CAAC;IAED,oBAAoB;IACpB,MAAM,UAAU,GAAG,gBAAgB,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;IACpD,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;QACpB,OAAO,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC;QACxC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAChB,KAAK,MAAM,KAAK,IAAI,UAAU,CAAC,MAAM,EAAE,CAAC;YACpC,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;QACxD,CAAC;QACD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAChB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,0CAA0C,CAAC,CAAC,CAAC;QACnE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACpB,CAAC;IAED,gBAAgB;IAChB,MAAM,UAAU,GAAG,YAAY,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAC5C,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;QACpB,OAAO,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC;QACxC,KAAK,MAAM,OAAO,IAAI,UAAU,CAAC,QAAQ,IAAI,EAAE,EAAE,CAAC;YAC9C,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC;QAC7D,CAAC;IACL,CAAC;IAED,OAAO,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC;IACnC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAEhB,0BAA0B;IAC1B,MAAM,OAAO,GAAG,MAAM,aAAa,CAAC,YAAY,CAAC,CAAC;IAClD,MAAM,MAAM,GAAG,aAAa,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IAC9C,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,QAAQ,KAAK,CAAC,MAAM,CAAC,CAAC,cAAc,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IACzI,IAAI,OAAO,CAAC,OAAO,GAAG,EAAE,EAAE,CAAC;QACvB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,0BAA0B,OAAO,CAAC,OAAO,8CAA8C,CAAC,CAAC,CAAC;QACnH,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,yBAAyB,UAAU,YAAY,CAAC,CAAC,CAAC;IAC5E,CAAC;IACD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAEhB,2BAA2B;IAC3B,MAAM,SAAS,GAAG,OAAO,CAAC,IAAI,IAAI,KAAK,CAAC,QAAQ,EAAE,IAAI,IAAI,QAAQ,CAAC,YAAY,CAAC,CAAC;IACjF,MAAM,WAAW,GAAG,KAAK,CAAC,QAAQ,EAAE,WAAW,IAAI,EAAE,CAAC;IACtD,MAAM,IAAI,GAAc,KAAK,CAAC,QAAQ,EAAE,QAAgB,EAAE,IAAI,IAAI,EAAE,CAAC;IACrE,MAAM,OAAO,GAAI,KAAK,CAAC,QAAQ,EAAE,QAAgB,EAAE,OAAO,IAAI,OAAO,CAAC;IAEtE,6BAA6B;IAC7B,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC,CAAC;IAClD,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,YAAY,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;IACxE,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,GAAG,CAAC,cAAc,CAAC,KAAK,WAAW,IAAI,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;IACxF,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,SAAS,OAAO,EAAE,CAAC,CAAC;IAC1D,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,YAAY,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;IAC7G,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,SAAS,YAAY,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,QAAQ,CAAC,CAAC;IACxF,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAEhB,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;QACjB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,sCAAsC,CAAC,CAAC,CAAC;QAClE,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,uCAAuC,CAAC,CAAC,CAAC;QAChE,OAAO;IACX,CAAC;IAED,gCAAgC;IAChC,MAAM,aAAa,GAAG,GAAG,CAAC,8BAA8B,CAAC,CAAC,KAAK,EAAE,CAAC;IAElE,IAAI,CAAC;QACD,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,UAAU,EAAE;YACrC,MAAM,EAAE,MAAM;YACd,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;YAC/C,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;gBACjB,IAAI,EAAE,SAAS;gBACf,WAAW;gBACX,IAAI;gBACJ,OAAO;gBACP,OAAO,EAAE,YAAY;gBACrB,MAAM,EAAE,YAAY;aACvB,CAAC;SACL,CAAC,CAAC;QAEH,IAAI,QAAQ,CAAC,EAAE,EAAE,CAAC;YACd,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAS,CAAC;YAC1C,aAAa,CAAC,OAAO,CAAC,yBAAyB,CAAC,CAAC;YACjD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAChB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,6CAA6C,CAAC,CAAC,CAAC;YACxE,IAAI,IAAI,EAAE,GAAG,EAAE,CAAC;gBACZ,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,cAAc,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;YAClE,CAAC;YACD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,0BAA0B,CAAC,CAAC,CAAC;QACvD,CAAC;aAAM,CAAC;YACJ,MAAM,SAAS,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;YACxC,aAAa,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;YACxC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,uBAAuB,QAAQ,CAAC,MAAM,IAAI,SAAS,EAAE,CAAC,CAAC,CAAC;YAC9E,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAChB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,sCAAsC,CAAC,CAAC,CAAC;YAC/D,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,8DAA8D,CAAC,CAAC,CAAC;QAC3F,CAAC;IACL,CAAC;IAAC,OAAO,GAAQ,EAAE,CAAC;QAChB,aAAa,CAAC,IAAI,CAAC,iCAAiC,CAAC,CAAC;QACtD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;QAC3C,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAChB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,uCAAuC,CAAC,CAAC,CAAC;QAChE,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,KAAK,CAAC,4DAA4D,CAAC,EAAE,CAAC,CAAC,CAAC;IAC7G,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;AACpB,CAAC"}
package/dist/cli/index.js CHANGED
@@ -45,6 +45,8 @@ import { registerBlueprintCommand } from './commands/blueprint.js';
45
45
  import { registerCiCommand } from './commands/ci.js';
46
46
  import { registerTrackCommand } from './commands/track.js';
47
47
  import { registerInsightCommand } from './commands/insight.js';
48
+ import { registerScoreCommand } from './commands/score.js';
49
+ import { registerSubmitRepoCommand } from './commands/submit-repo.js';
48
50
  import { registerMethodCommand } from './commands/method.js';
49
51
  // ─── Program setup ─────────────────────────────────────────────────────────
50
52
  const program = new Command();
@@ -239,5 +241,7 @@ registerCiCommand(program);
239
241
  registerTrackCommand(program);
240
242
  registerInsightCommand(program);
241
243
  registerMethodCommand(program);
244
+ registerScoreCommand(program);
245
+ registerSubmitRepoCommand(program);
242
246
  program.parse();
243
247
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,74 @@
1
+ /**
2
+ * Git Authentication Module
3
+ * Resolves credentials for private Git repositories across platforms
4
+ *
5
+ * Supports:
6
+ * - Environment variables (GIT_TOKEN, GITLAB_TOKEN, BITBUCKET_TOKEN, GH_TOKEN)
7
+ * - SSH key detection
8
+ * - Git credential helper
9
+ * - Interactive token prompt (fallback)
10
+ */
11
+ export type GitHost = 'github' | 'gitlab' | 'bitbucket' | 'custom';
12
+ export interface GitAuthResult {
13
+ /** The authentication method that was resolved */
14
+ method: 'token' | 'ssh' | 'credential-helper' | 'netrc' | 'none';
15
+ /** Token value if method is 'token' */
16
+ token?: string;
17
+ /** Whether SSH keys are available */
18
+ sshAvailable?: boolean;
19
+ /** Detected host type */
20
+ host: GitHost;
21
+ }
22
+ export interface CloneOptions {
23
+ /** Branch or tag to checkout */
24
+ ref?: string;
25
+ /** Clone depth (default: 1 for shallow) */
26
+ depth?: number;
27
+ /** Subpath within the repo to sparse-checkout */
28
+ subpath?: string;
29
+ /** Explicit auth token to use (overrides auto-detection) */
30
+ token?: string;
31
+ }
32
+ /**
33
+ * Detect the Git hosting provider from a URL
34
+ */
35
+ export declare function detectGitHost(url: string): GitHost;
36
+ /**
37
+ * Resolve Git authentication for a given URL
38
+ *
39
+ * Resolution priority:
40
+ * 1. Environment variables (host-specific)
41
+ * 2. SSH key availability (for SSH URLs)
42
+ * 3. Git credential helper
43
+ * 4. .netrc file
44
+ * 5. None (public repo or will fail)
45
+ */
46
+ export declare function resolveGitAuth(url: string, explicitToken?: string): Promise<GitAuthResult>;
47
+ /**
48
+ * Build an authenticated HTTPS URL by injecting a token
49
+ *
50
+ * Input: https://gitlab.com/team/repo.git + token "abc123"
51
+ * Output: https://oauth2:abc123@gitlab.com/team/repo.git
52
+ */
53
+ export declare function buildAuthenticatedUrl(url: string, token: string): string;
54
+ /**
55
+ * Convert an SSH URL to HTTPS URL for token-based auth
56
+ * git@github.com:owner/repo.git → https://github.com/owner/repo.git
57
+ */
58
+ export declare function sshToHttps(url: string): string;
59
+ /**
60
+ * Normalize a Git URL for cloning
61
+ * Ensures URL has .git suffix and proper protocol
62
+ */
63
+ export declare function normalizeGitUrl(url: string): string;
64
+ /**
65
+ * Clone a Git repository with automatic authentication
66
+ *
67
+ * Handles SSH, HTTPS+token, and public repos transparently.
68
+ */
69
+ export declare function cloneWithAuth(url: string, destDir: string, options?: CloneOptions): Promise<void>;
70
+ /**
71
+ * Get the display-safe version of a URL (strips tokens)
72
+ */
73
+ export declare function sanitizeUrl(url: string): string;
74
+ //# sourceMappingURL=git-auth.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"git-auth.d.ts","sourceRoot":"","sources":["../../src/core/git-auth.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAaH,MAAM,MAAM,OAAO,GAAG,QAAQ,GAAG,QAAQ,GAAG,WAAW,GAAG,QAAQ,CAAC;AAEnE,MAAM,WAAW,aAAa;IAC1B,kDAAkD;IAClD,MAAM,EAAE,OAAO,GAAG,KAAK,GAAG,mBAAmB,GAAG,OAAO,GAAG,MAAM,CAAC;IACjE,uCAAuC;IACvC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,qCAAqC;IACrC,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,yBAAyB;IACzB,IAAI,EAAE,OAAO,CAAC;CACjB;AAED,MAAM,WAAW,YAAY;IACzB,gCAAgC;IAChC,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,2CAA2C;IAC3C,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,iDAAiD;IACjD,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,4DAA4D;IAC5D,KAAK,CAAC,EAAE,MAAM,CAAC;CAClB;AAID;;GAEG;AACH,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAMlD;AA2HD;;;;;;;;;GASG;AACH,wBAAsB,cAAc,CAAC,GAAG,EAAE,MAAM,EAAE,aAAa,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC,CAsChG;AAID;;;;;GAKG;AACH,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAUxE;AAED;;;GAGG;AACH,wBAAgB,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAM9C;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAiBnD;AAID;;;;GAIG;AACH,wBAAsB,aAAa,CAC/B,GAAG,EAAE,MAAM,EACX,OAAO,EAAE,MAAM,EACf,OAAO,CAAC,EAAE,YAAY,GACvB,OAAO,CAAC,IAAI,CAAC,CAuDf;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAI/C"}
@@ -0,0 +1,299 @@
1
+ /**
2
+ * Git Authentication Module
3
+ * Resolves credentials for private Git repositories across platforms
4
+ *
5
+ * Supports:
6
+ * - Environment variables (GIT_TOKEN, GITLAB_TOKEN, BITBUCKET_TOKEN, GH_TOKEN)
7
+ * - SSH key detection
8
+ * - Git credential helper
9
+ * - Interactive token prompt (fallback)
10
+ */
11
+ import { exec } from 'child_process';
12
+ import { promisify } from 'util';
13
+ import { existsSync } from 'fs';
14
+ import { readFile } from 'fs/promises';
15
+ import { join } from 'path';
16
+ import { homedir } from 'os';
17
+ const execAsync = promisify(exec);
18
+ // ─── Host Detection ──────────────────────────────────────────────────
19
+ /**
20
+ * Detect the Git hosting provider from a URL
21
+ */
22
+ export function detectGitHost(url) {
23
+ const lower = url.toLowerCase();
24
+ if (lower.includes('github.com') || lower.includes('github'))
25
+ return 'github';
26
+ if (lower.includes('gitlab.com') || lower.includes('gitlab'))
27
+ return 'gitlab';
28
+ if (lower.includes('bitbucket.org') || lower.includes('bitbucket'))
29
+ return 'bitbucket';
30
+ return 'custom';
31
+ }
32
+ // ─── Token Resolution ────────────────────────────────────────────────
33
+ /**
34
+ * Map of environment variables to check for each host type
35
+ */
36
+ const HOST_ENV_VARS = {
37
+ github: ['GH_TOKEN', 'GITHUB_TOKEN', 'GIT_TOKEN'],
38
+ gitlab: ['GITLAB_TOKEN', 'GL_TOKEN', 'GIT_TOKEN'],
39
+ bitbucket: ['BITBUCKET_TOKEN', 'BB_TOKEN', 'GIT_TOKEN'],
40
+ custom: ['GIT_TOKEN', 'GITLAB_TOKEN', 'GH_TOKEN'],
41
+ };
42
+ /**
43
+ * Try to resolve a token from environment variables
44
+ */
45
+ function resolveTokenFromEnv(host) {
46
+ const vars = HOST_ENV_VARS[host];
47
+ for (const envVar of vars) {
48
+ const value = process.env[envVar];
49
+ if (value && value.trim()) {
50
+ return value.trim();
51
+ }
52
+ }
53
+ return undefined;
54
+ }
55
+ /**
56
+ * Check if SSH keys are available via ssh-agent
57
+ */
58
+ async function checkSshAvailable() {
59
+ try {
60
+ const { stdout } = await execAsync('ssh-add -l', { timeout: 5000 });
61
+ // ssh-add -l returns identities if any are loaded
62
+ return !stdout.includes('no identities');
63
+ }
64
+ catch {
65
+ // Also check if SSH key files exist
66
+ const sshDir = join(homedir(), '.ssh');
67
+ return (existsSync(join(sshDir, 'id_rsa')) ||
68
+ existsSync(join(sshDir, 'id_ed25519')) ||
69
+ existsSync(join(sshDir, 'id_ecdsa')));
70
+ }
71
+ }
72
+ /**
73
+ * Try to resolve a token from Git credential helper
74
+ */
75
+ async function resolveFromCredentialHelper(hostname) {
76
+ try {
77
+ // Check if a credential helper is configured
78
+ const { stdout: helper } = await execAsync('git config credential.helper', { timeout: 3000 });
79
+ if (!helper.trim())
80
+ return undefined;
81
+ // Try to get credentials using a script that writes to stdin and reads stdout
82
+ const { stdout } = await execAsync(`printf 'protocol=https\nhost=${hostname}\n\n' | git credential fill`, {
83
+ timeout: 3000,
84
+ env: {
85
+ ...process.env,
86
+ GIT_TERMINAL_PROMPT: '0',
87
+ },
88
+ });
89
+ const passwordMatch = stdout.match(/password=(.+)/);
90
+ if (passwordMatch) {
91
+ return passwordMatch[1].trim();
92
+ }
93
+ }
94
+ catch {
95
+ // Credential helper not available or failed
96
+ }
97
+ return undefined;
98
+ }
99
+ /**
100
+ * Try to resolve credentials from .netrc file
101
+ */
102
+ async function resolveFromNetrc(hostname) {
103
+ const netrcPath = join(homedir(), process.platform === 'win32' ? '_netrc' : '.netrc');
104
+ if (!existsSync(netrcPath))
105
+ return undefined;
106
+ try {
107
+ const content = await readFile(netrcPath, 'utf-8');
108
+ // Simple .netrc parser — find machine entry for this host
109
+ const machineRegex = new RegExp(`machine\\s+${hostname.replace('.', '\\.')}[\\s\\S]*?password\\s+(\\S+)`, 'i');
110
+ const match = content.match(machineRegex);
111
+ if (match)
112
+ return match[1];
113
+ }
114
+ catch {
115
+ // .netrc not readable
116
+ }
117
+ return undefined;
118
+ }
119
+ // ─── Main Auth Resolution ────────────────────────────────────────────
120
+ /**
121
+ * Extract hostname from a Git URL
122
+ */
123
+ function extractHostname(url) {
124
+ // SSH format: git@hostname:path
125
+ const sshMatch = url.match(/^git@([^:]+):/);
126
+ if (sshMatch)
127
+ return sshMatch[1];
128
+ // HTTPS format
129
+ try {
130
+ const parsed = new URL(url);
131
+ return parsed.hostname;
132
+ }
133
+ catch {
134
+ // Try extracting from path-like URLs
135
+ const match = url.match(/^https?:\/\/([^/:]+)/);
136
+ if (match)
137
+ return match[1];
138
+ }
139
+ return url;
140
+ }
141
+ /**
142
+ * Resolve Git authentication for a given URL
143
+ *
144
+ * Resolution priority:
145
+ * 1. Environment variables (host-specific)
146
+ * 2. SSH key availability (for SSH URLs)
147
+ * 3. Git credential helper
148
+ * 4. .netrc file
149
+ * 5. None (public repo or will fail)
150
+ */
151
+ export async function resolveGitAuth(url, explicitToken) {
152
+ const host = detectGitHost(url);
153
+ const hostname = extractHostname(url);
154
+ // Explicit token takes priority
155
+ if (explicitToken) {
156
+ return { method: 'token', token: explicitToken, host };
157
+ }
158
+ // 1. Environment variables
159
+ const envToken = resolveTokenFromEnv(host);
160
+ if (envToken) {
161
+ return { method: 'token', token: envToken, host };
162
+ }
163
+ // 2. SSH availability (for SSH URLs)
164
+ const isSshUrl = url.startsWith('git@') || url.includes('ssh://');
165
+ if (isSshUrl) {
166
+ const sshAvailable = await checkSshAvailable();
167
+ if (sshAvailable) {
168
+ return { method: 'ssh', sshAvailable: true, host };
169
+ }
170
+ }
171
+ // 3. Git credential helper
172
+ const credToken = await resolveFromCredentialHelper(hostname);
173
+ if (credToken) {
174
+ return { method: 'credential-helper', token: credToken, host };
175
+ }
176
+ // 4. .netrc
177
+ const netrcToken = await resolveFromNetrc(hostname);
178
+ if (netrcToken) {
179
+ return { method: 'netrc', token: netrcToken, host };
180
+ }
181
+ // 5. No auth found — will attempt without authentication
182
+ return { method: 'none', host };
183
+ }
184
+ // ─── URL Manipulation ────────────────────────────────────────────────
185
+ /**
186
+ * Build an authenticated HTTPS URL by injecting a token
187
+ *
188
+ * Input: https://gitlab.com/team/repo.git + token "abc123"
189
+ * Output: https://oauth2:abc123@gitlab.com/team/repo.git
190
+ */
191
+ export function buildAuthenticatedUrl(url, token) {
192
+ try {
193
+ const parsed = new URL(url);
194
+ parsed.username = 'oauth2';
195
+ parsed.password = token;
196
+ return parsed.toString();
197
+ }
198
+ catch {
199
+ // Fallback: inject after protocol
200
+ return url.replace(/^(https?:\/\/)/, `$1oauth2:${token}@`);
201
+ }
202
+ }
203
+ /**
204
+ * Convert an SSH URL to HTTPS URL for token-based auth
205
+ * git@github.com:owner/repo.git → https://github.com/owner/repo.git
206
+ */
207
+ export function sshToHttps(url) {
208
+ const match = url.match(/^git@([^:]+):(.+?)(?:\.git)?$/);
209
+ if (match) {
210
+ return `https://${match[1]}/${match[2]}.git`;
211
+ }
212
+ return url;
213
+ }
214
+ /**
215
+ * Normalize a Git URL for cloning
216
+ * Ensures URL has .git suffix and proper protocol
217
+ */
218
+ export function normalizeGitUrl(url) {
219
+ // Already an SSH URL — leave as-is
220
+ if (url.startsWith('git@') || url.startsWith('ssh://')) {
221
+ return url;
222
+ }
223
+ // Ensure HTTPS prefix
224
+ if (!url.startsWith('http://') && !url.startsWith('https://')) {
225
+ url = `https://${url}`;
226
+ }
227
+ // Ensure .git suffix
228
+ if (!url.endsWith('.git')) {
229
+ url = `${url}.git`;
230
+ }
231
+ return url;
232
+ }
233
+ // ─── Clone with Auth ─────────────────────────────────────────────────
234
+ /**
235
+ * Clone a Git repository with automatic authentication
236
+ *
237
+ * Handles SSH, HTTPS+token, and public repos transparently.
238
+ */
239
+ export async function cloneWithAuth(url, destDir, options) {
240
+ const { ref, depth = 1, token } = options || {};
241
+ // Resolve authentication
242
+ const auth = await resolveGitAuth(url, token);
243
+ // Build the clone URL
244
+ let cloneUrl;
245
+ if (auth.method === 'ssh' || (auth.method === 'none' && url.startsWith('git@'))) {
246
+ // Use SSH URL directly
247
+ cloneUrl = url;
248
+ }
249
+ else if (auth.token) {
250
+ // Convert SSH to HTTPS if needed, then inject token
251
+ const httpsUrl = url.startsWith('git@') ? sshToHttps(url) : normalizeGitUrl(url);
252
+ cloneUrl = buildAuthenticatedUrl(httpsUrl, auth.token);
253
+ }
254
+ else {
255
+ // No auth — try public access
256
+ cloneUrl = normalizeGitUrl(url);
257
+ }
258
+ // Build clone command
259
+ const args = ['git', 'clone'];
260
+ if (depth)
261
+ args.push('--depth', String(depth));
262
+ if (ref)
263
+ args.push('--branch', ref);
264
+ args.push(cloneUrl, '.');
265
+ try {
266
+ await execAsync(args.join(' '), {
267
+ cwd: destDir,
268
+ timeout: 60000, // 60s timeout
269
+ env: {
270
+ ...process.env,
271
+ // Suppress interactive prompts in CI
272
+ GIT_TERMINAL_PROMPT: '0',
273
+ },
274
+ });
275
+ }
276
+ catch (err) {
277
+ // Clean error message (strip token from output)
278
+ const message = (err.stderr || err.message || 'Unknown error')
279
+ .replace(/oauth2:[^@]+@/g, 'oauth2:***@')
280
+ .trim();
281
+ if (message.includes('Authentication failed') || message.includes('403') || message.includes('401')) {
282
+ const host = detectGitHost(url);
283
+ const envVars = HOST_ENV_VARS[host].join(' or ');
284
+ throw new Error(`Authentication failed for ${url}\n` +
285
+ `Set ${envVars} environment variable, or use --token flag.\n` +
286
+ `For SSH, ensure your key is added: ssh-add ~/.ssh/id_ed25519`);
287
+ }
288
+ throw new Error(`Git clone failed: ${message}`);
289
+ }
290
+ }
291
+ /**
292
+ * Get the display-safe version of a URL (strips tokens)
293
+ */
294
+ export function sanitizeUrl(url) {
295
+ return url
296
+ .replace(/oauth2:[^@]+@/g, 'oauth2:***@')
297
+ .replace(/(https?:\/\/)[^:]+:[^@]+@/g, '$1***:***@');
298
+ }
299
+ //# sourceMappingURL=git-auth.js.map