clearai-dsh 0.3.0 → 0.4.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 (148) hide show
  1. package/CHANGELOG.md +147 -0
  2. package/README.md +28 -28
  3. package/README.zh-CN.md +28 -28
  4. package/lib/client.js +861 -2555
  5. package/lib/domain-language.js +552 -48
  6. package/lib/fold.js +351 -1015
  7. package/lib/host.js +47 -557
  8. package/lib/invariant.js +9 -12
  9. package/lib/knowledge-view.js +363 -226
  10. package/lib/lang.js +81 -0
  11. package/package.json +1 -1
  12. package/presets/clearai/agent.cordis.yml +54 -82
  13. package/presets/clearai/clearai.patch.yml +54 -82
  14. package/presets/clearai/plugins/clearai-kernel.js +1590 -5437
  15. package/presets/clearai/plugins/ontology.js +56 -14
  16. package/presets/clearai/plugins/prompts.js +73 -363
  17. package/presets/clearai/skills/clearai-loop/SKILL.md +73 -59
  18. package/presets/clearai/plugins/brain.js +0 -547
  19. package/presets/clearai/plugins/commands.js +0 -199
  20. package/presets/clearai/template/knowledge/README.md +0 -25
  21. package/presets/clearai/template/memory/README.md +0 -34
  22. package/presets/clearai/template/project.md +0 -49
  23. package/presets/clearai/template/skills/README.md +0 -37
  24. package/presets/clearai/template/skills/chart-diagram-qa/SKILL.md +0 -43
  25. package/presets/clearai/template/skills/citation-management/SKILL.md +0 -73
  26. package/presets/clearai/template/skills/citation-management/references/bibtex_formatting.md +0 -908
  27. package/presets/clearai/template/skills/citation-management/references/citation_validation.md +0 -794
  28. package/presets/clearai/template/skills/citation-management/references/google_scholar_search.md +0 -725
  29. package/presets/clearai/template/skills/citation-management/references/metadata_extraction.md +0 -870
  30. package/presets/clearai/template/skills/citation-management/references/pubmed_search.md +0 -839
  31. package/presets/clearai/template/skills/citation-management/scripts/doi_to_bibtex.py +0 -204
  32. package/presets/clearai/template/skills/citation-management/scripts/extract_metadata.py +0 -569
  33. package/presets/clearai/template/skills/citation-management/scripts/format_bibtex.py +0 -349
  34. package/presets/clearai/template/skills/citation-management/scripts/generate_schematic.py +0 -139
  35. package/presets/clearai/template/skills/citation-management/scripts/generate_schematic_ai.py +0 -817
  36. package/presets/clearai/template/skills/citation-management/scripts/search_google_scholar.py +0 -282
  37. package/presets/clearai/template/skills/citation-management/scripts/search_pubmed.py +0 -398
  38. package/presets/clearai/template/skills/citation-management/scripts/validate_citations.py +0 -497
  39. package/presets/clearai/template/skills/data-analysis/SKILL.md +0 -92
  40. package/presets/clearai/template/skills/data-analysis/checklists/readiness_check.md +0 -23
  41. package/presets/clearai/template/skills/data-analysis/templates/analysis_report.md.tpl +0 -63
  42. package/presets/clearai/template/skills/data-analysis/templates/cleaning_rules_draft.yaml.tpl +0 -32
  43. package/presets/clearai/template/skills/data-analysis/templates/data_dictionary.md.tpl +0 -12
  44. package/presets/clearai/template/skills/data-analysis/templates/domain_knowledge_template.md.tpl +0 -316
  45. package/presets/clearai/template/skills/data-analysis/templates/feature_candidates.json.tpl +0 -20
  46. package/presets/clearai/template/skills/data-analysis/templates/quality_scorecard.md.tpl +0 -30
  47. package/presets/clearai/template/skills/data-analysis/workflows/01-data-profiling.md +0 -42
  48. package/presets/clearai/template/skills/data-analysis/workflows/02-quality-audit.md +0 -36
  49. package/presets/clearai/template/skills/data-analysis/workflows/03-physical-correlation.md +0 -25
  50. package/presets/clearai/template/skills/data-analysis/workflows/04-unstructured-mining.md +0 -26
  51. package/presets/clearai/template/skills/data-qa-analysis/SKILL.md +0 -102
  52. package/presets/clearai/template/skills/data-qa-analysis/checklists/readiness_check.md +0 -62
  53. package/presets/clearai/template/skills/data-qa-analysis/templates/best_in_class_report.md.tpl +0 -56
  54. package/presets/clearai/template/skills/data-qa-analysis/templates/cleaning_rules_draft.yaml.tpl +0 -56
  55. package/presets/clearai/template/skills/data-qa-analysis/templates/data_dictionary.md.tpl +0 -13
  56. package/presets/clearai/template/skills/data-qa-analysis/templates/data_source_inventory_and_lineage.md.tpl +0 -146
  57. package/presets/clearai/template/skills/data-qa-analysis/templates/data_status_report.md.tpl +0 -60
  58. package/presets/clearai/template/skills/data-qa-analysis/templates/steady_state_rules.yaml.tpl +0 -41
  59. package/presets/clearai/template/skills/data-qa-analysis/templates/subsystem_registry.md.tpl +0 -101
  60. package/presets/clearai/template/skills/data-qa-analysis/templates/unified_execution_plan.md.tpl +0 -100
  61. package/presets/clearai/template/skills/data-qa-analysis/workflows/01-data-source-inventory-and-lineage.md +0 -194
  62. package/presets/clearai/template/skills/data-qa-analysis/workflows/02-data-alignment-and-tag-semantics.md +0 -122
  63. package/presets/clearai/template/skills/data-qa-analysis/workflows/03-steady-state-identification.md +0 -126
  64. package/presets/clearai/template/skills/data-qa-analysis/workflows/04-consumption-analysis.md +0 -152
  65. package/presets/clearai/template/skills/data-qa-analysis/workflows/05-best-in-class-and-optimization-space.md +0 -78
  66. package/presets/clearai/template/skills/domain-presearch/SKILL.md +0 -131
  67. package/presets/clearai/template/skills/domain-presearch/checklists/domain_checklist.md +0 -24
  68. package/presets/clearai/template/skills/domain-presearch/references/figure_code.md +0 -78
  69. package/presets/clearai/template/skills/domain-presearch/references/strategic_frameworks.md +0 -38
  70. package/presets/clearai/template/skills/exploration-loop/SKILL.md +0 -81
  71. package/presets/clearai/template/skills/exploratory-data-analysis/SKILL.md +0 -77
  72. package/presets/clearai/template/skills/exploratory-data-analysis/references/bioinformatics_genomics_formats.md +0 -664
  73. package/presets/clearai/template/skills/exploratory-data-analysis/references/chemistry_molecular_formats.md +0 -664
  74. package/presets/clearai/template/skills/exploratory-data-analysis/references/general_scientific_formats.md +0 -518
  75. package/presets/clearai/template/skills/exploratory-data-analysis/references/microscopy_imaging_formats.md +0 -620
  76. package/presets/clearai/template/skills/exploratory-data-analysis/references/proteomics_metabolomics_formats.md +0 -517
  77. package/presets/clearai/template/skills/exploratory-data-analysis/references/spectroscopy_analytical_formats.md +0 -633
  78. package/presets/clearai/template/skills/exploratory-data-analysis/scripts/eda_analyzer.py +0 -547
  79. package/presets/clearai/template/skills/hypothesis-generation/SKILL.md +0 -73
  80. package/presets/clearai/template/skills/hypothesis-generation/references/experimental_design_patterns.md +0 -329
  81. package/presets/clearai/template/skills/hypothesis-generation/references/hypothesis_quality_criteria.md +0 -198
  82. package/presets/clearai/template/skills/hypothesis-generation/references/literature_search_strategies.md +0 -622
  83. package/presets/clearai/template/skills/hypothesis-generation/scripts/generate_schematic.py +0 -139
  84. package/presets/clearai/template/skills/hypothesis-generation/scripts/generate_schematic_ai.py +0 -817
  85. package/presets/clearai/template/skills/literature-review/SKILL.md +0 -72
  86. package/presets/clearai/template/skills/literature-review/references/citation_styles.md +0 -166
  87. package/presets/clearai/template/skills/literature-review/references/database_strategies.md +0 -455
  88. package/presets/clearai/template/skills/literature-review/scripts/generate_pdf.py +0 -176
  89. package/presets/clearai/template/skills/literature-review/scripts/generate_schematic.py +0 -139
  90. package/presets/clearai/template/skills/literature-review/scripts/generate_schematic_ai.py +0 -817
  91. package/presets/clearai/template/skills/literature-review/scripts/search_databases.py +0 -303
  92. package/presets/clearai/template/skills/literature-review/scripts/verify_citations.py +0 -221
  93. package/presets/clearai/template/skills/paper-lookup/SKILL.md +0 -59
  94. package/presets/clearai/template/skills/paper-lookup/references/arxiv.md +0 -161
  95. package/presets/clearai/template/skills/paper-lookup/references/biorxiv.md +0 -118
  96. package/presets/clearai/template/skills/paper-lookup/references/core.md +0 -150
  97. package/presets/clearai/template/skills/paper-lookup/references/crossref.md +0 -181
  98. package/presets/clearai/template/skills/paper-lookup/references/medrxiv.md +0 -104
  99. package/presets/clearai/template/skills/paper-lookup/references/openalex.md +0 -174
  100. package/presets/clearai/template/skills/paper-lookup/references/pmc.md +0 -152
  101. package/presets/clearai/template/skills/paper-lookup/references/pubmed.md +0 -124
  102. package/presets/clearai/template/skills/paper-lookup/references/semantic-scholar.md +0 -203
  103. package/presets/clearai/template/skills/paper-lookup/references/unpaywall.md +0 -127
  104. package/presets/clearai/template/skills/process-presearch/SKILL.md +0 -196
  105. package/presets/clearai/template/skills/process-presearch/checklists/process_checklist.md +0 -18
  106. package/presets/clearai/template/skills/process-presearch/references/figure_code.md +0 -107
  107. package/presets/clearai/template/skills/process-presearch/references/source_attribution_example.md +0 -22
  108. package/presets/clearai/template/skills/process-understanding-extraction/SKILL.md +0 -69
  109. package/presets/clearai/template/skills/process-understanding-extraction/checklists/readiness_check.md +0 -34
  110. package/presets/clearai/template/skills/process-understanding-extraction/templates/docx_raw_dump_extractor.py.tpl +0 -132
  111. package/presets/clearai/template/skills/process-understanding-extraction/templates/entity_map_unit_topology.json.tpl +0 -86
  112. package/presets/clearai/template/skills/process-understanding-extraction/templates/process_brief.md.tpl +0 -89
  113. package/presets/clearai/template/skills/process-understanding-extraction/templates/process_brief_builder_from_raw_dump.py.tpl +0 -203
  114. package/presets/clearai/template/skills/process-understanding-extraction/templates/process_flow_mermaid.md.tpl +0 -41
  115. package/presets/clearai/template/skills/process-understanding-extraction/templates/unified_execution_plan.md.tpl +0 -53
  116. package/presets/clearai/template/skills/process-understanding-extraction/workflows/01-process-doc-discovery.md +0 -173
  117. package/presets/clearai/template/skills/process-understanding-extraction/workflows/02-process-understanding-and-diagramming.md +0 -106
  118. package/presets/clearai/template/skills/scientific-brainstorming/SKILL.md +0 -64
  119. package/presets/clearai/template/skills/scientific-brainstorming/references/brainstorming_methods.md +0 -326
  120. package/presets/clearai/template/skills/scientific-critical-thinking/SKILL.md +0 -72
  121. package/presets/clearai/template/skills/scientific-critical-thinking/references/common_biases.md +0 -364
  122. package/presets/clearai/template/skills/scientific-critical-thinking/references/evidence_hierarchy.md +0 -485
  123. package/presets/clearai/template/skills/scientific-critical-thinking/references/experimental_design.md +0 -496
  124. package/presets/clearai/template/skills/scientific-critical-thinking/references/logical_fallacies.md +0 -478
  125. package/presets/clearai/template/skills/scientific-critical-thinking/references/scientific_method.md +0 -169
  126. package/presets/clearai/template/skills/scientific-critical-thinking/references/statistical_pitfalls.md +0 -506
  127. package/presets/clearai/template/skills/skill-creator/SKILL.md +0 -109
  128. package/presets/clearai/template/skills/skill-creator/references/authoring-guide.md +0 -89
  129. package/presets/clearai/template/skills/statistical-analysis/SKILL.md +0 -79
  130. package/presets/clearai/template/skills/statistical-analysis/references/assumptions_and_diagnostics.md +0 -369
  131. package/presets/clearai/template/skills/statistical-analysis/references/bayesian_statistics.md +0 -653
  132. package/presets/clearai/template/skills/statistical-analysis/references/effect_sizes_and_power.md +0 -578
  133. package/presets/clearai/template/skills/statistical-analysis/references/reporting_standards.md +0 -469
  134. package/presets/clearai/template/skills/statistical-analysis/references/test_selection_guide.md +0 -129
  135. package/presets/clearai/template/skills/statistical-analysis/scripts/assumption_checks.py +0 -538
  136. package/presets/clearai/template/skills/web-artifact/SKILL.md +0 -165
  137. package/presets/clearai/template/skills/web-artifact/assets/renderer/renderer.css +0 -229
  138. package/presets/clearai/template/skills/web-artifact/assets/renderer/renderer.js +0 -373
  139. package/presets/clearai/template/skills/web-artifact/assets/vendor/elkjs/LICENSE +0 -263
  140. package/presets/clearai/template/skills/web-artifact/assets/vendor/elkjs/UPSTREAM.md +0 -26
  141. package/presets/clearai/template/skills/web-artifact/assets/vendor/elkjs/elk.bundled.js +0 -6605
  142. package/presets/clearai/template/skills/web-artifact/references/when-drawing-a-topology.md +0 -150
  143. package/presets/clearai/template/skills/web-artifact/references/when-the-page-must-work-offline.md +0 -62
  144. package/presets/clearai/template/skills/web-artifact/scripts/check_artifact.py +0 -167
  145. package/presets/clearai/template/skills/web-artifact/scripts/render_topology.js +0 -272
  146. package/presets/clearai/template/skills/what-if-oracle/LICENSE.txt +0 -5
  147. package/presets/clearai/template/skills/what-if-oracle/SKILL.md +0 -72
  148. package/presets/clearai/template/skills/what-if-oracle/references/scenario-templates.md +0 -154
