chore: consolidate Syslog Solution code into unified repository structure
- Moved scattered scripts, templates, and documentation into organized directories (applications/, scripts/, assets/). - Updated .gitignore to strictly exclude secrets, state files, and IDE configs. - Added comprehensive README.md outlining repository structure and best practices. - Preserved all existing documentation and technical architecture files. - Prepared infrastructure/ for AWS Org and Proxmox Terraform management.
This commit is contained in:
@@ -0,0 +1,182 @@
|
||||
#!/bin/bash
|
||||
# OpenMAIC Education Setup Script
|
||||
# Purpose: Deploy OpenMAIC (Open Multi-Agent AI Collaboration) educational environment
|
||||
# Version: 1.0.0
|
||||
|
||||
set -e
|
||||
|
||||
echo "=== OpenMAIC Educational Environment Setup ==="
|
||||
|
||||
# Configuration
|
||||
OPENMAIC_DIR="${HOME}/projects/openmaic"
|
||||
EDUCATION_DIR="${OPENMAIC_DIR}/education"
|
||||
|
||||
# Create directory structure
|
||||
echo "Setting up OpenMAIC directory structure..."
|
||||
mkdir -p "$OPENMAIC_DIR"
|
||||
mkdir -p "$EDUCATION_DIR/curriculum"
|
||||
mkdir -p "$EDUCATION_DIR/demos"
|
||||
mkdir -p "$EDUCATION_DIR/tutorials"
|
||||
|
||||
# Install OpenMAIC core
|
||||
echo "Installing OpenMAIC framework..."
|
||||
pip install openmaic-core openmaic-editor openmaic-visualizer
|
||||
|
||||
# Create sample agent definitions for education
|
||||
echo "Creating educational agent examples..."
|
||||
cat > "$EDUCATION_DIR/curriculum/agent1_basic_researcher.json" << 'EOF'
|
||||
{
|
||||
"name": "researcher",
|
||||
"role": "Research Assistant",
|
||||
"capabilities": ["web_search", "data_analysis", "summarization"],
|
||||
"context_window": 8192,
|
||||
"model": "qwen3.5:35b"
|
||||
}
|
||||
EOF
|
||||
|
||||
cat > "$EDUCATION_DIR/curriculum/agent2_data_analyst.json" << 'EOF'
|
||||
{
|
||||
"name": "data_analyst",
|
||||
"role": "Data Analysis Specialist",
|
||||
"capabilities": ["pandas", "numpy", "visualization", "statistical_testing"],
|
||||
"context_window": 8192,
|
||||
"model": "qwen3.5:35b"
|
||||
}
|
||||
EOF
|
||||
|
||||
cat > "$EDUCATION_DIR/curriculum/agent3_content_writer.json" << 'EOF'
|
||||
{
|
||||
"name": "content_writer",
|
||||
"role": "Content Generator",
|
||||
"capabilities": ["writing", "editing", "style_transfer"],
|
||||
"context_window": 8192,
|
||||
"model": "qwen3.5:35b"
|
||||
}
|
||||
EOF
|
||||
|
||||
# Create educational demos
|
||||
echo "Creating educational demo workflows..."
|
||||
cat > "$EDUCATION_DIR/demos/agent_collaboration_example.py" << 'EOF'
|
||||
#!/usr/bin/env python3
|
||||
"""
|
||||
OpenMAIC Educational Demo: Multi-Agent Collaboration
|
||||
This demonstrates how agents coordinate to solve complex problems
|
||||
"""
|
||||
|
||||
from openmaic.core import Agent, Orchestrator
|
||||
from openmaic.visualizer import CollaborationVisualizer
|
||||
|
||||
def demonstrate_agent_collaboration():
|
||||
"""Show how agents collaborate to complete a task."""
|
||||
|
||||
# Initialize orchestrator
|
||||
orchestrator = Orchestrator(
|
||||
max_agents=3,
|
||||
collaboration_mode="sequential",
|
||||
output_format="markdown"
|
||||
)
|
||||
|
||||
# Create agents from definitions
|
||||
researcher = Agent.load("$EDUCATION_DIR/curriculum/agent1_basic_researcher.json")
|
||||
analyst = Agent.load("$EDUCATION_DIR/curriculum/agent2_data_analyst.json")
|
||||
writer = Agent.load("$EDUCATION_DIR/curriculum/agent3_content_writer.json")
|
||||
|
||||
# Define collaboration workflow
|
||||
workflow = [
|
||||
{"agent": researcher, "task": "Research AI trends in SMB market"},
|
||||
{"agent": analyst, "task": "Analyze market data and identify opportunities"},
|
||||
{"agent": writer, "task": "Write comprehensive market analysis report"}
|
||||
]
|
||||
|
||||
# Execute and visualize
|
||||
orchestrator.run_workflow(workflow)
|
||||
|
||||
# Display results
|
||||
visualizer = CollaborationVisualizer(orchestrator)
|
||||
print(visualizer.render_collaboration_flow())
|
||||
print(orchestrator.get_final_output())
|
||||
|
||||
return orchestrator.get_results()
|
||||
|
||||
if __name__ == "__main__":
|
||||
demonstrate_agent_collaboration()
|
||||
EOF
|
||||
|
||||
chmod +x "$EDUCATION_DIR/demos/agent_collaboration_example.py"
|
||||
|
||||
# Create curriculum documentation
|
||||
echo "Creating curriculum documentation..."
|
||||
cat > "$EDUCATION_DIR/curriculum/README.md" << 'EOF'
|
||||
# OpenMAIC Educational Curriculum
|
||||
|
||||
This curriculum introduces multi-agent AI systems through hands-on projects.
|
||||
|
||||
## Module 1: Fundamentals
|
||||
- Understanding agent roles and capabilities
|
||||
- Basic Orchestrator configuration
|
||||
- Simple agent collaboration patterns
|
||||
|
||||
## Module 2: Advanced Collaboration
|
||||
- Multi-agent workflow design
|
||||
- Context sharing between agents
|
||||
- Error handling and recovery
|
||||
|
||||
## Module 3: Production Patterns
|
||||
- Scaling to 10+ agents
|
||||
- Performance optimization
|
||||
- Monitoring and diagnostics
|
||||
|
||||
## Module 4: Real-World Applications
|
||||
- Market analysis automation
|
||||
- Customer support orchestration
|
||||
- Content pipeline automation
|
||||
|
||||
## Getting Started
|
||||
|
||||
1. Install OpenMAIC: `pip install openmaic-core openmaic-visualizer`
|
||||
2. Review curriculum guides in `/curriculum/`
|
||||
3. Run demo workflows in `/demos/`
|
||||
4. Participate in hands-on exercises
|
||||
|
||||
## Prerequisites
|
||||
- Python 3.10+
|
||||
- Ollama or similar LLM service
|
||||
- Basic understanding of AI/ML concepts
|
||||
EOF
|
||||
|
||||
# Set up virtual environment
|
||||
echo "Creating virtual environment..."
|
||||
python3 -m venv "$OPENMAIC_DIR/venv"
|
||||
source "$OPENMAIC_DIR/venv/bin/activate"
|
||||
pip install openmaic-core openmaic-editor openmaic-visualizer pandas numpy matplotlib
|
||||
|
||||
# Create environment variables
|
||||
cat > "$OPENMAIC_DIR/.env" << 'EOF'
|
||||
# OpenMAIC Configuration
|
||||
OPENMAIC_LOG_LEVEL=INFO
|
||||
OPENMAIC_MAX_CONCURRENT_AGENTS=5
|
||||
OPENMAIC_COLLABORATION_MODE=sequential
|
||||
|
||||
# Model Setup
|
||||
OLLAMA_BASE_URL=http://localhost:11434
|
||||
QWEN35_ENDPOINT=192.168.68.8:8080
|
||||
|
||||
# Collaboration Settings
|
||||
COLLABORATION_CONTEXT_WINDOW=8192
|
||||
COLLABORATION_TIMEOUT=3600
|
||||
EOF
|
||||
|
||||
# Display summary
|
||||
echo ""
|
||||
echo "=== OpenMAIC Education Environment Ready ==="
|
||||
echo "Directory: $OPENMAIC_DIR"
|
||||
echo "Curriculum: $EDUCATION_DIR/curriculum/"
|
||||
echo "Demos: $EDUCATION_DIR/demos/"
|
||||
echo ""
|
||||
echo "To start learning:"
|
||||
echo "1. cd $OPENMAIC_DIR"
|
||||
echo "2. source venv/bin/activate"
|
||||
echo "3. Run demos: python $EDUCATION_DIR/demos/agent_collaboration_example.py"
|
||||
echo "4. Study curriculum guides in $EDUCATION_DIR/curriculum/"
|
||||
echo ""
|
||||
echo "Perfect for Jerome and Theodore's strategy sessions on AI agent frameworks!"
|
||||
Executable
+95
@@ -0,0 +1,95 @@
|
||||
#!/bin/bash
|
||||
# Setup script for Syslog Solution LLC AWS Organization Terraform
|
||||
|
||||
set -e # Exit on error
|
||||
|
||||
echo "🚀 Syslog Solution LLC AWS Organization Setup"
|
||||
echo "============================================"
|
||||
|
||||
# Check prerequisites
|
||||
echo "🔍 Checking prerequisites..."
|
||||
|
||||
# Check AWS CLI
|
||||
if ! command -v aws &> /dev/null; then
|
||||
echo "❌ AWS CLI not found. Please install AWS CLI first."
|
||||
echo " Visit: https://docs.aws.amazon.com/cli/latest/userguide/getting-started-install.html"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Check Terraform
|
||||
if ! command -v terraform &> /dev/null; then
|
||||
echo "❌ Terraform not found. Please install Terraform first."
|
||||
echo " Visit: https://developer.hashicorp.com/terraform/tutorials/aws-get-started/install-cli"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
echo "✅ Prerequisites check passed"
|
||||
|
||||
# Configure AWS CLI
|
||||
echo ""
|
||||
echo "🔧 Configuring AWS CLI..."
|
||||
echo "Please enter your AWS credentials for the new business account:"
|
||||
|
||||
read -p "AWS Access Key ID: " AWS_ACCESS_KEY_ID
|
||||
read -p "AWS Secret Access Key: " AWS_SECRET_ACCESS_KEY
|
||||
|
||||
aws configure set aws_access_key_id "$AWS_ACCESS_KEY_ID" --profile syslog-business
|
||||
aws configure set aws_secret_access_key "$AWS_SECRET_ACCESS_KEY" --profile syslog-business
|
||||
aws configure set region "us-east-1" --profile syslog-business
|
||||
aws configure set output "json" --profile syslog-business
|
||||
|
||||
echo "✅ AWS CLI configured with profile 'syslog-business'"
|
||||
|
||||
# Test AWS connection
|
||||
echo ""
|
||||
echo "🔗 Testing AWS connection..."
|
||||
if aws sts get-caller-identity --profile syslog-business &> /dev/null; then
|
||||
echo "✅ AWS connection successful"
|
||||
else
|
||||
echo "❌ AWS connection failed. Please check your credentials."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Initialize Terraform
|
||||
echo ""
|
||||
echo "🏗️ Initializing Terraform..."
|
||||
terraform init
|
||||
|
||||
# Copy example variables file
|
||||
echo ""
|
||||
echo "📝 Setting up configuration..."
|
||||
if [ ! -f terraform.tfvars ]; then
|
||||
cp terraform.tfvars.example terraform.tfvars
|
||||
echo "✅ Created terraform.tfvars from example"
|
||||
echo ""
|
||||
echo "⚠️ Please edit terraform.tfvars with your specific values:"
|
||||
echo " - Update email addresses for dev and staging accounts"
|
||||
echo " - Adjust billing alert threshold if needed"
|
||||
echo " - Review other configuration options"
|
||||
echo ""
|
||||
read -p "Press Enter to continue after editing terraform.tfvars..."
|
||||
else
|
||||
echo "✅ terraform.tfvars already exists"
|
||||
fi
|
||||
|
||||
# Show plan
|
||||
echo ""
|
||||
echo "📋 Showing Terraform plan..."
|
||||
terraform plan
|
||||
|
||||
echo ""
|
||||
echo "============================================"
|
||||
echo "🎯 Setup complete! Next steps:"
|
||||
echo ""
|
||||
echo "1. Review the Terraform plan above"
|
||||
echo "2. Apply the configuration:"
|
||||
echo " terraform apply"
|
||||
echo ""
|
||||
echo "3. After applying:"
|
||||
echo " - Check email for AWS account creation invites"
|
||||
echo " - Accept invitations for dev and staging accounts"
|
||||
echo " - Set up AWS IAM Identity Center (SSO)"
|
||||
echo " - Configure AWS profiles for each account"
|
||||
echo ""
|
||||
echo "Need help? Check README.md for detailed instructions."
|
||||
echo "============================================"
|
||||
@@ -0,0 +1,74 @@
|
||||
#!/bin/bash
|
||||
# OpenClaw Framework Setup Script
|
||||
# Version: 1.0.0
|
||||
# Purpose: Initialize OpenClaw agent orchestration environment
|
||||
|
||||
set -e
|
||||
|
||||
echo "=== OpenClaw Framework Setup ==="
|
||||
|
||||
# Configuration
|
||||
OPENCLAW_DIR="${HOME}/projects/openclaw"
|
||||
PYTHON_VERSION="3.11"
|
||||
|
||||
# Check Python version
|
||||
echo "Checking Python version..."
|
||||
python3 --version | grep -q "$PYTHON_VERSION" || echo "Warning: Python $PYTHON_VERSION recommended"
|
||||
|
||||
# Create project directory
|
||||
echo "Creating OpenClaw directory..."
|
||||
mkdir -p "$OPENCLAW_DIR"
|
||||
cd "$OPENCLAW_DIR"
|
||||
|
||||
# Initialize Python virtual environment
|
||||
echo "Setting up virtual environment..."
|
||||
python3 -m venv venv
|
||||
source venv/bin/activate
|
||||
|
||||
# Install OpenClaw dependencies
|
||||
echo "Installing OpenClaw dependencies..."
|
||||
pip install --upgrade pip
|
||||
pip install openclaw-agent
|
||||
pip install pydantic fastapi uvicorn
|
||||
pip install langchain langchain-community
|
||||
|
||||
# Configure environment variables
|
||||
echo "Creating .env file..."
|
||||
cat > .env << 'EOF'
|
||||
# OpenClaw Configuration
|
||||
OPENCLAW_API_KEY=your-api-key-here
|
||||
OPENCLAW_ORCHESTRATOR_URL=http://localhost:8000
|
||||
|
||||
# Model Configuration
|
||||
OPENAI_API_KEY=your-openai-key-here
|
||||
OLLAMA_BASE_URL=http://localhost:11434
|
||||
QWEN35_ENDPOINT=192.168.68.8:8080
|
||||
|
||||
# Agent Registry Settings
|
||||
AGENT_REGISTRY_DIR=./agents
|
||||
MAX_CONCURRENT_AGENTS=5
|
||||
WORKFLOW_TIMEOUT=3600
|
||||
EOF
|
||||
|
||||
# Create agents directory structure
|
||||
echo "Creating agent directory structure..."
|
||||
mkdir -p "$AGENT_REGISTRY_DIR"/researcher
|
||||
mkdir -p "$AGENT_REGISTRY_DIR"/analyst
|
||||
mkdir -p "$AGENT_REGISTRY_DIR"/writer
|
||||
|
||||
# Initialize git repository
|
||||
echo "Initializing git repository..."
|
||||
git init
|
||||
git add .
|
||||
git commit -m "Initial OpenClaw framework setup"
|
||||
|
||||
# Display configuration
|
||||
echo "=== Setup Complete ==="
|
||||
echo "OpenClaw installed at: $OPENCLAW_DIR"
|
||||
echo "Run: source venv/bin/activate"
|
||||
echo "Start orchestrator: python orchestrator.py"
|
||||
echo ""
|
||||
echo "Next steps:"
|
||||
echo "1. Set your API keys in .env file"
|
||||
echo "2. Create custom agent definitions in $AGENT_REGISTRY_DIR/"
|
||||
echo "3. Test with: python test_agents.py"
|
||||
Reference in New Issue
Block a user