Skip to content

Instantly share code, notes, and snippets.

@johnlindquist
Created November 28, 2025 02:24
Show Gist options
  • Select an option

  • Save johnlindquist/bbc2964490cecfe27700ff7edcb4bbfe to your computer and use it in GitHub Desktop.

Select an option

Save johnlindquist/bbc2964490cecfe27700ff7edcb4bbfe to your computer and use it in GitHub Desktop.
Cached Codemap: lootbox-bun - MCP tool server with AI agents, Chrome DevTools, and multi-model support
{
"version": 1,
"repoPath": "/Users/johnlindquist/dev/lootbox-bun",
"repoName": "lootbox-bun",
"createdAt": "2025-11-27T16:26:55.301Z",
"lastValidatedAt": "2025-11-27T16:26:55.301Z",
"gitCommitHash": "cac0dbbfa099f833bcf620d3e8b00d60e731ab45",
"codemap": "<prompt>\n <files>\n <file path=\"ui/tsconfig.node.json\" type=\"json\" format=\"codemap\">\n// No signatures extracted\n </file>\n <file path=\"ui/index.html\" type=\"html\" format=\"codemap\">\n// No signatures extracted\n </file>\n <file path=\"ui/tailwind.config.js\" type=\"javascript\" format=\"codemap\">\n// No signatures extracted\n </file>\n <file path=\"ui/package.json\" type=\"json\" format=\"codemap\">\n// No signatures extracted\n </file>\n <file path=\"ui/components.json\" type=\"json\" format=\"codemap\">\n// No signatures extracted\n </file>\n <file path=\"ui/tsconfig.json\" type=\"json\" format=\"codemap\">\n// No signatures extracted\n </file>\n <file path=\"ui/vite.config.ts\" type=\"typescript\" format=\"codemap\">\n// No signatures extracted\n </file>\n <file path=\"ui/postcss.config.js\" type=\"javascript\" format=\"codemap\">\n// No signatures extracted\n </file>\n <file path=\"ui/src/App.tsx\" type=\"typescript\" format=\"codemap\">\nfunction App() {\n </file>\n <file path=\"ui/src/main.tsx\" type=\"typescript\" format=\"codemap\">\n// No signatures extracted\n </file>\n <file path=\"ui/src/index.css\" type=\"css\" format=\"codemap\">\n// No signatures extracted\n </file>\n <file path=\"ui/src/components/ui/tabs.tsx\" type=\"typescript\" format=\"codemap\">\n// No signatures extracted\n </file>\n <file path=\"ui/src/components/ui/card.tsx\" type=\"typescript\" format=\"codemap\">\n// No signatures extracted\n </file>\n <file path=\"ui/src/components/ui/scroll-area.tsx\" type=\"typescript\" format=\"codemap\">\n// No signatures extracted\n </file>\n <file path=\"ui/src/components/ui/label.tsx\" type=\"typescript\" format=\"codemap\">\n// No signatures extracted\n </file>\n <file path=\"ui/src/components/ui/alert.tsx\" type=\"typescript\" format=\"codemap\">\n// No signatures extracted\n </file>\n <file path=\"ui/src/components/ui/dialog.tsx\" type=\"typescript\" format=\"codemap\">\nconst DialogHeader = ({ className, ...props }: React.HTMLAttributes<HTMLDivElement>) => (\nconst DialogFooter = ({ className, ...props }: React.HTMLAttributes<HTMLDivElement>) => (\n </file>\n <file path=\"ui/src/components/ui/badge.tsx\" type=\"typescript\" format=\"codemap\">\nfunction Badge({ className, variant, ...props }: BadgeProps) {\n </file>\n <file path=\"ui/src/components/ui/table.tsx\" type=\"typescript\" format=\"codemap\">\n// No signatures extracted\n </file>\n <file path=\"ui/src/components/ui/separator.tsx\" type=\"typescript\" format=\"codemap\">\n// No signatures extracted\n </file>\n <file path=\"ui/src/components/ui/button.tsx\" type=\"typescript\" format=\"codemap\">\n// No signatures extracted\n </file>\n <file path=\"ui/src/components/ui/toast.tsx\" type=\"typescript\" format=\"codemap\">\n// No signatures extracted\n </file>\n <file path=\"ui/src/components/ui/dropdown-menu.tsx\" type=\"typescript\" format=\"codemap\">\nconst DropdownMenuShortcut = ({ className, ...props }: React.HTMLAttributes<HTMLSpanElement>) => {\n </file>\n <file path=\"ui/src/components/ui/select.tsx\" type=\"typescript\" format=\"codemap\">\n// No signatures extracted\n </file>\n <file path=\"ui/src/components/ui/input.tsx\" type=\"typescript\" format=\"codemap\">\n// No signatures extracted\n </file>\n <file path=\"ui/src/lib/api-client.ts\" type=\"typescript\" format=\"codemap\">\nexport interface HealthResponse {\nexport const apiClient = {\n </file>\n <file path=\"ui/src/lib/utils.ts\" type=\"typescript\" format=\"codemap\">\nexport function cn(...inputs: ClassValue[]) {\n </file>\n <file path=\"ui/src/lib/query-provider.tsx\" type=\"typescript\" format=\"codemap\">\nexport const queryClient = new QueryClient({ defaultOptions: { queries: { staleTime: 1000 * 60 * 5, // 5 minutes refetchOnWindowFocus: false,\ninterface QueryProviderProps {\n </file>\n <file path=\"ui/src/lib/hooks.ts\" type=\"typescript\" format=\"codemap\">\n// No signatures extracted\n </file>\n <file path=\"ui/src/lib/websocket-client.ts\" type=\"typescript\" format=\"codemap\">\nexport interface FunctionsUpdatedMessage {\nexport interface WelcomeMessage {\nexport class WebSocketClient {\nexport const wsClient = new WebSocketClient();\ninterface PendingCall {\n </file>\n <file path=\"ui/src/pages/Dashboard.tsx\" type=\"typescript\" format=\"codemap\">\n// No signatures extracted\n </file>\n <file path=\"LLM_QUICK_START.md\" type=\"markdown\" format=\"codemap\">\n// No signatures extracted\n </file>\n <file path=\"create_test_data.ts\" type=\"typescript\" format=\"codemap\">\nconst rpc = (method: string, args: any) => {\n </file>\n <file path=\"test/test_tools.ts\" type=\"typescript\" format=\"codemap\">\nconst createResult = await tools.memory.createEntities({ entities: [{ name: \"test-entity\", type: \"demo\", properties: { message: \"Hello World\" },\nconst getEntity = await tools.memory.getEntity({ name: \"test-entity\" });\n </file>\n <file path=\"test/test_parallel.ts\" type=\"typescript\" format=\"codemap\">\n// No signatures extracted\n </file>\n <file path=\"test/test_fetch.ts\" type=\"typescript\" format=\"codemap\">\n// No signatures extracted\n </file>\n <file path=\"test/test_stdin.ts\" type=\"typescript\" format=\"codemap\">\n// No signatures extracted\n </file>\n <file path=\"test/test_kv.ts\" type=\"typescript\" format=\"codemap\">\nconst value = await tools.kv.get({ key: \"greeting\" });\nconst keys = await tools.kv.list({ prefix: \"greet\" });\n </file>\n <file path=\"test/test_stdin_methods.ts\" type=\"typescript\" format=\"codemap\">\n// No signatures extracted\n </file>\n <file path=\"cpu-spike-expert-bundle.md\" type=\"markdown\" format=\"codemap\">\ninterface CallMessage {\ninterface ShutdownMessage {\ntype WorkerMessage = CallMessage | ShutdownMessage;\ntype ProgressCallback = (callId: string, message: string) => void;\ninterface WorkerState {\ninterface IdentifyMessage {\ninterface ReadyMessage {\ninterface ResultMessage {\ninterface ErrorMessage {\ninterface CrashMessage {\ninterface ProgressMessage {\ntype WorkerIncomingMessage =\nexport class WorkerManager {\nexport class FileWatcherManager {\ninterface HealthMetrics {\ninterface HealthStatus {\nexport class HealthMonitor {\nexport function getHealthMonitor(): HealthMonitor {\nexport class WebSocketRpcServer {\ninterface WebSocketContext {\nexport interface WebSocketHandler {\nexport class ConnectionManager {\ninterface RpcMessage {\ninterface ScriptMessage {\nexport interface RpcResponse {\nexport class MessageRouter {\nexport class RpcCacheManager {\n </file>\n <file path=\"mcp-bridge.ts\" type=\"typescript\" format=\"codemap\">\ninterface RpcFunction {\ninterface ToolSchema {\ninterface ServerStatus {\nasync function checkServerHealth(): Promise<ServerStatus> {\nasync function fetchFunctions(): Promise<RpcFunction[]> {\nasync function main() {\n </file>\n <file path=\"install.sh\" type=\"bash\" format=\"codemap\">\n// No signatures extracted\n </file>\n <file path=\".mcp.json\" type=\"json\" format=\"codemap\">\n// No signatures extracted\n </file>\n <file path=\"bunfig.toml\" type=\"toml\" format=\"codemap\">\n// No signatures extracted\n </file>\n <file path=\"README.md\" type=\"markdown\" format=\"codemap\">\nexport interface CreateArgs {\nexport interface CreateResult {\nexport function wrongSignature(x: number, y: string) {}\n </file>\n <file path=\".gitignore\" type=\"text\" format=\"codemap\">\n// No signatures extracted\n </file>\n <file path=\"package.json\" type=\"json\" format=\"codemap\">\n// No signatures extracted\n </file>\n <file path=\"scripts/bump-version.ts\" type=\"typescript\" format=\"codemap\">\nasync function bumpVersion(type: \"major\" | \"minor\" | \"patch\"): Promise<string> {\n </file>\n <file path=\"test-codemap.ts\" type=\"typescript\" format=\"codemap\">\nasync function test() {\n </file>\n <file path=\"tsconfig.json\" type=\"json\" format=\"codemap\">\n// No signatures extracted\n </file>\n <file path=\".lootbox/tools/article.ts\" type=\"typescript\" format=\"codemap\">\nexport function setProgressCallback(callback: ProgressCallback | null): void {\nexport async function verify(args: { article: string; research?: boolean; timeout_seconds?: number; }): Promise<VerificationResult> {\nexport async function generate(args: { topic: string; title?: string; style?: ArticleStyle; research_context?: string;\nexport async function list_styles(): Promise<{\nexport async function get_style_guide(): Promise<{\nexport async function revise(args: { article: string; feedback: string; verify?: boolean; output_path?: string;\ninterface CodeSnippet {\ninterface VerificationIssue {\ninterface VerificationResult {\ninterface ArticleResult {\nfunction sendProgress(message: string): void {\nconst EXAMPLE_EXCERPTS = {\nfunction parseClaudeOutput(rawOutput: string): string {\nfunction parseGeminiOutput(rawOutput: string): string {\nfunction extractCodeSnippets(article: string): CodeSnippet[] {\nasync function verifyTypeScriptSyntax(code: string): Promise<{ valid: boolean; error?: string }> {\nasync function verifyBashCommand(code: string): Promise<{ valid: boolean; error?: string; warnings?: string[] }> {\nfunction buildArticlePrompt(opts: { topic: string; title?: string; style: ArticleStyle; exampleExcerpt: string;\nfunction extractTitle(article: string): string {\n </file>\n <file path=\".lootbox/tools/mcp_spy.ts\" type=\"typescript\" format=\"codemap\">\nexport async function record_request(args: { server: string; method: string; tool_name?: string; params?: unknown;\nexport async function record_response(args: { server: string; request_id?: string | number; result?: unknown; error?: string;\nexport async function get_traffic(args: { server?: string; tool_name?: string; method?: string; direction?: \"request\" | \"response\";\nexport async function get_message(args: { message_id: string; }): Promise<{ success: boolean; message?: McpMessage; error?: string }> {\nexport async function get_request_pair(args: { server: string; request_id: string | number; }): Promise<{\nexport async function get_latency_stats(args: { server?: string; tool_name?: string; }): Promise<{\nexport async function get_server_summary(args: Record<string, never> = {}): Promise<{\nexport async function clear_traffic(args: { clear_files?: boolean; server?: string; }): Promise<{ success: boolean; cleared_count?: number; error?: string }> {\nexport async function load_traffic(args: { server?: string; }): Promise<{ success: boolean; loaded_count?: number; error?: string }> {\nexport async function export_traffic(args: { output_path: string; server?: string; format?: \"json\" | \"jsonl\"; }): Promise<{ success: boolean; exported_count?: number; error?: string }> {\nexport async function get_replay_request(args: { message_id: string; }): Promise<{\nexport async function find_failed_requests(args: { server?: string; limit?: number; }): Promise<{\ninterface McpMessage {\nfunction ensureTrafficDir(): void {\nfunction generateId(): string {\n </file>\n <file path=\".lootbox/tools/deep_research.ts\" type=\"typescript\" format=\"codemap\">\nexport function setProgressCallback(callback: ProgressCallback | null): void {\nexport async function deep_research(args: { topic: string; depth?: \"quick\" | \"standard\" | \"thorough\"; focus?: string; include_gaps?: boolean;\nexport async function quick_research(args: { topic: string; focus?: string; }): Promise<{\nexport async function explore_subtopic(args: { main_topic: string; subtopic: string; context?: string; }): Promise<{\nexport async function compare_topics(args: { items: string[]; criteria?: string[]; context?: string; }): Promise<{\nexport async function research_timeline(args: { topic: string; time_range?: string; }): Promise<{\nexport async function gather_expert_opinions(args: { topic: string; perspective?: \"academic\" | \"industry\" | \"policy\" | \"all\"; }): Promise<{\nexport async function generate_report(args: { research: DeepResearchResult; format?: \"markdown\" | \"outline\" | \"executive_summary\"; include_methodology?: boolean; }): Promise<{\ninterface SearchResult {\ninterface AgentAnalysis {\ninterface ExpandedQueries {\ninterface DeepResearchResult {\nfunction sendProgress(message: string): void {\n </file>\n <file path=\".lootbox/tools/deepwiki.test.ts\" type=\"typescript\" format=\"codemap\">\n// No signatures extracted\n </file>\n <file path=\".lootbox/tools/deepwiki.ts\" type=\"typescript\" format=\"codemap\">\nexport async function read_wiki_structure(args: { repo_name: string; }): Promise<{ success: boolean; structure?: string; error?: string }> {\nexport async function read_wiki_contents(args: { repo_name: string; }): Promise<{ success: boolean; contents?: string; error?: string }> {\nexport async function ask_question(args: { repo_name: string; question: string; }): Promise<{ success: boolean; answer?: string; error?: string }> {\nfunction parseSSEResponse(text: string): { result?: unknown; error?: { message: string } } {\nasync function initializeSession(): Promise<{ success: boolean; sessionId?: string; error?: string }> {\nasync function getSession(): Promise<{ success: boolean; sessionId?: string; error?: string }> {\n </file>\n <file path=\".lootbox/tools/deep_think.ts\" type=\"typescript\" format=\"codemap\">\nexport function setProgressCallback(callback: ProgressCallback | null): void {\nexport async function deep_think(args: { problem: string; depth?: \"quick\" | \"standard\" | \"thorough\"; frameworks?: FrameworkKey[]; context?: string;\nexport async function quick_think(args: { question: string; approach?: \"first_principles\" | \"systematic\" | \"critical\" | \"creative\"; }): Promise<{\nexport async function challenge_idea(args: { idea: string; context?: string; intensity?: \"gentle\" | \"moderate\" | \"aggressive\"; }): Promise<{\nexport async function evaluate_options(args: { question: string; options: string[]; criteria?: string[]; context?: string;\nexport async function identify_assumptions(args: { statement: string; domain?: string; }): Promise<{\nexport async function explore_consequences(args: { action: string; timeframes?: (\"immediate\" | \"short_term\" | \"long_term\")[];\nexport async function build_mental_model(args: { concept: string; purpose?: string; }): Promise<{\nexport async function list_frameworks(): Promise<{\ninterface AgentConfig {\ninterface AgentThought {\ninterface DeepThinkResult {\nfunction sendProgress(message: string): void {\nconst REASONING_FRAMEWORKS = {\nconst AGENTS: Record<string, AgentConfig> = {\nfunction parseCodexJsonl(rawOutput: string): string {\n </file>\n <file path=\".lootbox/tools/basic_memory.test.ts\" type=\"typescript\" format=\"codemap\">\n// No signatures extracted\n </file>\n <file path=\".lootbox/tools/claude_bundle.ts\" type=\"typescript\" format=\"codemap\">\nexport async function bundle_claude_md(args: { source_path?: string; include_skills?: boolean; }): Promise<{ success: boolean; bundle?: string; file_count?: number; error?: string }> {\nexport async function create_claude_gist(args: { source_path?: string; public?: boolean; description?: string; include_skills?: boolean;\nexport async function list_claude_imports(args: { source_path?: string; include_skills?: boolean; }): Promise<{ success: boolean; files?: string[]; error?: string }> {\nfunction resolvePath(filepath: string, baseDir: string): string {\nfunction parseImports(content: string): string[] {\nfunction discoverSkillFiles(skillsDir: string = SKILLS_DIR): string[] {\nfunction createBundle(files: { path: string; content: string }[]): string {\n </file>\n <file path=\".lootbox/tools/stuck.ts\" type=\"typescript\" format=\"codemap\">\nexport function setProgressCallback(callback: ProgressCallback | null): void {\nexport async function unstuck(args: StuckInput): Promise<StuckResult> {\nexport async function quick_unstuck(args: { problem: string; error_message?: string; library?: string; }): Promise<StuckResult> {\nexport async function code_unstuck(args: { problem: string; file_paths: string[]; error_message?: string; }): Promise<StuckResult> {\nexport async function library_unstuck(args: { problem: string; library: string; repo?: string; error_message?: string;\ninterface StuckInput {\ninterface AnalysisResult {\ninterface StuckResult {\nfunction sendProgress(message: string): void {\nfunction setupChildProgress() {\nfunction inferRepo(library: string): string | null {\n </file>\n <file path=\".lootbox/tools/shared/response_history.ts\" type=\"typescript\" format=\"codemap\">\nexport interface ResponseMetadata {\nexport interface SavedResponse {\nexport interface HistoryEntry {\nexport function getHistoryDir(): string {\nexport async function listRecent(limit = 20): Promise<HistoryEntry[]> {\nexport async function searchResponses(opts: { tool?: string; tags?: string[]; query?: string; limit?: number;\nexport async function rebuildIndex(): Promise<{ entries: number; file: string }> {\nexport async function saveToolResponse(opts: { tool: string; topic: string; content: string; query?: string;\nfunction serializeYaml(obj: Record<string, unknown>, indent = 0): string {\nfunction getNextSequence(dirPath: string): string {\nfunction slugify(text: string): string {\nfunction getSortedDirs(dirPath: string): string[] {\nasync function parseFileMetadata(filepath: string): Promise<HistoryEntry | null> {\n </file>\n <file path=\".lootbox/tools/shared/types.test.ts\" type=\"typescript\" format=\"codemap\">\n// No signatures extracted\n </file>\n <file path=\".lootbox/tools/shared/mcp-session.test.ts\" type=\"typescript\" format=\"codemap\">\n// No signatures extracted\n </file>\n <file path=\".lootbox/tools/shared/logging.test.ts\" type=\"typescript\" format=\"codemap\">\n// No signatures extracted\n </file>\n <file path=\".lootbox/tools/shared/test-utils.ts\" type=\"typescript\" format=\"codemap\">\nexport function createMcpResultResponse(result: unknown, sessionId?: string): Response {\nexport function createMcpErrorResponse(message: string, sessionId?: string): Response {\nexport function createMcpTextContent(text: string): unknown {\nexport function createTempDir(): string {\nexport function mockFetchSequence(responses: Response[]): void {\nexport function saveFetch(): void {\nexport function restoreFetch(): void {\n </file>\n <file path=\".lootbox/tools/shared/types.ts\" type=\"typescript\" format=\"codemap\">\nexport type ToolResult<T = unknown> = {\nexport interface TimeoutOptions {\nexport interface PaginationOptions {\nexport function ok<T>(data: T): ToolResult<T> {\nexport function err<T = unknown>(error: string): ToolResult<T> {\nexport function extractErrorMessage(error: unknown): string {\n </file>\n <file path=\".lootbox/tools/shared/mcp-session.ts\" type=\"typescript\" format=\"codemap\">\nexport interface McpSession {\nexport interface McpSessionConfig {\nexport function parseSSEResponse(text: string): { result?: unknown; error?: { message: string } } {\nexport function extractMcpTextContent(result: unknown): string {\nexport function createRequestManager(timeout: number = 30000) {\nconst DEFAULT_CONFIG: Required<McpSessionConfig> = {\n </file>\n <file path=\".lootbox/tools/shared/index.ts\" type=\"typescript\" format=\"codemap\">\n// No signatures extracted\n </file>\n <file path=\".lootbox/tools/shared/codemap-cache.ts\" type=\"typescript\" format=\"codemap\">\nexport async function invalidateCodeMapCache(repoPath?: string): Promise<void> {\nexport async function getCodeMapMetadata(repoPath?: string): Promise<CodeMapMetadata | null> {\nexport async function withCodeMapContext(prompt: string, repoPath?: string): Promise<string> {\nexport function listCachedCodeMaps(): Array<{ file: string; repoName: string; modifiedAt: Date }> {\nexport function clearAllCodeMapCaches(): number {\ninterface CodeMapCache {\ninterface CodeMapMetadata {\nasync function getGitHead(repoPath: string): Promise<string | null> {\nasync function getGitRoot(startPath: string): Promise<string | null> {\nasync function getRepoName(repoPath: string): Promise<string> {\nasync function countCommitsSince(repoPath: string, sinceCommit: string): Promise<number> {\nfunction getCacheFilePath(repoPath: string, repoName: string): string {\nfunction getLockFilePath(cacheFilePath: string): string {\nfunction ensureCacheDir(): void {\nfunction acquireLock(lockFile: string): boolean {\nfunction releaseLock(lockFile: string): void {\nfunction readCache(cacheFile: string): CodeMapCache | null {\nfunction writeCache(cacheFile: string, cache: CodeMapCache): void {\nfunction touchCache(cacheFile: string, cache: CodeMapCache): void {\nasync function generateCodeMap(repoPath: string): Promise<string> {\n </file>\n <file path=\".lootbox/tools/shared/logging.ts\" type=\"typescript\" format=\"codemap\">\nexport const DEFAULT_LOG_DIR = join(process.env.HOME || \"/tmp\", \".lootbox-logs\");\nexport function createLogger(toolName: string, logDir: string = DEFAULT_LOG_DIR) {\n </file>\n <file path=\".lootbox/tools/basic_memory.ts\" type=\"typescript\" format=\"codemap\">\nexport async function write_memory(args: { title: string; content: string; folder?: string; tags?: string;\nexport async function read_memory(args: { permalink: string; }): Promise<{ success: boolean; content?: string; error?: string }> {\nexport async function search_memories(args: { query: string; page_size?: number; }): Promise<{ success: boolean; results?: string; error?: string }> {\nexport async function list_memories(args: { page_size?: number; }): Promise<{ success: boolean; memories?: string; error?: string }> {\nexport async function build_context(args: { topic: string; }): Promise<{ success: boolean; context?: string; error?: string }> {\n </file>\n <file path=\".lootbox/tools/chrome_devtools.test.ts\" type=\"typescript\" format=\"codemap\">\n// No signatures extracted\n </file>\n <file path=\".lootbox/tools/gemini.ts\" type=\"typescript\" format=\"codemap\">\nexport function setProgressCallback(callback: ProgressCallback | null): void {\nexport async function research(args: { prompt: string; context?: string; }): Promise<{ success: boolean; result?: string; error?: string }> {\nexport async function summarize(args: { file_path?: string; content?: string; focus?: string; }): Promise<{ success: boolean; summary?: string; error?: string }> {\nexport async function analyze_code(args: { file_path?: string; code?: string; question: string; }): Promise<{ success: boolean; analysis?: string; error?: string }> {\nexport async function compare(args: { items: Array<{ label: string; content: string }>; comparison_prompt: string; }): Promise<{ success: boolean; comparison?: string; error?: string }> {\nexport async function think(args: { problem: string; constraints?: string; }): Promise<{ success: boolean; reasoning?: string; error?: string }> {\nexport async function extract(args: { content: string; extract_what: string; output_format?: string; }): Promise<{ success: boolean; extracted?: string; error?: string }> {\nexport async function ask(args: { question: string; }): Promise<{ success: boolean; answer?: string; error?: string }> {\nexport async function web_search(args: { query: string; focus?: string; }): Promise<{ success: boolean; results?: string; error?: string }> {\nexport async function get_news(args: { topic: string; timeframe?: string; }): Promise<{ success: boolean; news?: string; error?: string }> {\nexport async function lookup(args: { query: string; }): Promise<{ success: boolean; info?: string; error?: string }> {\nexport async function analyze_project(args: { file_paths: string[]; question: string; focus?: string; }): Promise<{ success: boolean; analysis?: string; files_read?: number; error?: string }> {\nexport async function evaluate_options(args: { problem: string; options: string[]; file_paths?: string[]; criteria?: string[];\nexport async function plan_implementation(args: { goal: string; file_paths: string[]; constraints?: string[]; style?: \"detailed\" | \"high-level\";\nexport async function review_code(args: { file_paths: string[]; focus?: \"security\" | \"performance\" | \"maintainability\" | \"all\"; severity_threshold?: \"critical\" | \"warning\" | \"info\"; }): Promise<{\nexport async function reason_through(args: { problem: string; file_paths?: string[]; constraints?: string[]; output_format?: \"reasoning\" | \"decision\" | \"both\";\nexport async function trace_flow(args: { starting_point: string; file_paths: string[]; trace_type?: \"data\" | \"execution\" | \"dependencies\"; question?: string;\nfunction sendProgress(message: string): void {\n </file>\n <file path=\".lootbox/tools/gemini_image.ts\" type=\"typescript\" format=\"codemap\">\nexport function setProgressCallback(callback: ProgressCallback | null): void {\nexport async function analyze_image(args: { image_path: string; instructions?: string; }): Promise<{ success: boolean; analysis?: string; error?: string }> {\nexport async function extract_text(args: { image_path: string; format?: \"plain\" | \"structured\" | \"json\"; }): Promise<{ success: boolean; text?: string; error?: string }> {\nexport async function identify_elements(args: { image_path: string; focus?: \"objects\" | \"people\" | \"text\" | \"logos\" | \"all\"; }): Promise<{ success: boolean; elements?: string; error?: string }> {\nexport async function compare_images(args: { image_path_1: string; image_path_2: string; comparison_type?: \"differences\" | \"similarities\" | \"both\"; }): Promise<{ success: boolean; comparison?: string;...\nexport async function ask_about_image(args: { image_path: string; question: string; }): Promise<{ success: boolean; answer?: string; error?: string }> {\nfunction sendProgress(message: string): void {\nfunction isUrl(path: string): boolean {\nfunction prepareLocalFile(filePath: string): string {\n </file>\n <file path=\".lootbox/tools/brainstorm.ts\" type=\"typescript\" format=\"codemap\">\nexport function setProgressCallback(callback: ProgressCallback | null): void {\nexport async function generate(args: { topic: string; mode?: BrainstormMode; constraints?: ConstraintPreset | string; agents?: AgentName[];\nexport async function synthesize(args: { ideas: Idea[] | string[]; topic: string; synthesis_type?: \"combine\" | \"rank\" | \"categorize\" | \"refine\"; timeout_seconds?: number;\nexport async function quick(args: { topic: string; mode?: BrainstormMode; constraints?: ConstraintPreset | string; auto_synthesize?: boolean;\nexport async function list_modes(): Promise<{\nexport async function expand(args: { idea: string; topic: string; expansion_type?: \"detail\" | \"implementation\" | \"variations\" | \"critique\"; timeout_seconds?: number;\nexport async function cross_pollinate(args: { topic: string; rounds?: number; timeout_seconds?: number; }): Promise<{\ninterface Idea {\ninterface BrainstormResult {\nfunction sendProgress(message: string): void {\nconst AGENTS = {\nconst BRAINSTORM_MODES = {\nconst CONSTRAINT_PRESETS = {\n </file>\n <file path=\".lootbox/tools/tmux.ts\" type=\"typescript\" format=\"codemap\">\nexport function setProgressCallback(callback: ProgressCallback | null): void {\nexport async function create_session(args: { session_name: string; window_name?: string; start_command?: string; working_dir?: string;\nexport async function list_sessions(args: { socket_path?: string; filter?: string; }): Promise<{\nexport async function attach_session(args: { session_name: string; socket_path?: string; }): Promise<{ success: boolean; monitor_command?: string; error?: string }> {\nexport async function kill_session(args: { session_name: string; socket_path?: string; }): Promise<{ success: boolean; error?: string }> {\nexport async function kill_all_sessions(args: { socket_path?: string; }): Promise<{ success: boolean; killed_count?: number; error?: string }> {\nexport async function send_keys(args: { session_name: string; keys: string; literal?: boolean; enter?: boolean;\nexport async function send_control_key(args: { session_name: string; control_key: string; target?: string; socket_path?: string;\nexport async function capture_output(args: { session_name: string; lines?: number; target?: string; socket_path?: string;\nexport async function wait_for_text(args: { session_name: string; pattern: string; timeout_seconds?: number; poll_interval?: number;\nexport async function create_window(args: { session_name: string; window_name: string; start_command?: string; socket_path?: string;\nexport async function split_pane(args: { session_name: string; direction: \"horizontal\" | \"vertical\"; target?: string; start_command?: string;\nexport async function list_panes(args: { session_name: string; socket_path?: string; }): Promise<{\nexport async function get_info(args: { socket_path?: string; }): Promise<{\nexport async function run_and_wait(args: { session_name: string; command: string; completion_pattern?: string; timeout_seconds?: number;\nfunction sendProgress(message: string): void {\nfunction ensureSocketDir(): void {\nfunction validateSocketPath(socketPath: string): { valid: boolean; error?: string } {\nasync function openTerminalWindow(command: string): Promise<{ success: boolean; error?: string }> {\n </file>\n <file path=\".lootbox/tools/repo_prompt.ts\" type=\"typescript\" format=\"codemap\">\nexport async function pack_repo(args: { path?: string; files?: string[]; glob?: string; format?: \"xml\" | \"markdown\";\nexport async function generate_codemap(args: { path?: string; files?: string[]; glob?: string; format?: \"xml\" | \"markdown\";\nexport async function get_repo_structure(args: { path?: string; max_files?: number; ignore?: string[]; }): Promise<{\nexport async function estimate_tokens(args: { content?: string; files?: string[]; path?: string; }): Promise<{\nexport async function list_files(args: { path?: string; glob?: string; max_files?: number; ignore?: string[];\nexport async function score_files(args: { path?: string; query?: string; seed_files?: string[]; max_files?: number;\nexport async function expand_dependencies(args: { path?: string; seed_files: string[]; depth?: number; }): Promise<{\nexport async function compress_content(args: { content?: string; file?: string; path?: string; keep_docstrings?: boolean;\nexport async function analyze_repo(args: { path?: string; }): Promise<{\nexport async function smart_pack(args: { path?: string; budget_tokens?: number; query?: string; seed_files?: string[];\nexport async function get_provider_preset(args: { provider: \"anthropic\" | \"openai\" | \"gemini\"; }): Promise<{\nconst LANGUAGE_MAP: Record<string, string> = {\nconst SIGNATURE_PATTERNS: Record<string, RegExp[]> = {\nfunction getLanguage(filePath: string): string {\nfunction loadGitignore(dir: string): string[] {\nfunction estimateTokens(content: string): number {\nfunction extractSignatures(content: string, language: string): string {\nfunction generateTree(files: string[], basePath: string): string {\nconst PROVIDER_PRESETS: Record<string, {\nconst FILE_IMPORTANCE: Record<string, number> = {\n </file>\n <file path=\".lootbox/tools/mcp_cli.test.ts\" type=\"typescript\" format=\"codemap\">\n// No signatures extracted\n </file>\n <file path=\".lootbox/tools/promptfoo.ts\" type=\"typescript\" format=\"codemap\">\nexport function setProgressCallback(callback: ProgressCallback | null): void {\nexport async function init_eval(args: { name: string; directory?: string; prompts?: string[]; }): Promise<{\nexport async function run_eval(args: { config_path: string; output_path?: string; filter?: string; verbose?: boolean;\nexport async function view_results(args: { results_path?: string; port?: number; }): Promise<{ success: boolean; url?: string; error?: string }> {\nexport async function add_test(args: { config_path: string; prompt?: string; expected_contains?: string; expected_not_contains?: string;\nexport async function get_results_summary(args: { results_path: string; }): Promise<{\nexport async function list_evals(args: { directory?: string; }): Promise<{\nfunction sendProgress(message: string): void {\nfunction ensureEvalDir(dir: string = DEFAULT_EVAL_DIR): void {\nfunction getClaudeCodeProviderScript(): string {\nasync function runClaudeCode(prompt, options = {}) {\nfunction generateSampleConfig(name: string, prompts: string[]): object {\n </file>\n <file path=\".lootbox/tools/chrome_devtools.ts\" type=\"typescript\" format=\"codemap\">\nexport async function set_profile(args: { email: string; }): Promise<{ success: boolean; result?: string; error?: string }> {\nexport async function connect_browser(args: { url: string; }): Promise<{ success: boolean; result?: string; error?: string }> {\nexport async function launch_browser(args: { port?: number; restart?: boolean; }): Promise<{ success: boolean; result?: string; error?: string }> {\nexport async function clear_profile(args: Record<string, never> = {}): Promise<{\nexport async function get_profile(args: Record<string, never> = {}): Promise<{\nexport async function list_profiles(args: Record<string, never> = {}): Promise<{\nexport async function navigate_page(args: { url: string; pageId?: string; }): Promise<{ success: boolean; result?: unknown; error?: string }> {\nexport async function new_page(args: { url?: string; }): Promise<{ success: boolean; result?: unknown; error?: string }> {\nexport async function close_page(args: { pageId: string; }): Promise<{ success: boolean; result?: unknown; error?: string }> {\nexport async function list_pages(args: Record<string, never> = {}): Promise<{\nexport async function select_page(args: { pageId: string; }): Promise<{ success: boolean; result?: unknown; error?: string }> {\nexport async function wait_for(args: { condition: string; timeout?: number; pageId?: string; }): Promise<{ success: boolean; result?: unknown; error?: string }> {\nexport async function click(args: { selector: string; button?: string; clickCount?: number; pageId?: string;\nexport async function fill(args: { selector: string; value: string; pageId?: string; }): Promise<{ success: boolean; result?: unknown; error?: string }> {\nexport async function fill_form(args: { fields: Record<string, string>; pageId?: string; }): Promise<{ success: boolean; result?: unknown; error?: string }> {\nexport async function press_key(args: { key: string; modifiers?: string[]; pageId?: string; }): Promise<{ success: boolean; result?: unknown; error?: string }> {\nexport async function hover(args: { selector: string; pageId?: string; }): Promise<{ success: boolean; result?: unknown; error?: string }> {\nexport async function drag(args: { sourceSelector: string; targetSelector: string; pageId?: string; }): Promise<{ success: boolean; result?: unknown; error?: string }> {\nexport async function upload_file(args: { selector: string; filePath: string; pageId?: string; }): Promise<{ success: boolean; result?: unknown; error?: string }> {\nexport async function handle_dialog(args: { action: string; promptText?: string; pageId?: string; }): Promise<{ success: boolean; result?: unknown; error?: string }> {\nexport async function list_console_messages(args: { pageId?: string; types?: string[]; }): Promise<{ success: boolean; result?: unknown; error?: string }> {\nexport async function get_console_message(args: { messageId: string; pageId?: string; }): Promise<{ success: boolean; result?: unknown; error?: string }> {\nexport async function list_network_requests(args: { pageId?: string; filter?: string; }): Promise<{ success: boolean; result?: unknown; error?: string }> {\nexport async function get_network_request(args: { requestId: string; pageId?: string; }): Promise<{ success: boolean; result?: unknown; error?: string }> {\nexport async function evaluate_script(args: { script?: string; function?: string; args?: Array<{ uid: string }>; }): Promise<{ success: boolean; result?: unknown; error?: string }> {\nexport async function take_screenshot(args: { pageId?: string; fullPage?: boolean; }): Promise<{ success: boolean; result?: unknown; error?: string }> {\nexport async function take_snapshot(args: { pageId?: string; }): Promise<{ success: boolean; result?: unknown; error?: string }> {\nexport async function emulate(args: { device: string; pageId?: string; }): Promise<{ success: boolean; result?: unknown; error?: string }> {\nexport async function resize_page(args: { width: number; height: number; pageId?: string; }): Promise<{ success: boolean; result?: unknown; error?: string }> {\nexport async function performance_start_trace(args: { pageId?: string; }): Promise<{ success: boolean; result?: unknown; error?: string }> {\nexport async function performance_stop_trace(args: { pageId?: string; }): Promise<{ success: boolean; result?: unknown; error?: string }> {\nexport async function performance_analyze_insight(args: { pageId?: string; }): Promise<{ success: boolean; result?: unknown; error?: string }> {\nasync function checkChromeDebugPort(port: number = DEFAULT_DEBUG_PORT): Promise<boolean> {\nfunction getChromeExecutable(): string {\nfunction getChromeUserDataDir(): string {\nfunction findProfileByEmail(email: string): string | null {\nasync function isChromeRunning(): Promise<boolean> {\nasync function killChrome(): Promise<void> {\nasync function stopMcpServer(): Promise<void> {\nasync function ensureMcpServer(): Promise<boolean> {\nfunction processResponseBuffer() {\nasync function sendRequest(request: object): Promise<void> {\n </file>\n <file path=\".lootbox/tools/design_system.ts\" type=\"typescript\" format=\"codemap\">\nexport async function init_design_system(args: { project_path: string; name: string; description?: string; }): Promise<{\nexport async function get_design_status(args: { project_path: string; }): Promise<{\nexport async function define_colors(args: { project_path: string; colors: Record<string, { value: string; description?: string; category?: \"primitive\" | \"semantic\" | \"component\" }>; notes?: string; })...\nexport async function define_typography(args: { project_path: string; typography: Record< string, {\nexport async function define_spacing(args: { project_path: string; spacing: Record<string, { value: string; description?: string }>; notes?: string; }): Promise<{\nexport async function define_foundation_tokens(args: { project_path: string; category: \"borders\" | \"shadows\" | \"animation\"; tokens: Record<string, string>; notes?: string;\nexport async function add_component(args: { project_path: string; layer: \"primitives\" | \"components\" | \"patterns\"; name: string; component: {\nexport async function finalize_layer(args: { project_path: string; layer: Layer; notes?: string; }): Promise<{\nexport async function generate_output(args: { project_path: string; formats?: (\"css\" | \"tailwind\" | \"json\")[];\nexport async function generate_preview(args: { project_path: string; }): Promise<{\nexport async function validate_tokens(args: { project_path: string; }): Promise<{\nexport async function get_iterations(args: { project_path: string; limit?: number; }): Promise<{\nexport async function update_design_progress(args: { project_path: string; session_number: number; work_done: string[]; decisions?: string[];\ninterface ColorToken {\ninterface TypographyToken {\ninterface SpacingToken {\ninterface ComponentToken {\ninterface DesignIteration {\ninterface DesignTokens {\n </file>\n <file path=\".lootbox/tools/mcp_cli.ts\" type=\"typescript\" format=\"codemap\">\nexport async function call_tool_sse(args: { endpoint: string; tool_name: string; tool_args?: Record<string, unknown>; }): Promise<{ success: boolean; result?: string; error?: string }> {\nexport async function call_tool_http(args: { endpoint: string; tool_name: string; tool_args?: Record<string, unknown>; }): Promise<{ success: boolean; result?: string; error?: string }> {\nexport async function read_resource_sse(args: { endpoint: string; resource_uri: string; }): Promise<{ success: boolean; result?: string; error?: string }> {\nexport async function get_prompt_sse(args: { endpoint: string; prompt_name: string; prompt_args?: Record<string, unknown>; }): Promise<{ success: boolean; result?: string; error?: string }> {\n </file>\n <file path=\".lootbox/tools/gemini.test.ts\" type=\"typescript\" format=\"codemap\">\n// No signatures extracted\n </file>\n <file path=\".lootbox/tools/council.ts\" type=\"typescript\" format=\"codemap\">\nexport function setProgressCallback(callback: ProgressCallback | null): void {\nexport async function ask(args: { question: string; agents?: AgentName[]; timeout_seconds?: number; include_summary?: boolean;\nexport async function compare(args: { question: string; agents?: AgentName[]; timeout_seconds?: number; }): Promise<{\nexport async function list_agents(): Promise<{\nexport async function query_single(args: { agent: AgentName; question: string; timeout_seconds?: number; }): Promise<AgentResponse & { success: boolean; error?: string }> {\nexport async function debate(args: { question: string; agents?: AgentName[]; rounds?: number; timeout_seconds?: number;\nexport async function consensus(args: { question: string; agents?: AgentName[]; timeout_seconds?: number; }): Promise<ConsensusResult> {\nexport async function devils_advocate(args: { question: string; contrarian?: AgentName; agents?: AgentName[]; timeout_seconds?: number;\nexport async function list_role_presets(): Promise<{\ninterface AgentResponse {\ninterface CouncilResult {\ninterface ConsensusResult {\ninterface DebateResult {\nfunction sendProgress(message: string): void {\nconst AGENTS = {\nconst ROLE_PRESETS = {\nfunction parseClaudeStreamJson(rawOutput: string): string {\nfunction parseCodexJsonl(rawOutput: string): string {\nfunction parseGeminiStreamJson(rawOutput: string): string {\nfunction parseAgentOutput(rawOutput: string, parseType: ParseOutputType): string {\nfunction getPresetDescription(preset: RolePreset): string {\n </file>\n <file path=\".lootbox/tools/long_agent.ts\" type=\"typescript\" format=\"codemap\">\nexport async function init_project(args: { project_path: string; project_name: string; description: string; features?: string[];\nexport async function get_bearings(args: { project_path: string; }): Promise<{\nexport async function read_progress(args: { project_path: string; }): Promise<{\nexport async function update_progress(args: { project_path: string; session_number: number; work_done: string[]; issues?: string[];\nexport async function get_features(args: { project_path: string; filter?: \"all\" | \"passing\" | \"failing\"; }): Promise<{\nexport async function add_feature(args: { project_path: string; description: string; category?: \"functional\" | \"ui\" | \"performance\" | \"security\" | \"accessibility\"; steps?: string[];\nexport async function mark_feature(args: { project_path: string; feature_id: string; passes: boolean; }): Promise<{\nexport async function get_next_feature(args: { project_path: string; }): Promise<{\nexport async function commit_progress(args: { project_path: string; message: string; files?: string[]; }): Promise<{\nexport async function session_summary(args: { project_path: string; }): Promise<{\nexport async function run_init(args: { project_path: string; }): Promise<{\nexport async function expand_feature(args: { project_path: string; feature_description: string; sub_features: Array<{ description: string;\ninterface Feature {\ninterface FeatureList {\n </file>\n <file path=\".vscode/settings.json\" type=\"json\" format=\"codemap\">\n// No signatures extracted\n </file>\n <file path=\"src/lib/ui_server.ts\" type=\"typescript\" format=\"codemap\">\nexport function setupUIRoutes(app: OpenAPIHono) {\n </file>\n <file path=\"src/lib/client_cache.ts\" type=\"typescript\" format=\"codemap\">\nexport const clientCache = ClientCache.getInstance();\nexport const set_client = (code: string) => clientCache.set_client(code);\nexport const get_client = () => clientCache.get_client();\ninterface ClientData {\nclass ClientCache {\n </file>\n <file path=\"src/lib/get_config.ts\" type=\"typescript\" format=\"codemap\">\nexport function setArgsOverride(args: string[]): void {\nexport function clearArgsOverride(): void {\nexport const get_config = async (): Promise<ResolvedConfig> => {\ninterface ResolvedConfig {\nasync function loadConfig(): Promise<Config> {\n </file>\n <file path=\"src/lib/execute_llm_script.ts\" type=\"typescript\" format=\"codemap\">\nexport const execute_llm_script = async (args: { script: string; sessionId?: string }) => {\n </file>\n <file path=\"src/lib/workflow_log.ts\" type=\"typescript\" format=\"codemap\">\nexport interface WorkflowEvent {\nexport function generateSessionId(): string {\nexport async function logWorkflowEvent(event: Omit<WorkflowEvent, \"id\">): Promise<void> {\nexport async function getRecentEvents(limit = 50): Promise<WorkflowEvent[]> {\nexport async function getEventsForWorkflow(workflowFile: string, limit = 100): Promise<WorkflowEvent[]> {\nexport async function getEventsForSession(sessionId: string): Promise<WorkflowEvent[]> {\nexport const closeDb = closeDatabase;\ninterface WorkflowEventRow {\n </file>\n <file path=\"src/lib/external-mcps/mcp_config.ts\" type=\"typescript\" format=\"codemap\">\nexport interface McpServerConfig {\nexport interface McpConfigFile {\nexport async function loadMcpConfig(path: string): Promise<McpConfigFile> {\nexport function validateMcpConfig(config: unknown): McpConfigFile {\nfunction sanitizeServerName(name: string): string {\n </file>\n <file path=\"src/lib/external-mcps/mcp_schema_fetcher.ts\" type=\"typescript\" format=\"codemap\">\nexport interface McpToolSchema {\nexport interface McpResourceSchema {\nexport interface McpServerSchemas {\nexport class McpSchemaFetcher {\n </file>\n <file path=\"src/lib/external-mcps/create_rpc_client_section.ts\" type=\"typescript\" format=\"codemap\">\nexport function generateMcpCallHelper(): string {\nfunction createMcpCall(serverName: string, operationName: string, operationType: \"tool\" | \"resource\") {\n </file>\n <file path=\"src/lib/external-mcps/parse_mcp_schemas.ts\" type=\"typescript\" format=\"codemap\">\nfunction jsonSchemaToTsType(schema: Record<string, unknown>): string {\nfunction generateMcpResultInterfaces(): InterfaceDefinition[] {\nfunction sanitizeIdentifier(str: string): string {\nfunction capitalizeFirst(str: string): string {\n </file>\n <file path=\"src/lib/external-mcps/mcp_client_manager.ts\" type=\"typescript\" format=\"codemap\">\nexport class McpClientManager {\n </file>\n <file path=\"src/lib/paths.ts\" type=\"typescript\" format=\"codemap\">\nexport function getUserLootboxToolsDir(): string {\nexport function getUserLootboxWorkflowsDir(): string {\nexport function getUserLootboxScriptsDir(): string {\nfunction getHomeDir(): string {\n </file>\n <file path=\"src/lib/rpc/load_rpc_files.ts\" type=\"typescript\" format=\"codemap\">\nexport interface RpcFile {\nexport const discover_rpc_files = async (): Promise<RpcFile[]> => {\nexport const generate_types = async (): Promise<string> => {\n </file>\n <file path=\"src/lib/rpc/managers/file_watcher_manager.ts\" type=\"typescript\" format=\"codemap\">\nexport class FileWatcherManager {\n </file>\n <file path=\"src/lib/rpc/managers/route_handler.ts\" type=\"typescript\" format=\"codemap\">\nexport class RouteHandler {\n </file>\n <file path=\"src/lib/rpc/managers/message_router.ts\" type=\"typescript\" format=\"codemap\">\nexport interface RpcResponse {\nexport class MessageRouter {\ninterface RpcMessage {\ninterface ScriptMessage {\n </file>\n </files>\n</prompt>"
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment