agent-switchboard 0.2.3 → 0.3.1
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/README.md +29 -28
- package/dist/agents/registry.d.ts +0 -6
- package/dist/agents/registry.js +0 -13
- package/dist/agents/registry.js.map +1 -1
- package/dist/commands/distribution.d.ts +3 -4
- package/dist/commands/distribution.js +18 -116
- package/dist/commands/distribution.js.map +1 -1
- package/dist/config/application-config.d.ts +1 -1
- package/dist/config/application-config.js +2 -10
- package/dist/config/application-config.js.map +1 -1
- package/dist/config/mcp-config.js +1 -3
- package/dist/config/mcp-config.js.map +1 -1
- package/dist/config/paths.d.ts +11 -7
- package/dist/config/paths.js +29 -9
- package/dist/config/paths.js.map +1 -1
- package/dist/config/schemas.d.ts +331 -43
- package/dist/config/schemas.js +109 -15
- package/dist/config/schemas.js.map +1 -1
- package/dist/config/switchboard-config.js +0 -1
- package/dist/config/switchboard-config.js.map +1 -1
- package/dist/extensions/api.d.ts +49 -0
- package/dist/extensions/api.js +41 -0
- package/dist/extensions/api.js.map +1 -0
- package/dist/extensions/loader.d.ts +17 -0
- package/dist/extensions/loader.js +73 -0
- package/dist/extensions/loader.js.map +1 -0
- package/dist/hooks/distribution.js +1 -16
- package/dist/hooks/distribution.js.map +1 -1
- package/dist/index.js +77 -123
- package/dist/index.js.map +1 -1
- package/dist/library/distribute-bundle.js +1 -19
- package/dist/library/distribute-bundle.js.map +1 -1
- package/dist/library/fs.d.ts +12 -0
- package/dist/library/fs.js +81 -0
- package/dist/library/fs.js.map +1 -1
- package/dist/library/sources.d.ts +6 -1
- package/dist/library/sources.js +73 -16
- package/dist/library/sources.js.map +1 -1
- package/dist/rules/agents.d.ts +0 -4
- package/dist/rules/agents.js +0 -10
- package/dist/rules/agents.js.map +1 -1
- package/dist/rules/distribution.d.ts +1 -2
- package/dist/rules/distribution.js +20 -79
- package/dist/rules/distribution.js.map +1 -1
- package/dist/skills/distribution.d.ts +0 -22
- package/dist/skills/distribution.js +70 -185
- package/dist/skills/distribution.js.map +1 -1
- package/dist/skills/importer.js +2 -33
- package/dist/skills/importer.js.map +1 -1
- package/dist/subagents/codex-distribute.d.ts +13 -0
- package/dist/subagents/codex-distribute.js +273 -0
- package/dist/subagents/codex-distribute.js.map +1 -0
- package/dist/subagents/distribution.d.ts +3 -4
- package/dist/subagents/distribution.js +30 -410
- package/dist/subagents/distribution.js.map +1 -1
- package/dist/targets/builtin/claude-code.d.ts +2 -0
- package/dist/targets/builtin/claude-code.js +73 -0
- package/dist/targets/builtin/claude-code.js.map +1 -0
- package/dist/targets/builtin/claude-desktop.d.ts +2 -0
- package/dist/targets/builtin/claude-desktop.js +14 -0
- package/dist/targets/builtin/claude-desktop.js.map +1 -0
- package/dist/targets/builtin/codex.d.ts +3 -0
- package/dist/targets/builtin/codex.js +57 -0
- package/dist/targets/builtin/codex.js.map +1 -0
- package/dist/targets/builtin/common.d.ts +22 -0
- package/dist/targets/builtin/common.js +55 -0
- package/dist/targets/builtin/common.js.map +1 -0
- package/dist/targets/builtin/cursor.d.ts +2 -0
- package/dist/targets/builtin/cursor.js +95 -0
- package/dist/targets/builtin/cursor.js.map +1 -0
- package/dist/targets/builtin/gemini.d.ts +2 -0
- package/dist/targets/builtin/gemini.js +62 -0
- package/dist/targets/builtin/gemini.js.map +1 -0
- package/dist/targets/builtin/index.d.ts +10 -0
- package/dist/targets/builtin/index.js +19 -0
- package/dist/targets/builtin/index.js.map +1 -0
- package/dist/targets/builtin/opencode.d.ts +2 -0
- package/dist/targets/builtin/opencode.js +67 -0
- package/dist/targets/builtin/opencode.js.map +1 -0
- package/dist/targets/builtin/trae.d.ts +3 -0
- package/dist/targets/builtin/trae.js +56 -0
- package/dist/targets/builtin/trae.js.map +1 -0
- package/dist/targets/dsl/compiler.d.ts +13 -0
- package/dist/targets/dsl/compiler.js +215 -0
- package/dist/targets/dsl/compiler.js.map +1 -0
- package/dist/targets/dsl/index.d.ts +2 -0
- package/dist/targets/dsl/index.js +3 -0
- package/dist/targets/dsl/index.js.map +1 -0
- package/dist/targets/dsl/transforms.d.ts +77 -0
- package/dist/targets/dsl/transforms.js +159 -0
- package/dist/targets/dsl/transforms.js.map +1 -0
- package/dist/targets/init.d.ts +14 -0
- package/dist/targets/init.js +28 -0
- package/dist/targets/init.js.map +1 -0
- package/dist/targets/registry.d.ts +38 -0
- package/dist/targets/registry.js +101 -0
- package/dist/targets/registry.js.map +1 -0
- package/dist/targets/types.d.ts +93 -0
- package/dist/targets/types.js +28 -0
- package/dist/targets/types.js.map +1 -0
- package/dist/ui/plugin-ui.d.ts +1 -1
- package/dist/ui/plugin-ui.js +5 -12
- package/dist/ui/plugin-ui.js.map +1 -1
- package/package.json +1 -1
package/dist/library/sources.js
CHANGED
|
@@ -7,7 +7,7 @@ import { execFileSync } from 'node:child_process';
|
|
|
7
7
|
import fs from 'node:fs';
|
|
8
8
|
import path from 'node:path';
|
|
9
9
|
import { updateConfigLayer } from '../config/layered-config.js';
|
|
10
|
-
import { getSourceCacheDir } from '../config/paths.js';
|
|
10
|
+
import { getPluginsDir, getSourceCacheDir } from '../config/paths.js';
|
|
11
11
|
import { loadSwitchboardConfig } from '../config/switchboard-config.js';
|
|
12
12
|
// ── Git utilities ──────────────────────────────────────────────────
|
|
13
13
|
function runGit(args, options) {
|
|
@@ -103,13 +103,30 @@ function getRawSources() {
|
|
|
103
103
|
const config = loadSwitchboardConfig();
|
|
104
104
|
return config.plugins.sources;
|
|
105
105
|
}
|
|
106
|
+
/**
|
|
107
|
+
* Resolve the effective local path for a plugin source.
|
|
108
|
+
* - Remote sources (object): resolve to cache dir
|
|
109
|
+
* - Absolute paths: used as-is
|
|
110
|
+
* - Bare names (no `/`, no `~`): resolve to `~/.asb/plugins/<name>/`
|
|
111
|
+
* - Other relative paths: resolve relative to CWD (legacy)
|
|
112
|
+
*/
|
|
106
113
|
function resolveEffectivePath(namespace, value) {
|
|
107
|
-
if (typeof value
|
|
114
|
+
if (typeof value !== 'string') {
|
|
115
|
+
let effectivePath = getSourceCacheDir(namespace);
|
|
116
|
+
if (value.subdir)
|
|
117
|
+
effectivePath = path.join(effectivePath, value.subdir);
|
|
118
|
+
return effectivePath;
|
|
119
|
+
}
|
|
120
|
+
if (path.isAbsolute(value))
|
|
108
121
|
return value;
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
122
|
+
if (value.startsWith('~/')) {
|
|
123
|
+
const home = process.env.HOME ?? process.env.USERPROFILE ?? '';
|
|
124
|
+
return path.join(home, value.slice(2));
|
|
125
|
+
}
|
|
126
|
+
if (!value.includes('/')) {
|
|
127
|
+
return path.join(getPluginsDir(), value);
|
|
128
|
+
}
|
|
129
|
+
return path.resolve(value);
|
|
113
130
|
}
|
|
114
131
|
// ── Validation helpers ─────────────────────────────────────────────
|
|
115
132
|
function validateNamespace(namespace) {
|
|
@@ -118,38 +135,76 @@ function validateNamespace(namespace) {
|
|
|
118
135
|
}
|
|
119
136
|
}
|
|
120
137
|
function ensureNamespaceAvailable(namespace) {
|
|
121
|
-
if (
|
|
138
|
+
if (namespace in getRawSources()) {
|
|
122
139
|
throw new Error(`Source "${namespace}" already exists. Use a different name or remove it first.`);
|
|
123
140
|
}
|
|
124
141
|
}
|
|
142
|
+
// ── Auto-discovery ─────────────────────────────────────────────────
|
|
143
|
+
/**
|
|
144
|
+
* Discover plugin sources from `~/.asb/plugins/`.
|
|
145
|
+
* Each immediate subdirectory (excluding dotfiles) is treated as a source
|
|
146
|
+
* whose namespace equals the directory name.
|
|
147
|
+
*/
|
|
148
|
+
function discoverLocalSources() {
|
|
149
|
+
const pluginsDir = getPluginsDir();
|
|
150
|
+
if (!fs.existsSync(pluginsDir))
|
|
151
|
+
return {};
|
|
152
|
+
const result = {};
|
|
153
|
+
for (const entry of fs.readdirSync(pluginsDir, { withFileTypes: true })) {
|
|
154
|
+
if (entry.name.startsWith('.'))
|
|
155
|
+
continue;
|
|
156
|
+
const isDir = entry.isDirectory() ||
|
|
157
|
+
(entry.isSymbolicLink() && fs.statSync(path.join(pluginsDir, entry.name)).isDirectory());
|
|
158
|
+
if (!isDir)
|
|
159
|
+
continue;
|
|
160
|
+
result[entry.name] = path.join(pluginsDir, entry.name);
|
|
161
|
+
}
|
|
162
|
+
return result;
|
|
163
|
+
}
|
|
125
164
|
// ── Public API ─────────────────────────────────────────────────────
|
|
165
|
+
/**
|
|
166
|
+
* Get all plugin sources: auto-discovered from `~/.asb/plugins/` merged
|
|
167
|
+
* with explicitly configured `[plugins.<name>] source = "..."` entries. Explicit entries win on conflict.
|
|
168
|
+
*/
|
|
126
169
|
export function getSources() {
|
|
170
|
+
const discovered = discoverLocalSources();
|
|
127
171
|
const raw = getRawSources();
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
172
|
+
const merged = new Map();
|
|
173
|
+
for (const [ns, effectivePath] of Object.entries(discovered)) {
|
|
174
|
+
merged.set(ns, { path: effectivePath });
|
|
175
|
+
}
|
|
176
|
+
for (const [ns, value] of Object.entries(raw)) {
|
|
177
|
+
merged.set(ns, { value, path: resolveEffectivePath(ns, value) });
|
|
178
|
+
}
|
|
179
|
+
return [...merged.entries()].map(([namespace, entry]) => {
|
|
180
|
+
if (entry.value && typeof entry.value !== 'string') {
|
|
181
|
+
return { namespace, path: entry.path, remote: entry.value };
|
|
132
182
|
}
|
|
133
|
-
return { namespace, path:
|
|
183
|
+
return { namespace, path: entry.path };
|
|
134
184
|
});
|
|
135
185
|
}
|
|
136
186
|
/**
|
|
137
187
|
* Get sources as namespace -> effective local path.
|
|
138
|
-
*
|
|
188
|
+
* Merges auto-discovered and explicitly configured sources.
|
|
139
189
|
*/
|
|
140
190
|
export function getSourcesRecord() {
|
|
191
|
+
const result = discoverLocalSources();
|
|
141
192
|
const raw = getRawSources();
|
|
142
|
-
const result = {};
|
|
143
193
|
for (const [namespace, value] of Object.entries(raw)) {
|
|
144
194
|
result[namespace] = resolveEffectivePath(namespace, value);
|
|
145
195
|
}
|
|
146
196
|
return result;
|
|
147
197
|
}
|
|
148
198
|
export function hasSource(namespace) {
|
|
149
|
-
|
|
199
|
+
const raw = getRawSources();
|
|
200
|
+
if (namespace in raw)
|
|
201
|
+
return true;
|
|
202
|
+
const discovered = discoverLocalSources();
|
|
203
|
+
return namespace in discovered;
|
|
150
204
|
}
|
|
151
205
|
/**
|
|
152
206
|
* Add a local directory source.
|
|
207
|
+
* If the path is inside `~/.asb/plugins/<namespace>/`, stores the short name only.
|
|
153
208
|
*/
|
|
154
209
|
export function addLocalSource(namespace, libraryPath) {
|
|
155
210
|
const resolvedPath = path.resolve(libraryPath);
|
|
@@ -161,13 +216,15 @@ export function addLocalSource(namespace, libraryPath) {
|
|
|
161
216
|
}
|
|
162
217
|
validateNamespace(namespace);
|
|
163
218
|
ensureNamespaceAvailable(namespace);
|
|
219
|
+
const pluginsChild = path.join(getPluginsDir(), namespace);
|
|
220
|
+
const configValue = resolvedPath === pluginsChild ? namespace : resolvedPath;
|
|
164
221
|
updateConfigLayer((layer) => ({
|
|
165
222
|
...layer,
|
|
166
223
|
plugins: {
|
|
167
224
|
...layer.plugins,
|
|
168
225
|
sources: {
|
|
169
226
|
...(layer.plugins?.sources ?? {}),
|
|
170
|
-
[namespace]:
|
|
227
|
+
[namespace]: configValue,
|
|
171
228
|
},
|
|
172
229
|
},
|
|
173
230
|
}));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sources.js","sourceRoot":"","sources":["../../src/library/sources.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"sources.js","sourceRoot":"","sources":["../../src/library/sources.ts"],"names":[],"mappings":"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"}
|
package/dist/rules/agents.d.ts
CHANGED
|
@@ -1,8 +1,4 @@
|
|
|
1
|
-
/** Agents that receive a single composed rules file (CLAUDE.md / AGENTS.md / .mdc) */
|
|
2
|
-
export declare const RULE_SUPPORTED_AGENTS: readonly ["claude-code", "codex", "cursor", "gemini", "opencode", "trae", "trae-cn"];
|
|
3
1
|
/** Agents that receive individual per-rule files */
|
|
4
2
|
export declare const RULE_PER_FILE_AGENTS: readonly [];
|
|
5
3
|
export declare const RULE_INDIRECT_AGENTS: readonly [];
|
|
6
4
|
export declare const RULE_UNSUPPORTED_AGENTS: readonly ["claude-desktop"];
|
|
7
|
-
export type RuleSupportedAgent = (typeof RULE_SUPPORTED_AGENTS)[number];
|
|
8
|
-
export type RulePerFileAgent = (typeof RULE_PER_FILE_AGENTS)[number];
|
package/dist/rules/agents.js
CHANGED
|
@@ -1,13 +1,3 @@
|
|
|
1
|
-
/** Agents that receive a single composed rules file (CLAUDE.md / AGENTS.md / .mdc) */
|
|
2
|
-
export const RULE_SUPPORTED_AGENTS = [
|
|
3
|
-
'claude-code',
|
|
4
|
-
'codex',
|
|
5
|
-
'cursor',
|
|
6
|
-
'gemini',
|
|
7
|
-
'opencode',
|
|
8
|
-
'trae',
|
|
9
|
-
'trae-cn',
|
|
10
|
-
];
|
|
11
1
|
/** Agents that receive individual per-rule files */
|
|
12
2
|
export const RULE_PER_FILE_AGENTS = [];
|
|
13
3
|
export const RULE_INDIRECT_AGENTS = [];
|
package/dist/rules/agents.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agents.js","sourceRoot":"","sources":["../../src/rules/agents.ts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"agents.js","sourceRoot":"","sources":["../../src/rules/agents.ts"],"names":[],"mappings":"AAAA,oDAAoD;AACpD,MAAM,CAAC,MAAM,oBAAoB,GAAG,EAAW,CAAC;AAEhD,MAAM,CAAC,MAAM,oBAAoB,GAAG,EAAW,CAAC;AAEhD,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,gBAAgB,CAAU,CAAC"}
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import type { ConfigScope } from '../config/scope.js';
|
|
2
|
-
import { RULE_SUPPORTED_AGENTS } from './agents.js';
|
|
3
2
|
import type { ComposedRules } from './composer.js';
|
|
4
3
|
export type DistributionStatus = 'written' | 'skipped' | 'error';
|
|
5
4
|
export interface DistributionResult {
|
|
@@ -20,5 +19,5 @@ export declare function distributeRules(_composed?: ComposedRules, options?: Dis
|
|
|
20
19
|
export declare function listUnsupportedAgents(): string[];
|
|
21
20
|
export declare function listIndirectAgents(): string[];
|
|
22
21
|
export declare function listPerFileAgents(): string[];
|
|
23
|
-
export declare function resolveRuleFilePath(agent:
|
|
22
|
+
export declare function resolveRuleFilePath(agent: string, scope?: ConfigScope): string;
|
|
24
23
|
export {};
|
|
@@ -1,77 +1,25 @@
|
|
|
1
1
|
import fs from 'node:fs';
|
|
2
2
|
import path from 'node:path';
|
|
3
|
-
import {
|
|
4
|
-
import { RULE_INDIRECT_AGENTS, RULE_PER_FILE_AGENTS,
|
|
3
|
+
import { filterInstalled, getTargetsForSection } from '../targets/registry.js';
|
|
4
|
+
import { RULE_INDIRECT_AGENTS, RULE_PER_FILE_AGENTS, RULE_UNSUPPORTED_AGENTS } from './agents.js';
|
|
5
5
|
import { composeActiveRulesForApplication } from './composer.js';
|
|
6
6
|
import { loadRuleLibrary } from './library.js';
|
|
7
7
|
import { updateRuleState } from './state.js';
|
|
8
|
-
function resolveRuleFile(agent, scope) {
|
|
9
|
-
const home = getAgentsHome();
|
|
10
|
-
const projectRoot = scope?.project?.trim();
|
|
11
|
-
switch (agent) {
|
|
12
|
-
case 'claude-code':
|
|
13
|
-
// Project-level supported conventionally under .claude/CLAUDE.md, else user-level
|
|
14
|
-
if (projectRoot && projectRoot.length > 0) {
|
|
15
|
-
return path.join(path.resolve(projectRoot), '.claude', 'CLAUDE.md');
|
|
16
|
-
}
|
|
17
|
-
return path.join(getClaudeDir(), 'CLAUDE.md');
|
|
18
|
-
case 'codex':
|
|
19
|
-
// Codex supports project-root AGENTS.md; otherwise use CODEX_HOME
|
|
20
|
-
if (projectRoot && projectRoot.length > 0) {
|
|
21
|
-
return path.join(path.resolve(projectRoot), 'AGENTS.md');
|
|
22
|
-
}
|
|
23
|
-
return path.join(getCodexDir(), 'AGENTS.md');
|
|
24
|
-
case 'gemini':
|
|
25
|
-
// Gemini uses AGENTS.md
|
|
26
|
-
if (projectRoot && projectRoot.length > 0) {
|
|
27
|
-
return path.join(path.resolve(projectRoot), 'AGENTS.md');
|
|
28
|
-
}
|
|
29
|
-
return path.join(getGeminiDir(), 'AGENTS.md');
|
|
30
|
-
case 'cursor':
|
|
31
|
-
if (projectRoot && projectRoot.length > 0) {
|
|
32
|
-
return path.join(getProjectCursorDir(projectRoot), 'rules', 'asb-rules.mdc');
|
|
33
|
-
}
|
|
34
|
-
return path.join(getCursorDir(), 'rules', 'asb-rules.mdc');
|
|
35
|
-
case 'opencode':
|
|
36
|
-
// OpenCode supports project-level AGENTS.md at repository root; otherwise use global.
|
|
37
|
-
if (projectRoot && projectRoot.length > 0) {
|
|
38
|
-
return path.join(path.resolve(projectRoot), 'AGENTS.md');
|
|
39
|
-
}
|
|
40
|
-
return getOpencodePath('AGENTS.md');
|
|
41
|
-
case 'trae':
|
|
42
|
-
case 'trae-cn':
|
|
43
|
-
if (projectRoot && projectRoot.length > 0) {
|
|
44
|
-
return path.join(getProjectTraeDir(projectRoot), 'rules', 'asb-rules.md');
|
|
45
|
-
}
|
|
46
|
-
return path.join(getTraeDataDir(agent), 'user_rules', 'asb-rules.md');
|
|
47
|
-
default:
|
|
48
|
-
return path.join(home, agent, 'AGENTS.md');
|
|
49
|
-
}
|
|
50
|
-
}
|
|
51
8
|
function ensureDirectory(filePath) {
|
|
52
9
|
const dir = path.dirname(filePath);
|
|
53
10
|
if (!fs.existsSync(dir)) {
|
|
54
11
|
fs.mkdirSync(dir, { recursive: true });
|
|
55
12
|
}
|
|
56
13
|
}
|
|
57
|
-
function wrapMdcFrontmatter(body) {
|
|
58
|
-
const lines = ['---', 'description: Agent Switchboard Rules', 'alwaysApply: true', '---', ''];
|
|
59
|
-
if (body.length > 0) {
|
|
60
|
-
lines.push(body);
|
|
61
|
-
}
|
|
62
|
-
return lines.join('\n');
|
|
63
|
-
}
|
|
64
14
|
const CURSOR_SINGLE_FILE = 'asb-rules.mdc';
|
|
65
15
|
/**
|
|
66
16
|
* Remove legacy per-rule .mdc files left by the old Cursor distribution scheme.
|
|
67
|
-
* Only deletes files whose basename (minus .mdc) matches a known rule library ID,
|
|
68
|
-
* leaving user-created .mdc files and the new single-file untouched.
|
|
69
17
|
*/
|
|
70
18
|
function cleanupLegacyCursorMdcFiles(scope) {
|
|
71
|
-
const
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
19
|
+
const cursorTarget = getTargetsForSection('rules').find((t) => t.id === 'cursor');
|
|
20
|
+
if (!cursorTarget?.rules)
|
|
21
|
+
return;
|
|
22
|
+
const targetDir = path.dirname(cursorTarget.rules.resolveFilePath(scope));
|
|
75
23
|
if (!fs.existsSync(targetDir))
|
|
76
24
|
return;
|
|
77
25
|
const libraryIds = new Set(loadRuleLibrary().map((r) => r.id));
|
|
@@ -94,18 +42,17 @@ export function distributeRules(_composed, options, scope) {
|
|
|
94
42
|
const timestamp = new Date().toISOString();
|
|
95
43
|
const forceRewrite = options?.force === true;
|
|
96
44
|
const agentSyncUpdates = new Map();
|
|
97
|
-
// Track the first composed document for return value (backwards compatibility)
|
|
98
45
|
let firstComposed = null;
|
|
99
|
-
|
|
100
|
-
|
|
46
|
+
const targets = filterInstalled(getTargetsForSection('rules'));
|
|
47
|
+
for (const target of targets) {
|
|
48
|
+
const handler = target.rules;
|
|
49
|
+
const agent = target.id;
|
|
101
50
|
const document = composeActiveRulesForApplication(agent, scope);
|
|
102
51
|
if (!firstComposed) {
|
|
103
52
|
firstComposed = document;
|
|
104
53
|
}
|
|
105
|
-
const filePath =
|
|
106
|
-
const finalContent =
|
|
107
|
-
? wrapMdcFrontmatter(document.content)
|
|
108
|
-
: document.content;
|
|
54
|
+
const filePath = handler.resolveFilePath(scope);
|
|
55
|
+
const finalContent = handler.render(document.content);
|
|
109
56
|
let existingContent = null;
|
|
110
57
|
try {
|
|
111
58
|
if (fs.existsSync(filePath)) {
|
|
@@ -118,12 +65,7 @@ export function distributeRules(_composed, options, scope) {
|
|
|
118
65
|
const hadExistingFile = existingContent !== null;
|
|
119
66
|
const contentMatches = existingContent !== null && existingContent === finalContent;
|
|
120
67
|
if (!forceRewrite && contentMatches) {
|
|
121
|
-
results.push({
|
|
122
|
-
agent,
|
|
123
|
-
filePath,
|
|
124
|
-
status: 'skipped',
|
|
125
|
-
reason: 'up-to-date',
|
|
126
|
-
});
|
|
68
|
+
results.push({ agent, filePath, status: 'skipped', reason: 'up-to-date' });
|
|
127
69
|
agentSyncUpdates.set(agent, { hash: document.hash, updatedAt: timestamp });
|
|
128
70
|
continue;
|
|
129
71
|
}
|
|
@@ -139,8 +81,6 @@ export function distributeRules(_composed, options, scope) {
|
|
|
139
81
|
results.push({ agent, filePath, status: 'error', error: message });
|
|
140
82
|
}
|
|
141
83
|
}
|
|
142
|
-
// Clean up legacy per-rule .mdc files from the old Cursor distribution scheme.
|
|
143
|
-
// The new approach writes a single asb-rules.mdc; old <ruleId>.mdc files are orphans.
|
|
144
84
|
cleanupLegacyCursorMdcFiles(scope);
|
|
145
85
|
if (agentSyncUpdates.size > 0) {
|
|
146
86
|
updateRuleState((current) => {
|
|
@@ -148,10 +88,7 @@ export function distributeRules(_composed, options, scope) {
|
|
|
148
88
|
for (const [agent, update] of agentSyncUpdates.entries()) {
|
|
149
89
|
agentSync[agent] = update;
|
|
150
90
|
}
|
|
151
|
-
return {
|
|
152
|
-
...current,
|
|
153
|
-
agentSync,
|
|
154
|
-
};
|
|
91
|
+
return { ...current, agentSync };
|
|
155
92
|
}, scope);
|
|
156
93
|
}
|
|
157
94
|
return {
|
|
@@ -160,7 +97,7 @@ export function distributeRules(_composed, options, scope) {
|
|
|
160
97
|
};
|
|
161
98
|
}
|
|
162
99
|
// ---------------------------------------------------------------------------
|
|
163
|
-
// Public helpers
|
|
100
|
+
// Public helpers (backward compatible)
|
|
164
101
|
// ---------------------------------------------------------------------------
|
|
165
102
|
export function listUnsupportedAgents() {
|
|
166
103
|
return [...RULE_UNSUPPORTED_AGENTS];
|
|
@@ -172,6 +109,10 @@ export function listPerFileAgents() {
|
|
|
172
109
|
return [...RULE_PER_FILE_AGENTS];
|
|
173
110
|
}
|
|
174
111
|
export function resolveRuleFilePath(agent, scope) {
|
|
175
|
-
|
|
112
|
+
const target = getTargetsForSection('rules').find((t) => t.id === agent);
|
|
113
|
+
if (!target?.rules) {
|
|
114
|
+
throw new Error(`No rules handler for agent: ${agent}`);
|
|
115
|
+
}
|
|
116
|
+
return target.rules.resolveFilePath(scope);
|
|
176
117
|
}
|
|
177
118
|
//# sourceMappingURL=distribution.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"distribution.js","sourceRoot":"","sources":["../../src/rules/distribution.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"distribution.js","sourceRoot":"","sources":["../../src/rules/distribution.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,36 +1,14 @@
|
|
|
1
1
|
import type { ConfigScope } from '../config/scope.js';
|
|
2
2
|
import { type BundleDistributionResult } from '../library/distribute-bundle.js';
|
|
3
|
-
export type SkillPlatform = 'claude-code' | 'codex' | 'gemini' | 'opencode' | 'cursor' | 'trae' | 'trae-cn';
|
|
4
|
-
export declare const SKILL_PLATFORMS: SkillPlatform[];
|
|
5
3
|
export type SkillTarget = 'claude-code' | 'agents';
|
|
6
|
-
export declare const SKILL_TARGETS: SkillTarget[];
|
|
7
|
-
/**
|
|
8
|
-
* Resolve target directory for a skill on a specific target.
|
|
9
|
-
*/
|
|
10
4
|
export declare function resolveSkillTargetDir(target: string, id: string, scope?: ConfigScope): string;
|
|
11
5
|
export interface SkillDistributionOutcome {
|
|
12
6
|
results: BundleDistributionResult<string>[];
|
|
13
|
-
/** Targets where skills were successfully distributed */
|
|
14
7
|
successTargets: string[];
|
|
15
|
-
/** Total skills written */
|
|
16
8
|
totalWritten: number;
|
|
17
|
-
/** Total skills skipped (up-to-date) */
|
|
18
9
|
totalSkipped: number;
|
|
19
|
-
/** Total errors */
|
|
20
10
|
totalErrors: number;
|
|
21
11
|
}
|
|
22
|
-
/**
|
|
23
|
-
* Distribute active skills to supported targets.
|
|
24
|
-
*
|
|
25
|
-
* When `useAgentsDir` is true (2-target mode):
|
|
26
|
-
* - `claude-code`: uses Claude Code's per-agent active skills
|
|
27
|
-
* - `agents`: uses the union of active skills across Codex, Gemini, and OpenCode
|
|
28
|
-
* - Legacy platform-specific paths (gemini, opencode) are cleaned up
|
|
29
|
-
*
|
|
30
|
-
* When `useAgentsDir` is false (default, 4-target mode):
|
|
31
|
-
* - Distributes to each platform individually: claude-code, codex, gemini, opencode
|
|
32
|
-
* - Only cleans up OpenCode's legacy plural `skills/` path
|
|
33
|
-
*/
|
|
34
12
|
export declare function distributeSkills(scope?: ConfigScope, options?: {
|
|
35
13
|
useAgentsDir?: boolean;
|
|
36
14
|
}): SkillDistributionOutcome;
|