envspot 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.
Files changed (2) hide show
  1. package/README.md +75 -14
  2. package/package.json +1 -1
package/README.md CHANGED
@@ -1,26 +1,87 @@
1
- # EnvSpot CLI (`envspot`)
1
+ # envspot
2
2
 
3
- Minimal reference for the **`login` · `link` · `run`** surface. Full command reference: **[`../docs/cli-reference.md`](../docs/cli-reference.md)**. Historical SD-02 sequence + rationale: **[`../docs/historical/SD-02-cli-sequence.md`](../docs/historical/SD-02-cli-sequence.md)**.
3
+ Encrypted environment variables for your team, managed from the command line.
4
4
 
5
- ## Trust model (matches SD-01 §8 / SD-02 §7)
5
+ `envspot` is the command-line client for [EnvSpot](https://envspot.com). Link a
6
+ directory to a project, pull your secrets straight into a process, and keep
7
+ `.env` files off disk and out of git.
6
8
 
7
- - **Plaintext secrets** only in process memory during `run`, after **`GET /api/cli/decrypt`** over TLS. Nothing is written to disk as a secret bundle.
8
- - **No DEK / no master key on the client** — unwrap and decrypt happen server-side.
9
- - **`.envspot.json`**project id + environment label only; safe to commit unless you treat the project id as sensitive.
10
- - **Token** — stored with **keytar** (OS keychain); on **401** / `token_invalid`, `run` clears the stored credential and exits **4** so you re-`login`.
9
+ This package is the CLI. EnvSpot is also a hosted platform a web dashboard for
10
+ projects, environments, team access, audit history, and syncing secrets to your
11
+ deploy targetsat [envspot.com](https://envspot.com).
11
12
 
12
- ## User-Agent
13
+ ## Install
13
14
 
14
- All requests send **`User-Agent: envspot-cli/<semver>`** (`cli/src/config.ts`) for server-side audits (SD-01 §5.2).
15
+ ```bash
16
+ npm install -g envspot
17
+ ```
18
+
19
+ Or run it without installing:
15
20
 
16
- ## Resolved product choices
21
+ ```bash
22
+ npx envspot <command>
23
+ ```
17
24
 
18
- Exit codes, retries, **403** tier responses, and operational note on auth-tag / decrypt failures: **[`../docs/historical/sd-open-questions-resolved.md`](../docs/historical/sd-open-questions-resolved.md)**.
25
+ Requires Node.js 18 or newer.
19
26
 
20
- ## Build
27
+ ## Quick start
21
28
 
22
29
  ```bash
23
- cd cli && npm ci && npm run build
30
+ envspot init # create + link a project, import your .env, start your dev server
31
+ envspot login # sign in via browser device pairing
32
+ envspot link # link this directory to a project + environment
33
+ envspot run -- npm start # run a command with your secrets injected as env vars
24
34
  ```
25
35
 
26
- Bin: **`envspot`** → **`./dist/index.js`**.
36
+ ## Commands
37
+
38
+ | Command | What it does |
39
+ | ----------------- | --------------------------------------------------------------------------------------- |
40
+ | `init` | Create a project from this directory, link it, import `.env`, and start your dev server |
41
+ | `login` | Sign in via browser device pairing, or store an API key for token login |
42
+ | `logout` | Remove the stored credential |
43
+ | `link` | Write `./.envspot.json` (project id + environment) |
44
+ | `run -- <cmd>` | Run a command with the linked project's secrets injected as environment variables |
45
+ | `dump` | Print the linked project's secrets as `KEY=value` to stdout (nothing written to disk) |
46
+ | `set <key> <val>` | Set one secret for the linked project |
47
+ | `unset <key>` | Delete one secret |
48
+ | `status` | Show the API/app URL and your credential + link state |
49
+ | `whoami` | Show the signed-in user, workspace, and active link or token scope |
50
+ | `fly deploy` | Stage the linked project's secrets to Fly.io and deploy |
51
+
52
+ Run `envspot help` or `envspot <command> --help` for full options.
53
+
54
+ ## Integrations
55
+
56
+ EnvSpot syncs your secrets to your deployment targets so you set a value once and
57
+ it lands everywhere. Supported targets: **GitHub Actions, Vercel, Render, Railway,
58
+ and Fly.io** — connected and managed in the [dashboard](https://envspot.com).
59
+
60
+ `fly deploy` is the one target you can push to directly from the CLI; the rest
61
+ sync automatically once connected in the dashboard.
62
+
63
+ ## Configuration
64
+
65
+ | Variable | Purpose |
66
+ | --------------- | ------------------------------------------------------------ |
67
+ | `ENVSPOT_TOKEN` | API key for non-interactive / CI use (skips the OS keychain) |
68
+
69
+ ## How your secrets are handled
70
+
71
+ - **Decryption happens server-side.** No master key or data-encryption key ever
72
+ lives on your machine.
73
+ - **Plaintext secrets stay in memory.** `run` holds them only for the lifetime of
74
+ the child process; nothing is written to disk as a secret bundle.
75
+ - **Your credential lives in the OS keychain**, not a plaintext file. On an expired
76
+ or revoked token, the CLI clears it and asks you to sign in again.
77
+ - **`.envspot.json` is safe to commit** — it holds only the project id and
78
+ environment label, never secrets.
79
+
80
+ ## Links
81
+
82
+ - Website: https://envspot.com
83
+ - Issues: https://github.com/EnvSpot/envspot/issues
84
+
85
+ ## License
86
+
87
+ MIT
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "envspot",
3
- "version": "0.1.0",
3
+ "version": "0.1.1",
4
4
  "description": "CLI for envspot — encrypted environment variables for your team",
5
5
  "license": "MIT",
6
6
  "author": "EnvSpot",