Skip to main content
Glama
index.js1.26 kB
import { createWorkDir, deleteWorkDir } from "../workDir/index.js"; import { parseProject } from "../parseProject/index.js"; import { generateLock } from "../generateLock/index.js"; import { audit } from "../audit/index.js"; import { render } from "../render/index.js"; import fs from "fs"; /** * 根据项目根目录,审计项目中所有的包(含项目本身) * @param {string} projectRoot 项目根目录,可以是本地目录的绝对路径,也可以是远程仓库的URL * @param {string} savePath 保存审计结果的文件名,审计结果是一个标准格式的markdown字符串 */ export async function auditPackage(projectRoot, savePath) { // 1. 创建工作目录 const workDir = await createWorkDir(); // 2. 解析项目,向工作目录添加pacakge.json const packageJson = await parseProject(projectRoot); // 3. 生成lock文件 await generateLock(workDir, packageJson); // 4. 对工作目录进行审计 const auditResult = await audit(workDir, packageJson); // 5. 渲染审计结果 const renderedResult = await render(auditResult, packageJson); // 6. 删除工作目录 await deleteWorkDir(workDir); // 7. 将结果保存到指定路径 await fs.promises.writeFile(savePath, renderedResult); }

Implementation Reference

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/Shen-zhihao/mcp-web-audit'

If you have feedback or need assistance with the MCP directory API, please join our Discord server