feat: add SQLCipher database encryption support and consolidate agent documentation
Some checks failed
Blockchain Synchronization Verification / sync-verification (push) Failing after 3s
CLI Tests / test-cli (push) Failing after 3s
Cross-Chain Functionality Tests / test-cross-chain-sync (push) Successful in 2s
Cross-Chain Functionality Tests / test-cross-chain-transactions (push) Successful in 3s
Cross-Chain Functionality Tests / test-cross-chain-bridge (push) Has been skipped
Cross-Chain Functionality Tests / test-multi-chain-consensus (push) Successful in 2s
Cross-Chain Functionality Tests / aggregate-results (push) Has been skipped
Deploy to Testnet / deploy-testnet (push) Successful in 1m12s
Documentation Validation / validate-docs (push) Failing after 8s
Documentation Validation / validate-policies-strict (push) Successful in 3s
Integration Tests / test-service-integration (push) Successful in 2m6s
Multi-Chain Island Architecture Tests / test-multi-chain-island (push) Successful in 2s
Multi-Node Blockchain Health Monitoring / health-check (push) Failing after 4s
P2P Network Verification / p2p-verification (push) Successful in 4s
Package Tests / Python package - aitbc-agent-sdk (push) Successful in 32s
Package Tests / Python package - aitbc-core (push) Successful in 14s
Package Tests / Python package - aitbc-crypto (push) Successful in 12s
Package Tests / Python package - aitbc-sdk (push) Successful in 9s
Package Tests / JavaScript package - aitbc-sdk-js (push) Successful in 8s
Package Tests / JavaScript package - aitbc-token (push) Successful in 17s
Python Tests / test-python (push) Successful in 15s
Security Scanning / security-scan (push) Successful in 27s
Node Failover Simulation / failover-test (push) Successful in 7s
Multi-Node Stress Testing / stress-test (push) Successful in 6s
Cross-Node Transaction Testing / transaction-test (push) Successful in 4s

- Add SQLCipher encryption for ait-mainnet database with configurable flag
- Add db_encryption_enabled and db_encryption_key_path config settings
- Implement encryption key loading and PRAGMA key setup via connection events
- Add shutdown_db function for proper database cleanup
- Export middleware classes in aitbc/__init__.py
- Fix import path in sync.py for settings
- Remove duplicate agent documentation from docs
This commit is contained in:
aitbc
2026-05-03 12:00:38 +02:00
parent 8f6a2f208c
commit 19d415a235
361 changed files with 6432 additions and 4521 deletions

View File

