Files
msd-core/gsd-memory/dist/qmd.d.ts
Lex Christopherson af7a057294 feat: add GSD Memory cross-project knowledge system
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>
2026-02-05 13:13:22 -06:00

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