# Sculptor vs Vibe-Trading (slim)

> Vibe-Trading scores 57.8 (C) to Sculptor's 53.1 (D) for agent harnesses. Prices, MCP, x402, uptime and agent notes side by side.

- Full: https://www.anchorterminal.com/compare/sculptor-vs-vibe-trading.md (~6,350 tokens) · this version ~2,580 tokens · JSON https://www.anchorterminal.com/compare/sculptor-vs-vibe-trading.json · canonical https://www.anchorterminal.com/compare/sculptor-vs-vibe-trading
- Index: https://www.anchorterminal.com/llms.txt · API: https://www.anchorterminal.com/api/v1/index.json · MCP: https://www.anchorterminal.com/mcp · Updated: 2026-11-07
- Licence: CC BY 4.0, credit Anchor Terminal and link this page (https://www.anchorterminal.com/terms/#data)

Vibe-Trading scores 57.8 (C) on agent readiness against Sculptor's 53.1 (D), and leads in 5 of 7 scored categories. Both do agent harnesses.

- Sculptor: D 53.1, rank #960 of 1486 · https://www.anchorterminal.com/tools/sculptor.min.md
- Vibe-Trading: C 57.8, rank #777 of 1486 · https://www.anchorterminal.com/tools/vibe-trading.min.md
- Sculptor, good for Developers who want parallel coding agents in isolated workspaces and are fine with a research preview. Also No incidents deducted, where Vibe-Trading loses 9 points for them.
- Vibe-Trading, good for A person or a pipeline that wants a ready-made finance research agent over free market data, with backtests, swarm reviews and exports, run on their own machine or used as an MCP server by another agent. Ahead on Reliability, 63 against 43; Schema & documentation, 72 against 45; Agent ergonomics, 67 against 50; Security & auth, 70 against 57; Maintenance & community, 82 against 75. Also Runs on your own machine; Free to start without a card.

| Category | Sculptor | Vibe-Trading |
| --- | --- | --- |
| Reliability (16%) | 43 | 63 |
| Performance (10%) | pending | pending |
| Schema & documentation (13%) | 45 | 72 |
| Agent ergonomics (13%) | 50 | 67 |
| Security & auth (14%) | 57 | 70 |
| Payments & pricing (10%) | 60 | 60 |
| Task success (10%) | pending | pending |
| Maintenance & community (7%) | 75 | 82 |
| Transparency & trust (7%) | 57 | 53 |

| Fact (where they differ) | Sculptor | Vibe-Trading |
| --- | --- | --- |
| Vendor | Imbue, Inc. | HKUDS |
| Transports |  | stdio, Streamable HTTP, SSE (legacy) |
| Tools exposed | none | 82 |
| Last release | 2026-11-06 | 2026-10-21 |
| Popularity | none | 37k stars |

Why the edge:
- Schema & documentation, Vibe-Trading +27: Sculptor 45 (Harness reading. A README, specs and agent docs in the repository; no API reference (45).); Vibe-Trading 72 (Harness reading of the lines, as for nanobot. The MCP server's tools take typed JSON Schema inputs generated from Python signatures through FastMCP, with a string output schema, and the API server serves FastAPI's OpenAPI file locally (keyless on loopback, behind the key otherwise). No published OpenAPI file or tool manifest outside the running program (20 of 25). No llms.txt on vibetrading.wiki, where /llms.txt redirects to the home page, and the docs are drawn by script from `content.en.js`. The repository carries Markdown READMEs in seven languages and an agent skill file, `agent/SKILL.md` (5 of 10). Tool descriptions say what each does, its arguments and what to call first, such as `list_skills()` before `load_skill`. The server's own header says every tool is read-only apart from `refresh_strategy_evidence`, while `write_file` is also exposed (14 of 20). Inputs are typed, but many choices are free strings (`protocol`, `risk_tier`, `format`) and several take free dictionaries (8 of 15). Many worked examples in the README and a troubleshooting page that names failure states such as `no_progress` and the 403 from another device; tool errors come back as JSON with an `error_type` (12 of 15). Dated CHANGELOG.md, GitHub release tags and versioned docs, though the docs still name 0.1.16 as latest (13 of 15).)
- Reliability, Vibe-Trading +20: Sculptor 43 (Local software. Desktop downloads for Mac (Apple Silicon), Linux and Linux ARM64 (20). checks.yml and a PR gate run on the repository; pass state not read (15). GitHub issues and pull requests weren't read (GitHub's pages refuse these sessions), so that line is scored absent (0). sculptor-v tags up to v0.49.0, no changelog file (8). 0.x and labelled a research preview (0). 20 + 15 + 0 + 8 + 0 = 43.); Vibe-Trading 63 (Read with the local-software lines, as for nanobot and Agent Zero, since the owner runs it. `vibe-trading-ai` installs from PyPI for Python 3.11 or newer, with classifiers for 3.11 to 3.13, and a Docker Compose setup ships in the repository (20). A CI workflow runs the test suite on pushes and pull requests to main, with hash-locked dependency checks on Linux, macOS and Windows, and the repository holds 961 test files. Whether the latest runs on main passed couldn't be read, because GitHub's Actions pages weren't reachable (15 of 25). The repository page showed 7 open issues and 57 open pull requests on 25 October 2026, per that check (GitHub's pages answer 403 on 2 November), against 771 commits in the 30 days to 2 November, and the 0.1.18 notes list two known issues already fixed on main. Issue threads weren't read (18 of 25). CHANGELOG.md says it follows Semantic Versioning, with dated entries from 0.1.8, a Known issues section and an upgrade note for the LangChain 1.x move in 0.1.10, but on 0.x breaking changes ride in minor versions and there is no Breaking section (10 of 15). Version 0.1.18 with the classifier Development Status 4, Beta (0).)
- Agent ergonomics, Vibe-Trading +17: Sculptor 50 (Harness reading. Workspaces as isolated copies, review and merge back, and built-in skills (50).); Vibe-Trading 67 (Harness reading, scored on what an agent or script driving it has to supply. The MCP server registers 82 tools, with about 44,300 characters of descriptions across the 71 defined in the server file, and no toolsets or read-only subset (5). Since 0.1.18 the built-in agent loads tool schemas on demand, and skills load by section and offset, which keeps its own context smaller (plus 7, 12 of 25). Rows are capped by default, `read_run_artifact` pages by offset, row count and columns, oversized results are written to the run directory, the agent stops after eight tool iterations without a new result, and goals take token, turn and time budgets (18 of 20). JSON error envelopes with a type, a `--json` mode for `vibe-trading run` and a troubleshooting page, with no documented exit codes (15 of 20). No readOnlyHint or destructiveHint annotations on MCP tools. An identical call is refused from its second failure, failed swarm runs resume with completed tasks kept, interrupted web replies are checkpointed and TAP-routed Alpaca orders carry a deterministic `client_order_id` (12 of 20). `pip install` and `vibe-trading init` start it, market data works with no key, and a model key, Ollama or an existing Codex, Copilot or Claude Code login is required. Python only, with a REST API and no SDK in a second language (10 of 15).)
- Security & auth, Vibe-Trading +13: Sculptor 57 (Harness reading. Product analytics, error reporting and session recording default to off in the user config, and the app asks for a telemetry level and privacy consent at first run; PostHog runs on the front end only for now (25 of 30). Each workspace is an isolated copy of the code (14 of 20). No prompt-injection guidance (5). No audit log (5). SECURITY.md (8). 25 + 14 + 5 + 5 + 8 = 57.); Vibe-Trading 70 (Harness reading used for nanobot and goose. 30 for what leaves the machine by default, 20 for approvals and sandboxing, 15 for prompt-injection posture, 15 for audit and 20 for the security programme. No telemetry code was found in the source at v0.1.18, and the only call to PyPI is the owner-run `vibe-trading update`. The API answers only loopback clients without `API_AUTH_KEY`, Docker binds 127.0.0.1 and runs as user `vibe`, and the MCP HTTP transport binds 127.0.0.1 with a Host and Origin allow-list against DNS rebinding but no token. Broker keys go to the OS keyring; model keys sit in `agent/.env` in clear text. The docs carry no statement that nothing is collected (24). Live orders need a mandate that only the owner commits through the web UI or API, with hard caps and a kill switch, and an optional TAP mode waits for human approval of each Alpaca write. No order tool is exposed over MCP, and shell tools are off on the API and every MCP transport unless enabled. The local CLI runs `bash` and file writes without asking, and generated backtest code runs as a network-capable subprocess with a narrowed environment and no sandbox (13). Reader and search tools add warning-only `security_warnings` from regex rules, and external MCP tool hints are treated as untrusted in the source. The `claude-cli` provider's tool filters are described as convenience filters, not a boundary (9). A live-action ledger written append-only with a hash-chained copy, run cards with hashed execution records, tool traces and per-run token usage (13). SECURITY.md with private advisory reporting and a five-business-day acknowledgement. Three advisories were published on 2 October 2026 with CVE identifiers, five months after the 0.1.7 fix, while the email TLS and cross-site settings fixes in 0.1.16 got none. No security.txt and no bounty (11). 24+13+9+13+11 = 70.)
- Maintenance & community, Vibe-Trading +7: Sculptor 75 (Commits on 6 November 2026 and frequent tagged versions (30). More than three releases in 90 days (20). GitHub issues and pull requests weren't read (GitHub's pages refuse these sessions), so that line is scored absent; the README says Imbue can't take many outside contributions yet (0). Current official downloads (15). CI on pull requests (10). 30 + 20 + 0 + 15 + 10 = 75.); Vibe-Trading 82 (v0.1.18 was tagged on 21 October 2026, 12 days before this check (30). Six releases in the 90 days from 4 August, 0.1.13 (tag 10 August) to 0.1.18, from the repository's tags; PyPI couldn't be read on 2 November (20). 771 commits on main in the 30 days to 2 November, 233 of them after v0.1.18, the last on 2 November; the 25 October repository page showed 7 open issues and 57 open pull requests, not re-read. Issue and pull request threads weren't read, a judgement call (18 of 25). An MCP server that isn't in the official MCP registry (searches for vibe-trading and hkuds on 2 November 2026 found nothing). It is published on PyPI, as a Docker setup and on ClawHub (5 of 15). Hash-locked requirements checked in CI on three operating systems, Dependabot set to monthly, and dependency floors raised for named CVEs, most recently on 29 October (9 of 10). 30+20+18+5+9 = 82.)
