halfcycle 0.5.0 → 0.5.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.
@@ -1 +1 @@
1
- {"version":3,"file":"close-phase.d.ts","sourceRoot":"","sources":["../src/close-phase.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"close-phase.d.ts","sourceRoot":"","sources":["../src/close-phase.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -125,6 +125,9 @@ var USER_PROMPT_REMINDER_REL = ".claude/hooks/user-prompt-reminder.sh";
125
125
  var USER_PROMPT_SCOPE_REL = ".claude/hooks/user-prompt-scope.sh";
126
126
  var USER_PROMPT_FINDINGS_REL = ".claude/hooks/user-prompt-findings.sh";
127
127
  var SESSION_END_MARKER_REL = ".claude/hooks/session-end-marker.sh";
128
+ var CONTEXT_BUDGET_CHECK_REL = ".claude/hooks/context-budget-check.sh";
129
+ var CONTEXT_DRIFT_CHECK_REL = ".claude/hooks/context-drift-check.sh";
130
+ var CONTEXT_DRIFT_MATCHER = "Edit|Write";
128
131
  var WRITE_CAPABLE_TOOLS = ["Edit", "MultiEdit", "NotebookEdit", "Write"];
129
132
  var PRE_TOOL_USE_MATCHER = "^(Bash|Read|Grep|Write|Edit|MultiEdit|NotebookEdit|Agent|PowerShell)$";
130
133
  function hookCommand(script, verb) {
@@ -201,6 +204,20 @@ var HALFCYCLE_HOOK_WIRING = [
201
204
  timeout: 5,
202
205
  command: hookCommand(SESSION_END_MARKER_REL),
203
206
  script: SESSION_END_MARKER_REL
207
+ },
208
+ {
209
+ event: "SessionStart",
210
+ matcher: null,
211
+ timeout: 10,
212
+ command: hookCommand(CONTEXT_BUDGET_CHECK_REL),
213
+ script: CONTEXT_BUDGET_CHECK_REL
214
+ },
215
+ {
216
+ event: "PostToolUse",
217
+ matcher: CONTEXT_DRIFT_MATCHER,
218
+ timeout: 5,
219
+ command: hookCommand(CONTEXT_DRIFT_CHECK_REL),
220
+ script: CONTEXT_DRIFT_CHECK_REL
204
221
  }
205
222
  ];
206
223
  var RETIRED_HOOK_COMMANDS = [
@@ -210,7 +227,9 @@ var RETIRED_HOOK_COMMANDS = [
210
227
  "bash ./.claude/hooks/guard-runner.sh hook post-tool-use",
211
228
  "bash ./.claude/hooks/guard-runner.sh hook stop",
212
229
  "bash ./.claude/hooks/guard-runner.sh hook subagent-stop",
213
- "bash ./.claude/hooks/session-end-marker.sh"
230
+ "bash ./.claude/hooks/session-end-marker.sh",
231
+ "bash ./.claude/hooks/context-budget-check.sh",
232
+ "bash ./.claude/hooks/context-drift-check.sh"
214
233
  ];
215
234
  var HALFCYCLE_HOOK_COMMANDS = /* @__PURE__ */ new Set([
216
235
  ...HALFCYCLE_HOOK_WIRING.map((entry) => entry.command),
@@ -402,7 +421,9 @@ var CODEX_HOOK_WIRING = [
402
421
  codexHookRow("PostToolUse", CODEX_WRITE_CAPABLE_TOOLS.join("|"), 60, GUARD_RUNNER_REL, "hook post-tool-use --agent codex"),
403
422
  codexHookRow("Stop", null, 60, GUARD_RUNNER_REL, "hook stop --agent codex"),
404
423
  codexHookRow("SubagentStop", null, 60, GUARD_RUNNER_REL, "hook subagent-stop --agent codex"),
405
- codexHookRow("SessionEnd", null, 3, SESSION_END_MARKER_REL)
424
+ codexHookRow("SessionEnd", null, 3, SESSION_END_MARKER_REL),
425
+ codexHookRow("SessionStart", null, 10, CONTEXT_BUDGET_CHECK_REL),
426
+ codexHookRow("PostToolUse", CODEX_WRITE_CAPABLE_TOOLS.join("|"), 5, CONTEXT_DRIFT_CHECK_REL)
406
427
  ];
407
428
  var RETIRED_CODEX_HOOK_COMMANDS = [];
408
429
  function codexHookCommandSet(retired) {
@@ -4211,6 +4232,8 @@ function kinds() {
4211
4232
  [".claude/hooks/user-prompt-findings.sh", "check-script"],
4212
4233
  [".claude/hooks/session-end-marker.sh", "check-script"],
4213
4234
  [".claude/hooks/session-start-marker.sh", "check-script"],
4235
+ [".claude/hooks/context-budget-check.sh", "check-script"],
4236
+ [".claude/hooks/context-drift-check.sh", "check-script"],
4214
4237
  [SETTINGS_REL, "settings"],
4215
4238
  [MCP_REGISTRATION_REL, "server-entry"],
4216
4239
  [GITIGNORE_REL, "ignore-list"],
@@ -6166,13 +6189,133 @@ var MCP_HEADERS_KNOWN_HEADER_HASHES = [
6166
6189
  function planMcpHeadersHelperRemoval(targetRepo) {
6167
6190
  return decideRetiredRemoval(targetRepo, RETIRED_MCP_HEADERS_HELPER_REL, 1, MCP_HEADERS_KNOWN_HEADER_HASHES);
6168
6191
  }
6192
+ var GENERATED_CONTEXT_BUDGET_HEADER = "# Context budget check \u2014 generated by";
6193
+ function generateContextBudgetCheck() {
6194
+ return `#!/usr/bin/env bash
6195
+ ${GENERATED_CONTEXT_BUDGET_HEADER} the Halfcycle installer.
6196
+ # Runs when a session starts. It warns, and never blocks, when the instructions
6197
+ # every session loads have grown past their budget, so they can be trimmed
6198
+ # before every later session pays for them:
6199
+ # - AGENTS.md at the project root, over 16384 bytes;
6200
+ # - this project's memory index in Claude Code, over 20480 bytes or 150 lines
6201
+ # (Claude Code cuts the index off at about 25 KB or 200 lines when it loads it).
6202
+
6203
+ cat >/dev/null 2>&1 || true
6204
+
6205
+ SCRIPT_DIR="$( cd "$( dirname "\${BASH_SOURCE[0]}" )" && pwd -P )" || exit 0
6206
+ PROJECT_ROOT="$( cd "$SCRIPT_DIR/../.." && pwd -P )" || exit 0
6207
+
6208
+ NOTES=""
6209
+
6210
+ AGENTS_FILE="$PROJECT_ROOT/AGENTS.md"
6211
+ if [ -f "$AGENTS_FILE" ]; then
6212
+ BYTES=$(wc -c < "$AGENTS_FILE" | tr -d ' ')
6213
+ if [ "\${BYTES:-0}" -gt 16384 ]; then
6214
+ NOTES="\${NOTES}AGENTS.md is \${BYTES} bytes, over its budget of 16384. "
6215
+ fi
6216
+ fi
6217
+
6218
+ CONFIG_DIR="\${CLAUDE_CONFIG_DIR:-$HOME/.claude}"
6219
+ SLUG=$(printf '%s' "\${CLAUDE_PROJECT_DIR:-$PROJECT_ROOT}" | sed 's/[^A-Za-z0-9]/-/g')
6220
+ INDEX="$CONFIG_DIR/projects/$SLUG/memory/MEMORY.md"
6221
+ if [ -f "$INDEX" ]; then
6222
+ BYTES=$(wc -c < "$INDEX" | tr -d ' ')
6223
+ LINES=$(wc -l < "$INDEX" | tr -d ' ')
6224
+ if [ "\${BYTES:-0}" -gt 20480 ] || [ "\${LINES:-0}" -gt 150 ]; then
6225
+ NOTES="\${NOTES}The memory index is \${BYTES} bytes and \${LINES} lines, over its budget of 20480 bytes and 150 lines. "
6226
+ fi
6227
+ fi
6228
+
6229
+ if [ -z "$NOTES" ]; then exit 0; fi
6230
+
6231
+ MESSAGE="Context budget: \${NOTES}Run the context-update command to fold and trim it."
6232
+ printf '{"systemMessage":"%s","hookSpecificOutput":{"hookEventName":"SessionStart","additionalContext":"%s"}}\\n' "$MESSAGE" "$MESSAGE"
6233
+ exit 0
6234
+ `;
6235
+ }
6236
+ var GENERATED_CONTEXT_DRIFT_HEADER = "# Context drift check \u2014 generated by";
6237
+ function generateContextDriftCheck() {
6238
+ return `#!/usr/bin/env bash
6239
+ ${GENERATED_CONTEXT_DRIFT_HEADER} the Halfcycle installer.
6240
+ # Context drift detector \u2014 runs after each file edit. If a trigger file was modified,
6241
+ # it asks the session to run the context-update command before the session ends.
6242
+
6243
+ set -euo pipefail
6244
+
6245
+ INPUT=$(cat)
6246
+
6247
+ # First line: the event's name, for the reply. Then one line per edited file, made
6248
+ # absolute against the event's cwd: the edit's file_path, or every path a patch names.
6249
+ # With no python3 on the machine it says nothing, rather than fail after every edit.
6250
+ PARSED=$(HOOK_INPUT="$INPUT" python3 - <<'PYEOF'
6251
+ import json, os, re
6252
+ try:
6253
+ data = json.loads(os.environ["HOOK_INPUT"])
6254
+ except Exception:
6255
+ raise SystemExit(0)
6256
+ tool_input = data.get("tool_input") or {}
6257
+ cwd = data.get("cwd") or os.getcwd()
6258
+ if tool_input.get("file_path"):
6259
+ paths = [tool_input["file_path"]]
6260
+ else:
6261
+ headers = r"^\\*\\*\\* (?:Add File|Update File|Delete File|Move to): (.+)$"
6262
+ paths = re.findall(headers, str(tool_input.get("command", "")), re.M)
6263
+ print(data.get("hook_event_name", ""))
6264
+ for p in paths:
6265
+ print(os.path.realpath(os.path.join(cwd, p.strip())))
6266
+ PYEOF
6267
+ ) || exit 0
6268
+
6269
+ if [ -z "$PARSED" ]; then exit 0; fi
6270
+ HOOK_EVENT=$(printf '%s\\n' "$PARSED" | head -n 1)
6271
+
6272
+ # Portable PROJECT_ROOT derivation: the script lives two folders below the root
6273
+ SCRIPT_DIR="$( cd "$( dirname "\${BASH_SOURCE[0]}" )" && pwd -P )"
6274
+ PROJECT_ROOT="$( cd "$SCRIPT_DIR/../.." && pwd -P )"
6275
+
6276
+ REASONS=""
6277
+ while IFS= read -r FILE_PATH; do
6278
+ [ -n "$FILE_PATH" ] || continue
6279
+ case "$FILE_PATH" in
6280
+ "$PROJECT_ROOT"/*) ;;
6281
+ *) continue ;;
6282
+ esac
6283
+
6284
+ REL_PATH="\${FILE_PATH#$PROJECT_ROOT/}"
6285
+
6286
+ # Skip the instructions files and each agent's own folders (editing them needs no reminder)
6287
+ case "$REL_PATH" in
6288
+ CLAUDE.md|AGENTS.md|README.md|.claude/*|.codex/*|.agents/*|dist/*|node_modules/*|.git/*)
6289
+ continue ;;
6290
+ esac
6291
+
6292
+ REASON=""
6293
+ case "$REL_PATH" in
6294
+ package.json|package-lock.json) REASON="package.json changed \u2014 check Tech Stack / Commands sections" ;;
6295
+ wrangler.jsonc|wrangler.toml) REASON="wrangler config changed \u2014 check Deployment section" ;;
6296
+ astro.config.*|next.config.*|vite.config.*) REASON="build config changed \u2014 check Tech Stack / Architecture" ;;
6297
+ src/pages/api/*|src/routes/api/*|pages/api/*) REASON="API route changed \u2014 check API Endpoints" ;;
6298
+ scripts/*) REASON="scripts/ changed \u2014 check Commands section" ;;
6299
+ tsconfig.json|.eslintrc*|.prettierrc*) REASON="tool config changed \u2014 check Code Conventions" ;;
6300
+ esac
6301
+ if [ -n "$REASON" ]; then REASONS="\${REASONS}\${REL_PATH} was modified: \${REASON}. "; fi
6302
+ done < <(printf '%s\\n' "$PARSED" | tail -n +2)
6303
+
6304
+ if [ -z "$REASONS" ]; then exit 0; fi
6305
+
6306
+ REMINDER="Context drift detected. \${REASONS}Before ending this session, run the context-update command to audit and update AGENTS.md and the memory folder."
6307
+ python3 -c 'import json, sys; print(json.dumps({"hookSpecificOutput": {"hookEventName": sys.argv[1], "additionalContext": sys.argv[2]}}))' "$HOOK_EVENT" "$REMINDER"
6308
+ `;
6309
+ }
6169
6310
  var OWNED_GENERATED_HEADERS = {
6170
6311
  ".claude/hooks/guard-runner.sh": GENERATED_GUARD_RUNNER_HEADER,
6171
6312
  ".claude/hooks/user-prompt-reminder.sh": GENERATED_USER_PROMPT_REMINDER_HEADER,
6172
6313
  ".claude/hooks/user-prompt-scope.sh": GENERATED_USER_PROMPT_SCOPE_HEADER,
6173
6314
  ".claude/hooks/user-prompt-findings.sh": GENERATED_USER_PROMPT_FINDINGS_HEADER,
6174
6315
  ".claude/hooks/session-end-marker.sh": GENERATED_SESSION_END_HEADER,
6175
- ".claude/hooks/session-start-marker.sh": GENERATED_SESSION_START_HEADER
6316
+ ".claude/hooks/session-start-marker.sh": GENERATED_SESSION_START_HEADER,
6317
+ ".claude/hooks/context-budget-check.sh": GENERATED_CONTEXT_BUDGET_HEADER,
6318
+ ".claude/hooks/context-drift-check.sh": GENERATED_CONTEXT_DRIFT_HEADER
6176
6319
  };
6177
6320
  function hookScriptsThisVersionWrites() {
6178
6321
  return [
@@ -6181,7 +6324,9 @@ function hookScriptsThisVersionWrites() {
6181
6324
  [".claude/hooks/user-prompt-reminder.sh", generateUserPromptReminderHook()],
6182
6325
  [".claude/hooks/user-prompt-scope.sh", generateUserPromptScopeHook()],
6183
6326
  [".claude/hooks/user-prompt-findings.sh", generateUserPromptFindingsHook()],
6184
- [".claude/hooks/session-start-marker.sh", generateSessionStartMarker()]
6327
+ [".claude/hooks/session-start-marker.sh", generateSessionStartMarker()],
6328
+ [".claude/hooks/context-budget-check.sh", generateContextBudgetCheck()],
6329
+ [".claude/hooks/context-drift-check.sh", generateContextDriftCheck()]
6185
6330
  ];
6186
6331
  }
6187
6332
  function generateMcpRegistration(existing, mcpOrigin) {