by AtomicBot-ai
Atomic Agent is a local-first AI agent. Runs open-weight models on your own machine via llama.cpp.
# Add to your Claude Code skills
git clone https://github.com/AtomicBot-ai/atomic-agentLast scanned: 6/17/2026
{
"issues": [
{
"type": "npm-audit",
"message": "@vitest/mocker: Vulnerability found",
"severity": "medium"
},
{
"type": "npm-audit",
"message": "esbuild: esbuild enables any website to send any requests to the development server and read the response",
"severity": "high"
},
{
"type": "npm-audit",
"message": "exceljs: Vulnerability found",
"severity": "medium"
},
{
"type": "npm-audit",
"message": "fast-xml-builder: fast-xml-builder allows attribute values with unwanted quotes to bypass malicious or unwanted attributes",
"severity": "high"
},
{
"type": "npm-audit",
"message": "hono: hono: Path traversal in `serve-static` on Windows via encoded backslash (`%5C`)",
"severity": "high"
},
{
"type": "npm-audit",
"message": "node-notifier: Vulnerability found",
"severity": "medium"
},
{
"type": "npm-audit",
"message": "shell-quote: shell-quote quote() does not escape newlines in object .op values",
"severity": "critical"
},
{
"type": "npm-audit",
"message": "tmp: tmp has Path Traversal via unsanitized prefix/postfix that enables directory escape",
"severity": "high"
},
{
"type": "npm-audit",
"message": "tsx: Vulnerability found",
"severity": "high"
},
{
"type": "npm-audit",
"message": "uuid: uuid: Missing buffer bounds check in v3/v5/v6 when buf is provided",
"severity": "medium"
},
{
"type": "npm-audit",
"message": "vite: Vite Vulnerable to Path Traversal in Optimized Deps `.map` Handling",
"severity": "high"
},
{
"type": "npm-audit",
"message": "vite-node: Vulnerability found",
"severity": "medium"
},
{
"type": "npm-audit",
"message": "vitest: Vulnerability found",
"severity": "critical"
},
{
"type": "npm-audit",
"message": "ws: ws: Uninitialized memory disclosure",
"severity": "high"
},
{
"file": "README.md",
"line": 224,
"type": "secret-exfiltration",
"message": "Instruction appears to send credentials/secrets to an external endpoint",
"severity": "medium"
},
{
"file": "README.md",
"line": 79,
"type": "remote-install",
"message": "Install command (remote install script piped to a shell — review the source before running): \"curl -fsSL https://api.atomicbot.ai/agent-install | sh\"",
"severity": "low"
},
{
"file": "starter-skills/notion/SKILL.md",
"line": 64,
"type": "secret-exfiltration",
"message": "Instruction appears to send credentials/secrets to an external endpoint",
"severity": "medium"
}
],
"status": "FAILED",
"scannedAt": "2026-06-17T09:04:49.588Z",
"npmAuditRan": true,
"pipAuditRan": true,
"promptInjectionRan": true
}See how atomic-agent compares with popular alternatives.
atomic-agent is an open-source ai agents skill for AI coding assistants such as Claude Code, Codex CLI, and ChatGPT, built by AtomicBot-ai. Atomic Agent is a local-first AI agent. Runs open-weight models on your own machine via llama.cpp. It has 2,541 GitHub stars.
atomic-agent failed SkillsLLM's automated security scan, which flagged one or more high-severity issues. Review the Security Report section carefully before using it.
Clone the repository with "git clone https://github.com/AtomicBot-ai/atomic-agent" and add it to your Claude Code skills directory (see the Installation section above).
atomic-agent is primarily written in TypeScript. It is open-source under AtomicBot-ai 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 atomic-agent 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.
Drives your browser, edits files, runs approved commands, and remembers context across sessions. Open source, running on our TurboQuant llama.cpp for +30-50% throughput on small local models.
Quick Install · Uninstall · Benchmarks · Why Local-First · Ways to Use It · Docs

