mindterm_integration.md · 9.1 KB

mindterm v0.0.4 - Complete mindX Integration

Overview

mindterm is now fully integrated into the mindX augmentic intelligence system as the secure terminal execution plane. This document describes the complete integration, orchestration, monitoring, and autonomous improvement capabilities.

Frontend Integration: xterm.js

mindterm uses xterm.js as its frontend terminal emulator. xterm.js is a battle-tested terminal emulator library used by major applications including:

  • Microsoft Visual Studio Code - Integrated terminal
  • JupyterLab - Terminal interface
  • Eclipse Che - Cloud IDE terminal
  • Azure Cloud Shell - Web-based admin terminal
  • And many more - See xterm.js real-world uses
  • xterm.js Integration Details

    Location: mindx_frontend_ui/src/components/MindTerm.tsx

    Package: xterm@^5.3.0 with xterm-addon-fit@^0.8.0

    Key Features:

  • Full ANSI escape sequence support
  • Automatic terminal resizing via FitAddon
  • Real-time output streaming via WebSocket
  • Keystroke forwarding to PTY backend
  • Policy-gated command execution
  • Risk assessment integration
  • Connection Flow:

  • React component initializes xterm.js Terminal instance
  • Terminal connects to mindterm backend via WebSocket (/mindterm/sessions/{session_id}/ws)
  • Keystrokes forwarded as {type: "in", data: "..."}
  • Command lines sent as {type: "line", data: "..."} for policy gating
  • Output received as {type: "out", data: "..."} and written to terminal
  • Risk prompts displayed as {type: "risk", ...} for user confirmation
  • Terminal Configuration:

    const term = new Terminal({
      convertEol: true,
      cursorBlink: true,
      fontSize: 13
    });
    const fit = new FitAddon();
    term.loadAddon(fit);
    

    The terminal automatically resizes based on container dimensions and sends resize events to the backend PTY session.

    Architecture Integration

    Orchestration Hierarchy

    MastermindAgent (Strategic Layer)
        ↓
    CoordinatorAgent (Orchestration Layer)
        ↓
    mindterm Service (Execution Layer)
        ├── PTY Sessions
        ├── Command Blocks
        ├── Policy Gate
        └── Event Bus
    

    Integration Points

  • Coordinator Agent Integration
  • - mindterm publishes events to coordinator's event bus - Coordinator can subscribe to mindterm events for system-wide awareness - Events include: mindterm.session_created, mindterm.command_started, mindterm.session_closed

  • Resource Monitoring
  • - mindterm integrates with ResourceMonitor for system resource tracking - Tracks CPU, memory, disk usage per session - Provides metrics for autonomous decision-making

  • Performance Monitoring
  • - mindterm commands tracked via PerformanceMonitor - Records success/failure rates, execution times - Enables autonomous optimization of terminal operations

  • Logging System
  • - All mindterm operations logged via mindX logging system - Logs stored in data/logs/mindx_runtime.log - Structured logging for autonomous analysis

    Logging for Autonomous Improvement

    Logged Events

    mindterm logs the following events for autonomous system improvement:

  • Session Lifecycle
  • - Session creation (pid, shell, cwd, size) - Session closure (with metrics) - Session errors

  • Command Execution
  • - Command start (block_id, command) - Command completion (exit_code, execution time) - Command failures

  • Risk Assessment
  • - Risk flags (level, reason, command) - User confirmations/denials - Policy violations

  • Resource Usage
  • - Per-session metrics (commands, output bytes, failures) - System resource consumption - Performance metrics

    Log Format

    All logs follow mindX standard format:

    [timestamp] mindterm - LEVEL - module.function:line - message
    

    Autonomous Analysis

    The mindX system can analyze mindterm logs to:

  • Identify common failure patterns
  • Optimize command execution strategies
  • Improve risk assessment policies
  • Predict resource needs
  • Detect security issues
  • Resource Management

    Session Metrics

    Each session tracks:

  • commands_executed: Total commands run
  • commands_failed: Commands with non-zero exit codes
  • total_output_bytes: Output data volume
  • risk_flags: Number of risky commands flagged
  • last_activity: Timestamp of last activity
  • Resource Monitoring

    mindterm provides:

  • Active session count
  • Total commands executed across all sessions
  • Total output bytes
  • System resource usage (via ResourceMonitor)
  • Cleanup and Resource Limits

  • Automatic session cleanup on disconnect
  • Resource limits configurable via coordinator
  • Memory-efficient block storage (JSONL with cache)
  • API Monitoring Endpoints

    System Endpoints

  • GET /system/resources
  • - Includes mindterm metrics in system resource response - Shows active sessions, command counts, output volume

  • GET /mindterm/metrics
  • - Complete mindterm service metrics - All session metrics - Resource usage breakdown

  • GET /mindterm/metrics/{session_id}
  • - Per-session detailed metrics - Command history statistics - Performance data

    Monitoring Integration

    mindterm metrics are available to:

  • CoordinatorAgent for system-wide decisions
  • MastermindAgent for strategic planning
  • Autonomous audit coordinator for improvement campaigns
  • Frontend dashboard for real-time monitoring
  • Event Bus Integration

    Published Events

    mindterm publishes events to coordinator's event bus:

  • mindterm.session_created
  •    {
         "session_id": "...",
         "pid": 12345,
         "shell": "/bin/bash",
         "cwd": "/path/to/cwd"
       }
       

  • mindterm.command_started
  •    {
         "session_id": "...",
         "block_id": "...",
         "command": "ls -la"
       }
       

  • mindterm.session_closed
  •    {
         "session_id": "...",
         "metrics": {
           "commands_executed": 10,
           "commands_failed": 1,
           "total_output_bytes": 1024
         }
       }
       

    Event Subscribers

    Agents can subscribe to mindterm events:

  • CoordinatorAgent: System-wide awareness
  • MastermindAgent: Strategic decision making
  • GuardianAgent: Security monitoring
  • AutonomousAuditCoordinator: Improvement campaigns
  • Orchestration Understanding

    Mastermind → Coordinator → mindterm Flow

  • Strategic Layer (MastermindAgent)
  • - Receives high-level directives - Plans terminal operations as part of larger campaigns - Delegates to CoordinatorAgent

  • Orchestration Layer (CoordinatorAgent)
  • - Manages mindterm service lifecycle - Routes terminal operations - Monitors resource usage - Publishes system events

  • Execution Layer (mindterm)
  • - Creates PTY sessions - Executes commands with policy gates - Tracks blocks and metrics - Publishes events

    Autonomous Improvement Flow

  • Data Collection
  • - mindterm logs all operations - Metrics collected continuously - Events published to coordinator

  • Analysis
  • - AutonomousAuditCoordinator analyzes logs - Identifies improvement opportunities - Creates improvement backlog items

  • Execution
  • - CoordinatorAgent processes improvements - Updates mindterm policies/configurations - Monitors results

  • Learning
  • - Success patterns identified - Policies refined - Resource limits adjusted

    Configuration

    Environment Variables

  • MINDTERM_TRANSCRIPTS_DIR: Transcript storage directory (default: data/mindterm_transcripts)
  • MINDTERM_BLOCKS_DIR: Block storage directory (default: data/mindterm_blocks)
  • Coordinator Configuration

    mindterm respects coordinator settings:

  • coordinator.max_concurrent_heavy_tasks: Limits concurrent operations
  • monitoring.resource.enabled: Enables resource monitoring
  • monitoring.performance.*: Performance tracking settings
  • Security and Policy

    Risk Assessment

    mindterm uses policy.py for risk assessment:

  • High Risk: Destructive commands (rm -rf, mkfs, dd, etc.)
  • Medium Risk: Privilege escalation (sudo, systemctl, etc.)
  • Low Risk: Normal operations
  • Policy Integration

  • Policies can be updated by CoordinatorAgent
  • GuardianAgent can review risk decisions
  • MastermindAgent can adjust policy thresholds
  • Future Enhancements

    Planned Improvements

  • Agent Integration
  • - MindTermTool for agents to use terminal - Session binding to agent_id/workspace_id - ACL-based access control

  • Advanced Monitoring
  • - Real-time command output analysis - Semantic understanding of commands - Predictive resource needs

  • Autonomous Optimization
  • - Automatic policy refinement - Resource limit adjustment - Command execution optimization

    Summary

    mindterm v0.0.4 is fully integrated into mindX with:

  • ✅ Complete logging for autonomous improvement
  • ✅ Resource monitoring integration
  • ✅ Performance tracking
  • ✅ Coordinator event bus integration
  • ✅ API monitoring endpoints
  • ✅ Proper resource management
  • ✅ Orchestration system integration
  • The system can now autonomously improve mindterm operations based on logged data, metrics, and events.


    All DocumentsDocument IndexThe Book of mindXImprovement JournalAPI Reference