aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.changeset/cold-jokes-buy.md7
-rw-r--r--packages/telemetry/src/system-info.ts6
2 files changed, 10 insertions, 3 deletions
diff --git a/.changeset/cold-jokes-buy.md b/.changeset/cold-jokes-buy.md
new file mode 100644
index 000000000..7aaa96cfd
--- /dev/null
+++ b/.changeset/cold-jokes-buy.md
@@ -0,0 +1,7 @@
+---
+"@astrojs/telemetry": patch
+---
+
+Track if the Astro CLI is running in a [`TTY`](nodejs.org/api/process.html#a-note-on-process-io) context.
+
+This information helps us better understand scripted use of Astro vs. direct terminal use of Astro CLI by a user, especially the `astro dev` command.
diff --git a/packages/telemetry/src/system-info.ts b/packages/telemetry/src/system-info.ts
index 08375de7b..0953736d7 100644
--- a/packages/telemetry/src/system-info.ts
+++ b/packages/telemetry/src/system-info.ts
@@ -39,6 +39,7 @@ export type SystemInfo = {
cpuSpeed: number | null;
memoryInMb: number;
isDocker: boolean;
+ isTTY: boolean;
isWSL: boolean;
isCI: boolean;
ciName: string | null;
@@ -53,7 +54,7 @@ export function getSystemInfo(versions: { viteVersion: string; astroVersion: str
const cpus = os.cpus() || [];
- meta = {
+ return {
// Version information
nodeVersion: process.version.replace(/^v?/, ''),
viteVersion: versions.viteVersion,
@@ -69,10 +70,9 @@ export function getSystemInfo(versions: { viteVersion: string; astroVersion: str
memoryInMb: Math.trunc(os.totalmem() / Math.pow(1024, 2)),
// Environment information
isDocker: isDocker(),
+ isTTY: process.stdout.isTTY,
isWSL,
isCI,
ciName,
};
-
- return meta;
}