rulesync 16.30.0 → 16.30.2
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/cli/index.cjs +4 -4
- package/dist/cli/index.js +4 -4
- package/dist/cli/index.js.map +1 -1
- package/dist/{import-BDlmyTcr.js → import-BknrMODR.js} +84 -4
- package/dist/import-BknrMODR.js.map +1 -0
- package/dist/{import-WJZi59fO.cjs → import-auwKp4Mm.cjs} +83 -3
- package/dist/index.cjs +1 -1
- package/dist/index.d.cts.map +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/package.json +7 -7
- package/dist/import-BDlmyTcr.js.map +0 -1
|
@@ -69887,6 +69887,78 @@ const getProcessorRegistryEntry = (feature) => {
|
|
|
69887
69887
|
return entry;
|
|
69888
69888
|
};
|
|
69889
69889
|
//#endregion
|
|
69890
|
+
//#region src/lib/fold-root-overwrite-watch.ts
|
|
69891
|
+
/**
|
|
69892
|
+
* Whether a target folds every non-root rule into its root file, i.e. its tool
|
|
69893
|
+
* reads the one root file and nothing else.
|
|
69894
|
+
*/
|
|
69895
|
+
function foldsIntoRoot({ toolTarget }) {
|
|
69896
|
+
return RulesProcessor.getFactory(toolTarget)?.meta.collisionPolicy === "fold";
|
|
69897
|
+
}
|
|
69898
|
+
/**
|
|
69899
|
+
* Names the root file the way the rest of the run does: relative to the
|
|
69900
|
+
* working directory when it lives under it (so `AGENTS.md`, or
|
|
69901
|
+
* `packages/app/AGENTS.md` for a second output root), absolute otherwise.
|
|
69902
|
+
*/
|
|
69903
|
+
function displayPath({ filePath }) {
|
|
69904
|
+
const rel = (0, node_path.relative)(process.cwd(), filePath);
|
|
69905
|
+
return rel === "" || (0, node_path.isAbsolute)(rel) || rel === ".." || rel.startsWith(`..${node_path.sep}`) ? filePath : toPosixPath(rel);
|
|
69906
|
+
}
|
|
69907
|
+
/**
|
|
69908
|
+
* Watches for a later target overwriting a fold target's root file with
|
|
69909
|
+
* different content, which silently loses every non-root rule for that tool.
|
|
69910
|
+
*
|
|
69911
|
+
* Several targets write the same root file (`AGENTS.md` above all), and the
|
|
69912
|
+
* documented rule is that the last target in config order wins. For a target
|
|
69913
|
+
* that files non-root rules in its own directory that is harmless: it keeps the
|
|
69914
|
+
* root body either way. A `collisionPolicy: "fold"` target (codexcli and the
|
|
69915
|
+
* others whose tool reads only the one root file) has nowhere else to put its
|
|
69916
|
+
* non-root rules, so when a sibling that emits the root body alone comes later
|
|
69917
|
+
* in config order — `["codexcli", "zoocode"]` — the fold is overwritten and
|
|
69918
|
+
* Codex CLI is left with the root rule only, in a diff that reads as a large
|
|
69919
|
+
* deletion of `AGENTS.md`. See issue #3022.
|
|
69920
|
+
*
|
|
69921
|
+
* The overwrite itself is not prevented (last-wins is what the docs promise);
|
|
69922
|
+
* it is named, once per root file, together with the reordering that keeps the
|
|
69923
|
+
* folded content. `observe` only records what each target would write; the
|
|
69924
|
+
* verdict is `report`'s, once every target has been seen, because only the
|
|
69925
|
+
* final writer decides what is on disk: with `["codexcli", "zoocode", "pi"]`
|
|
69926
|
+
* the fold target `pi` wins the file with every non-root body in it, so nothing
|
|
69927
|
+
* is lost and nothing is reported. Files are keyed by their resolved output
|
|
69928
|
+
* path, so a project with several output roots is compared root by root
|
|
69929
|
+
* however each root was spelled. In `--check` mode nothing is
|
|
69930
|
+
* written, but the sentence describes the same outcome of the same config, so
|
|
69931
|
+
* it is worded the same.
|
|
69932
|
+
*/
|
|
69933
|
+
function createFoldRootOverwriteWatch({ logger }) {
|
|
69934
|
+
const writesByPath = /* @__PURE__ */ new Map();
|
|
69935
|
+
return {
|
|
69936
|
+
observe: ({ toolTarget, toolFiles }) => {
|
|
69937
|
+
const folds = foldsIntoRoot({ toolTarget });
|
|
69938
|
+
for (const file of toolFiles) {
|
|
69939
|
+
if (!(file instanceof ToolRule) || !file.isRoot()) continue;
|
|
69940
|
+
const path = (0, node_path.resolve)(file.getFilePath());
|
|
69941
|
+
const writes = writesByPath.get(path) ?? [];
|
|
69942
|
+
writes.push({
|
|
69943
|
+
target: toolTarget,
|
|
69944
|
+
folds,
|
|
69945
|
+
content: file.getFileContent()
|
|
69946
|
+
});
|
|
69947
|
+
writesByPath.set(path, writes);
|
|
69948
|
+
}
|
|
69949
|
+
},
|
|
69950
|
+
report: () => {
|
|
69951
|
+
for (const [path, writes] of writesByPath) {
|
|
69952
|
+
const last = writes.at(-1);
|
|
69953
|
+
if (last === void 0 || last.folds) continue;
|
|
69954
|
+
const fold = writes.findLast((write) => write.folds && write.content !== last.content);
|
|
69955
|
+
if (fold === void 0) continue;
|
|
69956
|
+
logger.warn(`Target '${last.target}' overwrites ${displayPath({ filePath: path })}, the file target '${fold.target}' folds every non-root rule into, so '${fold.target}' is left with the root rule only. The last target in config order wins a shared file: list '${fold.target}' after '${last.target}' to keep the folded content (see "Target Order and File Conflicts" in the configuration guide).`);
|
|
69957
|
+
}
|
|
69958
|
+
}
|
|
69959
|
+
};
|
|
69960
|
+
}
|
|
69961
|
+
//#endregion
|
|
69890
69962
|
//#region src/lib/orphan-sweep.ts
|
|
69891
69963
|
function createOrphanSweepPlan() {
|
|
69892
69964
|
const generatedPaths = /* @__PURE__ */ new Set();
|
|
@@ -70196,17 +70268,19 @@ async function processEmptyFeatureGeneration(params) {
|
|
|
70196
70268
|
* based on whether rulesync files exist.
|
|
70197
70269
|
*/
|
|
70198
70270
|
async function processFeatureWithRulesyncFiles(params) {
|
|
70199
|
-
const { config, processor, rulesyncFiles, sweepPlan, skipFilePaths } = params;
|
|
70271
|
+
const { config, processor, rulesyncFiles, sweepPlan, skipFilePaths, onToolFiles } = params;
|
|
70200
70272
|
if (rulesyncFiles.length === 0) return processEmptyFeatureGeneration({
|
|
70201
70273
|
config,
|
|
70202
70274
|
processor,
|
|
70203
70275
|
sweepPlan,
|
|
70204
70276
|
skipFilePaths
|
|
70205
70277
|
});
|
|
70278
|
+
const toolFiles = await processor.convertRulesyncFilesToToolFiles(rulesyncFiles);
|
|
70279
|
+
onToolFiles?.(toolFiles);
|
|
70206
70280
|
return processFeatureGeneration({
|
|
70207
70281
|
config,
|
|
70208
70282
|
processor,
|
|
70209
|
-
toolFiles
|
|
70283
|
+
toolFiles,
|
|
70210
70284
|
sweepPlan,
|
|
70211
70285
|
skipFilePaths
|
|
70212
70286
|
});
|
|
@@ -70624,6 +70698,7 @@ async function generateRulesCore(params) {
|
|
|
70624
70698
|
featureName: "rules",
|
|
70625
70699
|
logger
|
|
70626
70700
|
});
|
|
70701
|
+
const foldRootOverwriteWatch = createFoldRootOverwriteWatch({ logger });
|
|
70627
70702
|
const isCheck = config.getCheck();
|
|
70628
70703
|
const rootFileOwner = isCheck ? computeRootFileOwnership({
|
|
70629
70704
|
targets: config.getConfigFileTargets(),
|
|
@@ -70660,13 +70735,18 @@ async function generateRulesCore(params) {
|
|
|
70660
70735
|
processor,
|
|
70661
70736
|
rulesyncFiles,
|
|
70662
70737
|
sweepPlan,
|
|
70663
|
-
skipFilePaths: skipFilePaths.size > 0 ? skipFilePaths : void 0
|
|
70738
|
+
skipFilePaths: skipFilePaths.size > 0 ? skipFilePaths : void 0,
|
|
70739
|
+
onToolFiles: (toolFiles) => foldRootOverwriteWatch.observe({
|
|
70740
|
+
toolTarget,
|
|
70741
|
+
toolFiles
|
|
70742
|
+
})
|
|
70664
70743
|
});
|
|
70665
70744
|
totalCount += result.count;
|
|
70666
70745
|
allPaths.push(...result.paths);
|
|
70667
70746
|
if (result.hasDiff) hasDiff = true;
|
|
70668
70747
|
if (result.sourceLoadFailed) sourceLoadFailed = true;
|
|
70669
70748
|
}
|
|
70749
|
+
foldRootOverwriteWatch.report();
|
|
70670
70750
|
return {
|
|
70671
70751
|
count: totalCount,
|
|
70672
70752
|
paths: allPaths,
|
package/dist/index.cjs
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
|
-
const require_import = require("./import-
|
|
2
|
+
const require_import = require("./import-auwKp4Mm.cjs");
|
|
3
3
|
//#region src/index.ts
|
|
4
4
|
async function generate(options = {}) {
|
|
5
5
|
const { silent = true, verbose = false, ...rest } = options;
|
package/dist/index.d.cts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.cts","names":[],"sources":["../src/types/features.ts","../src/types/tool-target-tuples.ts","../src/types/tool-targets.ts","../src/lib/convert.ts","../src/types/ai-dir.ts","../src/features/skills/rulesync-skill.ts","../src/lib/generate.ts","../src/lib/import.ts","../src/index.ts"],"mappings":";;qBAaa;cA+BP,eAAa,EAAA,uBAAA,EAAA;;;;;;;;;IAAoE,EAAA;KAE3E,UAAU,EAAE,aAAa;;;cCiRxB;;;KCrTR,wBAAwB;qBAEhB,4BAA4B,kBAAkB;cAM9C,kBAAgB,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAEjB,aAAa,EAAE,aAAa;;;KCH5B;EACV;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;;KCWU;EAEN;EACA;;EAGA;EACA,OAAO;;KAqBD;EACV;EACA,YAAY;;;;;;;;EAQZ;;;;;;;EAOA;;KAmnBU;EACV;EACA;EACA;EACA;IACE;IACA;IACA,cAAc;;EAEhB,aAAa;EACb;;KAGU,qBAAqB,KAC/B;uBAIoB;;;;qBAID;;;;qBAKA;;;;qBAKA;;;;YAKT;IACR;IACA;IACA,cAAc;;;;;YAMN,YAAY;;;;qBAKH;EAEnB,cACE,YACA,iBACA,SACA,UACA,YACA,UACC;SAyBU,QAAQ,SAAS,qBAAqB,QAAQ;EAI3D;EAIA;EAIA;;;;;;;;;;;;;;;;;;;;;EAwBA;;;;;;;;;;;;;EAgBA;EAqBA;EAqBA;IAEM;IACA;IACA,cAAc;;EAMpB,iBAAiB;;;;EAOjB;EAIA;EAIA,YAAY,cAAc,cAAc,cAAc;;;;;;;;;;iBAajC;;iBAWN;;;;;;iBASA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAkCA;iBA8CM;;;;;iBA6GN;;;;;;;iBAsDM;;;;;;;;;;;;;;;;;;;;;;;;;;mBA+FE,kBACrB,oBACA,yBACA,iBACA,0BACC,QAAQ;WAwGF,YAAY;;;;cC70CjB,wCAAsC,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+V1C,EAAA,KAAA;KAMU;EACV;EACA;EACA;EACA;EACA;EACA;EACA,yBAAyB;EACzB,WAAW;EACX;IACE;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA,QAAQ;IACR;IACA;IACA;IACA;IACA;IACA;IACA,yBAAyB;IACzB,WAAW;;EAEb;IACE;IACA;;EAEF;IACE;IACA,WAAW;IACX;IACA;;EAEF;IACE;IACA;MACE;MACA;MACA;MACA;MACA;MACA;;IAEF;MACE;;IAEF;MACE,QAAQ;QACN;QACA;QACA;QACA;QACA;;;;EAIN;IACE;IACA;IACA;IACA;;EAEF;IACE;IACA;IACA;IACA;;EAEF;IACE;IACA,yBAAyB;IACzB,WAAW;;EAEb;IACE;IACA;IACA;IACA;;EAEF;IACE;IACA;IACA;IACA;IACA;IACA;;EAEF;IACE;IACA;IACA;IACA;IACA;;EAEF;IACE;IACA;IACA;IACA,yBAAyB;IACzB,WAAW;;EAEb;IACE;;EAEF;IACE;IACA;IACA,yBAAyB;IACzB,WAAW;;EAEb,MAAM;EACN,QAAQ;EACR,MAAM;EACN;IACE;IACA;IACA;IACA;IACA;IACA,cAAc;IACd;;EAEF;IACE;IACA;IACA;IACA;IACA;IACA;IACA,QAAQ;IACR;IACA;;EAEF;IACE;IACA;IACA,yBAAyB;IACzB,WAAW;;EAEb;IACE;IACA;IACA;IACA,WAAW;;EAEb;IACE;IACA;IACA;IACA;IACA;IACA;IACA;IACA;;EAEF;IACE;IACA;IACA;IACA;;EAEF;IACE;IACA,yBAAyB;IACzB,WAAW;IACX;;EAEF,cAAc;EACd;IACE;IACA,yBAAyB;IACzB,WAAW;IACX;IACA;;EAEF;IACE;IACA;;EAEF;IACE;IACA;IACA;IACA,yBAAyB;IACzB,WAAW;;EAEb;IACE;IACA;IACA,WAAW;;;KAKH,2BAA2B,EAAE,aAAa;KAO1C;EACV;EACA;EACA;EACA,aAAa;EACb;EACA,aAAa;EACb;EACA;;KAGU;EACV;;KAGU;EACV;EACA;EACA;EACA;;;;;;cAOW,sBAAsB;EACjC,cACE,YACA,iBACA,SACA,aACA,MACA,YACA,UACA,UACC;SAsBI,oBAAoB;EAU3B,kBAAkB;EAQlB;EAIA,YAAY;SAcC,UACX,YACA,iBACA,SACA,UACC,6BAA6B,QAAQ;;;;
|
|
1
|
+
{"version":3,"file":"index.d.cts","names":[],"sources":["../src/types/features.ts","../src/types/tool-target-tuples.ts","../src/types/tool-targets.ts","../src/lib/convert.ts","../src/types/ai-dir.ts","../src/features/skills/rulesync-skill.ts","../src/lib/generate.ts","../src/lib/import.ts","../src/index.ts"],"mappings":";;qBAaa;cA+BP,eAAa,EAAA,uBAAA,EAAA;;;;;;;;;IAAoE,EAAA;KAE3E,UAAU,EAAE,aAAa;;;cCiRxB;;;KCrTR,wBAAwB;qBAEhB,4BAA4B,kBAAkB;cAM9C,kBAAgB,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAEjB,aAAa,EAAE,aAAa;;;KCH5B;EACV;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;;KCWU;EAEN;EACA;;EAGA;EACA,OAAO;;KAqBD;EACV;EACA,YAAY;;;;;;;;EAQZ;;;;;;;EAOA;;KAmnBU;EACV;EACA;EACA;EACA;IACE;IACA;IACA,cAAc;;EAEhB,aAAa;EACb;;KAGU,qBAAqB,KAC/B;uBAIoB;;;;qBAID;;;;qBAKA;;;;qBAKA;;;;YAKT;IACR;IACA;IACA,cAAc;;;;;YAMN,YAAY;;;;qBAKH;EAEnB,cACE,YACA,iBACA,SACA,UACA,YACA,UACC;SAyBU,QAAQ,SAAS,qBAAqB,QAAQ;EAI3D;EAIA;EAIA;;;;;;;;;;;;;;;;;;;;;EAwBA;;;;;;;;;;;;;EAgBA;EAqBA;EAqBA;IAEM;IACA;IACA,cAAc;;EAMpB,iBAAiB;;;;EAOjB;EAIA;EAIA,YAAY,cAAc,cAAc,cAAc;;;;;;;;;;iBAajC;;iBAWN;;;;;;iBASA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAkCA;iBA8CM;;;;;iBA6GN;;;;;;;iBAsDM;;;;;;;;;;;;;;;;;;;;;;;;;;mBA+FE,kBACrB,oBACA,yBACA,iBACA,0BACC,QAAQ;WAwGF,YAAY;;;;cC70CjB,wCAAsC,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+V1C,EAAA,KAAA;KAMU;EACV;EACA;EACA;EACA;EACA;EACA;EACA,yBAAyB;EACzB,WAAW;EACX;IACE;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA,QAAQ;IACR;IACA;IACA;IACA;IACA;IACA;IACA,yBAAyB;IACzB,WAAW;;EAEb;IACE;IACA;;EAEF;IACE;IACA,WAAW;IACX;IACA;;EAEF;IACE;IACA;MACE;MACA;MACA;MACA;MACA;MACA;;IAEF;MACE;;IAEF;MACE,QAAQ;QACN;QACA;QACA;QACA;QACA;;;;EAIN;IACE;IACA;IACA;IACA;;EAEF;IACE;IACA;IACA;IACA;;EAEF;IACE;IACA,yBAAyB;IACzB,WAAW;;EAEb;IACE;IACA;IACA;IACA;;EAEF;IACE;IACA;IACA;IACA;IACA;IACA;;EAEF;IACE;IACA;IACA;IACA;IACA;;EAEF;IACE;IACA;IACA;IACA,yBAAyB;IACzB,WAAW;;EAEb;IACE;;EAEF;IACE;IACA;IACA,yBAAyB;IACzB,WAAW;;EAEb,MAAM;EACN,QAAQ;EACR,MAAM;EACN;IACE;IACA;IACA;IACA;IACA;IACA,cAAc;IACd;;EAEF;IACE;IACA;IACA;IACA;IACA;IACA;IACA,QAAQ;IACR;IACA;;EAEF;IACE;IACA;IACA,yBAAyB;IACzB,WAAW;;EAEb;IACE;IACA;IACA;IACA,WAAW;;EAEb;IACE;IACA;IACA;IACA;IACA;IACA;IACA;IACA;;EAEF;IACE;IACA;IACA;IACA;;EAEF;IACE;IACA,yBAAyB;IACzB,WAAW;IACX;;EAEF,cAAc;EACd;IACE;IACA,yBAAyB;IACzB,WAAW;IACX;IACA;;EAEF;IACE;IACA;;EAEF;IACE;IACA;IACA;IACA,yBAAyB;IACzB,WAAW;;EAEb;IACE;IACA;IACA,WAAW;;;KAKH,2BAA2B,EAAE,aAAa;KAO1C;EACV;EACA;EACA;EACA,aAAa;EACb;EACA,aAAa;EACb;EACA;;KAGU;EACV;;KAGU;EACV;EACA;EACA;EACA;;;;;;cAOW,sBAAsB;EACjC,cACE,YACA,iBACA,SACA,aACA,MACA,YACA,UACA,UACC;SAsBI,oBAAoB;EAU3B,kBAAkB;EAQlB;EAIA,YAAY;SAcC,UACX,YACA,iBACA,SACA,UACC,6BAA6B,QAAQ;;;;KCxoB9B;EACV;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA,QAAQ;EACR;;;;;;EAMA;;;;;EAKA,0BAA0B;;KA0ZhB;;;KCrbA;EACV;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;;KC/CG;EACH;EACA;EACA;EACA;;YAGU,kBAAkB;EAC5B,UAAU;EACV,WAAW;EACX;;;;;;;;;;;;;EAaA;;;;;;;;EAQA;EACA;EACA;EACA;EACA;EACA;EACA;;YAGU,gBAAgB;EAC1B,QAAQ;EACR,WAAW;;YAGD,iBAAiB;EAC3B,MAAM;EACN,IAAI;EACJ,WAAW;EACX;;wBAGoB,SAAS,UAAS,kBAAuB,QAAQ;wBAyBjD,eAAe,SAAS,gBAAgB,QAAQ;wBAehD,gBAAgB,SAAS,iBAAiB,QAAQ"}
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","names":[],"sources":["../src/types/features.ts","../src/types/tool-target-tuples.ts","../src/types/tool-targets.ts","../src/lib/convert.ts","../src/types/ai-dir.ts","../src/features/skills/rulesync-skill.ts","../src/lib/generate.ts","../src/lib/import.ts","../src/index.ts"],"mappings":";;qBAaa;cA+BP,eAAa,EAAA,uBAAA,EAAA;;;;;;;;;IAAoE,EAAA;KAE3E,UAAU,EAAE,aAAa;;;cCiRxB;;;KCrTR,wBAAwB;qBAEhB,4BAA4B,kBAAkB;cAM9C,kBAAgB,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAEjB,aAAa,EAAE,aAAa;;;KCH5B;EACV;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;;KCWU;EAEN;EACA;;EAGA;EACA,OAAO;;KAqBD;EACV;EACA,YAAY;;;;;;;;EAQZ;;;;;;;EAOA;;KAmnBU;EACV;EACA;EACA;EACA;IACE;IACA;IACA,cAAc;;EAEhB,aAAa;EACb;;KAGU,qBAAqB,KAC/B;uBAIoB;;;;qBAID;;;;qBAKA;;;;qBAKA;;;;YAKT;IACR;IACA;IACA,cAAc;;;;;YAMN,YAAY;;;;qBAKH;EAEnB,cACE,YACA,iBACA,SACA,UACA,YACA,UACC;SAyBU,QAAQ,SAAS,qBAAqB,QAAQ;EAI3D;EAIA;EAIA;;;;;;;;;;;;;;;;;;;;;EAwBA;;;;;;;;;;;;;EAgBA;EAqBA;EAqBA;IAEM;IACA;IACA,cAAc;;EAMpB,iBAAiB;;;;EAOjB;EAIA;EAIA,YAAY,cAAc,cAAc,cAAc;;;;;;;;;;iBAajC;;iBAWN;;;;;;iBASA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAkCA;iBA8CM;;;;;iBA6GN;;;;;;;iBAsDM;;;;;;;;;;;;;;;;;;;;;;;;;;mBA+FE,kBACrB,oBACA,yBACA,iBACA,0BACC,QAAQ;WAwGF,YAAY;;;;cC70CjB,wCAAsC,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+V1C,EAAA,KAAA;KAMU;EACV;EACA;EACA;EACA;EACA;EACA;EACA,yBAAyB;EACzB,WAAW;EACX;IACE;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA,QAAQ;IACR;IACA;IACA;IACA;IACA;IACA;IACA,yBAAyB;IACzB,WAAW;;EAEb;IACE;IACA;;EAEF;IACE;IACA,WAAW;IACX;IACA;;EAEF;IACE;IACA;MACE;MACA;MACA;MACA;MACA;MACA;;IAEF;MACE;;IAEF;MACE,QAAQ;QACN;QACA;QACA;QACA;QACA;;;;EAIN;IACE;IACA;IACA;IACA;;EAEF;IACE;IACA;IACA;IACA;;EAEF;IACE;IACA,yBAAyB;IACzB,WAAW;;EAEb;IACE;IACA;IACA;IACA;;EAEF;IACE;IACA;IACA;IACA;IACA;IACA;;EAEF;IACE;IACA;IACA;IACA;IACA;;EAEF;IACE;IACA;IACA;IACA,yBAAyB;IACzB,WAAW;;EAEb;IACE;;EAEF;IACE;IACA;IACA,yBAAyB;IACzB,WAAW;;EAEb,MAAM;EACN,QAAQ;EACR,MAAM;EACN;IACE;IACA;IACA;IACA;IACA;IACA,cAAc;IACd;;EAEF;IACE;IACA;IACA;IACA;IACA;IACA;IACA,QAAQ;IACR;IACA;;EAEF;IACE;IACA;IACA,yBAAyB;IACzB,WAAW;;EAEb;IACE;IACA;IACA;IACA,WAAW;;EAEb;IACE;IACA;IACA;IACA;IACA;IACA;IACA;IACA;;EAEF;IACE;IACA;IACA;IACA;;EAEF;IACE;IACA,yBAAyB;IACzB,WAAW;IACX;;EAEF,cAAc;EACd;IACE;IACA,yBAAyB;IACzB,WAAW;IACX;IACA;;EAEF;IACE;IACA;;EAEF;IACE;IACA;IACA;IACA,yBAAyB;IACzB,WAAW;;EAEb;IACE;IACA;IACA,WAAW;;;KAKH,2BAA2B,EAAE,aAAa;KAO1C;EACV;EACA;EACA;EACA,aAAa;EACb;EACA,aAAa;EACb;EACA;;KAGU;EACV;;KAGU;EACV;EACA;EACA;EACA;;;;;;cAOW,sBAAsB;EACjC,cACE,YACA,iBACA,SACA,aACA,MACA,YACA,UACA,UACC;SAsBI,oBAAoB;EAU3B,kBAAkB;EAQlB;EAIA,YAAY;SAcC,UACX,YACA,iBACA,SACA,UACC,6BAA6B,QAAQ;;;;
|
|
1
|
+
{"version":3,"file":"index.d.ts","names":[],"sources":["../src/types/features.ts","../src/types/tool-target-tuples.ts","../src/types/tool-targets.ts","../src/lib/convert.ts","../src/types/ai-dir.ts","../src/features/skills/rulesync-skill.ts","../src/lib/generate.ts","../src/lib/import.ts","../src/index.ts"],"mappings":";;qBAaa;cA+BP,eAAa,EAAA,uBAAA,EAAA;;;;;;;;;IAAoE,EAAA;KAE3E,UAAU,EAAE,aAAa;;;cCiRxB;;;KCrTR,wBAAwB;qBAEhB,4BAA4B,kBAAkB;cAM9C,kBAAgB,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAEjB,aAAa,EAAE,aAAa;;;KCH5B;EACV;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;;KCWU;EAEN;EACA;;EAGA;EACA,OAAO;;KAqBD;EACV;EACA,YAAY;;;;;;;;EAQZ;;;;;;;EAOA;;KAmnBU;EACV;EACA;EACA;EACA;IACE;IACA;IACA,cAAc;;EAEhB,aAAa;EACb;;KAGU,qBAAqB,KAC/B;uBAIoB;;;;qBAID;;;;qBAKA;;;;qBAKA;;;;YAKT;IACR;IACA;IACA,cAAc;;;;;YAMN,YAAY;;;;qBAKH;EAEnB,cACE,YACA,iBACA,SACA,UACA,YACA,UACC;SAyBU,QAAQ,SAAS,qBAAqB,QAAQ;EAI3D;EAIA;EAIA;;;;;;;;;;;;;;;;;;;;;EAwBA;;;;;;;;;;;;;EAgBA;EAqBA;EAqBA;IAEM;IACA;IACA,cAAc;;EAMpB,iBAAiB;;;;EAOjB;EAIA;EAIA,YAAY,cAAc,cAAc,cAAc;;;;;;;;;;iBAajC;;iBAWN;;;;;;iBASA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAkCA;iBA8CM;;;;;iBA6GN;;;;;;;iBAsDM;;;;;;;;;;;;;;;;;;;;;;;;;;mBA+FE,kBACrB,oBACA,yBACA,iBACA,0BACC,QAAQ;WAwGF,YAAY;;;;cC70CjB,wCAAsC,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+V1C,EAAA,KAAA;KAMU;EACV;EACA;EACA;EACA;EACA;EACA;EACA,yBAAyB;EACzB,WAAW;EACX;IACE;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA,QAAQ;IACR;IACA;IACA;IACA;IACA;IACA;IACA,yBAAyB;IACzB,WAAW;;EAEb;IACE;IACA;;EAEF;IACE;IACA,WAAW;IACX;IACA;;EAEF;IACE;IACA;MACE;MACA;MACA;MACA;MACA;MACA;;IAEF;MACE;;IAEF;MACE,QAAQ;QACN;QACA;QACA;QACA;QACA;;;;EAIN;IACE;IACA;IACA;IACA;;EAEF;IACE;IACA;IACA;IACA;;EAEF;IACE;IACA,yBAAyB;IACzB,WAAW;;EAEb;IACE;IACA;IACA;IACA;;EAEF;IACE;IACA;IACA;IACA;IACA;IACA;;EAEF;IACE;IACA;IACA;IACA;IACA;;EAEF;IACE;IACA;IACA;IACA,yBAAyB;IACzB,WAAW;;EAEb;IACE;;EAEF;IACE;IACA;IACA,yBAAyB;IACzB,WAAW;;EAEb,MAAM;EACN,QAAQ;EACR,MAAM;EACN;IACE;IACA;IACA;IACA;IACA;IACA,cAAc;IACd;;EAEF;IACE;IACA;IACA;IACA;IACA;IACA;IACA,QAAQ;IACR;IACA;;EAEF;IACE;IACA;IACA,yBAAyB;IACzB,WAAW;;EAEb;IACE;IACA;IACA;IACA,WAAW;;EAEb;IACE;IACA;IACA;IACA;IACA;IACA;IACA;IACA;;EAEF;IACE;IACA;IACA;IACA;;EAEF;IACE;IACA,yBAAyB;IACzB,WAAW;IACX;;EAEF,cAAc;EACd;IACE;IACA,yBAAyB;IACzB,WAAW;IACX;IACA;;EAEF;IACE;IACA;;EAEF;IACE;IACA;IACA;IACA,yBAAyB;IACzB,WAAW;;EAEb;IACE;IACA;IACA,WAAW;;;KAKH,2BAA2B,EAAE,aAAa;KAO1C;EACV;EACA;EACA;EACA,aAAa;EACb;EACA,aAAa;EACb;EACA;;KAGU;EACV;;KAGU;EACV;EACA;EACA;EACA;;;;;;cAOW,sBAAsB;EACjC,cACE,YACA,iBACA,SACA,aACA,MACA,YACA,UACA,UACC;SAsBI,oBAAoB;EAU3B,kBAAkB;EAQlB;EAIA,YAAY;SAcC,UACX,YACA,iBACA,SACA,UACC,6BAA6B,QAAQ;;;;KCxoB9B;EACV;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA,QAAQ;EACR;;;;;;EAMA;;;;;EAKA,0BAA0B;;KA0ZhB;;;KCrbA;EACV;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;;KC/CG;EACH;EACA;EACA;EACA;;YAGU,kBAAkB;EAC5B,UAAU;EACV,WAAW;EACX;;;;;;;;;;;;;EAaA;;;;;;;;EAQA;EACA;EACA;EACA;EACA;EACA;EACA;;YAGU,gBAAgB;EAC1B,QAAQ;EACR,WAAW;;YAGD,iBAAiB;EAC3B,MAAM;EACN,IAAI;EACJ,WAAW;EACX;;wBAGoB,SAAS,UAAS,kBAAuB,QAAQ;wBAyBjD,eAAe,SAAS,gBAAgB,QAAQ;wBAehD,gBAAgB,SAAS,iBAAiB,QAAQ"}
|
package/dist/index.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { $t as ALL_TOOL_TARGETS, Nn as ALL_FEATURES, at as ConfigResolver, i as inspectInputRoots, o as convertFromTool$1, pt as ConsoleLogger, r as generate$1, t as importFromTool$1 } from "./import-
|
|
1
|
+
import { $t as ALL_TOOL_TARGETS, Nn as ALL_FEATURES, at as ConfigResolver, i as inspectInputRoots, o as convertFromTool$1, pt as ConsoleLogger, r as generate$1, t as importFromTool$1 } from "./import-BknrMODR.js";
|
|
2
2
|
//#region src/index.ts
|
|
3
3
|
async function generate(options = {}) {
|
|
4
4
|
const { silent = true, verbose = false, ...rest } = options;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "rulesync",
|
|
3
|
-
"version": "16.30.
|
|
3
|
+
"version": "16.30.2",
|
|
4
4
|
"description": "Unified AI rules management CLI tool that generates configuration files for various AI development tools",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"ai",
|
|
@@ -57,7 +57,7 @@
|
|
|
57
57
|
"commander": "15.0.0",
|
|
58
58
|
"effect": "3.22.2",
|
|
59
59
|
"es-toolkit": "1.52.0",
|
|
60
|
-
"fastmcp": "4.20.
|
|
60
|
+
"fastmcp": "4.20.11",
|
|
61
61
|
"globby": "16.2.4",
|
|
62
62
|
"gray-matter": "4.0.3",
|
|
63
63
|
"js-yaml": "5.4.1",
|
|
@@ -65,11 +65,11 @@
|
|
|
65
65
|
"minisearch": "7.2.0",
|
|
66
66
|
"smol-toml": "1.8.0",
|
|
67
67
|
"sury": "10.0.4",
|
|
68
|
-
"zod": "4.6.
|
|
68
|
+
"zod": "4.6.2"
|
|
69
69
|
},
|
|
70
70
|
"devDependencies": {
|
|
71
|
-
"@anthropic-ai/claude-agent-sdk": "0.3.
|
|
72
|
-
"@openrouter/sdk": "1.2.
|
|
71
|
+
"@anthropic-ai/claude-agent-sdk": "0.3.268",
|
|
72
|
+
"@openrouter/sdk": "1.2.117",
|
|
73
73
|
"@secretlint/secretlint-rule-preset-recommend": "13.0.5",
|
|
74
74
|
"@tsconfig/node24": "24.0.5",
|
|
75
75
|
"@types/node": "26.5.1",
|
|
@@ -77,7 +77,7 @@
|
|
|
77
77
|
"@vitest/coverage-v8": "5.0.0",
|
|
78
78
|
"cspell": "10.3.0",
|
|
79
79
|
"knip": "6.35.1",
|
|
80
|
-
"lint-staged": "17.5.
|
|
80
|
+
"lint-staged": "17.5.1",
|
|
81
81
|
"oxfmt": "0.67.0",
|
|
82
82
|
"oxlint": "1.82.0",
|
|
83
83
|
"repomix": "1.18.0",
|
|
@@ -89,7 +89,7 @@
|
|
|
89
89
|
"tsdown": "0.23.0",
|
|
90
90
|
"tsx": "4.23.13",
|
|
91
91
|
"typescript": "7.0.2",
|
|
92
|
-
"vite": "8.
|
|
92
|
+
"vite": "8.3.0",
|
|
93
93
|
"vitepress": "1.6.4",
|
|
94
94
|
"vitest": "5.0.0"
|
|
95
95
|
},
|