* chore: prefer es-toolkit helpers and lint the mechanical cases AGENTS.md now names the es-toolkit helpers to reach for instead of hand-written equivalents, and the exceptions: a single clear native call or a measured hot path. The new open-pencil/prefer-es-toolkit rule rejects filter(Boolean) and Set round trips on arrays, the two cases that need no type information, and the existing 45 sites use compact and uniq. tools/ci/policy runs before dependencies are installed, so the rule is off there. * refactor: deduplicate diagnostic categories with uniq * fix: keep es-toolkit out of serialized Playwright callbacks The codemod rewrote a filter(Boolean) inside a page.evaluate callback, which Playwright runs in the page where the compact import does not exist. The spec filters there again, and the rule now skips callbacks passed to evaluate, $eval, $$eval, evaluateHandle, addInitScript and waitForFunction, and filter calls on iterators from values, keys, entries and matchAll, which compact cannot take. * test: write the prefer-es-toolkit cases like the other rule tests Short standalone snippets, as in the base64 and JSON rule tests, instead of a declaration prefix on every case and inline object types.
84 lines
2 KiB
JSON
84 lines
2 KiB
JSON
{
|
|
"name": "@open-pencil/mcp",
|
|
"version": "0.15.1",
|
|
"license": "MIT",
|
|
"type": "module",
|
|
"imports": {
|
|
"#mcp/*": {
|
|
"types": "./src/*.ts",
|
|
"bun": "./src/*.ts",
|
|
"default": "./dist/*.mjs"
|
|
}
|
|
},
|
|
"main": "./dist/server.mjs",
|
|
"exports": {
|
|
".": {
|
|
"types": "./dist/server.d.mts",
|
|
"import": "./dist/server.mjs",
|
|
"default": "./dist/server.mjs"
|
|
},
|
|
"./stdio": {
|
|
"types": "./dist/stdio.d.mts",
|
|
"import": "./dist/stdio.mjs",
|
|
"default": "./dist/stdio.mjs"
|
|
},
|
|
"./transport": {
|
|
"types": "./dist/transport.d.mts",
|
|
"bun": "./src/transport/paths.ts",
|
|
"import": "./dist/transport.mjs",
|
|
"default": "./dist/transport.mjs"
|
|
},
|
|
"./discovery": {
|
|
"types": "./dist/discovery.d.mts",
|
|
"bun": "./src/transport/discovery.ts",
|
|
"import": "./dist/discovery.mjs",
|
|
"default": "./dist/discovery.mjs"
|
|
},
|
|
"./tools": {
|
|
"types": "./dist/tools.d.mts",
|
|
"bun": "./src/tool/index.ts",
|
|
"import": "./dist/tools.mjs",
|
|
"default": "./dist/tools.mjs"
|
|
}
|
|
},
|
|
"bin": {
|
|
"openpencil-mcp": "./dist/stdio.mjs",
|
|
"openpencil-mcp-http": "./dist/index.mjs"
|
|
},
|
|
"files": [
|
|
"dist",
|
|
"src"
|
|
],
|
|
"scripts": {
|
|
"build": "bunx tsdown --config tsdown.config.ts",
|
|
"prepublishOnly": "bun run build"
|
|
},
|
|
"repository": {
|
|
"type": "git",
|
|
"url": "git+https://github.com/open-pencil/open-pencil.git",
|
|
"directory": "packages/mcp"
|
|
},
|
|
"publishConfig": {
|
|
"access": "public",
|
|
"provenance": true
|
|
},
|
|
"dependencies": {
|
|
"@hono/node-server": "^1.19.17",
|
|
"@modelcontextprotocol/server": "^2.0.0",
|
|
"@open-pencil/core": "workspace:*",
|
|
"@open-pencil/design-jsx": "workspace:*",
|
|
"@open-pencil/scene-graph": "workspace:*",
|
|
"@valibot/to-json-schema": "^1.8.0",
|
|
"es-toolkit": "^1.52.0",
|
|
"hono": "^4.13.13",
|
|
"js-base64": "^3.9.3",
|
|
"package-manager-detector": "^1.8.0",
|
|
"valibot": "^1.5.0",
|
|
"ws": "^8.21.3"
|
|
},
|
|
"devDependencies": {
|
|
"@types/node": "^25.9.9",
|
|
"@types/ws": "^8.18.1"
|
|
}
|
|
}
|