Files
paper_db/paper_db_common/README.org
T
2026-07-30 10:51:43 +09:00

76 lines
2.0 KiB
Org Mode

#+TITLE: paper_db_common
* 概要
複数分野の論文データベースで共有するコード一式である。
各DBプロジェクトは任意の場所に配置できる。
共通側には次を置く。
#+begin_example
paper_db_common/
├── CLAUDE.md
├── new_project.py
├── paperdb_config.py
├── project_loader.py
├── publish.py
├── scripts/
└── templates/
#+end_example
各DB側には分野固有の設定とデータだけを置く。
#+begin_example
wglass_db/
├── config.py
├── papers.db
├── papers.org
├── papers.publish.db
├── logs/
└── tmp/
#+end_example
各DB側に =CLAUDE.md= は不要である。
=run_ai.py= が共通側の =CLAUDE.md= を読み込み、
分野固有の条件は =config.py= からプロンプトへ追加する。
* 新規DBの作成
#+begin_src sh
/path/to/paper_db_common/new_project.py /path/to/new_db
#+end_src
既存の空でないディレクトリへ作成する場合だけ
=--force= を指定する。
* 実行モード
=publish.py= は実行モードの指定を必須とする。
- =process= :: PDF抽出、AI解析、JSON登録によるDB更新
- =sync= :: PDFパス更新、DB検証、papers.org出力
- =publish= :: PDF同期、公開用DB作成、リモート反映
- =all= :: process、sync、publishを順番に実行
#+begin_src sh
cd /path/to/new_db
/path/to/paper_db_common/publish.py process
/path/to/paper_db_common/publish.py sync
/path/to/paper_db_common/publish.py publish
/path/to/paper_db_common/publish.py all
#+end_src
別の場所から実行する場合は =--config= を指定する。
#+begin_src sh
/path/to/paper_db_common/publish.py process \
--config /path/to/new_db/config.py
#+end_src
* パスの扱い
各DBの =config.py= に共通コードの絶対パスや
=COMMON_ROOT==sys.path= 操作を書く必要はない。
共通側は =__file__= から自身の位置を決定する。
=config.py= のディレクトリが =project_root= となる。