rulesync 0.42.0 → 0.44.0

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.
@@ -1,8 +1,8 @@
1
1
  import {
2
2
  generateRooMcp,
3
3
  generateRooMcpConfiguration
4
- } from "./chunk-3NRSCDLQ.js";
5
- import "./chunk-6YNGMPAL.js";
4
+ } from "./chunk-PJUNIIF4.js";
5
+ import "./chunk-I5XVU7C6.js";
6
6
  export {
7
7
  generateRooMcp,
8
8
  generateRooMcpConfiguration
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "rulesync",
3
- "version": "0.42.0",
3
+ "version": "0.44.0",
4
4
  "description": "Unified AI rules management CLI tool that generates configuration files for various AI development tools",
5
5
  "keywords": [
6
6
  "ai",
@@ -46,6 +46,7 @@
46
46
  },
47
47
  "devDependencies": {
48
48
  "@biomejs/biome": "2.0.0",
49
+ "@eslint/js": "9.30.1",
49
50
  "@secretlint/secretlint-rule-preset-recommend": "10.1.0",
50
51
  "@tsconfig/node24": "24.0.1",
51
52
  "@types/js-yaml": "4.0.9",
@@ -54,6 +55,9 @@
54
55
  "@typescript/native-preview": "7.0.0-dev.20250623.1",
55
56
  "@vitest/coverage-v8": "3.2.4",
56
57
  "cspell": "9.1.2",
58
+ "eslint": "^9.30.1",
59
+ "eslint-plugin-no-type-assertion": "1.3.0",
60
+ "eslint-plugin-oxlint": "1.5.0",
57
61
  "lint-staged": "16.1.2",
58
62
  "o3-search-mcp": "0.0.3",
59
63
  "oxlint": "1.4.0",
@@ -63,6 +67,7 @@
63
67
  "tsup": "8.5.0",
64
68
  "tsx": "4.20.3",
65
69
  "typescript": "5.8.3",
70
+ "typescript-eslint": "^8.35.1",
66
71
  "vitest": "3.2.4"
67
72
  },
68
73
  "engines": {
@@ -75,13 +80,15 @@
75
80
  "bcheck": "biome check src/",
76
81
  "bcheck:fix": "biome check --write src/",
77
82
  "build": "tsup src/cli/index.ts --format cjs,esm --dts --clean",
78
- "check": "pnpm run bcheck && pnpm run lint && pnpm run typecheck",
83
+ "check": "pnpm run bcheck && pnpm run oxlint && pnpm run eslint && pnpm run typecheck",
79
84
  "cspell": "cspell \"**/*\"",
80
85
  "dev": "tsx src/cli/index.ts",
81
- "fix": "pnpm run bcheck:fix && pnpm run lint:fix",
86
+ "eslint": "eslint . --max-warnings 0 --cache",
87
+ "eslint:fix": "eslint . --fix --max-warnings 0 --cache",
88
+ "fix": "pnpm run bcheck:fix && pnpm run oxlint:fix && pnpm run eslint:fix",
82
89
  "generate": "pnpm run dev generate",
83
- "lint": "oxlint . --max-warnings 0",
84
- "lint:fix": "oxlint . --fix --max-warnings 0",
90
+ "oxlint": "oxlint . --max-warnings 0",
91
+ "oxlint:fix": "oxlint . --fix --max-warnings 0",
85
92
  "secretlint": "secretlint \"**/*\"",
86
93
  "sort": "sort-package-json",
87
94
  "test": "vitest run --silent",
@@ -1,56 +0,0 @@
1
- // src/schemas/mcp.ts
2
- import { z } from "zod";
3
- var ToolTargetSchema = z.enum([
4
- "copilot",
5
- "cursor",
6
- "cline",
7
- "claudecode",
8
- "claude",
9
- "roo",
10
- "geminicli"
11
- ]);
12
- var WildcardTargetSchema = z.tuple([z.literal("*")]);
13
- var SpecificTargetsSchema = z.array(ToolTargetSchema);
14
- var RulesyncTargetsSchema = z.union([SpecificTargetsSchema, WildcardTargetSchema]);
15
- var McpTransportTypeSchema = z.enum(["stdio", "sse", "http"]);
16
- var McpServerBaseSchema = z.object({
17
- command: z.string().optional(),
18
- args: z.array(z.string()).optional(),
19
- url: z.string().optional(),
20
- httpUrl: z.string().optional(),
21
- env: z.record(z.string()).optional(),
22
- disabled: z.boolean().optional(),
23
- networkTimeout: z.number().optional(),
24
- timeout: z.number().optional(),
25
- trust: z.boolean().optional(),
26
- cwd: z.string().optional(),
27
- transport: McpTransportTypeSchema.optional(),
28
- type: z.enum(["sse", "streamable-http"]).optional(),
29
- alwaysAllow: z.array(z.string()).optional(),
30
- tools: z.array(z.string()).optional()
31
- });
32
- var RulesyncMcpServerSchema = McpServerBaseSchema.extend({
33
- targets: RulesyncTargetsSchema.optional()
34
- });
35
-
36
- // src/utils/mcp-helpers.ts
37
- function shouldIncludeServer(server, targetTool) {
38
- if (!server.targets || server.targets.length === 0) {
39
- return true;
40
- }
41
- const parsedTargets = RulesyncTargetsSchema.parse(server.targets);
42
- if (parsedTargets.length === 1 && parsedTargets[0] === "*") {
43
- return true;
44
- }
45
- const validatedTool = ToolTargetSchema.parse(targetTool);
46
- for (const target of parsedTargets) {
47
- if (target === validatedTool) {
48
- return true;
49
- }
50
- }
51
- return false;
52
- }
53
-
54
- export {
55
- shouldIncludeServer
56
- };