New Research: Supply Chain Attack on Axios Pulls Malicious Dependency from npm.Details →
Socket
Book a DemoSign in
Socket

@moxxy/cli

Package Overview
Dependencies
Maintainers
1
Versions
14
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@moxxy/cli

CLI for the Moxxy agentic framework — manage agents, skills, plugins, channels, and vaults from the terminal

latest
Source
npmnpm
Version
0.1.1
Version published
Maintainers
1
Created
Source

Moxxy

@moxxy/cli

CLI and full-screen TUI for the Moxxy agentic framework.

npm version Node.js 22+ GitHub License

@moxxy/cli is the command-line interface for Moxxy — a local-first framework for building, running, and orchestrating AI agents. It provides interactive wizards for every operation and a split-pane TUI for real-time agent interaction.

Requirements

  • Node.js 22+
  • A running Moxxy gateway (the Rust backend — see full setup)

Install

npm install --global @moxxy/cli

Or run from source:

cd apps/moxxy-cli
npm install
node --import tsx src/cli.js

Quick Start

# First-time setup (creates token, configures provider)
moxxy init

# Open the full-screen chat interface
moxxy tui

Every command launches an interactive wizard when run without flags — just type the command and follow the prompts.

Commands

moxxy                                               Interactive menu
moxxy init                                          First-time setup wizard
moxxy doctor                                        Diagnose installation
moxxy update [--check] [--force] [--json]           Check for and install updates
moxxy update --rollback                             Restore previous gateway version
moxxy uninstall                                     Remove all Moxxy data

moxxy tui [--agent <id>]                            Full-screen chat interface
moxxy chat [--agent <id>]                           Alias for tui

moxxy gateway start|stop|restart|status|logs

moxxy auth token create [--scopes <s>] [--ttl <n>] [--json]
moxxy auth token list [--json]
moxxy auth token revoke <id>

moxxy provider list
moxxy provider install --id <provider-id>
moxxy provider login --id <id> --method browser|headless

moxxy agent create --provider <p> --model <m> --workspace <w> [--json]
moxxy agent run --id <id> --task "task" [--json]
moxxy agent stop --id <id>
moxxy agent status --id <id> [--json]
moxxy agent update --id <id> [--model <m>] [--temperature <n>]
moxxy agent delete --id <id>

moxxy skill create --agent <id> --content <c>
moxxy skill list --agent <id>
moxxy skill remove --agent <id> --skill <id>

moxxy template list
moxxy template get <slug>
moxxy template create --content <c>
moxxy template update --slug <slug> --content <c>
moxxy template remove <slug>
moxxy template assign --agent <id> --template <slug>

moxxy vault add --key <k> --backend <b>
moxxy vault grant --agent <id> --secret <id>
moxxy vault revoke --id <id>
moxxy vault list

moxxy heartbeat set --agent <id> --interval <n> [--action_type <t>]
moxxy heartbeat list --agent <id>
moxxy heartbeat disable --agent <id> --id <id>

moxxy channel create
moxxy channel list
moxxy channel pair --code <code> --agent <id>
moxxy channel delete <id>
moxxy channel bindings <id>
moxxy channel unbind <channel-id> <binding-id>

moxxy mcp list --agent <name>
moxxy mcp add --agent <name> --id <id> --transport stdio --command <cmd> [--args ...]
moxxy mcp add --agent <name> --id <id> --transport sse --url <url>
moxxy mcp remove --agent <name> --id <id>
moxxy mcp test --agent <name> --id <id>

moxxy plugin list                                   List installed plugins
moxxy plugin install <package>                       Install a plugin
moxxy plugin start <name>                            Start a plugin
moxxy plugin stop <name>                             Stop a plugin
moxxy plugin restart <name>                          Restart a plugin
moxxy plugin uninstall <name>                        Remove a plugin
moxxy plugin logs <name>                             Tail plugin logs

moxxy events tail [--agent <id>] [--run <id>] [--json]

Add --json to most commands for machine-readable output.

TUI

The built-in terminal UI provides a split-pane interface with real-time SSE event streaming:

┌─────────────────────────────────┬──────────────────────┐
│  Chat                           │  Agent Info          │
│                                 │  ID: 019cac...       │
│  > You: Refactor auth module    │  Provider: anthropic │
│                                 │  Model: claude-4     │
│  Assistant: Analyzing...        │  Status: ● running   │
│                                 │                      │
│  [skill.invoked] fs.read        │  ── Usage ──         │
│  [skill.completed] fs.read      │  Tokens: 12,450      │
│                                 │  Events: 34          │
├─────────────────────────────────┴──────────────────────┤
│  > Type a task...                            Ctrl+C    │
└────────────────────────────────────────────────────────┘

Slash commands inside the TUI:

CommandDescription
/quit, /exitExit the TUI
/stopStop the running agent
/new, /resetReset session and start fresh
/clearClear chat history
/helpShow available commands
/statusShow agent status
/modelOpen interactive model picker
/vaultOpen vault actions
/mcpOpen MCP actions
/templateOpen template actions

Environment Variables

VariableDefaultDescription
MOXXY_API_URLhttp://localhost:3000Gateway base URL
MOXXY_TOKENAPI bearer token

Supported Providers

