code-repository-intel
This skill uses Claude hooks which can execute code automatically in response to events. Review carefully before installing.
Code Repository Intelligence Skill
Purpose
Scan public code repositories (GitHub, GitLab) to discover technologies through dependency files, CI configurations, and language statistics.
Operations
1. find_github_org
Search for company's GitHub organization.
Search Strategies:
1. Direct org URL: github.com/{company_name}
2. GitHub search: org:{company_name}
3. Google dork: site:github.com "{company_name}"
4. Check company website for GitHub links
GitHub API (if available):
GET https://api.github.com/orgs/{org_name}
GET https://api.github.com/users/{username}
Validation:
- Organization description matches company
- Website URL in profile matches domain
- Recent activity (not abandoned)
2. analyze_repo_languages
Extract primary languages from repositories.
GitHub API:
GET https://api.github.com/repos/{owner}/{repo}/languages
Response:
{
"TypeScript": 245000,
"JavaScript": 45000,
"CSS": 12000,
"HTML": 8000
}
Language Implications:
{
"TypeScript": {"implies": ["Node.js ecosystem"], "modern": true},
"Python": {"implies": ["Backend/ML"], "frameworks": ["Django", "Flask", "FastAPI"]},
"Ruby": {"implies": ["Rails ecosystem"]},
"Go": {"implies": ["Cloud native", "Microservices"]},
"Rust": {"implies": ["Performance critical", "Systems"]},
"Java": {"implies": ["Enterprise"]},
"Kotlin": {"implies": ["Android", "JVM modern"]},
"Swift": {"implies": ["iOS/macOS"]},
"PHP": {"implies": ["Web backend"], "frameworks": ["Laravel", "Symfony"]},
"C#": {"implies": [".NET ecosystem"]}
}
3. scan_dependency_files
Parse dependency files for technology stack.
Dependency File Mapping:
package.json (Node.js):
{
"react": {"tech": "React", "confidence": 95},
"next": {"tech": "Next.js", "implies": ["React"], "confidence": 95},
"vue": {"tech": "Vue.js", "confidence": 95},
"nuxt": {"tech": "Nuxt.js", "implies": ["Vue.js"], "confidence": 95},
"express": {"tech": "Express.js", "confidence": 95},
"fastify": {"tech": "Fastify", "confidence": 95},
"nest": {"tech": "NestJS", "confidence": 95},
"prisma": {"tech": "Prisma ORM", "confidence": 95},
"mongoose": {"tech": "MongoDB", "confidence": 90},
"pg": {"tech": "PostgreSQL", "confidence": 90},
"mysql2": {"tech": "MySQL", "confidence": 90},
"redis": {"tech": "Redis", "confidence": 90},
"graphql": {"tech": "GraphQL", "confidence": 95},
"apollo-server": {"tech": "Apollo GraphQL", "confidence": 95}
}
requirements.txt / pyproject.toml (Python):
{
"django": {"tech": "Django", "confidence": 95},
"flask": {"tech": "Flask", "confidence": 95},
"fastapi": {"tech": "FastAPI", "confidence": 95},
"sqlalchemy": {"tech": "SQLAlchemy", "confidence": 90},
"celery": {"tech": "Celery", "confidence": 90},
"redis": {"tech": "Redis", "confidence": 85},
"boto3": {"tech": "AWS SDK", "confidence": 90},
"pandas": {"tech": "Data Science stack", "confidence": 70},
"tensorflow": {"tech": "TensorFlow", "confidence": 95},
"pytorch": {"tech": "PyTorch", "confidence": 95}
}
Gemfile (Ruby):
{
"rails": {"tech": "Ruby on Rails", "confidence": 95},
"sinatra": {"tech": "Sinatra", "confidence": 95},
"sidekiq": {"tech": "Sidekiq", "confidence": 90},
"pg": {"tech": "PostgreSQL", "confidence": 85}
}
go.mod (Go):
{
"gin-gonic/gin": {"tech": "Gin", "confidence": 95},
"gorilla/mux": {"tech": "Gorilla Mux", "confidence": 90},
"gorm.io/gorm": {"tech": "GORM", "confidence": 90}
}
4. detect_ci_configs
Find and analyze CI/CD configuration files.
CI Config Locations:
.github/workflows/*.yml → GitHub Actions
.gitlab-ci.yml → GitLab CI
Jenkinsfile → Jenkins
.circleci/config.yml → CircleCI
.travis.yml → Travis CI
azure-pipelines.yml → Azure Pipelines
bitbucket-pipelines.yml → Bitbucket Pipelines
.drone.yml → Drone CI
cloudbuild.yaml → Google Cloud Build
buildspec.yml → AWS CodeBuild
CI Config Analysis:
{
"github_actions": {
"indicates": "GitHub Actions CI/CD",
"signals": ["Likely GitHub-centric workflow"]
},
"gitlab_ci": {
"indicates": "GitLab CI/CD",
"signals": ["Self-hosted or GitLab.com"]
},
"jenkins": {
"indicates": "Jenkins",
"signals": ["Enterprise CI", "Self-hosted"]
}
}
5. search_dockerfile
Identify container base images and configuration.
Dockerfile Analysis:
FROM node:18-alpine → Node.js 18
FROM python:3.11-slim → Python 3.11
FROM golang:1.21 → Go 1.21
FROM ruby:3.2 → Ruby 3.2
FROM openjdk:17 → Java 17
FROM nginx:latest → nginx
FROM postgres:15 → PostgreSQL 15
FROM redis:7 → Redis 7
Docker Compose Analysis:
- Service names
- Image references
- Environment variables
- Port mappings
Output
{
"skill": "code_repository_intel",
"domain": "string",
"results": {
"organization": {
"platform": "GitHub|GitLab",
"name": "string",
"url": "string",
"verified": "boolean",
"public_repos": "number"
},
"repositories": [
{
"name": "string",
"url": "string",
"description": "string",
"languages": {
"TypeScript": 65,
"JavaScript": 25,
"CSS": 10
},
"primary_language": "TypeScript",
"last_updated": "date",
"stars": "number"
}
],
"dependencies_found": {
"node": [
{"name": "react", "version": "^18.2.0", "tech": "React"},
{"name": "next", "version": "13.4.0", "tech": "Next.js"}
],
"python": [],
"ruby": [],
"go": []
},
"ci_cd": {
"platform": "GitHub Actions",
"config_file": ".github/workflows/ci.yml",
"jobs_detected": ["build", "test", "deploy"]
},
"containerization": {
"uses_docker": true,
"base_images": ["node:18-alpine", "nginx:alpine"],
"orchestration": "Kubernetes (k8s manifests found)"
},
"technologies_summary": [
{
"name": "string",
"category": "Language|Framework|Database|Tool",
"confidence": "number",
"source": "dependency_file|ci_config|dockerfile"
}
]
},
"evidence": [
{
"type": "repository",
"url": "string",
"file": "string",
"content_sample": "string",
"timestamp": "ISO-8601"
}
]
}
Rate Limiting
- GitHub API (unauthenticated): 60 requests/hour
- GitHub API (authenticated): 5000 requests/hour
- GitLab API: 300 requests/minute
- Web scraping fallback: 10 requests/minute
Error Handling
- 404: Organization/repo doesn't exist or is private
- 403: Rate limited - wait and retry
- Continue with partial results
- Fall back to web scraping if API fails
Security Considerations
- Only access public repositories
- Do not clone repositories
- Respect rate limits
- Do not store code content
- Log all API calls for audit
More from transilienceai/communitytools
hackerone
HackerOne bug bounty automation - parses scope CSVs, deploys parallel pentesting agents for each asset, validates PoCs, and generates platform-ready submission reports. Use when testing HackerOne programs or preparing professional vulnerability submissions.
50reconnaissance
Domain assessment and web application mapping - subdomain discovery, port scanning, endpoint enumeration, API discovery, and attack surface analysis.
40ai-threat-testing
Offensive AI security testing and exploitation framework. Systematically tests LLM applications for OWASP Top 10 vulnerabilities including prompt injection, model extraction, data poisoning, and supply chain attacks. Integrates with pentest workflows to discover and exploit AI-specific threats.
38osint
Open-source intelligence gathering - company repository enumeration, secret scanning, git history analysis, employee footprint, and code exposure discovery.
37social-engineering
Social engineering testing - phishing, pretexting, vishing, and physical security assessment techniques.
37source-code-scanning
Security-focused source code review and SAST. Scans for vulnerabilities (OWASP Top 10, CWE Top 25), CVEs in third-party dependencies/packages, hardcoded secrets, malicious code, and insecure patterns. Use when given source code, a repo path, or asked to "audit", "scan", "review" code security, or "check dependencies for CVEs".
35