clawed 2.0.2__tar.gz → 2.0.3__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {clawed-2.0.2 → clawed-2.0.3}/PKG-INFO +1 -1
- {clawed-2.0.2 → clawed-2.0.3}/clawed/__init__.py +1 -1
- {clawed-2.0.2 → clawed-2.0.3}/clawed/commands/generate.py +25 -0
- {clawed-2.0.2 → clawed-2.0.3}/pyproject.toml +1 -1
- {clawed-2.0.2 → clawed-2.0.3}/.gitignore +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/LICENSE +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/README.md +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/__main__.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/_legacy_gateway.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/agent.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/agent_core/__init__.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/agent_core/approvals.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/agent_core/autonomy.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/agent_core/context.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/agent_core/core.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/agent_core/custom_tools.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/agent_core/drive/__init__.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/agent_core/drive/auth.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/agent_core/drive/client.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/agent_core/fake_llm.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/agent_core/loop.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/agent_core/memory/__init__.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/agent_core/memory/curriculum.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/agent_core/memory/curriculum_kb.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/agent_core/memory/embeddings.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/agent_core/memory/episodes.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/agent_core/memory/identity.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/agent_core/memory/loader.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/agent_core/memory/preferences.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/agent_core/planner.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/agent_core/prompt.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/agent_core/scheduler.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/agent_core/tools/__init__.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/agent_core/tools/base.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/agent_core/tools/configure_profile.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/agent_core/tools/curriculum_map.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/agent_core/tools/drive_create_doc.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/agent_core/tools/drive_create_slides.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/agent_core/tools/drive_list.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/agent_core/tools/drive_organize.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/agent_core/tools/drive_read.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/agent_core/tools/drive_upload.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/agent_core/tools/export_document.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/agent_core/tools/gap_analysis.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/agent_core/tools/generate_assessment.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/agent_core/tools/generate_lesson.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/agent_core/tools/generate_lesson_bundle.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/agent_core/tools/generate_materials.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/agent_core/tools/generate_unit.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/agent_core/tools/ingest_materials.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/agent_core/tools/parent_comm.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/agent_core/tools/read_heartbeat.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/agent_core/tools/read_workspace.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/agent_core/tools/request_approval.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/agent_core/tools/schedule_task.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/agent_core/tools/search_lessons.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/agent_core/tools/search_my_materials.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/agent_core/tools/search_standards.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/agent_core/tools/student_insights.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/agent_core/tools/sub_packet.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/agent_core/tools/switch_model.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/agent_core/tools/update_soul.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/analytics.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/api/__init__.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/api/deps.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/api/routes/__init__.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/api/routes/chat.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/api/routes/export.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/api/routes/feedback.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/api/routes/gateway_chat.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/api/routes/generate.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/api/routes/ingest.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/api/routes/lessons.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/api/routes/school.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/api/routes/settings.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/api/routes/tools.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/api/server.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/api/static/app.js +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/api/static/style.css +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/api/static/widget.js +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/api/templates/analytics.html +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/api/templates/base.html +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/api/templates/dashboard.html +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/api/templates/generate.html +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/api/templates/index.html +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/api/templates/lesson.html +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/api/templates/profile.html +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/api/templates/settings.html +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/api/templates/stats.html +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/api/templates/students.html +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/assessment.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/auth/__init__.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/auth/google_auth.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/bot_state.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/chat.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/cli.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/cli_chat.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/commands/__init__.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/commands/_helpers.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/commands/bot.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/commands/config.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/commands/config_llm.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/commands/config_profile.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/commands/export.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/commands/generate_assessment.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/commands/generate_unit.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/commands/queue.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/commands/schedule_cmd.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/commands/sub.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/commands/workspace_cmd.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/config.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/corpus.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/curriculum_map.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/database.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/demo/__init__.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/demo/demo_assessment.json +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/demo/demo_lesson_science_g6.json +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/demo/demo_lesson_social_studies_g8.json +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/demo/demo_unit_plan.json +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/differentiation.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/doc_export.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/drive.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/evaluation.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/export_docx.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/export_handout.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/export_markdown.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/export_pdf.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/export_pptx.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/export_templates.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/export_theme.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/exporter.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/feedback.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/formats/__init__.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/formats/flipchart.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/formats/notebook.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/formats/xbk.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/gateway.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/gateway_response.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/generation.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/handlers/__init__.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/handlers/export.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/handlers/feedback.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/handlers/gaps.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/handlers/generate.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/handlers/ingest.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/handlers/misc.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/handlers/onboard.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/handlers/schedule.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/handlers/standards.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/improver.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/ingestor.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/io.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/lesson.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/llm.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/materials.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/mcp_server.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/memory_engine.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/model_router.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/models.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/onboarding.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/openclaw_plugin.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/parent_comm.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/persona.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/planner.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/prompts/504_accommodations.txt +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/prompts/assessment.txt +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/prompts/curriculum_gaps.txt +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/prompts/dbq_assessment.txt +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/prompts/differentiation.txt +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/prompts/formative_assessment.txt +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/prompts/iep_modification.txt +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/prompts/lesson_plan.txt +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/prompts/pacing_guide.txt +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/prompts/parent_note.txt +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/prompts/persona_extract.txt +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/prompts/quiz.txt +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/prompts/rubric.txt +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/prompts/sub_packet.txt +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/prompts/summative_assessment.txt +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/prompts/tiered_assignments.txt +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/prompts/unit_plan.txt +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/prompts/worksheet.txt +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/prompts/year_map.txt +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/quality.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/reading_report.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/router.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/sanitize.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/scheduler.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/school.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/search.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/skills/__init__.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/skills/art.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/skills/base.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/skills/computer_science.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/skills/ela.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/skills/foreign_language.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/skills/history.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/skills/library.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/skills/math.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/skills/music.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/skills/physical_education.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/skills/science.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/skills/social_studies.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/skills/special_education.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/slide_images.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/standards.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/state.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/state_standards.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/student_bot.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/student_cli.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/student_telegram_bot.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/sub_packet.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/task_queue.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/templates_lib.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/tools.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/transports/__init__.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/transports/cli.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/transports/openclaw.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/transports/student_telegram.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/transports/telegram.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/transports/web.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/tui.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/tui_chat.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/voice.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/clawed/workspace.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/eduagent/__init__.py +0 -0
- {clawed-2.0.2 → clawed-2.0.3}/eduagent/_compat.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: clawed
|
|
3
|
-
Version: 2.0.
|
|
3
|
+
Version: 2.0.3
|
|
4
4
|
Summary: Claw-ED — personal AI teaching agent. Learns your voice, works while you sleep.
|
|
5
5
|
Project-URL: Homepage, https://github.com/SirhanMacx/Claw-ED
|
|
6
6
|
Project-URL: Documentation, https://github.com/SirhanMacx/Claw-ED#readme
|
|
@@ -17,7 +17,7 @@ if hasattr(sys.stderr, "reconfigure"):
|
|
|
17
17
|
except Exception:
|
|
18
18
|
pass
|
|
19
19
|
|
|
20
|
-
__version__ = "2.0.
|
|
20
|
+
__version__ = "2.0.3"
|
|
21
21
|
__author__ = "Jon Maccarello & Claw-ED contributors"
|
|
22
22
|
__description__ = "Personal AI teaching agent. Learns your voice, works while you sleep."
|
|
23
23
|
|
|
@@ -246,6 +246,30 @@ def lesson(
|
|
|
246
246
|
)
|
|
247
247
|
lesson_num = 1
|
|
248
248
|
|
|
249
|
+
# ── Search curriculum KB for teacher's existing materials ──────
|
|
250
|
+
kb_prompt_section = ""
|
|
251
|
+
try:
|
|
252
|
+
from clawed.agent_core.memory.curriculum_kb import CurriculumKB
|
|
253
|
+
kb = CurriculumKB()
|
|
254
|
+
kb_results = kb.search("default", topic, top_k=3)
|
|
255
|
+
if kb_results:
|
|
256
|
+
kb_parts = [r for r in kb_results if r.get("similarity", 0) > 0.1]
|
|
257
|
+
if kb_parts:
|
|
258
|
+
kb_prompt_section = (
|
|
259
|
+
"Teacher's Existing Materials on This Topic\n"
|
|
260
|
+
"The teacher has created content on this topic before. "
|
|
261
|
+
"Reference and build on their existing work:\n\n"
|
|
262
|
+
+ "\n\n".join(
|
|
263
|
+
f"From \"{r['doc_title']}\":\n{r['chunk_text'][:500]}"
|
|
264
|
+
for r in kb_parts
|
|
265
|
+
)
|
|
266
|
+
+ "\n\nUse these materials as a foundation. Reference the teacher's existing "
|
|
267
|
+
"lessons, reuse their graphic organizer formats, build on their approach."
|
|
268
|
+
)
|
|
269
|
+
console.print(f"[dim]Found {len(kb_parts)} existing materials on this topic[/dim]")
|
|
270
|
+
except Exception:
|
|
271
|
+
pass
|
|
272
|
+
|
|
249
273
|
with _safe_progress(console=console) as progress:
|
|
250
274
|
task = progress.add_task(
|
|
251
275
|
f"Generating lesson {lesson_num}...", total=None
|
|
@@ -256,6 +280,7 @@ def lesson(
|
|
|
256
280
|
unit=unit_plan,
|
|
257
281
|
persona=persona,
|
|
258
282
|
include_homework=homework,
|
|
283
|
+
teacher_materials=kb_prompt_section,
|
|
259
284
|
)
|
|
260
285
|
)
|
|
261
286
|
progress.update(task, description="Lesson plan complete!")
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|