lua-cli 3.11.0 → 3.12.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.
Files changed (53) hide show
  1. package/README.md +12 -0
  2. package/dist/api/logs.api.service.d.ts +1 -1
  3. package/dist/api/logs.api.service.d.ts.map +1 -1
  4. package/dist/api/logs.api.service.js.map +1 -1
  5. package/dist/api/unifiedto.api.service.d.ts +18 -1
  6. package/dist/api/unifiedto.api.service.d.ts.map +1 -1
  7. package/dist/api/unifiedto.api.service.js +26 -0
  8. package/dist/api/unifiedto.api.service.js.map +1 -1
  9. package/dist/cli/command-definitions.d.ts.map +1 -1
  10. package/dist/cli/command-definitions.js +43 -2
  11. package/dist/cli/command-definitions.js.map +1 -1
  12. package/dist/commands/init.js +12 -11
  13. package/dist/commands/init.js.map +1 -1
  14. package/dist/commands/integrations.d.ts.map +1 -1
  15. package/dist/commands/integrations.js +456 -80
  16. package/dist/commands/integrations.js.map +1 -1
  17. package/dist/commands/logs.js +13 -6
  18. package/dist/commands/logs.js.map +1 -1
  19. package/dist/commands/push.js +18 -24
  20. package/dist/commands/push.js.map +1 -1
  21. package/dist/compiler/compiler.d.ts.map +1 -1
  22. package/dist/compiler/compiler.js +13 -0
  23. package/dist/compiler/compiler.js.map +1 -1
  24. package/dist/compiler/plugins/base.d.ts +28 -0
  25. package/dist/compiler/plugins/base.d.ts.map +1 -1
  26. package/dist/compiler/plugins/base.js.map +1 -1
  27. package/dist/compiler/plugins/skill.plugin.d.ts +7 -3
  28. package/dist/compiler/plugins/skill.plugin.d.ts.map +1 -1
  29. package/dist/compiler/plugins/skill.plugin.js +22 -4
  30. package/dist/compiler/plugins/skill.plugin.js.map +1 -1
  31. package/dist/config/constants.d.ts +0 -4
  32. package/dist/config/constants.d.ts.map +1 -1
  33. package/dist/config/constants.js +0 -4
  34. package/dist/config/constants.js.map +1 -1
  35. package/dist/interfaces/agent.d.ts +2 -0
  36. package/dist/interfaces/agent.d.ts.map +1 -1
  37. package/dist/interfaces/unifiedto.d.ts +19 -0
  38. package/dist/interfaces/unifiedto.d.ts.map +1 -1
  39. package/dist/primitives/base.handler.d.ts +76 -3
  40. package/dist/primitives/base.handler.d.ts.map +1 -1
  41. package/dist/primitives/base.handler.js +99 -8
  42. package/dist/primitives/base.handler.js.map +1 -1
  43. package/dist/primitives/mcp-server.handler.d.ts +46 -22
  44. package/dist/primitives/mcp-server.handler.d.ts.map +1 -1
  45. package/dist/primitives/mcp-server.handler.js +52 -21
  46. package/dist/primitives/mcp-server.handler.js.map +1 -1
  47. package/dist/utils/init-agent.d.ts +1 -1
  48. package/dist/utils/init-agent.d.ts.map +1 -1
  49. package/dist/utils/init-agent.js +6 -15
  50. package/dist/utils/init-agent.js.map +1 -1
  51. package/docs/README.md +1 -1
  52. package/package.json +1 -1
  53. package/template/package.json +1 -1
@@ -118,12 +118,40 @@ export declare abstract class BaseVersionedHandler<T extends {
118
118
  msgs: string[];
119
119
  };
120
120
  }
121
+ /**
122
+ * Result returned by upsertOnServer. Handlers create-or-update in a single call,
123
+ * so the server-assigned id flows back here.
124
+ */
125
+ export interface UpsertResult {
126
+ success: boolean;
127
+ id?: string;
128
+ active?: boolean;
129
+ error?: string;
130
+ }
131
+ /**
132
+ * Aggregate result of pushing every bundled item in one go.
133
+ */
134
+ export interface PushAllResult {
135
+ pushed: string[];
136
+ failed: Array<{
137
+ name: string;
138
+ error: string;
139
+ }>;
140
+ activated: string[];
141
+ }
121
142
  /**
122
143
  * For primitives without versions (e.g., MCP servers).
144
+ *
145
+ * Two generic parameters:
146
+ * T — shape of items stored in lua.skill.yaml (see yaml.types.ts)
147
+ * B — shape of items pushed to the server (bundled from the manifest).
148
+ * Defaults to T for handlers where the YAML and push payloads match.
123
149
  */
