返回 Skill 列表
extension
分类: 开发与工程无需 API Key

add-event-type

在前端feed系统中添加一种新的事件类型,并附带相应的React组件。当用户提到“新事件”、“添加事件类型”、“事件块”、“新块类型”,或者想要显示新的代理输出类型时使用。

person作者: jakexiaohubgithub

Add Event Type

Instructions

  1. Read current event types in frontend/src/App.tsx:

    • Find the EventType union type definition
    • Review existing block components (UserMessageBlock, PlanBlock, TodoBlock, etc.)
  2. Define the new event type interface:

    type NewEventType = {
      type: 'new_type';
      // Add required fields
    };
    
  3. Add to EventType union:

    type EventType = UserMessage | Plan | Todo | ... | NewEventType;
    
  4. Create a new block component following existing patterns:

    function NewTypeBlock({ event }: { event: NewEventType }) {
      return (
        <div className="p-3 bg-zinc-800/50 rounded-lg border border-zinc-700/50">
          {/* Render event data */}
        </div>
      );
    }
    
  5. Add case to the feed rendering switch/conditional in the main component

  6. Update WebSocket message handler if backend sends this event type

Examples

  • "Add a new 'search_result' event type"
  • "Create a block for displaying errors"
  • "Add event type for progress updates"

Guardrails

  • Follow existing naming conventions (PascalCase components, snake_case event types)
  • Use existing Tailwind classes for consistent styling
  • Ensure TypeScript types are complete (no any)
  • Test by sending mock event through WebSocket