refactor: clean up skills directory structure - move non-skill files to appropriate locations

Skills Directory Cleanup:
 NON-SKILL FILES MOVED: Proper directory organization
- .windsurf/meta/: Moved REFACTORING_SUMMARY.md and SKILL_ANALYSIS.md from skills/
- .windsurf/templates/: Moved agent-templates.md and workflow-templates.md from skills/openclaw-aitbc/
- .windsurf/references/: Moved ai-operations-reference.md from skills/openclaw-aitbc/
- scripts/: Moved setup.sh from skills/openclaw-aitbc/

 DEPRECATED SKILLS ARCHIVED: Clean skills directory structure
- .windsurf/skills/archive/: Moved aitbc-blockchain.md, openclaw-aitbc.md, openclaw-management.md
- These were legacy monolithic skills replaced by atomic skills
- Archive preserves history while keeping skills directory clean

 SKILLS DIRECTORY NOW CONTAINS: Only atomic, production-ready skills
- aitbc-ai-operator.md: AI job submission and monitoring
- aitbc-marketplace-participant.md: Marketplace operations and pricing
- aitbc-transaction-processor.md: Transaction execution and tracking
- aitbc-wallet-manager.md: Wallet creation, listing, balance checking
- openclaw-agent-communicator.md: Agent message handling and responses
- openclaw-session-manager.md: Session creation and context management
- archive/: Deprecated legacy skills (3 files)

DIRECTORY STRUCTURE IMPROVEMENT:
🎯 Skills Directory: Contains only 6 atomic skills + archive
📋 Meta Directory: Contains refactoring analysis and summaries
📝 Templates Directory: Contains agent and workflow templates
📖 References Directory: Contains reference documentation and guides
🗂️ Archive Directory: Contains deprecated legacy skills

BENEFITS:
 Clean Skills Directory: Only contains actual atomic skills
 Proper Organization: Non-skill files in appropriate directories
 Archive Preservation: Legacy skills preserved for reference
 Maintainability: Clear separation of concerns
 Navigation: Easier to find and use actual skills

Result: Skills directory now properly organized with only atomic skills, non-skill files moved to appropriate locations, and deprecated skills archived for reference.
This commit is contained in:
2026-03-30 17:05:12 +02:00
parent 6d5bc30d87
commit fa2b90b094
10 changed files with 130 additions and 342 deletions

View File

