@crewx/sdk 0.9.0-rc.4 → 0.9.0-rc.40

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 (70) hide show
  1. package/README.md +1 -1
  2. package/dist/config/canonicalize-agent-options.d.ts +16 -0
  3. package/dist/config/global-settings.d.ts +19 -0
  4. package/dist/config/models.generated.d.ts +22 -0
  5. package/dist/config/models.remote.d.ts +4 -0
  6. package/dist/config/overdrive.d.ts +29 -0
  7. package/dist/config/pricing.d.ts +8 -8
  8. package/dist/config/pricing.generated.d.ts +2 -0
  9. package/dist/config/pricing.remote.d.ts +4 -0
  10. package/dist/config/pricing.types.d.ts +5 -0
  11. package/dist/config/timeout.config.d.ts +3 -0
  12. package/dist/config/wi-boards.d.ts +15 -0
  13. package/dist/esm/index.js +125 -82
  14. package/dist/esm/plugins/index.js +118 -71
  15. package/dist/esm/repository/index.js +122 -75
  16. package/dist/esm/testing/index.js +1 -1
  17. package/dist/events/types.d.ts +2 -0
  18. package/dist/facade/Crewx.d.ts +12 -0
  19. package/dist/index.browser.d.ts +1 -1
  20. package/dist/index.browser.js +2 -2
  21. package/dist/index.d.ts +17 -6
  22. package/dist/index.js +126 -83
  23. package/dist/internal/windows-spawn.d.ts +10 -0
  24. package/dist/migrations/0008_careful_black_bird.sql +17 -0
  25. package/dist/migrations/0009_hot_dark_phoenix.sql +1 -0
  26. package/dist/migrations/0010_analyze_stats.sql +6 -0
  27. package/dist/migrations/0011_far_black_tarantula.sql +1 -0
  28. package/dist/migrations/0012_blue_turbo.sql +23 -0
  29. package/dist/migrations/0013_hesitant_adam_destine.sql +15 -0
  30. package/dist/migrations/meta/0008_snapshot.json +1327 -0
  31. package/dist/migrations/meta/0009_snapshot.json +1335 -0
  32. package/dist/migrations/meta/0010_snapshot.json +1335 -0
  33. package/dist/migrations/meta/0011_snapshot.json +1342 -0
  34. package/dist/migrations/meta/0012_snapshot.json +1494 -0
  35. package/dist/migrations/meta/0013_snapshot.json +1592 -0
  36. package/dist/migrations/meta/_journal.json +42 -0
  37. package/dist/plugin/types.d.ts +1 -0
  38. package/dist/plugins/index.js +118 -71
  39. package/dist/provider/acp/adapters/claude.d.ts +0 -4
  40. package/dist/provider/acp/connection.d.ts +4 -0
  41. package/dist/provider/acp/meta.d.ts +4 -0
  42. package/dist/provider/bridge.d.ts +13 -1
  43. package/dist/provider/cli/adapter.types.d.ts +1 -0
  44. package/dist/provider/cli/adapters/claude.d.ts +0 -1
  45. package/dist/provider/cli/adapters/cli-knob.util.d.ts +2 -0
  46. package/dist/provider/cli/meta.d.ts +10 -2
  47. package/dist/provider/errors.d.ts +1 -0
  48. package/dist/provider/idle-watchdog.d.ts +19 -0
  49. package/dist/provider/models.d.ts +23 -0
  50. package/dist/provider/order.d.ts +1 -0
  51. package/dist/provider/parse-usage.d.ts +6 -0
  52. package/dist/provider/provider-selection.d.ts +8 -0
  53. package/dist/repository/agent-suggestion.repository.d.ts +34 -0
  54. package/dist/repository/index.d.ts +7 -1
  55. package/dist/repository/index.js +122 -75
  56. package/dist/repository/notification.repository.d.ts +58 -0
  57. package/dist/repository/task.repository.d.ts +79 -0
  58. package/dist/repository/thread.repository.d.ts +16 -2
  59. package/dist/repository/usage-report.repository.d.ts +27 -0
  60. package/dist/schema/agent-suggestions.d.ts +199 -0
  61. package/dist/schema/index.d.ts +3 -0
  62. package/dist/schema/notifications.d.ts +303 -0
  63. package/dist/schema/usage-reports.d.ts +252 -0
  64. package/dist/testing/index.d.ts +2 -0
  65. package/dist/testing/index.js +1 -1
  66. package/dist/types/index.d.ts +141 -3
  67. package/dist/utils/id.d.ts +1 -1
  68. package/package.json +3 -2
  69. package/templates/agents/default.yaml +175 -117
  70. package/templates/documents/crewx-manual.md +138 -138
