For Agents
Search the source of every Debian package by regex and get matches per file or aggregated per source package using an x-dcs-apikey header.
Install Jentic One Beta
Jentic One is a self-hosted execution layer for AI agents. It lets your agent call the Debian Code Search, or any other public or private API you need. You set the rules, the agent never sees your credentials, and every call is logged.
Two steps, two machines. Install the instance in a safe environment, then register your agent from wherever it runs.
Step 1: Jentic One Host machine
# On the machine that will host your Jentic One instance:
curl -fsSL https://raw.githubusercontent.com/jentic/jentic-one/main/tools/install.sh | shStep 2: Agent machine
# On the machine where your agent runs (keep this separate from the instance):
curl -fsSL https://raw.githubusercontent.com/jentic/jentic-one/main/tools/install.sh | sh
jentic register # connects your agent to your Jentic One instanceJentic One is in public beta. The setup above keeps your agent separate from the instance, which is what you want before using real credentials: an agent running as the same OS user as Jentic One can read its stored keys directly. Just evaluating? A single local install is fine to start. See the secure deployment guide for the tiers.
What an agent can do with Debian Code Search API.
Search across the full Debian source archive for a regular expression via GET /search
Aggregate the same regex search per source package using GET /searchperpackage to get unique-package results
Use Debian Code Search query operators (path:, package:, lang:) to scope a search by language or package
GET STARTED
Use for: Search Debian source for a regular expression, Find every Debian package that uses a specific function symbol, Look up which Debian packages contain a vulnerable code pattern, Search Debian source for usages of strncpy
Not supported: Does not handle binary package metadata, bug tracking, or Debian build infrastructure — use for regex search across Debian source code only.
Debian Code Search is a regex-capable search engine indexing the source code of every package in the Debian archive — billions of lines across tens of thousands of upstream projects. The public API exposes 2 endpoints over codesearch.debian.net/api/v1: /search returns matching source lines and /searchperpackage aggregates the same results per Debian source package. Authentication is an x-dcs-apikey header issued to registered users. The service is operated by the Debian project and primarily used by maintainers, security researchers, and license auditors investigating how a symbol or pattern appears across upstream code.
Paginate through long result sets via standard query parameters
Identify which upstream packages still contain a deprecated symbol or vulnerable pattern
Patterns agents use Debian Code Search API for, with concrete tasks.
★ Cross-Package Vulnerability Sweep
Security teams use Debian Code Search to find every package that contains a vulnerable code pattern — for example a known-bad regex or an unsafe API call. The agent issues a GET /searchperpackage query with the regex, collects the affected packages, and feeds them into a downstream advisory or patch workflow. Replaces grep against a local checkout of the entire archive.
Call GET /searchperpackage with a regex matching a known-bad strncpy pattern and return the list of affected source packages
Symbol Usage Discovery for Maintainers
Upstream maintainers need to know who depends on a function before they remove or rename it. Debian Code Search answers 'which Debian packages call my function?' in a single GET /search call with a regex pinned to the function name. The agent forwards the result into deprecation notices to give downstream maintainers a heads-up.
Search /search for the regex 'my_old_function\\(' and produce a list of packages that still call it
License and Copyright Auditing
License auditors inspect Debian packages for boilerplate copyright headers and unusual licence statements. The agent calls /search with regexes matching specific licence text and feeds matches into a compliance workflow. Catches packages that ship without expected GPL or BSD notices much faster than manual grep.
Call /search with a regex for a custom proprietary licence statement and report any matching package and file paths
Agent-Driven Code Search via Jentic
An AI agent connected to Jentic can answer 'where in Debian is X used?' without holding the raw API key. Jentic stores the x-dcs-apikey in its vault, executes /search or /searchperpackage on the agent's behalf, and returns parsed matches. The agent only specifies the query; everything from auth to pagination is abstracted away.
Search Jentic for 'search Debian source code', load the GET /search schema, execute it with query=^OPENSSL_init and return the first 10 matches
2 endpoints — debian code search is a regex-capable search engine indexing the source code of every package in the debian archive — billions of lines across tens of thousands of upstream projects.
METHOD
PATH
DESCRIPTION
/search
Run a regex search across Debian source code
/searchperpackage
Aggregate regex matches per source package
/search
Run a regex search across Debian source code
/searchperpackage
Aggregate regex matches per source package
Three things that make agents converge on Jentic-routed access.
Credential isolation
The x-dcs-apikey value is stored encrypted in the Jentic vault. Agents receive scoped execution access; the raw API key never enters agent context, and rotation can be handled centrally.
Intent-based discovery
Agents search Jentic by intent (e.g., 'search Debian source code') and Jentic returns the matching operation and parameter schema, so the agent can call /search or /searchperpackage without scraping vendor docs.
Time to first call
Direct Debian Code Search integration: a few hours to wire the x-dcs-apikey header and parse pagination. Through Jentic: under 15 minutes — search, load, execute.
Alternatives and complements available in the Jentic catalogue.
GitHub API
GitHub's code search covers public GitHub repositories rather than the Debian archive
Choose GitHub when the target is upstream open source on GitHub; choose Debian Code Search when the target is everything Debian packages and ships
Specific to using Debian Code Search API through Jentic.
What authentication does the Debian Code Search use?
Debian Code Search uses an API key supplied in the x-dcs-apikey HTTP header. Keys are issued by the Debian Code Search service to registered users. Through Jentic the key is stored in the vault and never enters agent context.
Can I run a regex search across all Debian source code?
Yes. GET /search accepts an RE2 regex via the q parameter and searches every indexed Debian source file. For deduplicated package-level results, call /searchperpackage with the same query so the response groups matches by source package.
What are the rate limits for the Debian Code Search?
Debian Code Search does not publish a fixed public rate limit, but the service is operated by volunteers and enforces fair-use throttling. Back off on HTTP 429 responses and avoid running unbounded queries with very broad patterns.
How do I aggregate matches per package through Jentic?
Search Jentic for 'aggregate Debian code search matches per package', load the GET /searchperpackage schema, and execute it with the regex query. Jentic injects the x-dcs-apikey from the vault and returns one result per source package.
Does the Debian Code Search support full-text searches without regex?
All searches are RE2 regex queries. To match literal text, escape regex metacharacters before submitting the query — for example `strncpy\\(` to find calls to strncpy. The query language also supports filters such as path:, package:, and lang: to narrow the scope.