
Security News
RubyGems Adds Cooldown Feature to Bundler for Newly Published Gems
RubyGems and Bundler 4.0.13 introduced an opt-in cooldown feature that delays newly published gems during dependency resolution.
Security scanner for AI-generated apps (Cursor, Lovable, Windsurf, v0). Catches hardcoded secrets, prompt injection, hallucinated imports, Server Actions / Edge runtime mistakes, and the vibe-coded vulnerabilities traditional linters miss.
Security scanner for AI-generated apps. Catches the bugs Cursor, Lovable, Windsurf, v0, and Claude routinely ship: hardcoded LLM keys, prompt-injection sinks, leaked Server Actions, hallucinated imports, missing auth on streaming endpoints, and the other "looks fine to a linter" issues that traditional tools miss.
# One-shot, no install
npx ubon@latest check
# Or install globally
npm install -g ubon
ubon check
ubon check # fast static scan, exit 1 on errors
ubon scan --interactive # walk through findings one by one
ubon check --json # deterministic JSON for agents/CI
ubon rules list --json # machine-readable rule catalog
ubon check --sarif out.sarif # SARIF 2.1.0 for GitHub code scanning
ubon mcp # serve as an MCP tool to your AI assistant
ubon doctor # check environment and optional deps
Modern AI coding assistants are great at producing code that runs. They are routinely careless about code that's safe to deploy:
import.meta.env.PUBLIC_* reading server-only values'use client' files importing from actions/Ubon's job is to catch those, fast, with high confidence and file:line
context — and to expose them to the agent itself via JSON / NDJSON / MCP
so the AI can fix what it broke.
v3.2.0 is an additive release for agentic development workflows: installable guardrails, richer machine-readable output, and a validation harness that proves Ubon catches planted AI-era bugs before a release ships.
ubon agent install --all --write can generate
Cursor, Claude Code, Codex, pre-commit, GitHub Actions, and .gitignore
harness files from one dry-run-first workflow.CC009–CC011): catches unknown Cursor hook
events, broad agent autonomy, and dangerous reusable commands / skills.ubon changed, ubon verify, ubon review,
ubon rules list --json, and presets for agent, ci, release, and
local workflows.baseSha, verification,
status, rule catalog access, and fix planning.npm run verify:release.npm run dogfood scans Ubon itself and must pass
with 0 unsuppressed critical findings before publish.For the original v3 breaking changes (Node 20+, removed Python / Rails / Vue profiles), see MIGRATION-v3.md.
| Capability | Ubon | ESLint | npm audit | Lovable scanner |
|---|---|---|---|---|
| LLM / vector-DB hardcoded secrets | ✅ | ❌ | ❌ | ⚠️ Partial |
| Prompt-injection sinks | ✅ | ❌ | ❌ | ❌ |
| Server Actions / Edge runtime checks | ✅ | ❌ | ❌ | ❌ |
| Supabase RLS validation | ✅ | ❌ | ❌ | ⚠️ Existence |
| Insecure cookies / CORS / redirects | ✅ | ❌ | ❌ | ❌ |
| Client env-var leaks (Next/Vite) | ✅ | ❌ | ❌ | ❌ |
| Accessibility basics | ✅ | ⚠️ Plugins | ❌ | ❌ |
| Dependency advisories (OSV) | ✅ | ❌ | ✅ | ❌ |
| MCP server for AI agents | ✅ | ❌ | ❌ | ❌ |
| Code style / formatting | ❌ | ✅ | ❌ | ❌ |
Use them together. ESLint covers code style; npm audit covers CVEs in your dependency tree; Ubon covers the gap that AI assistants regularly leave behind.
ubon agent install --cursor --write # writes Cursor hooks + rules
Then point Cursor at the MCP server:
// ~/.cursor/mcp.json
{
"mcpServers": {
"ubon": { "command": "npx", "args": ["-y", "ubon@latest", "mcp"] }
}
}
Full Cursor + Lovable + comparison details in docs/INTEGRATIONS.md.
The demo fixture in examples/ai-harness-demo
contains the kinds of issues AI agents often leave behind: an LLM key in
source, server-side fetch to a user-controlled URL, a misspelled Cursor hook,
and a reusable agent command that pipes network output into a shell.
ubon check -d examples/ai-harness-demo --preset local
The expected rule IDs are checked by the test suite so the demo stays honest.
ubon init # writes ubon.config.json
ubon check --update-baseline # accept current findings as baseline
ubon check --baseline .ubon-baseline.json --focus-new --fail-on error
// ubon.config.json
{
"profile": "next",
"minConfidence": 0.85,
"failOn": "error",
"disabledRules": ["VIBE003"],
"exclude": ["legacy/**"]
}
For the JS variant (executes user code), pass --allow-config-js or
set UBON_ALLOW_CONFIG_JS=1.
--git-changed-since and the git-history scanner)@modelcontextprotocol/sdk for ubon mcp — installed
automatically as an optionalDependency of ubon. If your install
flags skipped it, see docs/MCP.md.Run ubon doctor to verify.
I'm Luisfer Romero Calero. I built Ubon because the gap between "AI shipped this" and "this is safe to deploy" keeps widening. The tool's name comes from the lotus (อุบล) in Thai — clarity in the middle of vibe-coded chaos.
If Ubon helps you ship safer apps, the highest praise is to wire it into your CI and your AI assistant — and tell me what it caught.
MIT — see LICENSE.
FAQs
Security scanner for AI-generated apps (Cursor, Lovable, Windsurf, v0). Catches hardcoded secrets, prompt injection, hallucinated imports, Server Actions / Edge runtime mistakes, and the vibe-coded vulnerabilities traditional linters miss.
The npm package ubon receives a total of 24 weekly downloads. As such, ubon popularity was classified as not popular.
We found that ubon demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Security News
RubyGems and Bundler 4.0.13 introduced an opt-in cooldown feature that delays newly published gems during dependency resolution.

Security News
pnpm 11.5 now recognizes npm staged publish approvals in release metadata, preventing those releases from being mistaken for lower-trust package publishes.

Security News
Federal audit finds NIST lacked a plan to clear the NVD backlog, wasted funds on duplicate work, and delayed use of CISA data.