Open source
Use, modify, and distribute Phantom's local-first core under MIT.
- CLI, local vault, proxy, and MCP server
- No seat count or local-secret limit imposed by Phantom
- Community support through GitHub
- Self-directed deployment and validation
Use the local-first core under MIT. Contract separately for an enterprise or government evaluation, integration work, and support commitments tailored to a named environment.
Use, modify, and distribute Phantom's local-first core under MIT.
Contract for evaluation, integration, and support around the MIT core.
Evaluate a local-first workflow against a named public-sector environment.
The MIT License already grants the core software rights. A commercial agreement covers only its stated services, deliverables, support commitments, and acceptance criteria.
A useful first conversation
We start with a reversible, non-production workflow and define what evidence would justify the next decision. Scope, price, schedule, and support terms exist only when written and agreed.
Current commercial boundary
A source implementation or passing test does not prove a hosted service, external certification, provider commissioning, or customer acceptance. Those require their own evidence.
Phantom addresses a narrow boundary: supported agent-driven HTTP requests can use configured credentials without placing provider values in the agent's dotenv context. This compares Phantom's managed path with giving an agent a plaintext dotenv value; it is not a vendor feature benchmark.
| Capability | Phantom | Plaintext agent .env |
|---|---|---|
| Value-blind managed agent path | Yes | No |
| Open source | Yes | — |
| Local-first vault | Yes | — |
| MCP-native (supported clients) | Yes | No |
| Staged dotenv and prefix checks | Yes | No |
| Fresh proxy authorization per exec session | Yes | — |
| Configured-upstream boundary for supported HTTP routes | Yes | No |
Review questions
Security claims are useful only when their assumptions and failure modes are visible. For a question not covered here, open a GitHub issue or email mason@ashlr.ai.
127.0.0.1. Request bodies are collected under byte and time limits; response streams remain bounded and incremental. Measure overhead in your own workload before adopting it on a latency-critical path..env file contains phm_xxxxxxxx tokens instead of real values. In the managed workflow, supported clients read those placeholders rather than provider values from the rewritten dotenv file. phantom exec gives the child fresh placeholders and a separate proxy bearer. On an exact supported route, the proxy injects only that route's vault value into its fixed auth header; client headers and bodies never resolve placeholders. Other files and unmanaged processes remain outside that boundary. Human plaintext reveal is a separate trusted-terminal action with no noninteractive bypass..env placeholder persists until you rotate it; it is not the provider credential and is not sufficient by itself to use the authenticated local proxy. phantom exec separately creates fresh session phm_ values and a fresh PHANTOM_PROXY_TOKEN for the child process. Treat a leaked placeholder as sensitive metadata and run phantom rotate.Zeroizing<String> buffers that zero those allocations on Drop. This is defense in depth, not a guarantee that every plaintext copy is erased from process or OS memory. Phantom's managed init path writes the vault before atomically replacing dotenv values and does not create a plaintext project-local backup. Existing backups, logs, and unmanaged tools are outside that boundary.phm_ placeholders. Bodies are collected under explicit byte/time limits and forwarded byte-for-byte. Only an exact matched route can inject its own vault value into its fixed authentication header..envbackup during init. Keep an independent provider recovery path before migrating. phantom unwrap only reverses package-script wrapping; it does not restore dotenv values. To leave, recover or rotate credentials through the provider, update your dotenv file in a trusted terminal, then remove Phantom configuration.