@@ -1,204 +0,0 @@
1
- #!/usr/bin/env python3
2
- """
3
- DOI to BibTeX Converter
4
- Quick utility to convert DOIs to BibTeX format using CrossRef API.
5
- """
6
-
7
- import sys
8
- import requests
9
- import argparse
10
- import time
11
- import json
12
- from typing import Optional, List
13
-
14
- class DOIConverter:
15
- """Convert DOIs to BibTeX entries using CrossRef API."""
16
-
17
- def __init__(self):
18
- self.session = requests.Session()
19
- self.session.headers.update({
20
- 'User-Agent': 'DOIConverter/1.0 (Citation Management Tool; mailto:support@example.com)'
21
- })
22
-
23
- def doi_to_bibtex(self, doi: str) -> Optional[str]:
24
- """
25
- Convert a single DOI to BibTeX format.
26
-
27
- Args:
28
- doi: Digital Object Identifier
29
-
30
- Returns:
31
- BibTeX string or None if conversion fails
32
- """
33
- # Clean DOI (remove URL prefix if present)
34
- doi = doi.strip()
35
- if doi.startswith('https://doi.org/'):
36
- doi = doi.replace('https://doi.org/', '')
37
- elif doi.startswith('http://doi.org/'):
38
- doi = doi.replace('http://doi.org/', '')
39
- elif doi.startswith('doi:'):
40
- doi = doi.replace('doi:', '')
41
-
42
- # Request BibTeX from CrossRef content negotiation
43
- url = f'https://doi.org/{doi}'
44
- headers = {
45
- 'Accept': 'application/x-bibtex',
46
- 'User-Agent': 'DOIConverter/1.0 (Citation Management Tool)'
47
- }
48
-
49
- try:
50
- response = self.session.get(url, headers=headers, timeout=15)
51
-
52
- if response.status_code == 200:
53
- bibtex = response.text.strip()
54
- # CrossRef sometimes returns entries with @data type, convert to @misc
55
- if bibtex.startswith('@data{'):
56
- bibtex = bibtex.replace('@data{', '@misc{', 1)
57
- return bibtex
58
- elif response.status_code == 404:
59
- print(f'Error: DOI not found: {doi}', file=sys.stderr)
60
- return None
61
- else:
62
- print(f'Error: Failed to retrieve BibTeX for {doi} (status {response.status_code})', file=sys.stderr)
63
- return None
64
-
65
- except requests.exceptions.Timeout:
66
- print(f'Error: Request timeout for DOI: {doi}', file=sys.stderr)
67
- return None
68
- except requests.exceptions.RequestException as e:
69
- print(f'Error: Request failed for {doi}: {e}', file=sys.stderr)
70
- return None
71
-
72
- def convert_multiple(self, dois: List[str], delay: float = 0.5) -> List[str]:
73
- """
74
- Convert multiple DOIs to BibTeX.
75
-
76
- Args:
77
- dois: List of DOIs
78
- delay: Delay between requests (seconds) for rate limiting
79
-
80
- Returns:
81
- List of BibTeX entries (excludes failed conversions)
82
- """
83
- bibtex_entries = []
84
-
85
- for i, doi in enumerate(dois):
86
- print(f'Converting DOI {i+1}/{len(dois)}: {doi}', file=sys.stderr)
87
- bibtex = self.doi_to_bibtex(doi)
88
-
89
- if bibtex:
90
- bibtex_entries.append(bibtex)
91
-
92
- # Rate limiting
93
- if i < len(dois) - 1: # Don't delay after last request
94
- time.sleep(delay)
95
-
96
- return bibtex_entries
97
-
98
-
99
- def main():
100
- """Command-line interface."""
101
- parser = argparse.ArgumentParser(
102
- description='Convert DOIs to BibTeX format using CrossRef API',
103
- epilog='Example: python doi_to_bibtex.py 10.1038/s41586-021-03819-2'
104
- )
105
-
106
- parser.add_argument(
107
- 'dois',
108
- nargs='*',
109
- help='DOI(s) to convert (can provide multiple)'
110
- )
111
-
112
- parser.add_argument(
113
- '-i', '--input',
114
- help='Input file with DOIs (one per line)'
115
- )
116
-
117
- parser.add_argument(
118
- '-o', '--output',
119
- help='Output file for BibTeX (default: stdout)'
120
- )
121
-
122
- parser.add_argument(
123
- '--delay',
124
- type=float,
125
- default=0.5,
126
- help='Delay between requests in seconds (default: 0.5)'
127
- )
128
-
129
- parser.add_argument(
130
- '--format',
131
- choices=['bibtex', 'json'],
132
- default='bibtex',
133
- help='Output format (default: bibtex)'
134
- )
135
-
136
- args = parser.parse_args()
137
-
138
- # Collect DOIs from command line and/or file
139
- dois = []
140
-
141
- if args.dois:
142
- dois.extend(args.dois)
143
-
144
- if args.input:
145
- try:
146
- with open(args.input, 'r', encoding='utf-8') as f:
147
- file_dois = [line.strip() for line in f if line.strip()]
148
- dois.extend(file_dois)
149
- except FileNotFoundError:
150
- print(f'Error: Input file not found: {args.input}', file=sys.stderr)
151
- sys.exit(1)
152
- except Exception as e:
153
- print(f'Error reading input file: {e}', file=sys.stderr)
154
- sys.exit(1)
155
-
156
- if not dois:
157
- parser.print_help()
158
- sys.exit(1)
159
-
160
- # Convert DOIs
161
- converter = DOIConverter()
162
-
163
- if len(dois) == 1:
164
- bibtex = converter.doi_to_bibtex(dois[0])
165
- if bibtex:
166
- bibtex_entries = [bibtex]
167
- else:
168
- sys.exit(1)
169
- else:
170
- bibtex_entries = converter.convert_multiple(dois, delay=args.delay)
171
-
172
- if not bibtex_entries:
173
- print('Error: No successful conversions', file=sys.stderr)
174
- sys.exit(1)
175
-
176
- # Format output
177
- if args.format == 'bibtex':
178
- output = '\n\n'.join(bibtex_entries) + '\n'
179
- else: # json
180
- output = json.dumps({
181
- 'count': len(bibtex_entries),
182
- 'entries': bibtex_entries
183
- }, indent=2)
184
-
185
- # Write output
186
- if args.output:
187
- try:
188
- with open(args.output, 'w', encoding='utf-8') as f:
189
- f.write(output)
190
- print(f'Successfully wrote {len(bibtex_entries)} entries to {args.output}', file=sys.stderr)
191
- except Exception as e:
192
- print(f'Error writing output file: {e}', file=sys.stderr)
193
- sys.exit(1)
194
- else:
195
- print(output)
196
-
197
- # Summary
198
- if len(dois) > 1:
199
- success_rate = len(bibtex_entries) / len(dois) * 100
200
- print(f'\nConverted {len(bibtex_entries)}/{len(dois)} DOIs ({success_rate:.1f}%)', file=sys.stderr)
201
-
202
-
203
- if __name__ == '__main__':
204
- main()