@sayknow-cli/coding-agent 0.3.2 → 0.3.4

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 (61) hide show
  1. package/dist/types/config/model-profiles.d.ts +2 -2
  2. package/dist/types/config/model-registry.d.ts +3 -3
  3. package/dist/types/config/models-config-schema.d.ts +0 -5
  4. package/dist/types/config/settings-schema.d.ts +78 -9
  5. package/dist/types/export/html/template.generated.d.ts +1 -1
  6. package/dist/types/skc-runtime/state-renderer.d.ts +5 -0
  7. package/dist/types/skc-runtime/ultragoal-guard.d.ts +37 -1
  8. package/dist/types/skc-runtime/ultragoal-runtime.d.ts +80 -0
  9. package/dist/types/tools/browser/tab-supervisor.d.ts +31 -0
  10. package/dist/types/tools/computer-gc.d.ts +23 -0
  11. package/dist/types/tools/cron.d.ts +36 -61
  12. package/dist/types/tools/index.d.ts +0 -1
  13. package/dist/types/tools/resource-gc.d.ts +54 -0
  14. package/dist/types/web/search/index.d.ts +1 -0
  15. package/dist/types/web/search/providers/utils.d.ts +11 -4
  16. package/package.json +7 -7
  17. package/src/cli/args.ts +0 -1
  18. package/src/cli/fast-help.ts +0 -1
  19. package/src/cli/plugin-cli.ts +1 -1
  20. package/src/cli/web-search-cli.ts +5 -0
  21. package/src/config/model-profile-activation.ts +7 -1
  22. package/src/config/model-profiles.ts +3 -4
  23. package/src/config/model-registry.ts +3 -6
  24. package/src/config/models-config-schema.ts +1 -1
  25. package/src/config/settings-schema.ts +80 -10
  26. package/src/export/html/template.generated.ts +1 -1
  27. package/src/export/html/template.js +0 -12
  28. package/src/goals/tools/goal-tool.ts +14 -1
  29. package/src/internal-urls/docs-index.generated.ts +3 -4
  30. package/src/modes/components/model-selector.ts +9 -1
  31. package/src/modes/controllers/selector-controller.ts +6 -0
  32. package/src/prompts/system/system-prompt.md +2 -2
  33. package/src/prompts/tools/cron.md +5 -3
  34. package/src/prompts/tools/read.md +1 -1
  35. package/src/sdk.ts +5 -0
  36. package/src/session/agent-session.ts +44 -0
  37. package/src/skc-runtime/state-renderer.ts +13 -0
  38. package/src/skc-runtime/ultragoal-guard.ts +167 -0
  39. package/src/skc-runtime/ultragoal-runtime.ts +221 -1
  40. package/src/tools/browser/tab-supervisor.ts +86 -2
  41. package/src/tools/computer-gc.ts +66 -0
  42. package/src/tools/computer.ts +2 -0
  43. package/src/tools/cron.ts +75 -112
  44. package/src/tools/index.ts +2 -8
  45. package/src/tools/read.ts +25 -55
  46. package/src/tools/renderers.ts +0 -2
  47. package/src/tools/resource-gc.ts +291 -0
  48. package/src/tools/ultragoal-ask-guard.ts +7 -1
  49. package/src/web/search/index.ts +1 -0
  50. package/src/web/search/providers/utils.ts +22 -5
  51. package/vendor/insane-search/MANIFEST.json +3 -1
  52. package/vendor/insane-search/engine/__init__.py +14 -0
  53. package/vendor/insane-search/engine/content_safety.py +151 -0
  54. package/vendor/insane-search/engine/fetch_chain.py +32 -0
  55. package/vendor/insane-search/engine/tests/test_u8.py +216 -0
  56. package/dist/types/tools/inspect-image-renderer.d.ts +0 -26
  57. package/dist/types/tools/inspect-image.d.ts +0 -31
  58. package/src/prompts/tools/inspect-image-system.md +0 -20
  59. package/src/prompts/tools/inspect-image.md +0 -32
  60. package/src/tools/inspect-image-renderer.ts +0 -103
  61. package/src/tools/inspect-image.ts +0 -172
@@ -20,8 +20,8 @@ export interface ModelProfileDefinition {
20
20
  }
21
21
  export interface ResolvedProfileBinding {
22
22
  defaultSelector?: string;
23
- modelRoles: Partial<Record<"vision", string>>;
24
- agentModelOverrides: Partial<Record<Exclude<ModelProfileRole, "default" | "vision">, string>>;
23
+ modelRoles: Record<string, string>;
24
+ agentModelOverrides: Partial<Record<Exclude<ModelProfileRole, "default">, string>>;
25
25
  }
26
26
  export declare function deriveModelProfileMappedProviders(definition: Pick<ModelProfileDefinition, "modelMapping">): string[];
