Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

28 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

๐ŸŽ“ IELTS Coach

The Most Personalized IELTS Speaking & Writing AI Coach

Stars License Version Topics

An AI agent skill that interviews you first, writes in your voice,
and calibrates every sentence to official IELTS band descriptors.

๐Ÿ‡จ๐Ÿ‡ณ ็ฎ€ไฝ“ไธญๆ–‡


๐Ÿ“‘ Table of Contents


๐Ÿง  What Makes This Different

Most IELTS AI tools work like this:

User: Write me an essay about climate change.
AI:   [Generates a 250-word essay full of Firstly, Secondly, In conclusion]

IELTS Coach works like this:

Coach: Before I write anything, what is YOUR take on this topic?
       [Web form opens โ†’ you fill in your thoughts at your own pace]
Coach: Let me make sure I have this right. You believe X because of
       your experience with Y. I will build your answer around that.
User:  Yes, and also mention Z.
Coach: [Polished essay IN THE USER'S VOICE, band-calibrated, zero AI flavor]
Generic AI IELTS Coach
Personalization Vague references to some people or society Specific: When I was working at [your company]...
AI detection risk High (dashes, clichรฉs, mechanical linkers) Near-zero (natural cohesion, human voice)
Memorability Hard to remember because it is not yours Easy: it literally IS you, just polished
Scoring alignment Random Calibrated to official IELTS descriptors per band
Vision support Depends on model Works on any model (DeepSeek included) via MCP bridge
Topic discovery None Web form + structured interview, covering all 102

โœจ Features

๐ŸŒ Topic Discovery Web Form
Instead of typing answers in the CLI, a beautiful web form opens in your browser. Multi-step forms with progress indicators, image upload, and clipboard paste support. Fill in answers at your own pace, then submit with one click.
๐ŸŽฏ Progressive Topic Discovery
Not just onboarding. Every new topic triggers a structured mini-interview. The agent mines your specific memories, opinions, and experiences before writing a single word. 102 topics, 102 personalized answers.
๐Ÿ“‹ Official Band Descriptor Alignment
Writing answers calibrated against the public IELTS Writing Band Descriptors (updated May 2023). Task Response, Coherence and Cohesion, Lexical Resource, and Grammatical Range and Accuracy. All four criteria tuned to your target band.
๐Ÿšซ Anti-AI-Flavor Enforcement
Explicitly screens for and eliminates AI patterns: no em dashes, no scare quotes, no mechanical linkers like Firstly/Secondly/Finally, no This essay will discuss clichรฉs. Reads like polished human writing.
๐Ÿ‘๏ธ Vision Bridge for Non-Vision Models
Running on DeepSeek? Your agent cannot see charts. The included MCP server proxies images through Alibaba Cloud Bailian's free qwen3.7-plus model via DashScope, or any provider you choose. Agent auto-configures everything. You just provide the API key.
๐Ÿ–ผ๏ธ Beautiful HTML Output
Collapsible day cards with expand/collapse. Responsive, printable. Highlighted vocabulary, structure notes, copy buttons. Navy and gold IELTS-themed design.
๐Ÿ”„ Self-Evolving Study Plan
Reschedules missed sessions, prioritizes weak areas, tracks progress across sessions via JSON state files. 102 topics never repeat unless you ask.

๐ŸŒ Topic Discovery Web Form

The web form is the core interaction interface for Topic Discovery. Instead of answering questions one by one in the CLI, you get a beautiful, multi-step form in your browser.

How It Works

โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚  Agent generates questions                               โ”‚
โ”‚       โ”‚                                                  โ”‚
โ”‚       โ–ผ                                                  โ”‚
โ”‚  โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”                         โ”‚
โ”‚  โ”‚  Web Form Server starts     โ”‚  โ† Auto-opens browser  โ”‚
โ”‚  โ”‚  http://127.0.0.1:8765/form โ”‚                         โ”‚
โ”‚  โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜                         โ”‚
โ”‚       โ”‚                                                  โ”‚
โ”‚       โ–ผ                                                  โ”‚
โ”‚  User fills in answers in browser                        โ”‚
โ”‚  (multi-step, progress bar, image upload)                โ”‚
โ”‚       โ”‚                                                  โ”‚
โ”‚       โ–ผ                                                  โ”‚
โ”‚  Submit โ†’ Answers saved to JSON โ†’ Server auto-closes     โ”‚
โ”‚       โ”‚                                                  โ”‚
โ”‚       โ–ผ                                                  โ”‚
โ”‚  Agent reads answers โ†’ Generates model answers           โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜

Features

  • Multi-step forms โ€” Questions organized by topic (Speaking Part 1, Part 2, Writing)
  • Progress indicator โ€” Step dots show current progress
  • Image upload โ€” Drag & drop or click to upload chart images for Writing Task 1
  • Clipboard paste โ€” Ctrl+V to paste screenshots directly
  • Auto-save โ€” Answers saved to JSON file, images saved to task1_charts/
  • Beautiful UI โ€” Gradient purple background, responsive design, works on mobile

Supported Question Types

Type Description Use Case
textarea Multi-line text input Most Topic Discovery questions
radio Single choice from options Preference questions
image File upload with preview Writing Task 1 charts
paste Clipboard paste or file upload Screenshots, chart images

Screenshots

Web Form: Topic Discovery Web Form

Web Form: Filled Answers Web Form Filled

Output HTML: Header & Stats HTML Header

Output HTML: Collapsible Day Card Day Card Collapsed

Output HTML: Answer Card Answer Card

Output HTML: Highlight Expressions Highlights


โšก Quick Start

# 1. Clone
git clone https://github.com/RomainCHEN/ielts-coach.git
cd ielts-coach

# 2. Copy the skill into your agent's skill directory:
#    Claude Code:     cp -r ielts-coach /your-project/.claude/skills/
#    Other agents:    copy ielts-coach/ into whatever directory your agent uses for skills

# 3. Start your agent and just talk. The skill triggers automatically.

๐Ÿ’ก No configuration needed. Say "Start my IELTS preparation" and the agent handles everything. Onboarding โ†’ Study Plan โ†’ Daily sessions with Topic Discovery โ†’ Model answers in HTML.

For DeepSeek and non-vision model users: The first time a chart image fails to load, the agent auto-guides you through the 2-minute Vision Bridge setup. You only provide an API key.


๐Ÿ”„ The Workflow

โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚                   FIRST SESSION                           โ”‚
โ”‚  Onboarding โ†’ Study Plan โ†’ Ready                         โ”‚
โ”‚  (5 min: exam date, target score, background, schedule)   โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
                      โ”‚
                      โ–ผ
โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚                   EVERY SESSION                           โ”‚
โ”‚                                                          โ”‚
โ”‚  Greet + progress summary                                โ”‚
โ”‚       โ”‚                                                  โ”‚
โ”‚       โ–ผ                                                  โ”‚
โ”‚  โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”                         โ”‚
โ”‚  โ”‚  TOPIC DISCOVERY             โ”‚  โ† The secret sauce    โ”‚
โ”‚  โ”‚  โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”   โ”‚                         โ”‚
โ”‚  โ”‚  โ”‚ Web Form opens in    โ”‚   โ”‚                         โ”‚
โ”‚  โ”‚  โ”‚ browser (multi-step) โ”‚   โ”‚                         โ”‚
โ”‚  โ”‚  โ”‚ User fills answers   โ”‚   โ”‚                         โ”‚
โ”‚  โ”‚  โ”‚ Submit โ†’ JSON saved  โ”‚   โ”‚                         โ”‚
โ”‚  โ”‚  โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜   โ”‚                         โ”‚
โ”‚  โ”‚  Stage C: Content Confirm   โ”‚                         โ”‚
โ”‚  โ”‚  Stage D: Generate Answer   โ”‚                         โ”‚
โ”‚  โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜                         โ”‚
โ”‚       โ”‚                                                  โ”‚
โ”‚       โ–ผ                                                  โ”‚
โ”‚  Model answer (your voice, your stories)                 โ”‚
โ”‚  + Highlighted expressions                               โ”‚
โ”‚  + Band-specific calibration                             โ”‚
โ”‚  + Anti-AI-flavor check                                  โ”‚
โ”‚       โ”‚                                                  โ”‚
โ”‚       โ–ผ                                                  โ”‚
โ”‚  Save to ielts_answers.html                              โ”‚
โ”‚  Update progress โ†’ See you tomorrow                      โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜

๐Ÿ“ Project Structure

ielts-coach/
โ”œโ”€โ”€ SKILL.md                              # Complete agent behavior (~800 lines)
โ”œโ”€โ”€ references/
โ”‚   โ”œโ”€โ”€ question-bank.md                  # Part 1 + P2&3 New topics (38+29)
โ”‚   โ”œโ”€โ”€ question_bank_complete.json       # P2&3 Retained + Non-mainland (27+8)
โ”‚   โ”œโ”€โ”€ band-descriptors.md               # Speaking criteria by band
โ”‚   โ”œโ”€โ”€ writing-band-descriptors.md       # Official Writing descriptors (May 2023)
โ”‚   โ”œโ”€โ”€ writing-resources.md              # Task 1 chart language + Task 2 templates
โ”‚   โ””โ”€โ”€ sample-answers.md                 # Quality calibration examples
โ”œโ”€โ”€ scripts/
โ”‚   โ”œโ”€โ”€ state_manager.py                  # JSON state file management
โ”‚   โ”œโ”€โ”€ build_complete_bank.py            # Question bank builder
โ”‚   โ”œโ”€โ”€ topic_form_server.py              # Web form server (Topic Discovery)
โ”‚   โ””โ”€โ”€ vision_mcp_server.py             # MCP vision bridge (DeepSeek โ†’ qwen3.7-plus)
โ”œโ”€โ”€ assets/
โ”‚   โ””โ”€โ”€ answer_template.html              # HTML template for answer rendering
โ””โ”€โ”€ docs/
    โ””โ”€โ”€ screenshots/                      # Screenshots for documentation

โšก Copy the ielts-coach/ folder into your agent's skill directory. That is it. Runtime state files (user_profile.json, study_plan.json, progress.json, ielts_answers.html) are auto-generated in your project root and never tracked here.


๐ŸŽฏ The 4D Personalization Engine

IELTS Coach personalizes on 4 dimensions simultaneously. No static template can do this.

Dimension Source Example
1. Personal Identity Onboarding As a software engineer in Shenzhen...
2. Topic-Specific Experience Topic Discovery interview (via web form) When I was debugging that production outage at 3am...
3. Target Band Calibration User's target score Band 7 vocabulary density, flexible cohesive devices
4. Human Voice Preservation User's raw language during Discovery Their humor, their cultural references, their sentence rhythm

Result: An answer that scores well on IELTS rubrics AND the user can actually remember under exam pressure.


๐Ÿ‘๏ธ Vision Bridge for Non-Vision Models

โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”     โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”     โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚  Your Chart  โ”‚โ”€โ”€โ”€โ”€โ–ถโ”‚  vision_bridge    โ”‚โ”€โ”€โ”€โ”€โ–ถโ”‚  qwen3.7-plus    โ”‚
โ”‚  (PNG/JPG)   โ”‚     โ”‚  (MCP Server)     โ”‚     โ”‚  (Free tier)     โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜     โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜     โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
                                                        โ”‚
                                              โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ–ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
                                              โ”‚  Structured text   โ”‚
                                              โ”‚  chart description โ”‚
                                              โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
                                                        โ”‚
โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”     โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”              โ”‚
โ”‚  Task 1      โ”‚โ—€โ”€โ”€โ”€โ”€โ”‚  Your Agent      โ”‚โ—€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
โ”‚  Model Answerโ”‚     โ”‚  (DeepSeek, etc.) โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜     โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜

One-time setup (agent does everything): pip install mcp httpx โ†’ write .claude/settings.json โ†’ restart. Only input needed: your Bailian API key (from bailian.console.aliyun.com). Model: qwen3.7-plus via dashscope.aliyuncs.com/compatible-mode/v1.

Supports custom providers too. Any OpenAI-compatible vision endpoint works.


๐Ÿค Contributing

This is a personal exam preparation tool, but improvements are warmly welcome:

  • Report topic inaccuracies or missing questions
  • Suggest HTML design improvements
  • Share calibrated sample answers for the reference pool
  • Report AI-flavor patterns that slipped through
  • Add screenshots for documentation

Open an issue or PR.


๐Ÿ“œ License

MIT ยฉ Romain Chen. Use freely, modify freely. Good luck on your exam.


Built for IELTS Mayโ€“August 2026 season ยท 102 speaking topics ยท Speaking + Writing
Made with โค๏ธ by someone who knows how stressful IELTS prep can be

About

IELTS Speaking & Writing Coach - AI-powered personalized IELTS preparation agent

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages