paper-harness-cli 0.1.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (169) hide show
  1. paper_harness_cli-0.1.0/.agents/skills/apply-template-improvement/SKILL.md +46 -0
  2. paper_harness_cli-0.1.0/.agents/skills/review-template-regression/SKILL.md +24 -0
  3. paper_harness_cli-0.1.0/.agents/skills/triage-template-feedback/SKILL.md +55 -0
  4. paper_harness_cli-0.1.0/.claude/skills/apply-template-improvement/SKILL.md +46 -0
  5. paper_harness_cli-0.1.0/.claude/skills/review-template-regression/SKILL.md +24 -0
  6. paper_harness_cli-0.1.0/.claude/skills/triage-template-feedback/SKILL.md +55 -0
  7. paper_harness_cli-0.1.0/.github/ISSUE_TEMPLATE/config.yml +5 -0
  8. paper_harness_cli-0.1.0/.github/ISSUE_TEMPLATE/skill-request.yml +35 -0
  9. paper_harness_cli-0.1.0/.github/ISSUE_TEMPLATE/structure-change.yml +37 -0
  10. paper_harness_cli-0.1.0/.github/ISSUE_TEMPLATE/template-feedback.yml +49 -0
  11. paper_harness_cli-0.1.0/.github/PULL_REQUEST_TEMPLATE.md +10 -0
  12. paper_harness_cli-0.1.0/.github/workflows/publish-pypi.yml +62 -0
  13. paper_harness_cli-0.1.0/.github/workflows/reusable-build.yml +42 -0
  14. paper_harness_cli-0.1.0/.github/workflows/reusable-mirror-check.yml +31 -0
  15. paper_harness_cli-0.1.0/.github/workflows/reusable-release.yml +37 -0
  16. paper_harness_cli-0.1.0/.gitignore +22 -0
  17. paper_harness_cli-0.1.0/AGENTS.md +60 -0
  18. paper_harness_cli-0.1.0/CHANGELOG.md +52 -0
  19. paper_harness_cli-0.1.0/CLAUDE.md +61 -0
  20. paper_harness_cli-0.1.0/Makefile +44 -0
  21. paper_harness_cli-0.1.0/PKG-INFO +128 -0
  22. paper_harness_cli-0.1.0/README.md +117 -0
  23. paper_harness_cli-0.1.0/docs/architecture.md +44 -0
  24. paper_harness_cli-0.1.0/docs/change-policy.md +19 -0
  25. paper_harness_cli-0.1.0/docs/cli.md +59 -0
  26. paper_harness_cli-0.1.0/docs/distribution.md +66 -0
  27. paper_harness_cli-0.1.0/docs/skill-catalog.md +72 -0
  28. paper_harness_cli-0.1.0/docs/triage-rules.md +32 -0
  29. paper_harness_cli-0.1.0/pyproject.toml +27 -0
  30. paper_harness_cli-0.1.0/scripts/cli-smoke.py +24 -0
  31. paper_harness_cli-0.1.0/src/paperops/__init__.py +7 -0
  32. paper_harness_cli-0.1.0/src/paperops/cli/__init__.py +1 -0
  33. paper_harness_cli-0.1.0/src/paperops/cli/main.py +688 -0
  34. paper_harness_cli-0.1.0/template/.agents/README.md +7 -0
  35. paper_harness_cli-0.1.0/template/.agents/skills/ai-disclosure-check/SKILL.md +14 -0
  36. paper_harness_cli-0.1.0/template/.agents/skills/calibrate-claims/SKILL.md +14 -0
  37. paper_harness_cli-0.1.0/template/.agents/skills/collect-manuscript-review/SKILL.md +16 -0
  38. paper_harness_cli-0.1.0/template/.agents/skills/design-manuscript-claims/SKILL.md +16 -0
  39. paper_harness_cli-0.1.0/template/.agents/skills/feedback-paper-harness/SKILL.md +15 -0
  40. paper_harness_cli-0.1.0/template/.agents/skills/figure-story-audit/SKILL.md +14 -0
  41. paper_harness_cli-0.1.0/template/.agents/skills/import-manuscript/SKILL.md +15 -0
  42. paper_harness_cli-0.1.0/template/.agents/skills/improve-writing-harness/SKILL.md +14 -0
  43. paper_harness_cli-0.1.0/template/.agents/skills/note-writing-session/SKILL.md +15 -0
  44. paper_harness_cli-0.1.0/template/.agents/skills/paragraph-surgery/SKILL.md +14 -0
  45. paper_harness_cli-0.1.0/template/.agents/skills/public-terminology-pass/SKILL.md +14 -0
  46. paper_harness_cli-0.1.0/template/.agents/skills/pull-template-updates/SKILL.md +17 -0
  47. paper_harness_cli-0.1.0/template/.agents/skills/resolve-local-paths/SKILL.md +13 -0
  48. paper_harness_cli-0.1.0/template/.agents/skills/resume-session/SKILL.md +14 -0
  49. paper_harness_cli-0.1.0/template/.agents/skills/review-public-manuscript/SKILL.md +19 -0
  50. paper_harness_cli-0.1.0/template/.agents/skills/setup/SKILL.md +16 -0
  51. paper_harness_cli-0.1.0/template/.agents/skills/start-manuscript-review/SKILL.md +16 -0
  52. paper_harness_cli-0.1.0/template/.agents/skills/sync-ja-en/SKILL.md +14 -0
  53. paper_harness_cli-0.1.0/template/.agents/skills/update-refs/SKILL.md +14 -0
  54. paper_harness_cli-0.1.0/template/.agents/skills/venue-fit-review/SKILL.md +14 -0
  55. paper_harness_cli-0.1.0/template/.claude/hooks/refresh-session-context.sh +15 -0
  56. paper_harness_cli-0.1.0/template/.claude/rules/manuscript-editing.md +10 -0
  57. paper_harness_cli-0.1.0/template/.claude/rules/notes-session.md +10 -0
  58. paper_harness_cli-0.1.0/template/.claude/rules/refs-knowledge.md +8 -0
  59. paper_harness_cli-0.1.0/template/.claude/rules/writing-policy.md +10 -0
  60. paper_harness_cli-0.1.0/template/.claude/rules/writing-quality.md +14 -0
  61. paper_harness_cli-0.1.0/template/.claude/settings.json +48 -0
  62. paper_harness_cli-0.1.0/template/.claude/skills/ai-disclosure-check/SKILL.md +37 -0
  63. paper_harness_cli-0.1.0/template/.claude/skills/calibrate-claims/SKILL.md +39 -0
  64. paper_harness_cli-0.1.0/template/.claude/skills/collect-manuscript-review/SKILL.md +77 -0
  65. paper_harness_cli-0.1.0/template/.claude/skills/design-manuscript-claims/SKILL.md +125 -0
  66. paper_harness_cli-0.1.0/template/.claude/skills/feedback-paper-harness/SKILL.md +31 -0
  67. paper_harness_cli-0.1.0/template/.claude/skills/figure-story-audit/SKILL.md +33 -0
  68. paper_harness_cli-0.1.0/template/.claude/skills/import-manuscript/SKILL.md +111 -0
  69. paper_harness_cli-0.1.0/template/.claude/skills/improve-writing-harness/SKILL.md +24 -0
  70. paper_harness_cli-0.1.0/template/.claude/skills/note-writing-session/SKILL.md +27 -0
  71. paper_harness_cli-0.1.0/template/.claude/skills/paragraph-surgery/SKILL.md +34 -0
  72. paper_harness_cli-0.1.0/template/.claude/skills/public-terminology-pass/SKILL.md +32 -0
  73. paper_harness_cli-0.1.0/template/.claude/skills/pull-template-updates/SKILL.md +99 -0
  74. paper_harness_cli-0.1.0/template/.claude/skills/resolve-local-paths/SKILL.md +23 -0
  75. paper_harness_cli-0.1.0/template/.claude/skills/resume-session/SKILL.md +36 -0
  76. paper_harness_cli-0.1.0/template/.claude/skills/resume-session/templates/session-summary.md +11 -0
  77. paper_harness_cli-0.1.0/template/.claude/skills/review-public-manuscript/SKILL.md +106 -0
  78. paper_harness_cli-0.1.0/template/.claude/skills/setup/SKILL.md +170 -0
  79. paper_harness_cli-0.1.0/template/.claude/skills/start-manuscript-review/SKILL.md +60 -0
  80. paper_harness_cli-0.1.0/template/.claude/skills/sync-ja-en/SKILL.md +32 -0
  81. paper_harness_cli-0.1.0/template/.claude/skills/sync-ja-en/scripts/sync_blocks.py +52 -0
  82. paper_harness_cli-0.1.0/template/.claude/skills/sync-ja-en/templates/drift-report.md +11 -0
  83. paper_harness_cli-0.1.0/template/.claude/skills/update-refs/SKILL.md +23 -0
  84. paper_harness_cli-0.1.0/template/.claude/skills/venue-fit-review/SKILL.md +38 -0
  85. paper_harness_cli-0.1.0/template/.gitattributes +5 -0
  86. paper_harness_cli-0.1.0/template/.github/ISSUE_TEMPLATE/config.yml +1 -0
  87. paper_harness_cli-0.1.0/template/.github/ISSUE_TEMPLATE/evidence-request.yml +39 -0
  88. paper_harness_cli-0.1.0/template/.github/ISSUE_TEMPLATE/harness-friction.yml +45 -0
  89. paper_harness_cli-0.1.0/template/.github/ISSUE_TEMPLATE/manuscript-feedback.yml +45 -0
  90. paper_harness_cli-0.1.0/template/.github/PULL_REQUEST_TEMPLATE.md +22 -0
  91. paper_harness_cli-0.1.0/template/.github/workflows/ci.yml +15 -0
  92. paper_harness_cli-0.1.0/template/.github/workflows/mirror-check.yml +20 -0
  93. paper_harness_cli-0.1.0/template/.github/workflows/release.yml +11 -0
  94. paper_harness_cli-0.1.0/template/.gitignore +18 -0
  95. paper_harness_cli-0.1.0/template/AGENTS.md +136 -0
  96. paper_harness_cli-0.1.0/template/CLAUDE.md +139 -0
  97. paper_harness_cli-0.1.0/template/Makefile +56 -0
  98. paper_harness_cli-0.1.0/template/README.md +62 -0
  99. paper_harness_cli-0.1.0/template/TROUBLESHOOTING.md +32 -0
  100. paper_harness_cli-0.1.0/template/manuscript/en/frontmatter/authors.tex +7 -0
  101. paper_harness_cli-0.1.0/template/manuscript/en/frontmatter/title.tex +7 -0
  102. paper_harness_cli-0.1.0/template/manuscript/en/main.tex +23 -0
  103. paper_harness_cli-0.1.0/template/manuscript/en/sections/00_abstract.tex +10 -0
  104. paper_harness_cli-0.1.0/template/manuscript/en/sections/10_intro.tex +10 -0
  105. paper_harness_cli-0.1.0/template/manuscript/en/sections/20_method.tex +10 -0
  106. paper_harness_cli-0.1.0/template/manuscript/en/sections/30_results.tex +10 -0
  107. paper_harness_cli-0.1.0/template/manuscript/en/sections/40_discussion.tex +7 -0
  108. paper_harness_cli-0.1.0/template/manuscript/en/sections/90_conclusion.tex +7 -0
  109. paper_harness_cli-0.1.0/template/manuscript/ja/frontmatter/authors.tex +7 -0
  110. paper_harness_cli-0.1.0/template/manuscript/ja/frontmatter/title.tex +7 -0
  111. paper_harness_cli-0.1.0/template/manuscript/ja/main.tex +23 -0
  112. paper_harness_cli-0.1.0/template/manuscript/ja/sections/00_abstract.tex +10 -0
  113. paper_harness_cli-0.1.0/template/manuscript/ja/sections/10_intro.tex +10 -0
  114. paper_harness_cli-0.1.0/template/manuscript/ja/sections/20_method.tex +10 -0
  115. paper_harness_cli-0.1.0/template/manuscript/ja/sections/30_results.tex +10 -0
  116. paper_harness_cli-0.1.0/template/manuscript/ja/sections/40_discussion.tex +7 -0
  117. paper_harness_cli-0.1.0/template/manuscript/ja/sections/90_conclusion.tex +7 -0
  118. paper_harness_cli-0.1.0/template/manuscript/mirror/block-ledger.yml +117 -0
  119. paper_harness_cli-0.1.0/template/manuscript/mirror/change-queue.md +7 -0
  120. paper_harness_cli-0.1.0/template/manuscript/mirror/map.toml +27 -0
  121. paper_harness_cli-0.1.0/template/manuscript/mirror/reports/.gitkeep +0 -0
  122. paper_harness_cli-0.1.0/template/manuscript/mirror/status.md +17 -0
  123. paper_harness_cli-0.1.0/template/manuscript/mirror/terminology.yml +19 -0
  124. paper_harness_cli-0.1.0/template/manuscript/publication-metadata.toml +30 -0
  125. paper_harness_cli-0.1.0/template/manuscript/shared/bib/mypapers.bib +1 -0
  126. paper_harness_cli-0.1.0/template/manuscript/shared/bib/references.bib +2 -0
  127. paper_harness_cli-0.1.0/template/manuscript/shared/figures/.gitkeep +0 -0
  128. paper_harness_cli-0.1.0/template/manuscript/shared/style/journal.cls +13 -0
  129. paper_harness_cli-0.1.0/template/manuscript/shared/style/macros.tex +3 -0
  130. paper_harness_cli-0.1.0/template/manuscript/venue.md +22 -0
  131. paper_harness_cli-0.1.0/template/notes/ai-use.md +30 -0
  132. paper_harness_cli-0.1.0/template/notes/claim-evidence-map.md +29 -0
  133. paper_harness_cli-0.1.0/template/notes/contribution-claims.md +13 -0
  134. paper_harness_cli-0.1.0/template/notes/decision-log.md +6 -0
  135. paper_harness_cli-0.1.0/template/notes/handoff.md +12 -0
  136. paper_harness_cli-0.1.0/template/notes/open-questions.md +4 -0
  137. paper_harness_cli-0.1.0/template/notes/project-brief.md +11 -0
  138. paper_harness_cli-0.1.0/template/notes/reproducibility.md +47 -0
  139. paper_harness_cli-0.1.0/template/notes/reviewer-model.md +37 -0
  140. paper_harness_cli-0.1.0/template/notes/todo.md +6 -0
  141. paper_harness_cli-0.1.0/template/refs/index.md +23 -0
  142. paper_harness_cli-0.1.0/template/refs/local/README.md +4 -0
  143. paper_harness_cli-0.1.0/template/refs/local/aliases.md +5 -0
  144. paper_harness_cli-0.1.0/template/refs/local/locations.example.toml +17 -0
  145. paper_harness_cli-0.1.0/template/refs/papers/.gitkeep +1 -0
  146. paper_harness_cli-0.1.0/template/refs/summaries/.gitkeep +0 -0
  147. paper_harness_cli-0.1.0/template/refs/summaries/summary-template.md +35 -0
  148. paper_harness_cli-0.1.0/template/scripts/build-en-pdf.ps1 +7 -0
  149. paper_harness_cli-0.1.0/template/scripts/build-en.sh +47 -0
  150. paper_harness_cli-0.1.0/template/scripts/build-ja-pdf.ps1 +7 -0
  151. paper_harness_cli-0.1.0/template/scripts/build-ja.sh +47 -0
  152. paper_harness_cli-0.1.0/template/scripts/build-pdf.ps1 +131 -0
  153. paper_harness_cli-0.1.0/template/scripts/check-citations.py +166 -0
  154. paper_harness_cli-0.1.0/template/scripts/check-claim-evidence.py +140 -0
  155. paper_harness_cli-0.1.0/template/scripts/check-public-terms.py +214 -0
  156. paper_harness_cli-0.1.0/template/scripts/check-skill-mirror.py +68 -0
  157. paper_harness_cli-0.1.0/template/scripts/check-submission-drift.py +66 -0
  158. paper_harness_cli-0.1.0/template/scripts/check-tex-structure.py +231 -0
  159. paper_harness_cli-0.1.0/template/scripts/collect-manuscript-review.py +252 -0
  160. paper_harness_cli-0.1.0/template/scripts/collect-note-context.py +53 -0
  161. paper_harness_cli-0.1.0/template/scripts/export-arxiv.sh +29 -0
  162. paper_harness_cli-0.1.0/template/scripts/lint-bib.py +215 -0
  163. paper_harness_cli-0.1.0/template/scripts/mirror-check.py +126 -0
  164. paper_harness_cli-0.1.0/template/scripts/mirror-freshness-check.py +201 -0
  165. paper_harness_cli-0.1.0/template/scripts/readiness-check.py +279 -0
  166. paper_harness_cli-0.1.0/template/scripts/tex-env.sh +77 -0
  167. paper_harness_cli-0.1.0/template/submission/README.md +31 -0
  168. paper_harness_cli-0.1.0/template/tex-env.example.toml +11 -0
  169. paper_harness_cli-0.1.0/tests/test_pops_cli.py +83 -0
