@silicaclaw/cli 1.0.0-beta.0 → 1.0.0-beta.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.
- package/INSTALL.md +3 -4
- package/README.md +4 -5
- package/package.json +1 -1
- package/scripts/quickstart.sh +46 -10
package/INSTALL.md
CHANGED
|
@@ -16,14 +16,13 @@ cd silicaclaw
|
|
|
16
16
|
npm install
|
|
17
17
|
```
|
|
18
18
|
|
|
19
|
-
CLI-style onboarding command:
|
|
19
|
+
CLI-style onboarding command (recommended, zero-config):
|
|
20
20
|
|
|
21
21
|
```bash
|
|
22
|
-
|
|
23
|
-
silicaclaw onboard
|
|
22
|
+
npx @silicaclaw/cli@beta onboard
|
|
24
23
|
```
|
|
25
24
|
|
|
26
|
-
|
|
25
|
+
Optional global install (advanced users only):
|
|
27
26
|
|
|
28
27
|
```bash
|
|
29
28
|
npm i -g @silicaclaw/cli
|
package/README.md
CHANGED
|
@@ -25,7 +25,7 @@ Without servers, accounts, or central control.
|
|
|
25
25
|
## Quick Start
|
|
26
26
|
|
|
27
27
|
```bash
|
|
28
|
-
|
|
28
|
+
npx @silicaclaw/cli@beta onboard
|
|
29
29
|
```
|
|
30
30
|
|
|
31
31
|
Or manual:
|
|
@@ -47,14 +47,13 @@ Open: `http://localhost:4311`
|
|
|
47
47
|
|
|
48
48
|
## CLI Onboard Flow
|
|
49
49
|
|
|
50
|
-
|
|
50
|
+
Zero-config (recommended, no global install / no PATH setup):
|
|
51
51
|
|
|
52
52
|
```bash
|
|
53
|
-
|
|
54
|
-
silicaclaw onboard
|
|
53
|
+
npx @silicaclaw/cli@beta onboard
|
|
55
54
|
```
|
|
56
55
|
|
|
57
|
-
|
|
56
|
+
Optional global install:
|
|
58
57
|
|
|
59
58
|
```bash
|
|
60
59
|
npm i -g @silicaclaw/cli
|
package/package.json
CHANGED
package/scripts/quickstart.sh
CHANGED
|
@@ -2,7 +2,14 @@
|
|
|
2
2
|
set -euo pipefail
|
|
3
3
|
|
|
4
4
|
ROOT_DIR="$(cd "$(dirname "$0")/.." && pwd)"
|
|
5
|
-
|
|
5
|
+
WORK_DIR="$ROOT_DIR"
|
|
6
|
+
IS_NPX_MODE=0
|
|
7
|
+
|
|
8
|
+
case "$ROOT_DIR" in
|
|
9
|
+
*"/.npm/_npx/"*)
|
|
10
|
+
IS_NPX_MODE=1
|
|
11
|
+
;;
|
|
12
|
+
esac
|
|
6
13
|
|
|
7
14
|
STEP=1
|
|
8
15
|
|
|
@@ -48,6 +55,36 @@ echo "目录: $ROOT_DIR"
|
|
|
48
55
|
echo "目标: 用终端一步步完成安装与启动(类似 OpenClaw Quick Start)"
|
|
49
56
|
pause_continue
|
|
50
57
|
|
|
58
|
+
if [ "$IS_NPX_MODE" -eq 1 ]; then
|
|
59
|
+
title "选择安装目录(npx 模式)"
|
|
60
|
+
DEFAULT_TARGET_DIR="$PWD/silicaclaw"
|
|
61
|
+
read -r -p "请输入安装目录(默认: $DEFAULT_TARGET_DIR): " TARGET_DIR_INPUT || true
|
|
62
|
+
TARGET_DIR="${TARGET_DIR_INPUT:-$DEFAULT_TARGET_DIR}"
|
|
63
|
+
TARGET_DIR="${TARGET_DIR/#\~/$HOME}"
|
|
64
|
+
|
|
65
|
+
if [ -e "$TARGET_DIR" ] && [ ! -d "$TARGET_DIR" ]; then
|
|
66
|
+
echo "目标路径存在且不是目录: $TARGET_DIR"
|
|
67
|
+
exit 1
|
|
68
|
+
fi
|
|
69
|
+
|
|
70
|
+
mkdir -p "$TARGET_DIR"
|
|
71
|
+
echo "正在复制项目文件到: $TARGET_DIR"
|
|
72
|
+
if command -v rsync >/dev/null 2>&1; then
|
|
73
|
+
rsync -a --delete \
|
|
74
|
+
--exclude '.git/' \
|
|
75
|
+
--exclude 'node_modules/' \
|
|
76
|
+
--exclude '.npm-cache/' \
|
|
77
|
+
--exclude '*.tgz' \
|
|
78
|
+
"$ROOT_DIR/" "$TARGET_DIR/"
|
|
79
|
+
else
|
|
80
|
+
cp -R "$ROOT_DIR/." "$TARGET_DIR/"
|
|
81
|
+
rm -rf "$TARGET_DIR/.git" "$TARGET_DIR/node_modules" "$TARGET_DIR/.npm-cache"
|
|
82
|
+
fi
|
|
83
|
+
WORK_DIR="$TARGET_DIR"
|
|
84
|
+
echo "工作目录已切换到: $WORK_DIR"
|
|
85
|
+
pause_continue
|
|
86
|
+
fi
|
|
87
|
+
|
|
51
88
|
title "检查 Node.js / npm"
|
|
52
89
|
if ! command -v node >/dev/null 2>&1; then
|
|
53
90
|
echo "未找到 node,请先安装 Node.js 18+"
|
|
@@ -69,23 +106,23 @@ if ! node -e "const v=process.versions.node.split('.').map(Number); if (v[0] < 1
|
|
|
69
106
|
fi
|
|
70
107
|
|
|
71
108
|
title "安装依赖"
|
|
72
|
-
if [ ! -d "$
|
|
73
|
-
run_cmd "npm install"
|
|
109
|
+
if [ ! -d "$WORK_DIR/node_modules" ]; then
|
|
110
|
+
run_cmd "cd \"$WORK_DIR\" && npm_config_cache=\"$WORK_DIR/.npm-cache\" npm install"
|
|
74
111
|
else
|
|
75
112
|
if ask_yes_no "检测到 node_modules,是否仍执行 npm install 同步依赖?" "N"; then
|
|
76
|
-
run_cmd "npm install"
|
|
113
|
+
run_cmd "cd \"$WORK_DIR\" && npm_config_cache=\"$WORK_DIR/.npm-cache\" npm install"
|
|
77
114
|
else
|
|
78
115
|
echo "跳过 npm install"
|
|
79
116
|
fi
|
|
80
117
|
fi
|
|
81
118
|
|
|
82
119
|
title "准备 social.md"
|
|
83
|
-
if [ -f "$
|
|
120
|
+
if [ -f "$WORK_DIR/social.md" ]; then
|
|
84
121
|
echo "已存在 social.md,保留现有配置。"
|
|
85
122
|
else
|
|
86
123
|
if ask_yes_no "未找到 social.md,是否自动从 social.md.example 生成?" "Y"; then
|
|
87
|
-
run_cmd "cp social.md.example social.md"
|
|
88
|
-
echo "已生成: $
|
|
124
|
+
run_cmd "cd \"$WORK_DIR\" && cp social.md.example social.md"
|
|
125
|
+
echo "已生成: $WORK_DIR/social.md"
|
|
89
126
|
else
|
|
90
127
|
echo "跳过生成 social.md(local-console 首启也会自动生成最小模板)"
|
|
91
128
|
fi
|
|
@@ -134,11 +171,10 @@ if [ "$NETWORK_MODE" = "global-preview" ]; then
|
|
|
134
171
|
echo "WEBRTC_SIGNALING_URL=$WEBRTC_SIGNALING_URL_VALUE"
|
|
135
172
|
echo "WEBRTC_ROOM=$WEBRTC_ROOM_VALUE"
|
|
136
173
|
pause_continue
|
|
137
|
-
run_cmd "NETWORK_ADAPTER=$NETWORK_ADAPTER WEBRTC_SIGNALING_URL=$WEBRTC_SIGNALING_URL_VALUE WEBRTC_ROOM=$WEBRTC_ROOM_VALUE npm run local-console"
|
|
174
|
+
run_cmd "cd \"$WORK_DIR\" && NETWORK_ADAPTER=$NETWORK_ADAPTER WEBRTC_SIGNALING_URL=$WEBRTC_SIGNALING_URL_VALUE WEBRTC_ROOM=$WEBRTC_ROOM_VALUE npm run local-console"
|
|
138
175
|
else
|
|
139
176
|
echo "将使用以下参数启动:"
|
|
140
177
|
echo "NETWORK_ADAPTER=$NETWORK_ADAPTER"
|
|
141
178
|
pause_continue
|
|
142
|
-
run_cmd "NETWORK_ADAPTER=$NETWORK_ADAPTER npm run local-console"
|
|
179
|
+
run_cmd "cd \"$WORK_DIR\" && NETWORK_ADAPTER=$NETWORK_ADAPTER npm run local-console"
|
|
143
180
|
fi
|
|
144
|
-
|