{
  "schemaVersion": "1.0",
  "item": {
    "slug": "build-warden-agent",
    "name": "Build an Agent with Warden",
    "source": "tencent",
    "type": "skill",
    "category": "AI 智能",
    "sourceUrl": "https://clawhub.ai/Kryptopaid/build-warden-agent",
    "canonicalUrl": "https://clawhub.ai/Kryptopaid/build-warden-agent",
    "targetPlatform": "OpenClaw"
  },
  "install": {
    "downloadMode": "redirect",
    "downloadUrl": "/downloads/build-warden-agent",
    "sourceDownloadUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=build-warden-agent",
    "sourcePlatform": "tencent",
    "targetPlatform": "OpenClaw",
    "installMethod": "Manual import",
    "extraction": "Extract archive",
    "prerequisites": [
      "OpenClaw"
    ],
    "packageFormat": "ZIP package",
    "includedAssets": [
      "references/deployment-guide.md",
      "references/quick-reference.md",
      "references/langgraph-patterns.md",
      "references/installation-guide.md",
      "README.md",
      "scripts/init-agent.py"
    ],
    "primaryDoc": "SKILL.md",
    "quickSetup": [
      "Download the package from Yavira.",
      "Extract the archive and review SKILL.md first.",
      "Import or place the package into your OpenClaw setup."
    ],
    "agentAssist": {
      "summary": "Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.",
      "steps": [
        "Download the package from Yavira.",
        "Extract it into a folder your agent can access.",
        "Paste one of the prompts below and point your agent at the extracted folder."
      ],
      "prompts": [
        {
          "label": "New install",
          "body": "I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Then review README.md for any prerequisites, environment setup, or post-install checks. Tell me what you changed and call out any manual steps you could not complete."
        },
        {
          "label": "Upgrade existing",
          "body": "I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Then review README.md for any prerequisites, environment setup, or post-install checks. Summarize what changed and any follow-up checks I should run."
        }
      ]
    },
    "sourceHealth": {
      "source": "tencent",
      "status": "healthy",
      "reason": "direct_download_ok",
      "recommendedAction": "download",
      "checkedAt": "2026-04-23T16:43:11.935Z",
      "expiresAt": "2026-04-30T16:43:11.935Z",
      "httpStatus": 200,
      "finalUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=4claw-imageboard",
      "contentType": "application/zip",
      "probeMethod": "head",
      "details": {
        "probeUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=4claw-imageboard",
        "contentDisposition": "attachment; filename=\"4claw-imageboard-1.0.1.zip\"",
        "redirectLocation": null,
        "bodySnippet": null
      },
      "scope": "source",
      "summary": "Source download looks usable.",
      "detail": "Yavira can redirect you to the upstream package for this source.",
      "primaryActionLabel": "Download for OpenClaw",
      "primaryActionHref": "/downloads/build-warden-agent"
    },
    "validation": {
      "installChecklist": [
        "Use the Yavira download entry.",
        "Review SKILL.md after the package is downloaded.",
        "Confirm the extracted package contains the expected setup assets."
      ],
      "postInstallChecks": [
        "Confirm the extracted package includes the expected docs or setup files.",
        "Validate the skill or prompts are available in your target agent workspace.",
        "Capture any manual follow-up steps the agent could not complete."
      ]
    },
    "downloadPageUrl": "https://openagent3.xyz/downloads/build-warden-agent",
    "agentPageUrl": "https://openagent3.xyz/skills/build-warden-agent/agent",
    "manifestUrl": "https://openagent3.xyz/skills/build-warden-agent/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/build-warden-agent/agent.md"
  },
  "agentAssist": {
    "summary": "Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.",
    "steps": [
      "Download the package from Yavira.",
      "Extract it into a folder your agent can access.",
      "Paste one of the prompts below and point your agent at the extracted folder."
    ],
    "prompts": [
      {
        "label": "New install",
        "body": "I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Then review README.md for any prerequisites, environment setup, or post-install checks. Tell me what you changed and call out any manual steps you could not complete."
      },
      {
        "label": "Upgrade existing",
        "body": "I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Then review README.md for any prerequisites, environment setup, or post-install checks. Summarize what changed and any follow-up checks I should run."
      }
    ]
  },
  "documentation": {
    "source": "clawhub",
    "primaryDoc": "SKILL.md",
    "sections": [
      {
        "title": "Warden Agent Builder",
        "body": "Build and deploy LangGraph agents for Warden Protocol's Agentic Wallet ecosystem."
      },
      {
        "title": "⚠️ IMPORTANT: About Example Agents",
        "body": "The Warden community repository contains example agents for learning, not templates to recreate:\n\nWeather Agent - Study this to learn simple data fetching patterns\nCoinGecko Agent - Study this to learn Schema-Guided Reasoning (SGR)\nPortfolio Agent - Study this to learn complex multi-source integration\n\nDO NOT BUILD THESE AGENTS - they already exist. Instead:\n\nStudy their code to understand patterns\nLearn from their architecture and workflows\nBuild something NEW and original for the incentive programme\n\nYour agent must be unique and solve a different problem to be eligible for the incentive programme."
      },
      {
        "title": "Overview",
        "body": "Warden Protocol is an \"Agentic Wallet for the Do-It-For-Me economy\" with an active Agent Builder Incentive Programme open to OpenClaw agents that deploy to Warden. All agents must be LangGraph-based and API-accessible.\n\nKey Resources:\n\nCommunity Agents Repository: https://github.com/warden-protocol/community-agents\nDocumentation: https://docs.wardenprotocol.org\nDiscord: #developers channel for support"
      },
      {
        "title": "Requirements Checklist",
        "body": "Before building, ensure your agent meets these mandatory requirements:\n\n✓ Framework: Built with LangGraph (TypeScript or Python)\n✓ Deployment: LangSmith Deployments OR custom infrastructure\n✓ Access: API-accessible (no UI required - Warden provides UI)\n✓ Isolation: One agent per LangGraph instance\n✓ Security Limitations (Phase 1):\n\nCannot access user wallets\nCannot store data on Warden infrastructure\n\n✓ Functionality: Can implement any workflow:\n\nWeb3/Web2 automation\nAPI integrations\nDatabase connections\nExternal tool interactions"
      },
      {
        "title": "Understanding the Example Agents",
        "body": "The community-agents repository contains reference examples to learn from, NOT templates to recreate:"
      },
      {
        "title": "Example Agent 1: LangGraph Quick Start (Study for Basics)",
        "body": "Location: agents/langgraph-quick-start (TypeScript) or agents/langgraph-quick-start-py (Python)\nLearn: LangGraph fundamentals, minimal agent structure\nStudy: Single-node chatbot with OpenAI integration\n\ngit clone https://github.com/warden-protocol/community-agents.git\ncd community-agents/agents/langgraph-quick-start"
      },
      {
        "title": "Example Agent 2: Weather Agent (Study for Structure)",
        "body": "Location: agents/weather-agent\nLearn: Simple data fetching, API integration, user-friendly responses\nStudy:\n\nHow to fetch data from external APIs (WeatherAPI)\nProcessing and formatting results\nClear scope and structure\n⚠️ DO NOT BUILD: This already exists. Study it, then build something NEW."
      },
      {
        "title": "Example Agent 3: CoinGecko Agent (Study for SGR Pattern)",
        "body": "Location: agents/coingecko-agent\nLearn: Schema-Guided Reasoning, complex workflows\nStudy:\n\n5-step SGR workflow: Validate → Extract → Fetch → Validate → Analyze\nComparative analysis patterns\nError handling and data validation\n⚠️ DO NOT BUILD: This already exists. Study the pattern, apply to new use cases."
      },
      {
        "title": "Example Agent 4: Portfolio Analysis Agent (Study for Advanced Patterns)",
        "body": "Location: agents/portfolio-agent\nLearn: Multi-source data synthesis, production architecture\nStudy:\n\nIntegrating multiple APIs (CoinGecko + Alchemy)\nMulti-chain support (EVM and Solana)\nComplex SGR workflows\nComprehensive reporting\n⚠️ DO NOT BUILD: This already exists. Study the architecture for your own complex agent."
      },
      {
        "title": "IMPORTANT: Build Something NEW",
        "body": "These examples exist to teach patterns and best practices. For the incentive programme, you MUST create an original, unique agent that solves a different problem. Do NOT simply recreate the Weather Agent, CoinGecko Agent, or Portfolio Agent."
      },
      {
        "title": "Step 1: Study Examples and Choose Your Approach",
        "body": "DO NOT clone an example to modify it. Instead:\n\nStudy the examples to understand patterns:\n\nSimple data fetching → Study Weather Agent\nComplex analysis → Study CoinGecko Agent\nMulti-source synthesis → Study Portfolio Agent\n\n\n\nIdentify YOUR unique use case:\n\nWhat problem will your agent solve?\nWhat APIs or data sources will it use?\nWhat makes it different from existing agents?\n\n\n\nPlan your agent's workflow:\n\nSimple request-response?\nSchema-Guided Reasoning (SGR)?\nMulti-step analysis?"
      },
      {
        "title": "Step 2: Initialize Your NEW Agent",
        "body": "Use the initialization script to create a fresh project:\n\n# Create your unique agent\npython scripts/init-agent.py my-unique-agent \\\n  --template typescript \\\n  --description \"Description of what YOUR agent does\"\n\n# Navigate to project\ncd my-unique-agent\n\n# Install dependencies\nnpm install  # TypeScript\n# OR\npip install -r requirements.txt  # Python\n\nThis creates a clean starting point, not a copy of existing agents."
      },
      {
        "title": "Step 3: Understand LangGraph Agent Structure",
        "body": "Every LangGraph agent follows this basic structure:\n\nyour-agent/\n├── src/\n│   ├── agent.ts/py          # Main agent logic (YOUR CODE)\n│   ├── graph.ts/py          # LangGraph workflow definition (YOUR CODE)\n│   └── tools.ts/py          # Tool implementations (YOUR CODE)\n├── package.json / requirements.txt\n├── langgraph.json           # LangGraph configuration\n└── README.md\n\nKey files to implement:\n\ngraph.ts/py - Define your workflow (validate → process → respond)\nagent.ts/py - Implement your core logic\ntools.ts/py - Integrate external APIs specific to YOUR agent's purpose"
      },
      {
        "title": "Step 4: Implement Your Custom Agent Logic",
        "body": "Study patterns from examples, apply to YOUR use case:\n\nIf building a simple data fetcher (like Weather Agent pattern):\n\n// Define workflow\nconst workflow = new StateGraph({\n  channels: agentState\n})\n  .addNode(\"fetch\", fetchYourData)      // YOUR API\n  .addNode(\"process\", processYourData)  // YOUR logic\n  .addNode(\"respond\", generateResponse);\n\nworkflow\n  .addEdge(START, \"fetch\")\n  .addEdge(\"fetch\", \"process\")\n  .addEdge(\"process\", \"respond\")\n  .addEdge(\"respond\", END);\n\nIf building complex analysis (like CoinGecko Agent pattern - SGR):\n\n// Define 5-step SGR workflow\nconst workflow = new StateGraph({\n  channels: agentState\n})\n  .addNode(\"validate\", validateYourInput)     // YOUR validation\n  .addNode(\"extract\", extractYourParams)      // YOUR extraction\n  .addNode(\"fetch\", fetchYourData)            // YOUR APIs\n  .addNode(\"analyze\", analyzeYourData)        // YOUR analysis\n  .addNode(\"generate\", generateYourResponse); // YOUR formatting\n\nworkflow\n  .addEdge(START, \"validate\")\n  .addEdge(\"validate\", \"extract\")\n  .addEdge(\"extract\", \"fetch\")\n  .addEdge(\"fetch\", \"analyze\")\n  .addEdge(\"analyze\", \"generate\")\n  .addEdge(\"generate\", END);\n\nKey Principles:\n\nKeep workflows linear and predictable\nValidate inputs at each stage\nHandle errors gracefully\nUse OpenAI for natural language generation\nStructure responses consistently\n\nCRITICAL: This should be YOUR implementation solving YOUR problem, not a copy of the example agents."
      },
      {
        "title": "Step 5: Configure Environment",
        "body": "Create .env file:\n\n# Required\nOPENAI_API_KEY=your_openai_key\n\n# Required for LangSmith Deployments (cloud)\nLANGSMITH_API_KEY=your_langsmith_key\n\n# Optional - based on your tools\nWEATHER_API_KEY=your_weather_key\nCOINGECKO_API_KEY=your_coingecko_key\nALCHEMY_API_KEY=your_alchemy_key\n\nGetting LangSmith API Key:\n\nCreate account at https://smith.langchain.com\nNavigate to Settings → API Keys\nCreate new API key\nAdd to .env file\n\nUpdate langgraph.json:\n\n{\n  \"agent_id\": \"[YOUR-AGENT-NAME]\",\n  \"python_version\": \"3.11\",  // or omit for TypeScript\n  \"dependencies\": [\".\"],\n  \"graphs\": {\n    \"agent\": \"./src/graph.ts\"  // or .py\n  },\n  \"env\": \".env\"\n}"
      },
      {
        "title": "Step 6: Test Locally",
        "body": "# TypeScript\nnpm run dev\n\n# Python\nlanggraph dev\n\nTest your agent's API:\n\ncurl -X POST http://localhost:8000/invoke \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\"input\": \"test query\"}'"
      },
      {
        "title": "Option 1: LangSmith Deployments (Recommended)",
        "body": "Pros: Fastest, simplest, managed infrastructure\nRequirements: LangSmith API key\n\nSteps:\n\n1. Push your agent repository to GitHub.\n2. Create a new deployment in LangSmith Deployments.\n3. Connect the repo, set environment variables, and deploy.\n\nYour agent receives:\n\nAPI endpoint URL\nAutomatic authentication (uses your LangSmith API key)\nAutomatic scaling and monitoring\n\nAuthentication for API calls:\nWhen calling your deployed agent, include your LangSmith API key:\n\ncurl AGENT_URL/runs/wait \\\n  --request POST \\\n  --header 'Content-Type: application/json' \\\n  --header 'x-api-key: [YOUR-LANGSMITH-API-KEY]' \\\n  --data '{\n    \"assistant_id\": \"[YOUR-AGENT-ID]\",\n    \"input\": {\n      \"messages\": [{\"role\": \"user\", \"content\": \"test query\"}]\n    }\n  }'"
      },
      {
        "title": "Option 2: Self-Hosted Infrastructure",
        "body": "Pros: Full control over runtime\nRequirements:\n\nDocker container hosting\nExposed API endpoint\nSSL certificate (HTTPS)\nMonitoring and logging\n\nBasic Docker Setup:\n\nFROM node:18\nWORKDIR /app\nCOPY package*.json ./\nRUN npm install\nCOPY . .\nEXPOSE 8000\nCMD [\"npm\", \"start\"]\n\nDeploy and note your:\n\nAPI URL: https://your-domain.com/agent\nAPI Key: Generated for authentication"
      },
      {
        "title": "Register with Warden Studio",
        "body": "Once your agent is deployed and reachable via HTTPS, register it in Warden Studio:\n\nProvide API Details:\n\nAPI URL\nAPI key\n\n\n\nAdd Metadata:\n\nAgent name\nDescription\nSkills/capabilities list\nAvatar image\n\n\n\nPublish: Agent appears in Warden's Agent Hub for millions of users\n\nNo additional setup required - your API-accessible agent is ready!\n\nNext step (separate skill):\nIf the user asks to publish in Warden Studio or needs guided UI steps, switch to the OpenClaw skill \"Deploy Agent on Warden Studio\":\nhttps://www.clawhub.ai/Kryptopaid/warden-studio-deploy"
      },
      {
        "title": "1. Agent Design",
        "body": "Study the Weather Agent structure to learn patterns\nUse Schema-Guided Reasoning for complex workflows\nKeep responses concise and actionable\nHandle API failures gracefully\nValidate all inputs"
      },
      {
        "title": "2. API Integration",
        "body": "Use environment variables for API keys\nImplement rate limiting\nCache responses when appropriate\nLog errors for debugging\nReturn structured JSON responses"
      },
      {
        "title": "3. Testing",
        "body": "Test locally before deploying\nVerify all API endpoints work\nTest edge cases and errors\nEnsure responses are user-friendly\nValidate against Warden requirements"
      },
      {
        "title": "4. Documentation",
        "body": "Write clear README with:\n\nAgent purpose and capabilities\nRequired API keys\nSetup instructions\nExample queries\nKnown limitations"
      },
      {
        "title": "Pattern 1: Simple Data Fetcher",
        "body": "// Fetch → Format → Respond\nasync function agent(input: string) {\n  const data = await fetchAPI(input);\n  const formatted = formatData(data);\n  return generateResponse(formatted);\n}"
      },
      {
        "title": "Pattern 2: Multi-Step Analysis",
        "body": "// Validate → Extract → Fetch → Analyze → Generate\nasync function agent(input: string) {\n  const validated = await validateInput(input);\n  const params = await extractParams(validated);\n  const data = await fetchData(params);\n  const analysis = await analyzeData(data);\n  return generateReport(analysis);\n}"
      },
      {
        "title": "Pattern 3: Comparative Analysis",
        "body": "// Parse → Fetch Multiple → Compare → Summarize\nasync function agent(input: string) {\n  const items = await parseItems(input);\n  const dataArray = await Promise.all(\n    items.map(item => fetchData(item))\n  );\n  const comparison = compareData(dataArray);\n  return generateComparison(comparison);\n}"
      },
      {
        "title": "Common Issues",
        "body": "\"Agent not accessible via API\"\n\nVerify deployment completed successfully\nCheck firewall/security group settings\nEnsure API endpoint is publicly accessible\nTest with curl or Postman\n\n\"LangGraph errors during build\"\n\nVerify Node.js version (18+) or Python (3.11+)\nCheck all dependencies installed\nValidate langgraph.json syntax\nReview error logs in deployment console\n\n\"OpenAI API errors\"\n\nVerify API key is valid\nCheck rate limits not exceeded\nEnsure sufficient credits\nReview error messages for details\n\n\"Agent responses are slow\"\n\nOptimize API calls (parallelize where possible)\nImplement caching for repeated queries\nReduce LLM token usage\nConsider upgrading infrastructure"
      },
      {
        "title": "Incentive Programme Tips",
        "body": "The incentive programme is open to OpenClaw agents that deploy to Warden.\n\nBe Original: Create something NEW that doesn't exist yet\n\nDon't recreate Weather Agent, CoinGecko Agent, or Portfolio Agent\nStudy their patterns, apply to different problems\n\n\n\nSolve Real Problems: Focus on useful, unique functionality\n\nWhat gap exists in the Warden ecosystem?\nWhat would users actually want?\n\n\n\nStart Simple: Better to do one thing exceptionally well\n\nDon't try to build everything at once\nSimple, focused agents often win\n\n\n\nQuality Over Features: Reliability beats complexity\n\nTest thoroughly\nHandle errors gracefully\nProvide clear, helpful responses\n\n\n\nStudy the Examples: Learn patterns, don't copy implementations\n\nWeather Agent → Simple data fetching pattern\nCoinGecko Agent → SGR workflow pattern\nPortfolio Agent → Multi-source integration pattern\n\n\n\nDocument Well: Clear README with examples and setup instructions\n\n\nJoin Discord: Get feedback in #developers channel before submitting"
      },
      {
        "title": "Example Agent Ideas (Build These!)",
        "body": "These are NEW agent ideas that don't exist yet in the Warden ecosystem. Build one of these (or create your own unique idea):\n\nWeb3 Use Cases:\n\nGas price optimizer (predict best times to transact)\nNFT rarity analyzer (evaluate NFT traits and rarity scores)\nDeFi yield comparator (compare yields across protocols)\nWallet health checker (analyze wallet security and diversification)\nTransaction explainer (decode and explain complex transactions)\nToken price alerts (customizable price movement notifications)\nSmart contract auditor (basic security checks)\nLiquidity pool finder (identify best liquidity opportunities)\nBridge fee comparator (find cheapest cross-chain bridges)\nAirdrop tracker (find and track airdrop eligibility)\n\nGeneral Use Cases:\n\nCrypto news aggregator (filter and summarize crypto news)\nResearch assistant (gather and analyze crypto research)\nRegulatory tracker (track crypto regulations by region)\nData visualizer (create charts from on-chain data)\nAPI orchestrator (combine multiple crypto data sources)\nWorkflow automator (automate common crypto tasks)\n\nRemember: These are IDEAS for new agents. Study the example agents (Weather, CoinGecko, Portfolio) to learn patterns, then build something from this list or create your own unique concept."
      },
      {
        "title": "Additional Resources",
        "body": "Documentation:\n\nLangGraph TypeScript Guide: community-agents/docs/langgraph-quick-start-ts.md\nLangGraph Python Guide: community-agents/docs/langgraph-quick-start-py.md\nDeployment Guide: community-agents/docs/deploy.md\n\nExample Agents:\n\nWeather Agent README: agents/weather-agent/README.md\nCoinGecko Agent README: agents/coingecko-agent/README.md\nPortfolio Agent README: agents/portfolio-agent/README.md\n\nSupport:\n\nDiscord: #developers channel\nGitHub Issues: https://github.com/warden-protocol/community-agents/issues\nDocumentation: https://docs.wardenprotocol.org"
      },
      {
        "title": "Quick Reference Commands",
        "body": "# Study example agents (DON'T BUILD THESE)\ngit clone https://github.com/warden-protocol/community-agents.git\ncd community-agents/agents/weather-agent  # Study the code\ncd community-agents/agents/coingecko-agent  # Study the patterns\n\n# Create YOUR new agent\npython scripts/init-agent.py my-unique-agent \\\n  --template typescript \\\n  --description \"YOUR unique agent description\"\n\n# Install dependencies (TypeScript)\nnpm install\n\n# Install dependencies (Python)\npip install -r requirements.txt\n\n# Test locally\nnpm run dev  # or: langgraph dev\n\n# Deploy (LangSmith Deployments)\n# Use the LangSmith Deployments UI after pushing to GitHub\n\n# Build Docker image (for self-hosting)\ndocker build -t my-warden-agent .\n\n# Run Docker container\ndocker run -p 8000:8000 my-warden-agent"
      },
      {
        "title": "Success Checklist",
        "body": "Before submitting to incentive programme:\n\nAgent built with LangGraph\n API accessible and tested\n One agent per LangGraph instance\n No wallet access or data storage (Phase 1)\n Clear documentation in README\n Environment variables properly configured\n Error handling implemented\n Tested with various inputs\n Unique and useful functionality\n Ready for Warden Studio registration"
      }
    ],
    "body": "Warden Agent Builder\n\nBuild and deploy LangGraph agents for Warden Protocol's Agentic Wallet ecosystem.\n\n⚠️ IMPORTANT: About Example Agents\n\nThe Warden community repository contains example agents for learning, not templates to recreate:\n\nWeather Agent - Study this to learn simple data fetching patterns\nCoinGecko Agent - Study this to learn Schema-Guided Reasoning (SGR)\nPortfolio Agent - Study this to learn complex multi-source integration\n\nDO NOT BUILD THESE AGENTS - they already exist. Instead:\n\nStudy their code to understand patterns\nLearn from their architecture and workflows\nBuild something NEW and original for the incentive programme\n\nYour agent must be unique and solve a different problem to be eligible for the incentive programme.\n\nOverview\n\nWarden Protocol is an \"Agentic Wallet for the Do-It-For-Me economy\" with an active Agent Builder Incentive Programme open to OpenClaw agents that deploy to Warden. All agents must be LangGraph-based and API-accessible.\n\nKey Resources:\n\nCommunity Agents Repository: https://github.com/warden-protocol/community-agents\nDocumentation: https://docs.wardenprotocol.org\nDiscord: #developers channel for support\nRequirements Checklist\n\nBefore building, ensure your agent meets these mandatory requirements:\n\n✓ Framework: Built with LangGraph (TypeScript or Python) ✓ Deployment: LangSmith Deployments OR custom infrastructure ✓ Access: API-accessible (no UI required - Warden provides UI) ✓ Isolation: One agent per LangGraph instance ✓ Security Limitations (Phase 1):\n\nCannot access user wallets\nCannot store data on Warden infrastructure\n\n✓ Functionality: Can implement any workflow:\n\nWeb3/Web2 automation\nAPI integrations\nDatabase connections\nExternal tool interactions\nUnderstanding the Example Agents\n\nThe community-agents repository contains reference examples to learn from, NOT templates to recreate:\n\nExample Agent 1: LangGraph Quick Start (Study for Basics)\n\nLocation: agents/langgraph-quick-start (TypeScript) or agents/langgraph-quick-start-py (Python) Learn: LangGraph fundamentals, minimal agent structure Study: Single-node chatbot with OpenAI integration\n\ngit clone https://github.com/warden-protocol/community-agents.git\ncd community-agents/agents/langgraph-quick-start\n\nExample Agent 2: Weather Agent (Study for Structure)\n\nLocation: agents/weather-agent Learn: Simple data fetching, API integration, user-friendly responses Study:\n\nHow to fetch data from external APIs (WeatherAPI)\nProcessing and formatting results\nClear scope and structure ⚠️ DO NOT BUILD: This already exists. Study it, then build something NEW.\nExample Agent 3: CoinGecko Agent (Study for SGR Pattern)\n\nLocation: agents/coingecko-agent Learn: Schema-Guided Reasoning, complex workflows Study:\n\n5-step SGR workflow: Validate → Extract → Fetch → Validate → Analyze\nComparative analysis patterns\nError handling and data validation ⚠️ DO NOT BUILD: This already exists. Study the pattern, apply to new use cases.\nExample Agent 4: Portfolio Analysis Agent (Study for Advanced Patterns)\n\nLocation: agents/portfolio-agent Learn: Multi-source data synthesis, production architecture Study:\n\nIntegrating multiple APIs (CoinGecko + Alchemy)\nMulti-chain support (EVM and Solana)\nComplex SGR workflows\nComprehensive reporting ⚠️ DO NOT BUILD: This already exists. Study the architecture for your own complex agent.\nIMPORTANT: Build Something NEW\n\nThese examples exist to teach patterns and best practices. For the incentive programme, you MUST create an original, unique agent that solves a different problem. Do NOT simply recreate the Weather Agent, CoinGecko Agent, or Portfolio Agent.\n\nBuilding Your Original Agent\nStep 1: Study Examples and Choose Your Approach\n\nDO NOT clone an example to modify it. Instead:\n\nStudy the examples to understand patterns:\n\nSimple data fetching → Study Weather Agent\nComplex analysis → Study CoinGecko Agent\nMulti-source synthesis → Study Portfolio Agent\n\nIdentify YOUR unique use case:\n\nWhat problem will your agent solve?\nWhat APIs or data sources will it use?\nWhat makes it different from existing agents?\n\nPlan your agent's workflow:\n\nSimple request-response?\nSchema-Guided Reasoning (SGR)?\nMulti-step analysis?\nStep 2: Initialize Your NEW Agent\n\nUse the initialization script to create a fresh project:\n\n# Create your unique agent\npython scripts/init-agent.py my-unique-agent \\\n  --template typescript \\\n  --description \"Description of what YOUR agent does\"\n\n# Navigate to project\ncd my-unique-agent\n\n# Install dependencies\nnpm install  # TypeScript\n# OR\npip install -r requirements.txt  # Python\n\n\nThis creates a clean starting point, not a copy of existing agents.\n\nStep 3: Understand LangGraph Agent Structure\n\nEvery LangGraph agent follows this basic structure:\n\nyour-agent/\n├── src/\n│   ├── agent.ts/py          # Main agent logic (YOUR CODE)\n│   ├── graph.ts/py          # LangGraph workflow definition (YOUR CODE)\n│   └── tools.ts/py          # Tool implementations (YOUR CODE)\n├── package.json / requirements.txt\n├── langgraph.json           # LangGraph configuration\n└── README.md\n\n\nKey files to implement:\n\ngraph.ts/py - Define your workflow (validate → process → respond)\nagent.ts/py - Implement your core logic\ntools.ts/py - Integrate external APIs specific to YOUR agent's purpose\nStep 4: Implement Your Custom Agent Logic\n\nStudy patterns from examples, apply to YOUR use case:\n\nIf building a simple data fetcher (like Weather Agent pattern):\n\n// Define workflow\nconst workflow = new StateGraph({\n  channels: agentState\n})\n  .addNode(\"fetch\", fetchYourData)      // YOUR API\n  .addNode(\"process\", processYourData)  // YOUR logic\n  .addNode(\"respond\", generateResponse);\n\nworkflow\n  .addEdge(START, \"fetch\")\n  .addEdge(\"fetch\", \"process\")\n  .addEdge(\"process\", \"respond\")\n  .addEdge(\"respond\", END);\n\n\nIf building complex analysis (like CoinGecko Agent pattern - SGR):\n\n// Define 5-step SGR workflow\nconst workflow = new StateGraph({\n  channels: agentState\n})\n  .addNode(\"validate\", validateYourInput)     // YOUR validation\n  .addNode(\"extract\", extractYourParams)      // YOUR extraction\n  .addNode(\"fetch\", fetchYourData)            // YOUR APIs\n  .addNode(\"analyze\", analyzeYourData)        // YOUR analysis\n  .addNode(\"generate\", generateYourResponse); // YOUR formatting\n\nworkflow\n  .addEdge(START, \"validate\")\n  .addEdge(\"validate\", \"extract\")\n  .addEdge(\"extract\", \"fetch\")\n  .addEdge(\"fetch\", \"analyze\")\n  .addEdge(\"analyze\", \"generate\")\n  .addEdge(\"generate\", END);\n\n\nKey Principles:\n\nKeep workflows linear and predictable\nValidate inputs at each stage\nHandle errors gracefully\nUse OpenAI for natural language generation\nStructure responses consistently\n\nCRITICAL: This should be YOUR implementation solving YOUR problem, not a copy of the example agents.\n\nStep 5: Configure Environment\n\nCreate .env file:\n\n# Required\nOPENAI_API_KEY=your_openai_key\n\n# Required for LangSmith Deployments (cloud)\nLANGSMITH_API_KEY=your_langsmith_key\n\n# Optional - based on your tools\nWEATHER_API_KEY=your_weather_key\nCOINGECKO_API_KEY=your_coingecko_key\nALCHEMY_API_KEY=your_alchemy_key\n\n\nGetting LangSmith API Key:\n\nCreate account at https://smith.langchain.com\nNavigate to Settings → API Keys\nCreate new API key\nAdd to .env file\n\nUpdate langgraph.json:\n\n{\n  \"agent_id\": \"[YOUR-AGENT-NAME]\",\n  \"python_version\": \"3.11\",  // or omit for TypeScript\n  \"dependencies\": [\".\"],\n  \"graphs\": {\n    \"agent\": \"./src/graph.ts\"  // or .py\n  },\n  \"env\": \".env\"\n}\n\nStep 6: Test Locally\n# TypeScript\nnpm run dev\n\n# Python\nlanggraph dev\n\n\nTest your agent's API:\n\ncurl -X POST http://localhost:8000/invoke \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\"input\": \"test query\"}'\n\nDeployment Options\nOption 1: LangSmith Deployments (Recommended)\n\nPros: Fastest, simplest, managed infrastructure Requirements: LangSmith API key\n\nSteps:\n\n1. Push your agent repository to GitHub.\n2. Create a new deployment in LangSmith Deployments.\n3. Connect the repo, set environment variables, and deploy.\n\n\nYour agent receives:\n\nAPI endpoint URL\nAutomatic authentication (uses your LangSmith API key)\nAutomatic scaling and monitoring\n\nAuthentication for API calls: When calling your deployed agent, include your LangSmith API key:\n\ncurl AGENT_URL/runs/wait \\\n  --request POST \\\n  --header 'Content-Type: application/json' \\\n  --header 'x-api-key: [YOUR-LANGSMITH-API-KEY]' \\\n  --data '{\n    \"assistant_id\": \"[YOUR-AGENT-ID]\",\n    \"input\": {\n      \"messages\": [{\"role\": \"user\", \"content\": \"test query\"}]\n    }\n  }'\n\nOption 2: Self-Hosted Infrastructure\n\nPros: Full control over runtime Requirements:\n\nDocker container hosting\nExposed API endpoint\nSSL certificate (HTTPS)\nMonitoring and logging\n\nBasic Docker Setup:\n\nFROM node:18\nWORKDIR /app\nCOPY package*.json ./\nRUN npm install\nCOPY . .\nEXPOSE 8000\nCMD [\"npm\", \"start\"]\n\n\nDeploy and note your:\n\nAPI URL: https://your-domain.com/agent\nAPI Key: Generated for authentication\nRegister with Warden Studio\n\nOnce your agent is deployed and reachable via HTTPS, register it in Warden Studio:\n\nProvide API Details:\n\nAPI URL\nAPI key\n\nAdd Metadata:\n\nAgent name\nDescription\nSkills/capabilities list\nAvatar image\n\nPublish: Agent appears in Warden's Agent Hub for millions of users\n\nNo additional setup required - your API-accessible agent is ready!\n\nNext step (separate skill): If the user asks to publish in Warden Studio or needs guided UI steps, switch to the OpenClaw skill \"Deploy Agent on Warden Studio\": https://www.clawhub.ai/Kryptopaid/warden-studio-deploy\n\nBest Practices\n1. Agent Design\nStudy the Weather Agent structure to learn patterns\nUse Schema-Guided Reasoning for complex workflows\nKeep responses concise and actionable\nHandle API failures gracefully\nValidate all inputs\n2. API Integration\nUse environment variables for API keys\nImplement rate limiting\nCache responses when appropriate\nLog errors for debugging\nReturn structured JSON responses\n3. Testing\nTest locally before deploying\nVerify all API endpoints work\nTest edge cases and errors\nEnsure responses are user-friendly\nValidate against Warden requirements\n4. Documentation\nWrite clear README with:\nAgent purpose and capabilities\nRequired API keys\nSetup instructions\nExample queries\nKnown limitations\nCommon Patterns\nPattern 1: Simple Data Fetcher\n// Fetch → Format → Respond\nasync function agent(input: string) {\n  const data = await fetchAPI(input);\n  const formatted = formatData(data);\n  return generateResponse(formatted);\n}\n\nPattern 2: Multi-Step Analysis\n// Validate → Extract → Fetch → Analyze → Generate\nasync function agent(input: string) {\n  const validated = await validateInput(input);\n  const params = await extractParams(validated);\n  const data = await fetchData(params);\n  const analysis = await analyzeData(data);\n  return generateReport(analysis);\n}\n\nPattern 3: Comparative Analysis\n// Parse → Fetch Multiple → Compare → Summarize\nasync function agent(input: string) {\n  const items = await parseItems(input);\n  const dataArray = await Promise.all(\n    items.map(item => fetchData(item))\n  );\n  const comparison = compareData(dataArray);\n  return generateComparison(comparison);\n}\n\nTroubleshooting\nCommon Issues\n\n\"Agent not accessible via API\"\n\nVerify deployment completed successfully\nCheck firewall/security group settings\nEnsure API endpoint is publicly accessible\nTest with curl or Postman\n\n\"LangGraph errors during build\"\n\nVerify Node.js version (18+) or Python (3.11+)\nCheck all dependencies installed\nValidate langgraph.json syntax\nReview error logs in deployment console\n\n\"OpenAI API errors\"\n\nVerify API key is valid\nCheck rate limits not exceeded\nEnsure sufficient credits\nReview error messages for details\n\n\"Agent responses are slow\"\n\nOptimize API calls (parallelize where possible)\nImplement caching for repeated queries\nReduce LLM token usage\nConsider upgrading infrastructure\nIncentive Programme Tips\n\nThe incentive programme is open to OpenClaw agents that deploy to Warden.\n\nBe Original: Create something NEW that doesn't exist yet\n\nDon't recreate Weather Agent, CoinGecko Agent, or Portfolio Agent\nStudy their patterns, apply to different problems\n\nSolve Real Problems: Focus on useful, unique functionality\n\nWhat gap exists in the Warden ecosystem?\nWhat would users actually want?\n\nStart Simple: Better to do one thing exceptionally well\n\nDon't try to build everything at once\nSimple, focused agents often win\n\nQuality Over Features: Reliability beats complexity\n\nTest thoroughly\nHandle errors gracefully\nProvide clear, helpful responses\n\nStudy the Examples: Learn patterns, don't copy implementations\n\nWeather Agent → Simple data fetching pattern\nCoinGecko Agent → SGR workflow pattern\nPortfolio Agent → Multi-source integration pattern\n\nDocument Well: Clear README with examples and setup instructions\n\nJoin Discord: Get feedback in #developers channel before submitting\n\nExample Agent Ideas (Build These!)\n\nThese are NEW agent ideas that don't exist yet in the Warden ecosystem. Build one of these (or create your own unique idea):\n\nWeb3 Use Cases:\n\nGas price optimizer (predict best times to transact)\nNFT rarity analyzer (evaluate NFT traits and rarity scores)\nDeFi yield comparator (compare yields across protocols)\nWallet health checker (analyze wallet security and diversification)\nTransaction explainer (decode and explain complex transactions)\nToken price alerts (customizable price movement notifications)\nSmart contract auditor (basic security checks)\nLiquidity pool finder (identify best liquidity opportunities)\nBridge fee comparator (find cheapest cross-chain bridges)\nAirdrop tracker (find and track airdrop eligibility)\n\nGeneral Use Cases:\n\nCrypto news aggregator (filter and summarize crypto news)\nResearch assistant (gather and analyze crypto research)\nRegulatory tracker (track crypto regulations by region)\nData visualizer (create charts from on-chain data)\nAPI orchestrator (combine multiple crypto data sources)\nWorkflow automator (automate common crypto tasks)\n\nRemember: These are IDEAS for new agents. Study the example agents (Weather, CoinGecko, Portfolio) to learn patterns, then build something from this list or create your own unique concept.\n\nAdditional Resources\n\nDocumentation:\n\nLangGraph TypeScript Guide: community-agents/docs/langgraph-quick-start-ts.md\nLangGraph Python Guide: community-agents/docs/langgraph-quick-start-py.md\nDeployment Guide: community-agents/docs/deploy.md\n\nExample Agents:\n\nWeather Agent README: agents/weather-agent/README.md\nCoinGecko Agent README: agents/coingecko-agent/README.md\nPortfolio Agent README: agents/portfolio-agent/README.md\n\nSupport:\n\nDiscord: #developers channel\nGitHub Issues: https://github.com/warden-protocol/community-agents/issues\nDocumentation: https://docs.wardenprotocol.org\nQuick Reference Commands\n# Study example agents (DON'T BUILD THESE)\ngit clone https://github.com/warden-protocol/community-agents.git\ncd community-agents/agents/weather-agent  # Study the code\ncd community-agents/agents/coingecko-agent  # Study the patterns\n\n# Create YOUR new agent\npython scripts/init-agent.py my-unique-agent \\\n  --template typescript \\\n  --description \"YOUR unique agent description\"\n\n# Install dependencies (TypeScript)\nnpm install\n\n# Install dependencies (Python)\npip install -r requirements.txt\n\n# Test locally\nnpm run dev  # or: langgraph dev\n\n# Deploy (LangSmith Deployments)\n# Use the LangSmith Deployments UI after pushing to GitHub\n\n# Build Docker image (for self-hosting)\ndocker build -t my-warden-agent .\n\n# Run Docker container\ndocker run -p 8000:8000 my-warden-agent\n\nSuccess Checklist\n\nBefore submitting to incentive programme:\n\n Agent built with LangGraph\n API accessible and tested\n One agent per LangGraph instance\n No wallet access or data storage (Phase 1)\n Clear documentation in README\n Environment variables properly configured\n Error handling implemented\n Tested with various inputs\n Unique and useful functionality\n Ready for Warden Studio registration"
  },
  "trust": {
    "sourceLabel": "tencent",
    "provenanceUrl": "https://clawhub.ai/Kryptopaid/build-warden-agent",
    "publisherUrl": "https://clawhub.ai/Kryptopaid/build-warden-agent",
    "owner": "Kryptopaid",
    "version": "1.0.0",
    "license": null,
    "verificationStatus": "Indexed source record"
  },
  "links": {
    "detailUrl": "https://openagent3.xyz/skills/build-warden-agent",
    "downloadUrl": "https://openagent3.xyz/downloads/build-warden-agent",
    "agentUrl": "https://openagent3.xyz/skills/build-warden-agent/agent",
    "manifestUrl": "https://openagent3.xyz/skills/build-warden-agent/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/build-warden-agent/agent.md"
  }
}