@skj1724/oh-my-opencode 3.18.11 → 3.18.13

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 CHANGED
@@ -6703,7 +6703,7 @@ function stripAgentListSortPrefix(agentName) {
6703
6703
  }
6704
6704
  function getAgentRuntimeName(configKey) {
6705
6705
  const displayName = getAgentDisplayName(configKey);
6706
- const prefix = AGENT_LIST_SORT_PREFIXES[configKey.toLowerCase()];
6706
+ const prefix = null;
6707
6707
  return prefix ? `${prefix}${displayName}` : displayName;
6708
6708
  }
6709
6709
  function getAgentDisplayName(configKey) {
@@ -6733,17 +6733,17 @@ function getAgentConfigKey(agentName) {
6733
6733
  const lower = stripAgentListSortPrefix(agentName).trim().toLowerCase();
6734
6734
  return resolveKnownAgentConfigKey(agentName) ?? lower;
6735
6735
  }
6736
- var AGENT_DISPLAY_NAMES, AGENT_LIST_SORT_PREFIXES, INVISIBLE_AGENT_CHARACTERS_REGEX, REVERSE_DISPLAY_NAMES, LEGACY_DISPLAY_NAMES;
6736
+ var AGENT_DISPLAY_NAMES, INVISIBLE_AGENT_CHARACTERS_REGEX, REVERSE_DISPLAY_NAMES, LEGACY_DISPLAY_NAMES;
6737
6737
  var init_agent_display_names = __esm(() => {
6738
6738
  AGENT_DISPLAY_NAMES = {
6739
- sisyphus: "Sisyphus",
6740
- hephaestus: "Hephaestus",
6741
- prometheus: "Prometheus",
6742
- atlas: "Atlas",
6743
- "sisyphus-junior": "Sisyphus-Junior",
6744
- metis: "Metis",
6745
- momus: "Momus",
6746
- athena: "Athena",
6739
+ sisyphus: "Sis-worker",
6740
+ hephaestus: "Hep-Deeper",
6741
+ prometheus: "Prm-Planer",
6742
+ atlas: "Atlas-Executer",
6743
+ "sisyphus-junior": "Sis-Junior",
6744
+ metis: "Met-Consultant",
6745
+ momus: "Mom-PlanCritic",
6746
+ athena: "Ath-Council",
6747
6747
  "athena-junior": "Athena-Junior",
6748
6748
  oracle: "oracle",
6749
6749
  librarian: "librarian",
@@ -6751,12 +6751,6 @@ var init_agent_display_names = __esm(() => {
6751
6751
  "multimodal-looker": "multimodal-looker",
6752
6752
  "council-member": "council-member"
6753
6753
  };
6754
- AGENT_LIST_SORT_PREFIXES = {
6755
- sisyphus: "\u200B",
6756
- hephaestus: "\u200B\u200B",
6757
- prometheus: "\u200B\u200B\u200B",
6758
- atlas: "\u200B\u200B\u200B\u200B"
6759
- };
6760
6754
  INVISIBLE_AGENT_CHARACTERS_REGEX = /[\u200B\u200C\u200D\uFEFF]/g;
6761
6755
  REVERSE_DISPLAY_NAMES = Object.fromEntries(Object.entries(AGENT_DISPLAY_NAMES).map(([key, displayName]) => [displayName.toLowerCase(), key]));
6762
6756
  LEGACY_DISPLAY_NAMES = {
@@ -53770,7 +53764,7 @@ var {
53770
53764
  // package.json
53771
53765
  var package_default = {
53772
53766
  name: "@skj1724/oh-my-opencode",
53773
- version: "3.18.11",
53767
+ version: "3.18.13",
53774
53768
  description: "The Best AI Agent Harness - Batteries-Included OpenCode Plugin with Multi-Model Orchestration, Parallel Background Agents, and Crafted LSP/AST Tools",
53775
53769
  main: "./dist/index.js",
53776
53770
  types: "dist/index.d.ts",
@@ -53838,7 +53832,7 @@ var package_default = {
53838
53832
  "js-yaml": "^4.1.1",
53839
53833
  "jsonc-parser": "^3.3.1",
53840
53834
  picocolors: "^1.1.1",
53841
- picomatch: "^4.0.2",
53835
+ picomatch: "^4.0.4",
53842
53836
  "posthog-node": "5.28.11",
53843
53837
  "vscode-jsonrpc": "^8.2.0"
53844
53838
  },
@@ -53859,7 +53853,7 @@ var package_default = {
53859
53853
  "oh-my-opencode-linux-x64-baseline": "3.17.4",
53860
53854
  "oh-my-opencode-linux-x64-musl": "3.17.4",
53861
53855
  "oh-my-opencode-linux-x64-musl-baseline": "3.17.4",
53862
- "oh-my-opencode-windows-x64": "3.17.4",
53856
+ "@skj1724/oh-my-opencode-windows-x64": "3.17.4",
53863
53857
  "oh-my-opencode-windows-x64-baseline": "3.17.4"
53864
53858
  },
53865
53859
  overrides: {},
package/dist/index.js CHANGED
@@ -2779,7 +2779,7 @@ function stripAgentListSortPrefix(agentName) {
2779
2779
  }
2780
2780
  function getAgentRuntimeName(configKey) {
2781
2781
  const displayName = getAgentDisplayName(configKey);
2782
- const prefix = AGENT_LIST_SORT_PREFIXES[configKey.toLowerCase()];
2782
+ const prefix = null;
2783
2783
  return prefix ? `${prefix}${displayName}` : displayName;
2784
2784
  }
2785
2785
  function getAgentDisplayName(configKey) {
@@ -2822,17 +2822,17 @@ function normalizeAgentForPromptKey(agentName) {
2822
2822
  }
2823
2823
  return resolveKnownAgentConfigKey(trimmed) ?? trimmed;
2824
2824
  }
2825
- var AGENT_DISPLAY_NAMES, AGENT_LIST_SORT_PREFIXES, INVISIBLE_AGENT_CHARACTERS_REGEX, REVERSE_DISPLAY_NAMES, LEGACY_DISPLAY_NAMES;
2825
+ var AGENT_DISPLAY_NAMES, INVISIBLE_AGENT_CHARACTERS_REGEX, REVERSE_DISPLAY_NAMES, LEGACY_DISPLAY_NAMES;
2826
2826
  var init_agent_display_names = __esm(() => {
2827
2827
  AGENT_DISPLAY_NAMES = {
2828
- sisyphus: "Sisyphus",
2829
- hephaestus: "Hephaestus",
2830
- prometheus: "Prometheus",
2831
- atlas: "Atlas",
2832
- "sisyphus-junior": "Sisyphus-Junior",
2833
- metis: "Metis",
2834
- momus: "Momus",
2835
- athena: "Athena",
2828
+ sisyphus: "Sis-worker",
2829
+ hephaestus: "Hep-Deeper",
2830
+ prometheus: "Prm-Planer",
2831
+ atlas: "Atlas-Executer",
2832
+ "sisyphus-junior": "Sis-Junior",
2833
+ metis: "Met-Consultant",
2834
+ momus: "Mom-PlanCritic",
2835
+ athena: "Ath-Council",
2836
2836
  "athena-junior": "Athena-Junior",
2837
2837
  oracle: "oracle",
2838
2838
  librarian: "librarian",
@@ -2840,12 +2840,6 @@ var init_agent_display_names = __esm(() => {
2840
2840
  "multimodal-looker": "multimodal-looker",
2841
2841
  "council-member": "council-member"
2842
2842
  };
2843
- AGENT_LIST_SORT_PREFIXES = {
2844
- sisyphus: "\u200B",
2845
- hephaestus: "\u200B\u200B",
2846
- prometheus: "\u200B\u200B\u200B",
2847
- atlas: "\u200B\u200B\u200B\u200B"
2848
- };
2849
2843
  INVISIBLE_AGENT_CHARACTERS_REGEX = /[\u200B\u200C\u200D\uFEFF]/g;
2850
2844
  REVERSE_DISPLAY_NAMES = Object.fromEntries(Object.entries(AGENT_DISPLAY_NAMES).map(([key, displayName]) => [displayName.toLowerCase(), key]));
2851
2845
  LEGACY_DISPLAY_NAMES = {
@@ -3014,6 +3008,7 @@ function truncateDescription(description, maxLength = 120) {
3014
3008
  var require_constants = __commonJS((exports, module) => {
3015
3009
  var WIN_SLASH = "\\\\/";
3016
3010
  var WIN_NO_SLASH = `[^${WIN_SLASH}]`;
3011
+ var DEFAULT_MAX_EXTGLOB_RECURSION = 0;
3017
3012
  var DOT_LITERAL = "\\.";
3018
3013
  var PLUS_LITERAL = "\\+";
3019
3014
  var QMARK_LITERAL = "\\?";
@@ -3064,6 +3059,7 @@ var require_constants = __commonJS((exports, module) => {
3064
3059
  SEP: "\\"
3065
3060
  };
3066
3061
  var POSIX_REGEX_SOURCE = {
3062
+ __proto__: null,
3067
3063
  alnum: "a-zA-Z0-9",
3068
3064
  alpha: "a-zA-Z",
3069
3065
  ascii: "\\x00-\\x7F",
@@ -3080,6 +3076,7 @@ var require_constants = __commonJS((exports, module) => {
3080
3076
  xdigit: "A-Fa-f0-9"
3081
3077
  };
3082
3078
  module.exports = {
3079
+ DEFAULT_MAX_EXTGLOB_RECURSION,
3083
3080
  MAX_LENGTH: 1024 * 64,
3084
3081
  POSIX_REGEX_SOURCE,
3085
3082
  REGEX_BACKSLASH: /\\(?![*+?^${}(|)[\]])/g,
@@ -3557,6 +3554,213 @@ var require_parse = __commonJS((exports, module) => {
3557
3554
  var syntaxError = (type2, char) => {
3558
3555
  return `Missing ${type2}: "${char}" - use "\\\\${char}" to match literal characters`;
3559
3556
  };
3557
+ var splitTopLevel = (input) => {
3558
+ const parts = [];
3559
+ let bracket = 0;
3560
+ let paren = 0;
3561
+ let quote = 0;
3562
+ let value = "";
3563
+ let escaped = false;
3564
+ for (const ch of input) {
3565
+ if (escaped === true) {
3566
+ value += ch;
3567
+ escaped = false;
3568
+ continue;
3569
+ }
3570
+ if (ch === "\\") {
3571
+ value += ch;
3572
+ escaped = true;
3573
+ continue;
3574
+ }
3575
+ if (ch === '"') {
3576
+ quote = quote === 1 ? 0 : 1;
3577
+ value += ch;
3578
+ continue;
3579
+ }
3580
+ if (quote === 0) {
3581
+ if (ch === "[") {
3582
+ bracket++;
3583
+ } else if (ch === "]" && bracket > 0) {
3584
+ bracket--;
3585
+ } else if (bracket === 0) {
3586
+ if (ch === "(") {
3587
+ paren++;
3588
+ } else if (ch === ")" && paren > 0) {
3589
+ paren--;
3590
+ } else if (ch === "|" && paren === 0) {
3591
+ parts.push(value);
3592
+ value = "";
3593
+ continue;
3594
+ }
3595
+ }
3596
+ }
3597
+ value += ch;
3598
+ }
3599
+ parts.push(value);
3600
+ return parts;
3601
+ };
3602
+ var isPlainBranch = (branch) => {
3603
+ let escaped = false;
3604
+ for (const ch of branch) {
3605
+ if (escaped === true) {
3606
+ escaped = false;
3607
+ continue;
3608
+ }
3609
+ if (ch === "\\") {
3610
+ escaped = true;
3611
+ continue;
3612
+ }
3613
+ if (/[?*+@!()[\]{}]/.test(ch)) {
3614
+ return false;
3615
+ }
3616
+ }
3617
+ return true;
3618
+ };
3619
+ var normalizeSimpleBranch = (branch) => {
3620
+ let value = branch.trim();
3621
+ let changed = true;
3622
+ while (changed === true) {
3623
+ changed = false;
3624
+ if (/^@\([^\\()[\]{}|]+\)$/.test(value)) {
3625
+ value = value.slice(2, -1);
3626
+ changed = true;
3627
+ }
3628
+ }
3629
+ if (!isPlainBranch(value)) {
3630
+ return;
3631
+ }
3632
+ return value.replace(/\\(.)/g, "$1");
3633
+ };
3634
+ var hasRepeatedCharPrefixOverlap = (branches) => {
3635
+ const values = branches.map(normalizeSimpleBranch).filter(Boolean);
3636
+ for (let i2 = 0;i2 < values.length; i2++) {
3637
+ for (let j = i2 + 1;j < values.length; j++) {
3638
+ const a = values[i2];
3639
+ const b = values[j];
3640
+ const char = a[0];
3641
+ if (!char || a !== char.repeat(a.length) || b !== char.repeat(b.length)) {
3642
+ continue;
3643
+ }
3644
+ if (a === b || a.startsWith(b) || b.startsWith(a)) {
3645
+ return true;
3646
+ }
3647
+ }
3648
+ }
3649
+ return false;
3650
+ };
3651
+ var parseRepeatedExtglob = (pattern, requireEnd = true) => {
3652
+ if (pattern[0] !== "+" && pattern[0] !== "*" || pattern[1] !== "(") {
3653
+ return;
3654
+ }
3655
+ let bracket = 0;
3656
+ let paren = 0;
3657
+ let quote = 0;
3658
+ let escaped = false;
3659
+ for (let i2 = 1;i2 < pattern.length; i2++) {
3660
+ const ch = pattern[i2];
3661
+ if (escaped === true) {
3662
+ escaped = false;
3663
+ continue;
3664
+ }
3665
+ if (ch === "\\") {
3666
+ escaped = true;
3667
+ continue;
3668
+ }
3669
+ if (ch === '"') {
3670
+ quote = quote === 1 ? 0 : 1;
3671
+ continue;
3672
+ }
3673
+ if (quote === 1) {
3674
+ continue;
3675
+ }
3676
+ if (ch === "[") {
3677
+ bracket++;
3678
+ continue;
3679
+ }
3680
+ if (ch === "]" && bracket > 0) {
3681
+ bracket--;
3682
+ continue;
3683
+ }
3684
+ if (bracket > 0) {
3685
+ continue;
3686
+ }
3687
+ if (ch === "(") {
3688
+ paren++;
3689
+ continue;
3690
+ }
3691
+ if (ch === ")") {
3692
+ paren--;
3693
+ if (paren === 0) {
3694
+ if (requireEnd === true && i2 !== pattern.length - 1) {
3695
+ return;
3696
+ }
3697
+ return {
3698
+ type: pattern[0],
3699
+ body: pattern.slice(2, i2),
3700
+ end: i2
3701
+ };
3702
+ }
3703
+ }
3704
+ }
3705
+ };
3706
+ var getStarExtglobSequenceOutput = (pattern) => {
3707
+ let index = 0;
3708
+ const chars = [];
3709
+ while (index < pattern.length) {
3710
+ const match = parseRepeatedExtglob(pattern.slice(index), false);
3711
+ if (!match || match.type !== "*") {
3712
+ return;
3713
+ }
3714
+ const branches = splitTopLevel(match.body).map((branch2) => branch2.trim());
3715
+ if (branches.length !== 1) {
3716
+ return;
3717
+ }
3718
+ const branch = normalizeSimpleBranch(branches[0]);
3719
+ if (!branch || branch.length !== 1) {
3720
+ return;
3721
+ }
3722
+ chars.push(branch);
3723
+ index += match.end + 1;
3724
+ }
3725
+ if (chars.length < 1) {
3726
+ return;
3727
+ }
3728
+ const source = chars.length === 1 ? utils.escapeRegex(chars[0]) : `[${chars.map((ch) => utils.escapeRegex(ch)).join("")}]`;
3729
+ return `${source}*`;
3730
+ };
3731
+ var repeatedExtglobRecursion = (pattern) => {
3732
+ let depth = 0;
3733
+ let value = pattern.trim();
3734
+ let match = parseRepeatedExtglob(value);
3735
+ while (match) {
3736
+ depth++;
3737
+ value = match.body.trim();
3738
+ match = parseRepeatedExtglob(value);
3739
+ }
3740
+ return depth;
3741
+ };
3742
+ var analyzeRepeatedExtglob = (body, options) => {
3743
+ if (options.maxExtglobRecursion === false) {
3744
+ return { risky: false };
3745
+ }
3746
+ const max = typeof options.maxExtglobRecursion === "number" ? options.maxExtglobRecursion : constants5.DEFAULT_MAX_EXTGLOB_RECURSION;
3747
+ const branches = splitTopLevel(body).map((branch) => branch.trim());
3748
+ if (branches.length > 1) {
3749
+ if (branches.some((branch) => branch === "") || branches.some((branch) => /^[*?]+$/.test(branch)) || hasRepeatedCharPrefixOverlap(branches)) {
3750
+ return { risky: true };
3751
+ }
3752
+ }
3753
+ for (const branch of branches) {
3754
+ const safeOutput = getStarExtglobSequenceOutput(branch);
3755
+ if (safeOutput) {
3756
+ return { risky: true, safeOutput };
3757
+ }
3758
+ if (repeatedExtglobRecursion(branch) > max) {
3759
+ return { risky: true };
3760
+ }
3761
+ }
3762
+ return { risky: false };
3763
+ };
3560
3764
  var parse3 = (input, options) => {
3561
3765
  if (typeof input !== "string") {
3562
3766
  throw new TypeError("Expected a string");
@@ -3688,6 +3892,8 @@ var require_parse = __commonJS((exports, module) => {
3688
3892
  token.prev = prev;
3689
3893
  token.parens = state3.parens;
3690
3894
  token.output = state3.output;
3895
+ token.startIndex = state3.index;
3896
+ token.tokensIndex = tokens.length;
3691
3897
  const output = (opts.capture ? "(" : "") + token.open;
3692
3898
  increment("parens");
3693
3899
  push({ type: type2, value: value2, output: state3.output ? "" : ONE_CHAR });
@@ -3695,6 +3901,26 @@ var require_parse = __commonJS((exports, module) => {
3695
3901
  extglobs.push(token);
3696
3902
  };
3697
3903
  const extglobClose = (token) => {
3904
+ const literal = input.slice(token.startIndex, state3.index + 1);
3905
+ const body = input.slice(token.startIndex + 2, state3.index);
3906
+ const analysis = analyzeRepeatedExtglob(body, opts);
3907
+ if ((token.type === "plus" || token.type === "star") && analysis.risky) {
3908
+ const safeOutput = analysis.safeOutput ? (token.output ? "" : ONE_CHAR) + (opts.capture ? `(${analysis.safeOutput})` : analysis.safeOutput) : undefined;
3909
+ const open = tokens[token.tokensIndex];
3910
+ open.type = "text";
3911
+ open.value = literal;
3912
+ open.output = safeOutput || utils.escapeRegex(literal);
3913
+ for (let i2 = token.tokensIndex + 1;i2 < tokens.length; i2++) {
3914
+ tokens[i2].value = "";
3915
+ tokens[i2].output = "";
3916
+ delete tokens[i2].suffix;
3917
+ }
3918
+ state3.output = token.output + open.output;
3919
+ state3.backtrack = true;
3920
+ push({ type: "paren", extglob: true, value, output: "" });
3921
+ decrement("parens");
3922
+ return;
3923
+ }
3698
3924
  let output = token.close + (opts.capture ? ")" : "");
3699
3925
  let rest;
3700
3926
  if (token.type === "negate") {
@@ -130770,7 +130996,7 @@ class PostHog extends PostHogBackendClient {
130770
130996
  // package.json
130771
130997
  var package_default = {
130772
130998
  name: "@skj1724/oh-my-opencode",
130773
- version: "3.18.11",
130999
+ version: "3.18.13",
130774
131000
  description: "The Best AI Agent Harness - Batteries-Included OpenCode Plugin with Multi-Model Orchestration, Parallel Background Agents, and Crafted LSP/AST Tools",
130775
131001
  main: "./dist/index.js",
130776
131002
  types: "dist/index.d.ts",
@@ -130838,7 +131064,7 @@ var package_default = {
130838
131064
  "js-yaml": "^4.1.1",
130839
131065
  "jsonc-parser": "^3.3.1",
130840
131066
  picocolors: "^1.1.1",
130841
- picomatch: "^4.0.2",
131067
+ picomatch: "^4.0.4",
130842
131068
  "posthog-node": "5.28.11",
130843
131069
  "vscode-jsonrpc": "^8.2.0"
130844
131070
  },
@@ -130859,7 +131085,7 @@ var package_default = {
130859
131085
  "oh-my-opencode-linux-x64-baseline": "3.17.4",
130860
131086
  "oh-my-opencode-linux-x64-musl": "3.17.4",
130861
131087
  "oh-my-opencode-linux-x64-musl-baseline": "3.17.4",
130862
- "oh-my-opencode-windows-x64": "3.17.4",
131088
+ "@skj1724/oh-my-opencode-windows-x64": "3.17.4",
130863
131089
  "oh-my-opencode-windows-x64-baseline": "3.17.4"
130864
131090
  },
130865
131091
  overrides: {},
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@skj1724/oh-my-opencode",
3
- "version": "3.18.11",
3
+ "version": "3.18.13",
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",
@@ -68,7 +68,7 @@
68
68
  "js-yaml": "^4.1.1",
69
69
  "jsonc-parser": "^3.3.1",
70
70
  "picocolors": "^1.1.1",
71
- "picomatch": "^4.0.2",
71
+ "picomatch": "^4.0.4",
72
72
  "posthog-node": "5.28.11",
73
73
  "vscode-jsonrpc": "^8.2.0"
74
74
  },
@@ -89,7 +89,7 @@
89
89
  "oh-my-opencode-linux-x64-baseline": "3.17.4",
90
90
  "oh-my-opencode-linux-x64-musl": "3.17.4",
91
91
  "oh-my-opencode-linux-x64-musl-baseline": "3.17.4",
92
- "oh-my-opencode-windows-x64": "3.17.4",
92
+ "@skj1724/oh-my-opencode-windows-x64": "3.17.4",
93
93
  "oh-my-opencode-windows-x64-baseline": "3.17.4"
94
94
  },
95
95
  "overrides": {},