轻码
一个最小代理编码助理,从本地节点服务器向您的浏览器服务.
同名探员 轻码 VS 码扩展, (中文(简体) ), 相同的配置格式,不需要编辑器 .
npx @chosengeneration/light-code
启动服务器 127.0.0.1,打开您的浏览器,并在当前文件夹中工作.
npx @chosengeneration/light-code --workspace /path/to/repo
npx @chosengeneration/light-code --port 7100 --no-open
npx @chosengeneration/light-code --help
机器上没有需要的注册?
light-code --export-pkg light-code-pkg # then: node light-code-pkg
light-code --export-code light-code-src # the source, to work on it there
第一个将运行的捆绑作为单一文件写出副本. 随心所欲
节点和运行它 - 不 npm install,没有 node_modules,没有网络。 第二个写出
源此创建自, 包含锁定文件 。 见
操作指南
或者说 light-code --guide。 。 。 .
设置它
对于笔记本电脑,上面的命令是整个设置:打开浏览器,在 设置 – 供应商,开始打字。 其余部分是给服务器的,在 命令棋子实际上彼此依赖.
1. 检查旗帜
服务器所研究的关于它的环境的一切在它开始的时候都会被打印出来,它是 值得一读,这是你能得到的最便宜的诊断.
Light Code 0.44.0
workspace /srv/work
data /home/svc/.local/share/light-code
listening http://127.0.0.1:7100
proxy HTTPS_PROXY=http://proxy.corp:3128, NO_PROXY=.corp.internal
user identity from whoami.py — emp0042
secrets creds.py — values stored as tool:<name> are fetched from it
2. 如果你的外出通过代理
无可配置 : HTTPS_PROXY, (中文(简体) ), HTTP_PROXY, (中文(简体) ), ALL_PROXY 财务报告和审定财务报表 NO_PROXY 他们是受优待的,
有卷曲规则 NO_PROXY 和回转从不代理。 横幅显示路线.
这比听起来更重要 节点的 HTTP 堆栈 没有 读取这些变量
默认, 因此一个服务器, 其所有其他程序都可以到达网关
坐在那里——一个代理网络放弃了直接连接而不是拒绝连接,a
空出连接等待操作系统,需要几分钟。 如果你曾经
看到一个旋转器 从来没有解决 curl 工作很好,就是这样.
3. 告知用户是谁(可选)
默认情况下,本地服务器有一个用户,并且将所有文件保存在一个目录下。 狦 环境有一个库,知道谁登录,写一个函数:
# whoami.py
def run():
return "emp0042"
light-code --identity-tool whoami.py --identity-python python3
设置、 秘密和任务历史将按它返回的任何内容归档 。 它运行一次 启动, 在任何会话之前, 如果失败, 服务器仍会启动, 横幅显示 为什么 —— 这些功能会到达并非总在上层的库, 以及不会在上层的服务器 回来比回来解释更糟糕.
它必须返回非空字符串 . None 被拒绝,而不是变成一个用户
None,而任何关于导入的库打印都会被忽略,而不是被误认为
答话.
4. 说明全权证书来自何处(可选)
相同的形状, 名称 :
# creds.py
def run(name):
entry = corporate_vault.lookup(name)
return {"username": entry.user, "password": entry.secret}
light-code --credential-tool creds.py
现在,无论哪里 光码要求一个秘密,存储字符串 tool:<name> 代替
隐藏本身 :
| 您输入 | 它会获取 |
|---|---|
tool:gateway | 整个值,或 password编号 :secret编号 :token编号 :value编号 :key 从命令 |
tool:opensearch#username | 准确的字段 |
tool:opensearch#password | 准确的字段 |
秘密档案中只有 名称 东西去要求。 获取值 当它们被使用和缓存几秒钟, 所以旋转一个在你的金库里到达 下一个请求,这里没有 任何被清除.
助理不能调用此功能 . 它是一个秘密的来源,只有 已经允许解决一个问题的代码——这个模型可以使用的工具将您放在 密码在笔录.
5. 增加一个提供者
设置 – 供应商. 任何OpenAI相容,Anthropic或双子座端点. 几个名字 剖面图,可以从作曲家切换. 公司的共同-TLS和客户证书认证 网关和a 测试连接 按钮 哪个 步骤失败——证书, 符号,或列出模型.
如果您配置了证书函数,请设置 tool:<name> 在 API 键字段中.
6. 可选额外项目
- 专家 - 设置您的一个简介作为第二个意见 助理可以就硬咨询 问题 您所配置的任何模型; 没有要安装的 .
- 搜索 用于编码库索引的 OpenSearch、Qdrant 或 Chroma 连接 文档.
- Python 工具 - 默认关闭。 在启用前,请先阅读项目CLAUDE.md的第13节: 它使 机构 工具模型编写.
- 一个 Jupyter 内核 开始
--jupyter-kernel $(python -c "from ipykernel import get_connection_file; print(get_connection_file())")从笔记本里面, Python 工具运行 内核: 他们通过一个session下诏. 这个 笔记本上写着它自己的内核 因为除了内核之外 没有任何东西能分辨出它要问的是什么. 见指南(light-code --guide关于细节.
它会做什么
一个带有小套代理工具的聊天UI,没有其他工具:
- 阅读和搜索 —— 说
read_file, (中文(简体) ),list_files, (中文(简体) ),search_files(卢比支持) - 编辑 —— 说
write_to_file财务报告和审定财务报表apply_diff,在任何东西前显示一个计算 diff 写入 - 运行命令 一个真正的贝壳,一个一个批准
- MCP工具 —— stdio和Streamable HTTP服务器,每个工具可单独切换
- 问一个更强大的模型 ——可选;查询您配置的提供者配置
它不会做的
没有遥测、更新检查、没有远程资产 无默认终点 - 新鲜的 在配置提供者之前,不安装任何联系人。 每一个主机,它曾经交谈过 是一个 你输入.
没错 没有 沙盒 它运行的代码。 壳牌命令、MCP服务器和任何其他 代理执行指令时使用权限运行, 就像您输入过一样 他们。 批准门是车型和机器之间的东西,没有 第二层后面.
Excel和Outlook集成——包括编组带有附件并嵌入的邮件
图像,它显示你而不是发送—— 和索引邮件搜索,需要 视窗和
您自己的桌面。它们附加在您会话中已经运行的应用程序上, 因此运行此程序用于
在Windows上,你得到了所有三个, 正是在扩展。 开始于 --server
他们缺席:服务账户没有通往任何人桌面的路线,邮箱属于
程序运行为:.
警卫
Loopback 不是一个安全边界——任何您打开的页面都可以发送请求到
127.0.0.1。因此,会话得到适当的保护:
- 绑在字面上
127.0.0.1永远localhost - URL 片段中的单用途发射令牌,交换一个仅会话令牌
曾经在一次
Authorization头-从不吃饼干,这是中国证监会利用的 Origin财务报告和审定财务报表Host在每次请求中分别检查CSRF和DNS重新绑定- 一个严格的CSP
connect-src 'self'财务报告和审定财务报表img-src 'self' data:停止模型输出 通过图像 URL 过滤屏幕
配置、秘密和历史在您的 OS 应用程序数据目录下直播,每个用户. 机密存储在一个只拥有者的文件,而不是OS密钥链中 ——扩展得到 DPAPI/Keychain通过VS代码,没有本地模块的服务器不具有等同性,以及 uI说哪个后端是活跃的 而不是更强大的 证书 函数(步骤4)完全避免了问题,因为没有存储.
为团队主办
可能,而身份接合是构建的——但 读取 文件/东道主,md 先说. 代理运行命令为 服务账户,所以单签给你 归属和每个用户存储,但不是特权隔离。 直到有一个OS账户 或每个会话的容器,只有在每个用户都处于 已信任其他用户所能达到的一切.
许可证
麻省理工学院.