Roo Code gives you a whole dev team of AI agents in your code editor.
This report summarizes scanner evidence for RooCodeInc/Roo-Code, a TypeScript project with 24,254 GitHub stars. SynthScan examined 458,585 lines of code across 2253 source files, recording 502 pattern matches distributed across 16 syntactic categories. The legacy adjusted pattern signal is 1.8 (Low pattern signal); it is not an authorship estimate.
Use the findings to ask whether maintainers can explain intent, verify dependencies, simplify unnecessary scaffolding, and focus review effort. Risk Payload v1 adds ownership, supply-chain, over-engineering, and review-effort vectors when available. These are prompts for human verification, not probabilities, security findings, or measured maintenance costs.
Use each vector to guide manual verification of the underlying findings.
Payload schema: 1.0.0 · Engine: 2.0.0 · Scoring: heuristic-density-v1 · Scan date: 2026-10-31.
Can maintainers explain intent, assumptions, and trade-offs? 363 finding(s).
Are imports declared and package/API names verified? 103 finding(s).
Are wrappers, guards, and repeated structures necessary? 178 finding(s).
Which changes need focused human review? 502 finding(s).
This chart tracks the legacy adjusted pattern score across scan runs. Changes can reflect source changes, scan coverage, or detector/scoring versions; they do not measure AI adoption or prove that a team refactored code. Compare runs only when their scoring versions are compatible. The dashed line tracks the raw pattern-hit count.
Groups findings by configured severity weight. Severity is not a confidence estimate, security rating, or proof that a package is missing. Verify imports against the project's manifests and inspect each finding in its local design context.
This horizontal bar chart shows where configured pattern scores accumulate across directories. Treat the bars as locations to inspect, not as evidence of authorship or code quality. Use the file-level findings to decide whether a directory needs a focused ownership, dependency, complexity, or review check.
The scanner identified 502 distinct pattern matches across 16 syntactic categories. Each entry below represents a discrete location in the source code where the engine recorded a detector match to inspect in context. Expand any category row to inspect the individual file paths, line numbers, code snippets, and the lexical context (CODE, COMMENT, or STRING) in which each match was detected.
Reading the findings table: The Severity column indicates the configured finding weight (CRITICAL / HIGH / MEDIUM / LOW). The Context column identifies whether the match occurred inside executable code, an inline comment, or a string literal — legacy comment-context matches receive a ×1.5 score weight. The ⚡ bolt icon marks clustered matches: three or more patterns within a 10-line window, each receiving an additional ×1.5 density multiplier under the legacy scoring model.
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW⚡ | .roo/skills/roo-conflict-resolution/SKILL.md | 32 | ### Step 1: Parse PR Number | COMMENT |
| LOW⚡ | .roo/skills/roo-conflict-resolution/SKILL.md | 36 | ### Step 2: Fetch PR Information | COMMENT |
| LOW⚡ | .roo/skills/roo-conflict-resolution/SKILL.md | 44 | ### Step 3: Checkout PR Branch and Prepare for Rebase | COMMENT |
| LOW | .roo/skills/roo-conflict-resolution/SKILL.md | 57 | ### Step 4: Check for Merge Conflicts | COMMENT |
| LOW | apps/docs/docs/getting-started/your-first-task.md | 20 | ## Step 1: Open the Roo Code Panel | COMMENT |
| LOW | apps/docs/docs/getting-started/your-first-task.md | 29 | ## Step 2: Type Your Task | COMMENT |
| LOW | apps/docs/docs/getting-started/your-first-task.md | 44 | ## Step 3: Send Your Task | COMMENT |
| LOW | apps/docs/docs/getting-started/your-first-task.md | 48 | ## Step 4: Review and Approve Actions | COMMENT |
| LOW | apps/docs/docs/getting-started/your-first-task.md | 68 | ## Step 5: Iterate | COMMENT |
| LOW⚡ | apps/cli/src/ui/__tests__/store.test.ts | 187 | // Step 1: Initial state with task history and modes from webviewDidLaunch. | COMMENT |
| LOW⚡ | apps/cli/src/ui/__tests__/store.test.ts | 192 | // Step 2: User starts a new task. | COMMENT |
| LOW⚡ | apps/cli/src/ui/__tests__/store.test.ts | 202 | // Step 3: User selects a task from history to resume. | COMMENT |
| LOW⚡ | apps/cli/src/ui/__tests__/store.test.ts | 216 | // Step 4: Extension sends state message with clineMessages | COMMENT |
| LOW⚡ | apps/cli/src/ui/__tests__/store.test.ts | 221 | // Step 5: After processing state, isResumingTask should be cleared. | COMMENT |
| LOW | …ts__/CustomModesManager.exportImportSlugChange.spec.ts | 379 | // Step 1: Set up a mode with rules | COMMENT |
| LOW⚡ | …ts__/CustomModesManager.exportImportSlugChange.spec.ts | 405 | // Step 2: Export the mode | COMMENT |
| LOW⚡ | …ts__/CustomModesManager.exportImportSlugChange.spec.ts | 409 | // Step 3: Modify the exported YAML to change the slug | COMMENT |
| LOW⚡ | …ts__/CustomModesManager.exportImportSlugChange.spec.ts | 415 | // Step 4: Import with the new slug | COMMENT |
| LOW⚡ | …ts__/CustomModesManager.exportImportSlugChange.spec.ts | 425 | // Step 5: Verify the rule file was placed in the new slug folder | COMMENT |
| LOW⚡ | src/core/config/__tests__/importExport.spec.ts | 1685 | // Step 2: Mock export operation | COMMENT |
| LOW⚡ | src/core/config/__tests__/importExport.spec.ts | 1694 | // Step 3: Export settings | COMMENT |
| LOW⚡ | src/core/config/__tests__/importExport.spec.ts | 1700 | // Step 4: Verify the exported data includes the model dimension | COMMENT |
| LOW⚡ | src/core/config/__tests__/importExport.spec.ts | 1706 | // Step 5: Get the exported data for import test | COMMENT |
| LOW⚡ | src/core/config/__tests__/importExport.spec.ts | 1710 | // Step 6: Mock import operation | COMMENT |
| LOW⚡ | src/core/config/__tests__/importExport.spec.ts | 1724 | // Step 7: Import the settings back | COMMENT |
| LOW⚡ | src/core/config/__tests__/importExport.spec.ts | 1731 | // Step 8: Verify import was successful | COMMENT |
| LOW⚡ | src/core/config/__tests__/importExport.spec.ts | 1734 | // Step 9: Verify that the model dimension was preserved exactly in global settings | COMMENT |
| LOW⚡ | src/core/config/__tests__/importExport.spec.ts | 1743 | // Step 10: Verify that the embedder settings were imported correctly | COMMENT |
| LOW⚡ | src/core/config/__tests__/importExport.spec.ts | 1926 | // Step 3: Mock import operation | COMMENT |
| LOW⚡ | src/core/config/__tests__/importExport.spec.ts | 1936 | // Step 4: Import the settings | COMMENT |
| LOW⚡ | src/core/config/__tests__/importExport.spec.ts | 1945 | // Step 5: Check what was imported | COMMENT |
| LOW | src/core/config/__tests__/importExport.spec.ts | 1659 | // Step 1: Set up a provider without OpenAI Compatible settings in profile | COMMENT |
| LOW | src/core/config/__tests__/importExport.spec.ts | 1885 | // Step 1: Create exported settings from "provider-a" with model dimension | COMMENT |
| LOW | src/core/config/__tests__/importExport.spec.ts | 1915 | // Step 2: Set up import environment where current provider is "provider-b" (different!) | COMMENT |
| LOW⚡ | …c/core/context-management/__tests__/truncation.spec.ts | 241 | // Step 1: Perform truncation | COMMENT |
| LOW⚡ | …c/core/context-management/__tests__/truncation.spec.ts | 244 | // Step 2: Verify messages are hidden initially | COMMENT |
| LOW⚡ | …c/core/context-management/__tests__/truncation.spec.ts | 248 | // Step 3: Simulate rewind by removing truncation marker and subsequent messages | COMMENT |
| LOW⚡ | …c/core/context-management/__tests__/truncation.spec.ts | 253 | // Step 4: Clean up orphaned parent references | COMMENT |
| LOW⚡ | …c/core/context-management/__tests__/truncation.spec.ts | 256 | // Step 5: Get effective history after cleanup | COMMENT |
| LOW⚡ | …c/core/context-management/__tests__/truncation.spec.ts | 269 | // Step 1: First truncation | COMMENT |
| LOW⚡ | …c/core/context-management/__tests__/truncation.spec.ts | 272 | // Step 2: Get effective history and simulate more messages being added | COMMENT |
| LOW⚡ | …c/core/context-management/__tests__/truncation.spec.ts | 282 | // Step 3: Second truncation | COMMENT |
| LOW⚡ | …c/core/context-management/__tests__/truncation.spec.ts | 285 | // Step 4: Get effective history after second truncation | COMMENT |
| LOW⚡ | …c/core/context-management/__tests__/truncation.spec.ts | 311 | // Step 1: First truncation | COMMENT |
| LOW⚡ | …c/core/context-management/__tests__/truncation.spec.ts | 314 | // Step 2: Add more messages AFTER getting effective history | COMMENT |
| LOW⚡ | …c/core/context-management/__tests__/truncation.spec.ts | 325 | // Step 3: Second truncation - this will tag some messages including possibly the first marker | COMMENT |
| LOW⚡ | …c/core/context-management/__tests__/truncation.spec.ts | 328 | // Step 4: Simulate rewind past second truncation marker | COMMENT |
| LOW⚡ | …c/core/context-management/__tests__/truncation.spec.ts | 334 | // Step 5: Clean up orphaned references | COMMENT |
| LOW⚡ | …c/core/context-management/__tests__/truncation.spec.ts | 337 | // Step 6: Get effective history | COMMENT |
| LOW⚡ | src/core/message-manager/index.ts | 81 | // Step 1: Collect context event IDs from messages being removed | COMMENT |
| LOW⚡ | src/core/message-manager/index.ts | 84 | // Step 2: Truncate clineMessages | COMMENT |
| LOW⚡ | src/core/message-manager/index.ts | 87 | // Step 3: Truncate and clean API history (combined with cleanup for efficiency) | COMMENT |
| LOW | src/core/message-manager/index.ts | 156 | // Step 1: Determine the actual cutoff timestamp | COMMENT |
| LOW⚡ | src/core/message-manager/index.ts | 181 | // Step 2: Filter by the actual cutoff timestamp | COMMENT |
| LOW⚡ | src/core/message-manager/index.ts | 184 | // Step 3: Remove Summaries whose condense_context was removed | COMMENT |
| LOW | src/core/message-manager/index.ts | 195 | // Step 4: Remove truncation markers whose sliding_window_truncation was removed | COMMENT |
| LOW⚡ | src/core/message-manager/index.ts | 208 | // Step 5: Cleanup orphaned tags (unless skipped) | COMMENT |
| LOW⚡ | src/core/message-manager/index.ts | 213 | // Step 6: Cleanup orphaned command output artifacts | COMMENT |
| LOW | src/core/condense/__tests__/nested-condense.spec.ts | 43 | // Step 1: Get effective history | COMMENT |
| LOW | src/core/condense/__tests__/nested-condense.spec.ts | 59 | // Step 2: Get messages since last summary (on effective history) | COMMENT |
| 25 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW⚡ | apps/cli/src/ui/__tests__/store.test.ts | 187 | // Step 1: Initial state with task history and modes from webviewDidLaunch. | COMMENT |
| LOW⚡ | apps/cli/src/ui/__tests__/store.test.ts | 192 | // Step 2: User starts a new task. | COMMENT |
| LOW⚡ | apps/cli/src/ui/__tests__/store.test.ts | 202 | // Step 3: User selects a task from history to resume. | COMMENT |
| LOW⚡ | apps/cli/src/ui/__tests__/store.test.ts | 216 | // Step 4: Extension sends state message with clineMessages | COMMENT |
| LOW⚡ | apps/cli/src/ui/__tests__/store.test.ts | 221 | // Step 5: After processing state, isResumingTask should be cleared. | COMMENT |
| LOW | …ts__/CustomModesManager.exportImportSlugChange.spec.ts | 379 | // Step 1: Set up a mode with rules | COMMENT |
| LOW⚡ | …ts__/CustomModesManager.exportImportSlugChange.spec.ts | 405 | // Step 2: Export the mode | COMMENT |
| LOW⚡ | …ts__/CustomModesManager.exportImportSlugChange.spec.ts | 409 | // Step 3: Modify the exported YAML to change the slug | COMMENT |
| LOW⚡ | …ts__/CustomModesManager.exportImportSlugChange.spec.ts | 415 | // Step 4: Import with the new slug | COMMENT |
| LOW⚡ | …ts__/CustomModesManager.exportImportSlugChange.spec.ts | 425 | // Step 5: Verify the rule file was placed in the new slug folder | COMMENT |
| LOW⚡ | src/core/config/__tests__/importExport.spec.ts | 1685 | // Step 2: Mock export operation | COMMENT |
| LOW⚡ | src/core/config/__tests__/importExport.spec.ts | 1694 | // Step 3: Export settings | COMMENT |
| LOW⚡ | src/core/config/__tests__/importExport.spec.ts | 1700 | // Step 4: Verify the exported data includes the model dimension | COMMENT |
| LOW⚡ | src/core/config/__tests__/importExport.spec.ts | 1706 | // Step 5: Get the exported data for import test | COMMENT |
| LOW⚡ | src/core/config/__tests__/importExport.spec.ts | 1710 | // Step 6: Mock import operation | COMMENT |
| LOW⚡ | src/core/config/__tests__/importExport.spec.ts | 1724 | // Step 7: Import the settings back | COMMENT |
| LOW⚡ | src/core/config/__tests__/importExport.spec.ts | 1731 | // Step 8: Verify import was successful | COMMENT |
| LOW⚡ | src/core/config/__tests__/importExport.spec.ts | 1734 | // Step 9: Verify that the model dimension was preserved exactly in global settings | COMMENT |
| LOW⚡ | src/core/config/__tests__/importExport.spec.ts | 1743 | // Step 10: Verify that the embedder settings were imported correctly | COMMENT |
| LOW⚡ | src/core/config/__tests__/importExport.spec.ts | 1926 | // Step 3: Mock import operation | COMMENT |
| LOW⚡ | src/core/config/__tests__/importExport.spec.ts | 1936 | // Step 4: Import the settings | COMMENT |
| LOW⚡ | src/core/config/__tests__/importExport.spec.ts | 1945 | // Step 5: Check what was imported | COMMENT |
| LOW | src/core/config/__tests__/importExport.spec.ts | 1659 | // Step 1: Set up a provider without OpenAI Compatible settings in profile | COMMENT |
| LOW | src/core/config/__tests__/importExport.spec.ts | 1885 | // Step 1: Create exported settings from "provider-a" with model dimension | COMMENT |
| LOW | src/core/config/__tests__/importExport.spec.ts | 1915 | // Step 2: Set up import environment where current provider is "provider-b" (different!) | COMMENT |
| LOW⚡ | …c/core/context-management/__tests__/truncation.spec.ts | 241 | // Step 1: Perform truncation | COMMENT |
| LOW⚡ | …c/core/context-management/__tests__/truncation.spec.ts | 244 | // Step 2: Verify messages are hidden initially | COMMENT |
| LOW⚡ | …c/core/context-management/__tests__/truncation.spec.ts | 248 | // Step 3: Simulate rewind by removing truncation marker and subsequent messages | COMMENT |
| LOW⚡ | …c/core/context-management/__tests__/truncation.spec.ts | 253 | // Step 4: Clean up orphaned parent references | COMMENT |
| LOW⚡ | …c/core/context-management/__tests__/truncation.spec.ts | 256 | // Step 5: Get effective history after cleanup | COMMENT |
| LOW⚡ | …c/core/context-management/__tests__/truncation.spec.ts | 269 | // Step 1: First truncation | COMMENT |
| LOW⚡ | …c/core/context-management/__tests__/truncation.spec.ts | 272 | // Step 2: Get effective history and simulate more messages being added | COMMENT |
| LOW⚡ | …c/core/context-management/__tests__/truncation.spec.ts | 282 | // Step 3: Second truncation | COMMENT |
| LOW⚡ | …c/core/context-management/__tests__/truncation.spec.ts | 285 | // Step 4: Get effective history after second truncation | COMMENT |
| LOW⚡ | …c/core/context-management/__tests__/truncation.spec.ts | 311 | // Step 1: First truncation | COMMENT |
| LOW⚡ | …c/core/context-management/__tests__/truncation.spec.ts | 314 | // Step 2: Add more messages AFTER getting effective history | COMMENT |
| LOW⚡ | …c/core/context-management/__tests__/truncation.spec.ts | 325 | // Step 3: Second truncation - this will tag some messages including possibly the first marker | COMMENT |
| LOW⚡ | …c/core/context-management/__tests__/truncation.spec.ts | 328 | // Step 4: Simulate rewind past second truncation marker | COMMENT |
| LOW⚡ | …c/core/context-management/__tests__/truncation.spec.ts | 334 | // Step 5: Clean up orphaned references | COMMENT |
| LOW⚡ | …c/core/context-management/__tests__/truncation.spec.ts | 337 | // Step 6: Get effective history | COMMENT |
| LOW | src/core/task/Task.ts | 1980 | // Since we don't use `api_req_finished` anymore, we need to check if the | COMMENT |
| LOW | src/core/task/Task.ts | 2040 | // if the last message is an assistant message, we need to check if there's tool use since every tool use has to have | COMMENT |
| LOW⚡ | src/core/message-manager/index.ts | 81 | // Step 1: Collect context event IDs from messages being removed | COMMENT |
| LOW⚡ | src/core/message-manager/index.ts | 84 | // Step 2: Truncate clineMessages | COMMENT |
| LOW⚡ | src/core/message-manager/index.ts | 87 | // Step 3: Truncate and clean API history (combined with cleanup for efficiency) | COMMENT |
| LOW | src/core/message-manager/index.ts | 156 | // Step 1: Determine the actual cutoff timestamp | COMMENT |
| LOW⚡ | src/core/message-manager/index.ts | 181 | // Step 2: Filter by the actual cutoff timestamp | COMMENT |
| LOW⚡ | src/core/message-manager/index.ts | 184 | // Step 3: Remove Summaries whose condense_context was removed | COMMENT |
| LOW | src/core/message-manager/index.ts | 195 | // Step 4: Remove truncation markers whose sliding_window_truncation was removed | COMMENT |
| LOW⚡ | src/core/message-manager/index.ts | 208 | // Step 5: Cleanup orphaned tags (unless skipped) | COMMENT |
| LOW⚡ | src/core/message-manager/index.ts | 213 | // Step 6: Cleanup orphaned command output artifacts | COMMENT |
| LOW | src/core/condense/__tests__/nested-condense.spec.ts | 43 | // Step 1: Get effective history | COMMENT |
| LOW | src/core/condense/__tests__/nested-condense.spec.ts | 59 | // Step 2: Get messages since last summary (on effective history) | COMMENT |
| LOW⚡ | src/utils/safeWriteJson.ts | 86 | // Step 1: Write data to a new temporary file. | COMMENT |
| LOW⚡ | src/utils/safeWriteJson.ts | 94 | // Step 2: Check if the target file exists. If so, rename it to a backup path. | COMMENT |
| LOW⚡ | src/utils/safeWriteJson.ts | 113 | // Step 3: Rename the new temporary file to the target file path. | COMMENT |
| LOW⚡ | src/utils/safeWriteJson.ts | 122 | // Step 4: If a backup was created, attempt to delete it. | COMMENT |
| LOW⚡ | src/utils/__tests__/mcp-name.spec.ts | 345 | // Step 1: Build the tool name | COMMENT |
| LOW⚡ | src/utils/__tests__/mcp-name.spec.ts | 349 | // Step 2: Model outputs as-is (no mangling) | COMMENT |
| LOW⚡ | src/utils/__tests__/mcp-name.spec.ts | 352 | // Step 3: Normalize (no change needed) | COMMENT |
| 18 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | .roo/rules-merge-resolver/4_complete_example.xml | 96 | 45 | export class DataProcessor { | CODE |
| LOW | webview-ui/src/utils/command-parser.ts | 8 | export function extractPatternsFromCommand(command: string): string[] { | CODE |
| LOW | webview-ui/src/utils/sourceMapUtils.ts | 59 | export async function applySourceMapsToComponentStack(componentStack: string): Promise<string> { | CODE |
| LOW | webview-ui/src/utils/sourceMapUtils.ts | 119 | export function enhanceErrorWithSourceMaps(error: Error, componentStack?: string): Promise<EnhancedError> { | CODE |
| LOW | webview-ui/src/utils/mcp.ts | 34 | export function findMatchingResourceOrTemplate( | CODE |
| LOW | webview-ui/src/utils/validate.ts | 39 | function validateModelsAndKeysProvided(apiConfiguration: ProviderSettings): string | undefined { | CODE |
| LOW | webview-ui/src/utils/validate.ts | 141 | function validateProviderAgainstOrganizationSettings( | CODE |
| LOW | webview-ui/src/utils/validate.ts | 223 | function validateDynamicProviderModelId( | CODE |
| LOW | webview-ui/src/utils/validate.ts | 281 | export function validateApiConfigurationExcludingModelErrors( | CODE |
| LOW | webview-ui/src/utils/sourceMapInitializer.ts | 115 | export function exposeSourceMapsForDebugging(): void { | CODE |
| LOW | …w-ui/src/components/ui/hooks/useNonInteractiveClick.ts | 11 | export function useAddNonInteractiveClickListener(handler: () => void) { | CODE |
| LOW | …src/components/ui/hooks/useOpenRouterModelProviders.ts | 46 | async function getOpenRouterProvidersForModel(modelId: string, baseUrl?: string) { | CODE |
| LOW | webview-ui/src/components/settings/useSettingsSearch.ts | 79 | export function scanDOMForSearchableSettings( | CODE |
| LOW | …-ui/src/components/common/DecoratedVSCodeTextField.tsx | 15 | function VSCodeTextFieldWithNodesInner( | CODE |
| LOW | scripts/find-missing-translations.js | 280 | async function checkPackageNlsTranslations() { | CODE |
| LOW | packages/types/src/roomodes-schema.ts | 47 | export function generateRoomodesJsonSchema(): Record<string, unknown> { | CODE |
| LOW | packages/types/src/image-generation.ts | 43 | export function getImageGenerationProvider( | CODE |
| LOW | packages/types/src/providers/index.ts | 59 | export function getProviderDefaultModelId( | CODE |
| LOW | packages/core/src/task-history/index.ts | 57 | export async function readTaskSessionsFromStoragePath(storageBasePath: string): Promise<TaskSessionEntry[]> { | CODE |
| LOW | …s/docs/src/theme/Navbar/MobileSidebar/Layout/index.tsx | 17 | export default function NavbarMobileSidebarLayout({ header, primaryMenu, secondaryMenu }: Props): ReactNode { | CODE |
| LOW | …src/theme/Navbar/MobileSidebar/SecondaryMenu/index.tsx | 20 | export default function NavbarMobileSidebarSecondaryMenu(): ReactNode { | CODE |
| LOW | …s/docs/src/theme/Navbar/MobileSidebar/Header/index.tsx | 25 | export default function NavbarMobileSidebarHeader(): ReactNode { | CODE |
| LOW | …docs/src/theme/DocBreadcrumbs/StructuredData/index.tsx | 6 | export default function DocBreadcrumbsStructuredData(props: Props): ReactNode { | CODE |
| LOW | …create-with-session-id-resume-loads-correct-session.ts | 79 | async function createSessionWithCustomId( | CODE |
| LOW | …create-with-session-id-resume-loads-correct-session.ts | 132 | async function resumeSessionAndSendMarker( | CODE |
| LOW | …scripts/integration/cases/followup-during-streaming.ts | 6 | function looksLikeAttemptCompletionToolUse(event: StreamEvent): boolean { | CODE |
| LOW | …mponents/autocomplete/triggers/SlashCommandTrigger.tsx | 31 | export function createSlashCommandTrigger(config: SlashCommandTriggerConfig): AutocompleteTrigger<SlashCommandResult> { | CODE |
| LOW | …/src/agent/__tests__/json-event-emitter-result.test.ts | 41 | function createAskCompletionMessage(ts: number, text = ""): ClineMessage { | CODE |
| LOW⚡ | apps/cli/src/lib/task-history/index.ts | 10 | export function getDefaultCliTaskStoragePath(): string { | CODE |
| LOW⚡ | apps/cli/src/lib/task-history/index.ts | 14 | export function filterSessionsForWorkspace(sessions: TaskSessionEntry[], workspacePath: string): TaskSessionEntry[] { | CODE |
| LOW⚡ | apps/cli/src/lib/task-history/index.ts | 20 | export async function readWorkspaceTaskSessions( | CODE |
| LOW⚡ | apps/cli/src/lib/task-history/index.ts | 28 | export function resolveWorkspaceResumeSessionId(sessions: TaskSessionEntry[], requestedSessionId?: string): string { | CODE |
| LOW | apps/cli/src/lib/utils/commands.ts | 50 | export function getGlobalCommandsForAutocomplete(): Array<{ | CODE |
| LOW | apps/cli/src/lib/utils/shell.ts | 15 | export async function validateTerminalShellPath(rawShellPath: string): Promise<TerminalShellValidationResult> { | CODE |
| LOW | apps/cli/src/lib/storage/ephemeral.ts | 5 | export async function createEphemeralStorageDir(): Promise<string> { | CODE |
| LOW | apps/cli/src/commands/cli/cancellation.ts | 93 | export function isStreamTeardownLikeError(error: unknown): boolean { | CODE |
| LOW | apps/cli/src/commands/cli/cancellation.ts | 106 | export function isExpectedControlFlowError(error: unknown, context: ExpectedControlFlowErrorContext): boolean { | CODE |
| LOW | apps/cli/src/commands/cli/stdin-stream.ts | 254 | export function shouldSendMessageAsAskResponse(waitingForInput: boolean, currentAsk: string | undefined): boolean { | CODE |
| LOW | apps/cli/src/commands/cli/stdin-stream.ts | 267 | async function waitForPostCancelRecovery(host: ExtensionHost): Promise<void> { | CODE |
| LOW | apps/cli/src/commands/cli/stdin-stream.ts | 279 | async function waitForTaskProgressAfterStdinClosed( | CODE |
| LOW | apps/cli/src/commands/cli/run.ts | 37 | async function bootstrapResumeForStdinStream(host: ExtensionHost, sessionId: string): Promise<void> { | CODE |
| LOW | src/core/tools/EditFileTool.ts | 87 | function buildWhitespaceTolerantRegex(oldLF: string): RegExp { | CODE |
| LOW | src/core/tools/validateToolUse.ts | 87 | function extractFilePathsFromPatch(patchContent: string): string[] { | CODE |
| LOW | src/core/tools/__tests__/applyPatchTool.partial.spec.ts | 21 | function parsePartialApplyPatchPayload(payloadText: string): PartialApplyPatchPayload { | CODE |
| LOW | src/core/tools/helpers/imageHelpers.ts | 75 | export async function readImageAsDataUrlWithBuffer(filePath: string): Promise<{ dataUrl: string; buffer: Buffer }> { | CODE |
| LOW | src/core/tools/helpers/imageHelpers.ts | 96 | export async function validateImageForProcessing( | CODE |
| LOW | …e/context/context-management/context-error-handling.ts | 3 | export function checkContextWindowExceededError(error: unknown): boolean { | CODE |
| LOW | …e/context/context-management/context-error-handling.ts | 11 | function checkIsOpenRouterContextWindowError(error: unknown): boolean { | CODE |
| LOW | …e/context/context-management/context-error-handling.ts | 37 | function checkIsOpenAIContextWindowError(error: unknown): boolean { | CODE |
| LOW | …e/context/context-management/context-error-handling.ts | 57 | function checkIsAnthropicContextWindowError(response: unknown): boolean { | CODE |
| LOW | src/core/webview/checkpointRestoreHandler.ts | 26 | export async function handleCheckpointRestoreOperation(config: CheckpointRestoreConfig): Promise<void> { | CODE |
| LOW | src/core/webview/checkpointRestoreHandler.ts | 94 | export async function waitForClineInitialization(provider: ClineProvider, timeoutMs: number = 3000): Promise<boolean> { | CODE |
| LOW | src/core/webview/aggregateTaskCosts.ts | 21 | export async function aggregateTaskCostsRecursive( | CODE |
| LOW | src/core/webview/worktree/handlers.ts | 218 | export async function handleGetAvailableBranches(provider: ClineProvider): Promise<BranchInfo> { | CODE |
| LOW | src/core/webview/worktree/handlers.ts | 224 | export async function handleGetWorktreeDefaults(provider: ClineProvider): Promise<WorktreeDefaultsResponse> { | CODE |
| LOW⚡ | src/core/webview/worktree/handlers.ts | 238 | export async function handleGetWorktreeIncludeStatus(provider: ClineProvider): Promise<WorktreeIncludeStatus> { | CODE |
| LOW⚡ | src/core/webview/worktree/handlers.ts | 243 | export async function handleCheckBranchWorktreeInclude(provider: ClineProvider, branch: string): Promise<boolean> { | CODE |
| LOW⚡ | src/core/webview/worktree/handlers.ts | 248 | export async function handleCreateWorktreeInclude(provider: ClineProvider, content: string): Promise<WorktreeResult> { | CODE |
| LOW | src/core/diff/stats.ts | 65 | export function convertNewFileToUnifiedDiff(content: string, filePath?: string): string { | CODE |
| LOW | src/core/mentions/processUserContentMentions.ts | 36 | export async function processUserContentMentions({ | CODE |
| 82 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | packages/types/src/tool-params.ts | 46 | // ─── Legacy Format Types (Backward Compatibility) ───────────────────────────── | COMMENT |
| MEDIUM | src/core/task-persistence/TaskHistoryStore.ts | 75 | // ────────────────────────────── Lifecycle ────────────────────────────── | COMMENT |
| MEDIUM | src/core/task-persistence/TaskHistoryStore.ts | 129 | // ────────────────────────────── Reads ────────────────────────────── | COMMENT |
| MEDIUM | src/core/task-persistence/TaskHistoryStore.ts | 152 | // ────────────────────────────── Mutations ────────────────────────────── | COMMENT |
| MEDIUM | src/core/task-persistence/TaskHistoryStore.ts | 236 | // ────────────────────────────── Reconciliation ────────────────────────────── | COMMENT |
| MEDIUM | src/core/task-persistence/TaskHistoryStore.ts | 292 | // ────────────────────────────── Cache invalidation ────────────────────────────── | COMMENT |
| MEDIUM | src/core/task-persistence/TaskHistoryStore.ts | 317 | // ────────────────────────────── Migration ────────────────────────────── | COMMENT |
| MEDIUM | src/core/task-persistence/TaskHistoryStore.ts | 362 | // ────────────────────────────── Private: Index management ────────────────────────────── | COMMENT |
| MEDIUM | src/core/task-persistence/TaskHistoryStore.ts | 435 | // ────────────────────────────── Private: Per-task file I/O ────────────────────────────── | COMMENT |
| MEDIUM | src/core/task-persistence/TaskHistoryStore.ts | 460 | // ────────────────────────────── Private: fs.watch ────────────────────────────── | COMMENT |
| MEDIUM | src/core/task-persistence/TaskHistoryStore.ts | 532 | // ────────────────────────────── Private: Write lock ────────────────────────────── | COMMENT |
| MEDIUM | src/core/task-persistence/TaskHistoryStore.ts | 547 | // ────────────────────────────── Private: Path helpers ────────────────────────────── | COMMENT |
| MEDIUM | src/core/tools/ReadFileTool.ts | 38 | // ─── Types ──────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | src/core/tools/ReadFileTool.ts | 69 | // ─── Tool Implementation ────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | src/core/tools/__tests__/readFileTool.spec.ts | 30 | // ─── Mocks ──────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | src/core/tools/__tests__/readFileTool.spec.ts | 128 | // ─── Test Helpers ───────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | src/core/tools/__tests__/readFileTool.spec.ts | 179 | // ─── Tests ──────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | src/core/task/__tests__/Task.persistence.spec.ts | 13 | // ─── Hoisted mocks ─────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | src/core/task/__tests__/Task.persistence.spec.ts | 41 | // ─── Module mocks ──────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | src/core/task/__tests__/Task.persistence.spec.ts | 194 | // ─── Test suite ────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | src/core/task/__tests__/Task.persistence.spec.ts | 354 | // ── saveClineMessages ──────────────────────────────────────────────── | COMMENT |
| MEDIUM | src/core/task/__tests__/Task.persistence.spec.ts | 414 | // ── flushPendingToolResultsToHistory — save failure/success ─────────── | COMMENT |
| MEDIUM | src/core/prompts/tools/native-tools/read_file.ts | 3 | // ─── Constants ──────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | src/core/prompts/tools/native-tools/read_file.ts | 14 | // ─── Helper Functions ───────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | src/core/prompts/tools/native-tools/read_file.ts | 29 | // ─── Types ──────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | src/core/prompts/tools/native-tools/read_file.ts | 39 | // ─── Schema Builder ─────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | src/integrations/misc/indentation-reader.ts | 22 | // ─── Types ──────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | src/integrations/misc/indentation-reader.ts | 65 | // ─── Constants ──────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | src/integrations/misc/indentation-reader.ts | 105 | // ─── Core Functions ─────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | src/integrations/misc/indentation-reader.ts | 277 | // ─── Main Export ────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | …integrations/misc/__tests__/indentation-reader.spec.ts | 12 | // ─── Test Fixtures ──────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | …integrations/misc/__tests__/indentation-reader.spec.ts | 109 | // ─── parseLines Tests ───────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | …integrations/misc/__tests__/indentation-reader.spec.ts | 168 | // ─── computeEffectiveIndents Tests ──────────────────────────────────────────── | COMMENT |
| MEDIUM | …integrations/misc/__tests__/indentation-reader.spec.ts | 214 | // ─── formatWithLineNumbers Tests ────────────────────────────────────────────── | COMMENT |
| MEDIUM | …integrations/misc/__tests__/indentation-reader.spec.ts | 255 | // ─── readWithSlice Tests ────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | …integrations/misc/__tests__/indentation-reader.spec.ts | 297 | // ─── readWithIndentation Tests ──────────────────────────────────────────────── | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | webview-ui/src/i18n/locales/pl/chat.json | 427 | "placeholder": "Edytuj swoją wiadomość..." | CODE |
| LOW | webview-ui/src/i18n/locales/pl/settings.json | 13 | "placeholder": "Szukaj ustawień...", | CODE |
| LOW | webview-ui/src/i18n/locales/pl/settings.json | 545 | "placeholder": "Domyślnie: claude", | CODE |
| LOW | webview-ui/src/i18n/locales/pl/settings.json | 587 | "placeholder": "Wprowadź tutaj swój niestandardowy monit kondensacji...\n\nMożesz użyć tej samej struktury co domyśln | CODE |
| LOW | webview-ui/src/i18n/locales/pl/prompts.json | 150 | "placeholder": "Wprowadź nazwę trybu" | CODE |
| LOW | webview-ui/src/i18n/locales/vi/chat.json | 428 | "placeholder": "Chỉnh sửa tin nhắn của bạn..." | CODE |
| LOW | webview-ui/src/i18n/locales/vi/settings.json | 13 | "placeholder": "Tìm kiếm cài đặt...", | CODE |
| LOW | webview-ui/src/i18n/locales/vi/settings.json | 545 | "placeholder": "Mặc định: claude", | CODE |
| LOW | webview-ui/src/i18n/locales/vi/settings.json | 587 | "placeholder": "Nhập prompt tóm tắt tùy chỉnh của bạn tại đây...\n\nBạn có thể sử dụng cùng cấu trúc như prompt mặc đ | CODE |
| LOW | webview-ui/src/i18n/locales/vi/prompts.json | 150 | "placeholder": "Nhập tên chế độ" | CODE |
| LOW | webview-ui/src/i18n/locales/ja/chat.json | 427 | "placeholder": "メッセージを編集..." | CODE |
| LOW | webview-ui/src/i18n/locales/ja/settings.json | 13 | "placeholder": "設定を検索...", | CODE |
| LOW | webview-ui/src/i18n/locales/ja/settings.json | 545 | "placeholder": "デフォルト:claude", | CODE |
| LOW | webview-ui/src/i18n/locales/ja/settings.json | 587 | "placeholder": "ここにカスタム圧縮プロンプトを入力してください...\n\nデフォルトプロンプトと同じ構造を使用できます:\n- 過去の会話\n- 現在の作業\n- 重要な技術的概念\n- 関連するファイルとコード\n | CODE |
| LOW | webview-ui/src/i18n/locales/ja/prompts.json | 150 | "placeholder": "モード名を入力" | CODE |
| LOW | webview-ui/src/i18n/locales/it/chat.json | 427 | "placeholder": "Modifica il tuo messaggio..." | CODE |
| LOW | webview-ui/src/i18n/locales/it/settings.json | 13 | "placeholder": "Cerca impostazioni...", | CODE |
| LOW | webview-ui/src/i18n/locales/it/settings.json | 545 | "placeholder": "Predefinito: claude", | CODE |
| LOW | webview-ui/src/i18n/locales/it/settings.json | 587 | "placeholder": "Inserisci qui il tuo prompt di condensazione personalizzato...\n\nPuoi utilizzare la stessa struttura | CODE |
| LOW | webview-ui/src/i18n/locales/it/prompts.json | 150 | "placeholder": "Inserisci nome modalità" | CODE |
| LOW | webview-ui/src/i18n/locales/ca/chat.json | 427 | "placeholder": "Edita el teu missatge..." | CODE |
| LOW | webview-ui/src/i18n/locales/ca/settings.json | 13 | "placeholder": "Cercar configuració...", | CODE |
| LOW | webview-ui/src/i18n/locales/ca/settings.json | 545 | "placeholder": "Per defecte: claude", | CODE |
| LOW | webview-ui/src/i18n/locales/ca/settings.json | 587 | "placeholder": "Introduïu aquí la vostra indicació de condensació personalitzada...\n\nPodeu utilitzar la mateixa est | CODE |
| LOW | webview-ui/src/i18n/locales/ca/prompts.json | 150 | "placeholder": "Introduïu nom del mode" | CODE |
| LOW | webview-ui/src/i18n/locales/ru/chat.json | 428 | "placeholder": "Редактировать сообщение..." | CODE |
| LOW | webview-ui/src/i18n/locales/ru/settings.json | 13 | "placeholder": "Поиск параметров...", | CODE |
| LOW | webview-ui/src/i18n/locales/ru/settings.json | 545 | "placeholder": "По умолчанию: claude", | CODE |
| LOW | webview-ui/src/i18n/locales/ru/settings.json | 587 | "placeholder": "Введите здесь свой пользовательский промпт для сжатия...\n\nВы можете использовать ту же структуру, ч | CODE |
| LOW | webview-ui/src/i18n/locales/ru/prompts.json | 150 | "placeholder": "Введите название режима" | CODE |
| LOW | webview-ui/src/i18n/locales/zh-CN/chat.json | 431 | "placeholder": "编辑消息..." | CODE |
| LOW | webview-ui/src/i18n/locales/zh-CN/settings.json | 13 | "placeholder": "搜索设置...", | CODE |
| LOW | webview-ui/src/i18n/locales/zh-CN/settings.json | 545 | "placeholder": "默认:claude", | CODE |
| LOW | webview-ui/src/i18n/locales/zh-CN/settings.json | 587 | "placeholder": "在此输入您的自定义压缩提示词...\n\n您可以使用与默认提示词相同的结构:\n- 之前的对话\n- 当前工作\n- 关键技术概念\n- 相关文件和代码\n- 问题解决\n- 待处理任务和下一步", | CODE |
| LOW | webview-ui/src/i18n/locales/zh-CN/prompts.json | 150 | "placeholder": "输入模式名称" | CODE |
| LOW | webview-ui/src/i18n/locales/zh-TW/chat.json | 116 | "placeholder": "編輯訊息..." | CODE |
| LOW | webview-ui/src/i18n/locales/zh-TW/settings.json | 19 | "placeholder": "搜尋設定...", | CODE |
| LOW | webview-ui/src/i18n/locales/zh-TW/settings.json | 555 | "placeholder": "預設:claude", | CODE |
| LOW | webview-ui/src/i18n/locales/zh-TW/settings.json | 597 | "placeholder": "請在此輸入您的自訂上下文壓縮提示...\n\n您可以參考預設提示的結構:\n- 先前對話\n- 目前工作\n- 主要技術概念\n- 相關檔案與程式碼\n- 問題解決\n- 未完成的任務與後續步驟", | CODE |
| LOW | webview-ui/src/i18n/locales/zh-TW/prompts.json | 149 | "placeholder": "輸入模式名稱" | CODE |
| LOW | webview-ui/src/i18n/locales/pt-BR/chat.json | 427 | "placeholder": "Edite sua mensagem..." | CODE |
| LOW | webview-ui/src/i18n/locales/pt-BR/settings.json | 13 | "placeholder": "Pesquisar configurações...", | CODE |
| LOW | webview-ui/src/i18n/locales/pt-BR/settings.json | 545 | "placeholder": "Padrão: claude", | CODE |
| LOW | webview-ui/src/i18n/locales/pt-BR/settings.json | 587 | "placeholder": "Digite seu prompt de condensação personalizado aqui...\n\nVocê pode usar a mesma estrutura do prompt | CODE |
| LOW | webview-ui/src/i18n/locales/pt-BR/prompts.json | 150 | "placeholder": "Digite o nome do modo" | CODE |
| LOW | webview-ui/src/i18n/locales/nl/chat.json | 427 | "placeholder": "Bewerk je bericht..." | CODE |
| LOW | webview-ui/src/i18n/locales/nl/settings.json | 13 | "placeholder": "Instellingen zoeken...", | CODE |
| LOW | webview-ui/src/i18n/locales/nl/settings.json | 545 | "placeholder": "Standaard: claude", | CODE |
| LOW | webview-ui/src/i18n/locales/nl/settings.json | 587 | "placeholder": "Voer hier je aangepaste condensatieprompt in...\n\nJe kunt dezelfde structuur gebruiken als de standa | CODE |
| LOW | webview-ui/src/i18n/locales/nl/prompts.json | 150 | "placeholder": "Voer de naam van de modus in" | CODE |
| LOW | webview-ui/src/i18n/locales/hi/chat.json | 427 | "placeholder": "अपना संदेश संपादित करें..." | CODE |
| LOW | webview-ui/src/i18n/locales/hi/settings.json | 13 | "placeholder": "सेटिंग्स खोजें...", | CODE |
| LOW | webview-ui/src/i18n/locales/hi/settings.json | 545 | "placeholder": "डिफ़ॉल्ट: claude", | CODE |
| LOW | webview-ui/src/i18n/locales/hi/settings.json | 587 | "placeholder": "अपना कस्टम संघनन प्रॉम्प्ट यहाँ दर्ज करें...\n\nआप डिफ़ॉल्ट प्रॉम्प्ट जैसी ही संरचना का उपयोग कर सकते | CODE |
| LOW | webview-ui/src/i18n/locales/hi/prompts.json | 150 | "placeholder": "मोड का नाम दर्ज करें" | CODE |
| LOW | webview-ui/src/i18n/locales/de/chat.json | 430 | "placeholder": "Bearbeite deine Nachricht..." | CODE |
| LOW | webview-ui/src/i18n/locales/de/settings.json | 13 | "placeholder": "Einstellungen durchsuchen...", | CODE |
| LOW | webview-ui/src/i18n/locales/de/settings.json | 545 | "placeholder": "Standard: claude", | CODE |
| LOW | webview-ui/src/i18n/locales/de/settings.json | 587 | "placeholder": "Geben Sie hier Ihren benutzerdefinierten Komprimierungs-Prompt ein...\n\nSie können die gleiche Struk | CODE |
| LOW | webview-ui/src/i18n/locales/de/prompts.json | 150 | "placeholder": "Modusnamen eingeben" | CODE |
| 40 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | src/core/diff/strategies/multi-search-replace.ts | 109 | // Pattern allows optional '>' after SEARCH to handle AI-generated diffs | COMMENT |
| HIGH | src/api/providers/lite-llm.ts | 70 | * for function calls that weren't generated by Gemini (and thus lack thought signatures). | COMMENT |
| HIGH | src/api/transform/stream.ts | 39 | * that thinking blocks were generated by Claude. | COMMENT |
| HIGH | src/api/transform/stream.ts | 52 | * Cryptographic signature that verifies this thinking block was generated by Claude. | COMMENT |
| HIGH | src/services/code-index/embedders/ollama.ts | 80 | input: processedTexts, // Using 'input' as requested | CODE |
| HIGH | src/services/code-index/embedders/ollama.ts | 104 | // Extract embeddings using 'embeddings' key as requested | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | webview-ui/src/utils/removeLeadingNonAlphanumeric.ts | 1 | // We need to remove certain leading characters from the path in order for our | COMMENT |
| LOW | …tings/__tests__/SettingsView.change-detection.spec.tsx | 341 | expect(screen.queryByTestId("alert-dialog")).not.toBeInTheDocument() | COMMENT |
| LOW | apps/cli/install.sh | 1 | #!/bin/sh | COMMENT |
| LOW | apps/cli/scripts/build.sh | 1 | #!/bin/bash | COMMENT |
| LOW | src/core/webview/webviewMessageHandler.ts | 3201 | COMMENT | |
| LOW | src/core/webview/webviewMessageHandler.ts | 3221 | // "shareTaskSuccess" | | COMMENT |
| LOW | src/core/webview/ClineProvider.ts | 1401 | // we rely on the `ProviderSettingsManager`'s data store. It might | COMMENT |
| LOW | src/core/webview/ClineProvider.ts | 2861 | }`, | COMMENT |
| LOW | src/core/assistant-message/presentAssistantMessage.ts | 901 | // was breaking when relpath was undefined, and for invalid relpath it never | COMMENT |
| LOW | src/core/task/Task.ts | 1041 | COMMENT | |
| LOW | src/core/task/Task.ts | 2441 | // task that he then calls tools to complete. Unless there's an | COMMENT |
| LOW | src/core/task/Task.ts | 3461 | // NOTE: This comment is here for future reference - this was a | COMMENT |
| LOW | src/core/condense/index.ts | 461 | // the effective history is computed. The summary message is the only message | COMMENT |
| LOW | …/core/condense/__tests__/rewind-after-condense.spec.ts | 221 | // (ts - 1 from the first kept message) to prevent lookup collisions. | COMMENT |
| LOW | src/core/auto-approval/commands.ts | 21 | */ | COMMENT |
| LOW | src/integrations/misc/__tests__/extract-text.spec.ts | 641 | it("should handle carriage returns (\r) with special characters", () => { | COMMENT |
| LOW | src/integrations/misc/__tests__/extract-text.spec.ts | 661 | // Another test case for multi-byte character handling during carriage return (\r) overwrites. | COMMENT |
| LOW | src/integrations/diagnostics/index.ts | 21 | return newProblems | COMMENT |
| LOW | src/integrations/diagnostics/index.ts | 41 | // // Mock new diagnostics | COMMENT |
| LOW | src/integrations/diagnostics/index.ts | 61 | // console.log(`- ${diagnostic.message} (${diagnostic.range.start.line}:${diagnostic.range.start.character})`); | COMMENT |
| LOW | src/integrations/editor/DiffViewProvider.ts | 221 | // report new problems that are a direct result of this specific edit. | COMMENT |
| LOW | src/api/providers/openrouter.ts | 241 | // Process reasoning_details when switching models to Gemini. | COMMENT |
| LOW | src/api/transform/openai-format.ts | 381 | // UPDATE v2.0: we don't use tools anymore, but if we did it's important to note that the openrouter prompt caching | COMMENT |
| LOW | src/services/skills/SkillsManager.ts | 581 | // Get list of modes to check for mode-specific skills | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | …diff/strategies/__tests__/multi-search-replace.spec.ts | 570 | return True`.trim() | CODE |
| HIGH | …diff/strategies/__tests__/multi-search-replace.spec.ts | 594 | return True`) | CODE |
| HIGH | …integrations/misc/__tests__/indentation-reader.spec.ts | 43 | print(calc.value) | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | webview-ui/src/components/common/CodeBlock.tsx | 470 | // This creates a seamless experience where scrolling flows naturally between nested scrollable areas | COMMENT |
| MEDIUM | src/__mocks__/fs/promises.ts | 64 | "# Code Reviewer Rules\n1. Provide specific examples in feedback\n2. Focus on maintainability and best practices", | CODE |
| MEDIUM | …s/__tests__/custom-instructions-path-detection.spec.ts | 14 | // New implementation (robust): | COMMENT |
| MEDIUM | src/core/auto-approval/index.ts | 151 | // Auto-approval is intentional to provide a seamless experience when loading task instructions. | COMMENT |
| MEDIUM | …rvices/code-index/processors/__tests__/scanner.spec.ts | 269 | content: "# Introduction\nThis is a comprehensive guide...", | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | apps/vscode-e2e/src/suite/tools/apply-diff.test.ts | 54 | content: `function processData(data) { | CODE |
| LOW⚡ | …diff/strategies/__tests__/multi-search-replace.spec.ts | 839 | "function getData() {\n const results = fetchData();\n return results.filter(Boolean);\n}\n" | CODE |
| LOW⚡ | …diff/strategies/__tests__/multi-search-replace.spec.ts | 842 | function getData() { | CODE |
| LOW⚡ | …diff/strategies/__tests__/multi-search-replace.spec.ts | 847 | function getData() { | CODE |
| LOW | …diff/strategies/__tests__/multi-search-replace.spec.ts | 859 | "function getData() {\n const data = fetchData();\n return data.filter(Boolean);\n}\n", | CODE |
| LOW | …diff/strategies/__tests__/multi-search-replace.spec.ts | 872 | function processData(data) { | CODE |
| LOW | src/services/ripgrep/index.ts | 34 | │function processData(data: any) { | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | .roo/skills/evals-context/SKILL.md | 46 | ├── docker-compose.yml # Container orchestration | CODE |
| MEDIUM | apps/docs/docs/providers/ollama.md | 80 | # Set context window to 32K tokens (reduced from default) | COMMENT |
| MEDIUM | src/core/task/Task.ts | 2440 | // The way this agentic loop works is that cline will be given a | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | webview-ui/src/utils/getLanguageFromPath.ts | 83 | // Example usage: | COMMENT |
| LOW | apps/cli/scripts/build.sh | 4 | # Usage: | COMMENT |
| LOW | src/core/task/Task.ts | 682 | * ## Example usage | COMMENT |
| LOW | src/core/task/Task.ts | 709 | * ## Example usage | COMMENT |
| LOW | src/core/task/Task.ts | 738 | * ## Example usage | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | .github/workflows/cli-release.yml | 129 | # Create the wrapper script | COMMENT |
| MEDIUM | apps/cli/scripts/build.sh | 189 | # Create the wrapper script | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | .github/workflows/codeql.yml | 43 | # If you are analyzing a compiled language, you can modify the 'build-mode' for that language to customize how | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | .github/workflows/changeset-release.yml | 35 | # Check if there are any new changesets to process | COMMENT |
| LOW | apps/cli/install.sh | 266 | # Check if bin dir is in PATH and provide instructions | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | …cs/docs/advanced-usage/available-tools/search-files.md | 108 | 12 | // TODO: Implement error handling | CODE |
| LOW | …cs/docs/advanced-usage/available-tools/search-files.md | 120 | 14 | // TODO: Add proper validation | CODE |
| LOW | src/services/ripgrep/index.ts | 36 | │ // TODO: Implement error handling | CODE |