@wentorai/research-plugins 1.0.0

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 (252) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +204 -0
  3. package/curated/analysis/README.md +64 -0
  4. package/curated/domains/README.md +104 -0
  5. package/curated/literature/README.md +53 -0
  6. package/curated/research/README.md +62 -0
  7. package/curated/tools/README.md +87 -0
  8. package/curated/writing/README.md +61 -0
  9. package/index.ts +39 -0
  10. package/mcp-configs/academic-db/ChatSpatial.json +17 -0
  11. package/mcp-configs/academic-db/academia-mcp.json +17 -0
  12. package/mcp-configs/academic-db/academic-paper-explorer.json +17 -0
  13. package/mcp-configs/academic-db/academic-search-mcp-server.json +17 -0
  14. package/mcp-configs/academic-db/agentinterviews-mcp.json +17 -0
  15. package/mcp-configs/academic-db/all-in-mcp.json +17 -0
  16. package/mcp-configs/academic-db/apple-health-mcp.json +17 -0
  17. package/mcp-configs/academic-db/arxiv-latex-mcp.json +17 -0
  18. package/mcp-configs/academic-db/arxiv-mcp-server.json +17 -0
  19. package/mcp-configs/academic-db/bgpt-mcp.json +17 -0
  20. package/mcp-configs/academic-db/biomcp.json +17 -0
  21. package/mcp-configs/academic-db/biothings-mcp.json +17 -0
  22. package/mcp-configs/academic-db/catalysishub-mcp-server.json +17 -0
  23. package/mcp-configs/academic-db/clinicaltrialsgov-mcp-server.json +17 -0
  24. package/mcp-configs/academic-db/deep-research-mcp.json +17 -0
  25. package/mcp-configs/academic-db/dicom-mcp.json +17 -0
  26. package/mcp-configs/academic-db/enrichr-mcp-server.json +17 -0
  27. package/mcp-configs/academic-db/fec-mcp-server.json +17 -0
  28. package/mcp-configs/academic-db/fhir-mcp-server-themomentum.json +17 -0
  29. package/mcp-configs/academic-db/fhir-mcp.json +19 -0
  30. package/mcp-configs/academic-db/gget-mcp.json +17 -0
  31. package/mcp-configs/academic-db/google-researcher-mcp.json +17 -0
  32. package/mcp-configs/academic-db/idea-reality-mcp.json +17 -0
  33. package/mcp-configs/academic-db/legiscan-mcp.json +19 -0
  34. package/mcp-configs/academic-db/lex.json +17 -0
  35. package/mcp-configs/ai-platform/Adaptive-Graph-of-Thoughts-MCP-server.json +17 -0
  36. package/mcp-configs/ai-platform/ai-counsel.json +17 -0
  37. package/mcp-configs/ai-platform/atlas-mcp-server.json +17 -0
  38. package/mcp-configs/ai-platform/counsel-mcp.json +17 -0
  39. package/mcp-configs/ai-platform/cross-llm-mcp.json +17 -0
  40. package/mcp-configs/ai-platform/gptr-mcp.json +17 -0
  41. package/mcp-configs/browser/decipher-research-agent.json +17 -0
  42. package/mcp-configs/browser/deep-research.json +17 -0
  43. package/mcp-configs/browser/everything-claude-code.json +17 -0
  44. package/mcp-configs/browser/gpt-researcher.json +17 -0
  45. package/mcp-configs/browser/heurist-agent-framework.json +17 -0
  46. package/mcp-configs/data-platform/4everland-hosting-mcp.json +17 -0
  47. package/mcp-configs/data-platform/context-keeper.json +17 -0
  48. package/mcp-configs/data-platform/context7.json +19 -0
  49. package/mcp-configs/data-platform/contextstream-mcp.json +17 -0
  50. package/mcp-configs/data-platform/email-mcp.json +17 -0
  51. package/mcp-configs/note-knowledge/ApeRAG.json +17 -0
  52. package/mcp-configs/note-knowledge/In-Memoria.json +17 -0
  53. package/mcp-configs/note-knowledge/agent-memory.json +17 -0
  54. package/mcp-configs/note-knowledge/aimemo.json +17 -0
  55. package/mcp-configs/note-knowledge/biel-mcp.json +19 -0
  56. package/mcp-configs/note-knowledge/cognee.json +17 -0
  57. package/mcp-configs/note-knowledge/context-awesome.json +17 -0
  58. package/mcp-configs/note-knowledge/context-mcp.json +17 -0
  59. package/mcp-configs/note-knowledge/conversation-handoff-mcp.json +17 -0
  60. package/mcp-configs/note-knowledge/cortex.json +17 -0
  61. package/mcp-configs/note-knowledge/devrag.json +17 -0
  62. package/mcp-configs/note-knowledge/easy-obsidian-mcp.json +17 -0
  63. package/mcp-configs/note-knowledge/engram.json +17 -0
  64. package/mcp-configs/note-knowledge/gnosis-mcp.json +17 -0
  65. package/mcp-configs/note-knowledge/graphlit-mcp-server.json +19 -0
  66. package/mcp-configs/reference-mgr/arxiv-cli.json +17 -0
  67. package/mcp-configs/reference-mgr/arxiv-search-mcp.json +17 -0
  68. package/mcp-configs/reference-mgr/chiken.json +17 -0
  69. package/mcp-configs/reference-mgr/claude-scholar.json +17 -0
  70. package/mcp-configs/reference-mgr/devonthink-mcp.json +17 -0
  71. package/mcp-configs/registry.json +447 -0
  72. package/openclaw.plugin.json +21 -0
  73. package/package.json +61 -0
  74. package/skills/analysis/dataviz/color-accessibility-guide/SKILL.md +230 -0
  75. package/skills/analysis/dataviz/geospatial-viz-guide/SKILL.md +218 -0
  76. package/skills/analysis/dataviz/interactive-viz-guide/SKILL.md +287 -0
  77. package/skills/analysis/dataviz/network-visualization-guide/SKILL.md +195 -0
  78. package/skills/analysis/dataviz/publication-figures-guide/SKILL.md +238 -0
  79. package/skills/analysis/dataviz/python-dataviz-guide/SKILL.md +195 -0
  80. package/skills/analysis/econometrics/causal-inference-guide/SKILL.md +197 -0
  81. package/skills/analysis/econometrics/iv-regression-guide/SKILL.md +198 -0
  82. package/skills/analysis/econometrics/panel-data-guide/SKILL.md +274 -0
  83. package/skills/analysis/econometrics/robustness-checks/SKILL.md +250 -0
  84. package/skills/analysis/econometrics/stata-regression/SKILL.md +117 -0
  85. package/skills/analysis/econometrics/time-series-guide/SKILL.md +235 -0
  86. package/skills/analysis/statistics/bayesian-statistics-guide/SKILL.md +221 -0
  87. package/skills/analysis/statistics/hypothesis-testing-guide/SKILL.md +210 -0
  88. package/skills/analysis/statistics/meta-analysis-guide/SKILL.md +206 -0
  89. package/skills/analysis/statistics/nonparametric-tests-guide/SKILL.md +221 -0
  90. package/skills/analysis/statistics/power-analysis-guide/SKILL.md +240 -0
  91. package/skills/analysis/statistics/sem-guide/SKILL.md +231 -0
  92. package/skills/analysis/statistics/survival-analysis-guide/SKILL.md +195 -0
  93. package/skills/analysis/wrangling/missing-data-handling/SKILL.md +224 -0
  94. package/skills/analysis/wrangling/pandas-data-wrangling/SKILL.md +242 -0
  95. package/skills/analysis/wrangling/questionnaire-design-guide/SKILL.md +234 -0
  96. package/skills/analysis/wrangling/text-mining-guide/SKILL.md +225 -0
  97. package/skills/domains/ai-ml/computer-vision-guide/SKILL.md +213 -0
  98. package/skills/domains/ai-ml/deep-learning-papers-guide/SKILL.md +200 -0
  99. package/skills/domains/ai-ml/llm-evaluation-guide/SKILL.md +194 -0
  100. package/skills/domains/ai-ml/prompt-engineering-research/SKILL.md +233 -0
  101. package/skills/domains/ai-ml/reinforcement-learning-guide/SKILL.md +254 -0
  102. package/skills/domains/ai-ml/transformer-architecture-guide/SKILL.md +233 -0
  103. package/skills/domains/biomedical/clinical-research-guide/SKILL.md +232 -0
  104. package/skills/domains/biomedical/clinicaltrials-api/SKILL.md +177 -0
  105. package/skills/domains/biomedical/epidemiology-guide/SKILL.md +200 -0
  106. package/skills/domains/biomedical/genomics-analysis-guide/SKILL.md +270 -0
  107. package/skills/domains/business/market-analysis-guide/SKILL.md +112 -0
  108. package/skills/domains/business/strategic-management-guide/SKILL.md +154 -0
  109. package/skills/domains/chemistry/computational-chemistry-guide/SKILL.md +266 -0
  110. package/skills/domains/chemistry/retrosynthesis-guide/SKILL.md +215 -0
  111. package/skills/domains/cs/algorithms-complexity-guide/SKILL.md +194 -0
  112. package/skills/domains/cs/dblp-api/SKILL.md +129 -0
  113. package/skills/domains/cs/software-engineering-research/SKILL.md +218 -0
  114. package/skills/domains/ecology/biodiversity-data-guide/SKILL.md +296 -0
  115. package/skills/domains/ecology/conservation-biology-guide/SKILL.md +198 -0
  116. package/skills/domains/ecology/gbif-api/SKILL.md +158 -0
  117. package/skills/domains/ecology/inaturalist-api/SKILL.md +173 -0
  118. package/skills/domains/economics/behavioral-economics-guide/SKILL.md +239 -0
  119. package/skills/domains/economics/development-economics-guide/SKILL.md +181 -0
  120. package/skills/domains/economics/fred-api/SKILL.md +189 -0
  121. package/skills/domains/education/curriculum-design-guide/SKILL.md +144 -0
  122. package/skills/domains/education/learning-science-guide/SKILL.md +150 -0
  123. package/skills/domains/finance/financial-data-analysis/SKILL.md +152 -0
  124. package/skills/domains/finance/quantitative-finance-guide/SKILL.md +151 -0
  125. package/skills/domains/geoscience/climate-science-guide/SKILL.md +158 -0
  126. package/skills/domains/geoscience/gis-remote-sensing-guide/SKILL.md +129 -0
  127. package/skills/domains/humanities/digital-humanities-guide/SKILL.md +181 -0
  128. package/skills/domains/humanities/philosophy-research-guide/SKILL.md +148 -0
  129. package/skills/domains/law/courtlistener-api/SKILL.md +213 -0
  130. package/skills/domains/law/legal-research-guide/SKILL.md +250 -0
  131. package/skills/domains/math/linear-algebra-applications/SKILL.md +227 -0
  132. package/skills/domains/math/numerical-methods-guide/SKILL.md +236 -0
  133. package/skills/domains/math/oeis-api/SKILL.md +158 -0
  134. package/skills/domains/pharma/clinical-pharmacology-guide/SKILL.md +165 -0
  135. package/skills/domains/pharma/drug-development-guide/SKILL.md +177 -0
  136. package/skills/domains/physics/computational-physics-guide/SKILL.md +300 -0
  137. package/skills/domains/physics/nasa-ads-api/SKILL.md +150 -0
  138. package/skills/domains/physics/quantum-computing-guide/SKILL.md +234 -0
  139. package/skills/domains/social-science/social-research-methods/SKILL.md +194 -0
  140. package/skills/domains/social-science/survey-research-guide/SKILL.md +182 -0
  141. package/skills/literature/discovery/citation-alert-guide/SKILL.md +154 -0
  142. package/skills/literature/discovery/conference-proceedings-guide/SKILL.md +142 -0
  143. package/skills/literature/discovery/literature-mapping-guide/SKILL.md +175 -0
  144. package/skills/literature/discovery/paper-tracking-guide/SKILL.md +211 -0
  145. package/skills/literature/discovery/rss-paper-feeds/SKILL.md +214 -0
  146. package/skills/literature/discovery/semantic-scholar-recs-guide/SKILL.md +164 -0
  147. package/skills/literature/fulltext/doaj-api/SKILL.md +120 -0
  148. package/skills/literature/fulltext/interlibrary-loan-guide/SKILL.md +163 -0
  149. package/skills/literature/fulltext/open-access-guide/SKILL.md +183 -0
  150. package/skills/literature/fulltext/pmc-oai-api/SKILL.md +184 -0
  151. package/skills/literature/fulltext/preprint-servers-guide/SKILL.md +128 -0
  152. package/skills/literature/fulltext/repository-harvesting-guide/SKILL.md +207 -0
  153. package/skills/literature/fulltext/unpaywall-api/SKILL.md +113 -0
  154. package/skills/literature/metadata/altmetrics-guide/SKILL.md +132 -0
  155. package/skills/literature/metadata/citation-network-guide/SKILL.md +236 -0
  156. package/skills/literature/metadata/crossref-api/SKILL.md +133 -0
  157. package/skills/literature/metadata/datacite-api/SKILL.md +126 -0
  158. package/skills/literature/metadata/doi-resolution-guide/SKILL.md +168 -0
  159. package/skills/literature/metadata/h-index-guide/SKILL.md +183 -0
  160. package/skills/literature/metadata/journal-metrics-guide/SKILL.md +188 -0
  161. package/skills/literature/metadata/opencitations-api/SKILL.md +128 -0
  162. package/skills/literature/metadata/orcid-api/SKILL.md +136 -0
  163. package/skills/literature/metadata/orcid-integration-guide/SKILL.md +178 -0
  164. package/skills/literature/search/arxiv-api/SKILL.md +95 -0
  165. package/skills/literature/search/biorxiv-api/SKILL.md +123 -0
  166. package/skills/literature/search/boolean-search-guide/SKILL.md +199 -0
  167. package/skills/literature/search/citation-chaining-guide/SKILL.md +148 -0
  168. package/skills/literature/search/database-comparison-guide/SKILL.md +100 -0
  169. package/skills/literature/search/europe-pmc-api/SKILL.md +120 -0
  170. package/skills/literature/search/google-scholar-guide/SKILL.md +182 -0
  171. package/skills/literature/search/mesh-terms-guide/SKILL.md +164 -0
  172. package/skills/literature/search/openalex-api/SKILL.md +134 -0
  173. package/skills/literature/search/pubmed-api/SKILL.md +130 -0
  174. package/skills/literature/search/scientify-literature-survey/SKILL.md +203 -0
  175. package/skills/literature/search/semantic-scholar-api/SKILL.md +134 -0
  176. package/skills/literature/search/systematic-search-strategy/SKILL.md +214 -0
  177. package/skills/research/automation/ai-scientist-guide/SKILL.md +228 -0
  178. package/skills/research/automation/data-collection-automation/SKILL.md +248 -0
  179. package/skills/research/automation/research-workflow-automation/SKILL.md +266 -0
  180. package/skills/research/deep-research/meta-synthesis-guide/SKILL.md +174 -0
  181. package/skills/research/deep-research/research-cog/SKILL.md +153 -0
  182. package/skills/research/deep-research/scoping-review-guide/SKILL.md +217 -0
  183. package/skills/research/deep-research/systematic-review-guide/SKILL.md +250 -0
  184. package/skills/research/funding/figshare-api/SKILL.md +163 -0
  185. package/skills/research/funding/grant-writing-guide/SKILL.md +233 -0
  186. package/skills/research/funding/nsf-grant-guide/SKILL.md +206 -0
  187. package/skills/research/funding/open-science-guide/SKILL.md +255 -0
  188. package/skills/research/funding/zenodo-api/SKILL.md +174 -0
  189. package/skills/research/methodology/action-research-guide/SKILL.md +201 -0
  190. package/skills/research/methodology/experimental-design-guide/SKILL.md +236 -0
  191. package/skills/research/methodology/grad-school-guide/SKILL.md +182 -0
  192. package/skills/research/methodology/grounded-theory-guide/SKILL.md +171 -0
  193. package/skills/research/methodology/mixed-methods-guide/SKILL.md +208 -0
  194. package/skills/research/methodology/qualitative-research-guide/SKILL.md +234 -0
  195. package/skills/research/methodology/scientify-idea-generation/SKILL.md +222 -0
  196. package/skills/research/paper-review/paper-reading-assistant/SKILL.md +266 -0
  197. package/skills/research/paper-review/peer-review-guide/SKILL.md +227 -0
  198. package/skills/research/paper-review/rebuttal-writing-guide/SKILL.md +185 -0
  199. package/skills/research/paper-review/scientify-write-review-paper/SKILL.md +209 -0
  200. package/skills/tools/code-exec/jupyter-notebook-guide/SKILL.md +178 -0
  201. package/skills/tools/code-exec/python-reproducibility-guide/SKILL.md +341 -0
  202. package/skills/tools/code-exec/r-reproducibility-guide/SKILL.md +236 -0
  203. package/skills/tools/code-exec/sandbox-execution-guide/SKILL.md +221 -0
  204. package/skills/tools/diagram/mermaid-diagram-guide/SKILL.md +269 -0
  205. package/skills/tools/diagram/plantuml-guide/SKILL.md +397 -0
  206. package/skills/tools/diagram/scientific-illustration-guide/SKILL.md +225 -0
  207. package/skills/tools/document/anystyle-api/SKILL.md +199 -0
  208. package/skills/tools/document/grobid-pdf-parsing/SKILL.md +294 -0
  209. package/skills/tools/document/markdown-academic-guide/SKILL.md +217 -0
  210. package/skills/tools/document/pdf-extraction-guide/SKILL.md +321 -0
  211. package/skills/tools/knowledge-graph/knowledge-graph-construction/SKILL.md +306 -0
  212. package/skills/tools/knowledge-graph/ontology-design-guide/SKILL.md +214 -0
  213. package/skills/tools/knowledge-graph/rag-methodology-guide/SKILL.md +325 -0
  214. package/skills/tools/ocr-translate/formula-recognition-guide/SKILL.md +367 -0
  215. package/skills/tools/ocr-translate/handwriting-recognition-guide/SKILL.md +211 -0
  216. package/skills/tools/ocr-translate/latex-ocr-guide/SKILL.md +204 -0
  217. package/skills/tools/ocr-translate/multilingual-research-guide/SKILL.md +234 -0
  218. package/skills/tools/scraping/academic-web-scraping/SKILL.md +326 -0
  219. package/skills/tools/scraping/api-data-collection-guide/SKILL.md +301 -0
  220. package/skills/tools/scraping/web-scraping-ethics-guide/SKILL.md +250 -0
  221. package/skills/writing/citation/bibtex-management-guide/SKILL.md +246 -0
  222. package/skills/writing/citation/citation-style-guide/SKILL.md +248 -0
  223. package/skills/writing/citation/reference-manager-comparison/SKILL.md +208 -0
  224. package/skills/writing/citation/zotero-api/SKILL.md +188 -0
  225. package/skills/writing/composition/abstract-writing-guide/SKILL.md +188 -0
  226. package/skills/writing/composition/discussion-writing-guide/SKILL.md +194 -0
  227. package/skills/writing/composition/introduction-writing-guide/SKILL.md +194 -0
  228. package/skills/writing/composition/literature-review-writing/SKILL.md +196 -0
  229. package/skills/writing/composition/methods-section-guide/SKILL.md +185 -0
  230. package/skills/writing/composition/response-to-reviewers/SKILL.md +215 -0
  231. package/skills/writing/composition/scientific-writing-guide/SKILL.md +152 -0
  232. package/skills/writing/latex/bibliography-management-guide/SKILL.md +206 -0
  233. package/skills/writing/latex/latex-drawing-guide/SKILL.md +234 -0
  234. package/skills/writing/latex/latex-ecosystem-guide/SKILL.md +240 -0
  235. package/skills/writing/latex/math-typesetting-guide/SKILL.md +231 -0
  236. package/skills/writing/latex/overleaf-collaboration-guide/SKILL.md +211 -0
  237. package/skills/writing/latex/tikz-diagrams-guide/SKILL.md +211 -0
  238. package/skills/writing/polish/academic-translation-guide/SKILL.md +175 -0
  239. package/skills/writing/polish/academic-writing-refiner/SKILL.md +143 -0
  240. package/skills/writing/polish/ai-writing-humanizer/SKILL.md +178 -0
  241. package/skills/writing/polish/grammar-checker-guide/SKILL.md +184 -0
  242. package/skills/writing/polish/plagiarism-detection-guide/SKILL.md +167 -0
  243. package/skills/writing/templates/beamer-presentation-guide/SKILL.md +263 -0
  244. package/skills/writing/templates/conference-paper-template/SKILL.md +219 -0
  245. package/skills/writing/templates/thesis-template-guide/SKILL.md +200 -0
  246. package/skills/writing/templates/thesis-writing-guide/SKILL.md +220 -0
  247. package/src/tools/arxiv.ts +131 -0
  248. package/src/tools/crossref.ts +112 -0
  249. package/src/tools/openalex.ts +174 -0
  250. package/src/tools/pubmed.ts +166 -0
  251. package/src/tools/semantic-scholar.ts +108 -0
  252. package/src/tools/unpaywall.ts +58 -0
