How to use
- Copy the installation command and review the source package before installing it in your own agent environment.
- Check the source document for required tools, credentials and supported hosts.
- Describe your input and desired deliverable; review the output against the source material.
npx skills add https://github.com/stahura/domo-ai-vibe-rules --skill code-engine-updateBefore you start
- Installation does not include a model subscription, API allowance or permission to access your files.
- Repository stars and installation counts describe activity, not an independent quality or security test.
Rendered from the source repository. Headings, examples, code, tables, links, and referenced images are preserved.
Code Engine Package Update (CLI)
Use this skill for package update/version workflows and safe contract evolution.
Intent
This skill covers:
- update existing package code
- create a new version on an existing package id
- detect and handle mapping drift between package and app manifest
- validate datatype contract stability
For app-runtime invocation code, use ~/.agents/skills/code-engine/SKILL.md.
Primary Execution Path
Prefer community-domo-cli:
community-domo-cli --instance <instance> code-engine update-version <package_id> <version> --body-file payload.jsonFallback endpoint pattern:
POST /api/codeengine/v2/packageswith id and version set in body for versioned update behavior.
Release Safety Rule
Hard rule: never call any Code Engine release endpoint unless the user explicitly says \"release\".
- Do not infer release from context.
- Do not release as part of \"finish\", \"publish\", or \"make it work\".
- If release appears necessary, stop and ask for explicit release approval first.
Update/New-Version Behavior
Preferred create/update model:
- Create a new package:
POST /api/codeengine/v2/packages - Create a new version of an existing package: also
POST /api/codeengine/v2/packageswithidandversion(for example1.0.1) in the request body, including code/manifest payload. - Update an existing package version:
PUT /api/codeengine/v2/packages/{id}/versions/{version} - If update fails because the target version is deployed/immutable, create a new version and then update that new version.
Execution notes:
- For new-version creation, prefer creating the version with full code+manifest payload immediately.
- Use
PUTfor subsequent changes to that specific version.
Always emit resulting packageId and version for downstream manifest sync.
Contract Safeguards
Before update publish:
- compare existing function aliases vs proposed aliases
- compare parameter names/types/nullability
- compare output shape/type
- flag breaking changes (removed required params, incompatible type changes)
When breaking change is intentional, require explicit migration note in generated output.
Drift Handling
After update:
- compare
manifest.json packagesMappingagainst returned package id/version - sync
packageId,version, and parameter/output contracts when drift detected - keep mapping aliases stable unless user requested rename
Checklist
- [ ] Correct update path selected (existing vs versioned)
- [ ] Input/output datatype contracts validated
- [ ] Breaking changes flagged clearly
- [ ] Manifest
packagesMappingdrift checked and synchronized - [ ] Output includes updated package id/version and contract summary



