.agents/skills/tiptap/SKILL.md
Tiptap rich text editor for React and Next.js. Use when building or modifying rich text editors, @tiptap extensions, StarterKit, collaboration, comments, Content AI, import/export, or Pro extensions in this monorepo.
npx skillsauth add asymmetric-al/core tiptapInstall 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.
Guidance for coding agents working with the Tiptap rich text stack in this repository.
Use this skill when:
packages/ui/components/shadcn/rich-text-editor/@tiptap/* packagesDo not use this skill when:
<textarea> or a different editor)react-component-dev) or App Router structure (use nextjs-app-router)packages/ui/components/shadcn/rich-text-editor/ (editor.tsx, extensions.ts, toolbar.tsx)packages/ui/package.json (@tiptap/react, @tiptap/starter-kit, extensions)@asym/ui (deep imports); do not duplicate editor primitives inside apps/*@tiptap/* in a given workspace should use the same semver line. The root package.json may also list @tiptap/* for app-level usage—keep versions consistent with packages/ui when you touch eitherThis repo standardizes on Bun (bun, bunx). Prefer bunx for one-off CLIs; npx remains valid for the open Skills package manager.
| Purpose | Command |
| -------------------------------------------------------------------------- | ------------------------------------------------------- |
| Install / refresh the upstream Tiptap agent skill in another workspace | npx skills add ueberdosis/tiptap |
| Tiptap project CLI (init, add UI pieces, cloud login) | bunx @tiptap/cli@latest (or npx @tiptap/cli@latest) |
When running Tiptap CLI against this monorepo, set the working directory to the package that owns the editor (packages/ui) unless the CLI docs require the app root.
After changing this canonical skill under docs/ai/skills/tiptap/, run:
bun run skills:sync
Then commit updates under .cursor/skills/ and .agents/skills/ so CI (bun run skills:verify) stays green.
@tiptap/* versions in the workspace you modifypro-extensions guide)immediatelyRender: false on useEditor (already done in editor.tsx; preserve when refactoring)useEditor, EditorContent, extensions)If you need to grep upstream source or docs locally, clone (or update) into a git-ignored folder such as .reference/ (see repo .gitignore):
Do not commit these clones.
When implementing these capabilities, open the matching section in tiptap-docs (local clone or https://tiptap.dev/docs):
collaboration/comments/tracked-changes/conversion/content-ai/collaboration/documents/pages/packages/ui/components/shadcn/rich-text-editor/* and trace how extensions and the toolbar map to the document schemapackages/ui (and align root @tiptap/* if those packages are also used at root)immediatelyRender: false for Next.js client editorsbunx turbo run lint --filter=@asym/ui and bunx turbo run typecheck --filter=@asym/uipackages/ui unless an app-only integration is explicitly required@tiptap/* versions aligned in touched workspacesimmediatelyRender: false where applicable)@asym/uireferences/upstream.md — attribution and refresh instructionsimmediatelyRender: false and breaking hydration in the App Router@tiptap/* versions across packagesapps/* instead of extending @asym/uidevelopment
Use when working with Payload CMS projects (payload.config.ts, collections, fields, hooks, access control, Payload API). Use when debugging validation errors, security issues, relationship queries, transactions, or hook behavior.
testing
Use when CI tests fail on main branch after PR merge, or when investigating flaky test failures in CI environments
tools
Use when new translation keys are added to packages to generate new translations strings
data-ai
Pointer to the canonical agent instruction and skill system for this monorepo