@wayai/cli 0.2.36 → 0.2.38
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/commands/push.d.ts +5 -4
- package/dist/commands/push.js +87 -48
- package/dist/commands/push.js.map +1 -1
- package/dist/lib/parser.d.ts +5 -3
- package/dist/lib/parser.js +42 -8
- package/dist/lib/parser.js.map +1 -1
- package/dist/lib/utils.d.ts +7 -2
- package/dist/lib/utils.js +23 -12
- package/dist/lib/utils.js.map +1 -1
- package/dist/lib/workspace.d.ts +4 -4
- package/dist/lib/workspace.js +18 -12
- package/dist/lib/workspace.js.map +1 -1
- package/dist/lib/yaml-writer.d.ts +6 -4
- package/dist/lib/yaml-writer.js +61 -39
- package/dist/lib/yaml-writer.js.map +1 -1
- package/package.json +1 -1
package/dist/commands/push.d.ts
CHANGED
|
@@ -5,10 +5,11 @@
|
|
|
5
5
|
*/
|
|
6
6
|
import { ApiClient } from '../lib/api-client.js';
|
|
7
7
|
/**
|
|
8
|
-
* Auto-rename agent .md files when agents have been renamed (matched by ID).
|
|
9
|
-
* Compares local
|
|
10
|
-
* then renames old-slug.
|
|
11
|
-
*
|
|
8
|
+
* Auto-rename agent .yaml and .md files when agents have been renamed (matched by ID).
|
|
9
|
+
* Compares local agent names against remote agent names via pull,
|
|
10
|
+
* then renames old-slug.yaml → new-slug.yaml and old-slug.md → new-slug.md.
|
|
11
|
+
* Handles slug swaps via temp files.
|
|
12
|
+
* Also updates explicit `instructions` paths in the hub YAML to match.
|
|
12
13
|
*/
|
|
13
14
|
export declare function autoRenameAgentFiles(client: ApiClient, hubId: string, hubFolder: string, organizationId?: string): Promise<void>;
|
|
14
15
|
export declare function pushCommand(args: string[]): Promise<void>;
|
package/dist/commands/push.js
CHANGED
|
@@ -12,7 +12,7 @@ import { parseHubFolder } from '../lib/parser.js';
|
|
|
12
12
|
import { writeHubFolder } from '../lib/yaml-writer.js';
|
|
13
13
|
import { downloadBinaryResourceFiles } from './pull.js';
|
|
14
14
|
import { printDiff } from '../lib/diff-display.js';
|
|
15
|
-
import { confirm, slugify } from '../lib/utils.js';
|
|
15
|
+
import { confirm, slugify, resolveHubYamlPath } from '../lib/utils.js';
|
|
16
16
|
import { autoRenameHubFolder, scanWorkspaceHubs, detectWorkspace, findGitRoot } from '../lib/workspace.js';
|
|
17
17
|
import { requireRepoConfig } from '../lib/repo-config.js';
|
|
18
18
|
function parseArgs(args) {
|
|
@@ -32,6 +32,8 @@ function printSyncResult(result) {
|
|
|
32
32
|
parts.push('hub updated');
|
|
33
33
|
if (c.connections_created > 0)
|
|
34
34
|
parts.push(`${c.connections_created} connection(s) created`);
|
|
35
|
+
if (c.connections_updated > 0)
|
|
36
|
+
parts.push(`${c.connections_updated} connection(s) updated`);
|
|
35
37
|
if (c.agents_created > 0)
|
|
36
38
|
parts.push(`${c.agents_created} agent(s) created`);
|
|
37
39
|
if (c.agents_updated > 0)
|
|
@@ -101,19 +103,41 @@ function printSyncResult(result) {
|
|
|
101
103
|
}
|
|
102
104
|
}
|
|
103
105
|
/**
|
|
104
|
-
* Auto-rename agent .md files when agents have been renamed (matched by ID).
|
|
105
|
-
* Compares local
|
|
106
|
-
* then renames old-slug.
|
|
107
|
-
*
|
|
106
|
+
* Auto-rename agent .yaml and .md files when agents have been renamed (matched by ID).
|
|
107
|
+
* Compares local agent names against remote agent names via pull,
|
|
108
|
+
* then renames old-slug.yaml → new-slug.yaml and old-slug.md → new-slug.md.
|
|
109
|
+
* Handles slug swaps via temp files.
|
|
110
|
+
* Also updates explicit `instructions` paths in the hub YAML to match.
|
|
108
111
|
*/
|
|
109
112
|
export async function autoRenameAgentFiles(client, hubId, hubFolder, organizationId) {
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
113
|
+
// Collect agents with IDs from per-agent YAML files or main YAML
|
|
114
|
+
const agentsDir = path.join(hubFolder, 'agents');
|
|
115
|
+
let agentsWithIds = [];
|
|
116
|
+
// Try per-agent YAML files first
|
|
117
|
+
if (fs.existsSync(agentsDir)) {
|
|
118
|
+
const yamlFiles = fs.readdirSync(agentsDir).filter((f) => f.endsWith('.yaml'));
|
|
119
|
+
for (const file of yamlFiles) {
|
|
120
|
+
try {
|
|
121
|
+
const content = fs.readFileSync(path.join(agentsDir, file), 'utf-8');
|
|
122
|
+
const agent = yaml.load(content);
|
|
123
|
+
if (agent?.id && agent.name) {
|
|
124
|
+
agentsWithIds.push({ id: agent.id, name: agent.name });
|
|
125
|
+
}
|
|
126
|
+
}
|
|
127
|
+
catch {
|
|
128
|
+
console.warn(` Warning: could not parse agents/${file}, skipping`);
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
}
|
|
132
|
+
// Fall back to inline agents from main YAML
|
|
133
|
+
if (agentsWithIds.length === 0) {
|
|
134
|
+
const yamlPath = resolveHubYamlPath(hubFolder);
|
|
135
|
+
if (!yamlPath)
|
|
136
|
+
return;
|
|
137
|
+
const yamlContent = fs.readFileSync(yamlPath, 'utf-8');
|
|
138
|
+
const config = yaml.load(yamlContent);
|
|
139
|
+
agentsWithIds = (config.agents || []).filter((a) => !!a.id && !!a.name);
|
|
140
|
+
}
|
|
117
141
|
if (agentsWithIds.length === 0)
|
|
118
142
|
return;
|
|
119
143
|
// Fetch remote state to detect renames (extra round-trip, only when agents have IDs)
|
|
@@ -147,22 +171,31 @@ export async function autoRenameAgentFiles(client, hubId, hubFolder, organizatio
|
|
|
147
171
|
}
|
|
148
172
|
if (renames.length === 0)
|
|
149
173
|
return;
|
|
150
|
-
const agentsDir = path.join(hubFolder, 'agents');
|
|
151
174
|
if (!fs.existsSync(agentsDir))
|
|
152
175
|
return;
|
|
153
176
|
// Clean up orphaned temp files from a previous interrupted rename
|
|
154
177
|
for (const file of fs.readdirSync(agentsDir)) {
|
|
155
|
-
if (file.startsWith('__rename_temp_') && file.endsWith('.md')) {
|
|
178
|
+
if (file.startsWith('__rename_temp_') && (file.endsWith('.md') || file.endsWith('.yaml'))) {
|
|
156
179
|
console.warn(` Warning: removing orphaned temp file agents/${file}`);
|
|
157
180
|
fs.unlinkSync(path.join(agentsDir, file));
|
|
158
181
|
}
|
|
159
182
|
}
|
|
183
|
+
// Helper to rename a file if it exists (for both .yaml and .md extensions)
|
|
184
|
+
const renameFileIfExists = (dir, oldName, newName) => {
|
|
185
|
+
const oldPath = path.join(dir, oldName);
|
|
186
|
+
const newPath = path.join(dir, newName);
|
|
187
|
+
if (!fs.existsSync(oldPath))
|
|
188
|
+
return false;
|
|
189
|
+
fs.renameSync(oldPath, newPath);
|
|
190
|
+
return true;
|
|
191
|
+
};
|
|
160
192
|
// Detect slug swaps: if newSlug matches another rename's oldSlug
|
|
161
193
|
const oldSlugs = new Set(renames.map((r) => r.oldSlug));
|
|
162
194
|
const newSlugs = new Set(renames.map((r) => r.newSlug));
|
|
163
195
|
const hasConflicts = renames.some((r) => oldSlugs.has(r.newSlug)) || newSlugs.size !== renames.length;
|
|
164
196
|
// Track which renames actually completed (file existed and was moved)
|
|
165
197
|
const completedRenames = [];
|
|
198
|
+
const extensions = ['.yaml', '.md'];
|
|
166
199
|
if (hasConflicts) {
|
|
167
200
|
// Rename through temp files to avoid collisions
|
|
168
201
|
const tempRenames = [];
|
|
@@ -170,57 +203,63 @@ export async function autoRenameAgentFiles(client, hubId, hubFolder, organizatio
|
|
|
170
203
|
const tempName = `__rename_temp_${oldSlug}_${Date.now()}`;
|
|
171
204
|
tempRenames.push({ oldSlug, tempName, newSlug });
|
|
172
205
|
}
|
|
173
|
-
// Step 1: old → temp
|
|
206
|
+
// Step 1: old → temp (both extensions)
|
|
174
207
|
for (const { oldSlug, tempName } of tempRenames) {
|
|
175
|
-
const
|
|
176
|
-
|
|
177
|
-
if (fs.existsSync(oldPath)) {
|
|
178
|
-
fs.renameSync(oldPath, tempPath);
|
|
208
|
+
for (const ext of extensions) {
|
|
209
|
+
renameFileIfExists(agentsDir, `${oldSlug}${ext}`, `${tempName}${ext}`);
|
|
179
210
|
}
|
|
180
211
|
}
|
|
181
|
-
// Step 2: temp → new
|
|
182
|
-
for (const { tempName, newSlug } of tempRenames) {
|
|
183
|
-
|
|
184
|
-
const
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
212
|
+
// Step 2: temp → new (both extensions)
|
|
213
|
+
for (const { oldSlug, tempName, newSlug } of tempRenames) {
|
|
214
|
+
let anyRenamed = false;
|
|
215
|
+
for (const ext of extensions) {
|
|
216
|
+
if (renameFileIfExists(agentsDir, `${tempName}${ext}`, `${newSlug}${ext}`)) {
|
|
217
|
+
anyRenamed = true;
|
|
218
|
+
}
|
|
219
|
+
}
|
|
220
|
+
if (anyRenamed) {
|
|
221
|
+
completedRenames.push({ oldSlug, newSlug });
|
|
222
|
+
console.log(` Renamed agents/${oldSlug}.* → agents/${newSlug}.*`);
|
|
190
223
|
}
|
|
191
224
|
}
|
|
192
225
|
}
|
|
193
226
|
else {
|
|
194
227
|
// No conflicts — direct renames
|
|
195
228
|
for (const { oldSlug, newSlug } of renames) {
|
|
196
|
-
|
|
197
|
-
const
|
|
198
|
-
if (!
|
|
229
|
+
// Check if any file with old slug exists
|
|
230
|
+
const hasOldFile = extensions.some((ext) => fs.existsSync(path.join(agentsDir, `${oldSlug}${ext}`)));
|
|
231
|
+
if (!hasOldFile)
|
|
199
232
|
continue;
|
|
200
|
-
|
|
201
|
-
|
|
233
|
+
// Check for target conflicts
|
|
234
|
+
const hasNewFile = extensions.some((ext) => fs.existsSync(path.join(agentsDir, `${newSlug}${ext}`)));
|
|
235
|
+
if (hasNewFile) {
|
|
236
|
+
console.warn(` Warning: skipping rename agents/${oldSlug}.* → agents/${newSlug}.* (target already exists)`);
|
|
202
237
|
continue;
|
|
203
238
|
}
|
|
204
|
-
|
|
239
|
+
for (const ext of extensions) {
|
|
240
|
+
renameFileIfExists(agentsDir, `${oldSlug}${ext}`, `${newSlug}${ext}`);
|
|
241
|
+
}
|
|
205
242
|
completedRenames.push({ oldSlug, newSlug });
|
|
206
|
-
console.log(` Renamed agents/${oldSlug}
|
|
243
|
+
console.log(` Renamed agents/${oldSlug}.* → agents/${newSlug}.*`);
|
|
207
244
|
}
|
|
208
245
|
}
|
|
209
246
|
if (completedRenames.length === 0)
|
|
210
247
|
return;
|
|
211
|
-
// Update explicit instructions paths in YAML for completed renames only.
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
248
|
+
// Update explicit instructions paths in hub YAML for completed renames only.
|
|
249
|
+
const mainYamlPath = resolveHubYamlPath(hubFolder);
|
|
250
|
+
if (mainYamlPath) {
|
|
251
|
+
const mainYamlContent = fs.readFileSync(mainYamlPath, 'utf-8');
|
|
252
|
+
const substitutionMap = new Map();
|
|
253
|
+
for (const { oldSlug, newSlug } of completedRenames) {
|
|
254
|
+
substitutionMap.set(`agents/${oldSlug}.md`, `agents/${newSlug}.md`);
|
|
255
|
+
}
|
|
256
|
+
const escapedKeys = Array.from(substitutionMap.keys())
|
|
257
|
+
.map((k) => k.replace(/[.*+?^${}()|[\]\\]/g, '\\$&'));
|
|
258
|
+
const updatedYaml = mainYamlContent.replace(new RegExp(`(instructions:\\s+)(${escapedKeys.join('|')})`, 'g'), (_match, prefix, pathMatch) => `${prefix}${substitutionMap.get(pathMatch) ?? pathMatch}`);
|
|
259
|
+
if (updatedYaml !== mainYamlContent) {
|
|
260
|
+
fs.writeFileSync(mainYamlPath, updatedYaml, 'utf-8');
|
|
261
|
+
console.log(` Updated instructions paths in ${path.basename(mainYamlPath)}`);
|
|
262
|
+
}
|
|
224
263
|
}
|
|
225
264
|
}
|
|
226
265
|
async function pushSingleHub(client, hubId, hubFolder, autoConfirm, organizationId) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"push.js","sourceRoot":"","sources":["../../src/commands/push.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"push.js","sourceRoot":"","sources":["../../src/commands/push.ts"],"names":[],"mappings":"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"}
|
package/dist/lib/parser.d.ts
CHANGED
|
@@ -1,11 +1,13 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Parse
|
|
2
|
+
* Parse hub.yaml + agents/<slug>.yaml + agents/*.md into HubAsCodePayload.
|
|
3
|
+
* Falls back to wayai.yaml for backward compatibility.
|
|
3
4
|
* Synced with repositories/wayai-workspace/.github/actions/wayai-sync/src/parser.ts
|
|
4
5
|
*/
|
|
5
6
|
import type { HubAsCodePayload } from './types.js';
|
|
6
7
|
/**
|
|
7
8
|
* Parse a hub folder into a HubAsCodePayload.
|
|
8
|
-
* Reads wayai.yaml
|
|
9
|
-
*
|
|
9
|
+
* Reads hub.yaml (or wayai.yaml for backward compat) and resolves agents from
|
|
10
|
+
* agents/<slug>.yaml files (or inline agents array for old format).
|
|
11
|
+
* Resolves agent instructions from companion .md files.
|
|
10
12
|
*/
|
|
11
13
|
export declare function parseHubFolder(hubFolder: string): HubAsCodePayload;
|
package/dist/lib/parser.js
CHANGED
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Parse
|
|
2
|
+
* Parse hub.yaml + agents/<slug>.yaml + agents/*.md into HubAsCodePayload.
|
|
3
|
+
* Falls back to wayai.yaml for backward compatibility.
|
|
3
4
|
* Synced with repositories/wayai-workspace/.github/actions/wayai-sync/src/parser.ts
|
|
4
5
|
*/
|
|
5
6
|
import * as fs from 'node:fs';
|
|
6
7
|
import * as path from 'node:path';
|
|
7
8
|
import * as crypto from 'node:crypto';
|
|
8
9
|
import * as yaml from 'js-yaml';
|
|
9
|
-
import { slugify } from './utils.js';
|
|
10
|
+
import { slugify, resolveHubYamlPath } from './utils.js';
|
|
10
11
|
const BINARY_EXTENSIONS = new Set([
|
|
11
12
|
'pdf', 'png', 'jpg', 'jpeg', 'gif', 'webp', 'svg', 'ico',
|
|
12
13
|
'mp3', 'mp4', 'wav', 'zip', 'tar', 'gz',
|
|
@@ -36,13 +37,14 @@ function computeHash(data) {
|
|
|
36
37
|
}
|
|
37
38
|
/**
|
|
38
39
|
* Parse a hub folder into a HubAsCodePayload.
|
|
39
|
-
* Reads wayai.yaml
|
|
40
|
-
*
|
|
40
|
+
* Reads hub.yaml (or wayai.yaml for backward compat) and resolves agents from
|
|
41
|
+
* agents/<slug>.yaml files (or inline agents array for old format).
|
|
42
|
+
* Resolves agent instructions from companion .md files.
|
|
41
43
|
*/
|
|
42
44
|
export function parseHubFolder(hubFolder) {
|
|
43
|
-
const yamlPath =
|
|
44
|
-
if (!
|
|
45
|
-
throw new Error(`
|
|
45
|
+
const yamlPath = resolveHubYamlPath(hubFolder);
|
|
46
|
+
if (!yamlPath) {
|
|
47
|
+
throw new Error(`hub.yaml not found in ${hubFolder}`);
|
|
46
48
|
}
|
|
47
49
|
const yamlContent = fs.readFileSync(yamlPath, 'utf-8');
|
|
48
50
|
const config = yaml.load(yamlContent);
|
|
@@ -55,9 +57,12 @@ export function parseHubFolder(hubFolder) {
|
|
|
55
57
|
if (!config.hub_environment) {
|
|
56
58
|
throw new Error(`Missing hub_environment in ${yamlPath}`);
|
|
57
59
|
}
|
|
60
|
+
// Resolve agents: try per-agent YAML files first, fall back to inline agents
|
|
61
|
+
const agentYamlFiles = scanAgentYamlFiles(hubFolder);
|
|
62
|
+
const rawAgents = agentYamlFiles.length > 0 ? agentYamlFiles : config.agents;
|
|
58
63
|
// Resolve agent instructions from .md files
|
|
59
64
|
// Synced with repositories/wayai-workspace/.github/actions/wayai-sync/src/parser.ts
|
|
60
|
-
const agents =
|
|
65
|
+
const agents = rawAgents?.map((agent) => {
|
|
61
66
|
const resolved = { ...agent };
|
|
62
67
|
if (typeof resolved.instructions === 'string' && resolved.instructions.endsWith('.md')) {
|
|
63
68
|
// Explicit path: "agents/pilot.md" or "pilot.md" (legacy)
|
|
@@ -119,6 +124,35 @@ export function parseHubFolder(hubFolder) {
|
|
|
119
124
|
}
|
|
120
125
|
return payload;
|
|
121
126
|
}
|
|
127
|
+
/**
|
|
128
|
+
* Scan agents/ directory for per-agent YAML config files.
|
|
129
|
+
* Returns agent configs sorted alphabetically by filename.
|
|
130
|
+
* Resolves instructions from companion .md files.
|
|
131
|
+
*/
|
|
132
|
+
function scanAgentYamlFiles(hubFolder) {
|
|
133
|
+
const agentsDir = path.join(hubFolder, 'agents');
|
|
134
|
+
if (!fs.existsSync(agentsDir))
|
|
135
|
+
return [];
|
|
136
|
+
const yamlFiles = fs.readdirSync(agentsDir)
|
|
137
|
+
.filter((f) => f.endsWith('.yaml'))
|
|
138
|
+
.sort();
|
|
139
|
+
if (yamlFiles.length === 0)
|
|
140
|
+
return [];
|
|
141
|
+
const agents = [];
|
|
142
|
+
for (const file of yamlFiles) {
|
|
143
|
+
const filePath = path.join(agentsDir, file);
|
|
144
|
+
const content = fs.readFileSync(filePath, 'utf-8');
|
|
145
|
+
const agent = yaml.load(content);
|
|
146
|
+
if (!agent || typeof agent !== 'object')
|
|
147
|
+
continue;
|
|
148
|
+
if (!agent.name) {
|
|
149
|
+
console.warn(` Warning: skipping ${file} (missing 'name' field)`);
|
|
150
|
+
continue;
|
|
151
|
+
}
|
|
152
|
+
agents.push(agent);
|
|
153
|
+
}
|
|
154
|
+
return agents;
|
|
155
|
+
}
|
|
122
156
|
/**
|
|
123
157
|
* Scan resource directories and populate file entries with content and hashes.
|
|
124
158
|
*/
|
package/dist/lib/parser.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parser.js","sourceRoot":"","sources":["../../src/lib/parser.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"parser.js","sourceRoot":"","sources":["../../src/lib/parser.ts"],"names":[],"mappings":"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"}
|
package/dist/lib/utils.d.ts
CHANGED
|
@@ -11,8 +11,13 @@ export declare function confirm(question: string): Promise<boolean>;
|
|
|
11
11
|
*/
|
|
12
12
|
export declare function slugify(input: string): string;
|
|
13
13
|
/**
|
|
14
|
-
*
|
|
15
|
-
* Returns
|
|
14
|
+
* Resolve the hub YAML path in a folder: tries hub.yaml first, falls back to wayai.yaml.
|
|
15
|
+
* Returns the full path if found, null otherwise.
|
|
16
|
+
*/
|
|
17
|
+
export declare function resolveHubYamlPath(hubFolder: string): string | null;
|
|
18
|
+
/**
|
|
19
|
+
* Try to detect hub_id from hub.yaml (or wayai.yaml) in the current working directory.
|
|
20
|
+
* Returns null if no config file exists or it lacks hub_id.
|
|
16
21
|
*/
|
|
17
22
|
export declare function detectHubFromCwd(): Promise<{
|
|
18
23
|
hubId: string;
|
package/dist/lib/utils.js
CHANGED
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Shared utility functions
|
|
3
3
|
*/
|
|
4
|
+
import * as fs from 'node:fs';
|
|
5
|
+
import * as path from 'node:path';
|
|
4
6
|
import * as readline from 'node:readline';
|
|
5
7
|
/**
|
|
6
8
|
* Prompt the user for yes/no confirmation. Returns true if they answer 'y'.
|
|
@@ -29,22 +31,31 @@ export function slugify(input) {
|
|
|
29
31
|
.slice(0, 50); // limit length
|
|
30
32
|
}
|
|
31
33
|
/**
|
|
32
|
-
*
|
|
33
|
-
* Returns
|
|
34
|
+
* Resolve the hub YAML path in a folder: tries hub.yaml first, falls back to wayai.yaml.
|
|
35
|
+
* Returns the full path if found, null otherwise.
|
|
36
|
+
*/
|
|
37
|
+
export function resolveHubYamlPath(hubFolder) {
|
|
38
|
+
for (const filename of ['hub.yaml', 'wayai.yaml']) {
|
|
39
|
+
const yamlPath = path.join(hubFolder, filename);
|
|
40
|
+
if (fs.existsSync(yamlPath))
|
|
41
|
+
return yamlPath;
|
|
42
|
+
}
|
|
43
|
+
return null;
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* Try to detect hub_id from hub.yaml (or wayai.yaml) in the current working directory.
|
|
47
|
+
* Returns null if no config file exists or it lacks hub_id.
|
|
34
48
|
*/
|
|
35
49
|
export async function detectHubFromCwd() {
|
|
36
|
-
const fs = await import('node:fs');
|
|
37
|
-
const path = await import('node:path');
|
|
38
50
|
const yaml = await import('js-yaml');
|
|
39
51
|
const cwd = process.cwd();
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
}
|
|
52
|
+
const yamlPath = resolveHubYamlPath(cwd);
|
|
53
|
+
if (!yamlPath)
|
|
54
|
+
return null;
|
|
55
|
+
const content = fs.readFileSync(yamlPath, 'utf-8');
|
|
56
|
+
const config = yaml.load(content);
|
|
57
|
+
if (config?.hub_id && typeof config.hub_id === 'string') {
|
|
58
|
+
return { hubId: config.hub_id, hubFolder: cwd };
|
|
48
59
|
}
|
|
49
60
|
return null;
|
|
50
61
|
}
|
package/dist/lib/utils.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/lib/utils.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,QAAQ,MAAM,eAAe,CAAC;AAE1C;;GAEG;AACH,MAAM,UAAU,OAAO,CAAC,QAAgB;IACtC,MAAM,EAAE,GAAG,QAAQ,CAAC,eAAe,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IACtF,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;QAC7B,EAAE,CAAC,QAAQ,CAAC,GAAG,QAAQ,UAAU,EAAE,CAAC,MAAM,EAAE,EAAE;YAC5C,EAAE,CAAC,KAAK,EAAE,CAAC;YACX,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,KAAK,GAAG,CAAC,CAAC;QAC/C,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,OAAO,CAAC,KAAa;IACnC,OAAO,KAAK;SACT,SAAS,CAAC,KAAK,CAAC;SAChB,OAAO,CAAC,kBAAkB,EAAE,EAAE,CAAC,CAAC,mBAAmB;SACnD,WAAW,EAAE;SACb,OAAO,CAAC,aAAa,EAAE,GAAG,CAAC,CAAI,6BAA6B;SAC5D,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAY,uBAAuB;SACtD,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAU,wBAAwB;SACvD,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAkB,eAAe;AACnD,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/lib/utils.ts"],"names":[],"mappings":"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"}
|
package/dist/lib/workspace.d.ts
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* Workspace detection and hub resolution for workspace-aware CLI commands.
|
|
3
3
|
*
|
|
4
4
|
* A workspace is a `workspace/` directory at the git root containing
|
|
5
|
-
* project/hub folders, each with a wayai.yaml file.
|
|
5
|
+
* project/hub folders, each with a hub.yaml (or legacy wayai.yaml) file.
|
|
6
6
|
*/
|
|
7
7
|
export interface HubLocation {
|
|
8
8
|
hubFolder: string;
|
|
@@ -24,7 +24,7 @@ export declare function findGitRoot(): string | null;
|
|
|
24
24
|
export declare function detectWorkspace(): WorkspaceInfo | null;
|
|
25
25
|
/**
|
|
26
26
|
* Scan the workspace directory for hub folders (2 levels: project/hub).
|
|
27
|
-
* Returns metadata for each hub that has a valid wayai.yaml.
|
|
27
|
+
* Returns metadata for each hub that has a valid hub.yaml (or wayai.yaml).
|
|
28
28
|
*/
|
|
29
29
|
export declare function scanWorkspaceHubs(workspaceDir: string): HubLocation[];
|
|
30
30
|
/**
|
|
@@ -43,7 +43,7 @@ export declare function getHubFolderSlug(hubName: string, hubEnvironment: string
|
|
|
43
43
|
export declare function resolveHubFolder(workspaceDir: string, hubId: string | undefined, projectName: string, hubName: string, hubEnvironment: string, previewLabel?: string | null, branchName?: string | null): string;
|
|
44
44
|
/**
|
|
45
45
|
* Get hub folders with uncommitted changes via `git status`.
|
|
46
|
-
* Filters to wayai.yaml and agents/*.md files under workspace/.
|
|
46
|
+
* Filters to hub.yaml, wayai.yaml, and agents/*.yaml/md files under workspace/.
|
|
47
47
|
* Unlike the GitHub Action, does NOT filter by hub_environment.
|
|
48
48
|
*/
|
|
49
49
|
export declare function getChangedHubs(workspaceDir: string): HubLocation[];
|
|
@@ -71,7 +71,7 @@ export declare function resolveExplicitHubPath(hubPath: string): {
|
|
|
71
71
|
/**
|
|
72
72
|
* Find a hub in the workspace by matching project/hub folder names.
|
|
73
73
|
* Accepts the 2-part path (project/hub) as it appears on disk.
|
|
74
|
-
* Returns the hub location if a matching folder with valid wayai.yaml exists.
|
|
74
|
+
* Returns the hub location if a matching folder with valid hub.yaml (or wayai.yaml) exists.
|
|
75
75
|
*/
|
|
76
76
|
export declare function findHubByFolderPath(workspaceDir: string, projectFolder: string, hubFolder: string): HubLocation | null;
|
|
77
77
|
/**
|
package/dist/lib/workspace.js
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* Workspace detection and hub resolution for workspace-aware CLI commands.
|
|
3
3
|
*
|
|
4
4
|
* A workspace is a `workspace/` directory at the git root containing
|
|
5
|
-
* project/hub folders, each with a wayai.yaml file.
|
|
5
|
+
* project/hub folders, each with a hub.yaml (or legacy wayai.yaml) file.
|
|
6
6
|
*/
|
|
7
7
|
import { execFileSync } from 'node:child_process';
|
|
8
8
|
import * as fs from 'node:fs';
|
|
@@ -38,7 +38,7 @@ export function detectWorkspace() {
|
|
|
38
38
|
return { gitRoot, workspaceDir };
|
|
39
39
|
}
|
|
40
40
|
/**
|
|
41
|
-
* Read hub metadata from a wayai.yaml file.
|
|
41
|
+
* Read hub metadata from a hub.yaml (or wayai.yaml) file.
|
|
42
42
|
* Returns null if the file doesn't exist or lacks required fields.
|
|
43
43
|
*/
|
|
44
44
|
function readHubYaml(yamlPath) {
|
|
@@ -57,7 +57,7 @@ function readHubYaml(yamlPath) {
|
|
|
57
57
|
}
|
|
58
58
|
/**
|
|
59
59
|
* Scan the workspace directory for hub folders (2 levels: project/hub).
|
|
60
|
-
* Returns metadata for each hub that has a valid wayai.yaml.
|
|
60
|
+
* Returns metadata for each hub that has a valid hub.yaml (or wayai.yaml).
|
|
61
61
|
*/
|
|
62
62
|
export function scanWorkspaceHubs(workspaceDir) {
|
|
63
63
|
const hubs = [];
|
|
@@ -71,7 +71,9 @@ export function scanWorkspaceHubs(workspaceDir) {
|
|
|
71
71
|
const hubFolder = path.join(projectDir, hub);
|
|
72
72
|
if (!isDirectory(hubFolder))
|
|
73
73
|
continue;
|
|
74
|
-
|
|
74
|
+
// Try hub.yaml first, fall back to wayai.yaml
|
|
75
|
+
const meta = readHubYaml(path.join(hubFolder, 'hub.yaml'))
|
|
76
|
+
|| readHubYaml(path.join(hubFolder, 'wayai.yaml'));
|
|
75
77
|
if (meta) {
|
|
76
78
|
hubs.push({ hubFolder, hubId: meta.hubId, hubEnvironment: meta.hubEnvironment });
|
|
77
79
|
}
|
|
@@ -112,7 +114,7 @@ export function resolveHubFolder(workspaceDir, hubId, projectName, hubName, hubE
|
|
|
112
114
|
}
|
|
113
115
|
/**
|
|
114
116
|
* Get hub folders with uncommitted changes via `git status`.
|
|
115
|
-
* Filters to wayai.yaml and agents/*.md files under workspace/.
|
|
117
|
+
* Filters to hub.yaml, wayai.yaml, and agents/*.yaml/md files under workspace/.
|
|
116
118
|
* Unlike the GitHub Action, does NOT filter by hub_environment.
|
|
117
119
|
*/
|
|
118
120
|
export function getChangedHubs(workspaceDir) {
|
|
@@ -147,9 +149,11 @@ export function getChangedHubs(workspaceDir) {
|
|
|
147
149
|
const arrowIdx = filePart.indexOf(' -> ');
|
|
148
150
|
return arrowIdx >= 0 ? filePart.slice(arrowIdx + 4) : filePart;
|
|
149
151
|
});
|
|
150
|
-
// Filter to hub config files
|
|
152
|
+
// Filter to hub config files (hub.yaml, wayai.yaml, agents/*.yaml, agents/*.md)
|
|
151
153
|
const hubFiles = changedFiles.filter((file) => {
|
|
152
|
-
return file.endsWith('/
|
|
154
|
+
return file.endsWith('/hub.yaml') || file.endsWith('hub.yaml')
|
|
155
|
+
|| file.endsWith('/wayai.yaml') || file.endsWith('wayai.yaml')
|
|
156
|
+
|| /\/agents\/[^/]+\.(md|yaml)$/.test(file);
|
|
153
157
|
});
|
|
154
158
|
if (hubFiles.length === 0)
|
|
155
159
|
return [];
|
|
@@ -157,7 +161,7 @@ export function getChangedHubs(workspaceDir) {
|
|
|
157
161
|
const hubFolders = new Set();
|
|
158
162
|
for (const file of hubFiles) {
|
|
159
163
|
const absFile = path.resolve(gitRoot, file);
|
|
160
|
-
if (file.endsWith('wayai.yaml')) {
|
|
164
|
+
if (file.endsWith('hub.yaml') || file.endsWith('wayai.yaml')) {
|
|
161
165
|
hubFolders.add(path.dirname(absFile));
|
|
162
166
|
}
|
|
163
167
|
else if (file.includes('/agents/')) {
|
|
@@ -165,10 +169,11 @@ export function getChangedHubs(workspaceDir) {
|
|
|
165
169
|
hubFolders.add(absFile.substring(0, agentsIndex));
|
|
166
170
|
}
|
|
167
171
|
}
|
|
168
|
-
// Read each hub folder's wayai.yaml
|
|
172
|
+
// Read each hub folder's hub.yaml (or wayai.yaml)
|
|
169
173
|
const hubs = [];
|
|
170
174
|
for (const hubFolder of hubFolders) {
|
|
171
|
-
const meta = readHubYaml(path.join(hubFolder, '
|
|
175
|
+
const meta = readHubYaml(path.join(hubFolder, 'hub.yaml'))
|
|
176
|
+
|| readHubYaml(path.join(hubFolder, 'wayai.yaml'));
|
|
172
177
|
if (meta) {
|
|
173
178
|
hubs.push({ hubFolder, hubId: meta.hubId, hubEnvironment: meta.hubEnvironment });
|
|
174
179
|
}
|
|
@@ -217,13 +222,14 @@ export function resolveExplicitHubPath(hubPath) {
|
|
|
217
222
|
/**
|
|
218
223
|
* Find a hub in the workspace by matching project/hub folder names.
|
|
219
224
|
* Accepts the 2-part path (project/hub) as it appears on disk.
|
|
220
|
-
* Returns the hub location if a matching folder with valid wayai.yaml exists.
|
|
225
|
+
* Returns the hub location if a matching folder with valid hub.yaml (or wayai.yaml) exists.
|
|
221
226
|
*/
|
|
222
227
|
export function findHubByFolderPath(workspaceDir, projectFolder, hubFolder) {
|
|
223
228
|
const candidate = path.join(workspaceDir, projectFolder, hubFolder);
|
|
224
229
|
if (!isDirectory(candidate))
|
|
225
230
|
return null;
|
|
226
|
-
const meta = readHubYaml(path.join(candidate, '
|
|
231
|
+
const meta = readHubYaml(path.join(candidate, 'hub.yaml'))
|
|
232
|
+
|| readHubYaml(path.join(candidate, 'wayai.yaml'));
|
|
227
233
|
if (!meta)
|
|
228
234
|
return null;
|
|
229
235
|
return { hubFolder: candidate, hubId: meta.hubId, hubEnvironment: meta.hubEnvironment };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workspace.js","sourceRoot":"","sources":["../../src/lib/workspace.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"workspace.js","sourceRoot":"","sources":["../../src/lib/workspace.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAClC,OAAO,KAAK,IAAI,MAAM,SAAS,CAAC;AAChC,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAarC;;GAEG;AACH,MAAM,UAAU,WAAW;IACzB,IAAI,CAAC;QACH,OAAO,YAAY,CAAC,KAAK,EAAE,CAAC,WAAW,EAAE,iBAAiB,CAAC,EAAE;YAC3D,QAAQ,EAAE,OAAO;YACjB,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC;SAChC,CAAC,CAAC,IAAI,EAAE,CAAC;IACZ,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,eAAe;IAC7B,MAAM,OAAO,GAAG,WAAW,EAAE,CAAC;IAC9B,IAAI,CAAC,OAAO;QAAE,OAAO,IAAI,CAAC;IAE1B,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;IACrD,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC;QAC7E,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,CAAC;AACnC,CAAC;AAED;;;GAGG;AACH,SAAS,WAAW,CAAC,QAAgB;IACnC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC;QAAE,OAAO,IAAI,CAAC;IAE1C,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QACnD,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAA8D,CAAC;QAC/F,IAAI,CAAC,MAAM,EAAE,MAAM,IAAI,CAAC,MAAM,CAAC,eAAe;YAAE,OAAO,IAAI,CAAC;QAC5D,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,cAAc,EAAE,MAAM,CAAC,eAAe,EAAE,CAAC;IAC1E,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,iBAAiB,CAAC,YAAoB;IACpD,MAAM,IAAI,GAAkB,EAAE,CAAC;IAE/B,MAAM,QAAQ,GAAG,WAAW,CAAC,YAAY,CAAC,CAAC;IAC3C,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;QAC/B,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;QACpD,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC;YAAE,SAAS;QAEvC,MAAM,OAAO,GAAG,WAAW,CAAC,UAAU,CAAC,CAAC;QACxC,KAAK,MAAM,GAAG,IAAI,OAAO,EAAE,CAAC;YAC1B,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC;YAC7C,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC;gBAAE,SAAS;YAEtC,8CAA8C;YAC9C,MAAM,IAAI,GAAG,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;mBAC7C,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC,CAAC;YAC7D,IAAI,IAAI,EAAE,CAAC;gBACT,IAAI,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,cAAc,EAAE,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC;YACnF,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,gBAAgB,CAC9B,OAAe,EACf,cAAsB,EACtB,KAAa,EACb,YAA4B,EAC5B,UAA0B;IAE1B,MAAM,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAC9B,IAAI,cAAc,KAAK,SAAS;QAAE,OAAO,IAAI,CAAC;IAC9C,MAAM,MAAM,GAAG,YAAY,IAAI,UAAU,IAAI,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAC/D,OAAO,GAAG,IAAI,IAAI,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;AACtC,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,gBAAgB,CAC9B,YAAoB,EACpB,KAAyB,EACzB,WAAmB,EACnB,OAAe,EACf,cAAsB,EACtB,YAA4B,EAC5B,UAA0B;IAE1B,8DAA8D;IAC9D,IAAI,KAAK,EAAE,CAAC;QACV,MAAM,OAAO,GAAG,iBAAiB,CAAC,YAAY,CAAC,CAAC;QAChD,MAAM,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,KAAK,CAAC,CAAC;QACrD,IAAI,KAAK;YAAE,OAAO,KAAK,CAAC,SAAS,CAAC;IACpC,CAAC;IAED,uDAAuD;IACvD,MAAM,aAAa,GAAG,gBAAgB,CAAC,OAAO,EAAE,cAAc,EAAE,KAAK,IAAI,EAAE,EAAE,YAAY,EAAE,UAAU,CAAC,CAAC;IACvG,OAAO,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,OAAO,CAAC,WAAW,CAAC,EAAE,aAAa,CAAC,CAAC;AACtE,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,cAAc,CAAC,YAAoB;IACjD,MAAM,OAAO,GAAG,WAAW,EAAE,CAAC;IAC9B,IAAI,CAAC,OAAO;QAAE,OAAO,EAAE,CAAC;IAExB,mEAAmE;IACnE,MAAM,YAAY,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;IAE1D,kEAAkE;IAClE,MAAM,aAAa,GAAG,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC;IACnD,IAAI,aAAa,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,EAAE,CAAC;QACrE,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,IAAI,YAAoB,CAAC;IACzB,IAAI,CAAC;QACH,YAAY,GAAG,YAAY,CAAC,KAAK,EAAE,CAAC,QAAQ,EAAE,aAAa,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,YAAY,GAAG,CAAC,EAAE;YAC5F,QAAQ,EAAE,OAAO;YACjB,GAAG,EAAE,OAAO;YACZ,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC;SAChC,CAAC,CAAC;IACL,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,kFAAkF;IAClF,MAAM,KAAK,GAAG,YAAY,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IAEnE,mFAAmF;IACnF,MAAM,YAAY,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;QACtC,iEAAiE;QACjE,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAC/B,iCAAiC;QACjC,MAAM,QAAQ,GAAG,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QAC1C,OAAO,QAAQ,IAAI,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;IACjE,CAAC,CAAC,CAAC;IAEH,gFAAgF;IAChF,MAAM,QAAQ,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE;QAC5C,OAAO,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC;eACvD,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC;eAC3D,6BAA6B,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAClD,CAAC,CAAC,CAAC;IAEH,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IAErC,6CAA6C;IAC7C,MAAM,UAAU,GAAG,IAAI,GAAG,EAAU,CAAC;IAErC,KAAK,MAAM,IAAI,IAAI,QAAQ,EAAE,CAAC;QAC5B,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;QAC5C,IAAI,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC;YAC7D,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC;QACxC,CAAC;aAAM,IAAI,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;YACrC,MAAM,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;YACpD,UAAU,CAAC,GAAG,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC,CAAC;QACpD,CAAC;IACH,CAAC;IAED,kDAAkD;IAClD,MAAM,IAAI,GAAkB,EAAE,CAAC;IAE/B,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;QACnC,MAAM,IAAI,GAAG,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;eAC7C,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC,CAAC;QAC7D,IAAI,IAAI,EAAE,CAAC;YACT,IAAI,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,cAAc,EAAE,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC;QACnF,CAAC;IACH,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAcD;;;;;GAKG;AACH,MAAM,UAAU,sBAAsB,CACpC,OAAe;IAEf,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAEjC,IAAI,cAAkC,CAAC;IACvC,IAAI,UAAkB,CAAC;IACvB,IAAI,SAA6B,CAAC;IAElC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACvB,UAAU,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;IACxB,CAAC;SAAM,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC9B,CAAC,cAAc,EAAE,UAAU,CAAC,GAAG,KAAK,CAAC;IACvC,CAAC;SAAM,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC9B,CAAC,SAAS,EAAE,cAAc,EAAE,UAAU,CAAC,GAAG,KAAK,CAAC;IAClD,CAAC;SAAM,CAAC;QACN,MAAM,IAAI,KAAK,CAAC,uDAAuD,CAAC,CAAC;IAC3E,CAAC;IAED,yFAAyF;IACzF,MAAM,SAAS,GAAG,eAAe,EAAE,CAAC;IACpC,IAAI,SAAS,IAAI,cAAc,EAAE,CAAC;QAChC,MAAM,KAAK,GAAG,mBAAmB,CAAC,SAAS,CAAC,YAAY,EAAE,cAAc,EAAE,UAAU,CAAC,CAAC;QACtF,IAAI,KAAK,EAAE,CAAC;YACV,OAAO;gBACL,QAAQ,EAAE;oBACR,KAAK,EAAE,KAAK,CAAC,KAAK;oBAClB,SAAS,EAAE,KAAK,CAAC,SAAS;oBAC1B,cAAc,EAAE,KAAK,CAAC,cAAc;iBACrC;aACF,CAAC;QACJ,CAAC;IACH,CAAC;IAED,OAAO,EAAE,QAAQ,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE,cAAc,EAAE,GAAG,EAAE,UAAU,EAAE,EAAE,CAAC;AAC/E,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,mBAAmB,CACjC,YAAoB,EACpB,aAAqB,EACrB,SAAiB;IAEjB,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,aAAa,EAAE,SAAS,CAAC,CAAC;IACpE,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC;QAAE,OAAO,IAAI,CAAC;IAEzC,MAAM,IAAI,GAAG,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;WAC7C,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC,CAAC;IAC7D,IAAI,CAAC,IAAI;QAAE,OAAO,IAAI,CAAC;IAEvB,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,cAAc,EAAE,IAAI,CAAC,cAAc,EAAE,CAAC;AAC1F,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,mBAAmB,CACjC,aAAqB,EACrB,OAAe,EACf,cAAsB,EACtB,KAAa,EACb,YAA4B,EAC5B,UAA0B;IAE1B,MAAM,YAAY,GAAG,gBAAgB,CAAC,OAAO,EAAE,cAAc,EAAE,KAAK,EAAE,YAAY,EAAE,UAAU,CAAC,CAAC;IAChG,MAAM,WAAW,GAAG,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;IAEjD,IAAI,WAAW,KAAK,YAAY;QAAE,OAAO,aAAa,CAAC;IAEvD,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,EAAE,YAAY,CAAC,CAAC;IAE1E,IAAI,EAAE,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;QAChC,OAAO,CAAC,IAAI,CAAC,yCAAyC,WAAW,MAAM,YAAY,0BAA0B,CAAC,CAAC;QAC/G,OAAO,aAAa,CAAC;IACvB,CAAC;IAED,IAAI,CAAC;QACH,EAAE,CAAC,UAAU,CAAC,aAAa,EAAE,YAAY,CAAC,CAAC;IAC7C,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,CAAC,IAAI,CAAC,+BAA+B,WAAW,MAAM,YAAY,KAAK,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAClI,OAAO,aAAa,CAAC;IACvB,CAAC;IACD,OAAO,CAAC,GAAG,CAAC,wBAAwB,WAAW,MAAM,YAAY,EAAE,CAAC,CAAC;IACrE,OAAO,CAAC,GAAG,CAAC,sEAAsE,CAAC,CAAC;IACpF,OAAO,YAAY,CAAC;AACtB,CAAC;AAED,SAAS,WAAW,CAAC,CAAS;IAC5B,IAAI,CAAC;QACH,OAAO,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;IACtC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED,SAAS,WAAW,CAAC,GAAW;IAC9B,IAAI,CAAC;QACH,OAAO,EAAE,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC;IACvE,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,CAAC;IACZ,CAAC;AACH,CAAC"}
|
|
@@ -1,13 +1,15 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* YAML writer — converts HubAsCodePayload to
|
|
2
|
+
* YAML writer — converts HubAsCodePayload to hub.yaml + agents/<slug>.yaml + agents/<slug>.md files
|
|
3
3
|
* Reverse of parser.ts
|
|
4
4
|
*/
|
|
5
5
|
import type { HubAsCodePayload } from './types.js';
|
|
6
6
|
/**
|
|
7
|
-
* Write a HubAsCodePayload to disk as
|
|
7
|
+
* Write a HubAsCodePayload to disk as hub.yaml + agents/<slug>.yaml + agents/<slug>.md files.
|
|
8
8
|
*
|
|
9
|
-
* - Creates `
|
|
9
|
+
* - Creates `hub.yaml` with hub config (no agents section)
|
|
10
|
+
* - Creates `agents/<slug>.yaml` for each agent (all config except instructions)
|
|
10
11
|
* - Creates `agents/<slug>.md` for each agent with instructions
|
|
11
|
-
* - Removes orphan .md files in agents/ that don't match any current agent
|
|
12
|
+
* - Removes orphan .yaml and .md files in agents/ that don't match any current agent
|
|
13
|
+
* - Deletes old `wayai.yaml` if present (migration)
|
|
12
14
|
*/
|
|
13
15
|
export declare function writeHubFolder(hubFolder: string, payload: HubAsCodePayload): void;
|
package/dist/lib/yaml-writer.js
CHANGED
|
@@ -1,17 +1,26 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* YAML writer — converts HubAsCodePayload to
|
|
2
|
+
* YAML writer — converts HubAsCodePayload to hub.yaml + agents/<slug>.yaml + agents/<slug>.md files
|
|
3
3
|
* Reverse of parser.ts
|
|
4
4
|
*/
|
|
5
5
|
import * as fs from 'node:fs';
|
|
6
6
|
import * as path from 'node:path';
|
|
7
7
|
import * as yaml from 'js-yaml';
|
|
8
8
|
import { slugify } from './utils.js';
|
|
9
|
+
const YAML_DUMP_OPTIONS = {
|
|
10
|
+
lineWidth: -1, // don't wrap lines
|
|
11
|
+
noRefs: true, // don't use YAML anchors
|
|
12
|
+
quotingType: '"',
|
|
13
|
+
forceQuotes: false,
|
|
14
|
+
sortKeys: false,
|
|
15
|
+
};
|
|
9
16
|
/**
|
|
10
|
-
* Write a HubAsCodePayload to disk as
|
|
17
|
+
* Write a HubAsCodePayload to disk as hub.yaml + agents/<slug>.yaml + agents/<slug>.md files.
|
|
11
18
|
*
|
|
12
|
-
* - Creates `
|
|
19
|
+
* - Creates `hub.yaml` with hub config (no agents section)
|
|
20
|
+
* - Creates `agents/<slug>.yaml` for each agent (all config except instructions)
|
|
13
21
|
* - Creates `agents/<slug>.md` for each agent with instructions
|
|
14
|
-
* - Removes orphan .md files in agents/ that don't match any current agent
|
|
22
|
+
* - Removes orphan .yaml and .md files in agents/ that don't match any current agent
|
|
23
|
+
* - Deletes old `wayai.yaml` if present (migration)
|
|
15
24
|
*/
|
|
16
25
|
export function writeHubFolder(hubFolder, payload) {
|
|
17
26
|
// Ensure directories exist
|
|
@@ -22,33 +31,38 @@ export function writeHubFolder(hubFolder, payload) {
|
|
|
22
31
|
if (!fs.existsSync(agentsDir)) {
|
|
23
32
|
fs.mkdirSync(agentsDir, { recursive: true });
|
|
24
33
|
}
|
|
25
|
-
// Build YAML-safe payload
|
|
34
|
+
// Build YAML-safe payload (no agents section)
|
|
26
35
|
const yamlPayload = buildYamlPayload(payload);
|
|
27
36
|
const agentFiles = extractAgentFiles(payload);
|
|
28
|
-
// Write
|
|
29
|
-
const yamlContent = yaml.dump(yamlPayload,
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
}
|
|
36
|
-
|
|
37
|
-
//
|
|
38
|
-
const
|
|
37
|
+
// Write hub.yaml
|
|
38
|
+
const yamlContent = yaml.dump(yamlPayload, YAML_DUMP_OPTIONS);
|
|
39
|
+
fs.writeFileSync(path.join(hubFolder, 'hub.yaml'), yamlContent, 'utf-8');
|
|
40
|
+
// Delete old wayai.yaml if it exists (migration)
|
|
41
|
+
const oldYamlPath = path.join(hubFolder, 'wayai.yaml');
|
|
42
|
+
if (fs.existsSync(oldYamlPath)) {
|
|
43
|
+
fs.unlinkSync(oldYamlPath);
|
|
44
|
+
}
|
|
45
|
+
// Write agent YAML config files + instruction files
|
|
46
|
+
// Track .yaml and .md slugs separately so agents without instructions get their .md cleaned up
|
|
47
|
+
const yamlSlugs = writeAgentYamlFiles(agentsDir, payload.agents || []);
|
|
48
|
+
const mdSlugs = new Set();
|
|
39
49
|
for (const { slug, content } of agentFiles) {
|
|
40
|
-
|
|
50
|
+
mdSlugs.add(slug);
|
|
41
51
|
fs.writeFileSync(path.join(agentsDir, `${slug}.md`), content, 'utf-8');
|
|
42
52
|
}
|
|
43
|
-
// Remove orphan .md files
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
53
|
+
// Remove orphan .yaml and .md files
|
|
54
|
+
const existingFiles = fs.readdirSync(agentsDir);
|
|
55
|
+
for (const file of existingFiles) {
|
|
56
|
+
if (file.endsWith('.yaml')) {
|
|
57
|
+
const slug = file.slice(0, -5);
|
|
58
|
+
if (!yamlSlugs.has(slug)) {
|
|
59
|
+
fs.unlinkSync(path.join(agentsDir, file));
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
else if (file.endsWith('.md')) {
|
|
63
|
+
const slug = file.slice(0, -3);
|
|
64
|
+
if (!mdSlugs.has(slug)) {
|
|
65
|
+
fs.unlinkSync(path.join(agentsDir, file));
|
|
52
66
|
}
|
|
53
67
|
}
|
|
54
68
|
}
|
|
@@ -56,8 +70,8 @@ export function writeHubFolder(hubFolder, payload) {
|
|
|
56
70
|
writeResourceFiles(hubFolder, payload.resources || []);
|
|
57
71
|
}
|
|
58
72
|
/**
|
|
59
|
-
* Build the YAML-safe version of the payload.
|
|
60
|
-
*
|
|
73
|
+
* Build the YAML-safe version of the payload (hub config only, no agents).
|
|
74
|
+
* Agents are written to separate files by writeAgentYamlFiles().
|
|
61
75
|
*/
|
|
62
76
|
function buildYamlPayload(payload) {
|
|
63
77
|
const result = {
|
|
@@ -70,17 +84,7 @@ function buildYamlPayload(payload) {
|
|
|
70
84
|
result.preview_label = payload.preview_label;
|
|
71
85
|
}
|
|
72
86
|
result.hub = payload.hub;
|
|
73
|
-
|
|
74
|
-
result.agents = payload.agents.map((agent) => {
|
|
75
|
-
const entry = { ...agent };
|
|
76
|
-
// Remove inline instructions — convention-based path resolution (agents/<slug>.md)
|
|
77
|
-
// The .md file is still written by extractAgentFiles().
|
|
78
|
-
// Note: the writer is only called during `pull` (payload has inline text from server).
|
|
79
|
-
// Explicit .md path overrides in YAML are preserved across `push` (parser handles them).
|
|
80
|
-
delete entry.instructions;
|
|
81
|
-
return entry;
|
|
82
|
-
});
|
|
83
|
-
}
|
|
87
|
+
// Agents are NOT included in hub.yaml — they live in agents/<slug>.yaml
|
|
84
88
|
if (payload.resources && payload.resources.length > 0) {
|
|
85
89
|
// Strip files from resource entries — filesystem is source of truth
|
|
86
90
|
result.resources = payload.resources.map((r) => {
|
|
@@ -108,6 +112,24 @@ function buildYamlPayload(payload) {
|
|
|
108
112
|
}
|
|
109
113
|
return result;
|
|
110
114
|
}
|
|
115
|
+
/**
|
|
116
|
+
* Write per-agent YAML config files to agents/ directory.
|
|
117
|
+
* Each agent gets agents/<slug>.yaml with all config except instructions.
|
|
118
|
+
* Returns the set of slugs written (for orphan cleanup).
|
|
119
|
+
*/
|
|
120
|
+
function writeAgentYamlFiles(agentsDir, agents) {
|
|
121
|
+
const slugs = new Set();
|
|
122
|
+
for (const agent of agents) {
|
|
123
|
+
const slug = slugify(agent.name);
|
|
124
|
+
slugs.add(slug);
|
|
125
|
+
const entry = { ...agent };
|
|
126
|
+
// Instructions go to .md file, not .yaml
|
|
127
|
+
delete entry.instructions;
|
|
128
|
+
const yamlContent = yaml.dump(entry, YAML_DUMP_OPTIONS);
|
|
129
|
+
fs.writeFileSync(path.join(agentsDir, `${slug}.yaml`), yamlContent, 'utf-8');
|
|
130
|
+
}
|
|
131
|
+
return slugs;
|
|
132
|
+
}
|
|
111
133
|
/**
|
|
112
134
|
* Extract agent instruction files from the payload.
|
|
113
135
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"yaml-writer.js","sourceRoot":"","sources":["../../src/lib/yaml-writer.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAClC,OAAO,KAAK,IAAI,MAAM,SAAS,CAAC;AAChC,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAGrC
|
|
1
|
+
{"version":3,"file":"yaml-writer.js","sourceRoot":"","sources":["../../src/lib/yaml-writer.ts"],"names":[],"mappings":"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"}
|