Intelligent study system for Communications Systems exam preparation (UTN) Uses Claude Code subagents for derivations, problem-solving, progress tracking, and visualization
# 1. Clone the repository
git clone [your-repo] communications-learning-system
cd communications-learning-system
# 2. Install minimal dependencies
pip install -r requirements.txt
# 3. Open in Claude Code
claude-code
# 4. Start studying!
# Just ask Claude:
# "Can you derive Shannon-Hartley theorem?"
# "Can you solve this noise problem?"
# "Check my progress"An AI-powered learning system using Claude Code subagents to help you:
- π Derive formulas from first principles (any level: basic to rigorous)
- β Solve problems step-by-step with validation
- π Track progress with data-driven recommendations
- πΊοΈ Visualize concepts with interactive mind maps
- π― Prepare for exams with focused study plans
- π€ Collaborate via Git-based state management
| Subagent | Color | Purpose | Model |
|---|---|---|---|
| π formula-deriver | π£ Purple | Adaptive formula derivations (all levels) | Opus |
| β exercise-solver | π’ Green | Solve exam-style problems | Opus |
| π progress-analyzer | π‘ Amber | Progress tracking & recommendations | Sonnet |
| π― study-session-manager | π Orange | Session coordination | Sonnet |
| π anki-explainer | π΅ Blue | Detailed explanations for flashcards | Sonnet |
| πΊοΈ mindmap-generator | π΅ Cyan | Visual mind maps for concept organization | Sonnet |
Key Feature: Subagents adapt automatically - no need to choose complexity level!
Simply ask Claude naturally:
"Can you derive Friis cascade formula?"
β Invokes formula-deriver subagent
β Saves to outputs/derivations/
"Can you solve this noise problem?"
β Invokes exercise-solver subagent
β Saves to outputs/solutions/
"Check my progress"
β Invokes progress-analyzer subagent
β Generates progress report
"Can you explain my Anki flashcards on FM modulation?"
β Invokes anki-explainer subagent
β Generates detailed explanations
"Can you create a mind map of Unit 7 concepts?"
β Invokes mindmap-generator subagent
β Saves to outputs/mindmaps/
/derive Shannon-Hartley theorem
/solve docs/ejercicio_ruido.txt
/progress
/start-session rodrigo
/end-session
# Start study session
python main.py start-session --user rodrigo
# Check progress
python main.py progress
# End session
python main.py end-session --summary "Studied Unit 7"
# Git workflow
git add .
git commit -m "Session: Derived Friis formula"
git pushcommunications-learning-system/
βββ .claude/
β βββ agents/ # Subagent definitions (6 files)
β βββ commands/ # Slash commands
β βββ SUBAGENT_REFERENCE.md # Color scheme guide
βββ agents/
β βββ coordinator.py # State management (Python)
βββ state/ # Git-tracked state β
β βββ learning_state.json # Global progress
β βββ session_history.jsonl
βββ outputs/
β βββ derivations/ # Formula derivations
β βββ solutions/ # Problem solutions
β βββ mindmaps/ # Visual concept maps
βββ sessions/ # Session logs β
β βββ YYYY-MM/
βββ .doc/claude/ # Subagent working files
β βββ tasks/
β βββ reports/
βββ main.py # CLI for session management
βββ requirements.txt # Minimal dependencies
βββ SYSTEM_ARCHITECTURE.md # β Architecture details
βββ README.md # This file
- All AI work done by specialized subagents
- Automatic complexity adaptation
- No decision-making friction
- File-based output for persistence
- State lives in files, not conversation history
- Multiple users can collaborate
- Sessions are logged and shareable
- Full version control
- Subagents save work to files
- 80-90% fewer tokens than conversation-based
- Context persists across sessions
- Enables long-term projects
- Formula-deriver adjusts to topic complexity
- Session context influences approach
- Exam focus vs research depth
- Extra clarity when struggling
- SYSTEM_ARCHITECTURE.md - Complete architecture (read this!)
- .claude/SUBAGENT_REFERENCE.md - Subagent color scheme and usage
- state/learning_state_schema.json - State structure definition
python main.py start-session --user rodrigoYou: "Let's study Unit 7: Noise. Can you derive the Friis formula?"
Claude: I'll use the formula-deriver subagent...
[Creates outputs/derivations/friis_cascade_20251116.md]
You: "Now solve this noise problem"
Claude: I'll use the exercise-solver subagent...
[Creates outputs/solutions/noise_problem_20251116.md]
python main.py progress
# or in Claude Code:
/progresspython main.py end-session --summary "Completed Unit 7"
git add .
git commit -m "Session: Friis formula + noise problems"
git push- Python 3.8+
- Git
- Claude Code CLI
# Install dependencies (minimal!)
pip install -r requirements.txt
# Verify setup
python main.py info
# Initialize state (if needed)
python main.py start-session --user your-name
python main.py end-sessionThat's it! The subagents work through Claude Code automatically.
10 Units / 87 Concepts:
- IntroducciΓ³n
- AnΓ‘lisis de SeΓ±ales (Fourier, Parseval)
- ModulaciΓ³n Lineal (AM, DSB, SSB, VSB)
- ModulaciΓ³n Exponencial (FM, PM, Carson's Rule)
- ModulaciΓ³n de Pulsos (Sampling, PCM)
- ModulaciΓ³n Digital (QAM, PSK, FSK)
- Ruido (Noise Figure, Friis, SNR)
- IntercomparaciΓ³n de Sistemas
- TeorΓa de la InformaciΓ³n (Shannon-Hartley, Entropy)
- Temas Avanzados (OFDM, Spread Spectrum)
When you see colored indicators in outputs:
- π π£ Purple = Formula derivation
- β π’ Green = Problem solved
- π π‘ Amber = Progress data
- π― π Orange = Session info
- π π΅ Blue = Flashcard explanation
- πΊοΈ π΅ Cyan = Mind map visualization
See .claude/SUBAGENT_REFERENCE.md for complete color guide.
Multiple users can work on the same repo:
# User A
python main.py start-session --user alice
# ... studies ...
python main.py end-session
git commit -m "Alice: Derived Parseval theorem"
git push
# User B
git pull
python main.py start-session --user bob
# ... continues from Alice's work ...
python main.py end-session
git commit -m "Bob: Solved practice problems"
git pushState in learning_state.json is shared automatically!
The system tracks:
- Concepts mastered (87 total)
- Problems solved (150 target)
- Study hours and velocity
- Weak areas needing attention
- Days remaining to exam
Check anytime with /progress or python main.py progress
"Subagent not found":
- Check
.claude/agents/directory exists - Verify subagent files are present
"State file error":
- Run
python main.py start-session --user testto initialize - Check
state/learning_state.jsonexists
"Command not working":
- Use commands in Claude Code (recommended)
- Or use Python CLI:
python main.py <command>
$ python main.py start-session --user rodrigo
β Session started for: rodrigo
π Current Status:
- Overall progress: 8%
- Active unit: Unit 7 (Noise)
- Days to exam: 29
π‘ Recommendations:
1. Complete Unit 7 (Noise Temperature, SNR)
2. Start Unit 9 (Shannon-Hartley - critical!)
3. Daily problem practice (3-5 problems)
[In Claude Code]
You: "Derive Friis cascade formula"
β Creates outputs/derivations/friis_cascade_20251116.md
You: "Solve this noise problem: ..."
β Creates outputs/solutions/noise_problem_20251116.md
$ python main.py end-session --summary "Friis + noise practice"
β Session ended
π Session log: sessions/2025-11/2025-11-16_rodrigo_session.md
Traditional approach: Ask Claude questions, get answers in chat
This system:
- β Subagents create complete files you can review anytime
- β State persists in Git for collaboration
- β Progress is tracked automatically
- β Work is organized and searchable
- β 80-90% more token-efficient
The system emphasizes:
- First principles: Derive everything from fundamentals
- Validation: Dimensional analysis, limiting cases
- Physical intuition: Understand WHY, not just WHAT
- Exam preparation: Focus on high-value topics
- Consistent practice: Track velocity and gaps
When exam date approaches, the system:
- Prioritizes weak concepts
- Increases problem-solving focus
- Generates mock exams
- Provides realistic readiness assessment
Current exam date: 2025-12-15
This system uses Claude Code's subagent architecture for educational purposes.
Version: 2.1.0 Architecture: Subagent-First with File-Based State Last Updated: 2025-11-16
For detailed architecture information, see SYSTEM_ARCHITECTURE.md.
For subagent color scheme, see .claude/SUBAGENT_REFERENCE.md.
π Happy studying! Good luck with your exam!