oh-my-opencode 5.1.23 → 5.1.26
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/dist/cli/index.js +161 -101
- package/dist/cli-node/index.js +161 -101
- package/dist/index.js +1674 -1451
- package/dist/skills/browser/runtime/omowright/manifest.json +1 -1
- package/dist/tui.js +210 -150
- package/package.json +14 -14
- package/packages/omo-codex/plugin/.codex-plugin/plugin.json +1 -1
- package/packages/omo-codex/plugin/components/bootstrap/dist/cli.js +54 -0
- package/packages/omo-codex/plugin/components/bootstrap/hooks/hooks.json +1 -1
- package/packages/omo-codex/plugin/components/bootstrap/package.json +1 -1
- package/packages/omo-codex/plugin/components/comment-checker/hooks/hooks.json +1 -1
- package/packages/omo-codex/plugin/components/comment-checker/package.json +1 -1
- package/packages/omo-codex/plugin/components/git-bash/hooks/hooks.json +2 -2
- package/packages/omo-codex/plugin/components/git-bash/package.json +1 -1
- package/packages/omo-codex/plugin/components/lazycodex-executor-verify/hooks/hooks.json +1 -1
- package/packages/omo-codex/plugin/components/lazycodex-executor-verify/package.json +1 -1
- package/packages/omo-codex/plugin/components/lsp/dist/.omo-runtime-manifest.json +2 -2
- package/packages/omo-codex/plugin/components/lsp/hooks/hooks.json +2 -2
- package/packages/omo-codex/plugin/components/lsp/package.json +1 -1
- package/packages/omo-codex/plugin/components/rules/hooks/hooks.json +4 -4
- package/packages/omo-codex/plugin/components/rules/package.json +1 -1
- package/packages/omo-codex/plugin/components/teammode/hooks/hooks.json +1 -1
- package/packages/omo-codex/plugin/components/teammode/package.json +1 -1
- package/packages/omo-codex/plugin/components/telemetry/hooks/hooks.json +1 -1
- package/packages/omo-codex/plugin/components/telemetry/package.json +1 -1
- package/packages/omo-codex/plugin/components/ultrawork/hooks/hooks.json +1 -1
- package/packages/omo-codex/plugin/components/ultrawork/package.json +1 -1
- package/packages/omo-codex/plugin/components/ulw-execute-continuation/hooks/hooks.json +1 -1
- package/packages/omo-codex/plugin/components/ulw-execute-continuation/package.json +1 -1
- package/packages/omo-codex/plugin/components/ulw-loop/hooks/hooks.json +5 -5
- package/packages/omo-codex/plugin/components/ulw-loop/package.json +1 -1
- package/packages/omo-codex/plugin/hooks/post-compact-resetting-git-bash-mcp-reminder.json +1 -1
- package/packages/omo-codex/plugin/hooks/post-compact-resetting-lsp-diagnostics-cache.json +1 -1
- package/packages/omo-codex/plugin/hooks/post-compact-resetting-project-rule-cache.json +1 -1
- package/packages/omo-codex/plugin/hooks/post-tool-use-checking-comments.json +1 -1
- package/packages/omo-codex/plugin/hooks/post-tool-use-checking-lsp-diagnostics.json +1 -1
- package/packages/omo-codex/plugin/hooks/post-tool-use-checking-thread-title-hygiene.json +1 -1
- package/packages/omo-codex/plugin/hooks/post-tool-use-matching-project-rules.json +1 -1
- package/packages/omo-codex/plugin/hooks/post-tool-use-recording-spawn-admission.json +1 -1
- package/packages/omo-codex/plugin/hooks/pre-tool-use-enforcing-unlimited-goal-budget.json +1 -1
- package/packages/omo-codex/plugin/hooks/pre-tool-use-guarding-ulw-loop-spawns.json +1 -1
- package/packages/omo-codex/plugin/hooks/pre-tool-use-recommending-git-bash-mcp.json +1 -1
- package/packages/omo-codex/plugin/hooks/session-start-checking-auto-update.json +1 -1
- package/packages/omo-codex/plugin/hooks/session-start-checking-bootstrap-provisioning.json +1 -1
- package/packages/omo-codex/plugin/hooks/session-start-loading-project-rules.json +1 -1
- package/packages/omo-codex/plugin/hooks/session-start-recording-session-telemetry.json +1 -1
- package/packages/omo-codex/plugin/hooks/stop-checking-ulw-execute-continuation.json +1 -1
- package/packages/omo-codex/plugin/hooks/stop-checking-ulw-loop-resume.json +1 -1
- package/packages/omo-codex/plugin/hooks/subagent-stop-verifying-lazycodex-executor-evidence.json +1 -1
- package/packages/omo-codex/plugin/hooks/user-prompt-submit-checking-ultrawork-trigger.json +1 -1
- package/packages/omo-codex/plugin/hooks/user-prompt-submit-checking-ulw-loop-steering.json +1 -1
- package/packages/omo-codex/plugin/hooks/user-prompt-submit-loading-project-rules.json +1 -1
- package/packages/omo-codex/plugin/package-lock.json +12 -12
- package/packages/omo-codex/plugin/package.json +1 -1
- package/packages/omo-codex/plugin/skills/browser/runtime/omowright/manifest.json +1 -1
- package/packages/omo-codex/scripts/install-dist/install-local.mjs +56 -2
- package/packages/shared-skills/skills/browser/runtime/omowright/manifest.json +1 -1
package/dist/tui.js
CHANGED
|
@@ -63507,92 +63507,6 @@ var init_log_legacy_plugin_startup_warning = __esm(() => {
|
|
|
63507
63507
|
init_plugin_identity();
|
|
63508
63508
|
});
|
|
63509
63509
|
|
|
63510
|
-
// packages/omo-opencode/src/shared/legacy-workspace-migration.ts
|
|
63511
|
-
var init_legacy_workspace_migration = __esm(() => {
|
|
63512
|
-
init_logger2();
|
|
63513
|
-
});
|
|
63514
|
-
// packages/omo-opencode/src/shared/model-string-parser.ts
|
|
63515
|
-
var init_model_string_parser2 = () => {};
|
|
63516
|
-
|
|
63517
|
-
// packages/omo-opencode/src/shared/replace-tool-args.ts
|
|
63518
|
-
var init_replace_tool_args = () => {};
|
|
63519
|
-
|
|
63520
|
-
// packages/omo-opencode/src/shared/index.ts
|
|
63521
|
-
var init_shared = __esm(() => {
|
|
63522
|
-
init_model_normalization();
|
|
63523
|
-
init_model_resolver2();
|
|
63524
|
-
init_model_resolution_pipeline();
|
|
63525
|
-
init_session_category_registry();
|
|
63526
|
-
init_model_string_parser2();
|
|
63527
|
-
init_frontmatter2();
|
|
63528
|
-
init_command_executor2();
|
|
63529
|
-
init_contains_path2();
|
|
63530
|
-
init_file_reference_resolver();
|
|
63531
|
-
init_model_sanitizer();
|
|
63532
|
-
init_logger2();
|
|
63533
|
-
init_snake_case2();
|
|
63534
|
-
init_tool_name2();
|
|
63535
|
-
init_pattern_matcher();
|
|
63536
|
-
init_deep_merge2();
|
|
63537
|
-
init_file_utils2();
|
|
63538
|
-
init_dynamic_truncator();
|
|
63539
|
-
init_data_path();
|
|
63540
|
-
init_config_errors();
|
|
63541
|
-
init_claude_config_dir();
|
|
63542
|
-
init_jsonc_parser2();
|
|
63543
|
-
init_migration2();
|
|
63544
|
-
init_opencode_config_dir();
|
|
63545
|
-
init_opencode_plugin_sandbox();
|
|
63546
|
-
init_resolve_agent_definition_paths();
|
|
63547
|
-
init_opencode_version();
|
|
63548
|
-
init_opencode_storage_detection();
|
|
63549
|
-
init_external_plugin_detector();
|
|
63550
|
-
init_zip_extractor();
|
|
63551
|
-
init_binary_downloader();
|
|
63552
|
-
init_write_file_atomically();
|
|
63553
|
-
init_agent_variant();
|
|
63554
|
-
init_session_cursor();
|
|
63555
|
-
init_shell_env();
|
|
63556
|
-
init_system_directive();
|
|
63557
|
-
init_agent_tool_restrictions();
|
|
63558
|
-
init_model_requirements2();
|
|
63559
|
-
init_model_resolver2();
|
|
63560
|
-
init_model_availability();
|
|
63561
|
-
init_model_capabilities2();
|
|
63562
|
-
init_model_capabilities_cache();
|
|
63563
|
-
init_model_settings_compatibility2();
|
|
63564
|
-
init_fallback_model_availability();
|
|
63565
|
-
init_connected_providers_cache();
|
|
63566
|
-
init_context_limit_resolver2();
|
|
63567
|
-
init_session_utils();
|
|
63568
|
-
init_event_session_id();
|
|
63569
|
-
init_tmux();
|
|
63570
|
-
init_model_suggestion_retry();
|
|
63571
|
-
init_opencode_server_auth();
|
|
63572
|
-
init_opencode_provider_auth();
|
|
63573
|
-
init_opencode_http_api();
|
|
63574
|
-
init_port_utils2();
|
|
63575
|
-
init_git_worktree2();
|
|
63576
|
-
init_safe_create_hook();
|
|
63577
|
-
init_opencode_storage_paths();
|
|
63578
|
-
init_opencode_message_dir();
|
|
63579
|
-
init_opencode_command_dirs();
|
|
63580
|
-
init_project_discovery_dirs();
|
|
63581
|
-
init_record_type_guard();
|
|
63582
|
-
init_session_directory_resolver();
|
|
63583
|
-
init_session_route();
|
|
63584
|
-
init_prompt_tools();
|
|
63585
|
-
init_prompt_failure_classifier();
|
|
63586
|
-
init_compaction_marker();
|
|
63587
|
-
init_internal_initiator_marker2();
|
|
63588
|
-
init_runtime_fallback_retry_marker();
|
|
63589
|
-
init_plugin_command_discovery();
|
|
63590
|
-
init_plugin_identity();
|
|
63591
|
-
init_log_legacy_plugin_startup_warning();
|
|
63592
|
-
init_legacy_workspace_migration();
|
|
63593
|
-
init_replace_tool_args();
|
|
63594
|
-
});
|
|
63595
|
-
|
|
63596
63510
|
// node_modules/.bun/zod@4.6.5/node_modules/zod/v4/core/util.js
|
|
63597
63511
|
function getEnumValues(entries) {
|
|
63598
63512
|
const numericValues = Object.values(entries).filter((v) => typeof v === "number");
|
|
@@ -70125,6 +70039,60 @@ var init_model_profile = __esm(() => {
|
|
|
70125
70039
|
OmoModelProfilesLayerSchema = record(string2(), OmoModelProfileLayerSchema);
|
|
70126
70040
|
});
|
|
70127
70041
|
|
|
70042
|
+
// packages/omo-config-core/src/schema/side-panel.ts
|
|
70043
|
+
var OmoSidePanelWidthSchema, OmoSidePanelSectionsShape, OmoSidePanelSectionsLayerSchema, OmoSidePanelSectionsSchema, OmoSidePanelSettingsShape, OmoSidePanelSettingsLayerSchema, OmoSidePanelSettingsSchema;
|
|
70044
|
+
var init_side_panel = __esm(() => {
|
|
70045
|
+
init_zod();
|
|
70046
|
+
OmoSidePanelWidthSchema = union([number2().int().min(24).max(160), string2().regex(/^(?:1\d|[2-4]\d|50)%$/)]);
|
|
70047
|
+
OmoSidePanelSectionsShape = {
|
|
70048
|
+
session: boolean2(),
|
|
70049
|
+
goal: boolean2(),
|
|
70050
|
+
context: boolean2(),
|
|
70051
|
+
usage: boolean2(),
|
|
70052
|
+
agents: boolean2(),
|
|
70053
|
+
tools: boolean2(),
|
|
70054
|
+
files: boolean2(),
|
|
70055
|
+
memory: boolean2()
|
|
70056
|
+
};
|
|
70057
|
+
OmoSidePanelSectionsLayerSchema = object(OmoSidePanelSectionsShape).partial().strict();
|
|
70058
|
+
OmoSidePanelSectionsSchema = OmoSidePanelSectionsLayerSchema.extend({
|
|
70059
|
+
session: boolean2().default(true),
|
|
70060
|
+
goal: boolean2().default(true),
|
|
70061
|
+
context: boolean2().default(true),
|
|
70062
|
+
usage: boolean2().default(false),
|
|
70063
|
+
agents: boolean2().default(true),
|
|
70064
|
+
tools: boolean2().default(true),
|
|
70065
|
+
files: boolean2().default(true),
|
|
70066
|
+
memory: boolean2().default(true)
|
|
70067
|
+
}).strict();
|
|
70068
|
+
OmoSidePanelSettingsShape = {
|
|
70069
|
+
enabled: boolean2(),
|
|
70070
|
+
width: OmoSidePanelWidthSchema,
|
|
70071
|
+
min_columns: number2().int().min(60).max(400),
|
|
70072
|
+
clickable: boolean2(),
|
|
70073
|
+
usage_poll_seconds: number2().int().min(60).max(3600),
|
|
70074
|
+
sections: OmoSidePanelSectionsLayerSchema
|
|
70075
|
+
};
|
|
70076
|
+
OmoSidePanelSettingsLayerSchema = object(OmoSidePanelSettingsShape).partial().strict();
|
|
70077
|
+
OmoSidePanelSettingsSchema = OmoSidePanelSettingsLayerSchema.extend({
|
|
70078
|
+
enabled: boolean2().default(false),
|
|
70079
|
+
width: OmoSidePanelWidthSchema.default("26%"),
|
|
70080
|
+
min_columns: number2().int().min(60).max(400).default(120),
|
|
70081
|
+
clickable: boolean2().default(true),
|
|
70082
|
+
usage_poll_seconds: number2().int().min(60).max(3600).default(150),
|
|
70083
|
+
sections: OmoSidePanelSectionsSchema.default({
|
|
70084
|
+
session: true,
|
|
70085
|
+
goal: true,
|
|
70086
|
+
context: true,
|
|
70087
|
+
usage: false,
|
|
70088
|
+
agents: true,
|
|
70089
|
+
tools: true,
|
|
70090
|
+
files: true,
|
|
70091
|
+
memory: true
|
|
70092
|
+
})
|
|
70093
|
+
}).strict();
|
|
70094
|
+
});
|
|
70095
|
+
|
|
70128
70096
|
// packages/omo-config-core/src/schema/task.ts
|
|
70129
70097
|
import { availableParallelism } from "os";
|
|
70130
70098
|
function resolveOmoTaskSettings(input, resolveParallelism = availableParallelism) {
|
|
@@ -70363,6 +70331,7 @@ var init_config = __esm(() => {
|
|
|
70363
70331
|
init_memory();
|
|
70364
70332
|
init_model_catalog();
|
|
70365
70333
|
init_model_profile();
|
|
70334
|
+
init_side_panel();
|
|
70366
70335
|
init_task();
|
|
70367
70336
|
init_team();
|
|
70368
70337
|
init_telemetry();
|
|
@@ -70383,6 +70352,7 @@ var init_config = __esm(() => {
|
|
|
70383
70352
|
model_profile: string2().optional(),
|
|
70384
70353
|
memory: OmoMemorySettingsLayerSchema.optional(),
|
|
70385
70354
|
telemetry: OmoTelemetrySettingsLayerSchema.optional(),
|
|
70355
|
+
side_panel: OmoSidePanelSettingsLayerSchema.optional(),
|
|
70386
70356
|
computer: OmoComputerSettingsLayerSchema.optional(),
|
|
70387
70357
|
disabled_skills: OmoDisabledSkillsSchema.optional()
|
|
70388
70358
|
}).strict();
|
|
@@ -70398,6 +70368,7 @@ var init_config = __esm(() => {
|
|
|
70398
70368
|
model_profile: string2().optional(),
|
|
70399
70369
|
memory: OmoMemorySettingsLayerSchema.optional(),
|
|
70400
70370
|
telemetry: OmoTelemetrySettingsLayerSchema.optional(),
|
|
70371
|
+
side_panel: OmoSidePanelSettingsLayerSchema.optional(),
|
|
70401
70372
|
computer: OmoComputerSettingsLayerSchema.optional(),
|
|
70402
70373
|
disabled_skills: OmoDisabledSkillsSchema.optional(),
|
|
70403
70374
|
"[opencode]": OmoOpenCodeHarnessConfigSchema.optional(),
|
|
@@ -70419,6 +70390,7 @@ var init_config = __esm(() => {
|
|
|
70419
70390
|
model_profile: string2().optional(),
|
|
70420
70391
|
memory: OmoMemorySettingsSchema.optional(),
|
|
70421
70392
|
telemetry: OmoTelemetrySettingsSchema.optional(),
|
|
70393
|
+
side_panel: OmoSidePanelSettingsSchema.optional(),
|
|
70422
70394
|
computer: OmoComputerSettingsSchema.optional(),
|
|
70423
70395
|
disabled_skills: OmoDisabledSkillsSchema.optional(),
|
|
70424
70396
|
"[opencode]": OmoOpenCodeHarnessConfigSchema.optional(),
|
|
@@ -70443,6 +70415,7 @@ var init_config = __esm(() => {
|
|
|
70443
70415
|
model_profile: string2().optional(),
|
|
70444
70416
|
memory: OmoMemorySettingsLayerSchema.optional(),
|
|
70445
70417
|
telemetry: OmoTelemetrySettingsLayerSchema.optional(),
|
|
70418
|
+
side_panel: OmoSidePanelSettingsLayerSchema.optional(),
|
|
70446
70419
|
computer: OmoComputerSettingsLayerSchema.optional(),
|
|
70447
70420
|
disabled_skills: OmoDisabledSkillsSchema.optional(),
|
|
70448
70421
|
"[opencode]": OmoOpenCodeHarnessConfigSchema.optional(),
|
|
@@ -70581,6 +70554,7 @@ var init_schema = __esm(() => {
|
|
|
70581
70554
|
init_model_catalog();
|
|
70582
70555
|
init_model_profile();
|
|
70583
70556
|
init_model_ref();
|
|
70557
|
+
init_side_panel();
|
|
70584
70558
|
init_task();
|
|
70585
70559
|
init_team();
|
|
70586
70560
|
init_telemetry();
|
|
@@ -70588,14 +70562,14 @@ var init_schema = __esm(() => {
|
|
|
70588
70562
|
});
|
|
70589
70563
|
|
|
70590
70564
|
// packages/omo-config-core/src/loader/types.ts
|
|
70591
|
-
import { existsSync as
|
|
70565
|
+
import { existsSync as existsSync5, lstatSync, readFileSync as readFileSync3, realpathSync as realpathSync3 } from "fs";
|
|
70592
70566
|
var MERGED_OMO_CONFIG_PATH = "(merged omo config)", DEFAULT_READ_FILE_SYSTEM;
|
|
70593
70567
|
var init_types3 = __esm(() => {
|
|
70594
70568
|
DEFAULT_READ_FILE_SYSTEM = {
|
|
70595
|
-
existsSync:
|
|
70569
|
+
existsSync: existsSync5,
|
|
70596
70570
|
lstatSync,
|
|
70597
|
-
readFileSync:
|
|
70598
|
-
realpathSync:
|
|
70571
|
+
readFileSync: readFileSync3,
|
|
70572
|
+
realpathSync: realpathSync3
|
|
70599
70573
|
};
|
|
70600
70574
|
});
|
|
70601
70575
|
|
|
@@ -70945,20 +70919,20 @@ var init_posix_path = () => {};
|
|
|
70945
70919
|
|
|
70946
70920
|
// packages/omo-config-core/src/loader/paths.ts
|
|
70947
70921
|
import { userInfo } from "os";
|
|
70948
|
-
import { dirname as
|
|
70922
|
+
import { dirname as dirname2, join as join7, posix as posix2, resolve as resolve3 } from "path";
|
|
70949
70923
|
function resolveHomeDir(env = process.env) {
|
|
70950
70924
|
const homeDir = env.HOME ?? env.USERPROFILE ?? process.cwd();
|
|
70951
|
-
return homeDir.startsWith("/") ? posix2.resolve(homeDir) : toPosixPath(
|
|
70925
|
+
return homeDir.startsWith("/") ? posix2.resolve(homeDir) : toPosixPath(resolve3(homeDir));
|
|
70952
70926
|
}
|
|
70953
70927
|
function resolveUserOmoConfigDirectory(env = process.env) {
|
|
70954
|
-
return
|
|
70928
|
+
return join7(resolveHomeDir(env), ".omo");
|
|
70955
70929
|
}
|
|
70956
70930
|
function detectUserOmoJsonPath(env, fileSystem) {
|
|
70957
70931
|
const configDir = resolveUserOmoConfigDirectory(env);
|
|
70958
|
-
const jsoncPath =
|
|
70932
|
+
const jsoncPath = join7(configDir, "omo.jsonc");
|
|
70959
70933
|
if (fileSystem.existsSync(jsoncPath))
|
|
70960
70934
|
return jsoncPath;
|
|
70961
|
-
const jsonPath =
|
|
70935
|
+
const jsonPath = join7(configDir, "omo.json");
|
|
70962
70936
|
return fileSystem.existsSync(jsonPath) ? jsonPath : jsoncPath;
|
|
70963
70937
|
}
|
|
70964
70938
|
function isSymlinkedProjectPath(path, fileSystem) {
|
|
@@ -70976,13 +70950,13 @@ function isLoadableProjectConfigFile(path, fileSystem) {
|
|
|
70976
70950
|
return fileSystem.existsSync(path) && !isSymlinkedProjectPath(path, fileSystem);
|
|
70977
70951
|
}
|
|
70978
70952
|
function detectOmoJsonPath(dir, fileSystem) {
|
|
70979
|
-
const omoDir =
|
|
70953
|
+
const omoDir = join7(dir, ".omo");
|
|
70980
70954
|
if (isSymlinkedProjectPath(omoDir, fileSystem))
|
|
70981
70955
|
return null;
|
|
70982
|
-
const jsoncPath =
|
|
70956
|
+
const jsoncPath = join7(omoDir, "omo.jsonc");
|
|
70983
70957
|
if (isLoadableProjectConfigFile(jsoncPath, fileSystem))
|
|
70984
70958
|
return jsoncPath;
|
|
70985
|
-
const jsonPath =
|
|
70959
|
+
const jsonPath = join7(omoDir, "omo.json");
|
|
70986
70960
|
return isLoadableProjectConfigFile(jsonPath, fileSystem) ? jsonPath : null;
|
|
70987
70961
|
}
|
|
70988
70962
|
function realpathOrSelf(path, fileSystem) {
|
|
@@ -70995,8 +70969,8 @@ function realpathOrSelf(path, fileSystem) {
|
|
|
70995
70969
|
}
|
|
70996
70970
|
}
|
|
70997
70971
|
function findProjectConfigPathsFarthestFirst(cwd, homeDir, fileSystem, accountHomeDir = homeDir) {
|
|
70998
|
-
const startDir =
|
|
70999
|
-
const boundaryDirs = [...new Set([
|
|
70972
|
+
const startDir = resolve3(cwd);
|
|
70973
|
+
const boundaryDirs = [...new Set([resolve3(homeDir), resolve3(accountHomeDir)])];
|
|
71000
70974
|
const realBoundaryDirs = new Set(boundaryDirs.map((path) => realpathOrSelf(path, fileSystem)));
|
|
71001
70975
|
const nearestFirst = [];
|
|
71002
70976
|
let currentDir = startDir;
|
|
@@ -71007,7 +70981,7 @@ function findProjectConfigPathsFarthestFirst(cwd, homeDir, fileSystem, accountHo
|
|
|
71007
70981
|
nearestFirst.push(configPath);
|
|
71008
70982
|
if (isHomeDir)
|
|
71009
70983
|
break;
|
|
71010
|
-
const parentDir =
|
|
70984
|
+
const parentDir = dirname2(currentDir);
|
|
71011
70985
|
if (parentDir === currentDir)
|
|
71012
70986
|
break;
|
|
71013
70987
|
currentDir = parentDir;
|
|
@@ -71437,30 +71411,30 @@ var init_models = __esm(() => {
|
|
|
71437
71411
|
// packages/omo-config-core/src/writer/types.ts
|
|
71438
71412
|
import {
|
|
71439
71413
|
copyFileSync,
|
|
71440
|
-
existsSync as
|
|
71414
|
+
existsSync as existsSync6,
|
|
71441
71415
|
lstatSync as lstatSync2,
|
|
71442
|
-
mkdirSync as
|
|
71443
|
-
readFileSync as
|
|
71416
|
+
mkdirSync as mkdirSync5,
|
|
71417
|
+
readFileSync as readFileSync4,
|
|
71444
71418
|
readdirSync as readdirSync2,
|
|
71445
71419
|
renameSync as renameSync3,
|
|
71446
|
-
unlinkSync as
|
|
71447
|
-
writeFileSync as
|
|
71420
|
+
unlinkSync as unlinkSync2,
|
|
71421
|
+
writeFileSync as writeFileSync3
|
|
71448
71422
|
} from "fs";
|
|
71449
71423
|
var DEFAULT_WRITE_FILE_SYSTEM;
|
|
71450
71424
|
var init_types4 = __esm(() => {
|
|
71451
71425
|
DEFAULT_WRITE_FILE_SYSTEM = {
|
|
71452
71426
|
copyFileSync,
|
|
71453
|
-
existsSync:
|
|
71427
|
+
existsSync: existsSync6,
|
|
71454
71428
|
lstatSync: lstatSync2,
|
|
71455
|
-
mkdirSync:
|
|
71456
|
-
readFileSync:
|
|
71429
|
+
mkdirSync: mkdirSync5,
|
|
71430
|
+
readFileSync: readFileSync4,
|
|
71457
71431
|
readdirSync: readdirSync2,
|
|
71458
71432
|
renameSync: renameSync3,
|
|
71459
|
-
unlinkSync:
|
|
71433
|
+
unlinkSync: unlinkSync2,
|
|
71460
71434
|
writeFileExclusiveSync: (path, content) => {
|
|
71461
|
-
|
|
71435
|
+
writeFileSync3(path, content, { encoding: "utf-8", flag: "wx" });
|
|
71462
71436
|
},
|
|
71463
|
-
writeFileSync:
|
|
71437
|
+
writeFileSync: writeFileSync3
|
|
71464
71438
|
};
|
|
71465
71439
|
});
|
|
71466
71440
|
|
|
@@ -71554,6 +71528,92 @@ var init_src4 = __esm(() => {
|
|
|
71554
71528
|
init_migration3();
|
|
71555
71529
|
});
|
|
71556
71530
|
|
|
71531
|
+
// packages/omo-opencode/src/shared/legacy-workspace-migration.ts
|
|
71532
|
+
var init_legacy_workspace_migration = __esm(() => {
|
|
71533
|
+
init_logger2();
|
|
71534
|
+
});
|
|
71535
|
+
// packages/omo-opencode/src/shared/model-string-parser.ts
|
|
71536
|
+
var init_model_string_parser2 = () => {};
|
|
71537
|
+
|
|
71538
|
+
// packages/omo-opencode/src/shared/replace-tool-args.ts
|
|
71539
|
+
var init_replace_tool_args = () => {};
|
|
71540
|
+
|
|
71541
|
+
// packages/omo-opencode/src/shared/index.ts
|
|
71542
|
+
var init_shared = __esm(() => {
|
|
71543
|
+
init_model_normalization();
|
|
71544
|
+
init_model_resolver2();
|
|
71545
|
+
init_model_resolution_pipeline();
|
|
71546
|
+
init_session_category_registry();
|
|
71547
|
+
init_model_string_parser2();
|
|
71548
|
+
init_frontmatter2();
|
|
71549
|
+
init_command_executor2();
|
|
71550
|
+
init_contains_path2();
|
|
71551
|
+
init_file_reference_resolver();
|
|
71552
|
+
init_model_sanitizer();
|
|
71553
|
+
init_logger2();
|
|
71554
|
+
init_snake_case2();
|
|
71555
|
+
init_tool_name2();
|
|
71556
|
+
init_pattern_matcher();
|
|
71557
|
+
init_deep_merge2();
|
|
71558
|
+
init_file_utils2();
|
|
71559
|
+
init_dynamic_truncator();
|
|
71560
|
+
init_data_path();
|
|
71561
|
+
init_config_errors();
|
|
71562
|
+
init_claude_config_dir();
|
|
71563
|
+
init_jsonc_parser2();
|
|
71564
|
+
init_migration2();
|
|
71565
|
+
init_opencode_config_dir();
|
|
71566
|
+
init_opencode_plugin_sandbox();
|
|
71567
|
+
init_resolve_agent_definition_paths();
|
|
71568
|
+
init_opencode_version();
|
|
71569
|
+
init_opencode_storage_detection();
|
|
71570
|
+
init_external_plugin_detector();
|
|
71571
|
+
init_zip_extractor();
|
|
71572
|
+
init_binary_downloader();
|
|
71573
|
+
init_write_file_atomically();
|
|
71574
|
+
init_agent_variant();
|
|
71575
|
+
init_session_cursor();
|
|
71576
|
+
init_shell_env();
|
|
71577
|
+
init_system_directive();
|
|
71578
|
+
init_agent_tool_restrictions();
|
|
71579
|
+
init_model_requirements2();
|
|
71580
|
+
init_model_resolver2();
|
|
71581
|
+
init_model_availability();
|
|
71582
|
+
init_model_capabilities2();
|
|
71583
|
+
init_model_capabilities_cache();
|
|
71584
|
+
init_model_settings_compatibility2();
|
|
71585
|
+
init_fallback_model_availability();
|
|
71586
|
+
init_connected_providers_cache();
|
|
71587
|
+
init_context_limit_resolver2();
|
|
71588
|
+
init_session_utils();
|
|
71589
|
+
init_event_session_id();
|
|
71590
|
+
init_tmux();
|
|
71591
|
+
init_model_suggestion_retry();
|
|
71592
|
+
init_opencode_server_auth();
|
|
71593
|
+
init_opencode_provider_auth();
|
|
71594
|
+
init_opencode_http_api();
|
|
71595
|
+
init_port_utils2();
|
|
71596
|
+
init_git_worktree2();
|
|
71597
|
+
init_safe_create_hook();
|
|
71598
|
+
init_opencode_storage_paths();
|
|
71599
|
+
init_opencode_message_dir();
|
|
71600
|
+
init_opencode_command_dirs();
|
|
71601
|
+
init_project_discovery_dirs();
|
|
71602
|
+
init_record_type_guard();
|
|
71603
|
+
init_session_directory_resolver();
|
|
71604
|
+
init_session_route();
|
|
71605
|
+
init_prompt_tools();
|
|
71606
|
+
init_prompt_failure_classifier();
|
|
71607
|
+
init_compaction_marker();
|
|
71608
|
+
init_internal_initiator_marker2();
|
|
71609
|
+
init_runtime_fallback_retry_marker();
|
|
71610
|
+
init_plugin_command_discovery();
|
|
71611
|
+
init_plugin_identity();
|
|
71612
|
+
init_log_legacy_plugin_startup_warning();
|
|
71613
|
+
init_legacy_workspace_migration();
|
|
71614
|
+
init_replace_tool_args();
|
|
71615
|
+
});
|
|
71616
|
+
|
|
71557
71617
|
// packages/omo-opencode/src/shared/disabled-providers.ts
|
|
71558
71618
|
function getModelProvider(model) {
|
|
71559
71619
|
const slash = model.indexOf("/");
|
|
@@ -74620,7 +74680,7 @@ init_shared();
|
|
|
74620
74680
|
// package.json
|
|
74621
74681
|
var package_default = {
|
|
74622
74682
|
name: "oh-my-opencode",
|
|
74623
|
-
version: "5.1.
|
|
74683
|
+
version: "5.1.26",
|
|
74624
74684
|
description: "The Best AI Agent Harness - Batteries-Included OpenCode Plugin with Multi-Model Orchestration, Parallel Background Agents, and Crafted LSP/AST Tools",
|
|
74625
74685
|
main: "./dist/index.js",
|
|
74626
74686
|
types: "dist/index.d.ts",
|
|
@@ -74797,7 +74857,7 @@ var package_default = {
|
|
|
74797
74857
|
},
|
|
74798
74858
|
devDependencies: {
|
|
74799
74859
|
"@clack/prompts": "^1.8.1",
|
|
74800
|
-
"@code-yeongyu/senpi": "2026.10.10-
|
|
74860
|
+
"@code-yeongyu/senpi": "2026.10.10-8",
|
|
74801
74861
|
"@modelcontextprotocol/sdk": "^1.30.0",
|
|
74802
74862
|
"@oh-my-opencode/agents-md-core": "workspace:*",
|
|
74803
74863
|
"@oh-my-opencode/ast-grep-mcp": "workspace:*",
|
|
@@ -74855,18 +74915,18 @@ var package_default = {
|
|
|
74855
74915
|
typescript: "^7.0.2"
|
|
74856
74916
|
},
|
|
74857
74917
|
optionalDependencies: {
|
|
74858
|
-
"oh-my-opencode-darwin-arm64": "5.1.
|
|
74859
|
-
"oh-my-opencode-darwin-x64": "5.1.
|
|
74860
|
-
"oh-my-opencode-darwin-x64-baseline": "5.1.
|
|
74861
|
-
"oh-my-opencode-linux-arm64": "5.1.
|
|
74862
|
-
"oh-my-opencode-linux-arm64-musl": "5.1.
|
|
74863
|
-
"oh-my-opencode-linux-x64": "5.1.
|
|
74864
|
-
"oh-my-opencode-linux-x64-baseline": "5.1.
|
|
74865
|
-
"oh-my-opencode-linux-x64-musl": "5.1.
|
|
74866
|
-
"oh-my-opencode-linux-x64-musl-baseline": "5.1.
|
|
74867
|
-
"oh-my-opencode-windows-arm64": "5.1.
|
|
74868
|
-
"oh-my-opencode-windows-x64": "5.1.
|
|
74869
|
-
"oh-my-opencode-windows-x64-baseline": "5.1.
|
|
74918
|
+
"oh-my-opencode-darwin-arm64": "5.1.26",
|
|
74919
|
+
"oh-my-opencode-darwin-x64": "5.1.26",
|
|
74920
|
+
"oh-my-opencode-darwin-x64-baseline": "5.1.26",
|
|
74921
|
+
"oh-my-opencode-linux-arm64": "5.1.26",
|
|
74922
|
+
"oh-my-opencode-linux-arm64-musl": "5.1.26",
|
|
74923
|
+
"oh-my-opencode-linux-x64": "5.1.26",
|
|
74924
|
+
"oh-my-opencode-linux-x64-baseline": "5.1.26",
|
|
74925
|
+
"oh-my-opencode-linux-x64-musl": "5.1.26",
|
|
74926
|
+
"oh-my-opencode-linux-x64-musl-baseline": "5.1.26",
|
|
74927
|
+
"oh-my-opencode-windows-arm64": "5.1.26",
|
|
74928
|
+
"oh-my-opencode-windows-x64": "5.1.26",
|
|
74929
|
+
"oh-my-opencode-windows-x64-baseline": "5.1.26"
|
|
74870
74930
|
},
|
|
74871
74931
|
overrides: {
|
|
74872
74932
|
hono: "^4.13.8",
|
|
@@ -74924,7 +74984,7 @@ var NUDGE_INTERVALS_MS = [3, 7, 14].map((days) => days * 24 * 60 * 60 * 1000);
|
|
|
74924
74984
|
var NUDGE_SNOOZE_MS = 7 * 24 * 60 * 60 * 1000;
|
|
74925
74985
|
var NUDGE_CORRUPT_RECOVERY_MS = 3 * 24 * 60 * 60 * 1000;
|
|
74926
74986
|
// packages/omo-opencode/src/hooks/native-edition-nudge/hook.ts
|
|
74927
|
-
import { join as
|
|
74987
|
+
import { join as join10 } from "path";
|
|
74928
74988
|
init_logger2();
|
|
74929
74989
|
|
|
74930
74990
|
// packages/omo-opencode/src/hooks/auto-update-checker/constants.ts
|
|
@@ -74945,8 +75005,8 @@ var INSTALLED_PACKAGE_JSON = path4.join(CACHE_DIR, "node_modules", PACKAGE_NAME,
|
|
|
74945
75005
|
var INSTALLED_PACKAGE_JSON_CANDIDATES = ACCEPTED_PACKAGE_NAMES2.map((name) => path4.join(CACHE_DIR, "node_modules", name, "package.json"));
|
|
74946
75006
|
|
|
74947
75007
|
// packages/omo-opencode/src/hooks/native-edition-nudge/state.ts
|
|
74948
|
-
import { mkdirSync as
|
|
74949
|
-
import { join as
|
|
75008
|
+
import { mkdirSync as mkdirSync6, readFileSync as readFileSync5, unlinkSync as unlinkSync3, writeFileSync as writeFileSync4 } from "fs";
|
|
75009
|
+
import { join as join9 } from "path";
|
|
74950
75010
|
var NUDGE_STATE_FILE = "native-nudge.json";
|
|
74951
75011
|
function isDecision(value) {
|
|
74952
75012
|
return value === "none" || value === "snoozed" || value === "never" || value === "migrated";
|
|
@@ -74980,12 +75040,12 @@ function parseNudgeState(raw) {
|
|
|
74980
75040
|
};
|
|
74981
75041
|
}
|
|
74982
75042
|
function createNudgeStateStore(stateDir) {
|
|
74983
|
-
const path =
|
|
75043
|
+
const path = join9(stateDir, NUDGE_STATE_FILE);
|
|
74984
75044
|
return {
|
|
74985
75045
|
read: () => {
|
|
74986
75046
|
let raw;
|
|
74987
75047
|
try {
|
|
74988
|
-
raw =
|
|
75048
|
+
raw = readFileSync5(path, "utf8");
|
|
74989
75049
|
} catch {
|
|
74990
75050
|
return "missing";
|
|
74991
75051
|
}
|
|
@@ -74993,8 +75053,8 @@ function createNudgeStateStore(stateDir) {
|
|
|
74993
75053
|
},
|
|
74994
75054
|
write: (state) => {
|
|
74995
75055
|
try {
|
|
74996
|
-
|
|
74997
|
-
|
|
75056
|
+
mkdirSync6(stateDir, { recursive: true });
|
|
75057
|
+
writeFileSync4(path, `${JSON.stringify(state, null, 2)}
|
|
74998
75058
|
`, { mode: 384 });
|
|
74999
75059
|
return true;
|
|
75000
75060
|
} catch {
|
|
@@ -75002,15 +75062,15 @@ function createNudgeStateStore(stateDir) {
|
|
|
75002
75062
|
}
|
|
75003
75063
|
},
|
|
75004
75064
|
probeWritable: () => {
|
|
75005
|
-
const probe =
|
|
75065
|
+
const probe = join9(stateDir, `.${NUDGE_STATE_FILE}.probe`);
|
|
75006
75066
|
try {
|
|
75007
|
-
|
|
75008
|
-
|
|
75067
|
+
mkdirSync6(stateDir, { recursive: true });
|
|
75068
|
+
writeFileSync4(probe, "", { mode: 384 });
|
|
75009
75069
|
} catch {
|
|
75010
75070
|
return false;
|
|
75011
75071
|
}
|
|
75012
75072
|
try {
|
|
75013
|
-
|
|
75073
|
+
unlinkSync3(probe);
|
|
75014
75074
|
} catch {}
|
|
75015
75075
|
return true;
|
|
75016
75076
|
}
|
|
@@ -75021,7 +75081,7 @@ function createNudgeStateStore(stateDir) {
|
|
|
75021
75081
|
var NATIVE_NUDGE_TOAST_MESSAGE = `Same agent, one binary, nothing else to keep updated.
|
|
75022
75082
|
Install: ${NATIVE_EDITION_INSTALL_COMMAND}`;
|
|
75023
75083
|
function nativeEditionStateDir() {
|
|
75024
|
-
return
|
|
75084
|
+
return join10(getUserConfigDir(), "oh-my-openagent");
|
|
75025
75085
|
}
|
|
75026
75086
|
// packages/omo-opencode/src/features/native-edition-nudge/tui.ts
|
|
75027
75087
|
var NATIVE_NUDGE_DIALOG_TITLE = "OmO Native";
|
|
@@ -75269,30 +75329,30 @@ function compareJobs(left, right) {
|
|
|
75269
75329
|
}
|
|
75270
75330
|
|
|
75271
75331
|
// packages/omo-opencode/src/features/tui-sidebar/mirror-io.ts
|
|
75272
|
-
import { mkdirSync as
|
|
75332
|
+
import { mkdirSync as mkdirSync7, readFileSync as readFileSync6 } from "fs";
|
|
75273
75333
|
init_write_file_atomically();
|
|
75274
75334
|
|
|
75275
75335
|
// packages/omo-opencode/src/features/tui-sidebar/mirror-path.ts
|
|
75276
75336
|
import { createHash } from "crypto";
|
|
75277
|
-
import { realpathSync as
|
|
75337
|
+
import { realpathSync as realpathSync4 } from "fs";
|
|
75278
75338
|
import { homedir as homedir3 } from "os";
|
|
75279
|
-
import { join as
|
|
75339
|
+
import { join as join11, resolve as resolve4 } from "path";
|
|
75280
75340
|
function mirrorStorageDir() {
|
|
75281
|
-
return
|
|
75341
|
+
return join11(process.env.XDG_DATA_HOME ?? join11(homedir3(), ".local", "share"), "opencode", "storage", "oh-my-openagent", MIRROR_DIR_NAME);
|
|
75282
75342
|
}
|
|
75283
75343
|
function canonicalProjectDir(projectDir) {
|
|
75284
75344
|
try {
|
|
75285
|
-
return
|
|
75345
|
+
return realpathSync4.native(projectDir);
|
|
75286
75346
|
} catch (error) {
|
|
75287
75347
|
if (error instanceof Error) {
|
|
75288
|
-
return
|
|
75348
|
+
return resolve4(projectDir);
|
|
75289
75349
|
}
|
|
75290
75350
|
throw error;
|
|
75291
75351
|
}
|
|
75292
75352
|
}
|
|
75293
75353
|
function mirrorFilePath(projectDir) {
|
|
75294
75354
|
const projectHash = createHash("sha1").update(canonicalProjectDir(projectDir)).digest("hex").slice(0, 16);
|
|
75295
|
-
return
|
|
75355
|
+
return join11(mirrorStorageDir(), `${projectHash}.json`);
|
|
75296
75356
|
}
|
|
75297
75357
|
|
|
75298
75358
|
// packages/omo-opencode/src/features/tui-sidebar/snapshot-schema.ts
|
|
@@ -75352,7 +75412,7 @@ function parseSnapshot(raw) {
|
|
|
75352
75412
|
function readMirror(projectDir) {
|
|
75353
75413
|
let raw;
|
|
75354
75414
|
try {
|
|
75355
|
-
raw = JSON.parse(
|
|
75415
|
+
raw = JSON.parse(readFileSync6(mirrorFilePath(projectDir), "utf-8"));
|
|
75356
75416
|
} catch (error) {
|
|
75357
75417
|
if (error instanceof Error) {
|
|
75358
75418
|
return null;
|
|
@@ -75493,7 +75553,7 @@ init_logger2();
|
|
|
75493
75553
|
init_logger2();
|
|
75494
75554
|
init_data_path();
|
|
75495
75555
|
init_opencode_plugin_sandbox();
|
|
75496
|
-
import { basename as basename2, dirname as
|
|
75556
|
+
import { basename as basename2, dirname as dirname4 } from "path";
|
|
75497
75557
|
import { fileURLToPath } from "url";
|
|
75498
75558
|
|
|
75499
75559
|
// packages/omo-opencode/src/hooks/auto-update-checker/checker/package-json-locator.ts
|
|
@@ -75534,13 +75594,13 @@ function findPackageJsonUp(startPath) {
|
|
|
75534
75594
|
// packages/omo-opencode/src/hooks/auto-update-checker/checker/sandbox-refresh.ts
|
|
75535
75595
|
var trackedSandboxDirs = new Set;
|
|
75536
75596
|
function getLoadedPluginSandboxDir(moduleUrl, cacheDir = getOpenCodeCacheDir()) {
|
|
75537
|
-
const packageJsonPath = findPackageJsonUp(
|
|
75597
|
+
const packageJsonPath = findPackageJsonUp(dirname4(fileURLToPath(moduleUrl)));
|
|
75538
75598
|
if (!packageJsonPath)
|
|
75539
75599
|
return null;
|
|
75540
|
-
const nodeModulesDir =
|
|
75600
|
+
const nodeModulesDir = dirname4(dirname4(packageJsonPath));
|
|
75541
75601
|
if (basename2(nodeModulesDir) !== "node_modules")
|
|
75542
75602
|
return null;
|
|
75543
|
-
const workspace =
|
|
75603
|
+
const workspace = dirname4(nodeModulesDir);
|
|
75544
75604
|
return isPluginSandboxDir(workspace, cacheDir) ? workspace : null;
|
|
75545
75605
|
}
|
|
75546
75606
|
function refreshMarkedSandbox(sandboxDir, cacheDir, pid) {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "oh-my-opencode",
|
|
3
|
-
"version": "5.1.
|
|
3
|
+
"version": "5.1.26",
|
|
4
4
|
"description": "The Best AI Agent Harness - Batteries-Included OpenCode Plugin with Multi-Model Orchestration, Parallel Background Agents, and Crafted LSP/AST Tools",
|
|
5
5
|
"main": "./dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -177,7 +177,7 @@
|
|
|
177
177
|
},
|
|
178
178
|
"devDependencies": {
|
|
179
179
|
"@clack/prompts": "^1.8.1",
|
|
180
|
-
"@code-yeongyu/senpi": "2026.10.10-
|
|
180
|
+
"@code-yeongyu/senpi": "2026.10.10-8",
|
|
181
181
|
"@modelcontextprotocol/sdk": "^1.30.0",
|
|
182
182
|
"@oh-my-opencode/agents-md-core": "workspace:*",
|
|
183
183
|
"@oh-my-opencode/ast-grep-mcp": "workspace:*",
|
|
@@ -235,18 +235,18 @@
|
|
|
235
235
|
"typescript": "^7.0.2"
|
|
236
236
|
},
|
|
237
237
|
"optionalDependencies": {
|
|
238
|
-
"oh-my-opencode-darwin-arm64": "5.1.
|
|
239
|
-
"oh-my-opencode-darwin-x64": "5.1.
|
|
240
|
-
"oh-my-opencode-darwin-x64-baseline": "5.1.
|
|
241
|
-
"oh-my-opencode-linux-arm64": "5.1.
|
|
242
|
-
"oh-my-opencode-linux-arm64-musl": "5.1.
|
|
243
|
-
"oh-my-opencode-linux-x64": "5.1.
|
|
244
|
-
"oh-my-opencode-linux-x64-baseline": "5.1.
|
|
245
|
-
"oh-my-opencode-linux-x64-musl": "5.1.
|
|
246
|
-
"oh-my-opencode-linux-x64-musl-baseline": "5.1.
|
|
247
|
-
"oh-my-opencode-windows-arm64": "5.1.
|
|
248
|
-
"oh-my-opencode-windows-x64": "5.1.
|
|
249
|
-
"oh-my-opencode-windows-x64-baseline": "5.1.
|
|
238
|
+
"oh-my-opencode-darwin-arm64": "5.1.26",
|
|
239
|
+
"oh-my-opencode-darwin-x64": "5.1.26",
|
|
240
|
+
"oh-my-opencode-darwin-x64-baseline": "5.1.26",
|
|
241
|
+
"oh-my-opencode-linux-arm64": "5.1.26",
|
|
242
|
+
"oh-my-opencode-linux-arm64-musl": "5.1.26",
|
|
243
|
+
"oh-my-opencode-linux-x64": "5.1.26",
|
|
244
|
+
"oh-my-opencode-linux-x64-baseline": "5.1.26",
|
|
245
|
+
"oh-my-opencode-linux-x64-musl": "5.1.26",
|
|
246
|
+
"oh-my-opencode-linux-x64-musl-baseline": "5.1.26",
|
|
247
|
+
"oh-my-opencode-windows-arm64": "5.1.26",
|
|
248
|
+
"oh-my-opencode-windows-x64": "5.1.26",
|
|
249
|
+
"oh-my-opencode-windows-x64-baseline": "5.1.26"
|
|
250
250
|
},
|
|
251
251
|
"overrides": {
|
|
252
252
|
"hono": "^4.13.8",
|