A terminal app for Windows that keeps every project you have in one list, and lets you commit, branch, resolve conflicts, repair broken repositories and answer GitHub issues and pull requests without opening anything else.
For the best experience, please use Windows Terminal. (not cmd.exe or powershell.exe)
- Quick start
- Features
- Projects list
- Git features
- Diagnostics
- Managing GitHub repository
- Everything else
- Languages support
- Build it yourself
- How it works
- Credits
- License
Download the installer from the latest release and run it:
Helyx-1.2.1-setup.exe
It installs into your user folder and adds Helyx to PATH, so you can start it from Windows Terminal:
helyx
No administrator rights are needed.
Then pick Add project and choose any folder on your machine Helyx finds the Git repository inside the folder by itself, if there is one.
- All your projects in one list, with a name, status and custom badges.
- Git workflow in one window: stage, commit, undo and redo commits, view and scroll through diffs, check history,
- manage branches and stashes, and push, pull and fetch from your remote.
- Repository diagnostics, which can find leftover lock files, unfinished rebases, detached HEADs, committed build files and files that are too large for GitHub, and help you fix them.
- A built-in conflict resolver, that opens the conflicted part of a file in its own editor instead of making you use Windows notepad.
- GitHub issues and pull requests can be read, filtered, commented on and reviewed directly from the terminal.
- Status and badge shields in your README, automatically updated, committed and pushed when the project status changes.
- Encrypted notes, project backups and scripts, all stored together with the project they belong to.
Every time you add a project, Helyx asks you to give it a name. It then automatically assigns a default status, which you can change later.
When you open a project, you can immediately see a header with your project information, such as name, current status, last modified date and detected languages.
Status marks your files based on what happened to them. Helyx can detect many statuses, such as staged, modified, untracked and conflicted.
Helyx has simple interface. Files on the left, the diff on the right.
The log is a table. Select any commit you want to check and press Enter to see its details, including the author, date, branches and every file it touched.
When you commit something you did not mean to, you can always undo it. When undoing, Helyx asks you what should happen to the changes the commit carried. You can select from three options, soft reset, mixed reset or hard reset.
Redo puts the commit back.
Push, pull, fetch and Sync all communicate with GitHub. Push pushes your commit to the remote, pull pulls the commit from the remote, fetch fetches changes from the remote and Sync automatically checks if your local branch needs to push or pull and if there is a divergence, it will prompt you which one you want to keep.
Helyx allows you to create, switch, merge and delete branches. Save a stash, look inside it before you apply it, pop it.
Diagnostics scans your repository and tells you what is wrong.
For instance, a leftover index.lock from a process that crashed, a rebase nobody ever finished,
a detached HEAD, build output somebody committed two years ago, a file too large for GitHub to accept,
or a branch that tracks nothing.
Then it offers you options to fix each problem it found.
When a merge leaves you with conflict markers, Helyx opens the conflicted part of the file in its own editor where you can delete the part you do not want to keep.
Helyx signs in via GitHub OAuth. Helyx has a predefined set of permissions and it only requests the permissions that it needs, no extra permissions for your account that it does not use.
A browsable list with filters you can invert. Open an issue and you will see the same information as in GitHub, so you are not losing anything and only getting the cool TUI style interface.
The same list, plus a detail screen with the state, the branches, how many files changed, whether it is mergeable, and every review left on it.
Stars, forks, the language breakdown and the activity calendar. The wiki opens from the same menu.
Every workflow run your repository has had is color coded by how it ended, with the branch, the commit and who started it.
Open one and you get its jobs, and under each job every step it went through.
Helyx pulls the log archive down, unpacks it and shows it right there, with anything that looks like an error marked out in red.
You can also start a workflow on any branch, rerun a finished one, rerun only the jobs that failed, or cancel one that is still going.
Set a status in Helyx and it becomes a shield in your README.
Change the status later and the shield on GitHub changes with it. The same works for badges.
Analyze Project reads the whole tree and shows the language breakdown and the biggest files.
Every project gets a notes file with an editor. Turn encryption on in Settings and Helyx encrypts them with Windows DPAPI, so they can only be read by you.
Turn encryption on in Settings and Helyx converts every note you already wrote. Turn it off and it converts them back to normal text.
Backups zip a whole project, or skip everything your .gitignore already ignores.
You can restore your backup later, if something goes wrong with your project or if you just feel like it.
Scripts let you write the actions you always do for a project all the time and you do not want to keep doing them again and again.
Scripts have a lot of actions to select from and with them you can build a script, that will exactly do what you need it to do. Each action is called a block and each one has its own color.
The output of anything you execute comes back into Helyx.
Helyx supports thirteen editors from VS Code and Visual Studio to Neovim, Emacs and the JetBrains editors. That means you can directly open any of these editors from your Helyx project, and the selected editor will open the project folder.
Helyx allows you to create your own statuses and badges, with your own names and your own colors.
Settings also hold your editor paths, which identity Helyx commits under, whether notes are encrypted, and a check for new versions of Helyx itself.
- English
- French (Français)
- German (Deutsch)
- Italian (Italiano)
- Portuguese (Português)
- Russian (Русский)
- Slovak (Slovenčina)
- Spanish (Español)
Helyx is translated into eight languages. This improves the user experience because Helyx is made for everyone.
You need Windows and .NET 10. Nothing else.
git clone https://github.com/lixtheyt/Helyx.git
cd Helyx
dotnet build Helyx.slnx -c ReleaseThe executable is exported to Helyx/bin/Release/net10.0-windows.
If you want the same single file the download button above gives you, publish it instead:
dotnet publish Helyx/Helyx.csproj -p:PublishProfile=SingleFileLibGit2Sharp is the brain, not a feature. Helyx talks to repositories through
LibGit2Sharp instead of running git and reading what
comes back. Parsing the output of git is fragile and makes no sense. Everything in Helyx that talks
to Git is done through LibGit2Sharp.
Spectre.Console is the heart, not a helper library. Spectre.Console draws every table, panel and prompt. Every screen that Helyx has is rendered by Spectre.Console. The pretty design that Helyx has couldn't have been done without Spectre.Console and their developers who keep Spectre.Console updated.
One file holds everything, and it is treated as if it will be corrupted.
If %AppData%\Helyx\config.json becomes unreadable, Helyx will repair it as soon as possible.
Settings are stored by name rather than by index.
Secrets will always stay secret. Your GitHub token and your encrypted notes go through Windows DPAPI. A configuration copied to another machine cannot be decrypted there, so the notes screen refuses to open rather than showing you a wall of base64 that you might then save over the note it was hiding.
Helyx exists because of Spectre.Console, Helyx's heart. The whole interface runs on it and it can genuinely do anything you ask of it.
And LibGit2Sharp, Helyx's brain, which is what lets Helyx talk to Git properly, instead of running the git command and trying to parse whatever it prints.
Markdig parses the Markdown that GitHub hands back before Helyx turns it into something a console can draw, and TextCopy puts the device code into your clipboard.
The credits window is drawn with a figlet font created by xero.
Helyx is MIT. See LICENSE.
Licenses of used libraries:
| Package | License |
|---|---|
| Spectre.Console | MIT |
| LibGit2Sharp | MIT |
| LibGit2Sharp.NativeBinaries | GPLv2 with a linking exception libgit2 |
| Markdig | BSD-2-Clause |
| TextCopy | MIT |
































