Frontend
Agent Configuration Infrastructure
- Agent Sandbox Management API —
SandboxConfigcomponent with CRUD operations for agent instances, health checks, connectivity testing, and model picker integration via new data layer hooks for agent config (get/create/update/delete/push) under agent-nested URLs - Agent Skills Management —
AgentSkillscomponent with skill CRUD operations plus per-agent enable/disable controls through new agent skill resource hooks and per-agent skill assignment hooks - Agent Prompt Configuration —
AgentConfigPromptscomponent exposing eight prompt fields with rich-text editor for comprehensive agent behavior configuration - Instance Health Monitoring — automated health check and test connectivity mutation hooks with push gating, server error messaging via
readErrorMessage, and optimistic cache writes for connect/disconnect operations enabling instant UI updates without refetch
MCP Integration & Memory Management
- MCP Connector Management — comprehensive
connector-management-contentandconnector-dialogscomponents for Model Control Protocol configuration with full connector lifecycle management - Enhanced Memory Architecture — restructured memory management with
learners-memories,saved-memories-modal, andmanage-categories-modalcomponents, including new memory categorization system and learner-specific memory workflows - Settings Integration — moved memory toggle to settings tab with enhanced per-agent memory controls
E-commerce & Credit Management
- Credit Balance Component — new
CreditBalancecomponent with real-time credit monitoring, auto-recharge configuration, and upgrade package modal integration for seamless payment workflows - Enhanced Billing Integration — updated billing tab with credit coin component, e-commerce flow optimizations, and Stripe upgrade hook (
use-stripe-upgrade) for streamlined payment processing - LLM Provider Visualization — added provider icons and branding for Amazon, Claude, DeepSeek, Gemini, Groq, LLaMA, Microsoft, Mistral, NVIDIA, OpenAI, Perplexity, and xAI with
get-llm-provider-detailsutility for consistent provider representation
Accessibility & User Experience
- Persistent Chat Input Labels — added configurable
persistent_chat_input_labeltenant metadata setting enabling WCAG 3.3.2 compliant visible labels above chat textarea (opt-in via tenant configuration) - Enhanced ARIA Support — comprehensive
aria-labelimprovements across chat input components including voice call buttons, voice chat buttons, and upload menus for improved screen reader accessibility - Agent Display Enhancements — unique ID configuration in agent settings, markdown rendering for suggested prompts in welcome and advanced chat, and configurable guided prompts per-agent
Backend
Agent Capabilities
- Multimodal Graph Agent Support — route multimodal (file-uploaded) chat turns through
LCBaseAgentGraphLLMRunnerwhenENABLE_GRAPH_LANGCHAIN_AGENTS=True, enabling multimodal content to flow through the same graph (tools, RAG, middleware) as text-only conversations via new_resolve_multimodal_llmand_configure_lc_ai_mentoroverride hooks - Enhanced File Upload Grading —
GradeSubmissionToolnow accepts file attachments alongside or instead of text submissions, routing to multimodal-capable LLMs via existingget_multimodal_llmresolution with structured output mechanisms for comprehensive assessment capabilities - Conversation-Mode Grading —
MentorGraderConfiguration.grading_modenow supports conversation mode via dedicatedgrade_conversationtool, enabling holistic assessment of entire chat sessions rather than individual submissions
API Infrastructure
- Grader Configuration CRUD API — new admin endpoints
mentors/{uuid}/grader-config/andmentors/{uuid}/grader-config/criteria/for managingMentorGraderConfigurationandGraderCriterionwithout Django admin, including paginated criteria lists with search capabilities - Enhanced Chat History Processing —
aretrieve_truncated_message_historynow reattachesChatFilesto historical human messages as OpenAI-format content blocks, preserving visual context across multi-turn multimodal conversations while maintaining text-only storage - Improved Document Processing — upgraded
markitdownto 0.1.5 fixing Google Docs exported.docxparsing in multimodal file uploads by resolving_CustomMarkdownifyclass parameter compatibility issues
Security Capabilities
- Field-Level Encryption Infrastructure — implemented
EncryptedTextField,EncryptedJSONField, andEncryptedFieldsMixinwith Fernet symmetric encryption for transparent encrypted field access on all credential models includingLLMCredential,GlobalCredential,IntegrationCredential,ConnectedService,MCPServer, andMCPServerConnection - Credential Masking in Admin — enhanced Django admin with credential field masking for both plaintext and encrypted fields via
MASK_CREDENTIALSGlobalConfigurationsetting (default:True), protecting sensitive data exposure in admin interfaces - Encryption Management Commands — new management commands
backfill_encrypted_fields,verify_encrypted_fields, andcleanup_plaintext_fieldsfor encryption lifecycle management with comprehensive migration tooling
Notification System
- Dedicated Notification Queues — introduced
notifications.highandnotifications.lowCelery queues with dedicated worker support, separating notification processing from AI inference and data processing workloads for improved system performance and scalability - Grade Posted Notifications — new
SUBSECTION_GRADE_UPDATEnotification type automatically emailing learners when grades are posted or updated on assignments, quizzes, and exams with configurable debounce modes (everywith 5-minute window orfirst_onlyper subsection) - Course Schedule Change Notifications —
COURSE_SCHEDULE_CHANGEnotification type monitoring course start date, pacing mode, and certificate availability changes with automatic email dispatch to enrolled learners including old/new value details and course links
Data Model Enhancements
- Auto-Recharge Default Enablement — credit accounts now enable auto-recharge by default at configurable
CREDITS_AUTO_RECHARGE_DEFAULT_AMOUNT_USD(default $10), with payment method validation guards preventing failed Stripe charge attempts for accounts without stored payment methods - Report Generation Improvements — new
MentorInteractionResearchGeneratorproviding session-level engagement exports with prompt-by-prompt breakdown including user email, agent identity, session timing, token counts, and topic associations via batch-processed 1M row safety-capped pipeline - Enhanced API Response Handling — reported-skills GET endpoints now return 200 with empty payload when users have no reported skills instead of 400 Bad Request, improving API consistency and client error handling
Infrastructure
Deployment & Operations
- Production Service Update Workflow — new
workflow_dispatchworkflow enabling one-click service updates across all VMs in production environments with concurrency controls, sequential execution (max-parallel: 1), and comprehensive rollup reporting - Non-Interactive Environment Setup —
iblai infra setup-env -f .envcommand enabling Ansible bootstrap from environment files without interactive prompts, supporting both provisioned and free-standing deployment modes with comprehensive.envschema validation - Environment Provisioning Automation —
iblai infra provision-env -f .envcommand for non-interactive Terraform provisioning supporting single-server deployments with auto VPN IP detection, SSH key generation/management, and ACM certificate provisioning
Security & Configuration
- Field Encryption Key Management — auto-generated
FIELD_ENCRYPTION_KEYusing Fernet symmetric encryption during initial setup with rotation support viaibl config rotate-secrets --only IBL_DM.FIELD_ENCRYPTION_KEY - AI Call Health Monitoring — exposed AI call healthcheck port via configurable
IBL_DM.AI_CALL_HEALTHCHECK_PORT(default 8831) for enhanced service monitoring and load balancer integration - Dependency Management — lockfile-driven dependency controls with explicit pins for high-drift packages (
redis,requests,charset-normalizer,sqlalchemy) preventing silent version floating during dependency updates
Integration Capabilities
- Google SSO Configuration — automated
google_sso_configAnsible role creatingOAuth2ProviderConfigrows on LMS forpython-social-authgoogle-oauth2backend with optional organization binding and idempotent execution - Microsoft SSO Configuration —
microsoft_sso_configrole handlingIBL_EDX_BASE_OAUTH_SSO_BACKENDconfiguration patches, Django settings reload, andOAuth2ProviderConfigcreation forazuread-oauth2integration with tenant-specific OIDC endpoints - Enhanced Open edX Compatibility — patched discussions topic-link bulk updates avoiding N+1 queries, hardened bookmarks cache rebuild for orphaned blocks, and assessment mode support in mentor XBlocks with configurable UI element hiding
Vibe Agent Skill Ecosystem
- MCP Agent Integration — new
iblai-agent-mcpskill providing comprehensive Model Control Protocol connector management with add/edit/featured connector workflows and connection testing capabilities - Agent Audit Capabilities —
iblai-agent-auditskill enabling systematic agent behavior analysis, performance monitoring, and configuration validation with detailed audit trail generation - Credit Balance Management —
iblai-creditskill with real-time credit monitoring, balance display, and integration with auto-recharge workflows for seamless credit management user experiences - Enhanced Vibe-Starter Integration — improved
iblai-ops-initskill with automated platform and token configuration after vibe-starter cloning, streamlined setup workflows, and better CLI integration patterns
REST API — New Endpoints
GET/POST/PUT/PATCH /api/ai-mentor/orgs/{org}/mentors/{mentor_unique_id}/grader-config/— agent grader configuration managementGET/POST /api/ai-mentor/orgs/{org}/mentors/{mentor_unique_id}/grader-config/criteria/— grader criteria collection managementGET/PUT/PATCH/DELETE /api/ai-mentor/orgs/{org}/mentors/{mentor_unique_id}/grader-config/criteria/{id}/— individual grader criteria with validation and weight managementGET/POST /api/core/platforms/{platform_key}/demographics/fields/— demographic field configuration per platformGET /api/core/platforms/{platform_key}/demographics/fields/export/— export demographic field configurationsPOST /api/core/platforms/{platform_key}/demographics/fields/import/— import demographic field configurationsGET/PUT/PATCH/DELETE /api/core/platforms/{platform_key}/demographics/fields/{slug}/— individual demographic field managementGET /api/core/platforms/{platform_key}/{username}/demographics/— user-specific demographic data access