yams/docs/README.md
2025-09-11 11:28:42 -04:00

3.5 KiB
Raw Permalink Blame History

YAMS Documentation

Content-addressed storage with deduplication and semantic search.

Quick Start

User Docs

Developer Docs

Operations

Features

Plugin System (C‑ABI)

YAMS supports optional plugins discovered and managed by the daemon. Plugins use a stable C‑ABI (include/yams/plugins/abi.h) and are loaded only from trusted directories.

  • Trust file: ~/.config/yams/plugins_trust.txt (one path per line; default deny until trusted)
  • Discovery order:
    • YAMS_PLUGIN_DIR (exclusive if set)
    • $HOME/.local/lib/yams/plugins
    • /usr/local/lib/yams/plugins, /usr/lib/yams/plugins
    • ${CMAKE_INSTALL_PREFIX}/lib/yams/plugins (if installed)
  • Disable plugin subsystem: run daemon with --no-plugins.

CLI quickstart:

# Scan default paths (no load)
yams plugin scan

# Trust a directory, then load the ONNX plugin by path
yams plugin trust add /usr/local/lib/yams/plugins
yams plugin load /usr/local/lib/yams/plugins/libyams_onnx_plugin.so

ONNX model provider (host‑backed): when built and trusted, the ONNX plugin advertises model_provider_v1 and is preferred by the daemon; otherwise it falls back to legacy registry or mock/null providers.

Build Options

Option Default Description
YAMS_USE_CONAN OFF Use Conan package manager
YAMS_BUILD_CLI ON CLI with optional TUI browser
YAMS_BUILD_MCP_SERVER ON MCP server
YAMS_BUILD_TESTS OFF Unit and integration tests
YAMS_BUILD_BENCHMARKS OFF Performance benchmarks
YAMS_ENABLE_PDF ON PDF text extraction support (may download PDFium via FetchContent)
YAMS_ENABLE_TUI OFF Enables TUI browser (adds ncurses via Conan; ImTUI via FetchContent)
YAMS_ENABLE_ONNX ON Enables ONNX Runtime features (pulls onnxruntime; may pull Boost transitively)
CMAKE_BUILD_TYPE Release Debug/Release/RelWithDebInfo

Resources

Ecosystem