plugins/skills/new/SKILL.md
Create a new Tinker plugin from the template
npx skillsauth add liriliri/tinker newInstall 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.
Create a new Tinker plugin from scratch.
plugin-name: kebab-case name without the tinker- prefix (e.g., base64, color-picker)description: optional short description in EnglishList existing plugins and check if any are functionally similar to the new one:
ls -d tinker-*/
If a similar plugin exists, ask the user whether to copy it as the base instead of tinker-template. Use the user's choice as the copy source in the next step.
Ask the user: does this plugin need Node.js/Electron APIs (file system, OS info, native dialogs beyond tinker.*, etc.)? If yes → advanced (with src/preload/ and src/renderer/). If no → basic (flat src/ layout).
cp -r tinker-<source> tinker-<plugin-name>
Where <source> is either the similar plugin chosen by the user or tinker-template.
package.jsonEdit tinker-<plugin-name>/package.json:
name → "tinker-<plugin-name>"description → "<Description> Plugin for TINKER"tinker.name → Title Case English nametinker.description → short English description of what the plugin doestinker.icon → "icon.png"tinker.locales.zh-CN.name → Chinese name (ask if unclear)tinker.locales.zh-CN.description → Chinese descriptionBasic plugin — simplify scripts and paths:
dev / build with single vite commands (no concurrently)tinker.main to "dist/index.html"tinker.preloadIf the source is tinker-template, also restructure the directory:
mv src/renderer/* src/
rm -rf src/renderer src/preload
Then update import paths in index.html and all files under src/ — replace any src/renderer/ references with src/, and fix relative import paths affected by the directory change (e.g. ../../../share/ → ../../share/).
Advanced plugin — keep template scripts as-is, only update name/description.
Also remind the user: icon.png must be replaced with a real icon (200×200 px).
cd tinker-<plugin-name> && npm run build
Fix any TypeScript or build errors before finishing.
The scaffold is complete. Do not modify App.tsx, store.ts, i18n files, or any other source files to implement the plugin's actual functionality. Leave all template content as-is and inform the user that the scaffold is ready for them to implement.
tools
Debug Tinker plugins with agent-browser. Use when the user needs to open, inspect, interact with, restart, or close a plugin in the running Tinker Electron app.
tools
Check code against Tinker plugin coding standards
development
Review changed code for reuse, quality, and efficiency, then fix any issues found.
tools
Extract a npm dependency into the shared vendor bundle