photon-skills 3.0.4.dev0__tar.gz → 3.0.5.dev0__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 (393) hide show
  1. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/CHANGELOG.md +26 -0
  2. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/LICENSE +1 -1
  3. photon_skills-3.0.5.dev0/PKG-INFO +343 -0
  4. photon_skills-3.0.5.dev0/README.en.md +337 -0
  5. photon_skills-3.0.5.dev0/README.md +330 -0
  6. photon_skills-3.0.5.dev0/assets/brand/src/candidates/a1-slit-128.png +0 -0
  7. photon_skills-3.0.5.dev0/assets/brand/src/candidates/a1-slit-16x8.png +0 -0
  8. photon_skills-3.0.5.dev0/assets/brand/src/candidates/a1-slit.svg +4 -0
  9. photon_skills-3.0.5.dev0/assets/brand/src/candidates/a3-vertical-128.png +0 -0
  10. photon_skills-3.0.5.dev0/assets/brand/src/candidates/a3-vertical-16x8.png +0 -0
  11. photon_skills-3.0.5.dev0/assets/brand/src/candidates/a3-vertical.svg +4 -0
  12. photon_skills-3.0.5.dev0/assets/brand/src/candidates/b1-diagonal-128.png +0 -0
  13. photon_skills-3.0.5.dev0/assets/brand/src/candidates/b1-diagonal-16x8.png +0 -0
  14. photon_skills-3.0.5.dev0/assets/brand/src/candidates/b1-diagonal.svg +4 -0
  15. photon_skills-3.0.5.dev0/assets/brand/src/lockup.html +38 -0
  16. photon_skills-3.0.5.dev0/assets/brand/src/logo-exploration-v2.html +283 -0
  17. photon_skills-3.0.5.dev0/assets/brand/src/logo-exploration.html +301 -0
  18. photon_skills-3.0.5.dev0/assets/brand/src/logo-shortlist.html +152 -0
  19. photon_skills-3.0.5.dev0/assets/brand/src/make_flow.py +178 -0
  20. photon_skills-3.0.5.dev0/assets/brand/src/make_mark.py +94 -0
  21. photon_skills-3.0.5.dev0/assets/brand/src/marker-strike.svg +4 -0
  22. photon_skills-3.0.5.dev0/assets/brand/src/social.html +81 -0
  23. photon_skills-3.0.5.dev0/assets/favicon-16.png +0 -0
  24. photon_skills-3.0.5.dev0/assets/favicon-32.png +0 -0
  25. photon_skills-3.0.5.dev0/assets/favicon-64.png +0 -0
  26. photon_skills-3.0.5.dev0/assets/logo-lockup-dark.png +0 -0
  27. photon_skills-3.0.5.dev0/assets/logo-lockup-light.png +0 -0
  28. photon_skills-3.0.5.dev0/assets/logo.png +0 -0
  29. photon_skills-3.0.5.dev0/assets/photon-app-icon-inv.svg +8 -0
  30. photon_skills-3.0.5.dev0/assets/photon-app-icon-small.svg +8 -0
  31. photon_skills-3.0.5.dev0/assets/photon-app-icon.svg +8 -0
  32. photon_skills-3.0.5.dev0/assets/photon-flow.svg +609 -0
  33. photon_skills-3.0.5.dev0/assets/photon-mark-small.svg +5 -0
  34. photon_skills-3.0.5.dev0/assets/photon-mark-tile-inv.svg +8 -0
  35. photon_skills-3.0.5.dev0/assets/photon-mark-tile.svg +8 -0
  36. photon_skills-3.0.5.dev0/assets/photon-mark.svg +5 -0
  37. photon_skills-3.0.5.dev0/assets/social-preview.png +0 -0
  38. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/pyproject.toml +1 -1
  39. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/src/photon/plugin.yaml +1 -1
  40. photon_skills-3.0.4.dev0/PKG-INFO +0 -263
  41. photon_skills-3.0.4.dev0/README.en.md +0 -273
  42. photon_skills-3.0.4.dev0/README.md +0 -250
  43. photon_skills-3.0.4.dev0/assets/logo.png +0 -0
  44. photon_skills-3.0.4.dev0/assets/research-workflow.en.svg +0 -155
  45. photon_skills-3.0.4.dev0/assets/research-workflow.zh.svg +0 -155
  46. photon_skills-3.0.4.dev0/assets/social-preview.png +0 -0
  47. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/.github/workflows/plugin-contract.yml +0 -0
  48. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/.github/workflows/publish.yml +0 -0
  49. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/.gitignore +0 -0
  50. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/AGENTS.md +0 -0
  51. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/CONTRIBUTING.md +0 -0
  52. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/SECURITY.md +0 -0
  53. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/_shared/README.md +0 -0
  54. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/_shared/__init__.py +0 -0
  55. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/_shared/__main__.py +0 -0
  56. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/_shared/decision_contract.py +0 -0
  57. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/_shared/evidence_contract.py +0 -0
  58. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/_shared/findings_schema.py +0 -0
  59. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/_shared/gate_runner.py +0 -0
  60. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/_shared/semantic_sim.py +0 -0
  61. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/_shared/status_contract.py +0 -0
  62. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/_shared/visual_qa.py +0 -0
  63. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/assets/wechat-donation.jpg +0 -0
  64. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/assets/wechat-official-account.jpg +0 -0
  65. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/docs/compatibility/agent-client-compatibility.md +0 -0
  66. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/docs/competitors/_shared.md +0 -0
  67. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/docs/competitors/citation.md +0 -0
  68. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/docs/competitors/consistency.md +0 -0
  69. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/docs/competitors/data-engineering.md +0 -0
  70. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/docs/competitors/experiment-coding.md +0 -0
  71. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/docs/competitors/figure.md +0 -0
  72. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/docs/competitors/file-reading.md +0 -0
  73. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/docs/competitors/frontend-design.md +0 -0
  74. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/docs/competitors/idea-critique.md +0 -0
  75. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/docs/competitors/idea-generation.md +0 -0
  76. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/docs/competitors/literature-search.md +0 -0
  77. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/docs/competitors/memory-pm.md +0 -0
  78. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/docs/competitors/orchestrator.md +0 -0
  79. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/docs/competitors/paper-writing.md +0 -0
  80. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/docs/competitors/patent-disclosure.md +0 -0
  81. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/docs/competitors/project-structure.md +0 -0
  82. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/docs/competitors/research-ethics.md +0 -0
  83. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/docs/competitors/research-plan.md +0 -0
  84. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/docs/competitors/result-analysis.md +0 -0
  85. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/docs/competitors/review-rebuttal.md +0 -0
  86. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/docs/competitors/software-copyright.md +0 -0
  87. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/docs/competitors/system-design.md +0 -0
  88. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/docs/competitors/typesetting.md +0 -0
  89. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/docs/competitors/venue-matching.md +0 -0
  90. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/docs/design/consistency-round2-e2e.md +0 -0
  91. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/docs/design/debate-coach.md +0 -0
  92. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/docs/design/git-persistence.md +0 -0
  93. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/docs/design/legacy-parity.md +0 -0
  94. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/docs/design/orchestrator-spec.md +0 -0
  95. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/docs/design/plugin-distribution.md +0 -0
  96. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/docs/design/safety-privacy.md +0 -0
  97. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/docs/design/self-repair.md +0 -0
  98. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/docs/design/student-skill-audit.md +0 -0
  99. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/docs/e2e/citation-round2.md +0 -0
  100. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/docs/e2e/data-engineering-round2.md +0 -0
  101. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/docs/e2e/experiment-coding-round2.md +0 -0
  102. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/docs/e2e/ip-extension-gate.md +0 -0
  103. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/docs/e2e/orchestrator-round2.md +0 -0
  104. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/docs/e2e/paper-writing-round2.md +0 -0
  105. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/docs/e2e/project-structure-round2.md +0 -0
  106. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/docs/e2e/research-ethics-round2.md +0 -0
  107. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/docs/e2e/research-plan-round2.md +0 -0
  108. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/docs/e2e/result-analysis-round2.md +0 -0
  109. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/docs/e2e/review-rebuttal-round2.md +0 -0
  110. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/docs/e2e/round3-release-gate.md +0 -0
  111. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/docs/e2e/system-design-round2.md +0 -0
  112. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/docs/e2e/typesetting-round2.md +0 -0
  113. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/docs/e2e/venue-matching-round2.md +0 -0
  114. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/docs/learning/ip/ip-upgrade-synthesis.md +0 -0
  115. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/docs/learning/ip/patent-deep-read-report.md +0 -0
  116. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/docs/learning/ip/software-copyright-deep-read-report.md +0 -0
  117. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/docs/legacy-multi-client.md +0 -0
  118. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/docs/releases/v1.0.0.md +0 -0
  119. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/examples/demo-student-project/.gitignore +0 -0
  120. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/examples/demo-student-project/.photon-project +0 -0
  121. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/examples/demo-student-project/decisions.md +0 -0
  122. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/examples/demo-student-project/mentor-feedback/2026-08-01.md +0 -0
  123. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/examples/demo-student-project/mentor-feedback/README.md +0 -0
  124. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/examples/demo-student-project/project-card.md +0 -0
  125. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/examples/demo-student-project/session-log/2026-07-28.md +0 -0
  126. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/examples/demo-student-project/session-log/2026-07-30.md +0 -0
  127. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/examples/demo-student-project/session-log/2026-08-01.md +0 -0
  128. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/examples/demo-student-project/source-log.md +0 -0
  129. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/examples/demo-student-project/task-log.md +0 -0
  130. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/examples/e2e-research-demo/README.md +0 -0
  131. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/examples/e2e-research-demo/artifacts/photon_e2e_case.md +0 -0
  132. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/examples/e2e-research-demo/data/synthetic_experiment.csv +0 -0
  133. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/examples/e2e-research-demo/figures/panels/panel_a_design_frontier.png +0 -0
  134. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/examples/e2e-research-demo/figures/panels/panel_b_signal_screen.png +0 -0
  135. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/examples/e2e-research-demo/figures/panels/panel_c_calibration.png +0 -0
  136. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/examples/e2e-research-demo/figures/panels/panel_d_evidence_strength.png +0 -0
  137. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/examples/e2e-research-demo/figures/panels/panel_e_failure_map.png +0 -0
  138. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/examples/e2e-research-demo/figures/panels/panel_f_quality_trajectory.png +0 -0
  139. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/examples/e2e-research-demo/figures/panels/panel_g_distribution_shift.png +0 -0
  140. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/examples/e2e-research-demo/figures/panels/panel_h_tradeoff_curve.png +0 -0
  141. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/examples/e2e-research-demo/figures/panels/panel_i_risk_budget.png +0 -0
  142. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/examples/e2e-research-demo/figures/research_figure_gallery.png +0 -0
  143. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/examples/e2e-research-demo/scripts/compose_figure_gallery.py +0 -0
  144. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/examples/e2e-research-demo/scripts/generate_synthetic_data.py +0 -0
  145. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/examples/e2e-research-demo/scripts/python_gallery_panels.py +0 -0
  146. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/examples/e2e-research-demo/scripts/r_gallery_panels.R +0 -0
  147. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/examples/e2e-research-demo/scripts/run_demo.py +0 -0
  148. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/projects/photocatalytic-dye-kinetics-study/README.md +0 -0
  149. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/projects/photocatalytic-dye-kinetics-study/data/fitted_rate_constants.csv +0 -0
  150. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/projects/photocatalytic-dye-kinetics-study/data/synthetic_design_table.csv +0 -0
  151. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/projects/photocatalytic-dye-kinetics-study/data/synthetic_uvvis_timeseries.csv +0 -0
  152. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/projects/photocatalytic-dye-kinetics-study/figures/figure1_kinetics.png +0 -0
  153. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/projects/photocatalytic-dye-kinetics-study/figures/figure2_response_surface.png +0 -0
  154. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/projects/photocatalytic-dye-kinetics-study/figures/figure3_diagnostics.png +0 -0
  155. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/projects/photocatalytic-dye-kinetics-study/figures/figure4_scavenger_effects.png +0 -0
  156. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/projects/photocatalytic-dye-kinetics-study/outputs/analysis_summary.json +0 -0
  157. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/projects/photocatalytic-dye-kinetics-study/outputs/scavenger_summary.csv +0 -0
  158. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/projects/photocatalytic-dye-kinetics-study/paper/main-preview.png +0 -0
  159. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/projects/photocatalytic-dye-kinetics-study/paper/main.md +0 -0
  160. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/projects/photocatalytic-dye-kinetics-study/paper/main.pdf +0 -0
  161. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/projects/photocatalytic-dye-kinetics-study/paper/main.tex +0 -0
  162. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/projects/photocatalytic-dye-kinetics-study/scripts/analyze.py +0 -0
  163. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/projects/photocatalytic-dye-kinetics-study/scripts/build_paper.py +0 -0
  164. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/projects/photocatalytic-dye-kinetics-study/scripts/generate_data.py +0 -0
  165. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/projects/photocatalytic-dye-kinetics-study/scripts/make_figures.py +0 -0
  166. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/projects/photocatalytic-dye-kinetics-study/scripts/render_preview.py +0 -0
  167. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/projects/photocatalytic-dye-kinetics-study/scripts/run_all.py +0 -0
  168. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/scripts/check_plugin_contract.py +0 -0
  169. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/scripts/release.py +0 -0
  170. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/README.md +0 -0
  171. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-citation/SKILL.md +0 -0
  172. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-citation/citation-resource-map.md +0 -0
  173. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-citation/references/locator_audit.md +0 -0
  174. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-citation/references/registry_contract.md +0 -0
  175. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-citation/references.md +0 -0
  176. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-citation/templates/citation-four-gate.example.json +0 -0
  177. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-citation/templates/citation_input.json +0 -0
  178. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-citation/templates/claim_citation_review.json +0 -0
  179. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-consistency/SKILL.md +0 -0
  180. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-consistency/examples/fact-bindings.example.json +0 -0
  181. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-consistency/examples/materials_paper.txt +0 -0
  182. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-consistency/examples/materials_ppt.txt +0 -0
  183. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-consistency/references/consistency-resource-map.md +0 -0
  184. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-data-engineering/SKILL.md +0 -0
  185. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-data-engineering/examples/derive_spec.example.json +0 -0
  186. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-data-engineering/examples/rules.example.yaml +0 -0
  187. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-data-engineering/examples/worked_example.md +0 -0
  188. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-data-engineering/references/data-resource-map.md +0 -0
  189. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-data-engineering/references.md +0 -0
  190. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-data-engineering/templates/annotation_guide.md +0 -0
  191. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-data-engineering/templates/data-identity-fitness.example.json +0 -0
  192. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-experiment-coding/SKILL.md +0 -0
  193. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-experiment-coding/references/code_examples.md +0 -0
  194. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-experiment-coding/references/debug_protocol.md +0 -0
  195. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-experiment-coding/references/experiment-coding-resource-map.md +0 -0
  196. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-experiment-coding/references/tdd_redflags.md +0 -0
  197. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-experiment-coding/references/tools.md +0 -0
  198. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-experiment-coding/templates/experiment-execution-contract.example.json +0 -0
  199. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-experiment-coding/templates/run_manifest.md +0 -0
  200. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-experiment-coding/templates/run_manifest.template.json +0 -0
  201. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-figure/SKILL.md +0 -0
  202. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-figure/examples/bad_figure_example.py +0 -0
  203. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-figure/examples/example_framework.dot +0 -0
  204. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-figure/examples/example_framework_render.py +0 -0
  205. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-figure/examples/example_matplotlib_multipanel.py +0 -0
  206. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-figure/examples/example_seaborn_stats.py +0 -0
  207. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-figure/examples/worked_example.md +0 -0
  208. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-figure/references/figure_integrity.md +0 -0
  209. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-figure/templates/figure-delivery.example.json +0 -0
  210. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-figure/templates/figure_plan_card.md +0 -0
  211. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-figure/templates/table_plan_card.md +0 -0
  212. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-file-reading/SKILL.md +0 -0
  213. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-file-reading/references/DOCX-REF.md +0 -0
  214. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-file-reading/references/IMG-REF.md +0 -0
  215. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-file-reading/references/PDF-REF.md +0 -0
  216. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-file-reading/references/PPTX-REF.md +0 -0
  217. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-file-reading/references/XLSX-REF.md +0 -0
  218. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-file-reading/references/reading-resource-map.md +0 -0
  219. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-file-reading/references/tools.md +0 -0
  220. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-frontend-design/SKILL.md +0 -0
  221. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-frontend-design/references/design-systems-map.md +0 -0
  222. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-frontend-design/references/ecosystem-2026.md +0 -0
  223. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-frontend-design/references/fonts-and-colors.md +0 -0
  224. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-frontend-design/references/redesign-audit.md +0 -0
  225. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-frontend-design/references/resource-map.md +0 -0
  226. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-frontend-design/references/visual-a11y-rules.md +0 -0
  227. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-frontend-design/references.md +0 -0
  228. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-frontend-design/templates/frontend-delivery.example.json +0 -0
  229. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-idea-critique/SKILL.md +0 -0
  230. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-idea-critique/critique-resource-map.md +0 -0
  231. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-idea-critique/examples/worked_example_dermoscopy.md +0 -0
  232. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-idea-critique/references/contract.md +0 -0
  233. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-idea-critique/references/protocol.md +0 -0
  234. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-idea-critique/references/rubric.md +0 -0
  235. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-idea-critique/references.md +0 -0
  236. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-idea-critique/templates/Revision_Roadmap.md +0 -0
  237. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-idea-critique/templates/novelty-evidence.example.json +0 -0
  238. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-idea-critique/templates/verdict_template.md +0 -0
  239. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-idea-generation/.gitignore +0 -0
  240. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-idea-generation/SKILL.md +0 -0
  241. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-idea-generation/examples/candidates.example.json +0 -0
  242. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-idea-generation/examples/idea_candidates.example.md +0 -0
  243. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-idea-generation/idea-resource-map.md +0 -0
  244. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-idea-generation/references.md +0 -0
  245. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-idea-generation/templates/idea-gap-evidence.example.json +0 -0
  246. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-idea-generation/templates/idea-genealogy.example.json +0 -0
  247. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-idea-generation/templates/idea_card.md +0 -0
  248. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-idea-generation/templates/innovation-engine.example.json +0 -0
  249. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-literature-search/SKILL.md +0 -0
  250. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-literature-search/examples/goat_littable.md +0 -0
  251. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-literature-search/examples/goat_search.json +0 -0
  252. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-literature-search/examples/worked_example_dairy_goat.md +0 -0
  253. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-literature-search/references.md +0 -0
  254. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-literature-search/search-resource-map.md +0 -0
  255. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-literature-search/templates/search-protocol.example.json +0 -0
  256. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-memory-pm/SKILL.md +0 -0
  257. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-memory-pm/references/cross_harness_resume.md +0 -0
  258. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-memory-pm/references/session_handoff.md +0 -0
  259. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-paper-writing/SKILL.md +0 -0
  260. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-paper-writing/examples/claim_evidence_walkthrough.md +0 -0
  261. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-paper-writing/paper-writing-resource-map.md +0 -0
  262. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-paper-writing/references/argument_review.md +0 -0
  263. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-paper-writing/references/claim_argument_plan.md +0 -0
  264. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-paper-writing/references/guideline_map.md +0 -0
  265. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-paper-writing/references/integrity_gate.md +0 -0
  266. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-paper-writing/references/mandatory_inclusions.md +0 -0
  267. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-paper-writing/references/self_review_checklist.md +0 -0
  268. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-paper-writing/templates/01_imrad.md +0 -0
  269. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-paper-writing/templates/06_conference.md +0 -0
  270. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-paper-writing/templates/argument-outline.example.json +0 -0
  271. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-paper-writing/templates/claim_argument_plan.json +0 -0
  272. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-paper-writing/templates/claim_passport.md +0 -0
  273. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-patent-disclosure/SKILL.md +0 -0
  274. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-patent-disclosure/references/patent-interview-and-search.md +0 -0
  275. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-patent-disclosure/references/patent-resource-map.md +0 -0
  276. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-patent-disclosure/templates/patent-disclosure-packet.example.json +0 -0
  277. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-project-structure/SKILL.md +0 -0
  278. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-project-structure/references/project-lifecycle-resource-map.md +0 -0
  279. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-project-structure/references/structure-profiles.json +0 -0
  280. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-project-structure/templates/project-policy.template.json +0 -0
  281. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-project-structure/templates/project-structure-governance.example.json +0 -0
  282. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-research-ethics/SKILL.md +0 -0
  283. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-research-ethics/references/cn_compliance.md +0 -0
  284. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-research-ethics/references/decision_trees.md +0 -0
  285. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-research-ethics/references/ethics-resource-map.md +0 -0
  286. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-research-ethics/references/retraction_flag_types.json +0 -0
  287. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-research-ethics/references/tortured_phrases.json +0 -0
  288. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-research-orchestrator/SKILL.md +0 -0
  289. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-research-orchestrator/references/integration-contract.json +0 -0
  290. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-research-orchestrator/references/orchestrator-resource-map.md +0 -0
  291. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-research-orchestrator/references/passport.schema.json +0 -0
  292. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-research-orchestrator/templates/passport.v3.yaml +0 -0
  293. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-research-orchestrator/templates/task-profile.example.json +0 -0
  294. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-research-orchestrator/templates/workflow-ledger.example.json +0 -0
  295. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-research-plan/SKILL.md +0 -0
  296. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-research-plan/examples/plan_spec.example.json +0 -0
  297. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-research-plan/references/research-plan-resource-map.md +0 -0
  298. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-research-plan/references.md +0 -0
  299. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-research-plan/templates/experiment_matrix.md +0 -0
  300. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-research-plan/templates/failure-tree.example.json +0 -0
  301. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-research-plan/templates/plan_package.manifest.example.json +0 -0
  302. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-research-plan/templates/preregistration.md +0 -0
  303. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-research-plan/templates/reproducibility-checklist.md +0 -0
  304. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-research-plan/templates/reproduction-log.md +0 -0
  305. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-research-plan/templates/research-plan.md +0 -0
  306. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-research-plan/templates/target-chain.example.json +0 -0
  307. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-result-analysis/SKILL.md +0 -0
  308. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-result-analysis/examples/analysis_audit.example.json +0 -0
  309. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-result-analysis/examples/method_compatibility.example.json +0 -0
  310. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-result-analysis/examples/stat_spec.example.json +0 -0
  311. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-result-analysis/examples/worked_example.py +0 -0
  312. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-result-analysis/references.md +0 -0
  313. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-result-analysis/result-analysis-resource-map.md +0 -0
  314. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-result-analysis/scripts/r_analysis_crosscheck.R +0 -0
  315. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-result-analysis/templates/result-card.example.json +0 -0
  316. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-review-rebuttal/SKILL.md +0 -0
  317. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-review-rebuttal/agents/openai.yaml +0 -0
  318. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-review-rebuttal/references/workflow_contract.md +0 -0
  319. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-review-rebuttal/references.md +0 -0
  320. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-review-rebuttal/review-rebuttal-resource-map.md +0 -0
  321. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-review-rebuttal/templates/commitment_ledger.json +0 -0
  322. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-review-rebuttal/templates/experiment_request.example.json +0 -0
  323. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-review-rebuttal/templates/rereview_checklist.md +0 -0
  324. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-review-rebuttal/templates/response_letter_template.md +0 -0
  325. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-review-rebuttal/templates/response_matrix.md +0 -0
  326. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-review-rebuttal/templates/review-response-contract.example.json +0 -0
  327. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-review-rebuttal/templates/review_input.json +0 -0
  328. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-software-copyright/SKILL.md +0 -0
  329. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-software-copyright/references/materials-workflow.md +0 -0
  330. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-software-copyright/references/software-copyright-resource-map.md +0 -0
  331. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-software-copyright/templates/software-copyright-materials.example.json +0 -0
  332. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-system-design/SKILL.md +0 -0
  333. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-system-design/references/system-design-resource-map.md +0 -0
  334. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-system-design/references.md +0 -0
  335. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-system-design/templates/architecture-package.template.md +0 -0
  336. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-system-design/templates/decision-authorization.template.json +0 -0
  337. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-system-design/templates/design-readiness.example.json +0 -0
  338. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-system-design/templates/migration_expand_contract.sql +0 -0
  339. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-system-design/templates/openapi.yaml +0 -0
  340. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-system-design/templates/rls_policy.sql +0 -0
  341. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-system-design/templates/schema.sql +0 -0
  342. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-system-design/templates/system-intake.template.json +0 -0
  343. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-typesetting/SKILL.md +0 -0
  344. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-typesetting/references/build_contract.md +0 -0
  345. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-typesetting/references/latex_errors.md +0 -0
  346. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-typesetting/references.md +0 -0
  347. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-typesetting/templates/acm_sigconf.tex +0 -0
  348. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-typesetting/templates/ctex_chinese.tex +0 -0
  349. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-typesetting/templates/elsevier_elsarticle.tex +0 -0
  350. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-typesetting/templates/ieee_bare_conf.tex +0 -0
  351. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-typesetting/templates/springer_llncs.tex +0 -0
  352. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-typesetting/templates/submission-readiness.example.json +0 -0
  353. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-typesetting/templates/typesetting_input.json +0 -0
  354. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-typesetting/typesetting-resource-map.md +0 -0
  355. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-venue-matching/SKILL.md +0 -0
  356. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-venue-matching/references/workflow_contract.md +0 -0
  357. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-venue-matching/references.md +0 -0
  358. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-venue-matching/templates/query-privacy.example.json +0 -0
  359. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-venue-matching/templates/user_selection.json +0 -0
  360. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-venue-matching/templates/venue-evidence.example.json +0 -0
  361. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-venue-matching/templates/venue_compare_table.md +0 -0
  362. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-venue-matching/templates/venue_input.json +0 -0
  363. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/skills-academic/photon-venue-matching/venue-resource-map.md +0 -0
  364. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/src/photon/SOUL.md +0 -0
  365. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/src/photon/__init__.py +0 -0
  366. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/src/photon/_base.py +0 -0
  367. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/src/photon/extensions/academic-skills.zip +0 -0
  368. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/src/photon/health.py +0 -0
  369. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/src/photon/skills/photon-brainstorm/SKILL.md +0 -0
  370. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/src/photon/skills/photon-debate-coach/SKILL.md +0 -0
  371. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/src/photon/skills/photon-debate-coach/references/format-presets.md +0 -0
  372. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/src/photon/skills/photon-debate-coach/templates/case-map.md +0 -0
  373. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/src/photon/skills/photon-debate-coach/templates/evidence-sheet.md +0 -0
  374. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/src/photon/skills/photon-debate-coach/templates/format.md +0 -0
  375. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/src/photon/skills/photon-debate-coach/templates/motion-brief.md +0 -0
  376. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/src/photon/skills/photon-debate-coach/templates/outline.md +0 -0
  377. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/src/photon/skills/photon-debate-coach/templates/post-match.md +0 -0
  378. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/src/photon/skills/photon-debate-coach/templates/rebuttal-cards.md +0 -0
  379. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/src/photon/skills/photon-method-planner/SKILL.md +0 -0
  380. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/src/photon/skills/photon-orchestrator/SKILL.md +0 -0
  381. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/src/photon/skills/photon-pitch-coach/SKILL.md +0 -0
  382. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/src/photon/skills/photon-pitch-coach/templates/judge-qa-prep.md +0 -0
  383. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/src/photon/skills/photon-pitch-coach/templates/pitch-deck-outline.md +0 -0
  384. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/src/photon/skills/photon-pitch-coach/templates/pitch-script-60s.md +0 -0
  385. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/src/photon/skills/photon-progress-tracker/SKILL.md +0 -0
  386. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/src/photon/skills/photon-session/SKILL.md +0 -0
  387. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/src/photon/skills/photon-source-filter/SKILL.md +0 -0
  388. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/src/photon/skillsets.json +0 -0
  389. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/src/photon/workspace.py +0 -0
  390. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/tests/test_cli.py +0 -0
  391. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/tests/test_contract.py +0 -0
  392. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/tests/test_health.py +0 -0
  393. {photon_skills-3.0.4.dev0 → photon_skills-3.0.5.dev0}/tests/test_workspace.py +0 -0