124
150
  export declare abstract class BaseNonVersionedHandler<T extends {
125
151
  name: string;
126
- }> implements PrimitiveHandler<T> {
152
+ }, B extends {
153
+ name: string;
154
+ } = T> implements PrimitiveHandler<T> {
127
155
  abstract readonly kind: PrimitiveKind;
128
156
  abstract readonly displayName: string;
129
157
  abstract readonly displayNamePlural: string;
@@ -133,14 +161,59 @@ export declare abstract class BaseNonVersionedHandler<T extends {
133
161
  protected abstract fetchFromServer(api: unknown): Promise<any[] | null>;
134
162
  abstract cleanItem(item: T): T;
135
163
  protected abstract isActive(item: any): boolean;
164
+ /**
165
+ * Load bundled items from the compilation manifest, ready to push.
166
+ * Each item must have a `name`; other fields are handler-specific.
167
+ */
168
+ abstract loadBundledItems(projectPath?: string): B[];
169
+ /**
170
+ * Create-or-update a single item on the server. Returns the server-assigned
171
+ * id. Implementations SHOULD call persistItemId after a successful upsert
172
+ * so the id is tracked locally from the first push.
173
+ */
174
+ abstract upsertOnServer(apiKey: string, agentId: string, item: B): Promise<UpsertResult>;
175
+ /**
176
+ * Optional hook run after a successful upsert when autoDeploy is set.
177
+ * Default: no-op. Handlers override for post-upsert actions (e.g. MCP
178
+ * activation). Return true if the action fired and succeeded.
179
+ */
180
+ protected postUpsert(_item: B, _upsert: UpsertResult, _apiKey: string, _agentId: string): Promise<boolean>;
136
181
  protected getServerItemName(item: any): string;
137
182
  /** Phase 1 of parallel sync: fetch server state (HTTP only, no YAML writes) */
138
183
  fetchServerState(apiKey: string, agentId: string): Promise<ServerSyncData>;
139
184
  /** Phase 2 of parallel sync: apply fetched data to YAML (orphan detection only for non-versioned) */
140
- applySyncToYaml(serverData: ServerSyncData, config: YamlConfig | null, _manifest?: CompilationManifest): Promise<SyncResult>;
141
- syncWithServer(apiKey: string, agentId: string, config: YamlConfig | null, _manifest?: CompilationManifest): Promise<SyncResult>;
185
+ applySyncToYaml(serverData: ServerSyncData, config: YamlConfig | null, manifest?: CompilationManifest): Promise<SyncResult>;
186
+ syncWithServer(apiKey: string, agentId: string, config: YamlConfig | null, manifest?: CompilationManifest): Promise<SyncResult>;
142
187
  updateYaml(items: T[], config: YamlConfig | null): void;
143
188
  getFromYaml(config: YamlConfig | null): T[];
144
189
  prepareForPush(_manifest: CompilationManifest, _name: string, _projectPath?: string): Record<string, unknown> | null;
190
+ /**
191
+ * Write a server-assigned id back into lua.skill.yaml for the given item,
192
+ * using the handler's configured idField. Creates a new YAML entry if none
193
+ * exists yet (first-push case).
194
+ */
195
+ persistItemId(name: string, id: string): void;
196
+ /**
197
+ * Push the given bundled items to the server:
198
+ * 1. Upsert each on the server (create or update by name).
199
+ * 2. persistItemId is expected to run inside upsertOnServer so the
200
+ * server-assigned id is tracked locally from the first push.
201
+ * 3. When autoDeploy is set, run the postUpsert hook per successfully
202
+ * pushed item.
203
+ *
204
+ * Caller passes in pre-loaded items (loadBundledItems) so push.ts can
205
+ * decide what to print up front without reading the manifest twice.
206
+ *
207
+ * Error semantics: upsert failures add the item to `failed`; postUpsert
208
+ * failures don't — the push itself already succeeded, only the follow-up
209
+ * step (e.g. activation) failed. Activation errors surface via a warn
210
+ * so they're visible without polluting the failed[] list.
211
+ *
212
+ * Upsert-by-name is idempotent, so a mid-loop crash self-heals on the next
213
+ * run — ids flow back on subsequent calls for anything not yet persisted.
214
+ */
215
+ pushAll(items: B[], apiKey: string, agentId: string, options?: {
216
+ autoDeploy?: boolean;
217
+ }): Promise<PushAllResult>;
145
218
  }
146
219
  //# sourceMappingURL=base.handler.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"base.handler.d.ts","sourceRoot":"","sources":["../../src/primitives/base.handler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"base.handler.d.ts","sourceRoot":"","sources":["../../src/primitives/base.handler.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,aAAa,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAC7F,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAMpD,OAAO,KAAK,EAAE,yBAAyB,EAAE,gBAAgB,EAAE,UAAU,EAAE,cAAc,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAE/H,yCAAyC;AACzC,eAAO,MAAM,eAAe,SAAyB,CAAC;AAMtD;;;;;GAKG;AACH,8BAAsB,oBAAoB,CAAC,CAAC,SAAS;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,EAAE,SAAS,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CACzH,YAAW,yBAAyB,CAAC,CAAC,CAAC;IAEvC,QAAQ,CAAC,QAAQ,CAAC,IAAI,EAAE,aAAa,CAAC;IACtC,QAAQ,CAAC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IACtC,QAAQ,CAAC,QAAQ,CAAC,iBAAiB,EAAE,MAAM,CAAC;IAC5C,QAAQ,CAAC,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IACxC,QAAQ,CAAC,QAAQ,CAAC,UAAU,EAAE,mBAAmB,CAAC;IAElD,SAAS,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO;IACnE,SAAS,CAAC,QAAQ,CAAC,eAAe,CAAC,GAAG,EAAE,OAAO,GAAG,OAAO,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC;IACvE;;;OAGG;IACH,SAAS,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC;IAQrB;;;OAGG;IACH,QAAQ,CAAC,WAAW,EAAE,GAAG,GAAG,OAAO;IAInC;;;OAGG;IACH,gBAAgB,CAAC,UAAU,EAAE,GAAG,GAAG,MAAM,GAAG,IAAI;IAKhD,SAAS,CAAC,iBAAiB,CAAC,IAAI,EAAE,GAAG,GAAG,MAAM;IAI9C,SAAS,CAAC,uBAAuB,CAAC,KAAK,EAAE,GAAG,GAAG,OAAO;IAQtD,+EAA+E;IACzE,gBAAgB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC;IAWhF;;;OAGG;IACG,eAAe,CACnB,UAAU,EAAE,cAAc,EAC1B,MAAM,EAAE,UAAU,GAAG,IAAI,EACzB,QAAQ,CAAC,EAAE,mBAAmB,EAC9B,cAAc,CAAC,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,GACnD,OAAO,CAAC,UAAU,CAAC;IAoFhB,cAAc,CAClB,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,UAAU,GAAG,IAAI,EACzB,QAAQ,CAAC,EAAE,mBAAmB,GAC7B,OAAO,CAAC,UAAU,CAAC;IAStB;;;;;OAKG;IACH,SAAS,CAAC,QAAQ,CAAC,cAAc,CAAC,GAAG,EAAE,OAAO,EAAE,SAAS,EAAE,iBAAiB,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAErG;;;OAGG;YACW,qBAAqB;IA0DnC,UAAU,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,UAAU,GAAG,IAAI,GAAG,IAAI;IAQvD,WAAW,CAAC,MAAM,EAAE,UAAU,GAAG,IAAI,GAAG,CAAC,EAAE;IAM3C,oBAAoB,CAAC,QAAQ,EAAE,mBAAmB,EAAE,MAAM,EAAE,UAAU,GAAG,IAAI,GAAG,IAAI;IAwBpF,mBAAmB,CAAC,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,IAAI;IA+B3F,cAAc,CACZ,QAAQ,EAAE,mBAAmB,EAC7B,IAAI,EAAE,MAAM,EACZ,WAAW,GAAE,MAAsB,GAClC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI;IAUjC,SAAS,CAAC,aAAa,CAAC,SAAS,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAStG;;;OAGG;IACH,QAAQ,CAAC,YAAY,CACnB,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,SAAS,GAClB,OAAO,CAAC;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAEhD;;;OAGG;IACH,QAAQ,CAAC,cAAc,CACrB,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,MAAM,GACd,OAAO,CAAC;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAEhD;;OAEG;IACG,uBAAuB,CAC3B,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAsBzB;;;OAGG;IACG,uBAAuB,CAC3B,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,MAAM,EAAE,GAClB,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC,CAAC;IAiCtC,uEAAuE;IACvE,SAAS,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,GAAG,MAAM;IAIpC,SAAS,CAAC,SAAS,CAAC,WAAW,EAAE,GAAG,EAAE,EAAE,SAAS,EAAE,CAAC,EAAE,GAAG;QACvD,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;QACzB,UAAU,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;QAC3B,YAAY,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;KAChC;IAkBD;;OAEG;IACH,SAAS,CAAC,cAAc,CACtB,SAAS,EAAE,CAAC,EAAE,EACd,YAAY,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,GAC7B;QAAE,KAAK,EAAE,CAAC,EAAE,CAAC;QAAC,OAAO,EAAE,OAAO,CAAC;QAAC,IAAI,EAAE,MAAM,EAAE,CAAA;KAAE;CAwCpD;AAMD;;;GAGG;AACH,MAAM,WAAW,YAAY;IAC3B,OAAO,EAAE,OAAO,CAAC;IACjB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,MAAM,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC/C,SAAS,EAAE,MAAM,EAAE,CAAC;CACrB;AAED;;;;;;;GAOG;AACH,8BAAsB,uBAAuB,CAC3C,CAAC,SAAS;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,EAC1B,CAAC,SAAS;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,GAAG,CAAC,CAC9B,YAAW,gBAAgB,CAAC,CAAC,CAAC;IAE9B,QAAQ,CAAC,QAAQ,CAAC,IAAI,EAAE,aAAa,CAAC;IACtC,QAAQ,CAAC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IACtC,QAAQ,CAAC,QAAQ,CAAC,iBAAiB,EAAE,MAAM,CAAC;IAC5C,QAAQ,CAAC,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IACxC,QAAQ,CAAC,QAAQ,CAAC,UAAU,EAAE,mBAAmB,CAAC;IAElD,SAAS,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO;IACnE,SAAS,CAAC,QAAQ,CAAC,eAAe,CAAC,GAAG,EAAE,OAAO,GAAG,OAAO,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC;IACvE,QAAQ,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC;IAC9B,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,EAAE,GAAG,GAAG,OAAO;IAE/C;;;OAGG;IACH,QAAQ,CAAC,gBAAgB,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,CAAC,EAAE;IAEpD;;;;OAIG;IACH,QAAQ,CAAC,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,GAAG,OAAO,CAAC,YAAY,CAAC;IAExF;;;;OAIG;cACa,UAAU,CACxB,KAAK,EAAE,CAAC,EACR,OAAO,EAAE,YAAY,EACrB,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,OAAO,CAAC;IAInB,SAAS,CAAC,iBAAiB,CAAC,IAAI,EAAE,GAAG,GAAG,MAAM;IAI9C,+EAA+E;IACzE,gBAAgB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC;IAWhF,qGAAqG;IAC/F,eAAe,CACnB,UAAU,EAAE,cAAc,EAC1B,MAAM,EAAE,UAAU,GAAG,IAAI,EACzB,QAAQ,CAAC,EAAE,mBAAmB,GAC7B,OAAO,CAAC,UAAU,CAAC;IAgEhB,cAAc,CAClB,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,UAAU,GAAG,IAAI,EACzB,QAAQ,CAAC,EAAE,mBAAmB,GAC7B,OAAO,CAAC,UAAU,CAAC;IAKtB,UAAU,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,UAAU,GAAG,IAAI,GAAG,IAAI;IAQvD,WAAW,CAAC,MAAM,EAAE,UAAU,GAAG,IAAI,GAAG,CAAC,EAAE;IAM3C,cAAc,CACZ,SAAS,EAAE,mBAAmB,EAC9B,KAAK,EAAE,MAAM,EACb,YAAY,CAAC,EAAE,MAAM,GACpB,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI;IAIjC;;;;OAIG;IACH,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,IAAI;IAa7C;;;;;;;;;;;;;;;;;;OAkBG;IACG,OAAO,CACX,KAAK,EAAE,CAAC,EAAE,EACV,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM,EACf,OAAO,GAAE;QAAE,UAAU,CAAC,EAAE,OAAO,CAAA;KAAO,GACrC,OAAO,CAAC,aAAa,CAAC;CAwC1B"}
@@ -9,7 +9,7 @@
9
9
  */
10
10
  import { readYamlConfig, writeYamlConfig } from '../utils/files.js';
11
11
  import { SKILL_DEFAULTS } from '../config/compile.constants.js';
12
- import { findPrimitive, loadArtifact, compressForPush } from '../utils/artifact-loader.js';
12
+ import { findPrimitive, loadArtifact, compressForPush, getPrimitivesByKind } from '../utils/artifact-loader.js';
13
13
  import { maxSemver } from '../utils/semver.js';
14
14
  import { AuthenticationError } from '../errors/auth.error.js';
15
15
  /** Default version for new primitives */
@@ -398,13 +398,23 @@ export class BaseVersionedHandler {
398
398
  return { items, changed, msgs };
399
399
  }
400
400
  }
