@songsid/agend 2.3.0-beta.1 → 2.3.0-beta.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.
Files changed (85) hide show
  1. package/dist/agent-cli.js +5 -5
  2. package/dist/agent-cli.js.map +1 -1
  3. package/dist/agent-file-read.d.ts +11 -6
  4. package/dist/agent-file-read.js +32 -17
  5. package/dist/agent-file-read.js.map +1 -1
  6. package/dist/agent-whats-new.js +8 -13
  7. package/dist/agent-whats-new.js.map +1 -1
  8. package/dist/backend/claude-code.js +5 -1
  9. package/dist/backend/claude-code.js.map +1 -1
  10. package/dist/backend/types.d.ts +8 -0
  11. package/dist/backend/types.js +10 -0
  12. package/dist/backend/types.js.map +1 -1
  13. package/dist/cache-analysis.d.ts +47 -1
  14. package/dist/cache-analysis.js +68 -8
  15. package/dist/cache-analysis.js.map +1 -1
  16. package/dist/cache-report-tool.d.ts +17 -0
  17. package/dist/cache-report-tool.js +40 -0
  18. package/dist/cache-report-tool.js.map +1 -0
  19. package/dist/cache-service.d.ts +15 -0
  20. package/dist/cache-service.js +26 -1
  21. package/dist/cache-service.js.map +1 -1
  22. package/dist/channel/mcp-tools.js +5 -3
  23. package/dist/channel/mcp-tools.js.map +1 -1
  24. package/dist/cli.js +7 -3
  25. package/dist/cli.js.map +1 -1
  26. package/dist/config-validator.js +5 -1
  27. package/dist/config-validator.js.map +1 -1
  28. package/dist/daemon.js +5 -5
  29. package/dist/daemon.js.map +1 -1
  30. package/dist/fleet-manager.d.ts +3 -0
  31. package/dist/fleet-manager.js +9 -4
  32. package/dist/fleet-manager.js.map +1 -1
  33. package/dist/general-knowledge/skills/credential-profiles/SKILL.md +7 -0
  34. package/dist/general-knowledge/skills/web-appearance/SKILL.md +112 -3
  35. package/dist/outbound-handlers.d.ts +2 -0
  36. package/dist/outbound-handlers.js +35 -1
  37. package/dist/outbound-handlers.js.map +1 -1
  38. package/dist/outbound-schemas.d.ts +10 -0
  39. package/dist/outbound-schemas.js +6 -0
  40. package/dist/outbound-schemas.js.map +1 -1
  41. package/dist/scheduler/scheduler.d.ts +12 -0
  42. package/dist/scheduler/scheduler.js +83 -10
  43. package/dist/scheduler/scheduler.js.map +1 -1
  44. package/dist/service-installer.d.ts +2 -1
  45. package/dist/service-installer.js +18 -3
  46. package/dist/service-installer.js.map +1 -1
  47. package/dist/tool-permissions.d.ts +5 -0
  48. package/dist/tool-permissions.js +11 -2
  49. package/dist/tool-permissions.js.map +1 -1
  50. package/dist/ui/chat-effects.js +2 -2
  51. package/dist/ui/fleet-cache.js +23 -1
  52. package/dist/ui/shared/app.css +11 -2
  53. package/dist/ui/shared/instance-nav.js +15 -5
  54. package/dist/ui/shared/usage-dialog.js +14 -2
  55. package/dist/ui/shared/view-strings.js +6 -2
  56. package/dist/ui/signin.html +1 -1
  57. package/dist/usage/providers.d.ts +3 -0
  58. package/dist/usage/providers.js +4 -3
  59. package/dist/usage/providers.js.map +1 -1
  60. package/dist/web-api.js +3 -1
  61. package/dist/web-api.js.map +1 -1
  62. package/dist/web-asset-parts.d.ts +3 -8
  63. package/dist/web-asset-parts.js.map +1 -1
  64. package/dist/web-effect-service.js +3 -1
  65. package/dist/web-effect-service.js.map +1 -1
  66. package/dist/web-effect-tools.js +4 -1
  67. package/dist/web-effect-tools.js.map +1 -1
  68. package/dist/web-effect-trials.d.ts +2 -2
  69. package/dist/web-effect-trials.js +3 -3
  70. package/dist/web-effect-trials.js.map +1 -1
  71. package/dist/web-effect-upload.d.ts +2 -4
  72. package/dist/web-effect-upload.js +3 -8
  73. package/dist/web-effect-upload.js.map +1 -1
  74. package/dist/web-effect.d.ts +14 -0
  75. package/dist/web-effect.js +21 -0
  76. package/dist/web-effect.js.map +1 -1
  77. package/dist/web-mod-agent.js +5 -3
  78. package/dist/web-mod-agent.js.map +1 -1
  79. package/dist/web-mod-bundle.d.ts +5 -0
  80. package/dist/web-mod-bundle.js +6 -0
  81. package/dist/web-mod-bundle.js.map +1 -1
  82. package/dist/web-mod-store.js +2 -1
  83. package/dist/web-mod-store.js.map +1 -1
  84. package/package.json +1 -1
  85. package/templates/systemd.service.ejs +8 -0
