# microsoft/node-pty

Fork pseudoterminals in Node.JS

Repository: https://github.com/microsoft/node-pty
Canonical: https://ross.abutalabs.com/products/node-pty
Language: TypeScript
License: NOASSERTION
License Family: other
Topics: terminal, pty, pseudoterminal, forkpty, winpty, openpty, conpty
Last push: 2026-08-25T16:49:54+00:00

## Health v2 (maintenance only)
Score: 75/100 (v2, computed 2026-09-03T02:20:16.233290+00:00)
- activity 99, release rhythm 30, longevity 100
- inputs: {"age_days": 3757, "days_push": 8, "days_rel": 254, "gap_med": null, "n_releases_24m": 1}
- flags: no_license
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 2017, forks 333 (observed 2026-08-28T04:06:06.127448+00:00)

## What it is
node-pty provides forkpty(3) bindings for Node.js, allowing you to spawn processes with pseudoterminal file descriptors and interact with them via reads and writes. It supports Linux, macOS, and Windows (via the conpty API), and powers terminal emulators like VS Code and Hyper.

## Use cases
- build a terminal emulator in Node.js with xterm.js
- make CLI programs think they are running in a real terminal
- capture control sequences from interactive programs
- embed an interactive shell inside an Electron app
- run and resize pseudo-terminal processes programmatically
- build a browser-based terminal over HTTP

## When to choose
- you need real PTY behavior (control sequences, TTY detection) in a Node.js app
- you are building a terminal emulator, IDE terminal panel, or SSH-in-browser tool
- you need cross-platform PTY support including Windows conpty

## When to avoid
- you only need to run child processes without TTY semantics (use child_process)
- your app is not Node.js/JavaScript based
- you need to support Windows versions older than 10 1809

## Facets
- artifact type: library
- maturity: stable
- function: cli, developer-tools
- domain: developer-tools
- platform: windows, cross-platform
- tags: pty, pseudoterminal, forkpty, conpty, terminal-emulator, process-spawning, command-line, terminal-emulation, nodejs, linux, macos

## Member repositories
- microsoft/node-pty (main) score 75

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:06:06.127448+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-30T03:00:41.114201+00:00, confidence not recorded.
  - readme: https://github.com/microsoft/node-pty (fetched 2026-08-28T04:06:06.127448+00:00, sha 1dd89b5cbb54)
- Data as of 2026-08-30T08:39:29.467469+00:00.
