opencode-account-manager 0.6.1 → 0.6.2

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.
@@ -50,13 +50,13 @@ function AccountRow({ account, isSelected, isChecked, showCheckbox }) {
50
50
  ? (isChecked ? "[x]" : "[ ]")
51
51
  : "";
52
52
  const cursor = isSelected ? ">" : " ";
53
- const emailColor = status === "disabled" ? "gray" : (isSelected ? "white" : "cyan");
53
+ const emailColor = status === "disabled" ? "gray" : "white";
54
54
  return (react_1.default.createElement(ink_1.Box, { flexDirection: "column" },
55
55
  react_1.default.createElement(ink_1.Box, { flexDirection: "row", paddingX: 1 },
56
56
  react_1.default.createElement(ink_1.Box, { width: 2 },
57
- react_1.default.createElement(ink_1.Text, { color: isSelected ? "yellow" : "white" }, cursor)),
57
+ react_1.default.createElement(ink_1.Text, { color: isSelected ? "white" : "gray" }, cursor)),
58
58
  showCheckbox && (react_1.default.createElement(ink_1.Box, { width: 4 },
59
- react_1.default.createElement(ink_1.Text, { color: isChecked ? "green" : "gray" }, checkbox))),
59
+ react_1.default.createElement(ink_1.Text, { color: isChecked ? "white" : "gray" }, checkbox))),
60
60
  react_1.default.createElement(ink_1.Box, { width: 28 },
61
61
  react_1.default.createElement(ink_1.Text, { color: emailColor, strikethrough: status === "disabled" }, account.email)),
62
62
  react_1.default.createElement(ink_1.Box, { width: 18 },
@@ -66,7 +66,7 @@ function AccountRow({ account, isSelected, isChecked, showCheckbox }) {
66
66
  react_1.default.createElement(ink_1.Box, { width: 10 },
67
67
  react_1.default.createElement(ink_1.Text, { dimColor: true }, resetIn))),
68
68
  status === "limited" && limitDetails.length > 0 && (react_1.default.createElement(ink_1.Box, { paddingLeft: showCheckbox ? 8 : 4 },
69
- react_1.default.createElement(ink_1.Text, { color: "gray" },
69
+ react_1.default.createElement(ink_1.Text, { dimColor: true },
70
70
  "\u2514\u2500 ",
71
71
  limitDetails.join(" | "))))));
72
72
  }
@@ -1 +1 @@
1
- {"version":3,"file":"AccountList.js","sourceRoot":"","sources":["../../../src/tui/components/AccountList.tsx"],"names":[],"mappings":";;;;;AAqDA,gCA8CC;AASD,kCA8CC;AA1JD,kDAA0B;AAC1B,6BAAgC;AAChC,+CAA4C;AAU5C,SAAS,cAAc,CAAC,EAAU;IAChC,IAAI,EAAE,IAAI,CAAC;QAAE,OAAO,GAAG,CAAC;IACxB,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,GAAG,KAAK,CAAC,CAAC;IACvC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,EAAE,CAAC,CAAC;IACvC,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,EAAE,CAAC,CAAC;IACpC,IAAI,IAAI,GAAG,CAAC;QAAE,OAAO,GAAG,IAAI,KAAK,KAAK,GAAG,EAAE,GAAG,CAAC;IAC/C,IAAI,KAAK,GAAG,CAAC;QAAE,OAAO,GAAG,KAAK,KAAK,OAAO,GAAG,EAAE,GAAG,CAAC;IACnD,OAAO,GAAG,OAAO,GAAG,CAAC;AACvB,CAAC;AAED,SAAS,gBAAgB,CAAC,OAAgB;IAKxC,IAAI,OAAO,CAAC,OAAO,KAAK,KAAK,EAAE,CAAC;QAC9B,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,GAAG,EAAE,YAAY,EAAE,EAAE,EAAE,CAAC;IAChE,CAAC;IACD,MAAM,MAAM,GAAG,OAAO,CAAC,mBAAmB,IAAI,EAAE,CAAC;IACjD,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACvB,MAAM,YAAY,GAAa,EAAE,CAAC;IAElC,2CAA2C;IAC3C,KAAK,MAAM,CAAC,KAAK,EAAE,SAAS,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QACxD,IAAI,SAAS,GAAG,GAAG,EAAE,CAAC;YACpB,YAAY,CAAC,IAAI,CAAC,GAAG,KAAK,KAAK,cAAc,CAAC,SAAS,GAAG,GAAG,CAAC,EAAE,CAAC,CAAC;QACpE,CAAC;IACH,CAAC;IAED,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC9B,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,GAAG,EAAE,YAAY,EAAE,EAAE,EAAE,CAAC;IACjE,CAAC;IAED,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC;IAC5E,OAAO;QACL,MAAM,EAAE,SAAS;QACjB,OAAO,EAAE,cAAc,CAAC,SAAS,GAAG,GAAG,CAAC;QACxC,YAAY;KACb,CAAC;AACJ,CAAC;AAED,SAAgB,UAAU,CAAC,EAAE,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,YAAY,EAAmB;IAC1F,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,YAAY,EAAE,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC;IACpE,MAAM,OAAO,GAAG,OAAO,CAAC,SAAS,IAAI,OAAO,CAAC,gBAAgB,IAAI,GAAG,CAAC;IAErE,MAAM,QAAQ,GAAG,YAAY;QAC3B,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC;QAC7B,CAAC,CAAC,EAAE,CAAC;IAEP,MAAM,MAAM,GAAG,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;IACtC,MAAM,UAAU,GAAG,MAAM,KAAK,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;IAEpF,OAAO,CACL,8BAAC,SAAG,IAAC,aAAa,EAAC,QAAQ;QACzB,8BAAC,SAAG,IAAC,aAAa,EAAC,KAAK,EAAC,QAAQ,EAAE,CAAC;YAClC,8BAAC,SAAG,IAAC,KAAK,EAAE,CAAC;gBACX,8BAAC,UAAI,IAAC,KAAK,EAAE,UAAU,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,IAAG,MAAM,CAAQ,CACzD;YACL,YAAY,IAAI,CACf,8BAAC,SAAG,IAAC,KAAK,EAAE,CAAC;gBACX,8BAAC,UAAI,IAAC,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,IAAG,QAAQ,CAAQ,CACxD,CACP;YACD,8BAAC,SAAG,IAAC,KAAK,EAAE,EAAE;gBACZ,8BAAC,UAAI,IAAC,KAAK,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,KAAK,UAAU,IAC1D,OAAO,CAAC,KAAK,CACT,CACH;YACN,8BAAC,SAAG,IAAC,KAAK,EAAE,EAAE;gBACZ,8BAAC,UAAI,IAAC,QAAQ,UAAE,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAQ,CACxC;YACN,8BAAC,SAAG,IAAC,KAAK,EAAE,EAAE;gBACZ,8BAAC,yBAAW,IAAC,MAAM,EAAE,MAAM,GAAI,CAC3B;YACN,8BAAC,SAAG,IAAC,KAAK,EAAE,EAAE;gBACZ,8BAAC,UAAI,IAAC,QAAQ,UAAE,OAAO,CAAQ,CAC3B,CACF;QACL,MAAM,KAAK,SAAS,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,IAAI,CAClD,8BAAC,SAAG,IAAC,WAAW,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACpC,8BAAC,UAAI,IAAC,KAAK,EAAC,MAAM;;gBACZ,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CACvB,CACH,CACP,CACG,CACP,CAAC;AACJ,CAAC;AASD,SAAgB,WAAW,CAAC,EAC1B,QAAQ,EACR,aAAa,GAAG,CAAC,CAAC,EAClB,aAAa,GAAG,IAAI,GAAG,EAAE,EACzB,YAAY,GAAG,KAAK,EACH;IACjB,OAAO,CACL,8BAAC,SAAG,IAAC,aAAa,EAAC,QAAQ;QACzB,8BAAC,SAAG,IAAC,aAAa,EAAC,KAAK,EAAC,QAAQ,EAAE,CAAC,EAAE,YAAY,EAAE,CAAC;YACnD,8BAAC,SAAG,IAAC,KAAK,EAAE,CAAC;gBACX,8BAAC,UAAI,IAAC,QAAQ,cAAS,CACnB;YACL,YAAY,IAAI,CACf,8BAAC,SAAG,IAAC,KAAK,EAAE,CAAC;gBACX,8BAAC,UAAI,IAAC,IAAI,QAAC,QAAQ,gBAAW,CAC1B,CACP;YACD,8BAAC,SAAG,IAAC,KAAK,EAAE,EAAE;gBACZ,8BAAC,UAAI,IAAC,IAAI,QAAC,QAAQ,kBAAa,CAC5B;YACN,8BAAC,SAAG,IAAC,KAAK,EAAE,EAAE;gBACZ,8BAAC,UAAI,IAAC,IAAI,QAAC,QAAQ,oBAAe,CAC9B;YACN,8BAAC,SAAG,IAAC,KAAK,EAAE,EAAE;gBACZ,8BAAC,UAAI,IAAC,IAAI,QAAC,QAAQ,mBAAc,CAC7B;YACN,8BAAC,SAAG,IAAC,KAAK,EAAE,EAAE;gBACZ,8BAAC,UAAI,IAAC,IAAI,QAAC,QAAQ,qBAAgB,CAC/B,CACF;QACL,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE,CAAC,CAChC,8BAAC,UAAU,IACT,GAAG,EAAE,OAAO,CAAC,KAAK,EAClB,OAAO,EAAE,OAAO,EAChB,UAAU,EAAE,KAAK,KAAK,aAAa,EACnC,SAAS,EAAE,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,EAC3C,YAAY,EAAE,YAAY,GAC1B,CACH,CAAC;QACD,QAAQ,CAAC,MAAM,KAAK,CAAC,IAAI,CACxB,8BAAC,SAAG,IAAC,QAAQ,EAAE,CAAC;YACd,8BAAC,UAAI,IAAC,QAAQ,8BAAyB,CACnC,CACP,CACG,CACP,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"AccountList.js","sourceRoot":"","sources":["../../../src/tui/components/AccountList.tsx"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"ActionPalette.d.ts","sourceRoot":"","sources":["../../../src/tui/components/ActionPalette.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmB,MAAM,OAAO,CAAC;AAGxC,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,UAAU,kBAAkB;IAC1B,OAAO,EAAE,aAAa,EAAE,CAAC;IACzB,QAAQ,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;IACrC,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB;AAED,wBAAgB,aAAa,CAAC,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,EAAE,kBAAkB,qBAsG/E"}
1
+ {"version":3,"file":"ActionPalette.d.ts","sourceRoot":"","sources":["../../../src/tui/components/ActionPalette.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmB,MAAM,OAAO,CAAC;AAGxC,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,UAAU,kBAAkB;IAC1B,OAAO,EAAE,aAAa,EAAE,CAAC;IACzB,QAAQ,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;IACrC,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB;AAED,wBAAgB,aAAa,CAAC,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,EAAE,kBAAkB,qBAmG/E"}
@@ -82,9 +82,9 @@ function ActionPalette({ actions, onSelect, onClose }) {
82
82
  setSelectedIndex(0);
83
83
  }
84
84
  });
