Source: https://github.com/aipoch/medical-research-skills
Academic Citation Style Formatter and Converter
When to Use
- Use this skill when the task needs Use when formatting references for journal submission, converting between citation styles (APA, MLA, Vancouver, Chicago), generating bibliographies for manuscripts, or ensuring consistent reference formatting. Automatically formats citations and bibliographies in 1000+ academic styles. Ensures reference accuracy, completeness, and compliance with journal requirements. Supports batch conversion and integration with reference managers.
- Use this skill for academic writing tasks that require explicit assumptions, bounded scope, and a reproducible output format.
- Use this skill when you need a documented fallback path for missing inputs, execution errors, or partial evidence.
Key Features
- Scope-focused workflow aligned to: Use when formatting references for journal submission, converting between citation styles (APA, MLA, Vancouver, Chicago), generating bibliographies for manuscripts, or ensuring consistent reference formatting. Automatically formats citations and bibliographies in 1000+ academic styles. Ensures reference accuracy, completeness, and compliance with journal requirements. Supports batch conversion and integration with reference managers.
- Packaged executable path(s):
scripts/main.py.
- Reference material available in
references/ for task-specific guidance.
- Structured execution path designed to keep outputs consistent and reviewable.
Dependencies
Python: 3.10+. Repository baseline for current packaged skills.
Third-party packages: not explicitly version-pinned in this skill package. Add pinned versions if this skill needs stricter environment control.
Example Usage
cd "20260318/scientific-skills/Academic Writing/citation-formatter"
python -m py_compile scripts/main.py
python scripts/main.py --help
Example run plan:
- Confirm the user input, output path, and any required config values.
- Edit the in-file
CONFIG block or documented parameters if the script uses fixed settings.
- Run
python scripts/main.py with the validated inputs.
- Review the generated output and return the final artifact with any assumptions called out.
Implementation Details
See ## Workflow above for related details.
- Execution model: validate the request, choose the packaged workflow, and produce a bounded deliverable.
- Input controls: confirm the source files, scope limits, output format, and acceptance criteria before running any script.
- Primary implementation surface:
scripts/main.py.
- Reference guidance:
references/ contains supporting rules, prompts, or checklists.
- Parameters to clarify first: input path, output path, scope filters, thresholds, and any domain-specific constraints.
- Output discipline: keep results reproducible, identify assumptions explicitly, and avoid undocumented side effects.
Quick Check
Use this command to verify that the packaged script entry point can be parsed before deeper execution.
python -m py_compile scripts/main.py
Audit-Ready Commands
Use these concrete commands for validation. They are intentionally self-contained and avoid placeholder paths.
python -m py_compile scripts/main.py
python scripts/main.py --help
python scripts/main.py --input "Audit validation sample with explicit symptoms, history, assessment, and next-step plan." --format json
Workflow
- Confirm the user objective, required inputs, and non-negotiable constraints before doing detailed work.
- Validate that the request matches the documented scope and stop early if the task would require unsupported assumptions.
- Use the packaged script path or the documented reasoning path with only the inputs that are actually available.
- Return a structured result that separates assumptions, deliverables, risks, and unresolved items.
- If execution fails or inputs are incomplete, switch to the fallback path and state exactly what blocked full completion.
When to Use This Skill
- formatting references for journal submission
- converting between citation styles (APA, MLA, Vancouver, Chicago)
- generating bibliographies for manuscripts
- ensuring consistent reference formatting
- checking reference completeness and accuracy
- preparing grant proposal reference sections
Quick Start
from scripts.main import CitationFormatter
# Initialize the tool
tool = CitationFormatter()
from scripts.citation_formatter import CitationFormatter
formatter = CitationFormatter()
# Format references for specific journal
formatted_refs = formatter.format_references(
references=raw_references,
target_style="Nature Medicine",
output_format="docx"
)
# Convert between styles
converted = formatter.convert_style(
bibliography=apa_bibliography,
from_style="APA 7th",
to_style="Vancouver",
include_doi=True,
include_pmids=True
)
# Validate reference completeness
validation = formatter.validate_references(
references=reference_list,
required_fields=["authors", "title", "journal", "year", "volume", "pages", "doi"]
)
print(f"Validation results:")
print(f" Complete: {validation.complete_count}")
print(f" Missing fields: {validation.incomplete_count}")
print(f" Invalid DOIs: {len(validation.invalid_dois)}")
# Generate in-text citations
in_text = formatter.generate_in_text_citations(
citations=[
{"author": "Smith", "year": 2023, "type": "paren"},
{"author": "Jones et al.", "year": 2022, "type": "narrative"}
],
style="APA"
)
# Batch process multiple documents
batch_results = formatter.batch_format(
files=["chapter1.docx", "chapter2.docx"],
style="AMA",
output_dir="formatted/"
)
Core Capabilities
1. Format citations in 1000+ academic styles
# Format functionality
result = tool.execute(data)
2. Convert seamlessly between citation formats
# Convert functionality
result = tool.execute(data)
3. Validate reference completeness and accuracy
# Validate functionality
result = tool.execute(data)
4. Batch process large reference collections
# Batch functionality
result = tool.execute(data)
Command Line Usage
python scripts/main.py --input references.bib --from-style APA --to-style Vancouver --output formatted.docx --validate
Best Practices
- Always validate DOIs and URLs before submission
- Check journal-specific requirements beyond standard style
- Maintain original reference database for updates
- Review formatting of special cases (websites, preprints)
Quality Checklist
Before using this skill, ensure you have:
After using this skill, verify:
References
references/guide.md - Comprehensive user guide
references/examples/ - Working code examples
references/api-docs/ - Complete API documentation
Skill ID: 625 | Version: 1.0 | License: MIT
Output Requirements
Every final response should make these items explicit when they are relevant:
- Objective or requested deliverable
- Inputs used and assumptions introduced
- Workflow or decision path
- Core result, recommendation, or artifact
- Constraints, risks, caveats, or validation needs
- Unresolved items and next-step checks
Error Handling
- If required inputs are missing, state exactly which fields are missing and request only the minimum additional information.
- If the task goes outside the documented scope, stop instead of guessing or silently widening the assignment.
- If
scripts/main.py fails, report the failure point, summarize what still can be completed safely, and provide a manual fallback.
- Do not fabricate files, citations, data, search results, or execution outcomes.
Input Validation
This skill accepts requests that match the documented purpose of citation-formatter and include enough context to complete the workflow safely.
Do not continue the workflow when the request is out of scope, missing a critical input, or would require unsupported assumptions. Instead respond:
citation-formatter only handles its documented workflow. Please provide the missing required inputs or switch to a more suitable skill.
Response Template
Use the following fixed structure for non-trivial requests:
- Objective
- Inputs Received
- Assumptions
- Workflow
- Deliverable
- Risks and Limits
- Next Checks
If the request is simple, you may compress the structure, but still keep assumptions and limits explicit when they affect correctness.
1---2name: citation-formatter3description: Use when formatting references for journal submission, converting between citation styles (APA, MLA, Vancouver, Chicago), generating bibliographies for manuscripts, or ensuring consistent reference formatting. Automatically formats citations and bibliographies in 1000+ academi...4license: MIT5---6> **Source**: [https://github.com/aipoch/medical-research-skills](https://github.com/aipoch/medical-research-skills)
7
8# Academic Citation Style Formatter and Converter
9
10## When to Use
11
12- Use this skill when the task needs Use when formatting references for journal submission, converting between citation styles (APA, MLA, Vancouver, Chicago), generating bibliographies for manuscripts, or ensuring consistent reference formatting. Automatically formats citations and bibliographies in 1000+ academic styles. Ensures reference accuracy, completeness, and compliance with journal requirements. Supports batch conversion and integration with reference managers.
13- Use this skill for academic writing tasks that require explicit assumptions, bounded scope, and a reproducible output format.
14- Use this skill when you need a documented fallback path for missing inputs, execution errors, or partial evidence.
15
16## Key Features
17
18- Scope-focused workflow aligned to: Use when formatting references for journal submission, converting between citation styles (APA, MLA, Vancouver, Chicago), generating bibliographies for manuscripts, or ensuring consistent reference formatting. Automatically formats citations and bibliographies in 1000+ academic styles. Ensures reference accuracy, completeness, and compliance with journal requirements. Supports batch conversion and integration with reference managers.
19- Packaged executable path(s): `scripts/main.py`.
20- Reference material available in `references/` for task-specific guidance.
21- Structured execution path designed to keep outputs consistent and reviewable.
22
23## Dependencies
24
25- `Python`: `3.10+`. Repository baseline for current packaged skills.
26- `Third-party packages`: `not explicitly version-pinned in this skill package`. Add pinned versions if this skill needs stricter environment control.
27
28## Example Usage
29
30```bash
31cd "20260318/scientific-skills/Academic Writing/citation-formatter"
32python -m py_compile scripts/main.py
33python scripts/main.py --help
34```
35
36Example run plan:
371. Confirm the user input, output path, and any required config values.
382. Edit the in-file `CONFIG` block or documented parameters if the script uses fixed settings.
393. Run `python scripts/main.py` with the validated inputs.
404. Review the generated output and return the final artifact with any assumptions called out.
41
42## Implementation Details
43
44See `## Workflow` above for related details.
45
46- Execution model: validate the request, choose the packaged workflow, and produce a bounded deliverable.
47- Input controls: confirm the source files, scope limits, output format, and acceptance criteria before running any script.
48- Primary implementation surface: `scripts/main.py`.
49- Reference guidance: `references/` contains supporting rules, prompts, or checklists.
50- Parameters to clarify first: input path, output path, scope filters, thresholds, and any domain-specific constraints.
51- Output discipline: keep results reproducible, identify assumptions explicitly, and avoid undocumented side effects.
52
53## Quick Check
54
55Use this command to verify that the packaged script entry point can be parsed before deeper execution.
56
57```bash
58python -m py_compile scripts/main.py
59```
60
61## Audit-Ready Commands
62
63Use these concrete commands for validation. They are intentionally self-contained and avoid placeholder paths.
64
65```bash
66python -m py_compile scripts/main.py
67python scripts/main.py --help
68python scripts/main.py --input "Audit validation sample with explicit symptoms, history, assessment, and next-step plan." --format json
69```
70
71## Workflow
72
731. Confirm the user objective, required inputs, and non-negotiable constraints before doing detailed work.
742. Validate that the request matches the documented scope and stop early if the task would require unsupported assumptions.
753. Use the packaged script path or the documented reasoning path with only the inputs that are actually available.
764. Return a structured result that separates assumptions, deliverables, risks, and unresolved items.
775. If execution fails or inputs are incomplete, switch to the fallback path and state exactly what blocked full completion.
78
79## When to Use This Skill
80
81- formatting references for journal submission
82- converting between citation styles (APA, MLA, Vancouver, Chicago)
83- generating bibliographies for manuscripts
84- ensuring consistent reference formatting
85- checking reference completeness and accuracy
86- preparing grant proposal reference sections
87
88## Quick Start
89
90```python
91from scripts.main import CitationFormatter
92
93# Initialize the tool
94tool = CitationFormatter()
95
96from scripts.citation_formatter import CitationFormatter
97
98formatter = CitationFormatter()
99
100# Format references for specific journal
101formatted_refs = formatter.format_references(
102 references=raw_references,
103 target_style="Nature Medicine",
104 output_format="docx"
105)
106
107# Convert between styles
108converted = formatter.convert_style(
109 bibliography=apa_bibliography,
110 from_style="APA 7th",
111 to_style="Vancouver",
112 include_doi=True,
113 include_pmids=True
114)
115
116# Validate reference completeness
117validation = formatter.validate_references(
118 references=reference_list,
119 required_fields=["authors", "title", "journal", "year", "volume", "pages", "doi"]
120)
121
122print(f"Validation results:")
123print(f" Complete: {validation.complete_count}")
124print(f" Missing fields: {validation.incomplete_count}")
125print(f" Invalid DOIs: {len(validation.invalid_dois)}")
126
127# Generate in-text citations
128in_text = formatter.generate_in_text_citations(
129 citations=[
130 {"author": "Smith", "year": 2023, "type": "paren"},
131 {"author": "Jones et al.", "year": 2022, "type": "narrative"}
132 ],
133 style="APA"
134)
135
136# Batch process multiple documents
137batch_results = formatter.batch_format(
138 files=["chapter1.docx", "chapter2.docx"],
139 style="AMA",
140 output_dir="formatted/"
141)
142```
143
144## Core Capabilities
145
146### 1. Format citations in 1000+ academic styles
147
148```python
149
150# Format functionality
151result = tool.execute(data)
152```
153
154### 2. Convert seamlessly between citation formats
155
156```python
157
158# Convert functionality
159result = tool.execute(data)
160```
161
162### 3. Validate reference completeness and accuracy
163
164```python
165
166# Validate functionality
167result = tool.execute(data)
168```
169
170### 4. Batch process large reference collections
171
172```python
173
174# Batch functionality
175result = tool.execute(data)
176```
177
178## Command Line Usage
179
180```text
181python scripts/main.py --input references.bib --from-style APA --to-style Vancouver --output formatted.docx --validate
182```
183
184## Best Practices
185
186- Always validate DOIs and URLs before submission
187- Check journal-specific requirements beyond standard style
188- Maintain original reference database for updates
189- Review formatting of special cases (websites, preprints)
190
191## Quality Checklist
192
193Before using this skill, ensure you have:
194- [ ] Clear understanding of your objectives
195- [ ] Necessary input data prepared and validated
196- [ ] Output requirements defined
197- [ ] Reviewed relevant documentation
198
199After using this skill, verify:
200- [ ] Results meet your quality standards
201- [ ] Outputs are properly formatted
202- [ ] Any errors or warnings have been addressed
203- [ ] Results are documented appropriately
204
205## References
206
207- `references/guide.md` - Comprehensive user guide
208- `references/examples/` - Working code examples
209- `references/api-docs/` - Complete API documentation
210
211---
212
213**Skill ID**: 625 | **Version**: 1.0 | **License**: MIT
214
215## Output Requirements
216
217Every final response should make these items explicit when they are relevant:
218
219- Objective or requested deliverable
220- Inputs used and assumptions introduced
221- Workflow or decision path
222- Core result, recommendation, or artifact
223- Constraints, risks, caveats, or validation needs
224- Unresolved items and next-step checks
225
226## Error Handling
227
228- If required inputs are missing, state exactly which fields are missing and request only the minimum additional information.
229- If the task goes outside the documented scope, stop instead of guessing or silently widening the assignment.
230- If `scripts/main.py` fails, report the failure point, summarize what still can be completed safely, and provide a manual fallback.
231- Do not fabricate files, citations, data, search results, or execution outcomes.
232
233## Input Validation
234
235This skill accepts requests that match the documented purpose of `citation-formatter` and include enough context to complete the workflow safely.
236
237Do not continue the workflow when the request is out of scope, missing a critical input, or would require unsupported assumptions. Instead respond:
238
239> `citation-formatter` only handles its documented workflow. Please provide the missing required inputs or switch to a more suitable skill.
240
241## Response Template
242
243Use the following fixed structure for non-trivial requests:
244
2451. Objective
2462. Inputs Received
2473. Assumptions
2484. Workflow
2495. Deliverable
2506. Risks and Limits
2517. Next Checks
252
253If the request is simple, you may compress the structure, but still keep assumptions and limits explicit when they affect correctness.