@arcbridge/mcp-server 0.3.3 → 0.4.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.
- package/dist/index.js +5 -5
- package/dist/index.js.map +1 -1
- package/package.json +4 -4
package/dist/index.js
CHANGED
|
@@ -42,8 +42,8 @@ function registerInitProject(server, ctx) {
|
|
|
42
42
|
"Initialize ArcBridge in a project directory. Creates .arcbridge/ with arc42 documentation, phase plan, agent roles, SQLite database, and platform-specific configs.",
|
|
43
43
|
{
|
|
44
44
|
name: z.string().min(1).describe("Project name"),
|
|
45
|
-
template: z.enum(["nextjs-app-router", "react-vite", "api-service", "dotnet-webapi", "unity-game"]).default("nextjs-app-router").describe(
|
|
46
|
-
"Project template: nextjs-app-router (Next.js with App Router, SSR/SSG), react-vite (React SPA with Vite, client-only), api-service (Node.js API with Express/Fastify/Hono), dotnet-webapi (ASP.NET Core Web API, C#), unity-game (Unity game project, C#, code-heavy)"
|
|
45
|
+
template: z.enum(["nextjs-app-router", "react-vite", "api-service", "dotnet-webapi", "unity-game", "angular-app"]).default("nextjs-app-router").describe(
|
|
46
|
+
"Project template: nextjs-app-router (Next.js with App Router, SSR/SSG), react-vite (React SPA with Vite, client-only), angular-app (Angular with standalone components, TypeScript), api-service (Node.js API with Express/Fastify/Hono), dotnet-webapi (ASP.NET Core Web API, C#), unity-game (Unity game project, C#, code-heavy)"
|
|
47
47
|
),
|
|
48
48
|
features: z.array(z.enum(["auth", "database", "api"])).default([]).describe("Features to scaffold"),
|
|
49
49
|
quality_priorities: z.array(QualityCategorySchema).default(["security", "performance", "accessibility", "maintainability"]).describe(QUALITY_PRIORITIES_DESCRIPTION),
|
|
@@ -172,7 +172,7 @@ Use \`arcbridge_get_project_status\` to see the current state.`
|
|
|
172
172
|
`- **Dependencies indexed:** ${indexResult.dependenciesIndexed}`,
|
|
173
173
|
`- **Components analyzed:** ${indexResult.componentsAnalyzed}`,
|
|
174
174
|
`- **Routes analyzed:** ${indexResult.routesAnalyzed}`
|
|
175
|
-
] : [input.template === "dotnet-webapi" ? `- **Code indexing:**
|
|
175
|
+
] : [input.template === "dotnet-webapi" || input.template === "unity-game" ? `- **Code indexing:** run \`arcbridge_reindex\` to index C# symbols (tree-sitter or Roslyn)` : `- **Code indexing:** skipped (no tsconfig.json found \u2014 run \`arcbridge_reindex\` later)`],
|
|
176
176
|
"",
|
|
177
177
|
"## Files",
|
|
178
178
|
"",
|
|
@@ -247,7 +247,7 @@ function textResult(text) {
|
|
|
247
247
|
};
|
|
248
248
|
}
|
|
249
249
|
function escapeLike(value) {
|
|
250
|
-
return value.replace(/%/g, "\\%").replace(/_/g, "\\_");
|
|
250
|
+
return value.replace(/\\/g, "\\\\").replace(/%/g, "\\%").replace(/_/g, "\\_");
|
|
251
251
|
}
|
|
252
252
|
function safeParseJson(value, fallback) {
|
|
253
253
|
if (value === null || value === void 0) return fallback;
|
|
@@ -2689,7 +2689,7 @@ function generateProposals(db, blocks, changedFiles, _projectRoot) {
|
|
|
2689
2689
|
for (const cp of paths) {
|
|
2690
2690
|
const prefix = normalizeCodePath(cp);
|
|
2691
2691
|
if (cf.path.startsWith(prefix)) {
|
|
2692
|
-
const remaining = db.prepare("SELECT 1 FROM symbols WHERE file_path LIKE ? LIMIT 1").get(`${prefix}%`);
|
|
2692
|
+
const remaining = db.prepare("SELECT 1 FROM symbols WHERE file_path LIKE ? ESCAPE '\\' LIMIT 1").get(`${escapeLike(prefix)}%`);
|
|
2693
2693
|
if (!remaining) {
|
|
2694
2694
|
proposals.push({
|
|
2695
2695
|
section: "05 Building Block View",
|