401
- // =============================================================================
402
- // BASE NON-VERSIONED HANDLER
403
- // =============================================================================
404
401
  /**
405
402
  * For primitives without versions (e.g., MCP servers).
403
+ *
404
+ * Two generic parameters:
405
+ * T — shape of items stored in lua.skill.yaml (see yaml.types.ts)
406
+ * B — shape of items pushed to the server (bundled from the manifest).
407
+ * Defaults to T for handlers where the YAML and push payloads match.
406
408
  */
407
409
  export class BaseNonVersionedHandler {
410
+ /**
411
+ * Optional hook run after a successful upsert when autoDeploy is set.
412
+ * Default: no-op. Handlers override for post-upsert actions (e.g. MCP
413
+ * activation). Return true if the action fired and succeeded.
414
+ */
415
+ async postUpsert(_item, _upsert, _apiKey, _agentId) {
416
+ return false;
417
+ }
408
418
  getServerItemName(item) {
409
419
  return item.name || 'unknown';
410
420
  }
@@ -422,7 +432,7 @@ export class BaseNonVersionedHandler {
422
432
  }
423
433
  }
424
434
  /** Phase 2 of parallel sync: apply fetched data to YAML (orphan detection only for non-versioned) */
425
- async applySyncToYaml(serverData, config, _manifest) {
435
+ async applySyncToYaml(serverData, config, manifest) {
426
436
  const messages = [];
427
437
  let yamlUpdated = false;
428
438
  let orphanedCount = 0;
@@ -441,10 +451,16 @@ export class BaseNonVersionedHandler {
441
451
  const getId = (item) => item[idField] || '';
442
452
  const yamlById = new Map(yamlItems.filter(i => getId(i)).map(i => [getId(i), i]));
443
453
  const yamlByName = new Map(yamlItems.map(i => [i.name, i]));
454
+ // Names present in the current compilation manifest are considered "in local code"
455
+ // even if they haven't been pushed yet (and therefore have no YAML entry).
456
+ // This prevents newly compiled MCP servers from being flagged as orphans.
457
+ const manifestNames = manifest
458
+ ? new Set(getPrimitivesByKind(manifest, this.kind).map((p) => p.name))
459
+ : new Set();
444
460
  const orphans = serverData.serverItems.filter(item => {
445
461
  const id = item.id;
446
462
  const name = item.name;
447
- return !yamlById.has(id) && !yamlByName.has(name) && this.isActive(item);
463
+ return !yamlById.has(id) && !yamlByName.has(name) && !manifestNames.has(name) && this.isActive(item);
448
464
  });
449
465
  if (orphans.length > 0) {
450
466
  // See BaseVersionedHandler.applySyncToYaml for rationale.
@@ -474,9 +490,9 @@ export class BaseNonVersionedHandler {
474
490
  }
475
491
  return { messages, yamlUpdated, orphanedCount };
476
492
  }
477
- async syncWithServer(apiKey, agentId, config, _manifest) {
493
+ async syncWithServer(apiKey, agentId, config, manifest) {
478
494
  const serverData = await this.fetchServerState(apiKey, agentId);
479
- return this.applySyncToYaml(serverData, config);
495
+ return this.applySyncToYaml(serverData, config, manifest);
480
496
  }
481
497
  updateYaml(items, config) {
482
498
  const updatedConfig = {
@@ -494,5 +510,80 @@ export class BaseNonVersionedHandler {
494
510
  prepareForPush(_manifest, _name, _projectPath) {
495
511
  return null;
496
512
  }
513
+ /**
514
+ * Write a server-assigned id back into lua.skill.yaml for the given item,
515
+ * using the handler's configured idField. Creates a new YAML entry if none
516
+ * exists yet (first-push case).
517
+ */
518
+ persistItemId(name, id) {
519
+ const config = readYamlConfig();
520
+ const items = this.getFromYaml(config);
521
+ const idField = this.yamlConfig.idField;
522
+ const existing = items.find(i => i.name === name);
523
+ if (existing) {
524
+ existing[idField] = id;
525
+ }
526
+ else {
527
+ items.push({ name, [idField]: id });
528
+ }
529
+ this.updateYaml(items, config);
530
+ }
531
+ /**
532
+ * Push the given bundled items to the server:
533
+ * 1. Upsert each on the server (create or update by name).
534
+ * 2. persistItemId is expected to run inside upsertOnServer so the
535
+ * server-assigned id is tracked locally from the first push.
536
+ * 3. When autoDeploy is set, run the postUpsert hook per successfully
537
+ * pushed item.
538
+ *
539
+ * Caller passes in pre-loaded items (loadBundledItems) so push.ts can
540
+ * decide what to print up front without reading the manifest twice.
541
+ *
542
+ * Error semantics: upsert failures add the item to `failed`; postUpsert
543
+ * failures don't — the push itself already succeeded, only the follow-up
544
+ * step (e.g. activation) failed. Activation errors surface via a warn
545
+ * so they're visible without polluting the failed[] list.
546
+ *
547
+ * Upsert-by-name is idempotent, so a mid-loop crash self-heals on the next
548
+ * run — ids flow back on subsequent calls for anything not yet persisted.
549
+ */
550
+ async pushAll(items, apiKey, agentId, options = {}) {
551
+ const result = { pushed: [], failed: [], activated: [] };
552
+ if (items.length === 0)
553
+ return result;
554
+ for (const item of items) {
555
+ let upsert;
556
+ try {
557
+ upsert = await this.upsertOnServer(apiKey, agentId, item);
558
+ }
559
+ catch (error) {
560
+ result.failed.push({
561
+ name: item.name,
562
+ error: error instanceof Error ? error.message : String(error),
563
+ });
564
+ continue;
565
+ }
566
+ if (!upsert.success) {
567
+ result.failed.push({ name: item.name, error: upsert.error || 'unknown error' });
568
+ continue;
569
+ }
570
+ result.pushed.push(item.name);
571
+ if (!options.autoDeploy)
572
+ continue;
573
+ try {
574
+ const activated = await this.postUpsert(item, upsert, apiKey, agentId);
575
+ if (activated)
576
+ result.activated.push(item.name);
577
+ }
578
+ catch (error) {
579
+ // postUpsert failure doesn't invalidate the push — the server has
580
+ // the new config, only the follow-up step failed. Warn for
581
+ // visibility without adding the item to failed[] (which would
582
+ // imply the push itself failed).
583
+ console.warn(`⚠️ ${item.name} pushed but post-upsert action failed: ${error instanceof Error ? error.message : String(error)}`);
584
+ }
585
+ }
586
+ return result;
587
+ }
497
588
  }
498
589
  //# sourceMappingURL=base.handler.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"base.handler.js","sourceRoot":"","sources":["../../src/primitives/base.handler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"base.handler.js","sourceRoot":"","sources":["../../src/primitives/base.handler.ts"],"names":[],"mappings":"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"}
@@ -5,18 +5,32 @@
5
5
  *
6
6
  * MCP Servers:
7
7
  * - Don't have versions (non-versioned primitive)
8
- * - Sync pulls active server MCP servers into YAML (bidirectional sync)
9
- * - Use 'active' field on entity
8
+ * - Use create-or-update-by-name (upsert) rather than push-then-publish
9
+ * - Bidirectional sync: servers can originate on the server via integrations
10
+ * (UnifiedTo OAuth, demo website) — lua sync pulls those into YAML
11
+ * - Use `active` field on the entity
10
12
  */
11
13
  import { PrimitiveKind, CompilationManifest } from '../compiler/types.js';
12
14
  import DeveloperApi from '../api/developer.api.service.js';
13
- import { BaseNonVersionedHandler } from './base.handler.js';
15
+ import { BaseNonVersionedHandler, UpsertResult } from './base.handler.js';
14
16
  import type { YamlPrimitiveConfig, ServerSyncData, SyncResult } from './types.js';
15
17
  import type { YamlConfig, YamlConfigMCPServer } from '../types/yaml.types.js';
18
+ /**
19
+ * Shape bundled from the manifest and pushed to the server.
20
+ * `url` is intentionally optional: when a server uses a resolver lambda the
21
+ * field is omitted entirely so the upsert does not clear a previously stored URL.
22
+ */
23
+ export interface BundledMCPServer {
24
+ name: string;
25
+ transport: string;
26
+ url?: string;
27
+ urlResolver?: string;
28
+ headersResolver?: string;
29
+ }
16
30
  /**
17
31
  * MCP Server primitive handler
18
32
  */
19
- export declare class MCPServerHandler extends BaseNonVersionedHandler<YamlConfigMCPServer> {
33
+ export declare class MCPServerHandler extends BaseNonVersionedHandler<YamlConfigMCPServer, BundledMCPServer> {
20
34
  readonly kind = PrimitiveKind.MCP_SERVER;
21
35
  readonly displayName = "MCP server";
22
36
  readonly displayNamePlural = "MCP servers";
@@ -27,20 +41,26 @@ export declare class MCPServerHandler extends BaseNonVersionedHandler<YamlConfig
27
41
  cleanItem(server: YamlConfigMCPServer): YamlConfigMCPServer;
28
42
  /**
29
43
  * Load bundled MCP server data from the compilation manifest.
30
- * If the server has url/headers resolver functions (flagged in manifest),
31
- * loads the artifact, compresses it, and includes as urlResolver/headersResolver.
32
- * Same pattern as agent model resolver: artifact loaded at push time, not compile time.
44
+ *
45
+ * If the server has url/headers resolver functions (flagged in the manifest),
46
+ * loads the bundled artifact and includes it as urlResolver/headersResolver
47
+ * same pattern as agent model resolver: artifact loaded at push time, not
48
+ * compile time.
49
+ *
50
+ * `url` is only included when it is a static string. When url is a resolver
51
+ * function the field is omitted entirely (not set to undefined) so the
52
+ * existing DB value is not accidentally cleared during upsert.
33
53
  */
34
- loadBundledServers(projectPath?: string): any[];
54
+ loadBundledItems(projectPath?: string): BundledMCPServer[];
35
55
  /**
36
- * Upsert an MCP server on the server (create or update by name).
56
+ * Upsert an MCP server (create or update by name).
57
+ *
58
+ * Persists the server-assigned id into lua.skill.yaml as a side effect on
59
+ * success, so the id is tracked locally from the very first push. This
60
+ * keeps single-server push and pushAll consistent without making callers
61
+ * remember the follow-up.
37
62
  */
38
- upsertOnServer(apiKey: string, agentId: string, serverData: Record<string, unknown>): Promise<{
39
- success: boolean;
40
- id?: string;
41
- active?: boolean;
42
- error?: string;
43
- }>;
63
+ upsertOnServer(apiKey: string, agentId: string, serverData: BundledMCPServer): Promise<UpsertResult>;
44
64
  /**
45
65
  * Activate an MCP server on the server.
46
66
  */
@@ -49,17 +69,21 @@ export declare class MCPServerHandler extends BaseNonVersionedHandler<YamlConfig
49
69
  error?: string;
50
70
  }>;
51
71
  /**
52
- * MCP servers use 'active' field directly on the entity.
53
- * Excludes integration-sourced servers (e.g., UnifiedTo) from orphan detection.
72
+ * pushAll autoDeploy hook: activate the server if it isn't already active.
73
+ */
74
+ protected postUpsert(_item: BundledMCPServer, upsert: UpsertResult, apiKey: string, agentId: string): Promise<boolean>;
75
+ /**
76
+ * MCP servers use `active` field directly on the entity.
77
+ * Excludes integration-sourced servers (e.g. UnifiedTo) from orphan detection.
54
78
  */
55
79
  isActive(serverItem: any): boolean;
56
80
  /**
57
- * Override sync to pull missing server MCP servers into YAML.
81
+ * Bidirectional sync pull missing server MCP servers into YAML.
58
82
  *
59
- * Base non-versioned sync only prints orphan warnings and never writes. MCP
60
- * servers can be created on the server via integrations (UnifiedTo OAuth,
61
- * demo website, etc.), so bidirectional sync needs to pull those into the
62
- * local YAML. For each active, syncable server entry we:
83
+ * Base non-versioned sync only prints orphan warnings. MCP servers can be
84
+ * created on the server via integrations (UnifiedTo OAuth, demo website, etc.)
85
+ * so bidirectional sync needs to pull those into the local YAML. For each
86
+ * active, syncable server entry we:
63
87
  * 1. Link its id into an existing YAML entry by name if the id is missing.
64
88
  * 2. Append a new YAML entry if no local match by id or name exists.
65
89
  */
@@ -1 +1 @@
1
- {"version":3,"file":"mcp-server.handler.d.ts","sourceRoot":"","sources":["../../src/primitives/mcp-server.handler.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAI1E,OAAO,YAAY,MAAM,iCAAiC,CAAC;AAC3D,OAAO,EAAE,uBAAuB,EAAE,MAAM,mBAAmB,CAAC;AAC5D,OAAO,KAAK,EAAE,mBAAmB,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAClF,OAAO,KAAK,EAAE,UAAU,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAE9E;;GAEG;AACH,qBAAa,gBAAiB,SAAQ,uBAAuB,CAAC,mBAAmB,CAAC;IAChF,QAAQ,CAAC,IAAI,4BAA4B;IACzC,QAAQ,CAAC,WAAW,gBAAgB;IACpC,QAAQ,CAAC,iBAAiB,iBAAiB;IAC3C,QAAQ,CAAC,aAAa,oBAAoB;IAC1C,QAAQ,CAAC,UAAU,EAAE,mBAAmB,CAGtC;IAEF,SAAS,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,YAAY;cAI/C,eAAe,CAAC,GAAG,EAAE,YAAY,GAAG,OAAO,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC;IAQzE,SAAS,CAAC,MAAM,EAAE,mBAAmB,GAAG,mBAAmB;IAO3D;;;;;OAKG;IACH,kBAAkB,CAAC,WAAW,GAAE,MAAsB,GAAG,GAAG,EAAE;IA0B9D;;OAEG;IACG,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,EAAE,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,OAAO,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAWxK;;OAEG;IACG,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAMhH;;;OAGG;IACH,QAAQ,CAAC,UAAU,EAAE,GAAG,GAAG,OAAO;IAOlC;;;;;;;;;OASG;IACG,eAAe,CACnB,UAAU,EAAE,cAAc,EAC1B,MAAM,EAAE,UAAU,GAAG,IAAI,EACzB,SAAS,CAAC,EAAE,mBAAmB,GAC9B,OAAO,CAAC,UAAU,CAAC;CAsEvB;AAGD,eAAO,MAAM,gBAAgB,kBAAyB,CAAC"}
1
+ {"version":3,"file":"mcp-server.handler.d.ts","sourceRoot":"","sources":["../../src/primitives/mcp-server.handler.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAI1E,OAAO,YAAY,MAAM,iCAAiC,CAAC;AAC3D,OAAO,EAAE,uBAAuB,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAC1E,OAAO,KAAK,EAAE,mBAAmB,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAClF,OAAO,KAAK,EAAE,UAAU,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAE9E;;;;GAIG;AACH,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED;;GAEG;AACH,qBAAa,gBAAiB,SAAQ,uBAAuB,CAAC,mBAAmB,EAAE,gBAAgB,CAAC;IAClG,QAAQ,CAAC,IAAI,4BAA4B;IACzC,QAAQ,CAAC,WAAW,gBAAgB;IACpC,QAAQ,CAAC,iBAAiB,iBAAiB;IAC3C,QAAQ,CAAC,aAAa,oBAAoB;IAC1C,QAAQ,CAAC,UAAU,EAAE,mBAAmB,CAGtC;IAEF,SAAS,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,YAAY;cAI/C,eAAe,CAAC,GAAG,EAAE,YAAY,GAAG,OAAO,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC;IAQzE,SAAS,CAAC,MAAM,EAAE,mBAAmB,GAAG,mBAAmB;IAO3D;;;;;;;;;;;OAWG;IACH,gBAAgB,CAAC,WAAW,GAAE,MAAsB,GAAG,gBAAgB,EAAE;IAkCzE;;;;;;;OAOG;IACG,cAAc,CAClB,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,gBAAgB,GAC3B,OAAO,CAAC,YAAY,CAAC;IAiBxB;;OAEG;IACG,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAMhH;;OAEG;cACa,UAAU,CACxB,KAAK,EAAE,gBAAgB,EACvB,MAAM,EAAE,YAAY,EACpB,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM,GACd,OAAO,CAAC,OAAO,CAAC;IAMnB;;;OAGG;IACH,QAAQ,CAAC,UAAU,EAAE,GAAG,GAAG,OAAO;IAOlC;;;;;;;;;OASG;IACG,eAAe,CACnB,UAAU,EAAE,cAAc,EAC1B,MAAM,EAAE,UAAU,GAAG,IAAI,EACzB,SAAS,CAAC,EAAE,mBAAmB,GAC9B,OAAO,CAAC,UAAU,CAAC;CAsEvB;AAGD,eAAO,MAAM,gBAAgB,kBAAyB,CAAC"}
@@ -5,8 +5,10 @@
5
5
  *
6
6
  * MCP Servers:
7
7
  * - Don't have versions (non-versioned primitive)
8
- * - Sync pulls active server MCP servers into YAML (bidirectional sync)
9
- * - Use 'active' field on entity
8
+ * - Use create-or-update-by-name (upsert) rather than push-then-publish
9
+ * - Bidirectional sync: servers can originate on the server via integrations
10
+ * (UnifiedTo OAuth, demo website) — lua sync pulls those into YAML
11
+ * - Use `active` field on the entity
10
12
  */
11
13
  import { PrimitiveKind } from '../compiler/types.js';
12
14
  import { loadManifest, getPrimitivesByKind, loadArtifact, compressForPush } from '../utils/artifact-loader.js';
@@ -46,46 +48,66 @@ export class MCPServerHandler extends BaseNonVersionedHandler {
46
48
  }
47
49
  /**
48
50
  * Load bundled MCP server data from the compilation manifest.
49
- * If the server has url/headers resolver functions (flagged in manifest),
50
- * loads the artifact, compresses it, and includes as urlResolver/headersResolver.
51
- * Same pattern as agent model resolver: artifact loaded at push time, not compile time.
51
+ *
52
+ * If the server has url/headers resolver functions (flagged in the manifest),
53
+ * loads the bundled artifact and includes it as urlResolver/headersResolver
54
+ * same pattern as agent model resolver: artifact loaded at push time, not
55
+ * compile time.
56
+ *
57
+ * `url` is only included when it is a static string. When url is a resolver
58
+ * function the field is omitted entirely (not set to undefined) so the
59
+ * existing DB value is not accidentally cleared during upsert.
52
60
  */
53
- loadBundledServers(projectPath = process.cwd()) {
61
+ loadBundledItems(projectPath = process.cwd()) {
54
62
  try {
55
63
  const manifest = loadManifest(projectPath);
56
64
  const mcpServers = getPrimitivesByKind(manifest, PrimitiveKind.MCP_SERVER);
57
65
  return mcpServers.map((server) => {
58
- // Only load + compress artifact if the server has resolver functions
59
66
  let compressedArtifact;
60
67
  if ((server.hasUrlResolver || server.hasHeadersResolver) && server.path) {
61
68
  const artifactCode = loadArtifact(server, projectPath);
62
69
  compressedArtifact = compressForPush(artifactCode);
63
70
  }
64
- return {
71
+ const result = {
65
72
  name: server.name,
66
73
  transport: server.config?.transport || 'streamable-http',
67
- url: server.config?.url,
68
- urlResolver: server.hasUrlResolver ? compressedArtifact : undefined,
69
- headersResolver: server.hasHeadersResolver ? compressedArtifact : undefined,
70
74
  };
75
+ if (server.config?.url !== undefined) {
76
+ result.url = server.config.url;
77
+ }
78
+ if (server.hasUrlResolver)
79
+ result.urlResolver = compressedArtifact;
80
+ if (server.hasHeadersResolver)
81
+ result.headersResolver = compressedArtifact;
82
+ return result;
71
83
  });
72
84
  }
73
- catch {
85
+ catch (error) {
86
+ console.warn(`⚠️ Failed to load bundled MCP servers: ${error instanceof Error ? error.message : String(error)}`);
74
87
  return [];
75
88
  }
76
89
  }
77
90
  /**
78
- * Upsert an MCP server on the server (create or update by name).
91
+ * Upsert an MCP server (create or update by name).
92
+ *
93
+ * Persists the server-assigned id into lua.skill.yaml as a side effect on
94
+ * success, so the id is tracked locally from the very first push. This
95
+ * keeps single-server push and pushAll consistent without making callers
96
+ * remember the follow-up.
79
97
  */
80
98
  async upsertOnServer(apiKey, agentId, serverData) {
81
99
  const api = this.getApi(apiKey, agentId);
82
100
  const response = await api.upsertMCPServer(serverData);
83
- return {
101
+ const result = {
84
102
  success: response.success,
85
103
  id: response.data?.id,
86
104
  active: response.data?.active,
87
105
  error: response.error?.message,
88
106
  };
107
+ if (result.success && result.id) {
108
+ this.persistItemId(serverData.name, result.id);
109
+ }
110
+ return result;
89
111
  }
90
112
  /**
91
113
  * Activate an MCP server on the server.
@@ -96,8 +118,17 @@ export class MCPServerHandler extends BaseNonVersionedHandler {
96
118
  return { success: response.success, error: response.error?.message };
97
119
  }
98
120
  /**
99
- * MCP servers use 'active' field directly on the entity.
100
- * Excludes integration-sourced servers (e.g., UnifiedTo) from orphan detection.
121
+ * pushAll autoDeploy hook: activate the server if it isn't already active.
122
+ */
123
+ async postUpsert(_item, upsert, apiKey, agentId) {
124
+ if (!upsert.id || upsert.active)
125
+ return false;
126
+ const activated = await this.activate(apiKey, agentId, upsert.id);
127
+ return activated.success;
128
+ }
129
+ /**
130
+ * MCP servers use `active` field directly on the entity.
131
+ * Excludes integration-sourced servers (e.g. UnifiedTo) from orphan detection.
101
132
  */
102
133
  isActive(serverItem) {
103
134
  if (serverItem.source && serverItem.source !== 'manual') {
@@ -106,12 +137,12 @@ export class MCPServerHandler extends BaseNonVersionedHandler {
106
137
  return serverItem.active !== false;
107
138
  }
108
139
  /**
109
- * Override sync to pull missing server MCP servers into YAML.
140
+ * Bidirectional sync pull missing server MCP servers into YAML.
110
141
  *
111
- * Base non-versioned sync only prints orphan warnings and never writes. MCP
112
- * servers can be created on the server via integrations (UnifiedTo OAuth,
113
- * demo website, etc.), so bidirectional sync needs to pull those into the
114
- * local YAML. For each active, syncable server entry we:
142
+ * Base non-versioned sync only prints orphan warnings. MCP servers can be
143
+ * created on the server via integrations (UnifiedTo OAuth, demo website, etc.)
144
+ * so bidirectional sync needs to pull those into the local YAML. For each
145
+ * active, syncable server entry we:
115
146
  * 1. Link its id into an existing YAML entry by name if the id is missing.
116
147
  * 2. Append a new YAML entry if no local match by id or name exists.
117
148
  */