공식 패키지 · 실시간 구성 요소
AI 에이전트를 위한 사람의 승인
에이전트가 사람의 승인이 필요한 도구를 실행하려 하면 그 호출은 실시간 수신함에서 기다립니다. 검토자는 승인, 수정, 거절할 수 있고 누가 함께 보고 있는지도 보이며, 에이전트는 멈춘 곳에서 이어갑니다.
@hibira-io/approvalsnpm ↗GitHub ↗PyPI ↗
- Vercel AI SDK, Mastra, LangGraph용 서버 헬퍼와 LangGraph·FastAPI용 Python 패키지.
- React와 Vue 수신함 컴포넌트, 7개 언어, 라이트·다크 지원.
- Filament AI approvals 및 MCP 서버의 request_approval 도구와 같은 프로토콜을 쓰므로, 수신함 하나에서 모든 요청을 볼 수 있습니다.
로그인하면 예제 코드에 내 클러스터 호스트가 채워집니다. 로그인
설치
npm install @hibira-io/approvals pusher pusher-js설정하기
import Pusher from 'pusher'; import { createApprovals } from '@hibira-io/approvals'; const pusher = new Pusher({ appId: process.env.HIBIRA_APP_ID, key: process.env.HIBIRA_KEY, secret: process.env.HIBIRA_SECRET, host: 'ws.hibira.io', useTLS: true, }); export const approvals = createApprovals({ pusher, scope: 'support', resume: async (request) => continueAgent(request), // give the agent its answers });사용하기
import { ApprovalInbox, createApprovalsClient } from '@hibira-io/approvals/react'; import '@hibira-io/approvals/styles.css'; const client = createApprovalsClient({ endpoint: '/api/approvals', pusher, scope: 'support' }); export function ApprovalsPage({ me }) { return <ApprovalInbox client={client} me={me.id} />; }
시작하기 전에
- 앱 시크릿은 앱을 만들거나 시크릿을 교체할 때 한 번만 표시됩니다. 서버에만 두고, 브라우저나 게임 빌드에는 절대 넣지 마세요.
- approvals.handler()가 수신함의 라우트와 채널 인증을 제공합니다. 결정은 수신함에서 백엔드로 가며, 클라이언트 이벤트를 쓰지 않습니다.
- 요청은 기본적으로 메모리에 저장됩니다. 운영 환경에서는 여러분의 데이터베이스를 쓰는 store를 넘기세요.
대시보드의 앱 키를 사용하세요. 시크릿은 서버에만 둡니다. 채널, 이벤트, 인가 엔드포인트는 Pusher와 똑같이 동작합니다. 무료 계정 만들기 →