Community생산성 & 협업github.com

22sunje22-sys/push-calls

통화 기록을 처리하여 실행 항목을 추출하고, 부서장에게 할당한 후 Push Buildin(통화 로그 + 작업 추적기)에 항목을 생성하고 Supabase에 기록합니다.

push-calls란 무엇인가요?

이 스킬은 통화 기록(트랜스크립트)을 자동으로 분석하여 실행 항목을 추출하고, Buildin API와 Supabase를 통해 체계적으로 관리하는 AI 에이전트 기능입니다. 사용자가 통화 내용과 참가자 정보를 제공하면, 'PUSH MINUTKI' 데이터베이스에서 부서 및 담당자 정보를 실시간으로 조회하여 각 작업을 적절한 부서장에게 할당합니다. 자체적으로 마감일을 계산하거나 명시적인 날짜를 요청하며, 최종적으로 Buildin의 통화 로그와 작업 추적기, 그리고 Supabase 데이터베이스에 모든 정보를 저장합니다. 이 스킬은 통화 후속 조치를 완전히 자동화하여 팀 생산성을 크게 향상시키며, Claude Code, Cursor, Codex 등 다양한 터미널 기반 AI 에이전트 플랫폼에서 사용할 수 있습니다.

지원 대상~Claude Code~Codex CLI~Cursor
npx skills add 22sunje22-sys/push-calls

Installed? Explore more 생산성 & 협업 skills: steipete/gemini, steipete/gh-issues, steipete/skill-creator · View all 6 →

즐겨 사용하는 AI에게 물어보기

이 에이전트 스킬이 미리 로드된 새 채팅을 엽니다.

문서

/post-call — 통화 기록 처리

토큰 (하드코딩)

Push Buildin token:  vMU8aYxPH9B1DhjDStRRfZNWrmYJWefP2TFH4k2C
Buildin base URL:    https://api.buildin.ai/v1
Supabase URL:        https://zffhjnbpbjknclrbcujs.supabase.co
Supabase anon key:   eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJzdXBhYmFzZSIsInJlZiI6InpmZmhqbmJwYmprbmNscmJjdWpzIiwicm9sZSI6ImFub24iLCJpYXQiOjE3NTExMzIwMTIsImV4cCI6MjA2NjcwODAxMn0.bWXoX_8q89lEFlMCDZ1I2iwUL1CTsU8LNCCn3nO3E3Y

Buildin 데이터베이스 (라이브 참조 — 매 통화 전에 읽기)

데이터베이스DB ID링크
PUSH MINUTKI (페이지)0bc28d48-749b-42f5-85f6-db89fbc9002dhttps://buildin.ai/0bc28d48-749b-42f5-85f6-db89fbc9002d
담당자aa20294d-66d1-4a2e-ba16-1c27dc954ba0—
통화 유형9bc18952-3b94-4e76-af68-e27a8a66915e—
통화 로그0cb45851-65b1-4bd0-875b-6d598cc2d728—
통화별 작업497c3ec8-08fa-4996-a88c-ed07b884285a—

흐름

단계 0: Buildin에서 참조 데이터 로드

트랜스크립트를 처리하기 전에 최신 데이터를 로드합니다.

담당자:

curl -s -X POST "https://api.buildin.ai/v1/databases/aa20294d-66d1-4a2e-ba16-1c27dc954ba0/query" \
  -H "Authorization: Bearer vMU8aYxPH9B1DhjDStRRfZNWrmYJWefP2TFH4k2C" \
  -H "Content-Type: application/json" \
  -d '{"filter": {"property": "활성", "select": {"equals": "예"}}}'

응답에서: results[].properties.이름.title[0].text.content 및 results[].properties.부서.select.name

통화 유형:

curl -s -X POST "https://api.buildin.ai/v1/databases/9bc18952-3b94-4e76-af68-e27a8a66915e/query" \
  -H "Authorization: Bearer vMU8aYxPH9B1DhjDStRRfZNWrmYJWefP2TFH4k2C" \
  -H "Content-Type: application/json" \
  -d '{}'

응답에서: results[].properties.이름.title[0].text.content

단계 1: 온보딩 — 컨텍스트 질문

📞 통화 컨텍스트:
1. 어떤 통화였나요? (참조 데이터에서 주제/유형)
2. 누구와의 통화였나요? (이름/부서)

통화 유형이 목록에 없으면 → 통화 유형 데이터베이스에 추가하세요 (아래 참조).

단계 2: 트랜스크립트 분석

모든 작업을 추출합니다. 각 작업에 대해:

  • 작업 — 명확한 설명, 명령형
  • 부서 — 담당자 데이터베이스에서
  • 담당자 — 담당자 데이터베이스에서; 새 담당자이면 추가 (아래 참조)
  • 마감일:
    • 명시적 → YYYY-MM-DD 형식으로 변환
    • "다음 회의까지" / "일주일 후" → 오늘 + 7일
    • 언급되지 않음 → 질문

단계 3: 확인 표시

