lazycodex-ai 5.1.6 → 5.1.8
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 +49 -45
- package/dist/cli/run/runnable-agent-resolver.d.ts +3 -0
- package/dist/cli-node/index.js +49 -45
- package/package.json +1 -1
- package/packages/omo-codex/plugin/.codex-plugin/plugin.json +1 -1
- package/packages/omo-codex/plugin/components/bootstrap/dist/cli.js +13 -3
- 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/bootstrap/test/download.test.ts +0 -16
- package/packages/omo-codex/plugin/components/bootstrap/test/environment.test.ts +3 -0
- 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/lsp/test/package-smoke.test.ts +0 -27
- package/packages/omo-codex/plugin/components/rules/README.md +0 -1
- package/packages/omo-codex/plugin/components/rules/bundled-rules/hephaestus/gpt-5.5.md +1 -1
- package/packages/omo-codex/plugin/components/rules/bundled-rules/hephaestus/gpt-5.6.md +1 -1
- package/packages/omo-codex/plugin/components/rules/bundled-rules/hephaestus/gpt-6.md +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/ultrawork/test/directive-source.test.ts +0 -6
- package/packages/omo-codex/plugin/components/ultrawork/test/package-smoke.test.ts +0 -15
- 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/components/ulw-loop/test/spawn-role-matrix.test.ts +16 -0
- 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/plugin/skills/debugging/SKILL.md +1 -1
- package/packages/omo-codex/plugin/skills/debugging/references/methodology/06-fix.md +8 -0
- package/packages/omo-codex/plugin/test/AGENTS.md +11 -0
- package/packages/omo-codex/plugin/test/component-bundled-cli.test.mjs +0 -50
- package/packages/omo-codex/scripts/install-dist/install-local.mjs +15 -5
- package/packages/shared-skills/skills/browser/runtime/omowright/manifest.json +1 -1
- package/packages/shared-skills/skills/debugging/SKILL.md +1 -1
- package/packages/shared-skills/skills/debugging/references/methodology/06-fix.md +8 -0
package/dist/cli/index.js
CHANGED
|
@@ -64,7 +64,7 @@ var package_default;
|
|
|
64
64
|
var init_package = __esm(() => {
|
|
65
65
|
package_default = {
|
|
66
66
|
name: "oh-my-opencode",
|
|
67
|
-
version: "5.1.
|
|
67
|
+
version: "5.1.8",
|
|
68
68
|
description: "The Best AI Agent Harness - Batteries-Included OpenCode Plugin with Multi-Model Orchestration, Parallel Background Agents, and Crafted LSP/AST Tools",
|
|
69
69
|
main: "./dist/index.js",
|
|
70
70
|
types: "dist/index.d.ts",
|
|
@@ -241,7 +241,7 @@ var init_package = __esm(() => {
|
|
|
241
241
|
},
|
|
242
242
|
devDependencies: {
|
|
243
243
|
"@clack/prompts": "^1.8.1",
|
|
244
|
-
"@code-yeongyu/senpi": "2026.
|
|
244
|
+
"@code-yeongyu/senpi": "2026.10.1-2",
|
|
245
245
|
"@modelcontextprotocol/sdk": "^1.30.0",
|
|
246
246
|
"@oh-my-opencode/agents-md-core": "workspace:*",
|
|
247
247
|
"@oh-my-opencode/ast-grep-mcp": "workspace:*",
|
|
@@ -299,18 +299,18 @@ var init_package = __esm(() => {
|
|
|
299
299
|
typescript: "^7.0.2"
|
|
300
300
|
},
|
|
301
301
|
optionalDependencies: {
|
|
302
|
-
"oh-my-opencode-darwin-arm64": "5.1.
|
|
303
|
-
"oh-my-opencode-darwin-x64": "5.1.
|
|
304
|
-
"oh-my-opencode-darwin-x64-baseline": "5.1.
|
|
305
|
-
"oh-my-opencode-linux-arm64": "5.1.
|
|
306
|
-
"oh-my-opencode-linux-arm64-musl": "5.1.
|
|
307
|
-
"oh-my-opencode-linux-x64": "5.1.
|
|
308
|
-
"oh-my-opencode-linux-x64-baseline": "5.1.
|
|
309
|
-
"oh-my-opencode-linux-x64-musl": "5.1.
|
|
310
|
-
"oh-my-opencode-linux-x64-musl-baseline": "5.1.
|
|
311
|
-
"oh-my-opencode-windows-arm64": "5.1.
|
|
312
|
-
"oh-my-opencode-windows-x64": "5.1.
|
|
313
|
-
"oh-my-opencode-windows-x64-baseline": "5.1.
|
|
302
|
+
"oh-my-opencode-darwin-arm64": "5.1.8",
|
|
303
|
+
"oh-my-opencode-darwin-x64": "5.1.8",
|
|
304
|
+
"oh-my-opencode-darwin-x64-baseline": "5.1.8",
|
|
305
|
+
"oh-my-opencode-linux-arm64": "5.1.8",
|
|
306
|
+
"oh-my-opencode-linux-arm64-musl": "5.1.8",
|
|
307
|
+
"oh-my-opencode-linux-x64": "5.1.8",
|
|
308
|
+
"oh-my-opencode-linux-x64-baseline": "5.1.8",
|
|
309
|
+
"oh-my-opencode-linux-x64-musl": "5.1.8",
|
|
310
|
+
"oh-my-opencode-linux-x64-musl-baseline": "5.1.8",
|
|
311
|
+
"oh-my-opencode-windows-arm64": "5.1.8",
|
|
312
|
+
"oh-my-opencode-windows-x64": "5.1.8",
|
|
313
|
+
"oh-my-opencode-windows-x64-baseline": "5.1.8"
|
|
314
314
|
},
|
|
315
315
|
overrides: {
|
|
316
316
|
hono: "^4.13.8",
|
|
@@ -7407,7 +7407,7 @@ var init_category_model_requirements = __esm(() => {
|
|
|
7407
7407
|
{
|
|
7408
7408
|
providers: ["openai", "chatgpt-subscription", "github-copilot", "opencode"],
|
|
7409
7409
|
model: "gpt-6-astra",
|
|
7410
|
-
variant: "
|
|
7410
|
+
variant: "high"
|
|
7411
7411
|
}
|
|
7412
7412
|
]
|
|
7413
7413
|
},
|
|
@@ -9516,7 +9516,7 @@ var init_openai_categories = __esm(() => {
|
|
|
9516
9516
|
},
|
|
9517
9517
|
{
|
|
9518
9518
|
name: "deep-high",
|
|
9519
|
-
config: { model: "openai/gpt-6-astra", variant: "
|
|
9519
|
+
config: { model: "openai/gpt-6-astra", variant: "high" },
|
|
9520
9520
|
description: "Escalation deep lane: a goal whose central decision cannot be settled from evidence alone. Same one-goal, one-deliverable contract as deep-low.",
|
|
9521
9521
|
callerGuidance: DEEP_HIGH_CATEGORY_CALLER_GUIDANCE,
|
|
9522
9522
|
promptAppend: DEEP_HIGH_CATEGORY_PROMPT_APPEND,
|
|
@@ -68191,28 +68191,6 @@ var init_legacy_workspace_migration = __esm(() => {
|
|
|
68191
68191
|
// packages/omo-opencode/src/shared/model-string-parser.ts
|
|
68192
68192
|
var init_model_string_parser2 = () => {};
|
|
68193
68193
|
|
|
68194
|
-
// packages/omo-opencode/src/shared/excluded-dirs.ts
|
|
68195
|
-
var EXCLUDED_DIR_NAMES, EXCLUDED_DIRS;
|
|
68196
|
-
var init_excluded_dirs = __esm(() => {
|
|
68197
|
-
EXCLUDED_DIR_NAMES = [
|
|
68198
|
-
"node_modules",
|
|
68199
|
-
".git",
|
|
68200
|
-
"dist",
|
|
68201
|
-
"build",
|
|
68202
|
-
".next",
|
|
68203
|
-
".omo",
|
|
68204
|
-
".sisyphus",
|
|
68205
|
-
".turbo",
|
|
68206
|
-
"coverage",
|
|
68207
|
-
"out",
|
|
68208
|
-
".cache",
|
|
68209
|
-
".vscode-test",
|
|
68210
|
-
"target",
|
|
68211
|
-
".local-ignore"
|
|
68212
|
-
];
|
|
68213
|
-
EXCLUDED_DIRS = Object.freeze(new Set(EXCLUDED_DIR_NAMES));
|
|
68214
|
-
});
|
|
68215
|
-
|
|
68216
68194
|
// packages/omo-opencode/src/shared/replace-tool-args.ts
|
|
68217
68195
|
var init_replace_tool_args = () => {};
|
|
68218
68196
|
|
|
@@ -68223,7 +68201,6 @@ var init_shared = __esm(() => {
|
|
|
68223
68201
|
init_model_resolution_pipeline();
|
|
68224
68202
|
init_session_category_registry();
|
|
68225
68203
|
init_model_string_parser2();
|
|
68226
|
-
init_excluded_dirs();
|
|
68227
68204
|
init_frontmatter2();
|
|
68228
68205
|
init_command_executor2();
|
|
68229
68206
|
init_contains_path2();
|
|
@@ -74610,7 +74587,8 @@ var init_memory = __esm(() => {
|
|
|
74610
74587
|
event_caps: OmoMemoryRecallEventCapsSchema.default({ tool_args: 400, result_head: 600, assistant: 1500, prompt: 4000 }),
|
|
74611
74588
|
sidecar_max_tokens: number2().int().positive().default(48000),
|
|
74612
74589
|
max_concurrent_wakes: number2().int().positive().default(2),
|
|
74613
|
-
tool_budget: number2().int().positive().default(8)
|
|
74590
|
+
tool_budget: number2().int().positive().default(8),
|
|
74591
|
+
query_expansion: boolean2().default(false)
|
|
74614
74592
|
}).strict();
|
|
74615
74593
|
OmoMemoryNudgeSchema = object({
|
|
74616
74594
|
enabled: boolean2().default(true),
|
|
@@ -74671,7 +74649,8 @@ var init_memory = __esm(() => {
|
|
|
74671
74649
|
event_caps: OmoMemoryRecallEventCapsLayerSchema.optional(),
|
|
74672
74650
|
sidecar_max_tokens: number2().int().positive().optional(),
|
|
74673
74651
|
max_concurrent_wakes: number2().int().positive().optional(),
|
|
74674
|
-
tool_budget: number2().int().positive().optional()
|
|
74652
|
+
tool_budget: number2().int().positive().optional(),
|
|
74653
|
+
query_expansion: boolean2().optional()
|
|
74675
74654
|
}).strict();
|
|
74676
74655
|
OmoMemoryNudgeLayerSchema = object({
|
|
74677
74656
|
enabled: boolean2().optional(),
|
|
@@ -74748,7 +74727,8 @@ var init_memory = __esm(() => {
|
|
|
74748
74727
|
event_caps: { tool_args: 400, result_head: 600, assistant: 1500, prompt: 4000 },
|
|
74749
74728
|
sidecar_max_tokens: 48000,
|
|
74750
74729
|
max_concurrent_wakes: 2,
|
|
74751
|
-
tool_budget: 8
|
|
74730
|
+
tool_budget: 8,
|
|
74731
|
+
query_expansion: false
|
|
74752
74732
|
}),
|
|
74753
74733
|
compile_warn_tokens: number2().int().positive().default(30000),
|
|
74754
74734
|
agents: record(string2(), OmoMemoryAgentOverridesSchema).default({})
|
|
@@ -89377,7 +89357,7 @@ var package_default2;
|
|
|
89377
89357
|
var init_package2 = __esm(() => {
|
|
89378
89358
|
package_default2 = {
|
|
89379
89359
|
name: "@oh-my-opencode/omo-codex",
|
|
89380
|
-
version: "5.1.
|
|
89360
|
+
version: "5.1.8",
|
|
89381
89361
|
type: "module",
|
|
89382
89362
|
private: true,
|
|
89383
89363
|
description: "Codex harness adapter for oh-my-openagent. Vendored Codex plugin namespace (omo) + TypeScript installer + telemetry.",
|
|
@@ -95097,6 +95077,12 @@ ${featureName} = true
|
|
|
95097
95077
|
}
|
|
95098
95078
|
return replaceOrInsertSetting(config, section, featureName, "true");
|
|
95099
95079
|
}
|
|
95080
|
+
function removeFeature(config, featureName) {
|
|
95081
|
+
const section = findTomlSection(config, "features");
|
|
95082
|
+
if (section !== null)
|
|
95083
|
+
return removeSetting(config, section, featureName);
|
|
95084
|
+
return removeRootSetting(config, `features.${featureName}`);
|
|
95085
|
+
}
|
|
95100
95086
|
|
|
95101
95087
|
// packages/omo-codex/src/install/codex-config-marketplaces.ts
|
|
95102
95088
|
var SISYPHUS_LEGACY_MARKETPLACES = ["lazycodex", "code-yeongyu-codex-plugins"];
|
|
@@ -95689,6 +95675,7 @@ async function updateCodexConfig(input) {
|
|
|
95689
95675
|
config = ensureFeatureEnabled(config, "plugins");
|
|
95690
95676
|
config = ensureFeatureEnabled(config, "plugin_hooks");
|
|
95691
95677
|
config = ensureFeatureEnabled(config, "multi_agent");
|
|
95678
|
+
config = removeFeature(config, "child_agents_md");
|
|
95692
95679
|
config = removeUnsupportedCodexMultiAgentModeConfig(config);
|
|
95693
95680
|
config = ensureCodexReasoningConfig(config, applyReasoningOverride(await readCodexModelCatalog(input.repoRoot), input.reasoning));
|
|
95694
95681
|
config = ensureCodexMultiAgentV2Config(config, {
|
|
@@ -105346,12 +105333,25 @@ async function resolveRunnableRunAgent(client, resolvedAgent, config = {}) {
|
|
|
105346
105333
|
})?.name;
|
|
105347
105334
|
if (configuredAgent)
|
|
105348
105335
|
return configuredAgent;
|
|
105349
|
-
|
|
105336
|
+
const matched = agents.find((agent) => {
|
|
105350
105337
|
if (!agent.name)
|
|
105351
105338
|
return false;
|
|
105352
105339
|
return getAgentConfigKey(agent.name) === resolvedConfigKey;
|
|
105353
|
-
})?.name
|
|
105340
|
+
})?.name;
|
|
105341
|
+
if (matched)
|
|
105342
|
+
return matched;
|
|
105343
|
+
const registered = agents.map((agent) => agent.name).filter((name) => Boolean(name));
|
|
105344
|
+
const parsedCategory = BuiltinCategoryNameSchema.safeParse(resolvedConfigKey);
|
|
105345
|
+
if (parsedCategory.success) {
|
|
105346
|
+
throw new UnknownRunAgentError(`"${resolvedAgent}" is a task() category, not a CLI agent. Categories: ${BuiltinCategoryNameSchema.options.join(", ")}. Runnable agents: ${registered.join(", ") || "(none)"}.`);
|
|
105347
|
+
}
|
|
105348
|
+
if (registered.length > 0) {
|
|
105349
|
+
throw new UnknownRunAgentError(`Unknown agent "${resolvedAgent}". Runnable agents: ${registered.join(", ")}.`);
|
|
105350
|
+
}
|
|
105351
|
+
return resolvedAgent;
|
|
105354
105352
|
} catch (error) {
|
|
105353
|
+
if (error instanceof UnknownRunAgentError)
|
|
105354
|
+
throw error;
|
|
105355
105355
|
if (!(error instanceof Error)) {
|
|
105356
105356
|
throw error;
|
|
105357
105357
|
}
|
|
@@ -105359,6 +105359,10 @@ async function resolveRunnableRunAgent(client, resolvedAgent, config = {}) {
|
|
|
105359
105359
|
}
|
|
105360
105360
|
}
|
|
105361
105361
|
|
|
105362
|
+
class UnknownRunAgentError extends Error {
|
|
105363
|
+
name = "UnknownRunAgentError";
|
|
105364
|
+
}
|
|
105365
|
+
|
|
105362
105366
|
// packages/omo-opencode/src/cli/run/runner.ts
|
|
105363
105367
|
var EVENT_PROCESSOR_SHUTDOWN_TIMEOUT_MS = 2000;
|
|
105364
105368
|
async function waitForEventProcessorShutdown(eventProcessor, timeoutMs = EVENT_PROCESSOR_SHUTDOWN_TIMEOUT_MS) {
|
|
@@ -9,3 +9,6 @@ export interface RunAgentDisplayNameConfig {
|
|
|
9
9
|
} | undefined>>;
|
|
10
10
|
}
|
|
11
11
|
export declare function resolveRunnableRunAgent(client: RunAgentListClient, resolvedAgent: string, config?: RunAgentDisplayNameConfig): Promise<string>;
|
|
12
|
+
export declare class UnknownRunAgentError extends Error {
|
|
13
|
+
readonly name = "UnknownRunAgentError";
|
|
14
|
+
}
|
package/dist/cli-node/index.js
CHANGED
|
@@ -65,7 +65,7 @@ var package_default;
|
|
|
65
65
|
var init_package = __esm(() => {
|
|
66
66
|
package_default = {
|
|
67
67
|
name: "oh-my-opencode",
|
|
68
|
-
version: "5.1.
|
|
68
|
+
version: "5.1.8",
|
|
69
69
|
description: "The Best AI Agent Harness - Batteries-Included OpenCode Plugin with Multi-Model Orchestration, Parallel Background Agents, and Crafted LSP/AST Tools",
|
|
70
70
|
main: "./dist/index.js",
|
|
71
71
|
types: "dist/index.d.ts",
|
|
@@ -242,7 +242,7 @@ var init_package = __esm(() => {
|
|
|
242
242
|
},
|
|
243
243
|
devDependencies: {
|
|
244
244
|
"@clack/prompts": "^1.8.1",
|
|
245
|
-
"@code-yeongyu/senpi": "2026.
|
|
245
|
+
"@code-yeongyu/senpi": "2026.10.1-2",
|
|
246
246
|
"@modelcontextprotocol/sdk": "^1.30.0",
|
|
247
247
|
"@oh-my-opencode/agents-md-core": "workspace:*",
|
|
248
248
|
"@oh-my-opencode/ast-grep-mcp": "workspace:*",
|
|
@@ -300,18 +300,18 @@ var init_package = __esm(() => {
|
|
|
300
300
|
typescript: "^7.0.2"
|
|
301
301
|
},
|
|
302
302
|
optionalDependencies: {
|
|
303
|
-
"oh-my-opencode-darwin-arm64": "5.1.
|
|
304
|
-
"oh-my-opencode-darwin-x64": "5.1.
|
|
305
|
-
"oh-my-opencode-darwin-x64-baseline": "5.1.
|
|
306
|
-
"oh-my-opencode-linux-arm64": "5.1.
|
|
307
|
-
"oh-my-opencode-linux-arm64-musl": "5.1.
|
|
308
|
-
"oh-my-opencode-linux-x64": "5.1.
|
|
309
|
-
"oh-my-opencode-linux-x64-baseline": "5.1.
|
|
310
|
-
"oh-my-opencode-linux-x64-musl": "5.1.
|
|
311
|
-
"oh-my-opencode-linux-x64-musl-baseline": "5.1.
|
|
312
|
-
"oh-my-opencode-windows-arm64": "5.1.
|
|
313
|
-
"oh-my-opencode-windows-x64": "5.1.
|
|
314
|
-
"oh-my-opencode-windows-x64-baseline": "5.1.
|
|
303
|
+
"oh-my-opencode-darwin-arm64": "5.1.8",
|
|
304
|
+
"oh-my-opencode-darwin-x64": "5.1.8",
|
|
305
|
+
"oh-my-opencode-darwin-x64-baseline": "5.1.8",
|
|
306
|
+
"oh-my-opencode-linux-arm64": "5.1.8",
|
|
307
|
+
"oh-my-opencode-linux-arm64-musl": "5.1.8",
|
|
308
|
+
"oh-my-opencode-linux-x64": "5.1.8",
|
|
309
|
+
"oh-my-opencode-linux-x64-baseline": "5.1.8",
|
|
310
|
+
"oh-my-opencode-linux-x64-musl": "5.1.8",
|
|
311
|
+
"oh-my-opencode-linux-x64-musl-baseline": "5.1.8",
|
|
312
|
+
"oh-my-opencode-windows-arm64": "5.1.8",
|
|
313
|
+
"oh-my-opencode-windows-x64": "5.1.8",
|
|
314
|
+
"oh-my-opencode-windows-x64-baseline": "5.1.8"
|
|
315
315
|
},
|
|
316
316
|
overrides: {
|
|
317
317
|
hono: "^4.13.8",
|
|
@@ -7408,7 +7408,7 @@ var init_category_model_requirements = __esm(() => {
|
|
|
7408
7408
|
{
|
|
7409
7409
|
providers: ["openai", "chatgpt-subscription", "github-copilot", "opencode"],
|
|
7410
7410
|
model: "gpt-6-astra",
|
|
7411
|
-
variant: "
|
|
7411
|
+
variant: "high"
|
|
7412
7412
|
}
|
|
7413
7413
|
]
|
|
7414
7414
|
},
|
|
@@ -9517,7 +9517,7 @@ var init_openai_categories = __esm(() => {
|
|
|
9517
9517
|
},
|
|
9518
9518
|
{
|
|
9519
9519
|
name: "deep-high",
|
|
9520
|
-
config: { model: "openai/gpt-6-astra", variant: "
|
|
9520
|
+
config: { model: "openai/gpt-6-astra", variant: "high" },
|
|
9521
9521
|
description: "Escalation deep lane: a goal whose central decision cannot be settled from evidence alone. Same one-goal, one-deliverable contract as deep-low.",
|
|
9522
9522
|
callerGuidance: DEEP_HIGH_CATEGORY_CALLER_GUIDANCE,
|
|
9523
9523
|
promptAppend: DEEP_HIGH_CATEGORY_PROMPT_APPEND,
|
|
@@ -68270,28 +68270,6 @@ var init_legacy_workspace_migration = __esm(() => {
|
|
|
68270
68270
|
// packages/omo-opencode/src/shared/model-string-parser.ts
|
|
68271
68271
|
var init_model_string_parser2 = () => {};
|
|
68272
68272
|
|
|
68273
|
-
// packages/omo-opencode/src/shared/excluded-dirs.ts
|
|
68274
|
-
var EXCLUDED_DIR_NAMES, EXCLUDED_DIRS;
|
|
68275
|
-
var init_excluded_dirs = __esm(() => {
|
|
68276
|
-
EXCLUDED_DIR_NAMES = [
|
|
68277
|
-
"node_modules",
|
|
68278
|
-
".git",
|
|
68279
|
-
"dist",
|
|
68280
|
-
"build",
|
|
68281
|
-
".next",
|
|
68282
|
-
".omo",
|
|
68283
|
-
".sisyphus",
|
|
68284
|
-
".turbo",
|
|
68285
|
-
"coverage",
|
|
68286
|
-
"out",
|
|
68287
|
-
".cache",
|
|
68288
|
-
".vscode-test",
|
|
68289
|
-
"target",
|
|
68290
|
-
".local-ignore"
|
|
68291
|
-
];
|
|
68292
|
-
EXCLUDED_DIRS = Object.freeze(new Set(EXCLUDED_DIR_NAMES));
|
|
68293
|
-
});
|
|
68294
|
-
|
|
68295
68273
|
// packages/omo-opencode/src/shared/replace-tool-args.ts
|
|
68296
68274
|
var init_replace_tool_args = () => {};
|
|
68297
68275
|
|
|
@@ -68302,7 +68280,6 @@ var init_shared = __esm(() => {
|
|
|
68302
68280
|
init_model_resolution_pipeline();
|
|
68303
68281
|
init_session_category_registry();
|
|
68304
68282
|
init_model_string_parser2();
|
|
68305
|
-
init_excluded_dirs();
|
|
68306
68283
|
init_frontmatter2();
|
|
68307
68284
|
init_command_executor2();
|
|
68308
68285
|
init_contains_path2();
|
|
@@ -74689,7 +74666,8 @@ var init_memory = __esm(() => {
|
|
|
74689
74666
|
event_caps: OmoMemoryRecallEventCapsSchema.default({ tool_args: 400, result_head: 600, assistant: 1500, prompt: 4000 }),
|
|
74690
74667
|
sidecar_max_tokens: number2().int().positive().default(48000),
|
|
74691
74668
|
max_concurrent_wakes: number2().int().positive().default(2),
|
|
74692
|
-
tool_budget: number2().int().positive().default(8)
|
|
74669
|
+
tool_budget: number2().int().positive().default(8),
|
|
74670
|
+
query_expansion: boolean2().default(false)
|
|
74693
74671
|
}).strict();
|
|
74694
74672
|
OmoMemoryNudgeSchema = object({
|
|
74695
74673
|
enabled: boolean2().default(true),
|
|
@@ -74750,7 +74728,8 @@ var init_memory = __esm(() => {
|
|
|
74750
74728
|
event_caps: OmoMemoryRecallEventCapsLayerSchema.optional(),
|
|
74751
74729
|
sidecar_max_tokens: number2().int().positive().optional(),
|
|
74752
74730
|
max_concurrent_wakes: number2().int().positive().optional(),
|
|
74753
|
-
tool_budget: number2().int().positive().optional()
|
|
74731
|
+
tool_budget: number2().int().positive().optional(),
|
|
74732
|
+
query_expansion: boolean2().optional()
|
|
74754
74733
|
}).strict();
|
|
74755
74734
|
OmoMemoryNudgeLayerSchema = object({
|
|
74756
74735
|
enabled: boolean2().optional(),
|
|
@@ -74827,7 +74806,8 @@ var init_memory = __esm(() => {
|
|
|
74827
74806
|
event_caps: { tool_args: 400, result_head: 600, assistant: 1500, prompt: 4000 },
|
|
74828
74807
|
sidecar_max_tokens: 48000,
|
|
74829
74808
|
max_concurrent_wakes: 2,
|
|
74830
|
-
tool_budget: 8
|
|
74809
|
+
tool_budget: 8,
|
|
74810
|
+
query_expansion: false
|
|
74831
74811
|
}),
|
|
74832
74812
|
compile_warn_tokens: number2().int().positive().default(30000),
|
|
74833
74813
|
agents: record(string2(), OmoMemoryAgentOverridesSchema).default({})
|
|
@@ -89456,7 +89436,7 @@ var package_default2;
|
|
|
89456
89436
|
var init_package2 = __esm(() => {
|
|
89457
89437
|
package_default2 = {
|
|
89458
89438
|
name: "@oh-my-opencode/omo-codex",
|
|
89459
|
-
version: "5.1.
|
|
89439
|
+
version: "5.1.8",
|
|
89460
89440
|
type: "module",
|
|
89461
89441
|
private: true,
|
|
89462
89442
|
description: "Codex harness adapter for oh-my-openagent. Vendored Codex plugin namespace (omo) + TypeScript installer + telemetry.",
|
|
@@ -95176,6 +95156,12 @@ ${featureName} = true
|
|
|
95176
95156
|
}
|
|
95177
95157
|
return replaceOrInsertSetting(config, section, featureName, "true");
|
|
95178
95158
|
}
|
|
95159
|
+
function removeFeature(config, featureName) {
|
|
95160
|
+
const section = findTomlSection(config, "features");
|
|
95161
|
+
if (section !== null)
|
|
95162
|
+
return removeSetting(config, section, featureName);
|
|
95163
|
+
return removeRootSetting(config, `features.${featureName}`);
|
|
95164
|
+
}
|
|
95179
95165
|
|
|
95180
95166
|
// packages/omo-codex/src/install/codex-config-marketplaces.ts
|
|
95181
95167
|
var SISYPHUS_LEGACY_MARKETPLACES = ["lazycodex", "code-yeongyu-codex-plugins"];
|
|
@@ -95768,6 +95754,7 @@ async function updateCodexConfig(input) {
|
|
|
95768
95754
|
config = ensureFeatureEnabled(config, "plugins");
|
|
95769
95755
|
config = ensureFeatureEnabled(config, "plugin_hooks");
|
|
95770
95756
|
config = ensureFeatureEnabled(config, "multi_agent");
|
|
95757
|
+
config = removeFeature(config, "child_agents_md");
|
|
95771
95758
|
config = removeUnsupportedCodexMultiAgentModeConfig(config);
|
|
95772
95759
|
config = ensureCodexReasoningConfig(config, applyReasoningOverride(await readCodexModelCatalog(input.repoRoot), input.reasoning));
|
|
95773
95760
|
config = ensureCodexMultiAgentV2Config(config, {
|
|
@@ -105425,12 +105412,25 @@ async function resolveRunnableRunAgent(client, resolvedAgent, config = {}) {
|
|
|
105425
105412
|
})?.name;
|
|
105426
105413
|
if (configuredAgent)
|
|
105427
105414
|
return configuredAgent;
|
|
105428
|
-
|
|
105415
|
+
const matched = agents.find((agent) => {
|
|
105429
105416
|
if (!agent.name)
|
|
105430
105417
|
return false;
|
|
105431
105418
|
return getAgentConfigKey(agent.name) === resolvedConfigKey;
|
|
105432
|
-
})?.name
|
|
105419
|
+
})?.name;
|
|
105420
|
+
if (matched)
|
|
105421
|
+
return matched;
|
|
105422
|
+
const registered = agents.map((agent) => agent.name).filter((name) => Boolean(name));
|
|
105423
|
+
const parsedCategory = BuiltinCategoryNameSchema.safeParse(resolvedConfigKey);
|
|
105424
|
+
if (parsedCategory.success) {
|
|
105425
|
+
throw new UnknownRunAgentError(`"${resolvedAgent}" is a task() category, not a CLI agent. Categories: ${BuiltinCategoryNameSchema.options.join(", ")}. Runnable agents: ${registered.join(", ") || "(none)"}.`);
|
|
105426
|
+
}
|
|
105427
|
+
if (registered.length > 0) {
|
|
105428
|
+
throw new UnknownRunAgentError(`Unknown agent "${resolvedAgent}". Runnable agents: ${registered.join(", ")}.`);
|
|
105429
|
+
}
|
|
105430
|
+
return resolvedAgent;
|
|
105433
105431
|
} catch (error) {
|
|
105432
|
+
if (error instanceof UnknownRunAgentError)
|
|
105433
|
+
throw error;
|
|
105434
105434
|
if (!(error instanceof Error)) {
|
|
105435
105435
|
throw error;
|
|
105436
105436
|
}
|
|
@@ -105438,6 +105438,10 @@ async function resolveRunnableRunAgent(client, resolvedAgent, config = {}) {
|
|
|
105438
105438
|
}
|
|
105439
105439
|
}
|
|
105440
105440
|
|
|
105441
|
+
class UnknownRunAgentError extends Error {
|
|
105442
|
+
name = "UnknownRunAgentError";
|
|
105443
|
+
}
|
|
105444
|
+
|
|
105441
105445
|
// packages/omo-opencode/src/cli/run/runner.ts
|
|
105442
105446
|
var EVENT_PROCESSOR_SHUTDOWN_TIMEOUT_MS = 2000;
|
|
105443
105447
|
async function waitForEventProcessorShutdown(eventProcessor, timeoutMs = EVENT_PROCESSOR_SHUTDOWN_TIMEOUT_MS) {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "lazycodex-ai",
|
|
3
|
-
"version": "5.1.
|
|
3
|
+
"version": "5.1.8",
|
|
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",
|
|
@@ -7148,7 +7148,8 @@ var OmoMemoryRecallSchema = object({
|
|
|
7148
7148
|
event_caps: OmoMemoryRecallEventCapsSchema.default({ tool_args: 400, result_head: 600, assistant: 1500, prompt: 4000 }),
|
|
7149
7149
|
sidecar_max_tokens: number2().int().positive().default(48000),
|
|
7150
7150
|
max_concurrent_wakes: number2().int().positive().default(2),
|
|
7151
|
-
tool_budget: number2().int().positive().default(8)
|
|
7151
|
+
tool_budget: number2().int().positive().default(8),
|
|
7152
|
+
query_expansion: boolean2().default(false)
|
|
7152
7153
|
}).strict();
|
|
7153
7154
|
var OmoMemoryNudgeSchema = object({
|
|
7154
7155
|
enabled: boolean2().default(true),
|
|
@@ -7209,7 +7210,8 @@ var OmoMemoryRecallLayerSchema = object({
|
|
|
7209
7210
|
event_caps: OmoMemoryRecallEventCapsLayerSchema.optional(),
|
|
7210
7211
|
sidecar_max_tokens: number2().int().positive().optional(),
|
|
7211
7212
|
max_concurrent_wakes: number2().int().positive().optional(),
|
|
7212
|
-
tool_budget: number2().int().positive().optional()
|
|
7213
|
+
tool_budget: number2().int().positive().optional(),
|
|
7214
|
+
query_expansion: boolean2().optional()
|
|
7213
7215
|
}).strict();
|
|
7214
7216
|
var OmoMemoryNudgeLayerSchema = object({
|
|
7215
7217
|
enabled: boolean2().optional(),
|
|
@@ -7286,7 +7288,8 @@ var OmoMemorySettingsSchema = object({
|
|
|
7286
7288
|
event_caps: { tool_args: 400, result_head: 600, assistant: 1500, prompt: 4000 },
|
|
7287
7289
|
sidecar_max_tokens: 48000,
|
|
7288
7290
|
max_concurrent_wakes: 2,
|
|
7289
|
-
tool_budget: 8
|
|
7291
|
+
tool_budget: 8,
|
|
7292
|
+
query_expansion: false
|
|
7290
7293
|
}),
|
|
7291
7294
|
compile_warn_tokens: number2().int().positive().default(30000),
|
|
7292
7295
|
agents: record(string2(), OmoMemoryAgentOverridesSchema).default({})
|
|
@@ -11223,6 +11226,12 @@ ${featureName} = true
|
|
|
11223
11226
|
}
|
|
11224
11227
|
return replaceOrInsertSetting(config, section, featureName, "true");
|
|
11225
11228
|
}
|
|
11229
|
+
function removeFeature(config, featureName) {
|
|
11230
|
+
const section = findTomlSection(config, "features");
|
|
11231
|
+
if (section !== null)
|
|
11232
|
+
return removeSetting(config, section, featureName);
|
|
11233
|
+
return removeRootSetting(config, `features.${featureName}`);
|
|
11234
|
+
}
|
|
11226
11235
|
|
|
11227
11236
|
// ../src/install/codex-config-marketplaces.ts
|
|
11228
11237
|
var SISYPHUS_LEGACY_MARKETPLACES = ["lazycodex", "code-yeongyu-codex-plugins"];
|
|
@@ -11815,6 +11824,7 @@ async function updateCodexConfig(input) {
|
|
|
11815
11824
|
config = ensureFeatureEnabled(config, "plugins");
|
|
11816
11825
|
config = ensureFeatureEnabled(config, "plugin_hooks");
|
|
11817
11826
|
config = ensureFeatureEnabled(config, "multi_agent");
|
|
11827
|
+
config = removeFeature(config, "child_agents_md");
|
|
11818
11828
|
config = removeUnsupportedCodexMultiAgentModeConfig(config);
|
|
11819
11829
|
config = ensureCodexReasoningConfig(config, applyReasoningOverride(await readCodexModelCatalog(input.repoRoot), input.reasoning));
|
|
11820
11830
|
config = ensureCodexMultiAgentV2Config(config, {
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
"command": "node \"${PLUGIN_ROOT}/components/bootstrap/dist/cli.js\" hook session-start",
|
|
9
9
|
"commandWindows": "powershell -NoProfile -ExecutionPolicy Bypass -File \"${PLUGIN_ROOT}\\components\\bootstrap\\scripts\\bootstrap.ps1\"",
|
|
10
10
|
"timeout": 30,
|
|
11
|
-
"statusMessage": "(OmO 5.1.
|
|
11
|
+
"statusMessage": "(OmO 5.1.8) Checking Bootstrap Provisioning"
|
|
12
12
|
}
|
|
13
13
|
]
|
|
14
14
|
}
|
|
@@ -262,22 +262,6 @@ describe("downloadFromManifest", () => {
|
|
|
262
262
|
});
|
|
263
263
|
|
|
264
264
|
describe("committed manifests", () => {
|
|
265
|
-
it("#given the committed ast-grep manifest #when loaded #then every required platform pins an https URL and a sha256", async () => {
|
|
266
|
-
// given / when
|
|
267
|
-
const manifest = await loadAssetManifest("ast-grep");
|
|
268
|
-
|
|
269
|
-
// then
|
|
270
|
-
expect(manifest.name).toBe("ast-grep");
|
|
271
|
-
expect(manifest.version).toMatch(/^\d+\.\d+\.\d+$/);
|
|
272
|
-
for (const platformKey of ["darwin-arm64", "darwin-x64", "linux-x64", "win32-x64"]) {
|
|
273
|
-
const asset = manifest.platforms[platformKey];
|
|
274
|
-
if (asset === undefined) throw new Error(`missing platform ${platformKey}`);
|
|
275
|
-
expect(asset.url).toStartWith("https://");
|
|
276
|
-
expect(asset.url).toContain(manifest.version);
|
|
277
|
-
expect(asset.sha256).toMatch(/^[a-f0-9]{64}$/);
|
|
278
|
-
}
|
|
279
|
-
});
|
|
280
|
-
|
|
281
265
|
it("#given the committed node manifest #when loaded #then the win32-x64 LTS zip pins an https URL and a sha256", async () => {
|
|
282
266
|
// given / when
|
|
283
267
|
const manifest = await loadAssetManifest("node");
|
|
@@ -373,4 +373,7 @@ async function writeSyncSourceFixture(sourceRoot: string): Promise<void> {
|
|
|
373
373
|
await writeExecutableStub(join(sourceRoot, "packages", "git-bash-mcp", "dist", "cli.js"));
|
|
374
374
|
await writeExecutableStub(join(sourceRoot, "packages", "lsp-tools-mcp", "dist", "cli.js"));
|
|
375
375
|
await writeExecutableStub(join(sourceRoot, "packages", "lsp-daemon", "dist", "cli.js"));
|
|
376
|
+
// The sync bundles the root CLI and its node fallback too (script/lazycodex-runtime-dists.ts).
|
|
377
|
+
await writeExecutableStub(join(sourceRoot, "dist", "cli", "index.js"));
|
|
378
|
+
await writeExecutableStub(join(sourceRoot, "dist", "cli-node", "index.js"));
|
|
376
379
|
}
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
"type": "command",
|
|
9
9
|
"command": "node \"${PLUGIN_ROOT}/dist/cli.js\" hook pre-tool-use",
|
|
10
10
|
"timeout": 5,
|
|
11
|
-
"statusMessage": "(OmO 5.1.
|
|
11
|
+
"statusMessage": "(OmO 5.1.8) Recommending Git Bash MCP"
|
|
12
12
|
}
|
|
13
13
|
]
|
|
14
14
|
}
|
|
@@ -20,7 +20,7 @@
|
|
|
20
20
|
"type": "command",
|
|
21
21
|
"command": "node \"${PLUGIN_ROOT}/dist/cli.js\" hook post-compact",
|
|
22
22
|
"timeout": 5,
|
|
23
|
-
"statusMessage": "(OmO 5.1.
|
|
23
|
+
"statusMessage": "(OmO 5.1.8) Resetting Git Bash MCP Reminder"
|
|
24
24
|
}
|
|
25
25
|
]
|
|
26
26
|
}
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
"type": "command",
|
|
9
9
|
"command": "node \"${PLUGIN_ROOT}/components/lazycodex-executor-verify/dist/cli.js\" hook subagent-stop",
|
|
10
10
|
"timeout": 10,
|
|
11
|
-
"statusMessage": "(OmO 5.1.
|
|
11
|
+
"statusMessage": "(OmO 5.1.8) Verifying LazyCodex Executor Evidence"
|
|
12
12
|
}
|
|
13
13
|
]
|
|
14
14
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"schemaVersion": 1,
|
|
3
|
-
"version": "5.1.
|
|
4
|
-
"inputDigest": "sha256:
|
|
3
|
+
"version": "5.1.8",
|
|
4
|
+
"inputDigest": "sha256:7c96b2202dae9f1403113570ac78a39817b8af2dc767c2c49ff084673798c1c0",
|
|
5
5
|
"outputs": [
|
|
6
6
|
{
|
|
7
7
|
"path": "cli.d.ts",
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
"type": "command",
|
|
9
9
|
"command": "node \"${PLUGIN_ROOT}/dist/cli.js\" hook post-tool-use",
|
|
10
10
|
"timeout": 60,
|
|
11
|
-
"statusMessage": "(OmO 5.1.
|
|
11
|
+
"statusMessage": "(OmO 5.1.8) Checking LSP Diagnostics"
|
|
12
12
|
}
|
|
13
13
|
]
|
|
14
14
|
}
|
|
@@ -21,7 +21,7 @@
|
|
|
21
21
|
"type": "command",
|
|
22
22
|
"command": "node \"${PLUGIN_ROOT}/dist/cli.js\" hook post-compact",
|
|
23
23
|
"timeout": 5,
|
|
24
|
-
"statusMessage": "(OmO 5.1.
|
|
24
|
+
"statusMessage": "(OmO 5.1.8) Resetting LSP Diagnostics Cache"
|
|
25
25
|
}
|
|
26
26
|
]
|
|
27
27
|
}
|