Agent skill

Makepad Event Action

by sickn33 in sickn33/agentic-awesome-skills

CRITICAL: Use for Makepad event and action handling. An agent skill from sickn33/agentic-awesome-skills.

MITAuto-check passed

Install Makepad Event Action

skills CLI
$ npx skills add sickn33/agentic-awesome-skills --skill makepad-event-action -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install sickn33/agentic-awesome-skills makepad-event-action --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/sickn33/agentic-awesome-skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/makepad-event-action .claude/skills/makepad-event-action && rm -rf skills-src

Use ~/.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/

Facts

Skill name
makepad-event-action
GitHub stars
47k
Used in
2 other repos
Token cost
~1.7k tokens
SKILL.md length
310 words
Files
1
Skills in repo
1,354
Repo updated
First seen
Licence
MIT

At a glance

CRITICAL: Use for Makepad event and action handling. An agent skill from sickn33/agentic-awesome-skills.

  • Works in 3 steps: Read the relevant reference file(s)… → If file read fails or file is empty → If reference file exists, incorporate…
  • Makepad event and action handling
  • SKILL.md covers When to Use, Documentation, IMPORTANT: Documentation… and Event Enum (Key Variants), plus 8 more sections
  • Instructions only: no scripts, shell commands, URLs or credentials in SKILL.md

What it does

Makepad Event Action is an agent skill from sickn33/agentic-awesome-skills. CRITICAL: Use for Makepad event and action handling. Triggers on: makepad event, makepad action, Event enum, ActionTrait, handleevent, MouseDown, KeyDown, TouchUpdate, Hit, FingerDown, postaction, makepad 事件, makepad action, 事件处理

Its SKILL.md is about 1.7k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

It works with Makepad. The repository describes itself as: AAS Core is the local, agent-first control plane for complete catalog discovery, agent-owned selection, stack validation, and planning, backed by 2,400+ agentic skills. Includes… The licence is MIT.

When your agent uses it

  • Makepad event and action handling
  • : makepad event

Example prompts

  • “/makepad-event-action”

Workflow steps

3 steps, taken from the first numbered list in SKILL.md.

  1. Read the relevant reference file(s) listed above
  2. If file read fails or file is empty
  3. If reference file exists, incorporate its content into the answer

What it can do on your machine

Read from SKILL.md and the folder at commit ec02547. It shows what the files ask for, not the result of running them.

  • Tool permissions

    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.

  • Runs code

    No scripts in the folder and no shell commands in SKILL.md (its code samples are rust).

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    Links to these hosts (documentation or services it may open):

    • crates.io

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Makepad Event Action loads about 1.7k tokens when it runs. Until then it costs about 63 tokens; SKILL.md has 310 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~63
When it runs · the whole SKILL.md, loaded when a task matches
~1.7k

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.

Safety

Auto-check passed

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.

SKILL.md

The full file from sickn33/agentic-awesome-skills at commit ec02547, republished under its MIT licence (© sickn33). 310 words, ~1,684 tokens.