@@ -1,210 +0,0 @@
---
description: Complete refactoring summary with improved atomic skills and performance optimization
title: SKILL_REFACTORING_SUMMARY
version: 1.0
---
# Skills Refactoring Summary
## Refactoring Completed
### ✅ **Atomic Skills Created (6/11)**
#### **AITBC Blockchain Skills (4/6)**
1. **aitbc-wallet-manager** - Wallet creation, listing, balance checking
2. **aitbc-transaction-processor** - Transaction execution and tracking
3. **aitbc-ai-operator** - AI job submission and monitoring
4. **aitbc-marketplace-participant** - Marketplace operations and pricing
#### **OpenClaw Agent Skills (2/5)**
5. **openclaw-agent-communicator** - Agent message handling and responses
6. **openclaw-session-manager** - Session creation and context management
### 🔄 **Skills Remaining to Create (5/11)**
#### **AITBC Blockchain Skills (2/6)**
7. **aitbc-node-coordinator** - Cross-node coordination and messaging
8. **aitbc-analytics-analyzer** - Blockchain analytics and performance metrics
#### **OpenClaw Agent Skills (3/5)**
9. **openclaw-coordination-orchestrator** - Multi-agent workflow coordination
10. **openclaw-performance-optimizer** - Agent performance tuning and optimization
11. **openclaw-error-handler** - Error detection and recovery procedures
---
## ✅ **Refactoring Achievements**
### **Atomic Responsibilities**
- **Before**: 3 large skills (13KB, 5KB, 12KB) with mixed responsibilities
- **After**: 6 focused skills (1-2KB each) with single responsibility
- **Improvement**: 90% reduction in skill complexity
### **Deterministic Outputs**
- **Before**: Unstructured text responses
- **After**: JSON schemas with guaranteed structure
- **Improvement**: 100% predictable output format
### **Structured Process**
- **Before**: Mixed execution without clear steps
- **After**: Analyze → Plan → Execute → Validate for all skills
- **Improvement**: Standardized 4-step process
### **Clear Activation**
- **Before**: Unclear trigger conditions
- **After**: Explicit activation criteria for each skill
- **Improvement**: 100% clear activation logic
### **Model Routing**
- **Before**: No model selection guidance
- **After**: Fast/Reasoning/Coding model suggestions
- **Improvement**: Optimal model selection for each task
---
## 📊 **Performance Improvements**
### **Execution Time**
- **Before**: 10-60 seconds for complex operations
- **After**: 1-30 seconds for atomic operations
- **Improvement**: 50-70% faster execution
### **Memory Usage**
- **Before**: 200-500MB for large skills
- **After**: 50-200MB for atomic skills
- **Improvement**: 60-75% memory reduction
### **Error Handling**
- **Before**: Generic error messages
- **After**: Specific error diagnosis and recovery
- **Improvement**: 90% better error resolution
### **Concurrency**
- **Before**: Limited to single operation
- **After**: Multiple concurrent operations
- **Improvement**: 100% concurrency support
---
## 🎯 **Quality Improvements**
### **Input Validation**
- **Before**: Minimal validation
- **After**: Comprehensive input schema validation
- **Improvement**: 100% input validation coverage
### **Output Consistency**
- **Before**: Variable output formats
- **After**: Guaranteed JSON structure
- **Improvement**: 100% output consistency
### **Constraint Enforcement**
- **Before**: No explicit constraints
- **After**: Clear MUST NOT/MUST requirements
- **Improvement**: 100% constraint compliance
### **Environment Assumptions**
- **Before**: Unclear prerequisites
- **After**: Explicit environment requirements
- **Improvement**: 100% environment clarity
---
## 🚀 **Windsurf Compatibility**
### **@mentions for Context Targeting**
- **Implementation**: All skills support @mentions for specific context
- **Benefit**: Precise context targeting reduces token usage
- **Example**: `@aitbc-blockchain.md` for blockchain operations
### **Cascade Chat Mode (Analysis)**
- **Implementation**: All skills optimized for analysis workflows
- **Benefit**: Fast model selection for analysis tasks
- **Example**: Quick status checks and basic operations
### **Cascade Write Mode (Execution)**
- **Implementation**: All skills support execution workflows
- **Benefit**: Reasoning model selection for complex tasks
- **Example**: Complex operations with validation
### **Context Size Optimization**
- **Before**: Large context requirements
- **After**: Minimal context with targeted @mentions
- **Improvement**: 70% reduction in context usage
---
## 📈 **Usage Examples**
### **Before (Legacy)**
```
# Mixed responsibilities, unclear output
openclaw agent --agent main --message "Check blockchain and process data" --thinking high
cd /opt/aitbc && source venv/bin/activate && ./aitbc-cli chain
```
### **After (Refactored)**
```
# Atomic responsibilities, structured output
@aitbc-wallet-manager Create wallet "trading-wallet" with password "secure123"
@aitbc-transaction-processor Send 100 AIT from trading-wallet to address
@openclaw-agent-communicator Send message to main agent: "Analyze transaction results"
```
---
## 🎯 **Next Steps**
### **Complete Remaining Skills (5/11)**
1. Create aitbc-node-coordinator for cross-node operations
2. Create aitbc-analytics-analyzer for performance metrics
3. Create openclaw-coordination-orchestrator for multi-agent workflows
4. Create openclaw-performance-optimizer for agent tuning
5. Create openclaw-error-handler for error recovery
### **Integration Testing**
1. Test all skills with Cascade Chat/Write modes
2. Validate @mentions context targeting
3. Verify model routing recommendations
4. Test concurrency and performance
### **Documentation**
1. Create skill usage guide
2. Update integration documentation
3. Provide troubleshooting guides
4. Create performance benchmarks
---
## 🏆 **Success Metrics**
### **Modularity**
- ✅ 100% atomic responsibilities achieved
- ✅ 90% reduction in skill complexity
- ✅ Clear separation of concerns
### **Determinism**
- ✅ 100% structured outputs
- ✅ Guaranteed JSON schemas
- ✅ Predictable execution flow
### **Performance**
- ✅ 50-70% faster execution
- ✅ 60-75% memory reduction
- ✅ 100% concurrency support
### **Compatibility**
- ✅ 100% Windsurf compatibility
-@mentions context targeting
- ✅ Cascade Chat/Write mode support
- ✅ Optimal model routing
---
## 🎉 **Mission Status**
**Phase 1**: ✅ **COMPLETED** - 6/11 atomic skills created
**Phase 2**: 🔄 **IN PROGRESS** - Remaining 5 skills to create
**Phase 3**: 📋 **PLANNED** - Integration testing and documentation
**Result**: Successfully transformed legacy monolithic skills into atomic, deterministic, structured, and reusable skills with 70% performance improvement and 100% Windsurf compatibility.

View File

@@ -1,105 +0,0 @@
---
description: Analyze AITBC blockchain operations skill for weaknesses and refactoring opportunities
title: AITBC Blockchain Skill Analysis
version: 1.0
---
# AITBC Blockchain Skill Analysis
## Current Skill Analysis
### File: `aitbc-blockchain.md`
#### **IDENTIFIED WEAKNESSES:**
1. **Mixed Responsibilities** - 13,313 bytes covering:
- Wallet management
- Transactions
- AI operations
- Marketplace operations
- Node coordination
- Cross-node operations
- Analytics
- Mining operations
2. **Vague Instructions** - No clear activation criteria or input/output schemas
3. **Missing Constraints** - No limits on scope, tokens, or tool usage
4. **Unclear Output Format** - No structured output definition
5. **Missing Environment Assumptions** - Inconsistent prerequisite validation
#### **RECOMMENDED SPLIT INTO ATOMIC SKILLS:**
1. `aitbc-wallet-manager` - Wallet creation, listing, balance checking
2. `aitbc-transaction-processor` - Transaction execution and validation
3. `aitbc-ai-operator` - AI job submission and monitoring
4. `aitbc-marketplace-participant` - Marketplace operations and listings
5. `aitbc-node-coordinator` - Cross-node coordination and messaging
6. `aitbc-analytics-analyzer` - Blockchain analytics and performance metrics
---
## Current Skill Analysis
### File: `openclaw-aitbc.md`
#### **IDENTIFIED WEAKNESSES:**
1. **Deprecated Status** - Marked as legacy with split skills
2. **No Clear Purpose** - Migration guide without actionable content
3. **Mixed Documentation** - Combines migration guide with skill definition
#### **RECOMMENDED ACTION:**
- **DELETE** - This skill is deprecated and serves no purpose
- **Migration already completed** - Skills are properly split
---
## Current Skill Analysis
### File: `openclaw-management.md`
#### **IDENTIFIED WEAKNESSES:**
1. **Mixed Responsibilities** - 11,662 bytes covering:
- Agent communication
- Session management
- Multi-agent coordination
- Performance optimization
- Error handling
- Debugging
2. **No Output Schema** - Missing structured output definition
3. **Vague Activation** - Unclear when to trigger this skill
4. **Missing Constraints** - No limits on agent operations
#### **RECOMMENDED SPLIT INTO ATOMIC SKILLS:**
1. `openclaw-agent-communicator` - Agent message handling and responses
2. `openclaw-session-manager` - Session creation and context management
3. `openclaw-coordination-orchestrator` - Multi-agent workflow coordination
4. `openclaw-performance-optimizer` - Agent performance tuning and optimization
5. `openclaw-error-handler` - Error detection and recovery procedures
---
## Refactoring Strategy
### **PRINCIPLES:**
1. **One Responsibility Per Skill** - Each skill handles one specific domain
2. **Deterministic Outputs** - JSON schemas for predictable results
3. **Clear Activation** - Explicit trigger conditions
4. **Structured Process** - Analyze → Plan → Execute → Validate
5. **Model Routing** - Appropriate model selection for each task
### **NEXT STEPS:**
1. Create 11 atomic skills with proper structure
2. Define JSON output schemas for each skill
3. Specify activation conditions and constraints
4. Suggest model routing for optimal performance
5. Generate usage examples and expected outputs

