Signal Scout

The AI development stack, mapped

Every technology we watch sits at exactly one place here. Counts are distinct public repositories observed using it, on one shared scale, and a repository can appear in several categories at once, so a layer total is smaller than its categories added up. A category marked pending is one we have named and sized but do not detect yet, so it reads as empty rather than absent.

Indicator set v0.9.2388,317 repositoriesTypical repo last observed 2026-09-16
▶

Built With AI

2 categories103,029

Evidence that AI tools wrote the code, which is a different question from what the code ships.

▶Coding Agents6103,029

Config left behind by AI coding tools, which measures how software is being built rather than what it ships.

Claude Code69,709
AGENTS.md57,204
Cursor8,417
GitHub Copilot5,460
Gemini CLI3,692
Google Antigravity18
▶Built By Agents9pending

Bot authorship in commit history. Needs event data, unlike Coding Agents which is file presence. GitHub-wide aggregate only, last computed 2026-08-02.

Aider0
Claude Code0
Copilot SWE agent0
Cursor0
Devin0
GitHub Copilot0
Jules0
Lovable0
OpenAI Codex0
▶

Agent Runtime

2 categories38,630

What an agent is actually built on.

▶Agent Frameworks2726,159

Runtimes whose whole purpose is building agents, so a single dependency is enough to classify a repo.

LangGraph15,902
Claude Agent SDK3,043
CrewAI2,147
OpenAI Agents1,310
Google ADK1,283
Pydantic AI776
Cloudflare Agents616
AutoGen607
DeepAgents531
Strands500
Agno465
smolagents321
DSPy318
Mastra269
AG298
Genkit92
Microsoft Agent Framework80
Azure AI Foundry70
Inngest AgentKit64
CAMEL35
Microsoft 365 Agents SDK11
VoltAgent7
Griptape6
Atomic Agents4
Letta4
Langroid3
Teams AI1
▶Orchestration and RAG521,858

Chain, retrieval and workflow layers that support agents without being agent runtimes themselves.

LangChain21,171
LlamaIndex829
Haystack137
Semantic Kernel118
n8n7
▶

Agent Protocols

1 category74,723

The protocols an agent uses to reach things beyond its own process: tools and data, and increasingly other agents.

▶MCP Adoption274,723

Repos touching the Model Context Protocol in any role. The SDK builds servers and clients alike and .mcp.json is a client config listing the servers an agent connects to, so this is a count of MCP adoption and not a count of MCP servers: 42% of it is classified as something other than a server.

Anthropic62,425
FastMCP7,196
▶

Production Infrastructure

7 categories23,543

What an AI application has to handle once it works: remembering, watching, and constraining itself.

▶Tracing and Runtime Observability136,816

Tools that record what an AI system actually did in production: every model call, the prompt, the reply, the tokens and the cost, nested into a replayable trace. Runtime only.

LangSmith5,096
Langfuse1,562
Arize Phoenix146
Opik (Comet)64
Traceloop59
AgentOps51
Literal AI41
Weights & Biases Weave40
Laminar38
LangWatch16
OpenLIT15
Langtrace7
Lunary2
▶Evaluation and Testing101,382

Tools that score model output against test cases, usually before shipping rather than in production. Separate from Tracing because passing a test suite says nothing about whether the running system is observable.

Ragas980
DeepEval315
Braintrust89
Promptfoo89
TruLens7
Galileo3
Athina1
UpTrain1
Patronus AI0
phospho0
▶AI Red Teaming and Scanning839

Tools that attack or scan an AI system to find its weaknesses, as opposed to the runtime filters in Guardrails that try to stop an attack while it happens. Kept separate because conflating them would let offensive testing inflate a claim about defensive coverage.

garak19
PyRIT13
DeepTeam5
Giskard5
HiddenLayer3
ModelScan1
Snyk1
Agentic Radar0
▶Unguardrailed Model Access17

Repos reaching a model whose safety behaviour has been deliberately removed, served over an API so nothing appears in a dependency manifest. Counts are floors: only files the content pass fetches are searched.

abliteration.ai7
▶Guardrails and AI Security12557

PII redaction, prompt-injection filtering and policy enforcement. The smallest category here by a wide margin, which is itself the finding.

