BREAKING CHANGE: Split 64KB monolithic workflow into 6 focused modules New Modular Structure: - MULTI_NODE_MASTER_INDEX.md: Central navigation hub for all modules - multi-node-blockchain-setup-core.md: Essential setup steps and basic configuration - multi-node-blockchain-operations.md: Daily operations, monitoring, troubleshooting - multi-node-blockchain-advanced.md: Smart contracts, security testing, performance optimization - multi-node-blockchain-production.md: Production deployment, security hardening, scaling - multi-node-blockchain-marketplace.md: Marketplace testing, GPU provider testing, AI operations - multi-node-blockchain-reference.md: Configuration reference, verification commands, best practices Benefits Achieved: ✅ Improved Maintainability: Each module focuses on specific functionality ✅ Enhanced Usability: Users can load only needed modules ✅ Better Documentation: Each module has focused troubleshooting guides ✅ Clear Dependencies: Explicit module relationships and learning paths ✅ Better Searchability: Find relevant information faster Migration Features: - Original 64KB workflow (2,098 lines) deprecated but preserved - Clear migration guide with section mapping - Master index provides navigation by task, role, and complexity - Cross-references between all modules - Quick start commands for each module Learning Paths: - New Users: Core → Operations → Reference - System Administrators: Core → Operations → Advanced → Reference - Production Engineers: Core → Operations → Advanced → Production → Reference - AI Engineers: Core → Operations → Advanced → Marketplace → Reference Technical Improvements: - Reduced file complexity from 2,098 lines to ~300 lines per module - Module-specific troubleshooting tables and command references - Focused prerequisite chains and dependency management - Production-ready configurations and security hardening - Comprehensive AI operations and marketplace testing Files: - New: 6 focused workflow modules + master index - Updated: Original monolithic workflow (deprecated with migration guide) - Preserved: All existing functionality in modular format - Added: Cross-references, learning paths, and quick navigation
257 lines
6.3 KiB
Markdown
Executable File
257 lines
6.3 KiB
Markdown
Executable File
---
|
|
description: Continue AITBC CLI Enhancement Development
|
|
auto_execution_mode: 3
|
|
title: AITBC CLI Enhancement Workflow
|
|
version: 2.1
|
|
---
|
|
|
|
# Continue AITBC CLI Enhancement
|
|
|
|
This workflow helps you continue working on the AITBC CLI enhancement task with the current consolidated project structure.
|
|
|
|
## Current Status
|
|
|
|
### Completed
|
|
- ✅ Phase 0: Foundation fixes (URL standardization, package structure, credential storage)
|
|
- ✅ Phase 1: Enhanced existing CLI tools (client, miner, wallet, auth)
|
|
- ✅ Unified CLI with rich output formatting
|
|
- ✅ Secure credential management with keyring
|
|
- ✅ **NEW**: Project consolidation to `/opt/aitbc` structure
|
|
- ✅ **NEW**: Consolidated virtual environment (`/opt/aitbc/venv`)
|
|
- ✅ **NEW**: Unified CLI wrapper (`/opt/aitbc/aitbc-cli`)
|
|
|
|
### Next Steps
|
|
|
|
1. **Review Progress**: Check what's been implemented in current CLI structure
|
|
2. **Phase 2 Tasks**: Implement new CLI tools (blockchain, marketplace, simulate)
|
|
3. **Testing**: Add comprehensive tests for CLI tools
|
|
4. **Documentation**: Update CLI documentation
|
|
5. **Integration**: Ensure CLI works with current service endpoints
|
|
|
|
## Workflow Steps
|
|
|
|
### 1. Check Current Status
|
|
```bash
|
|
# Activate environment and check CLI
|
|
cd /opt/aitbc
|
|
source venv/bin/activate
|
|
|
|
# Check CLI functionality
|
|
./aitbc-cli --help
|
|
./aitbc-cli client --help
|
|
./aitbc-cli miner --help
|
|
./aitbc-cli wallet --help
|
|
./aitbc-cli auth --help
|
|
|
|
# Check current CLI structure
|
|
ls -la cli/aitbc_cli/commands/
|
|
```
|
|
|
|
### 2. Continue with Phase 2
|
|
```bash
|
|
# Create blockchain command
|
|
# File: cli/aitbc_cli/commands/blockchain.py
|
|
|
|
# Create marketplace command
|
|
# File: cli/aitbc_cli/commands/marketplace.py
|
|
|
|
# Create simulate command
|
|
# File: cli/aitbc_cli/commands/simulate.py
|
|
|
|
# Add to main.py imports and cli.add_command()
|
|
# Update: cli/aitbc_cli/main.py
|
|
```
|
|
|
|
### 3. Implement Missing Phase 1 Features
|
|
```bash
|
|
# Add job history filtering to client command
|
|
# Add retry mechanism with exponential backoff
|
|
# Update existing CLI tools with new features
|
|
# Ensure compatibility with current service ports (8000, 8001, 8006)
|
|
```
|
|
|
|
### 4. Create Tests
|
|
```bash
|
|
# Create test files in cli/tests/
|
|
# - test_cli_basic.py
|
|
# - test_client.py
|
|
# - test_miner.py
|
|
# - test_wallet.py
|
|
# - test_auth.py
|
|
# - test_blockchain.py
|
|
# - test_marketplace.py
|
|
# - test_simulate.py
|
|
|
|
# Run tests
|
|
cd /opt/aitbc
|
|
source venv/bin/activate
|
|
python -m pytest cli/tests/ -v
|
|
```
|
|
|
|
### 5. Update Documentation
|
|
```bash
|
|
# Update CLI README
|
|
# Update project documentation
|
|
# Create command reference docs
|
|
# Update skills that use CLI commands
|
|
```
|
|
|
|
## Quick Commands
|
|
|
|
```bash
|
|
# Install CLI in development mode
|
|
cd /opt/aitbc
|
|
source venv/bin/activate
|
|
pip install -e cli/
|
|
|
|
# Test a specific command
|
|
./aitbc-cli --output json client blocks --limit 1
|
|
|
|
# Check wallet balance
|
|
./aitbc-cli wallet balance
|
|
|
|
# Check auth status
|
|
./aitbc-cli auth status
|
|
|
|
# Test blockchain commands
|
|
./aitbc-cli chain --help
|
|
./aitbc-cli node status
|
|
|
|
# Test marketplace commands
|
|
./aitbc-cli marketplace --action list
|
|
|
|
# Run all tests
|
|
cd /opt/aitbc
|
|
source venv/bin/activate
|
|
python -m pytest cli/tests/ -v
|
|
|
|
# Run specific test
|
|
python -m pytest cli/tests/test_cli_basic.py -v
|
|
```
|
|
|
|
## Current CLI Structure
|
|
|
|
### Existing Commands
|
|
```bash
|
|
# Working commands (verify these exist)
|
|
./aitbc-cli client # Client operations
|
|
./aitbc-cli miner # Miner operations
|
|
./aitbc-cli wallet # Wallet operations
|
|
./aitbc-cli auth # Authentication
|
|
./aitbc-cli marketplace # Marketplace operations (basic)
|
|
```
|
|
|
|
### Commands to Implement
|
|
```bash
|
|
# Phase 2 commands to create
|
|
./aitbc-cli chain # Blockchain operations
|
|
./aitbc-cli node # Node operations
|
|
./aitbc-cli transaction # Transaction operations
|
|
./aitbc-cli simulate # Simulation operations
|
|
```
|
|
|
|
## File Locations
|
|
|
|
### Current Structure
|
|
- **CLI Source**: `/opt/aitbc/cli/aitbc_cli/`
|
|
- **Commands**: `/opt/aitbc/cli/aitbc_cli/commands/`
|
|
- **Tests**: `/opt/aitbc/cli/tests/`
|
|
- **CLI Wrapper**: `/opt/aitbc/aitbc-cli`
|
|
- **Virtual Environment**: `/opt/aitbc/venv`
|
|
|
|
### Key Files
|
|
- **Main CLI**: `/opt/aitbc/cli/aitbc_cli/main.py`
|
|
- **Client Command**: `/opt/aitbc/cli/aitbc_cli/commands/client.py`
|
|
- **Wallet Command**: `/opt/aitbc/cli/aitbc_cli/commands/wallet.py`
|
|
- **Marketplace Command**: `/opt/aitbc/cli/aitbc_cli/commands/marketplace.py`
|
|
- **Test Runner**: `/opt/aitbc/cli/tests/run_cli_tests.py`
|
|
|
|
## Service Integration
|
|
|
|
### Current Service Endpoints
|
|
```bash
|
|
# Coordinator API
|
|
curl -s http://localhost:8000/health
|
|
|
|
# Exchange API
|
|
curl -s http://localhost:8001/api/health
|
|
|
|
# Blockchain RPC
|
|
curl -s http://localhost:8006/health
|
|
|
|
# Ollama (for GPU operations)
|
|
curl -s http://localhost:11434/api/tags
|
|
```
|
|
|
|
### CLI Service Configuration
|
|
```bash
|
|
# Check current CLI configuration
|
|
./aitbc-cli --help
|
|
|
|
# Test with different output formats
|
|
./aitbc-cli --output json wallet balance
|
|
./aitbc-cli --output table wallet balance
|
|
./aitbc-cli --output yaml wallet balance
|
|
```
|
|
|
|
## Development Workflow
|
|
|
|
### 1. Environment Setup
|
|
```bash
|
|
cd /opt/aitbc
|
|
source venv/bin/activate
|
|
pip install -e cli/
|
|
```
|
|
|
|
### 2. Command Development
|
|
```bash
|
|
# Create new command
|
|
cd cli/aitbc_cli/commands/
|
|
cp template.py new_command.py
|
|
|
|
# Edit the command
|
|
# Add to main.py
|
|
# Add tests
|
|
```
|
|
|
|
### 3. Testing
|
|
```bash
|
|
# Run specific command tests
|
|
python -m pytest cli/tests/test_new_command.py -v
|
|
|
|
# Run all CLI tests
|
|
python -m pytest cli/tests/ -v
|
|
|
|
# Test with CLI runner
|
|
cd cli/tests
|
|
python run_cli_tests.py
|
|
```
|
|
|
|
### 4. Integration Testing
|
|
```bash
|
|
# Test against actual services
|
|
./aitbc-cli wallet balance
|
|
./aitbc-cli marketplace --action list
|
|
./aitbc-cli client status <job_id>
|
|
```
|
|
|
|
## Recent Updates (v2.1)
|
|
|
|
### Project Structure Changes
|
|
- **Consolidated Path**: Updated from `/home/oib/windsurf/aitbc` to `/opt/aitbc`
|
|
- **Virtual Environment**: Consolidated to `/opt/aitbc/venv`
|
|
- **CLI Wrapper**: Uses `/opt/aitbc/aitbc-cli` for all operations
|
|
- **Test Structure**: Updated to `/opt/aitbc/cli/tests/`
|
|
|
|
### Service Integration
|
|
- **Updated Ports**: Coordinator (8000), Exchange (8001), RPC (8006)
|
|
- **Service Health**: Added service health verification
|
|
- **Cross-Node**: Added cross-node operations support
|
|
- **Current Commands**: Updated to reflect actual CLI implementation
|
|
|
|
### Testing Integration
|
|
- **CI/CD Ready**: Integration with existing test workflows
|
|
- **Test Runner**: Custom CLI test runner
|
|
- **Environment**: Proper venv activation for testing
|
|
- **Coverage**: Enhanced test coverage requirements
|