@@ -0,0 +1,148 @@
1
+ ---
2
+ name: philosophy-research-guide
3
+ description: "Research methods and analytical frameworks for philosophical inquiry and scho..."
4
+ metadata:
5
+ openclaw:
6
+ emoji: "owl"
7
+ category: "domains"
8
+ subcategory: "humanities"
9
+ keywords: ["philosophy", "ethics", "epistemology", "history", "logic", "argumentation"]
10
+ source: "wentor"
11
+ ---
12
+
13
+ # Philosophy Research Guide
14
+
15
+ A skill for conducting rigorous philosophical research, from constructing arguments and analyzing texts to writing publishable philosophy papers. Covers major subfields, argumentation methods, and the distinctive methodology of philosophical inquiry.
16
+
17
+ ## Philosophical Argumentation
18
+
19
+ ### Argument Structure and Evaluation
20
+
21
+ Every philosophical argument can be reconstructed in standard form:
22
+
23
+ ```
24
+ Premise 1: All knowledge requires justification. (epistemic principle)
25
+ Premise 2: Sensory experience alone cannot provide certainty. (empirical claim)
26
+ Premise 3: If knowledge requires certainty, then sensory experience
27
+ is insufficient for knowledge. (conditional from P1, P2)
28
+ Conclusion: Therefore, knowledge requires something beyond sensory
29
+ experience. (from P1, P2, P3 by modus ponens)
30
+ ```
31
+
32
+ ### Validity and Soundness Checks
33
+
34
+ ```python
35
+ def evaluate_argument(premises: list[str], conclusion: str,
36
+ premises_true: list[bool],
37
+ valid: bool) -> dict:
38
+ """
39
+ Evaluate an argument's logical properties.
40
+
41
+ An argument is:
42
+ - Valid: if the conclusion follows necessarily from the premises
43
+ - Sound: if it is valid AND all premises are true
44
+ - Cogent (inductive): if premises make conclusion probable
45
+ """
46
+ all_true = all(premises_true)
47
+ sound = valid and all_true
48
+
49
+ return {
50
+ 'n_premises': len(premises),
51
+ 'valid': valid,
52
+ 'all_premises_true': all_true,
53
+ 'sound': sound,
54
+ 'diagnosis': (
55
+ 'Sound argument' if sound
56
+ else 'Valid but unsound (false premise)' if valid
57
+ else 'Invalid argument -- conclusion does not follow'
58
+ )
59
+ }
60
+ ```
61
+
62
+ ### Common Logical Fallacies
63
+
64
+ Identify and avoid these in philosophical writing:
65
+
66
+ | Fallacy | Structure | Example |
67
+ |---------|-----------|---------|
68
+ | Affirming the consequent | If P then Q; Q; therefore P | "If it rained, the street is wet. The street is wet. Therefore it rained." |
69
+ | Begging the question | Assuming the conclusion in a premise | "God exists because the Bible says so, and the Bible is true because it is God's word." |
70
+ | False dilemma | Presenting only two options when more exist | "Either we have free will or everything is determined." |
71
+ | Equivocation | Using a term with different meanings | "A bank is beside a river. I deposit money in a bank. Therefore I deposit money beside a river." |
72
+ | Straw man | Misrepresenting an opponent's position | Attacking a weakened version of the actual argument |
73
+
74
+ ## Research Methods by Subfield
75
+
76
+ ### Epistemology
77
+
78
+ Key research questions and methods:
79
+
80
+ - **Analysis of knowledge**: Examine Gettier-style counterexamples to JTB (justified true belief)
81
+ - **Thought experiments**: Construct carefully specified scenarios to test intuitions
82
+ - **Formal epistemology**: Apply Bayesian probability, decision theory, and logic
83
+
84
+ ### Ethics and Applied Ethics
85
+
86
+ Systematic approach to ethical analysis:
87
+
88
+ ```
89
+ Step 1: Identify the moral question clearly
90
+ Step 2: Gather relevant empirical facts
91
+ Step 3: Apply ethical frameworks:
92
+ - Consequentialism: What outcomes does each option produce?
93
+ - Deontology: What duties or rules apply?
94
+ - Virtue ethics: What would a virtuous person do?
95
+ - Care ethics: What relationships and responsibilities are involved?
96
+ Step 4: Identify conflicts between frameworks
97
+ Step 5: Construct a reasoned position addressing objections
98
+ Step 6: Consider implications and edge cases
99
+ ```
100
+
101
+ ### History of Philosophy
102
+
103
+ Hermeneutic methodology for textual interpretation:
104
+
105
+ 1. **Close reading**: Analyze the primary text sentence by sentence
106
+ 2. **Historical context**: Situate the text within its intellectual and social milieu
107
+ 3. **Charitable interpretation**: Apply the principle of charity (interpret ambiguous passages in the strongest possible way)
108
+ 4. **Systematic reconstruction**: Build a coherent account of the philosopher's position
109
+ 5. **Critical evaluation**: Assess internal consistency and compare with rival interpretations
110
+
111
+ ## Writing Philosophy Papers
112
+
113
+ ### Paper Structure
114
+
115
+ A standard analytic philosophy paper follows this structure:
116
+
117
+ ```
118
+ 1. Introduction (10%)
119
+ - State the thesis clearly in the first paragraph
120
+ - Preview the argument structure
121
+
122
+ 2. Background / Setup (15%)
123
+ - Present the problem or debate
124
+ - Define key terms precisely
125
+
126
+ 3. Main Argument (40%)
127
+ - Present the argument in numbered steps
128
+ - Provide support for each premise
129
+
130
+ 4. Objections and Replies (25%)
131
+ - Consider the strongest objections
132
+ - Provide substantive responses
133
+
134
+ 5. Conclusion (10%)
135
+ - Summarize without merely repeating
136
+ - Note limitations and future directions
137
+ ```
138
+
139
+ ### Citation Practices
140
+
141
+ Philosophy primarily uses author-date citations and engages directly with the text. Quote passages when the exact wording matters for the argument. Always cite the most authoritative edition of historical texts (e.g., Bekker numbers for Aristotle, Adam and Tannery for Descartes).
142
+
143
+ ## Key Databases
144
+
145
+ - PhilPapers (philpapers.org): the most comprehensive philosophy bibliography
146
+ - JSTOR: historical journal archives
147
+ - Stanford Encyclopedia of Philosophy (SEP): authoritative survey articles
148
+ - PhilArchive: open-access preprint repository for philosophy
@@ -0,0 +1,213 @@
1
+ ---
2
+ name: courtlistener-api
3
+ description: "Legal case law database with PACER data and judge profiles"
4
+ metadata:
5
+ openclaw:
6
+ emoji: "🔍"
7
+ category: "domains"
8
+ subcategory: "law"
9
+ keywords: ["law", "case law", "legal theory", "compliance analysis", "jurisprudence"]
10
+ source: "https://www.courtlistener.com/api/rest-info/"
11
+ ---
12
+
13
+ # CourtListener API Guide
14
+
15
+ ## Overview
16
+
17
+ CourtListener is a free legal research platform operated by Free Law Project, a non-profit organization dedicated to making legal data freely accessible. The platform hosts one of the largest open collections of U.S. case law, containing millions of court opinions, docket entries, oral arguments, and judge profiles sourced from PACER (Public Access to Court Electronic Records), state court websites, and historical digitization efforts.
18
+
19
+ The CourtListener REST API provides programmatic access to this extensive legal database, enabling searches across court opinions, dockets, judge biographical data, and court information. The API covers federal courts (Supreme Court, Circuit Courts, District Courts, Bankruptcy Courts) and many state courts, with records spanning from the founding of the republic to the present day.
20
+
21
+ Legal scholars, law students, practicing attorneys, journalists, policy researchers, and civic technologists use the CourtListener API to conduct legal research, perform empirical legal studies, build litigation analytics tools, track judicial behavior, monitor active litigation, and analyze trends in case law. It serves as a critical resource for computational legal studies and access-to-justice initiatives.
22
+
23
+ ## Authentication
24
+
25
+ No authentication is required for basic API access. The CourtListener API is publicly accessible for read operations. However, creating an account and using an API token provides higher rate limits and access to additional features. Authentication is recommended for production applications.
26
+
27
+ To obtain an API token:
28
+ 1. Create a free account at https://www.courtlistener.com/
29
+ 2. Navigate to your profile settings
30
+ 3. Generate an API token
31
+ 4. Include it in the `Authorization` header
32
+
33
+ ```bash
34
+ # Unauthenticated request
35
+ curl "https://www.courtlistener.com/api/rest/v4/opinions/?q=first+amendment"
36
+
37
+ # Authenticated request (higher rate limits)
38
+ curl -H "Authorization: Token YOUR_TOKEN" \
39
+ "https://www.courtlistener.com/api/rest/v4/opinions/?q=first+amendment"
40
+ ```
41
+
42
+ ## Core Endpoints
43
+
44
+ ### opinions: Search Court Opinions
45
+
46
+ Search and retrieve the full text of court opinions (judicial decisions) across all indexed courts.
47
+
48
+ - **URL**: `GET https://www.courtlistener.com/api/rest/v4/opinions/`
49
+ - **Parameters**:
50
+
51
+ | Parameter | Type | Required | Description |
52
+ |----------------|--------|----------|------------------------------------------------------|
53
+ | q | string | No | Full-text search query |
54
+ | court | string | No | Court identifier (e.g., `scotus`, `ca9`) |
55
+ | date_filed_min | string | No | Minimum filing date (YYYY-MM-DD) |
56
+ | date_filed_max | string | No | Maximum filing date (YYYY-MM-DD) |
57
+ | type | string | No | Opinion type: `010combined`, `020lead`, etc. |
58
+ | ordering | string | No | Sort order: `date_filed`, `-date_filed` |
59
+ | page | int | No | Page number for pagination |
60
+
61
+ - **Example**:
62
+
63
+ ```bash
64
+ curl "https://www.courtlistener.com/api/rest/v4/opinions/?q=privacy+fourth+amendment&court=scotus&ordering=-date_filed"
65
+ ```
66
+
67
+ - **Response**: Returns paginated results with `count`, `next`, `previous`, and `results` array. Each opinion includes `id`, `absolute_url`, `cluster` (case metadata), `author` (judge), `type`, `date_filed`, `plain_text` or `html` (opinion text), `download_url`, and `citations`.
68
+
69
+ ### dockets: Access Case Dockets
70
+
71
+ Search and retrieve docket information including case metadata, parties, attorneys, and docket entries from PACER and other sources.
72
+
73
+ - **URL**: `GET https://www.courtlistener.com/api/rest/v4/dockets/`
74
+ - **Parameters**:
75
+
76
+ | Parameter | Type | Required | Description |
77
+ |-----------------|--------|----------|---------------------------------------------------|
78
+ | q | string | No | Full-text search query |
79
+ | court | string | No | Court identifier |
80
+ | date_filed_min | string | No | Minimum filing date |
81
+ | date_filed_max | string | No | Maximum filing date |
82
+ | case_name | string | No | Filter by case name |
83
+ | docket_number | string | No | Filter by docket number |
84
+ | ordering | string | No | Sort order field |
85
+
86
+ - **Example**:
87
+
88
+ ```bash
89
+ curl "https://www.courtlistener.com/api/rest/v4/dockets/?q=antitrust&court=scotus&ordering=-date_filed"
90
+ ```
91
+
92
+ - **Response**: Returns `count`, `results` array with `id`, `case_name`, `docket_number`, `court`, `date_filed`, `date_terminated`, `nature_of_suit`, `assigned_to` (judge), `referred_to`, and `docket_entries`.
93
+
94
+ ### courts: Court Information
95
+
96
+ Retrieve information about courts in the CourtListener database, including jurisdiction, location, and identifiers.
97
+
98
+ - **URL**: `GET https://www.courtlistener.com/api/rest/v4/courts/`
99
+ - **Parameters**:
100
+
101
+ | Parameter | Type | Required | Description |
102
+ |--------------|--------|----------|-------------------------------------------------|
103
+ | jurisdiction | string | No | Filter by jurisdiction type: `F` (federal), `S` (state) |
104
+
105
+ - **Example**:
106
+
107
+ ```bash
108
+ curl "https://www.courtlistener.com/api/rest/v4/courts/?jurisdiction=F"
109
+ ```
110
+
111
+ - **Response**: Returns court objects with `id`, `full_name`, `short_name`, `jurisdiction`, `position`, `start_date`, `end_date`, and `url`.
112
+
113
+ ### people: Judge Profiles
114
+
115
+ Access biographical and professional information about judges, including their appointment history, education, and political affiliations.
116
+
117
+ - **URL**: `GET https://www.courtlistener.com/api/rest/v4/people/`
118
+ - **Parameters**:
119
+
120
+ | Parameter | Type | Required | Description |
121
+ |--------------|--------|----------|------------------------------------------|
122
+ | q | string | No | Name search query |
123
+ | court | string | No | Filter by court served |
124
+ | appointer | int | No | Filter by appointing authority |
125
+
126
+ - **Example**:
127
+
128
+ ```bash
129
+ curl "https://www.courtlistener.com/api/rest/v4/people/?q=ginsburg"
130
+ ```
131
+
132
+ - **Response**: Returns judge profiles with `id`, `name_first`, `name_last`, `date_of_birth`, `gender`, `positions` (court appointments with dates), `education`, `political_affiliations`, and `aba_ratings`.
133
+
134
+ ### search: Unified Search
135
+
136
+ Perform a unified full-text search across all CourtListener content types.
137
+
138
+ - **URL**: `GET https://www.courtlistener.com/api/rest/v4/search/`
139
+ - **Parameters**:
140
+
141
+ | Parameter | Type | Required | Description |
142
+ |-----------|--------|----------|-----------------------------------------------|
143
+ | q | string | Yes | Search query |
144
+ | type | string | No | Content type: `o` (opinions), `r` (RECAP), `oa` (oral arguments) |
145
+
146
+ - **Example**:
147
+
148
+ ```bash
149
+ curl "https://www.courtlistener.com/api/rest/v4/search/?q=net+neutrality&type=o"
150
+ ```
151
+
152
+ - **Response**: Returns unified search results with relevance scoring across content types.
153
+
154
+ ## Rate Limits
155
+
156
+ The CourtListener API allows up to 5,000 requests per hour for unauthenticated users. Authenticated users with API tokens receive higher limits. The API returns standard HTTP 429 responses when limits are exceeded. For bulk data access, CourtListener provides downloadable bulk data files at https://www.courtlistener.com/api/bulk-info/ which are more appropriate for large-scale research projects. The bulk data includes complete opinion texts, docket metadata, and judge biographical data.
157
+
158
+ ## Common Patterns
159
+
160
+ ### Track Recent Supreme Court Opinions
161
+
162
+ Monitor new opinions from the Supreme Court of the United States:
163
+
164
+ ```python
165
+ import requests
166
+
167
+ params = {
168
+ "court": "scotus",
169
+ "ordering": "-date_filed",
170
+ "page_size": 10
171
+ }
172
+ resp = requests.get("https://www.courtlistener.com/api/rest/v4/opinions/", params=params)
173
+ data = resp.json()
174
+
175
+ for opinion in data["results"]:
176
+ cluster = opinion.get("cluster", {})
177
+ print(f"{opinion['date_filed']}: {cluster.get('case_name', 'Unknown')}")
178
+ ```
179
+
180
+ ### Empirical Analysis of Judicial Citations
181
+
182
+ Study citation patterns across courts and time periods:
183
+
184
+ ```python
185
+ import requests
186
+
187
+ params = {
188
+ "q": "stare decisis",
189
+ "court": "scotus",
190
+ "date_filed_min": "2020-01-01",
191
+ "ordering": "-date_filed"
192
+ }
193
+ resp = requests.get("https://www.courtlistener.com/api/rest/v4/search/", params={**params, "type": "o"})
194
+ results = resp.json()
195
+
196
+ print(f"Found {results['count']} opinions mentioning 'stare decisis' since 2020")
197
+ ```
198
+
199
+ ### Judge Appointment Analysis
200
+
201
+ Research judicial appointments and their characteristics:
202
+
203
+ ```bash
204
+ curl "https://www.courtlistener.com/api/rest/v4/people/?court=scotus&ordering=-date_nominated"
205
+ ```
206
+
207
+ ## References
208
+
209
+ - Official API documentation: https://www.courtlistener.com/api/rest-info/
210
+ - CourtListener homepage: https://www.courtlistener.com/
211
+ - Bulk data downloads: https://www.courtlistener.com/api/bulk-info/
212
+ - Free Law Project: https://free.law/
213
+ - RECAP Archive: https://www.courtlistener.com/recap/
@@ -0,0 +1,250 @@
1
+ ---
2
+ name: legal-research-guide
3
+ description: "Legal research methods, case law analysis, and compliance tools"
4
+ metadata:
5
+ openclaw:
6
+ emoji: "scales"
7
+ category: "domains"
8
+ subcategory: "law"
9
+ keywords: ["law", "jurisprudence", "case law", "compliance analysis"]
10
+ source: "wentor-research-plugins"
11
+ ---
12
+
13
+ # Legal Research Guide
14
+
15
+ Conduct systematic legal research across jurisdictions, analyze case law, navigate statutory frameworks, and use computational legal tools for academic and practice-oriented research.
16
+
17
+ ## Legal Research Frameworks
18
+
19
+ ### IRAC Method
20
+
21
+ The standard analytical framework for legal reasoning:
22
+
23
+ | Step | Description | Example |
24
+ |------|-------------|---------|
25
+ | **Issue** | Identify the legal question | "Does web scraping of public data constitute a CFAA violation?" |
26
+ | **Rule** | State the applicable legal rule | "The CFAA prohibits accessing a computer 'without authorization' or 'exceeding authorized access'" |
27
+ | **Application** | Apply the rule to the facts | "In hiQ v. LinkedIn, the 9th Circuit held that scraping publicly available data does not violate the CFAA..." |
28
+ | **Conclusion** | State the legal conclusion | "Therefore, scraping publicly available academic data likely does not violate the CFAA, though terms-of-service issues remain." |
29
+
30
+ ### CREAC Method (For Academic Legal Writing)
31
+
32
+ ```
33
+ C - Conclusion (state your thesis)
34
+ R - Rule (present the legal rule with authority)
35
+ E - Explanation (analyze how courts have interpreted the rule)
36
+ A - Application (apply the rule to your specific scenario)
37
+ C - Conclusion (restate and refine conclusion)
38
+ ```
39
+
40
+ ## Legal Research Databases
41
+
42
+ ### Primary Sources
43
+
44
+ | Database | Coverage | Cost | Best For |
45
+ |----------|----------|------|----------|
46
+ | Westlaw (Thomson Reuters) | US, UK, EU, international | Subscription | Comprehensive case law, KeyCite citator |
47
+ | LexisNexis | US, UK, international | Subscription | News integration, Shepard's citator |
48
+ | Google Scholar (Case Law) | US federal and state courts | Free | Quick case lookup, citation tracking |
49
+ | Casetext / CoCounsel | US courts | Subscription | AI-powered legal research |
50
+ | CourtListener | US federal courts | Free | PACER alternative, bulk data |
51
+ | EUR-Lex | EU law | Free | EU legislation, CJEU case law |
52
+ | BAILII | UK, Ireland | Free | UK case law and legislation |
53
+ | Justia | US law | Free | US case law, statutes, regulations |
54
+ | HeinOnline | Historical legal materials | Subscription | Law journals, treaties, legislative history |
55
+
56
+ ### Secondary Sources
57
+
58
+ | Source | Content | Use |
59
+ |--------|---------|-----|
60
+ | Law reviews / journals | Scholarly analysis | Academic research, policy arguments |
61
+ | Restatements | ALI compilations of common law | Authoritative secondary source |
62
+ | Treatises | Comprehensive subject coverage | Deep dive into specific areas |
63
+ | Legal encyclopedias (AmJur, CJS) | Broad legal summaries | Starting point for unfamiliar areas |
64
+ | Practice guides | Practical how-to | Practitioner-oriented research |
65
+
66
+ ## Citation Systems
67
+
68
+ ### Bluebook (US Standard)
69
+
70
+ ```
71
+ # Case citation
72
+ Marbury v. Madison, 5 U.S. (1 Cranch) 137 (1803).
73
+ Brown v. Board of Education, 347 U.S. 483, 495 (1954).
74
+
75
+ # Statute citation
76
+ 42 U.S.C. Section 1983 (2018).
77
+ Cal. Civ. Code Section 1798.100 (West 2020). # California statute
78
+
79
+ # Law review article
80
+ Jane Smith, The Future of AI Regulation, 120 Harv. L. Rev. 456 (2024).
81
+
82
+ # Book
83
+ Richard Posner, Economic Analysis of Law 25 (9th ed. 2014).
84
+
85
+ # Short form citations (after first full citation)
86
+ Brown, 347 U.S. at 495.
87
+ Smith, supra note 12, at 460.
88
+ Id. at 462. # Same source as immediately preceding citation
89
+ ```
90
+
91
+ ### OSCOLA (UK/Oxford Standard)
92
+
93
+ ```
94
+ # Case citation
95
+ Donoghue v Stevenson [1932] AC 562 (HL).
96
+ R v Brown [1994] 1 AC 212, 237 (HL).
97
+
98
+ # Statute citation
99
+ Human Rights Act 1998, s 3.
100
+ Data Protection Act 2018, s 170(1).
101
+
102
+ # Journal article
103
+ Jane Smith, 'The Future of AI Regulation' (2024) 120 Modern Law Review 456.
104
+
105
+ # Book
106
+ Richard Posner, Economic Analysis of Law (9th edn, Aspen 2014) 25.
107
+ ```
108
+
109
+ ## Computational Legal Research
110
+
111
+ ### Case Law Analysis with Python
112
+
113
+ ```python
114
+ import requests
115
+ import json
116
+
117
+ # Using the CourtListener API (free, open-source)
118
+ BASE_URL = "https://www.courtlistener.com/api/rest/v3"
119
+
120
+ def search_opinions(query, court="scotus", page_size=20):
121
+ """Search case opinions via CourtListener API."""
122
+ response = requests.get(
123
+ f"{BASE_URL}/search/",
124
+ params={
125
+ "q": query,
126
+ "type": "o", # opinions
127
+ "court": court,
128
+ "page_size": page_size,
129
+ "order_by": "score desc"
130
+ },
131
+ headers={"Authorization": "Token YOUR_API_TOKEN"}
132
+ )
133
+ results = response.json()
134
+ for case in results.get("results", []):
135
+ print(f"[{case.get('dateFiled', 'N/A')}] {case.get('caseName', 'N/A')}")
136
+ print(f" Court: {case.get('court', 'N/A')}")
137
+ print(f" Citation: {case.get('citation', ['N/A'])[0] if case.get('citation') else 'N/A'}")
138
+ print(f" URL: https://www.courtlistener.com{case.get('absolute_url', '')}")
139
+ return results
140
+
141
+ # Search for AI-related Supreme Court cases
142
+ results = search_opinions("artificial intelligence", court="scotus")
143
+ ```
144
+
145
+ ### Citation Network Analysis
146
+
147
+ ```python
148
+ import networkx as nx
149
+
150
+ def build_citation_network(seed_case_ids, depth=2):
151
+ """Build a citation network starting from seed cases."""
152
+ G = nx.DiGraph()
153
+ visited = set()
154
+ queue = [(cid, 0) for cid in seed_case_ids]
155
+
156
+ while queue:
157
+ case_id, level = queue.pop(0)
158
+ if case_id in visited or level > depth:
159
+ continue
160
+ visited.add(case_id)
161
+
162
+ # Get case metadata and citations
163
+ resp = requests.get(f"{BASE_URL}/opinions/{case_id}/",
164
+ headers={"Authorization": "Token YOUR_API_TOKEN"})
165
+ if resp.status_code != 200:
166
+ continue
167
+
168
+ case = resp.json()
169
+ case_name = case.get("case_name", f"Case {case_id}")
170
+ G.add_node(case_id, name=case_name, date=case.get("date_filed"))
171
+
172
+ # Get citing opinions (who cites this case)
173
+ for cited_id in case.get("opinions_cited", []):
174
+ G.add_edge(case_id, cited_id)
175
+ if level < depth:
176
+ queue.append((cited_id, level + 1))
177
+
178
+ return G
179
+
180
+ # Analyze: which cases are most cited (highest in-degree)?
181
+ # These are the most authoritative precedents
182
+ ```
183
+
184
+ ### Statutory Text Analysis
185
+
186
+ ```python
187
+ # Analyzing legislative text complexity
188
+ import re
189
+ from textstat import textstat
190
+
191
+ def analyze_statute(text):
192
+ """Compute readability metrics for statutory text."""
193
+ return {
194
+ "flesch_reading_ease": textstat.flesch_reading_ease(text),
195
+ "flesch_kincaid_grade": textstat.flesch_kincaid_grade(text),
196
+ "gunning_fog": textstat.gunning_fog(text),
197
+ "word_count": textstat.lexicon_count(text),
198
+ "sentence_count": textstat.sentence_count(text),
199
+ "avg_sentence_length": textstat.avg_sentence_length(text),
200
+ "defined_terms": len(re.findall(r'"[A-Z][^"]*"', text)),
201
+ "cross_references": len(re.findall(r'[Ss]ection \d+', text))
202
+ }
203
+
204
+ # Example: Analyze a section of the GDPR
205
+ gdpr_article_5 = """
206
+ Personal data shall be processed lawfully, fairly and in a transparent
207
+ manner in relation to the data subject; collected for specified, explicit
208
+ and legitimate purposes and not further processed in a manner that is
209
+ incompatible with those purposes; adequate, relevant and limited to what
210
+ is necessary in relation to the purposes for which they are processed.
211
+ """
212
+ print(analyze_statute(gdpr_article_5))
213
+ ```
214
+
215
+ ## Research Areas in Law
216
+
217
+ | Area | Key Topics | Interdisciplinary Connections |
218
+ |------|-----------|------------------------------|
219
+ | **AI & Law** | Algorithmic fairness, liability for autonomous systems, AI regulation | CS, philosophy |
220
+ | **IP Law** | Patent, copyright, trade secret, open source licensing | Engineering, business |
221
+ | **Privacy Law** | GDPR, CCPA, surveillance, data protection | CS, political science |
222
+ | **Law & Economics** | Efficiency analysis of legal rules, behavioral law & economics | Economics |
223
+ | **Comparative Law** | Cross-jurisdictional analysis, legal transplants | Political science |
224
+ | **International Law** | Treaties, humanitarian law, trade law | International relations |
225
+ | **Environmental Law** | Climate litigation, ESG regulation, environmental justice | Environmental science |
226
+ | **Health Law** | Clinical trial regulation, health data, bioethics | Medicine, public health |
227
+
228
+ ## Practical Research Workflow
229
+
230
+ 1. **Frame the legal question** using IRAC or CREAC structure
231
+ 2. **Search secondary sources** first (treatises, law reviews) for background
232
+ 3. **Identify governing law** (federal vs. state, statutory vs. common law)
233
+ 4. **Find controlling authority** (binding precedent in your jurisdiction)
234
+ 5. **Shepardize / KeyCite** every case to ensure it is still good law
235
+ 6. **Analyze and synthesize** cases by extracting rules, holdings, and reasoning
236
+ 7. **Consider policy arguments** drawing on law and economics, empirical legal studies, or comparative law perspectives
237
+ 8. **Update regularly** as law changes frequently (set up alerts on Westlaw/Lexis)
238
+
239
+ ## Top Academic Venues
240
+
241
+ | Journal | Rank | Focus |
242
+ |---------|------|-------|
243
+ | Harvard Law Review | T1 | General |
244
+ | Yale Law Journal | T1 | General |
245
+ | Stanford Law Review | T1 | General, tech law |
246
+ | Columbia Law Review | T1 | General |
247
+ | Journal of Legal Studies | T1 | Law & economics |
248
+ | Journal of Empirical Legal Studies | T1 | Empirical methods |
249
+ | Computer Law & Security Review | Field | Technology law |
250
+ | Berkeley Technology Law Journal | Field | Tech, IP |