install
source · Clone the upstream repo
git clone https://github.com/Upsonic/Upsonic
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/Upsonic/Upsonic "$T" && mkdir -p ~/.claude/skills && cp -r "$T/prebuilt_autonomous_agents/applied_scientist/skills/analyze_current" ~/.claude/skills/upsonic-upsonic-analyze-current && rm -rf "$T"
manifest:
prebuilt_autonomous_agents/applied_scientist/skills/analyze_current/SKILL.mdsource content
Analyze Current Skill
Purpose
Read and understand the current baseline implementation. Extract all relevant information about the existing approach without modifying anything, and record the analysis as a structured JSON entry.
When to Use
Phase 1 — after experiment setup is complete and files are copied to the experiment folder.
Input
| Parameter | Type | Description |
|---|---|---|
| experiment_path | path | |
Actions
-
Read
and extract:{experiment_path}/current.ipynb- Model/algorithm used
- Preprocessing steps (encoding, scaling, feature selection, etc.)
- Training approach (train/test split ratio, cross-validation, etc.)
- Hyperparameters
- Metrics used and their values
- Target variable and feature set
-
Extract dependencies:
- Scan all import statements in the notebook.
- Write
with one package per line ({experiment_path}/current_requirements.txt
if determinable, otherwise justpackage==version
).package
-
Read
(or, for code-based data, the download spec):{experiment_path}/current_data/- Identify data format (CSV, parquet, etc.)
- Note number of rows, columns
- Note data types and any special handling
-
Append a Phase 1 entry to
under{experiment_path}/log.json
:phases{ "name": "Phase 1: Analyze Current", "completed_at": "2026-04-17T10:15:00Z", "model": "XGBoost", "preprocessing": [ "Drop rows with NaN", "LabelEncoder on target", "LabelEncoder on categorical features", "StandardScaler on numerical features" ], "training": { "split": 0.2, "seed": 42, "stratified": true }, "hyperparameters": { "n_estimators": 200, "max_depth": 6, "learning_rate": 0.1 }, "metrics": { "accuracy": 0.8726, "f1": 0.7277, "roc_auc": 0.9274 }, "target": "income", "features_count": 14, "data": { "source": "ucimlrepo fetch_ucirepo(id=2)", "format": "pandas.DataFrame", "rows": 45222, "cols": 14 }, "notes": "Data downloaded programmatically; both notebooks must use the same source." }Do not overwrite earlier entries; append to the
array.phases
Output
— updated with complete Phase 1 analysis entry{experiment_path}/log.json
— written{experiment_path}/current_requirements.txt- No other files created or modified