Global Settings (User-Scoped)

Global Settings is the personal configuration page for the current user. Settings configured here apply across all projects. It is accessible from the gear icon in the top navigation bar (far right).

Top bar — Global Settings icon

The page is divided into seven sections: LLM Providers, Agent Skills, Chat Skills, Tradecraft, API Keys & Tunneling, MCP Tool Plugins, and System.

Global Settings page overview


LLM Providers

Configure the AI model providers that power the agent. All providers added here become available in the model selector of every project's settings.

Each provider card shows its icon, name, type, and — for OpenAI-Compatible entries — the model identifier. You can edit, delete, or test each provider from its card.

Click Add Provider to register a new provider. Choose the type (OpenAI, Anthropic, Google Gemini, DeepSeek, GLM, Kimi, Qwen, xAI, Mistral, OpenRouter, AWS Bedrock, or OpenAI-Compatible), enter your credentials, and test the connection before saving. Each form includes a "Get API key →" link to the provider's official console.

For full details on supported providers, model discovery, and setup guides, see AI Model Providers.


API Keys

Store API keys for external OSINT and reconnaissance services. These keys are saved per-user in the database and are used by both the AI agent's tools and the recon pipeline at runtime.

FieldUsed byWhat it enables
Tavily API KeyAI Agentweb_search tool — CVE research, exploit lookups, and general web queries
Shodan API KeyAI Agent, Recon Pipeline, Uncovershodan tool -- internet-wide OSINT (host info, reverse DNS, domain DNS, passive CVEs)
SerpAPI KeyAI Agentgoogle_dork tool — Google dorking OSINT (site:, inurl:, filetype:). Free tier: 250 searches/month
PDCP API KeyAI Agentcve_intel tool — ProjectDiscovery vulnx CVE database (NVD + CISA KEV + EPSS + PoCs + Nuclei templates). Optional: works anonymously at 10 req/min; key lifts the rate limit. Free signup at cloud.projectdiscovery.io. The key is never written to docker-compose.yml, env vars, or build args — it lives only in your user settings and is silently injected per call.
NVD API KeyRecon PipelineNIST NVD API key — increases CVE lookup rate limit from 5 to 120 requests/30s
Vulners API KeyRecon PipelineVulners CVE database — alternative to NVD for vulnerability lookups with richer exploit data
URLScan API KeyRecon PipelineURLScan.io OSINT enrichment — higher rate limits and access to private scans
GitHub Secret Hunt TokenGitHub Secret Hunt, Tradecraft LookupPersonal Access Token (ghp_...) for the GitHub Secret Hunt module, which searches public GitHub for secrets mentioning your target, and for Tradecraft Lookup fetching a resource from GitHub. A read-only token is enough. Rendered in the GitHub & Supply Chain drawer.
Supply Chain GitHub TokenSupply ChainA SEPARATE ghp_... token, used only when Supply-Chain Scanning audits a private github.com repository (public repos clone anonymously). Kept apart from the Secret Hunt token so the two can be scoped differently and either can be revoked without stopping the other. Requires repo scope, and read:org for organization scanning; a fine-grained token scoped to the repositories you are allowed to scan is safer.
Censys API TokenRecon Pipeline, UncoverCensys Platform personal access token -- IP host data, open ports, TLS certs, ASN via Platform API v3. Free tier available at search.censys.io
Censys Organization IDRecon Pipeline, UncoverPaired with Censys API Token. Found on your Censys account page
FOFA API KeyRecon Pipeline, UncoverFOFA internet asset search enrichment -- IP:port pairs, HTTP titles, server headers, geolocation. Supports legacy (email:key) and modern (key-only) auth formats. Supports key rotation
OTX API KeyRecon PipelineAlienVault Open Threat Exchange — threat reputation, malware families, passive DNS, MITRE ATT&CK. Optional: OTX enrichment is enabled by default and works anonymously (1,000 req/hr). Adding a key raises the limit to 10,000 req/hr. Supports key rotation
Netlas API KeyRecon Pipeline, UncoverNetlas internet intelligence -- ports, HTTP response data, geolocation, TLS certs, DNS records, WHOIS. Supports key rotation
VirusTotal API KeyRecon PipelineVirusTotal reputation for domains and IPs — AV verdicts, reputation score, categories, JARM fingerprint. Free tier: 4 requests/minute (configurable). Supports key rotation
ZoomEye API KeyRecon Pipeline, UncoverZoomEye host search -- ports, service banners, device/OS fingerprints, geolocation, ASN, SSL info. Supports key rotation
CriminalIP API KeyRecon Pipeline, UncoverCriminal IP threat intelligence -- risk score, threat tags (VPN/Tor/proxy/C2/scanner), geolocation, abuse history. Supports key rotation

Secret Multiscanner

The Secret Multiscanner has its own key group, one key per source, rendered under the heading Secret Multiscanner on this page. They are deliberately separate from the github.com tokens above. A source whose key is mandatory cannot start until it is set, and the scan card names the missing one. Keys are stored per user and are never included in a project export.

FieldSourceMandatory?
Secret Multiscanner GitHub Tokengithub, github deleted commitsAlways. Unauthenticated GitHub allows only 60 requests/hour, which the scan exhausts immediately
Secret Multiscanner GitLab TokengitlabAlways
Secret Multiscanner Postman TokenpostmanAlways
Secret Multiscanner CircleCI TokencircleciAlways. The token defines the scan scope
Secret Multiscanner Travis CI TokentravisciAlways. The token defines the scan scope
Secret Multiscanner Docker TokendockerOnly for a namespace scan or private images. Docker Hub allows 10 anonymous pulls/hour per IP
Secret Multiscanner AWS Access Key ID / AWS Secret Keys3Unless "Use cloud environment IAM" is on
Secret Multiscanner AWS Session Tokens3Optional, STS credentials only
Secret Multiscanner GCP Service Account (JSON)gcsUnless "Without auth" or cloud-environment ADC is on
Secret Multiscanner Hugging Face TokenhuggingfaceOptional. Needed for private or gated assets
Secret Multiscanner Jenkins Username / PasswordjenkinsOptional. An exposed instance scans without them
Secret Multiscanner Elasticsearch Username / Password / API Key / Service TokenelasticsearchOptional. If secured, set exactly one of the three styles
Secret Multiscanner Git Username / Git TokengitOptional. Only for a private repository over HTTPS, or an ssh:// target

These keys can also be set inline from each source card in project settings, without leaving the form.

These keys are used exclusively by the Uncover target expansion module (GROUP 2b). They are optional -- uncover also reuses any Shodan, Censys, FOFA, ZoomEye, Netlas, or CriminalIP key configured above.

FieldUsed byWhat it enables
Quake API KeyUncover360 Quake cyberspace search -- asset discovery by service, certificate, and banner. Supports key rotation
Hunter API KeyUncoverQianxin Hunter cyberspace search -- Chinese threat intelligence platform. Supports key rotation
PublicWWW API KeyUncoverSource code search engine -- find websites using specific technologies, scripts, or snippets. Supports key rotation
HunterHow API KeyUncoverhunter.how internet search -- asset discovery and reconnaissance. Supports key rotation
Google Custom Search API KeyUncoverGoogle Custom Search JSON API (different from SerpAPI)
Google Custom Search CXUncoverProgrammable Search Engine ID -- paired with Google API Key above
Onyphe API KeyUncoverCyber defense search engine for exposed assets, threat detection, and attack surface management. Supports key rotation
Driftnet API KeyUncoverFast internet-wide port and service discovery. Supports key rotation

Each field is a secret input with an eye icon to toggle visibility. Signup links are provided next to each field to help you obtain a key. After entering or updating a key, click Save Settings to persist the change.

Note: All API keys are stored exclusively in the database via this page (user-scoped). They are not read from environment variables or project settings.

Key Rotation

Each API key field has a Key Rotation button on the right side. This lets you configure multiple keys per tool for automatic round-robin rotation to avoid rate limits.

Click the button to open the rotation modal:

  1. Extra API Keys — paste additional keys, one per line. These keys plus the main key form the rotation pool. All keys are treated equally.
  2. Rotate Every N Calls — after this many API calls, the system switches to the next key in the pool (default: 10).

