Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
직접 명령은 검토 Prompt를 거치지 않습니다. 실행하기 전에 소스를 확인하세요.
npx skills add https://github.com/paralect/hive --skill hive-handler명령은 한 줄로 유지됩니다. 복사하기 전에 가로로 스크롤해 전체 내용을 확인하세요.
로컬 사본을 원하시나요? SkillsMP에서 현재 제공할 수 있는 파일을 다운로드하세요.
SOC 직업 분류 기준
SKILL.md 표시 중
| name | hive-handler |
| description | How to create event handlers in Hive framework |
| globs | ["src/resources/**/handlers/*.js"] |
| alwaysApply | false |
Handlers react to database events automatically.
Location: /src/resources/{name}/handlers/{handlerName}.js
import db from 'db';
const myService = db.services.myResource;
myService.on('created', async ({ doc }) => {
// Handle creation
});
myService.on('updated', async ({ doc, prevDoc }) => {
// Handle update
});
myService.on('removed', async ({ doc }) => {
// Handle removal
});
| Event | Payload | Trigger |
|---|---|---|
created | { doc } | After service.create() |
updated | { doc, prevDoc } | After service.updateOne/Many() |
removed | { doc } | After service.remove() |
Create related record:
taskService.on('created', async ({ doc }) => {
await eventService.create({
type: 'task.created',
data: { task: doc },
project: doc.project,
});
});
Update parent on child change:
docService.on('created', async ({ doc }) => {
if (doc.role === 'case-study') {
await projectService.updateOne(
{ _id: doc.project._id },
(p) => ({ ...p, caseStudy: doc })
);
}
});
React to specific field change:
import ifUpdated from 'helpers/db/ifUpdated';
taskService.on('updated', ifUpdated(['status'], async ({ doc, prevDoc }) => {
// Only runs when status changed
}));
Cleanup on delete:
docService.on('removed', async ({ doc }) => {
await eventService.remove({ 'data.doc._id': doc._id });
});
atomic.update for silent bulk updates (no events)ifUpdated helper to filter field changes