iiRecord
Agentic AI Atlas · SMFS GitHub Repository
page:docs-supermemory-research-raw-03-smfs-githuba5c.ai
II.
Page JSON

page:docs-supermemory-research-raw-03-smfs-github

Structured · live

SMFS GitHub Repository json

Inspect the normalized record payload exactly as the atlas UI reads it.

File · wiki/docs/supermemory-research/raw/03-smfs-github.mdCluster · wiki
Record JSON
{
  "id": "page:docs-supermemory-research-raw-03-smfs-github",
  "_kind": "Page",
  "_file": "wiki/docs/supermemory-research/raw/03-smfs-github.md",
  "_cluster": "wiki",
  "attributes": {
    "nodeKind": "Page",
    "sourcePath": "docs/supermemory-research/raw/03-smfs-github.md",
    "sourceKind": "repo-docs",
    "title": "SMFS GitHub Repository",
    "displayName": "SMFS GitHub Repository",
    "slug": "docs/supermemory-research/raw/03-smfs-github",
    "articlePath": "wiki/docs/supermemory-research/raw/03-smfs-github.md",
    "article": "\n# SMFS GitHub Repository\n\nSource: https://github.com/supermemoryai/smfs\n\n## Core Concept\n\nSMFS is a filesystem designed to expose Supermemory containers as accessible directories. \"Your Supermemory container, exposed as a filesystem\" with capabilities for reading, writing, and searching memory like a local directory.\n\n## Dual Access Architectures\n\n### Local Mount\n\nMounts as a real directory on systems with kernel filesystem support (macOS, Linux, devcontainers, Docker, microVMs). Editors and standard Unix tools work transparently.\n\n### Virtual Bash Tool\n\nFor serverless and edge environments lacking local filesystems, a TypeScript package (`@supermemory/bash`) provides the same functionality as a pluggable agent tool without requiring actual filesystem mounting.\n\n## Installation\n\n```bash\ncurl -fsSL https://smfs.ai/install | bash\n```\n\nSupports macOS and Linux (both arm64 and x64). Requires a Supermemory API key.\n\n## Core Commands\n\n- `smfs mount <tag>` -- mounts a container as a directory\n- `smfs grep \"query\"` -- semantic search without flags; literal grep with any flag\n- `smfs login` -- one-time credential storage\n- `smfs unmount <tag>` -- unmount and drain pending writes\n\n## Memory Path Configuration\n\nOnly files under designated \"memory paths\" undergo Supermemory's processing pipeline for semantic indexing. The `--memory-paths` flag allows configuration:\n\n```bash\nsmfs mount agent_memory --memory-paths \"/notes/,/journal.md,/work/\"\nsmfs mount agent_memory --memory-paths \"\"  # disables processing\n```\n\nTrailing slash = match any file inside that folder recursively. No trailing slash = exact file match.\n\n## Backend Implementation\n\n- **FUSE**: Linux containers and systems; requires `/dev/fuse` device and `SYS_ADMIN` capability\n- **NFS**: Default on macOS hosts; doesn't apply within Linux containers\n\n## Synchronization Behavior\n\nLocal changes upload asynchronously; remote changes sync every 30 seconds by default. `--sync-interval` adjusts pull timing; `--no-sync` disables pulling while preserving uploads.\n\n## Virtual Bash Tool Usage\n\n```typescript\nimport { createBash } from \"@supermemory/bash\";\n\nconst { bash } = await createBash({\n  apiKey: process.env.SUPERMEMORY_API_KEY!,\n  containerTag: \"user_42\",\n});\n\nawait bash.exec(\"echo 'hello' > /a.md && cat /a.md\");\nawait bash.exec(\"sgrep 'authentication tokens'\");\n```\n\n## Docker Deployment\n\nFUSE-enabled Docker runs require: `--device /dev/fuse --cap-add SYS_ADMIN`\n\n## Technical Stack\n\nRust (40.9%), Python (40.4%), TypeScript (18.1%). Rust 1.80+ required for source builds.\n\n## License\n\nMIT\n",
    "documents": []
  },
  "outgoingEdges": [],
  "incomingEdges": [
    {
      "from": "page:docs-supermemory-research",
      "to": "page:docs-supermemory-research-raw-03-smfs-github",
      "kind": "contains_page"
    }
  ]
}