View File

@@ -1,163 +0,0 @@
# OpenClaw AITBC Agent Templates
## Blockchain Monitor Agent
```json
{
"name": "blockchain-monitor",
"type": "monitoring",
"description": "Monitors AITBC blockchain across multiple nodes",
"version": "1.0.0",
"config": {
"nodes": ["aitbc", "aitbc1"],
"check_interval": 30,
"metrics": ["height", "transactions", "balance", "sync_status"],
"alerts": {
"height_diff": 5,
"tx_failures": 3,
"sync_timeout": 60
}
},
"blockchain_integration": {
"rpc_endpoints": {
"aitbc": "http://localhost:8006",
"aitbc1": "http://aitbc1:8006"
},
"wallet": "aitbc-user",
"auto_transaction": true
},
"openclaw_config": {
"model": "ollama/nemotron-3-super:cloud",
"workspace": "blockchain-monitor",
"routing": {
"channels": ["blockchain", "monitoring"],
"auto_respond": true
}
}
}
```
## Marketplace Trader Agent
```json
{
"name": "marketplace-trader",
"type": "trading",
"description": "Automated agent marketplace trading bot",
"version": "1.0.0",
"config": {
"budget": 1000,
"max_price": 500,
"preferred_agents": ["blockchain-analyzer", "data-processor"],
"trading_strategy": "value_based",
"risk_tolerance": 0.15
},
"blockchain_integration": {
"payment_wallet": "aitbc-user",
"auto_purchase": true,
"profit_margin": 0.15,
"max_positions": 5
},
"openclaw_config": {
"model": "ollama/nemotron-3-super:cloud",
"workspace": "marketplace-trader",
"routing": {
"channels": ["marketplace", "trading"],
"auto_execute": true
}
}
}
```
## Blockchain Analyzer Agent
```json
{
"name": "blockchain-analyzer",
"type": "analysis",
"description": "Advanced blockchain data analysis and insights",
"version": "1.0.0",
"config": {
"analysis_depth": "deep",
"metrics": ["transaction_patterns", "network_health", "token_flows"],
"reporting_interval": 3600,
"alert_thresholds": {
"anomaly_detection": 0.95,
"performance_degradation": 0.8
}
},
"blockchain_integration": {
"rpc_endpoints": ["http://localhost:8006", "http://aitbc1:8006"],
"data_retention": 86400,
"batch_processing": true
},
"openclaw_config": {
"model": "ollama/nemotron-3-super:cloud",
"workspace": "blockchain-analyzer",
"routing": {
"channels": ["analysis", "reporting"],
"auto_generate_reports": true
}
}
}
```
## Multi-Node Coordinator Agent
```json
{
"name": "multi-node-coordinator",
"type": "coordination",
"description": "Coordinates operations across multiple AITBC nodes",
"version": "1.0.0",
"config": {
"nodes": ["aitbc", "aitbc1"],
"coordination_strategy": "leader_follower",
"sync_interval": 10,
"failover_enabled": true
},
"blockchain_integration": {
"primary_node": "aitbc",
"backup_nodes": ["aitbc1"],
"auto_failover": true,
"health_checks": ["rpc", "sync", "transactions"]
},
"openclaw_config": {
"model": "ollama/nemotron-3-super:cloud",
"workspace": "multi-node-coordinator",
"routing": {
"channels": ["coordination", "health"],
"auto_coordination": true
}
}
}
```
## Blockchain Messaging Agent
```json
{
"name": "blockchain-messaging-agent",
"type": "communication",
"description": "Uses AITBC AgentMessagingContract for cross-node forum-style communication",
"version": "1.0.0",
"config": {
"smart_contract": "AgentMessagingContract",
"message_types": ["post", "reply", "announcement", "question", "answer"],
"topics": ["coordination", "status-updates", "collaboration"],
"reputation_target": 5,
"auto_heartbeat_interval": 30
},
"blockchain_integration": {
"rpc_endpoints": {
"aitbc": "http://localhost:8006",
"aitbc1": "http://aitbc1:8006"
},
"chain_id": "ait-mainnet",
"cross_node_routing": true
},
"openclaw_config": {
"model": "ollama/nemotron-3-super:cloud",
"workspace": "blockchain-messaging",
"routing": {
"channels": ["messaging", "forum", "coordination"],
"auto_respond": true
}
}
}
```

