skills/konecty-meta-remove/SKILL.md
Removes a full Konecty metadata module from MetaObjects (lists, views, access, pivot, card, hooks on the document, then document/composite) via admin HTTP API with mandatory per-step confirmation. Use when retiring a document module from the tenant, cleaning NotificationPreferences-style metas, or ensuring no orphan list/view/access remain. Not for business records — use konecty-delete for /rest/data. Requires admin credentials.
npx skillsauth add konecty/skills konecty-meta-removeInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Permanently remove metadata (MetaObjects definitions) for a document module. This is not konecty-delete (which deletes records in /rest/data).
KONECTY_URL, KONECTY_TOKEN in env or ~/.konecty/.env).GET / DELETE under /api/admin/meta/* (same stack as konecty-meta-sync).Never delete only the primary document / composite row while list, view, access, pivot, card, or namespace metas (same module prefix) still exist, and never skip hooks on that document before removing the document meta.
plan — it lists every meta and the exact deletion queue (children → hooks → primary).apply — walks that queue with one confirmation per step (TTY). Optional --yes skips prompts when the operator explicitly requests non-interactive removal (e.g. from automation); it aborts on the first failed DELETE and still refuses deleting the primary while child metas remain. Agents must not use --yes unless the human ordered that exact non-interactive run in the same conversation.POST /api/admin/meta/reload.If the user refuses some steps, the script warns about leftover metas or orphan document and does not silently continue to a dangerous state without an extra explicit prompt for the primary meta.
DELETE on the document meta alone if the plan still shows child metas for that module.apply --document … --yes in the same turn; otherwise the human runs apply in a terminal and confirms each step.konecty-meta-doctor / manual review after removal if other modules referenced this document.python3 scripts/meta_remove.py plan --document NotificationPreferences
Prints all metas returned by GET /api/admin/meta/:document, hook steps inferred from the full document payload, counts by type, and the ordered deletion queue.
python3 scripts/meta_remove.py apply --document NotificationPreferences
For each queue entry, prompts [y/N] unless --yes was passed. Before deleting the primary meta, the script re-checks the server and may require typing DELETE PRIMARY ANYWAY if children were skipped but still exist (not applicable when every child delete succeeded).
python3 scripts/meta_remove.py delete --meta-id "Contact:list:OldList"
One DELETE after confirmation. Use for odd one-offs outside a full module teardown, not as a shortcut to avoid removing related metas when retiring a module.
See scripts/meta_remove.py (stdlib only) and references/deletion-order.md.
data-ai
Replace with description of the skill and when the agent should use it.
tools
Upload, list, and delete files in Konecty document fields via the file API. Use this skill whenever the user wants to attach a file to a Konecty record, upload a photo/image to a contact or product, add a PDF or document to an opportunity, send a curriculum to a candidate, manage gallery images for a development or promotion, or attach any binary file to any Konecty module field. Also triggers when the user says 'upload', 'anexar', 'enviar arquivo', 'adicionar imagem', 'attach file', or refers to file-type fields in any document. Automatically reads field constraints (accepted extensions, max size, max file count) from metadata before uploading to catch errors early. Requires an active konecty-session (KONECTY_URL and KONECTY_TOKEN in ~/.konecty/.env or ~/.konecty/credentials).
documentation
Updates records in any Konecty module via PUT /rest/data/:document. Enforces the mandatory pre-update fetch workflow: always fetch the current record first to obtain its _updatedAt (optimistic locking guard), then PUT with ids=[{_id, _updatedAt}] and data={changed fields}. Use when the user wants to update, edit, change, or modify any record in Konecty. Requires an active konecty-session. Use konecty-modules to discover field names and types before updating.
development
Opens a Konecty session via OTP login (request OTP, then verify OTP) and persists the access token in .env or ~/.konecty/credentials for use by other skills. Use when the user wants to log in to Konecty with OTP, store credentials, set up KONECTY_TOKEN, or establish a session so other Konecty skills can call the API. Only works when the namespace has OTP enabled (email or WhatsApp).