dev-manager-tauri/src-tauri/resources/onboarding/.agents/skills/lian-jing/SKILL.md
lanrtop 327f3d78ab feat(agent/access): 强化项目级运行态接入
MCP 改为 loopback 并绑定项目 scope,补齐越界拒绝、风险元数据和结构化状态。

新增分层 readiness、配置迁移与设置页投影;正式安装版可选择登录自启动,debug 与非安装路径明确拒绝。

Feature-Confirmed: true

Rules-Applied: R01,R06,R07,R08,R10,R12,R13
2026-09-23 03:21:38 +09:00

2.7 KiB
Raw Blame History

name description
lian-jing 读取炼境项目健康状态,并使用炼境 MCP 的项目管理、Gitea 与交付能力。

炼境项目技能

开始项目工作时,先读取根 AGENTS.md 与 .lian-jing/context.json 取得 project_id。.claude/liangjing.json 仅为旧项目的 Claude 兼容投影,不能作为长期身份来源。

如果当前客户端已发现 lian-jing MCP:

  1. scoped MCP 连接已由 URL 绑定当前 project_id,项目级调用可省略 project_id;若 server initialize 明确报告 legacy,迁移前才显式传入 canonical project_id,绝不传其他项目 ID。
  2. 优先调用 get_diagnostics,将其作为当前项目健康状态的事实来源。
  3. 在 Node/pnpm 项目运行包管理命令前调用 get_toolchain_status(project_id);ready_managed 时通过 mise exec -- pnpm ... 执行,其他状态先报告实际版本与 executable 证据。
  4. 只有用户明确确认本次下载安装后,才可调用 prepare_toolchain(project_id, confirmed=true);不得为适配客户端 bundled runtime 而修改项目版本或 lockfile。
  5. 交付、Gitea、CI、蓝图等平台状态优先通过 MCP 查询,不凭静态文档猜测。
  6. 合并 PR 前调用 get_delivery_status(project_id),向用户展示 PR 编号、完整 head SHA、CI 与 review。只有当前用户明确确认该 PR 与 SHA 后,才调用 merge_pull_request(project_id, pr_number, expected_head_sha, confirmed=true);合并后再次读取交付状态。不得自行推断确认。
  7. 生成 CI workflow 时先调用 plan_cicd_workflow(project_id, workflow_type),向用户展示目标文件、变更类型、content_digest、工具链来源与所需 secret 名称;只有用户明确确认这份摘要后,才以同一 digest 调用 apply_cicd_workflow(..., confirmed=true)。该流程只写项目 workflow,不配置 secret、不触发 CI 或部署;不得通过 MCP 传服务器地址、命令、路径或 secret 值,部署类配置先由用户在炼境 UI 保存。

如果 MCP 未出现,按以下顺序降级,不猜测状态:

  1. configured:读取 .codex/config.toml,确认 lian-jing 指向 http://127.0.0.1:<port>/mcp/projects/<canonical project_id>;缺失或 legacy 时通过炼境重新 inject_mcp,手工同名 server 不覆盖。
  2. reachable:配置正确后检查 loopback 服务;连接拒绝表示炼境未运行,先启动正式安装版并保持托盘进程。
  3. reload:服务可达但当前任务看不到工具时,新建 Codex 任务或重载客户端;不要反复改配置或复制凭证。
  4. 仍不可用时,明确报告停在哪一层,继续完成不依赖 MCP 的本地工作;不得伪造诊断、项目 ID、凭证或远端状态。