Mne eeg tool
Skill BioTender-max/awesome-bio-agent-skills/skills/neuroclaw/mne-eeg-tool
Use this skill whenever any NeuroClaw modality skill (especially eeg-skill) needs to execute concrete MNE-Python operations for EEG loading, preprocessing, filtering, artifact removal, epoching, frequency-band analysis, or feature extraction. This is the dedicated base/tool skill that contains all specific MNE-Python code and usage patterns.From its SKILL.md
npx -y skills add BioTender-max/awesome-bio-agent-skills --skill mne-eeg-toolAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- no licenseNo license file was found in the repository. Code published without one is not open source by default, so using it at work is a question for whoever answers licensing questions where you are.
What its file declares
Copied from the file, not written here
The file declares its own license as MIT License (NeuroClaw custom skill – freely modifiable within the project). That is the author’s claim about this one file, and it is not the same thing as the license GitHub reports for the repository, which is listed with the other numbers below.
SKILL.md
7.7 KB, ~1.6k tokens by cl100k_base, as published. Nobody here has run it
MNE-EEG Tool (Base/Tool Layer)
Overview
mne-eeg-tool is the NeuroClaw base/tool skill that provides all concrete MNE-Python implementation for EEG processing.
It is never called directly by the user. It is exclusively delegated to by the modality-layer skill eeg-skill (and any future EEG-related modality skills).
This skill:
- Contains the complete, ready-to-run MNE-Python code (covers all standard preprocessing and feature extraction tasks).
- Handles environment setup verification.
- Provides a single, well-documented wrapper script (
eeg_pipeline.py) that implements all common EEG tasks, including the newly added continuous-data branch, functional connectivity, ERP features, frontal alpha asymmetry, and microstate analysis. - Routes every execution through
claw-shellfor safety and logging.
Research use only — outputs are for scientific analysis.
Agent Reference Rule
When the agent needs MNE-EEG implementation code, it should first consult the curated snippet in skills/mne-eeg-tool/scripts/ instead of copying from the embedded wrapper below.
Reference snippet available:
scripts/eeg_pipeline_reference.py-> full EEG pipeline: load, bad-channel detection, filtering, ICA, epoching, frequency bands, connectivity, ERP features, alpha asymmetry, microstates
Example:
python skills/mne-eeg-tool/scripts/eeg_pipeline_reference.py \
--input path/to/data.set \
--resting \
--output-dir eeg_output/
Quick Reference (Core Functions)
| Function | Purpose | New in this update? |
|---|---|---|
load_eeg() | Load .set / .edf / .bdf / .fif / BIDS + validation | — |
detect_and_interpolate_bad_channels() | Auto-detect + interpolate noisy channels | Yes |
preprocess_filtering() | Resample + high-pass + notch + bandpass | — |
remove_artifacts() | ICA + AutoReject + EOG/ECG regression | Yes |
continuous_data_cleaning() | Resting-state pipeline (no events) | Yes |
rereference_and_epoch() | Average reference + epoching + baseline correction | — |
extract_frequency_bands() | Split into δ/θ/α/β/γ bands + power matrices | — |
extract_features() | Band power, CSP, Hjorth, sample entropy, etc. | — |
compute_connectivity() | PLV, coherence, wPLI, imaginary coherence | Yes |
extract_erp_features() | Peak amplitude, latency, area under curve | Yes |
compute_alpha_asymmetry() | Frontal alpha asymmetry (emotion studies) | Yes |
run_microstate_analysis() | EEG microstates (resting-state) | Yes |
full_eeg_pipeline() | One-click end-to-end pipeline (any combination) | — |
Installation (Handled by dependency-planner)
This skill is automatically installed when eeg-skill is used:
# Executed via dependency-planner + conda-env-manager
conda create -n neuroclaw-eeg python=3.11 -y
conda activate neuroclaw-eeg
conda install -c conda-forge mne pyentrp scikit-learn pandas numpy matplotlib -y
pip install mne[full] # optional: full extras
NeuroClaw recommended wrapper script
The full EEG pipeline implementation is in scripts/eeg_pipeline_reference.py (see Agent Reference Rule above).
Example:
python skills/mne-eeg-tool/scripts/eeg_pipeline_reference.py \
--input path/to/data.set \
--resting \
--output-dir eeg_output/
Functions: load_eeg, detect_and_interpolate_bad_channels, preprocess_filtering, remove_artifacts, continuous_data_cleaning, rereference_and_epoch, extract_frequency_bands, extract_features, compute_connectivity, extract_erp_features, compute_alpha_asymmetry, run_microstate_analysis, full_eeg_pipeline.
Important Notes & Limitations
- Requires the
neuroclaw-eegconda environment (auto-created bydependency-planner). - Long-running steps (ICA, connectivity, microstates) run safely in
clawtmux session. - Outputs are always written to
./eeg_output/with clear subfolders. - Fully extensible: new functions can be added to
eeg_pipeline.pywithout touchingeeg-skill.
Complementary / Related Skills
claw-shell→ executes this skill’s wrapperdependency-planner+conda-env-manager→ createsneuroclaw-eegenvironment
Reference
Official MNE-Python documentation (https://mne.tools) + MNE-Connectivity + mne-microstates. Aligned with NeuroClaw base/tool skill pattern (freesurfer-tool, dcm2nii, etc.).
Curated reference snippet in this skill:
skills/mne-eeg-tool/scripts/eeg_pipeline_reference.py
Post-Execution Verification (Harness Integration)
After MNE-EEG processing completes, this skill automatically invokes harness-core's VerificationRunner to validate output integrity:
Integrated verification checks:
from skills.harness_core import VerificationRunner, AuditLogger
verifier = VerificationRunner(task_type="eeg_processing")
# 1. EEG file loading success
verifier.add_check("eeg_loading",
checker=lambda: verify_eeg_loaded(output_dir),
severity="error"
)
# 2. Channel count and data shape
verifier.add_check("channel_integrity",
checker=lambda: verify_channel_count(output_dir),
severity="error"
)
# 3. Artifact removal success (ICA, AutoReject)
verifier.add_check("artifact_removal",
checker=lambda: verify_artifact_removal_rate(output_dir, min_rate=0.85),
severity="warning"
)
# 4. Frequency spectrum sanity (not all zeros, reasonable power)
verifier.add_check("frequency_spectrum",
checker=lambda: verify_frequency_spectrum(output_dir),
severity="warning"
)
# 5. Data range and NaN/Inf checks
verifier.add_check("data_integrity",
checker=lambda: verify_no_nan_inf(output_dir),
severity="error"
)
# 6. Connectivity/Features output shape
verifier.add_check("feature_extraction",
checker=lambda: verify_feature_dimensions(output_dir),
severity="warning"
)
report = verifier.run(output_dir)
# Log verification results
logger = AuditLogger(log_file=f"{output_dir}/eeg_verification.jsonl")
logger.log_validation(
task_name="eeg_processing",
checks_passed=len([r for r in report.results if r.passed]),
total_checks=len(report.results),
output_path=output_dir
)
Output: eeg_output/eeg_verification.jsonl (structured audit log with JSONL format)
Created At: 2026-03-25 14:00 HKT
Last Updated At: 2026-04-05 02:03 HKT
Author: chengwang96
What ships with it
Read from the repository
Just SKILL.md. No reference files, no scripts.