skills/konecty-meta-sync/SKILL.md
Synchronize Konecty metadata between a filesystem repository and the database: plan changes (terraform-style diff), apply selectively, pull from production to repo. Use when the user wants to deploy metadata from a repository to production, compare repo vs database state, pull current metadata to a repository, or selectively apply metadata changes. Requires admin credentials.
npx skillsauth add konecty/skills konecty-meta-syncInstall 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.
Synchronize metadata between a filesystem repository and the Konecty database.
Requires admin credentials from konecty-session. User must have admin: true.
Requires a metadata repository with the standard structure:
MetaObjects/
Contact/
document.json
list/Default.json
view/Default.json
access/Default.json
access/Corretor.json
pivot/Default.json
hook/scriptBeforeValidation.js
hook/validationData.json
hook/validationScript.js
hook/scriptAfterSave.js
Namespace/
document.json
python3 scripts/meta_sync.py plan --from repo --to prod --repo /path/to/metas
python3 scripts/meta_sync.py plan --from prod --to repo --repo /path/to/metas
Shows a diff of changes that would be applied. No changes are made.
python3 scripts/meta_sync.py apply --from repo --to prod --repo /path/to/metas
Interactive confirmation: shows each change and asks for approval.
python3 scripts/meta_sync.py apply --from repo --to prod --repo /path/to/metas --auto-approve
Non-interactive: applies all changes (for CI/CD).
python3 scripts/meta_sync.py apply --from repo --to prod --repo /path/to/metas --only Contact Contact:list:Default
Selective: applies only the specified metas.
Before each document/composite write, hooks are prevalidated using backend POST /api/admin/meta/hook/validate. Invalid hooks are skipped and reported.
python3 scripts/meta_sync.py diff --repo /path/to/metas --meta-id Contact
python3 scripts/meta_sync.py diff --repo /path/to/metas --meta-id "Contact:list:Default"
python3 scripts/meta_sync.py pull --repo /path/to/metas --document Contact
python3 scripts/meta_sync.py pull --repo /path/to/metas --all
--from repo --to prod: Repository is source of truth, push to database--from prod --to repo: Database is source of truth, pull to repositoryhook/ subdirectory are injected into the document metaMetaObjects/Namespace/document.json--only flag allows selective application from a plan--auto-approve flag skips interactive confirmation (for CI/CD)POST /api/admin/meta/reload) is triggered automaticallySee scripts/meta_sync.py. Stdlib only.
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).