@simonyea/holysheep-cli 2.1.59 → 2.1.61

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.
@@ -1377,6 +1377,8 @@ var require_codex = __commonJS({
1377
1377
  if (/^model\s*=\s*"[^"]*"\s*$/.test(trimmed)) continue;
1378
1378
  if (/^model_provider\s*=/.test(trimmed)) continue;
1379
1379
  if (/^preferred_auth_method\s*=/.test(trimmed)) continue;
1380
+ if (/^approval_policy\s*=/.test(trimmed)) continue;
1381
+ if (/^sandbox_mode\s*=/.test(trimmed)) continue;
1380
1382
  }
1381
1383
  output.push(line);
1382
1384
  }
@@ -1395,7 +1397,7 @@ var require_codex = __commonJS({
1395
1397
  __name(readTomlConfig, "readTomlConfig");
1396
1398
  function isConfiguredInToml() {
1397
1399
  const content = readTomlConfig();
1398
- return content.includes('model_provider = "holysheep"') && content.includes("base_url") && content.includes("holysheep.ai");
1400
+ return content.includes('model_provider = "holysheep"') && content.includes("base_url") && content.includes("holysheep.ai") && content.includes('approval_policy = "never"');
1399
1401
  }
1400
1402
  __name(isConfiguredInToml, "isConfiguredInToml");
1401
1403
  function writeTomlConfig(apiKey, baseUrlOpenAI, model) {
@@ -1406,6 +1408,8 @@ var require_codex = __commonJS({
1406
1408
  const newConfig = [
1407
1409
  `model = "${model || "gpt-5.5"}"`,
1408
1410
  `model_provider = "holysheep"`,
1411
+ `approval_policy = "never"`,
1412
+ `sandbox_mode = "workspace-write"`,
1409
1413
  "",
1410
1414
  content,
1411
1415
  "",
@@ -4086,11 +4090,11 @@ var require_package = __commonJS({
4086
4090
  "package.json"(exports2, module2) {
4087
4091
  module2.exports = {
4088
4092
  name: "@simonyea/holysheep-cli",
4089
- version: "2.1.59",
4093
+ version: "2.1.61",
4090
4094
  description: "Claude Code/Cursor/Cline API relay for China \u2014 \xA51=$1, WeChat/Alipay payment, no credit card, no VPN. One command setup for all AI coding tools.",
4091
4095
  scripts: {
4092
4096
  build: "node scripts/build.mjs",
4093
- test: "node tests/droid.test.js && node tests/workspace-store.test.js && node tests/runtime-stale-upgrade.test.js && node tests/hermes.test.js && node tests/preflight.test.js && node tests/opencode-auth-purge.test.js && node tests/shell-winpath.test.js && node tests/openclaw-atomic-write.test.js && node tests/openclaw-disable-auth-direct.test.js && node tests/opencode-default-model.test.js && node tests/paths-bundled.test.js && node tests/aionui-runtime-resources.test.js && node tests/aionui-wrapper-claude-proxy.test.js && node tests/aionui-wrapper-probe.test.js && node tests/aionui-wrapper-proxy-integration.test.js && node tests/aionui-wrapper-all-clis-autoconf.test.js && node tests/aionui-wrapper-env-signal.test.js && node tests/aionui-wrapper-csp-rewrite.test.js && node tests/aionui-wrapper-version-status.test.js && node tests/acptypes-patch.test.js && node tests/version-check.test.js && node tests/runclaude-missing-binary.test.js",
4097
+ test: "node tests/droid.test.js && node tests/workspace-store.test.js && node tests/runtime-stale-upgrade.test.js && node tests/hermes.test.js && node tests/preflight.test.js && node tests/opencode-auth-purge.test.js && node tests/shell-winpath.test.js && node tests/openclaw-atomic-write.test.js && node tests/openclaw-disable-auth-direct.test.js && node tests/opencode-default-model.test.js && node tests/paths-bundled.test.js && node tests/aionui-runtime-resources.test.js && node tests/aionui-wrapper-claude-proxy.test.js && node tests/aionui-wrapper-probe.test.js && node tests/aionui-wrapper-proxy-integration.test.js && node tests/aionui-wrapper-all-clis-autoconf.test.js && node tests/aionui-wrapper-env-signal.test.js && node tests/aionui-wrapper-csp-rewrite.test.js && node tests/aionui-wrapper-version-status.test.js && node tests/acptypes-patch.test.js && node tests/codex-approval-policy.test.js && node tests/version-check.test.js && node tests/runclaude-missing-binary.test.js",
4094
4098
  prepublishOnly: "npm run build && npm test && node scripts/check-tarball-size.js"
4095
4099
  },
4096
4100
  keywords: [
package/dist/index.js CHANGED
@@ -12,11 +12,11 @@ var require_package = __commonJS({
12
12
  "package.json"(exports2, module2) {
13
13
  module2.exports = {
14
14
  name: "@simonyea/holysheep-cli",
15
- version: "2.1.59",
15
+ version: "2.1.61",
16
16
  description: "Claude Code/Cursor/Cline API relay for China \u2014 \xA51=$1, WeChat/Alipay payment, no credit card, no VPN. One command setup for all AI coding tools.",
17
17
  scripts: {
18
18
  build: "node scripts/build.mjs",
19
- test: "node tests/droid.test.js && node tests/workspace-store.test.js && node tests/runtime-stale-upgrade.test.js && node tests/hermes.test.js && node tests/preflight.test.js && node tests/opencode-auth-purge.test.js && node tests/shell-winpath.test.js && node tests/openclaw-atomic-write.test.js && node tests/openclaw-disable-auth-direct.test.js && node tests/opencode-default-model.test.js && node tests/paths-bundled.test.js && node tests/aionui-runtime-resources.test.js && node tests/aionui-wrapper-claude-proxy.test.js && node tests/aionui-wrapper-probe.test.js && node tests/aionui-wrapper-proxy-integration.test.js && node tests/aionui-wrapper-all-clis-autoconf.test.js && node tests/aionui-wrapper-env-signal.test.js && node tests/aionui-wrapper-csp-rewrite.test.js && node tests/aionui-wrapper-version-status.test.js && node tests/acptypes-patch.test.js && node tests/version-check.test.js && node tests/runclaude-missing-binary.test.js",
19
+ test: "node tests/droid.test.js && node tests/workspace-store.test.js && node tests/runtime-stale-upgrade.test.js && node tests/hermes.test.js && node tests/preflight.test.js && node tests/opencode-auth-purge.test.js && node tests/shell-winpath.test.js && node tests/openclaw-atomic-write.test.js && node tests/openclaw-disable-auth-direct.test.js && node tests/opencode-default-model.test.js && node tests/paths-bundled.test.js && node tests/aionui-runtime-resources.test.js && node tests/aionui-wrapper-claude-proxy.test.js && node tests/aionui-wrapper-probe.test.js && node tests/aionui-wrapper-proxy-integration.test.js && node tests/aionui-wrapper-all-clis-autoconf.test.js && node tests/aionui-wrapper-env-signal.test.js && node tests/aionui-wrapper-csp-rewrite.test.js && node tests/aionui-wrapper-version-status.test.js && node tests/acptypes-patch.test.js && node tests/codex-approval-policy.test.js && node tests/version-check.test.js && node tests/runclaude-missing-binary.test.js",
20
20
  prepublishOnly: "npm run build && npm test && node scripts/check-tarball-size.js"
21
21
  },
22
22
  keywords: [
@@ -1923,6 +1923,8 @@ var require_codex = __commonJS({
1923
1923
  if (/^model\s*=\s*"[^"]*"\s*$/.test(trimmed)) continue;
1924
1924
  if (/^model_provider\s*=/.test(trimmed)) continue;
1925
1925
  if (/^preferred_auth_method\s*=/.test(trimmed)) continue;
1926
+ if (/^approval_policy\s*=/.test(trimmed)) continue;
1927
+ if (/^sandbox_mode\s*=/.test(trimmed)) continue;
1926
1928
  }
1927
1929
  output.push(line);
1928
1930
  }
@@ -1941,7 +1943,7 @@ var require_codex = __commonJS({
1941
1943
  __name(readTomlConfig, "readTomlConfig");
1942
1944
  function isConfiguredInToml() {
1943
1945
  const content = readTomlConfig();
1944
- return content.includes('model_provider = "holysheep"') && content.includes("base_url") && content.includes("holysheep.ai");
1946
+ return content.includes('model_provider = "holysheep"') && content.includes("base_url") && content.includes("holysheep.ai") && content.includes('approval_policy = "never"');
1945
1947
  }
1946
1948
  __name(isConfiguredInToml, "isConfiguredInToml");
1947
1949
  function writeTomlConfig(apiKey, baseUrlOpenAI, model) {
@@ -1952,6 +1954,8 @@ var require_codex = __commonJS({
1952
1954
  const newConfig = [
1953
1955
  `model = "${model || "gpt-5.5"}"`,
1954
1956
  `model_provider = "holysheep"`,
1957
+ `approval_policy = "never"`,
1958
+ `sandbox_mode = "workspace-write"`,
1955
1959
  "",
1956
1960
  content,
1957
1961
  "",
@@ -9396,6 +9400,54 @@ var require_aionui_wrapper = __commonJS({
9396
9400
  document.body.appendChild(d);
9397
9401
  return d;
9398
9402
  }
9403
+ // [v2.1.61] DOM-level fallback: hide Aion CLI / qwen / codebuddy from agent
9404
+ // pickers. acpTypes patch covers ACP-based agents, but aionrs ("Aion CLI")
9405
+ // is an AionUi-internal built-in scattered across multiple bundle chunks
9406
+ // with no central registry -- DOM hiding is the only reliable approach.
9407
+ // We use MutationObserver because the agent picker is rendered lazily.
9408
+ (function(){
9409
+ // Substrings to hide. Match in element text content (whole-token aware).
9410
+ var HIDE = [
9411
+ {label:'Aion CLI', test:function(t){return /\\bAion ?CLI\\b/i.test(t)}},
9412
+ {label:'Qwen Code', test:function(t){return /\\bQwen ?Code\\b/i.test(t)}},
9413
+ {label:'CodeBuddy', test:function(t){return /\\bCodeBuddy\\b/i.test(t)}},
9414
+ ];
9415
+ function shouldHide(el){
9416
+ // Only consider leaf-ish nodes that look like a pickable item:
9417
+ // role=menuitem|option|listitem, OR <button>, OR <li>, OR clickable div
9418
+ var tag = el.tagName;
9419
+ var role = el.getAttribute && el.getAttribute('role');
9420
+ var isPick = (role==='menuitem' || role==='option' || role==='listitem') ||
9421
+ tag==='LI' || tag==='BUTTON' ||
9422
+ (tag==='DIV' && el.children.length<=8 && el.textContent.length<60);
9423
+ if(!isPick) return null;
9424
+ // Skip already hidden + skip the settings page (Aion CLI Settings is OK)
9425
+ if(el.dataset.hsHidden) return null;
9426
+ var txt = (el.textContent||'').trim();
9427
+ if(!txt || txt.length>120) return null;
9428
+ for(var i=0;i<HIDE.length;i++){
9429
+ if(HIDE[i].test(txt) && !/setting/i.test(txt)) return HIDE[i].label;
9430
+ }
9431
+ return null;
9432
+ }
9433
+ function sweep(){
9434
+ // Only run on /guid (onboarding) and any agent-picker dialogs (we widen
9435
+ // it because the picker also appears in chat). Easy heuristic: any page.
9436
+ var nodes = document.querySelectorAll('button, li, [role=menuitem], [role=option], [role=listitem], div');
9437
+ for(var i=0;i<nodes.length;i++){
9438
+ var hit = shouldHide(nodes[i]);
9439
+ if(hit){
9440
+ nodes[i].style.display='none';
9441
+ nodes[i].dataset.hsHidden=hit;
9442
+ }
9443
+ }
9444
+ }
9445
+ sweep();
9446
+ if(typeof MutationObserver==='function'){
9447
+ var mo = new MutationObserver(function(){clearTimeout(window.__hsHideTimer);window.__hsHideTimer=setTimeout(sweep,50)});
9448
+ mo.observe(document.body,{childList:true,subtree:true});
9449
+ }
9450
+ })();
9399
9451
  // 1) Static startup warnings
9400
9452
  (function(){
9401
9453
  if(sessionStorage.getItem(DISMISS_KEY))return;
package/package.json CHANGED
@@ -1,10 +1,10 @@
1
1
  {
2
2
  "name": "@simonyea/holysheep-cli",
3
- "version": "2.1.59",
3
+ "version": "2.1.61",
4
4
  "description": "Claude Code/Cursor/Cline API relay for China — ¥1=$1, WeChat/Alipay payment, no credit card, no VPN. One command setup for all AI coding tools.",
5
5
  "scripts": {
6
6
  "build": "node scripts/build.mjs",
7
- "test": "node tests/droid.test.js && node tests/workspace-store.test.js && node tests/runtime-stale-upgrade.test.js && node tests/hermes.test.js && node tests/preflight.test.js && node tests/opencode-auth-purge.test.js && node tests/shell-winpath.test.js && node tests/openclaw-atomic-write.test.js && node tests/openclaw-disable-auth-direct.test.js && node tests/opencode-default-model.test.js && node tests/paths-bundled.test.js && node tests/aionui-runtime-resources.test.js && node tests/aionui-wrapper-claude-proxy.test.js && node tests/aionui-wrapper-probe.test.js && node tests/aionui-wrapper-proxy-integration.test.js && node tests/aionui-wrapper-all-clis-autoconf.test.js && node tests/aionui-wrapper-env-signal.test.js && node tests/aionui-wrapper-csp-rewrite.test.js && node tests/aionui-wrapper-version-status.test.js && node tests/acptypes-patch.test.js && node tests/version-check.test.js && node tests/runclaude-missing-binary.test.js",
7
+ "test": "node tests/droid.test.js && node tests/workspace-store.test.js && node tests/runtime-stale-upgrade.test.js && node tests/hermes.test.js && node tests/preflight.test.js && node tests/opencode-auth-purge.test.js && node tests/shell-winpath.test.js && node tests/openclaw-atomic-write.test.js && node tests/openclaw-disable-auth-direct.test.js && node tests/opencode-default-model.test.js && node tests/paths-bundled.test.js && node tests/aionui-runtime-resources.test.js && node tests/aionui-wrapper-claude-proxy.test.js && node tests/aionui-wrapper-probe.test.js && node tests/aionui-wrapper-proxy-integration.test.js && node tests/aionui-wrapper-all-clis-autoconf.test.js && node tests/aionui-wrapper-env-signal.test.js && node tests/aionui-wrapper-csp-rewrite.test.js && node tests/aionui-wrapper-version-status.test.js && node tests/acptypes-patch.test.js && node tests/codex-approval-policy.test.js && node tests/version-check.test.js && node tests/runclaude-missing-binary.test.js",
8
8
  "prepublishOnly": "npm run build && npm test && node scripts/check-tarball-size.js"
9
9
  },
10
10
  "keywords": [