init project

This commit is contained in:
root
2026-07-31 13:12:54 -04:00
parent 0da92d5e02
commit f3863f760c
7215 changed files with 1860260 additions and 1 deletions
+53
View File
@@ -0,0 +1,53 @@
import { z } from 'zod';
import { config } from '../../config.js';
import { detectProject, detectWorkspace, resolvePackage, summarizeDetection, summarizeWorkspace, } from '../../lib/frameworks/detect.js';
import { errorResult, jsonResult, toErrorMessage } from '../shared.js';
export function registerDetectFrameworkTool(server) {
server.registerTool('detect_framework', {
title: 'Detect Framework',
description: 'Inspect the workspace (or a monorepo package) and report which framework adapter(s) were detected: laravel, codeigniter, symfony, django, rails, react, vue, nuxt, a backend+frontend combination, or generic. Call this first.',
inputSchema: {
package: z
.string()
.optional()
.describe('Optional monorepo package name/path to inspect instead of the workspace root.'),
includeWorkspace: z
.boolean()
.optional()
.default(false)
.describe('If true, also include a packages[] summary from detect_workspace.'),
},
}, async ({ package: packageName, includeWorkspace }) => {
try {
const root = packageName
? resolvePackage(config.workspaceRoot, packageName).pkg.absolutePath
: config.workspaceRoot;
const detected = detectProject(root);
const summary = summarizeDetection(detected);
if (includeWorkspace) {
summary.workspace = summarizeWorkspace(detectWorkspace(config.workspaceRoot));
}
if (packageName)
summary.package = packageName;
return jsonResult(summary);
}
catch (error) {
return errorResult(toErrorMessage(error));
}
});
}
export function registerDetectWorkspaceTool(server) {
server.registerTool('detect_workspace', {
title: 'Detect Workspace Packages',
description: 'Scan the workspace for monorepo packages (apps/*, packages/*, services/*, frontend/client/web, package.json workspaces, pnpm-workspace.yaml) and report each packages detected framework adapter(s).',
inputSchema: {},
}, async () => {
try {
return jsonResult(summarizeWorkspace(detectWorkspace(config.workspaceRoot)));
}
catch (error) {
return errorResult(toErrorMessage(error));
}
});
}
//# sourceMappingURL=detectFramework.js.map