oh-my-opencode 5.1.38 → 5.1.40
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/cli/index.js +206 -187
- package/dist/cli-node/index.js +206 -187
- package/dist/index.js +183 -171
- package/dist/skills/browser/runtime/omowright/manifest.json +1 -1
- package/dist/skills/git-master/SKILL.md +1 -1
- package/dist/skills/ulw-plan/SKILL.md +1 -1
- package/dist/skills/ulw-plan/references/full-workflow.md +5 -4
- package/dist/tui.js +29 -22
- package/package.json +15 -14
- package/packages/omo-codex/plugin/.codex-plugin/plugin.json +1 -1
- package/packages/omo-codex/plugin/components/bootstrap/dist/cli.js +8 -2
- package/packages/omo-codex/plugin/components/bootstrap/hooks/hooks.json +1 -1
- package/packages/omo-codex/plugin/components/bootstrap/package.json +1 -1
- package/packages/omo-codex/plugin/components/comment-checker/hooks/hooks.json +1 -1
- package/packages/omo-codex/plugin/components/comment-checker/package.json +1 -1
- package/packages/omo-codex/plugin/components/git-bash/hooks/hooks.json +2 -2
- package/packages/omo-codex/plugin/components/git-bash/package.json +1 -1
- package/packages/omo-codex/plugin/components/lazycodex-executor-verify/hooks/hooks.json +1 -1
- package/packages/omo-codex/plugin/components/lazycodex-executor-verify/package.json +1 -1
- package/packages/omo-codex/plugin/components/lsp/dist/.omo-runtime-manifest.json +2 -2
- package/packages/omo-codex/plugin/components/lsp/hooks/hooks.json +2 -2
- package/packages/omo-codex/plugin/components/lsp/package.json +1 -1
- package/packages/omo-codex/plugin/components/rules/hooks/hooks.json +4 -4
- package/packages/omo-codex/plugin/components/rules/package.json +1 -1
- package/packages/omo-codex/plugin/components/teammode/hooks/hooks.json +1 -1
- package/packages/omo-codex/plugin/components/teammode/package.json +1 -1
- package/packages/omo-codex/plugin/components/telemetry/dist/cli.js +157 -151
- package/packages/omo-codex/plugin/components/telemetry/dist/posthog.js +157 -151
- package/packages/omo-codex/plugin/components/telemetry/hooks/hooks.json +1 -1
- package/packages/omo-codex/plugin/components/telemetry/package.json +1 -1
- package/packages/omo-codex/plugin/components/ultrawork/hooks/hooks.json +1 -1
- package/packages/omo-codex/plugin/components/ultrawork/package.json +1 -1
- package/packages/omo-codex/plugin/components/ultrawork/skills/ulw-plan/SKILL.md +1 -1
- package/packages/omo-codex/plugin/components/ultrawork/skills/ulw-plan/references/full-workflow.md +5 -4
- package/packages/omo-codex/plugin/components/ulw-execute-continuation/hooks/hooks.json +1 -1
- package/packages/omo-codex/plugin/components/ulw-execute-continuation/package.json +1 -1
- package/packages/omo-codex/plugin/components/ulw-loop/hooks/hooks.json +5 -5
- package/packages/omo-codex/plugin/components/ulw-loop/package.json +1 -1
- package/packages/omo-codex/plugin/hooks/post-compact-resetting-git-bash-mcp-reminder.json +1 -1
- package/packages/omo-codex/plugin/hooks/post-compact-resetting-lsp-diagnostics-cache.json +1 -1
- package/packages/omo-codex/plugin/hooks/post-compact-resetting-project-rule-cache.json +1 -1
- package/packages/omo-codex/plugin/hooks/post-tool-use-checking-comments.json +1 -1
- package/packages/omo-codex/plugin/hooks/post-tool-use-checking-lsp-diagnostics.json +1 -1
- package/packages/omo-codex/plugin/hooks/post-tool-use-checking-thread-title-hygiene.json +1 -1
- package/packages/omo-codex/plugin/hooks/post-tool-use-matching-project-rules.json +1 -1
- package/packages/omo-codex/plugin/hooks/post-tool-use-recording-spawn-admission.json +1 -1
- package/packages/omo-codex/plugin/hooks/pre-tool-use-enforcing-unlimited-goal-budget.json +1 -1
- package/packages/omo-codex/plugin/hooks/pre-tool-use-guarding-ulw-loop-spawns.json +1 -1
- package/packages/omo-codex/plugin/hooks/pre-tool-use-recommending-git-bash-mcp.json +1 -1
- package/packages/omo-codex/plugin/hooks/session-start-checking-auto-update.json +1 -1
- package/packages/omo-codex/plugin/hooks/session-start-checking-bootstrap-provisioning.json +1 -1
- package/packages/omo-codex/plugin/hooks/session-start-loading-project-rules.json +1 -1
- package/packages/omo-codex/plugin/hooks/session-start-recording-session-telemetry.json +1 -1
- package/packages/omo-codex/plugin/hooks/stop-checking-ulw-execute-continuation.json +1 -1
- package/packages/omo-codex/plugin/hooks/stop-checking-ulw-loop-resume.json +1 -1
- package/packages/omo-codex/plugin/hooks/subagent-stop-verifying-lazycodex-executor-evidence.json +1 -1
- package/packages/omo-codex/plugin/hooks/user-prompt-submit-checking-ultrawork-trigger.json +1 -1
- package/packages/omo-codex/plugin/hooks/user-prompt-submit-checking-ulw-loop-steering.json +1 -1
- package/packages/omo-codex/plugin/hooks/user-prompt-submit-loading-project-rules.json +1 -1
- package/packages/omo-codex/plugin/package-lock.json +12 -12
- package/packages/omo-codex/plugin/package.json +1 -1
- package/packages/omo-codex/plugin/skills/browser/runtime/omowright/manifest.json +1 -1
- package/packages/omo-codex/plugin/skills/git-master/SKILL.md +1 -1
- package/packages/omo-codex/plugin/skills/ulw-plan/SKILL.md +1 -1
- package/packages/omo-codex/plugin/skills/ulw-plan/references/full-workflow.md +5 -4
- package/packages/omo-codex/scripts/install-dist/install-local.mjs +179 -168
- package/packages/shared-skills/skills/browser/runtime/omowright/manifest.json +1 -1
- package/packages/shared-skills/skills/git-master/SKILL.md +1 -1
- package/packages/shared-skills/skills/ulw-plan/SKILL.md +1 -1
- package/packages/shared-skills/skills/ulw-plan/references/full-workflow.md +5 -4
|
@@ -7100,14 +7100,20 @@ var OmoComputerSettingsLayerSchema = object({
|
|
|
7100
7100
|
var OmoComputerSettingsSchema = OmoComputerSettingsLayerSchema;
|
|
7101
7101
|
|
|
7102
7102
|
// ../../omo-config-core/src/schema/git-master.ts
|
|
7103
|
+
var GIT_ENV_ASSIGNMENT_PATTERN = /^(?:[A-Za-z_][A-Za-z0-9_]*=[A-Za-z0-9_-]*)(?: [A-Za-z_][A-Za-z0-9_]*=[A-Za-z0-9_-]*)*$/;
|
|
7104
|
+
var GitEnvPrefixSchema = string2().refine((value) => value === "" || GIT_ENV_ASSIGNMENT_PATTERN.test(value), {
|
|
7105
|
+
message: 'git_env_prefix must be empty or use shell-safe env assignments like "GIT_MASTER=1"'
|
|
7106
|
+
});
|
|
7103
7107
|
var OmoGitMasterSettingsShape = {
|
|
7104
7108
|
commit_footer: union([boolean2(), string2()]),
|
|
7105
|
-
include_co_authored_by: boolean2()
|
|
7109
|
+
include_co_authored_by: boolean2(),
|
|
7110
|
+
git_env_prefix: GitEnvPrefixSchema
|
|
7106
7111
|
};
|
|
7107
7112
|
var OmoGitMasterSettingsLayerSchema = object(OmoGitMasterSettingsShape).partial().strict();
|
|
7108
7113
|
var OmoGitMasterSettingsSchema = OmoGitMasterSettingsLayerSchema.extend({
|
|
7109
7114
|
commit_footer: union([boolean2(), string2()]).default(false),
|
|
7110
|
-
include_co_authored_by: boolean2().default(false)
|
|
7115
|
+
include_co_authored_by: boolean2().default(false),
|
|
7116
|
+
git_env_prefix: GitEnvPrefixSchema.default("GIT_MASTER=1")
|
|
7111
7117
|
}).strict();
|
|
7112
7118
|
|
|
7113
7119
|
// ../../omo-config-core/src/schema/harness.ts
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
"command": "node \"${PLUGIN_ROOT}/components/bootstrap/dist/cli.js\" hook session-start",
|
|
9
9
|
"commandWindows": "powershell -NoProfile -ExecutionPolicy Bypass -File \"${PLUGIN_ROOT}\\components\\bootstrap\\scripts\\bootstrap.ps1\"",
|
|
10
10
|
"timeout": 30,
|
|
11
|
-
"statusMessage": "(OmO 5.1.
|
|
11
|
+
"statusMessage": "(OmO 5.1.40) Checking Bootstrap Provisioning"
|
|
12
12
|
}
|
|
13
13
|
]
|
|
14
14
|
}
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
"type": "command",
|
|
9
9
|
"command": "node \"${PLUGIN_ROOT}/dist/cli.js\" hook pre-tool-use",
|
|
10
10
|
"timeout": 5,
|
|
11
|
-
"statusMessage": "(OmO 5.1.
|
|
11
|
+
"statusMessage": "(OmO 5.1.40) Recommending Git Bash MCP"
|
|
12
12
|
}
|
|
13
13
|
]
|
|
14
14
|
}
|
|
@@ -20,7 +20,7 @@
|
|
|
20
20
|
"type": "command",
|
|
21
21
|
"command": "node \"${PLUGIN_ROOT}/dist/cli.js\" hook post-compact",
|
|
22
22
|
"timeout": 5,
|
|
23
|
-
"statusMessage": "(OmO 5.1.
|
|
23
|
+
"statusMessage": "(OmO 5.1.40) Resetting Git Bash MCP Reminder"
|
|
24
24
|
}
|
|
25
25
|
]
|
|
26
26
|
}
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
"type": "command",
|
|
9
9
|
"command": "node \"${PLUGIN_ROOT}/components/lazycodex-executor-verify/dist/cli.js\" hook subagent-stop",
|
|
10
10
|
"timeout": 10,
|
|
11
|
-
"statusMessage": "(OmO 5.1.
|
|
11
|
+
"statusMessage": "(OmO 5.1.40) Verifying LazyCodex Executor Evidence"
|
|
12
12
|
}
|
|
13
13
|
]
|
|
14
14
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"schemaVersion": 1,
|
|
3
|
-
"version": "5.1.
|
|
4
|
-
"inputDigest": "sha256:
|
|
3
|
+
"version": "5.1.40",
|
|
4
|
+
"inputDigest": "sha256:eaaf8bb00a532c1ad018f45d3d10f940405a9e73197aaea75389780b8a77fcaa",
|
|
5
5
|
"outputs": [
|
|
6
6
|
{
|
|
7
7
|
"path": "cli.d.ts",
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
"type": "command",
|
|
9
9
|
"command": "node \"${PLUGIN_ROOT}/dist/cli.js\" hook post-tool-use",
|
|
10
10
|
"timeout": 60,
|
|
11
|
-
"statusMessage": "(OmO 5.1.
|
|
11
|
+
"statusMessage": "(OmO 5.1.40) Checking LSP Diagnostics"
|
|
12
12
|
}
|
|
13
13
|
]
|
|
14
14
|
}
|
|
@@ -21,7 +21,7 @@
|
|
|
21
21
|
"type": "command",
|
|
22
22
|
"command": "node \"${PLUGIN_ROOT}/dist/cli.js\" hook post-compact",
|
|
23
23
|
"timeout": 5,
|
|
24
|
-
"statusMessage": "(OmO 5.1.
|
|
24
|
+
"statusMessage": "(OmO 5.1.40) Resetting LSP Diagnostics Cache"
|
|
25
25
|
}
|
|
26
26
|
]
|
|
27
27
|
}
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
"type": "command",
|
|
8
8
|
"command": "node \"${PLUGIN_ROOT}/dist/cli.js\" hook session-start",
|
|
9
9
|
"timeout": 10,
|
|
10
|
-
"statusMessage": "(OmO 5.1.
|
|
10
|
+
"statusMessage": "(OmO 5.1.40) Loading Project Rules"
|
|
11
11
|
}
|
|
12
12
|
]
|
|
13
13
|
}
|
|
@@ -19,7 +19,7 @@
|
|
|
19
19
|
"type": "command",
|
|
20
20
|
"command": "node \"${PLUGIN_ROOT}/dist/cli.js\" hook user-prompt-submit",
|
|
21
21
|
"timeout": 10,
|
|
22
|
-
"statusMessage": "(OmO 5.1.
|
|
22
|
+
"statusMessage": "(OmO 5.1.40) Loading Project Rules"
|
|
23
23
|
}
|
|
24
24
|
]
|
|
25
25
|
}
|
|
@@ -32,7 +32,7 @@
|
|
|
32
32
|
"type": "command",
|
|
33
33
|
"command": "node \"${PLUGIN_ROOT}/dist/cli.js\" hook post-tool-use",
|
|
34
34
|
"timeout": 10,
|
|
35
|
-
"statusMessage": "(OmO 5.1.
|
|
35
|
+
"statusMessage": "(OmO 5.1.40) Matching Project Rules"
|
|
36
36
|
}
|
|
37
37
|
]
|
|
38
38
|
}
|
|
@@ -45,7 +45,7 @@
|
|
|
45
45
|
"type": "command",
|
|
46
46
|
"command": "node \"${PLUGIN_ROOT}/dist/cli.js\" hook post-compact",
|
|
47
47
|
"timeout": 10,
|
|
48
|
-
"statusMessage": "(OmO 5.1.
|
|
48
|
+
"statusMessage": "(OmO 5.1.40) Resetting Project Rule Cache"
|
|
49
49
|
}
|
|
50
50
|
]
|
|
51
51
|
}
|
|
@@ -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/
|
|
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
|
-
|
|
9498
|
-
|
|
9499
|
-
|
|
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 =
|
|
9738
|
+
const client = createTelemetryClient2(options.transportFactory === undefined ? clientInput : {
|
|
9733
9739
|
...clientInput,
|
|
9734
9740
|
transportFactory: options.transportFactory
|
|
9735
9741
|
});
|