package/README.md CHANGED
@@ -128,7 +128,7 @@ const result = await crewx.query('assistant', 'Translate to Korean', {
128
128
  });
129
129
  ```
130
130
 
131
- > **Note**: `'@assistant'` 형태도 동작합니다 (CLI 호환). SDK에서는 bare id가 권장됩니다.
131
+ > **Note**: The `'@assistant'` form also works (CLI-compatible). The SDK recommends using the bare id.
132
132
 
133
133
  **Returns**: [`QueryResult`](#queryresult)
134
134
 
@@ -0,0 +1,16 @@
1
+ export interface AgentOptionsLike {
2
+ query?: unknown;
3
+ execute?: unknown;
4
+ [key: string]: unknown;
5
+ }
6
+ export interface CanonicalizeAgentOptionsInput {
7
+ provider?: string;
8
+ model?: string;
9
+ options: unknown;
10
+ }
11
+ export interface CanonicalizeAgentOptionsResult {
12
+ options: unknown;
13
+ changed: boolean;
14
+ removed: string[];
15
+ }
16
+ export declare function canonicalizeAgentOptions(input: CanonicalizeAgentOptionsInput): CanonicalizeAgentOptionsResult;
@@ -0,0 +1,19 @@
1
+ export interface GlobalSettings {
2
+ cron?: {
3
+ auto_start?: boolean;
4
+ [key: string]: unknown;
5
+ };
6
+ [key: string]: unknown;
7
+ }
8
+ export type DeepPartial<T> = T extends object ? {
9
+ [K in keyof T]?: DeepPartial<T[K]>;
10
+ } : T;
11
+ export interface GlobalSettingsStore {
12
+ read(): GlobalSettings;
13
+ update(patch: DeepPartial<GlobalSettings>): GlobalSettings;
14
+ readonly path: string;
15
+ }
16
+ export interface CreateGlobalSettingsStoreOptions {
17
+ filePath?: string;
18
+ }
19
+ export declare function createGlobalSettingsStore(opts?: CreateGlobalSettingsStoreOptions): GlobalSettingsStore;
@@ -0,0 +1,22 @@
1
+ export interface ModelCatalogEntry {
2
+ id: string;
3
+ name: string;
4
+ description?: string;
5
+ }
6
+ export interface ProviderModeEntry {
7
+ id: string;
8
+ name: string;
9
+ description?: string;
10
+ }
11
+ export interface ProviderModelOverride {
12
+ effort?: string[];
13
+ defaultEffort?: string;
14
+ }
15
+ export interface ProviderCatalogEntry {
16
+ models: ModelCatalogEntry[];
17
+ modes: ProviderModeEntry[];
18
+ effort: string[];
19
+ modelOverrides: Record<string, ProviderModelOverride>;
20
+ }
21
+ export declare const PROVIDER_CATALOGS: Record<string, ProviderCatalogEntry>;
22
+ export declare const PROVIDER_MODELS: Record<string, ModelCatalogEntry[]>;
@@ -0,0 +1,4 @@
1
+ export declare function initModelsRemote(opts?: {
2
+ endpoint?: string;
3
+ ttlMs?: number;
4
+ }): Promise<void>;
@@ -0,0 +1,29 @@
1
+ export interface OverdriveProfile {
2
+ provider?: string;
3
+ model?: string;
4
+ mode?: string;
5
+ effort?: string;
6
+ }
7
+ export type OverdriveSignalInput = boolean | {
8
+ mode?: 'count' | 'latch';
9
+ } | undefined;
10
+ export interface OverdriveSignal {
11
+ active: boolean;
12
+ mode?: 'count' | 'latch';
13
+ }
14
+ export declare function parseOverdriveProfile(raw: unknown): OverdriveProfile | undefined;
15
+ export declare function parseOverdriveSignal(signal: OverdriveSignalInput): OverdriveSignal;
16
+ export interface OverdriveResolution {
17
+ active: boolean;
18
+ provider?: string;
19
+ model?: string;
20
+ mode?: string;
21
+ effort?: string;
22
+ crossProvider: boolean;
23
+ }
24
+ export declare function resolveOverdrive(agentOptions: unknown, mode: 'query' | 'execute', baseProvider: string, signal: OverdriveSignal): OverdriveResolution;
25
+ export interface ModeOverrideResolution {
26
+ provider?: string;
27
+ model?: string;
28
+ }
29
+ export declare function resolveModeOverride(agentOptions: unknown, mode: 'query' | 'execute'): ModeOverrideResolution;
@@ -1,9 +1,9 @@
1
- export interface ModelPricing {
2
- input: number;
3
- cachedInput: number;
4
- output: number;
5
- }
6
- export declare const MODEL_PRICING: Record<string, ModelPricing>;
1
+ import type { ModelPricing } from './pricing.types.js';
2
+ export type { ModelPricing } from './pricing.types.js';
3
+ export { MODEL_PRICING } from './pricing.generated.js';
4
+ export declare function setPricingOverride(models: Record<string, ModelPricing>): void;
5
+ export declare function clearPricingOverride(): void;
6
+ export declare function normalizeModel(model: string): string;
7
7
  export declare function getPricing(model: string | null | undefined): ModelPricing;
8
- export declare function calculateCost(inputTokens: number, outputTokens: number, model: string | null | undefined, cachedInputTokens?: number): number;
9
- export declare function resolveCost(costUsd: number | undefined, inputTokens: number | undefined, outputTokens: number | undefined, cachedInputTokens: number | undefined, model: string | null | undefined): number;
8
+ export declare function calculateCost(inputTokens: number, outputTokens: number, model: string | null | undefined, cachedInputTokens?: number, _date?: Date): number;
9
+ export declare function resolveCost(costUsd: number | undefined, inputTokens: number | undefined, outputTokens: number | undefined, cachedInputTokens: number | undefined, model: string | null | undefined, date?: Date): number;
@@ -0,0 +1,2 @@
1
+ import type { ModelPricing } from './pricing.types.js';
2
+ export declare const MODEL_PRICING: Record<string, ModelPricing>;
@@ -0,0 +1,4 @@
1
+ export declare function initPricingRemote(opts?: {
2
+ endpoint?: string;
3
+ ttlMs?: number;
4
+ }): Promise<void>;
@@ -0,0 +1,5 @@
1
+ export interface ModelPricing {
2
+ input: number;
3
+ cachedInput: number;
4
+ output: number;
5
+ }
@@ -1,5 +1,8 @@
1
1
  export interface TimeoutConfig {
2
2
  queryMs: number;
3
3
  executeMs: number;
4
+ idleMs: number;
4
5
  }
6
+ export declare const DEFAULT_IDLE_MS: number;
7
+ export declare function parseIdleEnvOverride(env?: NodeJS.ProcessEnv): number | undefined;
5
8
  export declare function getProviderTimeoutConfig(env?: NodeJS.ProcessEnv): TimeoutConfig;
@@ -0,0 +1,15 @@
1
+ import type { CrewxProjectConfig } from '../types';
2
+ export declare const DEFAULT_WI_BOARD_ID = "default";
3
+ export declare const ARCHIVE_WI_BOARD_ID = "archive";
4
+ export declare const WI_BOARD_ID_PATTERN: RegExp;
5
+ export declare function isReservedWiBoardId(id: string): boolean;
6
+ export interface ResolvedWiBoard {
7
+ id: string;
8
+ name: string;
9
+ workflowId: string;
10
+ description?: string;
11
+ goalId?: string;
12
+ system: boolean;
13
+ readOnly: boolean;
14
+ }
15
+ export declare function resolveWiBoards(config: CrewxProjectConfig | undefined): ResolvedWiBoard[];