แพ็กเกจอย่างเป็นทางการ · ชิ้นส่วนเรียลไทม์

การอนุมัติโดยคนสำหรับเอเจนต์ AI

เมื่อเอเจนต์ต้องการเรียกเครื่องมือที่ต้องได้รับความเห็นชอบจากคน การเรียกนั้นจะรอในกล่องคำขอแบบสด ผู้ตรวจสอบอนุมัติ แก้ไข หรือปฏิเสธได้ เห็นว่าใครกำลังดูอยู่ด้วย และเอเจนต์จะทำต่อจากจุดที่หยุดไว้

  • ตัวช่วยฝั่งเซิร์ฟเวอร์สำหรับ Vercel AI SDK, Mastra และ LangGraph พร้อมแพ็กเกจ Python สำหรับ LangGraph และ FastAPI
  • คอมโพเนนต์กล่องคำขอสำหรับ React และ Vue ใน 7 ภาษา ทั้งโหมดสว่างและมืด
  • ใช้โปรโตคอลเดียวกับ Filament AI approvals และเครื่องมือ request_approval ของเซิร์ฟเวอร์ MCP กล่องคำขอเดียวจึงแสดงคำขอจากทุกแหล่งได้

ลงชื่อเข้าใช้เพื่อดูโค้ดตัวอย่างเหล่านี้พร้อมโฮสต์คลัสเตอร์ของคุณเอง ลงชื่อเข้าใช้

  1. ติดตั้ง

    npm install @hibira-io/approvals pusher pusher-js
  2. ตั้งค่า

    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
    });
  3. ใช้งาน

    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() ให้บริการ route ของกล่องคำขอและการยืนยันสิทธิ์แชนเนล การตัดสินใจส่งจากกล่องคำขอไปยังแบ็กเอนด์ของคุณ ไม่ผ่าน client event
  • โดยค่าเริ่มต้นคำขอเก็บไว้ในหน่วยความจำ ในระบบจริงให้ส่ง store ที่ใช้ฐานข้อมูลของคุณเอง

ใช้ app key จากแดชบอร์ดของคุณ ส่วน secret ให้เก็บไว้บนเซิร์ฟเวอร์เท่านั้น ช่อง อีเวนต์ และ endpoint การยืนยันสิทธิ์ทำงานเหมือนกับที่ใช้กับ Pusher ทุกประการ สร้างบัญชีฟรีของคุณ →