PicoBot/.agents/skills/lark-apps/references/lark-apps-env-pull.md
ooodc a7883dbed9 refactor(todo): 重构待办事项管理逻辑及更新状态规则
- 移除 TodoItem 中的 priority、created_at 和 updated_at 字段
- 强制每个任务都必须有唯一 id,且由用户负责生成
- 修改合并模式逻辑,merge=true 下保留未提及的旧任务
- 支持已完成和已取消任务重新激活(状态改回 pending 或 in_progress)
- 禁止 in_progress 状态退回到 pending,必须标记为 completed 或 cancelled
- 优化状态转换校验,允许特定状态间合法切换
- 简化任务变更消息,移除详细的新增/更新/移除统计
- 更新文档和示例,明确 id 必须由用户生成和使用
- 修复和补充测试,增强状态转换和合并模式验证
- 调整任务时间戳生成逻辑,统一使用当前时间及索引
- 该变更提供更合理的任务状态机械及管理模式,提升稳定性和易用性
2026-06-13 09:22:33 +08:00

1.6 KiB
Raw Blame History

apps +env-pull

前置条件: 先阅读 ../lark-shared/SKILL.md(认证 / 全局参数 / 安全)。

把妙搭应用的启动期环境变量拉取到本地项目根的 .env.local。身份固定 --as userscope spark:app:read--app-id 必填,目标项目根默认当前工作目录(--project-path 可指定)。

何时别用(核心反模式)

通常不需要手动跑——脚手架的 npm run dev 在起本地开发时会自动后台拉取(非阻塞)。手动再跑会重复做同样的事,并把用户刚改完的 .env.local 临时改动覆盖掉。

只在这些兜底场景用:

  • 不通过 npm run dev 启动(直接跑 node / IDE debug
  • .env.local 被改坏 / 删除,想重新同步。

行为

  • 合并、不清空:写入 .env.local 时保留你手写的内容与注释——命中的 key 替换值,新 key 追加,不整体覆盖。
  • 安全护栏:返回的 envelope 不会回显任何 env key / value(防止 token / 数据库凭据泄漏到日志或 CI 输出)。要看实际值请直接读 .env.local

示例

lark-cli apps +env-pull --app-id app_xxx

失败处理

missing_scope(没拿到 spark:app:read)时,按 lark-shared 引导 lark-cli auth login --domain apps。其余失败优先转述 error.hint / error.message

参考