Install
$ agentstack add skill-taosdata-agent-skills-idmp-uom ✓ scanned · ✓ verified — works with Claude Code, Cursor, and more.
Security review
✓ PassedNo issues found. Passed automated security review. · v0.1.0 How review works →
- ✓ Prompt-injection patterns
- ✓ Secret / credential exfiltration
- ✓ Dangerous shell & filesystem operations
- ✓ Untrusted network calls
- ✓ Known-malicious package signatures
What it can access
- ✓ Network access No
- ✓ Filesystem access No
- ✓ Shell / process execution No
- ✓ Environment & secrets No
- ✓ Dynamic code execution No
From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
About
uom
Read [../idmp-shared/SKILL.md](../idmp-shared/SKILL.md) first.
What this skill covers
- Read UOM classes and the units that belong to them.
- Search for units before modeling or import mapping.
- Distinguish the free/global UOM read from the class-scoped UOM read.
- Use single-row and multi-row conversion batches to confirm compatible units before writing model definitions.
Recommended shortcuts
| Shortcut | Purpose | |----------|---------| | +classes | List UOM classes | | +class | Read one UOM class | | +search | Search UOMs | | +get | Read one UOM in the common class-scoped flow |
Recommended reference
- [
UOM read flows](references/uom-read-flows.md)
Missing context to resolve first
| Context | Why it must be resolved before conversion or modeling work | | --- | --- | | Lookup mode | Decide whether the target is a class lookup, a free/global UOM read, or a class-scoped UOM read. | | Target unit family | Search terms can be fuzzy, so you need the intended unit name, abbreviation, or class before you trust an ID. | | Conversion direction | Decide the exact fromUomId, toUomId, and whether the batch is expected to stay in one compatible class. | | Verification target | Decide whether proof should come from class inventory, exact get, class-scoped get-get, or a successful conversion result. |
Constrained live behaviors
uom searchis unit-oriented rather than class-oriented. Do not rely on class labels or family words alone—whether they are English or localized labels—to prove that a unit family is missing. Search appears to work best with exact unit names and abbreviations.- Use
uomclasses listanduomclasses getto discover class IDs before you rely onuom get-get. uom getis the free/global read.uom get-getneeds bothuomClassIdanduomId.convertis batch-wide and all-or-nothing: one invalid or incompatible row can fail the full request.- Treat exact unit name or abbreviation matches as stronger evidence than fuzzy search hits when modeling depends on the result.
Execution flow
- Start with
uomclassesso the operator understands the class context before choosing a unit. - Use
uom getfor the free/global UOM read when only a standaloneuomIdis known. - Use
uom get-getfor the class-scoped read when bothuomClassIdanduomIdare known. - When
searchreturns near-matches, prefer an exact unit name or abbreviation match before you choose IDs forget,get-get, orconvert. - Use
searchandconvertbefore attribute modeling, import mapping, or cross-unit comparisons. - Treat
convertas all-or-nothing for one batch: one invalid UOM ID or incompatible pair can fail the full request with a structured400. - Re-check the class and IDs whenever a lookup or conversion result looks inconsistent.
Evidence of completion
- A lookup is only complete when
uom getoruom get-getreturns the exact target row you intended to inspect. - A class-discovery task is only complete when
uomclasses listoruomclasses getexposes the matching family, even if fuzzysearchis empty. - A conversion task is only complete when the structured result reflects the requested
fromUomId,toUomId, and numeric output.
Key commands
idmp-cli schema uom.uomclasses.list
idmp-cli uom uomclasses list
idmp-cli schema uom.uomclasses.get
idmp-cli uom uomclasses get --params '{"uomClassId":264033646}'
idmp-cli schema uom.uom.search
idmp-cli uom uom search --params '{"keyword":"kWh","limitSize":20}'
idmp-cli schema uom.uom.get
idmp-cli uom uom get --params '{"uomId":1753955006}'
idmp-cli schema uom.uom.get-get
idmp-cli uom uom get-get --params '{"uomClassId":264033646,"uomId":1753955006}'
idmp-cli schema uom.uom.convert
idmp-cli uom uom convert --ack-risk --data '[{"fromUomId":1,"inputValue":100,"toUomId":2},{"fromUomId":1,"inputValue":5,"toUomId":2}]'
Exception paths
- Search returns multiple similar units: read the class first, then prefer an exact unit name or abbreviation match (for example ampere
Ainstead of ampere-hourAh) before conversion. - Search returns empty for class labels or family words alone: fall back to
uomclasses listanduomclasses get; do not treat empty fuzzy search as proof that the unit family does not exist. uom getreturns not found: confirm whether the operator actually needs the class-scopeduom get-getpath.uom get-getreturns not found: verify bothuomClassIdanduomId; a valid free UOM ID is not enough here.- Conversion fails or looks wrong: confirm the two units belong to a compatible class before trusting the result.
- A mixed valid/invalid conversion batch returns a structured error for the full request; do not treat the first valid row as partial success.
- Modeling still rejects the chosen unit: verify the target attribute expects the same UOM class and unit semantics.
Validation scenarios
- List UOM classes with
idmp-cli uom uomclasses list. - Read one class with
idmp-cli uom uomclasses get --params '{"uomClassId":264033646}'. - Search for a known unit such as
kWhwithidmp-cli uom uom search. - Read one free UOM with
idmp-cli uom uom getand one class-scoped UOM withidmp-cli uom uom get-get. - Convert a multi-row compatible batch with
idmp-cli uom uom convert --ack-risk --data '[{"fromUomId":1,"inputValue":100,"toUomId":2},{"fromUomId":1,"inputValue":5,"toUomId":2}]', then probe a mixed valid/invalid batch and confirm the CLI surfaces the structured400instead of partial success.
Source & license
This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: taosdata
- Source: taosdata/agent-skills
- License: MIT
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet — be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.