# What a bench release ships — the whole list, one place. release.sh
# builds the artifact from it; update.sh reads the copy of this file
# inside the downloaded artifact to know which top-level files to
# replace; the artifact test asserts the tarball matches it exactly.
#
# One entry per line, `<class> <path>`:
#
#   copy <file>   core-owned file from the repo — shipped, and replaced
#                 by every update
#   tree <dir>    directory shipped recursively from the repo, replaced
#                 WHOLESALE by every update (__pycache__/.DS_Store
#                 excluded at build)
#   once <file>   shipped from the repo on install, then yours — updates
#                 never touch it
#   keep <dir>    shipped as an empty directory holding a .gitkeep —
#                 updates never touch it
#   seed <file>   starter content generated by release.sh (never present
#                 in bench's own repo, which has its real one) — updates
#                 never touch it
#
# Anything not listed here does not ship: bench's own task cards, its
# manager/local/ content, local/state/, .claude/, tests/, release.sh.
copy AGENTS.md
copy CLAUDE.md
copy README.md
copy LICENSE
copy install.py
copy start.sh
copy stop.sh
copy update.sh
tree manager/core
once .gitignore
once tasks/task-template.md
keep tasks/backlog
keep tasks/to-do
keep tasks/in-progress
keep tasks/review
keep tasks/done
keep tasks/archive
keep plans
keep reference
keep manager/local/adapters
keep manager/local/commands
keep manager/local/driver
keep manager/local/prompts
seed manager/local/AGENTS.md
seed manager/local/CLAUDE.md
