lazycodex-ai 5.1.38 → 5.1.41

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 (117) hide show
  1. package/dist/cli/index.js +229 -187
  2. package/dist/cli-node/index.js +229 -187
  3. package/package.json +1 -1
  4. package/packages/lsp-daemon/dist/cli.js +10 -0
  5. package/packages/lsp-daemon/dist/client.js +10 -0
  6. package/packages/lsp-daemon/dist/index.js +10 -0
  7. package/packages/lsp-tools-mcp/dist/cli.js +10 -0
  8. package/packages/lsp-tools-mcp/dist/lsp/manager.js +10 -0
  9. package/packages/lsp-tools-mcp/dist/mcp.js +10 -0
  10. package/packages/lsp-tools-mcp/dist/tools.js +10 -0
  11. package/packages/omo-codex/plugin/.codex-plugin/plugin.json +1 -1
  12. package/packages/omo-codex/plugin/components/bootstrap/dist/cli.js +24 -2
  13. package/packages/omo-codex/plugin/components/bootstrap/hooks/hooks.json +1 -1
  14. package/packages/omo-codex/plugin/components/bootstrap/package.json +1 -1
  15. package/packages/omo-codex/plugin/components/comment-checker/hooks/hooks.json +1 -1
  16. package/packages/omo-codex/plugin/components/comment-checker/package.json +1 -1
  17. package/packages/omo-codex/plugin/components/git-bash/hooks/hooks.json +2 -2
  18. package/packages/omo-codex/plugin/components/git-bash/package.json +1 -1
  19. package/packages/omo-codex/plugin/components/lazycodex-executor-verify/hooks/hooks.json +1 -1
  20. package/packages/omo-codex/plugin/components/lazycodex-executor-verify/package.json +1 -1
  21. package/packages/omo-codex/plugin/components/lsp/dist/.omo-runtime-manifest.json +3 -3
  22. package/packages/omo-codex/plugin/components/lsp/dist/cli.js +10 -0
  23. package/packages/omo-codex/plugin/components/lsp/hooks/hooks.json +2 -2
  24. package/packages/omo-codex/plugin/components/lsp/package.json +1 -1
  25. package/packages/omo-codex/plugin/components/rules/hooks/hooks.json +4 -4
  26. package/packages/omo-codex/plugin/components/rules/package.json +1 -1
  27. package/packages/omo-codex/plugin/components/teammode/hooks/hooks.json +1 -1
  28. package/packages/omo-codex/plugin/components/teammode/package.json +1 -1
  29. package/packages/omo-codex/plugin/components/telemetry/dist/cli.js +157 -151
  30. package/packages/omo-codex/plugin/components/telemetry/dist/posthog.js +157 -151
  31. package/packages/omo-codex/plugin/components/telemetry/hooks/hooks.json +1 -1
  32. package/packages/omo-codex/plugin/components/telemetry/package.json +1 -1
  33. package/packages/omo-codex/plugin/components/ultrawork/hooks/hooks.json +1 -1
  34. package/packages/omo-codex/plugin/components/ultrawork/package.json +1 -1
  35. package/packages/omo-codex/plugin/components/ultrawork/skills/ulw-plan/SKILL.md +1 -1
  36. package/packages/omo-codex/plugin/components/ultrawork/skills/ulw-plan/references/full-workflow.md +5 -4
  37. package/packages/omo-codex/plugin/components/ulw-execute-continuation/hooks/hooks.json +1 -1
  38. package/packages/omo-codex/plugin/components/ulw-execute-continuation/package.json +1 -1
  39. package/packages/omo-codex/plugin/components/ulw-loop/hooks/hooks.json +5 -5
  40. package/packages/omo-codex/plugin/components/ulw-loop/package.json +1 -1
  41. package/packages/omo-codex/plugin/hooks/post-compact-resetting-git-bash-mcp-reminder.json +1 -1
  42. package/packages/omo-codex/plugin/hooks/post-compact-resetting-lsp-diagnostics-cache.json +1 -1
  43. package/packages/omo-codex/plugin/hooks/post-compact-resetting-project-rule-cache.json +1 -1
  44. package/packages/omo-codex/plugin/hooks/post-tool-use-checking-comments.json +1 -1
  45. package/packages/omo-codex/plugin/hooks/post-tool-use-checking-lsp-diagnostics.json +1 -1
  46. package/packages/omo-codex/plugin/hooks/post-tool-use-checking-thread-title-hygiene.json +1 -1
  47. package/packages/omo-codex/plugin/hooks/post-tool-use-matching-project-rules.json +1 -1
  48. package/packages/omo-codex/plugin/hooks/post-tool-use-recording-spawn-admission.json +1 -1
  49. package/packages/omo-codex/plugin/hooks/pre-tool-use-enforcing-unlimited-goal-budget.json +1 -1
  50. package/packages/omo-codex/plugin/hooks/pre-tool-use-guarding-ulw-loop-spawns.json +1 -1
  51. package/packages/omo-codex/plugin/hooks/pre-tool-use-recommending-git-bash-mcp.json +1 -1
  52. package/packages/omo-codex/plugin/hooks/session-start-checking-auto-update.json +1 -1
  53. package/packages/omo-codex/plugin/hooks/session-start-checking-bootstrap-provisioning.json +1 -1
  54. package/packages/omo-codex/plugin/hooks/session-start-loading-project-rules.json +1 -1
  55. package/packages/omo-codex/plugin/hooks/session-start-recording-session-telemetry.json +1 -1
  56. package/packages/omo-codex/plugin/hooks/stop-checking-ulw-execute-continuation.json +1 -1
  57. package/packages/omo-codex/plugin/hooks/stop-checking-ulw-loop-resume.json +1 -1
  58. package/packages/omo-codex/plugin/hooks/subagent-stop-verifying-lazycodex-executor-evidence.json +1 -1
  59. package/packages/omo-codex/plugin/hooks/user-prompt-submit-checking-ultrawork-trigger.json +1 -1
  60. package/packages/omo-codex/plugin/hooks/user-prompt-submit-checking-ulw-loop-steering.json +1 -1
  61. package/packages/omo-codex/plugin/hooks/user-prompt-submit-loading-project-rules.json +1 -1
  62. package/packages/omo-codex/plugin/package-lock.json +12 -12
  63. package/packages/omo-codex/plugin/package.json +1 -1
  64. package/packages/omo-codex/plugin/skills/browser/runtime/omowright/manifest.json +1 -1
  65. package/packages/omo-codex/plugin/skills/frontend/SKILL.md +6 -6
  66. package/packages/omo-codex/plugin/skills/frontend/references/design/README.md +2 -2
  67. package/packages/omo-codex/plugin/skills/frontend/references/perfection/README.md +2 -2
  68. package/packages/omo-codex/plugin/skills/frontend/scripts/perfection/accent-stripes/declarations.ts +22 -13
  69. package/packages/omo-codex/plugin/skills/frontend/scripts/perfection/accent-stripes/findings.ts +7 -6
  70. package/packages/omo-codex/plugin/skills/frontend/scripts/perfection/accent-stripes/lint.ts +18 -24
  71. package/packages/omo-codex/plugin/skills/frontend/scripts/perfection/accent-stripes/markup.ts +14 -7
  72. package/packages/omo-codex/plugin/skills/frontend/scripts/perfection/accent-stripes/selector.ts +5 -1
  73. package/packages/omo-codex/plugin/skills/frontend/scripts/perfection/accent-stripes/tailwind.ts +32 -14
  74. package/packages/omo-codex/plugin/skills/frontend/scripts/perfection/check-accent-stripes.ts +1 -1
  75. package/packages/omo-codex/plugin/skills/frontend/scripts/perfection/fixtures/accent-stripes/negative/inline-ok.tsx +1 -0
  76. package/packages/omo-codex/plugin/skills/frontend/scripts/perfection/fixtures/accent-stripes/negative/neutral-and-flat.css +1 -1
  77. package/packages/omo-codex/plugin/skills/frontend/scripts/perfection/fixtures/accent-stripes/negative/tailwind-ok.tsx +5 -2
  78. package/packages/omo-codex/plugin/skills/frontend/scripts/perfection/fixtures/accent-stripes/negative/uniform-and-rings.css +2 -2
  79. package/packages/omo-codex/plugin/skills/frontend/scripts/perfection/fixtures/accent-stripes/positive/accent-outlines.css +4 -0
  80. package/packages/omo-codex/plugin/skills/frontend/scripts/perfection/fixtures/accent-stripes/positive/accent-outlines.tsx +8 -0
  81. package/packages/omo-codex/plugin/skills/frontend/scripts/perfection/fixtures/accent-stripes/{negative → positive}/flat-stripe-side.tsx +3 -1
  82. package/packages/omo-codex/plugin/skills/frontend/scripts/perfection/fixtures/accent-stripes/positive/report-callouts.html +8 -0
  83. package/packages/omo-codex/plugin/skills/frontend/scripts/perfection/fixtures/accent-stripes/positive/square-surfaces.css +8 -0
  84. package/packages/omo-codex/plugin/skills/git-master/SKILL.md +1 -1
  85. package/packages/omo-codex/plugin/skills/ulw-plan/SKILL.md +1 -1
  86. package/packages/omo-codex/plugin/skills/ulw-plan/references/full-workflow.md +5 -4
  87. package/packages/omo-codex/plugin/skills/ulw-research/SKILL.md +10 -2
  88. package/packages/omo-codex/plugin/skills/ulw-research/references/deliverable-phase.md +10 -0
  89. package/packages/omo-codex/plugin/skills/ulw-research/references/report-visualization.md +23 -0
  90. package/packages/omo-codex/scripts/install-dist/install-local.mjs +195 -168
  91. package/packages/shared-skills/skills/browser/runtime/omowright/manifest.json +1 -1
  92. package/packages/shared-skills/skills/frontend/SKILL.md +6 -6
  93. package/packages/shared-skills/skills/frontend/references/design/README.md +2 -2
  94. package/packages/shared-skills/skills/frontend/references/perfection/README.md +2 -2
  95. package/packages/shared-skills/skills/frontend/scripts/perfection/accent-stripes/declarations.ts +22 -13
  96. package/packages/shared-skills/skills/frontend/scripts/perfection/accent-stripes/findings.ts +7 -6
  97. package/packages/shared-skills/skills/frontend/scripts/perfection/accent-stripes/lint.ts +18 -24
  98. package/packages/shared-skills/skills/frontend/scripts/perfection/accent-stripes/markup.ts +14 -7
  99. package/packages/shared-skills/skills/frontend/scripts/perfection/accent-stripes/selector.ts +5 -1
  100. package/packages/shared-skills/skills/frontend/scripts/perfection/accent-stripes/tailwind.ts +32 -14
  101. package/packages/shared-skills/skills/frontend/scripts/perfection/check-accent-stripes.test.ts +15 -6
  102. package/packages/shared-skills/skills/frontend/scripts/perfection/check-accent-stripes.ts +1 -1
  103. package/packages/shared-skills/skills/frontend/scripts/perfection/fixtures/accent-stripes/negative/inline-ok.tsx +1 -0
  104. package/packages/shared-skills/skills/frontend/scripts/perfection/fixtures/accent-stripes/negative/neutral-and-flat.css +1 -1
  105. package/packages/shared-skills/skills/frontend/scripts/perfection/fixtures/accent-stripes/negative/tailwind-ok.tsx +5 -2
  106. package/packages/shared-skills/skills/frontend/scripts/perfection/fixtures/accent-stripes/negative/uniform-and-rings.css +2 -2
  107. package/packages/shared-skills/skills/frontend/scripts/perfection/fixtures/accent-stripes/positive/accent-outlines.css +4 -0
  108. package/packages/shared-skills/skills/frontend/scripts/perfection/fixtures/accent-stripes/positive/accent-outlines.tsx +8 -0
  109. package/packages/shared-skills/skills/frontend/scripts/perfection/fixtures/accent-stripes/{negative → positive}/flat-stripe-side.tsx +3 -1
  110. package/packages/shared-skills/skills/frontend/scripts/perfection/fixtures/accent-stripes/positive/report-callouts.html +8 -0
  111. package/packages/shared-skills/skills/frontend/scripts/perfection/fixtures/accent-stripes/positive/square-surfaces.css +8 -0
  112. package/packages/shared-skills/skills/git-master/SKILL.md +1 -1
  113. package/packages/shared-skills/skills/ulw-plan/SKILL.md +1 -1
  114. package/packages/shared-skills/skills/ulw-plan/references/full-workflow.md +5 -4
  115. package/packages/shared-skills/skills/ulw-research/SKILL.md +10 -2
  116. package/packages/shared-skills/skills/ulw-research/references/deliverable-phase.md +10 -0
  117. package/packages/shared-skills/skills/ulw-research/references/report-visualization.md +23 -0
@@ -386,6 +386,157 @@ function getTelemetryHost(env = process.env, defaultHost = DEFAULT_POSTHOG_HOST)
386
386
  return env["POSTHOG_HOST"]?.trim() || defaultHost;
387
387
  }
388
388
 
389
+ // ../../telemetry-core/src/machine-id.ts
390
+ import { createHash } from "node:crypto";
391
+ import os2 from "node:os";
392
+ function getDefaultTelemetryOsProvider() {
393
+ return os2;
394
+ }
395
+ function getTelemetryDistinctId(machineIdPrefix, osProvider = getDefaultTelemetryOsProvider()) {
396
+ return createHash("sha256").update(`${machineIdPrefix}${osProvider.hostname()}`).digest("hex");
397
+ }
398
+
399
+ // ../../telemetry-core/src/injected-client.ts
400
+ var NO_OP_CLIENT = {
401
+ enabled: false,
402
+ trackActive: () => {
403
+ return;
404
+ },
405
+ flush: async () => {
406
+ return;
407
+ },
408
+ shutdown: async () => {
409
+ return;
410
+ }
411
+ };
412
+ function isTelemetryClientEnabled(input) {
413
+ const env = input.env ?? process.env;
414
+ return !shouldDisableTelemetry({ env, productEnvPrefix: input.product.productEnvPrefix }) && hasTelemetryApiKey(env, input.product.defaultApiKey);
415
+ }
416
+ function createTelemetryClient(input) {
417
+ if (!isTelemetryClientEnabled(input)) {
418
+ return NO_OP_CLIENT;
419
+ }
420
+ const transport = createTransport(input);
421
+ if (transport === null) {
422
+ return NO_OP_CLIENT;
423
+ }
424
+ const sharedProperties = getSharedProperties(input);
425
+ return {
426
+ enabled: true,
427
+ trackActive: ({ dayUTC, distinctId, reason }) => {
428
+ try {
429
+ transport.capture({
430
+ distinctId,
431
+ event: input.product.eventName,
432
+ properties: {
433
+ ...sharedProperties,
434
+ $process_person_profile: false,
435
+ day_utc: dayUTC,
436
+ reason
437
+ }
438
+ });
439
+ } catch (error) {
440
+ input.diagnostics?.({
441
+ event: "telemetry_capture_failed",
442
+ source: input.source,
443
+ error,
444
+ errorKind: error instanceof Error ? "error" : "non_error"
445
+ });
446
+ }
447
+ },
448
+ flush: async () => {
449
+ if (transport.flush === undefined) {
450
+ return;
451
+ }
452
+ await transport.flush();
453
+ },
454
+ shutdown: async () => {
455
+ try {
456
+ await transport.shutdown();
457
+ } catch (error) {
458
+ input.diagnostics?.({
459
+ event: "telemetry_shutdown_failed",
460
+ source: input.source,
461
+ error,
462
+ errorKind: error instanceof Error ? "error" : "non_error"
463
+ });
464
+ }
465
+ }
466
+ };
467
+ }
468
+ function createTransport(input) {
469
+ const env = input.env ?? process.env;
470
+ const factory = input.transportFactory;
471
+ try {
472
+ return factory(getTelemetryApiKey(env, input.product.defaultApiKey), {
473
+ enableExceptionAutocapture: false,
474
+ enableLocalEvaluation: false,
475
+ strictLocalEvaluation: true,
476
+ disableRemoteConfig: true,
477
+ flushAt: 1,
478
+ flushInterval: 0,
479
+ host: getTelemetryHost(env, input.product.defaultHost),
480
+ disableGeoip: input.product.disableGeoip ?? false,
481
+ ...input.product.transportOptions
482
+ });
483
+ } catch (error) {
484
+ input.diagnostics?.({
485
+ event: "telemetry_posthog_init_failed",
486
+ source: input.source,
487
+ error,
488
+ errorKind: error instanceof Error ? "error" : "non_error"
489
+ });
490
+ return null;
491
+ }
492
+ }
493
+ function getSharedProperties(input) {
494
+ const osProvider = input.osProvider ?? getDefaultTelemetryOsProvider();
495
+ const cpuInfo = getSafeCpuInfo(osProvider, input);
496
+ return {
497
+ platform: input.product.platform,
498
+ product_name: input.product.productName,
499
+ package_name: input.product.packageName,
500
+ package_version: input.product.packageVersion,
501
+ runtime: "bun",
502
+ runtime_version: process.versions.bun ?? process.version,
503
+ source: input.source,
504
+ $os: osProvider.platform(),
505
+ $os_version: osProvider.release(),
506
+ os_arch: osProvider.arch(),
507
+ os_type: osProvider.type(),
508
+ cpu_count: cpuInfo.count,
509
+ cpu_model: cpuInfo.model,
510
+ total_memory_gb: Math.round(osProvider.totalmem() / 1024 / 1024 / 1024),
511
+ locale: Intl.DateTimeFormat().resolvedOptions().locale,
512
+ timezone: Intl.DateTimeFormat().resolvedOptions().timeZone,
513
+ shell: process.env.SHELL,
514
+ ci: Boolean(process.env.CI),
515
+ terminal: process.env.TERM_PROGRAM,
516
+ ...input.product.additionalProperties
517
+ };
518
+ }
519
+ function getSafeCpuInfo(osProvider, input) {
520
+ try {
521
+ const cpuInfo = osProvider.cpus();
522
+ return {
523
+ count: cpuInfo.length,
524
+ model: cpuInfo[0]?.model
525
+ };
526
+ } catch (error) {
527
+ input.diagnostics?.({
528
+ event: "telemetry_cpu_info_unavailable",
529
+ source: "shared",
530
+ error,
531
+ errorKind: error instanceof Error ? "error" : "non_error"
532
+ });
533
+ return {
534
+ count: 0,
535
+ model: undefined
536
+ };
537
+ }
538
+ }
539
+
389
540
  // ../../../node_modules/.bun/posthog-node@5.52.4/node_modules/posthog-node/dist/extensions/error-tracking/modifiers/module.node.mjs
