https://github.com/involvex/ghost-env
A secure TUI (Terminal User Interface) for managing environment secrets. Safely add, list, and delete environment variables without them ever appearing in shell history.
https://github.com/involvex/ghost-env
bun env environment-variables ink tui typescript
Last synced: 14 days ago
JSON representation
A secure TUI (Terminal User Interface) for managing environment secrets. Safely add, list, and delete environment variables without them ever appearing in shell history.
- Host: GitHub
- URL: https://github.com/involvex/ghost-env
- Owner: involvex
- Created: 2026-04-11T00:27:56.000Z (2 months ago)
- Default Branch: main
- Last Pushed: 2026-04-11T23:12:33.000Z (2 months ago)
- Last Synced: 2026-05-02T19:41:43.408Z (about 1 month ago)
- Topics: bun, env, environment-variables, ink, tui, typescript
- Language: TypeScript
- Homepage:
- Size: 136 KB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: readme.md
- Changelog: CHANGELOG.md
- Funding: .github/FUNDING.yml
- Agents: Agents.md
Awesome Lists containing this project
README
# Ghost-Env
A secure TUI (Terminal User Interface) for managing environment secrets. Safely add, list, and delete environment variables without them ever appearing in shell history.
## Features
- **Interactive TUI** - No command-line arguments needed for secrets
- **Masked Inputs** - Values are hidden during typing (asterisks), toggle visibility with 's' key
- **Secure Storage** - Secrets stored in `.env` file in current directory
- **Zod Validation** - Ensures proper .env format
- **No History Leakage** - Secrets never appear in shell history (`bash_history`, `ps aux`, etc.)
## Install
```bash
npm install --global @involvex/Ghost-Env
```
Or install from source:
```bash
bun install
bun run build
npm install --global .
```
## Usage
Run the interactive CLI:
```bash
Ghost-Env
```
Navigate the menu:
- Select **Secrets** to manage environment variables
- **Add Secret** - Enter key name and masked value
- **List Secrets** - View all stored keys (values hidden)
- **Delete Secret** - Remove a key with confirmation
### CLI Options
```bash
Ghost-Env --help # Show help
Ghost-Env --version # Show version
Ghost-Env --about # Show about
```
## Commands
| Command | Description |
| ---------- | ----------------------------- |
| `Secrets` | Enter secrets management menu |
| `Demo` | View component demos |
| `Help` | Show help information |
| `Settings` | Configure settings |
| `About` | About Ghost-Env |
| `Version` | Show version |
## Security
- Secrets are typed interactively in the TUI - never passed as CLI arguments
- Input is masked with asterisks by default, toggle with 's' key
- No data written to shell history
- File permissions should be set to `0600` on Unix systems:
```bash
chmod 600 .env
```
## Development
```bash
# Run in development with hot reload
bun run dev
# Run directly
bun run start
# Build for production
bun run build
# Run checks (format, lint, typecheck)
bun run prebuild
```
## Funding
Support this project:
- GitHub Sponsors: [@involvex](https://github.com/sponsors/involvex)
- Buy Me a Coffee: [buymeacoffee.com/involvex](https://buymeacoffee.com/involvex)
- PayPal: [paypal.me/involvex](https://paypal.me/involvex)
## License
MIT