subagent-driven-development
OBobra/superpowers299k2,675 new stars in the last 7 days
Install and register the model-free AutoRAG Lite MCP server, configure approved roots and datasources, build indexes, and verify MCP discovery and search. Use when autorag-mcp is missing, MCP connection fails, indexes are stale, or the user wants document search without configuring a search model.
Use this skill only to bootstrap, register, or repair AutoRAG Lite MCP:
initialize trusted config, connect the host, build indexes, and verify search.
Normal Lite use is MCP tool calling, not a search skill or shell command.
Use autorag-setup instead when the model-backed librarian must be configured.
searchPaths, workspacePath,
memoryPath, minSync, jikji, datasources.tokenEnv or apiKeyEnv..autorag/ directory and
Jikji's per-source .jikji/ caches.node_modules, .git, dist, build, target, .cache, .autorag, or
.jikji.@autorag/librarian ships both autorag (bootstrap/maintenance) and
autorag-mcp (stdio server). The executable requires Node.js >= 24 on PATH.
command -v autorag-mcp >/dev/null || bun install -g @autorag/librarian
command -v autorag
command -v autorag-mcp
autorag lite --help
If Bun is unavailable, npm install -g @autorag/librarian is acceptable.
If only autorag exists, upgrade the package rather than substituting CLI
retrieval for MCP. For a source checkout, run bun run build and register the
absolute dist/mcp/index.js path instead of the installed executable.
autorag lite init \
--search-paths "/path/to/documents,/path/to/notes" \
--workspace "/path/to/workspace" \
--memory-path "/path/to/memory.json"
lite init writes the configured model-free lifecycle config. Use --force
only when intentionally replacing an existing config, and target it with an
explicit path (--config or AUTORAG_CONFIG); --force refuses to replace the
implicit ~/.autorag/config.json. Explicit user paths win;
otherwise propose one to three document-dense roots and get approval before
indexing. Supported parsed formats are md, markdown, txt, text, pdf,
docx, pptx, xlsx, xls, hwp, hwpx, and eml. Legacy .doc is not
a supported parsed format.
Config resolution follows the usual order: --config, AUTORAG_CONFIG,
$AUTORAG_HOME/config.json, or ~/.autorag/config.json. Environment overrides
include AUTORAG_HOME, AUTORAG_CONFIG, AUTORAG_SEARCH_PATHS,
AUTORAG_WORKSPACE, and AUTORAG_MEMORY_PATH.
After config and datasource setup, register the server with the host. Use
absolute config, search root, workspace, and executable paths: hosts may start
the server from a different working directory or with a restricted PATH.
Resolve command -v autorag-mcp and substitute its absolute path below.
Inspect an existing autorag registration first; keep a working registration
and update only an outdated command or config path.
# Claude Code: project-local registration
claude mcp add --transport stdio --scope local autorag \
--env AUTORAG_CONFIG=/absolute/path/to/.autorag/config.json \
-- /absolute/path/to/autorag-mcp
# Codex: user registration
codex mcp add autorag \
--env AUTORAG_CONFIG=/absolute/path/to/.autorag/config.json \
-- /absolute/path/to/autorag-mcp
For other hosts, use their stdio MCP configuration with the same command,
empty arguments, and AUTORAG_CONFIG environment variable. The host starts
the subprocess; do not run it as a background HTTP service. Pass any required
credential environment-variable names through the host's secret mechanism;
never put credential values in registration examples or logs.
Reload/reconnect the host, then use MCP tools/list to discover the actual
tools and schemas. Verify autorag.status, autorag.refresh, autorag.search,
autorag.search.files, and autorag.datasources.list are available. Configured
integrated datasources add their own search tools; do not assume a fixed count.
Run autorag.status and autorag.datasources.list through MCP, then refresh
and search a known phrase from an approved document. Registration alone is
not proof of a connected or searchable server. After config changes, restart
the server so datasource tools are rebuilt.
AUTORAG_MCP_READ_ONLY=1 omits refresh; build indexes with the CLI before
connecting that mode. AUTORAG_MCP_TOOLS is an optional comma-separated exact
tool allowlist; omitted tools cannot be called. Use unrestricted tools for
initial setup unless the user intentionally requests a restricted connection.
A datasource setup UI is not shipped in this build — do not recommend it for datasource setup. Configure datasources directly in trusted config, wizard-style:
lazykatok, discrawl, slacrawl,
wacrawl, telecrawl, notcrawl, qmd, mailcrawl, rclone) and its
local store or archive is present. CLI-backed datasources own their own
archive, index, and authentication, so environment credentials (such as bot
tokens) are never required or checked for them. Non-CLI connectors
(such as github) require their credential environment variable
(GITHUB_TOKEN).datasources entries without asking. For example,
when Slack (slacrawl) and Discord (discrawl) are installed with local
stores present, set both up automatically. Discord uses discrawl's local
desktop wiretap archive; no Discord bot token is configured or needed.mail-export, mailcrawl) matter to most
users — always probe them and report their status, even when they end up
skipped.Datasource skills belong in trusted config.
Config keys may be builtin template names (kakao, whatsapp, telegram,
slack, discord, clawgallery, notion, github, cloud-drive,
mail-export, mailcrawl, obsidian, rss, spotlight, lark) or connection
aliases with "type": "<template>". Unknown names are skipped with an
unknown-datasource-skill warning; they do not fail config resolution.
scope narrows a query to a sub-path as ordinary filtering. Tags are
descriptive metadata only, not search filters. Use MCP datasourceIds to
select configured connections before retrieval; discover their IDs with
autorag.datasources.list. Store only env-var names such as tokenEnv or
apiKeyEnv, never credential values.
After connecting, call MCP autorag.refresh with {} for an incremental run.
Use {"methods":["parsed","minsync"]} to narrow indexing, or
{"force":true} only when a full resync is needed. Omit methods to run all
configured methods; MCP does not accept "all" as a method value.
CLI refresh remains available for bootstrap, read-only deployments, and repair:
AUTORAG_CONFIG=/absolute/path/to/.autorag/config.json autorag lite refresh --json
--full and --force request a full resync; MCP uses force: true.--method <csv> accepts parsed, minsync, datasources, jikji,
everything (Windows), fsearch (macOS/Linux), and all. MCP methods
accepts the same individual methods, not all. Unknown values are rejected.native:Qwen/Qwen3-Embedding-0.6B, 1024 dimensions, MinSync 0.4.7): no
embedder flags, no API key, and no external daemon (such as Ollama) are
needed, and no corpus text leaves the machine. For gateway-profiled
embeddings, prefetch with autorag models prefetch --profile qwen3-embedding-0.6b.
The legacy Ollama/TEI adapter path (EmbeddingGemma, 768 dimensions) is for
manual QA only. Override the embedder only when intentionally using a
different provider.dupey CLI. Install dupey during setup when it is missing
(command -v dupey || cargo install dupey --locked) and tell the user the feature is
available; when installation is impossible, refresh continues without it
and the user is told duplicate exclusion is off. Set
"excludeExactDuplicates": false to index every copy.Content search requires a completed refresh. MCP autorag.search returns
isError: true with errorCode: "index-not-ready" until refresh completes.
Always refresh first, and refresh again when roots change. Stale indexes can
still return results with stale: true and diagnostics; use strict: true
to reject stale answers, or call autorag.refresh before searching. Sources
deliberately skipped during refresh do not count as stale.
Jikji is a discovery/indexing preparer, not a lite retrieval method.
autorag lite watch --once --json
autorag lite watch
Prefer non-daemon autorag lite watch --once from cron, launchd, a systemd
user timer, or Task Scheduler, hourly by default (every 1 hour; shorten only
when the user asks for fresher indexes). Use the same config as retrieval,
avoid overlapping runs, and keep logs outside source trees. --immediate
triggers a first refresh on start and --debounce-ms N tunes change
coalescing. Once the schedule is installed, tell the user right away that
hourly freshness is set up.
Use MCP autorag.status for health and autorag.duplicates for read-only
duplicate-family inspection. No search model is required. CLI-only repair:
AUTORAG_CONFIG=/absolute/path/to/.autorag/config.json autorag lite index rebuild --yes --json
AUTORAG_CONFIG=/absolute/path/to/.autorag/config.json autorag lite index reset --method parsed --yes --json
index reset and index rebuild remove or rebuild only workspace
.autorag indexes selected by --method. They never target source
documents.duplicates scans duplicate document families read-only and never deletes
or moves files.Inspect MCP isError, errorCode, diagnostics, and unsearched before
trusting results. ok: true with skipped surfaces is partial coverage, not
proof that the whole corpus was searched. Preserve the underlying error text
when reporting unavailable components such as retrieval-method-failed.
MinSync is required: when its binary is missing the call fails with an
MinSync is required ... error rather than returning partial results, so
install it (cargo install minsync) instead of working around it. Repair the
component rather than silently accepting degraded search.
MCP results carry source, method, and content directly. After a search, the
optional curation lifecycle is also exposed through MCP: autorag.report
records a curated answer, and autorag.evidence returns the exact chunks behind
numbered results. These accept and return JSON matching the CLI's
report/evidence contracts; discover the exact schemas with MCP tools/list
rather than restating them here. Every bracketed [n] citation in a report
answer must be a results[].number; an unmatched citation is removed from
the persisted answer and returned as a citation-without-result diagnostic.
The CLI autorag report and autorag evidence commands remain available for
terminal maintenance.
Setup is complete only when the package and stdio executable are installed, roots are approved, trusted model-free config is written, every datasource has been probed and configured/skipped lists reported, and dupey is installed or its absence reported. The host must connect, discover tools, refresh requested indexes, return acceptable MCP status, and retrieve known source content via MCP. Any requested watch schedule must use the same config and be verified. Remove any previously copied Lite search skill from the host's skill directory so it no longer routes routine search through shell commands.
OBobra/superpowers299k2,675 new stars in the last 7 days
MAmattpocock/skills290k10,235 new stars in the last 7 days
MAmattpocock/skills290k10,235 new stars in the last 7 days
MAmattpocock/skills290k10,235 new stars in the last 7 days
AFaffaan-m/ECC279k4,056 new stars in the last 7 days
AFaffaan-m/ECC279k4,056 new stars in the last 7 days