Once configured, a badge below the field shows the total key count and rotation interval (e.g., "3 keys total, rotate every 10 calls").

Tip: Key rotation is especially useful for NVD (rate-limited to 5 requests/30s without a key), Shodan (paid plans have per-key quotas), the 7 OSINT threat intelligence tools (Censys, FOFA, OTX, Netlas, VirusTotal, ZoomEye, CriminalIP), and the Uncover-specific engines (Quake, Hunter, PublicWWW, HunterHow, Onyphe, Driftnet). With multiple keys, you can multiply your effective rate limit and avoid scan interruptions from per-key quotas.


Agent Skills

Upload and manage custom attack workflow skills (.md files) that teach the agent exploitation techniques beyond the built-in CVE, brute-force, and phishing workflows.

Each skill card shows the skill name, description, and upload date, with actions to edit description, download, or delete.

  • Upload Skill (.md) — select a Markdown file, enter a descriptive name and an optional short description (1-2 sentences used by the Intent Router for classification), then click Upload.
  • Edit description — click the pencil icon on any skill to update its description without re-uploading the file.
  • Delete — removes the skill and automatically disables it in all project configurations.

Uploaded skills appear as toggles in every project's settings, so each project can independently choose which skills to enable.

For details on writing skill files, classification, and built-in skills, see Agent Skills.


Chat Skills

Upload and manage on-demand reference skills for the AI agent chat. Unlike Agent Skills above (which drive attack classification and phase-aware workflows), Chat Skills are tactical reference docs -- tool playbooks, vulnerability guides, framework notes -- that you inject into the agent's context on the fly using /skill <name> in the chat.

Each skill card shows the skill name, description, category badge, and upload date, with actions to edit description, download, or delete.

  • Import from Community -- bulk-imports all reference skills from the community folder (agentic/skills/) into your library. The folder starts empty; click this to populate it with the 46 shipped skills (vulnerabilities, tooling, protocols, technologies, frameworks, Active Directory, cloud, post-exploitation). Skills with the same name are skipped.
  • Upload Skill (.md) -- upload a custom reference document with name, description, and category.
  • Delete -- removes the skill from your library.

Skills uploaded here become available via /skill <name> in all your chat sessions.

For full details on the /skill command, writing Chat Skill files, and the complete comparison with Agent Skills, see Chat Skills.


Tradecraft

Curate a personal catalog of trusted security knowledge URLs (HackTricks, PayloadsAllTheThings, CVE PoC repos, vendor research blogs, ...). Each enabled resource becomes a slug the agent can target through the tradecraft_lookup tool during the exploitation and post-exploitation phases.

Unlike web_search (which queries the open web through Tavily) or the FAISS Knowledge Base (which is pre-ingested at install time), Tradecraft is always live and always curated by you. The agent only sees what you explicitly trusted.

For the full lifecycle, type catalog, cache layer, and agent-session flow, see the dedicated Tradecraft Lookup page.

Resources screen

Tradecraft Resources list

The screen is laid out as:

ElementPurpose
Section headerTitle "Tradecraft Resources" with the Add Resource button on the right.
Intro line"Curated knowledge sites the agent consults during exploitation (HackTricks, PayloadsAllTheThings, CVE PoC repos, ...). On add, the agent fetches the homepage, builds a sitemap, and writes a short summary that becomes the tool's catalog entry. The agent only sees enabled resources."
Resource cardsOne card per saved URL, with the icon, name, type badge, URL link, sitemap entry count, last-verified timestamp, expandable summary, and the per-card action buttons.

Per-card fields

FieldMeaning
NameDisplay label (e.g. "HackTricks"). Used to derive the immutable slug (hacktricks, hacktricks-2, ...) that the agent passes as resource_id.
Type badgeAuto-detected one of mkdocs-wiki, gitbook, github-repo, cve-poc-db, sphinx-docs, agentic-crawl. While verifying, a verifying… spinner badge replaces it.
URLThe base URL clicked at verify time. Click to open in a new tab.
EntriesNumber of pages indexed in the sitemap (after deterministic build or agentic-crawl).
VerifiedRelative timestamp (e.g. 2h ago) of the last successful verify or refresh.
SummaryClick the expandable text to read the 250-350 word LLM-generated description that the agent will read at runtime.
ErrorRed error chip with a tooltip when verify failed (HTTP 404, thin homepage, GitHub rate limit, ...). The card stays usable in degraded form.
Enabled toggleDisabled resources are filtered out before the agent's tool docstring is built, so the agent literally cannot call them. Re-enabling re-exposes them on the next project load.

