packages/twenty-codex-plugin/skills/publish-app/SKILL.md
Pick this skill when the user wants to make an existing Twenty app presentable — listing copy, branding, public assets, and publication. Representative triggers:
defineApplication marketplace fields"Do not use this skill to scaffold (use create-app), to change app entities (use develop-app), to deploy a private build to a specific Twenty server (use manage-app), or to query workspace records (use use-twenty-mcp).
For background on how Twenty apps work — the SDK packages, remotes, sync lifecycle, and rendering model — read ../../references/concepts/how-apps-work.md.
Use ../../references/publish-app/prepare-for-app-store.md for detailed README, marketplace copy, logo, screenshot, and public asset guidance.
Keep the skill workflow concise:
package.json, README.md, src/application-config.ts, and public/.package.json has a valid bumped version and the twenty-app keyword.defineApplication(), verify marketplace-facing fields such as displayName, description, author, category, logoUrl, screenshots, aboutDescription, websiteUrl, termsUrl, emailSupport, and issueReportUrl.logoUrl and screenshots pointed at files in public/. Public assets must not contain secrets, private data, customer records, real tokens, or unreleased confidential material.aboutDescription is omitted, the marketplace uses the package README.md from npm for the About content.yarn twenty dev:build; publish with yarn twenty app:publish or yarn twenty app:publish --tag <tag>.Use $manage-app for remotes, deploys to a specific server, logs, troubleshooting, and CI/CD operations.
Use $develop-app when the app entities themselves need to change before the listing can be accurate.
If the needed publishing detail is unclear, search the official Twenty docs through the bundled twenty-docs MCP server before guessing.