psyclaw 0.28.1 → 0.28.3

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 (135) hide show
  1. package/README.md +5 -5
  2. package/agents/recommended/catalog.json +1 -1
  3. package/dist/src/adapters/pi/extension.js +79 -25
  4. package/dist/src/adapters/pi/extension.js.map +1 -1
  5. package/dist/src/ars/keybindings.d.ts +13 -0
  6. package/dist/src/ars/keybindings.js +50 -0
  7. package/dist/src/ars/keybindings.js.map +1 -0
  8. package/dist/src/ars/mode-editor.d.ts +25 -0
  9. package/dist/src/ars/mode-editor.js +78 -0
  10. package/dist/src/ars/mode-editor.js.map +1 -0
  11. package/dist/src/ars/profile.d.ts +4 -1
  12. package/dist/src/ars/profile.js +23 -6
  13. package/dist/src/ars/profile.js.map +1 -1
  14. package/dist/src/chat.js +3 -0
  15. package/dist/src/chat.js.map +1 -1
  16. package/dist/src/panel/server.js +1 -1
  17. package/dist/src/panel/server.js.map +1 -1
  18. package/package.json +10 -3
  19. package/vendor/academic-paper-skills/LICENSE +21 -0
  20. package/vendor/academic-paper-skills/NOTICE.md +7 -0
  21. package/vendor/academic-paper-skills/PSYCLAW_SOURCE.json +14 -0
  22. package/vendor/academic-paper-skills/academic-paper-composer/SKILL.md +840 -0
  23. package/vendor/academic-paper-skills/academic-paper-composer/references/section_guides.md +675 -0
  24. package/vendor/academic-paper-skills/academic-paper-composer/references/writing_standards.md +629 -0
  25. package/vendor/academic-paper-skills/academic-paper-composer/scripts/chapter_quality_check.py +470 -0
  26. package/vendor/academic-paper-skills/academic-paper-composer/scripts/final_evaluation.py +550 -0
  27. package/vendor/academic-paper-skills/academic-paper-strategist/SKILL.md +670 -0
  28. package/vendor/academic-paper-skills/academic-paper-strategist/references/quality_standards.md +336 -0
  29. package/vendor/academic-paper-skills/academic-paper-strategist/references/search_strategy.md +459 -0
  30. package/vendor/academic-paper-skills/academic-paper-strategist/scripts/evaluate_samples.py +300 -0
  31. package/vendor/academic-paper-skills/academic-paper-strategist/scripts/gap_analysis.py +399 -0
  32. package/vendor/ars/pi/wrapper.js +9 -0
  33. package/vendor/nature-skills/LICENSE +201 -0
  34. package/vendor/nature-skills/NOTICE.md +7 -0
  35. package/vendor/nature-skills/PSYCLAW_SOURCE.json +19 -0
  36. package/vendor/nature-skills/skills/nature-figure/README.md +107 -0
  37. package/vendor/nature-skills/skills/nature-figure/README_EN.md +107 -0
  38. package/vendor/nature-skills/skills/nature-figure/SKILL.md +154 -0
  39. package/vendor/nature-skills/skills/nature-figure/agents/openai.yaml +4 -0
  40. package/vendor/nature-skills/skills/nature-figure/evals/evals.json +325 -0
  41. package/vendor/nature-skills/skills/nature-figure/manifest.yaml +103 -0
  42. package/vendor/nature-skills/skills/nature-figure/references/ai-graphical-abstract-workflow.md +129 -0
  43. package/vendor/nature-skills/skills/nature-figure/references/api.md +576 -0
  44. package/vendor/nature-skills/skills/nature-figure/references/asset-adaptation.md +72 -0
  45. package/vendor/nature-skills/skills/nature-figure/references/backend-selection.md +118 -0
  46. package/vendor/nature-skills/skills/nature-figure/references/chart-types.md +348 -0
  47. package/vendor/nature-skills/skills/nature-figure/references/common-patterns.md +371 -0
  48. package/vendor/nature-skills/skills/nature-figure/references/demos.md +58 -0
  49. package/vendor/nature-skills/skills/nature-figure/references/design-theory.md +467 -0
  50. package/vendor/nature-skills/skills/nature-figure/references/figure-contract.md +122 -0
  51. package/vendor/nature-skills/skills/nature-figure/references/figure-legend-conventions.md +90 -0
  52. package/vendor/nature-skills/skills/nature-figure/references/multipanel-evidence-architecture.md +268 -0
  53. package/vendor/nature-skills/skills/nature-figure/references/nature-2026-observations.md +124 -0
  54. package/vendor/nature-skills/skills/nature-figure/references/nature-article-requirements.md +149 -0
  55. package/vendor/nature-skills/skills/nature-figure/references/openrouter-image-generation.md +141 -0
  56. package/vendor/nature-skills/skills/nature-figure/references/qa-contract.md +344 -0
  57. package/vendor/nature-skills/skills/nature-figure/references/r-template-index.md +66 -0
  58. package/vendor/nature-skills/skills/nature-figure/references/r-workflow.md +234 -0
  59. package/vendor/nature-skills/skills/nature-figure/references/template-catalog.md +33 -0
  60. package/vendor/nature-skills/skills/nature-figure/references/tutorials.md +260 -0
  61. package/vendor/nature-skills/skills/nature-figure/requirements.txt +1 -0
  62. package/vendor/nature-skills/skills/nature-figure/scripts/audit_figure_collisions.py +742 -0
  63. package/vendor/nature-skills/skills/nature-figure/scripts/audit_panel_alignment.py +933 -0
  64. package/vendor/nature-skills/skills/nature-figure/scripts/audit_pdf_text.py +152 -0
  65. package/vendor/nature-skills/skills/nature-figure/scripts/figure_safety.py +50 -0
  66. package/vendor/nature-skills/skills/nature-figure/scripts/generate_openrouter_schematic.py +260 -0
  67. package/vendor/nature-skills/skills/nature-figure/scripts/nature_figure_backend.py +93 -0
  68. package/vendor/nature-skills/skills/nature-figure/scripts/panel_alignment.R +188 -0
  69. package/vendor/nature-skills/skills/nature-figure/scripts/plot_templates.py +604 -0
  70. package/vendor/nature-skills/skills/nature-figure/scripts/validate_figure.py +835 -0
  71. package/vendor/nature-skills/skills/nature-figure/static/core/contract.md +55 -0
  72. package/vendor/nature-skills/skills/nature-figure/static/core/stance.md +41 -0
  73. package/vendor/nature-skills/skills/nature-figure/static/fragments/backend/python.md +56 -0
  74. package/vendor/nature-skills/skills/nature-figure/static/fragments/backend/r.md +63 -0
  75. package/vendor/nature-skills/skills/nature-figure/tests/test_figure_safety.py +209 -0
  76. package/vendor/nature-skills/skills/nature-polishing/README.md +58 -0
  77. package/vendor/nature-skills/skills/nature-polishing/README_EN.md +58 -0
  78. package/vendor/nature-skills/skills/nature-polishing/SKILL.md +111 -0
  79. package/vendor/nature-skills/skills/nature-polishing/agents/openai.yaml +4 -0
  80. package/vendor/nature-skills/skills/nature-polishing/manifest.yaml +101 -0
  81. package/vendor/nature-skills/skills/nature-polishing/references/latex-layout.md +211 -0
  82. package/vendor/nature-skills/skills/nature-polishing/references/nat-comms-2025-diction.md +73 -0
  83. package/vendor/nature-skills/skills/nature-polishing/references/phrasebank-playbook.md +175 -0
  84. package/vendor/nature-skills/skills/nature-polishing/references/published-article-patterns.md +126 -0
  85. package/vendor/nature-skills/skills/nature-polishing/references/section-moves.md +252 -0
  86. package/vendor/nature-skills/skills/nature-polishing/references/style-guardrails.md +94 -0
  87. package/vendor/nature-skills/skills/nature-polishing/references/writing-strategy.md +160 -0
  88. package/vendor/nature-skills/skills/nature-polishing/static/core/failure-modes.md +29 -0
  89. package/vendor/nature-skills/skills/nature-polishing/static/core/output-format.md +21 -0
  90. package/vendor/nature-skills/skills/nature-polishing/static/core/stance.md +26 -0
  91. package/vendor/nature-skills/skills/nature-polishing/static/fragments/journal/generic.md +17 -0
  92. package/vendor/nature-skills/skills/nature-polishing/static/fragments/journal/nat-comms.md +38 -0
  93. package/vendor/nature-skills/skills/nature-polishing/static/fragments/journal/nat-mach-intell.md +102 -0
  94. package/vendor/nature-skills/skills/nature-polishing/static/fragments/journal/nature.md +19 -0
  95. package/vendor/nature-skills/skills/nature-polishing/static/fragments/language/en.md +19 -0
  96. package/vendor/nature-skills/skills/nature-polishing/static/fragments/language/zh-to-en.md +19 -0
  97. package/vendor/nature-skills/skills/nature-polishing/static/fragments/paper_type/algorithmic.md +18 -0
  98. package/vendor/nature-skills/skills/nature-polishing/static/fragments/paper_type/hypothesis.md +17 -0
  99. package/vendor/nature-skills/skills/nature-polishing/static/fragments/paper_type/methods.md +35 -0
  100. package/vendor/nature-skills/skills/nature-polishing/static/fragments/paper_type/research.md +29 -0
  101. package/vendor/nature-skills/skills/nature-polishing/static/fragments/paper_type/review.md +17 -0
  102. package/vendor/nature-skills/skills/nature-polishing/static/fragments/section/abstract.md +26 -0
  103. package/vendor/nature-skills/skills/nature-polishing/static/fragments/section/conclusion.md +15 -0
  104. package/vendor/nature-skills/skills/nature-polishing/static/fragments/section/discussion.md +48 -0
  105. package/vendor/nature-skills/skills/nature-polishing/static/fragments/section/intro.md +33 -0
  106. package/vendor/nature-skills/skills/nature-polishing/static/fragments/section/methods.md +26 -0
  107. package/vendor/nature-skills/skills/nature-polishing/static/fragments/section/results.md +61 -0
  108. package/vendor/nature-skills/skills/nature-polishing/static/fragments/section/title.md +17 -0
  109. package/vendor/nature-skills/skills/nature-ref-verifier/README.md +44 -0
  110. package/vendor/nature-skills/skills/nature-ref-verifier/README_EN.md +44 -0
  111. package/vendor/nature-skills/skills/nature-ref-verifier/SKILL.md +196 -0
  112. package/vendor/nature-skills/skills/nature-ref-verifier/agents/openai.yaml +4 -0
  113. package/vendor/nature-skills/skills/nature-ref-verifier/manifest.yaml +19 -0
  114. package/vendor/nature-skills/skills/nature-ref-verifier/references/common-patterns.md +96 -0
  115. package/vendor/nature-skills/skills/nature-shared/README.md +43 -0
  116. package/vendor/nature-skills/skills/nature-shared/README_EN.md +43 -0
  117. package/vendor/nature-skills/skills/nature-shared/SKILL.md +33 -0
  118. package/vendor/nature-skills/skills/nature-shared/agents/openai.yaml +6 -0
  119. package/vendor/nature-skills/skills/nature-shared/core/consistency-sweep.md +122 -0
  120. package/vendor/nature-skills/skills/nature-shared/core/discussion-argument-language.md +192 -0
  121. package/vendor/nature-skills/skills/nature-shared/core/ethics.md +88 -0
  122. package/vendor/nature-skills/skills/nature-shared/core/main-text-discipline.md +179 -0
  123. package/vendor/nature-skills/skills/nature-shared/core/nature-abstract.md +171 -0
  124. package/vendor/nature-skills/skills/nature-shared/core/nature-introduction.md +164 -0
  125. package/vendor/nature-skills/skills/nature-shared/core/nature-results-discussion.md +215 -0
  126. package/vendor/nature-skills/skills/nature-shared/core/paper-type-taxonomy.md +41 -0
  127. package/vendor/nature-skills/skills/nature-shared/core/reader-workflow.md +21 -0
  128. package/vendor/nature-skills/skills/nature-shared/core/research-compliance.md +192 -0
  129. package/vendor/nature-skills/skills/nature-shared/core/terminology-ledger.md +58 -0
  130. package/vendor/nature-skills/skills/nature-shared/journal-formats/nat-comms.md +139 -0
  131. package/vendor/nature-skills/skills/nature-shared/journal-formats/nature-machine-intelligence.md +431 -0
  132. package/vendor/nature-skills/skills/nature-shared/journal-formats/nature.md +313 -0
  133. package/vendor/nature-skills/skills/nature-shared/manifest.yaml +52 -0
  134. package/vendor/nature-skills/skills/nature-shared/scripts/check_consistency.py +273 -0
  135. package/vendor/nature-skills/skills/nature-shared/tests/test_check_consistency.py +63 -0
