SKILL.md
Unit Computation with Pint
Cognitive prosthetics for unit-aware computation. Use Pint for converting between units, performing unit arithmetic, checking dimensional compatibility, and simplifying compound units.
When to Use
- Converting between units (meters to feet, kg to pounds)
- Unit-aware arithmetic (velocity x time = distance)
- Dimensional analysis (is force = mass x acceleration?)
- Simplifying compound units to base or named units
- Parsing and analyzing quantities with units
Quick Reference
I want to...
Command
Example
Convert units
convert
convert "5 meters" --to feet
Unit math
calc
calc "10 m/s * 5 s"
Check dimensions
check
check newton --against "kg * m / s^2"
Parse quantity
parse
parse "100 km/h"
Simplify units
simplify
simplify "1 kg*m/s^2"
Commands
parse
Parse a quantity string into magnitude, units, and dimensionality.
uv run python -m runtime.harness scripts/pint_compute.py \
parse "100 km/h"
uv run python -m runtime.harness scripts/pint_compute.py \
parse "9.8 m/s^2"
convert
Convert a quantity to different units.
uv run python -m runtime.harness scripts/pint_compute.py \
convert "5 meters" --to feet
uv run python -m runtime.harness scripts/pint_compute.py \
convert "100 km/h" --to mph
uv run python -m runtime.harness scripts/pint_compute.py \
convert "1 atmosphere" --to pascal
calc
Perform unit-aware arithmetic. Operators must be space-separated.
uv run python -m runtime.harness scripts/pint_compute.py \
calc "5 m * 3 s"
uv run python -m runtime.harness scripts/pint_compute.py \
calc "10 m / 2 s"
uv run python -m runtime.harness scripts/pint_compute.py \
calc "5 meters + 300 cm"
check
Check if two units have compatible dimensions.
uv run python -m runtime.harness scripts/pint_compute.py \
check newton --against "kg * m / s^2"
uv run python -m runtime.harness scripts/pint_compute.py \
check joule --against "kg * m^2 / s^2"
simplify
Simplify compound units to base or compact form.
uv run python -m runtime.harness scripts/pint_compute.py \
simplify "1 kg*m/s^2"
uv run python -m runtime.harness scripts/pint_compute.py \
simplify "1000 m"
Common Unit Domains
Domain
Examples
Length
meter, foot, inch, mile, km, yard
Time
second, minute, hour, day, year
Mass
kg, gram, pound, ounce, ton
Velocity
m/s, km/h, mph, knot
Energy
joule, calorie, eV, kWh, BTU
Force
newton, pound_force, dyne
Temperature
kelvin, celsius, fahrenheit
Pressure
pascal, bar, atmosphere, psi
Power
watt, horsepower
Output Format
All commands return JSON with relevant fields:
{
"result": "16.4042 foot",
"magnitude": 16.4042,
"units": "foot",
"dimensionality": "[length]",
"latex": "16.4042\\,\\mathrm{ft}"
}
Error Handling
Dimensionality errors are caught and reported:
# This will error - incompatible dimensions
uv run python -m runtime.harness scripts/pint_compute.py \
convert "5 meters" --to kg
# Error: Cannot convert '[length]' to '[mass]'
Related Skills
- /math-mode - Full math orchestration (SymPy + Z3)
- /sympy-compute - Symbolic computation