Rename notice: VibeCoding is now MothX. PyPI install name:
vibecoding-installer(pipx install vibecoding-installerorpip install vibecoding-installer).
MothX
MothX was formerly known as VibeCoding. This PyPI package is kept as a legacy compatibility distribution: each wheel includes a platform-native vibecoding binary, while new installs and future updates should prefer npm install -g mothx-installer.
Installation
pip install vibecoding-installer
Or with an isolated environment:
pipx install vibecoding-installer
After installation, the legacy vibecoding command is available on your PATH.
Quick Start
# Set your API key
export DEEPSEEK_API_KEY=sk-...
# Start an interactive session
vibecoding
# Or ask a question directly
vibecoding -P "Write a Go HTTP server"
Choose Your Mode
Every session runs in one of three modes, switchable anytime with Tab or /mode:
| Mode | Files | Network | Best For |
|---|---|---|---|
| Plan | Read-only | ✗ | Analysis, code review, safe exploration |
| Agent | Read/Write | ✗ | Daily development (default) |
| YOLO | Full | ✓ | System administration, automation |
vibecoding --mode plan # read-only
vibecoding --mode agent # standard (default)
vibecoding --mode yolo # full access
Multi-Provider Support
Switch providers with a single flag:
# DeepSeek (default)
vibecoding --provider deepseek-openai --model deepseek-v4-flash
# OpenAI
vibecoding --provider openai --model gpt-4o
# Anthropic
vibecoding --provider anthropic --model claude-3-5-sonnet-20241022
# 20+ vendor adapters supported: Gemini, Kimi, Volcengine, Mistral,
# OpenRouter, Groq, Bedrock, GitHub Copilot, and more
Session Management
MothX persists conversation history in SQLite with branching support:
vibecoding # start new session
vibecoding --continue # resume last session
vibecoding --resume <id> # resume a specific session
vibecoding --session <file> # open a specific session file
Sessions live in ~/.vibecoding/sessions/ (Linux/macOS) or %APPDATA%\vibecoding\sessions\ (Windows).
Print / CI Mode
Use MothX in non-interactive mode for scripting and CI/CD:
vibecoding -P "Write unit tests for auth.go"
vibecoding -P "Generate a CHANGELOG from git log" > CHANGELOG.md
echo "Explain this function" | vibecoding -P
Use --mode plan for read-only tasks and pair with --print to fail fast when approval is required.
Think Mode
Enable deeper reasoning for complex problems:
vibecoding --thinking high "Solve this architecture problem"
Levels: off, minimal, low, medium, high, xhigh — toggle in TUI with /think.
Security & Sandboxing
MothX uses bubblewrap for process-level isolation. Three layers of protection:
- Blacklist — dangerous commands (
rm -rf,sudo) are always blocked, even in YOLO mode - Approval gates — Agent mode prompts before executing bash commands
- Whitelist — pre-approve safe commands in
settings.json:
{
"approval": {
"bashWhitelist": ["go ", "make ", "git ", "npm "],
"bashBlacklist": ["rm -rf", "sudo"],
"confirmBeforeWrite": true
}
}
Skills System
Skills are reusable prompt snippets for project conventions:
# List skills
> /skills
# Activate a skill
> /skill my-conventions
Place SKILL.md files in:
- Global —
~/.vibecoding/skills/<name>/SKILL.md - Project —
.skills/<name>/SKILL.md(overrides global)
Compatible with SkillHub for discovering and sharing community skills.
IDE Integration
MothX speaks Agent Client Protocol (ACP), integrating with VS Code, Zed, and JetBrains IDEs.
VS Code
Add to .vscode/settings.json:
{
"acp.agents": {
"vibecoding": {
"command": "vibecoding",
"args": ["acp", "--mode", "agent"]
}
}
}
JetBrains (IntelliJ, WebStorm, etc.)
Go to Settings → Tools → ACP Agents and add:
- Name:
MothX - Command:
vibecoding - Arguments:
acp --mode agent
Gateway Mode
Run MothX as an OpenAI-compatible HTTP server:
vibecoding gateway
Config in ~/.vibecoding/gateway.json or .vibe/gateway.json. Ideal for team sharing, CI/CD pipelines, and embedding into your own tools.
Multi-Agent Mode
Enable sub-agent delegation and cron workflows:
vibecoding --multi-agent
Sub-agent tools: subagent_spawn, subagent_status, subagent_send, subagent_destroy.
For a single blocking investigation:
vibecoding --delegate
Hermes / Messaging Mode
Deploy MothX as a chatbot on WeChat, Feishu, or WebSocket:
vibecoding hermes
Config in ~/.vibecoding/hermes.json. Each user gets an independent, persistent session.
Keyboard Shortcuts
| Shortcut | Action |
|---|---|
Enter |
Submit prompt |
Alt+Enter / Ctrl+J |
Insert newline |
Tab |
Cycle mode (plan → agent → yolo) |
Esc |
Abort current operation |
Ctrl+O |
Open tool details |
Ctrl+G |
Toggle compact display |
Ctrl+T |
Toggle thinking display |
Supported Platforms
- Linux x86_64, arm64, ppc64le, s390x
- Linux musl x86_64, arm64
- macOS x86_64, arm64
- Windows x64, arm64
Other platforms (LoongArch64, RISC-V64, *BSD) are available via npm install -g mothx-installer or the one-line installer.
Diagnostics
vibecoding doctor
Checks config files, API connections, sandbox, MCP servers, sessions, and skills.
Uninstall
pip uninstall vibecoding-installer
# or if you used pipx:
pipx uninstall vibecoding-installer
Links
- Homepage — https://github.com/startvibecoding/mothx
- Documentation — https://github.com/startvibecoding/mothx/tree/main/docs
- Changelog — https://github.com/startvibecoding/mothx/blob/main/docs/en/changelog.md
- Issues — https://github.com/startvibecoding/mothx/issues
- License — MIT
Metadata
Release files for vibecoding-installer 1.1.58
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Built distributions (wheels)
Total release size: 71.0 MB
Release files / vibecoding_installer-1.1.58-py3-none-win_arm64.whl
| Download URL | vibecoding_installer-1.1.58-py3-none-win_arm64.whl |
|---|---|
| Size | 6.8 MB |
| Tags | Python 3 Windows ARM64 |
|
SHA-256 checksum How to use checksums |
95fa9bb757078554936a4d7ae8fc26d7d5e59653704514b2e8f9b0c90b4c0563
|
|
BLAKE2b-256 checksum How to use checksums |
91f73e122148ecbf95dbef948fc4f9461d6d4dd2a8e80adff0b864694e81ea72
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.11.2
|
Release files / vibecoding_installer-1.1.58-py3-none-win_amd64.whl
| Download URL | vibecoding_installer-1.1.58-py3-none-win_amd64.whl |
|---|---|
| Size | 7.8 MB |
| Tags | Python 3 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
c35cdc773759fa4e3d64147da70bbf935130646bbc64578a3e43d86359c178da
|
|
BLAKE2b-256 checksum How to use checksums |
26971da6a69e6aa1202e30079e198cba137f9fe42fe222b7c89b2a05d718e6a5
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.11.2
|
Release files / vibecoding_installer-1.1.58-py3-none-musllinux_1_2_x86_64.whl
| Download URL | vibecoding_installer-1.1.58-py3-none-musllinux_1_2_x86_64.whl |
|---|---|
| Size | 7.2 MB |
| Tags | Linux musl 1.2+ x86-64 Python 3 |
|
SHA-256 checksum How to use checksums |
8f3efae627768f353173f1ef47107571fe7848b095d150fc51af08bace36c8c4
|
|
BLAKE2b-256 checksum How to use checksums |
c778aed1a4bfff1037e379339917f5ff4001de03c3f70a0eeb89a1a1ffabc358
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.11.2
|
Release files / vibecoding_installer-1.1.58-py3-none-musllinux_1_2_aarch64.whl
| Download URL | vibecoding_installer-1.1.58-py3-none-musllinux_1_2_aarch64.whl |
|---|---|
| Size | 6.8 MB |
| Tags | Linux musl 1.2+ ARM64 Python 3 |
|
SHA-256 checksum How to use checksums |
91b0678ed9b520aeef874d4f62e66c6af90f852743c8b38d3802c26be3dd7cc3
|
|
BLAKE2b-256 checksum How to use checksums |
838729f1e5b26e9c58994ea1ac06ffe2e1cea1c6e94f356a5036884b701d3704
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.11.2
|
Release files / vibecoding_installer-1.1.58-py3-none-manylinux_2_17_x86_64.whl
| Download URL | vibecoding_installer-1.1.58-py3-none-manylinux_2_17_x86_64.whl |
|---|---|
| Size | 6.9 MB |
| Tags | Linux glibc 2.17+ x86-64 Python 3 |
|
SHA-256 checksum How to use checksums |
e7e3cd95736956fbbebcd91d9ca70e7ccac32e1817ef931af31095e9df3256ec
|
|
BLAKE2b-256 checksum How to use checksums |
fa64ea76a872886dc0467bbbca683057a757be6a842a621215a1a5322c0d7a25
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.11.2
|
Release files / vibecoding_installer-1.1.58-py3-none-manylinux_2_17_s390x.whl
| Download URL | vibecoding_installer-1.1.58-py3-none-manylinux_2_17_s390x.whl |
|---|---|
| Size | 7.2 MB |
| Tags | Linux glibc 2.17+ IBM System/390x Python 3 |
|
SHA-256 checksum How to use checksums |
d73a2bcaaf394073654596ff0d507b48d6062bdfe5a2fe2e276e3d8b5ccd530d
|
|
BLAKE2b-256 checksum How to use checksums |
4c0226df5eab27edcac21bb2351f8deec956ce38492c02cac02a73b14ca922d5
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.11.2
|
Release files / vibecoding_installer-1.1.58-py3-none-manylinux_2_17_ppc64le.whl
| Download URL | vibecoding_installer-1.1.58-py3-none-manylinux_2_17_ppc64le.whl |
|---|---|
| Size | 6.8 MB |
| Tags | Linux glibc 2.17+ PowerPC 64-le Python 3 |
|
SHA-256 checksum How to use checksums |
67fa100432fd62e48ea34e1f8da4d4da6723697e5ab277b9c992e7c4625456d6
|
|
BLAKE2b-256 checksum How to use checksums |
44891dff40467bbd45f1457d848e8f5409875f756e682880f0c65953997adb3a
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.11.2
|
Release files / vibecoding_installer-1.1.58-py3-none-manylinux_2_17_aarch64.whl
| Download URL | vibecoding_installer-1.1.58-py3-none-manylinux_2_17_aarch64.whl |
|---|---|
| Size | 6.8 MB |
| Tags | Linux glibc 2.17+ ARM64 Python 3 |
|
SHA-256 checksum How to use checksums |
2c44741fa9dc17c1317f0775dd560a371e03cd071bd218484173a08171b72c5e
|
|
BLAKE2b-256 checksum How to use checksums |
8832bd74bf2fb225d47f6cf7a44f55cc4cadd1e3adc3b548edcca5a08f7160a9
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.11.2
|
Release files / vibecoding_installer-1.1.58-py3-none-macosx_11_0_arm64.whl
| Download URL | vibecoding_installer-1.1.58-py3-none-macosx_11_0_arm64.whl |
|---|---|
| Size | 7.0 MB |
| Tags | Python 3 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
7889c72e02436dfe49e3e8b25e36514b5147a455ebef3d35543a963036c36fd1
|
|
BLAKE2b-256 checksum How to use checksums |
b8305377723063615dec95afef2c2bf02d848bc782a4449fca492282f2f7e605
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.11.2
|
Release files / vibecoding_installer-1.1.58-py3-none-macosx_10_15_x86_64.whl
| Download URL | vibecoding_installer-1.1.58-py3-none-macosx_10_15_x86_64.whl |
|---|---|
| Size | 7.5 MB |
| Tags | Python 3 macOS 10.15+ x86-64 |
|
SHA-256 checksum How to use checksums |
6c43fd7932d51d1804b4a1a6f61d2024cc9a3d748d2b61e72ef09c82f52ad290
|
|
BLAKE2b-256 checksum How to use checksums |
b289eeb1a66fcecfc9252fb3e13bb5fb00ebce6927cbb9b32e4f3f7f3c2691da
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.11.2
|