The CLI includes a built-in provider catalog:

ProviderEnv VarAuth
AnthropicANTHROPIC_API_KEYAPI key, OAuth
OpenAIOPENAI_API_KEYAPI key
OpenAI CodexOPENAI_CODEX_SECRET_KEYOAuth (browser/headless)
OllamaLocal OpenAI-compatible endpoint, no auth
xAIXAI_API_KEYAPI key
Google GeminiGOOGLE_API_KEYAPI key
DeepSeekDEEPSEEK_API_KEYAPI key
ZAIZAI_API_KEYAPI key
ZAI PlanZAI_API_KEYAPI key
Claude Code CLIClaude Code binary
CustomAnyOpenAI-compatible endpoint

Plugins

Plugins are npm packages that extend Moxxy with additional functionality — web dashboards, virtual offices, custom integrations, and more. Each plugin runs as a standalone process that connects to the gateway via the REST API and SSE events.

Built-in plugins

PluginPackageDescription
Web Dashboard@moxxy/web-pluginBrowser-based dashboard on port 17900
Virtual Office@moxxy/virtual-office-pluginVirtual office environment on port 5174
# Install and start the web dashboard
moxxy plugin install @moxxy/web-plugin
moxxy plugin start @moxxy/web-plugin

# Or use the interactive menu
moxxy plugin

Creating a custom plugin

A Moxxy plugin is any npm package that declares a moxxy section and a plugin:start script in its package.json:

{
  "name": "my-moxxy-dashboard",
  "version": "1.0.0",
  "moxxy": {
    "type": "plugin",
    "displayName": "My Dashboard",
    "description": "Custom monitoring dashboard for Moxxy agents",
    "port": 4000
  },
  "scripts": {
    "plugin:start": "node src/server.js",
    "plugin:stop": "echo 'shutting down'",
    "plugin:install": "npm run build",
    "plugin:uninstall": "rm -rf dist"
  }
}

Required fields:

  • moxxy.type — must be "plugin"
  • scripts["plugin:start"] — the command that starts your plugin

Optional fields:

  • moxxy.displayName — friendly name shown in the CLI menu
  • moxxy.description — short description
  • moxxy.port — default port the plugin listens on
  • scripts["plugin:stop"] — graceful shutdown hook (run before SIGTERM)
  • scripts["plugin:install"] — post-install setup (e.g. build step)
  • scripts["plugin:uninstall"] — cleanup hook before removal

Environment variables

When started, your plugin receives these environment variables:

VariableDescription
MOXXY_API_URLGateway base URL (e.g. http://localhost:3000)
MOXXY_TOKENAPI bearer token for gateway access
MOXXY_PLUGIN_NAMEThe plugin's own package name
MOXXY_PLUGIN_PORTAllocated port from moxxy.port
MOXXY_HOMEMoxxy home directory (~/.moxxy)
PORTSame as MOXXY_PLUGIN_PORT (convenience)

Example: minimal plugin

// src/server.js
import http from 'node:http';

const PORT = process.env.PORT || 4000;
const API_URL = process.env.MOXXY_API_URL;
const TOKEN = process.env.MOXXY_TOKEN;

const server = http.createServer(async (req, res) => {
  if (req.url === '/') {
    // Fetch agents from the gateway
    const resp = await fetch(`${API_URL}/v1/agents`, {
      headers: { Authorization: `Bearer ${TOKEN}` },
    });
    const agents = await resp.json();

    res.writeHead(200, { 'Content-Type': 'text/html' });
    res.end(`
      <h1>Moxxy Agents</h1>
      <ul>${agents.map(a => `<li>${a.name} [${a.status}]</li>`).join('')}</ul>
    `);
    return;
  }
  res.writeHead(404).end('Not found');
});

server.listen(PORT, () => console.log(`Dashboard running on http://localhost:${PORT}`));

Publish to npm, then install in Moxxy:

moxxy plugin install my-moxxy-dashboard
moxxy plugin start my-moxxy-dashboard

Plugin lifecycle scripts

ScriptWhen it runs
plugin:installAfter npm install, before first use (build steps, etc.)
plugin:startWhen the user runs moxxy plugin start <name>
plugin:stopBefore SIGTERM when the user runs moxxy plugin stop <name>
plugin:uninstallBefore removal when the user runs moxxy plugin uninstall <name>

About Moxxy

Moxxy is a local-first agentic framework with a Rust core and Node.js CLI. It provides:

  • 80+ built-in primitives — filesystem, git, shell, HTTP, browsing, memory, webhooks, vault, MCP, hive orchestration, allowlists, and more
  • Skill-based agents — Markdown skills with YAML frontmatter that define capabilities and permission boundaries
  • Multi-agent orchestration — hive swarms with task boards, proposals, voting, and signal-based coordination
  • Strong isolation — sandboxed workspaces, command allowlists, domain-gated networking, OS keychain secrets
  • MCP support — connect agents to Model Context Protocol servers (stdio and SSE transports)
  • Real-time observability — SSE event streaming with automatic secret redaction

For the full project, architecture, and development guide, see the main repository.

License

Dual-licensed under MIT or Apache 2.0 at your option.

Keywords

moxxy

FAQs

Package last updated on 30 Mar 2026

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts