Mastering Python Skill
SpillwaveSolutions/agent-brain
Modern Python coaching covering language foundations through advanced production patterns.
Walks through the first of six steps for adding a syncable entity to Twenty's server: metadata name, TypeORM entity, flat types and central constants.
$ npx skills add twentyhq/twenty --skill syncable-entity-types-and-constants -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install twentyhq/twenty syncable-entity-types-and-constants --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/twentyhq/twenty.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.claude/skills/syncable-entity-types-and-constants .claude/skills/syncable-entity-types-and-constants && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "syncable-entity-types-and-constants" agent skill from https://github.com/twentyhq/twenty/tree/main/.claude/skills/syncable-entity-types-and-constants into .claude/skills/syncable-entity-types-and-constants/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "syncable-entity-types-and-constants", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/twentyhq/twenty/tree/main/.claude/skills/syncable-entity-types-and-constantsType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add twentyhq/twenty --skill syncable-entity-types-and-constants -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install twentyhq/twenty syncable-entity-types-and-constants --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/twentyhq/twenty.git skills-src && mkdir -p .agents/skills && cp -r skills-src/.claude/skills/syncable-entity-types-and-constants .agents/skills/syncable-entity-types-and-constants && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "syncable-entity-types-and-constants" agent skill from https://github.com/twentyhq/twenty/tree/main/.claude/skills/syncable-entity-types-and-constants into .agents/skills/syncable-entity-types-and-constants/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "syncable-entity-types-and-constants", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add twentyhq/twenty --skill syncable-entity-types-and-constants -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install twentyhq/twenty syncable-entity-types-and-constants --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/twentyhq/twenty.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/.claude/skills/syncable-entity-types-and-constants .cursor/skills/syncable-entity-types-and-constants && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "syncable-entity-types-and-constants" agent skill from https://github.com/twentyhq/twenty/tree/main/.claude/skills/syncable-entity-types-and-constants into .cursor/skills/syncable-entity-types-and-constants/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "syncable-entity-types-and-constants", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/twentyhq/twenty.git --path .claude/skills/syncable-entity-types-and-constants--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add twentyhq/twenty --skill syncable-entity-types-and-constants -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install twentyhq/twenty syncable-entity-types-and-constants --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/twentyhq/twenty.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/.claude/skills/syncable-entity-types-and-constants .gemini/skills/syncable-entity-types-and-constants && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "syncable-entity-types-and-constants" agent skill from https://github.com/twentyhq/twenty/tree/main/.claude/skills/syncable-entity-types-and-constants into .gemini/skills/syncable-entity-types-and-constants/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "syncable-entity-types-and-constants", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install twentyhq/twenty syncable-entity-types-and-constantsInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add twentyhq/twenty --skill syncable-entity-types-and-constants -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/twentyhq/twenty.git skills-src && mkdir -p .github/skills && cp -r skills-src/.claude/skills/syncable-entity-types-and-constants .github/skills/syncable-entity-types-and-constants && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "syncable-entity-types-and-constants" agent skill from https://github.com/twentyhq/twenty/tree/main/.claude/skills/syncable-entity-types-and-constants into .github/skills/syncable-entity-types-and-constants/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "syncable-entity-types-and-constants", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add twentyhq/twenty --skill syncable-entity-types-and-constants -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install twentyhq/twenty syncable-entity-types-and-constants --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/twentyhq/twenty.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/.claude/skills/syncable-entity-types-and-constants .opencode/skills/syncable-entity-types-and-constants && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "syncable-entity-types-and-constants" agent skill from https://github.com/twentyhq/twenty/tree/main/.claude/skills/syncable-entity-types-and-constants into .opencode/skills/syncable-entity-types-and-constants/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "syncable-entity-types-and-constants", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
syncable-entity-types-and-constantsWalks through the first of six steps for adding a syncable entity to Twenty's server: metadata name, TypeORM entity, flat types and central constants.
This skill is for contributors working inside the Twenty repository itself, not for building apps on top of Twenty. It covers the first of six steps for a new syncable entity in the workspace migration system, and every later step depends on its types being correct.
The agent adds a metadata name to the shared constants package, then writes a TypeORM entity that extends the SyncableEntity base and carries an isCustom column, with JSON data held in jsonb columns. It declares the flat entity types and an optional maps type for indexed lookups, lists the editable properties while leaving out identity and timestamp fields, and defines the universal and flat action types.
The last part registers the entity in the central constants, which include the entity properties configuration and the one-to-many and many-to-one relation and foreign-key registrations.
6 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit 5fcbee6. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
No scripts in the folder and no shell commands in SKILL.md (its code samples are typescript).
From the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md.
From URLs in SKILL.md, links to its own repository left out.
Names these keys or tokens, usually read from environment variables:
ALL_MANY_TO_ONE_METADATA_FOREIGN_KEYFrom names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Twenty Syncable Entity Types loads about 2.8k tokens when it runs. Until then it costs about 141 tokens; SKILL.md has 432 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
Its licence (Custom licence) doesn't allow us to republish the file, so here is its outline and opening line. It has 432 words (~2,822 tokens).
“Purpose: Define all types, entities, and register in central constants. This is the foundation - everything else depends on these types being correct.”
Just SKILL.md in .claude/skills/syncable-entity-types-and-constants of twentyhq/twenty.
Open the folder on GitHubat commit 5fcbee6
Twenty Syncable Entity Types next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Twenty Syncable Entity Types this skilltwentyhq/twenty | 58k | — | ~2.8k | Automated safety check: Pass | Custom licence | |
| Mastering Python SkillSpillwaveSolutions/agent-brain | 119 | — | ~1.4k | Automated safety check: Notes | MIT | |
| PSL Syntax Tree Layersprisma/orm | 48k | — | ~2.3k | Automated safety check: Pass | Apache-2.0 | |
| Node Backend Development Guidelinesdiet103/claude-code-infrastructure-showcase | 10k | 2 repos | ~2k | Automated safety check: Pass | MIT | |
| Typescriptericrisco/rsc-harness | 167 | — | ~2.8k | Automated safety check: Pass | MIT | |
| Python Rulessoftspark/ai-toolkit | 179 | — | ~2.9k | Automated safety check: Pass | Apache-2.0 |
SpillwaveSolutions/agent-brain
Modern Python coaching covering language foundations through advanced production patterns.
prisma/orm
Explains which of the three PSL syntax tree layers to use with Prisma's parser output, and how to move between them without hand-written walks.
diet103/claude-code-infrastructure-showcase
Sets layered architecture and coding rules for Node.js, Express and TypeScript microservices, covering routes, controllers, services, repositories, Prisma, Sentry and Zod.
ericrisco/rsc-harness
A skill your agent uses when writing or fixing TypeScript type code (.ts/.tsx/.d.ts), modeling data with generics/unions/branded types, diagnosing narrowing failures, or configuring tsconfig and the…
softspark/ai-toolkit
Python coding rules: style, patterns, security, testing. An agent skill from softspark/ai-toolkit.
rolling-scopes/rsschool-app
Guidelines for developing with TypeORM, a full-featured ORM for TypeScript and JavaScript supporting multiple databases
twentyhq/twenty
Guides changes to an existing Twenty app: adding or editing objects, layouts, logic functions and front components, with a plan stated before multi-entity edits.
twentyhq/twenty
Operates an existing Twenty app: managing remotes, syncing, building, deploying, reading logs, running tests and setting up CI/CD, with confirmation for production.
twentyhq/twenty
Contributor guide for step three of adding a syncable entity to the Twenty server: write the validator, the migration action builder and the orchestrator wiring.
twentyhq/twenty
Walks through step 2 of adding a syncable entity to the Twenty server: a cache service for flat entity maps and utilities that transform entities and DTOs into universal flat entities.
twentyhq/twenty
Registers a new syncable entity in three NestJS modules and adds its service and GraphQL resolver layers when contributing to the Twenty server.
twentyhq/twenty
Step four of adding a syncable entity in the Twenty server: write create, update and delete action handlers that run workspace migrations against the database.
Works with
Categories
Walks through the first of six steps for adding a syncable entity to Twenty's server: metadata name, TypeORM entity, flat types and central constants. This skill is for contributors working inside the Twenty repository itself, not for building apps on top of Twenty. It covers the first of six steps for a new syncable entity in the workspace migration system, and every later step depends on its types being correct.
Twenty Syncable Entity Types fits situations like: creating a new syncable entity in the Twenty server codebase; defining a TypeORM entity that extends SyncableEntity; registering an entity in the workspace migration central constants; writing flat entity types and editable property lists for a new entity.
Run `npx skills add twentyhq/twenty --skill syncable-entity-types-and-constants -a claude-code`. Or copy the skill folder (.claude/skills/syncable-entity-types-and-constants in twentyhq/twenty) into .claude/skills/syncable-entity-types-and-constants in your project. Claude Code loads it when a task matches its description.
Run `npx skills add twentyhq/twenty --skill syncable-entity-types-and-constants -a codex`. Or copy the skill folder (.claude/skills/syncable-entity-types-and-constants in twentyhq/twenty) into .agents/skills/syncable-entity-types-and-constants in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add twentyhq/twenty --skill syncable-entity-types-and-constants -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/syncable-entity-types-and-constants, .gemini/skills/syncable-entity-types-and-constants, .github/skills/syncable-entity-types-and-constants and .opencode/skills/syncable-entity-types-and-constants in your project.
Going by SKILL.md and its folder, Twenty Syncable Entity Types needs credentials named ALL_MANY_TO_ONE_METADATA_FOREIGN_KEY. Our summary lists: A checkout of the twentyhq/twenty monorepo.
SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Twenty Syncable Entity Types has a licence file (the repository's licence) that doesn't match a standard licence. Read it on GitHub before reusing the skill.
About 2.8k tokens (SKILL.md is roughly 11k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Twenty Syncable Entity Types: Mastering Python Skill (SpillwaveSolutions/agent-brain, 119 stars), PSL Syntax Tree Layers (prisma/orm, 48k stars), Node Backend Development Guidelines (diet103/claude-code-infrastructure-showcase, 10k stars) and Typescript (ericrisco/rsc-harness, 167 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
twentyhq (a GitHub organization) maintains it in twentyhq/twenty, which has 58,056 GitHub stars. The repository holds 13 skills in this directory. The repository was last updated on October 8, 2026.
Source: twentyhq/twenty on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.