@@ -10,8 +10,8 @@ import { toast } from "/assets/ui-toast.js";
10
10
  import { getAppEffects } from "./app-effects.js";
11
11
 
12
12
  register("chatFx", {
13
- en: { title: "Effects", loading: "Checking effects…", empty: "No effects in this chat.", failed: "Effects stopped because their resources could not be verified. Reload the page to try again.", reload: "Reload page", pause: "Pause", resume: "Resume", remove: "Remove from chat", removeFailed: "Could not remove this effect. Reload the page to check its state.", css: "Agent foreground effects are paused while your custom CSS is on or cannot be verified.", setting: "Open Appearance settings", running: "Running", starting: "Starting", off: "Stopped", resumeFailed: "This effect cannot resume: the page or its safety history is not ready. Reload the page or choose another effect.", queued: "Waiting for a slot", unknown: "Playback is off or unavailable here.", budget: "Paused to protect page responsiveness. Resume keeps the three-pauses safety limit.", paused: "Paused", low: "Reduced quality" },
14
- "zh-TW": { title: "效果", loading: "正在確認效果…", empty: "這個聊天沒有放置效果。", failed: "無法確認效果資源,已停止播放。重新載入頁面後再試。", reload: "重新載入頁面", pause: "暫停", resume: "恢復", remove: "從聊天移除", removeFailed: "無法移除效果。請重新載入頁面確認狀態。", css: "自訂 CSS 開啟或無法確認時,代理的前景效果會暫停。", setting: "開啟外觀設定", running: "播放中", starting: "啟動中", off: "已停止", resumeFailed: "頁面或安全紀錄尚未就緒,無法恢復此效果。請重新載入頁面,或選擇其他效果。", queued: "等待空位", unknown: "這裡已關閉播放,或無法播放效果。", budget: "為維持頁面順暢,已暫停效果。恢復仍保留三次暫停的安全上限。", paused: "已暫停", low: "降低畫質" },
13
+ en: { title: "Effects", loading: "Checking effects…", empty: "No effects in this chat.", failed: "Effects stopped because their resources could not be verified. Reload the page to try again.", reload: "Reload page", pause: "Pause", resume: "Resume", remove: "Remove from chat", removeFailed: "Could not remove this effect. Reload the page to check its state.", css: "Agent foreground effects are paused while your custom CSS is on or cannot be verified.", setting: "Open Web appearance settings", running: "Running", starting: "Starting", off: "Stopped", resumeFailed: "This effect cannot resume: the page or its safety history is not ready. Reload the page or choose another effect.", queued: "Waiting for a slot", unknown: "Playback is off or unavailable here.", budget: "Paused to protect page responsiveness. Resume keeps the three-pauses safety limit.", paused: "Paused", low: "Reduced quality" },
14
+ "zh-TW": { title: "效果", loading: "正在確認效果…", empty: "這個聊天沒有放置效果。", failed: "無法確認效果資源,已停止播放。重新載入頁面後再試。", reload: "重新載入頁面", pause: "暫停", resume: "恢復", remove: "從聊天移除", removeFailed: "無法移除效果。請重新載入頁面確認狀態。", css: "自訂 CSS 開啟或無法確認時,代理的前景效果會暫停。", setting: "開啟網頁外觀設定", running: "播放中", starting: "啟動中", off: "已停止", resumeFailed: "頁面或安全紀錄尚未就緒,無法恢復此效果。請重新載入頁面,或選擇其他效果。", queued: "等待空位", unknown: "這裡已關閉播放,或無法播放效果。", budget: "為維持頁面順暢,已暫停效果。恢復仍保留三次暫停的安全上限。", paused: "已暫停", low: "降低畫質" },
15
15
  });