Per-card actions

ActionEffect
Refresh (circular arrow)Re-fetches the homepage, re-detects the type, rebuilds the sitemap, and rewrites the summary. Use this after a wiki redesign or repo rename. Crawl-type resources will pay the full LLM-driven loop again.
Edit (pencil)Opens the form to change name, URL, GitHub token override, cache TTL, or enabled flag. Saving a URL change re-triggers verify.
Delete (trash)Drops the database row, the cached pages on disk, and the SQLite index entries for that resource. Confirmation prompt required.

Verify is asynchronous. Adding a resource creates the row immediately so the card appears with a verifying… chip; the actual fetch + sitemap build + summary runs in the background. The settings page polls every 5 seconds while any resource is unverified, so the badge auto-updates when verify completes.

Add Tradecraft Resource modal

Add Tradecraft Resource modal

The modal has two halves: the Quick Add catalog at the top and the resource form below.

Quick Add (51 curated resources)

A scrollable list of hand-picked, well-maintained, openly-licensed reference sites, spread across all six resource types so users can populate the catalog with one click. Selecting a row fills Name and URL from the preset; you can still tweak them before saving. The chip on the right is just a hint — the backend always re-detects the type at verify time.

The presets are grouped by type below. Use this list to understand which resource type each well-known site falls into:

