@alsania-io/cli
v1.0.0
Published
Alsania CLI - Unified command-line interface for the entire Alsania ecosystem
Readme
@alsania-io/cli
Unified command-line interface for the entire Alsania ecosystem
Overview
The Alsania CLI (alsania or als) is a unified command-line tool for managing the Echo System (AI Layer) and future Alsania services. It provides a consistent interface for starting, stopping, and managing:
- AlsaniaMCP (
mcp) - Universal MCP proxy server (Port 8050) - Tool Registry (
registry) - Dynamic tool registry (Port 8070) - Alsania Gateway (
gateway) - FastAPI gateway (Port 8052) - Snapshot Manager (
snapshot) - Backup management (Port 8060)
Installation
From the monorepo
cd services/alsania-cli
npm install
npm run build
npm linkFrom npm (when published)
npm install -g @alsania-io/cliUsage
Echo System (AI Layer) Management
# List all available Echo-Sys services
alsania esys list
alsania echosys ls
# Start a specific service
alsania esys start mcp
alsania esys start registry
alsania esys start gateway
alsania esys start snapshot
# Start service in background
alsania esys start mcp --detached
alsania esys start mcp -d
# Start service on custom port
alsania esys start mcp --port 9000
# Stop a service
alsania esys stop mcp
# Check service status
alsania esys status
alsania esys status mcp
# Restart a service
alsania esys restart mcp
# Start all Echo-Sys services at once
alsania start-allMCP Commands
The CLI can delegate to AlsaniaMCP commands:
# Run any AlsaniaMCP command
alsania mcp server start
alsania mcp server stop
alsania mcp server status
alsania mcp voice check
alsania mcp comm peers
alsania mcp tools list
alsania mcp config initService Ports
| Service | Port | Description | |---------|------|-------------| | AlsaniaMCP | 8050 | Universal MCP proxy server | | Tool Registry | 8070 | Dynamic tool registry | | Alsania Gateway | 8052 | FastAPI gateway | | Snapshot Manager | 8060 | Backup management |
Commands Reference
alsania esys list
Lists all available Echo-Sys services with their descriptions and ports.
alsania esys start <service>
Starts the specified Echo-Sys service.
Options:
-d, --detached- Run service in background-p, --port <port>- Override default port
Services:
mcp- AlsaniaMCPregistry- Tool Registrygateway- Alsania Gatewaysnapshot- Snapshot Manager
alsania esys stop <service>
Stops the specified Echo-Sys service.
Options:
-f, --force- Force kill the service
alsania esys status [service]
Check the status of all Echo-Sys services or a specific service.
alsania esys restart <service>
Restart a specific Echo-Sys service (stops then starts).
alsania start-all
Start all Echo-Sys services in the background.
alsania mcp <command> [args...]
Delegate to AlsaniaMCP CLI commands. See @alsania-io/mcp for available commands.
Development
# Install dependencies
npm install
# Build the CLI
npm run build
# Run in development mode
npm run dev
# Run linting
npm run lint
npm run lint:fix
# Format code
npm run format
npm run format:check
# Type checking
npm run type-checkArchitecture
The Alsania CLI is designed to:
- Centralize service management - Single entry point for all Alsania services
- Maintain separation - Each service remains independent and can be run standalone
- Provide consistency - Unified command structure across all services
- Enable delegation - Can delegate to service-specific CLIs when needed
Best Practices
Naming Convention
All Alsania packages follow the @alsania-io/* naming convention:
@alsania-io/cli- This CLI tool@alsania-io/mcp- AlsaniaMCP server@alsania-io/tool-registry- Tool Registry server@alsania-io/gateway- Alsania Gateway
Service Management
- Use
alsania esys start <service>for development (foreground) - Use
alsania esys start <service> -dfor production (background) - Use
alsania start-allto quickly start the entire Echo-Sys - Check
alsania esys statusregularly to monitor services
Integration with AlsaniaMCP
The CLI delegates MCP-specific commands to the AlsaniaMCP package, maintaining a clean separation of concerns while providing a unified interface.
License
MIT © Alsania
Contributing
This is part of the Alsania monorepo. See the main repository for contribution guidelines.
