feat(skills): Add deep-tutor builtin skill inspired by PR #504 #620
+418
−1
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Summary
Converts the DeepTutor-inspired structural improvements from PR #504 into a builtin skill called
deep-tutor. This allows users to opt-in to these disciplined workflow patterns when needed, rather than changing Sisyphus's default behavior.Original Inspiration: DeepTutor Repository
Repository: https://github.com/HKUDS/DeepTutor
DeepTutor is an AI-powered personalized learning assistant with sophisticated multi-agent architecture that coordinates specialized agents (RephraseAgent, DecomposeAgent, ManagerAgent, ResearchAgent, NoteAgent, ReportingAgent) across three phases: Planning → Researching → Reporting.
The Five Patterns Adapted from DeepTutor
1. Phase-Based Tool Selection Strategy
DeepTutor Source:
research_agent.py#L113-L189DeepTutor's
_generate_tool_phase_guidance()creates explicit phase-based tool selection:rag_hybrid,rag_naive)paper_search,web_search)run_code)Our Adaptation: Tool Selection Strategy by Phase
With tool cost awareness: FREE → CHEAP → EXPENSIVE
2. Sufficiency Check Gate
DeepTutor Source:
research_agent.py#L318-L371DeepTutor's
check_sufficiency()evaluates knowledge sufficiency before proceeding to next phase.Our Adaptation: 5-checkpoint validation before implementation:
Requires 80% pass rate to proceed.
3. Iteration Limits (Per-Task Guardrails)
DeepTutor Source:
research_agent.py#L38-L42DeepTutor implements
max_iterationswith early termination when sufficient knowledge is gathered.Our Adaptation: Hard limits to prevent infinite loops:
4. Request Type Classification
DeepTutor Source: Multi-agent architecture with specialized roles
DeepTutor assigns different agent types based on task requirements.
Our Adaptation: Request classification matrix with Min Parallel Calls:
NOT optional - under-exploration is a failure mode.
5. Dynamic Task Queue with State Management
DeepTutor Source:
manager_agent.pyManagerAgent manages
DynamicTopicQueuewith state transitions (pending → researching → completed).Our Adaptation: Parallel execution strategy where explore/librarian agents fire simultaneously via background tasks, not sequentially.
What This Skill Provides
Users can invoke
deep-tutorskill when they need structured, disciplined execution:The skill enforces:
Design Decision
Instead of modifying Sisyphus's default behavior (which worried @code-yeongyu in PR #504), this implements these patterns as an opt-in builtin skill:
Files Changed
src/features/builtin-skills/deep-tutor/SKILL.md- Full skill template with all patterns and referencessrc/features/builtin-skills/skills.ts- Registered deep-tutor in builtin skills arrayTesting
Related
Addresses #504 (by converting to builtin skill as requested by @code-yeongyu)
Co-authored-by: @gtg7784 (Taegeon Go)
Inspired by: DeepTutor - AI-powered personalized learning assistant