friend-assistant 0.1.1 → 0.1.3
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
|
@@ -51,7 +51,7 @@ Every command starts with `friend`. If you run Friend from the source code, writ
|
|
|
51
51
|
|
|
52
52
|
| Command | What it does | Use it when |
|
|
53
53
|
|---|---|---|
|
|
54
|
-
| `friend start` | Starts Friend: the web app, the assistant, the speech engine if installed, and your connectors. Prints the address (and your network address when that is on). Ctrl+C stops it. | Every day. Open the address in a browser and sign in. |
|
|
54
|
+
| `friend start` | Starts Friend: the web app, the assistant, the speech engine if installed, and your connectors. Prints the address (and your network address when that is on). Ctrl+C stops it. Friend's screen works in one browser window at a time: open it in a second place and that window shows "Use here", which moves Friend there and stops the first. | Every day. Open the address in a browser and sign in. |
|
|
55
55
|
| `friend pair` | Prints a one-time pairing code, valid for 5 minutes, and the command to run on the other PC. | You want Friend to also work on a second PC. |
|
|
56
56
|
| `friend node --url ws://HOST:8787/device --code CODE` | Run on the other PC: connects it to your Friend. Add `--roots C:/work,D:/files` for the folders it may use freely and `--name laptop` to name it. | The second step after `friend pair`. |
|
|
57
57
|
| `friend devices list` | Lists the paired PCs and when each was last seen. | Checking what is connected. |
|
|
@@ -85,8 +85,14 @@ Every command starts with `friend`. If you run Friend from the source code, writ
|
|
|
85
85
|
|
|
86
86
|
| Command | What it does | Use it when |
|
|
87
87
|
|---|---|---|
|
|
88
|
+
| `friend daemon start` | Runs Friend in the background, with no terminal window needed. Prints the address, keeps a log in the data folder (`friend.log`). | You want Friend always available, even after you close the terminal. |
|
|
89
|
+
| `friend daemon stop` | Stops the background Friend and the speech engine with it. | Shutting it down. |
|
|
90
|
+
| `friend daemon restart` | Stops it and starts it again. | After changing a setting such as `friend lan on` or a different model. |
|
|
91
|
+
| `friend daemon status` | Says whether the background Friend is running, for how long, and at which address. Exit code 0 when running, 1 when not. | Checking, or in a script. |
|
|
88
92
|
| `friend lan` (or `friend lan status`) | Shows what Friend listens on and the addresses to open. | Checking, or finding the address for your phone. |
|
|
89
93
|
| `friend lan on` | Lets other devices on your network open Friend. Prints the addresses and the things to know (plain http, no microphone on other devices, firewall prompt). | Using Friend from a phone or another PC. |
|
|
94
|
+
| `friend lan on --https` | The same, with a secure `https://` address (Friend makes its own certificate), so a phone may use the microphone and camera. | Talking to Friend from a phone. |
|
|
95
|
+
| `friend lan https on` (or `off`) | Turns the secure address on or off by itself. | You already ran `friend lan on`, or want plain http back. |
|
|
90
96
|
| `friend lan on --port 9100` | The same on another port. | Port 8787 is taken. |
|
|
91
97
|
| `friend lan port 9100` | Changes only the port. | Another program uses 8787. |
|
|
92
98
|
| `friend lan off` | Back to this PC only. | Closing it again. |
|
|
@@ -127,6 +133,7 @@ Connectors (Gmail, Chrome control, any MCP service) are managed inside the app,
|
|
|
127
133
|
| `ollama.url`, `ollama.model`, `ollama.vision`, `ollama.contextTokens` | The local model: server address, model name, whether it can see pictures, and how much it remembers at once. |
|
|
128
134
|
| `voice.enabled`, `voice.sttModel`, `voice.ttsVoice`, `voice.language`, `voice.speakTyped`, `voice.accept`, `voice.challenge` | Speech on or off, the listening model, the speaking voice, a forced language, speaking typed replies, and the two thresholds for recognising your voice. |
|
|
129
135
|
| `bind`, `port` | Where Friend listens (easier: `friend lan`). |
|
|
136
|
+
| `https` | `true` serves a secure `https://` address with a certificate Friend makes for itself, so a phone may use the microphone (easier: `friend lan https on`). |
|
|
130
137
|
| `publicUrl`, `allowedOrigins`, `allowedHosts`, `trustProxy` | For running behind your own domain or reverse proxy (see "Using your own domain later"). |
|
|
131
138
|
| `roots` | The workspace folders Friend may use freely, separated by commas. |
|
|
132
139
|
|
|
@@ -209,7 +216,7 @@ pnpm friend claude status
|
|
|
209
216
|
|
|
210
217
|
A connector gives Friend the tools of an outside program or service through the MCP standard. Open **Esc, then Connectors** (or type `/connectors`). Ready-made entries:
|
|
211
218
|
|
|
212
|
-
- **Chrome control**:
|
|
219
|
+
- **Chrome control**: one click. Press **Connect**; Friend adds `npx -y chrome-control-mcp` for you (the same as `claude mcp add chrome-control -- npx -y chrome-control-mcp`) and starts it, asking only for your PIN. If it is not installed yet, Friend says so ("please install it first") and can install it in the background (`npx -y chrome-control-mcp setup`). The one step only you can do is loading the extension in Chrome (chrome://extensions, Developer mode, Load unpacked); Friend tells you whether the extension is connected.
|
|
213
220
|
- **Gmail**: a community Gmail MCP server (`@gongrzhe/server-gmail-autoauth-mcp`). You create the Google OAuth credentials and sign in on Google's own page; **Friend never sees your Google password**. More mail and calendar connectors can be added the same way ("Something else": any program or any server by address).
|
|
214
221
|
|
|
215
222
|
How it is kept safe:
|
|
@@ -363,6 +370,8 @@ By default Friend is reachable only on this PC, at http://127.0.0.1:8787.
|
|
|
363
370
|
```bash
|
|
364
371
|
pnpm friend lan # shows how it is set up and the addresses
|
|
365
372
|
pnpm friend lan on # also reachable from phones and other PCs on your network
|
|
373
|
+
pnpm friend lan on --https # the same, with a secure address so a phone can use the microphone
|
|
374
|
+
pnpm friend lan https on # (or off) only the secure address
|
|
366
375
|
pnpm friend lan on --port 9100 # the same, on another port
|
|
367
376
|
pnpm friend lan port 9100 # change only the port
|
|
368
377
|
pnpm friend lan off # this PC only again
|
|
@@ -371,8 +380,9 @@ pnpm friend lan off # this PC only again
|
|
|
371
380
|
Restart `friend start` afterwards. It then prints the addresses, for example `Also on your network: http://192.168.1.20:9100`; open that on the other device and sign in. Things to know:
|
|
372
381
|
|
|
373
382
|
- Anyone on the network can open the sign-in page. The password and PIN still guard everything, so use a strong password. Creating the owner account is only possible on this PC.
|
|
374
|
-
-
|
|
375
|
-
- **Browsers allow the microphone and camera only on localhost or HTTPS.** Over plain http on
|
|
383
|
+
- Over plain http other people on the network could read the connection. Use it on a network you trust, turn on the secure address (below), or put Friend behind your own HTTPS (`publicUrl`, below).
|
|
384
|
+
- **Browsers allow the microphone and camera only on localhost or HTTPS.** Over plain http on a phone you can type and read, but not talk. Run `friend lan https on` and restart: Friend makes its own certificate and serves `https://192.168.x.x:8787`. The first time, the phone warns that the certificate is not from a known authority (Android Chrome: Advanced, Proceed; iPhone Safari: Show Details, visit this website). After that the microphone works. The warning appears because the certificate is Friend's own, not bought from an authority; the traffic is still encrypted.
|
|
385
|
+
- **On a phone** the screen shows a round microphone button (hold it and let go to send, or tap once to start and again to send), a keyboard button and a menu button. There is no Space or Esc to press.
|
|
376
386
|
- Windows asks once whether to let Node.js through the firewall: allow it on *Private* networks.
|
|
377
387
|
- To open it by a name (`http://my-pc:9100`) add the name: `friend config set allowedHosts my-pc`.
|
|
378
388
|
|
package/dist/BUILD.json
CHANGED