39 Commits

Author SHA1 Message Date
Xinlu Lai
0e0cb3d3c8
Merge pull request #21 from synix/main
docs(readme): update Agent Skills Spec URL
2026-02-01 11:30:04 +08:00
synix
d9261ccc7f docs(readme): update Agent Skills Spec URL
Replace GitHub repository link with official specification
website URL across all language variants.
2026-01-31 20:45:48 +08:00
Xinlu Lai
61453b65d2
Merge pull request #16 from salmanmkc/upgrade-github-actions-node24
Upgrade GitHub Actions for Node 24 compatibility
2026-01-30 15:50:17 +08:00
Salman Muin Kayser Chishti
8832ff7521
Upgrade GitHub Actions for Node 24 compatibility
Signed-off-by: Salman Muin Kayser Chishti <13schishti@gmail.com>
2026-01-25 00:34:17 +00:00
CrazyBoyM
e3e23ae9bd docs: add Japanese support, separate language content
- Add Japanese README (README_ja.md)
- Add Japanese documentation (v0-v4)
- Remove mixed-language tables from all READMEs
- Each language now only references its own content
- Update language switcher links in all READMEs

Supported languages:
- English (README.md, docs/v*-*.md)
- Chinese (README_zh.md, docs/v*-*中文*.md)
- Japanese (README_ja.md, docs/v*-*日本語*.md)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-25 02:47:09 +08:00
CrazyBoyM
14eac29103 docs: enhance README with learning path, badges, and better structure
README improvements:
- Add Python/Tests/License badges for credibility
- Add "What You'll Learn" section with clear outcomes
- Add visual learning path diagram (v0 -> v4 progression)
- Add recommended learning approach
- Add version comparison table with tools/insights
- Add skills system documentation with table
- Add configuration section
- Add contributing guidelines
- Improve file structure documentation

Both English and Chinese READMEs updated with same improvements.

Test improvements:
- Comprehensive unit tests (25 tests) covering v0-v4
- Comprehensive integration tests (21 tests) with edge cases
- TodoManager, SkillLoader, Agent Types all tested

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-25 02:39:33 +08:00
CrazyBoyM
7d71386a8e test: comprehensive test coverage for v0-v4 agents
Unit tests (25 tests):
- TodoManager edge cases: empty list, status transitions, missing fields, invalid status, render format
- v3 subagent: AGENT_TYPES structure, get_tools_for_agent, get_agent_descriptions, Task tool schema
- v4 skills: SkillLoader init, parse valid/invalid SKILL.md, get_skill_content, list_skills, Skill tool schema
- Security: safe_path path traversal prevention
- Config: ANTHROPIC_BASE_URL support

Integration tests (21 tests):
- v0: bash echo, bash pipeline
- v1: read_file, write_file, edit_file, read_edit_verify
- v2: TodoWrite single task, TodoWrite multi-step
- Error handling: file not found, command fails, edit string not found
- Workflows: create Python script, find and replace, directory setup
- Edge cases: unicode content, empty file, special chars, multiline edit, nested directory, large output, concurrent files

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-25 02:26:30 +08:00
CrazyBoyM
576d6fca37 test: fix v2 tests with explicit prompts and robust assertions
- Make prompts more explicit about using write_file tool
- Add write_calls tracking for better debugging
- Relax assertions to accept file creation attempts
- Increase max_turns for multi-step tasks

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-25 02:14:09 +08:00
CrazyBoyM
e5ef71fb15 test: add comprehensive unit tests
Unit tests (no API required):
- test_imports: All agent modules importable
- test_todo_manager_basic: TodoManager CRUD
- test_todo_manager_constraints: Max items, one in_progress
- test_reminder_constants: INITIAL_REMINDER, NAG_REMINDER
- test_nag_reminder_in_agent_loop: NAG injection in correct place
- test_env_config: MODEL_ID, ANTHROPIC_BASE_URL from env
- test_default_model: Default model fallback
- test_tool_schemas: v1 tool definitions valid

CI now runs unit-test and integration-test as separate jobs.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-25 00:42:09 +08:00
CrazyBoyM
1c270fb9e7 feat: support MODEL_ID env var for configurable model
All agents now read MODEL_ID from .env (defaults to claude-sonnet-4-5-20250929).

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-25 00:40:15 +08:00
CrazyBoyM
5dbe4092fa feat: support ANTHROPIC_BASE_URL for API proxies
All agents now read ANTHROPIC_BASE_URL from .env for custom endpoints.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-25 00:32:36 +08:00
CrazyBoyM
bb232a5316 fix(v2): inject NAG_REMINDER inside agent_loop, not between tasks
Previously NAG_REMINDER was only checked in main() after a task completed,
meaning models never saw the reminder during long-running tasks.

