by xiayu1987
Self-hosted AI agent workspace with tool calling, MCP, multi-model routing, sandboxed execution, multi-agent workflows, and LLM-authored 3D character animation rendered with Three.js.
# Add to your Claude Code skills
git clone https://github.com/xiayu1987/noobotLast scanned: 9/3/2026
{
"issues": [
{
"type": "npm-audit",
"message": "@xmldom/xmldom: xmldom: XML fragment injection via invalid EntityReference.nodeName during requireWellFormed serialization",
"severity": "medium"
},
{
"type": "npm-audit",
"message": "deepmerge-ts: DeepmergeTS has stack exhaustion when merging recursive object graphs",
"severity": "high"
},
{
"type": "npm-audit",
"message": "fast-uri: fast-uri vulnerable to host confusion via skipped IDN canonicalization on scheme-relative references",
"severity": "high"
},
{
"type": "npm-audit",
"message": "html-to-text: Vulnerability found",
"severity": "high"
},
{
"type": "npm-audit",
"message": "js-yaml: JS-YAML: Quadratic CPU consumption in !!omap resolution (3.x and 4.x) — CVE-2026-59870 fix not backported",
"severity": "high"
},
{
"type": "npm-audit",
"message": "mailparser: Vulnerability found",
"severity": "high"
},
{
"type": "npm-audit",
"message": "pm2: Vulnerability found",
"severity": "high"
},
{
"type": "npm-audit",
"message": "qs: qs array-limit bypass via bracket-key comma parsing",
"severity": "medium"
}
],
"status": "WARNING",
"scannedAt": "2026-09-03T08:34:29.434Z",
"npmAuditRan": true,
"pipAuditRan": true,
"promptInjectionRan": true
}noobot is an open-source ai agents skill for AI coding assistants such as Claude Code, Codex CLI, and ChatGPT, built by xiayu1987. Self-hosted AI agent workspace with tool calling, MCP, multi-model routing, sandboxed execution, multi-agent workflows, and LLM-authored 3D character animation rendered with Three.js. It has 111 GitHub stars.
noobot returned warnings in SkillsLLM's automated security scan. It has no critical vulnerabilities, but review the flagged issues in the Security Report section before adding it to your workflow.
Clone the repository with "git clone https://github.com/xiayu1987/noobot" and add it to your Claude Code skills directory (see the Installation section above).
noobot is primarily written in JavaScript. It is open-source under xiayu1987 on GitHub, so you can review or fork the full source.
Yes. SkillsLLM lists many other AI Agents skills you can browse and compare side by side. Open the AI Agents category from the badge at the top of this page, or use the Related Skills and comparison links further down to weigh noobot against similar tools.
No comments yet. Be the first to share your thoughts!
Requires a passing catalog security scan. Resolve the flagged issues and resubmit to enable featuring.
⚠️ Third-Party Software Notice
This skill is third-party open-source software developed and hosted independently on GitHub. SkillsLLM is an informational directory and does not control or maintain the underlying repository.
Any security checks, ratings, or warnings displayed by SkillsLLM are automated and limited in scope. They do not constitute a security certification or guarantee that the software is safe, error-free, or free from malicious code, vulnerabilities, compromised dependencies, or prompt-injection risks.
Review the source code, permissions, dependencies, and configuration before installing or running any third-party skill. Use is at your own risk. To the maximum extent permitted by applicable law, SkillsLLM is not liable for losses arising from third-party software.
Self-hosted AI agent workspace for tool calling, multi-model routing, MCP, and multi-agent workflows.
中文 | English
Windows installer (choose Noobot.Setup.<version>.exe) · macOS package (choose Noobot-<version>-mac.zip) · Configuration · Discussions
Noobot is an open-source Web and desktop AI agent application built with Node.js, Vue 3, and Electron. It provides isolated user workspaces, durable sessions, extensible tools, semantic workflows, and model-family routing across OpenAI-compatible providers from one self-hosted deployment.
Co-creators: Hyler · Epicur · gonglei · Z · Y · C
An English demo of a fictional portfolio analysis: Noobot verifies source data, chains four file tools, surfaces the live analysis flow, and publishes reusable report attachments.

Import a 3D character with basic motions and tell Noobot what you want it to do. You can create solo or multi-character scenes, make characters wave, walk, jump, and interact, then refine their movement, timing, and position in later messages. No animation code is required.

The recording below comes from a running Noobot system. It follows the complete creative experience: import and select a character, describe a scene in plain language, and watch it perform a continuous sequence of idle, wave, jump, walk, and finishing motions inside the conversation.

Each animation is saved as a work created in the current session. It remains available after a refresh and can be refined from any later message without scrolling back to where it was first created.
To get started, open Character, import a model, select one or more characters from More actions, and describe the movement you want to see.

| Option | Download or command | Notes |
|---|---|---|
| Windows installer | Latest release, then choose Noobot.Setup.<version>.exe |
Recommended for Windows |
| Windows packaged archive | Latest release, then choose Noobot-<version>-win.zip |
ZIP distribution without the setup wizard |
| macOS packaged archive | Latest release, then choose Noobot-<version>-mac.zip |
Packaged macOS desktop client |
| Self-hosted Web | ./start.sh |
Linux or macOS server deployment |
git clone https://github.com/xiayu1987/noobot.git
cd noobot
chmod +x start.sh
./start.sh
Notes:
start.sh runs the project launcher first (scripts/project-launcher.mjs).service/config/global.config.json does not exist, an interactive setup wizard will create it.NOOBOT_MODEL_FORMAT=openai_compatible \
NOOBOT_MODEL_NAME=gemini-3-flash \
NOOBOT_MODEL_API_KEY=xxx \
NOOBOT_MODEL_BASE_URL=https://example.com/v1 \
./start.sh
Optional: NOOBOT_SETUP_LANG=zh|en (controls setup wizard language and synchronizes preferences.language plus built-in config copy text localization).
Default endpoints:
http://127.0.0.1:10060http://127.0.0.1:10061http://127.0.0.1:10062Stop all services:
chmod +x stop-services.sh
./stop-services.sh
This repository uses npm workspaces from the root package.json.
cd noobot
npm install --workspaces
Useful commands:
# run all test scripts that exist
npm run test
# development servers
npm run dev:service
npm run dev:agent-proxy
npm run dev:client
# build the startup UI and web client
npm run build
The root package.json is the source of truth for the current workspace list and
repository-wide scripts. Package-specific scripts can also be run with
npm run -w <workspace> <script>.
Optional system deps:
libreoffice (Office document conversion)ffmpeg (audio/video processing)docker (programmable workspace compute sandbox)Install dependencies first from the repository root:
npm install --workspaces
Then choose one of the following equivalent approaches.
From the repository root (the root scripts already select the workspace with
-w):
# Build the Windows desktop package
npm run build:windows
# Build the macOS desktop package
npm run build:mac
Or run the workspace script from the corresponding desktop client directory:
# Windows (run from client/windows)
cd client/windows
npm run build:win
# macOS (run from client/mac)
cd ../mac
npm run build:mac
The commands prepare the frontend, Electron client, and backend before invoking
electron-builder. The generated artifacts are written to the corresponding
desktop client's dist/ directory.
CONFIGURATION.mdCONFIGURATION.md.CONTRIBUTING.mdCODING-STANDARD.mdEnvironment variables for start.sh:
CADDY_ADDR (default :10060)AGENT_PROXY_UPSTREAM (default 127.0.0.1:10062)PORT (service port, default 10061)Example:
CADDY_ADDR=:8080 PORT=3001 AGENT_PROXY_UPSTREAM=127.0.0.1:3002 \
AGENT_PROXY_PORT=3002 ./start.sh
The PM2 scripts below manage one package at a time and do not run the project initialization launcher. For first-time deployment, dependency installation, frontend build, or config auto-sync, use
./start.sh.
cd service && npm run pm2:list
cd service && npm run pm2:logs
cd service && npm run pm2:stop
cd service && npm run pm2:delete
cd agent-proxy && npm run pm2:list
cd agent-proxy && npm run pm2:logs
cd agent-proxy && npm run pm2:stop
cd agent-proxy && npm run pm2:delete
cd model-proxy && npm run pm2:list
cd model-proxy && npm run pm2:logs
cd model-proxy && npm run pm2:stop
cd model-proxy && npm run pm2:delete