CodeGym 安装程序会请求管理员权限,并在电脑上安装十来个程序。这时候心存戒备很正常,也是对的。任何爱惜自己电脑的人都有权问一句:这个程序到底打算对我的电脑做什么?
这篇文章会完整、不加粉饰地回答这个问题。装了什么、放在哪里、哪些东西我们不碰、会收集哪些数据,以及怎样把这一切撤销。
如果您不想用安装程序,那就不用。没有它也能学完这门课程:需要的一切,讲座里都有手动安装的分步说明。安装程序只是帮您省掉这些重复劳动。
1. 为什么需要它
这门课程要用到不少工具:Claude Code 本身、开发环境、编程语言、构建工具。每个工具的安装方式都不一样,各有各的设置,其中一部分还得互相关联起来并完成登录。
全部手动来一遍当然可以,但这要花好几个小时,过程中很容易出错,之后还得花很长时间排查为什么启动不了。安装程序运行一次就能做完同样的事。枯燥,但结果可以预期。
2. 会安装哪些东西
下面是电脑上会多出来的全部内容。
Claude Code 和语音输入
Claude Code CLI - 课程的主要工具,也就是 AI 智能体本身。它通过 Anthropic 的官方安装程序从 claude.ai 安装,始终是最新版本。
Handy - 语音识别工具。有了它,您可以直接用语音向智能体口述任务,不必打字。同时还会下载语音识别模型 Parakeet V3(约 456 MB),这个模型在您的电脑本地运行,不需要联网。
两个 Claude Code 插件 - 来自 Anthropic 官方插件市场的 superpowers 和 frontend-design。
开发环境
IntelliJ IDEA - 课程的主要开发环境。同时安装三个插件:Python 支持、CodeGym 插件(用于提交任务解答,交给平台检查)和 Claude Code 插件(直接在开发环境里显示智能体面板)。
Visual Studio Code - 第二个开发环境,一并安装,供您按喜好选用。它配有同一套插件中的两个:CodeGym(测试版)和官方的 Claude Code 扩展。
编程语言和工具
- Node.js 24 - 课程项目和结果检查都在它上面运行。
- Python 3.14 - 用于脚本和一部分任务。
- Java 25 (Eclipse Temurin) - CodeGym 平台的基础。
- Gradle 9.5.1 - 用来构建 Java 项目。
- Git - 保存项目历史,课程后面会用到。在 Windows 上会一并安装 Git Bash。
设置与登录
一个用于访问课程 AI 服务器的设置文件、CodeGym 插件的设置,以及 Claude Code 的课程配置(profile):智能体的工作规则、辅助技巧,还有游戏和网页项目的模板。这些都已经为您填好了,不需要输入密钥,也不需要登录。
不同系统的差异
在 macOS 上,如果您没有安装 Homebrew(包管理器),安装程序会把它也装上,因为 Git、Python 和 VS Code 都是通过它安装的。
在 Linux 上,会添加 Node.js、Python 和 Microsoft(用于 VS Code)的软件源。在 Debian 上 Python 3.14 装不上,安装程序会在报告里如实告诉您,这时需要您手动安装。
3. 东西都放在哪里
安装程序不会把文件撒得满系统都是。所有东西都放在可预期的位置,以后想看看什么装到了哪里,不用翻箱倒柜就能找到。
程序
| 系统 | 安装位置 |
|---|---|
| Windows | Program Files, C:\Gradle |
| macOS | /Applications, /opt |
| Linux | /opt |
主文件夹里的三个目录
.claude-codegym - Claude Code 的课程配置:设置、智能体的工作规则、辅助技巧。
.codegym - 登录 CodeGym 插件所需的设置,以及两个启动命令(下文详述)。
.codegym-backups - 被安装程序修改过的文件的备份,外加一份变更日志。保留最近 10 次运行或最近 30 天的内容。
另外:Claude Code 本身安装在 ~/.local/bin,语音识别模型则放在 Handy 的数据文件夹里。
系统设置里会改动什么
PATH 环境变量 - 这样课程命令才能在终端里运行。在 Windows 上改的是注册表,在 macOS 上改的是 .zprofile 文件,在 Linux 上改的是 /etc/profile.d/codegym.sh 和 .profile。
在 macOS 和 Linux 上,我们添加的行都包在 # CODEGYM START 和 # CODEGYM END 这两个标记之间。一眼就能看到,撤销时也只会删掉这几行,不会碰您自己的设置。
Windows 注册表 - 只写三项,仅此而已:Gradle 的路径、课程命令的路径,以及已接受 IntelliJ IDEA 许可协议的记录。
4. 两个命令:claude 和 claude-native
这是一个值得提前了解的重要细节。
课程有自己的一套 Claude Code 设置:连接课程服务器、智能体的工作规则、课程里的角色。这些不能和您个人的设置混在一起,所以我们把两者分开了。
claude - 使用课程配置启动 Claude Code。学习课程时用的就是它。
claude-native - 启动您个人的 Claude Code,就好像我们根本不在这里一样。用的是您自己的设置、您自己的账号。
它的原理是这样的:两个命令都是 .codegym/bin 文件夹里的小脚本,启动的是同一个真正的 Claude Code,只是给它指定了不同的设置文件夹。我自己两个都常备着:学习课程时用课程版,其他事情用我自己的。
安装程序不会读取、修改或删除您个人的 Claude Code 配置。如果您原来就有,它会原封不动地保留下来。
还有一点实际操作上的提醒:这两个命令只在新的终端窗口里才能用。如果安装刚结束就在之前已经打开的窗口里输入 claude,那个窗口还不知道这些命令,重新打开一个窗口就行。
5. 我们不做什么
这大概是最重要的一节。安装程序遵循"不造成损害"的原则编写,由此有了下面这些做法。
不删除、不覆盖您已经装好的东西。如果电脑上已有其他版本的 Java、Python、Node 或 Git,它们都会原样保留。课程用的版本会另外安装,与它们并存。
不碰版本管理器。如果您用的是 nvm、pyenv、sdkman 或 asdf,安装程序不会动它们,只会在报告里提醒您,它另外装了一个版本。把您自己的 pyenv 弄坏,是我们最不想做的事。
已经是所需版本的,不重新安装。再运行一次也不会弄坏已安装的内容:安装程序会逐个检查每个工具,已经就绪的就跳过。
不碰不是我们装的 IntelliJ IDEA。如果您的 IDEA 来自 JetBrains Toolbox,我们不会动它,而是为课程另装一个,并告诉您这件事。
不覆盖您之前的授权和选择。如果您已经接受过 IDEA 的许可协议,或者设置过是否发送使用统计,这些设置仍然按您的决定保留。
不插手开机启动、系统服务和系统策略。安装程序不会把自己加入开机启动,不创建服务和计划任务,不安装证书,也不碰防火墙、hosts 和 DNS。
不扩大 AI 智能体的权限。课程配置不会解除 Claude Code 的任何限制:智能体按常规的安全设置运行,和平时一样会先征求您的许可。
6. 会收集哪些数据
您的个人密钥
下载时,压缩包里会写入一个与您的账户绑定的个人访问密钥。CodeGym 插件和 Claude Code 插件就是靠它自动登录账户的,所以您才不用手动输入任何密钥。它不会出现在日志里:屏蔽密码的那个过滤器同样会把它屏蔽掉。也正因为有它,压缩包不宜转给别人。
安装日志
安装过程中会记录一份详细日志:执行了哪些步骤,电脑上原本已经装了什么,哪些成功了,哪些没有。这份日志留在您自己的磁盘上。不会发送到任何地方。
如果出了问题,要不要把它发给我们,由您决定,也由您自己来发。它的位置:在 Windows 上是临时文件夹(%TEMP%\codegym-install.log),在 macOS 和 Linux 上是安装程序旁边的 install.log 文件。
密码和密钥不会进入日志:每一行在写入之前都要经过一个过滤器,令牌和密码会被替换成 [SECRET] 标记。您的设置文件内容也不会写进去,只记录设置项的名称。
如果将来加入自动发送错误报告的功能,我们会提前告知,并提供关闭它的方法。
学习会话日志
这是另一回事,需要直接说清楚。
Claude Code 的课程配置里开启了工作日志。当您做课程任务时,项目文件夹里会生成 .codegym/cc-transcript.txt 文件,记录整个工作过程:您向智能体提出的请求、智能体回复的开头部分、智能体改了哪些文件、运行了哪些命令。
为什么需要它:平台根据这份日志检查任务的解答。它就像您的"解题过程记录本",不仅能看到结果,还能看到您是怎么一步步得出结果的。听起来让人有点不安,我理解。但没有这份日志,平台只能看到最后的成品。
需要了解的几点:
- 日志就放在您的项目文件夹里,您可以打开来看;
- 它不会自己发送到任何地方 - 负责记录日志的那些文件里,没有一处访问网络的代码;
- 日志里的密码和密钥会像安装日志一样被屏蔽;
- 只有在课程配置下才会记录。用
claude-native启动,就不会写日志。
与 AI 的交互经过哪台服务器
还有一个事实,与其避而不谈,不如坦白说出来。
课程中的 AI 访问费用由 CodeGym 承担,访问经由我们的服务器 llm.codegym.cc 进行。这意味着发给模型的请求和模型的回复,在物理上都会经过 CodeGym 的基础设施。
面向学员的免费访问就是这样实现的。如果您需要直接用自己的个人账号工作,claude-native 命令正是为此准备的。
7. 如何检查,如何撤销
您不必光凭这篇文章的一面之词就相信。安装程序有几种模式,可以让您事先查看,事后回滚。
只看不装
--dry-run 参数(在 Windows 上是 -DryRun)会让安装程序以"仅显示"模式运行。它会列出假如真正执行将会做的全部操作(下载哪些文件、放到哪里、往 PATH 里添加什么),然后什么都不装就退出。
实话实说,这个模式并不能算完全"什么都不碰"。它会覆盖上一次运行留下的日志文件,创建自己要用的工作文件夹,并清理过期的备份。不过不会安装任何程序,设置和 PATH 也不会改变。
不改 PATH
--minimal 参数(在 Windows 上是 -Minimal)会安装所有程序,但不把路径写进系统设置,而是把需要添加的那几行打印出来,由您自己添加。这个模式适合那些已经按自己习惯把环境调好的人(如果拿不准自己是否需要,那就是不需要)。
在 Windows 上,这个模式目前还没有完全做好:课程命令的路径仍然会被添加到用户 PATH 中。这个改动可以撤销,但这个参数暂时还没有完全做到它承诺的效果。我们知道这个问题,会修复的。
撤销改动
--rollback 参数(在 Windows 上是 -Rollback)会还原安装程序改过的设置:PATH、shell 的 profile 文件、设置文件、注册表项。每一处改动都会记入操作日志,回滚严格按照这份日志进行。
还有一层额外保护:如果您在安装之后修改过某个文件,回滚不会碰它,而是提示您,并告诉您备份放在哪里。
回滚不做的事:它不会卸载已安装的程序。IntelliJ IDEA、Java、Node 等都会留在原处。安装程序会列出这些程序,并附上现成的卸载命令,删不删、删哪些,由您决定。
还有一个细节也要坦白:在 Windows 上,Java、Node 和 Python 的安装程序会自行添加各自的路径,绕过我们的操作日志。这些项回滚是还原不了的。
在 Windows 上,安装程序会在安装结束时直接打印出现成的回滚命令。运行方法如下:
- 以管理员身份打开 PowerShell:右键单击 PowerShell 图标,然后选择"以管理员身份运行"。
- 进入安装程序所在的文件夹。
- 执行以下命令:
powershell -NoProfile -ExecutionPolicy Bypass -File .\resources\Windows_install.ps1 -Rollback查看做了哪些事
运行结束时,安装程序会输出一份报告:步骤列表,每一步都有状态,即完成、跳过、警告、错误或"请手动完成"。失败不会被隐瞒:如果某样东西没装上,报告会直接写明,并给出原因。
安装程序自己没能完成的所有事项,都会汇总到单独的"手动收尾"部分,并附上具体命令。
8. 需要您亲手做的事
有些事情从根本上就没法自动化。
给 Handy 授权。首次运行时,系统会请求麦克风访问权限(在 macOS 上还要"辅助功能"权限)。不授权的话,语音输入就用不了。权限只能由人来授予,任何程序都无法替您完成。
IntelliJ IDEA 首次启动时可能弹出的窗口。安装程序会预先接受许可协议,但如果许可协议窗口还是弹了出来,请接受它。
9. 常见问题
安装需要多长时间?
20-40 分钟,需要下载大约 1 GB。大部分时间花在 IntelliJ IDEA 和语音识别模型上。
为什么需要管理员权限?
程序要安装到系统文件夹(Program Files、/opt、/Applications),没有管理员权限就写不进去。而设置和课程配置会放在您的用户文件夹里,仍然归您所有。
可以运行两次安装程序吗?
可以,什么都不会坏。已安装的内容会被跳过。另外还有防止意外重复启动的保护:第二个实例发现安装已经在进行,就会直接关闭。
我的 Claude Code 设置会怎么样?
不会怎么样。课程配置放在单独的文件夹里,您个人的配置既不会被读取,也不会被修改。个人使用时有 claude-native 命令。
运行时系统弹出警告。这正常吗?
正常。操作系统对任何从网上下载的程序都是这样的反应,而我们的安装程序暂时还没有代码签名证书。在 Windows 上,点击"更多信息",再点击"仍要运行"。在 macOS 上,如果系统提示无法验证开发者,请右键点击该文件,选择"打开",然后再确认一次。
安装程序会去掉文件上"从网上下载"的标记。为什么?
否则系统会阻止其中附带的文件运行,安装就会中途中断。在 Windows 上,这一步针对的是解压出来的文件夹;在 macOS 上,则是为同一个文件夹解除 Gatekeeper 隔离。标记只会从安装程序自己的文件上去掉,您的其他文件,安装程序一概不碰。
为什么不能把压缩包转给别人?
里面有您个人的登录信息。拿到压缩包的人就能以您的账户身份使用平台。下载链接可以分享,每个人都会拿到属于自己的压缩包。
出问题了,怎么办?
看看最后的报告和 install.log 文件,里面能看出是哪一步出了问题、原因是什么。如果还是看不明白,请把这个文件发给技术支持。这是常规做法,不是万不得已的办法。
10. 如果您不想一次装齐
安装程序不是课程的必经步骤,而是节省时间的一种方式。它做的每件事,讲座里都有分步讲解:Claude Code 一条命令就能装好,设置只需复制一个文件。
其余工具可以等用到时再添加,到那时您也会明白它们是做什么用的。这样记起来,也比一口气看完一份十行清单更牢。
GO TO FULL VERSION