Microsoft Presidio382
NeMo Guardrails89
Guardrails AI60
LLM Guard27
Azure AI Content Safety21
LangKit7
LlamaFirewall5
OpenAI Guardrails5
Rebuff2
Invariant Guardrails1
Prediction Guard1
ZenGuard0
▶Agent Sandboxing and Isolation7629

Runtimes that contain what an agent process can do: filesystem, network, process and credential scope, enforced outside the model. Separate from Guardrails because containment and content filtering are different controls, and conflating them would let sandbox adoption inflate a claim about filtering coverage. Counts are floors: the control plane is often a hosted service reached by API key, and OpenShell also ships a curl-installed CLI and Go and Rust SDKs that no npm or pypi manifest records.

E2B415
Daytona190
Cloudflare Sandbox39
microsandbox14
NVIDIA OpenShell14
Riza12
CodeSandbox2
▶Vector and Memory818,553

Vector stores and agent memory. A vector store alone is not an AI signal, so these are corroborating rather than classifying: some carry no LLM client at all.

Chroma9,082
FAISS5,907
Qdrant2,746
Pinecone1,502
LanceDB776
Milvus492
Mem0488
Weaviate288
▶

Model Access

3 categories62,016

How a repo reaches a model it does not run itself.

▶Model Providers1152,884

Repos calling a model vendor's own API directly, which is the baseline every other layer is measured against.

OpenAI36,892
Anthropic18,077
Google7,635
Vercel AI SDK3,607
AWS453
Mistral AI452
Cohere291
DeepSeek265
Azure AI Foundry206
xAI78
Azure OpenAI40
▶Model Routers and Gateways44,511

Repos putting one interface in front of several providers; adoption here is the clearest signal of a team refusing to be locked to one model, though router use inside a wider platform is not separable from ordinary calls.

LiteLLM3,896
OpenRouter573
Portkey57
Helicone2
▶Hosted Inference811,964

Third-party endpoints serving open models, still undercounted after reseeding because most are OpenAI-compatible and reached through the openai package with a changed base URL that no manifest records.

Groq9,639
Hugging Face3,529
Together AI265
Fireworks AI105
Cerebras97
SambaNova2
Novita1
DeepInfra0
▶

Self-Hosted Models

2 categories4,044

Running a model you control, rather than calling one you do not.

▶Model Hosting and Serverless53,933

Platforms for running your own model rather than calling someone else's.

Ollama3,210
Replicate408
Modal336
Anyscale1
Baseten1
▶GPU Rental2114

Raw compute marketplaces, and a near-empty line even after we went looking properly: seeding these packages' dependents moved it from 18 repos to 104, which is still almost nothing, because renting a machine happens through a dashboard or SSH that no manifest records.

RunPod106
Vast.ai8
▶

Recorded about every repository

not part of the stack

Captured on every pass, and what the security and hygiene figures elsewhere on this site are measured from.

▶Repository Metadata—

Fields re-read for every repo on every wave. The changing ones are the time series.

▶Repository Lifecycle—

Gone and renamed repos, recorded as first-class events instead of silently dropped. The strongest irrecoverable category.

▶Manifests and File Tree—

Raw manifests stored per wave. Every dependency claim is recomputed from these.

▶Security Posture—

The SECURITY.md and lockfile evidence behind the published security claims.

▶Ops Maturity—

Containerisation and CI, as a proxy for whether a repo is a real project.

▶AI Discoverability—

Whether a repo publishes for machine readers.

▶Exclusions—

Negative indicators. Always an explicit exclusion_reason, never a silent penalty.

▶Owner Attribution—

Turning a repo into an organization, and the limits on doing so.

Why MCP Adoption reads 74,723 here and the home page says 55,423. They measure different things. This page counts repos touching MCP in any role, clients and frameworks included, because the SDK builds servers and clients alike. The home page counts repos the classifier judges to be an MCP server. 41,801 satisfy both, which is the conservative number to reach for.

This taxonomy is versioned with the indicator set and changes as the ecosystem does. Counts come from public repositories only, and several categories are structurally undercounted for reasons worth reading before quoting them: see how this is measured. If a category looks wrong to you, it probably is for your corner of the market, and we would rather hear it.