oh-my-opencode-unguarded 3.10.2 → 3.10.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.
Files changed (31) hide show
  1. package/dist/cli/index.js +92 -18
  2. package/dist/config/schema/background-task.d.ts +1 -0
  3. package/dist/config/schema/oh-my-opencode-config.d.ts +4 -0
  4. package/dist/config/schema/start-work.d.ts +5 -0
  5. package/dist/hooks/atlas/tool-execute-after.d.ts +1 -0
  6. package/dist/hooks/atlas/types.d.ts +2 -0
  7. package/dist/hooks/atlas/verification-reminders.d.ts +1 -1
  8. package/dist/hooks/auto-slash-command/executor.d.ts +2 -0
  9. package/dist/hooks/auto-slash-command/hook.d.ts +2 -0
  10. package/dist/hooks/preemptive-compaction.d.ts +1 -0
  11. package/dist/hooks/session-notification-utils.d.ts +1 -0
  12. package/dist/index.js +1619 -1361
  13. package/dist/oh-my-opencode.schema.json +17 -0
  14. package/dist/plugin/hooks/create-skill-hooks.d.ts +2 -1
  15. package/dist/shared/index.d.ts +2 -0
  16. package/dist/shared/model-format-normalizer.d.ts +7 -0
  17. package/dist/shared/model-normalization.d.ts +2 -0
  18. package/dist/shared/model-resolution-pipeline.d.ts +1 -0
  19. package/dist/shared/plugin-command-discovery.d.ts +6 -0
  20. package/dist/tools/delegate-task/executor-types.d.ts +1 -0
  21. package/dist/tools/delegate-task/sync-session-poller.d.ts +1 -1
  22. package/dist/tools/delegate-task/timing.d.ts +1 -0
  23. package/dist/tools/delegate-task/types.d.ts +1 -0
  24. package/dist/tools/hashline-edit/tool-description.d.ts +1 -1
  25. package/dist/tools/look-at/image-converter.d.ts +7 -0
  26. package/dist/tools/skill/types.d.ts +4 -0
  27. package/dist/tools/skill-mcp/constants.d.ts +1 -0
  28. package/dist/tools/slashcommand/command-discovery.d.ts +5 -1
  29. package/dist/tools/slashcommand/types.d.ts +1 -1
  30. package/package.json +2 -2
  31. package/dist/shared/model-name-matcher.d.ts +0 -1
package/dist/cli/index.js CHANGED
@@ -6967,7 +6967,6 @@ var init_system_directive = () => {};
6967
6967
 
6968
6968
  // src/shared/agent-tool-restrictions.ts
6969
6969
  var init_agent_tool_restrictions = () => {};
6970
-
6971
6970
  // src/shared/connected-providers-cache.ts
6972
6971
  import { existsSync as existsSync3, readFileSync as readFileSync2, writeFileSync as writeFileSync2, mkdirSync } from "fs";
6973
6972
  import { join as join4 } from "path";
@@ -7091,16 +7090,11 @@ var init_model_resolver = __esm(() => {
7091
7090
  init_model_resolution_pipeline();
7092
7091
  });
7093
7092
 
7094
- // src/shared/model-name-matcher.ts
7095
- var init_model_name_matcher = __esm(() => {
7096
- init_logger();
7097
- });
7098
-
7099
7093
  // src/shared/fallback-model-availability.ts
7100
7094
  var init_fallback_model_availability = __esm(() => {
7101
7095
  init_connected_providers_cache();
7102
7096
  init_logger();
7103
- init_model_name_matcher();
7097
+ init_model_availability();
7104
7098
  });
7105
7099
 
7106
7100
  // src/features/hook-message-injector/constants.ts
