@jive-sh/skill-sync 0.3.2 → 0.4.0-latest-darwin-arm64
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/multi-call-binary +4 -0
- package/package.json +11 -39
- package/README.md +0 -60
- package/bin/package.json +0 -1
- package/bin/skill-sync +0 -571
- package/bin/skill-sync-daemon +0 -571
- package/dist/daemons/skill-sync-daemon.js +0 -401
- package/dist/daemons/skill-sync-daemon.js.map +0 -1
- package/dist/entrypoints/skill-sync.js +0 -114
- package/dist/entrypoints/skill-sync.js.map +0 -1
- package/dist/index.js +0 -10
- package/dist/index.js.map +0 -1
- package/dist/internal/config.js +0 -134
- package/dist/internal/config.js.map +0 -1
- package/dist/internal/control.js +0 -101
- package/dist/internal/control.js.map +0 -1
- package/dist/internal/folders.js +0 -60
- package/dist/internal/folders.js.map +0 -1
- package/dist/internal/notify.js +0 -50
- package/dist/internal/notify.js.map +0 -1
- package/dist/internal/path.js +0 -36
- package/dist/internal/path.js.map +0 -1
- package/dist/internal/reconcile.js +0 -124
- package/dist/internal/reconcile.js.map +0 -1
- package/dist/internal/sync.js +0 -241
- package/dist/internal/sync.js.map +0 -1
- package/dist/internal/wire.js +0 -13
- package/dist/internal/wire.js.map +0 -1
- package/install.cjs +0 -571
- package/src/daemons/skill-sync-daemon.ts +0 -397
- package/src/entrypoints/skill-sync.ts +0 -116
- package/src/index.ts +0 -15
- package/src/internal/config.ts +0 -171
- package/src/internal/control.ts +0 -123
- package/src/internal/folders.ts +0 -64
- package/src/internal/notify.ts +0 -53
- package/src/internal/path.ts +0 -32
- package/src/internal/reconcile.ts +0 -166
- package/src/internal/sync.ts +0 -304
- package/src/internal/wire.ts +0 -162
package/package.json
CHANGED
|
@@ -1,48 +1,20 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@jive-sh/skill-sync",
|
|
3
|
-
"version": "0.
|
|
4
|
-
"license": "MIT",
|
|
3
|
+
"version": "0.4.0-latest-darwin-arm64",
|
|
5
4
|
"type": "module",
|
|
5
|
+
"license": "MIT",
|
|
6
|
+
"os": [
|
|
7
|
+
"darwin"
|
|
8
|
+
],
|
|
9
|
+
"cpu": [
|
|
10
|
+
"arm64"
|
|
11
|
+
],
|
|
12
|
+
"files": [
|
|
13
|
+
"multi-call-binary"
|
|
14
|
+
],
|
|
6
15
|
"description": "Keeps one skills directory identical across every machine you work on.",
|
|
7
16
|
"repository": {
|
|
8
17
|
"type": "git",
|
|
9
18
|
"url": "git+https://github.com/jive-sh/skill-sync.git"
|
|
10
|
-
},
|
|
11
|
-
"main": "./dist/index.js",
|
|
12
|
-
"module": "./dist/index.js",
|
|
13
|
-
"types": "./src/index.ts",
|
|
14
|
-
"exports": {
|
|
15
|
-
".": {
|
|
16
|
-
"types": "./src/index.ts",
|
|
17
|
-
"import": "./dist/index.js"
|
|
18
|
-
}
|
|
19
|
-
},
|
|
20
|
-
"files": [
|
|
21
|
-
"README.md",
|
|
22
|
-
"dist",
|
|
23
|
-
"src",
|
|
24
|
-
"bin",
|
|
25
|
-
"install.cjs"
|
|
26
|
-
],
|
|
27
|
-
"scripts": {
|
|
28
|
-
"postinstall": "node ./install.cjs"
|
|
29
|
-
},
|
|
30
|
-
"bin": {
|
|
31
|
-
"skill-sync": "./bin/skill-sync",
|
|
32
|
-
"skill-sync-daemon": "./bin/skill-sync-daemon"
|
|
33
|
-
},
|
|
34
|
-
"optionalDependencies": {
|
|
35
|
-
"@jive-sh/skill-sync-darwin-arm64": "npm:@jive-sh/skill-sync@0.3.2-latest-darwin-arm64",
|
|
36
|
-
"@jive-sh/skill-sync-darwin-x64": "npm:@jive-sh/skill-sync@0.3.2-latest-darwin-x64",
|
|
37
|
-
"@jive-sh/skill-sync-linux-arm64": "npm:@jive-sh/skill-sync@0.3.2-latest-linux-arm64",
|
|
38
|
-
"@jive-sh/skill-sync-linux-x64": "npm:@jive-sh/skill-sync@0.3.2-latest-linux-x64",
|
|
39
|
-
"@jive-sh/skill-sync-windows-x64": "npm:@jive-sh/skill-sync@0.3.2-latest-windows-x64"
|
|
40
|
-
},
|
|
41
|
-
"dependencies": {
|
|
42
|
-
"commander": "^13.1.0"
|
|
43
|
-
},
|
|
44
|
-
"peerDependencies": {
|
|
45
|
-
"effect": "^4.0.0",
|
|
46
|
-
"typescript": "^5.9.3"
|
|
47
19
|
}
|
|
48
20
|
}
|
package/README.md
DELETED
|
@@ -1,60 +0,0 @@
|
|
|
1
|
-
# @jive-sh/skill-sync
|
|
2
|
-
|
|
3
|
-
Keeps the skills you choose identical across every Claude folder on every machine you work on.
|
|
4
|
-
|
|
5
|
-
A daemon finds each Claude home on the machine (`~/.claude` and every `~/.claude-<name>`) and syncs the
|
|
6
|
-
`skills` folder in each through a Cloudflare Worker: file index in D1, contents in R2 addressed by hash.
|
|
7
|
-
`skill-sync login` asks the daemon to sign in and opens `skill-sync.jive.sh` in your browser, where you
|
|
8
|
-
verify with your jive.sh passkey (from any passkey manager, such as Google Password Manager). The service
|
|
9
|
-
hands a per-machine token straight to the daemon, which keeps it only in memory — never in a file, never
|
|
10
|
-
in the CLI — and starts syncing. After a reboot, a crash or an upgrade, run `skill-sync login` again.
|
|
11
|
-
|
|
12
|
-
```
|
|
13
|
-
skill-sync login sign this machine in with your passkey; the daemon starts syncing
|
|
14
|
-
skill-sync logout revoke this machine's token and stop syncing
|
|
15
|
-
skill-sync upgrade upgrade with the package manager that installed it
|
|
16
|
-
```
|
|
17
|
-
|
|
18
|
-
Everything else — which folders and skills sync, renaming computers, the merge log — is on the
|
|
19
|
-
dashboard.
|
|
20
|
-
|
|
21
|
-
The daemon registers itself to start at login when the package is installed.
|
|
22
|
-
|
|
23
|
-
## The dashboard
|
|
24
|
-
|
|
25
|
-
`https://skill-sync.jive.sh/` shows, live:
|
|
26
|
-
|
|
27
|
-
- **Synced skills**: the list, with the shared version of each skill and who changed it last.
|
|
28
|
-
- **Reconciliation log**: every merge Claude made — which computer, which folder and file, what
|
|
29
|
-
conflicted and how it was resolved — so you can audit them.
|
|
30
|
-
- **Computers**: each machine (renameable), whether its daemon is running, its Claude folders, and the
|
|
31
|
-
skills in each with their files.
|
|
32
|
-
|
|
33
|
-
Every file shows the first 8 characters of its SHA-256, amber when a folder's copy differs from the synced
|
|
34
|
-
one. The page reloads itself when a new version of the service is deployed.
|
|
35
|
-
|
|
36
|
-
The server holds one list of skills to sync. Every enabled folder on every machine pushes and pulls
|
|
37
|
-
exactly the skills on that list, and never touches any other skill. A skill's checkbox adds it to the
|
|
38
|
-
list or removes it, for every machine at once. A folder's checkbox turns syncing on or off for that
|
|
39
|
-
folder. Both are stored on the server, so they apply at once and survive a reinstall.
|
|
40
|
-
|
|
41
|
-
A folder that lacks a listed skill gets a copy. A folder that has its own copy of a listed skill under
|
|
42
|
-
the same name has the two merged by Claude.
|
|
43
|
-
|
|
44
|
-
## Conflicts
|
|
45
|
-
|
|
46
|
-
Every write is a compare-and-swap on the file's current hash, so a change made in two places at once is
|
|
47
|
-
never silently overwritten. When a file changed both locally and on the server — or a skill added to the list
|
|
48
|
-
already exists in a folder as a different copy — the daemon asks Claude, with no tools, to merge the two (using
|
|
49
|
-
the last agreed version when there is one), writes the merge, pushes it, and logs the explanation to the
|
|
50
|
-
dashboard. Both versions are copied first to `~/.jive/skill-sync/reconciled/`.
|
|
51
|
-
|
|
52
|
-
If Claude is unavailable or the merge looks truncated, the server's version is kept and yours is saved
|
|
53
|
-
beside it as `<file>.local`, with a desktop notification and a "needs attention" state on the dashboard.
|
|
54
|
-
|
|
55
|
-
## Configuration
|
|
56
|
-
|
|
57
|
-
`~/.jive/skill-sync.json` holds the endpoint and the machine name, written on first run. Nothing secret is
|
|
58
|
-
stored on disk: the CLI reaches the daemon over `~/.jive/skill-sync.sock` (a named pipe on Windows), which
|
|
59
|
-
only your user can open, and the daemon deletes the `~/.skill-sync-token.json` older versions wrote. Merges
|
|
60
|
-
run under the Claude account of the folder being merged.
|
package/bin/package.json
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"type":"commonjs"}
|