@event4u/agent-config 9.29.0 → 9.31.0

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 (142) hide show
  1. package/.claude-plugin/marketplace.json +1 -1
  2. package/CHANGELOG.md +32 -214
  3. package/README.md +1 -0
  4. package/dist/agent-src/commands/analyze/inbox.md +22 -1
  5. package/dist/agent-src/commands/explain-run.md +31 -1
  6. package/dist/agent-src/commands/team/delegate.md +1 -0
  7. package/dist/agent-src/contexts/execution/orchestration-telemetry.md +4 -1
  8. package/dist/agent-src/contexts/execution/roadmap-process-loop.md +17 -0
  9. package/dist/agent-src/contexts/execution/subagent-response-contract.md +11 -1
  10. package/dist/agent-src/rules/preservation-guard.md +9 -0
  11. package/dist/agent-src/scripts/roadmap_gates.ts +312 -0
  12. package/dist/agent-src/scripts/update_roadmap_progress.ts +72 -4
  13. package/dist/agent-src/skills/subagent-orchestration/SKILL.md +10 -0
  14. package/dist/agent-src/templates/agents/agent-project-settings.example.yml +1 -1
  15. package/dist/cli/registry.js +2 -0
  16. package/dist/cli/registry.js.map +1 -1
  17. package/dist/cli-delegate/{chunk-RCIA67XN.js → chunk-2WCLVDWC.js} +45 -2
  18. package/dist/cli-delegate/{chunk-66OVWGB5.js → chunk-AG47LAGQ.js} +1 -1
  19. package/dist/cli-delegate/{chunk-MP3JT3IU.js → chunk-DS6BLDMG.js} +1 -1
  20. package/dist/cli-delegate/chunk-EJITJBJX.js +172 -0
  21. package/dist/cli-delegate/{chunk-NZ5N2XQL.js → chunk-ITIQSGOQ.js} +3 -3
  22. package/dist/cli-delegate/{chunk-LCFJIQ4J.js → chunk-JEJABGKB.js} +110 -6
  23. package/dist/cli-delegate/chunk-MMJL4TIX.js +18 -0
  24. package/dist/cli-delegate/{chunk-REKCMYOU.js → chunk-PFBV6XRT.js} +36 -20
  25. package/dist/cli-delegate/{chunk-OJM3MBJM.js → chunk-QEEB4LHO.js} +22 -35
  26. package/dist/cli-delegate/chunk-RVGBH4XK.js +142 -0
  27. package/dist/cli-delegate/{chunk-MMXA5GY7.js → chunk-UVKNIJH2.js} +14 -0
  28. package/dist/cli-delegate/cmd_analyze_session.js +1 -1
  29. package/dist/cli-delegate/cmd_brand_status.js +1 -1
  30. package/dist/cli-delegate/cmd_conformance.js +2861 -96
  31. package/dist/cli-delegate/cmd_doctor.js +3 -2
  32. package/dist/cli-delegate/cmd_explain.js +2 -2
  33. package/dist/cli-delegate/cmd_export.js +4 -4
  34. package/dist/cli-delegate/cmd_handoff.js +87 -7
  35. package/dist/cli-delegate/cmd_mcp_available.js +1 -1
  36. package/dist/cli-delegate/cmd_migrate.js +2 -2
  37. package/dist/cli-delegate/cmd_packs_active.js +2 -2
  38. package/dist/cli-delegate/cmd_prune.js +4 -4
  39. package/dist/cli-delegate/cmd_route_audit.js +3 -2
  40. package/dist/cli-delegate/cmd_route_explain.js +1 -1
  41. package/dist/cli-delegate/cmd_session_recycle.js +177 -0
  42. package/dist/cli-delegate/cmd_settings_get.js +3 -56
  43. package/dist/cli-delegate/cmd_settings_migrate.js +4 -4
  44. package/dist/cli-delegate/cmd_settings_set.js +2 -2
  45. package/dist/cli-delegate/cmd_sync.js +4 -4
  46. package/dist/cli-delegate/cmd_uninstall.js +4 -4
  47. package/dist/cli-delegate/cmd_update.js +1 -1
  48. package/dist/cli-delegate/cmd_upgrade.js +1 -1
  49. package/dist/cli-delegate/cmd_validate.js +4 -4
  50. package/dist/cli-delegate/cmd_versions.js +1 -1
  51. package/dist/discovery/deprecation-report.md +1 -1
  52. package/dist/discovery/discovery-manifest.json +7 -7
  53. package/dist/discovery/discovery-manifest.json.sha256 +1 -1
  54. package/dist/discovery/discovery-manifest.summary.md +1 -1
  55. package/dist/discovery/orphan-report.md +1 -1
  56. package/dist/discovery/packs.json +2 -2
  57. package/dist/discovery/trust-report.md +1 -1
  58. package/dist/discovery/workspaces.json +2 -2
  59. package/dist/hooks/dispatch.js +2143 -641
  60. package/dist/install/install.mjs +133 -14
  61. package/dist/mcp/registry-manifest.json +2 -2
  62. package/dist/mcp/server.json +2 -2
  63. package/dist/mcp/server.mjs +3967 -761
  64. package/dist/scripts/_lib/agent_settings.js +111 -2
  65. package/dist/scripts/_lib/agent_settings.js.map +1 -1
  66. package/dist/server/schemas/settings.js +6 -0
  67. package/dist/server/schemas/settings.js.map +1 -1
  68. package/dist/ui/assets/index-B5qGYOJo.js +26 -0
  69. package/dist/ui/assets/index-B5qGYOJo.js.map +1 -0
  70. package/dist/ui/index.html +1 -1
  71. package/docs/contracts/settings-classes.md +21 -5
  72. package/package.json +1 -1
  73. package/src/agent-src/scripts/roadmap_gates.ts +312 -0
  74. package/src/agent-src/scripts/update_roadmap_progress.ts +72 -4
  75. package/src/config/agent-settings.template.yml +36 -0
  76. package/src/config/dispatch-economy-metrics.json +61 -0
  77. package/src/config/evaluator-budgets.json +4 -4
  78. package/src/config/hook-token-budget.json +91 -0
  79. package/src/config/pack-size-budget.json +3 -2
  80. package/src/config/recycle-threshold-budget.json +12 -0
  81. package/src/config/rule-enforcement-baseline.json +86 -0
  82. package/src/scripts/_cli/cmd_conformance.ts +17 -2
  83. package/src/scripts/_cli/cmd_session_recycle.ts +226 -0
  84. package/src/scripts/_cli/explain_last/inputs.ts +13 -0
  85. package/src/scripts/_dispatch.bash +23 -0
  86. package/src/scripts/_lib/agent_settings.ts +119 -2
  87. package/src/scripts/_lib/carrier_divergence.ts +47 -0
  88. package/src/scripts/_lib/judgment_ladder.ts +254 -2
  89. package/src/scripts/_lib/orchestration_record.ts +41 -10
  90. package/src/scripts/_lib/recycle_envelope_paths.ts +35 -0
  91. package/src/scripts/_lib/self_repair.ts +194 -0
  92. package/src/scripts/_lib/session_eol.ts +230 -0
  93. package/src/scripts/_lib/session_role.ts +42 -0
  94. package/src/scripts/_lib/subagent_capsule.ts +159 -0
  95. package/src/scripts/_lib/subagent_response.ts +75 -0
  96. package/src/scripts/ai_council/clients.ts +50 -1
  97. package/src/scripts/ask_transport.ts +221 -0
  98. package/src/scripts/bench_hook_injection.ts +234 -0
  99. package/src/scripts/check_adr_frontmatter.ts +84 -40
  100. package/src/scripts/check_branch_freshness.ts +1 -0
  101. package/src/scripts/check_corpus_staleness.ts +18 -4
  102. package/src/scripts/check_detector_corpus.ts +17 -0
  103. package/src/scripts/check_gitignore_freshness.ts +42 -8
  104. package/src/scripts/check_hook_bundle_freshness.ts +20 -0
  105. package/src/scripts/check_kernel_prefix_stability.ts +1 -0
  106. package/src/scripts/check_standing_rule_delivery.ts +73 -32
  107. package/src/scripts/check_static_layer_stability.ts +154 -0
  108. package/src/scripts/check_suppression_hygiene.ts +48 -0
  109. package/src/scripts/dispatch_economy_report.ts +448 -0
  110. package/src/scripts/dispatch_r2_reviewer.ts +15 -2
  111. package/src/scripts/explain_run.ts +206 -4
  112. package/src/scripts/generate_settings_reference.ts +1 -0
  113. package/src/scripts/handoff_context_hook.ts +112 -4
  114. package/src/scripts/hook_manifest.yaml +117 -10
  115. package/src/scripts/hooks/concern_registry.ts +8 -0
  116. package/src/scripts/hooks/delegation_nudge_hook.ts +40 -3
  117. package/src/scripts/hooks/dispatch_hook.ts +39 -2
  118. package/src/scripts/hooks/edit_shape_hook.ts +303 -0
  119. package/src/scripts/hooks/orchestration_record_hook.ts +19 -1
  120. package/src/scripts/hooks/reread_guard_hook.ts +314 -0
  121. package/src/scripts/hooks/rtk_wrap_hook.ts +133 -14
  122. package/src/scripts/hooks/session_eol_hook.ts +268 -0
  123. package/src/scripts/hooks/turn_end_gate_hook.ts +715 -0
  124. package/src/scripts/install-hooks.sh +1 -1
  125. package/src/scripts/language_mirror_hook.ts +143 -1
  126. package/src/scripts/lint_decision_impact.ts +14 -1
  127. package/src/scripts/lint_hook_manifest.ts +82 -0
  128. package/src/scripts/lint_readme_serial_comma.ts +1 -0
  129. package/src/scripts/lint_rule_enforcement_declaration.ts +347 -0
  130. package/src/scripts/measure_turn_end_gate.ts +272 -0
  131. package/src/scripts/orchestration_record.ts +4 -1
  132. package/src/scripts/rebuild_hook_bundle.ts +1 -0
  133. package/src/scripts/report_carrier_divergence.ts +72 -24
  134. package/src/scripts/report_conformance_funnel.ts +291 -0
  135. package/src/scripts/report_imperative_density.ts +1 -0
  136. package/src/scripts/routing_doctor.ts +97 -0
  137. package/src/scripts/self_repair_cli.ts +51 -3
  138. package/src/scripts/session_eol_report.ts +261 -0
  139. package/src/server/schemas/settings.ts +14 -0
  140. package/src/templates/compact-instructions.md +40 -0
  141. package/dist/ui/assets/index-JDAF00bC.js +0 -26
  142. package/dist/ui/assets/index-JDAF00bC.js.map +0 -1