@@ -7313,6 +7307,81 @@ var init_session_tools_store = __esm(() => {
7313
7307
  var init_prompt_tools = __esm(() => {
7314
7308
  init_session_tools_store();
7315
7309
  });
7310
+ // src/features/claude-code-plugin-loader/discovery.ts
7311
+ var init_discovery = __esm(() => {
7312
+ init_logger();
7313
+ });
7314
+
7315
+ // src/features/claude-code-plugin-loader/command-loader.ts
7316
+ var init_command_loader = __esm(() => {
7317
+ init_frontmatter();
7318
+ init_file_utils();
7319
+ init_logger();
7320
+ });
7321
+
7322
+ // src/shared/skill-path-resolver.ts
7323
+ var init_skill_path_resolver = () => {};
7324
+
7325
+ // src/features/claude-code-plugin-loader/skill-loader.ts
7326
+ var init_skill_loader = __esm(() => {
7327
+ init_frontmatter();
7328
+ init_file_utils();
7329
+ init_skill_path_resolver();
7330
+ init_logger();
7331
+ });
7332
+
7333
+ // src/features/claude-code-plugin-loader/agent-loader.ts
7334
+ var init_agent_loader = __esm(() => {
7335
+ init_frontmatter();
7336
+ init_file_utils();
7337
+ init_logger();
7338
+ });
7339
+ // src/features/claude-code-mcp-loader/transformer.ts
7340
+ var init_transformer = () => {};
7341
+ // src/features/claude-code-plugin-loader/mcp-server-loader.ts
7342
+ var init_mcp_server_loader = __esm(() => {
7343
+ init_transformer();
7344
+ init_logger();
7345
+ });
7346
+
7347
+ // src/features/claude-code-plugin-loader/hook-loader.ts
7348
+ var init_hook_loader = __esm(() => {
7349
+ init_logger();
7350
+ });
7351
+
7352
+ // src/features/claude-code-plugin-loader/loader.ts
7353
+ var init_loader = __esm(() => {
7354
+ init_logger();
7355
+ init_discovery();
7356
+ init_command_loader();
7357
+ init_skill_loader();
7358
+ init_agent_loader();
7359
+ init_mcp_server_loader();
7360
+ init_hook_loader();
7361
+ init_discovery();
7362
+ init_command_loader();
7363
+ init_skill_loader();
7364
+ init_agent_loader();
7365
+ init_mcp_server_loader();
7366
+ init_hook_loader();
7367
+ });
7368
+
7369
+ // src/features/claude-code-plugin-loader/index.ts
7370
+ var init_claude_code_plugin_loader = __esm(() => {
7371
+ init_loader();
7372
+ init_discovery();
7373
+ init_command_loader();
7374
+ init_skill_loader();
7375
+ init_agent_loader();
7376
+ init_mcp_server_loader();
7377
+ init_hook_loader();
7378
+ });
7379
+
7380
+ // src/shared/plugin-command-discovery.ts
7381
+ var init_plugin_command_discovery = __esm(() => {
7382
+ init_claude_code_plugin_loader();
7383
+ });
7384
+
7316
7385
  // src/shared/session-category-registry.ts
7317
7386
  var sessionCategoryMap;
7318
7387
  var init_session_category_registry = __esm(() => {
@@ -7365,6 +7434,7 @@ var init_shared = __esm(() => {
7365
7434
  init_opencode_message_dir();
7366
7435
  init_session_directory_resolver();
7367
7436
  init_prompt_tools();
7437
+ init_plugin_command_discovery();
7368
7438
  });
7369
7439
 
7370
7440
  // src/cli/config-manager/config-context.ts
@@ -7374,9 +7444,6 @@ function initConfigContext(binary2, version) {
7374
7444
  }
7375
7445
  function getConfigContext() {
7376
7446
  if (!configContext) {
7377
- if (true) {
7378
- console.warn("[config-context] getConfigContext() called before initConfigContext(); defaulting to CLI paths.");
7379
- }
7380
7447
  const paths = getOpenCodeConfigPaths({ binary: "opencode", version: null });
7381
7448
  configContext = { binary: "opencode", version: null, paths };
7382
7449
  }
@@ -9375,7 +9442,7 @@ var {
9375
9442
  // package.json
9376
9443
  var package_default = {
9377
9444
  name: "oh-my-opencode-unguarded",
9378
- version: "3.10.2",
9445
+ version: "3.10.3",
9379
9446
  description: "The Best AI Agent Harness - Batteries-Included OpenCode Plugin with Multi-Model Orchestration, Parallel Background Agents, and Crafted LSP/AST Tools",
9380
9447
  main: "dist/index.js",
9381
9448
  types: "dist/index.d.ts",
@@ -9429,7 +9496,7 @@ var package_default = {
9429
9496
  "@ast-grep/cli": "^0.40.0",
9430
9497
  "@ast-grep/napi": "^0.40.0",
9431
9498
  "@clack/prompts": "^0.11.0",
9432
- "@code-yeongyu/comment-checker": "^0.6.1",
9499
+ "@code-yeongyu/comment-checker": "^0.7.0",
9433
9500
  "@modelcontextprotocol/sdk": "^1.25.2",
9434
9501
  "@opencode-ai/plugin": "^1.1.19",
9435
9502
  "@opencode-ai/sdk": "^1.1.19",
@@ -21299,10 +21366,10 @@ function _property(property, schema2, params) {
21299
21366
  ...normalizeParams(params)
21300
21367
  });
21301
21368
  }
21302
- function _mime(types3, params) {
21369
+ function _mime(types4, params) {
21303
21370
  return new $ZodCheckMimeType({
21304
21371
  check: "mime_type",
21305
- mime: types3,
21372
+ mime: types4,
21306
21373
  ...normalizeParams(params)
21307
21374
  });
21308
21375
  }
@@ -23212,7 +23279,7 @@ var ZodFile = /* @__PURE__ */ $constructor("ZodFile", (inst, def) => {
23212
23279
  ZodType.init(inst, def);
23213
23280
  inst.min = (size, params) => inst.check(_minSize(size, params));
23214
23281
  inst.max = (size, params) => inst.check(_maxSize(size, params));
23215
- inst.mime = (types3, params) => inst.check(_mime(Array.isArray(types3) ? types3 : [types3], params));
23282
+ inst.mime = (types4, params) => inst.check(_mime(Array.isArray(types4) ? types4 : [types4], params));
23216
23283
  });
23217
23284
  function file(params) {
23218
23285
  return _file(ZodFile, params);
@@ -23646,7 +23713,8 @@ var BackgroundTaskConfigSchema = exports_external.object({
23646
23713
  providerConcurrency: exports_external.record(exports_external.string(), exports_external.number().min(0)).optional(),
23647
23714
  modelConcurrency: exports_external.record(exports_external.string(), exports_external.number().min(0)).optional(),
23648
23715
  staleTimeoutMs: exports_external.number().min(60000).optional(),
23649
- messageStalenessTimeoutMs: exports_external.number().min(60000).optional()
23716
+ messageStalenessTimeoutMs: exports_external.number().min(60000).optional(),
23717
+ syncPollTimeoutMs: exports_external.number().min(60000).optional()
23650
23718
  });
23651
23719
  // src/config/schema/browser-automation.ts
23652
23720
  var BrowserAutomationProviderSchema = exports_external.enum([
@@ -23907,6 +23975,11 @@ var TmuxConfigSchema = exports_external.object({
23907
23975
  agent_pane_min_width: exports_external.number().min(20).default(40)
23908
23976
  });
23909
23977
 
23978
+ // src/config/schema/start-work.ts
23979
+ var StartWorkConfigSchema = exports_external.object({
23980
+ auto_commit: exports_external.boolean().default(true)
23981
+ });
23982
+
23910
23983
  // src/config/schema/websearch.ts
23911
23984
  var WebsearchProviderSchema = exports_external.enum(["exa", "tavily"]);
23912
23985
  var WebsearchConfigSchema = exports_external.object({
@@ -23944,6 +24017,7 @@ var OhMyOpenCodeConfigSchema = exports_external.object({
23944
24017
  websearch: WebsearchConfigSchema.optional(),
23945
24018
  tmux: TmuxConfigSchema.optional(),
23946
24019
  sisyphus: SisyphusConfigSchema.optional(),
24020
+ start_work: StartWorkConfigSchema.optional(),
23947
24021
  _migrations: exports_external.array(exports_external.string()).optional()
23948
24022
  });
23949
24023
  // src/plugin-config.ts
@@ -26952,7 +27026,7 @@ async function checkSystem() {
26952
27026
  issues.push({
26953
27027
  title: "Loaded plugin version mismatch",
26954
27028
  description: `Cache expects ${loadedInfo.expectedVersion} but loaded ${loadedInfo.loadedVersion}.`,
26955
- fix: "Reinstall plugin dependencies in OpenCode cache",
27029
+ fix: `Reinstall: cd ${loadedInfo.cacheDir} && bun install`,
26956
27030
  severity: "warning",
26957
27031
  affects: ["plugin loading"]
26958
27032
  });
@@ -26961,7 +27035,7 @@ async function checkSystem() {
26961
27035
  issues.push({
26962
27036
  title: "Loaded plugin is outdated",
26963
27037
  description: `Loaded ${systemInfo.loadedVersion}, latest ${latestVersion}.`,
26964
- fix: "Update: cd ~/.config/opencode && bun update oh-my-opencode",
27038
+ fix: `Update: cd ${loadedInfo.cacheDir} && bun add oh-my-opencode@latest`,
26965
27039
  severity: "warning",
26966
27040
  affects: ["plugin features"]
26967
27041
  });
@@ -5,5 +5,6 @@ export declare const BackgroundTaskConfigSchema: z.ZodObject<{
5
5
  modelConcurrency: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodNumber>>;
6
6
  staleTimeoutMs: z.ZodOptional<z.ZodNumber>;
7
7
  messageStalenessTimeoutMs: z.ZodOptional<z.ZodNumber>;
8
+ syncPollTimeoutMs: z.ZodOptional<z.ZodNumber>;
8
9
  }, z.core.$strip>;
9
10
  export type BackgroundTaskConfig = z.infer<typeof BackgroundTaskConfigSchema>;
@@ -1338,6 +1338,7 @@ export declare const OhMyOpenCodeConfigSchema: z.ZodObject<{
1338
1338
  modelConcurrency: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodNumber>>;
1339
1339
  staleTimeoutMs: z.ZodOptional<z.ZodNumber>;
1340
1340
  messageStalenessTimeoutMs: z.ZodOptional<z.ZodNumber>;
1341
+ syncPollTimeoutMs: z.ZodOptional<z.ZodNumber>;
1341
1342
  }, z.core.$strip>>;
1342
1343
  notification: z.ZodOptional<z.ZodObject<{
1343
1344
  force_enable: z.ZodOptional<z.ZodBoolean>;
@@ -1383,6 +1384,9 @@ export declare const OhMyOpenCodeConfigSchema: z.ZodObject<{
1383
1384
  claude_code_compat: z.ZodDefault<z.ZodBoolean>;
1384
1385
  }, z.core.$strip>>;
1385
1386
  }, z.core.$strip>>;
1387
+ start_work: z.ZodOptional<z.ZodObject<{
1388
+ auto_commit: z.ZodDefault<z.ZodBoolean>;
1389
+ }, z.core.$strip>>;
1386
1390
  _migrations: z.ZodOptional<z.ZodArray<z.ZodString>>;
1387
1391
  }, z.core.$strip>;
1388
1392
  export type OhMyOpenCodeConfig = z.infer<typeof OhMyOpenCodeConfigSchema>;
@@ -0,0 +1,5 @@
1
+ import { z } from "zod";
2
+ export declare const StartWorkConfigSchema: z.ZodObject<{
3
+ auto_commit: z.ZodDefault<z.ZodBoolean>;
4
+ }, z.core.$strip>;
5
+ export type StartWorkConfig = z.infer<typeof StartWorkConfigSchema>;
@@ -3,4 +3,5 @@ import type { ToolExecuteAfterInput, ToolExecuteAfterOutput } from "./types";
3
3
  export declare function createToolExecuteAfterHandler(input: {
4
4
  ctx: PluginInput;
5
5
  pendingFilePaths: Map<string, string>;
6
+ autoCommit: boolean;
6
7
  }): (toolInput: ToolExecuteAfterInput, toolOutput: ToolExecuteAfterOutput) => Promise<void>;
@@ -9,6 +9,8 @@ export interface AtlasHookOptions {
9
9
  backgroundManager?: BackgroundManager;
10
10
  isContinuationStopped?: (sessionID: string) => boolean;
11
11
  agentOverrides?: AgentOverrides;
12
+ /** Enable auto-commit after each atomic task completion (default: true) */
13
+ autoCommit?: boolean;
12
14
  }
13
15
  export interface ToolExecuteAfterInput {
14
16
  tool: string;
@@ -1,5 +1,5 @@
1
1
  export declare function buildOrchestratorReminder(planName: string, progress: {
2
2
  total: number;
3
3
  completed: number;
4
- }, sessionId: string): string;
4
+ }, sessionId: string, autoCommit?: boolean): string;
5
5
  export declare function buildStandaloneVerificationReminder(sessionId: string): string;
@@ -2,6 +2,8 @@ import { type LoadedSkill } from "../../features/opencode-skill-loader";
2
2
  import type { ParsedSlashCommand } from "./types";
3
3
  export interface ExecutorOptions {
4
4
  skills?: LoadedSkill[];
5
+ pluginsEnabled?: boolean;
6
+ enabledPluginsOverride?: Record<string, boolean>;
5
7
  }
6
8
  export interface ExecuteResult {
7
9
  success: boolean;
@@ -2,6 +2,8 @@ import type { AutoSlashCommandHookInput, AutoSlashCommandHookOutput, CommandExec
2
2
  import type { LoadedSkill } from "../../features/opencode-skill-loader";
3
3
  export interface AutoSlashCommandHookOptions {
4
4
  skills?: LoadedSkill[];
5
+ pluginsEnabled?: boolean;
6
+ enabledPluginsOverride?: Record<string, boolean>;
5
7
  }
6
8
  export declare function createAutoSlashCommandHook(options?: AutoSlashCommandHookOptions): {
7
9
  "chat.message": (input: AutoSlashCommandHookInput, output: AutoSlashCommandHookOutput) => Promise<void>;
@@ -1,6 +1,7 @@
1
1
  import type { OhMyOpenCodeConfig } from "../config";
2
2
  type ModelCacheStateLike = {
3
3
  anthropicContext1MEnabled: boolean;
4
+ modelContextLimitsCache?: Map<string, number>;
4
5
  };
5
6
  type PluginInput = {
6
7
  client: {
@@ -5,5 +5,6 @@ export declare const getPowershellPath: () => Promise<string | null>;
5
5
  export declare const getAfplayPath: () => Promise<string | null>;
6
6
  export declare const getPaplayPath: () => Promise<string | null>;
7
7
  export declare const getAplayPath: () => Promise<string | null>;
8
+ export declare const getTerminalNotifierPath: () => Promise<string | null>;
8
9
  export declare function startBackgroundCheck(platform: Platform): void;
9
10
  export {};