@pinegrovedev/cli 0.1.0 → 0.1.1
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 +59 -0
- package/dist/index.js +1 -1
- package/package.json +3 -2
package/README.md
ADDED
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
# @pinegrovedev/cli
|
|
2
|
+
|
|
3
|
+
Install and provision the [Pinegrove](https://pinegrove.dev) daemon on any macOS or Linux machine.
|
|
4
|
+
|
|
5
|
+
## Quick Start
|
|
6
|
+
|
|
7
|
+
```bash
|
|
8
|
+
npx @pinegrovedev/cli
|
|
9
|
+
```
|
|
10
|
+
|
|
11
|
+
This runs the full interactive setup:
|
|
12
|
+
|
|
13
|
+
1. Downloads and installs the latest daemon binary
|
|
14
|
+
2. Registers a system service (launchd on macOS, systemd on Linux)
|
|
15
|
+
3. Installs prerequisites (Nix, Devbox, bubblewrap)
|
|
16
|
+
4. Authenticates and connects the device to your team's mesh
|
|
17
|
+
|
|
18
|
+
## Commands
|
|
19
|
+
|
|
20
|
+
### `setup` (default)
|
|
21
|
+
|
|
22
|
+
```bash
|
|
23
|
+
npx @pinegrovedev/cli setup
|
|
24
|
+
```
|
|
25
|
+
|
|
26
|
+
Full interactive install and provisioning. Some steps (like the Nix installer) may prompt for sudo.
|
|
27
|
+
|
|
28
|
+
Options:
|
|
29
|
+
- `--skip-prereqs` — Skip prerequisite installation
|
|
30
|
+
- `--token <token>` — Provisioning token for headless setup
|
|
31
|
+
- `--name <name>` — Device name for headless setup
|
|
32
|
+
- `--api-url <url>` — Custom API URL
|
|
33
|
+
|
|
34
|
+
Headless mode (for CI/automation):
|
|
35
|
+
```bash
|
|
36
|
+
npx @pinegrovedev/cli setup --token pgr_tok_... --name my-server
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
### `status`
|
|
40
|
+
|
|
41
|
+
```bash
|
|
42
|
+
npx @pinegrovedev/cli status
|
|
43
|
+
```
|
|
44
|
+
|
|
45
|
+
Show daemon version, process status, and prerequisite health.
|
|
46
|
+
|
|
47
|
+
### `uninstall`
|
|
48
|
+
|
|
49
|
+
```bash
|
|
50
|
+
npx @pinegrovedev/cli uninstall
|
|
51
|
+
```
|
|
52
|
+
|
|
53
|
+
Stop the daemon and remove the system service. State directory is preserved.
|
|
54
|
+
|
|
55
|
+
## Requirements
|
|
56
|
+
|
|
57
|
+
- Node.js 22+
|
|
58
|
+
- macOS (arm64/x86_64) or Linux (arm64/x86_64)
|
|
59
|
+
- curl (for downloading the daemon binary)
|
package/dist/index.js
CHANGED
|
@@ -276,7 +276,7 @@ Continue?`
|
|
|
276
276
|
}
|
|
277
277
|
|
|
278
278
|
// src/index.ts
|
|
279
|
-
var program = new Command().name("pinegrove").description("Pinegrove CLI — install and provision the Pinegrove daemon").version("0.1.
|
|
279
|
+
var program = new Command().name("pinegrove").description("Pinegrove CLI — install and provision the Pinegrove daemon").version("0.1.1");
|
|
280
280
|
program.command("setup").description("Install the daemon, prerequisites, and connect to your team").option("--api-url <url>", "Pinegrove API base URL", "https://api.pinegrove.dev").option("--skip-prereqs", "Skip prerequisite installation").option("--token <token>", "Provisioning token (headless mode)").option("--name <name>", "Device name (headless mode)").action(setup);
|
|
281
281
|
program.command("status").description("Show daemon and prerequisite status").action(status);
|
|
282
282
|
program.command("uninstall").description("Stop and remove the daemon").action(uninstall);
|
package/package.json
CHANGED
|
@@ -1,13 +1,14 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@pinegrovedev/cli",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.1",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"bin": {
|
|
7
7
|
"pinegrove": "dist/index.js"
|
|
8
8
|
},
|
|
9
9
|
"files": [
|
|
10
|
-
"dist"
|
|
10
|
+
"dist",
|
|
11
|
+
"README.md"
|
|
11
12
|
],
|
|
12
13
|
"scripts": {
|
|
13
14
|
"build": "bun build src/index.ts --outdir dist --target node --format esm --external commander --external @inquirer/prompts",
|