AI-powered mentor extension for Goose that transforms automation into guided learning
Project description
Goose Mentor Mode 🎓
AI-powered mentor extension for Goose that transforms development assistance from automation into guided learning experiences using the Model Context Protocol (MCP).
🚀 Features
- Adaptive Learning Assistance: Four assistance levels (GUIDED, EXPLAINED, ASSISTED, AUTOMATED)
- Socratic Questioning: Helps users discover solutions through guided questions
- Learning Opportunity Detection: Automatically identifies educational moments
- Progress Tracking: Monitors learning progress and provides recommendations
- Environment Configuration: Easy setup through environment variables
- MCP Integration: Modern Model Context Protocol extension for Goose Desktop
🎉 Now Available on PyPI!
Goose Mentor Mode is officially published and available to the entire Python community! Install it with a single command and start transforming your AI assistance from automation to education.
📦 Installation
Goose Mentor Mode is an MCP (Model Context Protocol) extension for Goose Desktop. It runs as a server that Goose communicates with to provide mentoring capabilities.
🚀 Quick Install via Goose Desktop (Recommended)
No manual installation required! Goose Desktop will automatically install the package when you add it as an extension.
- Open Goose Desktop
- Click on Extensions menu
- Select Add Custom Extension
- Fill in the extension details:
- Extension Name:
Goose Mentor Mode - Type:
STDIO - Description:
Goose Mentor Mode makes your goose a Mentor that helps you learn as you work together! - Command:
uvx goose-mentor-mode
- Extension Name:
- Click Add Extension
- The extension will be automatically installed and ready to use!
📦 PyPI Package
- PyPI: https://pypi.org/project/goose-mentor-mode/
- Latest Version:
🛠️ Manual Installation (Development)
For development or manual setup:
# Clone and install for development
git clone https://github.com/joeeuston-dev/goose-mentor-mode.git
cd goose-mentor-mode
uv sync
# Build and test locally
uv build
uvx --from ./dist/goose_mentor_mode-*.whl goose-mentor-mode --help
⚙️ Configuration
Environment Variables (Optional)
Customize behavior using environment variables:
# Core Configuration
DEFAULT_ASSISTANCE_LEVEL=guided # guided|explained|assisted|automated
LEARNING_PHASE=skill_building # onboarding|skill_building|production
TIMELINE_PRESSURE=low # low|medium|high
ENABLE_VALIDATION_CHECKPOINTS=true # Enable learning validation
MAX_GUIDANCE_DEPTH=3 # Depth of Socratic questioning
DEVELOPER_EXPERIENCE_MONTHS=6 # Developer experience level
Environment Variable Configuration in Goose Desktop:
- Go to Settings → Profiles → [Your Profile]
- Add environment variables in the Environment section
- Save and restart Goose Desktop
📖 For detailed usage examples and scenarios, see USAGE_EXAMPLES.md
🎯 For complete Goose Desktop setup instructions, see GOOSE_DESKTOP_CONFIG.md
🎯 Assistance Levels
🧭 GUIDED Mode
- Purpose: Learning through discovery
- Approach: Socratic questioning and guided exploration
- Best For: New concepts, skill building, deep understanding
- Example: "What do you think JWT stands for? How might stateless authentication work?"
📚 EXPLAINED Mode
- Purpose: Education with solutions
- Approach: Detailed explanations with implementation
- Best For: Time-sensitive tasks with learning value
- Example: "Here's how JWT works... [detailed explanation] + working code"
🤝 ASSISTED Mode
- Purpose: Quick help with learning opportunities
- Approach: Direct help with educational context
- Best For: Experienced developers needing quick assistance
- Example: "Use this JWT library. Key security considerations: [brief points]"
⚡ AUTOMATED Mode
- Purpose: Direct task completion
- Approach: Efficient solutions without educational overhead
- Best For: Production pressure, repeated tasks
- Example: "Here's the complete JWT implementation."
🛠️ MCP Tools
The extension provides four core MCP tools that work seamlessly with Goose:
mentor_analyze_request
Analyzes user requests for learning opportunities and recommends assistance levels.
Parameters:
request: The user's request or questioncontext: Optional context about the current task or project
mentor_learning_check
Validates understanding through Socratic questioning and provides learning feedback.
Parameters:
concept: The concept or topic to validate understanding foruser_response: User's response to previous questions (optional)assistance_level: Level of assistance (guided, explained, assisted, automated)
mentor_track_progress
Tracks learning progress and provides recommendations for continued development.
Parameters:
topic: The learning topic or subject areainteraction_data: Data about the learning interactionsession_id: Optional session identifier for progress tracking
mentor_suggest_assistance_level
Suggests the optimal assistance level based on request complexity and user profile.
Parameters:
request: The user's request or taskuser_profile: Optional user profile informationcontext: Optional context about the current situation
Note: These tools are automatically available in Goose once the extension is installed. Goose will intelligently use them based on your interactions to provide mentoring assistance.
🎓 Educational Philosophy
Mentor Mode transforms AI assistance from automation to education:
- Discovery Over Delivery: Help users understand why, not just how
- Adaptive Learning: Adjusts approach based on experience and context
- Progressive Complexity: Builds understanding layer by layer
- Retention Focus: Emphasizes learning that sticks
🔧 Developer Profiles
New Developer (0-6 months)
DEFAULT_ASSISTANCE_LEVEL=guided
LEARNING_PHASE=onboarding
TIMELINE_PRESSURE=low
ENABLE_VALIDATION_CHECKPOINTS=true
Developing Skills (6-24 months)
DEFAULT_ASSISTANCE_LEVEL=explained
LEARNING_PHASE=skill_building
TIMELINE_PRESSURE=medium
ENABLE_VALIDATION_CHECKPOINTS=true
Experienced Developer (24+ months)
DEFAULT_ASSISTANCE_LEVEL=assisted
LEARNING_PHASE=production
TIMELINE_PRESSURE=medium
ENABLE_VALIDATION_CHECKPOINTS=false
🧪 Testing
# Run all tests
uv run pytest
# Run with coverage
uv run pytest --cov=goose_mentor_mode
# Run specific test
uv run pytest tests/test_mentor_toolkit.py::TestMentorToolkit::test_mentor_analyze_request
🤝 Contributing
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Make your changes
- Add tests for new functionality
- Run tests (
uv run pytest) - Commit your changes (
git commit -m 'Add amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
📝 License
This project is licensed under the MIT License - see the LICENSE file for details.
🙏 Acknowledgments
- Built for the Goose AI Assistant
- Inspired by Socratic teaching methods
- Designed for developers who value learning
📞 Support
- Issues: GitHub Issues
- Documentation: GitHub Wiki
- Discussions: GitHub Discussions
Transform your AI assistance from automation to education with Goose Mentor Mode! 🎓✨
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file goose_mentor_mode-0.1.6.tar.gz.
File metadata
- Download URL: goose_mentor_mode-0.1.6.tar.gz
- Upload date:
- Size: 15.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.11.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
9c20557d9a35cead9c894b67a2e57c567668f8b85a6b4989aa312beec094d30d
|
|
| MD5 |
c655d1b446dd66ff093f96cd09ad0019
|
|
| BLAKE2b-256 |
321b03e5dfa6ffefc0a1df49daa44069c8ea89103edfe777e3e52c252b5b9fcd
|
File details
Details for the file goose_mentor_mode-0.1.6-py3-none-any.whl.
File metadata
- Download URL: goose_mentor_mode-0.1.6-py3-none-any.whl
- Upload date:
- Size: 17.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.11.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8250a014907eb73e859c4789163092a2a2e8ae3bc67dbd98959deb6ca168e94d
|
|
| MD5 |
1e98d6d2bd6827c8df3fbe6adca6c122
|
|
| BLAKE2b-256 |
bcf126f5d547eb6e453c082d83b266a762d62ed952228fa5fdbc9eb79012f091
|