Skip to main content

codex-claude-academic-skills

Chinese-first academic research skills for paper writing, Office document generation, and scientific computing (MATLAB/Python)

インストールへ移動

ソース情報

リポジトリ
reason-machines/codex-skills
ソースの最終更新活動
2026年5月30日 00:56
検出された SKILL.md の言語
英語
スター
0
フォーク
1

インストール方法

デフォルトでは、最初にソースを確認する Prompt が選択されています。直接コマンドに切り替えるか、ローカルコピーをダウンロードすることもできます。

ソースファイルを確認

インストールを決める前に、SKILL.md と SkillsMP に表示されている付属ファイルをお読みください。

SKILL.md を表示中

SKILL.md
ソースの指示 · 読み取り専用プレビュー
name
codex-claude-academic-skills
description
Chinese-first academic research skills for paper writing, Office document generation, and scientific computing (MATLAB/Python)
triggers
["help me write a research paper in Chinese","generate academic PPT from my paper","create literature review Word document","run MATLAB simulation for my experiment","polish my paper abstract and introduction","make a thesis defense presentation","analyze scientific data with Python","respond to reviewer comments"]
# Codex Claude Academic Skills > Skill by [ara.so](https://ara.so) — Codex Skills collection. A collection of three complementary skills for Chinese academic researchers covering paper writing, academic Office document generation, and scientific computing. All skills work in both Claude Code and Codex platforms. ## What This Project Does This project provides three specialized skills for academic workflows: 1. **research-writing-skill**: Paper writing, editing, and reviewer response in Chinese 2. **office-academic-skill**: Generate editable Word reports and PowerPoint presentations 3. **scientific-toolkit-skill**: Scientific computing with MATLAB/Python and publication-quality figures The skills are designed to work together across the research pipeline: data analysis → paper writing → presentation generation. ## Installation ### For Claude Code ```bash # Clone the repository git clone https://github.com/zLanqing/codex-claude-academic-skills.git # Install all three skills globally cd codex-claude-academic-skills cp -r research-writing-skill ~/.claude/skills/ cp -r office-academic-skill ~/.claude/skills/ cp -r scientific-toolkit-skill ~/.claude/skills/ # Or install via plugin (if supported) /plugin install zLanqing/codex-claude-academic-skills ``` ### For Codex ```bash # Install to global skills directory cd codex-claude-academic-skills cp -r research-writing-skill ~/.codex/skills/ cp -r office-academic-skill ~/.codex/skills/ cp -r scientific-toolkit-skill ~/.codex/skills/ # Or load temporarily with plugin URL codex --plugin-url https://github.com/zLanqing/codex-claude-academic-skills ``` ### Project-Level Installation Place skill directories in your project root: ```bash mkdir -p .claude/skills/ cp -r path/to/research-writing-skill .claude/skills/ # Or for Codex mkdir -p .codex/skills/ cp -r path/to/office-academic-skill .codex/skills/ ``` ## Skill 1: research-writing-skill ### Core Capabilities - Write paper sections: abstract, introduction, related work, methods, experiments, discussion, conclusion - Edit and polish existing drafts for logic, consistency, and terminology - Generate reviewer response letters (rebuttal) - Plan paper structure from vague ideas to detailed outlines ### Usage Patterns **Writing a new section:** ```python # User prompt example: # "帮我写一个关于BOTDR传感器的方法章节,已有的实验数据在data.csv" # The skill will: # 1. Ask for key information (sensor parameters, measurement setup) # 2. Check if data.csv exists and analyze it # 3. Draft the methods section in Chinese # 4. Preserve English terms: BOTDR, Brillouin scattering, etc. # 5. Mark inferred vs. confirmed information ``` **Polishing existing text:** ```python # User provides a Chinese draft: """ 我们提出了一种新的算法,它很有效,实验结果显著优于传统方法。 """ # Skill rewrites to: """ 我们提出了基于小波去噪的 BGS 重构算法。在 100 组实验数据集上, 相比传统高斯拟合方法,本方法的温度测量误差从 ±2.5°C 降低至 ±0.8°C, 空间分辨率从 1m 提升至 0.5m。 """ # (Removes vague words, adds measurable baselines) ``` **Reviewer response:** ```python # User: "审稿人说我的实验样本量不够,帮我回复" # Skill generates structured response: """ **Reviewer Comment:** The sample size (n=30) is insufficient for statistical significance. **Response:** 感谢审稿人的建议。我们已补充实验至 n=100(新增数据见附录 A)。 更新后的统计检验结果(t-test, p<0.01)已添加至第 4.2 节表 3。 修订稿中已说明样本量选择依据 Cohen's d 效应量计算(d=0.85, power=0.95)。 **Changes in manuscript:** - Line 203-205: 补充样本量计算依据 - Table 3: 更新统计检验结果 - Appendix A: 新增 70 组实验数据 """ ``` ### Key Principles - **Chinese-first**: Explanations, body text in Chinese; preserve English for paper titles, formulas, variable names, software commands, citations - **No fabrication**: Never invent DOI, journal names, experimental values, or figure numbers - **Source marking**: Label claims as "from user", "inferred", "suggested extension", or "original text" - **Measurable claims**: Replace "significant improvement" with "error reduced from X to Y" ### Reference Files The skill includes built-in references under `paper-writing/`: ``` references/ ├── section_rhetorical_moves/ │ ├── abstract.md # IMRaD structure for abstracts │ ├── introduction.md # Hook → Gap → Contribution pattern │ ├── methods.md # Replicability checklist │ └── results.md # Figure-first narrative ├── writing_checklists/ │ ├── before_submission.md # Pre-submission self-check │ └── revision_guide.md # Responding to major revisions ├── figure_templates/ │ └── multi_panel.md # Standards for composite figures └── brainstorming_guide.md # From idea to paper blueprint ``` ## Skill 2: office-academic-skill ### Core Capabilities **Word Documents:** - PDF → structured literature review report (.docx) - Generate editable reports with headings, tables, figure placeholders, citations - Version-controlled editing of existing .docx files **PowerPoint Presentations:** - Literature report slides, group meeting presentations - Thesis defense slides (proposal, mid-term, final defense) - Scientific poster presentations, outreach slides ### Usage Patterns **Generate literature report from PDF:** ```python # User: "把这篇论文转成文献阅读报告" # Uploads: paper.pdf # Skill workflow: # 1. Extract text and figures from PDF # 2. Generate structured report.docx: from docx import Document from docx.shared import Pt, Inches from docx.enum.text import WD_ALIGN_PARAGRAPH doc = Document() # Title title = doc.add_heading('文献阅读报告', level=1) title.alignment = WD_ALIGN_PARAGRAPH.CENTER # Metadata section doc.add_heading('基本信息', level=2) table = doc.add_table(rows=4, cols=2) table.cell(0, 0).text = '标题' table.cell(0, 1).text = 'Distributed Optical Fiber Sensing Using BOTDR' table.cell(1, 0).text = '作者' table.cell(1, 1).text = 'Zhang, Y., et al.' table.cell(2, 0).text = '期刊' table.cell(2, 1).text = 'J. Lightwave Tech., 2023, 41(5), 1234-1245' table.cell(3, 0).text = 'DOI' table.cell(3, 1).text = '10.1109/JLT.2023.1234567' # Main sections doc.add_heading('研究背景', level=2) doc.add_paragraph('【来源: 论文第1节】分布式光纤传感技术...') doc.add_heading('核心方法', level=2) doc.add_paragraph('【来源: 论文图2及第3.1节】本文提出...') doc.add_paragraph('[图2占位符: BOTDR系统示意图]') doc.add_heading('实验结果', level=2) doc.add_paragraph('【来源: 论文表1】在50km光纤上测试...') doc.add_heading('个人评价', level=2) doc.add_paragraph('【评价】优点: 空间分辨率达到0.5m;局限: 仅测试单模光纤...') doc.save('文献报告_BOTDR_2023.docx') ``` **Create thesis defense PPT:** ```python # User: "用我的论文PDF生成答辩PPT,用学校模板template.pptx" # Skill workflow: from pptx import Presentation from pptx.util import Inches, Pt # 1. Clone template master slides template = Presentation('template.pptx') prs = Presentation() prs.slide_master = template.slide_master # Preserve school branding # 2. Extract paper structure # Reads paper.pdf → sections, figures, key results # 3. Generate slides with action titles slide = prs.slides.add_slide(prs.slide_layouts[1]) title = slide.shapes.title title.text = 'BOTDR空间分辨率提升至0.5m' # Conclusion, not topic # Add figure placeholder left = Inches(1) top = Inches(2) pic_placeholder = slide.shapes.add_textbox(left, top, Inches(8), Inches(4)) pic_placeholder.text = '[插入论文图3: 分辨率对比实验结果]' # Add source annotation source = slide.shapes.add_textbox(Inches(0.5), Inches(6.5), Inches(9), Inches(0.3)) source.text = '数据来源: 论文第4.2节, 表2' source.text_frame.paragraphs[0].font.size = Pt(10) prs.save('答辩PPT_初稿.pptx') # 4. Run overflow check (built-in script) # python references/thesis-defense-pptx/scripts/check_text_overflow.py 答辩PPT_初稿.pptx ``` **Edit existing PowerPoint:** ```python # User: "把第5页的标题改成中文,图表移到右边" from pptx import Presentation prs = Presentation('答辩PPT_初稿.pptx') slide = prs.slides[4] # 0-indexed # Change title slide.shapes.title.text = '实验验证与结果分析' # Move figure to right half for shape in slide.shapes: if shape.has_text_frame and '[插入论文图' in shape.text: shape.left = Inches(5) shape.top = Inches(1.5) shape.width = Inches(4) prs.save('答辩PPT_修订.pptx') ``` ### PPT Quality Standards The skill enforces these rules: 1. **Action titles**: "温度测量误差降低60%" not "实验结果" 2. **One idea per slide**: No bullet-point essays 3. **Figure-driven**: Technical claims backed by charts/equations 4. **Scientific rigor**: Axes labels, units, legends, data sources 5. **Academic aesthetics**: White/neutral backgrounds, color for emphasis only ### Built-in Tools Under `references/`: ``` office-docx/ ├── ooxml_validator.py # Check DOCX against Office Open XML schema └── schemas/ # XSD schemas for validation office-pptx/ ├── pptx_structure.md # PPTX OOXML anatomy └── layout_examples/ # Common academic slide layouts thesis-defense-pptx/scripts/ ├── extract_thesis_context.py # Parse LaTeX/PDF for key content ├── clone_template.py # Preserve master slide styles ├── export_slides_png.py # Slide → PNG for review └── check_text_overflow.py # Detect text box overflow ``` ## Skill 3: scientific-toolkit-skill ### Core Capabilities **MATLAB/Octave:** - Signal/image processing, FFT, filtering, matrix operations - Simulation, numerical methods - Publication-quality figure export **Python Scientific Stack:** - **NumPy, SciPy**: Numerical computing, optimization - **pandas**: Data manipulation and analysis - **matplotlib, seaborn**: Publication-grade plots - **scikit-learn**: Machine learning (classification, regression, clustering, PCA) - **statsmodels**: Statistical modeling, time series - **SymPy**: Symbolic math, equation derivation - **QuTiP**: Quantum optics simulations - **pymatgen**: Materials science (crystal structures, band structure) - **TimesFM**: Time series forecasting - **NetworkX**: Graph and network analysis - **Astropy**: Astronomical/optical imaging data **Literature & Citations:** - Search: arXiv, PubMed, CrossRef, Semantic Scholar, OpenAlex - DOI → BibTeX conversion, citation validation ### Usage Patterns **MATLAB signal processing:** ```matlab % User: "帮我用MATLAB分析这个BOTDR信号,提取BGS并计算温度" % Skill generates: % === BOTDR Signal Analysis === % Parameters (用户需确认): fs = 1e9; % 采样率 [Hz] - 来源: 用户确认 fiber_length = 50e3; % 光纤长度 [m] - 来源: 用户确认 v_B0 = 10.86e9; % 参考Brillouin频移 [Hz] - 来源: 文献默认值 (SMF-28) C_T = 1.0e6; % 温度系数 [Hz/°C] - 来源: 文献默认值 % Load signal data = load('botdr_signal.mat'); raw_signal = data.raw; % [时间 x 频率扫描] % Extract BGS (Brillouin Gain Spectrum) [n_points, n_freq] = size(raw_signal); freq_axis = linspace(10.5e9, 11.5e9, n_freq); % 频率扫描范围 [Hz] BGS_peak_freq = zeros(n_points, 1); for i = 1:n_points [~, peak_idx] = max(raw_signal(i, :)); BGS_peak_freq(i) = freq_axis(peak_idx); end % Convert to temperature delta_v_B = BGS_peak_freq - v_B0; % 频移差 [Hz] temperature = delta_v_B / C_T; % 温度 [°C] % Calculate spatial resolution spatial_res = 0.5 * 3e8 / fs; % = c/(2*fs) [m] % Plot results figure('Position', [100, 100, 800, 600]); subplot(2,1,1); plot(1:n_points, BGS_peak_freq/1e9, 'LineWidth', 1.5); xlabel('测量点', 'FontSize', 12); ylabel('Brillouin频移 (GHz)', 'FontSize', 12); title('沿光纤的BGS频移分布', 'FontSize', 14); grid on; subplot(2,1,2); plot((1:n_points)*spatial_res/1000, temperature, 'LineWidth', 1.5); xlabel('距离 (km)', 'FontSize', 12); ylabel('温度 (°C)', 'FontSize', 12); title(sprintf('温度分布 (空间分辨率: %.2f m)', spatial_res), 'FontSize', 14); grid on; % Export figure for paper print('BGS_temperature_profile.png', '-dpng', '-r300'); % 【注释】未编造数据,所有物理量已标注来源 ``` **Python data analysis with scikit-learn:** ```python # User: "用机器学习分类这些光谱数据,特征在features.csv,标签在labels.csv" import numpy as np import pandas as pd from sklearn.model_selection import train_test_split, GridSearchCV from sklearn.preprocessing import StandardScaler from sklearn.svm import SVC from sklearn.metrics import classification_report, confusion_matrix import matplotlib.pyplot as plt import seaborn as sns # Load data features = pd.read_csv('features.csv') # 假设每行是一个光谱样本 labels = pd.read_csv('labels.csv').values.ravel() # Split dataset X_train, X_test, y_train, y_test = train_test_split( features, labels, test_size=0.2, random_state=42, stratify=labels ) # Preprocessing scaler = StandardScaler() X_train_scaled = scaler.fit_transform(X_train)
GitHubで見る
この SKILL.md は非常に大きいため、SkillsMP では最初のセクションだけを表示しています。 GitHubで見る