clawed 2.0.3__tar.gz → 2.0.4__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.3 → clawed-2.0.4}/PKG-INFO +1 -1
- {clawed-2.0.3 → clawed-2.0.4}/clawed/__init__.py +1 -1
- {clawed-2.0.3 → clawed-2.0.4}/clawed/commands/generate.py +25 -1
- {clawed-2.0.3 → clawed-2.0.4}/pyproject.toml +1 -1
- {clawed-2.0.3 → clawed-2.0.4}/.gitignore +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/LICENSE +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/README.md +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/__main__.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/_legacy_gateway.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/agent.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/agent_core/__init__.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/agent_core/approvals.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/agent_core/autonomy.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/agent_core/context.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/agent_core/core.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/agent_core/custom_tools.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/agent_core/drive/__init__.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/agent_core/drive/auth.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/agent_core/drive/client.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/agent_core/fake_llm.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/agent_core/loop.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/agent_core/memory/__init__.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/agent_core/memory/curriculum.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/agent_core/memory/curriculum_kb.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/agent_core/memory/embeddings.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/agent_core/memory/episodes.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/agent_core/memory/identity.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/agent_core/memory/loader.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/agent_core/memory/preferences.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/agent_core/planner.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/agent_core/prompt.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/agent_core/scheduler.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/agent_core/tools/__init__.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/agent_core/tools/base.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/agent_core/tools/configure_profile.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/agent_core/tools/curriculum_map.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/agent_core/tools/drive_create_doc.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/agent_core/tools/drive_create_slides.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/agent_core/tools/drive_list.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/agent_core/tools/drive_organize.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/agent_core/tools/drive_read.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/agent_core/tools/drive_upload.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/agent_core/tools/export_document.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/agent_core/tools/gap_analysis.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/agent_core/tools/generate_assessment.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/agent_core/tools/generate_lesson.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/agent_core/tools/generate_lesson_bundle.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/agent_core/tools/generate_materials.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/agent_core/tools/generate_unit.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/agent_core/tools/ingest_materials.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/agent_core/tools/parent_comm.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/agent_core/tools/read_heartbeat.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/agent_core/tools/read_workspace.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/agent_core/tools/request_approval.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/agent_core/tools/schedule_task.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/agent_core/tools/search_lessons.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/agent_core/tools/search_my_materials.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/agent_core/tools/search_standards.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/agent_core/tools/student_insights.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/agent_core/tools/sub_packet.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/agent_core/tools/switch_model.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/agent_core/tools/update_soul.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/analytics.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/api/__init__.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/api/deps.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/api/routes/__init__.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/api/routes/chat.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/api/routes/export.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/api/routes/feedback.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/api/routes/gateway_chat.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/api/routes/generate.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/api/routes/ingest.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/api/routes/lessons.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/api/routes/school.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/api/routes/settings.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/api/routes/tools.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/api/server.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/api/static/app.js +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/api/static/style.css +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/api/static/widget.js +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/api/templates/analytics.html +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/api/templates/base.html +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/api/templates/dashboard.html +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/api/templates/generate.html +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/api/templates/index.html +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/api/templates/lesson.html +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/api/templates/profile.html +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/api/templates/settings.html +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/api/templates/stats.html +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/api/templates/students.html +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/assessment.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/auth/__init__.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/auth/google_auth.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/bot_state.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/chat.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/cli.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/cli_chat.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/commands/__init__.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/commands/_helpers.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/commands/bot.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/commands/config.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/commands/config_llm.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/commands/config_profile.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/commands/export.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/commands/generate_assessment.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/commands/generate_unit.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/commands/queue.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/commands/schedule_cmd.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/commands/sub.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/commands/workspace_cmd.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/config.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/corpus.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/curriculum_map.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/database.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/demo/__init__.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/demo/demo_assessment.json +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/demo/demo_lesson_science_g6.json +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/demo/demo_lesson_social_studies_g8.json +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/demo/demo_unit_plan.json +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/differentiation.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/doc_export.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/drive.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/evaluation.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/export_docx.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/export_handout.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/export_markdown.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/export_pdf.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/export_pptx.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/export_templates.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/export_theme.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/exporter.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/feedback.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/formats/__init__.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/formats/flipchart.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/formats/notebook.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/formats/xbk.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/gateway.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/gateway_response.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/generation.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/handlers/__init__.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/handlers/export.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/handlers/feedback.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/handlers/gaps.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/handlers/generate.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/handlers/ingest.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/handlers/misc.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/handlers/onboard.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/handlers/schedule.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/handlers/standards.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/improver.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/ingestor.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/io.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/lesson.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/llm.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/materials.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/mcp_server.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/memory_engine.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/model_router.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/models.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/onboarding.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/openclaw_plugin.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/parent_comm.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/persona.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/planner.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/prompts/504_accommodations.txt +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/prompts/assessment.txt +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/prompts/curriculum_gaps.txt +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/prompts/dbq_assessment.txt +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/prompts/differentiation.txt +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/prompts/formative_assessment.txt +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/prompts/iep_modification.txt +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/prompts/lesson_plan.txt +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/prompts/pacing_guide.txt +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/prompts/parent_note.txt +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/prompts/persona_extract.txt +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/prompts/quiz.txt +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/prompts/rubric.txt +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/prompts/sub_packet.txt +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/prompts/summative_assessment.txt +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/prompts/tiered_assignments.txt +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/prompts/unit_plan.txt +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/prompts/worksheet.txt +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/prompts/year_map.txt +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/quality.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/reading_report.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/router.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/sanitize.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/scheduler.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/school.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/search.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/skills/__init__.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/skills/art.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/skills/base.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/skills/computer_science.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/skills/ela.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/skills/foreign_language.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/skills/history.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/skills/library.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/skills/math.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/skills/music.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/skills/physical_education.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/skills/science.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/skills/social_studies.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/skills/special_education.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/slide_images.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/standards.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/state.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/state_standards.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/student_bot.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/student_cli.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/student_telegram_bot.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/sub_packet.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/task_queue.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/templates_lib.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/tools.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/transports/__init__.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/transports/cli.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/transports/openclaw.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/transports/student_telegram.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/transports/telegram.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/transports/web.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/tui.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/tui_chat.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/voice.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/clawed/workspace.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/eduagent/__init__.py +0 -0
- {clawed-2.0.3 → clawed-2.0.4}/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.4
|
|
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.4"
|
|
21
21
|
__author__ = "Jon Maccarello & Claw-ED contributors"
|
|
22
22
|
__description__ = "Personal AI teaching agent. Learns your voice, works while you sleep."
|
|
23
23
|
|
|
@@ -131,13 +131,37 @@ def ingest(
|
|
|
131
131
|
progress.update(task, description="Persona extracted!")
|
|
132
132
|
|
|
133
133
|
out = save_persona(persona, _output_dir())
|
|
134
|
+
|
|
135
|
+
# Index documents into curriculum knowledge base for KB search
|
|
136
|
+
try:
|
|
137
|
+
from clawed.agent_core.memory.curriculum_kb import CurriculumKB
|
|
138
|
+
kb = CurriculumKB()
|
|
139
|
+
total_chunks = 0
|
|
140
|
+
for doc in documents:
|
|
141
|
+
doc_type_val = doc.doc_type.value if hasattr(doc.doc_type, "value") else str(doc.doc_type)
|
|
142
|
+
total_chunks += kb.index(
|
|
143
|
+
teacher_id="default",
|
|
144
|
+
doc_title=doc.title,
|
|
145
|
+
source_path=doc.source_path or "",
|
|
146
|
+
full_text=doc.content,
|
|
147
|
+
metadata={"doc_type": doc_type_val},
|
|
148
|
+
)
|
|
149
|
+
stats = kb.stats("default")
|
|
150
|
+
kb_msg = (
|
|
151
|
+
f"[bold]Knowledge base:[/bold] {stats['doc_count']} documents, "
|
|
152
|
+
f"{stats['chunk_count']} searchable sections"
|
|
153
|
+
)
|
|
154
|
+
except Exception:
|
|
155
|
+
kb_msg = ""
|
|
156
|
+
|
|
134
157
|
console.print(
|
|
135
158
|
Panel(
|
|
136
159
|
f"[green]Persona saved to {out}[/green]\n\n"
|
|
137
160
|
f"[bold]Style:[/bold] {persona.teaching_style.value.replace('_', ' ').title()}\n"
|
|
138
161
|
f"[bold]Tone:[/bold] {persona.tone}\n"
|
|
139
162
|
f"[bold]Subject:[/bold] {persona.subject_area}\n"
|
|
140
|
-
f"[bold]Format:[/bold] {persona.preferred_lesson_format}"
|
|
163
|
+
f"[bold]Format:[/bold] {persona.preferred_lesson_format}"
|
|
164
|
+
+ (f"\n{kb_msg}" if kb_msg else ""),
|
|
141
165
|
title="Teacher Persona",
|
|
142
166
|
)
|
|
143
167
|
)
|
|
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
|