feat: add utilities/unit_converter skill#166
Conversation
|
Thanks for the contribution, @sameer08055, appreciate you taking the time to add tests and follow parts of the PR template. Process: Please open a New Skill Proposal issue and get maintainer ack before opening a PR (except hotfixes to existing skills). That keeps scope, category, and required files aligned before review. I've opened issue #167 to track a revised direction, let's continue there and treat this PR as a draft reference. Scope: A single-value converter (km→miles, °C→°F, etc.) is too close to what models already do inline. Skillware registry skills should solve problems agents get wrong reliably, e.g. batch normalization on structured records, compound unit parsing ( Missing from this PR (required for any new registry skill per CONTRIBUTING):
Next steps: Comment on #167 with which direction you prefer (batch normalizer vs compound parser vs finance units). Once scope is agreed, close this PR and open a fresh one linked to the issue with the full file set. Happy to review again when it's aligned. |
Description
Adds a new
utilities/unit_converterskill that converts values betweencommon units of measurement using standard conversion factors.
Supports length (km, m, cm, mm, miles, yards, feet, inches), weight
(kg, g, mg, lbs, oz), temperature (celsius, fahrenheit, kelvin),
and speed (kph, mph, mps, knots). Zero external dependencies.
Type of Change
manifest.yaml,skill.py, andinstructions.md)Checklist (all PRs)
pytestlocally on the skill tests (12 passing).CHANGELOG.mdupdated under[Unreleased].examples/README.md— not applicable, no new runnable script added.New or updated skill
Bundle & metadata
skills/utilities/unit_converter/manifest.yamlhasname,version,description, validparameters, andconstitution.manifest.yamlincludesissuerwith realnameandemail.short_descriptionincluded in manifest.requirementsis empty — zero external dependencies.Logic, cognition, and UI
skill.pyis deterministic Python — pure arithmetic, no LLM code paths.instructions.mdexplains when and how to use the skill.Tests & loader
test_skill.pycovers all unit categories, edge cases, and error handling (12 tests, all passing).Constitution & Safety
This skill performs only local arithmetic using hardcoded conversion
factors. It makes no network requests, reads no files, and has no
side effects. All error cases return a structured error key rather
than raising exceptions.
Related Issues
No related issue — new skill contribution.