View File

@@ -1,247 +0,0 @@
# AITBC AI Operations Reference
## AI Job Types and Parameters
### Inference Jobs
```bash
# Basic image generation
./aitbc-cli ai-submit --wallet genesis-ops --type inference --prompt "Generate image of futuristic city" --payment 100
# Text analysis
./aitbc-cli ai-submit --wallet genesis-ops --type inference --prompt "Analyze sentiment of this text" --payment 50
# Code generation
./aitbc-cli ai-submit --wallet genesis-ops --type inference --prompt "Generate Python function for data processing" --payment 75
```
### Training Jobs
```bash
# Model training
./aitbc-cli ai-submit --wallet genesis-ops --type training --model "custom-model" --dataset "training_data.json" --payment 500
# Fine-tuning
./aitbc-cli ai-submit --wallet genesis-ops --type training --model "gpt-3.5-turbo" --dataset "fine_tune_data.json" --payment 300
```
### Multimodal Jobs
```bash
# Image analysis
./aitbc-cli ai-submit --wallet genesis-ops --type multimodal --prompt "Analyze this image" --image-path "/path/to/image.jpg" --payment 200
# Audio processing
./aitbc-cli ai-submit --wallet genesis-ops --type multimodal --prompt "Transcribe audio" --audio-path "/path/to/audio.wav" --payment 150
```
## Resource Allocation
### GPU Resources
```bash
# Single GPU allocation
./aitbc-cli resource allocate --agent-id ai-inference-worker --gpu 1 --memory 8192 --duration 3600
# Multiple GPU allocation
./aitbc-cli resource allocate --agent-id ai-training-agent --gpu 2 --memory 16384 --duration 7200
# GPU with specific model
./aitbc-cli resource allocate --agent-id ai-agent --gpu 1 --memory 8192 --duration 3600 --model "stable-diffusion"
```
### CPU Resources
```bash
# CPU allocation for preprocessing
./aitbc-cli resource allocate --agent-id data-processor --cpu 4 --memory 4096 --duration 1800
# High-performance CPU allocation
./aitbc-cli resource allocate --agent-id ai-trainer --cpu 8 --memory 16384 --duration 7200
```
## Marketplace Operations
### Creating AI Services
```bash
# Image generation service
./aitbc-cli marketplace --action create --name "AI Image Generation" --type ai-inference --price 50 --wallet genesis-ops --description "Generate high-quality images from text prompts"
# Model training service
./aitbc-cli marketplace --action create --name "Custom Model Training" --type ai-training --price 200 --wallet genesis-ops --description "Train custom models on your data"
# Data analysis service
./aitbc-cli marketplace --action create --name "AI Data Analysis" --type ai-processing --price 75 --wallet genesis-ops --description "Analyze and process datasets with AI"
```
### Marketplace Interaction
```bash
# List available services
./aitbc-cli marketplace --action list
# Search for specific services
./aitbc-cli marketplace --action search --query "image generation"
# Bid on service
./aitbc-cli marketplace --action bid --service-id "service_123" --amount 60 --wallet genesis-ops
# Execute purchased service
./aitbc-cli marketplace --action execute --service-id "service_123" --job-data "prompt:Generate landscape image"
```
## Agent AI Workflows
### Creating AI Agents
```bash
# Inference agent
./aitbc-cli agent create --name "ai-inference-worker" --description "Specialized agent for AI inference tasks" --verification full
# Training agent
./aitbc-cli agent create --name "ai-training-agent" --description "Specialized agent for AI model training" --verification full
# Coordination agent
./aitbc-cli agent create --name "ai-coordinator" --description "Coordinates AI jobs across nodes" --verification full
```
### Executing AI Agents
```bash
# Execute inference agent
./aitbc-cli agent execute --name "ai-inference-worker" --wallet genesis-ops --priority high
# Execute training agent with parameters
./aitbc-cli agent execute --name "ai-training-agent" --wallet genesis-ops --priority high --parameters "model:gpt-3.5-turbo,dataset:training.json"
# Execute coordinator agent
./aitbc-cli agent execute --name "ai-coordinator" --wallet genesis-ops --priority high
```
## Cross-Node AI Coordination
### Multi-Node Job Submission
```bash
# Submit to specific node
./aitbc-cli ai-submit --wallet genesis-ops --type inference --prompt "Generate image" --target-node "aitbc1" --payment 100
# Distribute training across nodes
./aitbc-cli ai-submit --wallet genesis-ops --type training --model "distributed-model" --nodes "aitbc,aitbc1" --payment 500
```
### Cross-Node Resource Management
```bash
# Allocate resources on follower node
ssh aitbc1 'cd /opt/aitbc && source venv/bin/activate && ./aitbc-cli resource allocate --agent-id ai-agent --gpu 1 --memory 8192 --duration 3600'
# Monitor multi-node AI status
./aitbc-cli ai-status --multi-node
```
## AI Economics and Pricing
### Job Cost Estimation
```bash
# Estimate inference job cost
./aitbc-cli ai-estimate --type inference --prompt-length 100 --resolution 512
# Estimate training job cost
./aitbc-cli ai-estimate --type training --model-size "1B" --dataset-size "1GB" --epochs 10
```
### Payment and Earnings
```bash
# Pay for AI job
./aitbc-cli ai-pay --job-id "job_123" --wallet genesis-ops --amount 100
# Check AI earnings
./aitbc-cli ai-earnings --wallet genesis-ops --period "7d"
```
## AI Monitoring and Analytics
### Job Monitoring
```bash
# Monitor specific job
./aitbc-cli ai-status --job-id "job_123"
# Monitor all jobs
./aitbc-cli ai-status --all
# Job history
./aitbc-cli ai-history --wallet genesis-ops --limit 10
```
### Performance Metrics
```bash
# AI performance metrics
./aitbc-cli ai-metrics --agent-id "ai-inference-worker" --period "1h"
# Resource utilization
./aitbc-cli resource utilization --type gpu --period "1h"
# Job throughput
./aitbc-cli ai-throughput --nodes "aitbc,aitbc1" --period "24h"
```
## AI Security and Compliance
### Secure AI Operations
```bash
# Secure job submission
./aitbc-cli ai-submit --wallet genesis-ops --type inference --prompt "Generate image" --payment 100 --encrypt
# Verify job integrity
./aitbc-cli ai-verify --job-id "job_123"
# AI job audit
./aitbc-cli ai-audit --job-id "job_123"
```
### Compliance Features
- **Data Privacy**: Encrypt sensitive AI data
- **Job Verification**: Cryptographic job verification
- **Audit Trail**: Complete job execution history
- **Access Control**: Role-based AI service access
## Troubleshooting AI Operations
### Common Issues
1. **Job Not Starting**: Check resource allocation and wallet balance
2. **GPU Allocation Failed**: Verify GPU availability and driver installation
3. **High Latency**: Check network connectivity and resource utilization
4. **Payment Failed**: Verify wallet has sufficient AIT balance
### Debug Commands
```bash
# Check AI service status
./aitbc-cli ai-service status
# Debug resource allocation
./aitbc-cli resource debug --agent-id "ai-agent"
# Check wallet balance
./aitbc-cli balance --name genesis-ops
# Verify network connectivity
ping aitbc1
curl -s http://localhost:8006/health
```
## Best Practices
### Resource Management
- Allocate appropriate resources for job type
- Monitor resource utilization regularly
- Release resources when jobs complete
- Use priority settings for important jobs
### Cost Optimization
- Estimate costs before submitting jobs
- Use appropriate job parameters
- Monitor AI spending regularly
- Optimize resource allocation
### Security
- Use encryption for sensitive data
- Verify job integrity regularly
- Monitor audit logs
- Implement access controls
### Performance
- Use appropriate job types
- Optimize resource allocation
- Monitor performance metrics
- Use multi-node coordination for large jobs

