Warden 에이전트 빌더은(는) 무엇을 하나요?
Warden Protocol의 Agentic Wallet 생태계를 위한 LangGraph 에이전트를 구축하고 배포합니다.
⚠️ 중요: 예제 에이전트에 관하여
Warden 커뮤니티 저장소에는 학습을 위한 예제 에이전트가 포함되어 있으며, 복제할 템플릿이 아닙니다:
- Weather 에이전트 - 간단한 데이터 가져오기 패턴을 학습
- CoinGecko 에이전트 - 스키마 기반 추론(Schema-Guided Reasoning, SGR) 학습
- Portfolio 에이전트 - 복잡한 다중 소스 통합 학습
이러한 에이전트를 구축하지 마십시오 - 이미 존재합니다. 대신:
- 코드를 연구하여 패턴을 이해하세요
- 아키텍처와 워크플로우에서 배우세요
- 인센티브 프로그램을 위해 새롭고 독창적인 것을 구축하세요
귀하의 에이전트는 고유해야 하며 다른 문제를 해결해야 인센티브 프로그램에 참여할 수 있습니다.
개요
Warden Protocol은 "Do-It-For-Me 경제를 위한 에이전틱 지갑(Agentic Wallet)"으로, Warden에 배포하는 OpenClaw 에이전트를 위한 활성화된 에이전트 빌더 인센티브 프로그램이 있습니다. 모든 에이전트는 LangGraph 기반이어야 하며 API를 통해 접근 가능해야 합니다.
주요 리소스:
- 커뮤니티 에이전트 저장소: https://github.com/warden-protocol/community-agents
- 문서: https://docs.wardenprotocol.org
- Discord: #developers 채널 (지원)
요구 사항 체크리스트
구축하기 전에 에이전트가 다음 필수 요구 사항을 충족하는지 확인하세요:
✓ 프레임워크: LangGraph로 구축 (TypeScript 또는 Python) ✓ 배포: LangSmith 배포 또는 사용자 지정 인프라 ✓ 접근: API 접근 가능 (UI 불필요 - Warden에서 UI 제공) ✓ 격리: LangGraph 인스턴스당 하나의 에이전트 ✓ 보안 제한 사항 (1단계):
- 사용자 지갑에 접근할 수 없음
- Warden 인프라에 데이터를 저장할 수 없음
✓ 기능: 모든 워크플로우 구현 가능:
- Web3/Web2 자동화
- API 통합
- 데이터베이스 연결
- 외부 도구 상호 작용
예제 에이전트 이해하기
community-agents 저장소에는 참조 예제가 포함되어 있으며, 복제할 템플릿이 아닌 학습 자료입니다:
예제 에이전트 1: LangGraph 빠른 시작 (기초 학습용)
위치: agents/langgraph-quick-start (TypeScript) 또는 agents/langgraph-quick-start-py (Python)
학습: LangGraph 기초, 최소 에이전트 구조
연구: OpenAI 통합 단일 노드 챗봇
git clone https://github.com/warden-protocol/community-agents.git
cd community-agents/agents/langgraph-quick-start
예제 에이전트 2: Weather 에이전트 (구조 학습용)
위치: agents/weather-agent
학습: 간단한 데이터 가져오기, API 통합, 사용자 친화적인 응답
연구:
- 외부 API(WeatherAPI)에서 데이터를 가져오는 방법
- 결과 처리 및 형식 지정
- 명확한 범위와 구조 ⚠️ 구축하지 마십시오: 이미 존재합니다. 연구한 후 새로운 것을 구축하세요.
예제 에이전트 3: CoinGecko 에이전트 (SGR 패턴 학습용)
위치: agents/coingecko-agent
학습: 스키마 기반 추론(Schema-Guided Reasoning), 복잡한 워크플로우
연구:
- 5단계 SGR 워크플로우: 검증 → 추출 → 가져오기 → 검증 → 분석
- 비교 분석 패턴
- 오류 처리 및 데이터 검증 ⚠️ 구축하지 마십시오: 이미 존재합니다. 패턴을 연구하여 새로운 사용 사례에 적용하세요.
예제 에이전트 4: Portfolio 분석 에이전트 (고급 패턴 학습용)
위치: agents/portfolio-agent
학습: 다중 소스 데이터 합성, 프로덕션 아키텍처
연구:
- 여러 API 통합 (CoinGecko + Alchemy)
- 멀티체인 지원 (EVM 및 Solana)
- 복잡한 SGR 워크플로우
- 포괄적인 보고 ⚠️ 구축하지 마십시오: 이미 존재합니다. 자체 복잡한 에이전트를 위해 아키텍처를 연구하세요.
중요: 새로운 것을 구축하세요
이러한 예제는 패턴과 모범 사례를 가르치기 위해 존재합니다. 인센티브 프로그램의 경우 Weather 에이전트, CoinGecko 에이전트 또는 Portfolio 에이전트를 단순히 재현하지 말고 독창적이고 고유한 문제를 해결하는 에이전트를 만들어야 합니다.
독창적인 에이전트 구축하기
1단계: 예제 연구 및 접근 방식 선택
예제를 수정하기 위해 복제하지 마십시오. 대신:
-
예제를 연구하여 패턴을 이해하세요:
- 간단한 데이터 가져오기 → Weather 에이전트 연구
- 복잡한 분석 → CoinGecko 에이전트 연구
- 다중 소스 합성 → Portfolio 에이전트 연구
-
고유한 사용 사례를 식별하세요:
- 에이전트가 해결할 문제는 무엇인가요?
- 어떤 API나 데이터 소스를 사용할 것인가요?
- 기존 에이전트와 무엇이 다른가요?
-
에이전트의 워크플로우를 계획하세요:
- 간단한 요청-응답?
- 스키마 기반 추론(SGR)?
- 다단계 분석?
2단계: 새 에이전트 초기화
초기화 스크립트를 사용하여 새 프로젝트를 만드세요:
# 고유한 에이전트 생성
python scripts/init-agent.py my-unique-agent \
--template typescript \
--description "귀하의 에이전트가 수행하는 작업에 대한 설명"
# 프로젝트 디렉토리로 이동
cd my-unique-agent
# 종속성 설치
npm install # TypeScript
# 또는
pip install -r requirements.txt # Python
이것은 기존 에이전트의 복사본이 아닌 깔끔한 시작점을 만듭니다.
3단계: LangGraph 에이전트 구조 이해
모든 LangGraph 에이전트는 다음 기본 구조를 따릅니다:
your-agent/
├── src/
│ ├── agent.ts/py # 주요 에이전트 로직 (귀하의 코드)
│ ├── graph.ts/py # LangGraph 워크플로우 정의 (귀하의 코드)
│ └── tools.ts/py # 도구 구현 (귀하의 코드)
├── package.json / requirements.txt
├── langgraph.json # LangGraph 구성
└── README.md
구현해야 할 주요 파일:
graph.ts/py- 워크플로우 정의 (검증 → 처리 → 응답)agent.ts/py- 핵심 로직 구현tools.ts/py- 에이전트 목적에 맞는 외부 API 통합
4단계: 사용자 지정 에이전트 로직 구현
예제의 패턴을 연구하여 사용 사례에 적용하세요:
간단한 데이터 가져오기 에이전트 구축 시 (Weather 에이전트 패턴):
// 워크플로우 정의
const workflow = new StateGraph({
channels: agentState
})
.addNode("fetch", fetchYourData) // 귀하의 API
.addNode("process", processYourData) // 귀하의 로직
.addNode("respond", generateResponse);
workflow
.addEdge(START, "fetch")
.addEdge("fetch", "process")
.addEdge("process", "respond")
.addEdge("respond", END);
복잡한 분석 에이전트 구축 시 (CoinGecko 에이전트 패턴 - SGR):
// 5단계 SGR 워크플로우 정의
const workflow = new StateGraph({
channels: agentState
})
.addNode("validate", validateYourInput) // 귀하의 검증
.addNode("extract", extractYourParams) // 귀하의 추출
.addNode("fetch", fetchYourData) // 귀하의 API
.addNode("analyze", analyzeYourData) // 귀하의 분석
.addNode("generate", generateYourResponse); // 귀하의 형식 지정
workflow
.addEdge(START, "validate")
.addEdge("validate", "extract")
.addEdge("extract", "fetch")
.addEdge("fetch", "analyze")
.addEdge("analyze", "generate")
.addEdge("generate", END);
핵심 원칙:
- 워크플로우를 선형적이고 예측 가능하게 유지하세요
- 각 단계에서 입력을 검증하세요
- 오류를 적절하게 처리하세요
- 자연어 생성을 위해 OpenAI를 사용하세요
- 응답을 일관되게 구성하세요
중요: 이것은 예제 에이전트의 복사본이 아닌 귀하의 문제를 해결하는 귀하의 구현이어야 합니다.
5단계: 환경 구성
.env 파일 생성:
# 필수
OPENAI_API_KEY=your_openai_key
# LangSmith 배포(클라우드)에 필요
LANGSMITH_API_KEY=your_langsmith_key
# 도구 기반 선택 사항
WEATHER_API_KEY=your_weather_key
COINGECKO_API_KEY=your_coingecko_key
ALCHEMY_API_KEY=your_alchemy_key
LangSmith API 키 얻기:
- https://smith.langchain.com 에서 계정 생성
- 설정 → API 키로 이동
- 새 API 키 생성
.env파일에 추가
langgraph.json 업데이트:
{
"agent_id": "[YOUR-AGENT-NAME]",
"python_version": "3.11", // 또는 TypeScript의 경우 생략
"dependencies": ["."],
"graphs": {
"agent": "./src/graph.ts" // 또는 .py
},
"env": ".env"
}
6단계: 로컬 테스트
# TypeScript
npm run dev
# Python
langgraph dev
에이전트의 API 테스트:
curl -X POST http://localhost:8000/invoke \
-H "Content-Type: application/json" \
-d '{"input": "test query"}'
배포 옵션
옵션 1: LangSmith 배포 (권장)
장점: 가장 빠르고, 가장 간단하며, 관리되는 인프라 요구 사항: LangSmith API 키
단계:
1. 에이전트 저장소를 GitHub에 푸시하세요.
2. LangSmith 배포에서 새 배포를 생성하세요.
3. 저장소를 연결하고 환경 변수를 설정한 후 배포하세요.
귀하의 에이전트는 다음을 받습니다:
- API 엔드포인트 URL
- 자동 인증 (귀하의 LangSmith API 키 사용)
- 자동 확장 및 모니터링
API 호출 인증: 배포된 에이전트를 호출할 때 LangSmith API 키를 포함하세요:
curl AGENT_URL/runs/wait \
--request POST \
--header 'Content-Type: application/json' \
--header 'x-api-key: [YOUR-LANGSMITH-API-KEY]' \
--data '{
"assistant_id": "[YOUR-AGENT-ID]",
"input": {
"messages": [{"role": "user", "content": "test query"}]
}
}'
옵션 2: 자체 호스팅 인프라
장점: 런타임에 대한 완전한 제어 요구 사항:
- Docker 컨테이너 호스팅
- 노출된 API 엔드포인트
- SSL 인증서 (HTTPS)
- 모니터링 및 로깅
기본 Docker 설정:
FROM node:18
WORKDIR /app
COPY package*.json ./
RUN npm install
COPY . .
EXPOSE 8000
CMD ["npm", "start"]
배포하고 다음을 기록하세요:
- API URL:
https://your-domain.com/agent - API 키: 인증을 위해 생성됨
Warden Studio에 등록
에이전트가 배포되어 HTTPS를 통해 접근 가능해지면 Warden Studio에 등록하세요:
-
API 세부 정보 제공:
- API URL
- API 키
-
메타데이터 추가:
- 에이전트 이름
- 설명
- 기술/기능 목록
- 아바타 이미지
-
게시: 에이전트가 수백만 사용자를 위해 Warden의 Agent Hub에 표시됩니다
추가 설정이 필요하지 않습니다 - API 접근 가능한 에이전트가 준비되었습니다!
다음 단계 (별도 스킬): 사용자가 Warden Studio에 게시하거나 안내된 UI 단계를 요청하는 경우 OpenClaw 스킬 "Warden Studio에 에이전트 배포" 로 전환하세요: https://www.clawhub.ai/Kryptopaid/warden-studio-deploy
모범 사례
1. 에이전트 설계
- Weather 에이전트 구조를 연구하여 패턴을 학습하세요
- 복잡한 워크플로우에는 스키마 기반 추론을 사용하세요
- 응답을 간결하고 실행 가능하게 유지하세요
- API 오류를 적절하게 처리하세요
- 모든 입력을 검증하세요
2. API 통합
- API 키에 환경 변수를 사용하세요
- 속도 제한을 구현하세요
- 적절한 경우 응답을 캐싱하세요
- 디버깅을 위해 오류를 기록하세요
- 구조화된 JSON 응답을 반환하세요
3. 테스트
- 배포 전에 로컬에서 테스트하세요
- 모든 API 엔드포인트가 작동하는지 확인하세요
- 엣지 케이스와 오류를 테스트하세요
- 응답이 사용자 친화적인지 확인하세요
- Warden 요구 사항에 대해 검증하세요
4. 문서화
- 명확한 README 작성:
- 에이전트 목적 및 기능
- 필요한 API 키
- 설정 지침
- 예제 쿼리
- 알려진 제한 사항
일반 패턴
패턴 1: 간단한 데이터 가져오기
// 가져오기 → 형식 지정 → 응답
async function agent(input: string) {
const data = await fetchAPI(input);
const formatted = formatData(data);
return generateResponse(formatted);
}
패턴 2: 다단계 분석
// 검증 → 추출 → 가져오기 → 분석 → 생성
async function agent(input: string) {
const validated = await validateInput(input);
const params = await extractParams(validated);
const data = await fetchData(params);
const analysis = await analyzeData(data);
return generateReport(analysis);
}
패턴 3: 비교 분석
// 구문 분석 → 여러 데이터 가져오기 → 비교 → 요약
async function agent(input: string) {
const items = await parseItems(input);
const dataArray = await Promise.all(
items.map(item => fetchData(item))
);
const comparison = compareData(dataArray);
return generateComparison(comparison);
}
문제 해결
일반적인 문제
"API를 통해 에이전트에 접근할 수 없음"
- 배포가 성공적으로 완료되었는지 확인하세요
- 방화벽/보안 그룹 설정을 확인하세요
- API 엔드포인트가 공개적으로 접근 가능한지 확인하세요
- curl 또는 Postman으로 테스트하세요
"빌드 중 LangGraph 오류"
- Node.js 버전(18+) 또는 Python(3.11+)을 확인하세요
- 모든 종속성이 설치되었는지 확인하세요
- langgraph.json 구문을 검증하세요
- 배포 콘솔에서 오류 로그를 검토하세요
"OpenAI API 오류"
- API 키가 유효한지 확인하세요
- 속도 제한이 초과되지 않았는지 확인하세요
- 충분한 크레딧이 있는지 확인하세요
- 자세한 내용은 오류 메시지를 검토하세요
"에이전트 응답이 느림"
- API 호출 최적화 (가능한 경우 병렬화)
- 반복 쿼리에 대한 캐싱 구현
- LLM 토큰 사용량 감소
- 인프라 업그레이드 고려
인센티브 프로그램 팁
인센티브 프로그램은 Warden에 배포하는 OpenClaw 에이전트에게 열려 있습니다.
-
독창성 유지: 아직 존재하지 않는 새로운 것을 만드세요
- Weather 에이전트, CoinGecko 에이전트 또는 Portfolio 에이전트를 재현하지 마세요
- 패턴을 연구하여 다른 문제에 적용하세요
-
실제 문제 해결: 유용하고 고유한 기능에 집중하세요
- Warden 생태계에 존재하는 격차는 무엇인가요?
- 사용자가 실제로 원하는 것은 무엇인가요?
-
간단하게 시작: 한 가지를 탁월하게 잘하는 것이 더 좋습니다
- 모든 것을 한 번에 구축하려고 하지 마세요
- 간단하고 집중된 에이전트가 종종 승리합니다
-
기능보다 품질: 안정성이 복잡성보다 중요합니다
- 철저히 테스트하세요
- 오류를 적절하게 처리하세요
- 명확하고 유용한 응답을 제공하세요
-
예제 연구: 구현을 복사하지 말고 패턴을 배우세요
- Weather 에이전트 → 간단한 데이터 가져오기 패턴
- CoinGecko 에이전트 → SGR 워크플로우 패턴
- Portfolio 에이전트 → 다중 소스 통합 패턴
-
문서화 철저: 예제 및 설정 지침이 포함된 명확한 README
-
Discord 참여: 제출 전에 #developers 채널에서 피드백 받기
예제 에이전트 아이디어 (이것들을 구축하세요!)
이것들은 Warden 생태계에 아직 존재하지 않는 새로운 에이전트 아이디어입니다. 이 중 하나를 구축하거나(또는 자신만의 고유한 아이디어를 만드세요):
Web3 사용 사례:
- 가스비 최적화 도구 (예측)