@crewx/sdk 0.9.0-rc.107 → 0.9.0-rc.109

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (48) hide show
  1. package/dist/config/timeout.config.d.ts +1 -0
  2. package/dist/context-budget/index.d.ts +1 -0
  3. package/dist/conversation/sqlite-provider.d.ts +2 -2
  4. package/dist/conversation/types.d.ts +3 -1
  5. package/dist/esm/index.js +246 -208
  6. package/dist/esm/plugins/index.js +95 -57
  7. package/dist/esm/publish/index.js +2 -1
  8. package/dist/esm/repository/index.js +107 -69
  9. package/dist/esm/skills/index.js +1 -0
  10. package/dist/events/types.d.ts +3 -0
  11. package/dist/facade/Crewx.d.ts +5 -2
  12. package/dist/highlight/thread-highlighter.d.ts +12 -12
  13. package/dist/index.browser.d.ts +1 -0
  14. package/dist/index.browser.js +3 -3
  15. package/dist/index.d.ts +7 -5
  16. package/dist/index.js +248 -210
  17. package/dist/mcp-app/catalog.d.ts +7 -0
  18. package/dist/mcp-app/discovery.d.ts +1 -1
  19. package/dist/mcp-app/index.d.ts +2 -0
  20. package/dist/mcp-app/types.d.ts +65 -1
  21. package/dist/migrations/0031_petite_arclight.sql +6 -0
  22. package/dist/migrations/meta/0031_snapshot.json +3251 -0
  23. package/dist/migrations/meta/_journal.json +8 -1
  24. package/dist/plugins/index.js +91 -53
  25. package/dist/provider/bridge.d.ts +2 -1
  26. package/dist/provider/cli/adapter.types.d.ts +1 -0
  27. package/dist/provider/errors.d.ts +4 -1
  28. package/dist/publish/errors.d.ts +7 -0
  29. package/dist/publish/index.d.ts +25 -1
  30. package/dist/publish/index.js +2 -1
  31. package/dist/publish/manifest.d.ts +31 -1
  32. package/dist/publish/pack.d.ts +5 -1
  33. package/dist/publish/secrets.d.ts +1 -1
  34. package/dist/publish/upload.d.ts +1 -0
  35. package/dist/repository/index.d.ts +1 -1
  36. package/dist/repository/index.js +101 -63
  37. package/dist/repository/task.repository.d.ts +11 -0
  38. package/dist/repository/thread.repository.d.ts +26 -3
  39. package/dist/schema/tasks.d.ts +38 -0
  40. package/dist/schema/threads.d.ts +57 -0
  41. package/dist/skills/index.d.ts +7 -0
  42. package/dist/skills/index.js +1 -0
  43. package/dist/skills/types.d.ts +18 -0
  44. package/dist/types/index.d.ts +29 -2
  45. package/dist/ui-instance/index.d.ts +1 -1
  46. package/dist/ui-instance/types.d.ts +6 -0
  47. package/dist/ui-plugin/types.d.ts +3 -0
  48. package/package.json +9 -2
