hardness1020
369b598af7
fix(s06): move extract_text() next to its only caller
...
extract_text() is new in s06 (listed in the docstring under "Changes
from s05") but was defined under the "FROM s02-s05 (unchanged)" banner.
Move it into the "NEW in s06: Subagent" section, directly above its only
caller spawn_subagent(). Pure move, no logic change.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com >
2026-05-28 16:53:26 -07:00
Yang Haoran
c586792bbb
Merge pull request #312 from Gui-Yue/fix/s09-memory-turn-context
...
fix: inject s09 memories as turn context
2026-05-26 14:56:49 +08:00
gui-yue
6acbf6add1
Merge pull request #310 from shareAI-lab/codex/web-s01-s20-curriculum
...
fix: prevent course SVG text overflow
2026-05-26 14:30:14 +08:00
Gui-Yue
c396d59f03
fix: inject s09 memories as turn context
2026-05-26 06:18:13 +00:00
Haoran
4d12ca93de
fix: prevent course svg text overflow
2026-05-26 11:17:58 +08:00
Yang Haoran
8a20e2566b
Merge pull request #307 from shareAI-lab/codex/web-s01-s20-curriculum
...
Complete web curriculum visuals and interactions
2026-05-25 22:41:30 +08:00
Haoran
fdd7d2a851
feat: complete web curriculum visuals
2026-05-25 22:38:02 +08:00
gui-yue
956d8272ce
Merge pull request #301 from WorkHaH/fix-s02-output-decoding
...
Fixed the child process output decoding issue in the s02 tool call.
2026-05-25 18:26:15 +08:00
WorkHaH
de4f09b12b
Fix subprocess output decoding in s02
2026-05-25 14:35:32 +08:00
gui-yue
dc816a843c
Merge pull request #297 from Gui-Yue/chore/update-agent-formula-main
...
docs: refine one statement
2026-05-24 23:39:38 +08:00
gui-yue
0d7fd028b4
Merge pull request #294 from Gui-Yue/todo-task-fix
...
fix: align TodoWrite memory model with task system docs
2026-05-24 23:39:16 +08:00
gui-yue
0e8ac5aa2d
Merge pull request #303 from Gui-Yue/fix/s11-print-full-continuation
...
fix: print full s11&s20 continuation output
2026-05-24 23:35:47 +08:00
Gui-Yue
a510aef5da
fix: print full s11 continuation output
2026-05-24 15:34:14 +00:00
Gui-Yue
824f7f737d
docs: refine Chinese harness formula wording
2026-05-22 16:11:17 +00:00
gui-yue
06ac34ed4d
Merge pull request #287 from 123456wda/fix/s06-compact-focus-param
...
fix(s06): wire compact tool's focus parameter into auto_compact
2026-05-22 22:31:20 +08:00
Gui-Yue
6d48bc978b
fix: align TodoWrite memory model with task system docs
2026-05-21 23:55:00 +08:00
gui-yue
1baf1aca5a
Follow up PR #265 : refine chapters, diagrams, and add S20 ( #283 )
...
* feat: s01-s14 docs quality overhaul — tool pipeline, single-agent, knowledge & resilience
Rewrite code.py and README (zh/en/ja) for s01-s14, each chapter building
incrementally on the previous. Key fixes across chapters:
- s01-s04: agent loop, tool dispatch, permission pipeline, hooks
- s05-s08: todo write, subagent, skill loading, context compact
- s09-s11: memory system, system prompt assembly, error recovery
- s12-s14: task graph, background tasks, cron scheduler
All chapters CC source-verified. Code inherits fixes forward (PROMPT_SECTIONS,
json.dumps cache, real-state context, can_start dep protection, etc.).
* feat: s15-s19 docs quality overhaul — multi-agent platform: teams, protocols, autonomy, worktree, MCP tools
Rewrite code.py and README (zh/en/ja) for s15-s19, the multi-agent platform
chapters. Each chapter inherits all previous fixes and adds one mechanism:
- s15: agent teams (TeamCreate, teammate threads, shared task list)
- s16: team protocols (plan approval, shutdown handshake, consume_inbox)
- s17: autonomous agents (idle polling, auto-claim, consume_lead_inbox)
- s18: worktree isolation (git worktree, bind_task, cwd switching, safety)
- s19: MCP tools (MCPClient, normalize_mcp_name, assemble_tool_pool, no cache)
All appendix source code references verified against CC source. Config priority
corrected: claude.ai < plugin < user < project < local.
* fix: 5 regressions across s05-s19 — glob safety, todo validation, memory extraction, protocol types, dep crash
- s05-s09: glob results now filter with is_relative_to(WORKDIR) (inherited from s02)
- s06-s08: todo_write validates content/status required fields (inherited from s05)
- s09: extract_memories uses pre-compression snapshot instead of compacted messages
- s16: submit_plan docstring clarifies protocol-only (not code-level gate)
- s17-s19: match_response restores type mismatch validation (from s16)
- s17-s19: claim_task deps list handles missing dep files without crashing
* fix: s12 Todo V2 logic reversal, s14/s15 cron range validation, s18/s19 worktree name validation
- s12 README (zh/en/ja): fix Todo V2 direction — interactive defaults to Task,
non-interactive/SDK defaults to TodoWrite. Fix env var name to
CLAUDE_CODE_ENABLE_TASKS (not TODO_V2).
- s14/s15: add _validate_cron_field with per-field range checks (minute 0-59,
hour 0-23, dom 1-31, month 1-12, dow 0-6), step > 0, range lo <= hi.
Replace old try/except validation that only caught exceptions.
- s18/s19: add validate_worktree_name() to remove_worktree and keep_worktree,
not just create_worktree.
* fix: align s16-s19 teaching tool consistency
* fix pr265 chapter diagrams
* Add comprehensive s20 harness chapter
* Fix chapter smoke test regressions
* Clarify README tutorial track transition
---------
Co-authored-by: Haoran <bill-billion@outlook.com >
2026-05-20 21:45:38 +08:00
123456wda
c171f8a545
fix(s06): wire compact tool's focus parameter into auto_compact
...
The compact tool schema declares a "focus" parameter ("What to preserve
in the summary") but the handler ignored it entirely -- the parameter
was never passed to auto_compact(). Now the focus value is captured from
block.input and included in the summarization prompt so the LLM knows
what details to prioritize when compressing the conversation.
2026-05-15 10:59:51 +08:00
Xinlu Lai
c354cf7721
Update README.md
2026-05-11 22:25:37 +08:00
CrazyBoyM
4b95969a03
refine: separate agency origin from agent product definition in READMEs
...
Resolves the contradiction between "Agent is the model" and
"Model is the driver, Harness is the vehicle". All three language
versions now clearly distinguish: agency comes from training,
but a working agent product = model + harness.
2026-04-15 00:58:19 +08:00
CrazyBoyM
8bad6eb73f
refine: separate agency origin from agent product definition in README-zh
...
Adjust the philosophical framing to resolve the contradiction between
"Agent is the model" and "Model is the driver, Harness is the vehicle".
Now clearly distinguishes: agency comes from training (not coded),
but a working agent product = model + harness.
2026-04-15 00:56:37 +08:00
chenyizhongx
d882d01e07
fix(web): remove duplicate "Execution Flow" heading in Deep Dive (#151 )
2026-04-01 21:00:52 +08:00
Zhang
6511c98631
Fix unhandled OSError in subprocess and unsafe dict access in subagent ( #159 )
...
- agents/s01_agent_loop.py: Add FileNotFoundError/OSError handling in run_bash()
- agents/s04_subagent.py: Same fix + use .get() for block.input['prompt']
(consistent with .get() already used for 'description' on line 157)
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-04-01 21:00:47 +08:00
jigelang
117e59c541
fix s06:some model textblock may not be the first element ( #156 )
...
Co-authored-by: liuyuchao.tick <liuyuchao.tick@bytedance.com >
2026-04-01 21:00:25 +08:00
comey246
92b50e5cd2
Fix typo in zh/s04-subagent.md ( #163 )
...
"胖" just means fat, "臃肿" means size and content very much
2026-04-01 20:59:52 +08:00
CrazyBoyM
16b927c8ee
Fix s_full.py consistency: auto_compact keeps newest messages, nag reminder appends after tool_results
...
Two issues found during post-merge audit:
1. auto_compact used [:80000] (oldest) instead of [-80000:] (newest), inconsistent with s06
2. nag reminder used insert(0,...) instead of append(), inconsistent with s03
2026-03-30 00:09:37 +08:00
CrazyBoyM
def7c9a03e
Preserve read_file results during micro_compact (PR #72 )
...
Skip compacting read_file tool outputs since they are reference material.
Compacting them into placeholders forces the agent to re-read the same
files, creating loops. Other tool results are still compacted normally.
2026-03-30 00:06:02 +08:00
Xinlu Lai
e4edd82c8c
Merge pull request #88 from wbxl2000/main
...
优化中文翻译: 保留英文专有名词
2026-03-30 00:04:18 +08:00
Xinlu Lai
21bc06153f
Merge pull request #83 from QuentinHsu/fix/web-theme-mount-sync
...
fix(header): sync theme icon state after mount
2026-03-30 00:04:13 +08:00
CrazyBoyM
40f5a6ecc9
Merge pull request #123 : prevent task claiming race condition in s11
...
Add double-checked validation inside _claim_lock: verify task owner,
status, and blockedBy before claiming. Check claim_task return value
in idle loop to skip failed claims.
2026-03-29 23:57:14 +08:00
CrazyBoyM
5f2b0f205e
Simplify task graph to single-source blockedBy (PR #127 )
...
Remove unused blocks field and add_blocks parameter. The LLM never
used add_blocks in practice, making it dead code that taught a
misleading bidirectional pattern. Replace with remove_blocked_by
for dependency rewiring. Single-source-of-truth with blockedBy only.
2026-03-29 23:56:39 +08:00
CrazyBoyM
5c7b873d3b
Merge pull request #118 from deanbear/fix-auto-compact-400
...
fix: remove hardcoded assistant ack after auto_compact to fix 400
2026-03-29 23:52:02 +08:00
Xinlu Lai
61eb6ee87b
Merge pull request #85 from folook/fix/task_system_one_way_synchronization
...
fix(task-system): sync blocks when adding blockedBy dependencies
2026-03-29 23:49:15 +08:00
Xinlu Lai
6ac84e96a7
Merge pull request #110 from Zheisenbergy/Zheisenbergy-patch-1
...
fix: fix auto_compact truncating latest conversation content
2026-03-29 23:49:11 +08:00
CrazyBoyM
10d90cdcc6
Separate tool name from output across all agent sessions (s03-s_full)
...
Extends the readability fix from PR #128 (s02) to all remaining sessions.
Tool name and output are now on separate lines, consistent with s01's
existing pattern and improving readability for multi-line tool output.
2026-03-29 23:27:41 +08:00
CrazyBoyM
a66558a8df
Reapply "Merge pull request #128 from jimpablo/improve-output-format"
...
This reverts commit a879813eac .
2026-03-29 23:26:49 +08:00
CrazyBoyM
a879813eac
Revert "Merge pull request #128 from jimpablo/improve-output-format"
...
This reverts commit 86f7ac1410 , reversing
changes made to 3b9b87f027 .
2026-03-29 23:17:45 +08:00
Xinlu Lai
de2f03acec
Merge pull request #77 from Gujiassh/fix/s-full-follow-up
...
Fix running background status in s_full
2026-03-29 23:06:41 +08:00
Xinlu Lai
1e85c99a6f
Merge pull request #145 from Gujiassh/fix/python-smoke-tests
...
test: replace stale Python checks with smoke tests
2026-03-29 23:06:38 +08:00
Xinlu Lai
75d2066ecc
Merge pull request #135 from meowsaic/main
...
Fix: s_full.py print text responses in __main__ REPL loop
2026-03-29 23:06:35 +08:00
Xinlu Lai
a9dabf5e70
Merge pull request #122 from chablino/fix-S07
...
Fix: Sort task JSON files numerically instead of lexicographically
2026-03-29 23:06:31 +08:00
Xinlu Lai
a400a5b081
Merge pull request #133 from bluzername/fix/task-json-non-ascii
...
fix: keep non-ASCII text readable in task JSON files
2026-03-29 23:06:18 +08:00
Xinlu Lai
86f7ac1410
Merge pull request #128 from jimpablo/improve-output-format
...
Improve tool output readability
2026-03-29 23:06:15 +08:00
Xinlu Lai
3b9b87f027
Merge pull request #69 from w4n9hu1/main
...
fix(i18n): correct Chinese label for memory layer — 内存管理 → 记忆管理
2026-03-29 23:06:12 +08:00
Xinlu Lai
79f8729c50
Merge pull request #97 from Jah-yee/main
...
fix: correct WeChat capitalization in README
2026-03-29 23:06:09 +08:00
Xinlu Lai
3b68272933
Merge pull request #140 from 1thanMoon/fix/s05-frontmatter-multiline-yaml
...
fix: skill description not fully loaded from SKILL.md frontmatter
2026-03-29 22:49:22 +08:00
alsaberi
7eca7bc3db
fix: append nag reminder instead of inserting at front ( #142 )
...
The reminder was inserted at index 0, placing a text block before
tool_result blocks in the user message content array. Use append
to keep the reminder at the end, consistent with message ordering.
Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-29 22:45:47 +08:00
toxic
0cb6f85805
fix : #143 UTF-8 backspace fix for macOS libedit ( #144 )
2026-03-29 22:44:36 +08:00
Gujiassh
bfac5b9b88
Add Python smoke tests
2026-03-29 17:57:57 +09:00
Moon
93ccf2a2ac
fix: parse multi-line YAML block scalars in frontmatter
...
_parse_frontmatter used manual line splitting which only handled
simple key: value pairs. Multi-line block scalars (|) returned
only '|' as the value, dropping all subsequent indented lines.
Replace with yaml.safe_load() to correctly parse all YAML syntax.
Add pyyaml>=6.0 to requirements.txt.
2026-03-28 21:37:22 +08:00