aigently
Securely feeds summarized expert security rules into your coding assistance Claude Code, Cursor, etc — zero config, no API key.
README
The open-source CVE catalog, pipeline, and MCP server behind aigent.ly. Every day, CI ingests fresh CVEs from five public threat sources, enriches them with AI-generated coding patterns, and commits ready-to-use security rules directly into this repo — formatted for Cursor, Claude Code, Windsurf, GitHub Copilot, and Cline.
"We open-sourced everything the community needs — the data, the pipeline, the stack registry. The web app that runs aigent.ly is private. Because a security product should practice what it preaches."
How it works
CVE published → pipeline detects it → Claude generates safe-code patterns
→ rule committed to this repo → your IDE enforces it while you type
AI coding assistants write production code fast. They don't know which CVEs affect your stack today, or how to write around them. Aigent.ly bridges that gap: it turns a live CVE feed into IDE rules that travel with your project, enforced at generation time — not discovered at audit time.
Repository layout
| Path | Contents |
|---|---|
packages/catalog-data/ |
Live threat snapshots — JSON committed daily by CI |
packages/mcp-server/ |
MCP server (@aigently/mcp-server) — exposes catalog to AI agents |
packages/db/ |
Drizzle schema shared between the pipeline and the web app |
packages/mvp-catalog/ |
Stack registry — add a stack entry here to onboard it |
packages/api-client/ |
TypeScript client generated from the OpenAPI spec |
pipeline/scripts/ |
sync, amplify, summarize, synthesize, export — the full pipeline |
.github/workflows/sync-threats.yml |
Daily CI: ingest CVEs → AI guardrails → commit |
Quick start
No API keys needed. CI commits fresh snapshots daily — just clone and use.
git clone https://github.com/aelbuni/aigently-catalog
cd aigently-catalog
npm install
cp pipeline/.env.example pipeline/.env # default DATABASE_URL matches docker-compose
npm run db:setup # start Postgres, migrate, seed
Use via MCP (recommended)
Add to your IDE's MCP config — works with Claude Code, Cursor, Windsurf, Copilot, and Cline:
{
"mcpServers": {
"aigently": {
"command": "npx",
"args": ["-y", "@aigently/mcp-server@latest"]
}
}
}
The MCP server reads static JSON from packages/catalog-data/ — no database or API keys required.
Available tools
| Tool | Description |
|---|---|
get_security_context |
Detect your stack and return relevant rules and top CVEs |
compose_guardrail |
Generate an IDE-ready rules file for your stack |
search_threats |
Full-text and faceted CVE search |
get_threat |
Full CVE detail with AI-generated safe-code patterns |
detect_project_stack |
Identify stack from a file list |
Threat intelligence pipeline
Sources
The pipeline aggregates five public threat sources and normalizes them into a single schema:
| Source | Contribution |
|---|---|
| NVD (NIST) | Authoritative CVE registry. Fills in CVSS scores and CWE IDs after deduplication. |
| CISA KEV | US government list of CVEs actively exploited in the wild. Sets isActivelyExploited as a hard prioritization signal. |
| GHSA (GitHub) | Advisory database across npm, pip, RubyGems, Maven, Go, Swift, and more. |
| OSV (Google) | Open-source vulnerability database. Queried per stack — scoped to packages your stacks use. |
| npm Audit | Direct package advisory scan per stack. Catches advisories not yet reflected in OSV or GHSA. |
Pipeline stages
Daily CI run (GitHub Actions, 06:00 UTC)
Ingest npm Audit + OSV + GHSA → raw advisories
Enrich CISA KEV flags + NVD severity/CWE fill-in
Filter CVEs published after 2023-01-01 (CISA KEV always included)
Persist write threats + stack associations to Postgres
Amplify Claude: 2–4 ALWAYS/NEVER patterns per CVE
Summarize Claude: cluster CVEs into per-stack rule docs
Synthesize Claude: merge into guardrail blocks (patterns + deps)
Export write JSON snapshots to packages/catalog-data/
Commit auto-push catalog-data/ to this repo
AI enrichment
Each new CVE goes through three Claude passes before it becomes an IDE rule:
- Amplify — Generates 2–4
ALWAYS/NEVERstatements specific to the CVE's attack vector, plus a one-sentence risk summary. - Summarize — Clusters CVEs by attack vector into per-stack rule documents with
ALWAYS/NEVER/WARN/CONFIRMdirectives. - Synthesize — Merges rules per stack into two pre-built guardrail blocks:
patterns(safe-coding directives) anddeps(dependency advisories).
Supported stacks
Next.js · Express · NestJS · Nuxt · React SPA · FastAPI · Django · Ruby on Rails · Go · iOS · Android
To add a stack: open packages/mvp-catalog/src/stack-registry.ts, add a StackConfig entry, open a PR.
Run the pipeline locally
# pipeline/.env — add your keys:
ANTHROPIC_API_KEY=... # required for amplify, summarize, synthesize
GITHUB_TOKEN=... # required for GHSA source
NVD_API_KEY=... # optional — increases NVD rate limit 10×
npm run sync:threats # ingest CVEs from all five sources
npm run amplify:threats # Claude: ALWAYS/NEVER patterns per CVE
npm run summarize:rules # Claude: cluster into per-stack rule docs
npm run synthesize:guardrails # Claude: pre-build guardrail blocks
npm run export:catalog # write JSON to packages/catalog-data/
Reference
All scripts
| Script | Purpose |
|---|---|
npm run db:up |
Start Postgres via Docker Compose |
npm run db:setup |
First-time setup: start Postgres + migrate + seed |
npm run db:migrate |
Apply Drizzle migrations |
npm run db:seed |
Full catalog seed |
npm run db:seed:upsert |
Non-destructive upsert |
npm run sync:threats |
Ingest CVEs from all five sources |
npm run amplify:threats |
AI-generate patterns for new threats |
npm run summarize:rules |
AI-cluster CVEs into rule summaries |
npm run synthesize:guardrails |
Pre-build per-stack guardrail blocks |
npm run export:catalog |
Export DB → packages/catalog-data/ JSON |
Environment variables
| Variable | Required | Purpose |
|---|---|---|
DATABASE_URL |
Always | Postgres connection string |
ANTHROPIC_API_KEY |
AI steps | Claude API access |
GITHUB_TOKEN |
Sync | GitHub advisory source (GHSA) |
NVD_API_KEY |
Optional | 10× NVD rate limit |
Prerequisites
- Node.js 22+
- Docker (for local Postgres)
- Anthropic API key (AI pipeline steps only)
Contributing
PRs are welcome. The highest-value contributions are:
- New stacks — add to
packages/mvp-catalog/src/stack-registry.ts - CVE curation — improve
mustLines,ruleContext, oralwaysPininpackages/catalog-data/seed-master.json - Pattern quality — open an issue if an
ALWAYS/NEVERline is wrong or too generic - New threat sources — add a module under
pipeline/scripts/lib/sources/
See CONTRIBUTING.md for full guidelines.
License
Apache 2.0 — threat data sourced from public domain (NVD, CISA KEV, GHSA, OSV).
Aigent.ly and the Aigent.ly logo are trademarks of Aigently, Inc.
推荐服务器
Baidu Map
百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。
Playwright MCP Server
一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。
Magic Component Platform (MCP)
一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。
Audiense Insights MCP Server
通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。
VeyraX
一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。
graphlit-mcp-server
模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。
Kagi MCP Server
一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。
e2b-mcp-server
使用 MCP 通过 e2b 运行代码。
Neon MCP Server
用于与 Neon 管理 API 和数据库交互的 MCP 服务器
Exa MCP Server
模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。