The Veil
Coordinate parallel coding agents and carry verified project knowledge into the next session.
- Source repo
- gary23w/nl-veil
- Stars
- ★ 108
- Last updated
- 1d ago
- License
- MIT
- Primary language
- Zig
- FA score
- 65/100 · Some gaps
At a glance
- How it runs
- Works with
- Universal · cross-platformOpenAI API
- Cost
- Free software; you pay for model usage
- Setup effort
- Medium · a few setup steps
- You'll need
- Typical use
- A solo developer wants to split a feature across file-level tasks, have agents work in parallel, and review the combined result.
- Not a fit if
- Teams that cannot allow task tools to read or modify local project files
- Teams that require every model call and data transfer to stay on the machine
- Source review
- 65/100 · Some gaps
What does this agent do, and when should you use it?
The Veil is an open-source coding desktop built in Zig, with a web interface and a veil CLI client. A single server process holds accounts, model keys, memory, and tool execution; the desktop, web app, and CLI use the same /api/v1 surface. Users can split work across specialist agents that edit files, build, and critique in parallel in a shared work directory, then reconcile their work into one response. The memory engine stores project knowledge and a playbook of fixes verified by commands for use in later sessions. It supports a built-in local model, Ollama, and OpenAI-compatible endpoints; requests to hosted services send the data needed for those features to the chosen services.
Install the release bundle for your platform and start veil; it opens the desktop window and runs the local server. In Chat, describe a coding task and the server calls the configured model and executes tools to read and write workspace files, run shell commands and tests, and use web or MCP tools. For work that benefits from parallelism, Swarm assigns tasks to specialist agents in a shared work directory and reconciles the results into one answer. The memory engine records project facts and fixes verified by real command results for later conversations. The web interface and veil CLI use the same server. Optional Cloudflare integrations add Workers AI, R2 backups, cloud deployment tools, and Tater goal loops.
- A solo developer wants to split a feature across file-level tasks, have agents work in parallel, and review the combined result.
- An engineer maintaining an existing codebase wants later sessions to retain project conventions, recent changes, and verified fixes.
- A developer using Ollama or the built-in model wants a local coding workflow without first deploying a separate model service.
- A developer wants to reach a project on their workstation from a phone or another device through the web interface.
- A Cloudflare user wants agents to deploy Workers, work with R2, or run unattended goal loops in their own account.
How do you install or deploy this agent?
Download the veil-… release bundle for your operating system from GitHub Releases, unzip it, and launch the app. The built-in model requires a separate weights download; you can instead choose Ollama or an OpenAI-compatible endpoint. Coding tools require Python on PATH, and some checks also use Node. Building from source is documented for contributors and requires Zig 0.16+.
How do you use this agent?
Start the desktop app:
veilRun only the server:
veil --server-onlyFor the built-in model, download the-veil-12b in the app or run:
veil model pullThen choose a model and project in Chat and submit a concrete task—for example, ask it to add a missing input-validation test, make the smallest needed fix, and run the relevant tests. Review the diff and test output. You can also use veil <verb> to drive the running server over HTTP. Model settings can select Ollama or a compatible endpoint; documented environment variables include NL_LLM_BASE_URL, NL_LLM_MODEL, and NL_LLM_KEY. Cloudflare login is optional and uses your own Cloudflare account.
What are this agent's strengths and limitations?
- Swarm can split work among specialist agents that edit real files in a shared work directory and reconcile their results.
- The memory engine retains project knowledge and fixes verified by local command results for later sessions.
- The desktop, web app, and CLI share one server and
/api/v1surface, keeping project state and tool execution in one place. - Model choices include a built-in model, Ollama, and OpenAI-compatible endpoints; the built-in model can run offline.
- Coding tools need Python on
PATH, and some checks also need Node; without them, agents may be able to chat but unable to do much work. - Built-in model weights are a separate download. Hosted models, web tools, and Cloudflare backups send feature-related data to the connected services.
- The README says the server binds to
0.0.0.0by default, so network reachability needs consideration. - Cloud deployment, R2, and Tater features require your own Cloudflare account and may incur provider usage charges.
How does this agent compare with similar options?
Compared with a coding tool that assigns work to one assistant, The Veil can split tasks among specialist agents working in a shared directory, and it stores project memory for later sessions. The README also lists a built-in model, local Ollama, and OpenAI-compatible endpoints as model paths.
Key facts side by side with the most closely related agents.
| Agent | Source review | Form / cost | Stars | Updated | Language | Full support on |
|---|---|---|---|---|---|---|
| The Veil This agent | 65 · Some gaps | Desktop appFree + model costs | ★ 108 | 1d ago | Zig | OpenAI API |
| Locally Uncensored | 64 · Some gaps | Desktop appFreemium | ★ 2.4k | today | TypeScript | OpenAI API · Claude API |
| agentty | 44 · Major gaps | CLIFree + model costs | ★ 625 | today | C++ | OpenAI API · Claude API |
| OpenClaude — Universal Terminal AI Coding Agent | 42 · Major gaps | CLIFree + model costs | ★ 34k | today | TypeScript | Claude Code · OpenAI API · Claude API |
How does FollowAgents rate this agent?
Why each dimension lost points
The README describes required and optional Cloudflare scopes, consequences of declining them, credential storage and disconnection, workspace file-transfer constraints, and data flows. These remain documentation claims; the supplied files do not include implementation code to verify them, so trust does not receive full marks. The workflows use pinned major-version GitHub Actions, but the material shows no dependency audit or immutable pinning policy, so dependency security scores 1. Cloud deployment and tool calls have external effects, and the supplied evidence does not establish per-action confirmation, so external effects score 1. Runtime edits are said to be reversible and update recovery documentation is linked, earning 2 for rollback. Maintainer attribution is present, but publisher identity is unverified, so source attribution scores 1.
The README and workflows align on Zig version, platform builds, the check script, and model-sync process, supporting scores of 2 for self-consistency and dependency availability. The README describes limitations when Python or Node is missing, port-conflict handling, and failure details, but the supplied evidence cannot establish diagnosability across all failure paths, so failure messages score 2.
The README covers local models, Ollama, compatible endpoints, desktop and CLI use, multiple platforms, and cloud scenarios, and gives a first-task flow; audience and scenarios score 3. It explains several capability and permission boundaries, but does not fully document the limits of many advanced features, so capability boundaries score 2. Cloudflare tools are described as available only when credentials are present, but trigger and delegation conditions for the broader agent system are incomplete, so trigger precision scores 2. Windows, macOS, and Linux appear in the build matrix, with Python, Node, and model-download requirements noted; environment compatibility detail remains limited, so environment fit scores 2.
The README organizes features, setup, installation, and guides with links to further documentation, earning 2 for information architecture. It gives requirements and a first-task flow, but the supplied excerpt does not show complete platform-specific installation steps, so install notes score 2. Names have changed from Tater-tot to Taters and include project-specific labels such as Gary's 4tope, so naming stability scores 1. The README provides a task example, guides, and a feedback route; examples and FAQ score 2. It discusses costs, external services, Python and Node, permissions, and offline use, but the limitations are not exhaustive, so known limitations score 2. The repository provides a complete MIT license text, earning 3. Version numbers, release notes, and release workflow are clearly documented, earning 3. The README calls this a solo project and provides contact and issue-reporting routes, but publisher identity is unverified and maintenance arrangements are limited, so maintenance responsibility scores 2.
The README describes parallel agents, project memory, tools, model choices, and a desktop workspace, and tells users to inspect diffs and test results. Output usability scores 2 because the supplied materials do not independently substantiate the described behavior. Parallel work and persistent memory have clear proposed value, but the evidence does not quantify comparative gains, so marginal value scores 2. A local path and cloud-cost disclosures are provided, along with model-download and hosted-service cost notes; the cost-benefit discussion is still incomplete, so cost benefit scores 2.
The README links feature claims to release notes, guides, and source documentation, while workflows identify checks and build steps, earning 2 for claim traceability. The supplied material contains a README, license, and two workflows, but no product source or independent corroboration for security and feature claims, so cross-source corroboration scores 1. The README distinguishes product description, permission behavior, and some release changes, but many strong claims lack independent support, so fact-inference separation scores 2.
- This review uses only the supplied README, MIT license, and two GitHub Actions workflows. Product security, tool permissions, and functionality were not checked against implementation code, and nothing was executed.
- Cloudflare scope, credential, backup, and deployment behavior are README claims. Before connecting a cloud account or enabling deployment tools, users should verify the actual permissions and target account.
- Hosted models and tools may incur service charges and transmit data needed for those features. The built-in model requires a separate download; coding tools require Python, and some checks require Node.
Recent releases
Latest entries from the project's GitHub Releases. Notes are quoted from upstream as written, not rewritten or tested by FollowAgents.
-
Release notes excerpt
the veil v1.1.25 What a swarm lineage proposes for its memory is now reviewed under that lineage, in the desktop's Swarm → Lineages view, with each proposal's whole text on screen. The chat's Memory tab goes back to holding only what the chat keeps for you. What changed - Lineage proposals moved to Swarm → Lineages. When a cast runs under a lineage id, its end-of-run judge and habit miner propose lessons, skills, habits and facts for that lineage's memory and hold them for review. The desktop drew every pending proposal, up to 16, in the chat's Memory tab, above your saved memo …View on GitHub ↗ -
v1.1.24 the veil v1.1.24
Release notes excerpt
the veil v1.1.24 Portable application downloads built from cleaned main commit [7b54f295](https://github.com/gary23w/nl-veil/commit/7b54f2950a8957cbcdf82f312a44407db1a832c0). Changes - The retired bundled security runtime and its deployment sources are excluded from the application and release bundles. Optional security tools connect to the managed service using an API key. - Source examples and documentation use sanitized data. …View on GitHub ↗ -
Release notes excerpt
Historical application downloads for this release are no longer distributed. Use the current main source. the veil v1.1.23 A chat no longer carries a compressed copy of its past. Every message is stored as it lands, and every request is built from that store: the turn's prefix, Gary's 4tope laid out over everything said and found earlier in the conversation, and the newest rounds word for word. This release also fixes a failure where a model's self-heal cut the turn's own instructions open and the chat lost its place for the rest of the turn, and Claude models since Opus 4.7 answer aga …View on GitHub ↗
FAQ
Do I have to pay for a model service to use The Veil?
What else is needed on first run?
PATH, and some checks use Node.