16
16
 
17
17
  /** Local read/admin sessions keep controls; public, View, poll and header-only pages have no runtime identity. */
@@ -31,6 +31,11 @@ register("cache", {
31
31
  shared: "shares its working directory with {0}; their transcripts cannot be told apart",
32
32
  empty: "No instances", emptyHint: "Instances show here once the fleet has them.",
33
33
  b0: "≤5m", b1: "≤30m", b2: "≤1h", b3: "≤2h", b4: "≤6h", b5: "≤24h", b6: ">24h", tokensUnit: "input-token equivalents",
34
+ writeMix: "Cache writes 5 min / 1 h", effectiveTtl: "Behaves as", gapMiss: "{0} of {1} 5–60 min gaps rewrote it", gapMissNone: "no 5–60 min gaps yet",
35
+ effMeasured: "{0} (measured)", effLabel: "{0} (as written)", effUnproven: "not known yet",
36
+ fleetSwitch: "Switch to 1-hour cache",
37
+ switchTo1h: "Its 5-minute cache really expires: {0} of {1} gaps of 5–60 minutes rewrote it. Set prompt_cache_ttl: \"1h\" for this instance (backend_options.claude-code) rather than keep-warm.",
38
+ unproven: "Written with a 5-minute TTL, but only {0} gaps of 5–60 minutes so far — too few to tell how long it really lasts. The keep-warm figures assume 5 minutes.",
34
39
  },
35
40
  "zh-TW": {
36
41
  title: "快取", w24h: "24 小時", w7d: "7 天", w30d: "30 天", window: "期間",
@@ -53,6 +58,11 @@ register("cache", {
53
58
  shared: "與 {0} 共用工作目錄,無法分辨各自的 transcript",
54
59
  empty: "沒有 instance", emptyHint: "fleet 有 instance 後會顯示在這裡。",
55
60
  b0: "≤5分", b1: "≤30分", b2: "≤1時", b3: "≤2時", b4: "≤6時", b5: "≤24時", b6: ">24時", tokensUnit: "輸入 token 當量",
61
+ writeMix: "快取寫入 5 分 / 1 時", effectiveTtl: "實際存活", gapMiss: "{1} 個 5–60 分鐘空檔中有 {0} 個重寫", gapMissNone: "還沒有 5–60 分鐘的空檔",
62
+ effMeasured: "{0}(實測)", effLabel: "{0}(依寫入標記)", effUnproven: "尚無法判斷",
63
+ fleetSwitch: "建議改用 1 小時快取",
64
+ switchTo1h: "它的 5 分鐘快取確實會過期:{1} 個 5–60 分鐘空檔中有 {0} 個重寫。請為這個 instance 設定 prompt_cache_ttl: \"1h\"(backend_options.claude-code),而不是保溫。",
65
+ unproven: "以 5 分鐘 TTL 寫入,但目前只有 {0} 個 5–60 分鐘空檔,太少,無法判斷實際存活多久。保溫的數字以 5 分鐘估算。",
56
66
  },
57
67
  });
58
68
  const tc = (k, ...v) => t(`cache.${k}`, ...v);
@@ -79,6 +89,8 @@ const pct = (x) => `${x >= 0.1 ? Math.round(x * 100) : (x * 100).toFixed(1)}%`;
79
89
  export function reasonText(a) {
80
90
  const r = a.recommendation, ttl = ttlText(a.ttlSec);
81
91
  if (r.reason === "quiet") return tc("quiet");
92
+ if (r.reason === "switch_to_1h") return tc("switchTo1h", a.effectiveTtl.misses, a.effectiveTtl.sample);
93
+ if (r.reason === "insufficient_evidence") return tc("unproven", a.effectiveTtl.sample);
82
94
  if (r.reason === "never_expired") {
83
95
  if (a.sim.pastTtl) return tc("survived", a.sim.pastTtl, ttl);
84
96
  return a.sim.tailPings ? tc("onlyIdle", a.sim.tailPings.toLocaleString("en-US")) : tc("neverExpired", ttl);
@@ -107,6 +119,12 @@ function Histogram({ buckets, ttlSec }) {
107
119
  </svg>`;
108
120
  }
109
121
 
122
+ /** #2010: what the TTL behaves as — measured, as written, or not known yet. */
123
+ export function effectiveText(e) {
124
+ if (e.ttlSec === null) return tc("effUnproven");
125
+ return e.basis === "measured" ? tc("effMeasured", ttlText(e.ttlSec)) : tc("effLabel", ttlText(e.ttlSec));
126
+ }
127
+
110
128
  function Metric({ label, value, sub }) {
111
129
  return html`<div class="ch-metric"><dt>${label}</dt><dd>${value}${sub ? html`<span class="ch-sub">${sub}</span>` : null}</dd></div>`;
112
130
  }
@@ -130,8 +148,11 @@ function InstanceCard({ r }) {
130
148
  <${Metric} label=${tc("pings")} value=${(s.pings + s.tailPings).toLocaleString("en-US")} sub=${s.tailPings ? tc("pingsAfter", s.tailPings) : null} />
131
149
  <${Metric} label=${tc("pingCost")} value=${$(s.pingCost + s.tailCost)} />
132
150
  <${Metric} label=${tc("net")} value=${a.priced ? `${s.net >= 0 ? "+" : "−"}${money(Math.abs(s.net))}` : "—"} />
151
+ ${a.writeMix["5m"] + a.writeMix["1h"] > 0 ? html`<${Metric} label=${tc("writeMix")} value=${`${tokens(a.writeMix["5m"])} / ${tokens(a.writeMix["1h"])}`} />` : null}
152
+ ${r.backend === "claude-code" ? html`<${Metric} label=${tc("effectiveTtl")} value=${effectiveText(a.effectiveTtl)}
153
+ sub=${a.effectiveTtl.sample ? tc("gapMiss", a.effectiveTtl.misses, a.effectiveTtl.sample) : tc("gapMissNone")} />` : null}
133
154
  </dl>
134
- <${Histogram} buckets=${a.gapBuckets} ttlSec=${a.ttlSec} />
155
+ <${Histogram} buckets=${a.gapBuckets} ttlSec=${a.effectiveTtl.basis === "measured" && a.effectiveTtl.ttlSec !== null ? a.effectiveTtl.ttlSec : a.ttlSec} />
135
156
  </article>`;
136
157
  }
137
158
 
@@ -154,6 +175,7 @@ export function CacheReport({ report, win, setWin, refresh }) {
154
175
  <${Metric} label=${tc("fleetExpiry")} value=${money(f.expiryCost)} />
155
176
  <${Metric} label=${tc("fleetSaving")} value=${money(f.saving)} />
156
177
  <${Metric} label=${tc("fleetRecommended")} value=${tc("ofN", f.recommended, f.analysed)} />
178
+ ${f.switchTo1h ? html`<${Metric} label=${tc("fleetSwitch")} value=${tc("ofN", f.switchTo1h, f.analysed)} />` : null}
157
179
  </section>` : html`<${Empty} icon="chart" title=${tc("empty")} hint=${tc("emptyHint")} />`}
158
180
  <div class="ch-notes note">
159
181
  <p>${tc("pricesNote", report.pricesChecked)} ${tc("quotaNote")}</p>
@@ -157,7 +157,9 @@ html:has(.shell), html:has(.shell) body { overflow: hidden; }
157
157
  }
158
158
  /* #1604: one row — Settings and Session (the anonymous View reader: Sign in and the theme/language popover). Their
159
159
  pop-ups open over the whole footer's width. */
160
- .side-foot { display: flex; align-items: center; gap: var(--s-1); padding: var(--s-2); position: relative; }
160
+ /* #1922: a divider above the footer, with the filter block's bottom padding and the footer's top padding trimmed to
161
+ --s-1: the gap reads as a section break, not an empty ~20 px band (the two --s-2 paddings used to stack). */
162
+ .side-foot { display: flex; align-items: center; gap: var(--s-1); padding: var(--s-1) var(--s-2) var(--s-2); border-top: 1px solid var(--border); position: relative; }
161
163
  .side-foot > .side-row, .side-foot > .session { flex: 1; min-width: 0; }
162
164
  .side-foot > .session { position: static; }
163
165
  .side-foot .side-row span:not(.dot):not(.meta) { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
@@ -781,6 +783,9 @@ html.lb-open .scroller { overflow: hidden; }
781
783
  .inst-star.on { color: var(--warn); }
782
784
  .inst-star.on svg, .fav-mark { fill: currentColor; }
783
785
  .fav-head { cursor: default; }
786
+ /* #1936: the open instance, pinned on top while a filter is on — its header reads "Current", a line under it. */
787
+ .pinned-head { cursor: default; }
788
+ .v-pinned { border-bottom: 1px solid var(--border); padding-bottom: var(--s-2); margin-bottom: var(--s-1); }
784
789
  .fav-mark { color: var(--warn); }
785
790
  .inst-nav:not(.fav-editing) .inst-star:not(.on) { visibility: hidden; }
786
791
  /* As specific as the rule that hides it (and later), so hover and focus win. */
@@ -800,7 +805,7 @@ body.side-resizing, body.side-resizing * { cursor: col-resize !important; user-s
800
805
  .dragging { opacity: 0.4; }
801
806
  .drop-before { box-shadow: inset 0 2px 0 var(--accent); }
802
807
  .drop-after { box-shadow: inset 0 -2px 0 var(--accent); }
803
- .v-filter { flex: none; padding: var(--s-2) var(--s-3) var(--s-2); border-top: 1px solid var(--border); }
808
+ .v-filter { flex: none; padding: var(--s-2) var(--s-3) var(--s-1); border-top: 1px solid var(--border); }
804
809
  .v-filter-box { display: flex; align-items: center; gap: var(--s-2); padding: 0 var(--s-1) 0 var(--s-3); border-radius: var(--r-sm); background: var(--surface); color: var(--text-3); }
805
810
  .v-filter-box:focus-within { box-shadow: 0 0 0 2px var(--focus); }
806
811
  .v-filter-box input { flex: 1; min-width: 0; height: 34px; border: 0; background: transparent; color: var(--text); font-size: var(--fs-sm); outline: none; }
@@ -863,6 +868,10 @@ body.side-resizing, body.side-resizing * { cursor: col-resize !important; user-s
863
868
  /* #1749: one line beside ↑↓ — the name gives way first, then the plan badge (each with an ellipsis); ↑↓ never wrap. */
864
869
  .u-head strong { min-width: 0; flex: 0 1 auto; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
865
870
  .u-plan { min-width: 0; flex: none; max-width: 55%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
871
+ /* #2014: a credential profile's row — the provider name beside the plan badge, and the profile on its own full-width
872
+ muted line under the head (one line in the rail, whole in the dialog). */
873
+ .u-profile { margin-top: calc(-1 * var(--s-2) + 2px); color: var(--text-3); font-size: var(--fs-xs); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
874
+ .dlg .u-profile { white-space: normal; overflow-wrap: anywhere; }
866
875
  .u-order { margin-left: auto; display: flex; gap: 2px; flex: none; }
867
876
  .u-order .icon-btn { width: 28px; height: 28px; }
868
877
  .u-order .icon-btn:disabled { opacity: 0.3; }
@@ -224,6 +224,8 @@ function writeFacetsOpen(open) { try { localStorage.setItem(FACETS_KEY, JSON.str
224
224
 
225
225
  /** The Favorites group's key among the tag groups: no tag can be it (a group name is never a control character). */
226
226
  const FAV_GROUP = "\u0000favorites";
227
+ /** #1936: the open instance, pinned on top while a filter is on. */
228
+ const PINNED_GROUP = "\u0000pinned";
227
229
  function persistOrder(groupNames, instByGroup) {
228
230
  const rows = [];
229
231
  groupNames.forEach((g, i) => rows.push({ item_type: "group", item_name: g, sort_index: i, group_name: null }));
@@ -356,13 +358,12 @@ export function InstanceNav({ route, items, loaded = true, exec = {}, awaiting =
356
358
  // #1664: "☆ Edit" — the stars on every row (on a phone the only way to them) and ↑ ↓ on the favorites — only on the
357
359
  // full list, as drag: in a filtered one the row above may not be the one above in the list (#1677 review).
358
360
  const [editing, setEditing] = useState(false);
359
- // Where a row goes: the view the page is in (#1523 §3.1). View → View; Details, or a Fleet tab (Q4 = A), → Details;
360
- // everywhere else → Chat. The anonymous reader only ever has View.
361
+ // Where a row goes: the view the page is in (#1523 §3.1). View → View; Details → Details; everywhere else, a Fleet tab
362
+ // included (#1917: the user's call, replacing Q4 = A), → Chat. The anonymous reader only ever has View.
361
363
  const rowPath = viewOnly || (route && route.panel === "view") ? viewPath
362
364
  : route && route.panel === "log" ? logPath // #1218: Log → Log
363
- : route && (route.panel === "details" || route.panel === "fleet") ? detailsPath : chatPath;
365
+ : route && route.panel === "details" ? detailsPath : chatPath;
364
366
  const active = route && (route.panel === "chat" || route.panel === "view" || route.panel === "log" || route.panel === "details") ? route.instance : null;
365
- useLayoutEffect(() => { keepActiveInView(list.current); }, [active, items.length, loaded]);
366
367
  const own = (map, name) => Object.prototype.hasOwnProperty.call(map, name);
367
368
  const byName = new Map(items.map((it) => [nameOf(it), it]));
368
369
  const facetOf = (name) => statusFacet(byName.get(name), own(exec, name) ? exec[name] : null, own(awaiting, name) ? awaiting[name] : null);
@@ -379,6 +380,12 @@ export function InstanceNav({ route, items, loaded = true, exec = {}, awaiting =
379
380
  if (favs.length) shownInsts.set(FAV_GROUP, favs);
380
381
  const f = nav.filter;
381
382
  const shown = filterSidebar(shownGroups, shownInsts, byName, f.q, backendLabel, { status: f.status, cli: f.cli, statusOf: facetOf });
383
+ // #1936: while a filter is on, the instance you have open stays on top, pinned and marked "Current", whether or not
384
+ // it matches; a match is not repeated below. "N / M" still counts the filter's matches (the pinned row counts only
385
+ // when it is one). Clearing the filter puts it back in its place, and the list scrolls to it again.
386
+ const pinned = shown.active && active && byName.has(active) ? active : null;
387
+ const listed = pinned ? shown.groups.map((x) => ({ ...x, names: x.names.filter((n) => n !== pinned) })).filter((x) => x.names.length) : shown.groups;
388
+ useLayoutEffect(() => { keepActiveInView(list.current); }, [active, items.length, loaded, shown.active]);
382
389
  const backends = [...new Set(items.map((it) => it.backend).filter((b) => typeof b === "string" && b))].sort((a, b) => backendLabel(a).localeCompare(backendLabel(b)));
383
390
  const toggle = (g) => { const c = new Set(navStore.get().collapsed); if (c.has(g)) c.delete(g); else c.add(g); setCollapsed(c); };
384
391
  // From the store, not this render's copy: two clicks before the next render must both count.
@@ -463,7 +470,10 @@ export function InstanceNav({ route, items, loaded = true, exec = {}, awaiting =
463
470
  ${canStar && items.length ? html`<button type="button" class="chip-btn fav-edit" aria-pressed=${editing ? "true" : "false"} onClick=${() => setEditing(!editing)}>
464
471
  ${editing ? tn("favDone") : html`<${Icon} name="star" size=${12} />${tn("favEdit")}`}</button>` : null}</div>
465
472
  ${!loaded ? html`<${Skeleton} lines=${4} />` : !items.length ? html`<p class="side-empty">${t("app.noInstances")}</p>` : null}
466
- ${shown.groups.map(({ group: g, names }) => {
473
+ ${pinned ? html`<div key=${PINNED_GROUP} class="v-group v-pinned" role="group" aria-label=${tn("pinnedLabel")}>
474
+ <div class="v-group-head pinned-head"><span class="grow">${tn("pinnedCurrent")}</span></div>
475
+ <ul class="inst-list">${row(pinned, PINNED_GROUP, 0, 1)}</ul></div>` : null}
476
+ ${listed.map(({ group: g, names }) => {
467
477
  // #1664: Favorites — always open, not dragged (↑ ↓ in Edit), named in the page's language.
468
478
  if (g === FAV_GROUP) return html`<div key=${g} class="v-group v-fav" role="group" aria-label=${tn("favorites")}>
469
479
  <div class="v-group-head fav-head"><${Icon} name="star" size=${14} cls="fav-mark" /><span class="grow">${tn("favorites")}</span><span class="count">${names.length}</span></div>
@@ -66,7 +66,17 @@ export function UsageMetric({ m }) {
66
66
  const sub = [note, expiryText(m.expiresAt)].filter(Boolean).join(" · ");
67
67
  return html`<div class="u-metric"><div class="u-row"><span class="u-label">${label}</span><span class="u-val">${val}</span></div>${sub ? html`<div class="u-sub">${sub}</div>` : null}</div>`;
68
68
  }
69
- /** "Updated 3 min ago" (#1585): how old the numbers are — the panel may show the last snapshot while a fresh one comes. */
69
+ /**
70
+ * #2014: a row's title. A credential profile's row (`profile`; its API `name` is "Claude (<profile>)") shows the
71
+ * provider name on the title line beside the plan badge, and the profile on its own full-width muted line under it;
72
+ * the full name is the tooltip, and the dialog shows the profile unclipped. Any other row: its name.
73
+ */
74
+ export function providerTitle(p) {
75
+ const name = String((p && p.name) || ""), profile = p && typeof p.profile === "string" && p.profile ? p.profile : "";
76
+ const suffix = ` (${profile})`;
77
+ return profile && name.endsWith(suffix) ? { base: name.slice(0, -suffix.length), profile } : { base: name, profile };
78
+ }
79
+
70
80
  /**
71
81
  * #1749: a plan as its badge reads — one short line. "Name [Tier] (N×)" (Claude's "Team Premium (6.25x)", "Max (20x)")
72
82
  * becomes "Name ×N"; anything else (Pro, Codex's and muse's labels) as it is. The full name stays on the badge's
@@ -76,6 +86,7 @@ export function planBadge(plan) {
76
86
  const m = /^(\S+)(?: [^()]+)? \((\d+(?:\.\d+)?)x\)$/i.exec(String(plan || "").trim());
77
87
  return m ? `${m[1]} ×${m[2]}` : String(plan || "");
78
88
  }
89
+ /** "Updated 3 min ago" (#1585): how old the numbers are — the panel may show the last snapshot while a fresh one comes. */
79
90
  export function updatedAgo(fetchedAt, now = Date.now()) {
80
91
  const ms = now - new Date(fetchedAt).getTime();
81
92
  if (!Number.isFinite(ms) || ms < 60_000) return tn("usageUpdatedJustNow");
@@ -134,11 +145,12 @@ export function UsageBody({ owner }) {
134
145
  const providers = ordered(data.providers);
135
146
  content = html`${!providers.length ? html`<p class="note">${tn("usage.empty_active")}</p>` : null}
136
147
  ${providers.map((p, i) => html`<section key=${key(p)} class="u-provider">
137
- <div class="u-head"><strong title=${p.name}>${p.name}</strong>${p.plan ? html`<span class="pill u-plan" title=${p.plan}><span aria-hidden="true">${planBadge(p.plan)}</span><span class="sr-only">${p.plan}</span></span>` : null}
148
+ <div class="u-head"><strong title=${p.name}>${providerTitle(p).base}</strong>${p.plan ? html`<span class="pill u-plan" title=${p.plan}><span aria-hidden="true">${planBadge(p.plan)}</span><span class="sr-only">${p.plan}</span></span>` : null}
138
149
  <span class="u-order">
139
150
  <button type="button" class="icon-btn" disabled=${i === 0} aria-label=${tn("usageMoveUp")} title=${tn("usageMoveUp")} onClick=${() => move(key(p), -1, data.providers)}><${Icon} name="up" size=${14} /></button>
140
151
  <button type="button" class="icon-btn" disabled=${i === providers.length - 1} aria-label=${tn("usageMoveDown")} title=${tn("usageMoveDown")} onClick=${() => move(key(p), 1, data.providers)}><${Icon} name="down" size=${14} /></button>
141
152
  </span></div>
153
+ ${providerTitle(p).profile ? html`<div class="u-profile" title=${p.name}>${providerTitle(p).profile}</div>` : null}
142
154
  ${p.stale ? html`<p class="note">${usageText(p.hint || "", p.hintI18n)}</p>` : null}
143
155
  ${p.status === "error" && !p.transient ? html`<p class="u-err">${usageText(p.error || tn("usage.error_fallback"), p.errorI18n)}</p>`
144
156
  : p.status === "error" && p.transient ? html`<p class="note">${usageText(p.error || tn("usage.error_fallback"), p.errorI18n)}</p>`
@@ -197,7 +197,9 @@ register("view", {
197
197
  "favUp": "Move {name} up",
198
198
  "favDown": "Move {name} down",
199
199
  "favFull": "Favorites are full ({max})",
200
- "favFiltered": "Clear the filter to reorder favorites"
200
+ "favFiltered": "Clear the filter to reorder favorites",
201
+ "pinnedCurrent": "Current",
202
+ "pinnedLabel": "The instance you have open"
201
203
  },
202
204
  "zh-TW": {
203
205
  "editProfile": "編輯個人資料",
@@ -392,6 +394,8 @@ register("view", {
392
394
  "favUp": "把 {name} 上移",
393
395
  "favDown": "把 {name} 下移",
394
396
  "favFull": "最愛已滿({max} 個)",
395
- "favFiltered": "清除篩選後才能調整最愛順序"
397
+ "favFiltered": "清除篩選後才能調整最愛順序",
398
+ "pinnedCurrent": "目前",
399
+ "pinnedLabel": "你目前開著的 instance"
396
400
  }
397
401
  });
@@ -55,7 +55,7 @@
55
55
  <div id="msg" role="alert" aria-live="polite"></div>
56
56
  <div class="hint" data-i18n="hint">No code? Send /web in General, then press a sign-in button to get one.</div>
57
57
  <details class="help"><summary data-i18n="nobot">No chat bot?</summary><p data-i18n="nobot_body">Ask the operator to run <code>agend web --code</code> on the AgEnD computer.</p></details>
58
- <details class="help"><summary data-i18n="safe">Page looks wrong after signing in?</summary><p data-i18n="safe_body">Your custom CSS may be hiding something. Add ?safe=1 to the end of the address to load the page without it, then fix it or turn it off in Settings → Appearance.</p></details>
58
+ <details class="help"><summary data-i18n="safe">Page looks wrong after signing in?</summary><p data-i18n="safe_body">Your custom CSS may be hiding something. Add ?safe=1 to the end of the address to load the page without it, then fix it or turn it off in Settings → Web appearance.</p></details>
59
59
  </form>
60
60
  <noscript>This page needs JavaScript to sign you in.</noscript>
61
61
  </main>
@@ -34,6 +34,8 @@ export interface UsageMetric {
34
34
  export interface ProviderUsage {
35
35
  id: string;
36
36
  name: string;
37
+ /** #2014: the credential profile this row reads (its `name` ends in ` (<profile>)`); the page shows it on its own line. */
38
+ profile?: string;
37
39
  status: "ok" | "error" | "no-credentials";
38
40
  /** A non-metered subscription whose entitlement is unlimited (not 0/100%). */
39
41
  unlimited?: boolean;
@@ -221,6 +223,7 @@ export declare function fetchKiroUsage(storeHome?: string): Promise<Omit<Provide
221
223
  type UsageProvider = {
222
224
  id: string;
223
225
  name: string;
226
+ profile?: string;
224
227
  fetch: (storeHome?: string, scope?: ClaudeUsageScope) => Promise<Omit<ProviderUsage, "id" | "name">>;
225
228
  };
226
229
  type UsageFleetConfig = Parameters<typeof listConfiguredProfiles>[0];
@@ -1458,6 +1458,7 @@ export function providersForConfig(config, base = DEFAULT_PROVIDERS) {
1458
1458
  rows.push(...profiles.map(profile => ({
1459
1459
  id: `${provider.id}:${profile}`,
1460
1460
  name: `${provider.name} (${profile})`,
1461
+ profile,
1461
1462
  fetch: () => provider.fetch(credentialProfileStoreHome(getAgendHome(), backendName, profile), { profile }),
1462
1463
  })));
1463
1464
  return rows;
@@ -1644,16 +1645,16 @@ export async function fetchAllUsage(config) {
1644
1645
  // Fail soft: this row says it could not be read, the rest still answer,
1645
1646
  // and the snapshot returns in bounded time.
1646
1647
  return {
1647
- id: p.id, name: p.name, status: "error",
1648
+ id: p.id, name: p.name, ...(p.profile ? { profile: p.profile } : {}), status: "error",
1648
1649
  error: `Could not reach ${p.name}.`,
1649
1650
  errorI18n: i18n("usage.error.unreachable", p.name),
1650
1651
  metrics: [],
1651
1652
  };
1652
1653
  }
1653
- return { id: p.id, name: p.name, ...outcome };
1654
+ return { id: p.id, name: p.name, ...(p.profile ? { profile: p.profile } : {}), ...outcome };
1654
1655
  }
1655
1656
  catch (err) {
1656
- return { id: p.id, name: p.name, status: "error", error: String(err?.message ?? err), metrics: [] };
1657
+ return { id: p.id, name: p.name, ...(p.profile ? { profile: p.profile } : {}), status: "error", error: String(err?.message ?? err), metrics: [] };
1657
1658
  }
1658
1659
  }));
1659
1660
  return {
@@ -1 +1 @@
1
- {"version":3,"file":"providers.js","sourceRoot":"","sources":["../../src/usage/providers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"providers.js","sourceRoot":"","sources":["../../src/usage/providers.ts"],"names":[],"mappings":"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"}