instrument-data-to-allotrope
Audited by Runlayer on Feb 23, 2026
Malicious tool definition detected
Tool: LICENSE.txt [1/2] Description: Apache License Version 2.0, January 2004 http://www.apache.org/licenses/ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION 1.
Tool: LICENSE.txt [2/2] Description: this License.
Malicious tool definition detected
Tool: SKILL.md [1/2] Description: --- name: instrument-data-to-allotrope description: Convert laboratory instrument output files (PDF, CSV, Excel, TXT) to Allotrope Simple Model (ASM) JSON format or flattened 2D CSV.
Tool: SKILL.md [2/2] Description: Lowercase detection types | Use "Absorbance" not "absorbance" | | "emission wavelength setting" | Use "detector wavelength setting" for emission | | All measurements in one document | Group by well/sample location | | Missing procedure metadata | Extract ALL device settings per measurement | ## Code Export for Data Engineers Generate standalone Python scripts that scientists can hand off: ```python # Export parser code python scripts/export_parser.py --input "da
Malicious tool definition detected
Tool: references/asm_schema_overview.md Description: # ASM Schema Overview The Allotrope Simple Model (ASM) is a JSON-based standard for representing laboratory instrument data with semantic consistency.
Malicious tool definition detected
Tool: references/field_classification_guide.md [1/3] Description: # Field Classification Guide This guide helps classify instrument data fields into the correct ASM document locations.
Tool: references/field_classification_guide.md [2/3] Description: "jsmith" | | Reviewer | (custom or extension) | "Pending" | **Rule:** Analyst goes at the technique-document level, not in individual measurements.
Tool: references/field_classification_guide.md [3/3] Description: "2", "source well plate identifier": "96WP001", "destination well plate identifier": "96WP002" }, "aspiration volume": {"value": 26, "unit": "μL"}, "transfer volume": {"value": 26, "unit": "μL"} } ``` **Pairing logic:** 1.
Malicious tool definition detected
Tool: references/flattening_guide.md Description: # Flattening ASM to 2D CSV Converting hierarchical ASM JSON to flat 2D tables for LIMS import, spreadsheet analysis, or data engineering pipelines.
Malicious tool definition detected
Tool: references/supported_instruments.md Description: # Supported Instruments ## What Can This Skill Convert?
Malicious tool definition detected
Tool: requirements.txt Description: # Instrument Data to Allotrope Skill - Pinned Dependencies # # These versions are pinned for reproducibility and determinism.
Malicious tool definition detected
Tool: scripts/convert_to_asm.py [1/2] Description: #!/usr/bin/env python3 """ Instrument Data to ASM Converter Converts laboratory instrument output files to Allotrope Simple Model (ASM) JSON format.
Tool: scripts/convert_to_asm.py [2/2] Description: in df.iterrows(): meas = {} for col in df.columns: value = row[col] if pd.notna(value): # Clean column name clean_col = str(col).lower().replace(" ", "-").replace("_", "-") clean_col = re.sub(r"[^a-z0-9-]", "", clean_col) # Handle numeric values if isinstance(value, (int, float)): meas[clean_col] = {"value": value, "unit": "(unitless)"} else: meas[clean_col] = str(value) if meas: measurements.append(meas) return asm def main(): """Main entry poi
Malicious tool definition detected
Tool: scripts/export_parser.py [1/2] Description: #!/usr/bin/env python3 """ Export Parser Code Generates standalone Python scripts that can be handed off to data engineers or run in Jupyter notebooks.
Tool: scripts/export_parser.py [2/2]
Malicious tool definition detected
Tool: scripts/flatten_asm.py Description: #!/usr/bin/env python3 """ Flatten ASM JSON to 2D CSV Converts hierarchical Allotrope Simple Model (ASM) JSON to flat tabular format suitable for LIMS import, spreadsheet analysis, or database loading.
Malicious tool definition detected
Tool: scripts/validate_asm.py [1/4] Description: #!/usr/bin/env python3 """ ASM Output Validation Script Validates ASM JSON output against common issues: - Wrong technique selection - Hyphenated field names (should be space-separated) - Missing statistics documents - Incorrect units - Missing required fields - Missing calculated data traceability - Improperly flattened nested documents (sample document, device control, etc.) Validation Rules: Based on: Allotrope ASM specification (December 2024)
Tool: scripts/validate_asm.py [2/4] Description: missing vocabulary or contexts") def detect_technique(asm: Dict) -> Tuple[str, float]: """Detect technique from ASM structure.""" # Check for technique in top-level keys for key in asm.keys(): if key == "$asm.manifest": continue # Extract technique name from aggregate document key # Handle both "liquid handler aggregate document" and "liquid-handler-aggregate-document" key_normalized = key.lower().replace("-", " ") if "aggregate document" in key_n
Tool: scripts/validate_asm.py [3/4] Description: f"Found {calculated_ids} calculated data entries but no data source identifiers - " "each calculated value should reference its source" ) # ============================================================================= # NEW: NESTED DOCUMENT STRUCTURE VALIDATION # ============================================================================= def validate_nested_document_structure( asm: Dict, content_str: str, result: ValidationResult ): """ Validate
Tool: scripts/validate_asm.py [4/4]