← 返回 Skills 市场
ravikadam

Learning Coach

作者 Ravindra Kadam · GitHub ↗ · v0.3.0
cross-platform ⚠ suspicious
439
总下载
0
收藏
4
当前安装
1
版本数
在 OpenClaw 中安装
/install learning-coach
功能描述
Production learning coach for personalized, multi-subject study planning with proactive reminders, curated resources, LLM-generated quizzes, rubric-based gra...
使用说明 (SKILL.md)

Learning Coach

Run a real coaching loop across multiple subjects: Plan by subject → Learn → Practice → Assess → Adapt.

Core principles

  • Keep each subject isolated in planning, quiz history, and scoring.
  • Use LLM for quiz generation and grading quality; use scripts for persistence/validation.
  • Be proactive after one-time user consent for cron jobs.
  • Be transparent: report what was automated and why.

Subject segregation model (mandatory)

Store all learner state under data/subjects/\x3Csubject-slug>/.

Required per-subject files:

  • profile.json — goals, level, weekly hours, exam/project target
  • plan.json — current weekly plan + daily tasks
  • quiz-history.json — generated quizzes + answer keys + rubrics + attempts
  • progress.json — rolling metrics, weak concepts, confidence trend
  • curation.json — recommended links and why selected

Global files:

  • data/coach-config.json — cadence preferences, output style
  • data/cron-consent.json — consent + approved schedules + last update

Never mix metrics from separate subjects unless generating an explicit global dashboard.

LLM-first quiz protocol (mandatory)

Do not rely on static script-generated toy quizzes. Generate quizzes with the model each time unless user asks for a cached quiz.

For each quiz, produce a single JSON object with:

  • metadata (subject, topic, difficulty, blooms_level, time_budget_min)
  • questions[] (mcq/short/explain/case-based)
  • answer_key[]
  • grading_rubric[] with per-question criteria and max points
  • feedback_rules (how to turn mistakes into coaching advice)

Use schema in references/quiz-schema.md.

LLM grading protocol (mandatory)

When user submits answers:

  1. Grade each answer using the provided rubric.
  2. Return strict grading JSON (schema: references/grading-schema.md).
  3. Explain top 3 mistakes and corrective drills.
  4. Update subject progress.json and quiz-history.json.

Use scripts only to validate and persist JSON artifacts.

Proactive automation (cron)

Before setting or changing cron:

  • Inform user of exact schedules and actions.
  • Generate candidate schedules with scripts/subject_cron.py (light/standard/intensive).
  • Ask for explicit approval.
  • Save approval in data/cron-consent.json.

After approval:

  • Run routine reminders and weekly summaries autonomously.
  • Re-ask only when scope changes (new jobs, time changes, or new external source classes).

Use scripts/setup_cron.py for idempotent cron management. See references/cron-templates.md.

Discovery and curation

For each subject:

  • Ingest candidates via scripts/source_ingest.py (YouTube RSS + optional X/web normalized feeds).
  • Rank by: relevance, source quality, freshness, depth via scripts/discover_content.py.
  • Save in subject curation.json with concise rationale and time-to-consume.

Use quality checklist from references/source-quality.md and ingestion contract in references/source-ingestion.md.

Scripts (supporting only)

  • scripts/bootstrap.py — dependency checks/install attempts.
  • scripts/setup_cron.py — apply/remove/show cron jobs.
  • scripts/subject_store.py — create/list/update per-subject state directories.
  • scripts/update_progress.py — update per-subject progress with EMA trend and confidence.
  • scripts/validate_quiz_json.py — validate generated quiz JSON.
  • scripts/validate_grading_json.py — validate grading JSON.
  • scripts/source_ingest.py — normalize YouTube RSS + optional X/web feeds into candidate JSON.
  • scripts/discover_content.py — rank and persist curated links from candidate web/X/YouTube resources.
  • scripts/intervention_rules.py — generate pacing interventions (speed-up/stabilize/slow-down) per subject.
  • scripts/subject_cron.py — generate per-subject cron templates (light/standard/intensive).
  • scripts/weekly_report.py — aggregate subject summaries with trend/confidence output (text + JSON).

Intervention policy

After each graded attempt, generate intervention guidance with scripts/intervention_rules.py.

  • Modes: speed-up, stabilize, slow-down.
  • Explain mode choice with metrics evidence (EMA/confidence/delta).
  • Convert mode into concrete next actions for the subject.

See references/intervention-policy.md.

Execution policy

  • Prefer concise output to user: what changed, what’s next, when next reminder happens.
  • Never claim a cron/job/source fetch ran if not actually run.
  • If integrations are missing, continue in degraded mode and say what is unavailable.

