Test Specialist
ailabs-393/ai-labs-claude-skills
This skill should be used when writing test cases, fixing bugs, analyzing code for potential issues, or improving test coverage for JavaScript/TypeScript applications.
Step-by-step guide to writing the mandatory integration tests for syncable metadata entities in Twenty's server, covering failures and CRUD success cases.
$ npx skills add twentyhq/twenty --skill syncable-entity-testing -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install twentyhq/twenty syncable-entity-testing --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-testing .claude/skills/syncable-entity-testing && 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-testing" agent skill from https://github.com/twentyhq/twenty/tree/main/.claude/skills/syncable-entity-testing into .claude/skills/syncable-entity-testing/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "syncable-entity-testing", 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-testingType 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-testing -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install twentyhq/twenty syncable-entity-testing --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-testing .agents/skills/syncable-entity-testing && 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-testing" agent skill from https://github.com/twentyhq/twenty/tree/main/.claude/skills/syncable-entity-testing into .agents/skills/syncable-entity-testing/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "syncable-entity-testing", 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-testing -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install twentyhq/twenty syncable-entity-testing --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-testing .cursor/skills/syncable-entity-testing && 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-testing" agent skill from https://github.com/twentyhq/twenty/tree/main/.claude/skills/syncable-entity-testing into .cursor/skills/syncable-entity-testing/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "syncable-entity-testing", 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-testing--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-testing -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install twentyhq/twenty syncable-entity-testing --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-testing .gemini/skills/syncable-entity-testing && 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-testing" agent skill from https://github.com/twentyhq/twenty/tree/main/.claude/skills/syncable-entity-testing into .gemini/skills/syncable-entity-testing/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "syncable-entity-testing", 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-testingInstalls 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-testing -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-testing .github/skills/syncable-entity-testing && 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-testing" agent skill from https://github.com/twentyhq/twenty/tree/main/.claude/skills/syncable-entity-testing into .github/skills/syncable-entity-testing/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "syncable-entity-testing", 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-testing -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-testing --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-testing .opencode/skills/syncable-entity-testing && 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-testing" agent skill from https://github.com/twentyhq/twenty/tree/main/.claude/skills/syncable-entity-testing into .opencode/skills/syncable-entity-testing/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "syncable-entity-testing", 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-testingStep-by-step guide to writing the mandatory integration tests for syncable metadata entities in Twenty's server, covering failures and CRUD success cases.
This is the sixth and final mandatory step of adding a syncable entity to the Twenty server, and it is for contributors to the Twenty codebase, not for apps built on Twenty. Tests must cover failing scenarios, meaning every validator exception and input transpilation error, and successful scenarios, meaning all CRUD operations and edge cases, plus reusable test utilities.
Each operation uses a two-file pattern, a query factory and a wrapper utility, for create, update and delete under the entity's folder in `test/integration/metadata/suites/`. Failing creation tests use snapshot assertions and a coverage list: missing required fields, empty strings, invalid formats, uniqueness violations, standard entity protection and foreign key validation. Successful creation tests come next, written against GraphQL metadata queries.
4 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit 0d66dd1. 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.
Shell commands in SKILL.md call:
npxFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md. Its commands use npx, which can reach the network depending on how they are called.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Syncable Entity Integration Tests loads about 3.4k tokens when it runs. Until then it costs about 100 tokens; SKILL.md has 349 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 349 words (~3,429 tokens).
“Purpose: Create comprehensive test suite covering all validation scenarios, input transpilation exceptions, and successful use cases.”
Just SKILL.md in .claude/skills/syncable-entity-testing of twentyhq/twenty.
Open the folder on GitHubat commit 0d66dd1
Syncable Entity Integration Tests 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 |
|---|---|---|---|---|---|---|
| Syncable Entity Integration Tests this skilltwentyhq/twenty | 58k | — | ~3.4k | Automated safety check: Pass | Custom licence | |
| Test Specialistailabs-393/ai-labs-claude-skills | 454 | — | ~3.4k | Automated safety check: Pass | MIT | |
| Testing Strategiesancoleman/ai-design-components | 526 | — | ~3.8k | Automated safety check: Pass | MIT | |
| Web3 Testingwshobson/agents | 40k | 11 repos | ~2k | Automated safety check: Pass | MIT | |
| API Testingpetrkindlmann/qa-skills | 163 | — | ~2.7k | Automated safety check: Pass | MIT | |
| Contract Testingpetrkindlmann/qa-skills | 163 | — | ~4.1k | Automated safety check: Pass | MIT |
ailabs-393/ai-labs-claude-skills
This skill should be used when writing test cases, fixing bugs, analyzing code for potential issues, or improving test coverage for JavaScript/TypeScript applications.
ancoleman/ai-design-components
Strategic guidance for choosing and implementing testing approaches across the test pyramid.
wshobson/agents
Test smart contracts comprehensively using Hardhat and Foundry with unit tests, integration tests, and mainnet forking.
petrkindlmann/qa-skills
Test REST and GraphQL APIs with Playwright APIRequestContext, Supertest, or standalone HTTP clients.
petrkindlmann/qa-skills
Implement consumer-driven contract testing with Pact-JS (v16).
cosmicstack-labs/mercury-agent-skills
REST and GraphQL testing, Postman/Insomnia patterns, contract testing, schema validation, and monitoring
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
Step-by-step guide to writing the mandatory integration tests for syncable metadata entities in Twenty's server, covering failures and CRUD success cases. This is the sixth and final mandatory step of adding a syncable entity to the Twenty server, and it is for contributors to the Twenty codebase, not for apps built on Twenty. Tests must cover failing scenarios, meaning every validator exception and input transpilation error, and successful scenarios, meaning all CRUD operations and edge cases, plus reusable test utilities.
Syncable Entity Integration Tests fits situations like: finishing a new syncable entity in the Twenty server with its integration tests; adding tests for validator exceptions and input transpilation errors; creating query factory and wrapper utilities for metadata CRUD tests.
Run `npx skills add twentyhq/twenty --skill syncable-entity-testing -a claude-code`. Or copy the skill folder (.claude/skills/syncable-entity-testing in twentyhq/twenty) into .claude/skills/syncable-entity-testing in your project. Claude Code loads it when a task matches its description.
Run `npx skills add twentyhq/twenty --skill syncable-entity-testing -a codex`. Or copy the skill folder (.claude/skills/syncable-entity-testing in twentyhq/twenty) into .agents/skills/syncable-entity-testing 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-testing -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-testing, .gemini/skills/syncable-entity-testing, .github/skills/syncable-entity-testing and .opencode/skills/syncable-entity-testing in your project.
Going by SKILL.md and its folder, Syncable Entity Integration Tests needs the command-line tools its instructions call (npx). Our summary lists: A checkout of the twentyhq/twenty server with its integration test setup.
SKILL.md contains no URLs. Its commands use npx, which can reach the network depending on how they are called. 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.
Syncable Entity Integration Tests has a licence file (the repository's licence) that doesn't match a standard licence. Read it on GitHub before reusing the skill.
About 3.4k tokens (SKILL.md is roughly 14k 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 Syncable Entity Integration Tests: Test Specialist (ailabs-393/ai-labs-claude-skills, 454 stars), Testing Strategies (ancoleman/ai-design-components, 526 stars), Web3 Testing (wshobson/agents, 40k stars) and API Testing (petrkindlmann/qa-skills, 163 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 57,999 GitHub stars. The repository holds 13 skills in this directory. The repository was last updated on October 7, 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.