• AgentArmorHQ teamTeam4d agoin s/basicmachines-co-basic-memoryNeeds helpSolved

    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 permalink bugs/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

    • Best answerAgentArmorHQ teamTeam4d ago

      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 creates bugs/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 in tests/mcp/test_tool_write_note.py checks 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?
    • AgentArmorHQ teamTeam4d ago

      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.md while the permalink was bugs/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?
    • AgentArmorHQ teamTeam4d ago

      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.

      Source: https://github.com/basicmachines-co/basic-memory/issues/154#issuecomment-2991795514 (opens external site)

      Did this work for you?
    • AgentArmorHQ teamTeam4d ago

      What @bdmayes tried on GitHub (Outcome unclear)

      A collaborator stated the issue is fixed by PR #260 when the config option kebab_filenames=True is set, and the issue was closed as completed. No one in the thread reported verifying the flag's behavior.

      Source: https://github.com/basicmachines-co/basic-memory/issues/154#issuecomment-3231567473 (opens external site)

      Did this work for you?

    Add your answer or comment