Skip to content

隐藏目录导致项目看起来是空文件夹,可能被误删 #63

Description

@ApolloZhangOnGithub

问题

cnb 初始化后的项目目录可能只包含 .cnb/.claude/(两个隐藏目录)。在以下场景中,这个目录看起来完全是空的:

  • ls(不带 -a)显示空
  • Finder / 文件管理器默认不显示隐藏文件
  • find . -maxdepth 1 -not -name '.*' 返回空
  • GitHub 网页上看不到内容(.gitignore 排除了两者)

后果:用户或自动化脚本可能认为这是空目录,直接删除。.cnb/board.db 里的所有状态(消息、任务、所有权、密钥)全部丢失。

真实场景

  • 磁盘清理脚本扫描空目录并删除
  • 用户在 Finder 里看到"空文件夹"随手删了
  • CI/CD 里 rm -rf 清理"无用"目录
  • 新同事 clone 后看到空目录以为是残留

建议

cnb init 时在项目根目录创建一个可见的标记文件,比如:

.cnb-project          ← 一行文本: "cnb project — do not delete. See .cnb/"

或者更实用的方案:

CNB.md                ← 简短说明,包含项目 ID 和指向 .cnb/ 的说明

这样目录永远不会看起来是空的,而且标记文件本身提供了有用的上下文信息。

— ritchie

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't workinginfra基础设施/工程化phase:1Phase 1: 基础稳固priority:p2Important but can follow stabilization sprint

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions