@integrity-labs/agt-cli 0.28.344 → 0.28.345

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/bin/agt.js CHANGED
@@ -40,7 +40,7 @@ import {
40
40
  success,
41
41
  table,
42
42
  warn
43
- } from "../chunk-AJ23F3MU.js";
43
+ } from "../chunk-GJ5TGARW.js";
44
44
  import {
45
45
  AnchorSessionClient,
46
46
  CHANNEL_REGISTRY,
@@ -70,7 +70,7 @@ import {
70
70
  renderTemplate,
71
71
  resolveChannels,
72
72
  serializeManifestForSlackCli
73
- } from "../chunk-7MP37HYR.js";
73
+ } from "../chunk-O5IINJDB.js";
74
74
  import "../chunk-XWVM4KPK.js";
75
75
 
76
76
  // src/bin/agt.ts
@@ -4829,7 +4829,7 @@ import { execFileSync, execSync } from "child_process";
4829
4829
  import { existsSync as existsSync10, realpathSync as realpathSync2 } from "fs";
4830
4830
  import chalk18 from "chalk";
4831
4831
  import ora16 from "ora";
4832
- var cliVersion = true ? "0.28.344" : "dev";
4832
+ var cliVersion = true ? "0.28.345" : "dev";
4833
4833
  async function fetchLatestVersion() {
4834
4834
  const host2 = getHost();
4835
4835
  if (!host2) return null;
@@ -6001,7 +6001,7 @@ function handleError(err) {
6001
6001
  }
6002
6002
 
6003
6003
  // src/bin/agt.ts
6004
- var cliVersion2 = true ? "0.28.344" : "dev";
6004
+ var cliVersion2 = true ? "0.28.345" : "dev";
6005
6005
  var program = new Command();
6006
6006
  program.name("agt").description("Augmented CLI \u2014 agent provisioning and management").version(cliVersion2).option("--json", "Emit machine-readable JSON output (suppress spinners and colors)").option("--skip-update-check", "Skip the automatic update check on startup");
6007
6007
  program.hook("preAction", async (thisCommand, actionCommand) => {
@@ -20,7 +20,7 @@ import {
20
20
  resolveConnectivityProbe,
21
21
  worseConnectivityOutcome,
22
22
  wrapScheduledTaskPrompt
23
- } from "./chunk-7MP37HYR.js";
23
+ } from "./chunk-O5IINJDB.js";
24
24
  import {
25
25
  parsePsRows
26
26
  } from "./chunk-XWVM4KPK.js";
@@ -7052,7 +7052,7 @@ function requireHost() {
7052
7052
  }
7053
7053
 
7054
7054
  // src/lib/api-client.ts
7055
- var agtCliVersion = true ? "0.28.344" : "dev";
7055
+ var agtCliVersion = true ? "0.28.345" : "dev";
7056
7056
  var lastConfigHash = null;
7057
7057
  function setConfigHash(hash) {
7058
7058
  lastConfigHash = hash && hash.length > 0 ? hash : null;
@@ -9501,4 +9501,4 @@ export {
9501
9501
  managerInstallSystemUnitCommand,
9502
9502
  managerUninstallSystemUnitCommand
9503
9503
  };
9504
- //# sourceMappingURL=chunk-AJ23F3MU.js.map
9504
+ //# sourceMappingURL=chunk-GJ5TGARW.js.map
@@ -6835,14 +6835,18 @@ var FRESH_HEARTBEAT_THRESHOLD_MS = 2 * 60 * 1e3;
6835
6835
  // ../../packages/core/dist/claude-code-usage/banner-parser.js
6836
6836
  var SEP = /[\s·\-–—]+/.source;
6837
6837
  var SUBJECT = /(?:You(?:['’]ve|\s+have)?\s+)?/.source;
6838
- var RESET_DATE = /[A-Za-z]{3,9}\s+\d{1,2}(?:\s*,\s*\d{1,2}(?::\d{2})?\s*(?:am|pm)(?:\s*\(?UTC\)?)?)?/.source;
6838
+ var TIME_OF_DAY = /\d{1,2}(?::\d{2})?\s*(?:am|pm)(?:\s*\(?UTC\)?)?/.source;
6839
+ var RESET_DATE = `(?:[A-Za-z]{3,9}\\s+\\d{1,2}(?:\\s*,\\s*${TIME_OF_DAY})?|${TIME_OF_DAY})`;
6839
6840
  var BANNER_PATTERNS = [
6840
6841
  // Percentage form — pct in group 1, reset in group 2.
6841
6842
  new RegExp(`${SUBJECT}used\\s+(\\d{1,3})%\\s+of\\s+your\\s+weekly\\s+limit${SEP}resets\\s+(${RESET_DATE})`, "i"),
6842
- // Saturated form (ENG-5434) — no pct, reset in group 1. Wrapped to keep
6843
- // the per-pattern shape consistent with the percentage form: the parser
6844
- // checks group 1 for a digit string and treats a missing one as pct=100.
6845
- new RegExp(`${SUBJECT}hit\\s+your\\s+limit${SEP}resets\\s+(${RESET_DATE})`, "i")
6843
+ // Saturated form (ENG-5434, extended by ENG-7904) — no pct, reset in group 1.
6844
+ // An optional qualifier word ("weekly", "5-hour", …) may sit between "your"
6845
+ // and "limit"; matching it keeps the parser resilient to CC's phrasing drift.
6846
+ // Wrapped to keep the per-pattern shape consistent with the percentage form:
6847
+ // the parser checks group 1 for a digit string and treats a missing one as
6848
+ // pct=100.
6849
+ new RegExp(`${SUBJECT}hit\\s+your\\s+(?:[a-z0-9-]+\\s+)?limit${SEP}resets\\s+(${RESET_DATE})`, "i")
6846
6850
  ];
6847
6851
  function parseUsageBanner(text, now = /* @__PURE__ */ new Date()) {
6848
6852
  let bestIndex = -1;
@@ -6890,8 +6894,31 @@ var MONTHS = [
6890
6894
  "dec"
6891
6895
  ];
6892
6896
  var TIME_TAIL = /,\s*(\d{1,2})(?::(\d{2}))?\s*(am|pm)(?:\s*\(?UTC\)?)?\s*$/i;
6897
+ var TIME_ONLY = /^(\d{1,2})(?::(\d{2}))?\s*(am|pm)(?:\s*\(?UTC\)?)?$/i;
6898
+ var MS_PER_DAY = 24 * 60 * 60 * 1e3;
6899
+ function parseAmPm(hourStr, minStr, ampm) {
6900
+ const rawHour = Number.parseInt(hourStr, 10);
6901
+ if (!Number.isFinite(rawHour) || rawHour < 1 || rawHour > 12)
6902
+ return null;
6903
+ let minute = 0;
6904
+ if (minStr) {
6905
+ minute = Number.parseInt(minStr, 10);
6906
+ if (!Number.isFinite(minute) || minute < 0 || minute > 59)
6907
+ return null;
6908
+ }
6909
+ const isPm = ampm.toLowerCase() === "pm";
6910
+ return { hour: rawHour % 12 + (isPm ? 12 : 0), minute };
6911
+ }
6893
6912
  function parseResetDateTime(humanDate, now) {
6894
6913
  const trimmed = humanDate.trim();
6914
+ const timeOnly = trimmed.match(TIME_ONLY);
6915
+ if (timeOnly) {
6916
+ const hm = parseAmPm(timeOnly[1], timeOnly[2], timeOnly[3]);
6917
+ if (!hm)
6918
+ return null;
6919
+ const todayAt = Date.UTC(now.getUTCFullYear(), now.getUTCMonth(), now.getUTCDate(), hm.hour, hm.minute);
6920
+ return new Date(todayAt <= now.getTime() ? todayAt + MS_PER_DAY : todayAt);
6921
+ }
6895
6922
  const timeMatch = trimmed.match(TIME_TAIL);
6896
6923
  const dateOnly = timeMatch ? trimmed.slice(0, timeMatch.index).trim() : trimmed;
6897
6924
  const parts = dateOnly.split(/\s+/);
@@ -6906,16 +6933,11 @@ function parseResetDateTime(humanDate, now) {
6906
6933
  let hour = 0;
6907
6934
  let minute = 0;
6908
6935
  if (timeMatch) {
6909
- const rawHour = Number.parseInt(timeMatch[1], 10);
6910
- if (!Number.isFinite(rawHour) || rawHour < 1 || rawHour > 12)
6936
+ const hm = parseAmPm(timeMatch[1], timeMatch[2], timeMatch[3]);
6937
+ if (!hm)
6911
6938
  return null;
6912
- if (timeMatch[2]) {
6913
- minute = Number.parseInt(timeMatch[2], 10);
6914
- if (!Number.isFinite(minute) || minute < 0 || minute > 59)
6915
- return null;
6916
- }
6917
- const isPm = timeMatch[3].toLowerCase() === "pm";
6918
- hour = rawHour % 12 + (isPm ? 12 : 0);
6939
+ hour = hm.hour;
6940
+ minute = hm.minute;
6919
6941
  }
6920
6942
  const baseYear = now.getUTCFullYear();
6921
6943
  let resolved = null;
@@ -7162,6 +7184,17 @@ function attributeTranscriptUsageByRun(jsonl) {
7162
7184
  return { perRunModel: [...agg.values()], runIds: [...runIds] };
7163
7185
  }
7164
7186
 
7187
+ // ../../packages/core/dist/claude-code-usage/usage-limit-marker.js
7188
+ var USAGE_LIMIT_MARKER_FILENAME = "claude-usage-limit.json";
7189
+ var USAGE_LIMIT_MARKER_VERSION = 1;
7190
+ function serializeUsageLimitMarker(limitedUntil) {
7191
+ const marker = {
7192
+ version: USAGE_LIMIT_MARKER_VERSION,
7193
+ limited_until: limitedUntil.toISOString()
7194
+ };
7195
+ return JSON.stringify(marker);
7196
+ }
7197
+
7165
7198
  // ../../packages/core/dist/loops/kanban-check.js
7166
7199
  var KANBAN_CHECK_COMMAND = "kanban_list \u2014 pick up any actionable items if you are free.";
7167
7200
  var KANBAN_NUDGE_ACTIONABLE_STATUSES = ["todo", "in_progress"];
@@ -10050,6 +10083,8 @@ export {
10050
10083
  sumTranscriptUsageInWindow,
10051
10084
  isEmptyTotals,
10052
10085
  attributeTranscriptUsageByRun,
10086
+ USAGE_LIMIT_MARKER_FILENAME,
10087
+ serializeUsageLimitMarker,
10053
10088
  KANBAN_CHECK_COMMAND,
10054
10089
  KANBAN_NUDGE_ACTIONABLE_STATUSES,
10055
10090
  isSystemInjectedContent,
@@ -10114,4 +10149,4 @@ export {
10114
10149
  stopAllSessionsAndWait,
10115
10150
  getProjectDir
10116
10151
  };
10117
- //# sourceMappingURL=chunk-7MP37HYR.js.map
10152
+ //# sourceMappingURL=chunk-O5IINJDB.js.map