@@ -7374,7 +7374,7 @@ import * as fs18 from "node:fs";
7374
7374
  import * as os7 from "node:os";
7375
7375
  import * as path16 from "node:path";
7376
7376
  import process3 from "node:process";
7377
- import { fileURLToPath as fileURLToPath4, pathToFileURL as pathToFileURL2 } from "node:url";
7377
+ import { fileURLToPath as fileURLToPath5, pathToFileURL as pathToFileURL2 } from "node:url";
7378
7378
 
7379
7379
  // src/scripts/_lib/json_pointers.ts
7380
7380
  import { createHash } from "node:crypto";
@@ -9793,6 +9793,64 @@ import { createRequire as createRequire2 } from "node:module";
9793
9793
  import * as fs12 from "node:fs";
9794
9794
  import * as os6 from "node:os";
9795
9795
  import * as path11 from "node:path";
9796
+ import { fileURLToPath as fileURLToPath2 } from "node:url";
9797
+
9798
+ // src/shared/settingsCarveOut.ts
9799
+ var SETTINGS_CARVE_OUT = [
9800
+ {
9801
+ key: "projection.mode",
9802
+ reader: "src/scripts/install.ts:3409 _resolve_scoped_projection",
9803
+ absentResolvesTo: "legacy-all",
9804
+ reason: "The template fallback applies only when NO global settings file exists. Once a file exists, an absent key means legacy-all by documented contract, so an existing install is never silently narrowed on upgrade."
9805
+ },
9806
+ {
9807
+ key: "projection.rule_workspaces",
9808
+ reader: "src/install/rule_scope.ts:96 ruleScopeFromSettings",
9809
+ absentResolvesTo: "null \u2014 LEGACY_ALL, i.e. every rule ships including maintainer-only ones",
9810
+ reason: "Same upgrade contract as projection.mode, and the failure is louder: an absent list widens the projection instead of narrowing it."
9811
+ },
9812
+ {
9813
+ key: "discipline_profile",
9814
+ reader: "work_engine/_lib/agent_settings.ts:1263",
9815
+ absentResolvesTo: "essential, unconditionally",
9816
+ reason: "The template ships `auto`, which resolves to `off` on any measured-null model, any non-Claude host, and any host exposing no model id. Absent skips that resolution entirely and loads the essential tier everywhere."
9817
+ },
9818
+ {
9819
+ key: "chat_history.frequency",
9820
+ reader: "src/scripts/chat_history.ts:1140",
9821
+ absentResolvesTo: "per_phase",
9822
+ reason: "Canonical substitution is `per_turn`. Absent gives coarser capture than the shipped default \u2014 an audit-thinning change, which the class contract's own test 8 (what can the attacker HIDE) names as the severe direction."
9823
+ },
9824
+ {
9825
+ key: "profile.id",
9826
+ reader: "src/scripts/config/profiles.ts:221 resolve_profile",
9827
+ absentResolvesTo: "the id `developer`, but a DEGRADED profile \u2014 packs: [], personas: [], hints: []",
9828
+ reason: "Exactly the projection.mode shape: the template default is honoured only when no settings file exists. With a file present the id resolves but its profile body does not load, so the install silently loses every pack and persona."
9829
+ },
9830
+ {
9831
+ key: "quality.local_auto_run",
9832
+ reader: "src/scripts/lint_roadmap_ci_steps.ts:106",
9833
+ absentResolvesTo: "true \u2014 which DISABLES the CI-step gate",
9834
+ reason: "Inverted polarity, and the most dangerous row in the set: the template ships `false`, which ARMS the gate. Omitting the key would disarm a quality gate for every fresh install while the reference page says it is on."
9835
+ },
9836
+ {
9837
+ key: "onboarding.onboarded",
9838
+ reader: "src/scripts/onboarding_gate_hook.ts:99",
9839
+ absentResolvesTo: "gate skipped, as if onboarding had already completed",
9840
+ reason: "Absent behaves like `onboarded: true`, not like the template default `false`. Omitting it would skip the onboarding gate on precisely the fresh installs the gate exists for."
9841
+ },
9842
+ {
9843
+ key: "chat_history.enabled",
9844
+ reader: "src/scripts/chat_history.ts:1025 _read_chat_history_enabled",
9845
+ absentResolvesTo: "false",
9846
+ reason: "The reader falls back to false while the template ships true. This one is privacy-shaped: fixing the reader would start recording history for every install whose file lacks the key. Writing it explicitly keeps the decision visible in the file the user can read."
9847
+ }
9848
+ ];
9849
+ function carveOutKeys() {
9850
+ return SETTINGS_CARVE_OUT.map((c) => c.key);
9851
+ }
9852
+
9853
+ // src/scripts/_lib/agent_settings.ts
9796
9854
  var _require2 = createRequire2(import.meta.url);
