Repository navigation
fix: scope snake_case tools to the repo and approve them as read-only - #6
Open
ishaanxgupta wants to merge 2 commits into
Open
ishaanxgupta wants to merge 2 commits into
ishaanxgupta wants to merge 2 commits into
Conversation
ishaanxgupta
force-pushed
the
ishaan/audit-fixes
branch
from
October 29, 2026 09:08
d37f32d to
15abb6c
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What
recall-approvenow also allows the snake_case read-only tools:get_profile,list_documents,get_document,list_memories,list_spaces,who_am_i. Before, only the deprecated camelCase names were listed, so the current names prompted.list_documentscall with no tag therefore returned documents from across the whole account. It now also defaults these to the repo:list_documents,list_memories,get_document,get_profile;forget_memory, so it targets the same space asadd_memory.Account-level tools (
list_spaces,who_am_i,set-active-tag,select-space) are left alone.namespaceand keepscontainerTagas a deprecated alias (it readsnamespace ?? containerTag). The proxy now treats either one as the caller's choice and doesn't inject over it.containerTagsearches the account's shared space, but the proxy fills in the repo tag. It now says what happens: calls without a tag search this project, and to search another space you pass its tag (found withlist_spaces).Not changed:
guided-saveguided-savetakes nonamespaceorcontainerTag. Its input is justprefill, and the form opens on the account's active space (apps/mcp/src/server/tools/guided-save.ts). An injected tag would be dropped by the schema, so the proxy doesn't inject one. Making the form open on the repo space would need a server change.Release
0.3.1 in
package.jsonand.muse-plugin/plugin.json, which leaves 0.3.0 for the background sign-in PR.Tests
node --test test/unit.mjs: 11 pass, 0 fail.namespaceis kept.Prod check (sandboxed
HOME, fresh OAuth sign-in, 2026-10-29)Repo tag for this check: the throwaway
SUPERMEMORY_REPO_TAG=audit_test_muse_scope_20261029.tools/listthrough the proxy returned 22 tools.recall-approveauto-approves the 14 read tools:search_memory,get_profile,list_documents,listDocuments,get_document,getDocument,list_memories,listMemories,list_spaces,listSpaces,who_am_i,whoAmI,memory-graph,fetch-graph-data.list_documentswith no tag, same account and same call:main's proxy:totalItems = 53(the account's active space);totalItems = 1(only the test document in the repo tag).add_memoryandget_profilewith no tag both reportnamespace = audit_test_muse_scope_20261029.guided-saveinput schema has nonamespaceorcontainerTag, which confirms the note above.