Skip to main content

paperops

PaperOps 2 1.0

新規pops initはResearch / Editorial / Results hierarchy / Manuscript / Issue / Publicationの六モデルだけを権威として作る。通常の構造化変更はpops changeがindex、revision/hash、依存検証、manifest、journal、rollbackを処理する。旧cardとmacro-stateは新規scaffoldに含めないが、既存projectのartifactはsetupやmanaged updateで削除せず、pops model / pops workflow migrateのread-only migration readerを維持する。

paperops は、AI エージェントと論文を書くためのプロジェクトハーネスである。

人間が template/ を手でコピーして使う道具ではなく、pops CLI で論文プロジェクトを初期化・診断・更新する。

まず使う

新規論文プロジェクト:

uvx --from paper-harness-cli pops init paper-my-topic
cd paper-my-topic
uvx --from paper-harness-cli pops doctor

この新規projectは六モデルのstarterを検証し、そのsemantic hashとtyped workflowを.pops/manifest.tomlへ原子的に記録する。既存projectをv2へ移す場合はpops init --forceで権威を上書きせず、pops model diff|adoptpops workflow migrateを使う。

既存プロジェクトを pops 管理に寄せる:

uvx --from paper-harness-cli pops setup
uvx --from paper-harness-cli pops doctor

pops は常に uvx --from paper-harness-cli pops ... で実行する。.venv は CLI 用ではなく、論文プロジェクト側の Python 実行環境が必要な場合に make venv で作る。

何を提供するか

  • template/: 個別論文リポジトリに展開される scaffold
  • src/paperops/: scaffold を初期化・診断・更新する pops CLI
  • .github/workflows/: 下流論文リポジトリから呼び出せる reusable workflow
  • .agents/skills/, .claude/skills/: paperops 自体を保守するための skill
  • docs/: CLI、配布、アーキテクチャ、変更ルール

論文プロジェクトの基本モデル

下流の論文リポジトリでは、原稿だけでなく中間層も明示的に持つ。

  • _paperops/model/research/: claim / result / figure / source / scientific gate
  • _paperops/model/editorial/: story decision と Results hierarchy
  • _paperops/model/manuscript/: section / block topology と operation
  • _paperops/model/issues/: feedback / request / response / review round / workflow issue
  • _paperops/model/publication/: submission candidate / approval / round snapshot reference
  • _paperops/notes/views/: pure overview view と controlled authoring view
  • _paperops/model/editorial/results-hierarchy.yml: project-owned の typed Results hierarchy 正本
  • _paperops/defaults/schemas/: paperops-managed の schema default
  • _paperops/defaults/contracts/: paperops-managed の標準 section / figure story 契約
  • _paperops/contracts/: 論文固有の contract overlay
  • pops workflow status: 六モデルから全体状態、review、submission、section、staleを投影
  • manuscript/writing-profile.yml: 論文種別・投稿先ごとの overlay
  • manuscript/ja, manuscript/en: block ID で対応する原稿
  • _paperops/refs/: 文献サマリー、外部 source、外部 project link
  • _paperops/refs/imports/: 外部 export bundle の source index / integrity / provenance state
  • _handoff/: 人間から AI へ渡す未整理ファイルの一時置き場
  • _archives/: 同じ repo で1から書き直すために封印した過去稿 archive

人間は主に原稿レベルのレビューや自然文の指示を出す。Agent はそれを _paperops/model/issues/feedback/ の card にし、必要なら claim / gate / evidence / request / manuscript へ遡って反映する。本文生成の前には、必要に応じて pops workflow status_paperops/defaults/contracts/_paperops/contracts/manuscript/writing-profile.yml を確認し、plan-figure-story で visual obligation と主図構成を決めてから、card と controlled view から paper_ir を作り、Results / Discussion / Methods の section compiler を通す。

新規 scaffold ではtyped modelだけを使う。既存下流 projectのlegacy artifactは移行完了まで読み取り可能であり、1.0.0への更新だけでは削除されない。

