| name | awesome-agentic-ai-zh-learning |
| description | Structured learning roadmap for AI Agent development from LLM basics to multi-agent systems (bilingual Chinese/English) |
| triggers | ["how do I learn AI agents from scratch","show me the agentic AI learning path","what's the roadmap for building AI agents","guide me through learning LLM and agent frameworks","I want to build my first AI agent","explain the AI agent learning stages","what resources for learning agentic AI","help me understand MCP and Claude Code ecosystem"] |
awesome-agentic-ai-zh Learning Skill
Skill by ara.so — AI Agent Skills collection.
Overview
awesome-agentic-ai-zh is a comprehensive, structured learning roadmap for AI Agent development that takes you from LLM basics to building multi-agent systems. It provides:
- Two learning tracks: Track A (CLI Power User) and Track B (Agent Builder)
- 8 core stages with 145+ curated projects and resources
- 27 hands-on exercises with working code examples
- Bilingual content (Traditional Chinese, Simplified Chinese, English)
- 5 specialized branches for researchers, developers, teachers, knowledge workers, and everyday users
The project is particularly valuable for understanding the Claude Code ecosystem (MCP, Skills, Plugins, Subagents) and modern agent interfaces (Computer Use, Browser Use, Code Sandbox).
Installation & Setup
git clone https://github.com/WenyuChiou/awesome-agentic-ai-zh.git
cd awesome-agentic-ai-zh
For complete setup (first-time learners):
cat resources/setup-guide.md
python --version
pip install anthropic openai langchain chromadb
Learning Path Structure
Shared Foundation (Stage 0-2)
Stage 0: Foundations (stages/00-foundations.md)
- Python, CLI, git, API basics, JSON
- Duration: 1-2 weeks
Stage 1: LLM Basics (stages/01-llm-basics.md)
- Token concepts, API usage, LLM comparison, local LLM (Ollama)
- Duration: 1 week
Stage 2: Prompt Engineering (stages/02-prompt-engineering.md)
- System prompts, few-shot learning, Chain-of-Thought
- Duration: 1-2 weeks
Track A: CLI Power User
cat tracks/cli/A1-cli-intro.md
cat tracks/cli/A2-cli-workflow.md
cat tracks/cli/A3-cli-production.md
cat resources/cli-agents-guide.md
Total duration: 8-10 weeks (including shared foundation)
Track B: Agent Builder
cat stages/03-tool-use-and-hello-agent.md
cat stages/04-agent-frameworks.md
cat stages/05-claude-code-ecosystem.md
cat stages/06-memory-rag.md
cat stages/07-multi-agent-production.md
cat stages/07.5-advanced-agentic-concepts.md
cat stages/08-agent-interfaces.md
Total duration: 16-22 weeks minimum, 5-7 months realistically (5-8 hrs/week)
Key Commands & Navigation
Finding Resources
ls stages/
cat resources/glossary.md
cat resources/cli-agents-guide.md
ls exercises/stage-*/
Running Exercises
Each stage has 1-5 exercises in exercises/stage-X/:
import os
from anthropic import Anthropic
def main():
client = Anthropic(api_key=os.environ.get("ANTHROPIC_API_KEY"))
message = client.messages.create(
model="claude-3-5-sonnet-20241022",
max_tokens=1024,
messages=[
{"role": "user", "content": "Explain AI agents in one sentence."}
]
)
print(message.content[0].text)
if __name__ == "__main__":
main()
export ANTHROPIC_API_KEY="your-key-here"
python exercises/stage-1/01-first-llm-call/main.py
Dual-Path SDK Examples
Most exercises provide both Anthropic SDK and Ollama (local) implementations:
from anthropic import Anthropic
client = Anthropic(api_key=os.environ.get("ANTHROPIC_API_KEY"))
response = client.messages.create(
model="claude-3-5-sonnet-20241022",
max_tokens=1024,
messages=[{"role": "user", "content": "Hello"}]
)
import ollama
response = ollama.chat(
model="llama3.2",
messages=[{"role": "user", "content": "Hello"}]
)
Configuration Patterns
API Key Management
export ANTHROPIC_API_KEY="sk-ant-..."
export OPENAI_API_KEY="sk-..."
cat > .env << EOF
ANTHROPIC_API_KEY=sk-ant-...
OPENAI_API_KEY=sk-...
EOF
from dotenv import load_dotenv
load_dotenv()
Local LLM Setup (Ollama)
curl -fsSL https://ollama.com/install.sh | sh
ollama pull llama3.2
ollama run llama3.2 "Explain what an AI agent is"
Common Usage Patterns
Pattern 1: Following the Learning Path
cat stages/00-foundations.md
cat stages/01-llm-basics.md
cat stages/02-prompt-engineering.md
cat tracks/cli/A1-cli-intro.md
cat stages/03-tool-use-and-hello-agent.md
Pattern 2: Quick Reference for Specific Topics
cat stages/05-claude-code-ecosystem.md
cat stages/07-multi-agent-production.md
cat stages/08-agent-interfaces.md
Pattern 3: Building Your First Agent
Follow the comprehensive walkthrough:
cat walkthroughs/build-first-agent-in-7-steps.md
Example from the walkthrough (Stage 3: Tool Use):
import os
import json
from anthropic import Anthropic
def get_weather(city: str) -> dict:
"""Mock weather API - returns fake data"""
return {
"city": city,
"temperature": 22,
"condition": "sunny"
}
def main():
client = Anthropic(api_key=os.environ.get("ANTHROPIC_API_KEY"))
tools = [{
"name": "get_weather",
"description": "Get current weather for a city",
"input_schema": {
"type": "object",
"properties": {
"city": {"type": "string", "description": "City name"}
},
"required": ["city"]
}
}]
response = client.messages.create(
model="claude-3-5-sonnet-20241022",
max_tokens=1024,
tools=tools,
messages=[
{"role": "user", "content": "What's the weather in Tokyo?"}
]
)
if response.stop_reason == "tool_use":
tool_use = next(block block response.content block. == )
tool_use.name == :
result = get_weather(**tool_use.)
response = client.messages.create(
model=,
max_tokens=,
tools=tools,
messages=[
{: , : },
{: , : response.content},
{
: ,
: [{
: ,
: tool_use.,
: json.dumps(result)
}]
}
]
)
(response.content[].text)
__name__ == :
main()
Pattern 4: ReAct Agent Implementation
import os
from anthropic import Anthropic
def search_papers(query: str) -> list:
"""Mock paper search"""
return [
{"title": "Attention Is All You Need", "year": 2017},
{"title": "BERT: Pre-training of Deep Bidirectional Transformers", "year": 2018}
]
def summarize_paper(title: str) -> str:
"""Mock paper summarizer"""
return f"Summary of '{title}': A foundational paper in NLP..."
def react_loop(user_query: str, max_iterations: int = 5):
client = Anthropic(api_key=os.environ.get("ANTHROPIC_API_KEY"))
tools = [
{
"name": "search_papers",
"description": "Search academic papers by query",
"input_schema": {
"type": "object",
"properties": {
"query": {"type": "string"}
},
"required": []
}
},
{
: ,
: ,
: {
: ,
: {
: {: }
},
: []
}
}
]
messages = [{: , : user_query}]
i (max_iterations):
response = client.messages.create(
model=,
max_tokens=,
tools=tools,
messages=messages
)
messages.append({: , : response.content})
response.stop_reason == :
response.content[].text
tool_results = []
block response.content:
block. == :
block.name == :
result = search_papers(**block.)
block.name == :
result = summarize_paper(**block.)
tool_results.append({
: ,
: block.,
: (result)
})
messages.append({: , : tool_results})
result = react_loop()
(result)
MCP (Model Context Protocol) Integration
Stage 5 covers the Claude Code ecosystem. Key MCP concepts:
from mcp.server import Server
from mcp.types import Tool, TextContent
app = Server("my-mcp-server")
@app.tool()
async def get_document(doc_id: str) -> str:
"""Fetch document by ID"""
return f"Document content for {doc_id}"
@app.tool()
async def search_database(query: str) -> list:
"""Search internal database"""
return [{"id": "1", "title": "Result"}]
Using MCP with Claude Desktop
{
"mcpServers": {
"my-server": {
"command": "python",
"args": ["/path/to/your/mcp_server.py"]
}
}
}
Specialized Branches
For Researchers
cat branches/for-researcher.md
Focus: Literature review automation, paper writing assistance, multi-agent review systems
For Developers
cat branches/for-developer.md
Focus: Cursor/Aider integration, CLI delegation, code review agents
For Everyday Users
cat branches/for-everyday-users.md
Focus: Using ChatGPT/Claude.ai effectively, privacy scenarios, CLI agent introduction (no coding required)
Troubleshooting
Common Issues
Issue: "API key not found"
echo $ANTHROPIC_API_KEY
export ANTHROPIC_API_KEY="sk-ant-..."
Issue: "Module not found"
pip install anthropic
pip install -r requirements.txt
Issue: "Ollama connection refused"
curl http://localhost:11434/api/tags
ollama serve
Issue: "Which stage should I start from?"
- Have Python/git basics? → Start Stage 1
- Complete beginner? → Start Stage 0
- Want to use CLI agents without coding? → Go directly to Track A (A1-cli-intro.md)
Stage-Specific Help
cat resources/glossary.md
cat resources/setup-guide.md
cat resources/cli-agents-guide.md
Best Practices
- Follow the path sequentially — Each stage builds on previous knowledge
- Complete the exercises — 27 hands-on exercises are designed for learning by doing
- Use dual-path approach — Try both cloud APIs (Anthropic/OpenAI) and local models (Ollama)
- Check the glossary —
resources/glossary.md has all terminology in Chinese + English
- Join the community — The project welcomes contributions and questions
- Set realistic expectations — Track B takes 5-7 months part-time; Track A takes 8-10 weeks
Example: Complete Agent Build
See walkthroughs/build-first-agent-in-7-steps.md for a 350-line Paper Summary Bot that evolves from Stage 1 to Stage 7, demonstrating:
- LLM API basics (Stage 1)
- Prompt engineering (Stage 2)
- Tool use and ReAct (Stage 3)
- Framework integration with LangGraph (Stage 4)
- Memory and RAG (Stage 6)
- Multi-agent orchestration (Stage 7)
Additional Resources
cat resources/glossary.md
ls resources/diagrams/
cat resources/setup-guide.md
Project Metadata