Communitygithub.com

psrtech/async-agentic-tools

에이전트 프레임워크에서 진정한 비동기 도구 호출을 가능하게 하여 즉시 확인과 논블로킹 결과 콜백을 통해 지속적인 상호작용을 제공합니다.

async-agentic-tools란 무엇인가요?

이 스킬은 AI 에이전트가 도구를 호출할 때 결과를 기다리며 차단되지 않도록 하여, 사용자와 에이전트 간의 대화 흐름을 끊김 없이 유지합니다. 에이전트가 도구 실행 요청을 보내면 즉시 '요청 접수' 확인을 반환하고, 실제 결과는 나중에 비동기 콜백으로 전달됩니다. 이는 Claude Code, Cursor, Codex와 같은 주요 에이전트 프레임워크에서 동작하며, 긴 실행 시간이 필요한 작업(예: 코드 검색, API 호출, 데이터베이스 쿼리)에서 특히 유용합니다. 개발자는 이 스킬을 통해 사용자 경험을 저하시키지 않으면서 백그라운드에서 여러 도구를 동시에 실행할 수 있습니다.

지원 대상~Claude Code~Codex CLI~Cursor✓Antigravity
npx skills add psrtech/async-agentic-tools

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

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

문서

async-agentic-tools은(는) 무엇을 하나요?

에이전트 프레임워크에서 진정한 비동기 도구 호출을 가능하게 하여 즉시 확인과 논블로킹 결과 콜백을 통해 지속적인 상호작용을 제공합니다.

개요

psrtech/async-agentic-tools 스킬은 AI 에이전트가 도구를 호출할 때 기존의 동기식 차단 방식 대신 비동기 방식을 사용할 수 있도록 합니다. 에이전트가 도구 실행을 요청하면 즉시 ack(확인)을 반환하고, 실제 결과는 준비되는 대로 콜백을 통해 전달됩니다. 이를 통해 에이전트는 결과를 기다리는 동안 다른 작업(예: 사용자와의 대화, 추가 도구 호출)을 계속 수행할 수 있습니다.

주요 기능

  • 즉시 확인 (Immediate Acknowledgement): 도구 호출 시 즉시 ack를 반환하여 에이전트가 블로킹되지 않도록 합니다.
  • 비동기 콜백 (Non-blocking Callback): 결과가 준비되면 설정된 콜백 함수를 통해 비동기적으로 전달됩니다.
  • 연속 상호작용 (Continuous Interaction): 에이전트가 도구 실행 중에도 사용자와의 대화를 유지할 수 있습니다.
  • 다중 프레임워크 지원: 주요 에이전트 프레임워크(Claude Code, Cursor, Codex 등)와 호환됩니다.

사용 예시

from async_agentic_tools import AsyncToolManager

manager = AsyncToolManager()

# 비동기 도구 호출 예시
manager.call_tool(
    name="search_code",
    params={"query": "async pattern"},
    on_result=lambda result: print(f"결과 수신: {result}")
)

# 즉시 ack 수신
print("요청이 접수되었습니다.")

# 에이전트는 계속 작업 수행 가능

설정

환경 변수 설정:

export ASYNC_TOOL_ENDPOINT="https://api.example.com/async-tools"
export ASYNC_TOOL_TIMEOUT=30  # 초 단위 타임아웃

지원되는 도구 유형

  • 코드 검색 및 분석
  • API 호출
  • 데이터베이스 쿼리
  • 파일 I/O 작업
  • 외부 서비스 연동

주의사항

  • 비동기 호출은 네트워크 지연이나 서버 부하에 영향을 받을 수 있습니다.
  • 콜백 함수는 스레드 안전하게 구현해야 합니다.
  • 타임아웃을 적절히 설정하여 교착 상태를 방지하세요.

라이선스

MIT License

관련 스킬