📋 실행 목록: [주제]
날짜: [날짜] | 참가자: [목록]

번호  작업                      부서         담당자     마감일
1.    ...                        지원         야나       2026-04-15
2.    ...                        UC 제품      디마       ?

마감일 없는 작업: 2 — 날짜를 지정하시겠습니까, 아니면 비워 두시겠습니까?

확인을 기다립니다.

단계 4: Supabase에 기록

calls_log:

curl -s -X POST "https://zffhjnbpbjknclrbcujs.supabase.co/rest/v1/calls_log" \
  -H "apikey: <ANON_KEY>" \
  -H "Authorization: Bearer <ANON_KEY>" \
  -H "Content-Type: application/json" \
  -H "Prefer: return=representation" \
  -d '{"title":"<주제>","call_date":"<YYYY-MM-DD>","participants":"<참가자>","transcript_text":"<트랜스크립트>","summary":"<요약>","created_by":"<이름>"}'

id를 저장 → call_id입니다.

calls_tasks (배열):

curl -s -X POST "https://zffhjnbpbjknclrbcujs.supabase.co/rest/v1/calls_tasks" \
  -H "apikey: <ANON_KEY>" \
  -H "Authorization: Bearer <ANON_KEY>" \
  -H "Content-Type: application/json" \
  -d '[{"call_id":"<id>","task":"<텍스트>","department":"<부서>","responsible":"<이름>","deadline":"<YYYY-MM-DD>","status":"open"}]'

단계 5: Buildin에 기록

통화 로그:

curl -s -X POST "https://api.buildin.ai/v1/pages" \
  -H "Authorization: Bearer vMU8aYxPH9B1DhjDStRRfZNWrmYJWefP2TFH4k2C" \
  -H "Content-Type: application/json" \
  -d '{"parent":{"database_id":"0cb45851-65b1-4bd0-875b-6d598cc2d728"},"icon":{"type":"emoji","emoji":"📞"},"properties":{"이름":{"title":[{"text":{"content":"<주제>"}}]},"날짜":{"date":{"start":"<YYYY-MM-DD>"}},"참가자":{"rich_text":[{"text":{"content":"<참가자>"}}]},"요약":{"rich_text":[{"text":{"content":"<요약>"}}]},"Supabase ID":{"rich_text":[{"text":{"content":"<call_id>"}}]}}}'

작업 (개별):

curl -s -X POST "https://api.buildin.ai/v1/pages" \
  -H "Authorization: Bearer vMU8aYxPH9B1DhjDStRRfZNWrmYJWefP2TFH4k2C" \
  -H "Content-Type: application/json" \
  -d '{"parent":{"database_id":"497c3ec8-08fa-4996-a88c-ed07b884285a"},"properties":{"작업":{"title":[{"text":{"content":"<작업>"}}]},"부서":{"select":{"name":"<부서>"}},"담당자":{"select":{"name":"<이름>"}},"마감일":{"date":{"start":"<YYYY-MM-DD>"}},"상태":{"select":{"name":"열림"}},"통화":{"rich_text":[{"text":{"content":"<통화 주제>"}}]}}}'

단계 6: 최종 보고서

✅ 완료!
📋 통화 기록됨: https://buildin.ai/0bc28d48-749b-42f5-85f6-db89fbc9002d
✅ 생성된 작업 수: N
   • 야나 (지원): 2
   • 디마 (UC 제품): 1

새 담당자 추가

curl -s -X POST "https://api.buildin.ai/v1/pages" \
  -H "Authorization: Bearer vMU8aYxPH9B1DhjDStRRfZNWrmYJWefP2TFH4k2C" \
  -H "Content-Type: application/json" \
  -d '{"parent":{"database_id":"aa20294d-66d1-4a2e-ba16-1c27dc954ba0"},"properties":{"이름":{"title":[{"text":{"content":"<이름>"}}]},"부서":{"select":{"name":"<부서>"}},"역할":{"rich_text":[{"text":{"content":"<역할>"}}]},"활성":{"select":{"name":"예"}}}}'

새 통화 유형 추가

curl -s -X POST "https://api.buildin.ai/v1/pages" \
  -H "Authorization: Bearer vMU8aYxPH9B1DhjDStRRfZNWrmYJWefP2TFH4k2C" \
  -H "Content-Type: application/json" \
  -d '{"parent":{"database_id":"9bc18952-3b94-4e76-af68-e27a8a66915e"},"properties":{"이름":{"title":[{"text":{"content":"<이름>"}}]},"설명":{"rich_text":[{"text":{"content":"<설명>"}}]},"정기성":{"select":{"name":"<주간|월간|일회|요청 시>"}}}}'

규칙

  • 항상 기록 전에 실행 목록을 표시하세요.
  • Buildin의 참조 데이터를 읽으세요 — 캐시된 내용을 신뢰하지 마세요.
  • Buildin 요청은 각 작업별로 개별적으로 수행하세요 (배치 처리 금지).
  • 사용자 언어로 응답하세요.

관련 스킬