一键导入
mache-explore
Mount a mache FUSE filesystem inside the project directory so agents can explore structured data without per-file permission prompts.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Mount a mache FUSE filesystem inside the project directory so agents can explore structured data without per-file permission prompts.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
Author a mache projection schema (Topology→Node→Leaf) that maps structured data or source code into a filesystem/graph. Use when creating or debugging a *-schema.json for a new data source (SQLite/JSON) or a new source language. Covers both dialects — tree-sitter S-expression selectors for code, and JSONPath selectors for data — the gotchas (@scope on inner nodes, nested $[*], _parent traversal, the .db vs JSON-walker capability split), and how to validate the result.
Add a find_smells rule to mache — a SQL query over the projected code graph that surfaces a code smell (duplication, complexity, dead code, drift). Use when adding or debugging a SmellRule in cmd/smell_rules.go or an external $MACHE_SMELL_RULES_DIR rule. Covers the SmellRule struct, the standalone-vs-_ast table capability split, severity/polarity, tags, and the adversarial-fixture test discipline.
| name | mache-explore |
| description | Mount a mache FUSE filesystem inside the project directory so agents can explore structured data without per-file permission prompts. |
Mount a mache data source inside the project directory so all file reads are auto-approved by Claude Code's permission model. Use this when you need direct filesystem access to mache-projected data (e.g., for Grep, Glob across the mount).
For most tasks, prefer the MCP tools (list_directory, read_file, search, find_callers, find_callees, get_communities) which are available automatically via the mache plugin. Use this FUSE skill only when you need bulk filesystem access.
$ARGUMENTS
Arguments format: <schema> <data-source> [mount-name]
examples/go-schema.json).db file, etc.)default)Examples:
/mache:mache-explore examples/go-schema.json .
/mache:mache-explore examples/nvd-schema.json ~/.agentic-research/venturi/nvd/results/results.db nvd
Extract from $ARGUMENTS:
SCHEMA = first argument (required)DATA_SOURCE = second argument (required)MOUNT_NAME = third argument, or default if not providedIf fewer than 2 arguments, ask the user for the missing values.
MACHE_BIN=$(which mache 2>/dev/null) && echo "Found: $MACHE_BIN" || echo "NOT_FOUND"
If not found, ask the user for the full binary path. Then learn the CLI:
"$MACHE_BIN" --help 2>&1 | head -20
Use the --help output to determine correct flags. Do NOT assume flag names.
Validate schema and data source exist:
ls -la "$SCHEMA"
ls -la "$DATA_SOURCE"
mkdir -p .mache-mount/$MOUNT_NAME
grep -q '^\.mache-mount/' .gitignore 2>/dev/null || echo '.mache-mount/' >> .gitignore
"$MACHE_BIN" <flags from --help> .mache-mount/$MOUNT_NAME &
echo $! > .mache-mount/.pid
echo "mache PID: $(cat .mache-mount/.pid)"
Wait for readiness (up to 10 seconds):
for i in $(seq 1 10); do
if ls .mache-mount/$MOUNT_NAME/ 2>/dev/null | head -1; then
echo "Mount ready"
break
fi
sleep 1
done
Data is mounted. Use ls, Read, Grep, Glob freely — no permission prompts.
if [ -f .mache-mount/.pid ]; then
kill "$(cat .mache-mount/.pid)" 2>/dev/null
rm .mache-mount/.pid
fi
umount .mache-mount/$MOUNT_NAME 2>/dev/null || diskutil unmount .mache-mount/$MOUNT_NAME 2>/dev/null || fusermount -u .mache-mount/$MOUNT_NAME 2>/dev/null
.gitignore keeps mount artifacts out of version controlmount-name values.) is safe — mache skips dot-prefixed directories