@harborppm/cli 0.1.0 → 0.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 CHANGED
@@ -1,13 +1,27 @@
1
1
  # Harbor CLI
2
2
 
3
- [Harbor](https://harborppm.com) from the terminal: what's on you, add and finish tasks, comment, check in, log risks.
3
+ [Harbor](https://harborppm.com) in the terminal: a full-screen app with your whole harbor, and commands for scripts and agents.
4
4
 
5
5
  ```sh
6
- npx @harborppm/cli login # opens your browser once
7
- npx @harborppm/cli mine
6
+ npm install -g @harborppm/cli
7
+ harbor # the full-screen app (signs you in the first time)
8
+ harbor mine # or one command at a time
8
9
  ```
9
10
 
10
- Or install it: `npm install -g @harborppm/cli`, then `harbor mine`. Needs Node 20 or later.
11
+ Needs Node 22 or later.
12
+
13
+ ## The full-screen app
14
+
15
+ `harbor` on its own takes over the terminal, like `htop` or `lazygit`, and gives it back when you press `q`:
16
+
17
+ - **Today**: what's on you, late first; who's waiting on you; your risks and issues.
18
+ - **Projects**: every portfolio, program and project with its health. Enter opens a project's board (columns side by side) or its list (`v`).
19
+ - **A task**: every field changes in place: title, status, owner, due date (`2026-10-14`, `today`, `+3`), priority, project, notes, checklist steps, comments.
20
+ - **Programs, Risks, People**, and **Harbors** (`6`) to switch between the harbors you belong to.
21
+
22
+ Keys: `↑↓` (or `j k`) and `←→` (or `h l`) move, Enter opens, Esc goes back, `/` finds a task by its key or words, `n` adds a task, `[` `]` move a card a column, `x` marks it done, `d` deletes (it asks first), `u` undoes your last change, `?` lists them all.
23
+
24
+ It runs on the same engine as the website: health, task keys, limits and undo work the same way, changes save as you go (the header says when, and holds them while you're offline), and changes anyone makes on the website or elsewhere show up within a couple of seconds. It needs full access, which `harbor login` asks for by name; an older sign-in is asked again the first time.
11
25
 
12
26
  ## Signing in
13
27
 
@@ -38,7 +52,7 @@ Every command takes `--harbor NAME` when you're in more than one, and `--json` f
38
52
 
39
53
  Harbor holds back what it would hold back in the app: finishing a task that still waits on another, or going past a column's limit. The CLI says so and names the flag that goes ahead (`--confirm`, `--over-limit`).
40
54
 
41
- Every change shows in Harbor's History as yours, "via Harbor CLI". Nothing the CLI does deletes anything.
55
+ Every change shows in Harbor's History as yours, "via Harbor CLI". The commands never delete anything; the full-screen app can, as the website can, and asks first.
42
56
 
43
57
  ## Another server
44
58
 
@@ -46,7 +60,7 @@ Every change shows in Harbor's History as yours, "via Harbor CLI". Nothing the C
46
60
 
47
61
  ## Developing
48
62
 
49
- No dependencies. `npm test` runs the CLI's tests against a stand-in Harbor; `e2e/cli.test.mjs` in the repository drives it against a real one.
63
+ The commands are plain Node with no dependencies. The full-screen app is `src/tui` in the repository (React with Ink), bundled into `dist/app.mjs` by `node cli/build.mjs`; Ink and React are its only dependencies. `npm test` runs the CLI's tests against a stand-in Harbor; `e2e/cli.test.mjs` and `e2e/terminal-app.test.mjs` drive it against a real one.
50
64
 
51
65
  ## License
52
66