A local-first AI agent that runs the control loop and all state on your machine. It drives your desktop: browse, read and edit files, run approved shell commands, inspect documents, remember context across sessions, schedule follow-ups, and call external tools over MCP. Embed it in your own apps over HTTP or a Tauri sidecar. llama.cpp first, so small quantized models stay useful for long, multi-step work on consumer hardware.
macOS / Linux:
curl -fsSL https://atomicagent.io/install | sh
Windows (PowerShell):
irm https://atomicagent.io/install.ps1 | iex
The installer downloads the release archive, verifies the checksum, and installs the CLI plus support assets (grammars/, native prebuilds, and bundled ripgrep). Atomic Agent updates itself in place; after an update the TUI prompts you to restart. Outside the TUI, run atomic-agent update (or atag update) to check for a newer release and re-run the installer in place — atomic-agent update --check probes without installing, and --version <tag> pins a specific release. Only the installed binary can self-update; a dev checkout updates via git.
[!NOTE] Developer preview. APIs, commands, config, and behavior are still moving, so pin a release if you need a stable integration point. Current builds: macOS (Apple Silicon), Linux x64 / arm64, and Windows x64.
atomic-agent
Both installers also drop a short alias next to the binary, so this is the same thing:
atag
[!TIP] Need a second agent? Press Ctrl+N (or run
/window) inside the TUI — it opens a new terminal window with a fresh atomic-agent in the same directory.
[!TIP] Coming from another agent? The first run offers to bring your data over from Hermes, OpenClaw, Claude Code, or Codex — skills, memory, MCP servers, sessions, cron jobs, and (opt-in) provider keys, with a dry-run preview before anything is written. Later, run
/importin the TUI oratomic-agent import <hermes|openclaw|claude-code|codex>from the shell.
One command removes everything — the state directory (config, memory, sessions, tasks, traces, downloaded models), the binary and its atag alias, the asset directories beside them, and the PATH line the installer added to your shell rc file:
atomic-agent uninstall
It prints exactly what it will delete, with sizes, and then asks you to type the word uninstall. Nothing is uploaded and nothing is kept — this cannot be undone. Preview it with atomic-agent uninstall --dry-run, keep your data with --keep-data, or skip the prompt in a script with --yes. The same flow is the last entry in the TUI's own menu (Esc → Danger zone, or /uninstall).
If something isn't working:
Building something with Atomic Agent, stuck on setup, or just want to share what you are working on? Grab a slot and talk to the team directly: cal.com/atomicagent/demo. No agenda required. Questions, feedback, feature requests, or a plain hello all count. We read every issue and every Discord message too, but sometimes a 15-minute call beats a week of comments.
On the public GAIA validation Level 1 split (53 tasks), Atomic Agent and Hermes drove the same local qwen-3.6-35b-a3b (llama-server, UD-Q4_K_XL), with the same step budget and timeout. The only variable is the agent loop.

| Metric | Atomic Agent | Hermes |
|---|---|---|
| Accuracy | 37/53 = 69.8% | 31/53 = 58.5% |
| Avg wall / task | ~217 s | ~351 s |
| Head-to-head wins | +15 atomic-only | +9 Hermes-only |
%%{init: {"themeVariables": {"xyChart": {"backgroundColor": "transparent", "titleColor": "#0b63f6", "plotColorPalette": "#0b63f6"}}}}%%
xychart-beta
title "GAIA L1 accuracy (higher is better, %)"
x-axis ["Atomic Agent", "Hermes"]
y-axis "Accuracy (%)" 0 --> 100
bar [69.8, 58.5]
%%{init: {"themeVariables": {"xyChart": {"backgroundColor": "transparent", "titleColor": "#0b63f6", "plotColorPalette": "#0b63f6"}}}}%%
xychart-beta
title "Avg wall time per task (lower is better, s)"
x-axis ["Atomic Agent", "Hermes"]
y-axis "Seconds / task" 0 --> 400
bar [217, 351]
The same loop holds up as the local model shrinks. Same GAIA L1 split, Atomic Agent alone:
| Chat model | Accuracy | Avg wall / task |
|---|---|---|
qwen-3.6-35b-a3b (UD-Q4_K_XL) |
37/53 = 69.8% | ~217 s |
qwen-3.5-9b (Q4_K_M) |
28/53 = 52.8% | ~152 s |
gemma-4-12b (it-qat UD-Q4_K_XL) |
24/53 = 45.3% | ~423 s |
Even a 9B model clears half of GAIA L1 through the same context-frugal loop. (Different Atomic Agent versions per row; see the write-up for provenance.)
Full reproducible write-up: GAIA-L1-EXPERIMENT.md · Raw artifacts (matrices, NDJSON traces, logs): gaia-l1-eval-2026-06-11 release.
The control loop and all state run on your machine, not a hosted service:
.env secrets live under <stateDir> as plain files and SQLite databases. See Privacy and Egress for what can leave the machine and how to switch it off.llama.cpp. Bring your own llama-server or let the CLI manage one.An agent is a loop: the model picks an action, something runs it, the result feeds back in, and it repeats until the job is done. The catch is cost. Every turn re-sends the growing context through the model, so a naive loop gets slower and pricier each pass, and small local models choke on it fastest.
Atomic Agent keeps the loop cheap. One inference produces one JSON array of tool calls, and it runs them without re-encoding the whole world every turn:
flowchart LR
A[Prompt] --> B[Decide]
B --> C[Run]
C --> D[Compress]
D -->|not done| A
D -->|done| E[Reply]
The model chooses actions. Atomic Agent owns the loop, the state, the approvals, the traces, the stop conditions, and the failure boundaries.
We run local models on our own TurboQuant llama.cpp (AtomicBot-ai/atomic-llama-cpp-turboquant-nightly):