@@ -6,6 +6,20 @@ The project follows a pragmatic release-note style rather than claiming strict s
6
6
 
7
7
  ## [Unreleased]
8
8
 
9
+ ### Changed
10
+
11
+ - **New brand mark.** The inherited Light Skills icon (crescent + spire + network, blue/violet
12
+ gradients) is replaced by an original single-colour mark: a diamond — a packet of light —
13
+ cut by a slit and slid apart. Both masses are cut to equal area (a 6.6° slit through the
14
+ centre), so the step, not a weight difference, does the work. It ships as
15
+ `assets/photon-mark.svg` (transparent, `currentColor`), `photon-app-icon.svg` (full bleed,
16
+ no baked radius — the platform supplies the mask), `photon-mark-tile.svg` for inline
17
+ lockups, 16/32/64 favicons and a re-rendered `social-preview.png`; the flow diagram and
18
+ cards move to an ink + amber palette. On the social card the negation is drawn rather than
19
+ coloured: a two-pass red marker stroke (`assets/brand/src/marker-strike.svg`) crosses out 代筆. A separate `photon-mark-small.svg` is used at favicon
20
+ sizes: the same 6.6° construction with a 22-unit band, because a 13-unit slit antialiases
21
+ shut at 16px.
22
+
9
23
  ## [3.0.3] - 2026-10-30