mkdocs-wiki
NameURLCoverage
HackTricksbook.hacktricks.wikiComprehensive offensive security wiki — web, AD, cloud, privesc, mobile
The Hacker Recipeswww.thehacker.recipesPentest methodology by ShutdownRepo — AD, web, infra, exploit-dev
CTF Field Guidetrailofbits.github.io/ctf/Trail of Bits CTF guide — vulns, RE, forensics, web, exploits
CTF101ctf101.orgBeginner CTF reference — crypto, forensics, RE, web, binex
gitbook
NameURLCoverage
Practical CTF (Jorian Woltjer)book.jorianwoltjer.comCTF + hacking technique notes (web, AD, crypto, binex, mobile)
ired.teamwww.ired.teamRed team / offensive security notes — AD, evasion, persistence
github-repo
NameURLCoverage
PayloadsAllTheThingsswisskyrepo/PayloadsAllTheThingsPayload library + bypass cheatsheets per vuln class
InternalAllTheThingsswisskyrepo/InternalAllTheThingsAD + post-exploitation cheatsheets
HardwareAllTheThingsswisskyrepo/HardwareAllTheThingsHardware/IoT pentest references — UART, JTAG, BLE, Zigbee
h4cker (Omar Santos)The-Art-of-Hacking/h4cker>10k curated hacking references, per-topic folders
PEASS-ngpeass-ng/PEASS-ngWinPEAS / LinPEAS / MacPEAS privilege-escalation suite
SecListsdanielmiessler/SecListsWordlists for usernames, passwords, URLs, fuzzing
awesome-pentestenaqx/awesome-pentestCurated meta-list of pentest tools, books, conferences
awesome-bug-bountydjadmin/awesome-bug-bountyBug-bounty programs, writeups, tools
awesome-cloud-security4ARMED/awesome-cloud-securityAWS / GCP / Azure cloud security tooling and writeups
awesome-web-hackinginfoslack/awesome-web-hackingWeb pentest tools, books, papers, vulnerable apps
awesome-android-securitysaeidshirazi/awesome-android-securityAndroid security learning path
xairy/linux-kernel-exploitationxairy/linux-kernel-exploitationCurated Linux kernel exploitation resources
Privilege-EscalationIgnitetechnologies/Privilege-EscalationLinux + Windows privesc cheatsheets
API-Security-Checklistshieldfy/API-Security-ChecklistBest-practices checklist for testing REST APIs
ctf-toolszardus/ctf-toolsCTF tool installer collection
OWASP CheatSheetsOWASP/CheatSheetSeriesConcise OWASP cheatsheets per topic
OWASP WSTGOWASP/wstgOWASP Web Security Testing Guide source markdown
OWASP MASTGOWASP/owasp-mastgOWASP Mobile Application Security Testing Guide
cheat.shchubin/cheat.shUnified CLI cheatsheets, security tools
awesome-iot-hacksnebgnahz/awesome-iot-hacksIoT security resources
awesome-malware-analysisrshipp/awesome-malware-analysisRE, sandboxing, YARA, packers
awesome-ctfapsdehal/awesome-ctfCTF tools and resources catalog
awesome-osintjivoi/awesome-osintOSINT investigation tools and frameworks
awesome-shodan-queriesjakejarvis/awesome-shodan-queriesCurated Shodan dorks
awesome-windows-domain-hardeningPaulSec/awesome-windows-domain-hardeningAD hardening + offensive playbooks
awesome-redteamyeyintminthuhtut/Awesome-Red-TeamingRed team operator resources
awesome-fuzzingcpuu/awesome-fuzzingFuzzing harnesses, frameworks, papers
cve-poc-db
NameURLCoverage
trickest/cvetrickest/cveAuto-aggregated CVE → public PoC index. Requires cve_id="CVE-YYYY-NNNNN"
0xMarcio/cve0xMarcio/cveAlternative CVE → PoC index with extended metadata
nomi-sec/PoC-in-GitHubnomi-sec/PoC-in-GitHubDaily-updated CVE PoC index scraped from GitHub repos
sphinx-docs
NameURLCoverage
Scapy docsscapy.readthedocs.ioPython packet crafting library — protocols, fuzzing, scapy.layers
Volatility 3volatility3.readthedocs.ioMemory forensics framework — plugins, OS profiles, Vol3 API
Mitmproxy docsdocs.mitmproxy.orgTLS-MITM proxy — addons, scripting, intercept replay
Sliver C2sliver.sh/docsOpen-source C2 framework documentation (BishopFox)
agentic-crawl
NameURLCoverage
0xpatrik (Patrik Hudak)0xpatrik.comSubdomain takeovers, OSINT, recon automation
Synacktiv publicationswww.synacktiv.com/en/publications.htmlFrench pentest firm writeups — AD, cloud, mobile, exploit-dev
Doyensec researchblog.doyensec.comBoutique appsec research — Electron, Java, GraphQL, Solidity
SpecterOpsposts.specterops.ioRed team / AD deep dives (BloodHound team)
Project Zerogoogleprojectzero.blogspot.comGoogle P0 vuln research — kernel, browser, mobile 0-days
Spaceraccoon (Eugene Lim)spaceraccoon.devWeb/cloud/IoT writeups, supply-chain, bug-bounty postmortems
Adsecurity (Sean Metcalf)adsecurity.orgAD attack/defense — Kerberos, ADCS, replication abuse
Trail of Bits blogblog.trailofbits.comCryptography, smart contracts, fuzzing, OS-level research
Tarlogic blogwww.tarlogic.com/blogSpanish pentest firm — Kerberos, AD, RT TTPs, threat intel
Assetnote researchblog.assetnote.ioAttack-surface management research and 0-days

Form fields

FieldRequiredDefaultNotes
NameyesFree-text label. The server derives slug from this with kebab-case + collision suffix. The slug is stable across renames so in-flight conversations and cache rows do not break.
URLyesThe homepage / base URL. Must be http:// or https://. SSRF guard: private, loopback, link-local, multicast, reserved, .local, .internal, and localhost are rejected at verify time. NXDOMAIN returns a separate explicit error.
GitHub Token Overrideno(user-level GitHub token)Per-resource GitHub PAT. Use it when one repo needs different permissions (e.g. an org-private cheatsheet) without changing the user-level token. Hidden by default; click the eye icon to toggle visibility. The dummy hidden username/password pair on the form blocks Chrome / 1Password from polluting this field with a saved login.
Cache TTL secondsno0 (use type default)Per-URL cache lifetime. Set 0 to inherit the per-type default (7d for wikis/repos, 14d for sphinx-docs, 30d for cve-poc-db, 1d for agentic-crawl). Use a short value for fast-moving blog feeds, a long value for static cheatsheets.
EnabledtoggletrueWhen unchecked, the resource is hidden from the agent's tool catalog on the next project load. Verify and refresh still work, so you can keep degraded resources around without exposing them.

