Vexor is a semantic search engine for files and code. It enables developers and operations teams to quickly find relevant information within their codebase or documents. Vexor integrates with existing workflows and tools, allowing users to search using natural language queries and get precise results.
git clone https://github.com/scarletkc/vexor.gitVexor enables developers to find files and code using natural language queries instead of grep patterns or directory traversal. It builds reusable semantic indexes over codebases and documents, supporting configurable embedding providers like OpenAI, Google Gemini, and Voyage AI, plus optional reranking with BM25 or FlashRank. Available as a CLI tool, Python API, and experimental desktop app, Vexor integrates into autonomous agent workflows for semantic file discovery. The tool auto-indexes on first search and stores configuration in a single JSON file, making it simple to deploy in CI environments or local development.
[{"step":"Define your search scope","action":"Specify whether Vexor should search the entire codebase, a specific repository (e.g., `backend-service`), or a subset of files (e.g., `src/**/*.js`). Use project names or file globs to narrow results.","tip":"For large codebases, start with a broad query and refine based on the results. Use Vexor’s `--limit` flag (if available) to control the number of results returned."},{"step":"Craft a natural language query","action":"Phrase your search as a question or statement, e.g., 'Find where API rate limiting is implemented' or 'Show me all Python files handling database migrations.' Avoid vague terms like 'stuff' or 'things.'","tip":"Include technical details like languages, frameworks, or error messages. For example, 'Find Go code that handles 500 errors in the HTTP client.'"},{"step":"Refine results with filters","action":"Use Vexor’s built-in filters (e.g., `--language=python`, `--file=*.yaml`) or post-process results to focus on relevant files. Sort by relevance or last modified date if needed.","tip":"Combine filters with your query for precision. Example: 'Find React components using Redux in the `frontend` repo, sorted by recent changes.'"},{"step":"Iterate and validate","action":"Review the results, open the most relevant files in your IDE, and verify the findings. If results are off-target, tweak the query or adjust the search scope.","tip":"Use Vexor’s 'similar to' feature (if available) to find files structurally similar to a known good example. For code reviews, cross-reference results with your team’s documentation."},{"step":"Integrate into your workflow","action":"Automate searches using Vexor’s CLI or API in CI/CD pipelines, IDEs (e.g., VS Code extensions), or chatbots. For example, trigger a search when a new PR is opened to check for hardcoded secrets.","tip":"Set up aliases or shortcuts for frequent searches. Example: `alias vx-auth='vexor search --repo=auth-service --query=\"JWT\"'` in your shell."}]
Finding files by functionality rather than filename in large codebases
Enabling AI coding assistants to discover relevant code autonomously
Warm-indexing repositories in CI/CD pipelines
Searching documentation and configuration files with natural language
No install command available. Check the GitHub repository for manual installation instructions.
git clone https://github.com/scarletkc/vexorCopy the install command above and run it in your terminal.
Launch Claude Code, Cursor, or your preferred AI coding agent.
Use the prompt template or examples below to test the skill.
Adapt the skill to your specific use case and workflow.
Use Vexor to search for [QUERY] in the [REPOSITORY/PROJECT_NAME] codebase or documentation. Focus on finding [SPECIFIC_ASPECT, e.g., error handling logic, API endpoints, or configuration files]. Return the most relevant file paths, line numbers, and a brief explanation of why each result is relevant. If no results are found, suggest alternative search terms or approaches.
Here’s what Vexor returned for your query to find **JWT authentication middleware in the `auth-service` repository**:
1. **File**: `src/middleware/auth.js` (Line 42-68)
**Snippet**:
```javascript
const jwt = require('jsonwebtoken');
const verifyToken = (req, res, next) => {
const token = req.headers['authorization']?.split(' ')[1];
if (!token) return res.status(401).json({ error: 'Unauthorized' });
jwt.verify(token, process.env.JWT_SECRET, (err, decoded) => {
if (err) return res.status(403).json({ error: 'Invalid token' });
req.user = decoded;
next();
});
};
```
**Relevance**: This is the core JWT verification middleware used across all protected routes in the service. The `verifyToken` function is referenced in `src/routes/protected.js` (Line 12).
2. **File**: `src/config/jwt.js` (Line 15-25)
**Snippet**:
```javascript
module.exports = {
secret: process.env.JWT_SECRET,
expiresIn: '1h',
algorithm: 'HS256'
};
```
**Relevance**: Defines the JWT configuration, including the secret key and token expiration. This is imported in `src/middleware/auth.js`.
3. **File**: `tests/middleware/auth.test.js` (Line 33-50)
**Snippet**:
```javascript
describe('JWT Authentication', () => {
it('should reject requests without a token', async () => {
const res = await request(app).get('/protected');
expect(res.status).toBe(401);
});
});
```
**Relevance**: Contains unit tests for the JWT middleware, validating edge cases like missing tokens.
**Suggestions**: If you’re looking for how tokens are generated, try searching for `jwt.sign` or `generateToken`. For deployment-specific JWT settings, check `k8s/deployment.yaml` for environment variable references.Find what you're looking for
AI-powered smart trading platform
Mobile advertising beyond Google's reach
Get more done every day with Microsoft Teams – powered by AI
Automate your spreadsheet tasks with AI power
Enterprise workflow automation and service management platform
Take a free 3-minute scan and get personalized AI skill recommendations.
Take free scan