@getmodus/sdk 0.2.1 → 0.2.3
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/CHANGELOG.md +7 -3
- package/README.md +4 -0
- package/dist/{chunk-UOBVSNOW.js → chunk-ZFZQ2UMA.js} +159 -94
- package/dist/chunk-ZFZQ2UMA.js.map +1 -0
- package/dist/{conversations-DoyTcWk6.d.cts → conversations-BP2sI3Q5.d.cts} +108 -90
- package/dist/{conversations-DoyTcWk6.d.ts → conversations-BP2sI3Q5.d.ts} +108 -90
- package/dist/index.cjs +281 -126
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +26 -10
- package/dist/index.d.ts +26 -10
- package/dist/index.js +123 -34
- package/dist/index.js.map +1 -1
- package/dist/management/index.cjs +164 -94
- package/dist/management/index.cjs.map +1 -1
- package/dist/management/index.d.cts +1 -1
- package/dist/management/index.d.ts +1 -1
- package/dist/management/index.js +7 -2
- package/dist/management/index.js.map +1 -1
- package/package.json +2 -1
- package/dist/chunk-UOBVSNOW.js.map +0 -1
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { H as HttpClient, M as ModusConfig, c as components, A as AgentType, m as OperationId, V as VariationView, P as Page, a as Agent, C as ContextItem, t as ContextItemDeletion, d as CustomContextItemsResource, u as CreatedContextItem, S as ScopeConversationsResource, h as Skill, i as ModusClientBase, j as ModusOptions } from '../conversations-
|
|
1
|
+
import { H as HttpClient, M as ModusConfig, c as components, A as AgentType, m as OperationId, V as VariationView, P as Page, a as Agent, C as ContextItem, t as ContextItemDeletion, d as CustomContextItemsResource, u as CreatedContextItem, S as ScopeConversationsResource, h as Skill, i as ModusClientBase, j as ModusOptions } from '../conversations-BP2sI3Q5.cjs';
|
|
2
2
|
|
|
3
3
|
type AgentInterface = components['schemas']['AgentInterfaceDto'];
|
|
4
4
|
type AddAgentInterface = components['schemas']['AddAgentInterfaceDto'];
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { H as HttpClient, M as ModusConfig, c as components, A as AgentType, m as OperationId, V as VariationView, P as Page, a as Agent, C as ContextItem, t as ContextItemDeletion, d as CustomContextItemsResource, u as CreatedContextItem, S as ScopeConversationsResource, h as Skill, i as ModusClientBase, j as ModusOptions } from '../conversations-
|
|
1
|
+
import { H as HttpClient, M as ModusConfig, c as components, A as AgentType, m as OperationId, V as VariationView, P as Page, a as Agent, C as ContextItem, t as ContextItemDeletion, d as CustomContextItemsResource, u as CreatedContextItem, S as ScopeConversationsResource, h as Skill, i as ModusClientBase, j as ModusOptions } from '../conversations-BP2sI3Q5.js';
|
|
2
2
|
|
|
3
3
|
type AgentInterface = components['schemas']['AgentInterfaceDto'];
|
|
4
4
|
type AddAgentInterface = components['schemas']['AddAgentInterfaceDto'];
|
package/dist/management/index.js
CHANGED
|
@@ -9,7 +9,7 @@ import {
|
|
|
9
9
|
omitUndefined,
|
|
10
10
|
validateId,
|
|
11
11
|
validatePageSize
|
|
12
|
-
} from "../chunk-
|
|
12
|
+
} from "../chunk-ZFZQ2UMA.js";
|
|
13
13
|
|
|
14
14
|
// src/_query.ts
|
|
15
15
|
function updateMaskQuery(updateMask) {
|
|
@@ -275,6 +275,11 @@ var ManagementWorkflowsResource = class {
|
|
|
275
275
|
}
|
|
276
276
|
};
|
|
277
277
|
|
|
278
|
+
// src/types/context.ts
|
|
279
|
+
function withCreatedUid(data) {
|
|
280
|
+
return { ...data, uid: data.contextItemId };
|
|
281
|
+
}
|
|
282
|
+
|
|
278
283
|
// src/management/context/_content-merge.ts
|
|
279
284
|
function requireContentDict(item, contextType) {
|
|
280
285
|
if (item.contextType !== contextType) {
|
|
@@ -437,7 +442,7 @@ var ManagementContextResource = class {
|
|
|
437
442
|
const data = await invokeWithRetry(this.config, this.http, operationId, {
|
|
438
443
|
jsonBody: payload
|
|
439
444
|
});
|
|
440
|
-
return data;
|
|
445
|
+
return withCreatedUid(data);
|
|
441
446
|
}
|
|
442
447
|
createNote(title, content) {
|
|
443
448
|
return this.create("ContextCreatorsController_createNote", omitUndefined({ title, content }));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/_query.ts","../../src/management/_access-config.ts","../../src/management/agents/interfaces.ts","../../src/management/agents/agents.ts","../../src/management/context/_content-merge.ts","../../src/management/context/items.ts","../../src/management/context/context.ts","../../src/management/organization.ts","../../src/management/skills/memories.ts","../../src/management/skills/evaluations.ts","../../src/management/skills/supervision.ts","../../src/management/skills/skills.ts","../../src/management/usage.ts","../../src/management/users.ts","../../src/management/index.ts"],"sourcesContent":["export function updateMaskQuery(\n updateMask?: string,\n): Record<string, string> | undefined {\n if (updateMask === undefined) return undefined\n if (!updateMask.trim()) {\n throw new Error('update_mask must be a non-empty comma-separated list of field names')\n }\n return { updateMask }\n}\n","const EVERYONE_GROUP_ID = '__everyone__'\n\nexport function accessConfigWireForCreate(guardrails: string[]): Record<string, unknown> {\n return {\n visibility: 'shared',\n groupPermissions: { [EVERYONE_GROUP_ID]: { use: true, manage: true } },\n guardrails,\n sharedWith: [],\n }\n}\n\nexport function accessConfigWireForUpdate(\n existing: Record<string, unknown> | undefined,\n guardrails: string[],\n): Record<string, unknown> {\n if (!existing || Object.keys(existing).length === 0) {\n return accessConfigWireForCreate(guardrails)\n }\n return { ...existing, guardrails }\n}\n\nexport function accessFromSkillResponse(raw: Record<string, unknown>): Record<string, unknown> {\n const value = raw.accessConfig ?? raw.access_config\n if (value && typeof value === 'object' && !Array.isArray(value)) {\n return value as Record<string, unknown>\n }\n return {}\n}\n\nexport function accessConfigBodyForCreate(\n guardrails?: string[],\n): Record<string, unknown> | undefined {\n if (guardrails === undefined) return undefined\n return accessConfigWireForCreate(guardrails)\n}\n\nexport async function accessConfigBodyForUpdate(\n guardrails: string[] | undefined,\n loadResource: () => Promise<Record<string, unknown>>,\n): Promise<Record<string, unknown> | undefined> {\n if (guardrails === undefined) return undefined\n const existing = accessFromSkillResponse(await loadResource())\n return accessConfigWireForUpdate(existing, guardrails)\n}\n","import type { ModusConfig } from '../../_config.js'\nimport type { HttpClient } from '../../_http.js'\nimport { updateMaskQuery } from '../../_query.js'\nimport { invokeWithRetry, omitUndefined } from '../../_request.js'\nimport { validateId } from '../../_validation.js'\nimport type { components } from '../../_generated/v1.js'\n\nexport type AgentInterface = components['schemas']['AgentInterfaceDto']\nexport type AddAgentInterface = components['schemas']['AddAgentInterfaceDto']\nexport type UpdateAgentInterface = components['schemas']['UpdateAgentInterfaceDto']\n\nexport class WorkflowInterfacesResource {\n constructor(\n private readonly http: HttpClient,\n private readonly config: ModusConfig,\n private readonly workflowId: number | string,\n ) {}\n\n async list(): Promise<AgentInterface[]> {\n validateId(this.workflowId, 'workflow_id')\n const data = await invokeWithRetry(this.config, this.http, 'WorkflowInterfacesController_list', {\n pathParams: { id: this.workflowId },\n }) as { interfaces: AgentInterface[] }\n return data.interfaces\n }\n\n async create(options: AddAgentInterface): Promise<AgentInterface> {\n validateId(this.workflowId, 'workflow_id')\n return await invokeWithRetry(this.config, this.http, 'WorkflowInterfacesController_add', {\n pathParams: { id: this.workflowId },\n jsonBody: omitUndefined(options),\n }) as AgentInterface\n }\n\n async update(interfaceId: string, options: UpdateAgentInterface, updateMask?: string): Promise<AgentInterface> {\n validateId(this.workflowId, 'workflow_id')\n validateId(interfaceId, 'interface_id')\n return await invokeWithRetry(this.config, this.http, 'WorkflowInterfacesController_update', {\n pathParams: { id: this.workflowId, interfaceId },\n query: updateMaskQuery(updateMask),\n jsonBody: updateMask === undefined ? omitUndefined(options) : options,\n }) as AgentInterface\n }\n\n async delete(interfaceId: string): Promise<void> {\n validateId(this.workflowId, 'workflow_id')\n validateId(interfaceId, 'interface_id')\n await invokeWithRetry(this.config, this.http, 'WorkflowInterfacesController_delete', {\n pathParams: { id: this.workflowId, interfaceId },\n })\n }\n\n async deleteAll(): Promise<void> {\n validateId(this.workflowId, 'workflow_id')\n await invokeWithRetry(this.config, this.http, 'WorkflowInterfacesController_deleteAll', {\n pathParams: { id: this.workflowId },\n })\n }\n}\n","import type { ModusConfig } from '../../_config.js'\nimport type { OperationId } from '../../_generated/operations.js'\nimport type { HttpClient } from '../../_http.js'\nimport { updateMaskQuery } from '../../_query.js'\nimport { aipListParams, buildAipPage, type Page } from '../../_pagination.js'\nimport { asRecord, invokeWithRetry, omitUndefined } from '../../_request.js'\nimport { validateId, validatePageSize } from '../../_validation.js'\nimport type { Agent, AgentType } from '../../types/agents.js'\nimport type { VariationView } from '../../types/views.js'\nimport {\n accessConfigBodyForCreate,\n accessConfigBodyForUpdate,\n} from '../_access-config.js'\nimport { WorkflowInterfacesResource } from './interfaces.js'\n\nexport type TriggerInput = Record<string, unknown>\nexport type AgentSelectionInput = Record<string, unknown>\nexport type WorkflowGraphInput = Record<string, unknown>\n\n/** The canonical `/api/v1/workflows` management operationIds. */\ninterface ManagementWorkflowsOperations {\n readonly list: OperationId\n readonly get: OperationId\n readonly create: OperationId\n readonly update: OperationId\n readonly deploy: OperationId\n readonly delete: OperationId\n readonly restore: OperationId\n readonly requestOwnershipTransfer: OperationId\n readonly cancelOwnershipTransfer: OperationId\n readonly acceptOwnershipTransfer: OperationId\n readonly toggle: OperationId\n}\n\nconst MANAGEMENT_WORKFLOW_OPERATIONS: ManagementWorkflowsOperations = {\n list: 'WorkflowsController_list',\n get: 'WorkflowsController_get',\n create: 'WorkflowsController_create',\n update: 'WorkflowsController_update',\n deploy: 'WorkflowsController_deploy',\n delete: 'WorkflowsController_delete',\n restore: 'WorkflowsController_restore',\n requestOwnershipTransfer: 'WorkflowsController_requestOwnershipTransfer',\n cancelOwnershipTransfer: 'WorkflowsController_cancelOwnershipTransfer',\n acceptOwnershipTransfer: 'WorkflowsController_acceptOwnershipTransfer',\n toggle: 'WorkflowsController_toggle',\n}\n\nfunction workflowsListParams(\n pageSize: number,\n pageToken: string | undefined,\n search?: string,\n type?: AgentType,\n view?: VariationView,\n includeVariation?: boolean,\n): Record<string, string | number | boolean | undefined | null> {\n const extra: Record<string, string | number | boolean | undefined | null> = {}\n if (search !== undefined) extra.search = search\n if (type !== undefined) extra.type = type\n if (view !== undefined) extra.view = view\n if (includeVariation !== undefined) extra.includeVariation = includeVariation\n return aipListParams(pageSize, pageToken, extra) as Record<\n string,\n string | number | boolean | undefined | null\n >\n}\n\nfunction parseWorkflow(raw: unknown): Agent {\n return raw as Agent\n}\n\nexport interface CreateAgentOptions {\n name: string\n type: AgentType\n description?: string\n trigger?: TriggerInput\n agentSelection?: AgentSelectionInput\n workflowStructure?: WorkflowGraphInput\n guardrails?: string[]\n}\n\nexport interface UpdateAgentOptions {\n name?: string\n type?: AgentType\n description?: string\n trigger?: TriggerInput\n agentSelection?: AgentSelectionInput\n workflowStructure?: WorkflowGraphInput\n guardrails?: string[]\n updateMask?: string\n}\n\nexport class ManagementWorkflowsResource {\n protected readonly ops: ManagementWorkflowsOperations = MANAGEMENT_WORKFLOW_OPERATIONS\n\n constructor(\n private readonly http: HttpClient,\n private readonly config: ModusConfig,\n ) {}\n\n list(options: {\n pageSize?: number\n pageToken?: string\n search?: string\n type?: AgentType\n view?: VariationView\n includeVariation?: boolean\n } = {}): Promise<Page<Agent>> {\n const pageSize = options.pageSize ?? 25\n validatePageSize(pageSize)\n return this.listPage(\n pageSize,\n options.pageToken,\n options.search,\n options.type,\n options.view,\n options.includeVariation,\n )\n }\n\n private async listPage(\n pageSize: number,\n pageToken: string | undefined,\n search?: string,\n type?: AgentType,\n view?: VariationView,\n includeVariation?: boolean,\n ): Promise<Page<Agent>> {\n const data = asRecord(\n await invokeWithRetry(this.config, this.http, this.ops.list, {\n query: workflowsListParams(pageSize, pageToken, search, type, view, includeVariation),\n }),\n )\n // Envelope key is the server DTO property name (`agents`) — unchanged by\n // the rename, which only moved paths/opIds/tags to the workflows vocab.\n return buildAipPage(data, 'agents', parseWorkflow, (token) =>\n this.listPage(pageSize, token, search, type, view, includeVariation),\n )\n }\n\n async get(workflowId: number | string, options: { view?: VariationView } = {}): Promise<Agent> {\n validateId(workflowId, 'workflow_id')\n const query = options.view !== undefined ? { view: options.view } : undefined\n const data = await invokeWithRetry(this.config, this.http, this.ops.get, {\n pathParams: { id: workflowId },\n query,\n })\n return parseWorkflow(data)\n }\n\n interfaces(workflowId: number | string): WorkflowInterfacesResource {\n return new WorkflowInterfacesResource(this.http, this.config, workflowId)\n }\n\n async create(options: CreateAgentOptions): Promise<Agent> {\n const body = omitUndefined({\n name: options.name,\n type: options.type,\n description: options.description,\n trigger: options.trigger,\n agentSelection: options.agentSelection,\n workflowStructure: options.workflowStructure,\n accessConfig: accessConfigBodyForCreate(options.guardrails),\n })\n const data = await invokeWithRetry(this.config, this.http, this.ops.create, {\n jsonBody: body,\n })\n return parseWorkflow(data)\n }\n\n async update(workflowId: number | string, options: UpdateAgentOptions = {}): Promise<Agent> {\n validateId(workflowId, 'workflow_id')\n const accessConfig = await accessConfigBodyForUpdate(options.guardrails, async () =>\n asRecord(\n await invokeWithRetry(this.config, this.http, this.ops.get, {\n pathParams: { id: workflowId },\n }),\n ),\n )\n const fields = {\n name: options.name,\n type: options.type,\n description: options.description,\n trigger: options.trigger,\n agentSelection: options.agentSelection,\n workflowStructure: options.workflowStructure,\n accessConfig,\n }\n const body = options.updateMask !== undefined ? fields : omitUndefined(fields)\n const data = await invokeWithRetry(this.config, this.http, this.ops.update, {\n pathParams: { id: workflowId },\n query: updateMaskQuery(options.updateMask),\n jsonBody: body,\n })\n return parseWorkflow(data)\n }\n\n async deploy(workflowId: number | string): Promise<Agent> {\n validateId(workflowId, 'workflow_id')\n const data = asRecord(\n await invokeWithRetry(this.config, this.http, this.ops.deploy, {\n pathParams: { id: workflowId },\n jsonBody: {},\n }),\n )\n return parseWorkflow(data.agent)\n }\n\n async toggle(workflowId: number | string, options: { active: boolean }): Promise<Agent> {\n validateId(workflowId, 'workflow_id')\n const data = await invokeWithRetry(this.config, this.http, this.ops.toggle, {\n pathParams: { id: workflowId },\n jsonBody: { active: options.active },\n })\n return parseWorkflow(data)\n }\n\n async delete(workflowId: number | string): Promise<void> {\n validateId(workflowId, 'workflow_id')\n await invokeWithRetry(this.config, this.http, this.ops.delete, {\n pathParams: { id: workflowId },\n })\n }\n\n async restore(workflowId: number | string): Promise<Agent> {\n validateId(workflowId, 'workflow_id')\n const data = await invokeWithRetry(this.config, this.http, this.ops.restore, {\n pathParams: { id: workflowId },\n jsonBody: {},\n })\n return parseWorkflow(data)\n }\n\n async requestOwnershipTransfer(\n workflowId: number | string,\n options: { newOwnerUserId: string },\n ): Promise<Agent> {\n validateId(workflowId, 'workflow_id')\n const data = await invokeWithRetry(\n this.config,\n this.http,\n this.ops.requestOwnershipTransfer,\n {\n pathParams: { id: workflowId },\n jsonBody: omitUndefined({ newOwnerUserId: options.newOwnerUserId }),\n },\n )\n return parseWorkflow(data)\n }\n\n async cancelOwnershipTransfer(workflowId: number | string): Promise<Agent> {\n validateId(workflowId, 'workflow_id')\n const data = await invokeWithRetry(\n this.config,\n this.http,\n this.ops.cancelOwnershipTransfer,\n { pathParams: { id: workflowId } },\n )\n return parseWorkflow(data)\n }\n\n async acceptOwnershipTransfer(workflowId: number | string): Promise<Agent> {\n validateId(workflowId, 'workflow_id')\n const data = await invokeWithRetry(\n this.config,\n this.http,\n this.ops.acceptOwnershipTransfer,\n { pathParams: { id: workflowId }, jsonBody: {} },\n )\n return parseWorkflow(data)\n }\n}\n","import type { ContextItem } from '../../types/context.js'\nimport type { ManagementContextItemsResource } from './items.js'\n\nexport type UserFeedback = 'positive' | 'neutral' | 'negative'\n\nfunction requireContentDict(item: ContextItem, contextType: string): Record<string, unknown> {\n if (item.contextType !== contextType) {\n throw new Error(`Expected contextType ${contextType}, got ${item.contextType}.`)\n }\n if (!item.content || typeof item.content !== 'object' || Array.isArray(item.content)) {\n throw new Error(`Context item ${item.uid} has no object content; cannot merge ${contextType} fields.`)\n }\n return item.content as Record<string, unknown>\n}\n\nexport function mergeNoteContent(\n existing: Record<string, unknown>,\n options: { title: string; body: string },\n): Record<string, unknown> {\n return { ...existing, title: options.title, content: options.body }\n}\n\nexport function mergeLinkContent(\n existing: Record<string, unknown>,\n options: { title?: string; url?: string },\n): Record<string, unknown> {\n const merged = { ...existing }\n if (options.title !== undefined) merged.title = options.title\n if (options.url !== undefined) merged.url = options.url\n return merged\n}\n\nexport function mergeSavedQueryContent(\n existing: Record<string, unknown>,\n options: {\n name: string\n query: string\n connectionId?: string\n path?: string[]\n },\n): Record<string, unknown> {\n const merged: Record<string, unknown> = { ...existing, name: options.name, query: options.query }\n if (options.connectionId !== undefined) merged.connectionId = options.connectionId\n if (options.path !== undefined) merged.path = options.path\n return merged\n}\n\nasync function resolveExistingContent(\n items: ManagementContextItemsResource,\n uid: string,\n contextType: string,\n existing?: ContextItem,\n): Promise<Record<string, unknown>> {\n const item = existing ?? (await items.get(uid))\n return requireContentDict(item, contextType)\n}\n\nexport async function updateWithMergedContent(\n items: ManagementContextItemsResource,\n uid: string,\n options: {\n contextType: string\n mergedContent: Record<string, unknown>\n existing?: ContextItem\n description?: string\n userFeedback?: UserFeedback\n topics?: string[]\n },\n): Promise<ContextItem> {\n if (options.existing) requireContentDict(options.existing, options.contextType)\n return items.update(uid, {\n contextType: options.contextType,\n content: options.mergedContent,\n description: options.description,\n userFeedback: options.userFeedback,\n topics: options.topics,\n })\n}\n\nexport async function resolveAndUpdateNote(\n items: ManagementContextItemsResource,\n uid: string,\n options: {\n title: string\n body: string\n existing?: ContextItem\n description?: string\n userFeedback?: UserFeedback\n topics?: string[]\n },\n): Promise<ContextItem> {\n const content = await resolveExistingContent(items, uid, 'note', options.existing)\n return updateWithMergedContent(items, uid, {\n contextType: 'note',\n mergedContent: mergeNoteContent(content, { title: options.title, body: options.body }),\n existing: options.existing,\n description: options.description,\n userFeedback: options.userFeedback,\n topics: options.topics,\n })\n}\n\nexport async function resolveAndUpdateSavedQuery(\n items: ManagementContextItemsResource,\n uid: string,\n options: {\n name: string\n query: string\n connectionId?: string\n path?: string[]\n existing?: ContextItem\n description?: string\n userFeedback?: UserFeedback\n topics?: string[]\n },\n): Promise<ContextItem> {\n const content = await resolveExistingContent(items, uid, 'saved_query', options.existing)\n return updateWithMergedContent(items, uid, {\n contextType: 'saved_query',\n mergedContent: mergeSavedQueryContent(content, options),\n existing: options.existing,\n description: options.description,\n userFeedback: options.userFeedback,\n topics: options.topics,\n })\n}\n\nexport async function resolveAndUpdateLink(\n items: ManagementContextItemsResource,\n uid: string,\n options: {\n title?: string\n url?: string\n existing?: ContextItem\n description?: string\n userFeedback?: UserFeedback\n topics?: string[]\n },\n): Promise<ContextItem> {\n if (\n options.title === undefined &&\n options.url === undefined &&\n options.description === undefined &&\n options.userFeedback === undefined &&\n options.topics === undefined\n ) {\n throw new Error('Provide at least one field to update.')\n }\n if (options.title === undefined && options.url === undefined) {\n return items.update(uid, {\n description: options.description,\n userFeedback: options.userFeedback,\n topics: options.topics,\n })\n }\n const content = await resolveExistingContent(items, uid, 'link', options.existing)\n return updateWithMergedContent(items, uid, {\n contextType: 'link',\n mergedContent: mergeLinkContent(content, { title: options.title, url: options.url }),\n existing: options.existing,\n description: options.description,\n userFeedback: options.userFeedback,\n topics: options.topics,\n })\n}\n","import type { ModusConfig } from '../../_config.js'\nimport type { HttpClient } from '../../_http.js'\nimport { updateMaskQuery } from '../../_query.js'\nimport { aipListParams, buildAipPage, type Page } from '../../_pagination.js'\nimport { asRecord, invokeWithRetry, omitUndefined } from '../../_request.js'\nimport { validatePageSize } from '../../_validation.js'\nimport type { ContextItem, ContextItemDeletion } from '../../types/context.js'\nimport type { UserFeedback } from './_content-merge.js'\n\nfunction contextListParams(\n pageSize: number,\n pageToken: string | undefined,\n contextType?: string,\n): Record<string, string | number | boolean | readonly string[] | undefined | null> {\n const extra: Record<string, string | readonly string[]> = {}\n if (contextType !== undefined) extra.contextTypes = [contextType]\n return aipListParams(pageSize, pageToken, extra) as Record<\n string,\n string | number | boolean | readonly string[] | undefined | null\n >\n}\n\nfunction parseContextItem(raw: unknown): ContextItem {\n return raw as ContextItem\n}\n\nexport class ManagementContextItemsResource {\n constructor(\n private readonly http: HttpClient,\n private readonly config: ModusConfig,\n ) {}\n\n list(options: {\n pageSize?: number\n pageToken?: string\n contextType?: string\n } = {}): Promise<Page<ContextItem>> {\n const pageSize = options.pageSize ?? 25\n validatePageSize(pageSize)\n return this.listPage(pageSize, options.pageToken, options.contextType)\n }\n\n private async listPage(\n pageSize: number,\n pageToken: string | undefined,\n contextType?: string,\n ): Promise<Page<ContextItem>> {\n const data = asRecord(\n await invokeWithRetry(this.config, this.http, 'ContextItemsController_list', {\n query: contextListParams(pageSize, pageToken, contextType),\n }),\n )\n return buildAipPage(data, 'contextItems', parseContextItem, (token) =>\n this.listPage(pageSize, token, contextType),\n )\n }\n\n async get(uid: string): Promise<ContextItem> {\n const data = await invokeWithRetry(this.config, this.http, 'ContextItemsController_get', {\n pathParams: { uid },\n })\n return parseContextItem(data)\n }\n\n async update(\n uid: string,\n options: {\n content?: unknown\n contextType?: string\n description?: string\n userFeedback?: UserFeedback\n topics?: string[]\n updateMask?: string\n } = {},\n ): Promise<ContextItem> {\n const body =\n options.updateMask !== undefined\n ? {\n content: options.content,\n contextType: options.contextType,\n description: options.description,\n userFeedback: options.userFeedback,\n topics: options.topics,\n }\n : omitUndefined({\n content: options.content,\n contextType: options.contextType,\n description: options.description,\n userFeedback: options.userFeedback,\n topics: options.topics,\n })\n await invokeWithRetry(this.config, this.http, 'ContextItemsController_update', {\n pathParams: { uid },\n query: updateMaskQuery(options.updateMask),\n jsonBody: body,\n })\n return this.get(uid)\n }\n\n async delete(uid: string): Promise<ContextItemDeletion> {\n const data = await invokeWithRetry(this.config, this.http, 'ContextItemsController_delete', {\n pathParams: { uid },\n })\n return data as ContextItemDeletion\n }\n}\n","import type { OperationId } from '../../_generated/operations.js'\nimport type { ModusConfig } from '../../_config.js'\nimport type { HttpClient } from '../../_http.js'\nimport { invokeWithRetry, omitUndefined } from '../../_request.js'\nimport type { ContextItem, CreatedContextItem } from '../../types/context.js'\nimport { CustomContextItemsResource } from '../../resources/context/custom-items.js'\nimport {\n resolveAndUpdateLink,\n resolveAndUpdateNote,\n resolveAndUpdateSavedQuery,\n type UserFeedback,\n} from './_content-merge.js'\nimport { ManagementContextItemsResource } from './items.js'\n\nexport class ManagementContextResource {\n readonly items: ManagementContextItemsResource\n readonly customItems: CustomContextItemsResource\n\n constructor(\n private readonly http: HttpClient,\n private readonly config: ModusConfig,\n ) {\n this.items = new ManagementContextItemsResource(http, config)\n this.customItems = new CustomContextItemsResource(http, config)\n }\n\n private async create(operationId: OperationId, payload: Record<string, unknown>): Promise<CreatedContextItem> {\n const data = await invokeWithRetry(this.config, this.http, operationId, {\n jsonBody: payload,\n })\n return data as CreatedContextItem\n }\n\n createNote(title: string, content: string): Promise<CreatedContextItem> {\n return this.create('ContextCreatorsController_createNote', omitUndefined({ title, content }))\n }\n\n updateNote(\n uid: string,\n options: {\n title: string\n body: string\n existing?: ContextItem\n description?: string\n userFeedback?: UserFeedback\n topics?: string[]\n },\n ): Promise<ContextItem> {\n return resolveAndUpdateNote(this.items, uid, options)\n }\n\n createSavedQuery(\n name: string,\n options: {\n query?: string\n connectionId: string\n description?: string\n path?: string[]\n },\n ): Promise<CreatedContextItem> {\n return this.create(\n 'ContextCreatorsController_createSavedQuery',\n omitUndefined({\n name,\n query: options.query,\n connectionId: options.connectionId,\n description: options.description,\n path: options.path,\n }),\n )\n }\n\n updateSavedQuery(\n uid: string,\n options: {\n name: string\n query: string\n connectionId?: string\n path?: string[]\n existing?: ContextItem\n description?: string\n userFeedback?: UserFeedback\n topics?: string[]\n },\n ): Promise<ContextItem> {\n return resolveAndUpdateSavedQuery(this.items, uid, options)\n }\n\n createLink(\n url: string,\n options: { title?: string; isCrawl?: boolean; pageLimit?: number } = {},\n ): Promise<CreatedContextItem> {\n return this.create(\n 'ContextCreatorsController_createLink',\n omitUndefined({\n url,\n title: options.title,\n isCrawl: options.isCrawl,\n pageLimit: options.pageLimit,\n }),\n )\n }\n\n updateLink(\n uid: string,\n options: {\n title?: string\n url?: string\n existing?: ContextItem\n description?: string\n userFeedback?: UserFeedback\n topics?: string[]\n },\n ): Promise<ContextItem> {\n return resolveAndUpdateLink(this.items, uid, options)\n }\n}\n\nexport type { UserFeedback } from './_content-merge.js'\n","import type { ModusConfig } from '../_config.js'\nimport type { HttpClient } from '../_http.js'\nimport { invokeWithRetry } from '../_request.js'\n\nexport class ManagementOrganizationResource {\n constructor(\n private readonly http: HttpClient,\n private readonly config: ModusConfig,\n ) {}\n\n async delete(): Promise<void> {\n await invokeWithRetry(this.config, this.http, 'OrganizationController_deleteOrganization')\n }\n}\n","import type { ModusConfig } from '../../_config.js'\nimport type { HttpClient } from '../../_http.js'\nimport { updateMaskQuery } from '../../_query.js'\nimport { aipListParams, buildAipPage, type Page } from '../../_pagination.js'\nimport { asRecord, invokeWithRetry, omitUndefined } from '../../_request.js'\nimport { validateId, validatePageSize } from '../../_validation.js'\nimport type {\n Memory,\n MemorySearchRequest,\n MemorySearchResult,\n MemoryUpdate,\n} from '../types/memories.js'\n\nfunction parseMemory(raw: unknown): Memory {\n return raw as Memory\n}\n\n/** Long-term memory stored per scope (`/api/v1/scopes/{id}/memories`). */\nexport class ScopeMemoriesResource {\n constructor(\n private readonly http: HttpClient,\n private readonly config: ModusConfig,\n private readonly scopeId: number | string,\n ) {}\n\n list(options: {\n pageSize?: number\n pageToken?: string\n userId?: string\n } = {}): Promise<Page<Memory>> {\n const pageSize = options.pageSize ?? 25\n validatePageSize(pageSize)\n return this.listPage(pageSize, options.pageToken, options.userId)\n }\n\n private async listPage(\n pageSize: number,\n pageToken: string | undefined,\n userId?: string,\n ): Promise<Page<Memory>> {\n validateId(this.scopeId, 'scope_id')\n const extra: Record<string, string> = {}\n if (userId !== undefined) extra.userId = userId\n const data = asRecord(\n await invokeWithRetry(this.config, this.http, 'ScopeMemoriesController_list', {\n pathParams: { id: this.scopeId },\n query: aipListParams(pageSize, pageToken, extra) as Record<\n string,\n string | number | boolean | undefined | null\n >,\n }),\n )\n return buildAipPage(data, 'memories', parseMemory, (token) =>\n this.listPage(pageSize, token, userId),\n )\n }\n\n async search(request: MemorySearchRequest): Promise<MemorySearchResult> {\n validateId(this.scopeId, 'scope_id')\n const data = await invokeWithRetry(this.config, this.http, 'ScopeMemoriesController_search', {\n pathParams: { id: this.scopeId },\n jsonBody: omitUndefined(request as Record<string, unknown>),\n })\n return data as MemorySearchResult\n }\n\n async update(\n memoryId: string,\n update: MemoryUpdate,\n options: { updateMask?: string } = {},\n ): Promise<Memory> {\n validateId(memoryId, 'memory_id')\n validateId(this.scopeId, 'scope_id')\n const data = await invokeWithRetry(this.config, this.http, 'ScopeMemoriesController_update', {\n pathParams: { id: this.scopeId, memoryId },\n query: updateMaskQuery(options.updateMask),\n jsonBody: omitUndefined(update as Record<string, unknown>),\n })\n return parseMemory(data)\n }\n\n async delete(memoryId: string): Promise<void> {\n validateId(memoryId, 'memory_id')\n validateId(this.scopeId, 'scope_id')\n await invokeWithRetry(this.config, this.http, 'ScopeMemoriesController_delete', {\n pathParams: { id: this.scopeId, memoryId },\n })\n }\n}\n","import type { ModusConfig } from '../../_config.js'\nimport type { HttpClient } from '../../_http.js'\nimport { aipListParams, buildAipPage, type Page } from '../../_pagination.js'\nimport { asRecord, invokeWithRetry, omitUndefined } from '../../_request.js'\nimport { validateId, validatePageSize } from '../../_validation.js'\nimport type {\n EvaluationConfig,\n EvaluationRun,\n EvaluationRunWithResults,\n TriggerEvaluationRunResponse,\n UpdateEvaluationConfig,\n} from '../types/evaluations.js'\n\nfunction parseConfig(raw: unknown): EvaluationConfig {\n return raw as EvaluationConfig\n}\n\nfunction parseRun(raw: unknown): EvaluationRun {\n return raw as EvaluationRun\n}\n\n/** Scheduled and manual skill evaluations (`/api/v1/scopes/{id}/evaluations`). */\nexport class ScopeEvaluationsResource {\n constructor(\n private readonly http: HttpClient,\n private readonly config: ModusConfig,\n private readonly scopeId: number | string,\n ) {}\n\n async getConfig(): Promise<EvaluationConfig> {\n validateId(this.scopeId, 'scope_id')\n const data = await invokeWithRetry(this.config, this.http, 'EvaluationsController_getConfig', {\n pathParams: { id: this.scopeId },\n })\n return parseConfig(data)\n }\n\n async updateConfig(update: UpdateEvaluationConfig): Promise<EvaluationConfig> {\n validateId(this.scopeId, 'scope_id')\n const data = await invokeWithRetry(this.config, this.http, 'EvaluationsController_updateConfig', {\n pathParams: { id: this.scopeId },\n jsonBody: omitUndefined(update as Record<string, unknown>),\n })\n return parseConfig(data)\n }\n\n async triggerRun(): Promise<TriggerEvaluationRunResponse> {\n validateId(this.scopeId, 'scope_id')\n const data = await invokeWithRetry(this.config, this.http, 'EvaluationsController_triggerRun', {\n pathParams: { id: this.scopeId },\n })\n return data as TriggerEvaluationRunResponse\n }\n\n listRuns(options: { pageSize?: number; pageToken?: string } = {}): Promise<Page<EvaluationRun>> {\n const pageSize = options.pageSize ?? 25\n validatePageSize(pageSize)\n return this.listRunsPage(pageSize, options.pageToken)\n }\n\n private async listRunsPage(\n pageSize: number,\n pageToken: string | undefined,\n ): Promise<Page<EvaluationRun>> {\n validateId(this.scopeId, 'scope_id')\n const data = asRecord(\n await invokeWithRetry(this.config, this.http, 'EvaluationsController_listRuns', {\n pathParams: { id: this.scopeId },\n query: aipListParams(pageSize, pageToken) as Record<\n string,\n string | number | boolean | undefined | null\n >,\n }),\n )\n return buildAipPage(data, 'runs', parseRun, (token) => this.listRunsPage(pageSize, token))\n }\n\n async getRun(runId: string): Promise<EvaluationRunWithResults> {\n validateId(this.scopeId, 'scope_id')\n validateId(runId, 'run_id')\n const data = await invokeWithRetry(this.config, this.http, 'EvaluationsController_getRun', {\n pathParams: { id: this.scopeId, runId },\n })\n return data as EvaluationRunWithResults\n }\n}\n","import type { ModusConfig } from '../../_config.js'\nimport type { HttpClient } from '../../_http.js'\nimport { invokeWithRetry } from '../../_request.js'\nimport { validateId } from '../../_validation.js'\nimport type { components } from '../../_generated/v1.js'\nimport type { VariationView } from '../../types/views.js'\n\nexport type Supervision = components['schemas']['SupervisionDto']\nexport type SetSupervisionRequest = components['schemas']['SetSupervisionRequestDto']\n\nexport class ScopeSupervisionResource {\n constructor(\n private readonly http: HttpClient,\n private readonly config: ModusConfig,\n private readonly scopeId: number | string,\n ) {}\n\n async get(options: { view?: VariationView } = {}): Promise<Supervision> {\n validateId(this.scopeId, 'scope_id')\n return await invokeWithRetry(this.config, this.http, 'ScopeSupervisionController_get', {\n pathParams: { id: this.scopeId },\n query: options.view === undefined ? undefined : { view: options.view },\n }) as Supervision\n }\n\n async set(request: SetSupervisionRequest): Promise<Supervision> {\n return this.write('ScopeSupervisionController_set', request)\n }\n\n async setActive(request: SetSupervisionRequest): Promise<Supervision> {\n return this.write('ScopeSupervisionController_setActive', request)\n }\n\n private async write(operation: 'ScopeSupervisionController_set' | 'ScopeSupervisionController_setActive',\n request: SetSupervisionRequest): Promise<Supervision> {\n validateId(this.scopeId, 'scope_id')\n return await invokeWithRetry(this.config, this.http, operation, {\n pathParams: { id: this.scopeId },\n jsonBody: request,\n }) as Supervision\n }\n}\n","import type { ModusConfig } from '../../_config.js'\nimport type { OperationId } from '../../_generated/operations.js'\nimport type { HttpClient } from '../../_http.js'\nimport { updateMaskQuery } from '../../_query.js'\nimport { aipListParams, buildAipPage, type Page } from '../../_pagination.js'\nimport { asRecord, invokeWithRetry, omitUndefined } from '../../_request.js'\nimport { validateId, validatePageSize } from '../../_validation.js'\nimport { ScopeConversationsResource } from '../../resources/skills/conversations.js'\nimport type { Skill } from '../../types/skills.js'\nimport type { VariationView } from '../../types/views.js'\nimport {\n accessConfigBodyForCreate,\n accessConfigBodyForUpdate,\n} from '../_access-config.js'\nimport type { JsonObjectListInput } from '../types/json-blob.js'\nimport type { ToolsetInput } from '../types/toolset.js'\nimport { ScopeMemoriesResource } from './memories.js'\nimport { ScopeEvaluationsResource } from './evaluations.js'\nimport { ScopeSupervisionResource } from './supervision.js'\n\n/** The canonical `/api/v1/scopes` management operationIds. */\ninterface ManagementScopesOperations {\n readonly list: OperationId\n readonly get: OperationId\n readonly create: OperationId\n readonly update: OperationId\n readonly deploy: OperationId\n readonly delete: OperationId\n readonly restore: OperationId\n readonly requestOwnershipTransfer: OperationId\n readonly cancelOwnershipTransfer: OperationId\n readonly acceptOwnershipTransfer: OperationId\n readonly patchMcpConfig: OperationId\n readonly getVariation: OperationId\n}\n\nconst MANAGEMENT_SCOPE_OPERATIONS: ManagementScopesOperations = {\n list: 'ScopesController_list',\n get: 'ScopesController_get',\n create: 'ScopesController_create',\n update: 'ScopesController_update',\n deploy: 'ScopesController_deploy',\n delete: 'ScopesController_delete',\n restore: 'ScopesController_restore',\n requestOwnershipTransfer: 'ScopesController_requestOwnershipTransfer',\n cancelOwnershipTransfer: 'ScopesController_cancelOwnershipTransfer',\n acceptOwnershipTransfer: 'ScopesController_acceptOwnershipTransfer',\n patchMcpConfig: 'ScopesController_patchMcpConfig',\n getVariation: 'ScopesController_getVariation',\n}\n\nfunction scopesListParams(\n pageSize: number,\n pageToken: string | undefined,\n search?: string,\n view?: VariationView,\n managerId?: number,\n): Record<string, string | number | boolean | undefined | null> {\n const extra: Record<string, string | number | boolean | undefined | null> = {}\n if (search !== undefined) extra.search = search\n if (view !== undefined) extra.view = view\n if (managerId !== undefined) extra.managerId = managerId\n return aipListParams(pageSize, pageToken, extra) as Record<\n string,\n string | number | boolean | undefined | null\n >\n}\n\nfunction parseScope(raw: unknown): Skill {\n return raw as Skill\n}\n\nexport interface CreateSkillOptions {\n name: string\n description?: string\n expectedOutput?: string\n instructions?: string[]\n toolset?: ToolsetInput\n model?: string\n connectionSet?: JsonObjectListInput\n contextSelections?: JsonObjectListInput\n interfaces?: JsonObjectListInput\n guardrails?: string[]\n}\n\nexport interface UpdateSkillOptions {\n name?: string\n description?: string\n expectedOutput?: string\n instructions?: string[]\n toolset?: ToolsetInput\n model?: string\n connectionSet?: JsonObjectListInput\n contextSelections?: JsonObjectListInput\n interfaces?: JsonObjectListInput\n guardrails?: string[]\n managerId?: string\n evaluations?: JsonObjectListInput\n supervisionSubordinateDescriptions?: Record<string, string>\n updateMask?: string\n}\n\n/** Full CRUD and lifecycle for Modus scopes (`/api/v1/scopes`). */\nexport class ManagementScopesResource {\n protected readonly ops: ManagementScopesOperations = MANAGEMENT_SCOPE_OPERATIONS\n\n constructor(\n private readonly http: HttpClient,\n private readonly config: ModusConfig,\n ) {}\n\n conversations(scopeId: number | string): ScopeConversationsResource {\n return new ScopeConversationsResource(this.http, this.config, scopeId)\n }\n\n memories(scopeId: number | string): ScopeMemoriesResource {\n return new ScopeMemoriesResource(this.http, this.config, scopeId)\n }\n\n evaluations(scopeId: number | string): ScopeEvaluationsResource {\n return new ScopeEvaluationsResource(this.http, this.config, scopeId)\n }\n\n supervision(scopeId: number | string): ScopeSupervisionResource {\n return new ScopeSupervisionResource(this.http, this.config, scopeId)\n }\n\n list(options: {\n pageSize?: number\n pageToken?: string\n search?: string\n view?: VariationView\n managerId?: number\n } = {}): Promise<Page<Skill>> {\n const pageSize = options.pageSize ?? 25\n validatePageSize(pageSize)\n return this.listPage(\n pageSize,\n options.pageToken,\n options.search,\n options.view,\n options.managerId,\n )\n }\n\n private async listPage(\n pageSize: number,\n pageToken: string | undefined,\n search?: string,\n view?: VariationView,\n managerId?: number,\n ): Promise<Page<Skill>> {\n const data = asRecord(\n await invokeWithRetry(this.config, this.http, this.ops.list, {\n query: scopesListParams(pageSize, pageToken, search, view, managerId),\n }),\n )\n // Envelope key is the server DTO property name (`skills`) — unchanged by\n // the rename, which only moved paths/opIds/tags to the scopes vocab.\n return buildAipPage(data, 'skills', parseScope, (token) =>\n this.listPage(pageSize, token, search, view, managerId),\n )\n }\n\n async get(scopeId: number | string, options: { view?: VariationView } = {}): Promise<Skill> {\n validateId(scopeId, 'scope_id')\n const query = options.view !== undefined ? { view: options.view } : undefined\n const data = await invokeWithRetry(this.config, this.http, this.ops.get, {\n pathParams: { id: scopeId },\n query,\n })\n return parseScope(data)\n }\n\n async create(options: CreateSkillOptions): Promise<Skill> {\n const body = omitUndefined({\n name: options.name,\n description: options.description,\n expectedOutput: options.expectedOutput,\n instructions: options.instructions,\n toolset: options.toolset,\n model: options.model,\n connectionSet: options.connectionSet,\n contextSelections: options.contextSelections,\n interfaces: options.interfaces,\n accessConfig: accessConfigBodyForCreate(options.guardrails),\n })\n const data = await invokeWithRetry(this.config, this.http, this.ops.create, {\n jsonBody: body,\n })\n return parseScope(data)\n }\n\n async update(scopeId: number | string, options: UpdateSkillOptions = {}): Promise<Skill> {\n validateId(scopeId, 'scope_id')\n const accessConfig = await accessConfigBodyForUpdate(options.guardrails, async () =>\n asRecord(\n await invokeWithRetry(this.config, this.http, this.ops.get, {\n pathParams: { id: scopeId },\n }),\n ),\n )\n const fields = {\n name: options.name,\n description: options.description,\n expectedOutput: options.expectedOutput,\n instructions: options.instructions,\n toolset: options.toolset,\n model: options.model,\n connectionSet: options.connectionSet,\n contextSelections: options.contextSelections,\n interfaces: options.interfaces,\n accessConfig,\n managerId: options.managerId,\n evaluations: options.evaluations,\n supervisionSubordinateDescriptions: options.supervisionSubordinateDescriptions,\n }\n const body =\n options.updateMask !== undefined ? fields : omitUndefined(fields)\n const data = await invokeWithRetry(this.config, this.http, this.ops.update, {\n pathParams: { id: scopeId },\n query: updateMaskQuery(options.updateMask),\n jsonBody: body,\n })\n return parseScope(data)\n }\n\n async deploy(scopeId: number | string): Promise<Skill> {\n validateId(scopeId, 'scope_id')\n const data = asRecord(\n await invokeWithRetry(this.config, this.http, this.ops.deploy, {\n pathParams: { id: scopeId },\n jsonBody: {},\n }),\n )\n return parseScope(data.skill)\n }\n\n async delete(scopeId: number | string): Promise<void> {\n validateId(scopeId, 'scope_id')\n await invokeWithRetry(this.config, this.http, this.ops.delete, {\n pathParams: { id: scopeId },\n })\n }\n\n async restore(scopeId: number | string): Promise<Skill> {\n validateId(scopeId, 'scope_id')\n const data = await invokeWithRetry(this.config, this.http, this.ops.restore, {\n pathParams: { id: scopeId },\n jsonBody: {},\n })\n return parseScope(data)\n }\n\n async requestOwnershipTransfer(\n scopeId: number | string,\n options: { newOwnerUserId: string },\n ): Promise<Skill> {\n validateId(scopeId, 'scope_id')\n const data = await invokeWithRetry(\n this.config,\n this.http,\n this.ops.requestOwnershipTransfer,\n {\n pathParams: { id: scopeId },\n jsonBody: omitUndefined({ newOwnerUserId: options.newOwnerUserId }),\n },\n )\n return parseScope(data)\n }\n\n async cancelOwnershipTransfer(scopeId: number | string): Promise<Skill> {\n validateId(scopeId, 'scope_id')\n const data = await invokeWithRetry(\n this.config,\n this.http,\n this.ops.cancelOwnershipTransfer,\n { pathParams: { id: scopeId } },\n )\n return parseScope(data)\n }\n\n async acceptOwnershipTransfer(scopeId: number | string): Promise<Skill> {\n validateId(scopeId, 'scope_id')\n const data = await invokeWithRetry(\n this.config,\n this.http,\n this.ops.acceptOwnershipTransfer,\n { pathParams: { id: scopeId }, jsonBody: {} },\n )\n return parseScope(data)\n }\n\n async patchMcpConfig(\n scopeId: number | string,\n options: { mcpConfig: Record<string, unknown> },\n ): Promise<void> {\n validateId(scopeId, 'scope_id')\n await invokeWithRetry(this.config, this.http, this.ops.patchMcpConfig, {\n pathParams: { id: scopeId },\n jsonBody: omitUndefined({ config: options.mcpConfig }),\n })\n }\n\n async getVariation(\n scopeId: number | string,\n options: { variationUid: string },\n ): Promise<Skill> {\n validateId(scopeId, 'scope_id')\n validateId(options.variationUid, 'variation_uid')\n const data = await invokeWithRetry(this.config, this.http, this.ops.getVariation, {\n pathParams: { id: scopeId, variationUid: options.variationUid },\n })\n return parseScope(data)\n }\n}\n","import type { ModusConfig } from '../_config.js'\nimport type { HttpClient } from '../_http.js'\nimport { invokeWithRetry } from '../_request.js'\nimport type { UsageReport, UsageRollup } from '../types/usage.js'\n\nexport class ManagementUsageResource {\n constructor(\n private readonly http: HttpClient,\n private readonly config: ModusConfig,\n ) {}\n\n async list(options: {\n since: string\n until: string\n rollup: UsageRollup\n model?: string\n }): Promise<UsageReport> {\n const query: Record<string, string> = {\n since: options.since,\n until: options.until,\n rollup: options.rollup,\n }\n if (options.model !== undefined) query.model = options.model\n const data = await invokeWithRetry(this.config, this.http, 'UsageController_list', { query })\n return data as UsageReport\n }\n}\n","import type { ModusConfig } from '../_config.js'\nimport type { components } from '../_generated/v1.js'\nimport type { HttpClient } from '../_http.js'\nimport { invokeWithRetry } from '../_request.js'\n\nexport type MemberGroup = components['schemas']['MemberGroupDto']\nexport type OrgMember = components['schemas']['OrgMemberDto']\n\nexport class ManagementUsersResource {\n constructor(\n private readonly http: HttpClient,\n private readonly config: ModusConfig,\n ) {}\n\n async listMemberGroups(): Promise<MemberGroup[]> {\n const data = (await invokeWithRetry(\n this.config, this.http, 'MemberGroupsController_list',\n )) as { groups: MemberGroup[] }\n return data.groups\n }\n\n async listOrgMembers(): Promise<OrgMember[]> {\n const data = (await invokeWithRetry(\n this.config, this.http, 'OrgMembersController_list',\n )) as { members: OrgMember[] }\n return data.members\n }\n}\n","import { ModusClientBase } from '../_client-base.js'\nimport type { ModusOptions } from '../_config.js'\nimport { ManagementWorkflowsResource } from './agents/agents.js'\nimport { ManagementContextResource } from './context/context.js'\nimport { ManagementOrganizationResource } from './organization.js'\nimport { ManagementScopesResource } from './skills/skills.js'\nimport { ManagementUsageResource } from './usage.js'\nimport { ManagementUsersResource } from './users.js'\n\n/** Configure scopes, workflows, context, usage, and organization settings. */\nexport class ModusManagement extends ModusClientBase {\n readonly scopes: ManagementScopesResource\n readonly workflows: ManagementWorkflowsResource\n readonly context: ManagementContextResource\n readonly usage: ManagementUsageResource\n readonly organization: ManagementOrganizationResource\n readonly users: ManagementUsersResource\n\n constructor(options: ModusOptions = {}) {\n super(options)\n this.scopes = new ManagementScopesResource(this.http, this.config)\n this.workflows = new ManagementWorkflowsResource(this.http, this.config)\n this.context = new ManagementContextResource(this.http, this.config)\n this.usage = new ManagementUsageResource(this.http, this.config)\n this.organization = new ManagementOrganizationResource(this.http, this.config)\n this.users = new ManagementUsersResource(this.http, this.config)\n }\n}\n\nexport type { ModusOptions }\nexport type { CreateSkillOptions, UpdateSkillOptions } from './skills/skills.js'\nexport type {\n CreateAgentOptions,\n UpdateAgentOptions,\n TriggerInput,\n AgentSelectionInput,\n WorkflowGraphInput,\n} from './agents/agents.js'\nexport type { UserFeedback } from './context/context.js'\nexport type { ToolsetInput } from './types/toolset.js'\nexport type {\n Memory,\n MemorySearchRequest,\n MemorySearchResult,\n MemoryUpdate,\n} from './types/memories.js'\n"],"mappings":"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","names":[]}
|
|
1
|
+
{"version":3,"sources":["../../src/_query.ts","../../src/management/_access-config.ts","../../src/management/agents/interfaces.ts","../../src/management/agents/agents.ts","../../src/types/context.ts","../../src/management/context/_content-merge.ts","../../src/management/context/items.ts","../../src/management/context/context.ts","../../src/management/organization.ts","../../src/management/skills/memories.ts","../../src/management/skills/evaluations.ts","../../src/management/skills/supervision.ts","../../src/management/skills/skills.ts","../../src/management/usage.ts","../../src/management/users.ts","../../src/management/index.ts"],"sourcesContent":["export function updateMaskQuery(\n updateMask?: string,\n): Record<string, string> | undefined {\n if (updateMask === undefined) return undefined\n if (!updateMask.trim()) {\n throw new Error('update_mask must be a non-empty comma-separated list of field names')\n }\n return { updateMask }\n}\n","const EVERYONE_GROUP_ID = '__everyone__'\n\nexport function accessConfigWireForCreate(guardrails: string[]): Record<string, unknown> {\n return {\n visibility: 'shared',\n groupPermissions: { [EVERYONE_GROUP_ID]: { use: true, manage: true } },\n guardrails,\n sharedWith: [],\n }\n}\n\nexport function accessConfigWireForUpdate(\n existing: Record<string, unknown> | undefined,\n guardrails: string[],\n): Record<string, unknown> {\n if (!existing || Object.keys(existing).length === 0) {\n return accessConfigWireForCreate(guardrails)\n }\n return { ...existing, guardrails }\n}\n\nexport function accessFromSkillResponse(raw: Record<string, unknown>): Record<string, unknown> {\n const value = raw.accessConfig ?? raw.access_config\n if (value && typeof value === 'object' && !Array.isArray(value)) {\n return value as Record<string, unknown>\n }\n return {}\n}\n\nexport function accessConfigBodyForCreate(\n guardrails?: string[],\n): Record<string, unknown> | undefined {\n if (guardrails === undefined) return undefined\n return accessConfigWireForCreate(guardrails)\n}\n\nexport async function accessConfigBodyForUpdate(\n guardrails: string[] | undefined,\n loadResource: () => Promise<Record<string, unknown>>,\n): Promise<Record<string, unknown> | undefined> {\n if (guardrails === undefined) return undefined\n const existing = accessFromSkillResponse(await loadResource())\n return accessConfigWireForUpdate(existing, guardrails)\n}\n","import type { ModusConfig } from '../../_config.js'\nimport type { HttpClient } from '../../_http.js'\nimport { updateMaskQuery } from '../../_query.js'\nimport { invokeWithRetry, omitUndefined } from '../../_request.js'\nimport { validateId } from '../../_validation.js'\nimport type { components } from '../../_generated/v1.js'\n\nexport type AgentInterface = components['schemas']['AgentInterfaceDto']\nexport type AddAgentInterface = components['schemas']['AddAgentInterfaceDto']\nexport type UpdateAgentInterface = components['schemas']['UpdateAgentInterfaceDto']\n\nexport class WorkflowInterfacesResource {\n constructor(\n private readonly http: HttpClient,\n private readonly config: ModusConfig,\n private readonly workflowId: number | string,\n ) {}\n\n async list(): Promise<AgentInterface[]> {\n validateId(this.workflowId, 'workflow_id')\n const data = await invokeWithRetry(this.config, this.http, 'WorkflowInterfacesController_list', {\n pathParams: { id: this.workflowId },\n }) as { interfaces: AgentInterface[] }\n return data.interfaces\n }\n\n async create(options: AddAgentInterface): Promise<AgentInterface> {\n validateId(this.workflowId, 'workflow_id')\n return await invokeWithRetry(this.config, this.http, 'WorkflowInterfacesController_add', {\n pathParams: { id: this.workflowId },\n jsonBody: omitUndefined(options),\n }) as AgentInterface\n }\n\n async update(interfaceId: string, options: UpdateAgentInterface, updateMask?: string): Promise<AgentInterface> {\n validateId(this.workflowId, 'workflow_id')\n validateId(interfaceId, 'interface_id')\n return await invokeWithRetry(this.config, this.http, 'WorkflowInterfacesController_update', {\n pathParams: { id: this.workflowId, interfaceId },\n query: updateMaskQuery(updateMask),\n jsonBody: updateMask === undefined ? omitUndefined(options) : options,\n }) as AgentInterface\n }\n\n async delete(interfaceId: string): Promise<void> {\n validateId(this.workflowId, 'workflow_id')\n validateId(interfaceId, 'interface_id')\n await invokeWithRetry(this.config, this.http, 'WorkflowInterfacesController_delete', {\n pathParams: { id: this.workflowId, interfaceId },\n })\n }\n\n async deleteAll(): Promise<void> {\n validateId(this.workflowId, 'workflow_id')\n await invokeWithRetry(this.config, this.http, 'WorkflowInterfacesController_deleteAll', {\n pathParams: { id: this.workflowId },\n })\n }\n}\n","import type { ModusConfig } from '../../_config.js'\nimport type { OperationId } from '../../_generated/operations.js'\nimport type { HttpClient } from '../../_http.js'\nimport { updateMaskQuery } from '../../_query.js'\nimport { aipListParams, buildAipPage, type Page } from '../../_pagination.js'\nimport { asRecord, invokeWithRetry, omitUndefined } from '../../_request.js'\nimport { validateId, validatePageSize } from '../../_validation.js'\nimport type { Agent, AgentType } from '../../types/agents.js'\nimport type { VariationView } from '../../types/views.js'\nimport {\n accessConfigBodyForCreate,\n accessConfigBodyForUpdate,\n} from '../_access-config.js'\nimport { WorkflowInterfacesResource } from './interfaces.js'\n\nexport type TriggerInput = Record<string, unknown>\nexport type AgentSelectionInput = Record<string, unknown>\nexport type WorkflowGraphInput = Record<string, unknown>\n\n/** The canonical `/api/v1/workflows` management operationIds. */\ninterface ManagementWorkflowsOperations {\n readonly list: OperationId\n readonly get: OperationId\n readonly create: OperationId\n readonly update: OperationId\n readonly deploy: OperationId\n readonly delete: OperationId\n readonly restore: OperationId\n readonly requestOwnershipTransfer: OperationId\n readonly cancelOwnershipTransfer: OperationId\n readonly acceptOwnershipTransfer: OperationId\n readonly toggle: OperationId\n}\n\nconst MANAGEMENT_WORKFLOW_OPERATIONS: ManagementWorkflowsOperations = {\n list: 'WorkflowsController_list',\n get: 'WorkflowsController_get',\n create: 'WorkflowsController_create',\n update: 'WorkflowsController_update',\n deploy: 'WorkflowsController_deploy',\n delete: 'WorkflowsController_delete',\n restore: 'WorkflowsController_restore',\n requestOwnershipTransfer: 'WorkflowsController_requestOwnershipTransfer',\n cancelOwnershipTransfer: 'WorkflowsController_cancelOwnershipTransfer',\n acceptOwnershipTransfer: 'WorkflowsController_acceptOwnershipTransfer',\n toggle: 'WorkflowsController_toggle',\n}\n\nfunction workflowsListParams(\n pageSize: number,\n pageToken: string | undefined,\n search?: string,\n type?: AgentType,\n view?: VariationView,\n includeVariation?: boolean,\n): Record<string, string | number | boolean | undefined | null> {\n const extra: Record<string, string | number | boolean | undefined | null> = {}\n if (search !== undefined) extra.search = search\n if (type !== undefined) extra.type = type\n if (view !== undefined) extra.view = view\n if (includeVariation !== undefined) extra.includeVariation = includeVariation\n return aipListParams(pageSize, pageToken, extra) as Record<\n string,\n string | number | boolean | undefined | null\n >\n}\n\nfunction parseWorkflow(raw: unknown): Agent {\n return raw as Agent\n}\n\nexport interface CreateAgentOptions {\n name: string\n type: AgentType\n description?: string\n trigger?: TriggerInput\n agentSelection?: AgentSelectionInput\n workflowStructure?: WorkflowGraphInput\n guardrails?: string[]\n}\n\nexport interface UpdateAgentOptions {\n name?: string\n type?: AgentType\n description?: string\n trigger?: TriggerInput\n agentSelection?: AgentSelectionInput\n workflowStructure?: WorkflowGraphInput\n guardrails?: string[]\n updateMask?: string\n}\n\nexport class ManagementWorkflowsResource {\n protected readonly ops: ManagementWorkflowsOperations = MANAGEMENT_WORKFLOW_OPERATIONS\n\n constructor(\n private readonly http: HttpClient,\n private readonly config: ModusConfig,\n ) {}\n\n list(options: {\n pageSize?: number\n pageToken?: string\n search?: string\n type?: AgentType\n view?: VariationView\n includeVariation?: boolean\n } = {}): Promise<Page<Agent>> {\n const pageSize = options.pageSize ?? 25\n validatePageSize(pageSize)\n return this.listPage(\n pageSize,\n options.pageToken,\n options.search,\n options.type,\n options.view,\n options.includeVariation,\n )\n }\n\n private async listPage(\n pageSize: number,\n pageToken: string | undefined,\n search?: string,\n type?: AgentType,\n view?: VariationView,\n includeVariation?: boolean,\n ): Promise<Page<Agent>> {\n const data = asRecord(\n await invokeWithRetry(this.config, this.http, this.ops.list, {\n query: workflowsListParams(pageSize, pageToken, search, type, view, includeVariation),\n }),\n )\n // Envelope key is the server DTO property name (`agents`) — unchanged by\n // the rename, which only moved paths/opIds/tags to the workflows vocab.\n return buildAipPage(data, 'agents', parseWorkflow, (token) =>\n this.listPage(pageSize, token, search, type, view, includeVariation),\n )\n }\n\n async get(workflowId: number | string, options: { view?: VariationView } = {}): Promise<Agent> {\n validateId(workflowId, 'workflow_id')\n const query = options.view !== undefined ? { view: options.view } : undefined\n const data = await invokeWithRetry(this.config, this.http, this.ops.get, {\n pathParams: { id: workflowId },\n query,\n })\n return parseWorkflow(data)\n }\n\n interfaces(workflowId: number | string): WorkflowInterfacesResource {\n return new WorkflowInterfacesResource(this.http, this.config, workflowId)\n }\n\n async create(options: CreateAgentOptions): Promise<Agent> {\n const body = omitUndefined({\n name: options.name,\n type: options.type,\n description: options.description,\n trigger: options.trigger,\n agentSelection: options.agentSelection,\n workflowStructure: options.workflowStructure,\n accessConfig: accessConfigBodyForCreate(options.guardrails),\n })\n const data = await invokeWithRetry(this.config, this.http, this.ops.create, {\n jsonBody: body,\n })\n return parseWorkflow(data)\n }\n\n async update(workflowId: number | string, options: UpdateAgentOptions = {}): Promise<Agent> {\n validateId(workflowId, 'workflow_id')\n const accessConfig = await accessConfigBodyForUpdate(options.guardrails, async () =>\n asRecord(\n await invokeWithRetry(this.config, this.http, this.ops.get, {\n pathParams: { id: workflowId },\n }),\n ),\n )\n const fields = {\n name: options.name,\n type: options.type,\n description: options.description,\n trigger: options.trigger,\n agentSelection: options.agentSelection,\n workflowStructure: options.workflowStructure,\n accessConfig,\n }\n const body = options.updateMask !== undefined ? fields : omitUndefined(fields)\n const data = await invokeWithRetry(this.config, this.http, this.ops.update, {\n pathParams: { id: workflowId },\n query: updateMaskQuery(options.updateMask),\n jsonBody: body,\n })\n return parseWorkflow(data)\n }\n\n async deploy(workflowId: number | string): Promise<Agent> {\n validateId(workflowId, 'workflow_id')\n const data = asRecord(\n await invokeWithRetry(this.config, this.http, this.ops.deploy, {\n pathParams: { id: workflowId },\n jsonBody: {},\n }),\n )\n return parseWorkflow(data.agent)\n }\n\n async toggle(workflowId: number | string, options: { active: boolean }): Promise<Agent> {\n validateId(workflowId, 'workflow_id')\n const data = await invokeWithRetry(this.config, this.http, this.ops.toggle, {\n pathParams: { id: workflowId },\n jsonBody: { active: options.active },\n })\n return parseWorkflow(data)\n }\n\n async delete(workflowId: number | string): Promise<void> {\n validateId(workflowId, 'workflow_id')\n await invokeWithRetry(this.config, this.http, this.ops.delete, {\n pathParams: { id: workflowId },\n })\n }\n\n async restore(workflowId: number | string): Promise<Agent> {\n validateId(workflowId, 'workflow_id')\n const data = await invokeWithRetry(this.config, this.http, this.ops.restore, {\n pathParams: { id: workflowId },\n jsonBody: {},\n })\n return parseWorkflow(data)\n }\n\n async requestOwnershipTransfer(\n workflowId: number | string,\n options: { newOwnerUserId: string },\n ): Promise<Agent> {\n validateId(workflowId, 'workflow_id')\n const data = await invokeWithRetry(\n this.config,\n this.http,\n this.ops.requestOwnershipTransfer,\n {\n pathParams: { id: workflowId },\n jsonBody: omitUndefined({ newOwnerUserId: options.newOwnerUserId }),\n },\n )\n return parseWorkflow(data)\n }\n\n async cancelOwnershipTransfer(workflowId: number | string): Promise<Agent> {\n validateId(workflowId, 'workflow_id')\n const data = await invokeWithRetry(\n this.config,\n this.http,\n this.ops.cancelOwnershipTransfer,\n { pathParams: { id: workflowId } },\n )\n return parseWorkflow(data)\n }\n\n async acceptOwnershipTransfer(workflowId: number | string): Promise<Agent> {\n validateId(workflowId, 'workflow_id')\n const data = await invokeWithRetry(\n this.config,\n this.http,\n this.ops.acceptOwnershipTransfer,\n { pathParams: { id: workflowId }, jsonBody: {} },\n )\n return parseWorkflow(data)\n }\n}\n","import type { components } from '../_generated/v1.js'\n\nexport type ContextItem = components['schemas']['ContextItemDto']\nexport type ContextItemLookupRow = components['schemas']['LookupContextItemRowDto']\nexport type ContextItemDeletion = components['schemas']['DeleteContextItemResponseDto']\n/** Create response; ``uid`` mirrors ``contextItemId`` for list/get parity. */\nexport type CreatedContextItem = components['schemas']['CreatedContextItemResponseDto'] & {\n uid: string\n}\nexport type ContextType = string\n\nexport function withCreatedUid(\n data: components['schemas']['CreatedContextItemResponseDto'],\n): CreatedContextItem {\n return { ...data, uid: data.contextItemId }\n}\n","import type { ContextItem } from '../../types/context.js'\nimport type { ManagementContextItemsResource } from './items.js'\n\nexport type UserFeedback = 'positive' | 'neutral' | 'negative'\n\nfunction requireContentDict(item: ContextItem, contextType: string): Record<string, unknown> {\n if (item.contextType !== contextType) {\n throw new Error(`Expected contextType ${contextType}, got ${item.contextType}.`)\n }\n if (!item.content || typeof item.content !== 'object' || Array.isArray(item.content)) {\n throw new Error(`Context item ${item.uid} has no object content; cannot merge ${contextType} fields.`)\n }\n return item.content as Record<string, unknown>\n}\n\nexport function mergeNoteContent(\n existing: Record<string, unknown>,\n options: { title: string; body: string },\n): Record<string, unknown> {\n return { ...existing, title: options.title, content: options.body }\n}\n\nexport function mergeLinkContent(\n existing: Record<string, unknown>,\n options: { title?: string; url?: string },\n): Record<string, unknown> {\n const merged = { ...existing }\n if (options.title !== undefined) merged.title = options.title\n if (options.url !== undefined) merged.url = options.url\n return merged\n}\n\nexport function mergeSavedQueryContent(\n existing: Record<string, unknown>,\n options: {\n name: string\n query: string\n connectionId?: string\n path?: string[]\n },\n): Record<string, unknown> {\n const merged: Record<string, unknown> = { ...existing, name: options.name, query: options.query }\n if (options.connectionId !== undefined) merged.connectionId = options.connectionId\n if (options.path !== undefined) merged.path = options.path\n return merged\n}\n\nasync function resolveExistingContent(\n items: ManagementContextItemsResource,\n uid: string,\n contextType: string,\n existing?: ContextItem,\n): Promise<Record<string, unknown>> {\n const item = existing ?? (await items.get(uid))\n return requireContentDict(item, contextType)\n}\n\nexport async function updateWithMergedContent(\n items: ManagementContextItemsResource,\n uid: string,\n options: {\n contextType: string\n mergedContent: Record<string, unknown>\n existing?: ContextItem\n description?: string\n userFeedback?: UserFeedback\n topics?: string[]\n },\n): Promise<ContextItem> {\n if (options.existing) requireContentDict(options.existing, options.contextType)\n return items.update(uid, {\n contextType: options.contextType,\n content: options.mergedContent,\n description: options.description,\n userFeedback: options.userFeedback,\n topics: options.topics,\n })\n}\n\nexport async function resolveAndUpdateNote(\n items: ManagementContextItemsResource,\n uid: string,\n options: {\n title: string\n body: string\n existing?: ContextItem\n description?: string\n userFeedback?: UserFeedback\n topics?: string[]\n },\n): Promise<ContextItem> {\n const content = await resolveExistingContent(items, uid, 'note', options.existing)\n return updateWithMergedContent(items, uid, {\n contextType: 'note',\n mergedContent: mergeNoteContent(content, { title: options.title, body: options.body }),\n existing: options.existing,\n description: options.description,\n userFeedback: options.userFeedback,\n topics: options.topics,\n })\n}\n\nexport async function resolveAndUpdateSavedQuery(\n items: ManagementContextItemsResource,\n uid: string,\n options: {\n name: string\n query: string\n connectionId?: string\n path?: string[]\n existing?: ContextItem\n description?: string\n userFeedback?: UserFeedback\n topics?: string[]\n },\n): Promise<ContextItem> {\n const content = await resolveExistingContent(items, uid, 'saved_query', options.existing)\n return updateWithMergedContent(items, uid, {\n contextType: 'saved_query',\n mergedContent: mergeSavedQueryContent(content, options),\n existing: options.existing,\n description: options.description,\n userFeedback: options.userFeedback,\n topics: options.topics,\n })\n}\n\nexport async function resolveAndUpdateLink(\n items: ManagementContextItemsResource,\n uid: string,\n options: {\n title?: string\n url?: string\n existing?: ContextItem\n description?: string\n userFeedback?: UserFeedback\n topics?: string[]\n },\n): Promise<ContextItem> {\n if (\n options.title === undefined &&\n options.url === undefined &&\n options.description === undefined &&\n options.userFeedback === undefined &&\n options.topics === undefined\n ) {\n throw new Error('Provide at least one field to update.')\n }\n if (options.title === undefined && options.url === undefined) {\n return items.update(uid, {\n description: options.description,\n userFeedback: options.userFeedback,\n topics: options.topics,\n })\n }\n const content = await resolveExistingContent(items, uid, 'link', options.existing)\n return updateWithMergedContent(items, uid, {\n contextType: 'link',\n mergedContent: mergeLinkContent(content, { title: options.title, url: options.url }),\n existing: options.existing,\n description: options.description,\n userFeedback: options.userFeedback,\n topics: options.topics,\n })\n}\n","import type { ModusConfig } from '../../_config.js'\nimport type { HttpClient } from '../../_http.js'\nimport { updateMaskQuery } from '../../_query.js'\nimport { aipListParams, buildAipPage, type Page } from '../../_pagination.js'\nimport { asRecord, invokeWithRetry, omitUndefined } from '../../_request.js'\nimport { validatePageSize } from '../../_validation.js'\nimport type { ContextItem, ContextItemDeletion } from '../../types/context.js'\nimport type { UserFeedback } from './_content-merge.js'\n\nfunction contextListParams(\n pageSize: number,\n pageToken: string | undefined,\n contextType?: string,\n): Record<string, string | number | boolean | readonly string[] | undefined | null> {\n const extra: Record<string, string | readonly string[]> = {}\n if (contextType !== undefined) extra.contextTypes = [contextType]\n return aipListParams(pageSize, pageToken, extra) as Record<\n string,\n string | number | boolean | readonly string[] | undefined | null\n >\n}\n\nfunction parseContextItem(raw: unknown): ContextItem {\n return raw as ContextItem\n}\n\nexport class ManagementContextItemsResource {\n constructor(\n private readonly http: HttpClient,\n private readonly config: ModusConfig,\n ) {}\n\n list(options: {\n pageSize?: number\n pageToken?: string\n contextType?: string\n } = {}): Promise<Page<ContextItem>> {\n const pageSize = options.pageSize ?? 25\n validatePageSize(pageSize)\n return this.listPage(pageSize, options.pageToken, options.contextType)\n }\n\n private async listPage(\n pageSize: number,\n pageToken: string | undefined,\n contextType?: string,\n ): Promise<Page<ContextItem>> {\n const data = asRecord(\n await invokeWithRetry(this.config, this.http, 'ContextItemsController_list', {\n query: contextListParams(pageSize, pageToken, contextType),\n }),\n )\n return buildAipPage(data, 'contextItems', parseContextItem, (token) =>\n this.listPage(pageSize, token, contextType),\n )\n }\n\n async get(uid: string): Promise<ContextItem> {\n const data = await invokeWithRetry(this.config, this.http, 'ContextItemsController_get', {\n pathParams: { uid },\n })\n return parseContextItem(data)\n }\n\n async update(\n uid: string,\n options: {\n content?: unknown\n contextType?: string\n description?: string\n userFeedback?: UserFeedback\n topics?: string[]\n updateMask?: string\n } = {},\n ): Promise<ContextItem> {\n const body =\n options.updateMask !== undefined\n ? {\n content: options.content,\n contextType: options.contextType,\n description: options.description,\n userFeedback: options.userFeedback,\n topics: options.topics,\n }\n : omitUndefined({\n content: options.content,\n contextType: options.contextType,\n description: options.description,\n userFeedback: options.userFeedback,\n topics: options.topics,\n })\n await invokeWithRetry(this.config, this.http, 'ContextItemsController_update', {\n pathParams: { uid },\n query: updateMaskQuery(options.updateMask),\n jsonBody: body,\n })\n return this.get(uid)\n }\n\n async delete(uid: string): Promise<ContextItemDeletion> {\n const data = await invokeWithRetry(this.config, this.http, 'ContextItemsController_delete', {\n pathParams: { uid },\n })\n return data as ContextItemDeletion\n }\n}\n","import type { OperationId } from '../../_generated/operations.js'\nimport type { ModusConfig } from '../../_config.js'\nimport type { HttpClient } from '../../_http.js'\nimport { invokeWithRetry, omitUndefined } from '../../_request.js'\nimport type { ContextItem, CreatedContextItem } from '../../types/context.js'\nimport { withCreatedUid } from '../../types/context.js'\nimport { CustomContextItemsResource } from '../../resources/context/custom-items.js'\nimport {\n resolveAndUpdateLink,\n resolveAndUpdateNote,\n resolveAndUpdateSavedQuery,\n type UserFeedback,\n} from './_content-merge.js'\nimport { ManagementContextItemsResource } from './items.js'\n\nexport class ManagementContextResource {\n readonly items: ManagementContextItemsResource\n readonly customItems: CustomContextItemsResource\n\n constructor(\n private readonly http: HttpClient,\n private readonly config: ModusConfig,\n ) {\n this.items = new ManagementContextItemsResource(http, config)\n this.customItems = new CustomContextItemsResource(http, config)\n }\n\n private async create(operationId: OperationId, payload: Record<string, unknown>): Promise<CreatedContextItem> {\n const data = await invokeWithRetry(this.config, this.http, operationId, {\n jsonBody: payload,\n })\n return withCreatedUid(data as Parameters<typeof withCreatedUid>[0])\n }\n\n createNote(title: string, content: string): Promise<CreatedContextItem> {\n return this.create('ContextCreatorsController_createNote', omitUndefined({ title, content }))\n }\n\n updateNote(\n uid: string,\n options: {\n title: string\n body: string\n existing?: ContextItem\n description?: string\n userFeedback?: UserFeedback\n topics?: string[]\n },\n ): Promise<ContextItem> {\n return resolveAndUpdateNote(this.items, uid, options)\n }\n\n createSavedQuery(\n name: string,\n options: {\n query?: string\n connectionId: string\n description?: string\n path?: string[]\n },\n ): Promise<CreatedContextItem> {\n return this.create(\n 'ContextCreatorsController_createSavedQuery',\n omitUndefined({\n name,\n query: options.query,\n connectionId: options.connectionId,\n description: options.description,\n path: options.path,\n }),\n )\n }\n\n updateSavedQuery(\n uid: string,\n options: {\n name: string\n query: string\n connectionId?: string\n path?: string[]\n existing?: ContextItem\n description?: string\n userFeedback?: UserFeedback\n topics?: string[]\n },\n ): Promise<ContextItem> {\n return resolveAndUpdateSavedQuery(this.items, uid, options)\n }\n\n createLink(\n url: string,\n options: { title?: string; isCrawl?: boolean; pageLimit?: number } = {},\n ): Promise<CreatedContextItem> {\n return this.create(\n 'ContextCreatorsController_createLink',\n omitUndefined({\n url,\n title: options.title,\n isCrawl: options.isCrawl,\n pageLimit: options.pageLimit,\n }),\n )\n }\n\n updateLink(\n uid: string,\n options: {\n title?: string\n url?: string\n existing?: ContextItem\n description?: string\n userFeedback?: UserFeedback\n topics?: string[]\n },\n ): Promise<ContextItem> {\n return resolveAndUpdateLink(this.items, uid, options)\n }\n}\n\nexport type { UserFeedback } from './_content-merge.js'\n","import type { ModusConfig } from '../_config.js'\nimport type { HttpClient } from '../_http.js'\nimport { invokeWithRetry } from '../_request.js'\n\nexport class ManagementOrganizationResource {\n constructor(\n private readonly http: HttpClient,\n private readonly config: ModusConfig,\n ) {}\n\n async delete(): Promise<void> {\n await invokeWithRetry(this.config, this.http, 'OrganizationController_deleteOrganization')\n }\n}\n","import type { ModusConfig } from '../../_config.js'\nimport type { HttpClient } from '../../_http.js'\nimport { updateMaskQuery } from '../../_query.js'\nimport { aipListParams, buildAipPage, type Page } from '../../_pagination.js'\nimport { asRecord, invokeWithRetry, omitUndefined } from '../../_request.js'\nimport { validateId, validatePageSize } from '../../_validation.js'\nimport type {\n Memory,\n MemorySearchRequest,\n MemorySearchResult,\n MemoryUpdate,\n} from '../types/memories.js'\n\nfunction parseMemory(raw: unknown): Memory {\n return raw as Memory\n}\n\n/** Long-term memory stored per scope (`/api/v1/scopes/{id}/memories`). */\nexport class ScopeMemoriesResource {\n constructor(\n private readonly http: HttpClient,\n private readonly config: ModusConfig,\n private readonly scopeId: number | string,\n ) {}\n\n list(options: {\n pageSize?: number\n pageToken?: string\n userId?: string\n } = {}): Promise<Page<Memory>> {\n const pageSize = options.pageSize ?? 25\n validatePageSize(pageSize)\n return this.listPage(pageSize, options.pageToken, options.userId)\n }\n\n private async listPage(\n pageSize: number,\n pageToken: string | undefined,\n userId?: string,\n ): Promise<Page<Memory>> {\n validateId(this.scopeId, 'scope_id')\n const extra: Record<string, string> = {}\n if (userId !== undefined) extra.userId = userId\n const data = asRecord(\n await invokeWithRetry(this.config, this.http, 'ScopeMemoriesController_list', {\n pathParams: { id: this.scopeId },\n query: aipListParams(pageSize, pageToken, extra) as Record<\n string,\n string | number | boolean | undefined | null\n >,\n }),\n )\n return buildAipPage(data, 'memories', parseMemory, (token) =>\n this.listPage(pageSize, token, userId),\n )\n }\n\n async search(request: MemorySearchRequest): Promise<MemorySearchResult> {\n validateId(this.scopeId, 'scope_id')\n const data = await invokeWithRetry(this.config, this.http, 'ScopeMemoriesController_search', {\n pathParams: { id: this.scopeId },\n jsonBody: omitUndefined(request as Record<string, unknown>),\n })\n return data as MemorySearchResult\n }\n\n async update(\n memoryId: string,\n update: MemoryUpdate,\n options: { updateMask?: string } = {},\n ): Promise<Memory> {\n validateId(memoryId, 'memory_id')\n validateId(this.scopeId, 'scope_id')\n const data = await invokeWithRetry(this.config, this.http, 'ScopeMemoriesController_update', {\n pathParams: { id: this.scopeId, memoryId },\n query: updateMaskQuery(options.updateMask),\n jsonBody: omitUndefined(update as Record<string, unknown>),\n })\n return parseMemory(data)\n }\n\n async delete(memoryId: string): Promise<void> {\n validateId(memoryId, 'memory_id')\n validateId(this.scopeId, 'scope_id')\n await invokeWithRetry(this.config, this.http, 'ScopeMemoriesController_delete', {\n pathParams: { id: this.scopeId, memoryId },\n })\n }\n}\n","import type { ModusConfig } from '../../_config.js'\nimport type { HttpClient } from '../../_http.js'\nimport { aipListParams, buildAipPage, type Page } from '../../_pagination.js'\nimport { asRecord, invokeWithRetry, omitUndefined } from '../../_request.js'\nimport { validateId, validatePageSize } from '../../_validation.js'\nimport type {\n EvaluationConfig,\n EvaluationRun,\n EvaluationRunWithResults,\n TriggerEvaluationRunResponse,\n UpdateEvaluationConfig,\n} from '../types/evaluations.js'\n\nfunction parseConfig(raw: unknown): EvaluationConfig {\n return raw as EvaluationConfig\n}\n\nfunction parseRun(raw: unknown): EvaluationRun {\n return raw as EvaluationRun\n}\n\n/** Scheduled and manual skill evaluations (`/api/v1/scopes/{id}/evaluations`). */\nexport class ScopeEvaluationsResource {\n constructor(\n private readonly http: HttpClient,\n private readonly config: ModusConfig,\n private readonly scopeId: number | string,\n ) {}\n\n async getConfig(): Promise<EvaluationConfig> {\n validateId(this.scopeId, 'scope_id')\n const data = await invokeWithRetry(this.config, this.http, 'EvaluationsController_getConfig', {\n pathParams: { id: this.scopeId },\n })\n return parseConfig(data)\n }\n\n async updateConfig(update: UpdateEvaluationConfig): Promise<EvaluationConfig> {\n validateId(this.scopeId, 'scope_id')\n const data = await invokeWithRetry(this.config, this.http, 'EvaluationsController_updateConfig', {\n pathParams: { id: this.scopeId },\n jsonBody: omitUndefined(update as Record<string, unknown>),\n })\n return parseConfig(data)\n }\n\n async triggerRun(): Promise<TriggerEvaluationRunResponse> {\n validateId(this.scopeId, 'scope_id')\n const data = await invokeWithRetry(this.config, this.http, 'EvaluationsController_triggerRun', {\n pathParams: { id: this.scopeId },\n })\n return data as TriggerEvaluationRunResponse\n }\n\n listRuns(options: { pageSize?: number; pageToken?: string } = {}): Promise<Page<EvaluationRun>> {\n const pageSize = options.pageSize ?? 25\n validatePageSize(pageSize)\n return this.listRunsPage(pageSize, options.pageToken)\n }\n\n private async listRunsPage(\n pageSize: number,\n pageToken: string | undefined,\n ): Promise<Page<EvaluationRun>> {\n validateId(this.scopeId, 'scope_id')\n const data = asRecord(\n await invokeWithRetry(this.config, this.http, 'EvaluationsController_listRuns', {\n pathParams: { id: this.scopeId },\n query: aipListParams(pageSize, pageToken) as Record<\n string,\n string | number | boolean | undefined | null\n >,\n }),\n )\n return buildAipPage(data, 'runs', parseRun, (token) => this.listRunsPage(pageSize, token))\n }\n\n async getRun(runId: string): Promise<EvaluationRunWithResults> {\n validateId(this.scopeId, 'scope_id')\n validateId(runId, 'run_id')\n const data = await invokeWithRetry(this.config, this.http, 'EvaluationsController_getRun', {\n pathParams: { id: this.scopeId, runId },\n })\n return data as EvaluationRunWithResults\n }\n}\n","import type { ModusConfig } from '../../_config.js'\nimport type { HttpClient } from '../../_http.js'\nimport { invokeWithRetry } from '../../_request.js'\nimport { validateId } from '../../_validation.js'\nimport type { components } from '../../_generated/v1.js'\nimport type { VariationView } from '../../types/views.js'\n\nexport type Supervision = components['schemas']['SupervisionDto']\nexport type SetSupervisionRequest = components['schemas']['SetSupervisionRequestDto']\n\nexport class ScopeSupervisionResource {\n constructor(\n private readonly http: HttpClient,\n private readonly config: ModusConfig,\n private readonly scopeId: number | string,\n ) {}\n\n async get(options: { view?: VariationView } = {}): Promise<Supervision> {\n validateId(this.scopeId, 'scope_id')\n return await invokeWithRetry(this.config, this.http, 'ScopeSupervisionController_get', {\n pathParams: { id: this.scopeId },\n query: options.view === undefined ? undefined : { view: options.view },\n }) as Supervision\n }\n\n async set(request: SetSupervisionRequest): Promise<Supervision> {\n return this.write('ScopeSupervisionController_set', request)\n }\n\n async setActive(request: SetSupervisionRequest): Promise<Supervision> {\n return this.write('ScopeSupervisionController_setActive', request)\n }\n\n private async write(operation: 'ScopeSupervisionController_set' | 'ScopeSupervisionController_setActive',\n request: SetSupervisionRequest): Promise<Supervision> {\n validateId(this.scopeId, 'scope_id')\n return await invokeWithRetry(this.config, this.http, operation, {\n pathParams: { id: this.scopeId },\n jsonBody: request,\n }) as Supervision\n }\n}\n","import type { ModusConfig } from '../../_config.js'\nimport type { OperationId } from '../../_generated/operations.js'\nimport type { HttpClient } from '../../_http.js'\nimport { updateMaskQuery } from '../../_query.js'\nimport { aipListParams, buildAipPage, type Page } from '../../_pagination.js'\nimport { asRecord, invokeWithRetry, omitUndefined } from '../../_request.js'\nimport { validateId, validatePageSize } from '../../_validation.js'\nimport { ScopeConversationsResource } from '../../resources/skills/conversations.js'\nimport type { Skill } from '../../types/skills.js'\nimport type { VariationView } from '../../types/views.js'\nimport {\n accessConfigBodyForCreate,\n accessConfigBodyForUpdate,\n} from '../_access-config.js'\nimport type { JsonObjectListInput } from '../types/json-blob.js'\nimport type { ToolsetInput } from '../types/toolset.js'\nimport { ScopeMemoriesResource } from './memories.js'\nimport { ScopeEvaluationsResource } from './evaluations.js'\nimport { ScopeSupervisionResource } from './supervision.js'\n\n/** The canonical `/api/v1/scopes` management operationIds. */\ninterface ManagementScopesOperations {\n readonly list: OperationId\n readonly get: OperationId\n readonly create: OperationId\n readonly update: OperationId\n readonly deploy: OperationId\n readonly delete: OperationId\n readonly restore: OperationId\n readonly requestOwnershipTransfer: OperationId\n readonly cancelOwnershipTransfer: OperationId\n readonly acceptOwnershipTransfer: OperationId\n readonly patchMcpConfig: OperationId\n readonly getVariation: OperationId\n}\n\nconst MANAGEMENT_SCOPE_OPERATIONS: ManagementScopesOperations = {\n list: 'ScopesController_list',\n get: 'ScopesController_get',\n create: 'ScopesController_create',\n update: 'ScopesController_update',\n deploy: 'ScopesController_deploy',\n delete: 'ScopesController_delete',\n restore: 'ScopesController_restore',\n requestOwnershipTransfer: 'ScopesController_requestOwnershipTransfer',\n cancelOwnershipTransfer: 'ScopesController_cancelOwnershipTransfer',\n acceptOwnershipTransfer: 'ScopesController_acceptOwnershipTransfer',\n patchMcpConfig: 'ScopesController_patchMcpConfig',\n getVariation: 'ScopesController_getVariation',\n}\n\nfunction scopesListParams(\n pageSize: number,\n pageToken: string | undefined,\n search?: string,\n view?: VariationView,\n managerId?: number,\n): Record<string, string | number | boolean | undefined | null> {\n const extra: Record<string, string | number | boolean | undefined | null> = {}\n if (search !== undefined) extra.search = search\n if (view !== undefined) extra.view = view\n if (managerId !== undefined) extra.managerId = managerId\n return aipListParams(pageSize, pageToken, extra) as Record<\n string,\n string | number | boolean | undefined | null\n >\n}\n\nfunction parseScope(raw: unknown): Skill {\n return raw as Skill\n}\n\nexport interface CreateSkillOptions {\n name: string\n description?: string\n expectedOutput?: string\n instructions?: string[]\n toolset?: ToolsetInput\n model?: string\n connectionSet?: JsonObjectListInput\n contextSelections?: JsonObjectListInput\n interfaces?: JsonObjectListInput\n guardrails?: string[]\n}\n\nexport interface UpdateSkillOptions {\n name?: string\n description?: string\n expectedOutput?: string\n instructions?: string[]\n toolset?: ToolsetInput\n model?: string\n connectionSet?: JsonObjectListInput\n contextSelections?: JsonObjectListInput\n interfaces?: JsonObjectListInput\n guardrails?: string[]\n managerId?: string\n evaluations?: JsonObjectListInput\n supervisionSubordinateDescriptions?: Record<string, string>\n updateMask?: string\n}\n\n/** Full CRUD and lifecycle for Modus scopes (`/api/v1/scopes`). */\nexport class ManagementScopesResource {\n protected readonly ops: ManagementScopesOperations = MANAGEMENT_SCOPE_OPERATIONS\n\n constructor(\n private readonly http: HttpClient,\n private readonly config: ModusConfig,\n ) {}\n\n conversations(scopeId: number | string): ScopeConversationsResource {\n return new ScopeConversationsResource(this.http, this.config, scopeId)\n }\n\n memories(scopeId: number | string): ScopeMemoriesResource {\n return new ScopeMemoriesResource(this.http, this.config, scopeId)\n }\n\n evaluations(scopeId: number | string): ScopeEvaluationsResource {\n return new ScopeEvaluationsResource(this.http, this.config, scopeId)\n }\n\n supervision(scopeId: number | string): ScopeSupervisionResource {\n return new ScopeSupervisionResource(this.http, this.config, scopeId)\n }\n\n list(options: {\n pageSize?: number\n pageToken?: string\n search?: string\n view?: VariationView\n managerId?: number\n } = {}): Promise<Page<Skill>> {\n const pageSize = options.pageSize ?? 25\n validatePageSize(pageSize)\n return this.listPage(\n pageSize,\n options.pageToken,\n options.search,\n options.view,\n options.managerId,\n )\n }\n\n private async listPage(\n pageSize: number,\n pageToken: string | undefined,\n search?: string,\n view?: VariationView,\n managerId?: number,\n ): Promise<Page<Skill>> {\n const data = asRecord(\n await invokeWithRetry(this.config, this.http, this.ops.list, {\n query: scopesListParams(pageSize, pageToken, search, view, managerId),\n }),\n )\n // Envelope key is the server DTO property name (`skills`) — unchanged by\n // the rename, which only moved paths/opIds/tags to the scopes vocab.\n return buildAipPage(data, 'skills', parseScope, (token) =>\n this.listPage(pageSize, token, search, view, managerId),\n )\n }\n\n async get(scopeId: number | string, options: { view?: VariationView } = {}): Promise<Skill> {\n validateId(scopeId, 'scope_id')\n const query = options.view !== undefined ? { view: options.view } : undefined\n const data = await invokeWithRetry(this.config, this.http, this.ops.get, {\n pathParams: { id: scopeId },\n query,\n })\n return parseScope(data)\n }\n\n async create(options: CreateSkillOptions): Promise<Skill> {\n const body = omitUndefined({\n name: options.name,\n description: options.description,\n expectedOutput: options.expectedOutput,\n instructions: options.instructions,\n toolset: options.toolset,\n model: options.model,\n connectionSet: options.connectionSet,\n contextSelections: options.contextSelections,\n interfaces: options.interfaces,\n accessConfig: accessConfigBodyForCreate(options.guardrails),\n })\n const data = await invokeWithRetry(this.config, this.http, this.ops.create, {\n jsonBody: body,\n })\n return parseScope(data)\n }\n\n async update(scopeId: number | string, options: UpdateSkillOptions = {}): Promise<Skill> {\n validateId(scopeId, 'scope_id')\n const accessConfig = await accessConfigBodyForUpdate(options.guardrails, async () =>\n asRecord(\n await invokeWithRetry(this.config, this.http, this.ops.get, {\n pathParams: { id: scopeId },\n }),\n ),\n )\n const fields = {\n name: options.name,\n description: options.description,\n expectedOutput: options.expectedOutput,\n instructions: options.instructions,\n toolset: options.toolset,\n model: options.model,\n connectionSet: options.connectionSet,\n contextSelections: options.contextSelections,\n interfaces: options.interfaces,\n accessConfig,\n managerId: options.managerId,\n evaluations: options.evaluations,\n supervisionSubordinateDescriptions: options.supervisionSubordinateDescriptions,\n }\n const body =\n options.updateMask !== undefined ? fields : omitUndefined(fields)\n const data = await invokeWithRetry(this.config, this.http, this.ops.update, {\n pathParams: { id: scopeId },\n query: updateMaskQuery(options.updateMask),\n jsonBody: body,\n })\n return parseScope(data)\n }\n\n async deploy(scopeId: number | string): Promise<Skill> {\n validateId(scopeId, 'scope_id')\n const data = asRecord(\n await invokeWithRetry(this.config, this.http, this.ops.deploy, {\n pathParams: { id: scopeId },\n jsonBody: {},\n }),\n )\n return parseScope(data.skill)\n }\n\n async delete(scopeId: number | string): Promise<void> {\n validateId(scopeId, 'scope_id')\n await invokeWithRetry(this.config, this.http, this.ops.delete, {\n pathParams: { id: scopeId },\n })\n }\n\n async restore(scopeId: number | string): Promise<Skill> {\n validateId(scopeId, 'scope_id')\n const data = await invokeWithRetry(this.config, this.http, this.ops.restore, {\n pathParams: { id: scopeId },\n jsonBody: {},\n })\n return parseScope(data)\n }\n\n async requestOwnershipTransfer(\n scopeId: number | string,\n options: { newOwnerUserId: string },\n ): Promise<Skill> {\n validateId(scopeId, 'scope_id')\n const data = await invokeWithRetry(\n this.config,\n this.http,\n this.ops.requestOwnershipTransfer,\n {\n pathParams: { id: scopeId },\n jsonBody: omitUndefined({ newOwnerUserId: options.newOwnerUserId }),\n },\n )\n return parseScope(data)\n }\n\n async cancelOwnershipTransfer(scopeId: number | string): Promise<Skill> {\n validateId(scopeId, 'scope_id')\n const data = await invokeWithRetry(\n this.config,\n this.http,\n this.ops.cancelOwnershipTransfer,\n { pathParams: { id: scopeId } },\n )\n return parseScope(data)\n }\n\n async acceptOwnershipTransfer(scopeId: number | string): Promise<Skill> {\n validateId(scopeId, 'scope_id')\n const data = await invokeWithRetry(\n this.config,\n this.http,\n this.ops.acceptOwnershipTransfer,\n { pathParams: { id: scopeId }, jsonBody: {} },\n )\n return parseScope(data)\n }\n\n async patchMcpConfig(\n scopeId: number | string,\n options: { mcpConfig: Record<string, unknown> },\n ): Promise<void> {\n validateId(scopeId, 'scope_id')\n await invokeWithRetry(this.config, this.http, this.ops.patchMcpConfig, {\n pathParams: { id: scopeId },\n jsonBody: omitUndefined({ config: options.mcpConfig }),\n })\n }\n\n async getVariation(\n scopeId: number | string,\n options: { variationUid: string },\n ): Promise<Skill> {\n validateId(scopeId, 'scope_id')\n validateId(options.variationUid, 'variation_uid')\n const data = await invokeWithRetry(this.config, this.http, this.ops.getVariation, {\n pathParams: { id: scopeId, variationUid: options.variationUid },\n })\n return parseScope(data)\n }\n}\n","import type { ModusConfig } from '../_config.js'\nimport type { HttpClient } from '../_http.js'\nimport { invokeWithRetry } from '../_request.js'\nimport type { UsageReport, UsageRollup } from '../types/usage.js'\n\nexport class ManagementUsageResource {\n constructor(\n private readonly http: HttpClient,\n private readonly config: ModusConfig,\n ) {}\n\n async list(options: {\n since: string\n until: string\n rollup: UsageRollup\n model?: string\n }): Promise<UsageReport> {\n const query: Record<string, string> = {\n since: options.since,\n until: options.until,\n rollup: options.rollup,\n }\n if (options.model !== undefined) query.model = options.model\n const data = await invokeWithRetry(this.config, this.http, 'UsageController_list', { query })\n return data as UsageReport\n }\n}\n","import type { ModusConfig } from '../_config.js'\nimport type { components } from '../_generated/v1.js'\nimport type { HttpClient } from '../_http.js'\nimport { invokeWithRetry } from '../_request.js'\n\nexport type MemberGroup = components['schemas']['MemberGroupDto']\nexport type OrgMember = components['schemas']['OrgMemberDto']\n\nexport class ManagementUsersResource {\n constructor(\n private readonly http: HttpClient,\n private readonly config: ModusConfig,\n ) {}\n\n async listMemberGroups(): Promise<MemberGroup[]> {\n const data = (await invokeWithRetry(\n this.config, this.http, 'MemberGroupsController_list',\n )) as { groups: MemberGroup[] }\n return data.groups\n }\n\n async listOrgMembers(): Promise<OrgMember[]> {\n const data = (await invokeWithRetry(\n this.config, this.http, 'OrgMembersController_list',\n )) as { members: OrgMember[] }\n return data.members\n }\n}\n","import { ModusClientBase } from '../_client-base.js'\nimport type { ModusOptions } from '../_config.js'\nimport { ManagementWorkflowsResource } from './agents/agents.js'\nimport { ManagementContextResource } from './context/context.js'\nimport { ManagementOrganizationResource } from './organization.js'\nimport { ManagementScopesResource } from './skills/skills.js'\nimport { ManagementUsageResource } from './usage.js'\nimport { ManagementUsersResource } from './users.js'\n\n/** Configure scopes, workflows, context, usage, and organization settings. */\nexport class ModusManagement extends ModusClientBase {\n readonly scopes: ManagementScopesResource\n readonly workflows: ManagementWorkflowsResource\n readonly context: ManagementContextResource\n readonly usage: ManagementUsageResource\n readonly organization: ManagementOrganizationResource\n readonly users: ManagementUsersResource\n\n constructor(options: ModusOptions = {}) {\n super(options)\n this.scopes = new ManagementScopesResource(this.http, this.config)\n this.workflows = new ManagementWorkflowsResource(this.http, this.config)\n this.context = new ManagementContextResource(this.http, this.config)\n this.usage = new ManagementUsageResource(this.http, this.config)\n this.organization = new ManagementOrganizationResource(this.http, this.config)\n this.users = new ManagementUsersResource(this.http, this.config)\n }\n}\n\nexport type { ModusOptions }\nexport type { CreateSkillOptions, UpdateSkillOptions } from './skills/skills.js'\nexport type {\n CreateAgentOptions,\n UpdateAgentOptions,\n TriggerInput,\n AgentSelectionInput,\n WorkflowGraphInput,\n} from './agents/agents.js'\nexport type { UserFeedback } from './context/context.js'\nexport type { ToolsetInput } from './types/toolset.js'\nexport type {\n Memory,\n MemorySearchRequest,\n MemorySearchResult,\n MemoryUpdate,\n} from './types/memories.js'\n"],"mappings":"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","names":[]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@getmodus/sdk",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.3",
|
|
4
4
|
"description": "Official TypeScript client for Modus — your organization's context layer for AI",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"license": "MIT",
|
|
@@ -67,6 +67,7 @@
|
|
|
67
67
|
"scripts": {
|
|
68
68
|
"build": "tsup",
|
|
69
69
|
"test": "vitest run",
|
|
70
|
+
"test:staging-smoke": "vitest run --config vitest.staging-smoke.config.ts",
|
|
70
71
|
"clean": "rimraf dist tsconfig.tsbuildinfo"
|
|
71
72
|
}
|
|
72
73
|
}
|