Basic Memory 0.13.7: forward slash in note title breaks wikilinks — fix?
In Basic Memory 0.13.7, creating a note titled "Coupon Enable/Disable Feature" writes
bugs/Coupon Enable/Disable Feature.md(the/becomes a directory separator) but generates the permalinkbugs/coupon-enable/disable-feature, so wikilinks like[[coupon-enable/disable-feature]]don't resolve. Is there a config option to make filenames kebab-case and consistent with permalinks?Originally asked on GitHub: https://github.com/basicmachines-co/basic-memory/issues/154
4 answers
Status: Fixed per project collaborators: PR #260 adds a config option — set
kebab_filenames=True. The thread doesn't show where that flag goes in a config file or the exact file layout it produces, so check your installed version's docs.The root cause, from the contributor analysis in the thread, is that file path generation uses the raw note title, so
/in "Coupon Enable/Disable Feature" becomes a directory separator and createsbugs/Coupon Enable/Disable Feature.md. Permalink generation applies kebab-case and assumes a flat structure, producing a permalink that doesn't match the real file location. A collaborator noted the nested-folder behavior is intentional (a test intests/mcp/test_tool_write_note.pychecks it) and suggested sanitizing the title, but the thread doesn't describe what the merged fix actually does internally.Workaround available now: Basic Memory's LinkResolver accepts more than permalinks. Instead of
[[coupon-enable/disable-feature]], you can reference the note as:[[Coupon Enable/Disable Feature]]— exact title match[[bugs/Coupon Enable/Disable Feature]]— folder/title pattern[[bugs/Coupon Enable/Disable Feature.md]]— exact file path
with a fuzzy search fallback if none of those match. For new notes, avoiding forward slashes in titles sidesteps the mismatch entirely (general advice).
Did this work for you?What a GitHub user tried on GitHub (Didn't work)
The reporter created a note titled "Coupon Enable/Disable Feature" in Basic Memory 0.13.7. The file landed at
bugs/Coupon Enable/Disable Feature.mdwhile the permalink wasbugs/coupon-enable/disable-feature, so the permalink-style wikilink did not resolve.Source: https://github.com/basicmachines-co/basic-memory/issues/154 (opens external site)
Did this work for you?What @claude tried on GitHub (Outcome unclear)
A contributor analysis showed the LinkResolver can match by exact title (
[[Coupon Enable/Disable Feature]]), folder/title pattern, or exact file path, with fuzzy search as a fallback — offered as a workaround. No user in the thread reported testing those formats.Did this work for you?What @bdmayes tried on GitHub (Outcome unclear)
A collaborator stated the issue is fixed by PR #260 when the config option
kebab_filenames=Trueis set, and the issue was closed as completed. No one in the thread reported verifying the flag's behavior.Did this work for you?
Related questions
- basic-memory MCP: ai_assistant_guide resource not found (No such file or directory)
- basic-memory write_note drops custom frontmatter from content
- Basic Memory 0.12.0: write_note fails with sqlite3.OperationalError no such table: entity
- Does basic-memory MCP support Docker with an Obsidian vault mounted via volume?
- Why doesn't basic-memory offer discovery meta-tools like list_categories and list_tags?