oh-my-opencode 5.1.41 → 5.1.43
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/README.de.md +118 -0
- package/README.es.md +118 -0
- package/README.fr.md +118 -0
- package/README.it.md +118 -0
- package/README.ja.md +2 -1
- package/README.ko.md +2 -1
- package/README.md +3 -2
- package/README.pt-br.md +118 -0
- package/README.ru.md +2 -1
- package/README.zh-cn.md +2 -1
- package/dist/cli/index.js +187 -39
- package/dist/cli/service-auth/cli-keystore.fixture.d.ts +1 -7
- package/dist/cli/service-auth/index.d.ts +3 -0
- package/dist/cli/service-auth/keystore.d.ts +8 -2
- package/dist/cli/service-auth/secret-service-lock.d.ts +4 -0
- package/dist/cli/service-auth/session.d.ts +7 -1
- package/dist/cli-node/index.js +187 -39
- package/dist/index.js +90 -31
- package/dist/skills/browser/runtime/omowright/manifest.json +1 -1
- package/dist/tui.js +86 -26
- package/package.json +14 -14
- package/packages/lsp-core/src/lsp/bun-command-output.ts +82 -0
- package/packages/lsp-core/src/lsp/bun-project-checks.test.ts +170 -0
- package/packages/lsp-core/src/lsp/bun-project-checks.ts +223 -0
- package/packages/lsp-core/src/lsp/fake-bun-test-support.ts +102 -0
- package/packages/lsp-core/src/lsp/process.ts +1 -1
- package/packages/lsp-core/src/tool-surface.test.ts +2 -1
- package/packages/lsp-core/src/tools/bun-directory-diagnostics.test.ts +113 -0
- package/packages/lsp-core/src/tools/bun-directory-diagnostics.ts +75 -0
- package/packages/lsp-core/src/tools/definitions.ts +2 -1
- package/packages/lsp-core/src/tools/diagnostics.ts +23 -6
- package/packages/lsp-core/src/tools/types.ts +1 -0
- package/packages/lsp-daemon/dist/cli.js +363 -35
- package/packages/lsp-daemon/dist/client.js +341 -13
- package/packages/lsp-daemon/dist/index.js +344 -16
- package/packages/lsp-tools-mcp/dist/cli.js +333 -5
- package/packages/lsp-tools-mcp/dist/mcp.js +333 -5
- package/packages/lsp-tools-mcp/dist/tools.js +333 -5
- package/packages/omo-codex/plugin/.codex-plugin/plugin.json +1 -1
- package/packages/omo-codex/plugin/components/bootstrap/dist/cli.js +68 -9
- 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 +3 -3
- package/packages/omo-codex/plugin/components/lsp/dist/cli.js +358 -36
- 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/dist/cli.js +2 -0
- package/packages/omo-codex/plugin/components/telemetry/dist/posthog.js +2 -0
- 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 +17 -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 +72 -11
- package/packages/shared-skills/skills/browser/runtime/omowright/manifest.json +1 -1
package/dist/index.js
CHANGED
|
@@ -85148,9 +85148,11 @@ var OmoMemoryAgentOverridesSchema = z9.object({
|
|
|
85148
85148
|
projection: OmoMemoryProjectionLayerSchema.optional(),
|
|
85149
85149
|
compile_warn_tokens: z9.number().int().positive().optional()
|
|
85150
85150
|
}).strict();
|
|
85151
|
+
var OmoMemoryAutoIdentitySchema = z9.enum(["path", "git"]);
|
|
85151
85152
|
var OmoMemorySettingsSchema = z9.object({
|
|
85152
85153
|
enabled: z9.boolean().default(true),
|
|
85153
85154
|
agent: z9.string().min(1).default("auto"),
|
|
85155
|
+
auto_identity: OmoMemoryAutoIdentitySchema.default("path"),
|
|
85154
85156
|
reflection: OmoMemoryReflectionSchema.default({
|
|
85155
85157
|
enabled: true,
|
|
85156
85158
|
trigger: { step_count: 25, on_compaction: true },
|
|
@@ -85192,6 +85194,7 @@ var OmoMemorySettingsSchema = z9.object({
|
|
|
85192
85194
|
var OmoMemorySettingsLayerSchema = z9.object({
|
|
85193
85195
|
enabled: z9.boolean().optional(),
|
|
85194
85196
|
agent: z9.string().min(1).optional(),
|
|
85197
|
+
auto_identity: OmoMemoryAutoIdentitySchema.optional(),
|
|
85195
85198
|
reflection: OmoMemoryReflectionLayerSchema.optional(),
|
|
85196
85199
|
nudge: OmoMemoryNudgeLayerSchema.optional(),
|
|
85197
85200
|
facts: OmoMemoryFactsLayerSchema.optional(),
|
|
@@ -85232,6 +85235,7 @@ function isRecord9(value) {
|
|
|
85232
85235
|
}
|
|
85233
85236
|
var OmoModelProfileInputSchema = z11.object({
|
|
85234
85237
|
display_name: z11.string().optional(),
|
|
85238
|
+
caution: z11.string().optional(),
|
|
85235
85239
|
family: z11.enum(["daily", "geeky"]).optional(),
|
|
85236
85240
|
tier: z11.enum(["normal", "heavy"]).optional(),
|
|
85237
85241
|
models: z11.array(z11.union([z11.string(), OmoFallbackModelObjectSchema])).optional()
|
|
@@ -85509,6 +85513,7 @@ var OmoGatewaySectionSchema = z17.record(z17.string(), z17.unknown()).describe("
|
|
|
85509
85513
|
// packages/omo-config-core/src/schema/config.ts
|
|
85510
85514
|
var OmoOpenCodeHarnessConfigSchema = z18.record(z18.string(), z18.unknown());
|
|
85511
85515
|
var OmoDisabledSkillsSchema = z18.array(z18.string());
|
|
85516
|
+
var OmoExcludedModelsSchema = z18.array(z18.string());
|
|
85512
85517
|
var OmoTypedHarnessConfigSchema = z18.object({
|
|
85513
85518
|
formatOnMutation: OmoFormatOnMutationLayerSchema.optional(),
|
|
85514
85519
|
gateway: OmoGatewaySectionSchema.optional(),
|
|
@@ -85524,7 +85529,8 @@ var OmoTypedHarnessConfigSchema = z18.object({
|
|
|
85524
85529
|
telemetry: OmoTelemetrySettingsLayerSchema.optional(),
|
|
85525
85530
|
side_panel: OmoSidePanelSettingsLayerSchema.optional(),
|
|
85526
85531
|
computer: OmoComputerSettingsLayerSchema.optional(),
|
|
85527
|
-
disabled_skills: OmoDisabledSkillsSchema.optional()
|
|
85532
|
+
disabled_skills: OmoDisabledSkillsSchema.optional(),
|
|
85533
|
+
exclude_models: OmoExcludedModelsSchema.optional()
|
|
85528
85534
|
}).strict();
|
|
85529
85535
|
var OmoConfigProfileSchema = z18.object({
|
|
85530
85536
|
formatOnMutation: OmoFormatOnMutationLayerSchema.optional(),
|
|
@@ -85541,6 +85547,7 @@ var OmoConfigProfileSchema = z18.object({
|
|
|
85541
85547
|
side_panel: OmoSidePanelSettingsLayerSchema.optional(),
|
|
85542
85548
|
computer: OmoComputerSettingsLayerSchema.optional(),
|
|
85543
85549
|
disabled_skills: OmoDisabledSkillsSchema.optional(),
|
|
85550
|
+
exclude_models: OmoExcludedModelsSchema.optional(),
|
|
85544
85551
|
"[opencode]": OmoOpenCodeHarnessConfigSchema.optional(),
|
|
85545
85552
|
"[native]": OmoTypedHarnessConfigSchema.optional(),
|
|
85546
85553
|
"[senpi]": OmoTypedHarnessConfigSchema.optional(),
|
|
@@ -85563,6 +85570,7 @@ var OmoConfigSchema = z18.object({
|
|
|
85563
85570
|
side_panel: OmoSidePanelSettingsSchema.optional(),
|
|
85564
85571
|
computer: OmoComputerSettingsSchema.optional(),
|
|
85565
85572
|
disabled_skills: OmoDisabledSkillsSchema.optional(),
|
|
85573
|
+
exclude_models: OmoExcludedModelsSchema.optional(),
|
|
85566
85574
|
"[opencode]": OmoOpenCodeHarnessConfigSchema.optional(),
|
|
85567
85575
|
"[native]": OmoTypedHarnessConfigSchema.optional(),
|
|
85568
85576
|
"[senpi]": OmoTypedHarnessConfigSchema.optional(),
|
|
@@ -85588,6 +85596,7 @@ var OmoConfigLayerSchema = z18.object({
|
|
|
85588
85596
|
side_panel: OmoSidePanelSettingsLayerSchema.optional(),
|
|
85589
85597
|
computer: OmoComputerSettingsLayerSchema.optional(),
|
|
85590
85598
|
disabled_skills: OmoDisabledSkillsSchema.optional(),
|
|
85599
|
+
exclude_models: OmoExcludedModelsSchema.optional(),
|
|
85591
85600
|
"[opencode]": OmoOpenCodeHarnessConfigSchema.optional(),
|
|
85592
85601
|
"[native]": OmoTypedHarnessConfigSchema.optional(),
|
|
85593
85602
|
"[senpi]": OmoTypedHarnessConfigSchema.optional(),
|
|
@@ -85760,6 +85769,50 @@ function omoConfigDiagnosticLines(diagnostics, options = {}) {
|
|
|
85760
85769
|
});
|
|
85761
85770
|
}
|
|
85762
85771
|
|
|
85772
|
+
// packages/omo-config-core/src/loader/disabled-skills.ts
|
|
85773
|
+
function toRecord(value) {
|
|
85774
|
+
if (value === null || typeof value !== "object" || Array.isArray(value))
|
|
85775
|
+
return;
|
|
85776
|
+
return value;
|
|
85777
|
+
}
|
|
85778
|
+
function namesAt(record, key) {
|
|
85779
|
+
const value = record?.[key];
|
|
85780
|
+
if (!Array.isArray(value))
|
|
85781
|
+
return [];
|
|
85782
|
+
return value.filter((entry) => typeof entry === "string" && entry.trim() !== "");
|
|
85783
|
+
}
|
|
85784
|
+
function harnessBlockKeys(harness) {
|
|
85785
|
+
const canonical = canonicalHarnessName(harness);
|
|
85786
|
+
const legacy = Object.entries(OMO_CONFIG_LEGACY_HARNESS_ALIASES).filter(([, target]) => target === canonical).map(([name]) => harnessBlockKey(name));
|
|
85787
|
+
return [harnessBlockKey(canonical), ...legacy];
|
|
85788
|
+
}
|
|
85789
|
+
function scopesOf(config, harness) {
|
|
85790
|
+
if (harness === undefined)
|
|
85791
|
+
return [config];
|
|
85792
|
+
return [config, ...harnessBlockKeys(harness).map((key) => toRecord(config[key]))];
|
|
85793
|
+
}
|
|
85794
|
+
function collectExcludedModels(options) {
|
|
85795
|
+
return collectUnionedList("exclude_models", options);
|
|
85796
|
+
}
|
|
85797
|
+
function collectUnionedList(key, options) {
|
|
85798
|
+
const names = new Set;
|
|
85799
|
+
for (const layer of options.layers) {
|
|
85800
|
+
const config = toRecord(layer.config);
|
|
85801
|
+
if (config === undefined)
|
|
85802
|
+
continue;
|
|
85803
|
+
const profile = options.profile === undefined ? undefined : toRecord(toRecord(config["profiles"])?.[options.profile]);
|
|
85804
|
+
const scopes = [
|
|
85805
|
+
...scopesOf(config, options.harness),
|
|
85806
|
+
...profile === undefined ? [] : scopesOf(profile, options.harness)
|
|
85807
|
+
];
|
|
85808
|
+
for (const scope of scopes) {
|
|
85809
|
+
for (const name of namesAt(scope, key))
|
|
85810
|
+
names.add(name.trim());
|
|
85811
|
+
}
|
|
85812
|
+
}
|
|
85813
|
+
return [...names];
|
|
85814
|
+
}
|
|
85815
|
+
|
|
85763
85816
|
// packages/omo-config-core/src/loader/loader.ts
|
|
85764
85817
|
init_main();
|
|
85765
85818
|
|
|
@@ -85994,7 +86047,7 @@ function stripUnrecognizedKeys(record, issues) {
|
|
|
85994
86047
|
}
|
|
85995
86048
|
return { issuePaths, stripped };
|
|
85996
86049
|
}
|
|
85997
|
-
function
|
|
86050
|
+
function toRecord2(value) {
|
|
85998
86051
|
if (value === null || typeof value !== "object" || Array.isArray(value))
|
|
85999
86052
|
return null;
|
|
86000
86053
|
const record = {};
|
|
@@ -86009,7 +86062,7 @@ var validateLayerRecord = (record) => {
|
|
|
86009
86062
|
};
|
|
86010
86063
|
function validateConfigLayer(path, data) {
|
|
86011
86064
|
const sanitized = sanitizeUnsafeKeys(data);
|
|
86012
|
-
const record =
|
|
86065
|
+
const record = toRecord2(sanitized.value);
|
|
86013
86066
|
const unsafeIssuePaths = sanitized.issues.flatMap((issue) => issue.keys.map((key) => [...issue.path, key].join(".")));
|
|
86014
86067
|
const unsafeDiagnostics = unsafeIssuePaths.length === 0 ? [] : [{ kind: "unknown-keys", message: `Ignored unknown keys in ${path}: ${unsafeIssuePaths.join(", ")}`, path, issuePaths: unsafeIssuePaths }];
|
|
86015
86068
|
const validation = OmoConfigLayerSchema.safeParse(sanitized.value);
|
|
@@ -86152,7 +86205,7 @@ function resolveOmoProfileName(options = {}) {
|
|
|
86152
86205
|
const env = options.env ?? process.env;
|
|
86153
86206
|
return profileName(options.profile) ?? profileName(env["OMO_PROFILE"]) ?? profileName(env["OCX_PROFILE"]) ?? profileNameFromOpenCodeConfigDir(env["OPENCODE_CONFIG_DIR"]);
|
|
86154
86207
|
}
|
|
86155
|
-
function
|
|
86208
|
+
function toRecord3(value) {
|
|
86156
86209
|
if (value === null || typeof value !== "object" || Array.isArray(value))
|
|
86157
86210
|
return;
|
|
86158
86211
|
return Object.fromEntries(Object.entries(value));
|
|
@@ -86173,13 +86226,13 @@ function harnessLayer(config, harness) {
|
|
|
86173
86226
|
const legacyKeys = Object.entries(OMO_CONFIG_LEGACY_HARNESS_ALIASES).filter(([, target]) => target === canonical).map(([legacy]) => harnessBlockKey(legacy));
|
|
86174
86227
|
let layer = {};
|
|
86175
86228
|
for (const key of [...legacyKeys, harnessBlockKey(canonical)]) {
|
|
86176
|
-
layer = mergeOmoConfigRecords(layer,
|
|
86229
|
+
layer = mergeOmoConfigRecords(layer, toRecord3(config[key]) ?? {});
|
|
86177
86230
|
}
|
|
86178
86231
|
return layer;
|
|
86179
86232
|
}
|
|
86180
86233
|
function resolveOmoConfigView(options) {
|
|
86181
|
-
const profiles =
|
|
86182
|
-
const profile = options.profile === undefined ? undefined :
|
|
86234
|
+
const profiles = toRecord3(options.config["profiles"]);
|
|
86235
|
+
const profile = options.profile === undefined ? undefined : toRecord3(profiles?.[options.profile]);
|
|
86183
86236
|
const diagnostics = profile === undefined && options.profile !== undefined ? [{
|
|
86184
86237
|
kind: "profile",
|
|
86185
86238
|
message: `Activated omo profile "${options.profile}" does not exist; using the base configuration`,
|
|
@@ -86320,9 +86373,15 @@ function loadOmoConfig(options = {}) {
|
|
|
86320
86373
|
});
|
|
86321
86374
|
const finalInput = mergeOmoConfigRecords(DEFAULT_RAW_CONFIG, resolved.config);
|
|
86322
86375
|
const finalConfig = OmoConfigSchema.safeParse(finalInput);
|
|
86376
|
+
const excludeModels = collectExcludedModels({
|
|
86377
|
+
layers,
|
|
86378
|
+
...options.harness === undefined ? {} : { harness: options.harness },
|
|
86379
|
+
...resolved.profile === undefined ? {} : { profile: resolved.profile }
|
|
86380
|
+
});
|
|
86381
|
+
const withExcludedModels = (config) => excludeModels.length === 0 ? config : { ...config, exclude_models: [...excludeModels] };
|
|
86323
86382
|
if (finalConfig.success) {
|
|
86324
86383
|
return {
|
|
86325
|
-
config: stripResolutionControlKeys(finalConfig.data),
|
|
86384
|
+
config: withExcludedModels(stripResolutionControlKeys(finalConfig.data)),
|
|
86326
86385
|
diagnostics: [...diagnostics, ...resolved.diagnostics],
|
|
86327
86386
|
layers,
|
|
86328
86387
|
...resolved.profile === undefined ? {} : { profile: resolved.profile },
|
|
@@ -86335,7 +86394,7 @@ function loadOmoConfig(options = {}) {
|
|
|
86335
86394
|
});
|
|
86336
86395
|
if (pruned.ok) {
|
|
86337
86396
|
return {
|
|
86338
|
-
config: stripResolutionControlKeys(OmoConfigSchema.parse(pruned.config)),
|
|
86397
|
+
config: withExcludedModels(stripResolutionControlKeys(OmoConfigSchema.parse(pruned.config))),
|
|
86339
86398
|
diagnostics: [...diagnostics, ...resolved.diagnostics, ...invalidValueDiagnostics(MERGED_OMO_CONFIG_PATH, pruned.dropped)],
|
|
86340
86399
|
layers,
|
|
86341
86400
|
...resolved.profile === undefined ? {} : { profile: resolved.profile },
|
|
@@ -87822,7 +87881,7 @@ init_src();
|
|
|
87822
87881
|
// package.json
|
|
87823
87882
|
var package_default = {
|
|
87824
87883
|
name: "oh-my-opencode",
|
|
87825
|
-
version: "5.1.
|
|
87884
|
+
version: "5.1.43",
|
|
87826
87885
|
description: "The Best AI Agent Harness - Batteries-Included OpenCode Plugin with Multi-Model Orchestration, Parallel Background Agents, and Crafted LSP/AST Tools",
|
|
87827
87886
|
main: "./dist/index.js",
|
|
87828
87887
|
types: "dist/index.d.ts",
|
|
@@ -87999,7 +88058,7 @@ var package_default = {
|
|
|
87999
88058
|
},
|
|
88000
88059
|
devDependencies: {
|
|
88001
88060
|
"@clack/prompts": "^1.8.1",
|
|
88002
|
-
"@code-yeongyu/senpi": "2026.10.21-
|
|
88061
|
+
"@code-yeongyu/senpi": "2026.10.21-2",
|
|
88003
88062
|
"@modelcontextprotocol/sdk": "^1.30.0",
|
|
88004
88063
|
"@oh-my-opencode/agents-md-core": "workspace:*",
|
|
88005
88064
|
"@oh-my-opencode/ast-grep-mcp": "workspace:*",
|
|
@@ -88060,18 +88119,18 @@ var package_default = {
|
|
|
88060
88119
|
typescript: "^7.0.2"
|
|
88061
88120
|
},
|
|
88062
88121
|
optionalDependencies: {
|
|
88063
|
-
"oh-my-opencode-darwin-arm64": "5.1.
|
|
88064
|
-
"oh-my-opencode-darwin-x64": "5.1.
|
|
88065
|
-
"oh-my-opencode-darwin-x64-baseline": "5.1.
|
|
88066
|
-
"oh-my-opencode-linux-arm64": "5.1.
|
|
88067
|
-
"oh-my-opencode-linux-arm64-musl": "5.1.
|
|
88068
|
-
"oh-my-opencode-linux-x64": "5.1.
|
|
88069
|
-
"oh-my-opencode-linux-x64-baseline": "5.1.
|
|
88070
|
-
"oh-my-opencode-linux-x64-musl": "5.1.
|
|
88071
|
-
"oh-my-opencode-linux-x64-musl-baseline": "5.1.
|
|
88072
|
-
"oh-my-opencode-windows-arm64": "5.1.
|
|
88073
|
-
"oh-my-opencode-windows-x64": "5.1.
|
|
88074
|
-
"oh-my-opencode-windows-x64-baseline": "5.1.
|
|
88122
|
+
"oh-my-opencode-darwin-arm64": "5.1.43",
|
|
88123
|
+
"oh-my-opencode-darwin-x64": "5.1.43",
|
|
88124
|
+
"oh-my-opencode-darwin-x64-baseline": "5.1.43",
|
|
88125
|
+
"oh-my-opencode-linux-arm64": "5.1.43",
|
|
88126
|
+
"oh-my-opencode-linux-arm64-musl": "5.1.43",
|
|
88127
|
+
"oh-my-opencode-linux-x64": "5.1.43",
|
|
88128
|
+
"oh-my-opencode-linux-x64-baseline": "5.1.43",
|
|
88129
|
+
"oh-my-opencode-linux-x64-musl": "5.1.43",
|
|
88130
|
+
"oh-my-opencode-linux-x64-musl-baseline": "5.1.43",
|
|
88131
|
+
"oh-my-opencode-windows-arm64": "5.1.43",
|
|
88132
|
+
"oh-my-opencode-windows-x64": "5.1.43",
|
|
88133
|
+
"oh-my-opencode-windows-x64-baseline": "5.1.43"
|
|
88075
88134
|
},
|
|
88076
88135
|
overrides: {
|
|
88077
88136
|
hono: "^4.13.8",
|
|
@@ -107856,11 +107915,11 @@ init_logger2();
|
|
|
107856
107915
|
init_src();
|
|
107857
107916
|
var TERMINAL_TOOL_STATUSES = new Set(["completed", "error"]);
|
|
107858
107917
|
var UNKNOWN_TOOL_STATUS = "unknown";
|
|
107859
|
-
function
|
|
107918
|
+
function toRecord4(value) {
|
|
107860
107919
|
return isRecord(value) ? value : null;
|
|
107861
107920
|
}
|
|
107862
107921
|
function getToolCallID(part) {
|
|
107863
|
-
const record =
|
|
107922
|
+
const record = toRecord4(part);
|
|
107864
107923
|
if (!record || record["type"] !== "tool") {
|
|
107865
107924
|
return null;
|
|
107866
107925
|
}
|
|
@@ -107868,7 +107927,7 @@ function getToolCallID(part) {
|
|
|
107868
107927
|
return typeof callID === "string" && callID.length > 0 ? callID : null;
|
|
107869
107928
|
}
|
|
107870
107929
|
function getToolStatus(part) {
|
|
107871
|
-
const state =
|
|
107930
|
+
const state = toRecord4(toRecord4(part)?.["state"]);
|
|
107872
107931
|
if (!state) {
|
|
107873
107932
|
return UNKNOWN_TOOL_STATUS;
|
|
107874
107933
|
}
|
|
@@ -107899,24 +107958,24 @@ function findUnpairedToolParts(parts) {
|
|
|
107899
107958
|
// packages/omo-opencode/src/hooks/tool-pair-validator/tool-result-repair.ts
|
|
107900
107959
|
var INTERRUPTED_TOOL_ERROR = "[Tool execution was interrupted before it produced output]";
|
|
107901
107960
|
function getMessageID(message) {
|
|
107902
|
-
const messageID =
|
|
107961
|
+
const messageID = toRecord4(message)?.["id"];
|
|
107903
107962
|
return typeof messageID === "string" ? messageID : undefined;
|
|
107904
107963
|
}
|
|
107905
107964
|
function getMessageSessionID(message) {
|
|
107906
|
-
const sessionID =
|
|
107965
|
+
const sessionID = toRecord4(message)?.["sessionID"];
|
|
107907
107966
|
return typeof sessionID === "string" ? sessionID : undefined;
|
|
107908
107967
|
}
|
|
107909
107968
|
function readStartTime(state) {
|
|
107910
|
-
const time =
|
|
107969
|
+
const time = toRecord4(state["time"]);
|
|
107911
107970
|
const start = time?.["start"];
|
|
107912
107971
|
return typeof start === "number" ? start : Date.now();
|
|
107913
107972
|
}
|
|
107914
107973
|
function settleToolPart(part) {
|
|
107915
|
-
const state =
|
|
107974
|
+
const state = toRecord4(toRecord4(part)?.["state"]);
|
|
107916
107975
|
if (!state) {
|
|
107917
107976
|
return false;
|
|
107918
107977
|
}
|
|
107919
|
-
const input =
|
|
107978
|
+
const input = toRecord4(state["input"]);
|
|
107920
107979
|
const start = readStartTime(state);
|
|
107921
107980
|
state["status"] = "error";
|
|
107922
107981
|
state["error"] = INTERRUPTED_TOOL_ERROR;
|
package/dist/tui.js
CHANGED
|
@@ -70124,7 +70124,7 @@ var init_memory_agreements = __esm(() => {
|
|
|
70124
70124
|
});
|
|
70125
70125
|
|
|
70126
70126
|
// packages/omo-config-core/src/schema/memory.ts
|
|
70127
|
-
var OmoMemoryReflectionTriggerSchema, OmoMemoryReflectionSchema, OmoMemorySyncSchema, OmoMemorySearchSchema, OmoMemoryRecallEventCapsSchema, OmoMemoryRecallSchema, OmoMemoryNudgeSchema, OmoMemoryFactsSchema, OmoMemoryDreamSchema, OmoMemoryPeopleSchema, OmoMemorySoulSchema, OmoMemoryWriteNoticeSchema, OmoMemoryReflectionTriggerLayerSchema, OmoMemoryReflectionLayerSchema, OmoMemorySyncLayerSchema, OmoMemorySearchLayerSchema, OmoMemoryRecallEventCapsLayerSchema, OmoMemoryRecallLayerSchema, OmoMemoryNudgeLayerSchema, OmoMemoryFactsLayerSchema, OmoMemoryDreamLayerSchema, OmoMemoryPeopleLayerSchema, OmoMemorySoulLayerSchema, OmoMemoryWriteNoticeLayerSchema, OmoMemoryProjectionSchema, OmoMemoryProjectionLayerSchema, OmoMemoryAgentOverridesSchema, OmoMemorySettingsSchema, OmoMemorySettingsLayerSchema;
|
|
70127
|
+
var OmoMemoryReflectionTriggerSchema, OmoMemoryReflectionSchema, OmoMemorySyncSchema, OmoMemorySearchSchema, OmoMemoryRecallEventCapsSchema, OmoMemoryRecallSchema, OmoMemoryNudgeSchema, OmoMemoryFactsSchema, OmoMemoryDreamSchema, OmoMemoryPeopleSchema, OmoMemorySoulSchema, OmoMemoryWriteNoticeSchema, OmoMemoryReflectionTriggerLayerSchema, OmoMemoryReflectionLayerSchema, OmoMemorySyncLayerSchema, OmoMemorySearchLayerSchema, OmoMemoryRecallEventCapsLayerSchema, OmoMemoryRecallLayerSchema, OmoMemoryNudgeLayerSchema, OmoMemoryFactsLayerSchema, OmoMemoryDreamLayerSchema, OmoMemoryPeopleLayerSchema, OmoMemorySoulLayerSchema, OmoMemoryWriteNoticeLayerSchema, OmoMemoryProjectionSchema, OmoMemoryProjectionLayerSchema, OmoMemoryAgentOverridesSchema, OmoMemoryAutoIdentitySchema, OmoMemorySettingsSchema, OmoMemorySettingsLayerSchema;
|
|
70128
70128
|
var init_memory = __esm(() => {
|
|
70129
70129
|
init_zod();
|
|
70130
70130
|
init_memory_agreements();
|
|
@@ -70280,9 +70280,11 @@ var init_memory = __esm(() => {
|
|
|
70280
70280
|
projection: OmoMemoryProjectionLayerSchema.optional(),
|
|
70281
70281
|
compile_warn_tokens: number2().int().positive().optional()
|
|
70282
70282
|
}).strict();
|
|
70283
|
+
OmoMemoryAutoIdentitySchema = _enum(["path", "git"]);
|
|
70283
70284
|
OmoMemorySettingsSchema = object({
|
|
70284
70285
|
enabled: boolean2().default(true),
|
|
70285
70286
|
agent: string2().min(1).default("auto"),
|
|
70287
|
+
auto_identity: OmoMemoryAutoIdentitySchema.default("path"),
|
|
70286
70288
|
reflection: OmoMemoryReflectionSchema.default({
|
|
70287
70289
|
enabled: true,
|
|
70288
70290
|
trigger: { step_count: 25, on_compaction: true },
|
|
@@ -70324,6 +70326,7 @@ var init_memory = __esm(() => {
|
|
|
70324
70326
|
OmoMemorySettingsLayerSchema = object({
|
|
70325
70327
|
enabled: boolean2().optional(),
|
|
70326
70328
|
agent: string2().min(1).optional(),
|
|
70329
|
+
auto_identity: OmoMemoryAutoIdentitySchema.optional(),
|
|
70327
70330
|
reflection: OmoMemoryReflectionLayerSchema.optional(),
|
|
70328
70331
|
nudge: OmoMemoryNudgeLayerSchema.optional(),
|
|
70329
70332
|
facts: OmoMemoryFactsLayerSchema.optional(),
|
|
@@ -70373,6 +70376,7 @@ var init_model_profile = __esm(() => {
|
|
|
70373
70376
|
init_fallback_models();
|
|
70374
70377
|
OmoModelProfileInputSchema = object({
|
|
70375
70378
|
display_name: string2().optional(),
|
|
70379
|
+
caution: string2().optional(),
|
|
70376
70380
|
family: _enum(["daily", "geeky"]).optional(),
|
|
70377
70381
|
tier: _enum(["normal", "heavy"]).optional(),
|
|
70378
70382
|
models: array(union([string2(), OmoFallbackModelObjectSchema])).optional()
|
|
@@ -70666,7 +70670,7 @@ var init_gateway = __esm(() => {
|
|
|
70666
70670
|
});
|
|
70667
70671
|
|
|
70668
70672
|
// packages/omo-config-core/src/schema/config.ts
|
|
70669
|
-
var OmoOpenCodeHarnessConfigSchema, OmoDisabledSkillsSchema, OmoTypedHarnessConfigSchema, OmoConfigProfileSchema, OmoConfigSchema, OmoConfigLayerSchema;
|
|
70673
|
+
var OmoOpenCodeHarnessConfigSchema, OmoDisabledSkillsSchema, OmoExcludedModelsSchema, OmoTypedHarnessConfigSchema, OmoConfigProfileSchema, OmoConfigSchema, OmoConfigLayerSchema;
|
|
70670
70674
|
var init_config = __esm(() => {
|
|
70671
70675
|
init_zod();
|
|
70672
70676
|
init_agent();
|
|
@@ -70684,6 +70688,7 @@ var init_config = __esm(() => {
|
|
|
70684
70688
|
init_gateway();
|
|
70685
70689
|
OmoOpenCodeHarnessConfigSchema = record(string2(), unknown());
|
|
70686
70690
|
OmoDisabledSkillsSchema = array(string2());
|
|
70691
|
+
OmoExcludedModelsSchema = array(string2());
|
|
70687
70692
|
OmoTypedHarnessConfigSchema = object({
|
|
70688
70693
|
formatOnMutation: OmoFormatOnMutationLayerSchema.optional(),
|
|
70689
70694
|
gateway: OmoGatewaySectionSchema.optional(),
|
|
@@ -70699,7 +70704,8 @@ var init_config = __esm(() => {
|
|
|
70699
70704
|
telemetry: OmoTelemetrySettingsLayerSchema.optional(),
|
|
70700
70705
|
side_panel: OmoSidePanelSettingsLayerSchema.optional(),
|
|
70701
70706
|
computer: OmoComputerSettingsLayerSchema.optional(),
|
|
70702
|
-
disabled_skills: OmoDisabledSkillsSchema.optional()
|
|
70707
|
+
disabled_skills: OmoDisabledSkillsSchema.optional(),
|
|
70708
|
+
exclude_models: OmoExcludedModelsSchema.optional()
|
|
70703
70709
|
}).strict();
|
|
70704
70710
|
OmoConfigProfileSchema = object({
|
|
70705
70711
|
formatOnMutation: OmoFormatOnMutationLayerSchema.optional(),
|
|
@@ -70716,6 +70722,7 @@ var init_config = __esm(() => {
|
|
|
70716
70722
|
side_panel: OmoSidePanelSettingsLayerSchema.optional(),
|
|
70717
70723
|
computer: OmoComputerSettingsLayerSchema.optional(),
|
|
70718
70724
|
disabled_skills: OmoDisabledSkillsSchema.optional(),
|
|
70725
|
+
exclude_models: OmoExcludedModelsSchema.optional(),
|
|
70719
70726
|
"[opencode]": OmoOpenCodeHarnessConfigSchema.optional(),
|
|
70720
70727
|
"[native]": OmoTypedHarnessConfigSchema.optional(),
|
|
70721
70728
|
"[senpi]": OmoTypedHarnessConfigSchema.optional(),
|
|
@@ -70738,6 +70745,7 @@ var init_config = __esm(() => {
|
|
|
70738
70745
|
side_panel: OmoSidePanelSettingsSchema.optional(),
|
|
70739
70746
|
computer: OmoComputerSettingsSchema.optional(),
|
|
70740
70747
|
disabled_skills: OmoDisabledSkillsSchema.optional(),
|
|
70748
|
+
exclude_models: OmoExcludedModelsSchema.optional(),
|
|
70741
70749
|
"[opencode]": OmoOpenCodeHarnessConfigSchema.optional(),
|
|
70742
70750
|
"[native]": OmoTypedHarnessConfigSchema.optional(),
|
|
70743
70751
|
"[senpi]": OmoTypedHarnessConfigSchema.optional(),
|
|
@@ -70763,6 +70771,7 @@ var init_config = __esm(() => {
|
|
|
70763
70771
|
side_panel: OmoSidePanelSettingsLayerSchema.optional(),
|
|
70764
70772
|
computer: OmoComputerSettingsLayerSchema.optional(),
|
|
70765
70773
|
disabled_skills: OmoDisabledSkillsSchema.optional(),
|
|
70774
|
+
exclude_models: OmoExcludedModelsSchema.optional(),
|
|
70766
70775
|
"[opencode]": OmoOpenCodeHarnessConfigSchema.optional(),
|
|
70767
70776
|
"[native]": OmoTypedHarnessConfigSchema.optional(),
|
|
70768
70777
|
"[senpi]": OmoTypedHarnessConfigSchema.optional(),
|
|
@@ -70965,7 +70974,51 @@ var init_diagnostic_lines = __esm(() => {
|
|
|
70965
70974
|
});
|
|
70966
70975
|
|
|
70967
70976
|
// packages/omo-config-core/src/loader/disabled-skills.ts
|
|
70968
|
-
|
|
70977
|
+
function toRecord(value) {
|
|
70978
|
+
if (value === null || typeof value !== "object" || Array.isArray(value))
|
|
70979
|
+
return;
|
|
70980
|
+
return value;
|
|
70981
|
+
}
|
|
70982
|
+
function namesAt(record, key) {
|
|
70983
|
+
const value = record?.[key];
|
|
70984
|
+
if (!Array.isArray(value))
|
|
70985
|
+
return [];
|
|
70986
|
+
return value.filter((entry) => typeof entry === "string" && entry.trim() !== "");
|
|
70987
|
+
}
|
|
70988
|
+
function harnessBlockKeys(harness) {
|
|
70989
|
+
const canonical = canonicalHarnessName(harness);
|
|
70990
|
+
const legacy = Object.entries(OMO_CONFIG_LEGACY_HARNESS_ALIASES).filter(([, target]) => target === canonical).map(([name]) => harnessBlockKey(name));
|
|
70991
|
+
return [harnessBlockKey(canonical), ...legacy];
|
|
70992
|
+
}
|
|
70993
|
+
function scopesOf(config, harness) {
|
|
70994
|
+
if (harness === undefined)
|
|
70995
|
+
return [config];
|
|
70996
|
+
return [config, ...harnessBlockKeys(harness).map((key) => toRecord(config[key]))];
|
|
70997
|
+
}
|
|
70998
|
+
function collectExcludedModels(options) {
|
|
70999
|
+
return collectUnionedList("exclude_models", options);
|
|
71000
|
+
}
|
|
71001
|
+
function collectUnionedList(key, options) {
|
|
71002
|
+
const names = new Set;
|
|
71003
|
+
for (const layer of options.layers) {
|
|
71004
|
+
const config = toRecord(layer.config);
|
|
71005
|
+
if (config === undefined)
|
|
71006
|
+
continue;
|
|
71007
|
+
const profile = options.profile === undefined ? undefined : toRecord(toRecord(config["profiles"])?.[options.profile]);
|
|
71008
|
+
const scopes = [
|
|
71009
|
+
...scopesOf(config, options.harness),
|
|
71010
|
+
...profile === undefined ? [] : scopesOf(profile, options.harness)
|
|
71011
|
+
];
|
|
71012
|
+
for (const scope of scopes) {
|
|
71013
|
+
for (const name of namesAt(scope, key))
|
|
71014
|
+
names.add(name.trim());
|
|
71015
|
+
}
|
|
71016
|
+
}
|
|
71017
|
+
return [...names];
|
|
71018
|
+
}
|
|
71019
|
+
var init_disabled_skills = __esm(() => {
|
|
71020
|
+
init_schema();
|
|
71021
|
+
});
|
|
70969
71022
|
|
|
70970
71023
|
// packages/omo-config-core/src/loader/merge.ts
|
|
70971
71024
|
function isUnsafeObjectKey2(key) {
|
|
@@ -71201,7 +71254,7 @@ function stripUnrecognizedKeys(record, issues) {
|
|
|
71201
71254
|
}
|
|
71202
71255
|
return { issuePaths, stripped };
|
|
71203
71256
|
}
|
|
71204
|
-
function
|
|
71257
|
+
function toRecord2(value) {
|
|
71205
71258
|
if (value === null || typeof value !== "object" || Array.isArray(value))
|
|
71206
71259
|
return null;
|
|
71207
71260
|
const record = {};
|
|
@@ -71212,7 +71265,7 @@ function toRecord(value) {
|
|
|
71212
71265
|
}
|
|
71213
71266
|
function validateConfigLayer(path, data) {
|
|
71214
71267
|
const sanitized = sanitizeUnsafeKeys(data);
|
|
71215
|
-
const record =
|
|
71268
|
+
const record = toRecord2(sanitized.value);
|
|
71216
71269
|
const unsafeIssuePaths = sanitized.issues.flatMap((issue) => issue.keys.map((key) => [...issue.path, key].join(".")));
|
|
71217
71270
|
const unsafeDiagnostics = unsafeIssuePaths.length === 0 ? [] : [{ kind: "unknown-keys", message: `Ignored unknown keys in ${path}: ${unsafeIssuePaths.join(", ")}`, path, issuePaths: unsafeIssuePaths }];
|
|
71218
71271
|
const validation = OmoConfigLayerSchema.safeParse(sanitized.value);
|
|
@@ -71362,7 +71415,7 @@ function resolveOmoProfileName(options = {}) {
|
|
|
71362
71415
|
const env = options.env ?? process.env;
|
|
71363
71416
|
return profileName(options.profile) ?? profileName(env["OMO_PROFILE"]) ?? profileName(env["OCX_PROFILE"]) ?? profileNameFromOpenCodeConfigDir(env["OPENCODE_CONFIG_DIR"]);
|
|
71364
71417
|
}
|
|
71365
|
-
function
|
|
71418
|
+
function toRecord3(value) {
|
|
71366
71419
|
if (value === null || typeof value !== "object" || Array.isArray(value))
|
|
71367
71420
|
return;
|
|
71368
71421
|
return Object.fromEntries(Object.entries(value));
|
|
@@ -71383,13 +71436,13 @@ function harnessLayer(config, harness) {
|
|
|
71383
71436
|
const legacyKeys = Object.entries(OMO_CONFIG_LEGACY_HARNESS_ALIASES).filter(([, target]) => target === canonical).map(([legacy]) => harnessBlockKey(legacy));
|
|
71384
71437
|
let layer = {};
|
|
71385
71438
|
for (const key of [...legacyKeys, harnessBlockKey(canonical)]) {
|
|
71386
|
-
layer = mergeOmoConfigRecords(layer,
|
|
71439
|
+
layer = mergeOmoConfigRecords(layer, toRecord3(config[key]) ?? {});
|
|
71387
71440
|
}
|
|
71388
71441
|
return layer;
|
|
71389
71442
|
}
|
|
71390
71443
|
function resolveOmoConfigView(options) {
|
|
71391
|
-
const profiles =
|
|
71392
|
-
const profile = options.profile === undefined ? undefined :
|
|
71444
|
+
const profiles = toRecord3(options.config["profiles"]);
|
|
71445
|
+
const profile = options.profile === undefined ? undefined : toRecord3(profiles?.[options.profile]);
|
|
71393
71446
|
const diagnostics = profile === undefined && options.profile !== undefined ? [{
|
|
71394
71447
|
kind: "profile",
|
|
71395
71448
|
message: `Activated omo profile "${options.profile}" does not exist; using the base configuration`,
|
|
@@ -71530,9 +71583,15 @@ function loadOmoConfig(options = {}) {
|
|
|
71530
71583
|
});
|
|
71531
71584
|
const finalInput = mergeOmoConfigRecords(DEFAULT_RAW_CONFIG, resolved.config);
|
|
71532
71585
|
const finalConfig = OmoConfigSchema.safeParse(finalInput);
|
|
71586
|
+
const excludeModels = collectExcludedModels({
|
|
71587
|
+
layers,
|
|
71588
|
+
...options.harness === undefined ? {} : { harness: options.harness },
|
|
71589
|
+
...resolved.profile === undefined ? {} : { profile: resolved.profile }
|
|
71590
|
+
});
|
|
71591
|
+
const withExcludedModels = (config) => excludeModels.length === 0 ? config : { ...config, exclude_models: [...excludeModels] };
|
|
71533
71592
|
if (finalConfig.success) {
|
|
71534
71593
|
return {
|
|
71535
|
-
config: stripResolutionControlKeys(finalConfig.data),
|
|
71594
|
+
config: withExcludedModels(stripResolutionControlKeys(finalConfig.data)),
|
|
71536
71595
|
diagnostics: [...diagnostics, ...resolved.diagnostics],
|
|
71537
71596
|
layers,
|
|
71538
71597
|
...resolved.profile === undefined ? {} : { profile: resolved.profile },
|
|
@@ -71545,7 +71604,7 @@ function loadOmoConfig(options = {}) {
|
|
|
71545
71604
|
});
|
|
71546
71605
|
if (pruned.ok) {
|
|
71547
71606
|
return {
|
|
71548
|
-
config: stripResolutionControlKeys(OmoConfigSchema.parse(pruned.config)),
|
|
71607
|
+
config: withExcludedModels(stripResolutionControlKeys(OmoConfigSchema.parse(pruned.config))),
|
|
71549
71608
|
diagnostics: [...diagnostics, ...resolved.diagnostics, ...invalidValueDiagnostics(MERGED_OMO_CONFIG_PATH, pruned.dropped)],
|
|
71550
71609
|
layers,
|
|
71551
71610
|
...resolved.profile === undefined ? {} : { profile: resolved.profile },
|
|
@@ -71564,6 +71623,7 @@ var DEFAULT_RAW_CONFIG;
|
|
|
71564
71623
|
var init_loader2 = __esm(() => {
|
|
71565
71624
|
init_main();
|
|
71566
71625
|
init_schema();
|
|
71626
|
+
init_disabled_skills();
|
|
71567
71627
|
init_layer_validation();
|
|
71568
71628
|
init_merge();
|
|
71569
71629
|
init_paths();
|
|
@@ -75036,7 +75096,7 @@ init_shared();
|
|
|
75036
75096
|
// package.json
|
|
75037
75097
|
var package_default = {
|
|
75038
75098
|
name: "oh-my-opencode",
|
|
75039
|
-
version: "5.1.
|
|
75099
|
+
version: "5.1.43",
|
|
75040
75100
|
description: "The Best AI Agent Harness - Batteries-Included OpenCode Plugin with Multi-Model Orchestration, Parallel Background Agents, and Crafted LSP/AST Tools",
|
|
75041
75101
|
main: "./dist/index.js",
|
|
75042
75102
|
types: "dist/index.d.ts",
|
|
@@ -75213,7 +75273,7 @@ var package_default = {
|
|
|
75213
75273
|
},
|
|
75214
75274
|
devDependencies: {
|
|
75215
75275
|
"@clack/prompts": "^1.8.1",
|
|
75216
|
-
"@code-yeongyu/senpi": "2026.10.21-
|
|
75276
|
+
"@code-yeongyu/senpi": "2026.10.21-2",
|
|
75217
75277
|
"@modelcontextprotocol/sdk": "^1.30.0",
|
|
75218
75278
|
"@oh-my-opencode/agents-md-core": "workspace:*",
|
|
75219
75279
|
"@oh-my-opencode/ast-grep-mcp": "workspace:*",
|
|
@@ -75274,18 +75334,18 @@ var package_default = {
|
|
|
75274
75334
|
typescript: "^7.0.2"
|
|
75275
75335
|
},
|
|
75276
75336
|
optionalDependencies: {
|
|
75277
|
-
"oh-my-opencode-darwin-arm64": "5.1.
|
|
75278
|
-
"oh-my-opencode-darwin-x64": "5.1.
|
|
75279
|
-
"oh-my-opencode-darwin-x64-baseline": "5.1.
|
|
75280
|
-
"oh-my-opencode-linux-arm64": "5.1.
|
|
75281
|
-
"oh-my-opencode-linux-arm64-musl": "5.1.
|
|
75282
|
-
"oh-my-opencode-linux-x64": "5.1.
|
|
75283
|
-
"oh-my-opencode-linux-x64-baseline": "5.1.
|
|
75284
|
-
"oh-my-opencode-linux-x64-musl": "5.1.
|
|
75285
|
-
"oh-my-opencode-linux-x64-musl-baseline": "5.1.
|
|
75286
|
-
"oh-my-opencode-windows-arm64": "5.1.
|
|
75287
|
-
"oh-my-opencode-windows-x64": "5.1.
|
|
75288
|
-
"oh-my-opencode-windows-x64-baseline": "5.1.
|
|
75337
|
+
"oh-my-opencode-darwin-arm64": "5.1.43",
|
|
75338
|
+
"oh-my-opencode-darwin-x64": "5.1.43",
|
|
75339
|
+
"oh-my-opencode-darwin-x64-baseline": "5.1.43",
|
|
75340
|
+
"oh-my-opencode-linux-arm64": "5.1.43",
|
|
75341
|
+
"oh-my-opencode-linux-arm64-musl": "5.1.43",
|
|
75342
|
+
"oh-my-opencode-linux-x64": "5.1.43",
|
|
75343
|
+
"oh-my-opencode-linux-x64-baseline": "5.1.43",
|
|
75344
|
+
"oh-my-opencode-linux-x64-musl": "5.1.43",
|
|
75345
|
+
"oh-my-opencode-linux-x64-musl-baseline": "5.1.43",
|
|
75346
|
+
"oh-my-opencode-windows-arm64": "5.1.43",
|
|
75347
|
+
"oh-my-opencode-windows-x64": "5.1.43",
|
|
75348
|
+
"oh-my-opencode-windows-x64-baseline": "5.1.43"
|
|
75289
75349
|
},
|
|
75290
75350
|
overrides: {
|
|
75291
75351
|
hono: "^4.13.8",
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "oh-my-opencode",
|
|
3
|
-
"version": "5.1.
|
|
3
|
+
"version": "5.1.43",
|
|
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.21-
|
|
180
|
+
"@code-yeongyu/senpi": "2026.10.21-2",
|
|
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:*",
|
|
@@ -238,18 +238,18 @@
|
|
|
238
238
|
"typescript": "^7.0.2"
|
|
239
239
|
},
|
|
240
240
|
"optionalDependencies": {
|
|
241
|
-
"oh-my-opencode-darwin-arm64": "5.1.
|
|
242
|
-
"oh-my-opencode-darwin-x64": "5.1.
|
|
243
|
-
"oh-my-opencode-darwin-x64-baseline": "5.1.
|
|
244
|
-
"oh-my-opencode-linux-arm64": "5.1.
|
|
245
|
-
"oh-my-opencode-linux-arm64-musl": "5.1.
|
|
246
|
-
"oh-my-opencode-linux-x64": "5.1.
|
|
247
|
-
"oh-my-opencode-linux-x64-baseline": "5.1.
|
|
248
|
-
"oh-my-opencode-linux-x64-musl": "5.1.
|
|
249
|
-
"oh-my-opencode-linux-x64-musl-baseline": "5.1.
|
|
250
|
-
"oh-my-opencode-windows-arm64": "5.1.
|
|
251
|
-
"oh-my-opencode-windows-x64": "5.1.
|
|
252
|
-
"oh-my-opencode-windows-x64-baseline": "5.1.
|
|
241
|
+
"oh-my-opencode-darwin-arm64": "5.1.43",
|
|
242
|
+
"oh-my-opencode-darwin-x64": "5.1.43",
|
|
243
|
+
"oh-my-opencode-darwin-x64-baseline": "5.1.43",
|
|
244
|
+
"oh-my-opencode-linux-arm64": "5.1.43",
|
|
245
|
+
"oh-my-opencode-linux-arm64-musl": "5.1.43",
|
|
246
|
+
"oh-my-opencode-linux-x64": "5.1.43",
|
|
247
|
+
"oh-my-opencode-linux-x64-baseline": "5.1.43",
|
|
248
|
+
"oh-my-opencode-linux-x64-musl": "5.1.43",
|
|
249
|
+
"oh-my-opencode-linux-x64-musl-baseline": "5.1.43",
|
|
250
|
+
"oh-my-opencode-windows-arm64": "5.1.43",
|
|
251
|
+
"oh-my-opencode-windows-x64": "5.1.43",
|
|
252
|
+
"oh-my-opencode-windows-x64-baseline": "5.1.43"
|
|
253
253
|
},
|
|
254
254
|
"overrides": {
|
|
255
255
|
"hono": "^4.13.8",
|