85
- return (react_1.default.createElement(ink_1.Box, { flexDirection: "column", borderStyle: "round", borderColor: "cyan", paddingX: 1, paddingY: 0 },
85
+ return (react_1.default.createElement(ink_1.Box, { flexDirection: "column", borderStyle: "round", borderColor: "gray", paddingX: 1, paddingY: 0 },
86
86
  react_1.default.createElement(ink_1.Box, { marginBottom: 1 },
87
- react_1.default.createElement(ink_1.Text, { color: "cyan", bold: true },
87
+ react_1.default.createElement(ink_1.Text, { bold: true },
88
88
  ">",
89
89
  " "),
90
90
  react_1.default.createElement(ink_1.Text, null, search || " "),
@@ -92,7 +92,7 @@ function ActionPalette({ actions, onSelect, onClose }) {
92
92
  react_1.default.createElement(ink_1.Box, { flexDirection: "column", marginBottom: 1 }, filteredActions.length === 0 ? (react_1.default.createElement(ink_1.Text, { dimColor: true }, "No matching actions")) : (filteredActions.slice(0, 10).map((action, index) => {
93
93
  const isSelected = index === selectedIndex;
94
94
  return (react_1.default.createElement(ink_1.Box, { key: action.id },
95
- react_1.default.createElement(ink_1.Text, { backgroundColor: isSelected ? "cyan" : undefined, color: isSelected ? "black" : "white" },
95
+ react_1.default.createElement(ink_1.Text, { inverse: isSelected, dimColor: !isSelected },
96
96
  isSelected ? "▸ " : " ",
97
97
  action.label),
98
98
  action.shortcut && (react_1.default.createElement(ink_1.Text, { dimColor: true },
@@ -1 +1 @@
1
- {"version":3,"file":"ActionPalette.js","sourceRoot":"","sources":["../../../src/tui/components/ActionPalette.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ActionPalette.js","sourceRoot":"","sources":["../../../src/tui/components/ActionPalette.tsx"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"DashboardView.d.ts","sourceRoot":"","sources":["../../../src/tui/components/DashboardView.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAE3C,UAAU,kBAAkB;IAC1B,QAAQ,EAAE,OAAO,EAAE,CAAC;IACpB,aAAa,EAAE,MAAM,CAAC;CACvB;AAgID,wBAAgB,aAAa,CAAC,EAAE,QAAQ,EAAE,aAAa,EAAE,EAAE,kBAAkB,qBAmI5E"}
1
+ {"version":3,"file":"DashboardView.d.ts","sourceRoot":"","sources":["../../../src/tui/components/DashboardView.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAE3C,UAAU,kBAAkB;IAC1B,QAAQ,EAAE,OAAO,EAAE,CAAC;IACpB,aAAa,EAAE,MAAM,CAAC;CACvB;AA8KD,wBAAgB,aAAa,CAAC,EAAE,QAAQ,EAAE,aAAa,EAAE,EAAE,kBAAkB,qBA2I5E"}
@@ -9,12 +9,20 @@ const ink_1 = require("ink");
9
9
  // Model definitions with display names
10
10
  const MODEL_CONFIGS = [
11
11
  { key: "claude", displayName: "Claude", shortName: "Claude" },
12
- { key: "gemini", displayName: "Gemini Pro", shortName: "G Pro" },
13
- { key: "gemini-cli:gemini-3-flash-preview", displayName: "Gemini Flash", shortName: "G Flash" },
14
- { key: "gemini-cli:gemini-3-pro-preview", displayName: "Gemini Pro", shortName: "G Pro" },
15
- { key: "gemini-cli:gemini-2.5-pro", displayName: "G 2.5 Pro", shortName: "G2.5P" },
16
- { key: "gemini-cli:imagen-3", displayName: "Imagen 3", shortName: "Img3" },
12
+ { key: "gemini-cli:gemini-3-pro-preview", displayName: "G3 Pro", shortName: "G3 Pro" },
13
+ { key: "gemini-cli:gemini-3-flash-preview", displayName: "G3 Flash", shortName: "G3 Fl" },
14
+ { key: "gemini-cli:imagen-3", displayName: "G3 Image", shortName: "G3 Img" },
15
+ { key: "gemini-cli:gemini-2.5-pro", displayName: "G2.5 Pro", shortName: "G2.5" },
16
+ { key: "gemini-cli:gemini-2.0-flash", displayName: "G2 Flash", shortName: "G2 Fl" },
17
+ { key: "gemini", displayName: "Gemini", shortName: "Gem" },
17
18
  ];
19
+ const DEFAULT_MODEL_KEYS = [
20
+ "claude",
21
+ "gemini-cli:gemini-3-pro-preview",
22
+ "gemini-cli:gemini-3-flash-preview",
23
+ "gemini-cli:imagen-3",
24
+ ];
25
+ const MODEL_CONFIG_MAP = new Map(MODEL_CONFIGS.map((model) => [model.key, model]));
18
26
  function formatTimeRemaining(resetTime) {
19
27
  const now = Date.now();
20
28
  if (resetTime <= now)
@@ -33,10 +41,10 @@ function calculatePercentage(resetTime) {
33
41
  if (resetTime <= now)
34
42
  return 100;
35
43
  const remaining = resetTime - now;
36
- const maxTime = 5 * 3600000; // 5 hours as max reference
37
- const elapsed = maxTime - remaining;
38
- const pct = Math.max(0, Math.min(100, Math.round((elapsed / maxTime) * 100)));
39
- return pct;
44
+ const maxTime = 24 * 3600000;
45
+ const clamped = Math.min(remaining, maxTime);
46
+ const elapsed = maxTime - clamped;
47
+ return Math.max(0, Math.min(100, Math.round((elapsed / maxTime) * 100)));
40
48
  }
41
49
  function getModelStatus(account, modelKey) {
42
50
  const now = Date.now();
@@ -58,46 +66,77 @@ function getModelStatus(account, modelKey) {
58
66
  resetTime,
59
67
  };
60
68
  }
61
- function getActiveModels(accounts) {
62
- const now = Date.now();
63
- const activeKeys = new Set();
64
- // Collect all model keys that have rate limit data
65
- accounts.forEach(acc => {
69
+ function getModelDisplayName(model) {
70
+ if (model.includes(":")) {
71
+ const parts = model.split(":");
72
+ return parts[1] || parts[0];
73
+ }
74
+ return model;
75
+ }
76
+ function getModelShortName(model) {
77
+ const name = getModelDisplayName(model);
78
+ if (name.length <= 7)
79
+ return name;
80
+ return name.slice(0, 6) + "…";
81
+ }
82
+ function getDisplayModels(accounts) {
83
+ const activeKeys = new Set(DEFAULT_MODEL_KEYS);
84
+ accounts.forEach((acc) => {
66
85
  if (acc.rateLimitResetTimes) {
67
- Object.keys(acc.rateLimitResetTimes).forEach(key => {
86
+ Object.keys(acc.rateLimitResetTimes).forEach((key) => {
68
87
  activeKeys.add(key);
69
88
  });
70
89
  }
71
90
  });
72
- // Return models that are in our config OR have rate limit data
73
- const models = MODEL_CONFIGS.filter(m => activeKeys.has(m.key));
74
- // If no models found, show default ones
75
- if (models.length === 0) {
76
- return MODEL_CONFIGS.slice(0, 2); // Claude and Gemini
77
- }
91
+ const models = [];
92
+ DEFAULT_MODEL_KEYS.forEach((key) => {
93
+ const config = MODEL_CONFIG_MAP.get(key);
94
+ if (config)
95
+ models.push(config);
96
+ });
97
+ const extraKeys = Array.from(activeKeys).filter((key) => !DEFAULT_MODEL_KEYS.includes(key));
98
+ extraKeys.sort().forEach((key) => {
99
+ const config = MODEL_CONFIG_MAP.get(key);
100
+ if (config) {
101
+ models.push(config);
102
+ }
103
+ else {
104
+ models.push({
105
+ key,
106
+ displayName: getModelDisplayName(key),
107
+ shortName: getModelShortName(key),
108
+ });
109
+ }
110
+ });
78
111
  return models;
79
112
  }
113
+ function formatLastUsed(timestamp) {
114
+ if (!timestamp)
115
+ return "--";
116
+ const date = new Date(timestamp);
117
+ const month = String(date.getMonth() + 1).padStart(2, "0");
118
+ const day = String(date.getDate()).padStart(2, "0");
119
+ const hours = String(date.getHours()).padStart(2, "0");
120
+ const minutes = String(date.getMinutes()).padStart(2, "0");
121
+ return `${month}/${day} ${hours}:${minutes}`;
122
+ }
80
123
  // Progress bar component using text
81
- function ProgressBar({ percentage, width = 8 }) {
124
+ function ProgressBar({ percentage, width = 6 }) {
82
125
  const filled = Math.round((percentage / 100) * width);
83
126
  const empty = width - filled;
84
- // Color based on percentage
85
- const color = percentage === 100 ? "white" : percentage >= 50 ? "gray" : "gray";
86
- return (react_1.default.createElement(ink_1.Text, { color: color },
127
+ return (react_1.default.createElement(ink_1.Text, null,
87
128
  "█".repeat(filled),
88
129
  react_1.default.createElement(ink_1.Text, { dimColor: true }, "░".repeat(empty))));
89
130
  }
90
131
  // Model cell component
91
- function ModelCell({ status, width = 18 }) {
132
+ function ModelCell({ status, width = 20 }) {
92
133
  return (react_1.default.createElement(ink_1.Box, { width: width },
93
134
  react_1.default.createElement(ink_1.Box, { width: 8 },
94
135
  react_1.default.createElement(ProgressBar, { percentage: status.percentage, width: 6 })),
95
- react_1.default.createElement(ink_1.Box, { width: 6 },
96
- react_1.default.createElement(ink_1.Text, { dimColor: true }, status.timeRemaining.padStart(5))),
97
- react_1.default.createElement(ink_1.Box, { width: 4 },
98
- react_1.default.createElement(ink_1.Text, { color: status.percentage === 100 ? "white" : "gray" },
99
- String(status.percentage).padStart(3),
100
- "%"))));
136
+ react_1.default.createElement(ink_1.Box, { width: 7 },
137
+ react_1.default.createElement(ink_1.Text, { dimColor: true }, status.timeRemaining.padStart(6))),
138
+ react_1.default.createElement(ink_1.Box, { width: 5 },
139
+ react_1.default.createElement(ink_1.Text, null, `${status.percentage}%`.padStart(4)))));
101
140
  }
102
141
  function DashboardView({ accounts, selectedIndex }) {
103
142
  if (accounts.length === 0) {
@@ -105,19 +144,23 @@ function DashboardView({ accounts, selectedIndex }) {
105
144
  react_1.default.createElement(ink_1.Text, { dimColor: true }, "No accounts configured."),
106
145
  react_1.default.createElement(ink_1.Text, { dimColor: true }, "Press P to open actions and import accounts.")));
107
146
  }
108
- const activeModels = getActiveModels(accounts);
109
- const modelColumnWidth = 18;
147
+ const displayModels = getDisplayModels(accounts);
148
+ const modelColumnWidth = 20;
110
149
  const emailWidth = 28;
150
+ const lastUsedWidth = 14;
151
+ const totalWidth = 3 + emailWidth + displayModels.length * modelColumnWidth + lastUsedWidth;
111
152
  return (react_1.default.createElement(ink_1.Box, { flexDirection: "column" },
112
153
  react_1.default.createElement(ink_1.Box, { paddingX: 1 },
113
154
  react_1.default.createElement(ink_1.Box, { width: 3 },
114
155
  react_1.default.createElement(ink_1.Text, { dimColor: true }, " ")),
115
156
  react_1.default.createElement(ink_1.Box, { width: emailWidth },
116
157
  react_1.default.createElement(ink_1.Text, { dimColor: true, bold: true }, "EMAIL")),
117
- activeModels.map(model => (react_1.default.createElement(ink_1.Box, { key: model.key, width: modelColumnWidth },
118
- react_1.default.createElement(ink_1.Text, { dimColor: true, bold: true }, model.shortName))))),
158
+ displayModels.map(model => (react_1.default.createElement(ink_1.Box, { key: model.key, width: modelColumnWidth },
159
+ react_1.default.createElement(ink_1.Text, { dimColor: true, bold: true }, model.shortName)))),
160
+ react_1.default.createElement(ink_1.Box, { width: lastUsedWidth },
161
+ react_1.default.createElement(ink_1.Text, { dimColor: true, bold: true }, "LAST USED"))),
119
162
  react_1.default.createElement(ink_1.Box, { paddingX: 1 },
120
- react_1.default.createElement(ink_1.Text, { dimColor: true }, "─".repeat(3 + emailWidth + activeModels.length * modelColumnWidth))),
163
+ react_1.default.createElement(ink_1.Text, { dimColor: true }, "─".repeat(totalWidth))),
121
164
  accounts.map((account, index) => {
122
165
  const isSelected = index === selectedIndex;
123
166
  const isDisabled = account.enabled === false;
@@ -130,17 +173,19 @@ function DashboardView({ accounts, selectedIndex }) {
130
173
  react_1.default.createElement(ink_1.Text, { bold: isSelected }, isSelected ? "› " : " ")),
131
174
  react_1.default.createElement(ink_1.Box, { width: emailWidth },
132
175
  react_1.default.createElement(ink_1.Text, { bold: isSelected, dimColor: isDisabled }, email)),
133
- activeModels.map(model => {
176
+ displayModels.map(model => {
134
177
  const status = getModelStatus(account, model.key);
135
178
  if (isDisabled) {
136
179
  return (react_1.default.createElement(ink_1.Box, { key: model.key, width: modelColumnWidth },
137
180
  react_1.default.createElement(ink_1.Text, { dimColor: true }, "\u2500\u2500 disabled \u2500\u2500")));
138
181
  }
139
182
  return (react_1.default.createElement(ModelCell, { key: model.key, status: status, width: modelColumnWidth }));
140
- })));
183
+ }),
184
+ react_1.default.createElement(ink_1.Box, { width: lastUsedWidth },
185
+ react_1.default.createElement(ink_1.Text, { dimColor: true }, formatLastUsed(account.lastUsed)))));
141
186
  }),
142
187
  react_1.default.createElement(ink_1.Box, { paddingX: 1, marginTop: 1 },
143
- react_1.default.createElement(ink_1.Text, { dimColor: true }, "─".repeat(3 + emailWidth + activeModels.length * modelColumnWidth))),
188
+ react_1.default.createElement(ink_1.Text, { dimColor: true }, "─".repeat(totalWidth))),
144
189
  react_1.default.createElement(ink_1.Box, { paddingX: 1 },
145
190
  react_1.default.createElement(ink_1.Text, { dimColor: true },
146
191
  accounts.length,
@@ -1 +1 @@
1
- {"version":3,"file":"DashboardView.js","sourceRoot":"","sources":["../../../src/tui/components/DashboardView.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DashboardView.js","sourceRoot":"","sources":["../../../src/tui/components/DashboardView.tsx"],"names":[],"mappings":"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"}
@@ -23,9 +23,9 @@ function McpServerList({ servers }) {
23
23
  react_1.default.createElement(ink_1.Text, { bold: true, dimColor: true }, "COMMAND"))),
24
24
  servers.map((server) => (react_1.default.createElement(ink_1.Box, { key: server.id },
25
25
  react_1.default.createElement(ink_1.Box, { width: 20 },
26
- react_1.default.createElement(ink_1.Text, { color: "cyan" }, truncate(server.id, 18))),
27
- react_1.default.createElement(ink_1.Box, { width: 10 }, server.enabled ? (react_1.default.createElement(ink_1.Text, { color: "green" }, "enabled")) : (react_1.default.createElement(ink_1.Text, { color: "red" }, "disabled"))),
28
- react_1.default.createElement(ink_1.Box, { width: 8 }, server.hasEnvVars ? (react_1.default.createElement(ink_1.Text, { color: "yellow" }, server.envVarCount)) : (react_1.default.createElement(ink_1.Text, { dimColor: true }, "-"))),
26
+ react_1.default.createElement(ink_1.Text, null, truncate(server.id, 18))),
27
+ react_1.default.createElement(ink_1.Box, { width: 10 }, server.enabled ? (react_1.default.createElement(ink_1.Text, null, "enabled")) : (react_1.default.createElement(ink_1.Text, { dimColor: true }, "disabled"))),
28
+ react_1.default.createElement(ink_1.Box, { width: 8 }, server.hasEnvVars ? (react_1.default.createElement(ink_1.Text, null, server.envVarCount)) : (react_1.default.createElement(ink_1.Text, { dimColor: true }, "-"))),
29
29
  react_1.default.createElement(ink_1.Box, null,
30
30
  react_1.default.createElement(ink_1.Text, { dimColor: true }, truncate(server.command, 40))))))));
31
31
  }
@@ -1 +1 @@
1
- {"version":3,"file":"McpServerList.js","sourceRoot":"","sources":["../../../src/tui/components/McpServerList.tsx"],"names":[],"mappings":";;;;;AAQA,sCAsDC;AA9DD,kDAA0B;AAC1B,6BAAgC;AAOhC,SAAgB,aAAa,CAAC,EAAE,OAAO,EAAsB;IAC3D,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACzB,OAAO,CACL,8BAAC,SAAG,IAAC,QAAQ,EAAE,CAAC;YACd,8BAAC,UAAI,IAAC,QAAQ,sCAAiC,CAC3C,CACP,CAAC;IACJ,CAAC;IAED,OAAO,CACL,8BAAC,SAAG,IAAC,aAAa,EAAC,QAAQ,EAAC,QAAQ,EAAE,CAAC;QAErC,8BAAC,SAAG;YACF,8BAAC,SAAG,IAAC,KAAK,EAAE,EAAE;gBACZ,8BAAC,UAAI,IAAC,IAAI,QAAC,QAAQ,mBAAc,CAC7B;YACN,8BAAC,SAAG,IAAC,KAAK,EAAE,EAAE;gBACZ,8BAAC,UAAI,IAAC,IAAI,QAAC,QAAQ,mBAAc,CAC7B;YACN,8BAAC,SAAG,IAAC,KAAK,EAAE,CAAC;gBACX,8BAAC,UAAI,IAAC,IAAI,QAAC,QAAQ,gBAAW,CAC1B;YACN,8BAAC,SAAG;gBACF,8BAAC,UAAI,IAAC,IAAI,QAAC,QAAQ,oBAAe,CAC9B,CACF;QAGL,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CACvB,8BAAC,SAAG,IAAC,GAAG,EAAE,MAAM,CAAC,EAAE;YACjB,8BAAC,SAAG,IAAC,KAAK,EAAE,EAAE;gBACZ,8BAAC,UAAI,IAAC,KAAK,EAAC,MAAM,IAAE,QAAQ,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,CAAC,CAAQ,CAC/C;YACN,8BAAC,SAAG,IAAC,KAAK,EAAE,EAAE,IACX,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAChB,8BAAC,UAAI,IAAC,KAAK,EAAC,OAAO,cAAe,CACnC,CAAC,CAAC,CAAC,CACF,8BAAC,UAAI,IAAC,KAAK,EAAC,KAAK,eAAgB,CAClC,CACG;YACN,8BAAC,SAAG,IAAC,KAAK,EAAE,CAAC,IACV,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CACnB,8BAAC,UAAI,IAAC,KAAK,EAAC,QAAQ,IAAE,MAAM,CAAC,WAAW,CAAQ,CACjD,CAAC,CAAC,CAAC,CACF,8BAAC,UAAI,IAAC,QAAQ,cAAS,CACxB,CACG;YACN,8BAAC,SAAG;gBACF,8BAAC,UAAI,IAAC,QAAQ,UAAE,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAE,EAAE,CAAC,CAAQ,CAChD,CACF,CACP,CAAC,CACE,CACP,CAAC;AACJ,CAAC;AAED,SAAS,QAAQ,CAAC,GAAW,EAAE,GAAW;IACxC,OAAO,GAAG,CAAC,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;AAC9D,CAAC"}
1
+ {"version":3,"file":"McpServerList.js","sourceRoot":"","sources":["../../../src/tui/components/McpServerList.tsx"],"names":[],"mappings":";;;;;AAQA,sCAsDC;AA9DD,kDAA0B;AAC1B,6BAAgC;AAOhC,SAAgB,aAAa,CAAC,EAAE,OAAO,EAAsB;IAC3D,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACzB,OAAO,CACL,8BAAC,SAAG,IAAC,QAAQ,EAAE,CAAC;YACd,8BAAC,UAAI,IAAC,QAAQ,sCAAiC,CAC3C,CACP,CAAC;IACJ,CAAC;IAED,OAAO,CACL,8BAAC,SAAG,IAAC,aAAa,EAAC,QAAQ,EAAC,QAAQ,EAAE,CAAC;QAErC,8BAAC,SAAG;YACF,8BAAC,SAAG,IAAC,KAAK,EAAE,EAAE;gBACZ,8BAAC,UAAI,IAAC,IAAI,QAAC,QAAQ,mBAAc,CAC7B;YACN,8BAAC,SAAG,IAAC,KAAK,EAAE,EAAE;gBACZ,8BAAC,UAAI,IAAC,IAAI,QAAC,QAAQ,mBAAc,CAC7B;YACN,8BAAC,SAAG,IAAC,KAAK,EAAE,CAAC;gBACX,8BAAC,UAAI,IAAC,IAAI,QAAC,QAAQ,gBAAW,CAC1B;YACN,8BAAC,SAAG;gBACF,8BAAC,UAAI,IAAC,IAAI,QAAC,QAAQ,oBAAe,CAC9B,CACF;QAGL,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CACvB,8BAAC,SAAG,IAAC,GAAG,EAAE,MAAM,CAAC,EAAE;YACjB,8BAAC,SAAG,IAAC,KAAK,EAAE,EAAE;gBACZ,8BAAC,UAAI,QAAE,QAAQ,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,CAAC,CAAQ,CAClC;YACN,8BAAC,SAAG,IAAC,KAAK,EAAE,EAAE,IACX,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAChB,8BAAC,UAAI,kBAAe,CACrB,CAAC,CAAC,CAAC,CACF,8BAAC,UAAI,IAAC,QAAQ,qBAAgB,CAC/B,CACG;YACN,8BAAC,SAAG,IAAC,KAAK,EAAE,CAAC,IACV,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CACnB,8BAAC,UAAI,QAAE,MAAM,CAAC,WAAW,CAAQ,CAClC,CAAC,CAAC,CAAC,CACF,8BAAC,UAAI,IAAC,QAAQ,cAAS,CACxB,CACG;YACN,8BAAC,SAAG;gBACF,8BAAC,UAAI,IAAC,QAAQ,UAAE,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAE,EAAE,CAAC,CAAQ,CAChD,CACF,CACP,CAAC,CACE,CACP,CAAC;AACJ,CAAC;AAED,SAAS,QAAQ,CAAC,GAAW,EAAE,GAAW;IACxC,OAAO,GAAG,CAAC,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;AAC9D,CAAC"}
@@ -70,11 +70,11 @@ function MenuBar({ onSelect, selectMode = false, selectedCount = 0 }) {
70
70
  });
71
71
  return (react_1.default.createElement(ink_1.Box, { flexDirection: "column" },
72
72
  selectMode && (react_1.default.createElement(ink_1.Box, { marginBottom: 1, paddingX: 1 },
73
- react_1.default.createElement(ink_1.Text, { color: "yellow", bold: true },
73
+ react_1.default.createElement(ink_1.Text, { dimColor: true, bold: true },
74
74
  "SELECT MODE - ",
75
75
  selectedCount,
76
76
  " selected | \u2191\u2193 navigate | SPACE toggle | \u2190\u2192 switch section"))),
77
- react_1.default.createElement(ink_1.Box, { borderStyle: "single", borderColor: selectMode ? "yellow" : "gray", paddingX: 1, justifyContent: "space-between" }, visibleItems.map((item) => (react_1.default.createElement(ink_1.Text, { key: item.action + item.key, dimColor: true },
77
+ react_1.default.createElement(ink_1.Box, { borderStyle: "single", borderColor: selectMode ? "white" : "gray", paddingX: 1, justifyContent: "space-between" }, visibleItems.map((item) => (react_1.default.createElement(ink_1.Text, { key: item.action + item.key, dimColor: true },
78
78
  "[",
79
79
  item.key,
80
80
  "] ",
@@ -1 +1 @@
1
- {"version":3,"file":"Menu.js","sourceRoot":"","sources":["../../../src/tui/components/Menu.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Menu.js","sourceRoot":"","sources":["../../../src/tui/components/Menu.tsx"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"ProviderList.d.ts","sourceRoot":"","sources":["../../../src/tui/components/ProviderList.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAE1D,UAAU,iBAAiB;IACzB,SAAS,EAAE,YAAY,EAAE,CAAC;CAC3B;AAED,wBAAgB,YAAY,CAAC,EAAE,SAAS,EAAE,EAAE,iBAAiB,qBAgD5D"}
1
+ {"version":3,"file":"ProviderList.d.ts","sourceRoot":"","sources":["../../../src/tui/components/ProviderList.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAE1D,UAAU,iBAAiB;IACzB,SAAS,EAAE,YAAY,EAAE,CAAC;CAC3B;AAED,wBAAgB,YAAY,CAAC,EAAE,SAAS,EAAE,EAAE,iBAAiB,qBA8C5D"}
@@ -23,11 +23,11 @@ function ProviderList({ providers }) {
23
23
  react_1.default.createElement(ink_1.Text, { bold: true, dimColor: true }, "BASE URL"))),
24
24
  providers.map((provider) => (react_1.default.createElement(ink_1.Box, { key: provider.id },
25
25
  react_1.default.createElement(ink_1.Box, { width: 20 },
26
- react_1.default.createElement(ink_1.Text, { color: "cyan" }, truncate(provider.name || provider.id, 18))),
26
+ react_1.default.createElement(ink_1.Text, null, truncate(provider.name || provider.id, 18))),
27
27
  react_1.default.createElement(ink_1.Box, { width: 10 },
28
- react_1.default.createElement(ink_1.Text, { color: "yellow" }, provider.modelCount)),
28
+ react_1.default.createElement(ink_1.Text, null, provider.modelCount)),
29
29
  react_1.default.createElement(ink_1.Box, { width: 10 },
30
- react_1.default.createElement(ink_1.Text, { color: provider.type === "builtin" ? "green" : "magenta" }, provider.type)),
30
+ react_1.default.createElement(ink_1.Text, { dimColor: true }, provider.type)),
31
31
  react_1.default.createElement(ink_1.Box, null,
32
32
  react_1.default.createElement(ink_1.Text, { dimColor: true }, provider.baseURL || "-")))))));
33
33
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ProviderList.js","sourceRoot":"","sources":["../../../src/tui/components/ProviderList.tsx"],"names":[],"mappings":";;;;;AAQA,oCAgDC;AAxDD,kDAA0B;AAC1B,6BAAgC;AAOhC,SAAgB,YAAY,CAAC,EAAE,SAAS,EAAqB;IAC3D,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC3B,OAAO,CACL,8BAAC,SAAG,IAAC,QAAQ,EAAE,CAAC;YACd,8BAAC,UAAI,IAAC,QAAQ,oCAA+B,CACzC,CACP,CAAC;IACJ,CAAC;IAED,OAAO,CACL,8BAAC,SAAG,IAAC,aAAa,EAAC,QAAQ,EAAC,QAAQ,EAAE,CAAC;QAErC,8BAAC,SAAG;YACF,8BAAC,SAAG,IAAC,KAAK,EAAE,EAAE;gBACZ,8BAAC,UAAI,IAAC,IAAI,QAAC,QAAQ,qBAAgB,CAC/B;YACN,8BAAC,SAAG,IAAC,KAAK,EAAE,EAAE;gBACZ,8BAAC,UAAI,IAAC,IAAI,QAAC,QAAQ,mBAAc,CAC7B;YACN,8BAAC,SAAG,IAAC,KAAK,EAAE,EAAE;gBACZ,8BAAC,UAAI,IAAC,IAAI,QAAC,QAAQ,iBAAY,CAC3B;YACN,8BAAC,SAAG;gBACF,8BAAC,UAAI,IAAC,IAAI,QAAC,QAAQ,qBAAgB,CAC/B,CACF;QAGL,SAAS,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAC3B,8BAAC,SAAG,IAAC,GAAG,EAAE,QAAQ,CAAC,EAAE;YACnB,8BAAC,SAAG,IAAC,KAAK,EAAE,EAAE;gBACZ,8BAAC,UAAI,IAAC,KAAK,EAAC,MAAM,IAAE,QAAQ,CAAC,QAAQ,CAAC,IAAI,IAAI,QAAQ,CAAC,EAAE,EAAE,EAAE,CAAC,CAAQ,CAClE;YACN,8BAAC,SAAG,IAAC,KAAK,EAAE,EAAE;gBACZ,8BAAC,UAAI,IAAC,KAAK,EAAC,QAAQ,IAAE,QAAQ,CAAC,UAAU,CAAQ,CAC7C;YACN,8BAAC,SAAG,IAAC,KAAK,EAAE,EAAE;gBACZ,8BAAC,UAAI,IAAC,KAAK,EAAE,QAAQ,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,IAC3D,QAAQ,CAAC,IAAI,CACT,CACH;YACN,8BAAC,SAAG;gBACF,8BAAC,UAAI,IAAC,QAAQ,UAAE,QAAQ,CAAC,OAAO,IAAI,GAAG,CAAQ,CAC3C,CACF,CACP,CAAC,CACE,CACP,CAAC;AACJ,CAAC;AAED,SAAS,QAAQ,CAAC,GAAW,EAAE,GAAW;IACxC,OAAO,GAAG,CAAC,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;AAC9D,CAAC"}
1
+ {"version":3,"file":"ProviderList.js","sourceRoot":"","sources":["../../../src/tui/components/ProviderList.tsx"],"names":[],"mappings":";;;;;AAQA,oCA8CC;AAtDD,kDAA0B;AAC1B,6BAAgC;AAOhC,SAAgB,YAAY,CAAC,EAAE,SAAS,EAAqB;IAC3D,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC3B,OAAO,CACL,8BAAC,SAAG,IAAC,QAAQ,EAAE,CAAC;YACd,8BAAC,UAAI,IAAC,QAAQ,oCAA+B,CACzC,CACP,CAAC;IACJ,CAAC;IAED,OAAO,CACL,8BAAC,SAAG,IAAC,aAAa,EAAC,QAAQ,EAAC,QAAQ,EAAE,CAAC;QAErC,8BAAC,SAAG;YACF,8BAAC,SAAG,IAAC,KAAK,EAAE,EAAE;gBACZ,8BAAC,UAAI,IAAC,IAAI,QAAC,QAAQ,qBAAgB,CAC/B;YACN,8BAAC,SAAG,IAAC,KAAK,EAAE,EAAE;gBACZ,8BAAC,UAAI,IAAC,IAAI,QAAC,QAAQ,mBAAc,CAC7B;YACN,8BAAC,SAAG,IAAC,KAAK,EAAE,EAAE;gBACZ,8BAAC,UAAI,IAAC,IAAI,QAAC,QAAQ,iBAAY,CAC3B;YACN,8BAAC,SAAG;gBACF,8BAAC,UAAI,IAAC,IAAI,QAAC,QAAQ,qBAAgB,CAC/B,CACF;QAGL,SAAS,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAC3B,8BAAC,SAAG,IAAC,GAAG,EAAE,QAAQ,CAAC,EAAE;YACnB,8BAAC,SAAG,IAAC,KAAK,EAAE,EAAE;gBACZ,8BAAC,UAAI,QAAE,QAAQ,CAAC,QAAQ,CAAC,IAAI,IAAI,QAAQ,CAAC,EAAE,EAAE,EAAE,CAAC,CAAQ,CACrD;YACN,8BAAC,SAAG,IAAC,KAAK,EAAE,EAAE;gBACZ,8BAAC,UAAI,QAAE,QAAQ,CAAC,UAAU,CAAQ,CAC9B;YACN,8BAAC,SAAG,IAAC,KAAK,EAAE,EAAE;gBACZ,8BAAC,UAAI,IAAC,QAAQ,UAAE,QAAQ,CAAC,IAAI,CAAQ,CACjC;YACN,8BAAC,SAAG;gBACF,8BAAC,UAAI,IAAC,QAAQ,UAAE,QAAQ,CAAC,OAAO,IAAI,GAAG,CAAQ,CAC3C,CACF,CACP,CAAC,CACE,CACP,CAAC;AACJ,CAAC;AAED,SAAS,QAAQ,CAAC,GAAW,EAAE,GAAW;IACxC,OAAO,GAAG,CAAC,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;AAC9D,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "opencode-account-manager",
3
- "version": "0.6.1",
3
+ "version": "0.6.2",
4
4
  "description": "TUI Dashboard for OpenCode - View providers, MCP servers, and plugin accounts",
5
5
  "main": "dist/cli.js",
6
6
  "bin": {
@@ -60,17 +60,17 @@ export function AccountRow({ account, isSelected, isChecked, showCheckbox }: Acc
60
60
  : "";
61
61
 
62
62
  const cursor = isSelected ? ">" : " ";
63
- const emailColor = status === "disabled" ? "gray" : (isSelected ? "white" : "cyan");
63
+ const emailColor = status === "disabled" ? "gray" : "white";
64
64
 
65
65
  return (
66
66
  <Box flexDirection="column">
67
67
  <Box flexDirection="row" paddingX={1}>
68
68
  <Box width={2}>
69
- <Text color={isSelected ? "yellow" : "white"}>{cursor}</Text>
69
+ <Text color={isSelected ? "white" : "gray"}>{cursor}</Text>
70
70
  </Box>
71
71
  {showCheckbox && (
72
72
  <Box width={4}>
73
- <Text color={isChecked ? "green" : "gray"}>{checkbox}</Text>
73
+ <Text color={isChecked ? "white" : "gray"}>{checkbox}</Text>
74
74
  </Box>
75
75
  )}
76
76
  <Box width={28}>
@@ -90,7 +90,7 @@ export function AccountRow({ account, isSelected, isChecked, showCheckbox }: Acc
90
90
  </Box>
91
91
  {status === "limited" && limitDetails.length > 0 && (
92
92
  <Box paddingLeft={showCheckbox ? 8 : 4}>
93
- <Text color="gray">
93
+ <Text dimColor>
94
94
  └─ {limitDetails.join(" | ")}
95
95
  </Text>
96
96
  </Box>
@@ -75,13 +75,13 @@ export function ActionPalette({ actions, onSelect, onClose }: ActionPaletteProps
75
75
  <Box
76
76
  flexDirection="column"
77
77
  borderStyle="round"
78
- borderColor="cyan"
78
+ borderColor="gray"
79
79
  paddingX={1}
80
80
  paddingY={0}
81
81
  >
82
82
  {/* Search input */}
83
83
  <Box marginBottom={1}>
84
- <Text color="cyan" bold>{">"} </Text>
84
+ <Text bold>{">"} </Text>
85
85
  <Text>{search || " "}</Text>
86
86
  <Text color="gray">_</Text>
87
87
  </Box>
@@ -95,10 +95,7 @@ export function ActionPalette({ actions, onSelect, onClose }: ActionPaletteProps
95
95
  const isSelected = index === selectedIndex;
96
96
  return (
97
97
  <Box key={action.id}>
98
- <Text
99
- backgroundColor={isSelected ? "cyan" : undefined}
100
- color={isSelected ? "black" : "white"}
101
- >
98
+ <Text inverse={isSelected} dimColor={!isSelected}>
102
99
  {isSelected ? "▸ " : " "}
103
100
  {action.label}
104
101
  </Text>
@@ -7,16 +7,32 @@ interface DashboardViewProps {
7
7
  selectedIndex: number;
8
8
  }
9
9
 
10
+ interface ModelConfig {
11
+ key: string;
12
+ displayName: string;
13
+ shortName: string;
14
+ }
15
+
10
16
  // Model definitions with display names
11
- const MODEL_CONFIGS = [
17
+ const MODEL_CONFIGS: ModelConfig[] = [
12
18
  { key: "claude", displayName: "Claude", shortName: "Claude" },
13
- { key: "gemini", displayName: "Gemini Pro", shortName: "G Pro" },
14
- { key: "gemini-cli:gemini-3-flash-preview", displayName: "Gemini Flash", shortName: "G Flash" },
15
- { key: "gemini-cli:gemini-3-pro-preview", displayName: "Gemini Pro", shortName: "G Pro" },
16
- { key: "gemini-cli:gemini-2.5-pro", displayName: "G 2.5 Pro", shortName: "G2.5P" },
17
- { key: "gemini-cli:imagen-3", displayName: "Imagen 3", shortName: "Img3" },
19
+ { key: "gemini-cli:gemini-3-pro-preview", displayName: "G3 Pro", shortName: "G3 Pro" },
20
+ { key: "gemini-cli:gemini-3-flash-preview", displayName: "G3 Flash", shortName: "G3 Fl" },
21
+ { key: "gemini-cli:imagen-3", displayName: "G3 Image", shortName: "G3 Img" },
22
+ { key: "gemini-cli:gemini-2.5-pro", displayName: "G2.5 Pro", shortName: "G2.5" },
23
+ { key: "gemini-cli:gemini-2.0-flash", displayName: "G2 Flash", shortName: "G2 Fl" },
24
+ { key: "gemini", displayName: "Gemini", shortName: "Gem" },
18
25
  ];
19
26
 
27
+ const DEFAULT_MODEL_KEYS = [
28
+ "claude",
29
+ "gemini-cli:gemini-3-pro-preview",
30
+ "gemini-cli:gemini-3-flash-preview",
31
+ "gemini-cli:imagen-3",
32
+ ];
33
+
34
+ const MODEL_CONFIG_MAP = new Map(MODEL_CONFIGS.map((model) => [model.key, model]));
35
+
20
36
  interface ModelStatus {
21
37
  available: boolean;
22
38
  timeRemaining: string;
@@ -44,10 +60,10 @@ function calculatePercentage(resetTime: number): number {
44
60
  if (resetTime <= now) return 100;
45
61
 
46
62
  const remaining = resetTime - now;
47
- const maxTime = 5 * 3600000; // 5 hours as max reference
48
- const elapsed = maxTime - remaining;
49
- const pct = Math.max(0, Math.min(100, Math.round((elapsed / maxTime) * 100)));
50
- return pct;
63
+ const maxTime = 24 * 3600000;
64
+ const clamped = Math.min(remaining, maxTime);
65
+ const elapsed = maxTime - clamped;
66
+ return Math.max(0, Math.min(100, Math.round((elapsed / maxTime) * 100)));
51
67
  }
52
68
 
53
69
  function getModelStatus(account: Account, modelKey: string): ModelStatus {
@@ -74,40 +90,72 @@ function getModelStatus(account: Account, modelKey: string): ModelStatus {
74
90
  };
75
91
  }
76
92
 
77
- function getActiveModels(accounts: Account[]): typeof MODEL_CONFIGS {
78
- const now = Date.now();
79
- const activeKeys = new Set<string>();
80
-
81
- // Collect all model keys that have rate limit data
82
- accounts.forEach(acc => {
93
+ function getModelDisplayName(model: string): string {
94
+ if (model.includes(":")) {
95
+ const parts = model.split(":");
96
+ return parts[1] || parts[0];
97
+ }
98
+ return model;
99
+ }
100
+
101
+ function getModelShortName(model: string): string {
102
+ const name = getModelDisplayName(model);
103
+ if (name.length <= 7) return name;
104
+ return name.slice(0, 6) + "…";
105
+ }
106
+
107
+ function getDisplayModels(accounts: Account[]): ModelConfig[] {
108
+ const activeKeys = new Set<string>(DEFAULT_MODEL_KEYS);
109
+
110
+ accounts.forEach((acc) => {
83
111
  if (acc.rateLimitResetTimes) {
84
- Object.keys(acc.rateLimitResetTimes).forEach(key => {
112
+ Object.keys(acc.rateLimitResetTimes).forEach((key) => {
85
113
  activeKeys.add(key);
86
114
  });
87
115
  }
88
116
  });
89
-
90
- // Return models that are in our config OR have rate limit data
91
- const models = MODEL_CONFIGS.filter(m => activeKeys.has(m.key));
92
-
93
- // If no models found, show default ones
94
- if (models.length === 0) {
95
- return MODEL_CONFIGS.slice(0, 2); // Claude and Gemini
96
- }
97
-
117
+
118
+ const models: ModelConfig[] = [];
119
+
120
+ DEFAULT_MODEL_KEYS.forEach((key) => {
121
+ const config = MODEL_CONFIG_MAP.get(key);
122
+ if (config) models.push(config);
123
+ });
124
+
125
+ const extraKeys = Array.from(activeKeys).filter((key) => !DEFAULT_MODEL_KEYS.includes(key));
126
+ extraKeys.sort().forEach((key) => {
127
+ const config = MODEL_CONFIG_MAP.get(key);
128
+ if (config) {
129
+ models.push(config);
130
+ } else {
131
+ models.push({
132
+ key,
133
+ displayName: getModelDisplayName(key),
134
+ shortName: getModelShortName(key),
135
+ });
136
+ }
137
+ });
138
+
98
139
  return models;
99
140
  }
100
141
 
142
+ function formatLastUsed(timestamp?: number): string {
143
+ if (!timestamp) return "--";
144
+ const date = new Date(timestamp);
145
+ const month = String(date.getMonth() + 1).padStart(2, "0");
146
+ const day = String(date.getDate()).padStart(2, "0");
147
+ const hours = String(date.getHours()).padStart(2, "0");
148
+ const minutes = String(date.getMinutes()).padStart(2, "0");
149
+ return `${month}/${day} ${hours}:${minutes}`;
150
+ }
151
+
101
152
  // Progress bar component using text
102
- function ProgressBar({ percentage, width = 8 }: { percentage: number; width?: number }) {
153
+ function ProgressBar({ percentage, width = 6 }: { percentage: number; width?: number }) {
103
154
  const filled = Math.round((percentage / 100) * width);
104
155
  const empty = width - filled;
105
-
106
- // Color based on percentage
107
- const color = percentage === 100 ? "white" : percentage >= 50 ? "gray" : "gray";
108
-
156
+
109
157
  return (
110
- <Text color={color}>
158
+ <Text>
111
159
  {"█".repeat(filled)}
112
160
  <Text dimColor>{"░".repeat(empty)}</Text>
113
161
  </Text>
@@ -115,19 +163,17 @@ function ProgressBar({ percentage, width = 8 }: { percentage: number; width?: nu
115
163
  }
116
164
 
117
165
  // Model cell component
118
- function ModelCell({ status, width = 18 }: { status: ModelStatus; width?: number }) {
166
+ function ModelCell({ status, width = 20 }: { status: ModelStatus; width?: number }) {
119
167
  return (
120
168
  <Box width={width}>
121
169
  <Box width={8}>
122
170
  <ProgressBar percentage={status.percentage} width={6} />
123
171
  </Box>
124
- <Box width={6}>
125
- <Text dimColor>{status.timeRemaining.padStart(5)}</Text>
172
+ <Box width={7}>
173
+ <Text dimColor>{status.timeRemaining.padStart(6)}</Text>
126
174
  </Box>
127
- <Box width={4}>
128
- <Text color={status.percentage === 100 ? "white" : "gray"}>
129
- {String(status.percentage).padStart(3)}%
130
- </Text>
175
+ <Box width={5}>
176
+ <Text>{`${status.percentage}%`.padStart(4)}</Text>
131
177
  </Box>
132
178
  </Box>
133
179
  );
@@ -143,9 +189,11 @@ export function DashboardView({ accounts, selectedIndex }: DashboardViewProps) {
143
189
  );
144
190
  }
145
191
 
146
- const activeModels = getActiveModels(accounts);
147
- const modelColumnWidth = 18;
192
+ const displayModels = getDisplayModels(accounts);
193
+ const modelColumnWidth = 20;
148
194
  const emailWidth = 28;
195
+ const lastUsedWidth = 14;
196
+ const totalWidth = 3 + emailWidth + displayModels.length * modelColumnWidth + lastUsedWidth;
149
197
 
150
198
  return (
151
199
  <Box flexDirection="column">
@@ -157,16 +205,19 @@ export function DashboardView({ accounts, selectedIndex }: DashboardViewProps) {
157
205
  <Box width={emailWidth}>
158
206
  <Text dimColor bold>EMAIL</Text>
159
207
  </Box>
160
- {activeModels.map(model => (
208
+ {displayModels.map(model => (
161
209
  <Box key={model.key} width={modelColumnWidth}>
162
210
  <Text dimColor bold>{model.shortName}</Text>
163
211
  </Box>
164
212
  ))}
213
+ <Box width={lastUsedWidth}>
214
+ <Text dimColor bold>LAST USED</Text>
215
+ </Box>
165
216
  </Box>
166
217
 
167
218
  {/* Separator */}
168
219
  <Box paddingX={1}>
169
- <Text dimColor>{"─".repeat(3 + emailWidth + activeModels.length * modelColumnWidth)}</Text>
220
+ <Text dimColor>{"─".repeat(totalWidth)}</Text>
170
221
  </Box>
171
222
 
172
223
  {/* Account rows */}
@@ -199,7 +250,7 @@ export function DashboardView({ accounts, selectedIndex }: DashboardViewProps) {
199
250
  </Box>
200
251
 
201
252
  {/* Model columns */}
202
- {activeModels.map(model => {
253
+ {displayModels.map(model => {
203
254
  const status = getModelStatus(account, model.key);
204
255
 
205
256
  if (isDisabled) {
@@ -218,13 +269,16 @@ export function DashboardView({ accounts, selectedIndex }: DashboardViewProps) {
218
269
  />
219
270
  );
220
271
  })}
272
+ <Box width={lastUsedWidth}>
273
+ <Text dimColor>{formatLastUsed(account.lastUsed)}</Text>
274
+ </Box>
221
275
  </Box>
222
276
  );
223
277
  })}
224
278
 
225
279
  {/* Summary */}
226
280
  <Box paddingX={1} marginTop={1}>
227
- <Text dimColor>{"─".repeat(3 + emailWidth + activeModels.length * modelColumnWidth)}</Text>
281
+ <Text dimColor>{"─".repeat(totalWidth)}</Text>
228
282
  </Box>
229
283
 
230
284
  <Box paddingX={1}>
@@ -37,18 +37,18 @@ export function McpServerList({ servers }: McpServerListProps) {
37
37
  {servers.map((server) => (
38
38
  <Box key={server.id}>
39
39
  <Box width={20}>
40
- <Text color="cyan">{truncate(server.id, 18)}</Text>
40
+ <Text>{truncate(server.id, 18)}</Text>
41
41
  </Box>
42
42
  <Box width={10}>
43
43
  {server.enabled ? (
44
- <Text color="green">enabled</Text>
44
+ <Text>enabled</Text>
45
45
  ) : (
46
- <Text color="red">disabled</Text>
46
+ <Text dimColor>disabled</Text>
47
47
  )}
48
48
  </Box>
49
49
  <Box width={8}>
50
50
  {server.hasEnvVars ? (
51
- <Text color="yellow">{server.envVarCount}</Text>
51
+ <Text>{server.envVarCount}</Text>
52
52
  ) : (
53
53
  <Text dimColor>-</Text>
54
54
  )}
@@ -81,14 +81,14 @@ export function MenuBar({ onSelect, selectMode = false, selectedCount = 0 }: Men
81
81
  <Box flexDirection="column">
82
82
  {selectMode && (
83
83
  <Box marginBottom={1} paddingX={1}>
84
- <Text color="yellow" bold>
84
+ <Text dimColor bold>
85
85
  SELECT MODE - {selectedCount} selected | ↑↓ navigate | SPACE toggle | ←→ switch section
86
86
  </Text>
87
87
  </Box>
88
88
  )}
89
89
  <Box
90
90
  borderStyle="single"
91
- borderColor={selectMode ? "yellow" : "gray"}
91
+ borderColor={selectMode ? "white" : "gray"}
92
92
  paddingX={1}
93
93
  justifyContent="space-between"
94
94
  >
@@ -37,15 +37,13 @@ export function ProviderList({ providers }: ProviderListProps) {
37
37
  {providers.map((provider) => (
38
38
  <Box key={provider.id}>
39
39
  <Box width={20}>
40
- <Text color="cyan">{truncate(provider.name || provider.id, 18)}</Text>
40
+ <Text>{truncate(provider.name || provider.id, 18)}</Text>
41
41
  </Box>
42
42
  <Box width={10}>
43
- <Text color="yellow">{provider.modelCount}</Text>
43
+ <Text>{provider.modelCount}</Text>
44
44
  </Box>
45
45
  <Box width={10}>
46
- <Text color={provider.type === "builtin" ? "green" : "magenta"}>
47
- {provider.type}
48
- </Text>
46
+ <Text dimColor>{provider.type}</Text>
49
47
  </Box>
50
48
  <Box>
51
49
  <Text dimColor>{provider.baseURL || "-"}</Text>