10
24
 
11
25
  ### Added
@@ -35,6 +49,18 @@ The project follows a pragmatic release-note style rather than claiming strict s
35
49
 
36
50
  ### Documentation
37
51
 
52
+ - **README re-laid-out around real media (both editions).** The page now opens with a
53
+ dark/light logo lockup, a one-line position, a PyPI version badge and anchor nav;
54
+ the product story is carried by `assets/photon-flow.svg` (one project, six gates,
55
+ one shared folder) instead of the retired "research workflow" diagram; the 13-command
56
+ table, migration table, troubleshooting and maintainer notes moved into `<details>`;
57
+ the paper demo gained a four-figure grid.
58
+ - **Stale brand media replaced.** `assets/social-preview.png` still said "Light Skills"
59
+ and listed Claude Code / Codex / OpenCode; it is now a 1280×640 Photon card. The
60
+ simplified-Chinese `research-workflow.{zh,en}.svg` diagrams (old `light-*` skill
61
+ names) are removed. Brand sources live in `assets/brand/src/`: HTML for the lockups
62
+ and social card, `make_flow.py` for the diagram. `assets/logo.png` is downscaled
63
+ from 1.3 MB to 202 KB.
38
64
  - **README rewritten as a plugin-first guide** (zh + en): the two real install
