Claude-skill-registry add-mouse-profile
Create a new mouse profile for a mouse model not yet supported
install
source · Clone the upstream repo
git clone https://github.com/majiayu000/claude-skill-registry
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/majiayu000/claude-skill-registry "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/data/add-mouse-profile" ~/.claude/skills/majiayu000-claude-skill-registry-add-mouse-profile && rm -rf "$T"
manifest:
skills/data/add-mouse-profile/SKILL.mdsource content
Add Mouse Profile Skill
Create a new mouse profile for MouseMaster.
When to Use
Use this skill when:
- User wants to add support for a new mouse model
- User has button detection results to formalize
- User provides vendor/product IDs for a mouse
Steps
-
Gather Information Ask the user for:
- Mouse name (e.g., "Logitech MX Master 3S")
- Vendor name
- Vendor ID (hex, e.g., "0x046D") - optional
- Product IDs (hex array) - optional
- Number of buttons
-
Create Profile ID Generate from name: lowercase, underscores for spaces Example: "Logitech MX Master 3S" -> "logitech_mx_master_3s"
-
Define Buttons For each button, define:
{ "id": "button_id", "name": "Human Name", "qtButton": <qt_code>, "remappable": true/false, "defaultAction": "action_id" // optional }Standard Qt button codes:
- 1: Left Click (not remappable)
- 2: Right Click (not remappable)
- 4: Middle Click
- 8: Back/Button 4
- 16: Forward/Button 5
- 32: Extra Button 1
- 64: Extra Button 2
-
Create JSON File Write to:
MouseMaster/Resources/MouseDefinitions/<profile_id>.json{ "id": "<profile_id>", "name": "<mouse_name>", "vendor": "<vendor>", "vendorId": "<vendor_id>", "productIds": ["<product_id>"], "buttons": [...], "features": { "horizontalScroll": false, "thumbWheel": false, "gestureButton": false } } -
Create Default Preset Write to:
presets/builtin/default_<profile_id>.json{ "id": "default_<profile_id>", "name": "<mouse_name> Default", "version": "1.0", "mouseId": "<profile_id>", "mappings": { "middle": {"action": "view_reset_3d"}, "back": {"action": "edit_undo"}, "forward": {"action": "edit_redo"} }, "contextMappings": {} } -
Update Documentation Add to README.md supported mice table:
| <Mouse Name> | <Vendor ID> | <Button Count> | Fully Supported |
Example Interaction
User: "Add support for Razer DeathAdder V3"
Claude:
- Creates
in MouseDefinitionslogitech_razer_deathadder_v3.json - Creates
in presets/builtindefault_razer_deathadder_v3.json - Updates README.md supported mice table
- Confirms creation with file paths
Validation
After creating files:
- Verify JSON is valid
- Verify all required fields present
- Verify button IDs are unique
- Verify preset mouseId matches profile id