VFault — AI Hallucination Detector for VS Code
Verification at the fault lines.
VFault catches hallucinated function names, deprecated APIs, and outdated parameters in AI-generated code. It checks against parsed source code — no AI in the verification layer.
Works with VS Code and Cursor.
What it does
When you save a PHP, Python, JavaScript, or Laravel file, VFault sends the function names to the VFault API and marks them inline:
- 🔴 Red underline — Function not found in any known API. Likely hallucinated by your AI assistant. Hover for suggestions.
- 🟡 Yellow underline — Function exists but is deprecated. Hover for the replacement.
- 🟢 Green dotted underline — Function verified. Hover for version info.
Quick-fix code actions let you replace hallucinated names with the correct function in one click.
Features
- Verify on save — automatic, debounced, no keystroke noise
- Command palette —
VFault: Verify Current File for manual trigger
- Verify selection — check just the code you've highlighted
- Look up function — query a single function name from the palette
- Status bar — live summary: "VFault: 12 verified, 2 issues"
- Quick fixes — one-click replacements for hallucinated function names
- Autocomplete — VFault suggests verified function names as you type
- Hover details — full verification info on hover
- Per-language toggle — enable/disable for PHP, Python, JS, Laravel independently
- Custom API URL — point at your own VFault instance or the public API
Supported shards
| Shard |
Status |
| WordPress |
✅ Free, live now |
| Python |
🔒 Paid tier (coming soon) |
| JavaScript |
🔒 Paid tier (coming soon) |
| Laravel |
🔒 Paid tier (coming soon) |
Getting started
- Install the extension from the VS Code Marketplace
- Open any PHP file containing WordPress function calls
- Save the file — VFault highlights issues automatically
- Hover over underlined functions for details
- Use the lightbulb (quick fix) to replace hallucinated names
No API key required for the WordPress shard.
Settings
| Setting |
Default |
Description |
vfault.apiUrl |
https://exceedweb.pythonanywhere.com |
VFault API base URL |
vfault.verifyOnSave |
true |
Verify automatically on file save |
vfault.enabledLanguages |
All enabled |
Enable/disable per language |
vfault.showVerifiedHints |
true |
Show green indicators on verified functions |
vfault.debounceMs |
500 |
Delay before API call after save |
Commands
| Command |
Description |
VFault: Verify Current File |
Manually verify the active file |
VFault: Verify Selection |
Verify only the selected code |
VFault: Look Up Function |
Look up a single function by name |
VFault: Clear Diagnostics |
Remove all VFault underlines |
How it works
VFault is a deterministic verification gateway. It parses your code to find function calls, then checks each one against curated API shards built from real source code. No LLM in the loop — the verification layer is pure lookup against parsed, versioned function signatures.
This means:
- Zero false confidence — if VFault says it's verified, the function exists in the source
- Deprecation warnings include the exact version it was deprecated and the replacement
- Suggestions for hallucinated names come from fuzzy matching against real functions
Links
Built by Ian Fraser / Exceed Web Services