@@ -0,0 +1,63 @@
1
+ from __future__ import annotations
2
+
3
+ import importlib.util
4
+ import sys
5
+ import tempfile
6
+ import unittest
7
+ from pathlib import Path
8
+
9
+
10
+ SCRIPT = Path(__file__).parents[1] / "scripts" / "check_consistency.py"
11
+ SPEC = importlib.util.spec_from_file_location("check_consistency", SCRIPT)
12
+ assert SPEC and SPEC.loader
13
+ CHECKER = importlib.util.module_from_spec(SPEC)
14
+ sys.modules[SPEC.name] = CHECKER
15
+ SPEC.loader.exec_module(CHECKER)
16
+
17
+
18
+ class ConsistencyCheckerTests(unittest.TestCase):
19
+ def run_text(
20
+ self,
21
+ text: str,
22
+ groups: dict[str, tuple[str, ...]] | None = None,
23
+ ) -> list[object]:
24
+ with tempfile.TemporaryDirectory() as directory:
25
+ path = Path(directory) / "manuscript.tex"
26
+ path.write_text(text, encoding="utf-8")
27
+ return CHECKER.run_checks([path], groups)
28
+
29
+ def test_clean_text_has_no_findings(self) -> None:
30
+ findings = self.run_text(
31
+ "This study used a 35 mm specimen and obtained values of 8.26 and 9.14.",
32
+ CHECKER.DEFAULT_TERM_GROUPS,
33
+ )
34
+ self.assertEqual([], findings)
35
+
36
+ def test_term_variants_are_reported(self) -> None:
37
+ findings = self.run_text(
38
+ "This study defines the task. Later, this work reports the results.",
39
+ CHECKER.DEFAULT_TERM_GROUPS,
40
+ )
41
+ self.assertIn("TERM_VARIANTS_PRESENT", {item.code for item in findings})
42
+
43
+ def test_numeric_precision_variants_are_reported(self) -> None:
44
+ findings = self.run_text("The score was 8.26 in Table 1 and 8.260 in the abstract.")
45
+ self.assertIn("NUMERIC_PRECISION_VARIANT", {item.code for item in findings})
46
+
47
+ def test_equivalent_length_units_are_reported(self) -> None:
48
+ findings = self.run_text("The cover was 35 mm in Methods and 3.5 cm in the caption.")
49
+ self.assertIn(
50
+ "EQUIVALENT_LENGTH_UNIT_VARIANT",
51
+ {item.code for item in findings},
52
+ )
53
+
54
+ def test_custom_term_group_is_supported(self) -> None:
55
+ findings = self.run_text(
56
+ "The test specimen was loaded. Each sample was then measured.",
57
+ {"test-object": ("specimen", "sample")},
58
+ )
59
+ self.assertIn("TERM_VARIANTS_PRESENT", {item.code for item in findings})
60
+
61
+
62
+ if __name__ == "__main__":
63
+ unittest.main()