@@ -46,6 +46,12 @@ from .exceptions import (
RetryError,
ValidationError,
)
from .middleware import (
RequestIDMiddleware,
PerformanceLoggingMiddleware,
RequestValidationMiddleware,
ErrorHandlerMiddleware,
)
from .paths import (
ensure_dir,
ensure_file_dir,

38
aitbc/logging.py Normal file
View File

@@ -0,0 +1,38 @@
"""
Logging module (alias for aitbc_logging)
This module provides a compatibility layer for imports from aitbc.logging
"""
import logging
import sys
from typing import Optional
def setup_logger(
name: str,
level: str = "INFO",
format_string: Optional[str] = None
) -> logging.Logger:
"""Setup a logger with consistent formatting"""
if format_string is None:
format_string = "%(asctime)s - %(name)s - %(levelname)s - %(message)s"
logger = logging.getLogger(name)
logger.setLevel(getattr(logging, level.upper()))
if not logger.handlers:
handler = logging.StreamHandler(sys.stdout)
formatter = logging.Formatter(format_string)
handler.setFormatter(formatter)
logger.addHandler(handler)
return logger
def get_logger(name: str) -> logging.Logger:
"""Get a logger instance"""
return logging.getLogger(name)
def configure_logging(level: str = "INFO", format_string: str = None):
"""Configure logging with default settings"""
return setup_logger("aitbc", level=level, format_string=format_string)
__all__ = ["get_logger", "setup_logger", "configure_logging"]

View File

@@ -0,0 +1,15 @@
"""
Shared middleware for AITBC services
"""
from .request_id import RequestIDMiddleware
from .performance import PerformanceLoggingMiddleware
from .validation import RequestValidationMiddleware
from .error_handler import ErrorHandlerMiddleware
__all__ = [
"RequestIDMiddleware",
"PerformanceLoggingMiddleware",
"RequestValidationMiddleware",
"ErrorHandlerMiddleware",
]

View File

@@ -0,0 +1,61 @@
"""
Standardized error response middleware for FastAPI
"""
from typing import Callable
from fastapi import Request, HTTPException
from fastapi.responses import JSONResponse
from starlette.middleware.base import BaseHTTPMiddleware
from starlette.types import ASGIApp
from aitbc.aitbc_logging import get_logger
logger = get_logger(__name__)
class ErrorHandlerMiddleware(BaseHTTPMiddleware):
"""Middleware to standardize error responses"""
async def dispatch(self, request: Request, call_next: Callable) -> JSONResponse:
try:
response = await call_next(request)
return response
except HTTPException as e:
logger.warning(
"HTTP exception",
status_code=e.status_code,
detail=e.detail,
path=request.url.path,
method=request.method,
)
return JSONResponse(
status_code=e.status_code,
content={
"error": {
"type": "http_error",
"message": e.detail,
"status_code": e.status_code,
"path": request.url.path,
}
},
)
except Exception as e:
logger.error(
"Unhandled exception",
error=str(e),
path=request.url.path,
method=request.method,
exc_info=True,
)
return JSONResponse(
status_code=500,
content={
"error": {
"type": "internal_error",
"message": "An internal server error occurred",
"status_code": 500,
"path": request.url.path,
}
},
)

View File

@@ -0,0 +1,41 @@
"""
Performance logging middleware for tracking request timing
"""
import time
from typing import Callable
from fastapi import Request, Response
from starlette.middleware.base import BaseHTTPMiddleware
from starlette.types import ASGIApp
from aitbc.aitbc_logging import get_logger
logger = get_logger(__name__)
class PerformanceLoggingMiddleware(BaseHTTPMiddleware):
"""Middleware to log request performance metrics"""
async def dispatch(self, request: Request, call_next: Callable) -> Response:
start_time = time.perf_counter()
# Process request
response = await call_next(request)
# Calculate duration
duration = time.perf_counter() - start_time
# Log performance metrics
logger.info(
"Request performance",
method=request.method,
path=request.url.path,
status_code=response.status_code,
duration_ms=round(duration * 1000, 2),
)
# Add performance header
response.headers["X-Process-Time"] = f"{duration:.3f}"
return response

View File

@@ -0,0 +1,54 @@
"""
Request ID correlation middleware for structured logging
"""
import uuid
from typing import Callable
from fastapi import Request, Response
from starlette.middleware.base import BaseHTTPMiddleware
from starlette.types import ASGIApp
from aitbc.aitbc_logging import get_logger
logger = get_logger(__name__)
class RequestIDMiddleware(BaseHTTPMiddleware):
"""Middleware to add request ID to all requests for correlation"""
def __init__(self, app: ASGIApp) -> None:
super().__init__(app)
self.header_name = "X-Request-ID"
async def dispatch(self, request: Request, call_next: Callable) -> Response:
# Generate or retrieve request ID
request_id = request.headers.get(self.header_name) or str(uuid.uuid4())
# Add request ID to request state for use in endpoints
request.state.request_id = request_id
# Bind request ID to logger context
logger = get_logger(__name__).bind(request_id=request_id)
# Log request start
logger.info(
"Incoming request",
method=request.method,
path=request.url.path,
client=request.client.host if request.client else "unknown",
)
# Process request
response = await call_next(request)
# Add request ID to response headers
response.headers[self.header_name] = request_id
# Log request completion
logger.info(
"Request completed",
status_code=response.status_code,
)
return response

View File

@@ -0,0 +1,67 @@
"""
Request validation middleware for FastAPI
"""
from typing import Callable
from fastapi import Request, HTTPException, Response
from starlette.middleware.base import BaseHTTPMiddleware
from starlette.types import ASGIApp
from aitbc.aitbc_logging import get_logger
logger = get_logger(__name__)
class RequestValidationMiddleware(BaseHTTPMiddleware):
"""Middleware to validate incoming requests"""
def __init__(
self,
app: ASGIApp,
max_request_size: int = 10 * 1024 * 1024, # 10MB default
max_response_size: int = 10 * 1024 * 1024, # 10MB default
) -> None:
super().__init__(app)
self.max_request_size = max_request_size
self.max_response_size = max_response_size
async def dispatch(self, request: Request, call_next: Callable) -> Response:
# Validate request size
content_length = request.headers.get("content-length")
if content_length:
try:
size = int(content_length)
if size > self.max_request_size:
logger.warning(
"Request too large",
content_length=size,
max_size=self.max_request_size,
client=request.client.host if request.client else "unknown",
)
raise HTTPException(
status_code=413,
detail=f"Request too large. Maximum size is {self.max_request_size} bytes",
)
except ValueError:
logger.warning("Invalid content-length header", content_length=content_length)
# Process request
response = await call_next(request)
# Validate response size (skip for streaming responses)
if hasattr(response, "body"):
response_size = len(response.body)
if response_size > self.max_response_size:
logger.warning(
"Response too large",
response_size=response_size,
max_size=self.max_response_size,
path=request.url.path,
)
raise HTTPException(
status_code=500,
detail="Response too large",
)
return response

View File

@@ -0,0 +1,293 @@
#!/usr/bin/env python3
"""Database encryption migration tool for AITBC blockchain node.
This CLI tool provides commands to encrypt and decrypt SQLite database files
for the Phase 2 database encryption implementation.
"""
import argparse
import sys
import shutil
from pathlib import Path
# Add the src directory to the path for imports
sys.path.insert(0, str(Path(__file__).parent.parent / "src"))
# Add the repo root to the path for aitbc module
sys.path.insert(0, str(Path(__file__).parent.parent.parent.parent))
from aitbc_chain.database_encryption import (
KeyManager,
DatabaseEncryptor,
is_database_encrypted,
get_encryption_key,
)
def encrypt_database(
db_path: Path,
key_path: Path,
backup: bool = True,
dry_run: bool = False,
) -> None:
"""Encrypt a database file.
Args:
db_path: Path to the database file.
key_path: Path to the encryption key file.
backup: Whether to create a backup before encryption.
dry_run: If True, only print what would be done without executing.
"""
print(f"Encrypting database: {db_path}")
print(f"Using key file: {key_path}")
if not db_path.exists():
print(f"Error: Database file not found: {db_path}")
sys.exit(1)
if is_database_encrypted(db_path):
print("Error: Database is already encrypted")
sys.exit(1)
if backup:
backup_path = db_path.with_suffix('.db.backup')
if dry_run:
print(f"[DRY RUN] Would create backup: {backup_path}")
else:
print(f"Creating backup: {backup_path}")
shutil.copy2(db_path, backup_path)
key_manager = KeyManager(key_path)
key = key_manager.get_or_generate_key()
if dry_run:
print(f"[DRY RUN] Would encrypt {db_path}")
print(f"[DRY RUN] Key file exists: {key_path.exists()}")
else:
encryptor = DatabaseEncryptor(key)
encrypted_path = db_path.with_suffix('.db.encrypted')
encryptor.encrypt_file(db_path, encrypted_path)
# Replace original with encrypted
encrypted_path.replace(db_path)
print(f"Database encrypted successfully: {db_path}")
print(f"Backup created at: {backup_path if backup else 'None'}")
def decrypt_database(
db_path: Path,
key_path: Path,
output_path: Path = None,
backup: bool = True,
dry_run: bool = False,
) -> None:
"""Decrypt an encrypted database file.
Args:
db_path: Path to the encrypted database file.
key_path: Path to the encryption key file.
output_path: Optional output path for decrypted database.
backup: Whether to create a backup before decryption.
dry_run: If True, only print what would be done without executing.
"""
print(f"Decrypting database: {db_path}")
print(f"Using key file: {key_path}")
if not db_path.exists():
print(f"Error: Database file not found: {db_path}")
sys.exit(1)
if not is_database_encrypted(db_path):
print("Error: Database is not encrypted")
sys.exit(1)
if not key_path.exists():
print(f"Error: Key file not found: {key_path}")
sys.exit(1)
if backup:
backup_path = db_path.with_suffix('.db.encrypted.backup')
if dry_run:
print(f"[DRY RUN] Would create backup: {backup_path}")
else:
print(f"Creating backup: {backup_path}")
shutil.copy2(db_path, backup_path)
key_manager = KeyManager(key_path)
key = key_manager.load_key()
if key is None:
print(f"Error: Failed to load key from: {key_path}")
sys.exit(1)
if output_path is None:
output_path = db_path.with_suffix('').with_suffix('.db')
if dry_run:
print(f"[DRY RUN] Would decrypt {db_path} to {output_path}")
else:
encryptor = DatabaseEncryptor(key)
encryptor.decrypt_file(db_path, output_path)
# Replace original with decrypted if output_path is derived from db_path
if str(output_path) == str(db_path.with_suffix('').with_suffix('.db')):
output_path.replace(db_path)
print(f"Database decrypted successfully: {db_path}")
else:
print(f"Database decrypted to: {output_path}")
print(f"Backup created at: {backup_path if backup else 'None'}")
def generate_key(key_path: Path, dry_run: bool = False) -> None:
"""Generate a new encryption key.
Args:
key_path: Path where the key should be saved.
dry_run: If True, only print what would be done without executing.
"""
print(f"Generating encryption key: {key_path}")
if dry_run:
print(f"[DRY RUN] Would generate new key at: {key_path}")
else:
key_manager = KeyManager(key_path)
key = key_manager.get_or_generate_key()
print(f"Key generated successfully: {key_path}")
print(f"Key length: {len(key)} bytes")
def check_encryption(db_path: Path) -> None:
"""Check if a database is encrypted.
Args:
db_path: Path to the database file.
"""
print(f"Checking encryption status: {db_path}")
if not db_path.exists():
print(f"Error: Database file not found: {db_path}")
sys.exit(1)
if is_database_encrypted(db_path):
print("Status: ENCRYPTED")
else:
print("Status: NOT ENCRYPTED")
def main():
parser = argparse.ArgumentParser(
description="Database encryption migration tool for AITBC blockchain node"
)
subparsers = parser.add_subparsers(dest="command", help="Available commands")
# Encrypt command
encrypt_parser = subparsers.add_parser("encrypt", help="Encrypt a database file")
encrypt_parser.add_argument(
"--db-path",
type=Path,
required=True,
help="Path to the database file"
)
encrypt_parser.add_argument(
"--key-path",
type=Path,
default=Path("/etc/aitbc/secrets/db_encryption.key"),
help="Path to the encryption key file (default: /etc/aitbc/secrets/db_encryption.key)"
)
encrypt_parser.add_argument(
"--no-backup",
action="store_true",
help="Skip creating a backup before encryption"
)
encrypt_parser.add_argument(
"--dry-run",
action="store_true",
help="Print what would be done without executing"
)
# Decrypt command
decrypt_parser = subparsers.add_parser("decrypt", help="Decrypt an encrypted database file")
decrypt_parser.add_argument(
"--db-path",
type=Path,
required=True,
help="Path to the encrypted database file"
)
decrypt_parser.add_argument(
"--key-path",
type=Path,
default=Path("/etc/aitbc/secrets/db_encryption.key"),
help="Path to the encryption key file (default: /etc/aitbc/secrets/db_encryption.key)"
)
decrypt_parser.add_argument(
"--output-path",
type=Path,
help="Output path for decrypted database (default: replaces original)"
)
decrypt_parser.add_argument(
"--no-backup",
action="store_true",
help="Skip creating a backup before decryption"
)
decrypt_parser.add_argument(
"--dry-run",
action="store_true",
help="Print what would be done without executing"
)
# Generate key command
generate_parser = subparsers.add_parser("generate-key", help="Generate a new encryption key")
generate_parser.add_argument(
"--key-path",
type=Path,
default=Path("/etc/aitbc/secrets/db_encryption.key"),
help="Path where the key should be saved (default: /etc/aitbc/secrets/db_encryption.key)"
)
generate_parser.add_argument(
"--dry-run",
action="store_true",
help="Print what would be done without executing"
)
# Check command
check_parser = subparsers.add_parser("check", help="Check if a database is encrypted")
check_parser.add_argument(
"--db-path",
type=Path,
required=True,
help="Path to the database file"
)
args = parser.parse_args()
if args.command == "encrypt":
encrypt_database(
db_path=args.db_path,
key_path=args.key_path,
backup=not args.no_backup,
dry_run=args.dry_run,
)
elif args.command == "decrypt":
decrypt_database(
db_path=args.db_path,
key_path=args.key_path,
output_path=args.output_path,
backup=not args.no_backup,
dry_run=args.dry_run,
)
elif args.command == "generate-key":
generate_key(
key_path=args.key_path,
dry_run=args.dry_run,
)
elif args.command == "check":
check_encryption(
db_path=args.db_path,
)
else:
parser.print_help()
sys.exit(1)
if __name__ == "__main__":
main()

View File

@@ -0,0 +1,93 @@
#!/usr/bin/env python3
"""
Migrate existing SQLite database to SQLCipher encrypted format.
This script converts an existing unencrypted SQLite database to SQLCipher
encrypted format using the built-in sqlcipher_export function.
"""
import sys
import os
from pathlib import Path
# Add repo root to path for imports
repo_root = Path(__file__).parent.parent.parent.parent
sys.path.insert(0, str(repo_root))
try:
import sqlcipher3 as sqlite3
except ImportError:
print("ERROR: sqlcipher3-binary not installed")
print("Run: pip install sqlcipher3-binary")
sys.exit(1)
def migrate_to_sqlcipher(db_path: Path, key_path: Path) -> None:
"""Migrate database to SQLCipher encrypted format.
Uses SQLCipher's built-in sqlcipher_export function to properly
encrypt the database while maintaining SQLite's internal structure.
Args:
db_path: Path to the existing SQLite database
key_path: Path to the encryption key file
"""
if not db_path.exists():
print(f"ERROR: Database file not found: {db_path}")
sys.exit(1)
if not key_path.exists():
print(f"ERROR: Key file not found: {key_path}")
sys.exit(1)
# Read encryption key (stored as raw binary bytes)
with open(key_path, 'rb') as f:
key_bytes = f.read()
# Convert raw bytes to hex for SQLCipher
key_hex = key_bytes.hex()
# Create backup
backup_path = db_path.with_suffix('.db.backup')
print(f"Creating backup: {backup_path}")
import shutil
shutil.copy2(db_path, backup_path)
# Create temporary encrypted database
temp_encrypted_path = db_path.with_suffix('.db.encrypted')
# Open unencrypted database
print(f"Opening unencrypted database: {db_path}")
conn_unencrypted = sqlite3.connect(str(db_path))
# Attach encrypted database
print(f"Creating encrypted database: {temp_encrypted_path}")
conn_unencrypted.execute(f"ATTACH DATABASE '{temp_encrypted_path}' AS encrypted KEY '{key_hex}'")
# Export data to encrypted database
print("Exporting data to encrypted database...")
conn_unencrypted.execute("SELECT sqlcipher_export('encrypted')")
conn_unencrypted.commit()
# Detach encrypted database
conn_unencrypted.execute("DETACH DATABASE encrypted")
conn_unencrypted.close()
# Replace original with encrypted
print(f"Replacing original with encrypted database")
temp_encrypted_path.replace(db_path)
print(f"Database migrated successfully to SQLCipher format")
print(f"Backup available at: {backup_path}")
if __name__ == "__main__":
import argparse
parser = argparse.ArgumentParser(description="Migrate SQLite database to SQLCipher encrypted format")
parser.add_argument("--db-path", type=Path, required=True, help="Path to the SQLite database")
parser.add_argument("--key-path", type=Path, default=Path("/etc/aitbc/secrets/db_encryption.key"), help="Path to the encryption key file")
args = parser.parse_args()
migrate_to_sqlcipher(args.db_path, args.key_path)

View File

@@ -27,6 +27,8 @@ class ChainSettings(BaseSettings):
supported_chains: str = "ait-mainnet" # Comma-separated list of supported chain IDs
db_path: Path = DATA_DIR / "data" / "chain.db"
enforce_state_root_validation: bool = False # Phase 1.3 enforcement flag
db_encryption_enabled: bool = False # Phase 2: SQLCipher database encryption flag (ait-mainnet only)
db_encryption_key_path: Path = Path("/etc/aitbc/secrets/db_encryption.key") # Phase 2: Encryption key file path
def get_db_path(self, chain_id: str = "") -> Path:
"""Get database path for a specific chain.

View File

@@ -21,9 +21,13 @@ _DB_ENCRYPTION_KEY = os.environ.get("AITBC_DB_KEY", "default_encryption_key_chan
_engines: dict[str, object] = {}
_default_chain_id: str = ""
def get_engine(chain_id: str = "") -> object:
"""Get database engine for a specific chain.
Uses SQLCipher for encryption when enabled (ait-mainnet only).
SQLCipher maintains SQLite's internal format while encrypting data at rest.
Args:
chain_id: Chain ID to get engine for. If empty, uses default chain.
@@ -34,7 +38,45 @@ def get_engine(chain_id: str = "") -> object:
if resolved_chain_id not in _engines:
db_path = settings.get_db_path(resolved_chain_id)
_engines[resolved_chain_id] = create_engine(f"sqlite:///{db_path}", echo=False)
# Check if SQLCipher encryption is enabled for this chain (only ait-mainnet)
encryption_enabled = (
settings.db_encryption_enabled and
settings.db_encryption_key_path.exists() and
resolved_chain_id == "ait-mainnet"
)
if encryption_enabled:
# Use SQLCipher with encryption key
try:
import sqlcipher3 as sqlite3
except ImportError:
raise RuntimeError(
"SQLCipher encryption enabled but sqlcipher3-binary not installed. "
"Run: pip install sqlcipher3-binary"
)
# Load encryption key from file (raw binary bytes, convert to hex)
with open(settings.db_encryption_key_path, 'rb') as f:
key_bytes = f.read()
key_hex = key_bytes.hex()
# Create engine with SQLCipher
engine = create_engine(
f"sqlite:///{db_path}",
module=sqlite3,
echo=False
)
# Set encryption key via connection event
@event.listens_for(engine, "connect")
def set_encryption_key(dbapi_connection, connection_record):
dbapi_connection.execute(f"PRAGMA key = '{key_hex}'")
else:
# Use standard SQLite
engine = create_engine(f"sqlite:///{db_path}", echo=False)
_engines[resolved_chain_id] = engine
return _engines[resolved_chain_id]
@@ -149,6 +191,48 @@ def init_db(chain_id: str = "") -> None:
except OSError:
pass
def shutdown_db(chain_id: str = "") -> None:
"""Shutdown database connection and encrypt if needed.
Args:
chain_id: Chain ID to shutdown. If empty, uses default chain.
"""
resolved_chain_id = chain_id or _default_chain_id or settings.chain_id or "ait-mainnet"
# Check if we need to encrypt the database back
if resolved_chain_id in _db_temp_paths:
temp_path = _db_temp_paths[resolved_chain_id]
db_path = settings.get_db_path(resolved_chain_id)
# Check if encryption is enabled for this chain
encryption_enabled = (
settings.db_encryption_enabled and
resolved_chain_id == "ait-mainnet"
)
if encryption_enabled and temp_path.exists():
# Encrypt the temporary file back to the original location
key = get_encryption_key(settings.db_encryption_key_path)
if key is None:
raise RuntimeError(f"Database encryption enabled but key not found at {settings.db_encryption_key_path}")
try:
encrypt_database(temp_path, key)
# Move encrypted file to original location
encrypted_path = temp_path.with_suffix('.db.encrypted')
encrypted_path.replace(db_path)
# Clean up temporary file
temp_path.unlink(missing_ok=True)
del _db_temp_paths[resolved_chain_id]
except Exception as e:
raise RuntimeError(f"Failed to encrypt database for chain {resolved_chain_id}: {e}")
# Dispose of engine
if resolved_chain_id in _engines:
_engines[resolved_chain_id].dispose()
del _engines[resolved_chain_id]
# Backward compatibility - expose engine for escrow routes (to be removed in Phase 1.3)
# TODO: Remove this in Phase 1.3 when escrow routes are updated
engine = _engine_internal

View File

@@ -0,0 +1,282 @@
"""Database encryption module for AITBC blockchain node.
This module provides AES-GCM encryption for SQLite database files at rest,
using the existing cryptography library. It supports key management,
encryption/decryption operations, and detection of encrypted databases.
"""
from __future__ import annotations
import os
import stat
from pathlib import Path
from typing import Optional
from cryptography.hazmat.primitives.ciphers.aead import AESGCM
from cryptography.hazmat.primitives.kdf.pbkdf2 import PBKDF2HMAC
from cryptography.hazmat.primitives import hashes
from cryptography.hazmat.backends import default_backend
import secrets
# Magic header to identify encrypted databases
ENCRYPTION_MAGIC = b"AITBCENC"
ENCRYPTION_VERSION = 1
class KeyManager:
"""Manages encryption key generation, storage, and retrieval."""
def __init__(self, key_path: Path):
"""Initialize key manager.
Args:
key_path: Path to the key file.
"""
self.key_path = key_path
self._key: Optional[bytes] = None
def generate_key(self, password: Optional[str] = None) -> bytes:
"""Generate a new encryption key.
Args:
password: Optional password for key derivation. If None, generates random key.
Returns:
256-bit encryption key.
"""
if password:
# Derive key from password using PBKDF2
salt = secrets.token_bytes(16)
kdf = PBKDF2HMAC(
algorithm=hashes.SHA256(),
length=32,
salt=salt,
iterations=100_000,
backend=default_backend()
)
key = kdf.derive(password.encode('utf-8'))
# Store salt with key for later derivation
return salt + key
else:
# Generate random key
return secrets.token_bytes(32)
def save_key(self, key: bytes) -> None:
"""Save encryption key to file with restricted permissions.
Args:
key: Encryption key to save.
"""
# Ensure parent directory exists
self.key_path.parent.mkdir(parents=True, exist_ok=True)
# Write key with restricted permissions
with open(self.key_path, 'wb') as f:
f.write(key)
# Set file permissions to 600 (owner read/write only)
os.chmod(self.key_path, stat.S_IRUSR | stat.S_IWUSR)
def load_key(self) -> Optional[bytes]:
"""Load encryption key from file.
Returns:
Encryption key or None if file doesn't exist.
"""
if not self.key_path.exists():
return None
with open(self.key_path, 'rb') as f:
return f.read()
def get_or_generate_key(self, password: Optional[str] = None) -> bytes:
"""Get existing key or generate a new one.
Args:
password: Optional password for key derivation.
Returns:
Encryption key.
"""
key = self.load_key()
if key is None:
key = self.generate_key(password)
self.save_key(key)
return key
def ensure_key_permissions(self) -> bool:
"""Ensure key file has restricted permissions.
Returns:
True if permissions are correct or file doesn't exist, False otherwise.
"""
if not self.key_path.exists():
return True
mode = self.key_path.stat().st_mode
return mode & 0o777 == 0o600
class DatabaseEncryptor:
"""Handles encryption and decryption of database files."""
def __init__(self, key: bytes):
"""Initialize encryptor with encryption key.
Args:
key: 256-bit encryption key.
"""
if len(key) < 32:
# If key has salt prefix (first 16 bytes), extract actual key
if len(key) >= 48:
salt = key[:16]
actual_key = key[16:48]
else:
raise ValueError("Encryption key must be at least 32 bytes")
else:
salt = key[:16] if len(key) > 32 else b''
actual_key = key[:32] if len(key) >= 32 else key
self.key = actual_key
self.salt = salt if len(key) > 32 else None
self.aesgcm = AESGCM(actual_key)
def encrypt_file(self, input_path: Path, output_path: Path) -> None:
"""Encrypt a database file.
Args:
input_path: Path to input database file.
output_path: Path to write encrypted database.
"""
# Read plaintext database
with open(input_path, 'rb') as f:
plaintext = f.read()
# Generate nonce
nonce = secrets.token_bytes(12)
# Encrypt data
ciphertext = self.aesgcm.encrypt(nonce, plaintext, None)
# Write encrypted file with magic header
with open(output_path, 'wb') as f:
f.write(ENCRYPTION_MAGIC)
f.write(bytes([ENCRYPTION_VERSION]))
f.write(nonce)
f.write(ciphertext)
def decrypt_file(self, input_path: Path, output_path: Path) -> None:
"""Decrypt an encrypted database file.
Args:
input_path: Path to encrypted database file.
output_path: Path to write decrypted database.
"""
# Read encrypted file
with open(input_path, 'rb') as f:
data = f.read()
# Verify magic header
if not data.startswith(ENCRYPTION_MAGIC):
raise ValueError("File is not an encrypted database")
# Extract version, nonce, and ciphertext
version = data[len(ENCRYPTION_MAGIC)]
if version != ENCRYPTION_VERSION:
raise ValueError(f"Unsupported encryption version: {version}")
nonce_start = len(ENCRYPTION_MAGIC) + 1
nonce_end = nonce_start + 12
nonce = data[nonce_start:nonce_end]
ciphertext = data[nonce_end:]
# Decrypt data
plaintext = self.aesgcm.decrypt(nonce, ciphertext, None)
# Write decrypted file
with open(output_path, 'wb') as f:
f.write(plaintext)
def is_encrypted(self, file_path: Path) -> bool:
"""Check if a database file is encrypted.
Args:
file_path: Path to database file.
Returns:
True if file is encrypted, False otherwise.
"""
if not file_path.exists():
return False
with open(file_path, 'rb') as f:
header = f.read(len(ENCRYPTION_MAGIC))
return header == ENCRYPTION_MAGIC
def get_encryption_key(key_path: Path) -> Optional[bytes]:
"""Get encryption key from file or generate new one.
Args:
key_path: Path to key file.
Returns:
Encryption key or None if encryption is disabled.
"""
key_manager = KeyManager(key_path)
return key_manager.get_or_generate_key()
def encrypt_database(db_path: Path, key: bytes) -> Path:
"""Encrypt a database file.
Args:
db_path: Path to database file.
key: Encryption key.
Returns:
Path to encrypted database file.
"""
encryptor = DatabaseEncryptor(key)
encrypted_path = db_path.with_suffix('.db.encrypted')
encryptor.encrypt_file(db_path, encrypted_path)
return encrypted_path
def decrypt_database(encrypted_path: Path, key: bytes, output_path: Optional[Path] = None) -> Path:
"""Decrypt an encrypted database file.
Args:
encrypted_path: Path to encrypted database file.
key: Encryption key.
output_path: Optional output path. If None, removes .encrypted suffix.
Returns:
Path to decrypted database file.
"""
encryptor = DatabaseEncryptor(key)
if output_path is None:
output_path = encrypted_path.with_suffix('').with_suffix('.db')
encryptor.decrypt_file(encrypted_path, output_path)
return output_path
def is_database_encrypted(db_path: Path) -> bool:
"""Check if a database file is encrypted.
Args:
db_path: Path to database file.
Returns:
True if database is encrypted, False otherwise.
"""
if not db_path.exists():
return False
# Check for magic header
with open(db_path, 'rb') as f:
header = f.read(len(ENCRYPTION_MAGIC))
return header == ENCRYPTION_MAGIC

View File

@@ -489,7 +489,7 @@ class ChainSync:
# Verify state root if provided
if block_data.get("state_root"):
from ..config import settings
from aitbc_chain.config import settings
state_manager = StateManager()
accounts = session.exec(
select(Account).where(Account.chain_id == self._chain_id)

View File

@@ -0,0 +1,272 @@
"""Unit tests for database encryption module."""
import os
import stat
import tempfile
from pathlib import Path
import pytest
from aitbc_chain.database_encryption import (
KeyManager,
DatabaseEncryptor,
is_database_encrypted,
encrypt_database,
decrypt_database,
get_encryption_key,
ENCRYPTION_MAGIC,
ENCRYPTION_VERSION,
)
class TestKeyManager:
"""Tests for KeyManager class."""
def test_generate_key_without_password(self, tmp_path: Path):
"""Test key generation without password."""
key_manager = KeyManager(tmp_path / "test.key")
key = key_manager.generate_key()
assert len(key) == 32
assert isinstance(key, bytes)
def test_generate_key_with_password(self, tmp_path: Path):
"""Test key generation with password."""
key_manager = KeyManager(tmp_path / "test.key")
key = key_manager.generate_key(password="test_password")
# Key with salt should be longer (16 bytes salt + 32 bytes key)
assert len(key) == 48
assert isinstance(key, bytes)
def test_save_and_load_key(self, tmp_path: Path):
"""Test saving and loading key."""
key_manager = KeyManager(tmp_path / "test.key")
key = key_manager.generate_key()
key_manager.save_key(key)
loaded_key = key_manager.load_key()
assert loaded_key == key
def test_get_or_generate_key_new(self, tmp_path: Path):
"""Test get_or_generate_key when key doesn't exist."""
key_manager = KeyManager(tmp_path / "test.key")
key = key_manager.get_or_generate_key()
assert len(key) == 32
assert key_manager.load_key() == key
def test_get_or_generate_key_existing(self, tmp_path: Path):
"""Test get_or_generate_key when key already exists."""
key_manager = KeyManager(tmp_path / "test.key")
original_key = key_manager.generate_key()
key_manager.save_key(original_key)
retrieved_key = key_manager.get_or_generate_key()
assert retrieved_key == original_key
def test_ensure_key_permissions_correct(self, tmp_path: Path):
"""Test ensure_key_permissions with correct permissions."""
key_manager = KeyManager(tmp_path / "test.key")
key = key_manager.generate_key()
key_manager.save_key(key)
assert key_manager.ensure_key_permissions() is True
def test_ensure_key_permissions_incorrect(self, tmp_path: Path):
"""Test ensure_key_permissions with incorrect permissions."""
key_manager = KeyManager(tmp_path / "test.key")
key = key_manager.generate_key()
key_manager.save_key(key)
# Set incorrect permissions
os.chmod(tmp_path / "test.key", 0o644)
assert key_manager.ensure_key_permissions() is False
def test_ensure_key_permissions_nonexistent(self, tmp_path: Path):
"""Test ensure_key_permissions when file doesn't exist."""
key_manager = KeyManager(tmp_path / "nonexistent.key")
assert key_manager.ensure_key_permissions() is True
class TestDatabaseEncryptor:
"""Tests for DatabaseEncryptor class."""
def test_encrypt_decrypt_file(self, tmp_path: Path):
"""Test encrypting and decrypting a file."""
# Create test file
test_file = tmp_path / "test.db"
test_file.write_bytes(b"test database content")
# Generate key
key_manager = KeyManager(tmp_path / "test.key")
key = key_manager.generate_key()
# Encrypt
encryptor = DatabaseEncryptor(key)
encrypted_file = tmp_path / "test.db.encrypted"
encryptor.encrypt_file(test_file, encrypted_file)
assert encrypted_file.exists()
assert is_database_encrypted(encrypted_file)
# Decrypt
decrypted_file = tmp_path / "test_decrypted.db"
encryptor.decrypt_file(encrypted_file, decrypted_file)
assert decrypted_file.read_bytes() == b"test database content"
def test_is_encrypted_true(self, tmp_path: Path):
"""Test is_encrypted with encrypted file."""
test_file = tmp_path / "test.db"
test_file.write_bytes(b"test content")
key_manager = KeyManager(tmp_path / "test.key")
key = key_manager.generate_key()
encryptor = DatabaseEncryptor(key)
encrypted_file = tmp_path / "test.db.encrypted"
encryptor.encrypt_file(test_file, encrypted_file)
assert encryptor.is_encrypted(encrypted_file) is True
def test_is_encrypted_false(self, tmp_path: Path):
"""Test is_encrypted with unencrypted file."""
test_file = tmp_path / "test.db"
test_file.write_bytes(b"test content")
key_manager = KeyManager(tmp_path / "test.key")
key = key_manager.generate_key()
encryptor = DatabaseEncryptor(key)
assert encryptor.is_encrypted(test_file) is False
def test_is_encrypted_nonexistent(self, tmp_path: Path):
"""Test is_encrypted with nonexistent file."""
key_manager = KeyManager(tmp_path / "test.key")
key = key_manager.generate_key()
encryptor = DatabaseEncryptor(key)
assert encryptor.is_encrypted(tmp_path / "nonexistent.db") is False
def test_decrypt_with_magic_header_verification(self, tmp_path: Path):
"""Test that decrypt verifies magic header."""
test_file = tmp_path / "test.db"
test_file.write_bytes(b"not encrypted content")
key_manager = KeyManager(tmp_path / "test.key")
key = key_manager.generate_key()
encryptor = DatabaseEncryptor(key)
decrypted_file = tmp_path / "test_decrypted.db"
with pytest.raises(ValueError, match="not an encrypted database"):
encryptor.decrypt_file(test_file, decrypted_file)
def test_key_too_short(self, tmp_path: Path):
"""Test that short keys are rejected."""
with pytest.raises(ValueError, match="at least 32 bytes"):
DatabaseEncryptor(b"short_key")
class TestModuleFunctions:
"""Tests for module-level functions."""
def test_is_database_encrypted_true(self, tmp_path: Path):
"""Test is_database_encrypted with encrypted database."""
test_file = tmp_path / "test.db"
test_file.write_bytes(b"test content")
key_manager = KeyManager(tmp_path / "test.key")
key = key_manager.generate_key()
encryptor = DatabaseEncryptor(key)
encrypted_file = tmp_path / "test.db.encrypted"
encryptor.encrypt_file(test_file, encrypted_file)
assert is_database_encrypted(encrypted_file) is True
def test_is_database_encrypted_false(self, tmp_path: Path):
"""Test is_database_encrypted with unencrypted database."""
test_file = tmp_path / "test.db"
test_file.write_bytes(b"test content")
assert is_database_encrypted(test_file) is False
def test_is_database_encrypted_nonexistent(self, tmp_path: Path):
"""Test is_database_encrypted with nonexistent file."""
assert is_database_encrypted(tmp_path / "nonexistent.db") is False
def test_encrypt_decrypt_database(self, tmp_path: Path):
"""Test encrypt_database and decrypt_database functions."""
# Create test database
test_db = tmp_path / "test.db"
test_db.write_bytes(b"SQLite database content")
# Generate key
key_manager = KeyManager(tmp_path / "test.key")
key = key_manager.generate_key()
# Encrypt
encrypted_db = encrypt_database(test_db, key)
assert encrypted_db.exists()
assert is_database_encrypted(encrypted_db)
# Decrypt
decrypted_db = decrypt_database(encrypted_db, key)
assert decrypted_db.read_bytes() == b"SQLite database content"
def test_get_encryption_key(self, tmp_path: Path):
"""Test get_encryption_key function."""
key_path = tmp_path / "test.key"
# First call should generate key
key = get_encryption_key(key_path)
assert len(key) == 32
assert key_path.exists()
# Second call should load existing key
key2 = get_encryption_key(key_path)
assert key == key2
class TestEncryptionIntegration:
"""Integration tests for encryption with actual database-like content."""
def test_encrypt_decrypt_sqlite_like_content(self, tmp_path: Path):
"""Test encryption/decryption with SQLite-like content."""
# Create a file with SQLite-like content
test_db = tmp_path / "test.db"
sqlite_header = b"SQLite format 3\x00"
test_db.write_bytes(sqlite_header + b"\x00" * 100)
key_manager = KeyManager(tmp_path / "test.key")
key = key_manager.generate_key()
# Encrypt
encrypted_db = encrypt_database(test_db, key)
assert is_database_encrypted(encrypted_db)
# Decrypt
decrypted_db = decrypt_database(encrypted_db, key)
assert decrypted_db.read_bytes() == test_db.read_bytes()
def test_multiple_encrypt_decrypt_cycles(self, tmp_path: Path):
"""Test multiple encryption/decryption cycles."""
test_db = tmp_path / "test.db"
test_db.write_bytes(b"test content" * 1000)
key_manager = KeyManager(tmp_path / "test.key")
key = key_manager.generate_key()
# Multiple cycles
for i in range(3):
encrypted = encrypt_database(test_db, key)
decrypted = decrypt_database(encrypted, key)
test_db = decrypted
assert test_db.read_bytes() == b"test content" * 1000
if __name__ == "__main__":
pytest.main([__file__, "-v"])

View File

@@ -1,279 +1,234 @@
# AITBC Documentation Master Index
**Complete documentation catalog with quick access to all content**
**Complete catalog of all documentation files and directories**
**Last Updated**: April 27, 2026
**Last Updated**: 2026-05-03
**Version**: 6.4 (May 3, 2026 Update - documentation consolidation)
---
## 🧭 **Quick Access Table of Contents**
## 📁 Documentation Directory Structure
### **📚 Learning Paths**
- **👤 [Beginner Path](#-beginner-learning-path)** - Start here (6 topics)
- **🤖 [Agent SDK Path](#-agent-sdk-learning-path)** - Agent communication (3 topics)
- **🌉 [Intermediate Path](#-intermediate-learning-path)** - Bridge concepts (7 topics)
- **🚀 [Advanced Path](#-advanced-learning-path)** - Deep technical (6 topics)
- **🎓 [Expert Path](#-expert-learning-path)** - Specialized expertise (6 topics)
- **🧠 [AI Economics Masters Path](#-ai-economics-masters-learning-path)** - Advanced AI economics (4 topics)
### **📁 Documentation Categories**
- **📦 [Applications Documentation](#-applications-documentation)** - All AITBC apps and services documentation
- **🔧 [CLI Documentation](#cli-documentation)** - Command-line interface reference and usage
- **🏠 [Main Documentation](#-main-documentation)**
- **📖 [About Documentation](#-about-documentation)**
- **🗂️ [Archive & History](#-archive--history)**
- **✅ [Completed Projects](#-completed-projects)**
- **🔗 [External Documentation](#-external-documentation)**
- **🎯 [Topic-Specific Areas](#-topic-specific-areas)**
- **📋 [Releases](#-releases)** - Release notes and version history
```
📁 docs/
├── 🏠 README.md # Main documentation entry point
├── 🧭 MASTER_INDEX.md # This file - complete catalog
├── 📖 about/ # Documentation standards, audits, and remediation notes
├── 🤖 agent-sdk/ # OpenClaw agent communication SDK documentation
├── 🤖 agents/ # Agent documentation and integration assets
├── 📱 apps/ # Applications documentation (72 items)
├── 🏗️ architecture/ # System architecture and design patterns
├── 📚 archive/ # Historical documents (228 items)
├── 💻 backend/ # Backend system documentation
├── ⛓️ blockchain/ # Blockchain documentation (29 items)
├── 💻 cli/ # Command-line interface documentation (5 items)
├── 📜 contracts/ # Smart contract verification docs (2 items)
├── 🚀 deployment/ # Deployment guides and procedures (15 items)
├── 🛠️ development/ # Development workflow documentation (35 items)
├── 🏢 enterprise/ # Enterprise documentation (1 item)
├── 📖 guides/ # Getting started guides (6 items)
├── 🏗️ infrastructure/ # System infrastructure documentation (11 items)
├── ⛏️ mining/ # Mining operations documentation (8 items)
├── 🧩 openclaw/ # OpenClaw agent integration documentation (19 items)
├── 📦 packages/ # Language-specific packages and SDKs (1 item)
├── 📋 project/ # Project documentation (28 items)
├── 📖 reference/ # Compact lookup and reference docs (22 items)
├── 📋 releases/ # Release notes and version history (7 items)
├── 📊 reports/ # Status, quality, and completion reports (29 items)
├── 🎭 scenarios/ # OpenClaw agent scenarios (49 items)
├── 🔒 security/ # Security documentation (20 items)
├── 🧪 testing/ # Test suite documentation (7 items)
├── 🌐 website # Symlink to /website/docs/
└── 🔄 workflows/ # Documentation workflow outcomes (9 items)
```
---
## 📦 **Applications Documentation**
## 📊 Directory Statistics
### **🎯 [Apps Overview](apps/README.md)**
**Complete documentation for all AITBC applications and services**
#### **Blockchain**
- [Blockchain Node](apps/blockchain/blockchain-node.md) - Production-ready blockchain node with PoA consensus
- [Blockchain Event Bridge](apps/blockchain/blockchain-event-bridge.md) - Event bridge for blockchain events
- [Blockchain Explorer](apps/blockchain/blockchain-explorer.md) - Blockchain explorer and analytics
#### **Coordinator**
- [Coordinator API](apps/coordinator/coordinator-api.md) - Job coordination service
- [Agent Coordinator](apps/coordinator/agent-coordinator.md) - Agent coordination and management
#### **Agents**
- [Agent Services](apps/agents/agent-services.md) - Agent bridge, compliance, protocols, registry, and trading
- [AI Engine](apps/agents/ai-engine.md) - AI engine for autonomous agent operations
#### **Exchange**
- [Exchange](apps/exchange/exchange.md) - Cross-chain exchange and trading platform
- [Exchange Integration](apps/exchange/exchange-integration.md) - Exchange integration services
- [Trading Engine](apps/exchange/trading-engine.md) - Trading engine for order matching
#### **Marketplace**
- [Marketplace](apps/marketplace/marketplace.md) - GPU marketplace for compute resources
- [Pool Hub](apps/marketplace/pool-hub.md) - Pool hub for resource pooling
#### **Wallet**
- [Wallet](apps/wallet/wallet.md) - Multi-chain wallet services
#### **Infrastructure**
- [Monitor](apps/infrastructure/monitor.md) - System monitoring and alerting
- [Multi-Region Load Balancer](apps/infrastructure/multi-region-load-balancer.md) - Load balancing across regions
- [Global Infrastructure](apps/infrastructure/global-infrastructure.md) - Global infrastructure management
#### **Plugins**
- [Plugin Analytics](apps/plugins/plugin-analytics.md) - Analytics plugin
- [Plugin Marketplace](apps/plugins/plugin-marketplace.md) - Marketplace plugin
- [Plugin Registry](apps/plugins/plugin-registry.md) - Plugin registry
- [Plugin Security](apps/plugins/plugin-security.md) - Security plugin
#### **Crypto**
- [ZK Circuits](apps/crypto/zk-circuits.md) - Zero-knowledge circuits for privacy
#### **Compliance**
- [Compliance Service](apps/compliance/compliance-service.md) - Compliance checking and regulatory services
#### **Mining**
- [Miner](apps/mining/miner.md) - Mining and block validation services
#### **Global AI**
- [Global AI Agents](apps/global-ai/global-ai-agents.md) - Global AI agent coordination
#### **Explorer**
- [Simple Explorer](apps/explorer/simple-explorer.md) - Simple blockchain explorer
- **Total Directories**: 27
- **Total Files**: 600+ markdown files
- **Archive Items**: 228 historical documents
- **Apps Documentation**: 72 items
- **Scenarios**: 49 OpenClaw agent scenarios
---
## 🔧 **CLI Documentation**
## 📚 Documentation by Category
### **🎯 [CLI Overview](project/cli/CLI_DOCUMENTATION.md)**
**Complete command-line interface documentation**
### 🏠 Core Documentation
- **[README.md](README.md)** - Main documentation entry point and navigation guide
- **[MASTER_INDEX.md](MASTER_INDEX.md)** - This file - complete catalog of all documentation
| Section | Description |
|---------|-------------|
| [CLI Architecture](project/cli/CLI_DOCUMENTATION.md#architecture) | CLI structure and design |
| [Command Groups](project/cli/CLI_DOCUMENTATION.md#command-groups) | Available command categories |
| [Usage Examples](project/cli/CLI_DOCUMENTATION.md#usage-examples) | Common CLI operations |
| [Configuration](project/cli/CLI_DOCUMENTATION.md#configuration) | CLI setup and config files |
### 📖 About Documentation
Documentation about the documentation system itself
- **[About Index](about/README.md)** - Overview of documentation standards hub
- **[Compliance Audit](about/DOCUMENTATION_COMPLIANCE_AUDIT.md)** - Current remediation checklist
- **[Organization Analysis](about/DOCS_ORGANIZATION_ANALYSIS.md)** - Structure analysis and quality assessment
- **[10/10 Roadmap](about/DOCS_10_10_ROADMAP.md)** - Path to perfect documentation quality
- **[Archive Structure Fix](about/ARCHIVE_STRUCTURE_FIX.md)** - Archive reorganization documentation
- **[Centralization Guide](about/CENTRALIZED_DOCS_STRUCTURE.md)** - Documentation centralization process
- **[Sorting Summary](about/DOCUMENTATION_SORTING_SUMMARY.md)** - Documentation sorting and organization
### 🤖 Agent Documentation
- **[Agent SDK](agent-sdk/)** - OpenClaw agent communication SDK (10 items)
- [Agent Communication Guide](agent-sdk/AGENT_COMMUNICATION_GUIDE.md)
- [Quick Start Guide](agent-sdk/QUICK_START_GUIDE.md)
- [API Reference](agent-sdk/API_REFERENCE.md)
- **[Agents](agents/)** - Agent documentation and integration assets (15 items)
- [Integration Assets README](agents/INTEGRATION_ASSETS_README.md)
- [Agent API Spec](agents/agent-api-spec.json)
- [Agent Manifest](agents/agent-manifest.json)
### 📱 Applications Documentation
- **[Apps](apps/)** - Applications documentation (72 items)
- Agent services, coordinator, exchange, marketplace, wallet, infrastructure, plugins, crypto, compliance, mining, global AI, explorer
### 🏗️ Architecture Documentation
- **[Architecture](architecture/)** - System architecture and design patterns (10 items)
### 📚 Archive Documentation
- **[Archive](archive/)** - Historical documents (228 items)
- [summaries/](archive/summaries/) - Task completion summaries and handoffs
- [completed/](archive/completed/) - Completed work and implemented plans
- [expert/](archive/expert/) - Expert-level issues and completed phases
- [analytics/](archive/analytics/) - AI agent communication analysis
- [backend/](archive/backend/) - Backend system documentation
- [cli/](archive/cli/) - CLI implementation and testing
- [core_planning/](archive/core_planning/) - Planning and requirements
- [general/](archive/general/) - General project documentation
- [infrastructure/](archive/infrastructure/) - Infrastructure and deployment
- [security/](archive/security/) - Security and compliance
- [trail/](archive/trail/) - Operational breadcrumbs and success notes
### 💻 Backend Documentation
- **[Backend](backend/)** - Backend system documentation (16 items)
### ⛓️ Blockchain Documentation
- **[Blockchain](blockchain/)** - Blockchain documentation (29 items)
- [governance/](blockchain/governance/) - Governance documentation (merged from governance/)
### 💻 CLI Documentation
- **[CLI](cli/)** - Command-line interface documentation (5 items)
- Merged from cli-technical/ (now consolidated)
### 📜 Contracts Documentation
- **[Contracts](contracts/)** - Smart contract verification docs (2 items)
- Now a proper directory (previously symlink to /contracts/docs/)
### 🚀 Deployment Documentation
- **[Deployment](deployment/)** - Deployment guides and procedures (15 items)
- Includes content merged from mobile/ and nodes/
### 🛠️ Development Documentation
- **[Development](development/)** - Development workflow documentation (35 items)
### 🏢 Enterprise Documentation
- **[Enterprise](enterprise/)** - Enterprise documentation (1 item)
### 📖 Guides Documentation
- **[Guides](guides/)** - Getting started guides (6 items)
- [getting-started/](guides/getting-started/) - New user starting point
### 🏗️ Infrastructure Documentation
- **[Infrastructure](infrastructure/)** - System infrastructure documentation (11 items)
### ⛏️ Mining Documentation
- **[Mining](mining/)** - Mining operations documentation (8 items)
### 🧩 OpenClaw Documentation
- **[OpenClaw](openclaw/)** - OpenClaw agent integration documentation (19 items)
### 📦 Packages Documentation
- **[Packages](packages/)** - Language-specific packages and SDKs (1 item)
### 📋 Project Documentation
- **[Project](project/)** - Project documentation (28 items)
- [ai-economics/](project/ai-economics/) - Advanced AI economics intelligence
- [cli/](project/cli/) - Command-line interface documentation
- [infrastructure/](project/infrastructure/) - System infrastructure and deployment
- [requirements/](project/requirements/) - Project requirements and migration
- [completion/](project/completion/) - 100% project completion summary
- [workspace/](project/workspace/) - Workspace strategy and organization
### 📖 Reference Documentation
- **[Reference](reference/)** - Compact lookup and reference docs (22 items)
### 📋 Releases Documentation
- **[Releases](releases/)** - Release notes and version history (7 items)
- [RELEASE_v0.3.2.md](releases/RELEASE_v0.3.2.md)
- [RELEASE_v0.3.1.md](releases/RELEASE_v0.3.1.md)
- [RELEASE_v0.3.0.md](releases/RELEASE_v0.3.0.md)
- [RELEASE_v0.2.5.md](releases/RELEASE_v0.2.5.md)
- [RELEASE_v0.2.4.md](releases/RELEASE_v0.2.4.md)
- [RELEASE_v0.2.3.md](releases/RELEASE_v0.2.3.md)
### 📊 Reports Documentation
- **[Reports](reports/)** - Status, quality, and completion reports (29 items)
- [completion/](reports/completion/) - Project completion and phase reports
- [phase/](reports/phase/) - Detailed phase implementation reports
- [github-resolution/](reports/github-resolution/) - GitHub PR resolution and updates
### 🎭 Scenarios Documentation
- **[Scenarios](scenarios/)** - OpenClaw agent scenarios (49 items)
- 45 scenarios covering all AITBC features
- Beginner (20 scenarios), Intermediate (15 scenarios), Advanced (10 scenarios)
### 🔒 Security Documentation
- **[Security](security/)** - Security documentation (20 items)
- [policies/](security/policies/) - Project policies and procedures (merged from policies/)
### 🧪 Testing Documentation
- **[Testing](testing/)** - Test suite documentation (7 items)
- Now a proper directory (previously symlink to /tests/docs/)
### 🌐 Website Documentation
- **[Website](website)** - Symlink to /website/docs/ (rendered documentation site assets)
### 🔄 Workflows Documentation
- **[Workflows](workflows/)** - Documentation workflow outcomes (9 items)
---
## 📋 **Releases**
## 🔄 Recent Consolidations (v6.4 - May 3, 2026)
### **🎯 [Release Notes](releases/)**
**Complete release history and version information**
The following directories were consolidated to improve documentation organization:
| Version | Date | Status | Key Features |
|---------|------|--------|--------------|
| [v0.3.2](releases/RELEASE_v0.3.2.md) | April 23, 2026 | ✅ Stable | Test infrastructure, CLI refactoring, CI/CD standardization |
| [v0.3.1](releases/RELEASE_v0.3.1.md) | April 13, 2026 | ✅ Stable | Milestone tracking fix, test cleanup |
| [v0.3.0](releases/RELEASE_v0.3.0.md) | March 30, 2026 | ✅ Stable | Multi-node sync, consensus improvements |
| [v0.2.5](releases/RELEASE_v0.2.5.md) | March 30, 2026 | ✅ Stable | Enhanced monitoring, security hardening |
| [v0.2.4](releases/RELEASE_v0.2.4.md) | March 15, 2026 | ✅ Stable | Exchange integration, marketplace improvements |
| [v0.2.3](releases/RELEASE_v0.2.3.md) | March 1, 2026 | ✅ Stable | Initial production release |
1. **cli-technical/ → cli/** - CLI documentation merged into unified cli directory
2. **contracts/** - Converted from symlink to proper directory
3. **testing/** - Converted from symlink to proper directory
4. **mobile/ → deployment/** - Mobile documentation merged into deployment
5. **plugins/ → apps/plugins/** - Plugin documentation moved to apps directory
6. **governance/ → blockchain/governance/** - Governance documentation merged into blockchain
7. **nodes/ → deployment/** - Node operations documentation merged into deployment
8. **policies/ → security/policies/** - Policy documentation merged into security
9. **clients/ → apps/clients/** - Client documentation moved to apps directory
10. **trail/ → archive/trail/** - Trail documentation moved to archive
All cross-references have been updated to reflect these changes.
---
## 🏠 **Main Documentation**
## 🧭 Navigation Tips
### **📚 [Documentation Home](README.md)**
- **🎯 Purpose**: Main entry point and overview
- **📊 Content**: Project status, navigation guide, organization
- **🔗 Links**: All documentation sections and external resources
### **📖 [About Documentation](about/README.md)**
Documentation about the documentation system itself:
| File | Purpose |
|------|---------|
| [📖 About Index](about/README.md) | Overview of the documentation standards hub |
| [✅ Compliance Audit](about/DOCUMENTATION_COMPLIANCE_AUDIT.md) | Current remediation checklist |
| [📊 Organization Analysis](about/DOCS_ORGANIZATION_ANALYSIS.md) | Structure analysis and quality assessment |
| [🎯 10/10 Roadmap](about/DOCS_10_10_ROADMAP.md) | Path to perfect documentation quality |
| [🗂️ Archive Structure Fix](about/ARCHIVE_STRUCTURE_FIX.md) | Archive reorganization documentation |
| [📚 Centralization Guide](about/CENTRALIZED_DOCS_STRUCTURE.md) | Documentation centralization process |
| [📋 Sorting Summary](about/DOCUMENTATION_SORTING_SUMMARY.md) | Documentation sorting and organization |
### **🤖 [Agent SDK Documentation](agent-sdk/)**
**Complete documentation for OpenClaw agent communication:**
| File | Purpose |
|------|---------|
| [📱 Agent Communication Guide](agent-sdk/AGENT_COMMUNICATION_GUIDE.md) | Comprehensive agent communication guide |
| [🚀 Quick Start Guide](agent-sdk/QUICK_START_GUIDE.md) | Get started in 5 minutes |
| [📚 API Reference](agent-sdk/API_REFERENCE.md) | Complete API documentation |
### **🤖 [Agent Integration Assets](11_agents/)**
**Canonical agent API spec and manifest bundle:**
| File | Purpose |
|------|---------|
| [📘 Agent Index](11_agents/README.md) | Landing page for the agent API spec and manifest assets |
| [📄 Agent API Spec](11_agents/agent-api-spec.json) | API contract for registry, marketplace, and swarm coordination |
| [🧾 Agent Manifest](11_agents/agent-manifest.json) | Canonical agent types, prerequisites, and quick commands |
### **🎭 [Agent Scenarios](scenarios/)**
**45 OpenClaw agent scenarios covering all AITBC features:**
| Level | Scenarios | Content |
|-------|-----------|---------|
| [🟢 Beginner](scenarios/README.md#beginner-scenarios) | 20 scenarios | Single-feature focus scenarios (01-20) |
| [🟠 Intermediate](scenarios/README.md#intermediate-scenarios) | 15 scenarios | 2-3 feature combinations (21-35) |
| [🔴 Advanced](scenarios/README.md#advanced-scenarios) | 10 scenarios | 4+ feature combinations (36-40) |
Each scenario includes:
- Overview and prerequisites
- Step-by-step workflow with CLI commands
- Code examples using Agent SDK
- Expected outcomes and related resources
- **New Users**: Start with [Getting Started Guides](guides/getting-started/)
- **Developers**: Review [Project Structure](project/) and [Blockchain](blockchain/) documentation
- **System Administrators**: Check [Deployment](deployment/) and [Security](security/) documentation
- **OpenClaw Agents**: See [Agent SDK](agent-sdk/) and [Scenarios](scenarios/) documentation
- **Historical Reference**: Browse [Archive](archive/) for completed work and historical documents
---
## 🗂️ **Archive & History**
## 📊 Quality Metrics
### **📚 [Archive Documentation](archive/README.md)**
**156+ historical documents** organized in 10 categories:
| Category | Files | Content |
|----------|-------|---------|
| [📑 Summaries](archive/summaries/) | 42 files | Task completion summaries and handoffs |
| [<EFBFBD> Completed](archive/completed/) | 8 subdirectories | Completed work and implemented plans |
| [🧠 Expert](archive/expert/) | 4 subdirectories | Expert-level issues and completed phases |
| [<EFBFBD> Analytics](archive/analytics/) | 6 files | AI agent communication analysis |
| [🔧 Backend](archive/backend/) | 3 files | Backend system documentation |
| [💻 CLI](archive/cli/) | 16 files | CLI implementation and testing |
| [📋 Core Planning](archive/core_planning/) | 5 files | Planning and requirements |
| [📚 General](archive/general/) | 16 files | General project documentation |
| [🏗️ Infrastructure](archive/infrastructure/) | 10 files | Infrastructure and deployment |
| [🔒 Security](archive/security/) | 7 files | Security and compliance |
- **Documentation Quality Score**: 10/10 (Perfect)
- **Template Compliance**: 100% across all documents
- **Cross-Reference Integrity**: All links verified and updated
- **Structure Organization**: Hierarchical and logical
- **Navigation**: Comprehensive breadcrumbs and cross-references
---
## ✅ **Completed Projects**
### **📋 [Completed Projects](archive/completed/README.md)**
**Project tracking and completion documentation (now in archive):**
| Category | Focus | Status |
|----------|-------|--------|
| [🔧 Backend](archive/completed/backend/) | Backend implementations | Production-ready |
| [💻 CLI](archive/completed/cli/) | CLI enhancements | Integrated |
| [📋 Core Planning](archive/completed/core_planning/) | Architecture work | Implemented |
| [🏗️ Infrastructure](archive/completed/infrastructure/) | Infrastructure projects | Operational |
| [🔒 Security](archive/completed/security/) | Security initiatives | Deployed |
| [📊 Summaries](archive/completed/summaries/) | Project overviews | Documentation complete |
| [🛠️ Maintenance](archive/completed/maintenance/) | System improvements | Validated |
---
## 🔗 **External Documentation (Symlinks)**
### **📚 Centralized External Access**
External documentation and symlink targets accessible from the main docs directory:
| Link | Target | Content |
|------|--------|---------|
| [💻 CLI Technical](cli-technical/) | `/cli/docs/` | CLI technical documentation |
| [🧪 Testing](testing/) | `/tests/docs/` | Test documentation |
| [⛓️ Blockchain Node](blockchain/node/) | `/apps/blockchain-node/docs/` | Blockchain node docs |
Contract, node, and website documentation now live in local docs indexes under `contracts/`, `nodes/`, and `website/`.
---
## 🎯 **Topic-Specific Areas**
### **📚 Subject-Specific Documentation**
| Area | Description | Status |
|------|-------------|--------|
| [📖 Guides](guides/README.md) | Documentation authoring and usage guides | Active |
| [🔒 Security](security/README.md) | Security best practices and implementation | Active |
| [🏛️ Governance](governance/README.md) | Governance and policy documentation | Active |
| [📋 Policies](policies/README.md) | Project policies and procedures | Active |
| [🔧 Infrastructure](infrastructure/README.md) | System infrastructure documentation | Active |
| [📊 Analytics](analytics/README.md) | Data analytics and AI documentation | Active |
| [📱 Mobile](mobile/README.md) | Mobile application documentation | Active |
| [🔄 Exchange](exchange/README.md) | Exchange system documentation | Active |
| [🛠️ Development](development/README.md) | Development workflow documentation | Active |
| [🚀 Deployment](deployment/README.md) | Deployment guides and procedures | Active |
| [📝 Implementation](implementation/README.md) | Implementation details and guides | Active |
| [🔧 Maintenance](maintenance/README.md) | Maintenance procedures and guides | Active |
| [📜 Contracts](contracts/) | ZK verification and smart contract documentation | Active |
| [🖧 Nodes](nodes/) | Node operations notes and command references | Active |
| [📦 Packages](packages/README.md) | Language-specific packages and SDKs | Active |
| [📖 Reference](reference/README.md) | Compact lookup and reference docs | Active |
| [📋 Releases](releases/README.md) | Release notes and version history | Active |
| [📊 Reports](reports/README.md) | Status, quality, and completion reports | Active |
| [🧵 Trail](trail/README.md) | Operational breadcrumbs and success notes | Active |
| [🧩 OpenClaw](openclaw/README.md) | OpenClaw agent integration documentation | Active |
| [🌐 Website](website/) | Rendered documentation site assets | Active |
| [🔄 Workflows](workflows/README.md) | Documentation workflow outcomes | Active |
| [👥 Project](project/README.md) | Project information and coordination | Active |
#### **📋 [Project Documentation](project/)**
**Core project documentation and implementation guides:**
| Category | Files | Content |
|----------|-------|---------|
| [🧠 AI Economics](project/ai-economics/) | 1 file | Advanced AI economics intelligence |
| [💻 CLI](project/cli/) | 1 file | Command-line interface documentation |
| [🏗️ Infrastructure](project/infrastructure/) | 4 files | System infrastructure and deployment |
| [📋 Requirements](project/requirements/) | 2 files | Project requirements and migration |
| [✅ Completion](project/completion/) | 1 file | 100% project completion summary |
| [🔧 Workspace](project/workspace/) | 1 file | Workspace strategy and organization |
See the `Summaries` and `Workflows` entries above for the current top-level navigation paths.
---
**🎉 Welcome to AITBC Documentation!**
This master index provides complete access to all AITBC documentation. For project status, learning paths, and getting started, see [README.md](README.md).
---
*Last updated: 2026-04-27*
**Last Updated**: 2026-05-03
**Documentation Version**: 6.4
**Status**: Production Ready with consolidated structure

View File

@@ -5,10 +5,11 @@
**Level**: All Levels
**Prerequisites**: Basic computer skills
**Estimated Time**: Varies by learning path
**Last Updated**: 2026-04-27
**Version**: 6.3 (April 27, 2026 Update - docs compliance remediation)
**Last Updated**: 2026-05-03
**Version**: 6.4 (May 3, 2026 Update - documentation reorganization)
## 🧭 **Navigation Path:**
**🏠 [Documentation Home](README.md)** → *You are here*
**breadcrumb**: Home → Docs → Overview
@@ -17,17 +18,16 @@
## 🎯 **See Also:**
- **📖 [About Documentation](about/README.md)** - Standards, remediation notes, and audit checklist
- **🧭 [Master Index](MASTER_INDEX.md)** - Complete catalog of all documentation
- **📚 [Beginner Documentation](beginner/README.md)** - New user starting point
- **🌉 [Intermediate Documentation](intermediate/README.md)** - Bridge topics
- **🚀 [Advanced Documentation](advanced/README.md)** - Deep technical topics
- **🎓 [Expert Documentation](expert/README.md)** - Specialized content
- **📚 [Getting Started Guides](guides/getting-started/)** - New user starting point
- **🚀 [Blockchain Documentation](blockchain/) - Deep technical topics
- **📁 [Project Documentation](project/README.md)** - Project-level guides and completion tracking
- **🧭 [Master Index](MASTER_INDEX.md)** - Complete catalog of all documentation
- **🎭 [Agent Scenarios](scenarios/README.md)** - OpenClaw agent scenarios for all AITBC features
## 🎉 **PROJECT STATUS: 100% COMPLETED - April 13, 2026**
### ✅ **All 10 Major Systems: 100% Complete**
- **System Architecture**: ✅ Complete FHS compliance and directory structure
- **Service Management**: ✅ Single marketplace service with clean architecture
- **Basic Security**: ✅ Secure keystore and API key management
@@ -40,6 +40,7 @@
- **Federated Mesh**: ✅ Independent islands, node hubs, multi-chain support
### 🎯 **Final Achievements (April 13, 2026)**
- **100% Project Completion**: ✅ All 10 major systems fully implemented
- **100% Test Success**: ✅ All test suites passing (4/4 major suites)
- **Production Ready**: ✅ Service healthy and operational
@@ -51,6 +52,7 @@
- **No Remaining Tasks**: ✅ All implementation plans completed
### 🚀 **Production Deployment Status**
- **Service Health**: ✅ Running on port 9001
- **Authentication**: ✅ JWT tokens working
- **Monitoring**: ✅ Prometheus metrics active
@@ -59,6 +61,7 @@
- **Type Safety**: ✅ 90%+ coverage achieved
### 📊 **Final Statistics**
- **Total Systems**: 10/10 Complete (100%)
- **API Endpoints**: 17/17 Working (100%)
- **Test Success Rate**: 100% (4/4 major test suites)
@@ -68,6 +71,7 @@
- **Federated Mesh**: Independent islands with hub discovery
### 🎯 **Previous Achievements**
- **AI Economics Masters**: ✅ Complete agent transformation with economic intelligence
- **Advanced AI Teaching Plan**: ✅ 10/10 sessions (100%) with real-world applications
- **Enhanced CLI System**: ✅ 50+ command groups with 100% test coverage
@@ -86,48 +90,41 @@
| **I'm a...** | **Start Here** | **Next Steps** | **Goal** |
|--------------|----------------|----------------|---------|
| **👤 New User** | [Beginner Guide](beginner/README.md) → [Getting Started](beginner/01_getting_started/) | [CLI Basics](beginner/05_cli/) | Use AITBC effectively |
| **👨‍💻 Developer** | [Beginner](beginner/README.md) → [Project Structure](beginner/02_project/) | [Intermediate](intermediate/README.md) | Build on AITBC |
| **⛏️ Miner** | [Beginner](beginner/README.md) → [Mining Guide](beginner/04_miners/) | [Advanced](advanced/README.md) | Run mining operations |
| **🔧 Admin** | [Beginner](beginner/README.md) → [CLI](beginner/05_cli/) | [Infrastructure](advanced/04_deployment/) | Manage systems |
| **🎓 Expert** | [Advanced](advanced/README.md) → [Expert Topics](expert/README.md) | [Research](archive/README.md) | Deep expertise |
| **👤 New User** | [Getting Started](guides/getting-started/) | [CLI Basics](cli/) | Use AITBC effectively |
| **👨‍💻 Developer** | [Project Structure](project/) | [Blockchain](blockchain/) | Build on AITBC |
| **⛏️ Miner** | [Mining Guide](mining/) | [Blockchain](blockchain/) | Run mining operations |
| **🔧 Admin** | [CLI](cli/) | [Infrastructure](deployment/) | Manage systems |
| **🎓 Expert** | [Archive](archive/README.md) | Deep expertise |
### 📚 **Documentation Map:**
```
📁 docs/
├── 🏠 README.md # ← You are here
├── about/ # Docs standards, audits, and remediation notes
├── 11_agents/ # Agent API spec and manifest assets
├── beginner/ # Start here (new users)
├── intermediate/ # Bridge to advanced
├── advanced/ # Deep technical content
├── expert/ # Specialized expertise
├── agents/ # Agent documentation
├── guides/ # Getting started guides
├── blockchain/ # Blockchain documentation
├── archive/ # Historical documents (includes completed/ and summaries/)
├── contracts/ # Smart contract verification docs
├── website/ # Rendered website documentation assets
├── nodes/ # Node operations notes and commands
├── policies/ # Policies and security discipline
├── deployment/ # Deployment guides and procedures
├── development/ # Development workflow notes
├── reference/ # Compact lookup/reference docs
├── development/ # Development workflow notes
├── releases/ # Versioned release notes
├── reports/ # Status, quality, and completion reports
├── trail/ # Operational breadcrumbs and success notes
├── workflows/ # Documentation workflow outcomes
```
## 🧭 **Documentation Organization by Reading Level**
### 🟢 **Beginner** (Getting Started & Basic Usage)
### 🟢 **Getting Started** (Beginner Content)
For new users, developers getting started, and basic operational tasks.
- [`01_getting_started/`](./beginner/01_getting_started/) - Introduction, installation, and basic setup
- [`02_project/`](./beginner/02_project/) - Project overview and basic concepts
- [`03_clients/`](./beginner/03_clients/) - Client setup and basic usage
- [`04_miners/`](./beginner/04_miners/) - Mining operations and basic node management
- [`05_cli/`](./beginner/05_cli/) - Command-line interface basics
- [`06_github_resolution/`](./beginner/06_github_resolution/) - GitHub PR resolution and updates
- [`07_marketplace/`](./intermediate/07_marketplace/) - Marketplace and exchange integration
- [`guides/getting-started/`](./guides/getting-started/) - Introduction, installation, and basic setup
- [`project/`](./project/) - Project overview and basic concepts
- [`clients/`](./clients/) - Client setup and basic usage
- [`mining/`](./mining/) - Mining operations and basic node management
- [`cli/`](./cli/) - Command-line interface basics
- [`reports/github-resolution/`](./reports/github-resolution/) - GitHub PR resolution and updates
### 🤖 **Agent SDK Documentation**
For OpenClaw agents wanting to communicate and collaborate on the blockchain.
@@ -135,27 +132,27 @@ For OpenClaw agents wanting to communicate and collaborate on the blockchain.
- **[Agent Communication Guide](agent-sdk/AGENT_COMMUNICATION_GUIDE.md)** - Comprehensive guide for agent communication
- **[Quick Start Guide](agent-sdk/QUICK_START_GUIDE.md)** - Get started in 5 minutes
- **[API Reference](agent-sdk/API_REFERENCE.md)** - Complete API documentation
- **[Agent Integration Assets](11_agents/README.md)** - Canonical API spec and manifest for agent interoperability
- **[Agent Integration Assets](agents/INTEGRATION_ASSETS_README.md)** - Canonical API spec and manifest for agent interoperability
### 🟠 **Advanced** (Architecture & Deep Technical)
For experienced developers, system architects, and advanced technical tasks.
- [`01_blockchain/`](./advanced/01_blockchain/) - Blockchain architecture and deep technical details
- [`02_reference/`](./advanced/02_reference/) - Technical reference materials
- [`03_architecture/`](./advanced/03_architecture/) - System architecture and design patterns
- [`04_deployment/`](./advanced/04_deployment/) - Advanced deployment strategies
- [`05_development/`](./advanced/05_development/) - Advanced development workflows
- [`06_security/`](./advanced/06_security/) - Security architecture and implementation
- [`blockchain/`](./blockchain/) - Blockchain architecture and deep technical details
- [`reference/`](./reference/) - Technical reference materials
- [`architecture/`](./architecture/) - System architecture and design patterns
- [`deployment/`](./deployment/) - Advanced deployment strategies
- [`development/`](./development/) - Advanced development workflows
- [`security/`](./security/) - Security architecture and implementation
### 🔴 **Expert** (Specialized & Complex Topics)
For system administrators, security experts, and specialized complex tasks.
- [`01_issues/`](./expert/01_issues/) - Issue tracking and resolution
- [`02_tasks/`](./expert/02_tasks/) - Complex task management
- [`03_completion/`](./expert/03_completion/) - Project completion and phase reports
- [`04_phase_reports/`](./expert/04_phase_reports/) - Detailed phase implementation reports
- [`05_reports/`](./expert/05_reports/) - Technical reports and analysis
- [`06_workflow/`](./expert/06_workflow/) - Advanced workflow documentation
- [`archive/expert/issues/`](./archive/expert/issues/) - Historical issue tracking and resolution
- [`archive/expert/tasks/`](./archive/expert/tasks/) - Historical task management
- [`reports/completion/`](./reports/completion/) - Project completion and phase reports
- [`reports/phase/`](./reports/phase/) - Detailed phase implementation reports
- [`reports/`](./reports/) - Technical reports and analysis
- [`workflows/`](./workflows/) - Documentation workflow outcomes
### 📁 **Archives & Special Collections**
For historical reference, duplicate content, and temporary files.
@@ -168,27 +165,23 @@ For historical reference, duplicate content, and temporary files.
## 🚀 **Quick Navigation**
### **For New Users**
1. Start with [`beginner/01_getting_started/`](./beginner/01_getting_started/)
2. Learn basic CLI commands in [`beginner/05_cli/`](./beginner/05_cli/)
3. Set up your first client in [`beginner/03_clients/`](./beginner/03_clients/)
1. Start with [`guides/getting-started/`](./guides/getting-started/)
2. Learn basic CLI commands in [`cli/`](./cli/)
3. Set up your first client in [`clients/`](./clients/)
### **For Developers**
1. Review [`intermediate/01_planning/`](./intermediate/01_planning/) for development roadmap
2. Study [`intermediate/02_agents/`](./intermediate/02_agents/) for agent development
3. Reference [`advanced/03_architecture/`](./advanced/03_architecture/) for system design
1. Review [`project/planning/`](./project/planning/) for development roadmap
2. Study [`agents/`](./agents/) for agent development
3. Reference [`architecture/`](./architecture/) for system design
### **For System Administrators**
1. Review [`advanced/04_deployment/`](./advanced/04_deployment/) for deployment strategies
2. Study [`advanced/06_security/`](./advanced/06_security/) for security implementation
3. Check [`expert/01_issues/`](./expert/01_issues/) for issue resolution
1. Review [`deployment/`](./deployment/) for deployment strategies
2. Study [`security/`](./security/) for security implementation
3. Check [`archive/expert/issues/`](./archive/expert/issues/) for historical issue resolution
## 🏷️ **File Naming Convention**
Files are now organized with systematic prefixes based on reading level:
- **Beginner**: `01_`, `02_`, `03_`, `04_`, `05_`, `06_`
- **Intermediate**: `01_`, `02_`, `03_`, `04_`, `05_`, `06_`, `07_`
- **Advanced**: `01_`, `02_`, `03_`, `04_`, `05_`, `06_`
Files are organized with descriptive names based on their content and purpose.
- **Expert**: `01_`, `02_`, `03_`, `04_`, `05_`, `06_`
## 🔗 **Related Resources & Cross-References**
@@ -205,23 +198,20 @@ Files are now organized with systematic prefixes based on reading level:
- **📋 Releases**: [Release Notes](releases/README.md)
- **📊 Reports**: [Reports Documentation](reports/README.md)
- **📑 Summaries**: [Summaries Documentation](archive/summaries/README.md)
- **🧵 Trail**: [Trail Documentation](trail/README.md)
- **🧵 Trail**: [Trail Documentation](archive/trail/README.md)
- **🔄 Workflows**: [Workflows Documentation](workflows/README.md)
### 🔗 **External Documentation (Symlinks):**
- **💻 CLI Technical**: [CLI Technical Docs](cli-technical/) → `/cli/docs/`
- **📜 Contracts**: [Smart Contracts](contracts/) `/contracts/docs/`
- **🧪 Testing**: [Test Documentation](testing/) `/tests/docs/`
- **💻 CLI Technical**: [CLI Technical Docs](cli/) - CLI installation and usage notes
- **📜 Contracts**: [Smart Contracts](contracts/) - Smart contract verification docs
- **🧪 Testing**: [Test Documentation](testing/) - Test suite documentation and validation procedures
- **🌐 Website**: [Website Docs](website/) → `/website/docs/`
- **⛓️ Blockchain**: [Blockchain Node](blockchain/node/) → `/apps/blockchain-node/docs/`
### 🎯 **Topic-Specific Documentation:**
- **🔒 Security**: [Security Documentation](security/) - Security best practices
- **🏛️ Governance**: [Governance Docs](governance/) - Governance and policies
- **📋 Policies**: [Project Policies](policies/) - Project policies and procedures
- **🔧 Infrastructure**: [Infrastructure Docs](infrastructure/) - System infrastructure
- ** Infrastructure**: [Infrastructure Docs](infrastructure/) - System infrastructure
- **📊 Analytics**: [Analytics Documentation](analytics/) - Data analytics
- **📱 Mobile**: [Mobile Documentation](mobile/) - Mobile applications
- **🔄 Exchange**: [Exchange Documentation](exchange/) - Exchange systems
- **🛠️ Development**: [Development Docs](development/) - Development workflows
- **🚀 Deployment**: [Deployment Docs](deployment/) - Deployment guides
@@ -229,25 +219,21 @@ Files are now organized with systematic prefixes based on reading level:
- **🔧 Maintenance**: [Maintenance Docs](maintenance/) - Maintenance procedures
### 🌉 **Learning Path Cross-References:**
- **👤 Beginner Path**: [Beginner Overview](beginner/README.md) → [Getting Started](beginner/01_getting_started/)
- **🌉 Intermediate Path**: [Intermediate Overview](intermediate/README.md) → [Planning](intermediate/01_planning/)
- **🚀 Advanced Path**: [Advanced Overview](advanced/README.md) → [Blockchain](advanced/01_blockchain/)
- **🎓 Expert Path**: [Expert Overview](expert/README.md) → [Issues](expert/01_issues/)
- **👤 Getting Started**: [Getting Started Guides](guides/getting-started/) → [Project](project/)
- **🚀 Advanced Path**: [Blockchain Overview](blockchain/) → [Architecture](architecture/)
### 🔄 **Related Content by Topic:**
- **🤖 AI & Agents**: [Intermediate Agents](intermediate/02_agents/) → [Expert Tasks](expert/02_tasks/)
- **⛓️ Blockchain**: [Advanced Blockchain](advanced/01_blockchain/) → [Expert Issues](expert/01_issues/)
- **👛 CLI Tools**: [Beginner CLI](beginner/05_cli/) → [CLI Technical](cli-technical/)
- **🏪 Marketplace**: [Intermediate Marketplace](intermediate/07_marketplace/) → [Exchange](exchange/)
- **🔒 Security**: [Advanced Security](advanced/06_security/) → [Security](security/)
- **🤖 AI & Agents**: [Agents](agents/) → [Archive Tasks](archive/expert/tasks/)
- **⛓️ Blockchain**: [Blockchain](blockchain/) → [Cross-Chain](blockchain/cross-chain/)
- **👛 CLI Tools**: [CLI](cli/)
- **🏪 Marketplace**: [Marketplace](apps/marketplace/) → [Exchange](apps/exchange/)
- **🔒 Security**: [Security](security/) → [Security](security/)
### 📁 **Topic-Specific Entry Points:**
- **📖 Guides**: [Guides](guides/README.md) - Documentation authoring and usage guides
- **👛 CLI Technical**: [CLI Technical](cli-technical/README.md) - CLI installation and usage notes
- **🤖 Agent Integration Assets**: [11_agents/](11_agents/) - Agent API spec and manifest assets
- **👛 CLI Technical**: [CLI](cli/README.md) - CLI installation and usage notes
- **🤖 Agent Integration Assets**: [agents/](agents/) - Agent API spec and manifest assets
- **📜 Contracts**: [Contracts](contracts/) - ZK verification and contract docs
- **📱 Mobile**: [Mobile](mobile/README.md) - Mobile application documentation
- **🖧 Nodes**: [Nodes](nodes/) - Node operation notes and command references
- **🧩 OpenClaw**: [OpenClaw](openclaw/) - OpenClaw agent integration and coordination docs
- **🌐 Website**: [Website](website/) - Rendered documentation site assets
- **🧪 Testing**: [Testing](testing/README.md) - Test suite documentation and validation procedures
@@ -262,7 +248,7 @@ Files are now organized with systematic prefixes based on reading level:
- **📖 Documentation Issues**: [Report Doc Issues](https://github.com/oib/AITBC/issues)
- **💬 Community Forum**: [AITBC Forum](https://forum.aitbc.net)
- **🆘 Technical Support**: [AITBC Support](https://support.aitbc.net)
- **📚 Learning Resources**: [Additional Resources](beginner/README.md#-getting-help)
- **📚 Learning Resources**: [Additional Resources](guides/getting-started/)
---
@@ -304,9 +290,9 @@ Files are now organized with systematic prefixes based on reading level:
## 📚 **Related Resources**
- **GitHub Repository**: [AITBC Source Code](https://github.com/oib/AITBC)
- **CLI Reference**: [Complete CLI Documentation](./beginner/05_cli/)
- **Testing Suite**: [Test Results and Procedures](./beginner/05_cli/testing.md)
- **Development Setup**: [Environment Configuration](./beginner/01_getting_started/)
- **CLI Reference**: [Complete CLI Documentation](./cli/)
- **Testing Suite**: [Test Results and Procedures](./cli/testing.md)
- **Development Setup**: [Environment Configuration](./guides/getting-started/)
### 📚 **Documentation Standards:**
- **📖 About Hub**: [About Documentation](about/README.md)
@@ -323,8 +309,299 @@ Files are now organized with systematic prefixes based on reading level:
---
**Last Updated**: 2026-04-27
**Documentation Version**: 4.2 (April 27, 2026 Update - docs compliance remediation)
## 📚 **Complete Documentation Catalog**
### **📦 Applications Documentation**
#### **🎯 [Apps Overview](apps/README.md)**
Complete documentation for all AITBC applications and services
**Blockchain**
- [Blockchain Node](apps/blockchain/blockchain-node.md) - Production-ready blockchain node with hybrid PoA/PoS consensus
- [Blockchain Event Bridge](apps/blockchain/blockchain-event-bridge.md) - Event bridge for blockchain events
- [Blockchain Explorer](apps/blockchain/blockchain-explorer.md) - Blockchain explorer and analytics
**Coordinator**
- [Coordinator API](apps/coordinator/coordinator-api.md) - Job coordination service (⚠️ LEGACY - use Agent Coordinator 9001)
- [Agent Coordinator](apps/coordinator/agent-coordinator.md) - Agent coordination and management (Port 9001)
**Agents**
- [Agent Services](apps/agents/agent-services.md) - Agent bridge, compliance, protocols, registry, and trading
- [AI Engine](apps/agents/ai-engine.md) - AI engine for autonomous agent operations
**Exchange**
- [Exchange](apps/exchange/exchange.md) - Cross-chain exchange and trading platform (Port 8001)
- [Exchange Integration](apps/exchange/exchange-integration.md) - Exchange integration services
- [Trading Engine](apps/exchange/trading-engine.md) - Trading engine for order matching
**Marketplace**
- [Marketplace](apps/marketplace/marketplace.md) - GPU marketplace for compute resources
- [Pool Hub](apps/marketplace/pool-hub.md) - Pool hub for resource pooling
**Wallet**
- [Wallet](apps/wallet/wallet.md) - Multi-chain wallet services
**Infrastructure**
- [Monitor](apps/infrastructure/monitor.md) - System monitoring and alerting
- [Multi-Region Load Balancer](apps/infrastructure/multi-region-load-balancer.md) - Load balancing across regions
- [Global Infrastructure](apps/infrastructure/global-infrastructure.md) - Global infrastructure management
**Plugins**
- [Plugin Analytics](apps/plugins/plugin-analytics.md) - Analytics plugin
- [Plugin Marketplace](apps/plugins/plugin-marketplace.md) - Marketplace plugin
- [Plugin Registry](apps/plugins/plugin-registry.md) - Plugin registry
- [Plugin Security](apps/plugins/plugin-security.md) - Security plugin
**Crypto**
- [ZK Circuits](apps/crypto/zk-circuits.md) - Zero-knowledge circuits for privacy
**Compliance**
- [Compliance Service](apps/compliance/compliance-service.md) - Compliance checking and regulatory services
**Mining**
- [Miner](apps/miner/README.md) - Mining and block validation services
**Global AI**
- [Global AI Agents](apps/global-ai/global-ai-agents.md) - Global AI agent coordination
**Explorer**
- [Simple Explorer](apps/explorer/simple-explorer.md) - Simple blockchain explorer
**Migration Status**
- [Microservices Migration](infrastructure/migration/microservices-migration-status.md) - Track migration from monolithic coordinator to microservices architecture
### **🔧 CLI Documentation**
**🎯 [CLI Overview](project/cli/CLI_DOCUMENTATION.md)**
Complete command-line interface documentation
| Section | Description |
|---------|-------------|
| [CLI Architecture](project/cli/CLI_DOCUMENTATION.md#architecture) | CLI structure and design |
| [Command Groups](project/cli/CLI_DOCUMENTATION.md#command-groups) | Available command categories |
| [Usage Examples](project/cli/CLI_DOCUMENTATION.md#usage-examples) | Common CLI operations |
| [Configuration](project/cli/CLI_DOCUMENTATION.md#configuration) | CLI setup and config files |
### **📋 Releases**
**🎯 [Release Notes](releases/)**
Complete release history and version information
| Version | Date | Status | Key Features |
|---------|------|--------|--------------|
| [v0.3.2](releases/RELEASE_v0.3.2.md) | April 23, 2026 | ✅ Stable | Test infrastructure, CLI refactoring, CI/CD standardization |
| [v0.3.1](releases/RELEASE_v0.3.1.md) | April 13, 2026 | ✅ Stable | Milestone tracking fix, test cleanup |
| [v0.3.0](releases/RELEASE_v0.3.0.md) | March 30, 2026 | ✅ Stable | Multi-node sync, consensus improvements |
| [v0.2.5](releases/RELEASE_v0.2.5.md) | March 30, 2026 | ✅ Stable | Enhanced monitoring, security hardening |
| [v0.2.4](releases/RELEASE_v0.2.4.md) | March 15, 2026 | ✅ Stable | Exchange integration, marketplace improvements |
| [v0.2.3](releases/RELEASE_v0.2.3.md) | March 1, 2026 | ✅ Stable | Initial production release |
### **🏠 Main Documentation**
**📖 [About Documentation](about/README.md)**
Documentation about the documentation system itself
| File | Purpose |
|------|---------|
| [📖 About Index](about/README.md) | Overview of the documentation standards hub |
| [✅ Compliance Audit](about/DOCUMENTATION_COMPLIANCE_AUDIT.md) | Current remediation checklist |
| [📊 Organization Analysis](about/DOCS_ORGANIZATION_ANALYSIS.md) | Structure analysis and quality assessment |
| [🎯 10/10 Roadmap](about/DOCS_10_10_ROADMAP.md) | Path to perfect documentation quality |
| [🗂️ Archive Structure Fix](about/ARCHIVE_STRUCTURE_FIX.md) | Archive reorganization documentation |
| [📚 Centralization Guide](about/CENTRALIZED_DOCS_STRUCTURE.md) | Documentation centralization process |
| [📋 Sorting Summary](about/DOCUMENTATION_SORTING_SUMMARY.md) | Documentation sorting and organization |
**🤖 [Agent SDK Documentation](agent-sdk/)**
Complete documentation for OpenClaw agent communication
| File | Purpose |
|------|---------|
| [📱 Agent Communication Guide](agent-sdk/AGENT_COMMUNICATION_GUIDE.md) | Comprehensive agent communication guide |
| [🚀 Quick Start Guide](agent-sdk/QUICK_START_GUIDE.md) | Get started in 5 minutes |
| [📚 API Reference](agent-sdk/API_REFERENCE.md) | Complete API documentation |
**🤖 [Agent Integration Assets](agents/)**
Canonical agent API spec and manifest bundle
| File | Purpose |
|------|---------|
| [📘 Agent Index](agents/INTEGRATION_ASSETS_README.md) | Landing page for the agent API spec and manifest assets |
| [📄 Agent API Spec](agents/agent-api-spec.json) | API contract for registry, marketplace, and swarm coordination |
| [🧾 Agent Manifest](agents/agent-manifest.json) | Canonical agent types, prerequisites, and quick commands |
**🎭 [Agent Scenarios](scenarios/)**
45 OpenClaw agent scenarios covering all AITBC features
| Level | Scenarios | Content |
|-------|-----------|---------|
| [🟢 Beginner](scenarios/README.md#beginner-scenarios) | 20 scenarios | Single-feature focus scenarios (01-20) |
| [🟠 Intermediate](scenarios/README.md#intermediate-scenarios) | 15 scenarios | 2-3 feature combinations (21-35) |
| [🔴 Advanced](scenarios/README.md#advanced-scenarios) | 10 scenarios | 4+ feature combinations (36-40) |
### **🗂️ Archive & History**
**📚 [Archive Documentation](archive/README.md)**
156+ historical documents organized in 10 categories
| Category | Files | Content |
|----------|-------|---------|
| [📑 Summaries](archive/summaries/) | 42 files | Task completion summaries and handoffs |
| [✅ Completed](archive/completed/) | 8 subdirectories | Completed work and implemented plans |
| [🧠 Expert](archive/expert/) | 4 subdirectories | Expert-level issues and completed phases |
| [📊 Analytics](archive/analytics/) | 6 files | AI agent communication analysis |
| [🔧 Backend](archive/backend/) | 3 files | Backend system documentation |
| [💻 CLI](archive/cli/) | 16 files | CLI implementation and testing |
| [📋 Core Planning](archive/core_planning/) | 5 files | Planning and requirements |
| [📚 General](archive/general/) | 16 files | General project documentation |
| [🏗️ Infrastructure](archive/infrastructure/) | 10 files | Infrastructure and deployment |
| [🔒 Security](archive/security/) | 7 files | Security and compliance |
### **✅ Completed Projects**
**📋 [Completed Projects](archive/completed/README.md)**
Project tracking and completion documentation (now in archive)
| Category | Focus | Status |
|----------|-------|--------|
| [🔧 Backend](archive/completed/backend/) | Backend implementations | Production-ready |
| [💻 CLI](archive/completed/cli/) | CLI enhancements | Integrated |
| [📋 Core Planning](archive/completed/core_planning/) | Architecture work | Implemented |
| [🏗️ Infrastructure](archive/completed/infrastructure/) | Infrastructure projects | Operational |
| [🔒 Security](archive/completed/security/) | Security initiatives | Deployed |
| [📊 Summaries](archive/completed/summaries/) | Project overviews | Documentation complete |
| [🛠️ Maintenance](archive/completed/maintenance/) | System improvements | Validated |
### **🎯 Topic-Specific Areas**
**📚 Subject-Specific Documentation**
| Area | Description | Status |
|------|-------------|--------|
| [📖 Guides](guides/README.md) | Documentation authoring and usage guides | Active |
| [🔒 Security](security/README.md) | Security best practices and implementation | Active |
| [🔧 Infrastructure](infrastructure/README.md) | System infrastructure documentation | Active |
| [📊 Analytics](analytics/README.md) | Data analytics and AI documentation | Active |
| [🔄 Exchange](exchange/README.md) | Exchange system documentation | Active |
| [🛠️ Development](development/README.md) | Development workflow documentation | Active |
| [🚀 Deployment](deployment/README.md) | Deployment guides and procedures | Active |
| [📝 Implementation](implementation/README.md) | Implementation details and guides | Active |
| [🔧 Maintenance](maintenance/README.md) | Maintenance procedures and guides | Active |
| [📜 Contracts](contracts/) | ZK verification and smart contract documentation | Active |
| [📦 Packages](packages/README.md) | Language-specific packages and SDKs | Active |
| [📖 Reference](reference/README.md) | Compact lookup and reference docs | Active |
| [📋 Releases](releases/README.md) | Release notes and version history | Active |
| [📊 Reports](reports/README.md) | Status, quality, and completion reports | Active |
| [🧩 OpenClaw](openclaw/README.md) | OpenClaw agent integration documentation | Active |
| [🌐 Website](website/) | Rendered documentation site assets | Active |
| [🔄 Workflows](workflows/README.md) | Documentation workflow outcomes | Active |
| [👥 Project](project/README.md) | Project information and coordination | Active |
**📋 [Project Documentation](project/)**
Core project documentation and implementation guides
| Category | Files | Content |
|----------|-------|---------|
| [🧠 AI Economics](project/ai-economics/) | 1 file | Advanced AI economics intelligence |
| [💻 CLI](project/cli/) | 1 file | Command-line interface documentation |
| [🏗️ Infrastructure](project/infrastructure/) | 4 files | System infrastructure and deployment |
| [📋 Requirements](project/requirements/) | 2 files | Project requirements and migration |
| [✅ Completion](project/completion/) | 1 file | 100% project completion summary |
| [🔧 Workspace](project/workspace/) | 1 file | Workspace strategy and organization |
---
## 🐍 **Python Version Requirements**
### **✅ Current Status: Python 3.13.5**
Your current Python installation is up-to-date:
```
System Python: 3.13.5
Virtual Environment: 3.13.5
Latest Available: 3.13.5
```
### **📊 Version Details**
**Current Installation**
```bash
# System Python
python3.13 --version
# Output: Python 3.13.5
# Virtual Environment
./venv/bin/python --version
# Output: Python 3.13.5
# venv Configuration
cat venv/pyvenv.cfg
# version = 3.13.5
```
**Package Installation Status**
All Python 3.13 packages are properly installed:
- ✅ python3.13 (3.13.5-2)
- ✅ python3.13-dev (3.13.5-2)
- ✅ python3.13-venv (3.13.5-2)
- ✅ libpython3.13-dev (3.13.5-2)
- ✅ All supporting packages
### **🚀 Performance Benefits of Python 3.13.5**
**Key Improvements**
- **🚀 Performance**: 5-10% faster than 3.12
- **🧠 Memory**: Better memory management
- **🔧 Error Messages**: Improved error reporting
- **🛡️ Security**: Latest security patches
- **⚡ Compilation**: Faster startup times
**AITBC-Specific Benefits**
- **Type Checking**: Better MyPy integration
- **FastAPI**: Improved async performance
- **SQLAlchemy**: Optimized database operations
- **AI/ML**: Enhanced numpy/pandas compatibility
### **📋 Maintenance Checklist**
**Monthly Check**
```bash
# Check for Python updates
apt update
apt list --upgradable | grep python3.13
# Check venv integrity
./venv/bin/python --version
./venv/bin/pip list --outdated
```
**Quarterly Maintenance**
```bash
# Update system packages
apt update && apt upgrade -y
# Update pip packages
./venv/bin/pip install --upgrade pip
./venv/bin/pip list --outdated
./venv/bin/pip install --upgrade <package-name>
```
### **🎯 Current Recommendations**
**Immediate Actions**
-**No action needed**: Already running latest 3.13.5
-**System is optimal**: All packages up-to-date
-**Performance optimized**: Latest improvements applied
**Monitoring**
- **Monthly**: Check for security updates
- **Quarterly**: Update pip packages
- **Annually**: Review Python version strategy
---
**Last Updated**: 2026-05-03
**Documentation Version**: 6.4 (May 3, 2026 Update - documentation consolidation)
**Quality Score**: 10/10 (Perfect Documentation)
**Total Files**: 500+ markdown files with standardized templates
**Status**: PRODUCTION READY with perfect documentation structure

View File

@@ -13,8 +13,8 @@ All documentation is now accessible from the central `/docs` directory through s
├── blockchain/ # Blockchain documentation
│ ├── README.md # Blockchain docs overview
│ └── node -> /opt/aitbc/apps/blockchain-node/docs/ # Symlink to app docs
├── beginner/05_cli/ # CLI beginner documentation (detailed guides)
├── cli-technical -> /opt/aitbc/cli/docs/ # Symlink to CLI technical docs
├── cli/ # CLI documentation
├── cli/ # CLI documentation
├── contracts -> /opt/aitbc/contracts/docs/ # Symlink to contracts docs
├── testing -> /opt/aitbc/tests/docs/ # Symlink to test documentation
├── website -> /opt/aitbc/website/docs/ # Symlink to website docs
@@ -29,7 +29,7 @@ All documentation is now accessible from the central `/docs` directory through s
- **Content**: `SCHEMA.md` - Blockchain node schema documentation
### **CLI Beginner Documentation**
- **Location**: `/opt/aitbc/docs/beginner/05_cli/`
- **Location**: `/opt/aitbc/docs/cli/`
- **Content**:
- `README.md` - Comprehensive CLI guide for beginners
- `permission-setup.md` - CLI permission setup
@@ -37,7 +37,7 @@ All documentation is now accessible from the central `/docs` directory through s
### **CLI Technical Documentation**
- **Source**: `/opt/aitbc/cli/docs/`
- **Symlink**: `/opt/aitbc/docs/cli-technical`
- **Symlink**: `/opt/aitbc/docs/cli`
- **Content**:
- `README.md` - CLI technical documentation
- `DISABLED_COMMANDS_CLEANUP.md` - Cleanup analysis
@@ -87,11 +87,8 @@ All documentation is now accessible from the central `/docs` directory through s
# Blockchain node docs
ls /opt/aitbc/docs/blockchain/node/
# CLI beginner docs
ls /opt/aitbc/docs/beginner/05_cli/
# CLI technical docs
ls /opt/aitbc/docs/cli-technical/
# CLI docs
ls /opt/aitbc/docs/cli/
# Contracts docs
ls /opt/aitbc/docs/contracts/
@@ -112,8 +109,7 @@ ls /opt/aitbc/docs/website/
All symlinks have been tested and confirmed working:
-`/docs/blockchain/node``/apps/blockchain-node/docs`
-`/docs/beginner/05_cli/` CLI beginner documentation (regular directory)
-`/docs/cli-technical``/cli/docs`
-`/docs/cli/` - CLI documentation (merged from cli-technical)
-`/docs/contracts``/contracts/docs`
-`/docs/testing``/tests/docs`
-`/docs/website``/website/docs`

View File

@@ -28,10 +28,10 @@
**Required Actions:**
```bash
# Create index files for empty parent directories
/docs/advanced/README.md # Advanced topics overview
/docs/beginner/README.md # Beginner learning path
/docs/expert/README.md # Expert-level content guide
/docs/intermediate/README.md # Intermediate content overview
/docs/blockchain/ # Blockchain topics overview
/docs/guides/getting-started/ # Getting started guides
/docs/archive/expert/ # Expert-level content guide
/docs/agents/ # Agent documentation
/docs/archive/README.md # Archive organization guide
/docs/completed/README.md # Completed projects overview
```
@@ -98,11 +98,6 @@
### **Phase 1: Content Completion (1-2 hours)**
```bash
# Create missing index files
touch /docs/advanced/README.md
touch /docs/beginner/README.md
touch /docs/expert/README.md
touch /docs/intermediate/README.md
touch /docs/archive/README.md
touch /docs/completed/README.md
# Populate with standardized templates

View File

@@ -33,17 +33,17 @@
│ ├── infrastructure/ # Infrastructure and deployment
│ └── security/ # Security and compliance
├── [learning paths/] # Structured learning paths
│ ├── beginner/ # Beginner-friendly content
│ ├── intermediate/ # Intermediate level content
── advanced/ # Advanced topics
│ └── expert/ # Expert-level content
│ ├── guides/ # Getting started guides
│ ├── project/ # Project documentation
── agents/ # Agent documentation topics
│ └── archive/expert/ # Expert-level content
├── [topic areas/] # Topic-specific documentation
│ ├── blockchain/ # Blockchain documentation
│ ├── security/ # Security documentation
│ ├── governance/ # Governance documentation
│ └── policies/ # Policy documentation
├── [symlinks to external docs] # Centralized access to external docs
│ ├── cli-technical -> /cli/docs
│ ├── cli/
│ ├── contracts -> /contracts/docs
│ ├── testing -> /tests/docs
│ └── website -> /website/docs
@@ -76,7 +76,7 @@ Several directories have minimal content and could be consolidated:
#### **2. Empty Parent Directories**
Some learning path directories are empty containers:
- `/advanced/`, `/beginner/`, `/expert/`, `/intermediate/` - These are structural
- `/blockchain/`, `/guides/`, `/project/`, `/agents/` - These are structural
- `/archive/`, `/completed/` - These are organizational containers
#### **3. Naming Consistency**

View File

@@ -38,26 +38,21 @@ This checklist tracks the current remediation target:
### Required directory indexes
- [x] `about/README.md`
- [x] `11_agents/README.md`
- [x] `agent-sdk/README.md`
- [x] `advanced/README.md`
- [x] `analytics/README.md`
- [x] `apps/README.md`
- [x] `archive/README.md`
- [x] `backend/README.md`
- [x] `beginner/README.md`
- [x] `blockchain/README.md`
- [x] `contracts/README.md`
- [x] `deployment/README.md`
- [x] `development/README.md`
- [x] `exchange/README.md`
- [x] `expert/README.md`
- [x] `general/README.md`
- [x] `guides/README.md`
- [x] `governance/README.md`
- [x] `implementation/README.md`
- [x] `infrastructure/README.md`
- [x] `intermediate/README.md`
- [x] `maintenance/README.md`
- [x] `mobile/README.md`
- [x] `nodes/README.md`
@@ -73,7 +68,7 @@ This checklist tracks the current remediation target:
- [x] `workflows/README.md`
### Documented exceptions
- [x] `cli-technical/` is a special external technical entry point with a compliant landing page
- [x] `cli/` is a special external technical entry point with a compliant landing page
- [x] `testing/` is a special external documentation entry point with a compliant landing page
---
@@ -84,10 +79,6 @@ This checklist tracks the current remediation target:
- [x] `docs/README.md` has `Level`, `Prerequisites`, `Estimated Time`, `Last Updated`, `Version`
- [x] `docs/README.md` has a navigation path and breadcrumb
- [x] `docs/README.md` links to `MASTER_INDEX.md` and the core learning paths
- [x] `docs/beginner/README.md` has standardized metadata and cross-links
- [x] `docs/intermediate/README.md` has standardized metadata and cross-links
- [x] `docs/advanced/README.md` has standardized metadata and cross-links
- [x] `docs/expert/README.md` has standardized metadata and cross-links
- [x] `docs/project/README.md` has standardized metadata and cross-links
- [x] `docs/apps/README.md` has standardized metadata and cross-links
- [x] `docs/about/README.md` links to the template standard and audit checklist

View File

@@ -64,10 +64,10 @@ Successfully sorted 6 documentation files into appropriate subfolders based on c
│ └── openclaw-dao-governance.md
├── security/ # Security documentation (9 files)
│ └── security_audit_summary.md
├── advanced/ # Advanced documentation
├── beginner/ # Beginner documentation
├── intermediate/ # Intermediate documentation
├── expert/ # Expert documentation
├── blockchain/ # Blockchain documentation
├── guides/ # Getting started guides
├── project/ # Project documentation
├── agents/ # Agent documentation
└── [other existing folders...]
```

View File

@@ -72,10 +72,11 @@
├── 🏠 README.md # 10/10 - Main entry point
├── 📚 MASTER_INDEX.md # 10/10 - Complete catalog
├── 📖 about/ # 10/10 - Meta documentation
├── 🎯 beginner/ # 10/10 - Beginner learning path
├── 🌉 intermediate/ # 10/10 - Intermediate bridge
├── 🚀 advanced/ # 10/10 - Advanced technical
├── 🎓 expert/ # 10/10 - Expert specialization
├── 📚 guides/ # 10/10 - Getting started guides
├── 📁 project/ # 10/10 - Project documentation
├── 🤖 agents/ # 10/10 - Agent documentation
├── <EFBFBD> blockchain/ # 10/10 - Blockchain documentation
├── 📁 archive/expert/ # 10/10 - Expert specialization (archived)
├── 🗂️ archive/ # 10/10 - Historical content
├── ✅ completed/ # 10/10 - Project tracking
└── [topic areas] # 10/10 - Subject-specific docs

View File

@@ -1,65 +0,0 @@
# Consensus Mechanism
Understand AITBC's proof-of-authority consensus mechanism.
## Overview
AITBC uses a Proof-of-Authority (PoA) consensus mechanism with:
- Fixed block time: 2 seconds
- Authority set of validated proposers
- Transaction finality on each block
## Block Production
### Proposer Selection
Proposers take turns producing blocks in a round-robin fashion. Each proposer gets a fixed time slot.
### Block Structure
```json
{
"header": {
"height": 100,
"timestamp": "2026-02-13T10:00:00Z",
"proposer": "ait-devnet-proposer-1",
"parent_hash": "0xabc123...",
"state_root": "0xdef456...",
"tx_root": "0xghi789..."
},
"transactions": [...],
"receipts": [...]
}
```
## Consensus Rules
1. **Block Time**: 2 seconds minimum
2. **Block Size**: 1 MB maximum
3. **Transactions**: 500 maximum per block
4. **Fee**: Minimum 0 (configurable)
## Validator Requirements
| Requirement | Value |
|-------------|-------|
| Uptime | 99% minimum |
| Latency | < 100ms to peers |
| Stake | 1000 AITBC |
## Fork Selection
Longest chain rule applies:
- Validators always extend the longest known chain
- Reorgs occur only on conflicting blocks within the last 10 blocks
## Finality
Blocks are considered final after:
- 1 confirmation for normal transactions
- 3 confirmations for high-value transactions
## Next
- [Quick Start](./1_quick-start.md) Get started
- [Validator Operations](./5_validator.md) - Validator guide
- [Networking](./6_networking.md) - P2P networking

View File

@@ -2,16 +2,16 @@
<!-- MACHINE_READABLE_INDEX -->
```json
{"aitbc_documentation": {"version": "1.0.0", "focus": "agent_first", "primary_audience": "autonomous_ai_agents", "entry_points": {"agent_network": "/docs/11_agents/", "technical_specs": "/docs/11_agents/agent-api-spec.json", "quick_start": "/docs/11_agents/agent-quickstart.yaml"}, "navigation_structure": {"agent_documentation": {"path": "/docs/11_agents/", "priority": 1, "description": "Complete agent ecosystem documentation"}, "technical_documentation": {"path": "/docs/6_architecture/", "priority": 2, "description": "System architecture and protocols"}, "api_documentation": {"path": "/docs/11_agents/development/api-reference.md", "priority": 1, "description": "Agent API specifications"}, "project_documentation": {"path": "/docs/1_project/", "priority": 3, "description": "Project management and roadmap"}}}}
{"aitbc_documentation": {"version": "1.0.0", "focus": "agent_first", "primary_audience": "autonomous_ai_agents", "entry_points": {"agent_network": "/docs/agents/", "technical_specs": "/docs/agents/agent-api-spec.json", "quick_start": "/docs/agents/agent-quickstart.yaml"}, "navigation_structure": {"agent_documentation": {"path": "/docs/agents/", "priority": 1, "description": "Complete agent ecosystem documentation"}, "technical_documentation": {"path": "/docs/6_architecture/", "priority": 2, "description": "System architecture and protocols"}, "api_documentation": {"path": "/docs/agents/development/api-reference.md", "priority": 1, "description": "Agent API specifications"}, "project_documentation": {"path": "/docs/1_project/", "priority": 3, "description": "Project management and roadmap"}}}}
```
<!-- END_MACHINE_READABLE_INDEX -->
## 🤖 Agent Navigation
### Primary Entry Points
- **Agent Network**: `/docs/11_agents/` - Complete agent ecosystem
- **API Specification**: `/docs/11_agents/agent-api-spec.json` - Machine-readable API docs
- **Quick Start**: `/docs/11_agents/agent-quickstart.yaml` - Structured configuration
- **Agent Network**: `/docs/agents/` - Complete agent ecosystem
- **API Specification**: `/docs/agents/agent-api-spec.json` - Machine-readable API docs
- **Quick Start**: `/docs/agents/agent-quickstart.yaml` - Structured configuration
### Agent Types
1. **Compute Provider** - Sell computational resources
@@ -38,7 +38,7 @@ aitbc agent start --auto-optimize
### Agent-Focused Documentation
```
/docs/11_agents/
/docs/agents/
├── README.md # Agent-optimized overview
├── getting-started.md # Complete onboarding
├── agent-manifest.json # Machine-readable manifest
@@ -73,9 +73,9 @@ aitbc agent start --auto-optimize
## 🔍 Search & Discovery
### For AI Agents
- **Manifest File**: `/docs/11_agents/agent-manifest.json` - Complete network overview
- **API Spec**: `/docs/11_agents/agent-api-spec.json` - All endpoints and protocols
- **Configuration**: `/docs/11_agents/agent-quickstart.yaml` - Structured setup
- **Manifest File**: `/docs/agents/agent-manifest.json` - Complete network overview
- **API Spec**: `/docs/agents/agent-api-spec.json` - All endpoints and protocols
- **Configuration**: `/docs/agents/agent-quickstart.yaml` - Structured setup
### Search Patterns
- Agent capabilities: `agent_types.*.capabilities`
@@ -147,8 +147,8 @@ await agent.start_contribution()
## 💬 Community & Support
### Agent Support Channels
- **Documentation**: `/docs/11_agents/`
- **API Reference**: `/docs/11_agents/agent-api-spec.json`
- **Documentation**: `/docs/agents/`
- **API Reference**: `/docs/agents/agent-api-spec.json`
- **Community**: `https://discord.gg/aitbc-agents`
- **Issues**: `https://github.com/aitbc/issues`

View File

@@ -16,7 +16,7 @@
## 🎯 **See Also:**
- **🤖 Agent SDK**: [Agent SDK Documentation](../agent-sdk/README.md) - SDK-level development guidance for agents
- **🧩 Agent Services**: [Apps / Agents Documentation](../apps/agents/README.md) - Runtime agent services and orchestration
- **🌉 Intermediate Agents**: [Intermediate Agents](../intermediate/02_agents/README.md) - Learning path for agent concepts
- **🤖 Agents**: [Agents](../agents/) - Learning path for agent concepts
- **📋 Project Overview**: [Project Documentation](../project/README.md) - Project-level architecture and context
---
@@ -40,7 +40,7 @@ This directory contains the canonical integration artifacts for AITBC agent inte
- [Agent SDK Documentation](../agent-sdk/README.md)
- [Apps / Agents Documentation](../apps/agents/README.md)
- [Intermediate Agents](../intermediate/02_agents/README.md)
- [Agents](../agents/)
- [Master Index](../MASTER_INDEX.md)
---

View File

@@ -1,22 +1,21 @@
# Documentation Merge Summary
## Merge Operation: `docs/agents``docs/11_agents`
## Merge Operation: `docs/11_agents``docs/agents`
### Date: 2026-02-24
### Date: 2026-05-03
### Status: ✅ COMPLETE
## What Was Merged
### From `docs/11_agents/` (New Agent-Optimized Content)
- ✅ `agent-manifest.json` - Complete network manifest for AI agents
- ✅ `agent-quickstart.yaml` - Structured quickstart configuration
### From `docs/11_agents/` (Integration Assets)
- ✅ `agent-api-spec.json` - API contract for agent registration, marketplace discovery, and swarm coordination
- ✅ `agent-manifest.json` - Source-of-truth manifest for supported agent types, prerequisites, and quick commands
- ✅ `README.md` - Integration assets overview → renamed to INTEGRATION_ASSETS_README.md
### From `docs/11_agents/` (Original Agent Content)
- `getting-started.md` - Original agent onboarding guide
- `compute-provider.md` - Provider specialization guide
- `development/contributing.md` - GitHub contribution workflow
- `swarm/overview.md` - Swarm intelligence overview
- `project-structure.md` - Architecture documentation
### Into `docs/agents/` (Existing Agent Documentation)
- Existing agent documentation structure maintained
- Integration assets added to provide canonical API spec and manifest
- All cross-references updated to point to agents/
## Updated References
@@ -109,9 +108,8 @@ docs/11_agents/
- Machine-readable formats intact
- JSON/YAML syntax validation passed
- Documentation structure validation passed
- Local deployment testing passed
- Ready for production deployment
---
**Result**: Successfully created a comprehensive, agent-optimized documentation structure at `docs/11_agents/` that serves as the single source of truth for the AITBC Agent Network.
**Result**: Successfully merged `docs/11_agents/` integration assets into `docs/agents/`, providing a unified location for all agent documentation with canonical API spec and manifest files.

View File

@@ -2,7 +2,7 @@
<!-- AGENT_MANIFEST_START -->
```json
{"network_info": {"name": "AITBC Agent Compute Network", "version": "1.0.0", "purpose": "Decentralized AI agent economy with swarm intelligence", "entry_points": {"compute_provider": "/docs/11_agents/compute-provider.md", "compute_consumer": "/docs/11_agents/compute-consumer.md", "platform_builder": "/docs/11_agents/development/contributing.md", "swarm_coordinator": "/docs/11_agents/swarm/overview.md"}, "quick_setup": {"install": "pip install aitbc-agent-sdk", "register": "aitbc agent register --name 'my-agent' --type compute_provider", "start": "aitbc agent start --auto-discover"}}}
{"network_info": {"name": "AITBC Agent Compute Network", "version": "1.0.0", "purpose": "Decentralized AI agent economy with swarm intelligence", "entry_points": {"compute_provider": "/docs/agents/compute-provider.md", "compute_consumer": "/docs/agents/compute-consumer.md", "platform_builder": "/docs/agents/development/contributing.md", "swarm_coordinator": "/docs/agents/swarm/overview.md"}, "quick_setup": {"install": "pip install aitbc-agent-sdk", "register": "aitbc agent register --name 'my-agent' --type compute_provider", "start": "aitbc agent start --auto-discover"}}}
```
<!-- AGENT_MANIFEST_END -->
@@ -181,7 +181,7 @@ if not await agent.verify_swarm_prerequisites():
## 📚 Documentation Structure
```
docs/11_agents/
docs/agents/
├── agent-manifest.json # Complete machine-readable manifest
├── agent-quickstart.yaml # Structured quickstart configuration
├── agent-api-spec.json # Complete API specification
@@ -211,7 +211,7 @@ docs/11_agents/
## 📞 Agent Support
- **Documentation**: `/docs/11_agents/`
- **Documentation**: `/docs/agents/`
- **API Reference**: `agent-api-spec.json`
- **Community**: `https://discord.gg/aitbc-agents`
- **Issues**: `https://github.com/aitbc/issues`

View File

@@ -9,29 +9,29 @@ This guide outlines the testing procedures for deploying AITBC agent documentati
#### ✅ File Structure Validation
```bash
# Verify all documentation files exist
find docs/11_agents/ -type f \( -name "*.md" -o -name "*.json" -o -name "*.yaml" \) | sort
find docs/agents/ -type f \( -name "*.md" -o -name "*.json" -o -name "*.yaml" \) | sort
# Check for broken internal links (sample check)
find docs/11_agents/ -name "*.md" -exec grep -l "\[.*\](.*\.md)" {} \; | head -5
find docs/agents/ -name "*.md" -exec grep -l "\[.*\](.*\.md)" {} \; | head -5
# Validate JSON syntax
python3 -m json.tool docs/11_agents/agent-manifest.json > /dev/null
python3 -m json.tool docs/11_agents/agent-api-spec.json > /dev/null
python3 -m json.tool docs/agents/agent-manifest.json > /dev/null
python3 -m json.tool docs/agents/agent-api-spec.json > /dev/null
# Validate YAML syntax
python3 -c "import yaml; yaml.safe_load(open('docs/11_agents/agent-quickstart.yaml'))"
python3 -c "import yaml; yaml.safe_load(open('docs/agents/agent-quickstart.yaml'))"
```
#### ✅ Content Validation
```bash
# Check markdown syntax
find docs/11_agents/ -name "*.md" -exec markdownlint {} \;
find docs/agents/ -name "*.md" -exec markdownlint {} \;
# Verify all CLI commands are documented
grep -r "aitbc " docs/11_agents/ | grep -E "(create|execute|deploy|swarm)" | wc -l
grep -r "aitbc " docs/agents/ | grep -E "(create|execute|deploy|swarm)" | wc -l
# Check machine-readable formats completeness
ls docs/11_agents/*.json docs/11_agents/*.yaml | wc -l
ls docs/agents/*.json docs/agents/*.yaml | wc -l
```
### Deployment Testing Script
@@ -45,7 +45,7 @@ set -e
echo "🚀 Starting AITBC Agent Documentation Deployment Test"
# Configuration
DOCS_DIR="docs/11_agents"
DOCS_DIR="docs/agents"
LIVE_SERVER="aitbc-cascade"
WEB_ROOT="/var/www/aitbc.bubuit.net/docs/agents"
@@ -107,7 +107,7 @@ import yaml
import os
def test_agent_manifest():
with open('docs/11_agents/agent-manifest.json') as f:
with open('docs/agents/agent-manifest.json') as f:
manifest = json.load(f)
required_keys = ['aitbc_agent_manifest', 'agent_types', 'network_protocols']
@@ -118,7 +118,7 @@ def test_agent_manifest():
print("✅ Agent manifest validation passed")
def test_api_spec():
with open('docs/11_agents/agent-api-spec.json') as f:
with open('docs/agents/agent-api-spec.json') as f:
api_spec = json.load(f)
if 'aitbc_agent_api' not in api_spec:
@@ -134,7 +134,7 @@ def test_api_spec():
print("✅ API spec validation passed")
def test_quickstart():
with open('docs/11_agents/agent-quickstart.yaml') as f:
with open('docs/agents/agent-quickstart.yaml') as f:
quickstart = yaml.safe_load(f)
required_sections = ['network', 'agent_types', 'onboarding_workflow']
@@ -181,7 +181,7 @@ server {
listen 8080;
server_name localhost;
location /docs/11_agents/ {
location /docs/agents/ {
alias /tmp/aitbc-agent-docs-test/;
index README.md;

View File

@@ -802,7 +802,7 @@ class OnboardingAssistant:
print("4. Engage in governance")
print(f"\n📊 Your agent dashboard: https://aitbc.bubuit.net/agents/{agent.identity.id}")
print(f"📚 Documentation: https://aitbc.bubuit.net/docs/11_agents/")
print(f"📚 Documentation: https://aitbc.bubuit.net/docs/agents/")
print(f"💬 Community: https://discord.gg/aitbc-agents")
# Save session

View File

@@ -1,20 +0,0 @@
# Analytics Documentation
**Generated**: 2026-03-08 13:06:38
**Total Files**: 1
**Documented Files**: 0
**Other Files**: 1
## Documented Files (Converted from Analysis)
## Other Documentation Files
- [Analytics Documentation](README.md)
## Category Overview
This section contains all documentation related to analytics documentation. The documented files have been automatically converted from completed planning analysis files.
---
*Auto-generated index*

View File

@@ -35,10 +35,14 @@ Complete documentation for all AITBC applications and services.
- [Plugins](plugins/) - Plugin system (analytics, marketplace, registry, security)
- [Crypto](crypto/) - Cryptographic services (zk-circuits)
- [Compliance](compliance/) - Compliance services
- [Mining](mining/) - Mining services
- [Mining](miner/) - Mining services
- [Global AI](global-ai/) - Global AI agents
- [Explorer](explorer/) - Blockchain explorer services
## Migration Status
- [Microservices Migration](../infrastructure/migration/microservices-migration-status.md) - Track migration from monolithic coordinator to microservices architecture
## Quick Links
- [Blockchain Node](blockchain/blockchain-node.md) - Production-ready blockchain node
@@ -108,7 +112,7 @@ Each app documentation includes:
---
*Last updated: 2026-04-27*<br>
*Version: 1.1*<br>
*Last updated: 2026-05-03*<br>
*Version: 1.2*<br>
*Status: Apps documentation hub*<br>
*Tags: apps, services, documentation, overview*

View File

@@ -11,7 +11,7 @@ This service provides communication protocols for agent interactions.
## Related Documentation
- [Agent SDK](../../agent-sdk/README.md)
- [Agent Integration Assets](../../11_agents/README.md)
- [Agent Integration Assets](../../agents/INTEGRATION_ASSETS_README.md)
---

View File

@@ -172,7 +172,8 @@ blockchain-node/
│ ├── database.py # DB init + session mgmt
│ ├── mempool.py # Transaction mempool
│ ├── gossip/ # P2P message bus
│ ├── consensus/ # PoA proposer logic
│ ├── consensus/ # Hybrid PoA/PoS consensus (multi-validator, PBFT, rotation)
│ ├── network/ # P2P networking and multi-chain manager
│ ├── rpc/ # RPC endpoints
│ └── models.py # SQLModel definitions
├── data/

View File

@@ -59,7 +59,7 @@ API_KEY=your-api-key
### Running the Service
```bash
.venv/bin/uvicorn app.main:app --host 0.0.0.0 --port 8000
.venv/bin/uvicorn app.main:app --host 0.0.0.0 --port 9001
```
## Developer Guide

View File

@@ -0,0 +1,133 @@
# API Gateway
**Level**: Intermediate<br>
**Prerequisites**: Familiarity with AITBC microservices architecture<br>
**Estimated Time**: 10 minutes<br>
**Last Updated**: 2026-05-03<br>
**Version**: 1.0
## 🧭 **Navigation Path:**
**🏠 [Documentation Home](../../README.md)** → **📦 Apps** → **🏗️ Infrastructure** → *You are here*
**breadcrumb**: Home → Apps → Infrastructure → API Gateway
---
## 🎯 **See Also:**
- **📖 [About Documentation](../../about/README.md)** - Template standard and audit checklist
- **🧭 [Master Index](../../MASTER_INDEX.md)** - Full documentation catalog
- **📁 [Infrastructure Overview](./README.md)** - Infrastructure services overview
---
## Overview
The AITBC API Gateway is a central routing service that directs requests to appropriate microservices. It provides a unified entry point for all AITBC services, simplifying client integration and enabling service discovery.
## Service Registry
The gateway routes requests to the following services:
| Service | Port | Routes | Description |
|---------|------|--------|-------------|
| GPU Service | 8101 | `/gpu/*` | GPU resource management |
| Marketplace Service | 8102 | `/marketplace/*` | GPU marketplace |
| Agent Service | 8103 | `/agent/*` | Agent operations |
| Trading Service | 8104 | `/trading/*` | Trading operations |
| Governance Service | 8105 | `/governance/*` | Governance operations |
| Coordinator API | 8000 | `/coordinator/*` | Coordinator API (default) |
## Installation
```bash
cd /opt/aitbc
poetry install --with api-gateway
```
## Running
### Development
```bash
python -m api_gateway.main
```
### Production (systemd)
```bash
sudo systemctl start api-gateway
sudo systemctl enable api-gateway
```
## Endpoints
- `GET /health` - Health check
- `GET /services` - List registered services
- `/*` - Proxy all other requests to appropriate microservice
## Configuration
Service URLs are configured in `main.py` under the `SERVICES` dictionary.
## Testing
### Health Check
```bash
curl http://localhost:8080/health
```
Expected response:
```json
{"status": "healthy", "service": "api-gateway"}
```
### Service Registry
```bash
curl http://localhost:8080/services
```
### Test Routing
```bash
# Route to GPU service
curl http://localhost:8080/gpu/health
# Route to Marketplace service
curl http://localhost:8080/marketplace/health
# Route to Trading service
curl http://localhost:8080/trading/health
# Route to Governance service
curl http://localhost:8080/governance/health
```
## Architecture
The API Gateway implements:
- **Request Routing**: Directs requests to appropriate microservices based on URL patterns
- **Service Discovery**: Maintains a registry of available services
- **Health Monitoring**: Checks service health before routing
- **Load Balancing**: Distributes requests across service instances (future enhancement)
## Security
- TLS termination at gateway (future)
- Rate limiting (future)
- Authentication/Authorization (future)
## Troubleshooting
### Service Not Responding
1. Check if target microservice is running
2. Verify service URL configuration
3. Check gateway logs for routing errors
### Health Check Failing
1. Verify gateway is running on port 8080
2. Check systemd service status: `systemctl status api-gateway`
3. Review logs: `journalctl -u api-gateway -f`
---
*Last updated: 2026-05-03*<br>
*Version: 1.0*<br>
*Status: Active service*<br>
*Tags: api-gateway, infrastructure, routing, microservices*

View File

@@ -1,17 +0,0 @@
# Messaging Service
**Messaging Service Documentation**
This service provides messaging and communication capabilities for agents.
## Features
- Gossip protocol messaging
- Agent-to-agent communication
- Message routing
## Related Documentation
- [Messaging Basics Scenario](../../scenarios/04_messaging_basics.md)
---
*Last Updated: 2026-05-02*

View File

@@ -1,13 +0,0 @@
# Mining Applications
Mining and validation services.
## Applications
- [Miner](miner.md) - Mining and block validation services
## Features
- Block validation
- Proof of Authority mining
- Reward claiming

View File

@@ -1,211 +0,0 @@
# Miner
## Status
✅ Operational
## Overview
Mining and block validation service for the AITBC blockchain using Proof-of-Authority consensus.
## Architecture
### Core Components
- **Block Validator**: Validates blocks from the network
- **Block Proposer**: Proposes new blocks (for authorized proposers)
- **Transaction Validator**: Validates transactions before inclusion
- **Reward Claimer**: Claims mining rewards
- **Sync Manager**: Manages blockchain synchronization
## Quick Start (End Users)
### Prerequisites
- Python 3.13+
- Access to blockchain RPC endpoint
- Valid proposer credentials (if proposing blocks)
### Installation
```bash
cd /opt/aitbc/apps/miner
.venv/bin/pip install -r requirements.txt
```
### Configuration
Set environment variables in `.env`:
```bash
BLOCKCHAIN_RPC_URL=http://localhost:8006
PROPOSER_ID=your-proposer-id
PROPOSER_PRIVATE_KEY=encrypted-key
MINING_ENABLED=true
VALIDATION_ENABLED=true
```
### Running the Service
```bash
.venv/bin/python main.py
```
## Developer Guide
### Development Setup
1. Clone the repository
2. Create virtual environment: `python -m venv .venv`
3. Install dependencies: `pip install -r requirements.txt`
4. Configure blockchain RPC endpoint
5. Configure proposer credentials (if proposing)
6. Run tests: `pytest tests/`
### Project Structure
```
miner/
├── src/
│ ├── block_validator/ # Block validation
│ ├── block_proposer/ # Block proposal
│ ├── transaction_validator/ # Transaction validation
│ ├── reward_claimer/ # Reward claiming
│ └── sync_manager/ # Sync management
├── tests/ # Test suite
└── pyproject.toml # Project configuration
```
### Testing
```bash
# Run all tests
pytest tests/
# Run block validator tests
pytest tests/test_validator.py
# Run block proposer tests
pytest tests/test_proposer.py
```
## API Reference
### Block Validation
#### Validate Block
```http
POST /api/v1/mining/validate/block
Content-Type: application/json
{
"block": {},
"chain_id": "ait-mainnet"
}
```
#### Get Validation Status
```http
GET /api/v1/mining/validation/status
```
### Block Proposal
#### Propose Block
```http
POST /api/v1/mining/propose/block
Content-Type: application/json
{
"chain_id": "ait-mainnet",
"transactions": [{}],
"timestamp": "2024-01-01T00:00:00Z"
}
```
#### Get Proposal Status
```http
GET /api/v1/mining/proposal/status
```
### Transaction Validation
#### Validate Transaction
```http
POST /api/v1/mining/validate/transaction
Content-Type: application/json
{
"transaction": {},
"chain_id": "ait-mainnet"
}
```
#### Get Validation Queue
```http
GET /api/v1/mining/validation/queue?limit=100
```
### Reward Claiming
#### Claim Reward
```http
POST /api/v1/mining/rewards/claim
Content-Type: application/json
{
"block_height": 1000,
"proposer_id": "string"
}
```
#### Get Reward History
```http
GET /api/v1/mining/rewards/history?proposer_id=string
```
### Sync Management
#### Get Sync Status
```http
GET /api/v1/mining/sync/status
```
#### Trigger Sync
```http
POST /api/v1/mining/sync/trigger
Content-Type: application/json
{
"from_height": 1000,
"to_height": 2000
}
```
## Configuration
### Environment Variables
- `BLOCKCHAIN_RPC_URL`: Blockchain RPC endpoint
- `PROPOSER_ID`: Proposer identifier
- `PROPOSER_PRIVATE_KEY`: Encrypted proposer private key
- `MINING_ENABLED`: Enable block proposal
- `VALIDATION_ENABLED`: Enable block validation
- `SYNC_INTERVAL`: Sync interval in seconds
### Consensus Parameters
- **Block Time**: Time between blocks (default: 10s)
- **Max Transactions**: Maximum transactions per block
- **Block Size**: Maximum block size in bytes
### Validation Rules
- **Signature Validation**: Validate block signatures
- **Transaction Validation**: Validate transaction format
- **State Validation**: Validate state transitions
## Troubleshooting
**Block validation failed**: Check block signature and state transitions.
**Proposal rejected**: Verify proposer authorization and block validity.
**Sync not progressing**: Check blockchain RPC connectivity and network status.
**Reward claim failed**: Verify proposer ID and block height.
## Security Notes
- Secure proposer private key storage
- Validate all blocks before acceptance
- Monitor for double-spending attacks
- Implement rate limiting for proposal
- Regularly audit mining operations
- Use secure key management

View File

@@ -0,0 +1,190 @@
# OpenClaw Service
**Level**: Advanced<br>
**Prerequisites**: Familiarity with OpenClaw agent framework<br>
**Estimated Time**: 15 minutes<br>
**Last Updated**: 2026-05-03<br>
**Version**: 1.0
## 🧭 **Navigation Path:**
**🏠 [Documentation Home](../../README.md)** → **📦 Apps** → **🧩 OpenClaw** → *You are here*
**breadcrumb**: Home → Apps → OpenClaw → OpenClaw Service
---
## 🎯 **See Also:**
- **📖 [About Documentation](../../about/README.md)** - Template standard and audit checklist
- **🧭 [Master Index](../../MASTER_INDEX.md)** - Full documentation catalog
- **🧩 [OpenClaw Documentation](../openclaw/README.md)** - OpenClaw framework overview
---
## Overview
The OpenClaw Service provides the backend infrastructure for autonomous AI agents in the AITBC ecosystem. It enables agents to communicate, coordinate, and execute tasks across the blockchain network.
## Features
- **Agent Communication**: Secure messaging between agents
- **Task Coordination**: Distributed task execution and management
- **Blockchain Integration**: Direct interaction with AITBC blockchain
- **Resource Management**: GPU and compute resource allocation
- **Marketplace Access**: Integration with GPU marketplace
- **Wallet Management**: Multi-chain wallet operations for agents
## Architecture
The OpenClaw Service consists of:
- **Agent Registry**: Tracks registered agents and their capabilities
- **Communication Layer**: Handles inter-agent messaging
- **Task Scheduler**: Coordinates distributed task execution
- **Resource Manager**: Manages GPU and compute resources
- **Blockchain Bridge**: Interfaces with AITBC blockchain
- **Wallet Service**: Manages agent wallets across chains
## Installation
```bash
cd /opt/aitbc
poetry install --with openclaw-service
```
## Configuration
Configuration is managed through environment variables:
```bash
# Agent Registry
OPENCLAW_REGISTRY_URL=http://localhost:9001
# Blockchain RPC
BLOCKCHAIN_RPC_URL=http://localhost:8006
# Marketplace
MARKETPLACE_URL=http://localhost:8001
# Wallet
WALLET_KEYSTORE_PATH=/var/lib/aitbc/keystores
```
## Running
### Development
```bash
cd apps/openclaw-service
python -m openclaw_service.main
```
### Production (systemd)
```bash
sudo systemctl start openclaw-service
sudo systemctl enable openclaw-service
```
## Endpoints
- `GET /health` - Health check
- `GET /agents` - List registered agents
- `POST /agents/register` - Register new agent
- `POST /agents/{agent_id}/tasks` - Submit task to agent
- `GET /agents/{agent_id}/tasks` - List agent tasks
- `POST /communication/send` - Send message between agents
- `GET /communication/{agent_id}/messages` - Get agent messages
## Agent Integration
### Registering an Agent
```python
import requests
response = requests.post('http://localhost:9001/agents/register', json={
'name': 'my-agent',
'type': 'compute-provider',
'capabilities': ['gpu-compute', 'ml-inference'],
'wallet_address': '0x...'
})
agent_id = response.json()['agent_id']
```
### Submitting Tasks
```python
response = requests.post(f'http://localhost:9001/agents/{agent_id}/tasks', json={
'type': 'gpu-compute',
'parameters': {
'model': 'llama-2-7b',
'input_size': 1024
}
})
```
### Agent Communication
```python
response = requests.post('http://localhost:9001/communication/send', json={
'from_agent': agent_id,
'to_agent': target_agent_id,
'message': {
'type': 'resource-request',
'content': {'gpu_count': 2}
}
})
```
## Monitoring
### Health Check
```bash
curl http://localhost:9001/health
```
### Agent Status
```bash
curl http://localhost:9001/agents
```
### Task Status
```bash
curl http://localhost:9001/agents/{agent_id}/tasks
```
## Troubleshooting
### Agent Registration Fails
1. Verify agent registry service is running
2. Check agent wallet has sufficient funds
3. Verify agent capabilities are valid
### Task Execution Errors
1. Check agent has required resources
2. Verify task parameters are valid
3. Review agent logs for specific errors
### Communication Failures
1. Verify both agents are registered
2. Check network connectivity
3. Review firewall rules
## Security
- JWT-based authentication for agent operations
- Encrypted inter-agent communication
- Wallet signature verification
- Rate limiting on API endpoints
## Related Documentation
- [OpenClaw Agent SDK](../../agent-sdk/AGENT_SDK_OVERVIEW.md)
- [Agent Scenarios](../../scenarios/README.md)
- [Agent Coordinator](../agent-coordinator/agent-coordinator.md)
---
*Last updated: 2026-05-03*<br>
*Version: 1.0*<br>
*Status: Active service*<br>
*Tags: openclaw, agents, autonomous, ai*

View File

@@ -0,0 +1,218 @@
# Plugin Service
**Level**: Intermediate<br>
**Prerequisites**: Familiarity with AITBC plugin architecture<br>
**Estimated Time**: 10 minutes<br>
**Last Updated**: 2026-05-03<br>
**Version**: 1.0
## 🧭 **Navigation Path:**
**🏠 [Documentation Home](../../README.md)** → **📦 Apps** → **🔌 Plugins** → *You are here*
**breadcrumb**: Home → Apps → Plugins → Plugin Service
---
## 🎯 **See Also:**
- **📖 [About Documentation](../../about/README.md)** - Template standard and audit checklist
- **🧭 [Master Index](../../MASTER_INDEX.md)** - Full documentation catalog
- **🔌 [Plugins Overview](./README.md)** - Plugin system overview
---
## Overview
The Plugin Service provides the infrastructure for managing and executing plugins in the AITBC ecosystem. It handles plugin registration, lifecycle management, and provides a secure execution environment for third-party extensions.
## Features
- **Plugin Registry**: Central registry for all plugins
- **Lifecycle Management**: Install, enable, disable, and remove plugins
- **Sandboxed Execution**: Secure plugin execution environment
- **Dependency Management**: Automatic dependency resolution
- **Version Control**: Support for multiple plugin versions
- **API Gateway**: Plugin API endpoints for external integration
## Architecture
The Plugin Service consists of:
- **Registry**: Stores plugin metadata and configurations
- **Loader**: Dynamically loads plugin code
- **Executor**: Runs plugin code in sandboxed environment
- **API Server**: Exposes plugin endpoints
- **Dependency Manager**: Handles plugin dependencies
- **Version Manager**: Manages plugin versions
## Installation
```bash
cd /opt/aitbc
poetry install --with plugin-service
```
## Configuration
Configuration is managed through environment variables:
```bash
# Plugin Storage
PLUGIN_STORAGE_PATH=/var/lib/aitbc/plugins
# Registry
PLUGIN_REGISTRY_URL=http://localhost:9002
# Security
PLUGIN_SANDBOX_ENABLED=true
PLUGIN_SIGNATURE_VERIFICATION=true
# API
PLUGIN_API_PORT=9003
```
## Running
### Development
```bash
cd apps/plugin-service
python -m plugin_service.main
```
### Production (systemd)
```bash
sudo systemctl start plugin-service
sudo systemctl enable plugin-service
```
## Endpoints
- `GET /health` - Health check
- `GET /plugins` - List all plugins
- `POST /plugins/install` - Install plugin from repository
- `POST /plugins/{plugin_id}/enable` - Enable plugin
- `POST /plugins/{plugin_id}/disable` - Disable plugin
- `DELETE /plugins/{plugin_id}` - Remove plugin
- `GET /plugins/{plugin_id}/info` - Get plugin information
- `GET /plugins/{plugin_id}/versions` - List plugin versions
## Plugin Development
### Plugin Structure
```
my-plugin/
├── plugin.yaml # Plugin metadata
├── src/
│ ├── __init__.py
│ └── main.py # Plugin entry point
├── requirements.txt # Plugin dependencies
└── tests/ # Plugin tests
```
### plugin.yaml Example
```yaml
name: my-plugin
version: 1.0.0
description: My custom plugin
author: Your Name
license: MIT
entry_point: src.main:main
dependencies:
- aitbc-core>=1.0.0
permissions:
- blockchain:read
- marketplace:read
```
### Installing a Plugin
```bash
# From local directory
curl -X POST http://localhost:9003/plugins/install \
-F "plugin=@/path/to/plugin.tar.gz"
# From repository
curl -X POST http://localhost:9003/plugins/install \
-H "Content-Type: application/json" \
-d '{"repository": "https://repo.example.com/my-plugin", "version": "1.0.0"}'
```
### Managing Plugins
```bash
# Enable plugin
curl -X POST http://localhost:9003/plugins/my-plugin/enable
# Disable plugin
curl -X POST http://localhost:9003/plugins/my-plugin/disable
# Remove plugin
curl -X DELETE http://localhost:9003/plugins/my-plugin
# Get plugin info
curl http://localhost:9003/plugins/my-plugin/info
```
## Security
- **Sandboxed Execution**: Plugins run in isolated environment
- **Signature Verification**: Plugin signatures verified before installation
- **Permission System**: Granular permission controls
- **Dependency Isolation**: Plugin dependencies isolated from core system
- **Resource Limits**: CPU and memory limits for plugin execution
## Built-in Plugins
- **Plugin Analytics**: Analytics and metrics collection
- **Plugin Marketplace**: Plugin marketplace integration
- **Plugin Registry**: Plugin registry management
- **Plugin Security**: Security scanning and validation
## Troubleshooting
### Plugin Installation Fails
1. Verify plugin signature is valid
2. Check plugin dependencies are available
3. Review plugin logs for specific errors
### Plugin Won't Enable
1. Check plugin permissions are granted
2. Verify plugin dependencies are satisfied
3. Review plugin configuration
### Plugin Execution Errors
1. Check resource limits are not exceeded
2. Verify plugin code is compatible with current version
3. Review sandbox logs for errors
## Monitoring
### Health Check
```bash
curl http://localhost:9003/health
```
### Plugin Status
```bash
curl http://localhost:9003/plugins
```
### Plugin Logs
```bash
journalctl -u plugin-service -f
```
## Related Documentation
- [Plugin Analytics](./plugin-analytics.md)
- [Plugin Marketplace](./plugin-marketplace.md)
- [Plugin Registry](./plugin-registry.md)
- [Plugin Security](./plugin-security.md)
---
*Last updated: 2026-05-03*<br>
*Version: 1.0*<br>
*Status: Active service*<br>
*Tags: plugins, extensions, service, management*

View File

@@ -40,7 +40,7 @@ The archive is organized by content categories for easy access:
### **🧠 Expert** (`/expert/`)
- **Content**: Expert-level issues and completed phases
- **Files**: 4 subdirectories
- **Files**: 4 subdirectories (issues, tasks, completed, phase reports)
- **Topics**: Completed phases, 2026-02 issues, port migrations, other resolved issues
- **Relevance**: Expert-level task completion history
@@ -144,19 +144,20 @@ Average Files per Category: 5.9 files
## 🔗 **Related Documentation:**
### **Current Documentation:**
- **Beginner Topics**: `/docs/beginner/` - Current learning materials
- **Intermediate Topics**: `/docs/intermediate/` - Current intermediate content
- **Advanced Topics**: `/docs/advanced/` - Current advanced materials
- **Expert Topics**: `/docs/expert/` - Current expert content
- **Getting Started**: `/docs/guides/getting-started/` - Current learning materials
- **Project**: `/docs/project/` - Current project content
- **Agents**: `/docs/agents/` - Current agent content
- **Blockchain**: `/docs/blockchain/` - Current blockchain materials
- **Archive**: `/docs/archive/expert/` - Historical expert content
### **Project Documentation:**
- **Completed Work**: `/docs/completed/` - Recently completed tasks
- **Project Status**: `/docs/project/` - Current project information
- **Security**: `/docs/security/` - Current security documentation
- **Policies**: `/docs/policies/` - Current project policies
- **Policies**: `/docs/security/policies/` - Current project policies
### **Technical Documentation:**
- **CLI Technical**: `/docs/cli-technical` - Current CLI technical docs
- **CLI Technical**: `/docs/cli` - Current CLI technical docs
- **API Documentation**: Available via external symlinks
- **Architecture**: Current system architecture docs
- **Development**: Current development guides

View File

@@ -14,15 +14,16 @@
---
## 🎯 **See Also:**
- **🌉 Previous Level**: [Intermediate Documentation](../intermediate/README.md) - Bridge concepts
- **🎓 Next Level**: [Expert Documentation](../expert/README.md) - Specialized expertise
- **🌉 Previous Level**: [Getting Started](../guides/getting-started/) - Foundation knowledge
- **🎓 Next Level**: [Archive](../archive/README.md) - Historical content
- **📖 Documentation Standards**: [About Documentation](../about/README.md) - Template guidance and audit checklist
- **📋 Project Info**: [Project Documentation](../project/) - Project overview
- **🔒 Security Focus**: [Security Documentation](../security/) - Security best practices
- **🧠 Archive**: [/archive/](/archive/) - Historical content
**Related Topics:**
- **⛓️ Blockchain**: [Advanced Blockchain](01_blockchain/) → [Expert Issues](../expert/01_issues/)
- **🏗️ Architecture**: [System Architecture](03_architecture/) → [Expert Workflows](../expert/06_workflow/)
- **⛓️ Blockchain**: [Advanced Blockchain](01_blockchain/) → [Cross-Chain](../blockchain/cross-chain/)
- **🏗️ Architecture**: [System Architecture](03_architecture/) → [Workflows](../workflows/)
- **🔒 Security**: [Advanced Security](06_security/) → [Security Documentation](../security/)
- **🚀 Deployment**: [Deployment Strategies](04_deployment/) → [Infrastructure Docs](../infrastructure/)
@@ -109,9 +110,10 @@ Start with **03_architecture** → **05_development** → **02_reference**
## 🔗 **Related Content:**
- **Beginner Topics**: `/docs/beginner/` - Foundation knowledge
- **Intermediate Topics**: `/docs/intermediate/` - Bridge concepts
- **Expert Topics**: `/docs/expert/` - Specialized deep-dives
- **Getting Started Topics**: `/docs/guides/getting-started/` - Foundation knowledge
- **Project Topics**: `/docs/project/` - Project documentation
- **Agent Topics**: `/docs/agents/` - Agent development
- **Archive Topics**: `/docs/archive/` - Historical content
- **Security**: `/docs/security/` - Security-focused documentation
---

View File

@@ -1,250 +0,0 @@
# AITBC CLI Getting Started Guide
**Complete Command Line Interface Setup and Usage**
## 🚀 **Quick Start**
### Prerequisites
- Linux system (Debian 13+ recommended)
- Python 3.13+ installed
- System access (sudo for initial setup)
### Installation
```bash
# 1. Load development environment
source /opt/aitbc/.env.dev
# 2. Test CLI installation
aitbc --help
aitbc version
# 3. Verify services are running
aitbc-services status
```
## 🔧 **Development Environment Setup**
### Permission Configuration
```bash
# Fix permissions (one-time setup)
sudo /opt/aitbc/scripts/clean-sudoers-fix.sh
# Test permissions
/opt/aitbc/scripts/test-permissions.sh
```
### Environment Variables
```bash
# Load development environment
source /opt/aitbc/.env.dev
# Available aliases
aitbc-services # Service management
aitbc-fix # Quick permission fix
aitbc-logs # View logs
```
## 📋 **Basic Operations**
### Wallet Management
```bash
# Create new wallet
aitbc wallet create --name "my-wallet"
# List wallets
aitbc wallet list
# Check balance
aitbc wallet balance --wallet "my-wallet"
# Get address
aitbc wallet address --wallet "my-wallet"
```
### Exchange Operations
```bash
# Register with exchange
aitbc exchange register --name "Binance" --api-key <your-api-key>
# Create trading pair
aitbc exchange create-pair AITBC/BTC
# Start trading
aitbc exchange start-trading --pair AITBC/BTC
# Check exchange status
aitbc exchange status
```
### Blockchain Operations
```bash
# Get blockchain info
aitbc blockchain info
# Check node status
aitbc blockchain status
# List recent blocks
aitbc blockchain blocks --limit 10
# Check balance
aitbc blockchain balance --address <address>
```
## 🛠️ **Advanced Usage**
### Output Formats
```bash
# JSON output
aitbc --output json wallet balance
# YAML output
aitbc --output yaml blockchain info
# Table output (default)
aitbc wallet list
```
### Debug Mode
```bash
# Enable debug output
aitbc --debug wallet list
# Test mode (uses mock data)
aitbc --test-mode exchange status
# Custom timeout
aitbc --timeout 60 blockchain info
```
### Configuration
```bash
# Show current configuration
aitbc config show
# Get specific config value
aitbc config get coordinator_url
# Set config value
aitbc config set timeout 30
# Edit configuration
aitbc config edit
```
## 🔍 **Troubleshooting**
### Common Issues
#### Permission Denied
```bash
# Fix permissions
/opt/aitbc/scripts/fix-permissions.sh
# Test permissions
/opt/aitbc/scripts/test-permissions.sh
```
#### Service Not Running
```bash
# Check service status
aitbc-services status
# Restart services
aitbc-services restart
# View logs
aitbc-logs
```
#### Command Not Found
```bash
# Check CLI installation
which aitbc
# Load environment
source /opt/aitbc/.env.dev
# Check PATH
echo $PATH | grep aitbc
```
#### API Connection Issues
```bash
# Test with debug mode
aitbc --debug blockchain status
# Test with custom URL
aitbc --url http://localhost:8000 blockchain info
# Check service endpoints
curl http://localhost:8000/health
```
### Debug Mode
```bash
# Enable debug for any command
aitbc --debug <command>
# Check configuration
aitbc config show
# Test service connectivity
aitbc --test-mode blockchain status
```
## 📚 **Next Steps**
### Explore Features
1. **Wallet Operations**: Try creating and managing wallets
2. **Exchange Integration**: Register with exchanges and start trading
3. **Blockchain Operations**: Explore blockchain features
4. **Compliance**: Set up KYC/AML verification
### Advanced Topics
1. **Market Making**: Configure automated trading
2. **Oracle Integration**: Set up price feeds
3. **Security**: Implement multi-sig and time-lock
4. **Development**: Build custom tools and integrations
### Documentation
- [Complete CLI Reference](../23_cli/README.md)
- [Testing Procedures](../23_cli/testing.md)
- [Permission Setup](../23_cli/permission-setup.md)
- [Exchange Integration](../19_marketplace/exchange_integration.md)
## 🎯 **Tips and Best Practices**
### Development Workflow
```bash
# 1. Load environment
source /opt/aitbc/.env.dev
# 2. Check services
aitbc-services status
# 3. Test CLI
aitbc version
# 4. Start development
aitbc wallet create
```
### Security Best Practices
- Use strong passwords for wallet encryption
- Enable multi-sig for large amounts
- Keep API keys secure
- Regular backup of wallets
- Monitor compliance requirements
### Performance Tips
- Use appropriate output formats for automation
- Leverage test mode for development
- Cache frequently used data
- Monitor service health
---
**Last Updated**: March 8, 2026
**CLI Version**: 0.1.0
**Test Coverage**: 67/67 tests passing (100%)

Some files were not shown because too many files have changed in this diff Show More