Files
boocode/apps/server/src/services/tools/codecontext/get_codebase_overview.ts
indifferentketchup 8c200216eb refactor: codebase audit cleanup — dead code, dedup, module splits
Multi-agent audit + aggressive cleanup across server/web/coder/booterm,
delivered behind a DEFER discipline so none of the in-flight files were
touched. Removes dead code/deps/columns, dedups server + coder helpers,
and splits the oversized modules (tools.ts, opencode-server.ts,
sentinel-summaries, turn.ts, TerminalPane.tsx) behind stable contracts.
Adds 78 parity/unit tests (server 587, coder 323); fixes two latent bugs
(ChatPane queue keys, FileViewerOverlay blank-line parity).

Intended tag: v2.7.12-audit-cleanup.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-02 21:12:29 +00:00

34 lines
1.3 KiB
TypeScript

import { z } from 'zod';
import { makeCodecontextTool } from './factory.js';
export const GetCodebaseOverviewInput = z.object({
include_stats: z.boolean().optional(),
});
export type GetCodebaseOverviewInputT = z.infer<typeof GetCodebaseOverviewInput>;
const DESCRIPTION =
'Returns a structured overview of the codebase: file count, symbol count, primary languages, and top-level architecture. ' +
'Use this before deeper investigation to orient yourself in an unfamiliar codebase. ' +
'Tree-sitter coverage: full for JS/Python/Java/Go/Rust/C++. TypeScript symbols are approximate (uses JS grammar). ' +
'PHP and SQL are not supported — fall back to view_file/grep for those.';
const { toolDef: getCodebaseOverview, execute: executeGetCodebaseOverview } =
makeCodecontextTool<GetCodebaseOverviewInputT>({
name: 'get_codebase_overview',
schema: GetCodebaseOverviewInput,
description: DESCRIPTION,
jsonParameters: {
type: 'object',
properties: {
include_stats: {
type: 'boolean',
description: 'Include file count, symbol count, language stats. Defaults to true.',
},
},
additionalProperties: false,
},
mapArgs: (input) => ({ include_stats: input.include_stats ?? true }),
});
export { getCodebaseOverview, executeGetCodebaseOverview };