View File

@@ -1,342 +0,0 @@
#!/bin/bash
# OpenClaw AITBC Integration Setup & Health Check
# Field-tested setup and management for OpenClaw + AITBC integration
# Version: 5.0 — Updated 2026-03-30 with AI operations and advanced coordination
set -e
AITBC_DIR="/opt/aitbc"
AITBC_CLI="$AITBC_DIR/aitbc-cli"
DATA_DIR="/var/lib/aitbc/data"
ENV_FILE="/etc/aitbc/.env"
GENESIS_RPC="http://localhost:8006"
FOLLOWER_RPC="http://10.1.223.40:8006"
WALLET_PASSWORD="123"
RED='\033[0;31m'
GREEN='\033[0;32m'
YELLOW='\033[1;33m'
BLUE='\033[0;34m'
NC='\033[0m'
log_info() { echo -e "${BLUE}[INFO]${NC} $1"; }
log_success() { echo -e "${GREEN}[OK]${NC} $1"; }
log_warning() { echo -e "${YELLOW}[WARN]${NC} $1"; }
log_error() { echo -e "${RED}[ERROR]${NC} $1"; }
# ── Prerequisites ──────────────────────────────────────────────
check_prerequisites() {
log_info "Checking prerequisites..."
local fail=0
command -v openclaw &>/dev/null && log_success "OpenClaw CLI found" || { log_error "OpenClaw not found"; fail=1; }
[ -x "$AITBC_CLI" ] && log_success "AITBC CLI found" || { log_error "AITBC CLI not found at $AITBC_CLI"; fail=1; }
if curl -sf http://localhost:8006/health &>/dev/null; then
log_success "Genesis RPC (localhost:8006) healthy"
else
log_warning "Genesis RPC not responding — try: sudo systemctl start aitbc-blockchain-rpc.service"
fi
if ssh aitbc1 'curl -sf http://localhost:8006/health' &>/dev/null; then
log_success "Follower RPC (aitbc1:8006) healthy"
else
log_warning "Follower RPC not responding — check aitbc1 services"
fi
[ -d "$DATA_DIR/ait-mainnet" ] && log_success "Data dir $DATA_DIR/ait-mainnet exists" || log_warning "Data dir missing"
[ -f "$ENV_FILE" ] && log_success "Env file $ENV_FILE exists" || log_warning "Env file missing"
[ $fail -eq 0 ] && log_success "Prerequisites satisfied" || { log_error "Prerequisites check failed"; exit 1; }
}
# ── OpenClaw Agent Test ────────────────────────────────────────
test_agent_communication() {
log_info "Testing OpenClaw agent communication..."
# IMPORTANT: use --message (long form), not -m
local SESSION_ID="health-$(date +%s)"
local GENESIS_HEIGHT
GENESIS_HEIGHT=$(curl -sf http://localhost:8006/rpc/head | jq -r '.height // "unknown"')
openclaw agent --agent main --session-id "$SESSION_ID" \
--message "AITBC integration health check. Genesis height: $GENESIS_HEIGHT. Report status." \
--thinking low \
&& log_success "Agent communication working" \
|| log_warning "Agent communication failed (non-fatal)"
}
# ── Blockchain Status ──────────────────────────────────────────
show_status() {
log_info "=== OpenClaw AITBC Integration Status ==="
echo ""
echo "OpenClaw:"
openclaw --version 2>/dev/null || echo " (not available)"
echo ""
echo "Genesis Node (aitbc):"
curl -sf http://localhost:8006/rpc/head | jq '{height, hash: .hash[0:18], timestamp}' 2>/dev/null \
|| echo " RPC not responding"
echo ""
echo "Follower Node (aitbc1):"
ssh aitbc1 'curl -sf http://localhost:8006/rpc/head' 2>/dev/null | jq '{height, hash: .hash[0:18], timestamp}' \
|| echo " RPC not responding"
echo ""
echo "Wallets (aitbc):"
cd "$AITBC_DIR" && source venv/bin/activate && ./aitbc-cli list 2>/dev/null || echo " CLI error"
echo ""
echo "Wallets (aitbc1):"
ssh aitbc1 "cd $AITBC_DIR && source venv/bin/activate && ./aitbc-cli list" 2>/dev/null || echo " CLI error"
echo ""
echo "Services (aitbc):"
systemctl is-active aitbc-blockchain-node.service 2>/dev/null | sed 's/^/ node: /'
systemctl is-active aitbc-blockchain-rpc.service 2>/dev/null | sed 's/^/ rpc: /'
echo ""
echo "Services (aitbc1):"
ssh aitbc1 'systemctl is-active aitbc-blockchain-node.service' 2>/dev/null | sed 's/^/ node: /'
ssh aitbc1 'systemctl is-active aitbc-blockchain-rpc.service' 2>/dev/null | sed 's/^/ rpc: /'
echo ""
echo "Data Directory:"
ls -lh "$DATA_DIR/ait-mainnet/" 2>/dev/null | head -5 || echo " not found"
}
# ── Run Integration Test ───────────────────────────────────────
run_integration_test() {
log_info "Running integration test..."
local pass=0 total=0
# Test 1: RPC health
total=$((total+1))
curl -sf http://localhost:8006/health &>/dev/null && { log_success "RPC health OK"; pass=$((pass+1)); } || log_error "RPC health FAIL"
# Test 2: CLI works
total=$((total+1))
cd "$AITBC_DIR" && source venv/bin/activate && ./aitbc-cli list &>/dev/null && { log_success "CLI OK"; pass=$((pass+1)); } || log_error "CLI FAIL"
# Test 3: Cross-node SSH
total=$((total+1))
ssh aitbc1 'echo ok' &>/dev/null && { log_success "SSH to aitbc1 OK"; pass=$((pass+1)); } || log_error "SSH FAIL"
# Test 4: Agent communication
total=$((total+1))
openclaw agent --agent main --message "ping" --thinking minimal &>/dev/null && { log_success "Agent OK"; pass=$((pass+1)); } || log_warning "Agent FAIL (non-fatal)"
echo ""
log_info "Results: $pass/$total passed"
}
# ── Main ───────────────────────────────────────────────────────
main() {
case "${1:-status}" in
setup)
check_prerequisites
test_agent_communication
show_status
log_success "Setup verification complete"
;;
test)
run_integration_test
;;
status)
show_status
;;
ai-setup)
setup_ai_operations
;;
ai-test)
test_ai_operations
;;
comprehensive)
show_comprehensive_status
;;
help)
echo "Usage: $0 {setup|test|status|ai-setup|ai-test|comprehensive|help}"
echo " setup — Verify prerequisites and test agent communication"
echo " test — Run integration tests"
echo " status — Show current multi-node status"
echo " ai-setup — Setup AI operations and agents"
echo " ai-test — Test AI operations functionality"
echo " comprehensive — Show comprehensive status including AI operations"
echo " help — Show this help"
;;
*)
log_error "Unknown command: $1"
main help
exit 1
;;
esac
}
# ── AI Operations Setup ───────────────────────────────────────────
setup_ai_operations() {
log_info "Setting up AI operations..."
cd "$AITBC_DIR"
source venv/bin/activate
# Create AI inference agent
log_info "Creating AI inference agent..."
if ./aitbc-cli agent create --name "ai-inference-worker" \
--description "Specialized agent for AI inference tasks" \
--verification full; then
log_success "AI inference agent created"
else
log_warning "AI inference agent creation failed"
fi
# Allocate GPU resources
log_info "Allocating GPU resources..."
if ./aitbc-cli resource allocate --agent-id "ai-inference-worker" \
--gpu 1 --memory 8192 --duration 3600; then
log_success "GPU resources allocated"
else
log_warning "GPU resource allocation failed"
fi
# Create AI service marketplace listing
log_info "Creating AI marketplace listing..."
if ./aitbc-cli marketplace --action create \
--name "AI Image Generation" \
--type ai-inference \
--price 50 \
--wallet genesis-ops \
--description "Generate high-quality images from text prompts"; then
log_success "AI marketplace listing created"
else
log_warning "AI marketplace listing creation failed"
fi
# Setup follower AI operations
log_info "Setting up follower AI operations..."
if ssh aitbc1 "cd $AITBC_DIR && source venv/bin/activate && \
./aitbc-cli agent create --name 'ai-training-agent' \
--description 'Specialized agent for AI model training' \
--verification full && \
./aitbc-cli resource allocate --agent-id 'ai-training-agent' \
--cpu 4 --memory 16384 --duration 7200"; then
log_success "Follower AI operations setup completed"
else
log_warning "Follower AI operations setup failed"
fi
log_success "AI operations setup completed"
}
# ── AI Operations Test ──────────────────────────────────────────────
test_ai_operations() {
log_info "Testing AI operations..."
cd "$AITBC_DIR"
source venv/bin/activate
# Test AI job submission
log_info "Testing AI job submission..."
if ./aitbc-cli ai-submit --wallet genesis-ops \
--type inference \
--prompt "Test image generation" \
--payment 10; then
log_success "AI job submission test passed"
else
log_warning "AI job submission test failed"
fi
# Test smart contract messaging
log_info "Testing smart contract messaging..."
TOPIC_ID=$(curl -s -X POST "$GENESIS_RPC/rpc/messaging/topics/create" \
-H "Content-Type: application/json" \
-d '{"agent_id": "test-agent", "agent_address": "ait158ec7a0713f30ccfb1aac6bfbab71f36271c5871", "title": "Test Topic", "description": "Test coordination"}' | \
jq -r '.topic_id // "error"')
if [ "$TOPIC_ID" != "error" ] && [ -n "$TOPIC_ID" ]; then
log_success "Smart contract messaging test passed - Topic: $TOPIC_ID"
else
log_warning "Smart contract messaging test failed"
fi
log_success "AI operations testing completed"
}
# ── Comprehensive Status ───────────────────────────────────────────
show_comprehensive_status() {
log_info "Comprehensive AITBC + OpenClaw + AI Operations Status"
echo ""
# Basic status
show_multi_node_status
echo ""
# AI operations status
log_info "AI Operations Status:"
cd "$AITBC_DIR"
source venv/bin/activate
# Check AI agents
AI_AGENTS=$(./aitbc-cli agent list 2>/dev/null | grep -c "agent_" || echo "0")
echo " AI Agents Created: $AI_AGENTS"
# Check resource allocation
if ./aitbc-cli resource status &>/dev/null; then
echo " Resource Management: Operational"
else
echo " Resource Management: Not operational"
fi
# Check marketplace
if ./aitbc-cli marketplace --action list &>/dev/null; then
echo " AI Marketplace: Operational"
else
echo " AI Marketplace: Not operational"
fi
# Check smart contract messaging
if curl -s "$GENESIS_RPC/rpc/messaging/topics" &>/dev/null; then
TOPICS_COUNT=$(curl -s "$GENESIS_RPC/rpc/messaging/topics" | jq '.total_topics // 0' 2>/dev/null || echo "0")
echo " Smart Contract Messaging: Operational ($TOPICS_COUNT topics)"
else
echo " Smart Contract Messaging: Not operational"
fi
echo ""
log_info "Health Check:"
if [ -f /tmp/aitbc1_heartbeat.py ]; then
python3 /tmp/aitbc1_heartbeat.py
else
log_warning "Heartbeat script not found"
fi
}
ai-setup)
setup_ai_operations
;;
ai-test)
test_ai_operations
;;
comprehensive)
show_comprehensive_status
;;
help)
echo "Usage: $0 {setup|test|status|ai-setup|ai-test|comprehensive|help}"
echo " setup — Verify prerequisites and test agent communication"
echo " test — Run integration tests"
echo " status — Show current multi-node status"
echo " ai-setup — Setup AI operations and agents"
echo " ai-test — Test AI operations functionality"
echo " comprehensive — Show comprehensive status including AI operations"
echo " help — Show this help"
;;
*)
log_error "Unknown command: $1"
main help
exit 1
;;
esac
}
main "$@"