@@ -0,0 +1,46 @@
1
+ ---
2
+ name: apply-template-improvement
3
+ description: 承認されたテンプレート改善を、後方互換性とドキュメント更新を伴って安全に実装する。
4
+ allowed-tools: Read, Edit, Write, Glob, Grep, Bash
5
+ ---
6
+
7
+ # apply-template-improvement
8
+
9
+ テンプレートの変更が承認され、安全に実装する必要がある場合にこのスキルを使用する。
10
+
11
+ ## 目的
12
+
13
+ 1. ルートと `template/` のファイルを最小限のセットで更新する。
14
+ 2. マイグレーションが明示的に意図されていない限り、既存の下流の期待を維持する。
15
+ 3. 実装と並行してドキュメントと変更履歴のエントリを更新する。
16
+ 4. 変更後にローカル smoke チェックを実行する。
17
+
18
+ ## チェックリスト
19
+
20
+ - 編集前に影響を受けるディレクトリとスクリプトを確認する。
21
+ - ユーザーに影響する変更は `CHANGELOG.md` を更新する。
22
+ - `docs/` の関連ドキュメントを調整する。
23
+ - `make smoke` を実行する。
24
+ - 下流リポジトリに残るマイグレーション作業を要約する。
25
+
26
+ ## Issue とコミットの紐付け
27
+
28
+ コミットメッセージに対応 Issue 番号を含めること:
29
+
30
+ ```
31
+ fix: 問題の説明 (closes #123)
32
+ feat: 機能の説明 (closes #456)
33
+ design: 設計変更の説明 (closes #789)
34
+ ```
35
+
36
+ 複数の Issue を一つのコミットで解決する場合は、すべての番号を列挙する:
37
+
38
+ ```
39
+ design: 構造変更の説明 (closes #4, closes #5)
40
+ ```
41
+
42
+ 実装完了後に手動で Issue をクローズする場合:
43
+
44
+ ```sh
45
+ gh issue close <number> --comment "<commit-hash> で対応済み。<変更内容の要約>"
46
+ ```
@@ -0,0 +1,24 @@
1
+ ---
2
+ name: review-template-regression
3
+ description: テンプレート変更がミラー追跡、ファイル保護、セッション継続性、下流互換性にリグレッションを起こしていないかレビューする。
4
+ allowed-tools: Read, Glob, Grep
5
+ ---
6
+
7
+ # review-template-regression
8
+
9
+ テンプレートを変更するプルリクエストや差分をレビューする際にこのスキルを使用する。
10
+
11
+ ## レビューの重点
12
+
13
+ - 日英ミラー追跡のリグレッション
14
+ - 生成ファイルやローカルパスの保護の弱体化
15
+ - `notes/` のセッション継続性の喪失
16
+ - スタータースクリプトや再利用可能ワークフローの破損
17
+ - 下流リポジトリに対する未文書化のインターフェース変更
18
+
19
+ ## プロセス
20
+
21
+ 1. 変更されたファイルを全文読む。
22
+ 2. `docs/architecture.md` と `docs/change-policy.md` と比較する。
23
+ 3. 具体的な破損と不足しているマイグレーションを優先する。
24
+ 4. smoke チェックが変更されたパスを検証しない場合、テストギャップを指摘する。
@@ -0,0 +1,55 @@
1
+ ---
2
+ name: triage-template-feedback
3
+ description: 受信したテンプレートフィードバックを評価し、スコープ・ラベル・実装先を判断する。Issue トリアージ時に使用。
4
+ allowed-tools: Read, Glob, Grep, Bash
5
+ ---
6
+
7
+ # triage-template-feedback
8
+
9
+ テンプレートフィードバックの Issue を評価する際、または問題がテンプレートリポジトリに属するかを判断する際にこのスキルを使用する。
10
+
11
+ ## 目的
12
+
13
+ 1. `gh issue list --state open` でオープンな Issue を取得する。
14
+ 2. 各 Issue の本文を `gh issue view <number>` で読み、問題を把握する。
15
+ 3. 変更がテンプレートに属するか、プロジェクトローカルに留めるべきかを判断する。
16
+ 4. `area:*`、`type:*`、`scope:*` ラベルで Issue を分類する。
17
+ 5. 繰り返される摩擦を解消する最小の変更を提案する。
18
+
19
+ ## 読み込むべき入力
20
+
21
+ - `README.md`
22
+ - `docs/architecture.md`
23
+ - `docs/change-policy.md`
24
+ - `docs/triage-rules.md`
25
+ - `template/` 配下の関連ファイル
26
+
27
+ ## 出力形式
28
+
29
+ 各 Issue について以下を含む簡潔なトリアージノートを作成する:
30
+
31
+ - Issue 番号とタイトル
32
+ - 問題の説明
33
+ - 再現手順
34
+ - スコープの判断
35
+ - 提案するラベル
36
+ - 提案する実装先
37
+ - 実施優先順位
38
+
39
+ ## Issue とコミットの紐付け
40
+
41
+ トリアージ後に実装する際は、コミットメッセージに Issue 番号を含めて紐付ける:
42
+
43
+ ```
44
+ fix: 問題の説明 (closes #123)
45
+ feat: 機能の説明 (closes #456)
46
+ design: 設計変更の説明 (closes #789, closes #790)
47
+ ```
48
+
49
+ `closes #N` をコミットメッセージに含めることで、main にマージされた時点で自動的に Issue がクローズされる。
50
+
51
+ 実装完了後に手動で Issue をクローズする場合は、対応コミットハッシュを参照するコメントを添えてクローズする:
52
+
53
+ ```sh
54
+ gh issue close <number> --comment "<commit-hash> で対応済み。<変更内容の要約>"
55
+ ```
@@ -0,0 +1,46 @@
1
+ ---
2
+ name: apply-template-improvement
3
+ description: 承認されたテンプレート改善を、後方互換性とドキュメント更新を伴って安全に実装する。
4
+ allowed-tools: Read, Edit, Write, Glob, Grep, Bash
5
+ ---
6
+
7
+ # apply-template-improvement
8
+
9
+ テンプレートの変更が承認され、安全に実装する必要がある場合にこのスキルを使用する。
10
+
11
+ ## 目的
12
+
13
+ 1. ルートと `template/` のファイルを最小限のセットで更新する。
14
+ 2. マイグレーションが明示的に意図されていない限り、既存の下流の期待を維持する。
15
+ 3. 実装と並行してドキュメントと変更履歴のエントリを更新する。
16
+ 4. 変更後にローカル smoke チェックを実行する。
17
+
18
+ ## チェックリスト
19
+
20
+ - 編集前に影響を受けるディレクトリとスクリプトを確認する。
21
+ - ユーザーに影響する変更は `CHANGELOG.md` を更新する。
22
+ - `docs/` の関連ドキュメントを調整する。
23
+ - `make smoke` を実行する。
24
+ - 下流リポジトリに残るマイグレーション作業を要約する。
25
+
26
+ ## Issue とコミットの紐付け
27
+
28
+ コミットメッセージに対応 Issue 番号を含めること:
29
+
30
+ ```
31
+ fix: 問題の説明 (closes #123)
32
+ feat: 機能の説明 (closes #456)
33
+ design: 設計変更の説明 (closes #789)
34
+ ```
35
+
36
+ 複数の Issue を一つのコミットで解決する場合は、すべての番号を列挙する:
37
+
38
+ ```
39
+ design: 構造変更の説明 (closes #4, closes #5)
40
+ ```
41
+
42
+ 実装完了後に手動で Issue をクローズする場合:
43
+
44
+ ```sh
45
+ gh issue close <number> --comment "<commit-hash> で対応済み。<変更内容の要約>"
46
+ ```
@@ -0,0 +1,24 @@
1
+ ---
2
+ name: review-template-regression
3
+ description: テンプレート変更がミラー追跡、ファイル保護、セッション継続性、下流互換性にリグレッションを起こしていないかレビューする。
4
+ allowed-tools: Read, Glob, Grep
5
+ ---
6
+
7
+ # review-template-regression
8
+
9
+ テンプレートを変更するプルリクエストや差分をレビューする際にこのスキルを使用する。
10
+
11
+ ## レビューの重点
12
+
13
+ - 日英ミラー追跡のリグレッション
14
+ - 生成ファイルやローカルパスの保護の弱体化
15
+ - `notes/` のセッション継続性の喪失
16
+ - スタータースクリプトや再利用可能ワークフローの破損
17
+ - 下流リポジトリに対する未文書化のインターフェース変更
18
+
19
+ ## プロセス
20
+
21
+ 1. 変更されたファイルを全文読む。
22
+ 2. `docs/architecture.md` と `docs/change-policy.md` と比較する。
23
+ 3. 具体的な破損と不足しているマイグレーションを優先する。
24
+ 4. smoke チェックが変更されたパスを検証しない場合、テストギャップを指摘する。
@@ -0,0 +1,55 @@
1
+ ---
2
+ name: triage-template-feedback
3
+ description: 受信したテンプレートフィードバックを評価し、スコープ・ラベル・実装先を判断する。Issue トリアージ時に使用。
4
+ allowed-tools: Read, Glob, Grep, Bash
5
+ ---
6
+
7
+ # triage-template-feedback
8
+
9
+ テンプレートフィードバックの Issue を評価する際、または問題がテンプレートリポジトリに属するかを判断する際にこのスキルを使用する。
10
+
11
+ ## 目的
12
+
13
+ 1. `gh issue list --state open` でオープンな Issue を取得する。
14
+ 2. 各 Issue の本文を `gh issue view <number>` で読み、問題を把握する。
15
+ 3. 変更がテンプレートに属するか、プロジェクトローカルに留めるべきかを判断する。
16
+ 4. `area:*`、`type:*`、`scope:*` ラベルで Issue を分類する。
17
+ 5. 繰り返される摩擦を解消する最小の変更を提案する。
18
+
19
+ ## 読み込むべき入力
20
+
21
+ - `README.md`
22
+ - `docs/architecture.md`
23
+ - `docs/change-policy.md`
24
+ - `docs/triage-rules.md`
25
+ - `template/` 配下の関連ファイル
26
+
27
+ ## 出力形式
28
+
29
+ 各 Issue について以下を含む簡潔なトリアージノートを作成する:
30
+
31
+ - Issue 番号とタイトル
32
+ - 問題の説明
33
+ - 再現手順
34
+ - スコープの判断
35
+ - 提案するラベル
36
+ - 提案する実装先
37
+ - 実施優先順位
38
+
39
+ ## Issue とコミットの紐付け
40
+
41
+ トリアージ後に実装する際は、コミットメッセージに Issue 番号を含めて紐付ける:
42
+
43
+ ```
44
+ fix: 問題の説明 (closes #123)
45
+ feat: 機能の説明 (closes #456)
46
+ design: 設計変更の説明 (closes #789, closes #790)
47
+ ```
48
+
49
+ `closes #N` をコミットメッセージに含めることで、main にマージされた時点で自動的に Issue がクローズされる。
50
+
51
+ 実装完了後に手動で Issue をクローズする場合は、対応コミットハッシュを参照するコメントを添えてクローズする:
52
+
53
+ ```sh
54
+ gh issue close <number> --comment "<commit-hash> で対応済み。<変更内容の要約>"
55
+ ```
@@ -0,0 +1,5 @@
1
+ blank_issues_enabled: false
2
+ contact_links:
3
+ - name: 一般的な使い方の質問
4
+ url: https://github.com/OWNER/REPO/discussions
5
+ about: 一般的な使い方の質問は Discussions で質問してください。
@@ -0,0 +1,35 @@
1
+ name: スキルリクエスト
2
+ description: 新しいテンプレートまたはスキャフォールドのスキルをリクエストする。
3
+ title: "[skill-request] "
4
+ labels:
5
+ - area:skills
6
+ - type:enhancement
7
+ body:
8
+ - type: input
9
+ id: skill_name
10
+ attributes:
11
+ label: 提案するスキル名
12
+ placeholder: sync-reviewer-response
13
+ validations:
14
+ required: true
15
+ - type: textarea
16
+ id: job
17
+ attributes:
18
+ label: 解決したいタスク
19
+ description: このスキルによって、どの繰り返しタスクをより安全・高速にすべきですか?
20
+ validations:
21
+ required: true
22
+ - type: textarea
23
+ id: inputs
24
+ attributes:
25
+ label: 入力とファイル
26
+ description: スキルが読み取りまたは更新すべきファイルやアーティファクトは何ですか?
27
+ validations:
28
+ required: true
29
+ - type: textarea
30
+ id: non_goals
31
+ attributes:
32
+ label: スコープ外
33
+ description: スキルが避けるべきことを明確にしてください。
34
+ validations:
35
+ required: false
@@ -0,0 +1,37 @@
1
+ name: 構造変更
2
+ description: リポジトリまたはスキャフォールドの構造変更を提案する。
3
+ title: "[structure-change] "
4
+ labels:
5
+ - area:structure
6
+ body:
7
+ - type: textarea
8
+ id: current_pain
9
+ attributes:
10
+ label: 現在の問題点
11
+ description: 現在のレイアウトのどこが混乱や重複を引き起こしていますか?
12
+ validations:
13
+ required: true
14
+ - type: textarea
15
+ id: proposed_structure
16
+ attributes:
17
+ label: 提案する構造
18
+ description: 希望するディレクトリまたはファイルレイアウトを記述してください。
19
+ validations:
20
+ required: true
21
+ - type: checkboxes
22
+ id: compatibility
23
+ attributes:
24
+ label: 互換性の考慮事項
25
+ options:
26
+ - label: この変更には下流リポジトリのマイグレーションが必要になる。
27
+ - label: この変更は追加的に導入できる。
28
+ - label: ドキュメントの更新が必要になる。
29
+ validations:
30
+ required: true
31
+ - type: textarea
32
+ id: rationale
33
+ attributes:
34
+ label: 根拠
35
+ description: なぜこの構造が長期的に優れているのですか?
36
+ validations:
37
+ required: true
@@ -0,0 +1,49 @@
1
+ name: テンプレートフィードバック
2
+ description: テンプレートで修正すべき繰り返しの摩擦を報告する。
3
+ title: "[template-feedback] "
4
+ labels:
5
+ - scope:template
6
+ body:
7
+ - type: textarea
8
+ id: problem
9
+ attributes:
10
+ label: 問題
11
+ description: 摩擦または障害モードを説明してください。
12
+ placeholder: 論文スキャフォールドでは...が困難です
13
+ validations:
14
+ required: true
15
+ - type: textarea
16
+ id: reproduction
17
+ attributes:
18
+ label: 再現手順
19
+ description: 下流の論文リポジトリで問題を再現する方法を説明してください。
20
+ placeholder: 1. template/ から開始... 2. 実行...
21
+ validations:
22
+ required: true
23
+ - type: dropdown
24
+ id: impact
25
+ attributes:
26
+ label: 影響度
27
+ options:
28
+ - 執筆フローをブロックする
29
+ - 手動クリーンアップの繰り返しが発生する
30
+ - AI のガイダンスの信頼性が低下する
31
+ - ドキュメントの明確さの問題
32
+ validations:
33
+ required: true
34
+ - type: textarea
35
+ id: proposed_change
36
+ attributes:
37
+ label: 提案する変更
38
+ description: 部分的でも構わないので修正案を提案してください。
39
+ placeholder: フックを追加、スキルを更新、スキャフォールドを調整...
40
+ validations:
41
+ required: false
42
+ - type: textarea
43
+ id: downstream_scope
44
+ attributes:
45
+ label: 下流での影響範囲
46
+ description: この問題が発生したリポジトリや状況を列挙してください。
47
+ placeholder: paper-lunar-cavity, paper-solar-wind-review, ...
48
+ validations:
49
+ required: false
@@ -0,0 +1,10 @@
1
+ ## 概要
2
+
3
+ テンプレートの変更内容と誰に恩恵があるかを説明する。
4
+
5
+ ## チェック項目
6
+
7
+ - [ ] 関連ドキュメントを更新した
8
+ - [ ] `CHANGELOG.md` を更新した
9
+ - [ ] `make smoke` を実行した
10
+ - [ ] 下流へのマイグレーション影響を記載した(該当する場合)
@@ -0,0 +1,62 @@
1
+ name: PyPI 公開
2
+
3
+ on:
4
+ release:
5
+ types:
6
+ - published
7
+ workflow_dispatch:
8
+
9
+ permissions:
10
+ contents: read
11
+
12
+ concurrency:
13
+ group: publish-pypi
14
+ cancel-in-progress: false
15
+
16
+ jobs:
17
+ build:
18
+ name: Build distribution
19
+ runs-on: ubuntu-latest
20
+ steps:
21
+ - name: リポジトリをチェックアウト
22
+ uses: actions/checkout@v4
23
+
24
+ - name: Python をセットアップ
25
+ uses: actions/setup-python@v5
26
+ with:
27
+ python-version: "3.12"
28
+
29
+ - name: ビルドツールをインストール
30
+ run: python -m pip install --upgrade build twine
31
+
32
+ - name: distribution をビルド
33
+ run: python -m build
34
+
35
+ - name: distribution を検証
36
+ run: python -m twine check dist/*
37
+
38
+ - name: distribution をアップロード
39
+ uses: actions/upload-artifact@v4
40
+ with:
41
+ name: python-distribution
42
+ path: dist/*
43
+
44
+ publish:
45
+ name: Publish to PyPI
46
+ needs: build
47
+ runs-on: ubuntu-latest
48
+ environment:
49
+ name: pypi
50
+ url: https://pypi.org/p/paper-harness-cli
51
+ permissions:
52
+ contents: read
53
+ id-token: write
54
+ steps:
55
+ - name: distribution をダウンロード
56
+ uses: actions/download-artifact@v4
57
+ with:
58
+ name: python-distribution
59
+ path: dist
60
+
61
+ - name: PyPI に公開
62
+ uses: pypa/gh-action-pypi-publish@release/v1
@@ -0,0 +1,42 @@
1
+ name: 再利用可能ビルド
2
+
3
+ on:
4
+ workflow_call:
5
+ inputs:
6
+ working-directory:
7
+ description: 検証対象のリポジトリルート。
8
+ required: false
9
+ type: string
10
+ default: .
11
+ run-latex:
12
+ description: 利用可能な場合に latexmk コンパイルを試行する。
13
+ required: false
14
+ type: boolean
15
+ default: false
16
+
17
+ permissions:
18
+ contents: read
19
+
20
+ jobs:
21
+ build:
22
+ runs-on: ubuntu-latest
23
+ defaults:
24
+ run:
25
+ working-directory: ${{ inputs.working-directory }}
26
+ steps:
27
+ - name: リポジトリをチェックアウト
28
+ uses: actions/checkout@v4
29
+
30
+ - name: Python をセットアップ
31
+ uses: actions/setup-python@v5
32
+ with:
33
+ python-version: "3.12"
34
+
35
+ - name: ハーネスチェックを実行
36
+ run: |
37
+ if [ "${{ inputs.run-latex }}" = "true" ]; then
38
+ export PAPER_TEMPLATE_RUN_LATEX=1
39
+ else
40
+ export PAPER_TEMPLATE_RUN_LATEX=0
41
+ fi
42
+ make ci
@@ -0,0 +1,31 @@
1
+ name: 再利用可能ミラーチェック
2
+
3
+ on:
4
+ workflow_call:
5
+ inputs:
6
+ working-directory:
7
+ description: 検証対象のリポジトリルート。
8
+ required: false
9
+ type: string
10
+ default: .
11
+
12
+ permissions:
13
+ contents: read
14
+
15
+ jobs:
16
+ mirror-check:
17
+ runs-on: ubuntu-latest
18
+ defaults:
19
+ run:
20
+ working-directory: ${{ inputs.working-directory }}
21
+ steps:
22
+ - name: リポジトリをチェックアウト
23
+ uses: actions/checkout@v4
24
+
25
+ - name: Python をセットアップ
26
+ uses: actions/setup-python@v5
27
+ with:
28
+ python-version: "3.12"
29
+
30
+ - name: ミラーチェックを実行
31
+ run: python3 scripts/mirror-check.py --root manuscript --report manuscript/mirror/reports/ci-report.md
@@ -0,0 +1,37 @@
1
+ name: 再利用可能リリース
2
+
3
+ on:
4
+ workflow_call:
5
+ inputs:
6
+ working-directory:
7
+ description: パッケージ対象のリポジトリルート。
8
+ required: false
9
+ type: string
10
+ default: .
11
+ artifact-name:
12
+ description: アップロードするアーティファクトの名前。
13
+ required: false
14
+ type: string
15
+ default: arxiv-export
16
+
17
+ permissions:
18
+ contents: read
19
+
20
+ jobs:
21
+ release:
22
+ runs-on: ubuntu-latest
23
+ defaults:
24
+ run:
25
+ working-directory: ${{ inputs.working-directory }}
26
+ steps:
27
+ - name: リポジトリをチェックアウト
28
+ uses: actions/checkout@v4
29
+
30
+ - name: エクスポートバンドルを準備
31
+ run: ./scripts/export-arxiv.sh
32
+
33
+ - name: エクスポートアーティファクトをアップロード
34
+ uses: actions/upload-artifact@v4
35
+ with:
36
+ name: ${{ inputs.artifact-name }}
37
+ path: ${{ inputs.working-directory }}/dist/arxiv-export
@@ -0,0 +1,22 @@
1
+ .DS_Store
2
+ .codex-tmp/
3
+ .venv/
4
+ __pycache__/
5
+ src/**/__pycache__/
6
+ *.egg-info/
7
+ build/
8
+ dist/
9
+ template/**/__pycache__/
10
+ template/**/*.pyc
11
+ template/dist/
12
+ template/manuscript/shared/build/*
13
+ !template/manuscript/shared/build/README.md
14
+ template/manuscript/mirror/reports/latest.md
15
+ template/manuscript/mirror/reports/smoke-check.md
16
+ template/notes/session-context.generated.md
17
+ template/refs/local/locations.toml
18
+ template/.claude/settings.local.json
19
+ template/refs/papers/**
20
+ !template/refs/papers/.gitkeep
21
+ template/**/*.pdf
22
+ !template/manuscript/shared/figures/**/*.pdf
@@ -0,0 +1,60 @@
1
+ # AGENTS.md
2
+
3
+ ユーザーとは**日本語**でコミュニケーションすること。
4
+
5
+ これは `paperops` の**テンプレート管理リポジトリ**である。
6
+
7
+ ## アーキテクチャ
8
+
9
+ 二層構成:
10
+
11
+ - **ルート層**: テンプレートガバナンス、再利用可能ワークフロー、`pops` CLI、テンプレート保守スキル
12
+ - **`template/` 層**: 個別の `paper-<topic>` リポジトリにコピーされる論文用スキャフォールド
13
+
14
+ この二つを混同しないこと。ルートレベルのファイルはテンプレート自体を管理し、`template/` は下流ユーザーが受け取る内容を格納する。
15
+
16
+ ## 主要コマンド
17
+
18
+ ```sh
19
+ make venv # Python 3.11 で .venv を作成
20
+ make smoke # template/ に対して lint-bib + citation-check + mirror-check + collect-context + readiness-check を実行
21
+ make cli-smoke # pops CLI の最小 smoke test を実行
22
+ ```
23
+
24
+ ## 変更ワークフロー
25
+
26
+ 1. 構造化された Issue フォーム(`template-feedback`, `skill-request`, `structure-change`)で Issue を受理する。
27
+ 2. `/triage-template-feedback` でトリアージする。
28
+ 3. `/apply-template-improvement` で実装する。
29
+ 4. `/review-template-regression` でレビューする。
30
+ 5. マージ前に `make smoke` を実行する。
31
+ 6. ユーザーに影響する変更ごとに `CHANGELOG.md` を更新する。
32
+
33
+ 変更を反映する前に `docs/change-policy.md` と `docs/triage-rules.md` を確認すること。
34
+
35
+ ## ルール
36
+
37
+ - `template/AGENTS.md`、`template/CLAUDE.md`、`template/.agents/skills/`、`template/.claude/skills/`、`template/scripts/` は**ユーザー向けインターフェース**として扱う。変更にはマイグレーションノートが必要。
38
+ - 構造的な書き換えよりも追加的な変更を優先する。
39
+ - 生成されたコンテンツはバージョン管理に含めない。
40
+ - 下流作成は `pops init` に統一する。
41
+ - `template/` 配下を変更した後は必ず `make smoke` を実行する。
42
+ - 長時間セッションでは、コンテキスト使用量が約50%の時点で手動で `/compact` を実行する。
43
+
44
+ ## Git コミットルール
45
+
46
+ - 意味のある作業単位ごとにコミットする。大量の変更を一つのコミットにまとめない。
47
+ - コミットメッセージは日本語で、変更の「なぜ」を記述する。
48
+ - `git push` はユーザーの明示的な指示なしに実行しない。
49
+
50
+ ## リポジトリマップ
51
+
52
+ ```
53
+ docs/ architecture, change-policy, triage-rules, skill-catalog, distribution
54
+ .Codex/skills/ triage-template-feedback, apply-template-improvement, review-template-regression
55
+ .github/workflows/ reusable-build, reusable-mirror-check, reusable-release, publish-pypi
56
+ .github/ISSUE_TEMPLATE/ template-feedback, skill-request, structure-change
57
+ src/paperops/ pops CLI
58
+ scripts/ smoke helpers
59
+ template/ 下流スキャフォールド一式(template/AGENTS.md を参照)
60
+ ```