oh-my-opencode 5.1.13 → 5.1.15
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 +18 -17
- package/dist/cli-node/index.js +18 -17
- package/dist/index.js +16 -16
- package/dist/skills/browser/SKILL.md +26 -2
- package/dist/skills/browser/references/commands.md +10 -1
- package/dist/skills/browser/references/install.md +7 -0
- package/dist/skills/browser/runtime/omowright/manifest.json +1 -1
- package/dist/skills/browser/scripts/browser-engine-guard.mjs +506 -0
- package/dist/skills/browser/scripts/omowright.mjs +29 -2
- package/dist/tui.js +16 -16
- package/package.json +14 -14
- package/packages/lsp-core/src/post-edit/not-installed.test.ts +2 -2
- package/packages/lsp-core/src/post-edit/orchestration.test.ts +13 -13
- package/packages/lsp-core/src/post-edit/orchestration.ts +9 -3
- package/packages/omo-codex/plugin/.codex-plugin/plugin.json +1 -1
- 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 +4 -4
- package/packages/omo-codex/plugin/components/lsp/dist/cli.js +33 -19
- package/packages/omo-codex/plugin/components/lsp/dist/codex-hook.js +27 -17
- 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/src/codex-hook.ts +36 -18
- package/packages/omo-codex/plugin/components/lsp/test/codex-hook-not-installed.test.ts +203 -0
- package/packages/omo-codex/plugin/components/rules/CHANGELOG.md +1 -0
- 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/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/SKILL.md +26 -2
- package/packages/omo-codex/plugin/skills/browser/references/commands.md +10 -1
- package/packages/omo-codex/plugin/skills/browser/references/install.md +7 -0
- package/packages/omo-codex/plugin/skills/browser/runtime/omowright/manifest.json +1 -1
- package/packages/omo-codex/plugin/skills/browser/scripts/browser-engine-guard.mjs +506 -0
- package/packages/omo-codex/plugin/skills/browser/scripts/omowright.mjs +29 -2
- package/packages/omo-codex/scripts/install-dist/install-local.mjs +2 -2
- package/packages/shared-skills/skills/browser/SKILL.md +26 -2
- package/packages/shared-skills/skills/browser/references/commands.md +10 -1
- package/packages/shared-skills/skills/browser/references/install.md +7 -0
- package/packages/shared-skills/skills/browser/runtime/omowright/manifest.json +1 -1
- package/packages/shared-skills/skills/browser/scripts/browser-engine-guard.mjs +506 -0
- package/packages/shared-skills/skills/browser/scripts/omowright.mjs +29 -2
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.15",
|
|
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.10.
|
|
244
|
+
"@code-yeongyu/senpi": "2026.10.6",
|
|
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.15",
|
|
303
|
+
"oh-my-opencode-darwin-x64": "5.1.15",
|
|
304
|
+
"oh-my-opencode-darwin-x64-baseline": "5.1.15",
|
|
305
|
+
"oh-my-opencode-linux-arm64": "5.1.15",
|
|
306
|
+
"oh-my-opencode-linux-arm64-musl": "5.1.15",
|
|
307
|
+
"oh-my-opencode-linux-x64": "5.1.15",
|
|
308
|
+
"oh-my-opencode-linux-x64-baseline": "5.1.15",
|
|
309
|
+
"oh-my-opencode-linux-x64-musl": "5.1.15",
|
|
310
|
+
"oh-my-opencode-linux-x64-musl-baseline": "5.1.15",
|
|
311
|
+
"oh-my-opencode-windows-arm64": "5.1.15",
|
|
312
|
+
"oh-my-opencode-windows-x64": "5.1.15",
|
|
313
|
+
"oh-my-opencode-windows-x64-baseline": "5.1.15"
|
|
314
314
|
},
|
|
315
315
|
overrides: {
|
|
316
316
|
hono: "^4.13.8",
|
|
@@ -9493,7 +9493,7 @@ You are working on tasks that don't fit specific categories but require moderate
|
|
|
9493
9493
|
</Category_Context>`, UNSPECIFIED_LOW_CATEGORY_CALLER_GUIDANCE = `<Selection_Gate>Use only when no specialist category fits, effort is moderate, and scope stays within a few files/modules. Prefer any matching specialist category.</Selection_Gate>
|
|
9494
9494
|
<Caller_Warning>Provide explicit must-do steps, forbidden scope, and concrete success criteria.</Caller_Warning>`, UNSPECIFIED_HIGH_CATEGORY_PROMPT_APPEND = `<Category_Context>
|
|
9495
9495
|
You are working on tasks that don't fit specific categories but require substantial effort.
|
|
9496
|
-
</Category_Context>`, UNSPECIFIED_HIGH_CATEGORY_CALLER_GUIDANCE = `<Selection_Gate>Use only when no specialist category fits and substantial effort spans systems/modules with broad impact. Use unspecified-low for contained moderate work.</Selection_Gate>`, DEEP_LOW_CATEGORY_CALLER_GUIDANCE = `<Selection_Gate>
|
|
9496
|
+
</Category_Context>`, UNSPECIFIED_HIGH_CATEGORY_CALLER_GUIDANCE = `<Selection_Gate>Use only when no specialist category fits and substantial effort spans systems/modules with broad impact. Use unspecified-low for contained moderate work.</Selection_Gate>`, DEEP_LOW_CATEGORY_CALLER_GUIDANCE = `<Selection_Gate>Of the two deep lanes this is the default: the child settles its decisions from what it reads. When unsure, choose deep-low; a misrouted child returns \`ESCALATE: deep-high\` after one cheap attempt, and you re-spawn the same brief as deep-high with its findings.</Selection_Gate>`, DEEP_HIGH_CATEGORY_CALLER_GUIDANCE = `<Selection_Gate>Route here only when you can name the decision evidence cannot settle: a trade-off with no single right answer, a contract change crossing a package or process boundary, a mechanism with no in-repo pattern to copy, or correctness argued from invariants rather than observed in a test. Wide scope with easy decisions is deep-low or unspecified-high; reasoning as the deliverable is ultrabrain.</Selection_Gate>`, DEEP_LOW_GATE_MODELS, DEEP_HIGH_GATE_MODEL = "gpt-6-astra", OPENAI_CATEGORIES;
|
|
9497
9497
|
var init_openai_categories = __esm(() => {
|
|
9498
9498
|
init_types();
|
|
9499
9499
|
DEEP_LOW_GATE_MODELS = ["gpt-6.1-sol", "gpt-6.1-sol-fast", "gpt-5.6-sol-fast", "gpt-5.6-sol"];
|
|
@@ -9508,7 +9508,7 @@ var init_openai_categories = __esm(() => {
|
|
|
9508
9508
|
{
|
|
9509
9509
|
name: "deep-low",
|
|
9510
9510
|
config: { model: "openai/gpt-6.1-sol", variant: "medium" },
|
|
9511
|
-
description: "Default deep lane: one goal, one deliverable, decisions the child can settle from what it reads
|
|
9511
|
+
description: "Default deep lane: one goal, one deliverable, decisions the child can settle from what it reads; preferred over deep-high for 3D graphics, computer/browser use, CAPTCHA, multimodal, backend, logic, and algorithm work. Multiple goals fan out as parallel calls.",
|
|
9512
9512
|
callerGuidance: DEEP_LOW_CATEGORY_CALLER_GUIDANCE,
|
|
9513
9513
|
promptAppend: DEEP_LOW_CATEGORY_PROMPT_APPEND,
|
|
9514
9514
|
resolvePromptAppend: resolveDeepLowCategoryPromptAppend,
|
|
@@ -89369,7 +89369,7 @@ var package_default2;
|
|
|
89369
89369
|
var init_package2 = __esm(() => {
|
|
89370
89370
|
package_default2 = {
|
|
89371
89371
|
name: "@oh-my-opencode/omo-codex",
|
|
89372
|
-
version: "5.1.
|
|
89372
|
+
version: "5.1.15",
|
|
89373
89373
|
type: "module",
|
|
89374
89374
|
private: true,
|
|
89375
89375
|
description: "Codex harness adapter for oh-my-openagent. Vendored Codex plugin namespace (omo) + TypeScript installer + telemetry.",
|
|
@@ -98698,6 +98698,7 @@ var REQUIRED_PLUGIN_ARTIFACTS = [
|
|
|
98698
98698
|
join63("extensions", "omo.js"),
|
|
98699
98699
|
join63("extensions", "omo-task.js"),
|
|
98700
98700
|
join63("extensions", "omo-computer-use.js"),
|
|
98701
|
+
join63("extensions", "omo-memory-doctor.js"),
|
|
98701
98702
|
join63("extensions", "assets.generated.json"),
|
|
98702
98703
|
join63("extensions", "omo-member.js"),
|
|
98703
98704
|
join63("extensions", "memory-run-supervisor.mjs"),
|
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.15",
|
|
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.10.
|
|
245
|
+
"@code-yeongyu/senpi": "2026.10.6",
|
|
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.15",
|
|
304
|
+
"oh-my-opencode-darwin-x64": "5.1.15",
|
|
305
|
+
"oh-my-opencode-darwin-x64-baseline": "5.1.15",
|
|
306
|
+
"oh-my-opencode-linux-arm64": "5.1.15",
|
|
307
|
+
"oh-my-opencode-linux-arm64-musl": "5.1.15",
|
|
308
|
+
"oh-my-opencode-linux-x64": "5.1.15",
|
|
309
|
+
"oh-my-opencode-linux-x64-baseline": "5.1.15",
|
|
310
|
+
"oh-my-opencode-linux-x64-musl": "5.1.15",
|
|
311
|
+
"oh-my-opencode-linux-x64-musl-baseline": "5.1.15",
|
|
312
|
+
"oh-my-opencode-windows-arm64": "5.1.15",
|
|
313
|
+
"oh-my-opencode-windows-x64": "5.1.15",
|
|
314
|
+
"oh-my-opencode-windows-x64-baseline": "5.1.15"
|
|
315
315
|
},
|
|
316
316
|
overrides: {
|
|
317
317
|
hono: "^4.13.8",
|
|
@@ -9494,7 +9494,7 @@ You are working on tasks that don't fit specific categories but require moderate
|
|
|
9494
9494
|
</Category_Context>`, UNSPECIFIED_LOW_CATEGORY_CALLER_GUIDANCE = `<Selection_Gate>Use only when no specialist category fits, effort is moderate, and scope stays within a few files/modules. Prefer any matching specialist category.</Selection_Gate>
|
|
9495
9495
|
<Caller_Warning>Provide explicit must-do steps, forbidden scope, and concrete success criteria.</Caller_Warning>`, UNSPECIFIED_HIGH_CATEGORY_PROMPT_APPEND = `<Category_Context>
|
|
9496
9496
|
You are working on tasks that don't fit specific categories but require substantial effort.
|
|
9497
|
-
</Category_Context>`, UNSPECIFIED_HIGH_CATEGORY_CALLER_GUIDANCE = `<Selection_Gate>Use only when no specialist category fits and substantial effort spans systems/modules with broad impact. Use unspecified-low for contained moderate work.</Selection_Gate>`, DEEP_LOW_CATEGORY_CALLER_GUIDANCE = `<Selection_Gate>
|
|
9497
|
+
</Category_Context>`, UNSPECIFIED_HIGH_CATEGORY_CALLER_GUIDANCE = `<Selection_Gate>Use only when no specialist category fits and substantial effort spans systems/modules with broad impact. Use unspecified-low for contained moderate work.</Selection_Gate>`, DEEP_LOW_CATEGORY_CALLER_GUIDANCE = `<Selection_Gate>Of the two deep lanes this is the default: the child settles its decisions from what it reads. When unsure, choose deep-low; a misrouted child returns \`ESCALATE: deep-high\` after one cheap attempt, and you re-spawn the same brief as deep-high with its findings.</Selection_Gate>`, DEEP_HIGH_CATEGORY_CALLER_GUIDANCE = `<Selection_Gate>Route here only when you can name the decision evidence cannot settle: a trade-off with no single right answer, a contract change crossing a package or process boundary, a mechanism with no in-repo pattern to copy, or correctness argued from invariants rather than observed in a test. Wide scope with easy decisions is deep-low or unspecified-high; reasoning as the deliverable is ultrabrain.</Selection_Gate>`, DEEP_LOW_GATE_MODELS, DEEP_HIGH_GATE_MODEL = "gpt-6-astra", OPENAI_CATEGORIES;
|
|
9498
9498
|
var init_openai_categories = __esm(() => {
|
|
9499
9499
|
init_types();
|
|
9500
9500
|
DEEP_LOW_GATE_MODELS = ["gpt-6.1-sol", "gpt-6.1-sol-fast", "gpt-5.6-sol-fast", "gpt-5.6-sol"];
|
|
@@ -9509,7 +9509,7 @@ var init_openai_categories = __esm(() => {
|
|
|
9509
9509
|
{
|
|
9510
9510
|
name: "deep-low",
|
|
9511
9511
|
config: { model: "openai/gpt-6.1-sol", variant: "medium" },
|
|
9512
|
-
description: "Default deep lane: one goal, one deliverable, decisions the child can settle from what it reads
|
|
9512
|
+
description: "Default deep lane: one goal, one deliverable, decisions the child can settle from what it reads; preferred over deep-high for 3D graphics, computer/browser use, CAPTCHA, multimodal, backend, logic, and algorithm work. Multiple goals fan out as parallel calls.",
|
|
9513
9513
|
callerGuidance: DEEP_LOW_CATEGORY_CALLER_GUIDANCE,
|
|
9514
9514
|
promptAppend: DEEP_LOW_CATEGORY_PROMPT_APPEND,
|
|
9515
9515
|
resolvePromptAppend: resolveDeepLowCategoryPromptAppend,
|
|
@@ -89448,7 +89448,7 @@ var package_default2;
|
|
|
89448
89448
|
var init_package2 = __esm(() => {
|
|
89449
89449
|
package_default2 = {
|
|
89450
89450
|
name: "@oh-my-opencode/omo-codex",
|
|
89451
|
-
version: "5.1.
|
|
89451
|
+
version: "5.1.15",
|
|
89452
89452
|
type: "module",
|
|
89453
89453
|
private: true,
|
|
89454
89454
|
description: "Codex harness adapter for oh-my-openagent. Vendored Codex plugin namespace (omo) + TypeScript installer + telemetry.",
|
|
@@ -98777,6 +98777,7 @@ var REQUIRED_PLUGIN_ARTIFACTS = [
|
|
|
98777
98777
|
join63("extensions", "omo.js"),
|
|
98778
98778
|
join63("extensions", "omo-task.js"),
|
|
98779
98779
|
join63("extensions", "omo-computer-use.js"),
|
|
98780
|
+
join63("extensions", "omo-memory-doctor.js"),
|
|
98780
98781
|
join63("extensions", "assets.generated.json"),
|
|
98781
98782
|
join63("extensions", "omo-member.js"),
|
|
98782
98783
|
join63("extensions", "memory-run-supervisor.mjs"),
|
package/dist/index.js
CHANGED
|
@@ -27788,7 +27788,7 @@ var UNSPECIFIED_HIGH_CATEGORY_PROMPT_APPEND = `<Category_Context>
|
|
|
27788
27788
|
You are working on tasks that don't fit specific categories but require substantial effort.
|
|
27789
27789
|
</Category_Context>`;
|
|
27790
27790
|
var UNSPECIFIED_HIGH_CATEGORY_CALLER_GUIDANCE = `<Selection_Gate>Use only when no specialist category fits and substantial effort spans systems/modules with broad impact. Use unspecified-low for contained moderate work.</Selection_Gate>`;
|
|
27791
|
-
var DEEP_LOW_CATEGORY_CALLER_GUIDANCE = `<Selection_Gate>
|
|
27791
|
+
var DEEP_LOW_CATEGORY_CALLER_GUIDANCE = `<Selection_Gate>Of the two deep lanes this is the default: the child settles its decisions from what it reads. When unsure, choose deep-low; a misrouted child returns \`ESCALATE: deep-high\` after one cheap attempt, and you re-spawn the same brief as deep-high with its findings.</Selection_Gate>`;
|
|
27792
27792
|
var DEEP_HIGH_CATEGORY_CALLER_GUIDANCE = `<Selection_Gate>Route here only when you can name the decision evidence cannot settle: a trade-off with no single right answer, a contract change crossing a package or process boundary, a mechanism with no in-repo pattern to copy, or correctness argued from invariants rather than observed in a test. Wide scope with easy decisions is deep-low or unspecified-high; reasoning as the deliverable is ultrabrain.</Selection_Gate>`;
|
|
27793
27793
|
var DEEP_LOW_GATE_MODELS = ["gpt-6.1-sol", "gpt-6.1-sol-fast", "gpt-5.6-sol-fast", "gpt-5.6-sol"];
|
|
27794
27794
|
var DEEP_HIGH_GATE_MODEL = "gpt-6-astra";
|
|
@@ -27803,7 +27803,7 @@ var OPENAI_CATEGORIES = [
|
|
|
27803
27803
|
{
|
|
27804
27804
|
name: "deep-low",
|
|
27805
27805
|
config: { model: "openai/gpt-6.1-sol", variant: "medium" },
|
|
27806
|
-
description: "Default deep lane: one goal, one deliverable, decisions the child can settle from what it reads
|
|
27806
|
+
description: "Default deep lane: one goal, one deliverable, decisions the child can settle from what it reads; preferred over deep-high for 3D graphics, computer/browser use, CAPTCHA, multimodal, backend, logic, and algorithm work. Multiple goals fan out as parallel calls.",
|
|
27807
27807
|
callerGuidance: DEEP_LOW_CATEGORY_CALLER_GUIDANCE,
|
|
27808
27808
|
promptAppend: DEEP_LOW_CATEGORY_PROMPT_APPEND,
|
|
27809
27809
|
resolvePromptAppend: resolveDeepLowCategoryPromptAppend,
|
|
@@ -98586,7 +98586,7 @@ function getCachedVersion(options = {}) {
|
|
|
98586
98586
|
// package.json
|
|
98587
98587
|
var package_default = {
|
|
98588
98588
|
name: "oh-my-opencode",
|
|
98589
|
-
version: "5.1.
|
|
98589
|
+
version: "5.1.15",
|
|
98590
98590
|
description: "The Best AI Agent Harness - Batteries-Included OpenCode Plugin with Multi-Model Orchestration, Parallel Background Agents, and Crafted LSP/AST Tools",
|
|
98591
98591
|
main: "./dist/index.js",
|
|
98592
98592
|
types: "dist/index.d.ts",
|
|
@@ -98763,7 +98763,7 @@ var package_default = {
|
|
|
98763
98763
|
},
|
|
98764
98764
|
devDependencies: {
|
|
98765
98765
|
"@clack/prompts": "^1.8.1",
|
|
98766
|
-
"@code-yeongyu/senpi": "2026.10.
|
|
98766
|
+
"@code-yeongyu/senpi": "2026.10.6",
|
|
98767
98767
|
"@modelcontextprotocol/sdk": "^1.30.0",
|
|
98768
98768
|
"@oh-my-opencode/agents-md-core": "workspace:*",
|
|
98769
98769
|
"@oh-my-opencode/ast-grep-mcp": "workspace:*",
|
|
@@ -98821,18 +98821,18 @@ var package_default = {
|
|
|
98821
98821
|
typescript: "^7.0.2"
|
|
98822
98822
|
},
|
|
98823
98823
|
optionalDependencies: {
|
|
98824
|
-
"oh-my-opencode-darwin-arm64": "5.1.
|
|
98825
|
-
"oh-my-opencode-darwin-x64": "5.1.
|
|
98826
|
-
"oh-my-opencode-darwin-x64-baseline": "5.1.
|
|
98827
|
-
"oh-my-opencode-linux-arm64": "5.1.
|
|
98828
|
-
"oh-my-opencode-linux-arm64-musl": "5.1.
|
|
98829
|
-
"oh-my-opencode-linux-x64": "5.1.
|
|
98830
|
-
"oh-my-opencode-linux-x64-baseline": "5.1.
|
|
98831
|
-
"oh-my-opencode-linux-x64-musl": "5.1.
|
|
98832
|
-
"oh-my-opencode-linux-x64-musl-baseline": "5.1.
|
|
98833
|
-
"oh-my-opencode-windows-arm64": "5.1.
|
|
98834
|
-
"oh-my-opencode-windows-x64": "5.1.
|
|
98835
|
-
"oh-my-opencode-windows-x64-baseline": "5.1.
|
|
98824
|
+
"oh-my-opencode-darwin-arm64": "5.1.15",
|
|
98825
|
+
"oh-my-opencode-darwin-x64": "5.1.15",
|
|
98826
|
+
"oh-my-opencode-darwin-x64-baseline": "5.1.15",
|
|
98827
|
+
"oh-my-opencode-linux-arm64": "5.1.15",
|
|
98828
|
+
"oh-my-opencode-linux-arm64-musl": "5.1.15",
|
|
98829
|
+
"oh-my-opencode-linux-x64": "5.1.15",
|
|
98830
|
+
"oh-my-opencode-linux-x64-baseline": "5.1.15",
|
|
98831
|
+
"oh-my-opencode-linux-x64-musl": "5.1.15",
|
|
98832
|
+
"oh-my-opencode-linux-x64-musl-baseline": "5.1.15",
|
|
98833
|
+
"oh-my-opencode-windows-arm64": "5.1.15",
|
|
98834
|
+
"oh-my-opencode-windows-x64": "5.1.15",
|
|
98835
|
+
"oh-my-opencode-windows-x64-baseline": "5.1.15"
|
|
98836
98836
|
},
|
|
98837
98837
|
overrides: {
|
|
98838
98838
|
hono: "^4.13.8",
|
|
@@ -18,7 +18,31 @@ one where a human is a single call away. Never substitute one engine for the oth
|
|
|
18
18
|
the attached engine is not set up, run the onboarding script and tell the user its one remaining
|
|
19
19
|
step.
|
|
20
20
|
|
|
21
|
-
## Step 0 —
|
|
21
|
+
## Step 0 — which engine this session is allowed to use
|
|
22
|
+
|
|
23
|
+
When `OMO_BROWSER_ENGINE` is set (the OmO desktop app sets it for every session), it wins over the table above:
|
|
24
|
+
|
|
25
|
+
| Value | What you do |
|
|
26
|
+
|---|---|
|
|
27
|
+
| `connected` | Use `connectBrowserSkill()` only. If the user's browser is not connected you get a "Connect your browser" error: relay it and stop. Never open another browser |
|
|
28
|
+
| `builtin` | Do not call `connectBrowserSkill()`; use the app's in-app browser tools |
|
|
29
|
+
| `none` | Do not do browser work. Say that agent browser access is off for this project |
|
|
30
|
+
| unset | The table above, as before (terminal use) |
|
|
31
|
+
|
|
32
|
+
While any engine is set, `loadOmowright()` returns a guarded library. The owned engine (`connectPipe`,
|
|
33
|
+
`connectCloakProfile`, `connect`) and every other export that acts on a browser is refused, so the table above
|
|
34
|
+
does not apply: do not look for a way around it, and tell the user what the session allows. Under `connected`
|
|
35
|
+
the app sees what the browser is doing, and before a click, Enter or script that sends, posts, pays, orders,
|
|
36
|
+
subscribes, deletes or closes an account, and before Enter in a message box, it asks the user first. A "No" fails the action with
|
|
37
|
+
`BrowserActionDeclinedError`: report that, never retry it or go around it (`session.tool()` lets only reads
|
|
38
|
+
through; `evaluate` is guarded too). If the user presses Stop, the next call throws `BrowserUserStoppedError`: tell
|
|
39
|
+
the user browser use was stopped and start no new session this turn.
|
|
40
|
+
|
|
41
|
+
The guard prevents mistakes by a cooperating agent. It is not a security boundary: code that imports the raw
|
|
42
|
+
entry (`resolveOmowrightEntry()`) is not guarded, and a host without the `omo_browser_bridge` tool cannot show state or
|
|
43
|
+
honor Stop, though questions are still asked.
|
|
44
|
+
|
|
45
|
+
## Step 1 — load omowright and prove the stack
|
|
22
46
|
|
|
23
47
|
```js
|
|
24
48
|
const { loadOmowright } = await import("<skill-root>/scripts/omowright.mjs")
|
|
@@ -94,7 +118,7 @@ changing the extension's automation settings.
|
|
|
94
118
|
out everywhere. No flow here needs it.
|
|
95
119
|
- **`focused: false` by default.** The browser belongs to someone who is probably using it.
|
|
96
120
|
- **One short, named session per task,** always stopped.
|
|
97
|
-
- **Bot-scored or WAF targets go to the owned engine
|
|
121
|
+
- **Bot-scored or WAF targets go to the owned engine** (not while `OMO_BROWSER_ENGINE` is set: then say the site needs a browser the session does not allow). The attached engine's daemon enables console
|
|
98
122
|
capture on every tab it drives, which is a known automation signal; CloakBrowser through
|
|
99
123
|
`connectCloakProfile()` is the stealth path.
|
|
100
124
|
|
|
@@ -98,8 +98,17 @@ Every refusal is a `BskRpcError` with the daemon's own `code`:
|
|
|
98
98
|
| `invalid_params` | wrong option shape | fix the call, do not retry as-is |
|
|
99
99
|
| `permission_denied` | `evaluate` on a tab outside the Agent Window, or a denied borrow | stop; the user said no |
|
|
100
100
|
| `timeout` | the tool did not finish in its budget | read the page state before retrying once |
|
|
101
|
-
| `user_aborted` | the user pressed Stop in the browser | stop the task and report |
|
|
101
|
+
| `user_aborted` | the user pressed Stop in the browser | stop the task and report; under `OMO_BROWSER_ENGINE` this surfaces as `BrowserUserStoppedError` and no session starts again this turn |
|
|
102
102
|
| `cdp_failed` | the page cannot be attached (restricted URL, DevTools open) | say which page and why |
|
|
103
103
|
|
|
104
|
+
Typed errors under `OMO_BROWSER_ENGINE` (see SKILL.md Step 0):
|
|
105
|
+
|
|
106
|
+
| Error | `code` | Meaning |
|
|
107
|
+
|---|---|---|
|
|
108
|
+
| `BrowserNotConnectedError` | `browser_not_connected` | the user's browser is not connected; ask them to connect it |
|
|
109
|
+
| `BrowserEngineRefusal` | `browser_engine_none` / `browser_engine_builtin` / `browser_engine_unsupported` / `browser_tool_blocked` | this engine setting does not allow that call |
|
|
110
|
+
| `BrowserActionDeclinedError` | `user_declined` | the user said no, or no question could be asked; do not retry |
|
|
111
|
+
| `BrowserUserStoppedError` | `user_stopped` | the user stopped browser use |
|
|
112
|
+
|
|
104
113
|
Long calls can be cancelled: `const h = session.client.callWithHandle("tool.navigate", {...})`
|
|
105
114
|
then `await session.client.cancel(h.rpcId)`.
|
|
@@ -8,6 +8,13 @@ Three pieces. The onboarding script prepares all three; a human finishes exactly
|
|
|
8
8
|
| Browser extension | registered from the Web Store listing through Chrome's external-extension mechanism | **yes, up to one click** — the browser asks the user to enable it |
|
|
9
9
|
| Daemon process | auto-starts on the first call | nothing to do |
|
|
10
10
|
|
|
11
|
+
## Inside the OmO desktop app
|
|
12
|
+
|
|
13
|
+
The app installs the `bsk` CLI and starts its daemon itself, and keeps the daemon running when the app closes.
|
|
14
|
+
Do not run `browser-install.mjs` there unless the doctor says the app's engine is missing; a session set to
|
|
15
|
+
`OMO_BROWSER_ENGINE=builtin` or `none` never uses this skill's attached engine at all. `BSK_HOME` and `BSK_BIN`
|
|
16
|
+
still decide where the CLI and daemon are found, here and everywhere else.
|
|
17
|
+
|
|
11
18
|
## Supported
|
|
12
19
|
|
|
13
20
|
| | |
|