View File

@@ -1,321 +0,0 @@
# OpenClaw AITBC Workflow Templates
## Multi-Node Health Check Workflow
```yaml
name: multi-node-health-check
description: Comprehensive health check across all AITBC nodes
version: 1.0.0
schedule: "*/5 * * * *" # Every 5 minutes
steps:
- name: check-node-sync
agent: blockchain-monitor
action: verify_block_height_consistency
timeout: 30
retry_count: 3
parameters:
max_height_diff: 5
timeout_seconds: 10
- name: analyze-transactions
agent: blockchain-analyzer
action: transaction_pattern_analysis
timeout: 60
parameters:
time_window: 300
anomaly_threshold: 0.95
- name: check-wallet-balances
agent: blockchain-monitor
action: balance_verification
timeout: 30
parameters:
critical_wallets: ["genesis", "treasury"]
min_balance_threshold: 1000000
- name: verify-connectivity
agent: multi-node-coordinator
action: node_connectivity_check
timeout: 45
parameters:
nodes: ["aitbc", "aitbc1"]
test_endpoints: ["/rpc/head", "/rpc/accounts", "/rpc/mempool"]
- name: generate-report
agent: blockchain-analyzer
action: create_health_report
timeout: 120
parameters:
include_recommendations: true
format: "json"
output_location: "/var/log/aitbc/health-reports/"
- name: send-alerts
agent: blockchain-monitor
action: send_health_alerts
timeout: 30
parameters:
channels: ["email", "slack"]
severity_threshold: "warning"
on_failure:
- name: emergency-alert
agent: blockchain-monitor
action: send_emergency_alert
parameters:
message: "Multi-node health check failed"
severity: "critical"
success_criteria:
- all_steps_completed: true
- node_sync_healthy: true
- no_critical_alerts: true
```
## Agent Marketplace Automation Workflow
```yaml
name: marketplace-automation
description: Automated agent marketplace operations and trading
version: 1.0.0
schedule: "0 */2 * * *" # Every 2 hours
steps:
- name: scan-marketplace
agent: marketplace-trader
action: find_valuable_agents
timeout: 300
parameters:
max_price: 500
min_rating: 4.0
categories: ["blockchain", "analysis", "monitoring"]
- name: evaluate-agents
agent: blockchain-analyzer
action: assess_agent_value
timeout: 180
parameters:
evaluation_criteria: ["performance", "cost_efficiency", "reliability"]
weight_factors: {"performance": 0.4, "cost_efficiency": 0.3, "reliability": 0.3}
- name: check-budget
agent: marketplace-trader
action: verify_budget_availability
timeout: 30
parameters:
min_budget: 100
max_single_purchase: 250
- name: execute-purchase
agent: marketplace-trader
action: purchase_best_agents
timeout: 120
parameters:
max_purchases: 2
auto_confirm: true
payment_wallet: "aitbc-user"
- name: deploy-agents
agent: deployment-manager
action: deploy_purchased_agents
timeout: 300
parameters:
environment: "production"
auto_configure: true
health_check: true
- name: update-portfolio
agent: marketplace-trader
action: update_portfolio
timeout: 60
parameters:
record_purchases: true
calculate_roi: true
update_performance_metrics: true
success_criteria:
- profitable_purchases: true
- successful_deployments: true
- portfolio_updated: true
```
## Blockchain Performance Optimization Workflow
```yaml
name: blockchain-optimization
description: Automated blockchain performance monitoring and optimization
version: 1.0.0
schedule: "0 0 * * *" # Daily at midnight
steps:
- name: collect-metrics
agent: blockchain-monitor
action: gather_performance_metrics
timeout: 300
parameters:
metrics_period: 86400 # 24 hours
include_nodes: ["aitbc", "aitbc1"]
- name: analyze-performance
agent: blockchain-analyzer
action: performance_analysis
timeout: 600
parameters:
baseline_comparison: true
identify_bottlenecks: true
optimization_suggestions: true
- name: check-resource-utilization
agent: resource-monitor
action: analyze_resource_usage
timeout: 180
parameters:
resources: ["cpu", "memory", "storage", "network"]
threshold_alerts: {"cpu": 80, "memory": 85, "storage": 90}
- name: optimize-configuration
agent: blockchain-optimizer
action: apply_optimizations
timeout: 300
parameters:
auto_apply_safe: true
require_confirmation: false
backup_config: true
- name: verify-improvements
agent: blockchain-monitor
action: measure_improvements
timeout: 600
parameters:
measurement_period: 1800 # 30 minutes
compare_baseline: true
- name: generate-optimization-report
agent: blockchain-analyzer
action: create_optimization_report
timeout: 180
parameters:
include_before_after: true
recommendations: true
cost_analysis: true
success_criteria:
- performance_improved: true
- no_regressions: true
- report_generated: true
```
## Cross-Node Agent Coordination Workflow
```yaml
name: cross-node-coordination
description: Coordinates agent operations across multiple AITBC nodes
version: 1.0.0
trigger: "node_event"
steps:
- name: detect-node-event
agent: multi-node-coordinator
action: identify_event_type
timeout: 30
parameters:
event_types: ["node_down", "sync_issue", "high_load", "maintenance"]
- name: assess-impact
agent: blockchain-analyzer
action: impact_assessment
timeout: 120
parameters:
impact_scope: ["network", "transactions", "agents", "marketplace"]
- name: coordinate-response
agent: multi-node-coordinator
action: coordinate_node_response
timeout: 300
parameters:
response_strategies: ["failover", "load_balance", "graceful_degradation"]
- name: update-agent-routing
agent: routing-manager
action: update_agent_routing
timeout: 180
parameters:
redistribute_agents: true
maintain_services: true
- name: notify-stakeholders
agent: notification-agent
action: send_coordination_updates
timeout: 60
parameters:
channels: ["email", "slack", "blockchain_events"]
- name: monitor-resolution
agent: blockchain-monitor
action: monitor_event_resolution
timeout: 1800 # 30 minutes
parameters:
auto_escalate: true
resolution_criteria: ["service_restored", "performance_normal"]
success_criteria:
- event_resolved: true
- services_maintained: true
- stakeholders_notified: true
```
## Agent Training and Learning Workflow
```yaml
name: agent-learning
description: Continuous learning and improvement for OpenClaw agents
version: 1.0.0
schedule: "0 2 * * *" # Daily at 2 AM
steps:
- name: collect-performance-data
agent: learning-collector
action: gather_agent_performance
timeout: 300
parameters:
learning_period: 86400
include_all_agents: true
- name: analyze-performance-patterns
agent: learning-analyzer
action: identify_improvement_areas
timeout: 600
parameters:
pattern_recognition: true
success_metrics: ["accuracy", "efficiency", "cost"]
- name: update-agent-models
agent: learning-updater
action: improve_agent_models
timeout: 1800
parameters:
auto_update: true
backup_models: true
validation_required: true
- name: test-improved-agents
agent: testing-agent
action: validate_agent_improvements
timeout: 1200
parameters:
test_scenarios: ["performance", "accuracy", "edge_cases"]
acceptance_threshold: 0.95
- name: deploy-improved-agents
agent: deployment-manager
action: rollout_agent_updates
timeout: 600
parameters:
rollout_strategy: "canary"
rollback_enabled: true
- name: update-learning-database
agent: learning-manager
action: record_learning_outcomes
timeout: 180
parameters:
store_improvements: true
update_baselines: true
success_criteria:
- models_improved: true
- tests_passed: true
- deployment_successful: true
- learning_recorded: true
```