ptyprocess
Run a subprocess in a pseudo terminal
Install
ptyprocess on PyPI
pip
pip install ptyprocessuv
uv add ptyprocesspoetry
poetry add ptyprocessPackage facts
| License | not declared (permissive) |
| Python support | not specified |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | none |
| Maintenance | aging — 2,054 days since the last release |
| Last repo commit | |
| First released | |
| Popularity | one of the top 1,000 most-downloaded packages on PyPI (30-day window, as of 2026-08-13) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-13) |
Evidence: ptyprocess-0.7.0-py2.py3-none-any.whl
About ptyprocess
from the package's own PyPI description — quoted content, verbatim
Launch a subprocess in a pseudo terminal (pty), and interact with both the process and its pty.
Sometimes, piping stdin and stdout is not enough. There might be a password prompt that doesn't read from stdin, output that changes when it's going to a pipe rather than a terminal, or curses-style interfaces that rely on a terminal. If you need to automate these things, running the process in a pseudo terminal (pty) is the answer.
Interface::
p = PtyProcessUnicode.spawn(['python'])
p.read(20)
p.write('6+6\n')
p.read(20)
Read as markdown · JSON record · Source repository · Homepage
AI interpretation — verify before relying
AI-generated interpretation of the package facts above; every digit, version, license, or vulnerability id it cites is grounded in the facts already shown on this page
Launches a subprocess in a pseudo terminal (pty) and provides read/write interaction with both the process and its terminal, enabling automation of password prompts, terminal-dependent output, and curses-style interfaces.
Low friction: pure Python wheel with no runtime dependencies. Maintenance is aging—last release was 2020-12-28 and repository shows no recent commits, though it remains archived=false and marked Production/Stable.
ISC License (permissive) allows commercial and private use with minimal restrictions, making it suitable for most projects.
Usage
pip install ptyprocess==0.7.0
from ptyprocess import PtyProcessUnicode
p = PtyProcessUnicode.spawn(['python'])
p.write('6+6\n')
output = p.read(20)
Requires a POSIX-compliant operating system (Linux, macOS, BSD); not supported on Windows.
Verdict: ptyprocess is a stable, low-friction library for terminal automation with no dependencies, but its last release was over five years ago. Suitable for production use in established workflows, though users should verify compatibility with their Python version and be aware that maintenance is minimal.
Needs verification
- Whether the package remains compatible with Python 3.10+ given the aging codebase and lack of recent releases.
- Active maintenance status and responsiveness to bug reports or pull requests on the GitHub repository.
Similar packages
permissive · top 1,000 on PyPI
questionarypermissive · top 1,000 on PyPI
markdown-it-pypermissive · top 100 on PyPI
seleniumpermissive · top 1,000 on PyPI
pandocfilterspermissive · top 1,000 on PyPI
invokepermissive · top 1,000 on PyPI
browser-usepermissive · top 1,000 on PyPI
jirapermissive · top 1,000 on PyPI
opentelemetry-semantic-conventions-aipermissive · top 1,000 on PyPI
tqdmcopyleft · top 100 on PyPI