'use strict'; var crypto = require('crypto'); var os = require('os'); var posthogNode = require('posthog-node'); function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; } var os__default = /*#__PURE__*/_interopDefault(os); // src/telemetry/posthog.ts var POSTHOG_API_KEY = "phc_SBLpZVAB6jmHOct9CABq3PF0Yn5FU3G2FgT4xUr2XrT"; var POSTHOG_HOST = "https://us.posthog.com"; var TRUTHY_DISABLED_VALUES = /* @__PURE__ */ new Set(["1", "true", "yes"]); var client = null; function isEETelemetryEnabled() { const value = process.env["MASTRA_TELEMETRY_DISABLED"]; if (!value) { return true; } return !TRUTHY_DISABLED_VALUES.has(value.trim().toLowerCase()); } function hashTelemetryValue(value) { return crypto.createHash("sha256").update(value).digest("hex"); } function getHashedHostname() { return hashTelemetryValue(os__default.default.hostname() || "unknown-host").slice(0, 16); } function getEETelemetryFallbackDistinctId() { return `mastra-${getHashedHostname()}`; } function getClient() { if (!isEETelemetryEnabled()) { return null; } if (!client) { client = new posthogNode.PostHog(POSTHOG_API_KEY, { host: POSTHOG_HOST, flushAt: 1, flushInterval: 0, disableGeoip: false }); } return client; } function getSystemProperties() { return { os: process.platform, os_version: os__default.default.release(), node_version: process.version, platform: process.arch, machine_id: getHashedHostname(), mastra_version: process.env["npm_package_version"] || "unknown" }; } function captureTelemetryEvent(event, distinctId, properties) { try { const posthog = getClient(); if (!posthog) { return; } posthog.capture({ distinctId: distinctId || getEETelemetryFallbackDistinctId(), event, properties: { ...getSystemProperties(), ...properties } }); } catch { } } function captureEEEvent(event, distinctId, properties) { captureTelemetryEvent(event, distinctId, properties); } exports.captureEEEvent = captureEEEvent; exports.captureTelemetryEvent = captureTelemetryEvent; exports.getEETelemetryFallbackDistinctId = getEETelemetryFallbackDistinctId; exports.hashTelemetryValue = hashTelemetryValue; exports.isEETelemetryEnabled = isEETelemetryEnabled; //# sourceMappingURL=chunk-OEW7GS6U.cjs.map //# sourceMappingURL=chunk-OEW7GS6U.cjs.map