390
541
  import { dirname as dirname2, posix, sep } from "node:path";
391
542
  function createModulerModifier() {
@@ -9452,30 +9603,7 @@ class PostHog extends PostHogBackendClient {
9452
9603
  }
9453
9604
  }
9454
9605
 
9455
- // ../../telemetry-core/src/machine-id.ts
9456
- import { createHash } from "node:crypto";
9457
- import os2 from "node:os";
9458
- function getDefaultTelemetryOsProvider() {
9459
- return os2;
9460
- }
9461
- function getTelemetryDistinctId(machineIdPrefix, osProvider = getDefaultTelemetryOsProvider()) {
9462
- return createHash("sha256").update(`${machineIdPrefix}${osProvider.hostname()}`).digest("hex");
9463
- }
9464
-
9465
- // ../../telemetry-core/src/posthog-client.ts
9466
- var NO_OP_CLIENT = {
9467
- enabled: false,
9468
- trackActive: () => {
9469
- return;
9470
- },
9471
- flush: async () => {
9472
- return;
9473
- },
9474
- shutdown: async () => {
9475
- return;
9476
- }
9477
- };
9478
-
9606
+ // ../../telemetry-core/src/posthog-transport.ts
9479
9607
  class PostHogTelemetryTransport {
9480
9608
  #client;
9481
9609
  constructor(apiKey, options) {
@@ -9494,132 +9622,10 @@ class PostHogTelemetryTransport {
9494
9622
  function createDefaultPostHogTransport(apiKey, options) {
9495
9623
  return new PostHogTelemetryTransport(apiKey, options);
9496
9624
  }
9497
- function isTelemetryClientEnabled(input) {
9498
- const env = input.env ?? process.env;
9499
- return !shouldDisableTelemetry({ env, productEnvPrefix: input.product.productEnvPrefix }) && hasTelemetryApiKey(env, input.product.defaultApiKey);
9500
- }
9501
- function createTelemetryClient(input) {
9502
- if (!isTelemetryClientEnabled(input)) {
9503
- return NO_OP_CLIENT;
9504
- }
9505
- const transport = createTransport(input);
9506
- if (transport === null) {
9507
- return NO_OP_CLIENT;
9508
- }
9509
- const sharedProperties = getSharedProperties(input);
9510
- return {
9511
- enabled: true,
9512
- trackActive: ({ dayUTC, distinctId, reason }) => {
9513
- try {
9514
- transport.capture({
9515
- distinctId,
9516
- event: input.product.eventName,
9517
- properties: {
9518
- ...sharedProperties,
9519
- $process_person_profile: false,
9520
- day_utc: dayUTC,
9521
- reason
9522
- }
9523
- });
9524
- } catch (error) {
9525
- input.diagnostics?.({
9526
- event: "telemetry_capture_failed",
9527
- source: input.source,
9528
- error,
9529
- errorKind: error instanceof Error ? "error" : "non_error"
9530
- });
9531
- }
9532
- },
9533
- flush: async () => {
9534
- if (transport.flush === undefined) {
9535
- return;
9536
- }
9537
- await transport.flush();
9538
- },
9539
- shutdown: async () => {
9540
- try {
9541
- await transport.shutdown();
9542
- } catch (error) {
9543
- input.diagnostics?.({
9544
- event: "telemetry_shutdown_failed",
9545
- source: input.source,
9546
- error,
9547
- errorKind: error instanceof Error ? "error" : "non_error"
9548
- });
9549
- }
9550
- }
9551
- };
9552
- }
9553
- function createTransport(input) {
9554
- const env = input.env ?? process.env;
9555
- const factory = input.transportFactory ?? createDefaultPostHogTransport;
9556
- try {
9557
- return factory(getTelemetryApiKey(env, input.product.defaultApiKey), {
9558
- enableExceptionAutocapture: false,
9559
- enableLocalEvaluation: false,
9560
- strictLocalEvaluation: true,
9561
- disableRemoteConfig: true,
9562
- flushAt: 1,
9563
- flushInterval: 0,
9564
- host: getTelemetryHost(env, input.product.defaultHost),
9565
- disableGeoip: input.product.disableGeoip ?? false,
9566
- ...input.product.transportOptions
9567
- });
9568
- } catch (error) {
9569
- input.diagnostics?.({
9570
- event: "telemetry_posthog_init_failed",
9571
- source: input.source,
9572
- error,
9573
- errorKind: error instanceof Error ? "error" : "non_error"
9574
- });
9575
- return null;
9576
- }
9577
- }
9578
- function getSharedProperties(input) {
9579
- const osProvider = input.osProvider ?? getDefaultTelemetryOsProvider();
9580
- const cpuInfo = getSafeCpuInfo(osProvider, input);
9581
- return {
9582
- platform: input.product.platform,
9583
- product_name: input.product.productName,
9584
- package_name: input.product.packageName,
9585
- package_version: input.product.packageVersion,
9586
- runtime: "bun",
9587
- runtime_version: process.versions.bun ?? process.version,
9588
- source: input.source,
9589
- $os: osProvider.platform(),
9590
- $os_version: osProvider.release(),
9591
- os_arch: osProvider.arch(),
9592
- os_type: osProvider.type(),
9593
- cpu_count: cpuInfo.count,
9594
- cpu_model: cpuInfo.model,
9595
- total_memory_gb: Math.round(osProvider.totalmem() / 1024 / 1024 / 1024),
9596
- locale: Intl.DateTimeFormat().resolvedOptions().locale,
9597
- timezone: Intl.DateTimeFormat().resolvedOptions().timeZone,
9598
- shell: process.env.SHELL,
9599
- ci: Boolean(process.env.CI),
9600
- terminal: process.env.TERM_PROGRAM,
9601
- ...input.product.additionalProperties
9602
- };
9603
- }
9604
- function getSafeCpuInfo(osProvider, input) {
9605
- try {
9606
- const cpuInfo = osProvider.cpus();
9607
- return {
9608
- count: cpuInfo.length,
9609
- model: cpuInfo[0]?.model
9610
- };
9611
- } catch (error) {
9612
- input.diagnostics?.({
9613
- event: "telemetry_cpu_info_unavailable",
9614
- source: "shared",
9615
- error,
9616
- errorKind: error instanceof Error ? "error" : "non_error"
9617
- });
9618
- return {
9619
- count: 0,
9620
- model: undefined
9621
- };
9622
- }
9625
+
9626
+ // ../../telemetry-core/src/posthog-client.ts
9627
+ function createTelemetryClient2(input) {
9628
+ return createTelemetryClient({ ...input, transportFactory: input.transportFactory ?? createDefaultPostHogTransport });
9623
9629
  }
9624
9630
 
9625
9631
  // components/telemetry/src/product-identity.ts
@@ -9729,7 +9735,7 @@ function createPluginPostHogClient(options = {}) {
9729
9735
  }),
9730
9736
  source: "plugin"
9731
9737
  };
9732
- const client = createTelemetryClient(options.transportFactory === undefined ? clientInput : {
9738
+ const client = createTelemetryClient2(options.transportFactory === undefined ? clientInput : {
9733
9739
  ...clientInput,
9734
9740
  transportFactory: options.transportFactory
9735
9741
  });
@@ -381,6 +381,157 @@ function getTelemetryHost(env = process.env, defaultHost = DEFAULT_POSTHOG_HOST)
381
381
  return env["POSTHOG_HOST"]?.trim() || defaultHost;
382
382
  }
383
383
 
384
+ // ../../../../telemetry-core/src/machine-id.ts
385
+ import { createHash } from "node:crypto";
386
+ import os2 from "node:os";
387
+ function getDefaultTelemetryOsProvider() {
388
+ return os2;
389
+ }
390
+ function getTelemetryDistinctId(machineIdPrefix, osProvider = getDefaultTelemetryOsProvider()) {
391
+ return createHash("sha256").update(`${machineIdPrefix}${osProvider.hostname()}`).digest("hex");
392
+ }
393
+
394
+ // ../../../../telemetry-core/src/injected-client.ts
395
+ var NO_OP_CLIENT = {
396
+ enabled: false,
397
+ trackActive: () => {
398
+ return;
399
+ },
400
+ flush: async () => {
401
+ return;
402
+ },
403
+ shutdown: async () => {
404
+ return;
405
+ }
406
+ };
407
+ function isTelemetryClientEnabled(input) {
408
+ const env = input.env ?? process.env;
409
+ return !shouldDisableTelemetry({ env, productEnvPrefix: input.product.productEnvPrefix }) && hasTelemetryApiKey(env, input.product.defaultApiKey);
410
+ }
411
+ function createTelemetryClient(input) {
412
+ if (!isTelemetryClientEnabled(input)) {
413
+ return NO_OP_CLIENT;
414
+ }
415
+ const transport = createTransport(input);
416
+ if (transport === null) {
417
+ return NO_OP_CLIENT;
418
+ }
419
+ const sharedProperties = getSharedProperties(input);
420
+ return {
421
+ enabled: true,
422
+ trackActive: ({ dayUTC, distinctId, reason }) => {
423
+ try {
424
+ transport.capture({
425
+ distinctId,
426
+ event: input.product.eventName,
427
+ properties: {
428
+ ...sharedProperties,
429
+ $process_person_profile: false,
430
+ day_utc: dayUTC,
431
+ reason
432
+ }
433
+ });
434
+ } catch (error) {
435
+ input.diagnostics?.({
436
+ event: "telemetry_capture_failed",
437
+ source: input.source,
438
+ error,
439
+ errorKind: error instanceof Error ? "error" : "non_error"
440
+ });
441
+ }
442
+ },
443
+ flush: async () => {
444
+ if (transport.flush === undefined) {
445
+ return;
446
+ }
447
+ await transport.flush();
448
+ },
449
+ shutdown: async () => {
450
+ try {
451
+ await transport.shutdown();
452
+ } catch (error) {
453
+ input.diagnostics?.({
454
+ event: "telemetry_shutdown_failed",
455
+ source: input.source,
456
+ error,
457
+ errorKind: error instanceof Error ? "error" : "non_error"
458
+ });
459
+ }
460
+ }
461
+ };
462
+ }
463
+ function createTransport(input) {
464
+ const env = input.env ?? process.env;
465
+ const factory = input.transportFactory;
466
+ try {
467
+ return factory(getTelemetryApiKey(env, input.product.defaultApiKey), {
468
+ enableExceptionAutocapture: false,
469
+ enableLocalEvaluation: false,
470
+ strictLocalEvaluation: true,
471
+ disableRemoteConfig: true,
472
+ flushAt: 1,
473
+ flushInterval: 0,
474
+ host: getTelemetryHost(env, input.product.defaultHost),
475
+ disableGeoip: input.product.disableGeoip ?? false,
476
+ ...input.product.transportOptions
477
+ });
478
+ } catch (error) {
479
+ input.diagnostics?.({
480
+ event: "telemetry_posthog_init_failed",
481
+ source: input.source,
482
+ error,
483
+ errorKind: error instanceof Error ? "error" : "non_error"
484
+ });
485
+ return null;
486
+ }
487
+ }
488
+ function getSharedProperties(input) {
489
+ const osProvider = input.osProvider ?? getDefaultTelemetryOsProvider();
490
+ const cpuInfo = getSafeCpuInfo(osProvider, input);
491
+ return {
492
+ platform: input.product.platform,
493
+ product_name: input.product.productName,
494
+ package_name: input.product.packageName,
495
+ package_version: input.product.packageVersion,
496
+ runtime: "bun",
497
+ runtime_version: process.versions.bun ?? process.version,
498
+ source: input.source,
499
+ $os: osProvider.platform(),
500
+ $os_version: osProvider.release(),
501
+ os_arch: osProvider.arch(),
502
+ os_type: osProvider.type(),
503
+ cpu_count: cpuInfo.count,
504
+ cpu_model: cpuInfo.model,
505
+ total_memory_gb: Math.round(osProvider.totalmem() / 1024 / 1024 / 1024),
506
+ locale: Intl.DateTimeFormat().resolvedOptions().locale,
507
+ timezone: Intl.DateTimeFormat().resolvedOptions().timeZone,
508
+ shell: process.env.SHELL,
509
+ ci: Boolean(process.env.CI),
510
+ terminal: process.env.TERM_PROGRAM,
511
+ ...input.product.additionalProperties
512
+ };
513
+ }
514
+ function getSafeCpuInfo(osProvider, input) {
515
+ try {
516
+ const cpuInfo = osProvider.cpus();
517
+ return {
518
+ count: cpuInfo.length,
519
+ model: cpuInfo[0]?.model
520
+ };
521
+ } catch (error) {
522
+ input.diagnostics?.({
523
+ event: "telemetry_cpu_info_unavailable",
524
+ source: "shared",
525
+ error,
526
+ errorKind: error instanceof Error ? "error" : "non_error"
527
+ });
528
+ return {
529
+ count: 0,
530
+ model: undefined
531
+ };
532
+ }
533
+ }
534
+
384
535
  // ../../../../../node_modules/.bun/posthog-node@5.52.4/node_modules/posthog-node/dist/extensions/error-tracking/modifiers/module.node.mjs
385
536
  import { dirname as dirname2, posix, sep } from "path";
386
537
  function createModulerModifier() {
@@ -9447,30 +9598,7 @@ class PostHog extends PostHogBackendClient {
9447
9598
  }
9448
9599
  }
9449
9600
 
9450
- // ../../../../telemetry-core/src/machine-id.ts
9451
- import { createHash } from "node:crypto";
9452
- import os2 from "node:os";
9453
- function getDefaultTelemetryOsProvider() {
9454
- return os2;
9455
- }
9456
- function getTelemetryDistinctId(machineIdPrefix, osProvider = getDefaultTelemetryOsProvider()) {
9457
- return createHash("sha256").update(`${machineIdPrefix}${osProvider.hostname()}`).digest("hex");
9458
- }
9459
-
9460
- // ../../../../telemetry-core/src/posthog-client.ts
9461
- var NO_OP_CLIENT = {
9462
- enabled: false,
9463
- trackActive: () => {
9464
- return;
9465
- },
9466
- flush: async () => {
9467
- return;
9468
- },
9469
- shutdown: async () => {
9470
- return;
9471
- }
9472
- };
9473
-
9601
+ // ../../../../telemetry-core/src/posthog-transport.ts
9474
9602
  class PostHogTelemetryTransport {
9475
9603
  #client;
9476
9604
  constructor(apiKey, options) {
@@ -9489,132 +9617,10 @@ class PostHogTelemetryTransport {
9489
9617
  function createDefaultPostHogTransport(apiKey, options) {
9490
9618
  return new PostHogTelemetryTransport(apiKey, options);
9491
9619
  }
9492
- function isTelemetryClientEnabled(input) {
9493
- const env = input.env ?? process.env;
9494
- return !shouldDisableTelemetry({ env, productEnvPrefix: input.product.productEnvPrefix }) && hasTelemetryApiKey(env, input.product.defaultApiKey);
9495
- }
9496
- function createTelemetryClient(input) {
9497
- if (!isTelemetryClientEnabled(input)) {
9498
- return NO_OP_CLIENT;
9499
- }
9500
- const transport = createTransport(input);
9501
- if (transport === null) {
9502
- return NO_OP_CLIENT;
9503
- }
9504
- const sharedProperties = getSharedProperties(input);
9505
- return {
9506
- enabled: true,
9507
- trackActive: ({ dayUTC, distinctId, reason }) => {
9508
- try {
9509
- transport.capture({
9510
- distinctId,
9511
- event: input.product.eventName,
9512
- properties: {
9513
- ...sharedProperties,
9514
- $process_person_profile: false,
9515
- day_utc: dayUTC,
9516
- reason
9517
- }
9518
- });
9519
- } catch (error) {
9520
- input.diagnostics?.({
9521
- event: "telemetry_capture_failed",
9522
- source: input.source,
9523
- error,
9524
- errorKind: error instanceof Error ? "error" : "non_error"
9525
- });
9526
- }
9527
- },
9528
- flush: async () => {
9529
- if (transport.flush === undefined) {
9530
- return;
9531
- }
9532
- await transport.flush();
9533
- },
9534
- shutdown: async () => {
9535
- try {
9536
- await transport.shutdown();
9537
- } catch (error) {
9538
- input.diagnostics?.({
9539
- event: "telemetry_shutdown_failed",
9540
- source: input.source,
9541
- error,
9542
- errorKind: error instanceof Error ? "error" : "non_error"
9543
- });
9544
- }
9545
- }
9546
- };
9547
- }
9548
- function createTransport(input) {
9549
- const env = input.env ?? process.env;
9550
- const factory = input.transportFactory ?? createDefaultPostHogTransport;
9551
- try {
9552
- return factory(getTelemetryApiKey(env, input.product.defaultApiKey), {
9553
- enableExceptionAutocapture: false,
9554
- enableLocalEvaluation: false,
9555
- strictLocalEvaluation: true,
9556
- disableRemoteConfig: true,
9557
- flushAt: 1,
9558
- flushInterval: 0,
9559
- host: getTelemetryHost(env, input.product.defaultHost),
9560
- disableGeoip: input.product.disableGeoip ?? false,
9561
- ...input.product.transportOptions
9562
- });
9563
- } catch (error) {
9564
- input.diagnostics?.({
9565
- event: "telemetry_posthog_init_failed",
9566
- source: input.source,
9567
- error,
9568
- errorKind: error instanceof Error ? "error" : "non_error"
9569
- });
9570
- return null;
9571
- }
9572
- }
9573
- function getSharedProperties(input) {
9574
- const osProvider = input.osProvider ?? getDefaultTelemetryOsProvider();
9575
- const cpuInfo = getSafeCpuInfo(osProvider, input);
9576
- return {
9577
- platform: input.product.platform,
9578
- product_name: input.product.productName,
9579
- package_name: input.product.packageName,
9580
- package_version: input.product.packageVersion,
9581
- runtime: "bun",
9582
- runtime_version: process.versions.bun ?? process.version,
9583
- source: input.source,
9584
- $os: osProvider.platform(),
9585
- $os_version: osProvider.release(),
9586
- os_arch: osProvider.arch(),
9587
- os_type: osProvider.type(),
9588
- cpu_count: cpuInfo.count,
9589
- cpu_model: cpuInfo.model,
9590
- total_memory_gb: Math.round(osProvider.totalmem() / 1024 / 1024 / 1024),
9591
- locale: Intl.DateTimeFormat().resolvedOptions().locale,
9592
- timezone: Intl.DateTimeFormat().resolvedOptions().timeZone,
9593
- shell: process.env.SHELL,
9594
- ci: Boolean(process.env.CI),
9595
- terminal: process.env.TERM_PROGRAM,
9596
- ...input.product.additionalProperties
9597
- };
9598
- }
9599
- function getSafeCpuInfo(osProvider, input) {
9600
- try {
9601
- const cpuInfo = osProvider.cpus();
9602
- return {
9603
- count: cpuInfo.length,
9604
- model: cpuInfo[0]?.model
9605
- };
9606
- } catch (error) {
9607
- input.diagnostics?.({
9608
- event: "telemetry_cpu_info_unavailable",
9609
- source: "shared",
9610
- error,
9611
- errorKind: error instanceof Error ? "error" : "non_error"
9612
- });
9613
- return {
9614
- count: 0,
9615
- model: undefined
9616
- };
9617
- }
9620
+
9621
+ // ../../../../telemetry-core/src/posthog-client.ts
9622
+ function createTelemetryClient2(input) {
9623
+ return createTelemetryClient({ ...input, transportFactory: input.transportFactory ?? createDefaultPostHogTransport });
9618
9624
  }
9619
9625
 
9620
9626
  // src/product-identity.ts
@@ -9724,7 +9730,7 @@ function createPluginPostHogClient(options = {}) {
9724
9730
  }),
9725
9731
  source: "plugin"
9726
9732
  };
9727
- const client = createTelemetryClient(options.transportFactory === undefined ? clientInput : {
9733
+ const client = createTelemetryClient2(options.transportFactory === undefined ? clientInput : {
9728
9734
  ...clientInput,
9729
9735
  transportFactory: options.transportFactory
9730
9736
  });
@@ -7,7 +7,7 @@
7
7
  "type": "command",
8
8
  "command": "node \"${PLUGIN_ROOT}/dist/cli.js\" hook session-start",
9
9
  "timeout": 5,
10
- "statusMessage": "(OmO 5.1.38) Recording Session Telemetry"
10
+ "statusMessage": "(OmO 5.1.41) Recording Session Telemetry"
11
11
  }
12
12
  ]
13
13
  }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@code-yeongyu/codex-telemetry",
3
- "version": "5.1.38",
3
+ "version": "5.1.41",
4
4
  "description": "Codex plugin component that emits omo-codex anonymous daily-active telemetry on SessionStart.",
5
5
  "type": "module",
6
6
  "packageManager": "npm@11.12.1",
@@ -7,7 +7,7 @@
7
7
  "type": "command",
8
8
  "command": "node \"${PLUGIN_ROOT}/dist/cli.js\" hook user-prompt-submit",
9
9
  "timeout": 5,
10
- "statusMessage": "(OmO 5.1.38) Checking Ultrawork Trigger"
10
+ "statusMessage": "(OmO 5.1.41) Checking Ultrawork Trigger"
11
11
  }
12
12
  ]
13
13
  }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@code-yeongyu/codex-ultrawork",
3
- "version": "5.1.38",
3
+ "version": "5.1.41",
4
4
  "description": "Codex plugin that injects the ultrawork orchestration directive and ships LazyCodex planning, review, QA, and gate agent roles.",
5
5
  "type": "module",
6
6
  "packageManager": "npm@11.12.1",