Repository Analysis

foambubble/foam

A personal knowledge management and sharing system for VSCode

5.1 Low AI signal View on GitHub
5.1
Adjusted Score
5.1
Raw Score
100%
Time Factor
2026-05-29
Last Push
17,169
Stars
TypeScript
Language
81,015
Lines of Code
529
Files
169
Pattern Hits
2026-05-31
Scan Date

Score History

Severity Breakdown

CRITICAL 0HIGH 0MEDIUM 120LOW 49

Pattern Findings

169 matches across 5 categories. Click a row to expand file-level details.

Decorative Section Separators120 hits · 360 pts
SeverityFileLineSnippet
MEDIUMpackages/foam-mcp/src/serializers.ts13// ─── URI conversion at the wire boundary ─────────────────────────────────────
MEDIUMpackages/foam-mcp/src/serializers.ts57// ─── JSON shapes ─────────────────────────────────────────────────────────────
MEDIUMpackages/foam-mcp/src/serializers.ts128// ─── Serializers ─────────────────────────────────────────────────────────────
MEDIUMpackages/foam-mcp/src/tools/resources.ts36 // ─── list_resources ────────────────────────────────────────────────────────
MEDIUMpackages/foam-mcp/src/tools/resources.ts58 // ─── get_resource ──────────────────────────────────────────────────────────
MEDIUMpackages/foam-mcp/src/tools/resources.ts87 // ─── read_resource ─────────────────────────────────────────────────────────
MEDIUMpackages/foam-mcp/src/tools/resources.ts114 // ─── create_resource ───────────────────────────────────────────────────────
MEDIUMpackages/foam-mcp/src/tools/resources.ts147 // ─── update_resource ───────────────────────────────────────────────────────
MEDIUMpackages/foam-mcp/src/tools/resources.ts188 // ─── delete_resource ───────────────────────────────────────────────────────
MEDIUMpackages/foam-mcp/src/tools/resources.ts220 // ─── move_resource ─────────────────────────────────────────────────────────
MEDIUMpackages/foam-mcp/src/tools/graph.ts37 // ─── get_connections ───────────────────────────────────────────────────────
MEDIUMpackages/foam-mcp/src/tools/graph.ts66 // ─── get_orphans ───────────────────────────────────────────────────────────
MEDIUMpackages/foam-mcp/src/tools/graph.ts84 // ─── get_deadends ──────────────────────────────────────────────────────────
MEDIUMpackages/foam-mcp/src/tools/graph.ts101 // ─── get_placeholders ──────────────────────────────────────────────────────
MEDIUMpackages/foam-mcp/src/tools/graph.ts115 // ─── traverse_graph ────────────────────────────────────────────────────────
MEDIUMpackages/foam-mcp/src/tools/graph.ts140 // ─── get_graph_summary ─────────────────────────────────────────────────────
MEDIUMpackages/foam-mcp/src/tools/graph.ts193 // ─── get_workspace_info ────────────────────────────────────────────────────
MEDIUMpackages/foam-mcp/src/tools/tags.ts34 // ─── list_tags ─────────────────────────────────────────────────────────────
MEDIUMpackages/foam-mcp/src/tools/tags.ts54 // ─── search_by_tag ─────────────────────────────────────────────────────────
MEDIUMpackages/foam-mcp/src/tools/tags.ts87 // ─── add_tags ──────────────────────────────────────────────────────────────
MEDIUMpackages/foam-mcp/src/tools/tags.ts114 // ─── remove_tags ───────────────────────────────────────────────────────────
MEDIUMpackages/foam-mcp/src/tools/tags.ts140 // ─── rename_tag ────────────────────────────────────────────────────────────
MEDIUMpackages/foam-cli/src/support/version.test.ts29// ─── getCurrentVersion ────────────────────────────────────────────────────────
MEDIUMpackages/foam-cli/src/support/version.test.ts37// ─── isNewerVersion ───────────────────────────────────────────────────────────
MEDIUMpackages/foam-cli/src/support/version.test.ts65// ─── readUpdateCheckCache / writeUpdateCheckCache ─────────────────────────────
MEDIUMpackages/foam-cli/src/support/version.test.ts120// ─── fetchLatestVersion ───────────────────────────────────────────────────────
MEDIUMpackages/foam-cli/src/support/version.test.ts176// ─── formatUpdateNotice ───────────────────────────────────────────────────────
MEDIUMpackages/foam-cli/src/support/version.test.ts191// ─── checkForUpdateNotice ─────────────────────────────────────────────────────
MEDIUMpackages/foam-cli/src/commands/lint.ts22// ─── Help ─────────────────────────────────────────────────────────────────────
MEDIUMpackages/foam-cli/src/commands/lint.ts42// ─── Types ────────────────────────────────────────────────────────────────────
MEDIUMpackages/foam-cli/src/commands/lint.ts56// ─── Domain ───────────────────────────────────────────────────────────────────
MEDIUMpackages/foam-cli/src/commands/lint.ts68// ─── Formatting ───────────────────────────────────────────────────────────────
MEDIUMpackages/foam-cli/src/commands/lint.ts102// ─── Command runner ───────────────────────────────────────────────────────────
MEDIUMpackages/foam-cli/src/commands/note.ts39// ─── Help ────────────────────────────────────────────────────────────────────
MEDIUMpackages/foam-cli/src/commands/note.ts62// ─── Formatters ──────────────────────────────────────────────────────────────
MEDIUMpackages/foam-cli/src/commands/note.ts97// ─── Command runner ───────────────────────────────────────────────────────────
MEDIUMpackages/foam-cli/src/commands/note.ts316// ─── Helpers ──────────────────────────────────────────────────────────────────
MEDIUMpackages/foam-cli/src/commands/daily.ts19// ─── Help ─────────────────────────────────────────────────────────────────────
MEDIUMpackages/foam-cli/src/commands/daily.ts37// ─── Domain ───────────────────────────────────────────────────────────────────
MEDIUMpackages/foam-cli/src/commands/daily.ts94// ─── Command runner ───────────────────────────────────────────────────────────
MEDIUMpackages/foam-cli/src/commands/daily.ts171// ─── Helpers ──────────────────────────────────────────────────────────────────
MEDIUMpackages/foam-cli/src/commands/note.test.ts22// ─── resolveNote ──────────────────────────────────────────────────────────────
MEDIUMpackages/foam-cli/src/commands/note.test.ts62// ─── noteShowData ─────────────────────────────────────────────────────────────
MEDIUMpackages/foam-cli/src/commands/note.test.ts94// ─── noteIdData ───────────────────────────────────────────────────────────────
MEDIUMpackages/foam-cli/src/commands/note.test.ts108// ─── noteCreate ───────────────────────────────────────────────────────────────
MEDIUMpackages/foam-cli/src/commands/note.test.ts151// ─── noteMove ─────────────────────────────────────────────────────────────────
MEDIUMpackages/foam-cli/src/commands/note.test.ts191// ─── noteDelete ───────────────────────────────────────────────────────────────
MEDIUMpackages/foam-cli/src/commands/note.test.ts233// ─── runNoteCommand (integration) ─────────────────────────────────────────────
MEDIUMpackages/foam-cli/src/commands/outline.test.ts8// ─── outlineData ──────────────────────────────────────────────────────────────
MEDIUMpackages/foam-cli/src/commands/outline.test.ts41// ─── runOutlineCommand ────────────────────────────────────────────────────────
MEDIUMpackages/foam-cli/src/commands/search.ts29// ─── Help ─────────────────────────────────────────────────────────────────────
MEDIUMpackages/foam-cli/src/commands/search.ts49// ─── Formatting ───────────────────────────────────────────────────────────────
MEDIUMpackages/foam-cli/src/commands/search.ts69// ─── Command runner ───────────────────────────────────────────────────────────
MEDIUMpackages/foam-cli/src/commands/outline.ts17// ─── Help ─────────────────────────────────────────────────────────────────────
MEDIUMpackages/foam-cli/src/commands/outline.ts30// ─── Formatters ───────────────────────────────────────────────────────────────
MEDIUMpackages/foam-cli/src/commands/outline.ts42// ─── Command runner ───────────────────────────────────────────────────────────
MEDIUMpackages/foam-cli/src/commands/daily.test.ts10// ─── parseDateArg ─────────────────────────────────────────────────────────────
MEDIUMpackages/foam-cli/src/commands/daily.test.ts37// ─── defaultDailyNoteUri ──────────────────────────────────────────────────────
MEDIUMpackages/foam-cli/src/commands/daily.test.ts53// ─── runDailyCommand ──────────────────────────────────────────────────────────
MEDIUMpackages/foam-cli/src/commands/lint.test.ts9// ─── buildRules ───────────────────────────────────────────────────────────────
60 more matches not shown…
Hyper-Verbose Identifiers36 hits · 39 pts
SeverityFileLineSnippet
LOWpackages/foam-cli/src/support/filesystem.ts119export async function loadWorkspaceFromDirectory(
LOWpackages/foam-graph/src/lib/graph-view-model.ts107export function computeAutocompleteOptions(
LOWpackages/foam-vscode/src/test/vscode-mock.ts1467export function createMockExtensionContext(): ExtensionContext {
LOW…/src/vscode/features/daily-notes/daily-note-service.ts188export async function createDailyNoteIfNotExists(targetDate: Date, foam: Foam) {
LOW…code/src/vscode/features/navigation/link-completion.ts343function getCompletionLabelSetting() {
LOW…code/src/vscode/features/navigation/link-completion.ts349function getCompletionAliasSetting() {
LOW…code/src/vscode/features/navigation/link-completion.ts356function getCompletionLinkFormatSetting() {
LOW…vscode/src/vscode/features/editing/update-wikilinks.ts60export function getWikilinkDefinitionSetting():
LOW…vscode/src/vscode/features/editing/update-wikilinks.ts69async function updateWikilinkDefinitions(
LOW…vscode/src/vscode/features/editing/update-wikilinks.ts119function detectDocumentWikilinkDefinitions(text: string, eol: string) {
LOW…am-vscode/src/vscode/features/editing/convert-links.ts35async function convertWikilinkToMarkdown(foam: Foam): Promise<void> {
LOW…am-vscode/src/vscode/features/editing/convert-links.ts104async function convertMarkdownToWikilink(foam: Foam): Promise<void> {
LOW…/features/preview/foam-query-renderer-web-extension.ts22function selectMentionsSourceField(content: string): boolean {
LOW…m-vscode/src/vscode/features/preview/wikilink-embed.ts223export function withLinksRelativeToWorkspaceRoot(
LOW…-vscode/src/vscode/utils/tree-views/tree-view-utils.ts193export function createBacklinkItemsForResource(
LOW…-vscode/src/vscode/utils/tree-views/tree-view-utils.ts214export function createConnectionItemsForResource(
LOWpackages/foam-vscode/src/vscode/services/editor.ts90export function getWorkspaceDefaultScheme(): string {
LOWpackages/foam-vscode/src/vscode/services/editor.ts175export function getCurrentEditorDirectory(): URI {
LOWpackages/foam-vscode/src/vscode/services/editor.ts222export async function createMatcherAndDataStore(
LOW…ckages/foam-vscode/src/vscode/services/note-factory.ts92async function askUserForFilepathConfirmation(
LOW…ges/foam-core/src/utils/template-frontmatter-parser.ts3export function extractFoamTemplateFrontmatterMetadata(
LOWpackages/foam-core/src/common/errors.ts74export function setUnexpectedErrorHandler(
LOWpackages/foam-core/src/common/errors.ts88export function onUnexpectedExternalError(e: any): undefined {
LOWpackages/foam-core/src/common/errors.ts103export function transformErrorForSerialization(error: Error): SerializedError;
LOWpackages/foam-core/src/common/errors.ts104export function transformErrorForSerialization(error: any): any;
LOWpackages/foam-core/src/common/errors.ts105export function transformErrorForSerialization(error: any): any {
LOWpackages/foam-core/src/common/event.ts512export function setGlobalLeakWarningThreshold(n: number): IDisposable {
LOWpackages/foam-core/src/model/uri.ts225function decodeURIComponentGraceful(str: string): string {
LOWpackages/foam-core/src/model/uri.ts413function encodeURIComponentMinimal(path: string): string {
LOWpackages/foam-core/src/templates/template-discovery.ts23export function getDailyNoteTemplateCandidateUris(templatesDir: URI): URI[] {
LOWpackages/foam-core/src/templates/template-discovery.ts33export function getNewNoteTemplateCandidateUris(templatesDir: URI): URI[] {
LOWpackages/foam-core/src/commands/frontmatter.ts104export function removeTagsFromFrontmatter(
LOWpackages/foam-core/src/services/link-integrity.ts53function computeRenameEditsForPairs(
LOWpackages/foam-core/src/services/link-integrity.ts101export function computeWikilinkRenameEdits(
LOWpackages/foam-core/src/services/link-integrity.ts116export function computeDirectoryWikilinkRenameEdits(
LOWpackages/foam-core/src/services/markdown-parser.ts299function getPropertiesInfoFromYAML(yamlText: string): {
Verbosity Indicators4 hits · 8 pts
SeverityFileLineSnippet
LOW…rc/vscode/features/graph-webview/graph-webview.spec.ts112 // Step 4: Show graph (should appear beside the editor, not in column 1)
LOW…rc/vscode/features/graph-webview/graph-webview.spec.ts125 // Step 5: Return focus to readme.md
LOW…rc/vscode/features/graph-webview/graph-webview.spec.ts134 // Step 6: Open markdown preview (simulated by opening another document in the same group as graph)
LOW…rc/vscode/features/graph-webview/graph-webview.spec.ts138 // Step 8: Show graph again - it should NOT move
Over-Commented Block5 hits · 5 pts
SeverityFileLineSnippet
LOWpackages/foam-cli/release.js1#!/usr/bin/env node
LOW…ages/foam-cli/src/commands/mcp-tools-inspector.spec.ts261 expect(labels).toContain('Goals');
LOWpackages/foam-vscode/release.js1#!/usr/bin/env node
LOW…rc/vscode/features/preview/foam-query-renderer.test.ts721 expect(result).toContain('foam-query-cycle');
LOWpackages/foam-core/release.js1#!/usr/bin/env node
Fake / Example Data4 hits · 4 pts
SeverityFileLineSnippet
LOW…vscode/src/ai/providers/ollama/ollama-provider.test.ts281 const text = 'Lorem ipsum dolor sit amet. '.repeat(length);
LOW…vscode/src/ai/providers/ollama/ollama-provider.test.ts281 const text = 'Lorem ipsum dolor sit amet. '.repeat(length);
LOW…code/src/vscode/features/preview/tag-highlight.spec.ts16 expect(md.render(`Lorem ipsum dolor #si-t`)).toMatch(
LOW…code/src/vscode/features/preview/tag-highlight.spec.ts17 `<p>Lorem ipsum dolor <span class='foam-tag'>#si-t</span></p>`