Implements MCP server for semantic search across GSD projects: MCP Tools: - gsd_memory_search: Search across all registered projects - gsd_memory_decisions: Find decisions from SUMMARY/PROJECT.md - gsd_memory_patterns: Find patterns from SUMMARY.md - gsd_memory_pitfalls: Find pitfalls from RESEARCH.md - gsd_memory_stack: Find tech stack entries - gsd_memory_register: Register project with memory - gsd_memory_index: Trigger indexing/update - gsd_memory_status: Show system status Architecture: - QMD wrapper with grep fallback when QMD unavailable - YAML frontmatter extractors for GSD document types - Project registry at ~/.gsd/projects.json - Auto-install via bin/install.js for Claude Code Workflow integrations: - new-project: Registers project with memory - plan-phase: Indexes after planning - execute-phase: Indexes after execution - complete-milestone: Indexes milestone completion - Researcher agents query memory before Context7 Tests: 117 passing (66 unit + 51 integration) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
67 lines
1.7 KiB
TypeScript
67 lines
1.7 KiB
TypeScript
export interface QmdSearchResult {
|
|
content: string;
|
|
source: string;
|
|
relevance: number;
|
|
context?: string;
|
|
}
|
|
export interface QmdSearchOptions {
|
|
query: string;
|
|
paths: string[];
|
|
limit?: number;
|
|
collection?: string;
|
|
}
|
|
export interface QmdCollectionOptions {
|
|
name: string;
|
|
paths: string[];
|
|
context?: string;
|
|
}
|
|
export interface QmdResult {
|
|
success: boolean;
|
|
reason?: string;
|
|
data?: unknown;
|
|
}
|
|
export interface QmdStatus {
|
|
available: boolean;
|
|
collection?: string;
|
|
documentCount?: number;
|
|
lastIndexed?: string;
|
|
}
|
|
/**
|
|
* QMD wrapper - provides semantic search when QMD is available,
|
|
* falls back to grep-based search otherwise
|
|
*/
|
|
export declare const qmd: {
|
|
/**
|
|
* Check if QMD is installed and available
|
|
*/
|
|
isAvailable(): Promise<boolean>;
|
|
/**
|
|
* Search for content using QMD or grep fallback
|
|
*/
|
|
search(options: QmdSearchOptions): Promise<QmdSearchResult[]>;
|
|
/**
|
|
* Search using QMD (when available)
|
|
*/
|
|
qmdSearch(options: QmdSearchOptions): Promise<QmdSearchResult[]>;
|
|
/**
|
|
* Grep-based fallback search
|
|
*/
|
|
grepFallback(options: QmdSearchOptions): Promise<QmdSearchResult[]>;
|
|
/**
|
|
* Find all markdown files in a directory recursively
|
|
*/
|
|
findMarkdownFiles(dir: string, files?: string[]): string[];
|
|
/**
|
|
* Create a QMD collection for a project
|
|
*/
|
|
createCollection(options: QmdCollectionOptions): Promise<QmdResult>;
|
|
/**
|
|
* Trigger reindexing of a collection
|
|
*/
|
|
index(collectionName: string): Promise<QmdResult>;
|
|
/**
|
|
* Get status of a collection
|
|
*/
|
|
status(collectionName: string): Promise<QmdStatus>;
|
|
};
|
|
//# sourceMappingURL=qmd.d.ts.map
|