@vibe-agent-toolkit/cli 0.1.24 → 0.1.25-rc.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.
- package/dist/commands/claude/marketplace/changelog-utils.d.ts +17 -5
- package/dist/commands/claude/marketplace/changelog-utils.d.ts.map +1 -1
- package/dist/commands/claude/marketplace/changelog-utils.js +35 -6
- package/dist/commands/claude/marketplace/changelog-utils.js.map +1 -1
- package/dist/commands/claude/marketplace/git-publish.d.ts.map +1 -1
- package/dist/commands/claude/marketplace/git-publish.js +3 -2
- package/dist/commands/claude/marketplace/git-publish.js.map +1 -1
- package/dist/commands/claude/marketplace/publish-tree.d.ts +0 -1
- package/dist/commands/claude/marketplace/publish-tree.d.ts.map +1 -1
- package/dist/commands/claude/marketplace/publish-tree.js +15 -10
- package/dist/commands/claude/marketplace/publish-tree.js.map +1 -1
- package/dist/commands/claude/marketplace/publish.d.ts.map +1 -1
- package/dist/commands/claude/marketplace/publish.js +12 -9
- package/dist/commands/claude/marketplace/publish.js.map +1 -1
- package/dist/utils/url-redact.d.ts +29 -0
- package/dist/utils/url-redact.d.ts.map +1 -0
- package/dist/utils/url-redact.js +43 -0
- package/dist/utils/url-redact.js.map +1 -0
- package/package.json +11 -11
|
@@ -1,8 +1,11 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Changelog parsing
|
|
2
|
+
* Changelog parsing utilities for marketplace publish.
|
|
3
3
|
*
|
|
4
4
|
* Follows Keep a Changelog format: https://keepachangelog.com/
|
|
5
|
-
*
|
|
5
|
+
*
|
|
6
|
+
* Used by publish-tree.ts to extract release-note content for the publish commit body.
|
|
7
|
+
* VAT does NOT modify the user's CHANGELOG.md file — the published copy is byte-identical
|
|
8
|
+
* to the source. These helpers only extract content for the commit message.
|
|
6
9
|
*/
|
|
7
10
|
/**
|
|
8
11
|
* Extract the content of the [Unreleased] section from a changelog string.
|
|
@@ -11,10 +14,19 @@
|
|
|
11
14
|
*/
|
|
12
15
|
export declare function parseUnreleasedSection(changelog: string): string;
|
|
13
16
|
/**
|
|
14
|
-
*
|
|
15
|
-
*
|
|
17
|
+
* Extract the content of a specific stamped version section (e.g. `## [1.2.0] - 2026-04-09`).
|
|
18
|
+
*
|
|
19
|
+
* Supports the "pre-stamped" workflow: a repo that promotes `[Unreleased]` to `[X.Y.Z]`
|
|
20
|
+
* in its release commit before tagging, leaving `[Unreleased]` empty per the Keep a
|
|
21
|
+
* Changelog canonical post-release state.
|
|
22
|
+
*
|
|
23
|
+
* Matches headings of the form `## [<version>]` with any trailing content (date, etc.)
|
|
24
|
+
* on the same line. Requires an exact version match — `1.2` will NOT match `[1.2.0]`.
|
|
25
|
+
*
|
|
26
|
+
* Returns the trimmed content between the matching heading and the next `## [` version
|
|
27
|
+
* heading (or EOF). Returns empty string if the version section does not exist.
|
|
16
28
|
*/
|
|
17
|
-
export declare function
|
|
29
|
+
export declare function parseVersionSection(changelog: string, version: string): string;
|
|
18
30
|
/**
|
|
19
31
|
* Read a changelog file from disk.
|
|
20
32
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"changelog-utils.d.ts","sourceRoot":"","sources":["../../../../src/commands/claude/marketplace/changelog-utils.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"changelog-utils.d.ts","sourceRoot":"","sources":["../../../../src/commands/claude/marketplace/changelog-utils.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAiBH;;;;GAIG;AACH,wBAAgB,sBAAsB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAehE;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,mBAAmB,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAkB9E;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAIvE"}
|
|
@@ -1,8 +1,11 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Changelog parsing
|
|
2
|
+
* Changelog parsing utilities for marketplace publish.
|
|
3
3
|
*
|
|
4
4
|
* Follows Keep a Changelog format: https://keepachangelog.com/
|
|
5
|
-
*
|
|
5
|
+
*
|
|
6
|
+
* Used by publish-tree.ts to extract release-note content for the publish commit body.
|
|
7
|
+
* VAT does NOT modify the user's CHANGELOG.md file — the published copy is byte-identical
|
|
8
|
+
* to the source. These helpers only extract content for the commit message.
|
|
6
9
|
*/
|
|
7
10
|
import { readFileSync } from 'node:fs';
|
|
8
11
|
import { safePath } from '@vibe-agent-toolkit/utils';
|
|
@@ -10,6 +13,10 @@ import { safePath } from '@vibe-agent-toolkit/utils';
|
|
|
10
13
|
* Regex to match the [Unreleased] heading (case-insensitive).
|
|
11
14
|
*/
|
|
12
15
|
const UNRELEASED_HEADING_RE = /^## \[unreleased\]\s*$/im;
|
|
16
|
+
/**
|
|
17
|
+
* Regex to match any stamped version heading (e.g. `## [1.2.0]` or `## [1.2.0-rc.1]`).
|
|
18
|
+
* Used to find where a section ends (= where the next version heading begins).
|
|
19
|
+
*/
|
|
13
20
|
const VERSION_HEADING_RE = /^## \[\d+\.\d+/m;
|
|
14
21
|
/**
|
|
15
22
|
* Extract the content of the [Unreleased] section from a changelog string.
|
|
@@ -30,11 +37,33 @@ export function parseUnreleasedSection(changelog) {
|
|
|
30
37
|
return content.trimEnd();
|
|
31
38
|
}
|
|
32
39
|
/**
|
|
33
|
-
*
|
|
34
|
-
*
|
|
40
|
+
* Extract the content of a specific stamped version section (e.g. `## [1.2.0] - 2026-04-09`).
|
|
41
|
+
*
|
|
42
|
+
* Supports the "pre-stamped" workflow: a repo that promotes `[Unreleased]` to `[X.Y.Z]`
|
|
43
|
+
* in its release commit before tagging, leaving `[Unreleased]` empty per the Keep a
|
|
44
|
+
* Changelog canonical post-release state.
|
|
45
|
+
*
|
|
46
|
+
* Matches headings of the form `## [<version>]` with any trailing content (date, etc.)
|
|
47
|
+
* on the same line. Requires an exact version match — `1.2` will NOT match `[1.2.0]`.
|
|
48
|
+
*
|
|
49
|
+
* Returns the trimmed content between the matching heading and the next `## [` version
|
|
50
|
+
* heading (or EOF). Returns empty string if the version section does not exist.
|
|
35
51
|
*/
|
|
36
|
-
export function
|
|
37
|
-
|
|
52
|
+
export function parseVersionSection(changelog, version) {
|
|
53
|
+
// Escape regex metacharacters in the version string (dots, hyphens, plus signs cover semver).
|
|
54
|
+
const escaped = version.replaceAll(/[.+-]/g, String.raw `\$&`);
|
|
55
|
+
// `## [<version>]` followed by any trailing content on the line (typically ` - date`).
|
|
56
|
+
// eslint-disable-next-line security/detect-non-literal-regexp -- input escaped above
|
|
57
|
+
const heading = new RegExp(String.raw `^## \[${escaped}\][^\n]*$`, 'm');
|
|
58
|
+
const match = heading.exec(changelog);
|
|
59
|
+
if (!match) {
|
|
60
|
+
return '';
|
|
61
|
+
}
|
|
62
|
+
const startIndex = match.index + match[0].length;
|
|
63
|
+
const rest = changelog.slice(startIndex);
|
|
64
|
+
const nextVersionMatch = VERSION_HEADING_RE.exec(rest);
|
|
65
|
+
const content = nextVersionMatch ? rest.slice(0, nextVersionMatch.index) : rest;
|
|
66
|
+
return content.trim();
|
|
38
67
|
}
|
|
39
68
|
/**
|
|
40
69
|
* Read a changelog file from disk.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"changelog-utils.js","sourceRoot":"","sources":["../../../../src/commands/claude/marketplace/changelog-utils.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"changelog-utils.js","sourceRoot":"","sources":["../../../../src/commands/claude/marketplace/changelog-utils.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAEvC,OAAO,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAC;AAErD;;GAEG;AACH,MAAM,qBAAqB,GAAG,0BAA0B,CAAC;AAEzD;;;GAGG;AACH,MAAM,kBAAkB,GAAG,iBAAiB,CAAC;AAE7C;;;;GAIG;AACH,MAAM,UAAU,sBAAsB,CAAC,SAAiB;IACtD,MAAM,eAAe,GAAG,qBAAqB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IAC9D,IAAI,CAAC,eAAe,EAAE,CAAC;QACrB,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,MAAM,UAAU,GAAG,eAAe,CAAC,KAAK,GAAG,eAAe,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;IACrE,MAAM,IAAI,GAAG,SAAS,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;IAEzC,MAAM,gBAAgB,GAAG,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACvD,MAAM,OAAO,GAAG,gBAAgB;QAC9B,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,gBAAgB,CAAC,KAAK,CAAC;QACvC,CAAC,CAAC,IAAI,CAAC;IAET,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;AAC3B,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,mBAAmB,CAAC,SAAiB,EAAE,OAAe;IACpE,8FAA8F;IAC9F,MAAM,OAAO,GAAG,OAAO,CAAC,UAAU,CAAC,QAAQ,EAAE,MAAM,CAAC,GAAG,CAAA,KAAK,CAAC,CAAC;IAC9D,uFAAuF;IACvF,qFAAqF;IACrF,MAAM,OAAO,GAAG,IAAI,MAAM,CAAC,MAAM,CAAC,GAAG,CAAA,SAAS,OAAO,WAAW,EAAE,GAAG,CAAC,CAAC;IACvE,MAAM,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACtC,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,MAAM,UAAU,GAAG,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;IACjD,MAAM,IAAI,GAAG,SAAS,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;IAEzC,MAAM,gBAAgB,GAAG,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACvD,MAAM,OAAO,GAAG,gBAAgB,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,gBAAgB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAEhF,OAAO,OAAO,CAAC,IAAI,EAAE,CAAC;AACxB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,aAAa,CAAC,QAAgB,EAAE,OAAe;IAC7D,MAAM,QAAQ,GAAG,QAAQ,CAAC,OAAO,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;IACrD,iGAAiG;IACjG,OAAO,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;AACzC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"git-publish.d.ts","sourceRoot":"","sources":["../../../../src/commands/claude/marketplace/git-publish.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAQH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"git-publish.d.ts","sourceRoot":"","sources":["../../../../src/commands/claude/marketplace/git-publish.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAQH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAGvD,MAAM,WAAW,cAAc;IAC7B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,iBAAiB;IAChC,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,aAAa,EAAE,MAAM,CAAC;IACtB,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,EAAE,OAAO,CAAC;IAChB,MAAM,EAAE,OAAO,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CACjC,OAAO,EAAE,MAAM,EACf,cAAc,EAAE,MAAM,EACtB,QAAQ,CAAC,EAAE,cAAc,GACxB,MAAM,CAeR;AAiGD;;;;;;;;;GASG;AACH,wBAAsB,kBAAkB,CAAC,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,IAAI,CAAC,CAqDlF"}
|
|
@@ -7,6 +7,7 @@
|
|
|
7
7
|
import { spawnSync } from 'node:child_process';
|
|
8
8
|
import { cpSync, mkdtempSync, rmSync } from 'node:fs';
|
|
9
9
|
import { normalizedTmpdir, safePath } from '@vibe-agent-toolkit/utils';
|
|
10
|
+
import { redactUrlCredentials } from '../../../utils/url-redact.js';
|
|
10
11
|
/**
|
|
11
12
|
* Format a commit message for marketplace publish.
|
|
12
13
|
*/
|
|
@@ -98,7 +99,7 @@ function deliverCommit(tmpRepo, cwd, options, remoteUrl) {
|
|
|
98
99
|
pushArgs.splice(1, 0, '--force');
|
|
99
100
|
}
|
|
100
101
|
git(pushArgs, { cwd: tmpRepo });
|
|
101
|
-
logger.info(` Pushed to ${remoteUrl} branch ${branch}`);
|
|
102
|
+
logger.info(` Pushed to ${redactUrlCredentials(remoteUrl)} branch ${branch}`);
|
|
102
103
|
}
|
|
103
104
|
/**
|
|
104
105
|
* Publish the composed tree to a git branch.
|
|
@@ -114,7 +115,7 @@ export async function publishToGitBranch(options) {
|
|
|
114
115
|
const { publishDir, branch, commitMessage, force, dryRun, logger } = options;
|
|
115
116
|
const cwd = process.cwd();
|
|
116
117
|
const remoteUrl = resolveRemoteUrl(options.remote, cwd);
|
|
117
|
-
logger.info(` Remote: ${remoteUrl}`);
|
|
118
|
+
logger.info(` Remote: ${redactUrlCredentials(remoteUrl)}`);
|
|
118
119
|
logger.info(` Branch: ${branch}`);
|
|
119
120
|
const tmpRepo = mkdtempSync(safePath.join(normalizedTmpdir(), 'vat-marketplace-publish-'));
|
|
120
121
|
logger.debug(` Staging repo: ${tmpRepo}`);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"git-publish.js","sourceRoot":"","sources":["../../../../src/commands/claude/marketplace/git-publish.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAC/C,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAGtD,OAAO,EAAE,gBAAgB,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAC;
|
|
1
|
+
{"version":3,"file":"git-publish.js","sourceRoot":"","sources":["../../../../src/commands/claude/marketplace/git-publish.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"publish-tree.d.ts","sourceRoot":"","sources":["../../../../src/commands/claude/marketplace/publish-tree.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;
|
|
1
|
+
{"version":3,"file":"publish-tree.d.ts","sourceRoot":"","sources":["../../../../src/commands/claude/marketplace/publish-tree.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAcH,MAAM,WAAW,gBAAgB;IAC/B,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,aAAa;IAC5B,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,MAAM,cAAc,GACtB;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,GAClD;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,CAAC;AAEvC,MAAM,WAAW,cAAc;IAC7B,eAAe,EAAE,MAAM,CAAC;IACxB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,gBAAgB,CAAC;IAC7B,MAAM,CAAC,EAAE,aAAa,CAAC;IACvB,OAAO,CAAC,EAAE,cAAc,CAAC;CAC1B;AAED,MAAM,WAAW,aAAa;IAC5B,OAAO,EAAE,MAAM,CAAC;IAChB,cAAc,EAAE,MAAM,CAAC;IACvB,KAAK,EAAE,MAAM,EAAE,CAAC;CACjB;AAED,wBAAsB,kBAAkB,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,aAAa,CAAC,CAwExF"}
|
|
@@ -8,10 +8,10 @@
|
|
|
8
8
|
import { existsSync, readFileSync } from 'node:fs';
|
|
9
9
|
import { cp, writeFile } from 'node:fs/promises';
|
|
10
10
|
import { safePath } from '@vibe-agent-toolkit/utils';
|
|
11
|
-
import { parseUnreleasedSection, readChangelog,
|
|
11
|
+
import { parseUnreleasedSection, parseVersionSection, readChangelog, } from './changelog-utils.js';
|
|
12
12
|
import { generateLicenseText, readLicenseFile } from './license-utils.js';
|
|
13
13
|
export async function composePublishTree(options) {
|
|
14
|
-
const { marketplaceName, configDir, outputDir, version
|
|
14
|
+
const { marketplaceName, configDir, outputDir, version } = options;
|
|
15
15
|
const files = [];
|
|
16
16
|
let changelogDelta = '';
|
|
17
17
|
// 1. Verify build output exists
|
|
@@ -23,18 +23,23 @@ export async function composePublishTree(options) {
|
|
|
23
23
|
// 2. Copy marketplace artifacts to output
|
|
24
24
|
await cp(buildDir, outputDir, { recursive: true });
|
|
25
25
|
files.push('.claude-plugin/marketplace.json', 'plugins/');
|
|
26
|
-
// 3. Process changelog
|
|
26
|
+
// 3. Process changelog — VAT copies the source file byte-for-byte into the publish tree.
|
|
27
|
+
// We only extract a release-note string for the commit body (changelogDelta).
|
|
28
|
+
// Accept both Keep a Changelog workflows:
|
|
29
|
+
// (B) pre-stamped `## [version]` section — preferred when present, and
|
|
30
|
+
// (A) non-empty `## [Unreleased]` — fallback.
|
|
31
|
+
// Error if both are empty.
|
|
27
32
|
if (options.changelog) {
|
|
28
33
|
const rawChangelog = readChangelog(options.changelog.sourcePath, configDir);
|
|
29
|
-
const
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
34
|
+
const stampedSection = parseVersionSection(rawChangelog, version);
|
|
35
|
+
const unreleasedSection = parseUnreleasedSection(rawChangelog).trim();
|
|
36
|
+
if (stampedSection === '' && unreleasedSection === '') {
|
|
37
|
+
throw new Error(`Changelog "${options.changelog.sourcePath}" has neither a non-empty [Unreleased] ` +
|
|
38
|
+
`section nor a [${version}] section. Document the release before publishing.`);
|
|
33
39
|
}
|
|
34
|
-
changelogDelta =
|
|
35
|
-
const stamped = stampChangelog(rawChangelog, version, date);
|
|
40
|
+
changelogDelta = stampedSection === '' ? unreleasedSection : stampedSection;
|
|
36
41
|
// eslint-disable-next-line security/detect-non-literal-fs-filename -- path constructed from validated config
|
|
37
|
-
await writeFile(safePath.join(outputDir, 'CHANGELOG.md'),
|
|
42
|
+
await writeFile(safePath.join(outputDir, 'CHANGELOG.md'), rawChangelog);
|
|
38
43
|
files.push('CHANGELOG.md');
|
|
39
44
|
}
|
|
40
45
|
// 4. Process readme
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"publish-tree.js","sourceRoot":"","sources":["../../../../src/commands/claude/marketplace/publish-tree.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACnD,OAAO,EAAE,EAAE,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAEjD,OAAO,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAC;AAErD,OAAO,
|
|
1
|
+
{"version":3,"file":"publish-tree.js","sourceRoot":"","sources":["../../../../src/commands/claude/marketplace/publish-tree.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"publish.d.ts","sourceRoot":"","sources":["../../../../src/commands/claude/marketplace/publish.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAOH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"publish.d.ts","sourceRoot":"","sources":["../../../../src/commands/claude/marketplace/publish.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAOH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAYpC,MAAM,WAAW,yBAAyB;IACxC,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAUD,wBAAgB,+BAA+B,IAAI,OAAO,CA4CzD"}
|
|
@@ -11,6 +11,7 @@ import { Command } from 'commander';
|
|
|
11
11
|
import { handleCommandError } from '../../../utils/command-error.js';
|
|
12
12
|
import { createLogger } from '../../../utils/logger.js';
|
|
13
13
|
import { writeYamlOutput } from '../../../utils/output.js';
|
|
14
|
+
import { redactUrlCredentials } from '../../../utils/url-redact.js';
|
|
14
15
|
import { loadClaudeProjectConfig } from '../claude-config.js';
|
|
15
16
|
import { createCommitMessage, publishToGitBranch } from './git-publish.js';
|
|
16
17
|
import { isFilePath, isSpdxIdentifier } from './license-utils.js';
|
|
@@ -33,7 +34,11 @@ Description:
|
|
|
33
34
|
|
|
34
35
|
Composes:
|
|
35
36
|
- Marketplace artifacts from dist/.claude/plugins/marketplaces/
|
|
36
|
-
- CHANGELOG.md
|
|
37
|
+
- CHANGELOG.md — copied BYTE-FOR-BYTE from the source. Release notes
|
|
38
|
+
for the commit body are extracted from either a pre-stamped
|
|
39
|
+
[version] section matching package.json, or (as a fallback) a
|
|
40
|
+
non-empty [Unreleased] section. Publish fails if neither is
|
|
41
|
+
present. VAT never mutates CHANGELOG.md.
|
|
37
42
|
- README.md
|
|
38
43
|
- LICENSE (SPDX shortcut or file)
|
|
39
44
|
|
|
@@ -45,7 +50,7 @@ Output:
|
|
|
45
50
|
|
|
46
51
|
Exit Codes:
|
|
47
52
|
0 - Published successfully (or dry-run completed)
|
|
48
|
-
1 - Publish error (missing build,
|
|
53
|
+
1 - Publish error (missing build, changelog missing release notes for version)
|
|
49
54
|
2 - System error
|
|
50
55
|
|
|
51
56
|
Example:
|
|
@@ -90,13 +95,12 @@ function resolveLicenseOptions(licenseValue, ownerName) {
|
|
|
90
95
|
/**
|
|
91
96
|
* Build ComposeOptions for a single marketplace entry.
|
|
92
97
|
*/
|
|
93
|
-
function buildComposeOptions(mpName, configDir, version,
|
|
98
|
+
function buildComposeOptions(mpName, configDir, version, publishConfig, licenseOpts) {
|
|
94
99
|
const opts = {
|
|
95
100
|
marketplaceName: mpName,
|
|
96
101
|
configDir,
|
|
97
102
|
outputDir: mkdtempSync(safePath.join(normalizedTmpdir(), `vat-publish-tree-${mpName}-`)),
|
|
98
103
|
version,
|
|
99
|
-
date,
|
|
100
104
|
};
|
|
101
105
|
if (publishConfig.changelog) {
|
|
102
106
|
opts.changelog = { sourcePath: publishConfig.changelog };
|
|
@@ -113,14 +117,14 @@ function buildComposeOptions(mpName, configDir, version, date, publishConfig, li
|
|
|
113
117
|
* Publish a single marketplace and return the result.
|
|
114
118
|
*/
|
|
115
119
|
async function publishOneMarketplace(ctx) {
|
|
116
|
-
const { mpName, mpConfig, publishConfig, configDir, version,
|
|
120
|
+
const { mpName, mpConfig, publishConfig, configDir, version, options, logger } = ctx;
|
|
117
121
|
const branch = options.branch ?? publishConfig.branch ?? 'claude-marketplace';
|
|
118
122
|
const remote = publishConfig.remote ?? 'origin';
|
|
119
123
|
logger.info(`Publishing marketplace "${mpName}" v${version}`);
|
|
120
124
|
const licenseOpts = publishConfig.license
|
|
121
125
|
? resolveLicenseOptions(publishConfig.license, mpConfig.owner.name)
|
|
122
126
|
: undefined;
|
|
123
|
-
const composeOpts = buildComposeOptions(mpName, configDir, version,
|
|
127
|
+
const composeOpts = buildComposeOptions(mpName, configDir, version, publishConfig, licenseOpts);
|
|
124
128
|
const composeResult = await composePublishTree(composeOpts);
|
|
125
129
|
// Resolve source repo for commit metadata
|
|
126
130
|
const sourceRepo = typeof publishConfig.sourceRepo === 'string'
|
|
@@ -128,7 +132,7 @@ async function publishOneMarketplace(ctx) {
|
|
|
128
132
|
: undefined;
|
|
129
133
|
const commitMessage = createCommitMessage(composeResult.version, composeResult.changelogDelta, sourceRepo ? { sourceRepo } : undefined);
|
|
130
134
|
if (options.dryRun) {
|
|
131
|
-
logger.info(`[dry-run] Would publish to ${remote}/${branch}`);
|
|
135
|
+
logger.info(`[dry-run] Would publish to ${redactUrlCredentials(remote)}/${branch}`);
|
|
132
136
|
logger.info(`[dry-run] Version: ${version}`);
|
|
133
137
|
logger.info(`[dry-run] Files: ${composeResult.files.join(', ')}`);
|
|
134
138
|
}
|
|
@@ -162,7 +166,6 @@ async function marketplacePublishCommand(options) {
|
|
|
162
166
|
throw new Error('No marketplaces defined in config. Add a claude.marketplaces section to vibe-agent-toolkit.config.yaml.');
|
|
163
167
|
}
|
|
164
168
|
const version = readProjectVersion(configDir);
|
|
165
|
-
const today = new Date().toISOString().slice(0, 10);
|
|
166
169
|
const results = [];
|
|
167
170
|
for (const [mpName, mpConfig] of Object.entries(claudeConfig.marketplaces)) {
|
|
168
171
|
if (options.marketplace && options.marketplace !== mpName) {
|
|
@@ -173,7 +176,7 @@ async function marketplacePublishCommand(options) {
|
|
|
173
176
|
continue;
|
|
174
177
|
}
|
|
175
178
|
const result = await publishOneMarketplace({
|
|
176
|
-
mpName, mpConfig, publishConfig: mpConfig.publish, configDir, version,
|
|
179
|
+
mpName, mpConfig, publishConfig: mpConfig.publish, configDir, version, options, logger,
|
|
177
180
|
});
|
|
178
181
|
results.push(result);
|
|
179
182
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"publish.js","sourceRoot":"","sources":["../../../../src/commands/claude/marketplace/publish.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAIpD,OAAO,EAAE,gBAAgB,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAC;AACvE,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC,OAAO,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAC;AACrE,OAAO,EAAE,YAAY,EAAe,MAAM,0BAA0B,CAAC;AACrE,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAC3D,OAAO,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAC;AAE9D,OAAO,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAC3E,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAClE,OAAO,EAAE,kBAAkB,EAA4C,MAAM,mBAAmB,CAAC;AAmBjG,MAAM,UAAU,+BAA+B;IAC7C,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,SAAS,CAAC,CAAC;IAEvC,OAAO;SACJ,WAAW,CAAC,2CAA2C,CAAC;SACxD,MAAM,CAAC,WAAW,EAAE,8CAA8C,CAAC;SACnE,MAAM,CAAC,WAAW,EAAE,iDAAiD,CAAC;SACtE,MAAM,CAAC,iBAAiB,EAAE,yBAAyB,CAAC;SACpD,MAAM,CAAC,SAAS,EAAE,wCAAwC,CAAC;SAC3D,MAAM,CAAC,sBAAsB,EAAE,mCAAmC,CAAC;SACnE,MAAM,CAAC,SAAS,EAAE,sBAAsB,CAAC;SACzC,MAAM,CAAC,yBAAyB,CAAC;SACjC,WAAW,CAAC,OAAO,EAAE
|
|
1
|
+
{"version":3,"file":"publish.js","sourceRoot":"","sources":["../../../../src/commands/claude/marketplace/publish.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* URL credential redaction for safe logging.
|
|
3
|
+
*
|
|
4
|
+
* Git remote URLs in VAT may carry embedded credentials — either because the
|
|
5
|
+
* user configured a URL with userinfo, or because `resolveRemoteUrl()` injects
|
|
6
|
+
* a CI token (e.g., `GH_TOKEN`) into HTTPS GitHub URLs for push authentication.
|
|
7
|
+
* Those URLs must never reach stdout, stderr, or log files in raw form.
|
|
8
|
+
*
|
|
9
|
+
* Use `redactUrlCredentials()` on any URL immediately before logging it.
|
|
10
|
+
* The tokenized URL can still be passed to child `git` processes — only the
|
|
11
|
+
* logged copy is redacted.
|
|
12
|
+
*/
|
|
13
|
+
/**
|
|
14
|
+
* Strip username and password from a URL string for safe logging.
|
|
15
|
+
*
|
|
16
|
+
* - URLs with userinfo (`https://user:pass@host/path`) → userinfo removed.
|
|
17
|
+
* - URLs without userinfo → returned unchanged.
|
|
18
|
+
* - Non-URL strings (short remote names like `origin`, SSH-style
|
|
19
|
+
* `git@github.com:owner/repo.git`, malformed input) → returned unchanged.
|
|
20
|
+
*
|
|
21
|
+
* This uses the standard `URL` constructor. SSH git URLs (`git@host:path`)
|
|
22
|
+
* are not RFC 3986 URLs and will not parse — they pass through unchanged,
|
|
23
|
+
* which is safe because they carry no URL-format userinfo anyway.
|
|
24
|
+
*
|
|
25
|
+
* @param url A URL string or short remote name.
|
|
26
|
+
* @returns The input with any URL-format credentials removed.
|
|
27
|
+
*/
|
|
28
|
+
export declare function redactUrlCredentials(url: string): string;
|
|
29
|
+
//# sourceMappingURL=url-redact.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"url-redact.d.ts","sourceRoot":"","sources":["../../src/utils/url-redact.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAexD"}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* URL credential redaction for safe logging.
|
|
3
|
+
*
|
|
4
|
+
* Git remote URLs in VAT may carry embedded credentials — either because the
|
|
5
|
+
* user configured a URL with userinfo, or because `resolveRemoteUrl()` injects
|
|
6
|
+
* a CI token (e.g., `GH_TOKEN`) into HTTPS GitHub URLs for push authentication.
|
|
7
|
+
* Those URLs must never reach stdout, stderr, or log files in raw form.
|
|
8
|
+
*
|
|
9
|
+
* Use `redactUrlCredentials()` on any URL immediately before logging it.
|
|
10
|
+
* The tokenized URL can still be passed to child `git` processes — only the
|
|
11
|
+
* logged copy is redacted.
|
|
12
|
+
*/
|
|
13
|
+
/**
|
|
14
|
+
* Strip username and password from a URL string for safe logging.
|
|
15
|
+
*
|
|
16
|
+
* - URLs with userinfo (`https://user:pass@host/path`) → userinfo removed.
|
|
17
|
+
* - URLs without userinfo → returned unchanged.
|
|
18
|
+
* - Non-URL strings (short remote names like `origin`, SSH-style
|
|
19
|
+
* `git@github.com:owner/repo.git`, malformed input) → returned unchanged.
|
|
20
|
+
*
|
|
21
|
+
* This uses the standard `URL` constructor. SSH git URLs (`git@host:path`)
|
|
22
|
+
* are not RFC 3986 URLs and will not parse — they pass through unchanged,
|
|
23
|
+
* which is safe because they carry no URL-format userinfo anyway.
|
|
24
|
+
*
|
|
25
|
+
* @param url A URL string or short remote name.
|
|
26
|
+
* @returns The input with any URL-format credentials removed.
|
|
27
|
+
*/
|
|
28
|
+
export function redactUrlCredentials(url) {
|
|
29
|
+
let parsed;
|
|
30
|
+
try {
|
|
31
|
+
parsed = new URL(url);
|
|
32
|
+
}
|
|
33
|
+
catch {
|
|
34
|
+
return url;
|
|
35
|
+
}
|
|
36
|
+
if (parsed.username === '' && parsed.password === '') {
|
|
37
|
+
return url;
|
|
38
|
+
}
|
|
39
|
+
parsed.username = '';
|
|
40
|
+
parsed.password = '';
|
|
41
|
+
return parsed.toString();
|
|
42
|
+
}
|
|
43
|
+
//# sourceMappingURL=url-redact.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"url-redact.js","sourceRoot":"","sources":["../../src/utils/url-redact.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,oBAAoB,CAAC,GAAW;IAC9C,IAAI,MAAW,CAAC;IAChB,IAAI,CAAC;QACH,MAAM,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC;IACxB,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,GAAG,CAAC;IACb,CAAC;IAED,IAAI,MAAM,CAAC,QAAQ,KAAK,EAAE,IAAI,MAAM,CAAC,QAAQ,KAAK,EAAE,EAAE,CAAC;QACrD,OAAO,GAAG,CAAC;IACb,CAAC;IAED,MAAM,CAAC,QAAQ,GAAG,EAAE,CAAC;IACrB,MAAM,CAAC,QAAQ,GAAG,EAAE,CAAC;IACrB,OAAO,MAAM,CAAC,QAAQ,EAAE,CAAC;AAC3B,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@vibe-agent-toolkit/cli",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.25-rc.2",
|
|
4
4
|
"description": "Command-line interface for vibe-agent-toolkit",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"bin": {
|
|
@@ -41,16 +41,16 @@
|
|
|
41
41
|
"//dependencies-note": "DO NOT add example agent packages or adopter packages here. Adopter packages (like vat-development-agents) depend on the CLI binary at build time — declaring them as deps creates a circular build dependency. They are built in a second turbo pass via package#task overrides in turbo.json.",
|
|
42
42
|
"dependencies": {
|
|
43
43
|
"@anthropic-ai/sdk": "^0.71.2",
|
|
44
|
-
"@vibe-agent-toolkit/agent-config": "0.1.
|
|
45
|
-
"@vibe-agent-toolkit/agent-schema": "0.1.
|
|
46
|
-
"@vibe-agent-toolkit/agent-skills": "0.1.
|
|
47
|
-
"@vibe-agent-toolkit/claude-marketplace": "0.1.
|
|
48
|
-
"@vibe-agent-toolkit/discovery": "0.1.
|
|
49
|
-
"@vibe-agent-toolkit/gateway-mcp": "0.1.
|
|
50
|
-
"@vibe-agent-toolkit/rag": "0.1.
|
|
51
|
-
"@vibe-agent-toolkit/rag-lancedb": "0.1.
|
|
52
|
-
"@vibe-agent-toolkit/resources": "0.1.
|
|
53
|
-
"@vibe-agent-toolkit/utils": "0.1.
|
|
44
|
+
"@vibe-agent-toolkit/agent-config": "0.1.25-rc.2",
|
|
45
|
+
"@vibe-agent-toolkit/agent-schema": "0.1.25-rc.2",
|
|
46
|
+
"@vibe-agent-toolkit/agent-skills": "0.1.25-rc.2",
|
|
47
|
+
"@vibe-agent-toolkit/claude-marketplace": "0.1.25-rc.2",
|
|
48
|
+
"@vibe-agent-toolkit/discovery": "0.1.25-rc.2",
|
|
49
|
+
"@vibe-agent-toolkit/gateway-mcp": "0.1.25-rc.2",
|
|
50
|
+
"@vibe-agent-toolkit/rag": "0.1.25-rc.2",
|
|
51
|
+
"@vibe-agent-toolkit/rag-lancedb": "0.1.25-rc.2",
|
|
52
|
+
"@vibe-agent-toolkit/resources": "0.1.25-rc.2",
|
|
53
|
+
"@vibe-agent-toolkit/utils": "0.1.25-rc.2",
|
|
54
54
|
"adm-zip": "^0.5.16",
|
|
55
55
|
"commander": "^12.1.0",
|
|
56
56
|
"js-yaml": "^4.1.0",
|