swixter 0.1.1 → 0.1.2
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 +55 -1
- package/dist/cli/index.js +1258 -162
- package/package.json +2 -2
package/README.md
CHANGED
|
@@ -14,9 +14,10 @@ A lightweight CLI tool that makes it easy to switch between AI providers for Cla
|
|
|
14
14
|
- **Switch providers instantly** - Change between Anthropic, Ollama, or custom APIs with one command
|
|
15
15
|
- **Automatic failover** - Group profiles by priority, auto-retry on provider failure
|
|
16
16
|
- **Local proxy** - Transparent proxy with circuit breaker, your tools won't even notice a provider goes down
|
|
17
|
+
- **Cloud sync** - Encrypt and sync your profiles across devices with end-to-end encryption
|
|
17
18
|
- **Multiple coders** - Works with Claude Code, Codex, Continue
|
|
18
19
|
- **Web UI** - Browser-based interface for visual management
|
|
19
|
-
- **All local** -
|
|
20
|
+
- **All local** - Your keys stay on your machine; cloud sync uses client-side encryption
|
|
20
21
|
|
|
21
22
|
## Installation
|
|
22
23
|
|
|
@@ -252,6 +253,56 @@ swixter ui --port 8080 # Custom port
|
|
|
252
253
|
- **Providers** - Manage custom providers
|
|
253
254
|
- **Settings** - Import/export configurations
|
|
254
255
|
|
|
256
|
+
## Cloud Sync
|
|
257
|
+
|
|
258
|
+
Sync your profiles and provider configs across devices with end-to-end encryption. API keys and other sensitive fields are encrypted client-side before uploading — the server never sees plaintext secrets.
|
|
259
|
+
|
|
260
|
+
### Quick Start
|
|
261
|
+
|
|
262
|
+
```bash
|
|
263
|
+
swixter auth register # Create account
|
|
264
|
+
swixter auth login # Sign in (password)
|
|
265
|
+
swixter auth login --magic-link # Sign in via magic link email
|
|
266
|
+
swixter sync push # Upload encrypted config to cloud
|
|
267
|
+
swixter sync pull # Download and merge from cloud
|
|
268
|
+
swixter sync status # Check sync state
|
|
269
|
+
```
|
|
270
|
+
|
|
271
|
+
### Auth Commands
|
|
272
|
+
|
|
273
|
+
```bash
|
|
274
|
+
swixter auth register # Create a new account
|
|
275
|
+
swixter auth login # Sign in with email + password
|
|
276
|
+
swixter auth login --magic-link # Sign in via magic link
|
|
277
|
+
swixter auth logout # Sign out
|
|
278
|
+
swixter auth status # Check login status
|
|
279
|
+
swixter auth delete-account # Delete your account and cloud data
|
|
280
|
+
```
|
|
281
|
+
|
|
282
|
+
### Sync Commands
|
|
283
|
+
|
|
284
|
+
```bash
|
|
285
|
+
swixter sync push # Push local config to cloud
|
|
286
|
+
swixter sync push --force-local # Force push (overwrite remote)
|
|
287
|
+
swixter sync pull # Pull remote config to local
|
|
288
|
+
swixter sync pull --force-remote # Force pull (overwrite local)
|
|
289
|
+
swixter sync status # Show sync status and versions
|
|
290
|
+
swixter sync enable # Enable auto sync
|
|
291
|
+
swixter sync disable # Disable auto sync
|
|
292
|
+
```
|
|
293
|
+
|
|
294
|
+
### How It Works
|
|
295
|
+
|
|
296
|
+
```
|
|
297
|
+
Local Config → Derive Encryption Key → Encrypt Sensitive Fields → Upload to Cloud
|
|
298
|
+
↓
|
|
299
|
+
Cloud → Download → Decrypt → Merge with Local Config → Apply
|
|
300
|
+
```
|
|
301
|
+
|
|
302
|
+
- **End-to-end encryption**: Sensitive fields (API keys, auth tokens) are encrypted using a key derived from your master password before leaving your machine
|
|
303
|
+
- **Version-based conflict detection**: Local and remote versions are tracked to detect and handle conflicts
|
|
304
|
+
- **Selective push/pull**: Only config and providers data are synced; local-only settings stay untouched
|
|
305
|
+
|
|
255
306
|
## Other Commands
|
|
256
307
|
|
|
257
308
|
```bash
|
|
@@ -316,6 +367,9 @@ swixter/
|
|
|
316
367
|
│ ├── providers/ # Provider presets + user-defined providers
|
|
317
368
|
│ ├── groups/ # Group management (failover profiles)
|
|
318
369
|
│ ├── proxy/ # Local proxy server (failover, circuit breaker)
|
|
370
|
+
│ ├── auth/ # Cloud auth (register, login, token management)
|
|
371
|
+
│ ├── sync/ # Cloud sync (push, pull, merge, auto-sync)
|
|
372
|
+
│ ├── crypto/ # End-to-end encryption (key derivation, field encryption)
|
|
319
373
|
│ ├── server/ # Web UI API server
|
|
320
374
|
│ └── utils/ # Shared utilities
|
|
321
375
|
├── ui/ # Web UI (React + Vite + Tailwind)
|