@@ -0,0 +1,7 @@
1
+ import type { CrewxAppCatalogOptions, CrewxAppCatalogResult, CrewxAppDefinitionHashInput } from './types.js';
2
+ export declare function hashCrewxAppDefinition(input: CrewxAppDefinitionHashInput): string;
3
+ export declare const hashAppDefinition: typeof hashCrewxAppDefinition;
4
+ export declare function discoverWorkspaceAppCatalog(workspaceRoot: string, options?: CrewxAppCatalogOptions): Promise<CrewxAppCatalogResult>;
5
+ export declare const listWorkspaceApps: typeof discoverWorkspaceAppCatalog;
6
+ export declare const createWorkspaceAppCatalog: typeof discoverWorkspaceAppCatalog;
7
+ export type { CrewxAppDefinitionHashInput, CrewxAppCatalogOptions, CrewxAppCatalogResult, } from './types.js';
@@ -3,7 +3,7 @@ import type { UiPluginHandlerMetadata, UiPluginManifestV2, UiPluginNormalizedMan
3
3
  import { AppDiscoveryFsError, NodeAppDiscoveryFs, NodeAppDiscoveryFsAdapter, defaultAppDiscoveryFs, defaultNodeAppDiscoveryFs, type AppDiscoveryFsErrorCode } from './node-app-discovery-fs.js';
4
4
  import type { McpAppRegistry } from './types.js';
5
5
  export type WorkspaceAppSource = 'apps' | 'skills';
6
- export type WorkspaceAppDiagnosticCode = 'MANIFEST_INVALID' | 'ENTRY_INVALID' | 'INITIAL_STATE_INVALID' | 'DUPLICATE_ID' | 'RESERVED_ID' | 'PATH_ESCAPED' | 'LIMIT_EXCEEDED' | 'EXEC_DENIED';
6
+ export type WorkspaceAppDiagnosticCode = 'MANIFEST_MISSING' | 'MANIFEST_INVALID' | 'ENTRY_INVALID' | 'INITIAL_STATE_INVALID' | 'DUPLICATE_ID' | 'RESERVED_ID' | 'PATH_ESCAPED' | 'LIMIT_EXCEEDED' | 'EXEC_DENIED';
7
7
  export interface WorkspaceAppDiagnostic {
8
8
  readonly code: WorkspaceAppDiagnosticCode;
9
9
  readonly pluginId?: string;
@@ -5,6 +5,8 @@ export type { BuildInstalledAppRefInput, InstalledAppPackageFile, InstalledAppRe
5
5
  export { MAX_HTML_LENGTH, createMcpAppRegistry, createBuiltinMcpAppRegistry, buildMcpAppLocalRegistration, createMcpAppLocalRegistration, registerLocalMcpApp, createMcpAppWorkspaceRegistry, createWorkspaceAppRegistry, createWorkspaceMcpAppRegistry, registerMcpApp, resolveMcpAppResource, resolveLocalMcpAppResource, requireMcpAppResource, toMcpAppToolRegistration, } from './registry.js';
6
6
  export { AppDiscoveryFsError, NodeAppDiscoveryFs, NodeAppDiscoveryFsAdapter, defaultAppDiscoveryFs, defaultNodeAppDiscoveryFs, deriveWorkspaceAppToolName, deriveWorkspaceAppToolNames, discoverWorkspaceAppCandidates, discoverWorkspaceApps, LOCAL_APP_TOOL_PREFIX, MCP_APP_WORKSPACE_TOOL_PREFIX, scanWorkspaceApps, WORKSPACE_APP_TOOL_PREFIX, } from './discovery.js';
7
7
  export type { AppDiscoveryBytes, AppDiscoveryDiagnostic, AppDiscoveryDirectoryEntry, AppDiscoveryDirectoryEntryKind, AppDiscoveryDirectoryListing, AppDiscoveryFileSystem, AppDiscoveryFsErrorCode, AppDiscoveryMaybePromise, WorkspaceAppDiscoveryOptions as AppDiscoveryOptions, McpAppDiscoveryDiagnostic, WorkspaceAppBuiltinCatalog, WorkspaceAppCandidate, WorkspaceAppDiscoveryOptions, WorkspaceAppDiscoveryResult, WorkspaceAppDiagnostic, WorkspaceAppDiagnosticCode, WorkspaceAppResourceSnapshot, WorkspaceAppReservedCatalog, WorkspaceAppSource, WorkspaceAppToolNames, } from './discovery.js';
8
+ export { createWorkspaceAppCatalog, discoverWorkspaceAppCatalog, hashAppDefinition, hashCrewxAppDefinition, listWorkspaceApps, } from './catalog.js';
9
+ export type { CrewxAppBuiltinCatalog, CrewxAppCapability, CrewxAppCatalogOptions, CrewxAppCatalogResult, CrewxAppDefinitionHashInput, CrewxAppDefinitionSummary, CrewxAppDiagnostic, CrewxAppDiagnosticCode, CrewxAppDiagnosticSource, CrewxAppInstalledProjection, CrewxAppLocalDefinitionRef, CrewxAppOrigin, CrewxAppOwnership, CrewxAppShareability, CrewxAppSharingAvailability, CrewxAppSummary, } from './types.js';
8
10
  export { MCP_APP_PROJECTION_MAX_BYTES, buildMcpAppStateDescriptor, buildMcpAppStateProjections, buildTerminalMcpAppStateDescriptor, buildTerminalMcpAppStateProjections, createMcpAppToolResult, serializeMcpAppStateJson, serializeMcpAppStateXml, } from './projection.js';
9
11
  export { buildMcpAppsContext } from './apps-context.js';
10
12
  export type { McpAppsContext } from './apps-context.js';
@@ -1,4 +1,5 @@
1
- import type { JsonObject, UiDefinition, UiDefinitionRef, UiInstance, UiInstanceStatus, UiActionConfirmation, UiActionHandlerRegistration } from '../ui-instance/types.js';
1
+ import type { JsonObject, UiDefinition, UiDefinitionRef, UiDefinitionDisplayMode, UiDefinitionUsage, UiInstance, UiInstanceStatus, UiActionConfirmation, UiActionHandlerRegistration } from '../ui-instance/types.js';
2
+ import type { AppDiscoveryFileSystem } from './discovery.js';
2
3
  export declare const MCP_APP_RESOURCE_MIME_TYPE: "text/html;profile=mcp-app";
3
4
  export declare const MCP_APP_RESOURCE_URI_PREFIX = "ui://crewx/";
4
5
  export type McpAppToolVisibility = 'model' | 'app';
@@ -295,4 +296,67 @@ export interface McpAppRegistry {
295
296
  resolveMcpAppResource(uri: string): McpAppResource | null;
296
297
  requireMcpAppResource(uri: string): McpAppResource;
297
298
  }
299
+ export type CrewxAppCapability = 'screen' | 'skill';
300
+ export type CrewxAppOrigin = 'local' | 'installed' | 'builtin';
301
+ export type CrewxAppOwnership = 'mine' | 'external' | 'unknown';
302
+ export type CrewxAppShareability = 'shareable' | 'requiresPublish' | 'forbidden' | 'unknown';
303
+ export type CrewxAppSharingAvailability = 'ready' | 'loginRequired' | 'unavailable';
304
+ export interface CrewxAppLocalDefinitionRef {
305
+ readonly packageRoot: string;
306
+ }
307
+ export interface CrewxAppDefinitionSummary extends UiDefinitionRef {
308
+ readonly usage: UiDefinitionUsage;
309
+ readonly detailPanel?: boolean;
310
+ readonly displayModes?: readonly UiDefinitionDisplayMode[];
311
+ }
312
+ export interface CrewxAppDefinitionHashInput {
313
+ readonly screenHash?: string;
314
+ readonly skillHash?: string;
315
+ readonly relativePath?: string;
316
+ readonly fileBytes?: Uint8Array | ArrayBuffer | readonly number[] | string;
317
+ }
318
+ export interface CrewxAppSummary {
319
+ readonly appId: string;
320
+ readonly name: string;
321
+ readonly description: string;
322
+ readonly version?: string;
323
+ readonly capabilities: readonly CrewxAppCapability[];
324
+ readonly definition?: CrewxAppDefinitionSummary;
325
+ readonly skillName?: string;
326
+ readonly localDefinitionRef?: CrewxAppLocalDefinitionRef;
327
+ readonly origin: CrewxAppOrigin;
328
+ readonly ownership: CrewxAppOwnership;
329
+ readonly shareability: CrewxAppShareability;
330
+ readonly sharingAvailability: CrewxAppSharingAvailability;
331
+ readonly marketplaceContentId?: string;
332
+ readonly slug?: string;
333
+ readonly definitionHash: string;
334
+ }
335
+ export type CrewxAppDiagnosticCode = 'MANIFEST_MISSING' | 'MANIFEST_INVALID' | 'ENTRY_INVALID' | 'INITIAL_STATE_INVALID' | 'DUPLICATE_ID' | 'RESERVED_ID' | 'PATH_ESCAPED' | 'LIMIT_EXCEEDED' | 'EXEC_DENIED' | 'SKILL_INVALID' | 'SKILL_READ_FAILED' | 'INSTALLED_MISSING' | 'INSTALLED_CONTENT_ID_MISSING' | 'INSTALLED_IDENTITY_MISMATCH' | 'BUILTIN_INVALID';
336
+ export type CrewxAppDiagnosticSource = 'apps' | 'skills' | 'node_modules' | 'builtin' | 'installed';
337
+ export interface CrewxAppDiagnostic {
338
+ readonly code: CrewxAppDiagnosticCode;
339
+ readonly source: CrewxAppDiagnosticSource;
340
+ readonly relativePath: string;
341
+ readonly appId?: string;
342
+ }
343
+ export interface CrewxAppInstalledProjection {
344
+ readonly packageRoot?: string;
345
+ readonly relativePath?: string;
346
+ readonly packageRootPath?: string;
347
+ readonly appId?: string;
348
+ readonly definitionHash?: string;
349
+ readonly marketplaceContentId?: string;
350
+ readonly slug?: string;
351
+ }
352
+ export type CrewxAppBuiltinCatalog = Pick<McpAppRegistry, 'listMcpApps' | 'listMcpAppTools'>;
353
+ export interface CrewxAppCatalogOptions {
354
+ readonly filesystem?: AppDiscoveryFileSystem;
355
+ readonly builtinCatalog?: CrewxAppBuiltinCatalog;
356
+ readonly installed?: readonly CrewxAppInstalledProjection[];
357
+ }
358
+ export interface CrewxAppCatalogResult {
359
+ readonly items: readonly CrewxAppSummary[];
360
+ readonly diagnostics: readonly CrewxAppDiagnostic[];
361
+ }
298
362
  export {};
@@ -0,0 +1,6 @@
1
+ ALTER TABLE `tasks` ADD `actor_kind` text;--> statement-breakpoint
2
+ ALTER TABLE `tasks` ADD `actor_id` text;--> statement-breakpoint
3
+ ALTER TABLE `threads` ADD `created_by_kind` text;--> statement-breakpoint
4
+ ALTER TABLE `threads` ADD `created_by_id` text;--> statement-breakpoint
5
+ ALTER TABLE `threads` ADD `created_by_task_id` text;--> statement-breakpoint
6
+ CREATE INDEX IF NOT EXISTS `idx_threads_workspace_created_by_kind_updated_at` ON `threads` (`workspace_id`,`created_by_kind`,`updated_at`);