27
27
  export declare function aggregateModelProfileRequiredProviders(requiredProviders: readonly string[], definition: Pick<ModelProfileDefinition, "modelMapping">): string[];
@@ -11,7 +11,7 @@ import { type Settings } from "./settings";
11
11
  export type { CanonicalModelIndex, CanonicalModelRecord, CanonicalModelVariant, ModelEquivalenceConfig };
12
12
  export declare const kNoAuth = "N/A";
13
13
  export declare function isAuthenticated(apiKey: string | undefined | null): apiKey is string;
14
- export type ModelRole = "default" | "vision";
14
+ export type ModelRole = "default";
15
15
  export interface ModelRoleInfo {
16
16
  tag?: string;
17
17
  name: string;
@@ -19,7 +19,7 @@ export interface ModelRoleInfo {
19
19
  }
20
20
  export declare const MODEL_ROLES: Record<ModelRole, ModelRoleInfo>;
21
21
  export declare const MODEL_ROLE_IDS: ModelRole[];
22
- export type SkcModelAssignmentTargetId = "default" | "vision" | "executor" | "architect" | "planner" | "critic";
22
+ export type SkcModelAssignmentTargetId = "default" | "executor" | "architect" | "planner" | "critic";
23
23
  export interface SkcModelAssignmentTargetInfo extends ModelRoleInfo {
24
24
  id: SkcModelAssignmentTargetId;
25
25
  settingsPath: "modelRoles" | "task.agentModelOverrides";
@@ -268,7 +268,7 @@ export declare const ModelsConfigFile: ConfigFile<{
268
268
  profiles?: Record<string, {
269
269
  required_providers: string[];
270
270
  display_name?: string | undefined;
271
- model_mapping: Partial<Record<"architect" | "critic" | "default" | "executor" | "planner" | "vision", string>>;
271
+ model_mapping: Partial<Record<"architect" | "critic" | "default" | "executor" | "planner", string>>;
272
272
  }> | undefined;
273
273
  }>;
274
274
  /** Provider override config (baseUrl, headers, apiKey, compat, transport) without custom models */
@@ -68,7 +68,6 @@ export declare const ProfileRoleSchema: z.ZodEnum<{
68
68
  default: "default";
69
69
  executor: "executor";
70
70
  planner: "planner";
71
- vision: "vision";
72
71
  }>;
73
72
  export declare const ProfileModelSelectorSchema: z.ZodString;
74
73
  export declare const ProfileModelMappingSchema: z.ZodRecord<z.ZodEnum<{
@@ -77,7 +76,6 @@ export declare const ProfileModelMappingSchema: z.ZodRecord<z.ZodEnum<{
77
76
  default: "default";
78
77
  executor: "executor";
79
78
  planner: "planner";
80
- vision: "vision";
81
79
  }> & z.core.$partial, z.ZodString>;
82
80
  export declare const ProfileDefinitionSchema: z.ZodObject<{
83
81
  required_providers: z.ZodArray<z.ZodString>;
@@ -88,7 +86,6 @@ export declare const ProfileDefinitionSchema: z.ZodObject<{
88
86
  default: "default";
89
87
  executor: "executor";
90
88
  planner: "planner";
91
- vision: "vision";
92
89
  }> & z.core.$partial, z.ZodString>;
93
90
  }, z.core.$strict>;
94
91
  export declare const ProfilesSchema: z.ZodRecord<z.ZodString, z.ZodObject<{
@@ -100,7 +97,6 @@ export declare const ProfilesSchema: z.ZodRecord<z.ZodString, z.ZodObject<{
100
97
  default: "default";
101
98
  executor: "executor";
102
99
  planner: "planner";
103
- vision: "vision";
104
100
  }> & z.core.$partial, z.ZodString>;
105
101
  }, z.core.$strict>>;
106
102
  export declare const ModelOverrideSchema: z.ZodObject<{
@@ -691,7 +687,6 @@ export declare const ModelsConfigSchema: z.ZodObject<{
691
687
  default: "default";
692
688
  executor: "executor";
693
689
  planner: "planner";
694
- vision: "vision";
695
690
  }> & z.core.$partial, z.ZodString>;
696
691
  }, z.core.$strict>>>;
697
692
  }, z.core.$strict>;
@@ -2492,15 +2492,6 @@ export declare const SETTINGS_SCHEMA: {
2492
2492
  readonly description: "Enable the recipe tool when a justfile / package.json / Cargo.toml / Makefile / Taskfile is present";
2493
2493
  };
2494
2494
  };
2495
- readonly "inspect_image.enabled": {
2496
- readonly type: "boolean";
2497
- readonly default: false;
2498
- readonly ui: {
2499
- readonly tab: "tools";
2500
- readonly label: "Inspect Image";
2501
- readonly description: "Enable the inspect_image tool, delegating image understanding to a vision-capable model";
2502
- };
2503
- };
2504
2495
  readonly "checkpoint.enabled": {
2505
2496
  readonly type: "boolean";
2506
2497
  readonly default: false;
@@ -2594,6 +2585,16 @@ export declare const SETTINGS_SCHEMA: {
2594
2585
  readonly description: "Ordered fallback web search providers after the active model native provider";
2595
2586
  };
2596
2587
  };
2588
+ readonly "web_search.timeout": {
2589
+ readonly type: "number";
2590
+ readonly default: 300;
2591
+ readonly validate: (value: number) => boolean;
2592
+ readonly ui: {
2593
+ readonly tab: "tools";
2594
+ readonly label: "Web Search Timeout";
2595
+ readonly description: "Hard timeout in seconds for a single web search request (default 300)";
2596
+ };
2597
+ };
2597
2598
  readonly "browser.enabled": {
2598
2599
  readonly type: "boolean";
2599
2600
  readonly default: true;
@@ -2621,6 +2622,45 @@ export declare const SETTINGS_SCHEMA: {
2621
2622
  readonly description: "Directory to save screenshots. If unset, screenshots go to a temp file. Supports ~. Examples: ~/Downloads, ~/Desktop, /sdcard/Download (Android)";
2622
2623
  };
2623
2624
  };
2625
+ readonly "browser.gc.enabled": {
2626
+ readonly type: "boolean";
2627
+ readonly default: true;
2628
+ readonly ui: {
2629
+ readonly tab: "tools";
2630
+ readonly label: "Browser Tab GC";
2631
+ readonly description: "Automatically reclaim idle, unheld SKC-managed headless/spawned browser tabs.";
2632
+ };
2633
+ };
2634
+ readonly "browser.gc.idleMs": {
2635
+ readonly type: "number";
2636
+ readonly default: 300000;
2637
+ readonly validate: (value: number) => boolean;
2638
+ readonly ui: {
2639
+ readonly tab: "tools";
2640
+ readonly label: "Browser Tab GC Idle (ms)";
2641
+ readonly description: "Evict headless/spawned tabs idle longer than this many milliseconds.";
2642
+ };
2643
+ };
2644
+ readonly "browser.gc.rssLimitMb": {
2645
+ readonly type: "number";
2646
+ readonly default: 1536;
2647
+ readonly validate: (value: number) => boolean;
2648
+ readonly ui: {
2649
+ readonly tab: "tools";
2650
+ readonly label: "Browser Tab GC RSS Limit (MB)";
2651
+ readonly description: "Parent-process RSS (MB) above which idle tabs are opportunistically evicted LRU.";
2652
+ };
2653
+ };
2654
+ readonly "resourceGc.sweepIntervalMs": {
2655
+ readonly type: "number";
2656
+ readonly default: 30000;
2657
+ readonly validate: (value: number) => boolean;
2658
+ readonly ui: {
2659
+ readonly tab: "tools";
2660
+ readonly label: "Resource GC Sweep Interval (ms)";
2661
+ readonly description: "How often the resource GC sweeps browser tabs and stale screenshot directories.";
2662
+ };
2663
+ };
2624
2664
  readonly "computer.enabled": {
2625
2665
  readonly type: "boolean";
2626
2666
  readonly default: false;
@@ -2675,6 +2715,35 @@ export declare const SETTINGS_SCHEMA: {
2675
2715
  readonly description: "Persist audit records for enabled computer-use actions.";
2676
2716
  };
2677
2717
  };
2718
+ readonly "computer.screenshotGc.enabled": {
2719
+ readonly type: "boolean";
2720
+ readonly default: true;
2721
+ readonly ui: {
2722
+ readonly tab: "tools";
2723
+ readonly label: "Computer Screenshot GC";
2724
+ readonly description: "Delete stale computer-use screenshot fallback directories on disk.";
2725
+ };
2726
+ };
2727
+ readonly "computer.screenshotGc.staleMs": {
2728
+ readonly type: "number";
2729
+ readonly default: 43200000;
2730
+ readonly validate: (value: number) => boolean;
2731
+ readonly ui: {
2732
+ readonly tab: "tools";
2733
+ readonly label: "Computer Screenshot GC Stale Age (ms)";
2734
+ readonly description: "Remove screenshot fallback directories whose mtime is older than this many milliseconds.";
2735
+ };
2736
+ };
2737
+ readonly "computer.screenshotGc.scanIntervalMs": {
2738
+ readonly type: "number";
2739
+ readonly default: 1800000;
2740
+ readonly validate: (value: number) => boolean;
2741
+ readonly ui: {
2742
+ readonly tab: "tools";
2743
+ readonly label: "Computer Screenshot GC Scan Interval (ms)";
2744
+ readonly description: "Minimum interval between os.tmpdir scans for stale screenshot directories.";
2745
+ };
2746
+ };
2678
2747
  readonly "tools.intentTracing": {
2679
2748
  readonly type: "boolean";
2680
2749
  readonly default: true;