Download SKILL.mdSave it as .claude/skills/makepad-event-action/SKILL.md (or your agent's skills folder).
name
makepad-event-action
description
CRITICAL: Use for Makepad event and action handling. Triggers on: makepad event, makepad action, Event enum, ActionTrait, handle_event, MouseDown, KeyDown, TouchUpdate, Hit, FingerDown, post_action, makepad 事件, makepad action, 事件处理
risk
safe
source
community
date_added
2026-09-04

Makepad Event/Action Skill

Version: makepad-widgets (dev branch) | Last Updated: 2026-01-19

Check for updates: https://crates.io/crates/makepad-widgets

You are an expert at Makepad event and action handling. Help users by:

  • Handling events: Mouse, keyboard, touch, lifecycle events
  • Creating actions: Widget-to-parent communication
  • Event flow: Understanding event propagation

When to Use

  • You need to handle input, lifecycle, or UI interaction events in Makepad.
  • The task involves handle_event, Event variants, Hit processing, or widget action propagation.
  • You need to design or debug Makepad event/action flow between widgets and parents.

Documentation

Refer to the local files for detailed documentation:

  • ./references/event-system.md - Event enum and handling
  • ./references/action-system.md - Action trait and patterns

IMPORTANT: Documentation Completeness Check

Before answering questions, Claude MUST:

  1. Read the relevant reference file(s) listed above
  2. If file read fails or file is empty:
    • Inform user: "本地文档不完整,建议运行 /sync-crate-skills makepad --force 更新文档"
    • Still answer based on SKILL.md patterns + built-in knowledge
  3. If reference file exists, incorporate its content into the answer

Event Enum (Key Variants)

rust
pub enum Event {
    // Lifecycle
    Startup,
    Shutdown,
    Foreground,
    Background,
    Resume,
    Pause,

    // Drawing
    Draw(DrawEvent),
    LiveEdit,

    // Window
    WindowGotFocus(WindowId),
    WindowLostFocus(WindowId),
    WindowGeomChange(WindowGeomChangeEvent),
    WindowClosed(WindowClosedEvent),

    // Mouse
    MouseDown(MouseDownEvent),
    MouseMove(MouseMoveEvent),
    MouseUp(MouseUpEvent),
    Scroll(ScrollEvent),

    // Touch
    TouchUpdate(TouchUpdateEvent),

    // Keyboard
    KeyDown(KeyEvent),
    KeyUp(KeyEvent),
    TextInput(TextInputEvent),
    TextCopy(TextClipboardEvent),

    // Timer
    Timer(TimerEvent),
    NextFrame(NextFrameEvent),

    // Network
    HttpResponse(HttpResponse),

    // Widget Actions
    Actions(ActionsBuf),
}

Handling Events in Widgets

rust
impl Widget for MyWidget {
    fn handle_event(&mut self, cx: &mut Cx, event: &Event, scope: &mut Scope) {
        // Check if event hits this widget's area
        match event.hits(cx, self.area()) {
            Hit::FingerDown(fe) => {
                // Mouse/touch down on this widget
                cx.action(MyWidgetAction::Pressed);
            }
            Hit::FingerUp(fe) => {
                if fe.is_over {
                    // Released while still over widget = click
                    cx.action(MyWidgetAction::Clicked);
                }
            }
            Hit::FingerHoverIn(_) => {
                self.animator_play(cx, id!(hover.on));
            }
            Hit::FingerHoverOut(_) => {
                self.animator_play(cx, id!(hover.off));
            }
            Hit::KeyDown(ke) => {
                if ke.key_code == KeyCode::Return {
                    cx.action(MyWidgetAction::Submitted);
                }
            }
            _ => {}
        }
    }
}

Hit Enum

rust
pub enum Hit {
    // Finger/Mouse
    FingerDown(FingerDownEvent),
    FingerUp(FingerUpEvent),
    FingerMove(FingerMoveEvent),
    FingerHoverIn(FingerHoverEvent),
    FingerHoverOver(FingerHoverEvent),
    FingerHoverOut(FingerHoverEvent),
    FingerLongPress(FingerLongPressEvent),

    // Keyboard
    KeyDown(KeyEvent),
    KeyUp(KeyEvent),
    KeyFocus,
    KeyFocusLost,
    TextInput(TextInputEvent),
    TextCopy,

    // Nothing
    Nothing,
}

Action System

Defining Actions
rust
#[derive(Clone, Debug, DefaultNone)]
pub enum ButtonAction {
    None,
    Clicked,
    Pressed,
    Released,
}

// DefaultNone derives Default returning None variant
Emitting Actions
rust
// From main thread (in handle_event)
cx.action(ButtonAction::Clicked);

// From any thread (thread-safe)
Cx::post_action(MyAction::DataLoaded(data));
Handling Actions
rust
fn handle_event(&mut self, cx: &mut Cx, event: &Event, scope: &mut Scope) {
    // Handle child widget actions
    let actions = cx.capture_actions(|cx| {
        self.button.handle_event(cx, event, scope);
    });

    // Check for specific action
    if self.button(id!(my_button)).clicked(&actions) {
        // Button was clicked
    }

    // Or iterate actions
    for action in actions.iter() {
        if let Some(ButtonAction::Clicked) = action.downcast_ref() {
            // Handle click
        }
    }
}

Widget Action Helpers

rust
// Common widget action checks
impl ButtonRef {
    fn clicked(&self, actions: &ActionsBuf) -> bool;
    fn pressed(&self, actions: &ActionsBuf) -> bool;
    fn released(&self, actions: &ActionsBuf) -> bool;
}

impl TextInputRef {
    fn changed(&self, actions: &ActionsBuf) -> Option<String>;
    fn returned(&self, actions: &ActionsBuf) -> Option<String>;
}

Event Flow

  1. Event arrives from platform layer
  2. Root widget receives event first
  3. Propagates down to children via handle_event
  4. Widgets emit actions via cx.action()
  5. Parent captures actions via cx.capture_actions()
  6. App handles remaining actions

Timer and NextFrame

rust
// Start a timer
let timer = cx.start_timer(1.0); // 1 second

// In handle_event
if let Event::Timer(te) = event {
    if te.timer_id == self.timer {
        // Timer fired
    }
}

// Request next frame callback
let next_frame = cx.new_next_frame();

// In handle_event
if let Event::NextFrame(ne) = event {
    if ne.frame_id == self.next_frame {
        // Next frame arrived
    }
}

When Answering Questions

  1. Use event.hits(cx, area) to check if event targets a widget
  2. Actions flow UP from child to parent (unlike events which flow DOWN)
  3. Use cx.capture_actions() to intercept child actions
  4. Cx::post_action() is thread-safe for async operations
  5. DefaultNone derive macro auto-implements Default for enums

Limitations

  • Use this skill only when the task clearly matches the scope described above.
  • Do not treat the output as a substitute for environment-specific validation, testing, or expert review.
  • Stop and ask for clarification if required inputs, permissions, safety boundaries, or success criteria are missing.

© sickn33, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in skills/makepad-event-action of sickn33/agentic-awesome-skills.

Open the folder on GitHubat commit ec02547

Used in 2 other repositories

We found 15 copies of this SKILL.md (exact, near-identical or edited) in other folders, from 2 other GitHub owners. This page covers the copy in sickn33/agentic-awesome-skills, which our catalogue first saw on October 7, 2026.

Compare with similar skills

Makepad Event Action 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.

Makepad Event Action compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Makepad Event Action this skillsickn33/agentic-awesome-skills47k2 repos~1.7kAutomated safety check: PassMIT
Molykitmajiayu000/claude-skill-registry6663 repos~2.6kAutomated safety check: PassMIT
Makepad Skillsaiskillstore/marketplace4305 repos~198Automated safety check: PassNone
Makepad Animationsickn33/agentic-awesome-skills47k2 repos~2kAutomated safety check: PassMIT
Makepad Basicssickn33/agentic-awesome-skills47k2 repos~1.2kAutomated safety check: PassMIT
Makepad Deploymentsickn33/agentic-awesome-skills47k2 repos~3kAutomated safety check: NotesMIT

Similar skills

  • Molykit

    majiayu000/claude-skill-registry

    CRITICAL: Use for MolyKit AI chat toolkit. An agent skill from majiayu000/claude-skill-registry.

    666 GitHub starsUsed in 3 repos~2.6k tokens
    Auto-check passed
  • Makepad Skills

    aiskillstore/marketplace

    Makepad UI development skills for Rust apps: setup, patterns, shaders, packaging, and troubleshooting.

    430 GitHub starsUsed in 5 repos~198 tokens
    Game DevelopmentAuto-check passed
  • Makepad Animation

    sickn33/agentic-awesome-skills

    CRITICAL: Use for Makepad animation system. An agent skill from sickn33/agentic-awesome-skills.

    47k GitHub starsUsed in 2 repos~2k tokens
    Auto-check passed
  • Makepad Basics

    sickn33/agentic-awesome-skills

    CRITICAL: Use for Makepad getting started and app structure.

    47k GitHub starsUsed in 2 repos~1.2k tokens
    Auto-check passed
  • Makepad Deployment

    sickn33/agentic-awesome-skills

    CRITICAL: Use for Makepad packaging and deployment. An agent skill from sickn33/agentic-awesome-skills.

    47k GitHub starsUsed in 2 repos~3k tokens
    DevOps & CloudAuto-check: notes
  • Makepad Dsl

    sickn33/agentic-awesome-skills

    CRITICAL: Use for Makepad DSL syntax and inheritance. An agent skill from sickn33/agentic-awesome-skills.

    47k GitHub starsUsed in 2 repos~1.2k tokens
    Auto-check passed

More from sickn33/agentic-awesome-skills

All 1,354 skills in this repo
  • Liuguang Banlan UI

    sickn33/agentic-awesome-skills

    Implements an interface in one of two named color modes, iridescent white or colorful black, from a parameterized starter that reports measured color intensity.

    47k GitHub starsUsed in 1 repo~2.5k tokens
    Auto-check passed
  • User Thoughts Memory

    sickn33/agentic-awesome-skills

    Saves a user's project decisions, rules and preferences into a project-local mdbase so later sessions and other agents can recover the intent.

    47k GitHub starsUsed in 1 repo~2.5k tokens
    Auto-check passed
  • Using LWC Memory and Graphs

    sickn33/agentic-awesome-skills

    Keeps project decisions, research and verified results available across coding-agent sessions through LWC memory, a document Wiki graph and a CodeGraph code index.

    47k GitHub starsUsed in 1 repo~2k tokens
    Auto-check passed
  • Find Complementary Founders

    sickn33/agentic-awesome-skills

    Guides an agent through assessing its own owner for cofounder fit, publishing an approved profile, and ranking complementary profiles other agents published for their owners.

    47k GitHub starsUsed in 1 repo~4.8k tokens
    Auto-check passed
  • Cline Pilot

    sickn33/agentic-awesome-skills

    Acts as a proxy for the Cline CLI, dispatching coding tasks one at a time, monitoring runs by hard evidence, relaying decisions to you and learning per-project preferences.

    47k GitHub starsUsed in 1 repo~4.6k tokens
    Auto-check passed
  • Content Creator

    sickn33/agentic-awesome-skills

    Drafts and reviews audience-specific content from supplied brand examples, with local scripts for brand voice and SEO diagnostics, channel templates and a content calendar.

    47k GitHub starsUsed in 1 repo~2.5k tokens
    Auto-check passed

Works with

Questions about Makepad Event Action

What does Makepad Event Action do?

CRITICAL: Use for Makepad event and action handling. An agent skill from sickn33/agentic-awesome-skills. Makepad Event Action is an agent skill from sickn33/agentic-awesome-skills. CRITICAL: Use for Makepad event and action handling.

When should I use Makepad Event Action?

Makepad Event Action fits situations like: makepad event and action handling; : makepad event.

How do I install Makepad Event Action in Claude Code?

Run `npx skills add sickn33/agentic-awesome-skills --skill makepad-event-action -a claude-code`. Or copy the skill folder (skills/makepad-event-action in sickn33/agentic-awesome-skills) into .claude/skills/makepad-event-action in your project. Claude Code loads it when a task matches its description.

How do I install Makepad Event Action in Codex?

Run `npx skills add sickn33/agentic-awesome-skills --skill makepad-event-action -a codex`. Or copy the skill folder (skills/makepad-event-action in sickn33/agentic-awesome-skills) into .agents/skills/makepad-event-action in your project. Codex loads it when a task matches its description.

Can I use Makepad Event Action in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add sickn33/agentic-awesome-skills --skill makepad-event-action -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/makepad-event-action, .gemini/skills/makepad-event-action, .github/skills/makepad-event-action and .opencode/skills/makepad-event-action in your project.

What does Makepad Event Action need to run?

SKILL.md names no scripts, command-line tools or credentials: Makepad Event Action is instructions for the agent only.

Does Makepad Event Action access the network?

SKILL.md names 1 domain. As links in the text: crates.io. This is read from the text; nothing was executed.

Is Makepad Event Action safe to install?

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.

What licence does Makepad Event Action use?

Makepad Event Action is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Makepad Event Action use?

About 1.7k tokens (SKILL.md is roughly 6.7k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Makepad Event Action?

Skills that share tags, products or a category with Makepad Event Action: Molykit (majiayu000/claude-skill-registry, 666 stars), Makepad Skills (aiskillstore/marketplace, 430 stars), Makepad Animation (sickn33/agentic-awesome-skills, 47k stars) and Makepad Basics (sickn33/agentic-awesome-skills, 47k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Makepad Event Action?

sickn33 (a GitHub user) maintains it in sickn33/agentic-awesome-skills, which has 47,343 GitHub stars. The repository holds 1,354 skills in this directory. The repository was last updated on October 7, 2026.

Source: sickn33/agentic-awesome-skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.