@coreify/quitx 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +37 -0
- package/LICENSE +21 -0
- package/README.md +63 -0
- package/dist/cli.js +1366 -0
- package/package.json +79 -0
package/CHANGELOG.md
ADDED
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
# Changelog
|
|
2
|
+
|
|
3
|
+
All notable changes to this project will be documented in this file.
|
|
4
|
+
|
|
5
|
+
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
|
6
|
+
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
7
|
+
|
|
8
|
+
## 1.0.0
|
|
9
|
+
|
|
10
|
+
### Added
|
|
11
|
+
|
|
12
|
+
- Comma-separated application argument targeting (`quitx Slack,Discord`).
|
|
13
|
+
- Strict argument validation preventing ambiguous space-separated multi-app input.
|
|
14
|
+
- Case-insensitive target app and exclusion resolution.
|
|
15
|
+
- Interactive configuration manager (`quitx config`, `--config`) managing quit mode, Finder inclusion, and background scanning.
|
|
16
|
+
- Interactive exclusion management (`quitx exclude`) with add, remove, and view options.
|
|
17
|
+
- Background process scanning support (`-b`, `--background`).
|
|
18
|
+
- Dynamic application process name resolution.
|
|
19
|
+
|
|
20
|
+
### Changed
|
|
21
|
+
|
|
22
|
+
- Streamlined and compacted documentation and CLI usage instructions.
|
|
23
|
+
- Added comprehensive unit and E2E test coverage across all commands and edge cases.
|
|
24
|
+
|
|
25
|
+
## 0.1.0
|
|
26
|
+
|
|
27
|
+
### Added
|
|
28
|
+
|
|
29
|
+
- Interactive macOS GUI application selector with Clack TUI.
|
|
30
|
+
- Graceful application quit using `NSRunningApplication` / JXA (⌘Q behavior).
|
|
31
|
+
- Direct app quitting via `--all` (`-a`) and non-interactive `--yes` (`-y`).
|
|
32
|
+
- Running GUI applications listing with `--list` (`-l`) and `--json`.
|
|
33
|
+
- Fallback force termination (`--force` / `-f`) for non-responsive applications.
|
|
34
|
+
- Automatic terminal emulator exclusion to avoid closing current session.
|
|
35
|
+
- Exclude Finder by default with `--include-finder` override.
|
|
36
|
+
- Custom exclusion via `--exclude <app>`.
|
|
37
|
+
- Immediate validation rejecting non-macOS platforms.
|
package/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 Coreify
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
package/README.md
ADDED
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
# quitx
|
|
2
|
+
|
|
3
|
+
> ⌘Q, but from your terminal.
|
|
4
|
+
|
|
5
|
+
A macOS CLI for viewing running GUI applications and quitting them properly.
|
|
6
|
+
|
|
7
|
+
[](https://www.npmjs.com/package/@coreify/quitx)
|
|
8
|
+
[](LICENSE)
|
|
9
|
+
[](https://apple.com/macos)
|
|
10
|
+
|
|
11
|
+
## Install
|
|
12
|
+
|
|
13
|
+
```bash
|
|
14
|
+
npm install -g @coreify/quitx
|
|
15
|
+
# or run directly
|
|
16
|
+
npx @coreify/quitx
|
|
17
|
+
```
|
|
18
|
+
|
|
19
|
+
## Usage
|
|
20
|
+
|
|
21
|
+
```bash
|
|
22
|
+
quitx # Interactive multi-select menu
|
|
23
|
+
quitx Slack,Discord # Quit specific apps directly
|
|
24
|
+
quitx -a [-y] # Quit all running apps (-y skips confirm)
|
|
25
|
+
quitx -l [--json] # List running GUI apps
|
|
26
|
+
quitx -f # Force quit (SIGKILL) if graceful exit fails
|
|
27
|
+
quitx config # Interactive configuration manager
|
|
28
|
+
quitx exclude [apps...] # View, add, or remove excluded apps
|
|
29
|
+
quitx --exclude Spotify # Add apps to persistent exclude list
|
|
30
|
+
```
|
|
31
|
+
|
|
32
|
+
## Options
|
|
33
|
+
|
|
34
|
+
| Option | Description |
|
|
35
|
+
| ------------------ | --------------------------------------------- |
|
|
36
|
+
| `<apps>` | Quit specific applications (comma-separated) |
|
|
37
|
+
| `-a, --all` | Quit all running GUI apps |
|
|
38
|
+
| `-y, --yes` | Skip confirmation prompts (auto-confirm) |
|
|
39
|
+
| `-l, --list` | List running GUI apps and exit |
|
|
40
|
+
| `-f, --force` | Force quit (`SIGKILL`) if graceful quit fails |
|
|
41
|
+
| `-b, --background` | Include background processes in app list |
|
|
42
|
+
| `--include-finder` | Include Finder in app list |
|
|
43
|
+
| `--exclude <apps>` | Comma-separated apps to add to exclude list |
|
|
44
|
+
| `--config` | Open interactive config manager |
|
|
45
|
+
| `--json` | Output data in JSON format |
|
|
46
|
+
| `-h, --help` | Show help information |
|
|
47
|
+
| `-v, --version` | Show version number |
|
|
48
|
+
|
|
49
|
+
## Commands
|
|
50
|
+
|
|
51
|
+
| Command | Description |
|
|
52
|
+
| ------------------- | ------------------------------------------------------ |
|
|
53
|
+
| `config` | Open interactive configuration manager |
|
|
54
|
+
| `exclude [apps...]` | Manage excluded applications interactively or add apps |
|
|
55
|
+
|
|
56
|
+
## Requirements
|
|
57
|
+
|
|
58
|
+
- macOS
|
|
59
|
+
- Node.js 20+
|
|
60
|
+
|
|
61
|
+
## License
|
|
62
|
+
|
|
63
|
+
[MIT](LICENSE) © [Coreify](https://github.com/coreify)
|