@tosin2013/mcp-shrimp-task-manager
Version:
Enhanced MCP Shrimp Task Manager with comprehensive LLM integration. A task management tool built for AI Agents, emphasizing chain-of-thought, reflection, and style consistency. Features real GPT-4 ↔ MCP tools communication, comprehensive testing pipeline
81 lines (80 loc) • 3.87 kB
TypeScript
/**
* Specification Manager for the Idea Honing Tool
*
* This component handles the creation, storage, and retrieval of specification documents.
*/
import { SpecificationDocument } from '../models/specification.js';
import { SearchFilter, SearchResult } from '../utils/search-indexer.js';
/**
* Creates a new specification document
*
* @param title - Title of the specification
* @param description - Description of the feature or idea
* @param author - Author of the specification
* @param templateName - Name of the template to use (defaults to 'default-template')
* @param projectId - Optional project identifier
* @param featureId - Optional feature identifier
* @param additionalData - Optional additional data for template rendering
* @returns Promise that resolves with the created specification
*/
export declare function createSpecification(title: string, description: string, author: string, templateName?: string, projectId?: string, featureId?: string, additionalData?: Record<string, any>): Promise<SpecificationDocument>;
/**
* Retrieves a specification document by ID
*
* @param specId - Specification identifier
* @param projectId - Optional project identifier
* @returns Promise that resolves with the retrieved specification
*/
export declare function getSpecification(specId: string, projectId?: string): Promise<SpecificationDocument>;
/**
* Updates a specification document
*
* @param specId - Specification identifier
* @param updates - Updates to apply to the specification
* @param author - Author of the changes
* @param changeDescription - Description of the changes
* @returns Promise that resolves with the updated specification
*/
export declare function updateSpecification(specId: string, updates: Partial<SpecificationDocument>, author: string, changeDescription: string): Promise<SpecificationDocument>;
/**
* Lists all specifications, optionally filtered by project
*
* @param projectId - Optional project identifier to filter by
* @returns Promise that resolves with an array of specification metadata
*/
export declare function listAllSpecifications(projectId?: string): Promise<any[]>;
/**
* Searches for specifications by keyword and filters
*
* @param query - Search query
* @param filters - Optional search filters
* @returns Promise that resolves with an array of search results
*/
export declare function searchSpecifications(query: string, filters?: SearchFilter): Promise<SearchResult[]>;
/**
* Resolves conflicts between different versions of a specification
*
* @param specId - Specification identifier
* @param conflictingVersions - Array of conflicting versions
* @param resolutionStrategy - Strategy for resolving conflicts ('latest', 'merge', or 'manual')
* @param manualResolution - Manual resolution data (required if strategy is 'manual')
* @param author - Author of the resolution
* @returns Promise that resolves with the resolved specification
*/
/**
* Rebuilds the search index for all specifications
*
* @returns Promise that resolves when the index is rebuilt
*/
export declare function rebuildSearchIndex(): Promise<void>;
/**
* Resolves conflicts between different versions of a specification
*
* @param specId - Specification identifier
* @param conflictingVersions - Array of conflicting versions
* @param resolutionStrategy - Strategy for resolving conflicts ('latest', 'merge', or 'manual')
* @param manualResolution - Manual resolution data (required if strategy is 'manual')
* @param author - Author of the resolution
* @returns Promise that resolves with the resolved specification
*/
export declare function resolveConflicts(specId: string, conflictingVersions: SpecificationDocument[], resolutionStrategy: 'latest' | 'merge' | 'manual', manualResolution?: Partial<SpecificationDocument>, author?: string): Promise<SpecificationDocument>;