remote-claude 0.1.2 → 0.1.4

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.
Files changed (2) hide show
  1. package/init.sh +69 -14
  2. package/package.json +1 -1
package/init.sh CHANGED
@@ -36,6 +36,24 @@ print_header() {
36
36
  echo ""
37
37
  }
38
38
 
39
+ # 确保 ~/.local/bin 在 PATH 中
40
+ setup_path() {
41
+ local PROFILE="$HOME/.bash_profile"
42
+ # 不存在则创建
43
+ [[ -f "$PROFILE" ]] || touch "$PROFILE"
44
+
45
+ # 未写入则追加
46
+ if ! grep -qF '$HOME/.local/bin' "$PROFILE" 2>/dev/null; then
47
+ echo "" >> "$PROFILE"
48
+ echo '# remote-claude: 确保 ~/.local/bin 在 PATH' >> "$PROFILE"
49
+ echo 'export PATH="$HOME/.local/bin:$PATH"' >> "$PROFILE"
50
+ fi
51
+
52
+ # 使当前脚本会话立即生效
53
+ source "$PROFILE" 2>/dev/null || true
54
+ export PATH="$HOME/.local/bin:$PATH"
55
+ }
56
+
39
57
  # 检查操作系统
40
58
  check_os() {
41
59
  print_header "检查系统环境"
@@ -62,26 +80,55 @@ check_uv() {
62
80
 
63
81
  print_warning "未找到 uv,正在安装..."
64
82
 
65
- # 方式一:官方安装脚本
66
- if curl -LsSf https://astral.sh/uv/install.sh | sh 2>/dev/null; then
83
+ # 检测可用的 pip 命令
84
+ local PIP_CMD=""
85
+ if command -v pip3 &> /dev/null; then
86
+ PIP_CMD="pip3"
87
+ elif command -v pip &> /dev/null; then
88
+ PIP_CMD="pip"
89
+ fi
90
+
91
+ # 方式一:官方安装脚本(需访问 astral.sh/GitHub)
92
+ if curl -LsSf --connect-timeout 10 https://astral.sh/uv/install.sh | sh 2>/dev/null; then
67
93
  export PATH="$HOME/.local/bin:$PATH"
68
94
  fi
69
95
 
70
- # 方式二:brewmacOS 备用)
71
- if ! command -v uv &> /dev/null && [[ "$OS" == "Darwin" ]] && command -v brew &> /dev/null; then
72
- print_warning "官方脚本安装失败,尝试 brew install uv..."
73
- brew install uv
96
+ # 方式二:pip + PyPIGitHub 访问受限时首选;国内镜像比 GitHub 稳定)
97
+ if ! command -v uv &> /dev/null && [[ -n "$PIP_CMD" ]]; then
98
+ print_warning "尝试 pip 安装 uv(官方 PyPI)..."
99
+ ($PIP_CMD install uv --quiet 2>/dev/null || \
100
+ $PIP_CMD install uv --quiet --break-system-packages 2>/dev/null) && \
101
+ export PATH="$HOME/.local/bin:$PATH"
74
102
  fi
75
103
 
76
- # 方式三:pip/pip3 备用
104
+ # 方式三:pip + 国内镜像(清华 PyPI,适合无法访问 GitHub/pypi.org 的内网环境)
105
+ if ! command -v uv &> /dev/null && [[ -n "$PIP_CMD" ]]; then
106
+ print_warning "尝试 pip 安装 uv(清华镜像)..."
107
+ ($PIP_CMD install uv --quiet \
108
+ -i https://pypi.tuna.tsinghua.edu.cn/simple/ \
109
+ --trusted-host pypi.tuna.tsinghua.edu.cn 2>/dev/null || \
110
+ $PIP_CMD install uv --quiet \
111
+ -i https://pypi.tuna.tsinghua.edu.cn/simple/ \
112
+ --trusted-host pypi.tuna.tsinghua.edu.cn \
113
+ --break-system-packages 2>/dev/null) && \
114
+ export PATH="$HOME/.local/bin:$PATH"
115
+ fi
116
+
117
+ # 方式四:conda/mamba(适合已有 Anaconda/Miniconda 环境的机器)
77
118
  if ! command -v uv &> /dev/null; then
78
- print_warning "尝试 pip 安装 uv..."
79
- if command -v pip3 &> /dev/null; then
80
- pip3 install uv --quiet
81
- elif command -v pip &> /dev/null; then
82
- pip install uv --quiet
119
+ if command -v mamba &> /dev/null; then
120
+ print_warning "尝试 mamba 安装 uv..."
121
+ mamba install -c conda-forge uv -y --quiet 2>/dev/null || true
122
+ elif command -v conda &> /dev/null; then
123
+ print_warning "尝试 conda 安装 uv..."
124
+ conda install -c conda-forge uv -y --quiet 2>/dev/null || true
83
125
  fi
84
- export PATH="$HOME/.local/bin:$PATH"
126
+ fi
127
+
128
+ # 方式五:brew(macOS 备用)
129
+ if ! command -v uv &> /dev/null && [[ "$OS" == "Darwin" ]] && command -v brew &> /dev/null; then
130
+ print_warning "尝试 brew install uv..."
131
+ brew install uv
85
132
  fi
86
133
 
87
134
  if command -v uv &> /dev/null; then
@@ -101,7 +148,11 @@ check_uv() {
101
148
  print_success "已将 \$HOME/.local/bin 写入 $_RC"
102
149
  fi
103
150
  else
104
- print_error "uv 安装失败,请手动安装: https://docs.astral.sh/uv/"
151
+ print_error "uv 安装失败,请手动安装,可选方式:"
152
+ print_info " pip3 install uv"
153
+ print_info " pip3 install uv -i https://pypi.tuna.tsinghua.edu.cn/simple/"
154
+ print_info " conda install -c conda-forge uv"
155
+ print_info " 详见: https://docs.astral.sh/uv/getting-started/installation/"
105
156
  exit 1
106
157
  fi
107
158
  }
@@ -487,6 +538,9 @@ ${YELLOW}快捷命令:${NC}
487
538
 
488
539
  详细使用说明请阅读 README.md
489
540
 
541
+ ${YELLOW}提示:${NC}请运行以下命令使 PATH 生效,或重新打开终端:
542
+ source ~/.bash_profile
543
+
490
544
  EOF
491
545
  }
492
546
 
@@ -505,6 +559,7 @@ main() {
505
559
  echo -e "${GREEN}━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━${NC}"
506
560
  echo ""
507
561
 
562
+ setup_path
508
563
  check_os
509
564
  check_uv
510
565
  check_tmux
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "remote-claude",
3
- "version": "0.1.2",
3
+ "version": "0.1.4",
4
4
  "description": "双端共享 Claude CLI 工具",
5
5
  "bin": {
6
6
  "remote-claude": "bin/remote-claude",