⚠️ This snapshot is over 30 days old — treat the grade as stale until the next refresh. Re-scan locally to verify.
Trust Card · Static snapshot
upstash__context7 U
Ungraded — insufficient static coverage · 15 findings (9 critical) · scope excessive · Not ranked: insufficient static coverage.
Scanned 2026-10-19 · engine v0.1.3 (8 regex rules, OWASP-mapped) · upstream upstash/context7 @ 5a2b651 (2026-10-19)
Score breakdown
No numeric score or breakdown: insufficient static coverage. Findings remain actionable; absence of findings is not evidence of safety.
Insufficient static coverage: Unsupported source present. Findings remain actionable; absence of findings is not evidence of safety.
Coverage: limited
Static-heuristic scope: 204 analyzed / 531 discovered files; 129 unsupported source files; 328 excluded; 0 read errors; 0 truncations. This is not a semantic coverage percentage or proof of safety.
- Unsupported source present
- Coverage describes the files read and regex rules applied, not semantic, runtime, or dependency coverage.
- Supported code is JavaScript, TypeScript, and Python; JSON/YAML receive only the credential rule.
- Skill instructions and other prose are not code-analyzed; declared controls are not verified enforcement.
- Ignored directories, declarations, and non-implementation assets are outside rule scope.
File coverage, applied rules and scan limits
{
"mode": "static-heuristic",
"status": "limited",
"reasons": [
"Unsupported source present"
],
"limitations": [
"Coverage describes the files read and regex rules applied, not semantic, runtime, or dependency coverage.",
"Supported code is JavaScript, TypeScript, and Python; JSON/YAML receive only the credential rule.",
"Skill instructions and other prose are not code-analyzed; declared controls are not verified enforcement.",
"Ignored directories, declarations, and non-implementation assets are outside rule scope."
],
"discoveredFiles": 531,
"analyzedFiles": [
{
"path": ".agents/plugins/marketplace.json",
"scope": "data",
"bytes": 391,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": ".changeset/config.json",
"scope": "data",
"bytes": 486,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": ".claude-plugin/marketplace.json",
"scope": "data",
"bytes": 440,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": ".cursor-plugin/marketplace.json",
"scope": "data",
"bytes": 436,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": ".github/ISSUE_TEMPLATE/bug_report.yml",
"scope": "data",
"bytes": 3063,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": ".github/ISSUE_TEMPLATE/documentation.yml",
"scope": "data",
"bytes": 1254,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": ".github/ISSUE_TEMPLATE/feature_request.yml",
"scope": "data",
"bytes": 1338,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": ".github/dependabot.yml",
"scope": "data",
"bytes": 292,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": ".github/plugin/marketplace.json",
"scope": "data",
"bytes": 548,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": ".github/workflows/canary-release.yml",
"scope": "data",
"bytes": 1056,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": ".github/workflows/ecr-deploy.yml",
"scope": "data",
"bytes": 1979,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": ".github/workflows/mcp-registry.yml",
"scope": "data",
"bytes": 3593,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": ".github/workflows/release.yml",
"scope": "data",
"bytes": 4025,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": ".github/workflows/test.yml",
"scope": "data",
"bytes": 2047,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": ".github/workflows/triage-library-report.yml",
"scope": "data",
"bytes": 1723,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "context7.json",
"scope": "data",
"bytes": 97,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "docs/docs.json",
"scope": "data",
"bytes": 13181,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "docs/openapi-enterprise.json",
"scope": "data",
"bytes": 31116,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "eslint.config.js",
"scope": "code",
"bytes": 1058,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "gemini-extension.json",
"scope": "data",
"bytes": 435,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "package.json",
"scope": "data",
"bytes": 1946,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "packages/cli/eslint.config.js",
"scope": "code",
"bytes": 1928,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/cli/package.json",
"scope": "data",
"bytes": 1685,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "packages/cli/src/__tests__/agent-command-registry.test.ts",
"scope": "code",
"bytes": 1266,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/cli/src/__tests__/auth-commands.test.ts",
"scope": "code",
"bytes": 13152,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/cli/src/__tests__/auth-utils.test.ts",
"scope": "code",
"bytes": 27186,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/cli/src/__tests__/command-auth-wiring.test.ts",
"scope": "code",
"bytes": 3338,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/cli/src/__tests__/find-docs-skill-alignment.test.ts",
"scope": "code",
"bytes": 1509,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/cli/src/__tests__/fixtures/cursor/marketplace.schema.json",
"scope": "data",
"bytes": 3987,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "packages/cli/src/__tests__/fixtures/cursor/plugin.schema.json",
"scope": "data",
"bytes": 6022,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "packages/cli/src/__tests__/installer.test.ts",
"scope": "code",
"bytes": 3561,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/cli/src/__tests__/library-id.test.ts",
"scope": "code",
"bytes": 2310,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/cli/src/__tests__/plugin-manifests.test.ts",
"scope": "code",
"bytes": 11310,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/cli/src/__tests__/remove.test.ts",
"scope": "code",
"bytes": 17170,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/cli/src/__tests__/setup-auth.test.ts",
"scope": "code",
"bytes": 2629,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/cli/src/__tests__/setup-on-prem.test.ts",
"scope": "code",
"bytes": 8855,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/cli/src/__tests__/setup.test.ts",
"scope": "code",
"bytes": 36722,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/cli/src/__tests__/storage-paths.test.ts",
"scope": "code",
"bytes": 2444,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/cli/src/__tests__/toml-editor.test.ts",
"scope": "code",
"bytes": 11253,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/cli/src/__tests__/tracking.test.ts",
"scope": "code",
"bytes": 1287,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/cli/src/__tests__/update-check.test.ts",
"scope": "code",
"bytes": 8569,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/cli/src/__tests__/upgrade-command.test.ts",
"scope": "code",
"bytes": 10120,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/cli/src/commands/auth.ts",
"scope": "code",
"bytes": 8710,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/cli/src/commands/docs.ts",
"scope": "code",
"bytes": 7728,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/cli/src/commands/remove.ts",
"scope": "code",
"bytes": 15775,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/cli/src/commands/setup.ts",
"scope": "code",
"bytes": 20165,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/cli/src/commands/upgrade.ts",
"scope": "code",
"bytes": 6080,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/cli/src/constants.ts",
"scope": "code",
"bytes": 385,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/cli/src/index.ts",
"scope": "code",
"bytes": 2650,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/cli/src/setup/agents.ts",
"scope": "code",
"bytes": 13289,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/cli/src/setup/auth.ts",
"scope": "code",
"bytes": 1498,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/cli/src/setup/deployment.ts",
"scope": "code",
"bytes": 2684,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/cli/src/setup/mcp-writer.ts",
"scope": "code",
"bytes": 9047,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/cli/src/setup/templates.ts",
"scope": "code",
"bytes": 7308,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/cli/src/setup/toml-editor.ts",
"scope": "code",
"bytes": 6984,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/cli/src/types.ts",
"scope": "code",
"bytes": 1015,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/cli/src/utils/api.ts",
"scope": "code",
"bytes": 2918,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/cli/src/utils/auth.ts",
"scope": "code",
"bytes": 14103,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/cli/src/utils/installer.ts",
"scope": "code",
"bytes": 923,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/cli/src/utils/library-id.ts",
"scope": "code",
"bytes": 1257,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/cli/src/utils/logger.ts",
"scope": "code",
"bytes": 1409,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/cli/src/utils/prompts.ts",
"scope": "code",
"bytes": 4497,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/cli/src/utils/skill-name.ts",
"scope": "code",
"bytes": 863,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/cli/src/utils/storage-paths.ts",
"scope": "code",
"bytes": 4045,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/cli/src/utils/tracking.ts",
"scope": "code",
"bytes": 433,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/cli/src/utils/update-check.ts",
"scope": "code",
"bytes": 8413,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/cli/tsconfig.json",
"scope": "data",
"bytes": 501,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "packages/cli/tsup.config.ts",
"scope": "code",
"bytes": 618,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/cli/vitest.config.ts",
"scope": "code",
"bytes": 175,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp/eslint.config.js",
"scope": "code",
"bytes": 1376,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp/mcpb/manifest.json",
"scope": "data",
"bytes": 1878,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "packages/mcp/package.json",
"scope": "data",
"bytes": 2515,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "packages/mcp/prettier.config.mjs",
"scope": "code",
"bytes": 213,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp/schema/context7.json",
"scope": "data",
"bytes": 4522,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "packages/mcp/smithery.yaml",
"scope": "data",
"bytes": 266,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "packages/mcp/src/index.ts",
"scope": "code",
"bytes": 35747,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp/src/lib/api.ts",
"scope": "code",
"bytes": 8068,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp/src/lib/auth/auth-prompt.ts",
"scope": "code",
"bytes": 4259,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp/src/lib/auth-lifecycle-telemetry.ts",
"scope": "code",
"bytes": 1990,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp/src/lib/constants.ts",
"scope": "code",
"bytes": 3336,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp/src/lib/encryption.ts",
"scope": "code",
"bytes": 2831,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp/src/lib/jwt.ts",
"scope": "code",
"bytes": 9142,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp/src/lib/log-throttle.ts",
"scope": "code",
"bytes": 1918,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp/src/lib/mcp-body-error-handler.ts",
"scope": "code",
"bytes": 1349,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp/src/lib/mcp-http-auth.ts",
"scope": "code",
"bytes": 7339,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp/src/lib/mcp-operation-scope.ts",
"scope": "code",
"bytes": 771,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp/src/lib/mcp-route.ts",
"scope": "code",
"bytes": 331,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp/src/lib/mcp-subscription-telemetry.ts",
"scope": "code",
"bytes": 19975,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp/src/lib/mcp-telemetry.ts",
"scope": "code",
"bytes": 25010,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp/src/lib/oauth-audience.ts",
"scope": "code",
"bytes": 7249,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp/src/lib/oauth-token-validation.ts",
"scope": "code",
"bytes": 6887,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp/src/lib/process-shutdown.ts",
"scope": "code",
"bytes": 2568,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp/src/lib/telemetry-config.ts",
"scope": "code",
"bytes": 556,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp/src/lib/telemetry-contracts.ts",
"scope": "code",
"bytes": 2016,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp/src/lib/telemetry-provider.ts",
"scope": "code",
"bytes": 3436,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp/src/lib/telemetry-runtime.ts",
"scope": "code",
"bytes": 4536,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp/src/lib/telemetry.ts",
"scope": "code",
"bytes": 10493,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp/src/lib/tool-names.ts",
"scope": "code",
"bytes": 329,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp/src/lib/types.ts",
"scope": "code",
"bytes": 1268,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp/src/lib/utils.ts",
"scope": "code",
"bytes": 4198,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp/src/lib/vercelMarketplaceJwt.ts",
"scope": "code",
"bytes": 2150,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp/test/auth-lifecycle-telemetry.test.ts",
"scope": "code",
"bytes": 2852,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp/test/auth-telemetry.test.ts",
"scope": "code",
"bytes": 2726,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp/test/certificate.test.ts",
"scope": "code",
"bytes": 1688,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp/test/clerk-oauth-jwt.test.ts",
"scope": "code",
"bytes": 18544,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp/test/encryption.test.ts",
"scope": "code",
"bytes": 1492,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp/test/fixtures/module-load-recorder.mjs",
"scope": "code",
"bytes": 442,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp/test/integration.test.ts",
"scope": "code",
"bytes": 55699,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp/test/jwt.test.ts",
"scope": "code",
"bytes": 15750,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp/test/log-throttle.test.ts",
"scope": "code",
"bytes": 1832,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp/test/mcp-http-auth.test.ts",
"scope": "code",
"bytes": 9910,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp/test/mcp-subscription-telemetry.test.ts",
"scope": "code",
"bytes": 25761,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp/test/mcp-telemetry-lifecycle.test.ts",
"scope": "code",
"bytes": 19446,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp/test/oauth-audience.test.ts",
"scope": "code",
"bytes": 8926,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp/test/oauth-token-validation.test.ts",
"scope": "code",
"bytes": 7923,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp/test/stdio-shutdown.test.ts",
"scope": "code",
"bytes": 3674,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp/test/telemetry-disabled.test.ts",
"scope": "code",
"bytes": 2331,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp/test/telemetry.test.ts",
"scope": "code",
"bytes": 7643,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp/test/utils.test.ts",
"scope": "code",
"bytes": 896,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp/tsconfig.json",
"scope": "data",
"bytes": 265,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "packages/mcp/tsconfig.test.json",
"scope": "data",
"bytes": 203,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "packages/opencode/eslint.config.js",
"scope": "code",
"bytes": 1105,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/opencode/package.json",
"scope": "data",
"bytes": 1401,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "packages/opencode/src/index.ts",
"scope": "code",
"bytes": 3289,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/opencode/tsconfig.json",
"scope": "data",
"bytes": 453,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "packages/opencode/tsup.config.ts",
"scope": "code",
"bytes": 488,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/pi/__tests__/extension.test.ts",
"scope": "code",
"bytes": 1833,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/pi/eslint.config.js",
"scope": "code",
"bytes": 1162,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/pi/extensions/context7.ts",
"scope": "code",
"bytes": 346,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/pi/lib/api.ts",
"scope": "code",
"bytes": 2704,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/pi/lib/format.ts",
"scope": "code",
"bytes": 2162,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/pi/lib/prompts.ts",
"scope": "code",
"bytes": 4698,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/pi/lib/result.ts",
"scope": "code",
"bytes": 227,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/pi/lib/tools/query-docs.ts",
"scope": "code",
"bytes": 899,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/pi/lib/tools/resolve-library-id.ts",
"scope": "code",
"bytes": 1278,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/pi/lib/types.ts",
"scope": "code",
"bytes": 655,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/pi/package.json",
"scope": "data",
"bytes": 1572,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "packages/pi/tsconfig.json",
"scope": "data",
"bytes": 206,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "packages/pi/vitest.config.ts",
"scope": "code",
"bytes": 297,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/sdk/eslint.config.js",
"scope": "code",
"bytes": 1350,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/sdk/package.json",
"scope": "data",
"bytes": 1300,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "packages/sdk/prettier.config.mjs",
"scope": "code",
"bytes": 213,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/sdk/src/client.integration.test.ts",
"scope": "code",
"bytes": 2793,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/sdk/src/client.test.ts",
"scope": "code",
"bytes": 6369,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/sdk/src/client.ts",
"scope": "code",
"bytes": 5939,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/sdk/src/client.types.test.ts",
"scope": "code",
"bytes": 3090,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/sdk/src/commands/command.ts",
"scope": "code",
"bytes": 1049,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/sdk/src/commands/get-context/index.test.ts",
"scope": "code",
"bytes": 1569,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/sdk/src/commands/get-context/index.ts",
"scope": "code",
"bytes": 1279,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/sdk/src/commands/get-context/types.ts",
"scope": "code",
"bytes": 457,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/sdk/src/commands/index.ts",
"scope": "code",
"bytes": 91,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/sdk/src/commands/search/index.test.ts",
"scope": "code",
"bytes": 1448,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/sdk/src/commands/search/index.ts",
"scope": "code",
"bytes": 553,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/sdk/src/commands/search-library/index.test.ts",
"scope": "code",
"bytes": 1938,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/sdk/src/commands/search-library/index.ts",
"scope": "code",
"bytes": 1247,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/sdk/src/commands/search-library/types.ts",
"scope": "code",
"bytes": 260,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/sdk/src/commands/types.ts",
"scope": "code",
"bytes": 4295,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/sdk/src/error/index.ts",
"scope": "code",
"bytes": 2071,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/sdk/src/http/abort.ts",
"scope": "code",
"bytes": 3575,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/sdk/src/http/index.test.ts",
"scope": "code",
"bytes": 17645,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/sdk/src/http/index.ts",
"scope": "code",
"bytes": 6745,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/sdk/src/http/response.ts",
"scope": "code",
"bytes": 4566,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/sdk/src/http/retry.ts",
"scope": "code",
"bytes": 969,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/sdk/src/http/types.ts",
"scope": "code",
"bytes": 2892,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/sdk/src/utils/format.ts",
"scope": "code",
"bytes": 2527,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/sdk/src/utils/test-utils.ts",
"scope": "code",
"bytes": 186,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/sdk/tsconfig.json",
"scope": "data",
"bytes": 437,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "packages/sdk/tsup.config.ts",
"scope": "code",
"bytes": 422,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/sdk/vitest.config.ts",
"scope": "code",
"bytes": 616,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/sdk/vitest.integration.config.ts",
"scope": "code",
"bytes": 380,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/tools-ai-sdk/eslint.config.js",
"scope": "code",
"bytes": 1350,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/tools-ai-sdk/package.json",
"scope": "data",
"bytes": 1578,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "packages/tools-ai-sdk/src/agents/context7.ts",
"scope": "code",
"bytes": 1646,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/tools-ai-sdk/src/agents/index.ts",
"scope": "code",
"bytes": 70,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/tools-ai-sdk/src/index.test.ts",
"scope": "code",
"bytes": 5636,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/tools-ai-sdk/src/index.ts",
"scope": "code",
"bytes": 449,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/tools-ai-sdk/src/prompts/index.ts",
"scope": "code",
"bytes": 121,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/tools-ai-sdk/src/prompts/system.ts",
"scope": "code",
"bytes": 3975,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/tools-ai-sdk/src/tools/index.ts",
"scope": "code",
"bytes": 151,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/tools-ai-sdk/src/tools/query-docs.ts",
"scope": "code",
"bytes": 3106,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/tools-ai-sdk/src/tools/resolve-library-id.ts",
"scope": "code",
"bytes": 2628,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/tools-ai-sdk/src/tools/types.ts",
"scope": "code",
"bytes": 204,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/tools-ai-sdk/tsconfig.json",
"scope": "data",
"bytes": 363,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "packages/tools-ai-sdk/tsup.config.ts",
"scope": "code",
"bytes": 661,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/tools-ai-sdk/vitest.config.ts",
"scope": "code",
"bytes": 530,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "plugins/agent-plugins/context7/mcp.json",
"scope": "data",
"bytes": 205,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "plugins/agent-plugins/context7/plugin.json",
"scope": "data",
"bytes": 589,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "plugins/antigravity/context7/mcp_config.json",
"scope": "data",
"bytes": 100,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "plugins/antigravity/context7/plugin.json",
"scope": "data",
"bytes": 779,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "plugins/claude/context7/.claude-plugin/plugin.json",
"scope": "data",
"bytes": 546,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "plugins/claude/context7/.mcp.json",
"scope": "data",
"bytes": 142,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "plugins/codex/context7/.codex-plugin/plugin.json",
"scope": "data",
"bytes": 1277,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "plugins/codex/context7/.mcp.json",
"scope": "data",
"bytes": 116,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "plugins/context7-power/mcp.json",
"scope": "data",
"bytes": 94,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "plugins/copilot/context7/.mcp.json",
"scope": "data",
"bytes": 193,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "plugins/copilot/context7/plugin.json",
"scope": "data",
"bytes": 539,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "plugins/cursor/context7/.cursor-plugin/plugin.json",
"scope": "data",
"bytes": 770,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "plugins/cursor/context7/mcp.json",
"scope": "data",
"bytes": 122,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "pnpm-lock.yaml",
"scope": "data",
"bytes": 253043,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "pnpm-workspace.yaml",
"scope": "data",
"bytes": 720,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "prettier.config.mjs",
"scope": "code",
"bytes": 213,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "server.json",
"scope": "data",
"bytes": 1262,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "tsconfig.bundler.json",
"scope": "data",
"bytes": 824,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "tsconfig.json",
"scope": "data",
"bytes": 304,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
}
],
"unsupportedSourceFiles": [
".env.example",
"docs/adding-libraries.mdx",
"docs/agentic-tools/ai-sdk/agents/context7-agent.mdx",
"docs/agentic-tools/ai-sdk/getting-started.mdx",
"docs/agentic-tools/ai-sdk/tools/query-docs.mdx",
"docs/agentic-tools/ai-sdk/tools/resolve-library-id.mdx",
"docs/agentic-tools.mdx",
"docs/api-guide.mdx",
"docs/ask/dashboard.mdx",
"docs/ask/overview.mdx",
"docs/ask/quickstart.mdx",
"docs/clients/claude-code.mdx",
"docs/clients/cli.mdx",
"docs/clients/codex.mdx",
"docs/clients/copilot-cli.mdx",
"docs/clients/cursor.mdx",
"docs/clients/opencode.mdx",
"docs/clients/pi.mdx",
"docs/clients/vscode.mdx",
"docs/contact.mdx",
"docs/docs7/agent-readiness.mdx",
"docs/docs7/agent.mdx",
"docs/docs7/ai-visibility.mdx",
"docs/docs7/analytics.mdx",
"docs/docs7/builds.mdx",
"docs/docs7/cli.mdx",
"docs/docs7/components/accordions.mdx",
"docs/docs7/components/badge.mdx",
"docs/docs7/components/callouts.mdx",
"docs/docs7/components/cards.mdx",
"docs/docs7/components/code-groups.mdx",
"docs/docs7/components/color.mdx",
"docs/docs7/components/columns.mdx",
"docs/docs7/components/examples.mdx",
"docs/docs7/components/expandables.mdx",
"docs/docs7/components/fields.mdx",
"docs/docs7/components/frames.mdx",
"docs/docs7/components/github.mdx",
"docs/docs7/components/icons.mdx",
"docs/docs7/components/latex.mdx",
"docs/docs7/components/mermaid.mdx",
"docs/docs7/components/panel.mdx",
"docs/docs7/components/prompt.mdx",
"docs/docs7/components/react-components.mdx",
"docs/docs7/components/steps.mdx",
"docs/docs7/components/tabs.mdx",
"docs/docs7/components/tiles.mdx",
"docs/docs7/components/tooltips.mdx",
"docs/docs7/components/tree.mdx",
"docs/docs7/components/updates.mdx",
"docs/docs7/components/view.mdx",
"docs/docs7/components/visibility.mdx",
"docs/docs7/configuration.mdx",
"docs/docs7/custom-domains.mdx",
"docs/docs7/feature-requests.mdx",
"docs/docs7/migrate-from-mintlify.mdx",
"docs/docs7/overview.mdx",
"docs/docs7/quickstart.mdx",
"docs/docs7/seo.mdx",
"docs/enterprise/api/authentication.mdx",
"docs/enterprise/api/context/get-documentation-context.mdx",
"docs/enterprise/api/parse/get-parse-status.mdx",
"docs/enterprise/api/parse/import-libraries.mdx",
"docs/enterprise/api/parse/parse-a-git-repository.mdx",
"docs/enterprise/api/parse/parse-a-website.mdx",
"docs/enterprise/api/parse/parse-an-openapi-spec-by-url.mdx",
"docs/enterprise/api/parse/refresh-a-library.mdx",
"docs/enterprise/api/parse/upload-an-openapi-spec-file.mdx",
"docs/enterprise/api/search/search-for-libraries.mdx",
"docs/enterprise/automatic-repository-updates.mdx",
"docs/enterprise/backup-restore.mdx",
"docs/enterprise/deployment/docker.mdx",
"docs/enterprise/deployment/kubernetes.mdx",
"docs/enterprise/deployment/scaling.mdx",
"docs/enterprise/deployment/vector-stores.mdx",
"docs/enterprise/enterprise-managed-auth/entra.mdx",
"docs/enterprise/enterprise-managed-auth/okta.mdx",
"docs/enterprise/gitops.mdx",
"docs/enterprise/integrations/aws-bedrock.mdx",
"docs/enterprise/integrations/confluence.mdx",
"docs/enterprise/integrations/gerrit.mdx",
"docs/enterprise/integrations/github.mdx",
"docs/enterprise/integrations/other-git.mdx",
"docs/enterprise/library-import.mdx",
"docs/enterprise/on-premise.mdx",
"docs/enterprise/security/entra-sso.mdx",
"docs/enterprise/security/library-access.mdx",
"docs/enterprise/security/oidc-sso.mdx",
"docs/enterprise.mdx",
"docs/howto/api-keys.mdx",
"docs/howto/chat-widget.mdx",
"docs/howto/claiming-libraries.mdx",
"docs/howto/oauth.mdx",
"docs/howto/policies.mdx",
"docs/howto/private-sources.mdx",
"docs/howto/rules.mdx",
"docs/howto/teamspace.mdx",
"docs/howto/usage.mdx",
"docs/howto/verification.mdx",
"docs/installation.mdx",
"docs/integrations/code-rabbit.mdx",
"docs/integrations/eve.mdx",
"docs/integrations/factory-ai.mdx",
"docs/integrations/github-actions.mdx",
"docs/integrations/mastra.mdx",
"docs/integrations/tembo.mdx",
"docs/library-owners.mdx",
"docs/library-updates.mdx",
"docs/overview.mdx",
"docs/plans-pricing.mdx",
"docs/resources/all-clients.mdx",
"docs/resources/developer.mdx",
"docs/resources/feature-requests.mdx",
"docs/resources/troubleshooting.mdx",
"docs/sdks/ts/commands/get-context.mdx",
"docs/sdks/ts/commands/search-library.mdx",
"docs/sdks/ts/commands/search.mdx",
"docs/sdks/ts/getting-started.mdx",
"docs/search-api.mdx",
"docs/security/auth-and-access-control.mdx",
"docs/security/best-practices.mdx",
"docs/security/compliance-and-reporting.mdx",
"docs/security/data-privacy.mdx",
"docs/security/data-safety.mdx",
"docs/security/infrastructure.mdx",
"docs/security/overview.mdx",
"docs/tips.mdx",
"packages/mcp/Dockerfile",
"plugins/cursor/context7/rules/use-context7.mdc"
],
"excludedFiles": [
{
"path": ".git",
"reason": "ignored-directory"
},
{
"path": ".changeset/README.md",
"reason": "outside-rule-scope"
},
{
"path": ".changeset/narrow-usage-exclusion.md",
"reason": "outside-rule-scope"
},
{
"path": ".env.example",
"reason": "unsupported-implementation"
},
{
"path": ".gitignore",
"reason": "outside-rule-scope"
},
{
"path": ".prettierignore",
"reason": "outside-rule-scope"
},
{
"path": "LICENSE",
"reason": "outside-rule-scope"
},
{
"path": "README.md",
"reason": "outside-rule-scope"
},
{
"path": "SECURITY.md",
"reason": "outside-rule-scope"
},
{
"path": "docs/adding-libraries.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/agentic-tools/ai-sdk/agents/context7-agent.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/agentic-tools/ai-sdk/getting-started.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/agentic-tools/ai-sdk/tools/query-docs.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/agentic-tools/ai-sdk/tools/resolve-library-id.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/agentic-tools.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/api-guide.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/ask/dashboard.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/ask/overview.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/ask/quickstart.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/clients/claude-code.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/clients/cli.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/clients/codex.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/clients/copilot-cli.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/clients/cursor.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/clients/opencode.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/clients/pi.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/clients/vscode.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/contact.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/docs7/agent-readiness.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/docs7/agent.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/docs7/ai-visibility.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/docs7/analytics.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/docs7/builds.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/docs7/cli.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/docs7/components/accordions.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/docs7/components/badge.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/docs7/components/callouts.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/docs7/components/cards.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/docs7/components/code-groups.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/docs7/components/color.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/docs7/components/columns.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/docs7/components/examples.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/docs7/components/expandables.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/docs7/components/fields.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/docs7/components/frames.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/docs7/components/github.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/docs7/components/icons.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/docs7/components/latex.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/docs7/components/mermaid.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/docs7/components/panel.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/docs7/components/prompt.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/docs7/components/react-components.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/docs7/components/steps.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/docs7/components/tabs.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/docs7/components/tiles.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/docs7/components/tooltips.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/docs7/components/tree.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/docs7/components/updates.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/docs7/components/view.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/docs7/components/visibility.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/docs7/configuration.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/docs7/custom-domains.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/docs7/feature-requests.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/docs7/migrate-from-mintlify.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/docs7/overview.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/docs7/quickstart.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/docs7/seo.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/enterprise/api/authentication.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/enterprise/api/context/get-documentation-context.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/enterprise/api/parse/get-parse-status.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/enterprise/api/parse/import-libraries.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/enterprise/api/parse/parse-a-git-repository.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/enterprise/api/parse/parse-a-website.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/enterprise/api/parse/parse-an-openapi-spec-by-url.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/enterprise/api/parse/refresh-a-library.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/enterprise/api/parse/upload-an-openapi-spec-file.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/enterprise/api/search/search-for-libraries.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/enterprise/automatic-repository-updates.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/enterprise/backup-restore.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/enterprise/changelog.mdx",
"reason": "outside-rule-scope"
},
{
"path": "docs/enterprise/deployment/docker.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/enterprise/deployment/kubernetes.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/enterprise/deployment/scaling.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/enterprise/deployment/vector-stores.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/enterprise/enterprise-managed-auth/entra.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/enterprise/enterprise-managed-auth/okta.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/enterprise/gitops.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/enterprise/integrations/aws-bedrock.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/enterprise/integrations/confluence.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/enterprise/integrations/gerrit.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/enterprise/integrations/github.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/enterprise/integrations/other-git.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/enterprise/library-import.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/enterprise/on-premise.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/enterprise/security/entra-sso.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/enterprise/security/library-access.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/enterprise/security/oidc-sso.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/enterprise.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/howto/api-keys.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/howto/chat-widget.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/howto/claiming-libraries.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/howto/oauth.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/howto/policies.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/howto/private-sources.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/howto/rules.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/howto/teamspace.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/howto/usage.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/howto/verification.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/images/ask/dashboard/analytics.jpg",
"reason": "outside-rule-scope"
},
{
"path": "docs/images/ask/dashboard/questions.jpg",
"reason": "outside-rule-scope"
},
{
"path": "docs/images/ask/dashboard/site-live.jpg",
"reason": "outside-rule-scope"
},
{
"path": "docs/images/ask/dashboard/site.jpg",
"reason": "outside-rule-scope"
},
{
"path": "docs/images/ask/dashboard/unanswered.jpg",
"reason": "outside-rule-scope"
},
{
"path": "docs/images/ask/product/how-it-works.jpg",
"reason": "outside-rule-scope"
},
{
"path": "docs/images/ask/product/why.jpg",
"reason": "outside-rule-scope"
},
{
"path": "docs/images/clients/claude-code/mcp-details.png",
"reason": "outside-rule-scope"
},
{
"path": "docs/images/clients/claude-code/mcp-list.png",
"reason": "outside-rule-scope"
},
{
"path": "docs/images/clients/claude-code/mcp-unauthenticated.png",
"reason": "outside-rule-scope"
},
{
"path": "docs/images/clients/cursor/cloud-agents/01-new-cloud-agent.png",
"reason": "outside-rule-scope"
},
{
"path": "docs/images/clients/cursor/cloud-agents/02-open-mcp-servers.png",
"reason": "outside-rule-scope"
},
{
"path": "docs/images/clients/cursor/cloud-agents/03-add-custom-mcp.png",
"reason": "outside-rule-scope"
},
{
"path": "docs/images/clients/cursor/cloud-agents/04-configure-context7-api-key.png",
"reason": "outside-rule-scope"
},
{
"path": "docs/images/clients/cursor/cloud-agents/05-context7-json-config.png",
"reason": "outside-rule-scope"
},
{
"path": "docs/images/clients/cursor/cloud-agents/06-verify-context7.png",
"reason": "outside-rule-scope"
},
{
"path": "docs/images/clients/cursor/logo.png",
"reason": "outside-rule-scope"
},
{
"path": "docs/images/clients/cursor/mcp-settings.png",
"reason": "outside-rule-scope"
},
{
"path": "docs/images/clients/cursor/rules.png",
"reason": "outside-rule-scope"
},
{
"path": "docs/images/clients/manus/connector.png",
"reason": "outside-rule-scope"
},
{
"path": "docs/images/clients/manus/custom-mcp.png",
"reason": "outside-rule-scope"
},
{
"path": "docs/images/dashboard/add-payment-method.png",
"reason": "outside-rule-scope"
},
{
"path": "docs/images/dashboard/admin/claim-library-button.png",
"reason": "outside-rule-scope"
},
{
"path": "docs/images/dashboard/admin/claim-modal.png",
"reason": "outside-rule-scope"
},
{
"path": "docs/images/dashboard/admin/config-overview.png",
"reason": "outside-rule-scope"
},
{
"path": "docs/images/dashboard/admin/library-manage-button.png",
"reason": "outside-rule-scope"
},
{
"path": "docs/images/dashboard/admin/library-metrics.png",
"reason": "outside-rule-scope"
},
{
"path": "docs/images/dashboard/admin/managing-versions.png",
"reason": "outside-rule-scope"
},
{
"path": "docs/images/dashboard/api-keys-card.png",
"reason": "outside-rule-scope"
},
{
"path": "docs/images/dashboard/billing-page.png",
"reason": "outside-rule-scope"
},
{
"path": "docs/images/dashboard/chat-widget.png",
"reason": "outside-rule-scope"
},
{
"path": "docs/images/dashboard/manage-cards.png",
"reason": "outside-rule-scope"
},
{
"path": "docs/images/dashboard/members-tab.png",
"reason": "outside-rule-scope"
},
{
"path": "docs/images/dashboard/private-sources-card.png",
"reason": "outside-rule-scope"
},
{
"path": "docs/images/dashboard/public-repository-filters.png",
"reason": "outside-rule-scope"
},
{
"path": "docs/images/dashboard/source-type-access.png",
"reason": "outside-rule-scope"
},
{
"path": "docs/images/dashboard/teamspace-management.png",
"reason": "outside-rule-scope"
},
{
"path": "docs/images/dashboard/usage-stats.png",
"reason": "outside-rule-scope"
},
{
"path": "docs/images/dashboard/user-dropdown.png",
"reason": "outside-rule-scope"
},
{
"path": "docs/images/docs7/custom-domain.png",
"reason": "outside-rule-scope"
},
{
"path": "docs/images/docs7/dashboard/agent-code-watch.jpg",
"reason": "outside-rule-scope"
},
{
"path": "docs/images/docs7/dashboard/agent-pr-review.jpg",
"reason": "outside-rule-scope"
},
{
"path": "docs/images/docs7/dashboard/agent.jpg",
"reason": "outside-rule-scope"
},
{
"path": "docs/images/docs7/dashboard/ai-visibility.jpg",
"reason": "outside-rule-scope"
},
{
"path": "docs/images/docs7/dashboard/analytics.jpg",
"reason": "outside-rule-scope"
},
{
"path": "docs/images/docs7/dashboard/builds.jpg",
"reason": "outside-rule-scope"
},
{
"path": "docs/images/docs7/dashboard/custom-domain.jpg",
"reason": "outside-rule-scope"
},
{
"path": "docs/images/docs7/dashboard/feature-requests-setup.jpg",
"reason": "outside-rule-scope"
},
{
"path": "docs/images/docs7/dashboard/feature-requests.jpg",
"reason": "outside-rule-scope"
},
{
"path": "docs/images/docs7/feature-requests-page.jpg",
"reason": "outside-rule-scope"
},
{
"path": "docs/images/docs7/filter-sidebar.png",
"reason": "outside-rule-scope"
},
{
"path": "docs/images/docs7/product-groups-selected.png",
"reason": "outside-rule-scope"
},
{
"path": "docs/images/docs7/product-groups.png",
"reason": "outside-rule-scope"
},
{
"path": "docs/images/docs7/publish-a-site.png",
"reason": "outside-rule-scope"
},
{
"path": "docs/images/docs7/url-suggestions.png",
"reason": "outside-rule-scope"
},
{
"path": "docs/images/enterprise/api-keys/api-keys-create-dialog.png",
"reason": "outside-rule-scope"
},
{
"path": "docs/images/enterprise/api-keys/api-keys-created.png",
"reason": "outside-rule-scope"
},
{
"path": "docs/images/enterprise/api-keys/api-keys-empty.png",
"reason": "outside-rule-scope"
},
{
"path": "docs/images/enterprise/automatic-repository-updates/overview.png",
"reason": "outside-rule-scope"
},
{
"path": "docs/images/enterprise/automatic-repository-updates/schedule-editor.png",
"reason": "outside-rule-scope"
},
{
"path": "docs/images/enterprise/enterprise-managed-auth/context7-ema-config.png",
"reason": "outside-rule-scope"
},
{
"path": "docs/images/enterprise/enterprise-managed-auth/okta-assignments.png",
"reason": "outside-rule-scope"
},
{
"path": "docs/images/enterprise/enterprise-managed-auth/okta-enable-feature.png",
"reason": "outside-rule-scope"
},
{
"path": "docs/images/enterprise/enterprise-managed-auth/okta-manage-connections.png",
"reason": "outside-rule-scope"
},
{
"path": "docs/images/enterprise/enterprise-managed-auth/okta-requesting-app.png",
"reason": "outside-rule-scope"
},
{
"path": "docs/images/enterprise/enterprise-managed-auth/okta-resource-app.png",
"reason": "outside-rule-scope"
},
{
"path": "docs/images/enterprise/entra-sso/01-register-app.png",
"reason": "outside-rule-scope"
},
{
"path": "docs/images/enterprise/entra-sso/02-app-overview.png",
"reason": "outside-rule-scope"
},
{
"path": "docs/images/enterprise/entra-sso/03-client-secret.png",
"reason": "outside-rule-scope"
},
{
"path": "docs/images/enterprise/entra-sso/04-app-roles.png",
"reason": "outside-rule-scope"
},
{
"path": "docs/images/enterprise/entra-sso/05-assignment-required.png",
"reason": "outside-rule-scope"
},
{
"path": "docs/images/enterprise/entra-sso/06-assign-user-role.png",
"reason": "outside-rule-scope"
},
{
"path": "docs/images/enterprise/entra-sso/07-context7-settings-card.png",
"reason": "outside-rule-scope"
},
{
"path": "docs/images/enterprise/entra-sso/08-filled-credentials.png",
"reason": "outside-rule-scope"
},
{
"path": "docs/images/enterprise/entra-sso/10-login-page.png",
"reason": "outside-rule-scope"
},
{
"path": "docs/images/enterprise/entra-sso/11-users-tab.png",
"reason": "outside-rule-scope"
},
{
"path": "docs/images/enterprise/entra-sso/README.md",
"reason": "outside-rule-scope"
},
{
"path": "docs/images/enterprise/gitops/gitops-settings.png",
"reason": "outside-rule-scope"
},
{
"path": "docs/images/enterprise/integrations/confluence-add.png",
"reason": "outside-rule-scope"
},
{
"path": "docs/images/enterprise/integrations/confluence-by-url.png",
"reason": "outside-rule-scope"
},
{
"path": "docs/images/enterprise/integrations/confluence-settings.png",
"reason": "outside-rule-scope"
},
{
"path": "docs/images/enterprise/integrations/confluence-source.png",
"reason": "outside-rule-scope"
},
{
"path": "docs/images/enterprise/integrations/gerrit-generated-docs-option.jpg",
"reason": "outside-rule-scope"
},
{
"path": "docs/images/enterprise/integrations/gerrit-review-publishing.jpg",
"reason": "outside-rule-scope"
},
{
"path": "docs/images/enterprise/integrations/git-tokens.png",
"reason": "outside-rule-scope"
},
{
"path": "docs/images/enterprise/integrations/github-app.png",
"reason": "outside-rule-scope"
},
{
"path": "docs/images/enterprise/integrations/github-permissions.png",
"reason": "outside-rule-scope"
},
{
"path": "docs/images/enterprise/integrations/github-webhook.png",
"reason": "outside-rule-scope"
},
{
"path": "docs/images/enterprise/integrations/other-git-https.png",
"reason": "outside-rule-scope"
},
{
"path": "docs/images/enterprise/integrations/other-git-ssh.png",
"reason": "outside-rule-scope"
},
{
"path": "docs/images/enterprise/library-access/01-restricted-access.png",
"reason": "outside-rule-scope"
},
{
"path": "docs/images/enterprise/library-access/02-everyone-access.png",
"reason": "outside-rule-scope"
},
{
"path": "docs/images/enterprise/library-access/03-default-posture.png",
"reason": "outside-rule-scope"
},
{
"path": "docs/images/enterprise/library-access/04-access-overview.png",
"reason": "outside-rule-scope"
},
{
"path": "docs/images/enterprise/library-import/export-menu.png",
"reason": "outside-rule-scope"
},
{
"path": "docs/images/enterprise/library-import/export-select.png",
"reason": "outside-rule-scope"
},
{
"path": "docs/images/enterprise/library-import/import-source.png",
"reason": "outside-rule-scope"
},
{
"path": "docs/images/enterprise/library-import/import-upload.png",
"reason": "outside-rule-scope"
},
{
"path": "docs/images/enterprise/library-import/imported-badge.png",
"reason": "outside-rule-scope"
},
{
"path": "docs/images/enterprise/oidc-sso/01-login-page.png",
"reason": "outside-rule-scope"
},
{
"path": "docs/images/enterprise/oidc-sso/02-sso-card-oidc.png",
"reason": "outside-rule-scope"
},
{
"path": "docs/images/enterprise/oidc-sso/03-group-mapping.png",
"reason": "outside-rule-scope"
},
{
"path": "docs/images/enterprise/oidc-sso/04-password-card.png",
"reason": "outside-rule-scope"
},
{
"path": "docs/images/enterprise/oidc-sso/05-users-tab.png",
"reason": "outside-rule-scope"
},
{
"path": "docs/images/howto/verification/apply-button.png",
"reason": "outside-rule-scope"
},
{
"path": "docs/images/howto/verification/apply-modal.png",
"reason": "outside-rule-scope"
},
{
"path": "docs/images/howto/verification/verification-badge.png",
"reason": "outside-rule-scope"
},
{
"path": "docs/images/integrations/coderabbit/add-server-modal.png",
"reason": "outside-rule-scope"
},
{
"path": "docs/images/integrations/coderabbit/integrations-tab.png",
"reason": "outside-rule-scope"
},
{
"path": "docs/images/integrations/coderabbit/server-connected.png",
"reason": "outside-rule-scope"
},
{
"path": "docs/images/integrations/coderabbit/update-mcp-settings.png",
"reason": "outside-rule-scope"
},
{
"path": "docs/images/integrations/tembo/integrations-page.png",
"reason": "outside-rule-scope"
},
{
"path": "docs/images/integrations/tembo/server-connected.png",
"reason": "outside-rule-scope"
},
{
"path": "docs/images/on-premise-architecture.png",
"reason": "outside-rule-scope"
},
{
"path": "docs/images/scaling-multi-replica.png",
"reason": "outside-rule-scope"
},
{
"path": "docs/images/scaling-settings.png",
"reason": "outside-rule-scope"
},
{
"path": "docs/images/security/classifier_pipeline.png",
"reason": "outside-rule-scope"
},
{
"path": "docs/installation.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/integrations/code-rabbit.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/integrations/eve.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/integrations/factory-ai.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/integrations/github-actions.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/integrations/mastra.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/integrations/tembo.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/library-owners.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/library-updates.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/overview.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/plans-pricing.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/public/favicon.ico",
"reason": "outside-rule-scope"
},
{
"path": "docs/public/logo/logo-dark.svg",
"reason": "outside-rule-scope"
},
{
"path": "docs/public/logo/logo.png",
"reason": "outside-rule-scope"
},
{
"path": "docs/public/logo/logo.svg",
"reason": "outside-rule-scope"
},
{
"path": "docs/resources/all-clients.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/resources/developer.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/resources/feature-requests.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/resources/troubleshooting.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/sdks/ts/commands/get-context.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/sdks/ts/commands/search-library.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/sdks/ts/commands/search.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/sdks/ts/getting-started.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/search-api.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/security/auth-and-access-control.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/security/best-practices.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/security/compliance-and-reporting.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/security/data-privacy.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/security/data-safety.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/security/infrastructure.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/security/overview.mdx",
"reason": "unsupported-implementation"
},
{
"path": "docs/tips.mdx",
"reason": "unsupported-implementation"
},
{
"path": "i18n/README.ar.md",
"reason": "outside-rule-scope"
},
{
"path": "i18n/README.de.md",
"reason": "outside-rule-scope"
},
{
"path": "i18n/README.es.md",
"reason": "outside-rule-scope"
},
{
"path": "i18n/README.fr.md",
"reason": "outside-rule-scope"
},
{
"path": "i18n/README.id-ID.md",
"reason": "outside-rule-scope"
},
{
"path": "i18n/README.it.md",
"reason": "outside-rule-scope"
},
{
"path": "i18n/README.ja.md",
"reason": "outside-rule-scope"
},
{
"path": "i18n/README.ko.md",
"reason": "outside-rule-scope"
},
{
"path": "i18n/README.pt-BR.md",
"reason": "outside-rule-scope"
},
{
"path": "i18n/README.ru.md",
"reason": "outside-rule-scope"
},
{
"path": "i18n/README.tr.md",
"reason": "outside-rule-scope"
},
{
"path": "i18n/README.uk.md",
"reason": "outside-rule-scope"
},
{
"path": "i18n/README.vi.md",
"reason": "outside-rule-scope"
},
{
"path": "i18n/README.zh-CN.md",
"reason": "outside-rule-scope"
},
{
"path": "i18n/README.zh-TW.md",
"reason": "outside-rule-scope"
},
{
"path": "packages/cli/.gitignore",
"reason": "outside-rule-scope"
},
{
"path": "packages/cli/CHANGELOG.md",
"reason": "outside-rule-scope"
},
{
"path": "packages/cli/README.md",
"reason": "outside-rule-scope"
},
{
"path": "packages/mcp/.prettierignore",
"reason": "outside-rule-scope"
},
{
"path": "packages/mcp/CHANGELOG.md",
"reason": "outside-rule-scope"
},
{
"path": "packages/mcp/Dockerfile",
"reason": "unsupported-implementation"
},
{
"path": "packages/mcp/LICENSE",
"reason": "outside-rule-scope"
},
{
"path": "packages/mcp/README.md",
"reason": "outside-rule-scope"
},
{
"path": "packages/opencode/.prettierignore",
"reason": "outside-rule-scope"
},
{
"path": "packages/opencode/CHANGELOG.md",
"reason": "outside-rule-scope"
},
{
"path": "packages/opencode/LICENSE",
"reason": "outside-rule-scope"
},
{
"path": "packages/opencode/README.md",
"reason": "outside-rule-scope"
},
{
"path": "packages/opencode/skills/context7-mcp/SKILL.md",
"reason": "skill-instructions-not-code-analyzed"
},
{
"path": "packages/pi/.prettierignore",
"reason": "outside-rule-scope"
},
{
"path": "packages/pi/CHANGELOG.md",
"reason": "outside-rule-scope"
},
{
"path": "packages/pi/LICENSE",
"reason": "outside-rule-scope"
},
{
"path": "packages/pi/README.md",
"reason": "outside-rule-scope"
},
{
"path": "packages/pi/prompts/c7-docs.md",
"reason": "outside-rule-scope"
},
{
"path": "packages/pi/skills/context7-docs/SKILL.md",
"reason": "skill-instructions-not-code-analyzed"
},
{
"path": "packages/sdk/CHANGELOG.md",
"reason": "outside-rule-scope"
},
{
"path": "packages/sdk/LICENSE",
"reason": "outside-rule-scope"
},
{
"path": "packages/sdk/README.md",
"reason": "outside-rule-scope"
},
{
"path": "packages/tools-ai-sdk/CHANGELOG.md",
"reason": "outside-rule-scope"
},
{
"path": "packages/tools-ai-sdk/README.md",
"reason": "outside-rule-scope"
},
{
"path": "plugins/agent-plugins/context7/LICENSE",
"reason": "outside-rule-scope"
},
{
"path": "plugins/agent-plugins/context7/README.md",
"reason": "outside-rule-scope"
},
{
"path": "plugins/agent-plugins/context7/skills/context7-mcp/SKILL.md",
"reason": "skill-instructions-not-code-analyzed"
},
{
"path": "plugins/antigravity/context7/README.md",
"reason": "outside-rule-scope"
},
{
"path": "plugins/antigravity/context7/assets/logo.svg",
"reason": "outside-rule-scope"
},
{
"path": "plugins/antigravity/context7/skills/context7-mcp/SKILL.md",
"reason": "skill-instructions-not-code-analyzed"
},
{
"path": "plugins/claude/context7/README.md",
"reason": "outside-rule-scope"
},
{
"path": "plugins/codex/context7/README.md",
"reason": "outside-rule-scope"
},
{
"path": "plugins/codex/context7/skills/context7-mcp/SKILL.md",
"reason": "skill-instructions-not-code-analyzed"
},
{
"path": "plugins/context7-power/POWER.md",
"reason": "outside-rule-scope"
},
{
"path": "plugins/copilot/context7/README.md",
"reason": "outside-rule-scope"
},
{
"path": "plugins/copilot/context7/agents/docs-researcher.agent.md",
"reason": "outside-rule-scope"
},
{
"path": "plugins/copilot/context7/commands/docs.md",
"reason": "outside-rule-scope"
},
{
"path": "plugins/copilot/context7/skills/context7-mcp/SKILL.md",
"reason": "skill-instructions-not-code-analyzed"
},
{
"path": "plugins/cursor/context7/LICENSE",
"reason": "outside-rule-scope"
},
{
"path": "plugins/cursor/context7/README.md",
"reason": "outside-rule-scope"
},
{
"path": "plugins/cursor/context7/agents/docs-researcher.md",
"reason": "outside-rule-scope"
},
{
"path": "plugins/cursor/context7/assets/logo.svg",
"reason": "outside-rule-scope"
},
{
"path": "plugins/cursor/context7/rules/use-context7.mdc",
"reason": "unsupported-implementation"
},
{
"path": "plugins/cursor/context7/skills/context7-mcp/SKILL.md",
"reason": "skill-instructions-not-code-analyzed"
},
{
"path": "public/context7-icon-green.svg",
"reason": "outside-rule-scope"
},
{
"path": "public/context7-icon.svg",
"reason": "outside-rule-scope"
},
{
"path": "public/context7-logo.svg",
"reason": "outside-rule-scope"
},
{
"path": "public/cover.png",
"reason": "outside-rule-scope"
},
{
"path": "public/icon.png",
"reason": "outside-rule-scope"
},
{
"path": "rules/context7-cli.md",
"reason": "outside-rule-scope"
},
{
"path": "rules/context7-mcp.md",
"reason": "outside-rule-scope"
},
{
"path": "skills/context7-cli/SKILL.md",
"reason": "skill-instructions-not-code-analyzed"
},
{
"path": "skills/context7-cli/references/docs.md",
"reason": "outside-rule-scope"
},
{
"path": "skills/context7-cli/references/setup.md",
"reason": "outside-rule-scope"
},
{
"path": "skills/context7-mcp/SKILL.md",
"reason": "skill-instructions-not-code-analyzed"
},
{
"path": "skills/find-docs/SKILL.md",
"reason": "skill-instructions-not-code-analyzed"
}
],
"readErrors": [],
"truncation": [],
"limits": {
"maxFiles": 4000,
"maxDepth": 12,
"maxFileBytes": 1048576
}
}Fix first (15 critical/high)
| Severity | Rule | Finding | Remediation |
|---|---|---|---|
| CRITICAL | AT-SEC-003 (ASI02) | Unbounded Dynamic Shell Executionpackages/cli/src/commands/upgrade.ts:35Evidence: const child = spawn(command, args, { | Strictly restrict shell execution to an immutable allowlist of binary commands with explicit argument arrays, or execute inside microVM sandboxes. |
| CRITICAL | AT-SEC-002 (LLM02) | Hardcoded Credential or API Secretpackages/mcp/test/integration.test.ts:535Evidence: const apiKey = "ctx7sk-advertised-header-test"; | Move credentials to secure environment variables or a key vault. Never commit API keys. |
| CRITICAL | AT-SEC-003 (ASI02) | Unbounded Dynamic Shell Executionpackages/mcp/test/integration.test.ts:96Evidence: const bearer = /^Bearer (.+)$/.exec(req.headers.authorization ?? "")?.[1] ?? ""; | Strictly restrict shell execution to an immutable allowlist of binary commands with explicit argument arrays, or execute inside microVM sandboxes. |
| CRITICAL | AT-SEC-003 (ASI02) | Unbounded Dynamic Shell Executionpackages/sdk/src/commands/get-context/index.test.ts:48Evidence: await expect(command.exec(requesterWith("documentation text"))).resolves.toBe( | Strictly restrict shell execution to an immutable allowlist of binary commands with explicit argument arrays, or execute inside microVM sandboxes. |
| CRITICAL | AT-SEC-003 (ASI02) | Unbounded Dynamic Shell Executionpackages/sdk/src/commands/search/index.test.ts:33Evidence: await expect(command.exec(requesterWith(response))).resolves.toEqual(response); | Strictly restrict shell execution to an immutable allowlist of binary commands with explicit argument arrays, or execute inside microVM sandboxes. |
| CRITICAL | AT-SEC-003 (ASI02) | Unbounded Dynamic Shell Executionpackages/sdk/src/commands/search/index.test.ts:39Evidence: await expect(command.exec(requesterWith("documentation text"))).resolves.toBe( | Strictly restrict shell execution to an immutable allowlist of binary commands with explicit argument arrays, or execute inside microVM sandboxes. |
| CRITICAL | AT-SEC-003 (ASI02) | Unbounded Dynamic Shell Executionpackages/sdk/src/commands/search-library/index.test.ts:24Evidence: await expect(command.exec(requesterWith(apiResult))).resolves.toEqual([ | Strictly restrict shell execution to an immutable allowlist of binary commands with explicit argument arrays, or execute inside microVM sandboxes. |
| CRITICAL | AT-SEC-003 (ASI02) | Unbounded Dynamic Shell Executionpackages/sdk/src/commands/search-library/index.test.ts:42Evidence: const result = await command.exec(requesterWith(apiResult)); | Strictly restrict shell execution to an immutable allowlist of binary commands with explicit argument arrays, or execute inside microVM sandboxes. |
| CRITICAL | AT-SEC-003 (ASI02) | Unbounded Dynamic Shell Executionpackages/sdk/src/commands/search-library/index.test.ts:51Evidence: const error = await command.exec(requesterWith(undefined)).catch((e) => e); | Strictly restrict shell execution to an immutable allowlist of binary commands with explicit argument arrays, or execute inside microVM sandboxes. |
| HIGH | AT-SEC-006 (LLM06) | Unfiltered SSRF / Arbitrary Network Egresspackages/cli/src/utils/auth.ts:326Evidence: return await fetch(url, { | Define an explicit egress domain allowlist and block private IP ranges (127.0.0.1, 10.0.0.0/8, 169.254.169.254). |
| HIGH | AT-SEC-006 (LLM06) | Unfiltered SSRF / Arbitrary Network Egresspackages/mcp/src/lib/api.ts:159Evidence: () => fetch(url, { headers, signal: abortSignal }), | Define an explicit egress domain allowlist and block private IP ranges (127.0.0.1, 10.0.0.0/8, 169.254.169.254). |
| HIGH | AT-SEC-006 (LLM06) | Unfiltered SSRF / Arbitrary Network Egresspackages/mcp/src/lib/api.ts:200Evidence: () => fetch(url, { headers, signal: abortSignal }), | Define an explicit egress domain allowlist and block private IP ranges (127.0.0.1, 10.0.0.0/8, 169.254.169.254). |
| HIGH | AT-SEC-006 (LLM06) | Unfiltered SSRF / Arbitrary Network Egresspackages/pi/lib/api.ts:43Evidence: const response = await fetch(url, { headers: authHeaders() }); | Define an explicit egress domain allowlist and block private IP ranges (127.0.0.1, 10.0.0.0/8, 169.254.169.254). |
| HIGH | AT-SEC-006 (LLM06) | Unfiltered SSRF / Arbitrary Network Egresspackages/pi/lib/api.ts:55Evidence: const response = await fetch(url, { headers: authHeaders() }); | Define an explicit egress domain allowlist and block private IP ranges (127.0.0.1, 10.0.0.0/8, 169.254.169.254). |
| HIGH | AT-SEC-006 (LLM06) | Unfiltered SSRF / Arbitrary Network Egresspackages/sdk/src/http/index.ts:136Evidence: response = await this.fetch(url, { ...init, headers }); | Define an explicit egress domain allowlist and block private IP ranges (127.0.0.1, 10.0.0.0/8, 169.254.169.254). |
Permissions
Scope: excessive · Shell: enabled · Network egress: yes · File deletion: enabled · Human approval: none
Provenance
License: MIT · Lockfile: yes · Security policy: yes · Signals: present (documentary, not a safety verdict)
Independently scanned by the OpenTrustBench registry (not self-reported by the project). Static analysis only — no code executed, findings need human triage, counts may include test/example code. Static snapshot; re-scan before relying on it: npx @opentrustbench/cli scan https://github.com/upstash/context7. Scores move with every upstream commit; pages refresh weekly. How scoring works.