Qmd
alsk1992/CloddsBot
Local hybrid search for markdown notes and docs. An agent skill from alsk1992/CloddsBot.
Interview the user about their RAGU use case, select an appropriate RAGU pipeline, and generate a validated ragubuild.yaml plus a runnable build<name.py script.
$ npx skills add RaguTeam/RAGU --skill ragu-build -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install RaguTeam/RAGU ragu-build --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/RaguTeam/RAGU.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.agents/skills/ragu-build .claude/skills/ragu-build && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "ragu-build" agent skill from https://github.com/RaguTeam/RAGU/tree/main/.agents/skills/ragu-build into .claude/skills/ragu-build/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "ragu-build", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/RaguTeam/RAGU/tree/main/.agents/skills/ragu-buildType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add RaguTeam/RAGU --skill ragu-build -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install RaguTeam/RAGU ragu-build --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/RaguTeam/RAGU.git skills-src && mkdir -p .agents/skills && cp -r skills-src/.agents/skills/ragu-build .agents/skills/ragu-build && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "ragu-build" agent skill from https://github.com/RaguTeam/RAGU/tree/main/.agents/skills/ragu-build into .agents/skills/ragu-build/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "ragu-build", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add RaguTeam/RAGU --skill ragu-build -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install RaguTeam/RAGU ragu-build --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/RaguTeam/RAGU.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/.agents/skills/ragu-build .cursor/skills/ragu-build && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "ragu-build" agent skill from https://github.com/RaguTeam/RAGU/tree/main/.agents/skills/ragu-build into .cursor/skills/ragu-build/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "ragu-build", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/RaguTeam/RAGU.git --path .agents/skills/ragu-build--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add RaguTeam/RAGU --skill ragu-build -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install RaguTeam/RAGU ragu-build --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/RaguTeam/RAGU.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/.agents/skills/ragu-build .gemini/skills/ragu-build && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "ragu-build" agent skill from https://github.com/RaguTeam/RAGU/tree/main/.agents/skills/ragu-build into .gemini/skills/ragu-build/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "ragu-build", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install RaguTeam/RAGU ragu-buildInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add RaguTeam/RAGU --skill ragu-build -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/RaguTeam/RAGU.git skills-src && mkdir -p .github/skills && cp -r skills-src/.agents/skills/ragu-build .github/skills/ragu-build && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "ragu-build" agent skill from https://github.com/RaguTeam/RAGU/tree/main/.agents/skills/ragu-build into .github/skills/ragu-build/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "ragu-build", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add RaguTeam/RAGU --skill ragu-build -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install RaguTeam/RAGU ragu-build --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/RaguTeam/RAGU.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/.agents/skills/ragu-build .opencode/skills/ragu-build && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "ragu-build" agent skill from https://github.com/RaguTeam/RAGU/tree/main/.agents/skills/ragu-build into .opencode/skills/ragu-build/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "ragu-build", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
ragu-buildInterview the user about their RAGU use case, select an appropriate RAGU pipeline, and generate a validated ragubuild.yaml plus a runnable build<name.py script.
Ragu Build is an agent skill from RaguTeam/RAGU. Interview the user about their RAGU use case, select an appropriate RAGU pipeline, and generate a validated ragubuild.yaml plus a runnable build<name.py script.
Its SKILL.md is about 3.8k tokens, which your agent loads only when the skill is triggered. The skill folder holds 9 other files, including scripts, reference files and assets (for example `.claude-plugin/plugin.json`, `assets/build_template.py` and `references/decision-matrix.md`).
It sits in Knowledge Management. The repository describes itself as: Modular GraphRAG framework. The licence is MIT.
5 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit abd3f29. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Ships 1 file in scripts/ (Python), which the agent can run.
Shell commands in SKILL.md call:
dockerFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md. Its commands use docker, which can reach the network depending on how they are called.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Ragu Build loads about 3.8k tokens when it runs, and up to ~9.2k if it reads all its reference files. Until then it costs about 44 tokens; SKILL.md has 1,932 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check noted patterns worth knowing about, such as sudo or a known installer.
* `.env` contents;Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); the scripts in this folder are not scanned.
The full file from RaguTeam/RAGU at commit abd3f29, republished under its MIT licence (© RaguTeam). 1,932 words, ~3,838 tokens.
.claude/skills/ragu-build/SKILL.md (or your agent's skills folder). This skill also uses 5 other files; get the full folder from GitHub.Goal: determine what the user actually needs through a short interview, then produce two artifacts:
ragu_build.yaml — the recorded decisions and rationale;build_<name>.py — a working RAGU build script.The RAGU library is already documented: every module ships a README.md describing its role in the pipeline and providing examples.
This skill is a decision process and navigation map, not a retelling of that documentation.
Do not read module sources unless explicitly allowed below. Do not summarize whole READMEs.
Read narrowly, guided by references/module-map.md.
Conduct the interview in whatever language the user writes in.
All paths under:
references/assets/scripts/are relative to this skill's own directory, not to the user's project root.
Resolve the skill directory using whatever mechanism the current agent environment provides. Never assume that the skill lives inside the user's repository or that its resources are reachable through paths relative to the current working directory.
Before asking the user anything, infer everything that can reasonably be discovered from the project.
This removes unnecessary interview questions.
Read:
references/module-map.md
Use it only as a navigation map for RAGU components and documentation.
Inspect relevant project state in one batch where practical.
If the user named a data directory, inspect:
For example:
find <dir> -type f | sed 's/.*\.//' | sort | uniq -c
du -sh <dir>This establishes:
Do not recursively inspect document contents unless necessary.
Look for already-running or already-configured storage infrastructure.
Useful signals include:
docker psand project-local evidence such as:
qdrant_storage/;Use only obvious project configuration. Do not search through unrelated files.
If available, run:
nvidia-smiUse the result only to determine whether local GPU-backed models are realistic.
Failure or absence of nvidia-smi is not itself an error.
Do not search for:
.env contents;Which model provider or runtime the user intends to use is an interview question, not something to discover from private credentials.
Before starting the interview, tell the user in one short statement what was discovered and what will be treated as given.
For example:
Your data directory contains about 900 text files totaling ~40 MB. No running vector or graph storage is visible, and a local NVIDIA GPU is available. I'll plan around those facts unless you want to override them.
Anything already established in Phase 0 must not be asked again.
Present inferred facts as correctable facts rather than questions.
The purpose of the interview is to eliminate incompatible pipeline branches with as few questions as possible.
Use the current environment's interactive question mechanism when one is available and appropriate.
Otherwise ask directly in chat.
Do not depend on any specific platform tool name such as AskUserQuestion.
Ask one or two questions at a time.
Never dump the whole interview into a single form or message.
Phrase questions using example queries and example data, not RAGU implementation terminology.
Avoid terms such as:
Technical terminology may appear in the explanation after the user answers, but not unnecessarily in the question itself.
Q1 is the deliberate exception: whether to build a graph is asked explicitly because this decision dominates both cost and architecture, and many users already know whether they want one.
If they do not know, use Q1b.
After each answer, briefly explain which pipeline branches were eliminated.
Order questions by branching factor.
Use at most six primary questions.
If a question's answer follows from:
skip it.
Never let an unanswered question stall the deliverable.
If the user:
ask once more.
If the answer is still unavailable:
Every such assumption must appear in all relevant outputs.
In the Phase 2 decision table, write:
ASSUMPTION
in the based on what column.
In ragu_build.yaml, mark it with:
# ASSUMPTIONIn build_<name>.py, keep the assumed value as a named constant near the top of the script.
Do not bury assumed values deep inside the implementation.
In the final report, list unresolved assumptions as things the user should verify before the first real run.
An unanswered question should cost one line in the final report.
It must never cost the whole deliverable.
Exact wording and options live in:
references/decision-matrix.md
section:
Questions
Use that wording when available.
The decision sequence is:
| # | About | Eliminates |
|---|---|---|
| 1 | whether to build a graph, including its cost | graph / flat index |
| 1b | how answers are distributed across documents — only if Q1 is "not sure" | graph / flat index |
| 2 | examples of typical queries | search engine |
| 3 | exact terms, codes, IDs or part numbers in queries | lexical / sparse retrieval |
| 4 | where models run | LLM / embedder client |
| 5 | corpus size and update pattern | storage backends |
| 6 | extraction quality versus cost — graph builds only | artifact extractor |
If Q1 selects a vector-only / flat-index build:
Q1b runs only when Q1 is effectively:
not sure
Never ask both Q1 and Q1b as independent decisions.
Before generating any files, show the user a concise decision table with:
| choice | why | based on what |
|---|
The based on what column must identify the source of each decision:
ASSUMPTION.Also explicitly state important components that are not included and why.
For example:
No Global engine — none of the example queries asked for corpus-wide themes or summaries. It can be added later without changing the ingestion strategy.
Do not list every conceivable unused RAGU component. Mention exclusions only when they represent meaningful architectural branches.
Wait for user confirmation before Phase 3.
If the user changes one decision:
After the user confirms the decision summary, generate the build.
Read:
references/decision-matrix.md
in full.
It is the source of truth for:
Take every class name and constructor parameter from the matrix rather than from memory.
If the matrix does not contain enough detail for a selected component:
references/module-map.md to locate the corresponding RAGU module;README.md.Do not read the whole README unless the required information cannot otherwise be located.
Do not inspect source code merely for convenience.
If a required constructor detail exists in neither:
then inspect only the real constructor signature.
For example:
grep -n "def __init__" -A 25 <file>Use this only as a last resort.
Do not explore implementation internals.
Never invent constructor parameters.
ragu_build.yamlWrite:
ragu_build.yaml
It must record the selected build decisions.
For every meaningful decision include:
Keep rejected architectural alternatives out of the Python script; they belong here when worth recording.
Mark unresolved defaults explicitly:
# ASSUMPTIONbuild_<name>.pyStart from:
assets/build_template.py
The template represents stock build B:
graph + local search.
Adapt it to the decisions selected during the interview.
Use:
references/decision-matrix.md for exact signatures;A comparable hand-written example is:
examples/extract_with_llm_and_local_search.py
when it exists in the user's RAGU checkout.
Keep the generated script intentionally flat.
Preferred structure:
async def main(...);if __name__ == "__main__" guard.Do not create helper functions that are called only once unless they materially improve correctness.
Do not include:
Keep choices that were considered but not selected in ragu_build.yaml.
Any unresolved assumption must remain visible as a named constant near the top.
For example:
# ASSUMPTION: user did not specify the collection name.
COLLECTION_NAME = "ragu"The validator runs main() for real.
Therefore:
main();The generated script is for the user to run intentionally.
The validator belongs to this skill at:
scripts/validate_build.py
Resolve this path relative to the skill's own directory.
Never assume it is relative to the user's project.
Run validation using a Python interpreter capable of importing the user's ragu installation.
Prefer, in order:
$VIRTUAL_ENV;.venv/bin/python;venv/bin/python;python3.Confirm that the selected interpreter can import RAGU before relying on the validator.
A typical check is:
if [ -n "$VIRTUAL_ENV" ] && [ -x "$VIRTUAL_ENV/bin/python" ]; then
PY="$VIRTUAL_ENV/bin/python"
elif [ -x ".venv/bin/python" ]; then
PY=".venv/bin/python"
elif [ -x "venv/bin/python" ]; then
PY="venv/bin/python"
else
PY="python3"
fi
"$PY" -c "import ragu"Then run:
"$PY" <skill-dir>/scripts/validate_build.py build_<name>.pyUse the actual resolved skill directory in place of <skill-dir>.
If no available interpreter can import ragu:
Stop trying to execute the validator.
The files may still be generated, but the final report must identify validation as blocked.
The validator:
main();Validation must not intentionally send requests to external model providers or execute real model inference.
Fix every validator error caused by the generated script before reporting success.
Do not suppress or ignore validator failures merely to finish the task.
Report the result concisely.
Open with anything that blocks the first real run, including:
Then state:
ragu_build.yaml was written;build_<name>.py was written;Cost and duration estimates must be presented as estimates, with the assumptions behind them.
Do not imply precision that the available corpus size, model provider, hardware, or extraction strategy does not support.
RAGU ingests plain text and nothing else.
RAGU does not itself provide:
If the user's corpus contains:
say plainly that RAGU cannot ingest those files directly.
Converting them to text is a separate preprocessing step outside the build produced by this skill.
Never generate a build that pretends unsupported files can be read directly.
This skill produces:
It does not modify the RAGU library itself.
Do not patch RAGU source code as part of this workflow.
Do not:
unless the user explicitly asks for execution.
Generating and locally validating the script is allowed.
The resulting script is the user's build to run.
Prefer information sources in this order:
references/decision-matrix.md;references/module-map.md;README.md;Do not browse RAGU implementation source for architecture understanding.
Never invent APIs, class names, arguments, or constructor parameters.
© RaguTeam, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 5 other files (scripts, references, assets) in .agents/skills/ragu-build of RaguTeam/RAGU.
Open the folder on GitHubat commit abd3f29
Ragu Build next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Ragu Build this skillRaguTeam/RAGU | 136 | — | ~3.8k | Automated safety check: Notes | MIT | |
| Qmdalsk1992/CloddsBot | 3k | 3 repos | ~1.2k | Automated safety check: Pass | MIT | |
| Gitnexus CLIaws-samples/sample-kolya-br-proxy | 106 | 11 repos | ~822 | Automated safety check: Pass | MIT-0 | |
| Open Notebookagent-skills-hub/agent-skills-hub | 112 | 3 repos | ~2.6k | Automated safety check: Pass | MIT | |
| Gate Checkundefined-ui/second-brain-os | 1k | — | ~854 | Automated safety check: Pass | MIT | |
| Goal Testundefined-ui/second-brain-os | 1k | — | ~754 | Automated safety check: Pass | MIT |
alsk1992/CloddsBot
Local hybrid search for markdown notes and docs. An agent skill from alsk1992/CloddsBot.
aws-samples/sample-kolya-br-proxy
A skill your agent uses when the user needs to run GitNexus CLI commands like analyze/index a repo, check status, clean the index, generate a wiki, or list indexed repos.
agent-skills-hub/agent-skills-hub
Drives a self-hosted Open Notebook instance to organize sources into notebooks, chat with documents, generate notes and multi-speaker podcasts, and search across material.
undefined-ui/second-brain-os
Find the decisions in a pipeline that do not need the expensive model and propose the gate for each: a rule, a classic classifier, or a small model, with fail-closed routing.
undefined-ui/second-brain-os
Turn a vague task into a testable definition of done and generate an executable goal-test script for it, optionally with a bounded retry loop around a headless agent.
Health-Yang/MineEcho
技能系统导航。当用户询问"你能做什么"、"有什么功能"、"有什么技能"或不确定如何完成某个任务时,使用此技能列出所有可用技能并建议最合适的技能。此技能是每个对话开始时默认加载的,用于技能发现。
Categories
Interview the user about their RAGU use case, select an appropriate RAGU pipeline, and generate a validated ragubuild.yaml plus a runnable build<name.py script. Ragu Build is an agent skill from RaguTeam/RAGU.py script.
Ragu Build fits situations like: knowledge Management work in your project.
Run `npx skills add RaguTeam/RAGU --skill ragu-build -a claude-code`. Or copy the skill folder (.agents/skills/ragu-build in RaguTeam/RAGU) into .claude/skills/ragu-build in your project. Claude Code loads it when a task matches its description.
Run `npx skills add RaguTeam/RAGU --skill ragu-build -a codex`. Or copy the skill folder (.agents/skills/ragu-build in RaguTeam/RAGU) into .agents/skills/ragu-build in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add RaguTeam/RAGU --skill ragu-build -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/ragu-build, .gemini/skills/ragu-build, .github/skills/ragu-build and .opencode/skills/ragu-build in your project.
Going by SKILL.md and its folder, Ragu Build needs Python for the scripts in its folder and the command-line tools its instructions call (docker). Our summary lists: Python 3; Docker.
SKILL.md contains no URLs. Its commands use docker, which can reach the network depending on how they are called. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found notes only (mentions a .env file), nothing it rates as a warning. It is not a guarantee. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.
Ragu Build is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 3.8k tokens (SKILL.md is roughly 15k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 5.4k tokens, read only when the agent opens those files.
Skills that share tags, products or a category with Ragu Build: Qmd (alsk1992/CloddsBot, 3k stars), Gitnexus CLI (aws-samples/sample-kolya-br-proxy, 106 stars), Open Notebook (agent-skills-hub/agent-skills-hub, 112 stars) and Gate Check (undefined-ui/second-brain-os, 1k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
RaguTeam (a GitHub organization) maintains it in RaguTeam/RAGU, which has 136 GitHub stars. The repository was last updated on October 4, 2026.
Source: RaguTeam/RAGU on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.