Skip to content

chore: tidy repo root + .gitignore to match OpenResearcher-style layout #202

Description

@reacher-z

Goal

Tidy the repo so a first-time visitor (and a fresh git clone) sees a clean,
purposeful layout — closer to TIGER-AI-Lab/OpenResearcher,
whose root is just README.md, pyproject.toml, .gitignore,
.env.template, a few top-level modules, and assets/ + scripts/ + utils/.

Our committed root is already reasonable, but a few things have crept in that
make the project look less polished than it is. None of this touches behavior —
it's pure hygiene.

Checklist

1. Stop tracking .env (priority)

.env is currently committed. It should never be in version control:

  • git rm --cached .env, commit a .env.template with keys only, no values
  • add .env to .gitignore
  • rotate any real credentials that were ever committed and purge the file from history (git filter-repo / BFG) — anything that lived in a public repo must be treated as compromised
  • document required env vars in the README / .env.template

2. Expand .gitignore so git status is clean on a fresh checkout

Right now a clone picks up a lot of scratch noise that isn't ignored. Add:

3. Put images in assets/

Mirror OpenResearcher's assets/ dir — move README/figure images there and
reference them via relative paths, instead of leaving screenshots loose.

4. Consolidate non-standard root docs into docs/

docs/ currently holds only v1-vs-v2.md. Move project-internal docs there to
slim the root:

  • AGENTS.mddocs/
  • CHANGELOG.mddocs/ (or keep at root — maintainer's call)
  • keep the GitHub-convention root files as-is: README.md, README.zh-CN.md, LICENSE, NOTICE, CITATION.cff, CONTRIBUTING.md

5. Collect loose scripts under scripts/

Match OpenResearcher's scripts/ + utils/ split — move stray top-level shell
/ analysis scripts into scripts/, leaving only the documented entrypoints
(run.sh) at root.

Acceptance

  • git status on a fresh clone is empty (no untracked cruft)
  • root tree is close to OpenResearcher's: README + standard files + src/ docs/ eval/ assets/ scripts/ tests/
  • no secrets tracked anywhere in history

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions