nelhage/reptyr

Reparent a running program to a new terminal

View on GitHub ↗Jump to charts ↓

Summary Information

Updated 13 minutes ago
Added to GitGenius on September 10th, 2026
Created on January 14th, 2011
Open Issues & Pull Requests: 28 (+0)
GitHub issues: Enabled
Number of forks: 230
Total Stargazers: 6,334 (+0)
Total Subscribers: 91 (+0)

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Issue API getrepoissuespagesummary failed: 429 Rate limit exceeded. Please try again later.

Detailed Description

reptyr is a process reparenting tool that moves a running program from one terminal to another.

The tool solves the problem of being unable to detach a long-running process from its original terminal session. When you start a program in a terminal and later want to move it elsewhere—perhaps to a terminal multiplexer, a different window, or a background session—reptyr accomplishes this by manipulating the process's file descriptors and controlling terminal to point to the new destination. This allows programs that were not started with detachment in mind to be rescued and reattached without interruption.

reptyr is useful for developers and system administrators who frequently work with long-running processes and need flexibility in terminal management. It suits situations where a process was started interactively but needs to be moved to a persistent session, or where you want to attach a running program to a terminal multiplexer after the fact. The tool works at the process level, making it applicable to any program regardless of how it was written, though it requires appropriate permissions to manipulate the target process.

The project shows consistent maintenance with regular commits addressing bugs and edge cases. Development activity includes fixes for compatibility issues across different systems and architectures, indicating attention to portability. The maintainer responds to reported issues and incorporates fixes for problems discovered in real-world usage. Updates reflect ongoing refinement of the core reparenting mechanism rather than major feature additions, suggesting a focused approach to a well-defined problem.