Skip to content

Implement Robopages Integration for Standardized Tool Execution #72

@gyrusdentatus

Description

@gyrusdentatus

Problem Statement

LLOLWKI currently executes security tools through raw shell commands in playbooks, leading to:

  • No standardized parameter validation across tools
  • Inconsistent error handling between different tools
  • Limited sandboxing capabilities (despite having container infrastructure)
  • Difficult tool discovery for LLMs
  • No unified API for tool execution

Proposed Solution: Robopages Integration

Integrate robopages to provide:

  • Unified Tool API: All LLMs access tools through standardized interface
  • Automatic Validation: Parameters validated before execution
  • Built-in Isolation: Each tool runs in its designated container
  • Self-Documentation: Tools are self-describing via YAML definitions
  • Better Tool Discovery: LLMs can query available tools and their parameters

Architecture

LLM Models ──► LLOLWKI Core ──► Robopages API ──► Tool Containers
                    │                                     │
                    └──► Robopages Agent ◄────────────────┘

Implementation Tasks

Phase 1: Foundation

  • Install robopages-cli server
  • Setup robopages to run on startup
  • Copy existing robopages tool definitions
  • Create basic integration test

Phase 2: LLOLWKI Integration

  • Create RobopagesAgent class in agents/robopages_agent.py
  • Add robopage task type to playbook runner
  • Update playbook schema documentation
  • Create helper functions for tool discovery

Phase 3: Tool Migration

  • Migrate nmap commands to robopages
  • Migrate sqlmap commands to robopages
  • Migrate curl/wget to robopages
  • Create LLOLWKI-specific tool definitions

Phase 4: Testing & Documentation

  • Unit tests for RobopagesAgent
  • Integration tests with existing playbooks
  • Performance benchmarks
  • Update documentation and examples

Example Usage

Before (current approach):

- name: "SQL injection test"
  type: shell
  command: |
    docker run --rm -v $PWD:/data \
      sqlmap -u "{{ target }}" --dbs --batch

After (with robopages):

- name: "SQL injection test"
  type: robopage
  tool: sqlmap_scan
  parameters:
    target: "{{ target }}"

Benefits

  1. Standardization: Consistent interface for all security tools
  2. Validation: Parameters checked before execution
  3. Isolation: Automatic container management
  4. Discovery: LLMs can query available tools
  5. Maintenance: Easier to add/update tools

Success Criteria

  • All major security tools accessible via robopages
  • Existing playbooks work with minimal modifications
  • Improved error messages and parameter validation
  • Tool discovery endpoint for LLMs
  • Performance overhead < 10% vs direct execution

Related Issues

/cc @gyrusdentatus - This will significantly improve how LLMs interact with security tools in LLOLWKI

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions