AgentSkillsCN

search-algorand-examples

在 GitHub 上搜索 Algorand 智能合约的示例与模式。当需要查找特定模式(BoxMap、内联交易)的示例实现、查询合约功能的使用方式、探索 Algorand 仓库,或从 algorandfoundation 仓库中获取文件时,可使用此技能。强烈触发条件包括:“查找……的示例”、“向我展示如何使用 BoxMap”、“搜索投票合约的示例”、“从 puya-ts 示例中获取代码”、“寻找 Algorand NFT 仓库”。

SKILL.md
--- frontmatter
name: search-algorand-examples
description: Search GitHub for Algorand smart contract examples and patterns. Use when finding example implementations of specific patterns (BoxMap, inner transactions), looking up contract feature usage, discovering Algorand repositories, or retrieving files from algorandfoundation repos. Strong triggers include "find an example of...", "show me how to use BoxMap", "search for voting contract examples", "get the code from puya-ts examples", "find Algorand NFT repositories".

Searching Algorand Examples

Find working contract examples and code patterns from Algorand Foundation repositories using GitHub tools.

Overview / Core Workflow

  1. Identify what pattern or example the user needs
  2. Choose the appropriate tool (github_search_code, github_get_file_contents, or github_search_repositories)
  3. Search priority repositories first (devportal-code-examples, puya-ts)
  4. Retrieve the relevant file(s)
  5. Also fetch corresponding test files when applicable

How to proceed

  1. Determine the search type:

    • Looking for a specific pattern → use github_search_code
    • Need a specific file → use github_get_file_contents
    • Discovering repositories → use github_search_repositories
  2. Search priority repositories first:

    PriorityRepositoryBest For
    1algorandfoundation/devportal-code-examplesBeginner-friendly patterns
    2algorandfoundation/puya-tsAdvanced TypeScript examples
    3algorandfoundation/puyaPython examples
    4algorandfoundation/algokit-*Templates and utilities
  3. Execute the search:

    code
    # Search for code patterns
    github_search_code query:"BoxMap org:algorandfoundation language:typescript"
    
    # Get specific file
    github_get_file_contents owner:algorandfoundation repo:puya-ts path:examples/voting/contract.algo.ts
    
    # List directory contents
    github_get_file_contents owner:algorandfoundation repo:puya-ts path:examples
    
    # Find repositories
    github_search_repositories query:"topic:algorand smart-contract"
    
  4. Always fetch test files:

    • For any contract file, check for corresponding *.spec.ts or *_test.py
    • Tests show how to call methods and verify behavior

Important Rules / Guidelines

  • Search algorandfoundation first — Official repos have vetted, up-to-date examples
  • Always include test files — They demonstrate correct usage patterns
  • Use specific queries — Include org:algorandfoundation and language:typescript for better results
  • Check file paths in devportal-code-examples:
    • TypeScript: projects/typescript-examples/contracts/
    • Python: projects/python-examples/contracts/
  • Prefer puya-ts/examples for complex patterns — Voting, AMM, auction examples are comprehensive

If GitHub MCP Tools Unavailable

Use web search as fallback:

  • For code search: site:github.com algorandfoundation {pattern} language:typescript
  • For specific files: Browse directly to https://github.com/algorandfoundation/puya-ts/tree/main/examples
  • For repos: Search site:github.com algorand {topic}

Key URLs to browse directly:

Common Variations / Edge Cases

ScenarioApproach
Pattern not found in algorandfoundationExpand search to all of GitHub
Need Python instead of TypeScriptSearch algorandfoundation/puya instead
Looking for deployment patternsCheck algokit-*-template repos
Need ARC standard implementationSearch for "ARC-{number}" in code

References / Further Reading