@skylence-ai/skyline 1.0.32 → 1.0.34
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 +14 -11
- package/package.json +10 -7
- package/postinstall.js +20 -0
package/README.md
CHANGED
|
@@ -39,23 +39,25 @@ dependency — no native installer or compile step. Alternatives:
|
|
|
39
39
|
`cargo binstall skyline`, or a prebuilt archive from
|
|
40
40
|
[GitHub Releases](https://github.com/skylence-be/binary-skyline/releases).
|
|
41
41
|
|
|
42
|
-
### 2.
|
|
43
|
-
```bash
|
|
44
|
-
skyline daemon start --port 7333
|
|
45
|
-
```
|
|
42
|
+
### 2. Bootstrap the daemon and agent wiring
|
|
46
43
|
|
|
47
|
-
To survive reboots, register it as an OS service instead: `skyline daemon install --port 7333` (see [docs/install.md](https://github.com/skylence-be/binary-skyline/blob/main/docs/install.md) for details).
|
|
48
|
-
|
|
49
|
-
### 3. Tell your AI client (here, Claude Code) about it
|
|
50
44
|
```bash
|
|
51
|
-
|
|
45
|
+
skyline setup
|
|
52
46
|
```
|
|
53
47
|
|
|
54
|
-
|
|
48
|
+
`skyline setup` is the idempotent, cross-package-manager setup path. It installs
|
|
49
|
+
the shared HTTP daemon as a supervised autostart service on port 7333, wires
|
|
50
|
+
supported AI agents to `http://127.0.0.1:7333/mcp`, and best-effort installs the
|
|
51
|
+
Skyline marketplace plugins for agent CLIs already on PATH. Re-run with
|
|
52
|
+
`skyline setup --force` after changing agent installs or PATH.
|
|
53
|
+
|
|
54
|
+
npm may run this for you as a best-effort postinstall hook, but modern package
|
|
55
|
+
managers can block lifecycle scripts. If in doubt, run `skyline setup` once.
|
|
55
56
|
|
|
57
|
+
Check it is up with `skyline daemon status` (the port should read `running`).
|
|
56
58
|
Other install methods are in [docs/install.md](https://github.com/skylence-be/binary-skyline/blob/main/docs/install.md).
|
|
57
59
|
|
|
58
|
-
###
|
|
60
|
+
### 3. Prompts for your agent
|
|
59
61
|
|
|
60
62
|
Paste this into your agent's instructions so it picks the right tool:
|
|
61
63
|
|
|
@@ -66,7 +68,7 @@ Prefer skyline's MCP tools over your built-in file read, edit, and search tools
|
|
|
66
68
|
Or skip the manual setup entirely and hand your agent this:
|
|
67
69
|
|
|
68
70
|
```text
|
|
69
|
-
Set up skyline for me: install it with `npm install -g @skylence-ai/skyline` (prebuilt binaries for every platform, incl Windows arm64), install the shared HTTP MCP daemon as a supervised autostart service
|
|
71
|
+
Set up skyline for me: install it with `npm install -g @skylence-ai/skyline` (prebuilt binaries for every platform, incl Windows arm64), run `skyline setup` to install the shared HTTP MCP daemon as a supervised autostart service and wire supported agents to it, then verify: `skyline daemon status` must show port 7333 as `running`, and the agent's MCP list/status command must show skyline as connected. Do NOT probe the endpoint with raw curl: it is a stateful streamable-HTTP MCP server that requires an initialize handshake, an Accept header for both application/json and text/event-stream, and a session id, so ad-hoc curl calls fail by design; the agent's MCP status command is the correct connectivity check, and the tools (e.g. `skyline_version`) become callable in your next session. If the port is taken, run `skyline daemon install --port <free-port>` and configure agents to `http://127.0.0.1:<free-port>/mcp`.
|
|
70
72
|
```
|
|
71
73
|
|
|
72
74
|
## The numbers
|
|
@@ -144,6 +146,7 @@ skyline is one Rust binary with two faces: a command-line tool and an MCP server
|
|
|
144
146
|
| Observability streams (audit, devlog, bench) | `skyline audit/devlog/bench` | `skyline_observability_*`, tail and prune tools |
|
|
145
147
|
| Manage the background daemon | `skyline daemon …` | (CLI) |
|
|
146
148
|
| Start the daemon on every boot | `skyline daemon install` | (CLI) |
|
|
149
|
+
| Bootstrap daemon + agent wiring | `skyline setup` | (CLI) |
|
|
147
150
|
| Health check | `skyline doctor` | (CLI) |
|
|
148
151
|
### Understanding code, not just matching text
|
|
149
152
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@skylence-ai/skyline",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.34",
|
|
4
4
|
"description": "Content-hash line editor — CLI and MCP server",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"repository": {
|
|
@@ -21,15 +21,18 @@
|
|
|
21
21
|
"node": ">=16"
|
|
22
22
|
},
|
|
23
23
|
"preferUnplugged": true,
|
|
24
|
+
"scripts": {
|
|
25
|
+
"postinstall": "node postinstall.js"
|
|
26
|
+
},
|
|
24
27
|
"bin": {
|
|
25
28
|
"skyline": "bin.js"
|
|
26
29
|
},
|
|
27
30
|
"optionalDependencies": {
|
|
28
|
-
"@skylence-ai/skyline-darwin-arm64": "1.0.
|
|
29
|
-
"@skylence-ai/skyline-darwin-x64": "1.0.
|
|
30
|
-
"@skylence-ai/skyline-linux-arm64": "1.0.
|
|
31
|
-
"@skylence-ai/skyline-linux-x64": "1.0.
|
|
32
|
-
"@skylence-ai/skyline-win32-x64": "1.0.
|
|
33
|
-
"@skylence-ai/skyline-win32-arm64": "1.0.
|
|
31
|
+
"@skylence-ai/skyline-darwin-arm64": "1.0.34",
|
|
32
|
+
"@skylence-ai/skyline-darwin-x64": "1.0.34",
|
|
33
|
+
"@skylence-ai/skyline-linux-arm64": "1.0.34",
|
|
34
|
+
"@skylence-ai/skyline-linux-x64": "1.0.34",
|
|
35
|
+
"@skylence-ai/skyline-win32-x64": "1.0.34",
|
|
36
|
+
"@skylence-ai/skyline-win32-arm64": "1.0.34"
|
|
34
37
|
}
|
|
35
38
|
}
|
package/postinstall.js
ADDED
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
"use strict";
|
|
3
|
+
|
|
4
|
+
// Package-manager lifecycle scripts are increasingly blocked by default. When
|
|
5
|
+
// this hook does run, treat it as a best-effort convenience; the real,
|
|
6
|
+
// idempotent bootstrap is `skyline setup`.
|
|
7
|
+
if (process.env.CI || process.env.SKYLINE_NO_AUTO_SETUP) process.exit(0);
|
|
8
|
+
|
|
9
|
+
const { spawnSync } = require("child_process");
|
|
10
|
+
const path = require("path");
|
|
11
|
+
const bin = path.join(__dirname, "bin.js");
|
|
12
|
+
const node = process.execPath;
|
|
13
|
+
|
|
14
|
+
const r = spawnSync(node, [bin, "setup"], { stdio: "inherit" });
|
|
15
|
+
const code = r.status ?? 1;
|
|
16
|
+
if (r.error || code !== 0) {
|
|
17
|
+
console.warn(
|
|
18
|
+
"skyline: postinstall setup skipped or failed; run `skyline setup` once after install."
|
|
19
|
+
);
|
|
20
|
+
}
|