ipc-development — Community

v1.0.0
GitHub

About this Skill

Ideal for Electron-based AI Agents requiring seamless Inter-Process Communication (IPC) with automated type inference via TypeScript A macOS menubar productivity app with an AI assistant that knows your tasks and memory

BangDori BangDori
[9]
[0]
Updated: 3/1/2026

Quality Score

Top 5%
39
Excellent
Based on code quality & docs
Installation
SYS Universal Install (Auto-Detect)
Cursor IDE Windsurf IDE VS Code IDE
> npx killer-skills add BangDori/prowl/ipc-development

Agent Capability Analysis

The ipc-development MCP Server by BangDori is an open-source Community integration for Claude and other AI agents, enabling seamless task automation and capability expansion.

Ideal Agent Persona

Ideal for Electron-based AI Agents requiring seamless Inter-Process Communication (IPC) with automated type inference via TypeScript

Core Value

Empowers agents to define and handle IPC channels with ease, utilizing a single source of truth in `src/shared/ipc-schema.ts`, enabling automatic type inference and streamlined channel management through `handleIpc()` and `invokeIpc()` methods

Capabilities Granted for ipc-development MCP Server

Defining custom IPC channels for data retrieval and mutation
Automating type inference for IPC channels using TypeScript
Implementing IPC handlers and invokers for seamless communication between processes

! Prerequisites & Limits

  • Requires TypeScript for automatic type inference
  • Specific to Electron-based applications
  • Needs manual updates in three locations (`src/shared/ipc-schema.ts`, `src/main/ipc.ts`, and `src/preload/index.ts`) for new IPC channel additions
Project
SKILL.md
1.9 KB
.cursorrules
1.2 KB
package.json
240 B
Ready
UTF-8

# Tags

[No tags]
SKILL.md
Readonly

IPC Development Guide

Single Source of Truth

모든 IPC 채널은 src/shared/ipc-schema.ts에 정의. 이 스키마에서 타입이 자동 추론되므로 별도 타입 정의 불필요.

채널 추가 절차

새 IPC 채널 추가 시 3곳 수정:

  1. src/shared/ipc-schema.ts — 채널 + params + return 타입 정의
  2. src/main/ipc.tshandleIpc() 핸들러 추가
  3. src/preload/index.tsinvokeIpc() 메서드 추가

→ Renderer 타입은 자동 반영

반환 타입 규칙

채널 유형반환 타입예시
데이터 조회구체적 타입LaunchdJob[], AppSettings
데이터 변경 (mutation)IpcResult{ success: true }
Fire-and-forgetvoidquit, resize, navigate

에러 처리

handleIpc 래퍼가 try/catch 자동 적용:

  • 성공 → 핸들러 결과 반환
  • 실패 → 에러 로깅 + mutation은 { success: false, error: message } 반환

직렬화

  • Date 객체는 IPC를 통과하지 않음 — ISO 8601 문자열(string) 사용
  • 서비스에서 .toISOString() 호출 후 전달
  • Renderer에서 new Date(isoString) 으로 파싱

채널 네이밍

형식: {domain}:{action} (액션은 kebab-case)

jobs:list              # 조회
jobs:toggle            # 액션
settings:get           # 단일 조회
calendar:add-local-event  # 복합 액션

Renderer에서 사용

컴포넌트에서 window.electronAPI 직접 호출 금지. 반드시 hooks를 통해 접근:

typescript
1// Bad 2const jobs = await window.electronAPI.listJobs(); 3 4// Good 5const { jobs } = useLaunchdJobs();

plist 파싱

외부 데이터(plist)는 Zod safeParse로 런타임 검증:

typescript
1// Bad 2const data = plist.parse(content) as PlistData; 3 4// Good 5const result = PlistDataSchema.safeParse(plist.parse(content)); 6if (!result.success) { /* handle error */ }

Related Skills

Looking for an alternative to ipc-development or building a Community AI Agent? Explore these related open-source MCP Servers.

View All

widget-generator

Logo of f
f

widget-generator is an open-source AI agent skill for creating widget plugins that are injected into prompt feeds on prompts.chat. It supports two rendering modes: standard prompt widgets using default PromptCard styling and custom render widgets built as full React components.

149.6k
0
Design

testing

Logo of lobehub
lobehub

Testing is a process for verifying AI agent functionality using commands like bunx vitest run and optimizing workflows with targeted test runs.

73.3k
0
Communication

chat-sdk

Logo of lobehub
lobehub

chat-sdk is a unified TypeScript SDK for building chat bots across multiple platforms, providing a single interface for deploying bot logic.

73.0k
0
Communication

zustand

Logo of lobehub
lobehub

The ultimate space for work and life — to find, build, and collaborate with agent teammates that grow with you. We are taking agent harness to the next level — enabling multi-agent collaboration, effortless agent team design, and introducing agents as the unit of work interaction.

72.8k
0
Communication