Why no "type" field? Resource type is always auto-detected at verify time from the homepage HTML. A manual override would let users misclassify a site (e.g. mark a generic blog as mkdocs-wiki), which then breaks the sitemap builder. The chip on each Quick Add row is a hint, not a setting.

Resource type differences

The six resource types are not interchangeable — each one drives a different sitemap-extraction strategy, a different cache TTL, and a different at-query-time fetch path. Pick the right type or, equivalently, pick a URL whose homepage will trigger the right detector.

TypeDetection signalSitemap sourceBuild timeDefault TTL
mkdocs-wiki<meta name="generator" content="mkdocs/material"> or <!-- Book generated using mdBook --> or class="mdbook"/sitemap.xml (urlset or sitemapindex) → fall back to mkdocs.yml → fall back to rendered nav harvest~5s7 days
gitbookhost contains gitbook.io, application-name=gitbook, name="generator" content="gitbook", static-2v.gitbook.com, or data-rsc-router/sitemap.xml → fall back to a single Tier-2 Playwright nav harvest~10s7 days
github-repohost is github.com or raw.githubusercontent.com (and not a CVE repo)GitHub Trees API (GET /repos/{owner}/{repo}/git/trees/{branch}?recursive=1), filtered to .md, .txt, .rst files~3s7 days
cve-poc-dbGitHub repo whose name contains cve OR a homepage with >20 CVE-IDsJust {owner, repo, branch} — per-CVE lookups are deterministic by ID, so no tree enumeration~1s30 days
sphinx-docshost ends in .readthedocs.io, or _static/searchindex.js, or name="generator" content="docusaurus", or docusaurus.configsearchindex.json (Sphinx) / search-index.json (Docusaurus) parsed for docnames + titles~3s14 days
agentic-crawlnone of the above matchedBounded LLM-driven Playwright loop (max 30 pages, 20 LLM calls, 180s wall-clock, depth 3)90-180s1 day

What each type means in practice

  • mkdocs-wiki — for MkDocs / Material / mdBook wikis. They publish a complete sitemap.xml, so the build is fast and the sitemap is exhaustive. HackTricks, mdBook-rendered books, and Material-themed docs land here. Multi-language wikis are auto-filtered to English when more than 40% of paths cluster under language codes.
  • gitbook — for GitBook-rendered books, including custom domains. They also publish sitemap.xml, but some custom GitBook deployments do not, so a Tier-2 Playwright nav harvest is the documented fallback. ired.team and Practical CTF are typical examples.
  • github-repo — for markdown-based knowledge bases hosted on GitHub (PayloadsAllTheThings, awesome-* lists, OWASP guides). The sitemap is the recursive Git tree, filtered to text formats (.md, .txt, .rst). Big repos may be marked truncated by GitHub — the resource is then saved with an explicit _error field. Anonymous GitHub API is rate-limited to 60 req/h, so adding a GitHub token in API Keys is recommended; the per-resource token override is the per-repo escape hatch.
  • cve-poc-db — for CVE-indexed PoC repos (trickest/cve, 0xMarcio/cve, nomi-sec/PoC-in-GitHub). The repo has hundreds of thousands of files, so enumerating the tree is wasteful. Instead, the lookup path is built deterministically from the CVE-ID: contents/{year}/CVE-YYYY-NNNNN.md. The agent must pass cve_id="CVE-YYYY-NNNNN"; the tool docstring tells the agent so explicitly. Falls back to listing /contents/{year} and substring-matching on miss.
  • sphinx-docs — for Sphinx, Read the Docs, and Docusaurus sites. They ship a structured searchindex.json with docnames[] and titles[], which is the perfect shape for a sitemap. Tool documentation (Scapy, Volatility 3, Mitmproxy, Sliver C2) is the canonical use case. Cache TTL is longer (14 days) because tool docs change rarely.
  • agentic-crawl — the fallback for anything that did not match the five deterministic detectors: personal blogs, custom CMS, vendor research portals without a published sitemap. A bounded LLM loop drives Playwright over the site, asking Claude on each page which links to follow next. This is the only type that pays a real LLM cost at verify time (typically $0.30 to $0.60 with Sonnet) and the only type that blocks for ~90-180 seconds on add. Once verified, the sitemap is just JSON in the database and query-time stays sub-second.

A site can change type on Refresh. Detection runs every time. If a wiki migrates from MkDocs to Docusaurus, hitting Refresh on the card swaps the badge from mkdocs-wiki to sphinx-docs and rebuilds the sitemap with the right strategy.

What the agent sees

When you start (or reload) a project, the agent reads your enabled resources and dynamically composes the description for the tradecraft_lookup tool. Each enabled resource appears in the docstring as one block:

hacktricks   (mkdocs-wiki) https://book.hacktricks.wiki
  Comprehensive offensive security wiki. Covers web (XSS, SSRF,
  SSTI, deserialization), Active Directory (Kerberoasting, DCSync,
  golden ticket, ADCS), Linux/Windows privesc, cloud, container
  escapes... [your saved 250-350 word summary]

The whole "which resource fits this query" decision is made by the model reading these summaries. There is no vector router and no learned retrieval. The summary you saved at add-time is the routing intelligence — write good summaries (or trust the LLM-generated default) and the agent will pick the right resource on its own.

When zero resources are enabled, the entry is removed from the tool registry entirely, so the agent does not see a tool that promises a capability it cannot deliver.

Tunables (per-project)

The agentic-crawl loop and the cache layer expose four knobs in the project's Project Settings under the agent block (TRADECRAFT_*):

SettingDefaultWhat it caps
TRADECRAFT_CRAWL_MAX_PAGES30Pages visited by the agentic-crawl loop
TRADECRAFT_CRAWL_MAX_LLM_CALLS20"Which links to follow?" Claude calls per crawl
TRADECRAFT_CRAWL_TIME_BUDGET_SEC180Wall-clock budget per crawl
TRADECRAFT_CRAWL_MAX_DEPTH3Max link depth from the homepage

Plus three runtime knobs:

SettingDefaultEffect
TRADECRAFT_TOOL_ENABLEDtrueMaster kill-switch for the tool
TRADECRAFT_FETCH_TIMEOUT30HTTP timeout (seconds) for Tier 1 / Tier 2 fetches
TRADECRAFT_TIER2_THRESHOLD_BYTES800Tier-1 response size below which the tool escalates to Playwright
TRADECRAFT_DEFAULT_TTL_SEC86400Fallback cache TTL when both type-default and per-resource override are zero
TRADECRAFT_SECTION_PICKER_MODELclaude-haiku-4-5-20251001Small model used for the at-query-time "which page best answers this?" decision

MCP Tool Plugins

Plug any Model-Context-Protocol (MCP) server into the agent as a tool plugin — Shodan, GitHub, Burp Suite, Censys, your own internal tools — without editing code, rebuilding containers, or running migrations. Every tool the plugin exposes auto-appears in every project's Tool Matrix with phase toggles.

MCP Tool Plugins tab in Global Settings

Two paths to add a plugin:

  • Quick add — pick from 39 prefilled preset cards (DeepWiki, GitHub, Hugging Face, Shodan, VirusTotal, Censys, mitmproxy, Burp Suite, …). Click → form opens prefilled with everything except your API key.
  • Add MCP (red button, top right) — manual form for custom / internal MCPs. Three transports supported: stdio (subprocess), streamable_http (recommended HTTP), sse (legacy HTTP).

Each saved plugin's tools are auto-injected into the agent's system prompt within ~1 second of Save. The orange Discover and add new tools button on the form runs a live MCP list_tools() against your draft and auto-imports the discovered tool list into your form — names, descriptions, and JSON-schema-derived args_format all populated automatically.

Full operator manual — every form field, every preset, the auth flow, the discovery workflow, the validation rules, troubleshooting, and the storage / security model: see the MCP Tool Plugins wiki page.