- 922b15d:
lanhu auth listen新增油猴脚本放行通道:除Origin: chrome-extension://(浏览器扩展)外,携带非空x-lanhu-bridge请求头的请求也被接受(配套ecosystem/lanhu-monkey)。安全模型不变——网页无法伪造扩展 Origin,也无法在不触发 CORS preflight 的情况下携带自定义头,preflight 不会放行。监听提示与超时文案相应更新为「浏览器扩展 / 油猴脚本」。
- 18852e5: 新增
lanhu auth listen:从浏览器扩展一次性接收蓝湖 Cookie 并写入用户级配置(0600)。仅监听 127.0.0.1,只接受chrome-extension://来源,收到一次或超时后退出;超时 → exit 3(TOKEN_MISSING),端口被占用 → exit 7(IO_WRITE_FAILED),--port/--timeout非法 → exit 2(USAGE_ERROR)。
-
728da85:
lanhu doctor新增--out-dir <path>:输出目录检查改为探测用户实际要用的目录(缺省仍检查默认的<cwd>/.lanhu.local),已存在的目录检查可写、不存在的目录验证可创建(探测后自动清理)。core:
meta的projectName在/api/project/image响应缺失project_name时,轻量回退到项目列表(multi_info,img_limit=1)顶层name补齐;回退失败只会让projectName缺省,不影响meta本身成功。
-
efae2c2:
lanhu auth set交互体验优化与修复:- 修复交互提示词被擦除的 bug:旧
promptHidden基于 readline(terminal:true),其内部刷新会发出ESC[1G ESC[0J把已打印的提示整行清掉,导致终端里"没有提示词"。改为 raw-mode stdin 手工隐藏输入(回车/Ctrl-D 提交、Ctrl-C 退出、退格可修正,不回显)。 - 交互前打印获取 Cookie 的分步引导 + 图文教程链接(https://lanhu.refineup.com/guide/get-lanhu-token);已配置 token 时显示来源 + 掩码指纹并提示将覆盖。
- 读到输入后回显掩码指纹确认粘贴成功;空输入或不含
=的输入交互式重试(最多 3 次)。 - 自动清洗粘贴杂质:
Cookie:前缀与包裹引号(stdin 模式同样生效)。 - TTY 下(无管道)传
--token-stdin/--dds-token-stdin不再静默挂起,回落为交互隐藏输入,只提示对应 token。
- 修复交互提示词被擦除的 bug:旧
-
Updated dependencies [728da85]
- @lanhu-context/core@0.3.2
-
d3bcbdc: refactor: MCP server 从 CLI 拆出,@lanhu-context/mcp 自带 bin
@lanhu-context/mcp新增 binlanhu-context-mcp(npx -y @lanhu-context/mcp --stdio|--http):flags 覆盖 transport(--stdio/--http/--host/--port)、工具行为(--mode/--out-dir/--compat-strict/--lang/--tailwind/--tw-version/--skip-slices/--unit-scale/--assets-dir)与凭据(env LANHU_TOKEN/DDS_TOKEN > --env-file > /.env.local);USAGE_ERROR exit 2、TOKEN_MISSING exit 4。@lanhu-context/cli移除lanhu mcp子命令与对@lanhu-context/mcp的依赖——安装 CLI 不再拉取 MCP SDK 依赖链;MCP 场景改用lanhu-context-mcp启动。
- 8b3a2d0: docs: 为三个包新增 npm README(安装、命令/能力概览、MCP 客户端配置与上游迁移说明)
- Updated dependencies [8b3a2d0]
- @lanhu-context/core@0.3.1
- @lanhu-context/mcp@0.2.1
-
0a13f87: feat: M4 MCP 兼容层 ——
@lanhu-context/mcp首发与lanhu mcp命令- 新包
@lanhu-context/mcp:注册工具get_design_context,对外契约与上游 lanhu-context-mcp 完全一致(入参{url}、inline/files 两种 mode、 resource_link 返回、isError + STOP 错误文本);导出createServer/startServer(stdio + streamable HTTP 两种 transport)。 - 行为差异(DESIGN.md §9):degraded 阶段失败(tokens/preview/Tailwind 回退)
默认不再整体报错,在返回文本末尾附
warnings:段;compatStrict选项恢复 上游"任一失败全停"语义。 - CLI 新增
lanhu mcp命令:--stdio(默认)/--http/--host/--port/--mode <inline|files>/--out-dir/--compat-strict,复用全局凭据与 transform flags;stdio 模式 stdout 只承载 JSON-RPC 帧,日志走 stderr。
- 新包
-
4e1ad0e: M3 全命令与幂等下载。
@lanhu-context/core:新增并发幂等切图下载器downloadAssets(worker pool 默认并发 4,内容 hash 三态 written/skipped/overwritten,单张失败逐条记录、stopOnError首败即停),导出writeFileIdempotent;Design Tokens 重构为结构化条目extractDesignTokenEntries+ CSS variables 格式化formatDesignTokensCss(:root { --var },legacy 文本输出保持不变);getDesignMeta附带 versions 摘要(count / latestHasSketchJson);新增 degraded 错误码ASSET_DOWNLOAD_FAILED;新增 fatal 错误码TRANSCODE_NOT_ENABLED(exit 4)——设计稿上传时未开启「设计图转代码」时 DDS 返回 HTTP 200 + 空 data(业务码 10011 版本数据不存在),不再笼统归为EMPTY_RESULT,hint 引导重新上传并勾选「设计图转代码」。@lanhu-context/cli:补齐全命令meta(元数据报告)/tokens(--format json|css产物流,提取不到时空结果 + degraded 警告)/assets(映射 JSON;--download并发幂等下载、--concurrency、-o <dir>、--dry-run、--force、--strict首败即停)/preview(-o <file>幂等落盘 + 报告,-o -直出 PNG 二进制,--json必须配-o <file>,预览缺失为 degraded)/auth set|status|test(用户级配置 0600、隐藏回显 /--token-stdin、来源 + 掩码指纹、活性检测)/doctor(六项自检报告,失败按主导类别退出)。配置链扩展为 flag > env > env 文件 > lanhu.config.json(项目级)> 用户级 config.json(XDG:$XDG_CONFIG_HOME > ~/.config > %APPDATA%)> 默认值。
- Updated dependencies [0a13f87]
- Updated dependencies [4e1ad0e]
- @lanhu-context/mcp@0.2.0
- @lanhu-context/core@0.3.0
-
5a1a191: M1+M2 初始实现。
@lanhu-context/core(M1):从上游 lanhu-context-mcp 平移 url/api/transform/pipeline 数据链路(axios→ofetch),新增errors.ts分级严重性模型(code → exitClass/severity/retryable/hint)、retry.ts指数退避重试(仅 retryable 错误)、HTTP 4xx 认证类拒绝分类(401/403/404/418 → exit 4 不重试,5xx/408/429 → exit 5 可重试)。lanhu-context-cli(M2):citty CLI 骨架,双 binlanhu/lanhu-context,四命令parse/schema/html(-支持 stdin 离线转换)/context(--inline/--out-dir/--force)。全局 flags(token/timeout/retries/env-file/cwd/json/quiet/verbose/no-color/strict/lang 等)、§5 输出契约(stdout 只放数据/产物、报告类无 TTY 自动--json、产物流原样直出、失败 envelope 走 stdout + 非零退出码)、§6 退出码 0-9 由LanhuError.exitClass驱动、flag > env > env 文件 > 默认值的配置层。
- Updated dependencies [5a1a191]
- @lanhu-context/core@0.2.0