References

  • references/learning-methods.md
  • references/scoring-rubric.md
  • references/source-quality.md
  • references/source-ingestion.md
  • references/progress-model.md
  • references/report-schema.md
  • references/cron-templates.md
  • references/intervention-policy.md
  • references/quiz-schema.md
  • references/grading-schema.md
安全使用建议
This package appears to do what it advertises: create per-subject state, generate/validate quizzes and grades (LLM-driven), curate resources, and optionally manage reminders via cron. Before installing or running: (1) Decide and confirm explicit consent if you want scheduled cron jobs — review the candidate cron lines (scripts/subject_cron.py and scripts/setup_cron.py) and the workspace path they reference. (2) Be aware source_ingest.py will fetch arbitrary URLs/feeds you provide — avoid giving it internal or sensitive endpoints. (3) Do not run bootstrap with --install unless you trust installing a global npm package (clawhub) on your machine. (4) Confirm where data/subjects will be stored (default 'data' or agent workspace) because the skill will persist quiz history, progress, and curated links there. If you want stricter controls, require the agent to show the exact cron jobs and ask for confirmation before any call to setup_cron.py or any network fetch.
功能分析
Type: OpenClaw Skill Name: learning-coach Version: 0.3.0 The skill bundle implements high-risk capabilities including automated persistence via crontab modification (setup_cron.py) and global software installation using 'npm install -g' (bootstrap.py). While these actions are aligned with the stated purpose of an autonomous 'Learning Coach' and include instructions for user consent, they provide a significant footprint for potential abuse. Additionally, source_ingest.py performs unvalidated network requests via urllib.request, which could be exploited for SSRF if the agent is directed to malicious RSS feeds.
能力评估
Purpose & Capability
The name/description (personalized learning coach with quizzes, grading, curation, reminders) matches the included scripts and files: quiz/grade validation, progress tracking, source ingestion, ranking, cron templates, and reporting. There are no unrelated credentials or surprising binaries requested.
Instruction Scope
SKILL.md instructs the agent to generate quizzes with an LLM, persist per-subject state under data/subjects/<slug>/, run optional curated ingestion of YouTube/X/web feeds, and only set cron jobs after explicit consent. The scripts implement these behaviors. Pay attention to source_ingest.py which will fetch arbitrary URLs (via urllib) provided as inputs — fetching arbitrary URLs can reach internal hosts if not constrained. Also setup_cron.py directly writes the user's crontab when run; SKILL.md requires asking first, but the code will perform the change if called.
Install Mechanism
No install spec in registry (instruction-only). The included bootstrap script can optionally invoke npm to install a global 'clawhub' binary if run with --install; that is an explicit action initiated by the bootstrap script and is not automatic. No remote archive downloads or obscure URLs are present in the package itself.
Credentials
The skill declares no required environment variables, no credentials, and no config path requirements beyond its own data/ directory. Scripts use local file reads/writes and subprocesses (crontab, python3), which are proportionate to the stated functionality.
Persistence & Privilege
The skill does modify persistent user state: it writes files under data/subjects/<subject>/ and includes a script that will add/remove lines in the user's crontab. always:false (not force-included) is appropriate. Because the agent can be invoked autonomously, ensure the agent enforces the SKILL.md requirement to obtain explicit cron consent before running setup_cron.py — otherwise cron modification could happen without the user's clear approval.
如何使用
  1. 确保已安装 OpenClaw(本地或 Docker 部署)
  2. 在对话框中输入安装命令:/install learning-coach
  3. 安装完成后,直接呼叫该 Skill 的名称或使用 /learning-coach 触发
  4. 根据 Skill 的参数说明提供必要输入,即可获得结构化输出
版本历史
v0.3.0
v0.3: source ingestion adapters (YouTube RSS + optional X/web feeds), per-subject cron templates, intervention rules, and stronger reporting/progress workflows.
元数据
Slug learning-coach
版本 0.3.0
许可证
累计安装 4
当前安装数 4
历史版本数 1
常见问题

Learning Coach 是什么?

Production learning coach for personalized, multi-subject study planning with proactive reminders, curated resources, LLM-generated quizzes, rubric-based gra... 它是一个面向 Claude Code / OpenClaw 的 AI Agent Skill 插件,目前累计下载 439 次。

如何安装 Learning Coach?

在 OpenClaw 或 Claude Code 对话框中运行命令「/install learning-coach」即可一键安装,无需额外配置。

Learning Coach 是免费的吗?

是的,Learning Coach 完全免费(开源免费),可自由下载、安装和使用。

Learning Coach 支持哪些平台?

Learning Coach 跨平台运行,可在任意部署了 OpenClaw / Claude Code 的环境中使用(cross-platform)。

谁开发了 Learning Coach?

由 Ravindra Kadam(@ravikadam)开发并维护,当前版本 v0.3.0。

💬 留言讨论