cortexweaver
Version:
CortexWeaver is a command-line interface (CLI) tool that orchestrates a swarm of specialized AI agents, powered by Claude Code and Gemini CLI, to assist in software development. It transforms a high-level project plan (plan.md) into a series of coordinate
66 lines • 2.73 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.FileAnalyzer = exports.WorkspaceOperations = exports.WorkspaceManager = void 0;
const workspace_operations_1 = require("./workspace-operations");
Object.defineProperty(exports, "WorkspaceOperations", { enumerable: true, get: function () { return workspace_operations_1.WorkspaceOperations; } });
/**
* WorkspaceManager handles project workspace operations including git worktrees,
* code file scanning, and workspace management
*/
class WorkspaceManager {
constructor(projectRoot = process.cwd()) {
this.projectRoot = projectRoot;
this.operations = new workspace_operations_1.WorkspaceOperations(projectRoot);
}
getProjectRoot() {
return this.projectRoot;
}
getWorktreePath(taskId) {
return this.operations.getWorktreePath(taskId);
}
// Worktree management
async createWorktree(taskId, branchName, baseBranch = 'main') {
return this.operations.createWorktree(taskId, branchName, baseBranch);
}
async removeWorktree(taskId) {
return this.operations.removeWorktree(taskId);
}
async listWorktrees() {
return this.operations.listWorktrees();
}
async executeCommand(taskId, command) {
return this.operations.executeCommand(taskId, command);
}
async commitChanges(taskId, message, files) {
return this.operations.commitChanges(taskId, message, files);
}
async mergeToBranch(taskId, targetBranch = 'main') {
return this.operations.mergeToBranch(taskId, targetBranch);
}
async getWorktreeStatus(taskId) {
return this.operations.getWorktreeStatus(taskId);
}
// Code file operations
async scanCodeFiles(options = {}) {
return this.operations.scanCodeFiles(options);
}
async getCodeFiles(filePaths, includeContent = false) {
return this.operations.getCodeFiles(filePaths, includeContent);
}
async searchFiles(pattern, options = {}) {
return this.operations.searchFiles(pattern, options);
}
async getRecentlyModifiedFiles(sinceHours = 24, options = {}) {
return this.operations.getRecentlyModifiedFiles(sinceHours, options);
}
async getFilesByLanguage(language, options = {}) {
return this.operations.getFilesByLanguage(language, options);
}
async readFileContent(filePath) {
return this.operations.readFileContent(filePath);
}
}
exports.WorkspaceManager = WorkspaceManager;
var file_analyzer_1 = require("./file-analyzer");
Object.defineProperty(exports, "FileAnalyzer", { enumerable: true, get: function () { return file_analyzer_1.FileAnalyzer; } });
//# sourceMappingURL=index.js.map