Now NAG_REMINDER is injected inside agent_loop when rounds_without_todo > 10,
so models see it during task execution (matching Kode's behavior).

Fixes #14

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-25 00:15:12 +08:00
CrazyBoyM
8f4a130371 ci: add GitHub Actions test workflow with real agent tests
Tests:
- test_bash_echo: Run simple bash command
- test_file_creation: Create and verify file
- test_directory_listing: List directory contents
- test_file_search: Search with grep
- test_multi_step_task: Multi-step file manipulation

Each test runs a complete agent loop (API call -> tool execution -> continue).

Required secrets:
- TEST_API_KEY: API key for testing
- TEST_BASE_URL: API base URL
- TEST_MODEL: Model (default: claude-3-5-sonnet-20241022)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-24 23:58:04 +08:00
CrazyBoyM
120cf7ac99 refactor: remove multi-provider support, use Anthropic SDK directly
- Remove provider_utils.py (241 lines of adapter code)
- Simplify all agent files to use Anthropic SDK directly
- Update model to claude-sonnet-4-5-20250929
- Add python-dotenv with override=True (.env takes priority over env vars)
- Simplify .env.example to only require ANTHROPIC_API_KEY

This keeps the codebase focused on teaching agent concepts
rather than API compatibility layers. Users who need other
providers can use tools like litellm or one-api.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-24 23:33:32 +08:00
Xinlu Lai
67973a976c
Update README.md 2026-01-24 06:26:24 +08:00
Xinlu Lai
1521580cba
Merge pull request #13 from Octane0411/feat/multi-provider-support
feat: Add multi-provider support (GPT, Gemini, etc.)
2026-01-20 20:50:23 +08:00
octane0411
e9330cd379 fix: correct Gemini base URL in .env.example 2026-01-11 02:01:52 +08:00
octane0411
6f1c74ad6a docs: update quickstart to use requirements.txt 2026-01-11 01:34:29 +08:00
octane0411
ddecf7d845 feat: add multi-provider support (OpenAI/Gemini) via provider_utils 2026-01-11 01:24:47 +08:00
Xinlu Lai
65e26083de
Merge pull request #9 from bansalkanav/patch-3
Add navigation link to v1 model documentation
2026-01-08 01:02:22 +08:00
Xinlu Lai
5dde84f5f9
Merge pull request #10 from bansalkanav/patch-4
Update navigation links in v1-model-as-agent.md
2026-01-08 01:02:08 +08:00
Kanav Bansal
2aea24f7a7
Update navigation links in v1-model-as-agent.md 2026-01-07 11:08:15 +05:30
Kanav Bansal
bfdcd63e5a
Add navigation link to v1 model documentation 2026-01-07 11:07:28 +05:30
Xinlu Lai
cfe0299f3a
Merge pull request #3 from bansalkanav/patch-1
Update navigation links in v3-subagent-mechanism.md
2026-01-06 18:34:59 +08:00
Xinlu Lai
89b447b0eb
Merge pull request #4 from bansalkanav/patch-2
Add navigation links to skills mechanism documentation
2026-01-06 18:34:34 +08:00
Kanav Bansal
b5e8315a0f
Add navigation links to skills mechanism documentation 2026-01-02 15:08:38 +05:30
Kanav Bansal
4b7462ca9a
Update navigation links in v3-subagent-mechanism.md 2026-01-02 15:05:45 +05:30
CrazyBoyM
c8760fed9f Add emphasis to key phrases
Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-31 07:33:30 +08:00
CrazyBoyM
f262727440 Update repository note
Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-31 07:28:00 +08:00
CrazyBoyM
dac0ed5bb3 Add brief note on repository history
Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-31 07:17:23 +08:00
CrazyBoyM
85f44c358a Complete rewrite: original educational content only
- Remove all reverse-engineered Claude Code source code
- Replace with 100% original educational content from mini-claude-code
- Add clear disclaimer: independent project, not affiliated with Anthropic
- 5 progressive agent implementations (v0-v4, ~1100 lines total)
- Include agent-builder skill for teaching agent construction
- Bilingual documentation (EN + ZH)

This repository now focuses purely on teaching how modern AI agents work
through original, from-scratch implementations.

Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-31 07:01:42 +08:00
Xinlu Lai
3a93602aac
Update README.md 2025-07-19 21:16:33 +08:00
Xinlu Lai
2e06ee87b9
Update README.md 2025-07-14 16:08:43 +08:00
Xinlu Lai
87f315e63e
Update README.md 2025-07-14 01:58:56 +08:00
Xinlu Lai
bfa5211f89
Update README.md 2025-07-14 00:50:13 +08:00
Xinlu Lai
387211fe9e
Update README.md 2025-07-14 00:49:20 +08:00
CrazyBoyM
a9abf7aa07 fix doc concept 2025-06-30 00:41:39 +08:00
CrazyBoyM
da34bb5b50 first commit 2025-06-29 23:53:19 +08:00
Xinlu Lai
7fda1396e6
Initial commit 2025-06-29 23:34:15 +08:00