Stats
Actions
Tags
From idmp-plugin
IDMP annotation skill. Use it to read and write element annotations while keeping element annotations separate from event annotations.
How this skill is triggered — by the user, by Claude, or both
Slash command
/idmp-plugin:idmp-annotationThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
**Read [`../idmp-shared/SKILL.md`](../idmp-shared/SKILL.md) first.**
Read ../idmp-shared/SKILL.md first.
event annotations * family.content or time window to prove the exact note you just changed.| Shortcut | Purpose |
|---|---|
+list | List annotations for one element, optionally filtered by content |
| Context | Why it must be resolved before mutation |
|---|---|
| Annotation scope | Decide whether the note belongs to an element or an event before choosing the command family. |
| Owner element | Element annotation create needs the final elementId. |
| Target annotation ID | Update and delete need annotationId, not the element ID. |
| Verification plan | Decide how you will reread the annotation list after create, update, and delete. |
annotation annotation create writes element annotations only; event notes use the event annotations * family.annotation annotation update and annotation annotation delete act on annotationId, not on the owner element.annotation annotation list reread shows the expected text or confirms deletion.annotation annotation list supports content, time windows, and small page sizes, so use filtered rereads before widening to the full page.annotation annotation list time-window filters expect epoch milliseconds, even though annotation annotation update can return a timestamp string. Convert the returned time before you feed it back into updateTimeFrom or updateTimeTo.event annotations *.annotationId before any update or delete.update and delete operate on the annotation record, not on the element itself.content filter first, then widen to the unfiltered first page if needed, to confirm the final text and timestamps.updateTime* filter after update, normalize the returned timestamp to epoch milliseconds before the reread.idmp-cli schema annotation.annotation.list
idmp-cli annotation annotation list --params '{"elementId":123,"current":1,"size":20}'
idmp-cli annotation annotation list --params '{"elementId":123,"content":"copilot note","current":1,"size":1}'
idmp-cli schema annotation.annotation.create
idmp-cli annotation annotation create --ack-risk --data '{...}'
idmp-cli schema annotation.annotation.update
idmp-cli annotation annotation update --ack-risk --data '{...}'
idmp-cli schema annotation.annotation.delete
idmp-cli annotation annotation delete --ack-risk --params '{"annotationId":456}'
elementId and the current user’s access level.annotationId, not elementId.event annotations * instead of forcing element commands.updateTimeFrom filtering misses the note: convert the returned update time to epoch milliseconds and retry the filtered list.idmp-cli annotation annotation list.idmp-cli annotation annotation create --ack-risk.annotationId with idmp-cli annotation annotation update --ack-risk.annotationId and confirm it no longer appears in the list.Guides creation, editing, and verification of skills for AI coding agents using test-driven development with subagent scenarios. Use when authoring or debugging skills.
npx claudepluginhub taosdata/agent-skills --plugin idmp-plugin