PaperOps 2 P1-B は Research、Editorial、Results hierarchy、Manuscript、Issue、Publication の正確な六モデルを提供する。P2 は pops model の deterministic migrationとして、legacy inventory、shadow diff、strict validation、model単位のadopt、snapshot rollbackをAIなしで反復できるようにする。authorityはlegacy-authoritativeshadow-comparev2-authoritativeをmodelごとに持ち、Editorial / Results hierarchyだけはcompanionとして同時に切り替える。

AI Agentはscientific / editorial judgment、候補の選択理由、未解決fieldを埋めるための人間との対話を担当し、定型的なfile discovery、hash、conservation、transaction、recoveryを直接操作しない。P3 compiler / WriterとP4 workflow writerの導入後もhuman-edited living TeXを維持する。legacy互換artifactは新規scaffoldから削除済みで、既存projectのproject-owned artifactだけを明示migrationと確認が終わるまで保持する。

検証phaseは schema → references → semantics → canonical semantic-v1 hash の順で、mechanism-led、boundary-led、negative-result-led の三つの合成fixtureを回帰corpusとして維持する。

よく使うコマンド

uvx --from paper-harness-cli pops version
uvx --from paper-harness-cli pops doctor
uvx --from paper-harness-cli pops update-paperops --plan
uvx --from paper-harness-cli pops update-paperops --apply
uvx --from paper-harness-cli pops links check
uvx --from paper-harness-cli pops model status all
uvx --from paper-harness-cli pops model diff research
uvx --from paper-harness-cli pops model adopt research --yes
uvx --from paper-harness-cli pops model rollback research
uvx --from paper-harness-cli pops change plan .paperops/request.yml
uvx --from paper-harness-cli pops change apply CHG-... --yes
uvx --from paper-harness-cli pops compile prepare all
uvx --from paper-harness-cli pops write start CMP-...
uvx --from paper-harness-cli pops scratch archive --label before-rewrite
uvx --from paper-harness-cli pops scratch reset --yes

下流プロジェクトでの確認:

make ci
make audit
make schema-check
make pre-submit
make figure-reference-check
make figure-obligation-check

paperops 本体の確認:

make venv
make smoke

詳細

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

paper_harness_cli-1.0.0.tar.gz (748.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

paper_harness_cli-1.0.0-py3-none-any.whl (712.7 kB view details)

Uploaded Python 3

File details

Details for the file paper_harness_cli-1.0.0.tar.gz.

File metadata

  • Download URL: paper_harness_cli-1.0.0.tar.gz
  • Upload date:
  • Size: 748.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for paper_harness_cli-1.0.0.tar.gz
Algorithm Hash digest
SHA256 23e4b44d0fb0e151493d9ecb668003c06ff21ce0d9c45b8d463d881f6c2ed54f
MD5 1a9471fdd284fa765ba00597eafff721
BLAKE2b-256 64d6973e6ac5d7da11c86b964968d40daf6951e9ec1d691360e4a994ff49dcc6

See more details on using hashes here.

Provenance

The following attestation bundles were made for paper_harness_cli-1.0.0.tar.gz:

Publisher: publish-pypi.yml on Nkzono99/paperops

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file paper_harness_cli-1.0.0-py3-none-any.whl.

File metadata

File hashes

Hashes for paper_harness_cli-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 02cb1172f11773f332fbf0742b6b4e06799cc931fe068db040989f7a6ce11dba
MD5 7dd492c9fd9d31c20b8c205ae4694a3c
BLAKE2b-256 1e2ce47148b37e52f9ba3f1fdef9ae4d606ef12d8f55625c2a12d420b1f5d36d

See more details on using hashes here.

Provenance

The following attestation bundles were made for paper_harness_cli-1.0.0-py3-none-any.whl:

Publisher: publish-pypi.yml on Nkzono99/paperops

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

This release

1.0.0 This release

2 files

0.13.0

2 files

0.12.0

2 files

0.11.0

2 files

0.10.0

2 files

0.9.0

2 files

0.8.0

2 files

0.7.0

2 files

0.6.0

2 files

0.5.0

2 files

0.4.0

2 files

0.3.0

2 files

0.2.0

2 files

0.1.0

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page