huntr-cli 1.0.9 → 1.2.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/README.md +34 -1
- package/build.mjs +21 -0
- package/dist/cli.js +1576 -442
- package/dist/cli.js.map +7 -1
- package/docs/DEV-SETUP.md +4 -3
- package/package.json +3 -2
- package/src/api/client.ts +6 -3
- package/src/api/personal/activities.ts +2 -0
- package/src/api/personal/boards.ts +8 -1
- package/src/api/personal/user.ts +2 -1
- package/src/cli.ts +393 -108
- package/src/config/clerk-session-manager.ts +3 -1
- package/src/config/config-manager.ts +17 -0
- package/src/config/token-capture.ts +13 -8
- package/tests/api-endpoints.test.ts +32 -0
- package/tests/example.test.ts +8 -0
- package/dist/api/client.d.ts +0 -14
- package/dist/api/client.d.ts.map +0 -1
- package/dist/api/client.js +0 -74
- package/dist/api/client.js.map +0 -1
- package/dist/api/personal/activities.d.ts +0 -20
- package/dist/api/personal/activities.d.ts.map +0 -1
- package/dist/api/personal/activities.js +0 -50
- package/dist/api/personal/activities.js.map +0 -1
- package/dist/api/personal/boards.d.ts +0 -9
- package/dist/api/personal/boards.d.ts.map +0 -1
- package/dist/api/personal/boards.js +0 -16
- package/dist/api/personal/boards.js.map +0 -1
- package/dist/api/personal/index.d.ts +0 -17
- package/dist/api/personal/index.d.ts.map +0 -1
- package/dist/api/personal/index.js +0 -37
- package/dist/api/personal/index.js.map +0 -1
- package/dist/api/personal/jobs.d.ts +0 -13
- package/dist/api/personal/jobs.d.ts.map +0 -1
- package/dist/api/personal/jobs.js +0 -31
- package/dist/api/personal/jobs.js.map +0 -1
- package/dist/api/personal/user.d.ts +0 -8
- package/dist/api/personal/user.d.ts.map +0 -1
- package/dist/api/personal/user.js +0 -13
- package/dist/api/personal/user.js.map +0 -1
- package/dist/cli.d.ts +0 -3
- package/dist/cli.d.ts.map +0 -1
- package/dist/commands/capture-session.d.ts +0 -10
- package/dist/commands/capture-session.d.ts.map +0 -1
- package/dist/commands/capture-session.js +0 -478
- package/dist/commands/capture-session.js.map +0 -1
- package/dist/config/clerk-session-manager.d.ts +0 -44
- package/dist/config/clerk-session-manager.d.ts.map +0 -1
- package/dist/config/clerk-session-manager.js +0 -232
- package/dist/config/clerk-session-manager.js.map +0 -1
- package/dist/config/config-manager.d.ts +0 -15
- package/dist/config/config-manager.d.ts.map +0 -1
- package/dist/config/config-manager.js +0 -51
- package/dist/config/config-manager.js.map +0 -1
- package/dist/config/keychain-manager.d.ts +0 -6
- package/dist/config/keychain-manager.d.ts.map +0 -1
- package/dist/config/keychain-manager.js +0 -37
- package/dist/config/keychain-manager.js.map +0 -1
- package/dist/config/token-capture.d.ts +0 -11
- package/dist/config/token-capture.d.ts.map +0 -1
- package/dist/config/token-capture.js +0 -252
- package/dist/config/token-capture.js.map +0 -1
- package/dist/config/token-manager.d.ts +0 -38
- package/dist/config/token-manager.d.ts.map +0 -1
- package/dist/config/token-manager.js +0 -153
- package/dist/config/token-manager.js.map +0 -1
- package/dist/lib/list-options.d.ts +0 -69
- package/dist/lib/list-options.d.ts.map +0 -1
- package/dist/lib/list-options.js +0 -299
- package/dist/lib/list-options.js.map +0 -1
- package/dist/types/personal.d.ts +0 -113
- package/dist/types/personal.d.ts.map +0 -1
- package/dist/types/personal.js +0 -4
- package/dist/types/personal.js.map +0 -1
package/README.md
CHANGED
|
@@ -14,6 +14,7 @@ A command-line interface for managing your Huntr job search board. Track activit
|
|
|
14
14
|
- 🎯 **Your board only** — Personal user API (not organization-scoped)
|
|
15
15
|
- 🔒 **Secure storage** — Session data stored in macOS Keychain
|
|
16
16
|
- ⚡ **Fast** — No copy-paste token juggling, session persists for weeks
|
|
17
|
+
- 🐚 **Shell completions** — Tab completion for bash, zsh, and fish
|
|
17
18
|
|
|
18
19
|
## Installation
|
|
19
20
|
|
|
@@ -116,7 +117,17 @@ Then use the CLI:
|
|
|
116
117
|
huntr activities list <board-id>
|
|
117
118
|
```
|
|
118
119
|
|
|
119
|
-
|
|
120
|
+
By default, the CLI does NOT auto-load `.env` to avoid noisy logs. To load it, prefix commands with `HUNTR_LOAD_ENV=true`.
|
|
121
|
+
|
|
122
|
+
Examples:
|
|
123
|
+
|
|
124
|
+
```bash
|
|
125
|
+
HUNTR_LOAD_ENV=true huntr activities list <board-id>
|
|
126
|
+
# or in dev:
|
|
127
|
+
HUNTR_LOAD_ENV=true npm run dev -- boards list
|
|
128
|
+
```
|
|
129
|
+
|
|
130
|
+
**Note:** Keep `.env` out of version control (it's already in `.gitignore`).
|
|
120
131
|
|
|
121
132
|
To get your token, log into Huntr and run in your browser DevTools console:
|
|
122
133
|
|
|
@@ -232,6 +243,28 @@ Export last 7 days as CSV:
|
|
|
232
243
|
huntr activities week-csv <board-id> > activities.csv
|
|
233
244
|
```
|
|
234
245
|
|
|
246
|
+
### Shell Completions
|
|
247
|
+
|
|
248
|
+
Generate and install tab completion for your shell:
|
|
249
|
+
|
|
250
|
+
```bash
|
|
251
|
+
# bash — add to ~/.bash_completion or source from ~/.bashrc
|
|
252
|
+
huntr completions bash >> ~/.bash_completion
|
|
253
|
+
source ~/.bash_completion
|
|
254
|
+
|
|
255
|
+
# zsh — save to a completions directory in your fpath
|
|
256
|
+
mkdir -p ~/.zsh/completions
|
|
257
|
+
huntr completions zsh > ~/.zsh/completions/_huntr
|
|
258
|
+
# Add to ~/.zshrc if not already present:
|
|
259
|
+
# fpath=(~/.zsh/completions $fpath)
|
|
260
|
+
# autoload -Uz compinit && compinit
|
|
261
|
+
|
|
262
|
+
# fish
|
|
263
|
+
huntr completions fish > ~/.config/fish/completions/huntr.fish
|
|
264
|
+
```
|
|
265
|
+
|
|
266
|
+
Once installed, tab-completing `huntr <tab>` will show all subcommands, and `huntr config <tab>`, `huntr boards <tab>`, etc. will show their respective subcommands.
|
|
267
|
+
|
|
235
268
|
### Global Options
|
|
236
269
|
|
|
237
270
|
- `-t, --token <token>` — Specify API token (overrides all other sources)
|
package/build.mjs
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
import { build } from 'esbuild';
|
|
3
|
+
import { rmSync } from 'fs';
|
|
4
|
+
|
|
5
|
+
// Clean dist directory
|
|
6
|
+
rmSync('dist', { recursive: true, force: true });
|
|
7
|
+
|
|
8
|
+
// Build CLI with esbuild
|
|
9
|
+
await build({
|
|
10
|
+
entryPoints: ['src/cli.ts'],
|
|
11
|
+
bundle: true,
|
|
12
|
+
platform: 'node',
|
|
13
|
+
target: 'node18',
|
|
14
|
+
format: 'esm',
|
|
15
|
+
outfile: 'dist/cli.js',
|
|
16
|
+
packages: 'external', // Don't bundle node_modules
|
|
17
|
+
sourcemap: true,
|
|
18
|
+
minify: false,
|
|
19
|
+
}).catch(() => process.exit(1));
|
|
20
|
+
|
|
21
|
+
console.log('✓ Build complete');
|