Baltor Get started

Demonstration

One task, five small steps.

A data cleanup task, broken into five small steps. Each step searches the library, downloads only the file it chose and puts it where the harness reads it.

The task

Clean the customer file customers.csv: learn what its columns hold, split the addresses, find customers entered twice, propose merges without deleting a row, and hand over a checked copy.

  1. Profile the columns
  2. Split the addresses
  3. Find duplicates
  4. Propose merges
  5. Hand over the copy

Step 1 of 5

Profile the columns

Count what each column holds before anything changes.

Real results from the library

  1. Search

    search: profile a text column before cleaning

    1. profile_text_column_before_cleaningskill · MIT · 2.9 KB · sha256 3274cbf5…Chosen
    2. layer_exception_catalogs_with_precedenceskill · MIT · 2.8 KB · sha256 0a8cc8cd…
  2. Download

    download profile_text_column_before_cleaning

  3. Placed where the harness reads it

    Example layout

    step-1-profile/
    ├── customers.csv             the task's file
    └── .claude/skills/
        └── profile-text-column-before-cleaning/
            └── SKILL.md          the skill this step chose

    Writes profile.json for step 2.

Step 2 of 5

Split the addresses

Break each address line into number, street, city, region and postal code.

Real results from the library

  1. Search

    search: split address lines in a customer file

    1. split_address_lines_into_componentsskill · MIT · 3.0 KB · sha256 53dc74e3…Chosen
    2. find_duplicate_records_with_blocking_keysskill · MIT · 2.7 KB · sha256 34da79f4…
  2. Download

    download split_address_lines_into_components

  3. Placed where the harness reads it

    Example layout

    step-2-split/
    ├── customers.csv             the task's file
    ├── profile.json              from step 1
    └── .claude/skills/
        └── split-address-lines-into-components/
            └── SKILL.md          the skill this step chose

    Writes addresses.csv for step 3.

Step 3 of 5

Find duplicates

Find the customers entered more than once.

Real results from the library

  1. Search

    search: find duplicate customer records

    1. find_duplicate_records_with_blocking_keysskill · MIT · 2.7 KB · sha256 34da79f4…Chosen
    2. score_duplicate_pairs_by_weakest_signalskill · MIT · 2.6 KB · sha256 9e713a45…
  2. Download

    download find_duplicate_records_with_blocking_keys

  3. Placed where the harness reads it

    Example layout

    step-3-duplicates/
    ├── customers.csv             the task's file
    ├── addresses.csv             from step 2
    └── .claude/skills/
        └── find-duplicate-records-with-blocking-keys/
            └── SKILL.md          the skill this step chose

    Writes duplicate-pairs.csv for step 4.

Step 4 of 5

Propose merges

Propose one survivor for each group of duplicates, without deleting a row.

Real results from the library

  1. Search

    search: propose a dedupe without deleting rows

    1. propose_a_dedupe_without_deleting_rowsskill · MIT · 2.6 KB · sha256 c287344c…Chosen
    2. find_duplicate_records_with_blocking_keysskill · MIT · 2.7 KB · sha256 34da79f4…
  2. Download

    download propose_a_dedupe_without_deleting_rows

  3. Placed where the harness reads it

    Example layout

    step-4-merge/
    ├── duplicate-pairs.csv       from step 3
    └── .claude/skills/
        └── propose-a-dedupe-without-deleting-rows/
            └── SKILL.md          the skill this step chose

    Writes merge-proposal.csv for step 5.

Step 5 of 5

Hand over the copy

Write the cleaned copy and the notes its reader needs.

Real results from the library

  1. Search

    search: hand over a cleaned file its consumer can use

    1. hand_over_a_result_its_consumer_can_useskill · MIT · 2.7 KB · sha256 ddef271b…Chosen
    2. orient_on_a_task_and_write_its_contractsskill · MIT · 2.9 KB · sha256 13c13dbc…
  2. Download

    download hand_over_a_result_its_consumer_can_use

  3. Placed where the harness reads it

    Example layout

    step-5-handover/
    ├── customers.csv             the task's file
    ├── addresses.csv             from step 2
    ├── merge-proposal.csv        from step 4
    └── .claude/skills/
        └── hand-over-a-result-its-consumer-can-use/
            └── SKILL.md          the skill this step chose

    Writes customers.cleaned.csv, the result of the task.

Real searches

Every search on this page, and the results it returned in that order, come from the library as it is today.

Your agent chooses

Here each step takes the first result. In your own run, your agent reads the results and picks the one that fits. The folders show where each harness reads the skill, and how one step's output feeds the next.

What a measured run found

When we measured items like these in real steps, they did not make a cheap model better at data cleanup, and one made it worse. Read the case study or see more examples.