9797
9855
  var Logger = class {
9798
9856
  name = "scripts._lib.agent_settings";
@@ -9890,7 +9948,45 @@ var MERGEABLE_KEYS = [
9890
9948
  "knowledge.global_sharing.freshness.hypothesis_after_days",
9891
9949
  "knowledge.global_sharing.freshness.stale_after_days"
9892
9950
  ];
9893
- var _DEFAULTS = {};
9951
+ var TEMPLATE_RELATIVE = path11.join("src", "config", "agent-settings.template.yml");
9952
+ var _PACKAGE_ROOT = path11.resolve(path11.dirname(fileURLToPath2(import.meta.url)), "..", "..", "..");
9953
+ function default_template_path() {
9954
+ return path11.join(_PACKAGE_ROOT, TEMPLATE_RELATIVE);
9955
+ }
9956
+ function _is_placeholder(value) {
9957
+ return typeof value === "string" && /^__[A-Z0-9_]+__$/.test(value);
9958
+ }
9959
+ function _prune_template(tree, excluded, prefix = "") {
9960
+ const out = {};
9961
+ for (const [key, value] of Object.entries(tree)) {
9962
+ const dotted = prefix === "" ? key : `${prefix}.${key}`;
9963
+ if (excluded.has(dotted) || _is_placeholder(value)) {
9964
+ continue;
9965
+ }
9966
+ if (_is_plain_dict(value)) {
9967
+ const child = _prune_template(value, excluded, dotted);
9968
+ if (Object.keys(child).length > 0) {
9969
+ out[key] = child;
9970
+ }
9971
+ continue;
9972
+ }
9973
+ out[key] = value;
9974
+ }
9975
+ return out;
9976
+ }
9977
+ var _template_defaults_cache = null;
9978
+ function template_defaults(template_path) {
9979
+ const use_cache = template_path === void 0;
9980
+ if (use_cache && _template_defaults_cache !== null) {
9981
+ return _deepcopy(_template_defaults_cache);
9982
+ }
9983
+ const parsed = _read_yaml(template_path ?? default_template_path()) ?? {};
9984
+ const pruned = _prune_template(parsed, new Set(carveOutKeys()));
9985
+ if (use_cache) {
9986
+ _template_defaults_cache = pruned;
9987
+ }
9988
+ return _deepcopy(pruned);
9989
+ }
9894
9990
  var ANCHOR_AGENT_SETTINGS = "agent-settings";
9895
9991
  var ANCHOR_AGENTS_DIR = "agents-dir";
9896
9992
  var ANCHOR_GIT = "git";
@@ -10090,6 +10186,7 @@ function load_agent_settings(options = {}) {
10090
10186
  const user_global_path = options.user_global_path ?? null;
10091
10187
  const verbose = options.verbose ?? false;
10092
10188
  const cwd = options.cwd ?? null;
10189
+ const template_path = options.template_path ?? null;
10093
10190
  const user_global_raw = {};
10094
10191
  for (const p of user_global_path ? [user_global_path] : user_global_settings_paths()) {
10095
10192
  _deep_merge(user_global_raw, _read_yaml(p) ?? {});
@@ -10102,7 +10199,7 @@ function load_agent_settings(options = {}) {
10102
10199
  );
10103
10200
  }
10104
10201
  const cascade = _resolve_cascade_paths(cwd, project_path);
10105
- const merged = _deep_copy_defaults(_DEFAULTS);
10202
+ const merged = template_defaults(template_path ?? void 0);
10106
10203
  _deep_merge(merged, user_global_filtered);
10107
10204
  for (const p of cascade) {
10108
10205
  const layer = _read_yaml(p) ?? {};
@@ -10238,10 +10335,18 @@ function _deep_merge(dst, src) {
10238
10335
  }
10239
10336
  }
10240
10337
  }
10241
- function _deep_copy_defaults(src) {
10242
- const out = {};
10243
- _deep_merge(out, src);
10244
- return out;
10338
+ function _deepcopy(value) {
10339
+ if (Array.isArray(value)) {
10340
+ return value.map((v) => _deepcopy(v));
10341
+ }
10342
+ if (_is_plain_dict(value)) {
10343
+ const out = {};
10344
+ for (const [k, v] of Object.entries(value)) {
10345
+ out[k] = _deepcopy(v);
10346
+ }
10347
+ return out;
10348
+ }
10349
+ return value;
10245
10350
  }
10246
10351
  function _is_plain_dict(value) {
10247
10352
  return typeof value === "object" && value !== null && !Array.isArray(value);
@@ -14792,6 +14897,9 @@ var settingsSchema = external_exports.object({
14792
14897
  judge_model: external_exports.string().default("").describe(
14793
14898
  "Override the model used for review / judge subagents that critique implementer output. Empty (default) = one tier above the implementer model \u2014 picks up nuance the implementer missed."
14794
14899
  ),
14900
+ model_ceiling: external_exports.string().default("").describe(
14901
+ "Session-wide model CEILING for subagents (spend cap). Empty (default) = no ceiling. When set, suite-owned CLI spawn wrappers export CLAUDE_CODE_SUBAGENT_MODEL to the sessions they launch. Class C: a human sets it; the agent never writes or infers one."
14902
+ ),
14795
14903
  max_parallel: external_exports.number().int().min(1).default(3).describe(
14796
14904
  "Hard cap on subagents running in parallel during /do-in-parallel, /do-competitively, and /judge runs. Raise for faster fan-out, lower if you hit rate limits or want lower token spend."
14797
14905
  ),
@@ -14958,6 +15066,17 @@ var settingsSchema = external_exports.object({
14958
15066
  enabled: external_exports.boolean().default(false).describe(
14959
15067
  "PreToolUse code-graph nudge (ADR-124 Phase 4). Default off. When on AND a native code-graph cache or a consumer-shipped graph.json/SCIP index is present, warns once per session (never blocks) as the agent is about to Grep/Glob or Read a source file \u2014 query the graph first for who-calls/where-used/impact questions (or rebuild if stale, build if absent). Source G\u2019s strict block-first-read mode is deliberately un-ported."
14960
15068
  )
15069
+ }).default({}),
15070
+ turn_end_gate: external_exports.object({
15071
+ enabled: external_exports.boolean().default(false).describe(
15072
+ "Stop-slot turn-end gate (road-to-conformance-round5 Phase 3). Default off, and it is the only concern that can REFUSE a turn-end rather than a tool call \u2014 so it soaks behind an explicit opt-in before it binds. Round 5 measured the reason: both blocking carriers reached zero violations, neither advisory carrier did, and 19 wrong-language replies survived a pin that had fired 26-35 seconds earlier. A refused turn continues in the SAME turn and is never refused twice."
15073
+ ),
15074
+ promissory: external_exports.boolean().default(true).describe(
15075
+ "Detector A of the turn-end gate: refuse a turn whose closing paragraph promises work not yet performed while asking the user nothing (20 measured occurrences). No fire rate is quoted here on purpose: the measured rate moved twice while the instrument itself was being corrected, so a number in a shipped description would be a moving target. Re-derive it with `measure-turn-end-gate --store <transcript dir>` against your own corpus before arming the gate. Inert while hooks.turn_end_gate.enabled is false."
15076
+ ),
15077
+ language: external_exports.boolean().default(true).describe(
15078
+ "Detector B of the turn-end gate: refuse a turn whose reply is not in the pinned language (19 measured occurrences). Fenced code, inline code, quoted tool output, tables, URLs and paths are stripped first, and the remainder is then scored LEAD-FIRST by the same classifier that sets the pin \u2014 so the verdict usually comes from the reply opening, not from all of it. Sharing that classifier is deliberate: it stops the pin and the detector disagreeing about a turn. Accepted opt-in spellings for the switches below include YAML true/false and yes/no/on/off. Inert while hooks.turn_end_gate.enabled is false."
15079
+ )
14961
15080
  }).default({})
14962
15081
  }),
14963
15082
  decision_engine: external_exports.object({
@@ -16422,16 +16541,16 @@ import { spawnSync } from "node:child_process";
16422
16541
  import * as fs17 from "node:fs";
16423
16542
  import * as path15 from "node:path";
16424
16543
  import process2 from "node:process";
16425
- import { fileURLToPath as fileURLToPath3, pathToFileURL } from "node:url";
16544
+ import { fileURLToPath as fileURLToPath4, pathToFileURL } from "node:url";
16426
16545
 
16427
16546
  // src/scripts/_lib/package_root.ts
16428
16547
  import * as fs16 from "node:fs";
16429
16548
  import * as path14 from "node:path";
16430
- import { fileURLToPath as fileURLToPath2 } from "node:url";
16549
+ import { fileURLToPath as fileURLToPath3 } from "node:url";
16431
16550
  var PACKAGE_NAME = "@event4u/agent-config";
16432
16551
  var MAX_ASCENT = 16;
16433
16552
  function resolvePackageRoot(fromUrlOrPath, legacyHops = 3) {
16434
- const start = fromUrlOrPath.startsWith("file:") ? fileURLToPath2(fromUrlOrPath) : fromUrlOrPath;
16553
+ const start = fromUrlOrPath.startsWith("file:") ? fileURLToPath3(fromUrlOrPath) : fromUrlOrPath;
16435
16554
  const startDir = path14.dirname(start);
16436
16555
  let dir = startDir;
16437
16556
  for (let i = 0; i < MAX_ASCENT; i++) {
@@ -16472,7 +16591,7 @@ var LEGACY_SETTINGS_FILES = [".agent-settings.yml", ".agent-user.yml"];
16472
16591
  var LEGACY_STATE_FILENAME = ".implement-ticket-state.json";
16473
16592
  var LEGACY_STATE_V1_FILENAME = ".work-state.json";
16474
16593
  var LEGACY_AGENT_CONFIG_SHELL = "agent-config";
16475
- var _HERE_DIR = path15.dirname(fileURLToPath3(import.meta.url));
16594
+ var _HERE_DIR = path15.dirname(fileURLToPath4(import.meta.url));
16476
16595
  var ArgparseExit = class extends Error {
16477
16596
  code;
16478
16597
  constructor(code) {
@@ -17124,7 +17243,7 @@ function main(argv = null, options = {}) {
17124
17243
  return _apply(project, out, err);
17125
17244
  }
17126
17245
  var _bundled = true;
17127
- var _HERE = fileURLToPath3(import.meta.url);
17246
+ var _HERE = fileURLToPath4(import.meta.url);
17128
17247
  function _isCliEntry() {
17129
17248
  if (process2.argv[1] === void 0) {
17130
17249
  return false;
@@ -17134,7 +17253,7 @@ function _isCliEntry() {
17134
17253
  return true;
17135
17254
  }
17136
17255
  try {
17137
- const here = fs17.realpathSync(fileURLToPath3(import.meta.url));
17256
+ const here = fs17.realpathSync(fileURLToPath4(import.meta.url));
17138
17257
  const argv = fs17.realpathSync(path15.resolve(process2.argv[1]));
17139
17258
  return here === argv;
17140
17259
  } catch {
@@ -17154,7 +17273,7 @@ if (!_bundled && (_isCliEntry() || process2.argv[1] === _HERE)) {
17154
17273
  }
17155
17274
 
17156
17275
  // src/scripts/install.ts
17157
- var _HERE2 = fileURLToPath4(import.meta.url);
17276
+ var _HERE2 = fileURLToPath5(import.meta.url);
17158
17277
  var SystemExitError = class extends Error {
17159
17278
  constructor(code) {
17160
17279
  super(`system-exit-${code}`);
@@ -3,13 +3,13 @@
3
3
  "artefact_count": 603,
4
4
  "scanner_version": "c24312e116f8"
5
5
  },
6
- "generated_at": "2026-08-09",
6
+ "generated_at": "2026-08-10",
7
7
  "package": {
8
8
  "description": "Governed skills, rules and commands for AI coding tools (Claude Code, Cursor, Windsurf, Copilot) \u2014 every claim machine-checked, including \"zero runtime daemon\".",
9
9
  "homepage": "https://event4u-app.github.io/agent-config",
10
10
  "name": "@event4u/agent-config",
11
11
  "repository": "https://github.com/event4u-app/agent-config",
12
- "version": "9.29.0"
12
+ "version": "9.31.0"
13
13
  },
14
14
  "registries": [
15
15
  {
@@ -9,12 +9,12 @@
9
9
  "transport": {
10
10
  "type": "stdio"
11
11
  },
12
- "version": "9.29.0"
12
+ "version": "9.31.0"
13
13
  }
14
14
  ],
15
15
  "repository": {
16
16
  "source": "github",
17
17
  "url": "https://github.com/event4u-app/agent-config"
18
18
  },
19
- "version": "9.29.0"
19
+ "version": "9.31.0"
20
20
  }