5 Commits

Author SHA1 Message Date
zeyu.fz 46d8474ec1 feat(kscli): 新增 Knowledge Studio CLI 轻量级 RAG 命令行工具
- 用于阿里云 Model Studio 的知识库检索,支持 RAG(检索增强生成)场景
- 提供配置查看与设置、知识库检索、自更新功能
- 替换原 rag 子包,移除 rag 相关代码及配置
- 新增独立 package,包含完整的构建、启动和发布配置
- 添加详细的中英文 README 文档说明安装、使用与认证方式
- 配置 TypeScript 和 Vite 构建支持,确保开发体验和构建质量
- 更新根 package.json 脚本,将 rag dev 命令替换为 kscli dev
- 新增 Git 忽略文件,排除日志、构建输出等无关文件
2026-06-25 15:08:35 +08:00
若麒 d971a04fb8 refactor(cli): split into runtime / commands packages for composable CLIs
Decompose the monolithic `cli` package into three layers so multiple
products can be assembled from a shared base:

- bailian-cli-runtime: framework infra (createCli, registry, args,
  output, pipeline, utils) — product-agnostic
- bailian-cli-commands: command library, grouped (base/knowledge/text/
  media/memory/misc) so each product picks the sets it needs
- packages/cli (bl): full command set; packages/rag (rag): base +
  knowledge only

Product identity (binName / clientName / npmPackage) is injected at the
createCli boundary and required there, with no per-consumer defaults.
2026-06-23 17:51:14 +08:00
若麒 8a0de83c24 fix: honor HTTP_PROXY / HTTPS_PROXY / NO_PROXY env vars (#35)
Node's built-in fetch (undici) ignores proxy environment variables, so
bl always connected directly and failed with ECONNRESET behind a VPN or
corporate proxy. Install an EnvHttpProxyAgent as the global dispatcher at
startup, but only when a proxy variable is actually set — behavior is
unchanged otherwise. Lowercase variables take precedence over uppercase
(curl convention) and NO_PROXY is honored.

Values are trimmed and passed explicitly to work around undici reading
env vars with ??, where an empty lowercase variable (https_proxy="")
masks a configured uppercase one. Invalid proxy URLs fail with a clear
usage error instead of a stack trace, and the ECONNRESET hint now
suggests exporting HTTPS_PROXY.

Tests are fully offline and need no credentials: unit tests cover env
parsing, and the e2e test runs a minimal probe (setupProxyFromEnv + a
bare fetch) against a .invalid host through a local CONNECT proxy to
verify traffic routes through the proxy, NO_PROXY is honored, no
dispatcher is installed when unset, and invalid values error clearly.
2026-06-12 14:53:22 +08:00
故璃 a767bee41e feat: model recommend beta version 2026-06-05 13:56:24 +08:00
若麒 1533e2013e Initial commit 2026-05-28 18:37:07 +08:00