@bitflower/va-mcp 1.0.0 → 1.0.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/README.md +5 -9
- package/dist/index.js +35 -4
- package/package.json +8 -4
package/README.md
CHANGED
|
@@ -61,9 +61,8 @@ grep -qxF '.claude/settings.local.json' .gitignore || echo '.claude/settings.loc
|
|
|
61
61
|
|
|
62
62
|
The check is deliberately conservative: it recognizes only an exact-path or
|
|
63
63
|
directory-prefix entry — glob patterns (e.g. `.claude/*`), `!`-negation lines,
|
|
64
|
-
and nested `.gitignore` files are **not** evaluated.
|
|
65
|
-
|
|
66
|
-
semantics. The check is skipped for non-git directories. In a monorepo, put
|
|
64
|
+
and nested `.gitignore` files are **not** evaluated. The check is skipped for
|
|
65
|
+
non-git directories. In a monorepo, put
|
|
67
66
|
the entry in the **project-local** `.gitignore` (the one in the target
|
|
68
67
|
directory), not the repo-root `.gitignore` — the installer reads only the
|
|
69
68
|
target directory's file.
|
|
@@ -82,9 +81,6 @@ without outbound network access (beyond `npx` fetching the package itself).
|
|
|
82
81
|
release.
|
|
83
82
|
- **Bearer token:** your API key is passed only to the `claude` CLI and is
|
|
84
83
|
never written to any file the installer creates.
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
See **[documentation/mcp-installer-guide.md](../../documentation/mcp-installer-guide.md)**
|
|
89
|
-
for prerequisites in depth, the data-flow and bearer-exposure warnings,
|
|
90
|
-
verification steps, key rotation, and LAN access.
|
|
84
|
+
- **Full setup guide:** in-depth prerequisites, data-flow and bearer-exposure
|
|
85
|
+
warnings, verification, key rotation, and LAN access are documented for
|
|
86
|
+
Virtual Architect users as part of the platform docs.
|
package/dist/index.js
CHANGED
|
@@ -8,7 +8,7 @@ import { Command, CommanderError } from "commander";
|
|
|
8
8
|
// package.json
|
|
9
9
|
var package_default = {
|
|
10
10
|
name: "@bitflower/va-mcp",
|
|
11
|
-
version: "1.0.
|
|
11
|
+
version: "1.0.2",
|
|
12
12
|
description: "Install the Virtual Architect MCP server and SessionStart playbook into a Claude Code project.",
|
|
13
13
|
repository: {
|
|
14
14
|
type: "git",
|
|
@@ -17,7 +17,7 @@ var package_default = {
|
|
|
17
17
|
},
|
|
18
18
|
type: "module",
|
|
19
19
|
bin: {
|
|
20
|
-
"va-mcp": "
|
|
20
|
+
"va-mcp": "dist/index.js"
|
|
21
21
|
},
|
|
22
22
|
files: [
|
|
23
23
|
"dist"
|
|
@@ -34,8 +34,12 @@ var package_default = {
|
|
|
34
34
|
},
|
|
35
35
|
keywords: [
|
|
36
36
|
"mcp",
|
|
37
|
-
"
|
|
38
|
-
"
|
|
37
|
+
"virtual-architect",
|
|
38
|
+
"knowledge-management",
|
|
39
|
+
"knowledge-base",
|
|
40
|
+
"sdlc",
|
|
41
|
+
"architecture",
|
|
42
|
+
"infrastructure"
|
|
39
43
|
],
|
|
40
44
|
license: "MIT",
|
|
41
45
|
publishConfig: {
|
|
@@ -279,6 +283,7 @@ function pruneSettingsLocal(projectDir) {
|
|
|
279
283
|
}
|
|
280
284
|
|
|
281
285
|
// src/gitignore-check.ts
|
|
286
|
+
import { spawnSync as spawnSync2 } from "child_process";
|
|
282
287
|
import * as fs3 from "fs";
|
|
283
288
|
import * as path3 from "path";
|
|
284
289
|
var SETTINGS_RELPATH = ".claude/settings.local.json";
|
|
@@ -317,8 +322,34 @@ function isPathIgnored(projectDir, relpath) {
|
|
|
317
322
|
}
|
|
318
323
|
return ignored;
|
|
319
324
|
}
|
|
325
|
+
var GIT_CHECK_IGNORE_TIMEOUT_MS = 5e3;
|
|
326
|
+
function gitConfirmsIgnored(projectDir, relpath) {
|
|
327
|
+
const probe = spawnSync2("git", ["check-ignore", "-q", "--", relpath], {
|
|
328
|
+
cwd: projectDir,
|
|
329
|
+
timeout: GIT_CHECK_IGNORE_TIMEOUT_MS,
|
|
330
|
+
windowsHide: true
|
|
331
|
+
});
|
|
332
|
+
if (probe.error) return null;
|
|
333
|
+
if (probe.status === 0) return true;
|
|
334
|
+
if (probe.status === 1) return false;
|
|
335
|
+
return null;
|
|
336
|
+
}
|
|
320
337
|
function checkGitignorePrecondition(projectDir) {
|
|
321
338
|
if (!isInsideGitWorkTree(projectDir)) return;
|
|
339
|
+
const gitVerdict = gitConfirmsIgnored(projectDir, SETTINGS_RELPATH);
|
|
340
|
+
if (gitVerdict === true) return;
|
|
341
|
+
if (gitVerdict === false) {
|
|
342
|
+
throw new InstallerError(
|
|
343
|
+
`refusing to write ${SETTINGS_RELPATH} into a git work tree \u2014 git reports it is not ignored, so it could be committed. Add an entry that ignores it to a \`.gitignore\` (in a monorepo the repo-root file works too):
|
|
344
|
+
|
|
345
|
+
${SETTINGS_RELPATH}
|
|
346
|
+
|
|
347
|
+
If the file is already tracked, a .gitignore entry will not help \u2014 untrack it first:
|
|
348
|
+
|
|
349
|
+
git rm --cached ${SETTINGS_RELPATH}
|
|
350
|
+
`
|
|
351
|
+
);
|
|
352
|
+
}
|
|
322
353
|
if (isPathIgnored(projectDir, SETTINGS_RELPATH)) return;
|
|
323
354
|
throw new InstallerError(
|
|
324
355
|
`refusing to write ${SETTINGS_RELPATH} into a git work tree. The installer's plain-text gitignore scan found no exact-path or directory-prefix entry that ignores it (globs like '.claude/*' and '!' negation lines are NOT evaluated \u2014 we err on the safe side and refuse if there is any chance the file ends up tracked). To proceed, add an exact entry to ${path3.join(projectDir, ".gitignore")}:
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@bitflower/va-mcp",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.2",
|
|
4
4
|
"description": "Install the Virtual Architect MCP server and SessionStart playbook into a Claude Code project.",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
},
|
|
10
10
|
"type": "module",
|
|
11
11
|
"bin": {
|
|
12
|
-
"va-mcp": "
|
|
12
|
+
"va-mcp": "dist/index.js"
|
|
13
13
|
},
|
|
14
14
|
"files": [
|
|
15
15
|
"dist"
|
|
@@ -26,8 +26,12 @@
|
|
|
26
26
|
},
|
|
27
27
|
"keywords": [
|
|
28
28
|
"mcp",
|
|
29
|
-
"
|
|
30
|
-
"
|
|
29
|
+
"virtual-architect",
|
|
30
|
+
"knowledge-management",
|
|
31
|
+
"knowledge-base",
|
|
32
|
+
"sdlc",
|
|
33
|
+
"architecture",
|
|
34
|
+
"infrastructure"
|
|
31
35
|
],
|
|
32
36
|
"license": "MIT",
|
|
33
37
|
"publishConfig": {
|