39
65
  channels (PyPI into Hermes's own venv; git + pinned SHA for schools and
40
66
  collaborators), migration from pip+shim and from Light-skills, the actual
@@ -1,6 +1,6 @@
1
1
  MIT License
2
2
 
3
- Copyright (c) 2026 Light0305
3
+ Copyright (c) 2026 Uniterra Solutions Limited
4
4
 
5
5
  Permission is hereby granted, free of charge, to any person obtaining a copy
6
6
  of this software and associated documentation files (the "Software"), to deal
@@ -0,0 +1,343 @@
1
+ Metadata-Version: 2.5
2
+ Name: photon-skills
3
+ Version: 3.0.5.dev0
4
+ Summary: Photon — STEAM research, debate, and pitch competition companion for primary/secondary students
5
+ Author-email: Uniterra Solutions Limited <harryw07801@uniterra-solutions.com>
6
+ License-Expression: MIT
7
+ License-File: LICENSE
8
+ Requires-Python: >=3.10
9
+ Provides-Extra: dev
10
+ Requires-Dist: pytest>=8.0; extra == 'dev'
11
+ Requires-Dist: pyyaml>=6.0; extra == 'dev'
12
+ Description-Content-Type: text/markdown
13
+
14
+ <div align="center">
15
+
16
+ <picture>
17
+ <source media="(prefers-color-scheme: dark)" srcset="assets/logo-lockup-dark.png">
18
+ <img src="assets/logo-lockup-light.png" width="520" alt="Photon — Hermes Agent 的學生研究插件">
19
+ </picture>
20
+
21
+ **學生的研究助理,不是<s>代筆</s>。**<br>
22
+ 由真實生活問題出發,走到可以講出口的成果 —— 每一步都寫進一個導師讀得懂的 Git 專案資料夾。
23
+
24
+ <p>
25
+ <a href="https://pypi.org/project/photon-skills/"><img src="https://img.shields.io/pypi/v/photon-skills?color=5B6FE0" alt="PyPI"></a>
26
+ <a href="LICENSE"><img src="https://img.shields.io/badge/license-MIT-22C55E.svg" alt="MIT License"></a>
27
+ <img src="https://img.shields.io/badge/Hermes-plugin-5B6FE0.svg" alt="Hermes plugin">
28
+ <img src="https://img.shields.io/badge/student%20skills-8-22C55E.svg" alt="8 個學生技能">
29
+ <img src="https://img.shields.io/badge/language-zh--Hant%20%2B%20EN-7C3AED.svg" alt="zh-Hant + English">
30
+ <img src="https://img.shields.io/badge/telemetry-none-6B7280.svg" alt="無遙測">
31
+ </p>
32
+
33
+ <p>
34
+ <a href="#這是什麼">這是什麼</a> ·
35
+ <a href="#一個專案怎麼走">流程</a> ·
36
+ <a href="#快速開始">快速開始</a> ·
37
+ <a href="#技能">技能</a> ·
38
+ <a href="#指令">指令</a> ·
39
+ <a href="#導師怎麼用">導師</a> ·
40
+ <a href="#疑難排解">疑難排解</a> ·
41
+ <strong>繁體中文</strong> / <a href="README.en.md">English</a>
42
+ </p>
43
+
44
+ </div>
45
+
46
+ ---
47
+
48
+ ## 這是什麼
49
+
50
+ Photon 是一個 **Hermes Agent 插件**:八個雙語技能,加上一個 Git 追蹤的專案工作區,
51
+ 陪中小學生完成 **腦力激盪 → 找資料 → 規劃方法 → 動手做 → Pitch / 辯論** 的整段旅程。
52
+
53
+ 它不替學生寫功課。它問問題、整理結構、把關證據,並把「誰做了什麼」留下記錄 ——
54
+ 讓導師或老師看得到進度,也看得到 AI 的參與程度。
55
+
56
+ | | |
57
+ |---|---|
58
+ | **學生是擁有者** | Photon 引導、草擬、提問;立場、結論與上台的話由學生決定。 |
59
+ | **一個專案一個資料夾** | `project-card.md`、`source-log.md`、`task-log.md`、`decisions.md`、`session-log/`、`mentor-feedback/`。 |
60
+ | **Session 有連續性** | 開始時載入專案脈絡,結束時寫紀錄並自動 commit —— 隔一星期再開也接得上。 |
61
+ | **導師零安裝** | 導師不需要裝任何東西,直接讀那個資料夾,或看學生跑一次 `mentor-summary`。 |
62
+ | **資料留在學生電腦** | 零遙測、零第三方依賴;只有主動 `sync` 才會上傳,而且預設 private。 |
63
+
64
+ > 這是唯一的安裝說明。舊版的多客戶端安裝(Codex / Claude Code / OpenCode +
65
+ > `bootstrap_agent_skills.py`)已退役,記錄在
66
+ > [docs/legacy-multi-client.md](docs/legacy-multi-client.md)。
67
+
68
+ ## 一個專案怎麼走
69
+
70
+ <p align="center">
71
+ <img src="assets/photon-flow.svg" alt="Photon 流程:一個專案、六道關口;photon-orchestrator 貫穿全程,所有產物寫進同一個 Git 專案資料夾" width="100%">
72
+ </p>
73
+
74
+ 六道關口,每道都留下產物與決定。`photon-orchestrator` 在每次 session 開頭讀
75
+ `project-card.md` 與最近的 `session-log/`,再建議下一步;學生不同意就可以改方向。
76
+
77
+ ## 快速開始
78
+
79
+ 需求:Hermes Agent(有 `hermes plugins` 子命令)、Python 3.10+、Git 2.30+。
80
+ macOS、Linux、Windows PowerShell 都可以。
81
+
82
+ ### A. 公開安裝(PyPI)— 個人 / 學生
83
+
84
+ 插件要裝進 **Hermes 自己的 venv**,否則 `import photon` 找不到。
85
+
86
+ ```bash
87
+ # 1) 確認 Hermes 的 venv 位置(通常是 ~/.hermes/hermes-agent/venv)
88
+ dirname "$(dirname "$(which hermes)")"
89
+
90
+ # 2) 裝進去(macOS / Linux)
91
+ ~/.hermes/hermes-agent/venv/bin/pip install --upgrade photon-skills
92
+
93
+ # 3) 啟用,並把技能同步到 profile
94
+ hermes plugins enable photon-skills
95
+ hermes photon-skills setup --yes
96
+ ```
97
+
98
+ 驗證:
99
+
100
+ ```bash
101
+ hermes photon-skills status # 版本 + Bundled skills: 8
102
+ hermes photon-skills doctor # 4 check(s): 4 ok, 0 warning, 0 error
103
+ ```
104
+
105
+ <details>
106
+ <summary>Windows PowerShell 的 venv 路徑</summary>
107
+
108
+ ```powershell
109
+ & "$env:USERPROFILE\.hermes\hermes-agent\venv\Scripts\pip.exe" install --upgrade photon-skills
110
+ hermes plugins enable photon-skills
111
+ hermes photon-skills setup --yes
112
+ ```
113
+
114
+ </details>
115
+
116
+ <details>
117
+ <summary>B. 學校 / 協作者:git,釘死某個 commit</summary>
118
+
119
+ 有 repo 權限的話,一條指令完成,而且版本可以被釘住:
120
+
121
+ ```bash
122
+ hermes plugins install Uniterra-Solutions/Photon-skills/src/photon \
123
+ --ref <40 位 commit SHA> --enable
124
+ ```
125
+
126
+ `src/photon` 是插件目錄;subdir 安裝只會複製該目錄(技能已放在裡面)。釘 SHA 之後
127
+ `hermes plugins update` 會拒絕移動版本,要換版本就再跑一次
128
+ `plugins install ... --ref <新 SHA> --force`。
129
+
130
+ </details>
131
+
132
+ ## 第一個專案
133
+
134
+ ```bash
135
+ hermes photon-skills start-project "Water Filter Design" --steam SCIENCE
136
+ cd ~/Photon/"Water Filter Design"
137
+
138
+ hermes photon-skills session-start # 載入 project-card 與最近 session
139
+ # … 與 Photon 一起工作 …
140
+
141
+ hermes photon-skills session-end \
142
+ --focus "測試三種濾材" \
143
+ --work-done "完成第一輪過濾實驗" \
144
+ --next "量測濁度" \
145
+ --ai-notes "AI 協助整理變因" \
146
+ --student-notes "我自己設計裝置"
147
+
148
+ hermes photon-skills mentor-summary # 一頁導師摘要
149
+ hermes photon-skills sync --remote water-filter # 發佈到 GitHub(預設 private)
150
+ ```
151
+
152
+ ## 技能
153
+
154
+ ### 學生技能(8 個,隨插件安裝,中英雙語)
155
+
156
+ | 技能 | 甚麼時候用 |
157
+ |---|---|
158
+ | `photon-orchestrator` | 每次 session 的入口:讀 `project-card.md`,決定下一步 |
159
+ | `photon-session` | 開始 / 結束的紀錄與交接,寫 `session-log/` 並 commit |
160
+ | `photon-brainstorm` | 引導式腦力激盪,產出衝刺 / 穩妥 / 保底三層點子 |
161
+ | `photon-source-filter` | 判斷來源可不可信、有沒有用、引不引得出原句 |
162
+ | `photon-method-planner` | 把點子變成可執行方法:步驟、材料、變因、對照、安全 |
163
+ | `photon-progress-tracker` | 管理 `task-log.md`,依狀態建議下一步 |
164
+ | `photon-pitch-coach` | Pitch 的敘事弧線與排練 |
165
+ | `photon-debate-coach` | 辯論 / 研討會:雙邊論點地圖、反駁路線、計時大綱 |
166
+
167
+ 設計文件:[學生技能審計](docs/design/student-skill-audit.md) ·
168
+ [安全與隱私](docs/design/safety-privacy.md) ·
169
+ [Git 持久化](docs/design/git-persistence.md)
170
+
171
+ <details>
172
+ <summary>學術技能(23 個,選裝,manual mode)</summary>
173
+
174
+ 研究編排、文獻搜尋、論文寫作、圖表、排版、期刊匹配、專利、軟著等 23 個進階技能
175
+ **不隨插件安裝**(它們的參考文件會令安裝掃描由 `safe` 變 `caution`)。它們以靜態
176
+ zip 隨插件出貨,按需解壓:
177
+
178
+ ```bash
179
+ hermes photon-skills extensions list
180
+ hermes photon-skills extensions install academic-skills
181
+ hermes photon-skills extensions remove academic-skills
182
+ ```
183
+
184
+ > **Manual mode**:這 23 個技能只附 `SKILL.md` 與 `references/`。文中引用的
185
+ > `scripts/`、`assets/` 不隨此建置發佈(共 240 條引用),需要時按文件手動執行,
186
+ > 或到上游取得。這是刻意的取捨,不是缺漏 —— 對照表見
187
+ > [docs/design/legacy-parity.md](docs/design/legacy-parity.md)。
188
+
189
+ </details>
190
+
191
+ ## 指令
192
+
193
+ <details>
194
+ <summary>全部指令(13 個)</summary>
195
+
196
+ | 指令 | 用途 |
197
+ |---|---|
198
+ | `setup [--profiles A,B] [--yes] [--soul-md\|--no-soul-md] [--force-soul-md]` | 把 8 個技能(可選 SOUL.md)同步到 profile |
199
+ | `status` | 每個 profile 的版本、技能數、SOUL.md |
200
+ | `start-project <名稱> [--steam ...] [--dir ...]` | 建立專案工作區(含 `git init`) |
201
+ | `session-start [--dir ...]` | 載入專案脈絡 |
202
+ | `session-end --focus ... [--source ...] [--decision ...] [--task ...] [--stage ...]` | 寫 session-log、更新來源 / 決策 / 任務、自動 commit |
203
+ | `audit-report [--dir ...]` | 教育者審計(AI vs 學生分工) |
204
+ | `mentor-summary [--dir ...]` | 一頁導師摘要 |
205
+ | `sync [--message ...] [--remote <repo>] [--public]` | 本地 commit / 建 GitHub remote 並 push / 離線模式 |
206
+ | `extensions list\|install\|remove <name> [--profiles A,B]` | 選裝技能包(目前:`academic-skills`) |
207
+ | `doctor [--dir ...] [--json]` | 診斷技能同步、state、extension、舊安裝與專案狀態(有 error 時 exit 1) |
208
+ | `repair [--profile ...] [--force]` | 套用安全修復;`--force` 才會覆蓋你改過的技能 |
209
+ | `feedback export [--dir ...] [--since ...] [--out ...]` | 匯出技能 diff + 專案證據供人審閱(不上傳) |
210
+ | `selftest` | 快速自測 workspace 邏輯(exit 0) |
211
+
212
+ `update` 已棄用:更新走 `pip install --upgrade photon-skills`(或
213
+ `hermes plugins update`,如果你是用 git 安裝)。
214
+
215
+ </details>
216
+
217
+ ## 隱私與安全
218
+
219
+ - **不收集個資**:不要求、不儲存全名、地址、電話或聯絡方式。
220
+ - **零遙測**:不對外發送任何資料,沒有分析或追蹤碼。
221
+ - **不外傳**:只有明確執行 `sync` 才會 commit / push,而且預設 private。
222
+ - **AI 分工透明**:`session-log` 分開記錄 `ai-notes` 與 `student-notes`;
223
+ `audit-report` 給老師核對 AI 參與程度。
224
+ - **有護欄**:危險 / 違法 / 有害的請求會被拒絕並提出安全替代方案。
225
+
226
+ 完整版:[docs/design/safety-privacy.md](docs/design/safety-privacy.md)
227
+
228
+ ## 導師怎麼用
229
+
230
+ 導師不需要安裝任何東西:
231
+
232
+ 1. 學生把專案資料夾(或 GitHub repo 網址)給你。
233
+ 2. 直接讀 `project-card.md`、`session-log/`、`source-log.md`、`task-log.md`、
234
+ `mentor-feedback/`。
235
+ 3. 學生用 `hermes photon-skills mentor-summary` 產生一頁摘要;你的回饋由學生記錄進
236
+ `mentor-feedback/`。
237
+ 4. 需要核對 AI 參與時,請學生跑 `hermes photon-skills audit-report`。
238
+
239
+ ## 成果示範
240
+
241
+ 學術版技能的完整交付形態:合成數據 → 分析 → 程序化圖表 → LaTeX PDF。
242
+
243
+ <p align="center">
244
+ <a href="projects/photocatalytic-dye-kinetics-study/paper/main.pdf">
245
+ <img src="projects/photocatalytic-dye-kinetics-study/paper/main-preview.png" alt="英語科學論文首頁" width="480">
246
+ </a><br>
247
+ <sub><a href="projects/photocatalytic-dye-kinetics-study/paper/main.pdf">閱讀 PDF</a></sub>
248
+ </p>
249
+
250
+ | <img src="projects/photocatalytic-dye-kinetics-study/figures/figure1_kinetics.png" alt="動力學擬合" width="420"> | <img src="projects/photocatalytic-dye-kinetics-study/figures/figure2_response_surface.png" alt="反應曲面" width="420"> |
251
+ |---|---|
252
+ | <sub>動力學擬合</sub> | <sub>反應曲面</sub> |
253
+ | <img src="projects/photocatalytic-dye-kinetics-study/figures/figure3_diagnostics.png" alt="模型診斷" width="420"> | <img src="projects/photocatalytic-dye-kinetics-study/figures/figure4_scavenger_effects.png" alt="捕獲劑效應" width="420"> |
254
+ | <sub>模型診斷</sub> | <sub>捕獲劑效應</sub> |
255
+
256
+ ## 升級、遷移、移除
257
+
258
+ <details>
259
+ <summary>由舊版遷移</summary>
260
+
261
+ | 你之前裝過 | 要做什麼 |
262
+ |---|---|
263
+ | pip `photon-skills` + 手寫 `~/.hermes/plugins/photon-skills/` shim | `hermes plugins remove photon-skills` → `rm -rf ~/.hermes/plugins/photon-skills` → `pip uninstall photon-skills` → 用 A 或 B 重裝 |
264
+ | `photon` 1.0.0(PR #26 時代) | `pip uninstall photon`,並移除 `~/.hermes/plugins/photon/` |
265
+ | `Light0305/Light-skills` 的本機 clone + `.agents/skills`、`.claude/skills`、`.opencode/skills` | 刪掉**你本機**的 clone 與鏡像目錄(上游 repo 不屬本專案,不受影響);Photon 只用 `~/.hermes/skills/`。舊 `light-*` 技能可刪;23 個學術技能已改名 `photon-*`,改以 extension 提供 |
266
+ | 舊版留在 profile 的 `photon-*` 技能 | 換版本後跑一次 `hermes photon-skills setup --yes`,會按內容 hash 更新;你改過的副本會被保留並報告 |
267
+
268
+ **專案資料夾(`~/Photon/...`、`session-log/`、`source-log.md`)在任何安裝 / 升級 /
269
+ 移除過程中都不會被觸碰。**
270
+
271
+ </details>
272
+
273
+ <details>
274
+ <summary>升級與移除</summary>
275
+
276
+ ```bash
277
+ # 升級(PyPI)
278
+ ~/.hermes/hermes-agent/venv/bin/pip install --upgrade photon-skills
279
+ hermes photon-skills setup --yes
280
+
281
+ # 用 git 安裝的話
282
+ hermes plugins update photon-skills
283
+
284
+ # 移除插件(保留 profile 內的技能副本)
285
+ hermes plugins remove photon-skills
286
+
287
+ # 連技能一併移除(專案資料夾不受影響)
288
+ rm -rf ~/.hermes/skills/photon-* ~/.hermes/skills/.photon-skills.json
289
+ ```
290
+
291
+ </details>
292
+
293
+ ## 疑難排解
294
+
295
+ <details>
296
+ <summary>常見症狀</summary>
297
+
298
+ | 症狀 | 處理 |
299
+ |---|---|
300
+ | `hermes photon-skills: not a hermes command` | 插件未啟用:先 `hermes plugins list`,再 `hermes plugins enable photon-skills` |
301
+ | `status` 顯示 `0 tracked` | 技能未同步:跑 `hermes photon-skills setup --yes` |
302
+ | 版本顯示舊版 | 裝的是舊 wheel 或舊 pin:`pip install --upgrade photon-skills`,或 `plugins install ... --ref <新 SHA> --force` |
303
+ | 你改過的技能沒有更新 | `setup` 會保留你的副本並報告(`kept your edited copy of …`),這是設計;要取回官方版就備份後刪掉該技能目錄再 `setup` |
304
+ | `doctor` 報 `skill sync` warning | 你的副本與官方版本不同:保留改動就繼續用,想交回上游就跑 `feedback export`,想還原官方版就跑 `repair --force` |
305
+ | 不確定哪裡壞了 | 先跑 `hermes photon-skills doctor`(加 `--json` 可貼給我);安全修復用 `repair` |
306
+ | 完全載入不到 | `HERMES_PLUGINS_DEBUG=1 hermes plugins list` 看發現 / 載入日誌;`hermes logs --level WARNING \| grep -i plugin` |
307
+
308
+ **手動 fallback**(插件連載入都失敗時):刪 `~/.hermes/plugins/photon-skills/` →
309
+ `pip uninstall photon-skills` → 用 A 或 B 重裝 → `hermes plugins enable photon-skills`。
310
+ 專案資料夾不受影響。
311
+
312
+ </details>
313
+
314
+ <details>
315
+ <summary>維護者:開發、契約檢查、發佈</summary>
316
+
317
+ ```bash
318
+ python scripts/check_plugin_contract.py # 契約檢查(本機有 hermes 會順便跑 validate)
319
+ python scripts/release.py --selftest
320
+ python -m pytest tests/ -q
321
+ hermes plugins validate src/photon
322
+ ```
323
+
324
+ 發佈流程:先在 default branch 寫入版本(`python scripts/release.py --set X.Y.Z`),
325
+ commit,再 tag `vX.Y.Z`。CI 會驗證 tag = tree 才發佈,CI 不會改寫版本。詳見
326
+ [CONTRIBUTING.md](CONTRIBUTING.md) 與
327
+ [docs/design/plugin-distribution.md](docs/design/plugin-distribution.md)。
328
+
329
+ 品牌素材的原始檔在 [`assets/brand/src/`](assets/brand/src/):lockup 與 social card
330
+ 是 HTML + 瀏覽器截圖,流程圖用 `python assets/brand/src/make_flow.py` 重新生成。
331
+
332
+ > catalog 上架暫不可行:curated catalog 要求公開 repo,本 repo 是 private。
333
+ > 現時渠道是 PyPI(公開)與 git + SHA(學校 / 協作者)。
334
+
335
+ </details>
336
+
337
+ ## 授權
338
+
339
+ MIT — 見 [LICENSE](LICENSE)。作者:Uniterra Solutions Ltd;原始 Light-skills 作者:
340
+ Light0305。
341
+
342
+ Photon 是獨立衍生專案,與原作者的 `Light0305/Light-skills` repo 無隸屬或背書關係;
343
+ 該 repo 未被本專案修改。MIT 要求保留上述版權聲明,授權檔亦隨 wheel 附上。