Electron API And IPC
SkillFiles & storageGuides your agent when editing massCode's API routes, IPC handlers, and Electron communication code.
Available today. Use it from your connected AI after setup.
No other account needed.
Connect ahel once, and every AI you use reads what you have installed.
Then ask your AI: use the Electron API And IPC skill
About this capability
Use when changing massCode API routes, DTOs, IPC handlers, Electron bridges, or any renderer-to-main communication and storage-access boundaries.
What this skill tells your AI
The instructions your AI receives, as published by masscodeio/masscode in .agents/skills/electron-api-and-ipc/SKILL.md and read by ahel’s review.
Overview
Все backend-возможности massCode живут в main process. Renderer получает доступ к данным и системным операциям только через Elysia API или IPC channels.
Renderer Access Rules
- В renderer для данных используй
import { api } from '~/renderer/services/api'. - В renderer для системных операций используй
ipc.invoke('channel:action', payload). - Electron API из renderer доступен только через
src/renderer/electron.ts. - Никогда не импортируй storage internals или backend-модули напрямую в renderer.
New API Endpoints
При добавлении нового endpoint:
- создай DTO в
src/main/api/dto/; - добавь route в
src/main/api/routes/; - запусти
pnpm api:generate, чтобы обновить клиент.
Не оставляй API-клиент рассинхронизированным с route/DTO изменениями.
IPC Conventions
- Для filesystem и system ops используй
ipc.invoke(...). - Каналы должны укладываться в семейства:
fs:*system:*db:*— legacy или migration flows, не основной путь для новой функциональностиmain-menu:*prettier:*spaces:*theme:*
Good Boundaries
- Renderer формирует intent и payload.
- Main/API работает с данными приложения, файловой системой и system APIs.
- Ответ возвращается обратно в renderer в виде DTO или IPC result, а не через shared mutable backend module.
Common Mistakes
- Тянуть backend-модуль напрямую в renderer ради “удобства”.
- Менять DTO/route без
pnpm api:generate. - Добавлять system/file behavior в renderer вместо IPC handler.
- Добавлять новые
db:*flows там, где задача должна идти через текущую API/IPC модель приложения. - Создавать ad-hoc каналы, которые не укладываются в существующие channel families.
Signals
- GitHub stars
- 7k
- Forks
- 266
- Last commit
- Sep 2026
Advanced
- Catalog kind
- skill
- Gateway key
electron-api-and-ipc- Source
- github.com/masscodeio/masscode