Chroma Vector Database
Orchestra-Research/AI-Research-SKILLs
Shows how to store documents and embeddings in Chroma, query them by similarity with metadata filters, and persist them to disk for RAG and semantic search projects.
Open-source embedding database for RAG — store embeddings, vector search, metadata filtering.
$ npx skills add AlexAI-MCP/hermes-CCC --skill chroma -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install AlexAI-MCP/hermes-CCC chroma --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/AlexAI-MCP/hermes-CCC.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/chroma .claude/skills/chroma && 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 "chroma" agent skill from https://github.com/AlexAI-MCP/hermes-CCC/tree/master/skills/chroma into .claude/skills/chroma/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "chroma", 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/AlexAI-MCP/hermes-CCC/tree/master/skills/chromaType 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 AlexAI-MCP/hermes-CCC --skill chroma -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install AlexAI-MCP/hermes-CCC chroma --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/AlexAI-MCP/hermes-CCC.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills/chroma .agents/skills/chroma && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "chroma" agent skill from https://github.com/AlexAI-MCP/hermes-CCC/tree/master/skills/chroma into .agents/skills/chroma/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "chroma", 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 AlexAI-MCP/hermes-CCC --skill chroma -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install AlexAI-MCP/hermes-CCC chroma --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/AlexAI-MCP/hermes-CCC.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills/chroma .cursor/skills/chroma && 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 "chroma" agent skill from https://github.com/AlexAI-MCP/hermes-CCC/tree/master/skills/chroma into .cursor/skills/chroma/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "chroma", 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/AlexAI-MCP/hermes-CCC.git --path skills/chroma--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 AlexAI-MCP/hermes-CCC --skill chroma -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install AlexAI-MCP/hermes-CCC chroma --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/AlexAI-MCP/hermes-CCC.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills/chroma .gemini/skills/chroma && 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 "chroma" agent skill from https://github.com/AlexAI-MCP/hermes-CCC/tree/master/skills/chroma into .gemini/skills/chroma/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "chroma", 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 AlexAI-MCP/hermes-CCC chromaInstalls 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 AlexAI-MCP/hermes-CCC --skill chroma -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/AlexAI-MCP/hermes-CCC.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills/chroma .github/skills/chroma && 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 "chroma" agent skill from https://github.com/AlexAI-MCP/hermes-CCC/tree/master/skills/chroma into .github/skills/chroma/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "chroma", 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 AlexAI-MCP/hermes-CCC --skill chroma -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install AlexAI-MCP/hermes-CCC chroma --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/AlexAI-MCP/hermes-CCC.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills/chroma .opencode/skills/chroma && 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 "chroma" agent skill from https://github.com/AlexAI-MCP/hermes-CCC/tree/master/skills/chroma into .opencode/skills/chroma/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "chroma", 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.
chromaOpen-source embedding database for RAG — store embeddings, vector search, metadata filtering.
Chroma is an agent skill from AlexAI-MCP/hermes-CCC. Open-source embedding database for RAG — store embeddings, vector search, metadata filtering. Simple API, scales from notebook to production.
Its SKILL.md is about 2.3k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.
It sits in AI & LLM Engineering, covering Embeddings. The repository describes itself as: Hermes Agent ported to Claude Code Channel — 46 native skills, no OAuth, no external process. The licence is MIT.
Read from SKILL.md and the folder at commit 8107e89. 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.
Shell commands in SKILL.md call:
pipdockerFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md. Its commands use pip and 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.
Chroma loads about 2.3k tokens when it runs. Until then it costs about 37 tokens; SKILL.md has 739 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 found no risky patterns in SKILL.md.
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); files beside SKILL.md are not scanned.
The full file from AlexAI-MCP/hermes-CCC at commit 8107e89, republished under its MIT licence (© AlexAI-MCP). 739 words, ~2,279 tokens.
.claude/skills/chroma/SKILL.md (or your agent's skills folder).pip install chromadb sentence-transformersimport chromadb
client = chromadb.PersistentClient(path="./chroma_db")PersistentClient stores data on disk.collection = client.create_collection(name="docs")docs, papers, tickets, or kb_chunks.collection.add(
documents=["Chroma is useful for local RAG.", "Vector search retrieves semantically similar text."],
metadatas=[{"source": "note1"}, {"source": "note2"}],
ids=["doc-1", "doc-2"],
)ids stable if you plan to update or delete records later.results = collection.query(
query_texts=["How do I store embeddings for RAG?"],
n_results=5,
)
print(results["documents"])
print(results["metadatas"])query_texts=['...'] is the most common path when Chroma is managing embeddings for you.n_results=5 or 10 for most retrieval experiments.get_or_create_collection:collection = client.get_or_create_collection(name="docs")DefaultEmbeddingFunctionSentenceTransformerEmbeddingFunctionOpenAIEmbeddingFunctionfrom chromadb.utils.embedding_functions import DefaultEmbeddingFunction
embedding_fn = DefaultEmbeddingFunction()
collection = client.get_or_create_collection(
name="default-embeddings",
embedding_function=embedding_fn,
)from chromadb.utils.embedding_functions import SentenceTransformerEmbeddingFunction
embedding_fn = SentenceTransformerEmbeddingFunction(
model_name="sentence-transformers/all-MiniLM-L6-v2",
)
collection = client.get_or_create_collection(
name="st-docs",
embedding_function=embedding_fn,
)from chromadb.utils.embedding_functions import OpenAIEmbeddingFunction
embedding_fn = OpenAIEmbeddingFunction(
api_key="YOUR_API_KEY",
model_name="text-embedding-3-small",
)
collection = client.get_or_create_collection(
name="openai-docs",
embedding_function=embedding_fn,
)collection.add(
documents=[
"Retrieval augmented generation combines retrieval with generation.",
"Chroma collections can store metadata for filtering.",
],
metadatas=[
{"source": "paper1", "section": "intro", "year": 2024},
{"source": "paper1", "section": "methods", "year": 2024},
],
ids=["paper1-intro", "paper1-methods"],
)where:results = collection.query(
query_texts=["What does the paper say about filtering?"],
n_results=5,
where={"source": "paper1"},
)Example requested pattern:
where={'source': 'paper1'}
Metadata filters are critical for multi-tenant or source-restricted RAG.
where_document.results = collection.query(
query_texts=["database"],
n_results=5,
where_document={"$contains": "keyword"},
)where_document={'...': 'keyword'}.collection.update(
ids=["doc-1"],
documents=["Chroma stores embeddings persistently for local RAG systems."],
metadatas=[{"source": "note1", "updated": True}],
)collection.delete(ids=["doc-2"])collection.delete(where={"source": "note1"})items = collection.get(ids=["doc-1"])
print(items)import chromadb
client = chromadb.HttpClient(host="localhost", port=8000)
collection = client.get_or_create_collection(name="docs")docker run -p 8000:8000 chromadb/chromachromadb.HttpClient(host='localhost', port=8000) from Python.Empty search results:
confirm documents were added
confirm the embedding function is configured as expected
lower filtering constraints
Embedding mismatch:
avoid changing embedding models inside the same collection without re-indexing
document the embedding function used for each collection
Duplicate records:
choose deterministic IDs from source path plus chunk index
upsert or update intentionally instead of re-adding blind
Server connectivity issues:
verify the Docker container is running
confirm localhost:8000 is reachable
switch from PersistentClient to HttpClient only when appropriate
PersistentClient.pip install chromadb sentence-transformerschromadb.PersistentClient(path="./chroma_db")collection.add(documents=[...], metadatas=[...], ids=[...])collection.query(query_texts=["..."], n_results=5)where={"source": "paper1"}where_document={"$contains": "keyword"}chromadb.HttpClient(host="localhost", port=8000)docker run -p 8000:8000 chromadb/chroma© AlexAI-MCP, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
Just SKILL.md in skills/chroma of AlexAI-MCP/hermes-CCC.
Open the folder on GitHubat commit 8107e89
Chroma 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 |
|---|---|---|---|---|---|---|
| Chroma this skillAlexAI-MCP/hermes-CCC | 135 | — | ~2.3k | Automated safety check: Pass | MIT | |
| Chroma Vector DatabaseOrchestra-Research/AI-Research-SKILLs | 13k | 7 repos | ~2.3k | Automated safety check: Pass | MIT | |
| SageMaker Serving Image Selectionhuggingface/skills | 11k | 1 repos | ~4.6k | Automated safety check: Pass | Apache-2.0 | |
| Codebase Managementgiancarloerra/SocratiCode | 3.3k | 1 repos | ~1.8k | Automated safety check: Pass | AGPL-3.0 | |
| CLIP Image-Text MatchingOrchestra-Research/AI-Research-SKILLs | 13k | 7 repos | ~1.7k | Automated safety check: Pass | MIT | |
| Sentence-Transformers Training Routerhuggingface/skills | 11k | 1 repos | ~2.6k | Automated safety check: Pass | Apache-2.0 |
Orchestra-Research/AI-Research-SKILLs
Shows how to store documents and embeddings in Chroma, query them by similarity with metadata filters, and persist them to disk for RAG and semantic search projects.
huggingface/skills
Chooses the right serving container and current image URI for deploying a Hugging Face model to a SageMaker endpoint, preferring Hugging Face images over generic ones.
giancarloerra/SocratiCode
Set up, index, and manage SocratiCode codebase indexing. An agent skill from giancarloerra/SocratiCode.
Orchestra-Research/AI-Research-SKILLs
Explains OpenAI's CLIP model for zero-shot image classification, image-text similarity, semantic image search and content moderation, with install steps and code patterns.
huggingface/skills
Routes a sentence-transformers training task to the right model type and required reference docs and example scripts, covering bi-encoders, rerankers, sparse and multi-vector models.
rehan-remade/universal-modder
Build cross-game mashups and total conversions, the "Minecraft inside Elden Ring" or "skateboarding in MW2" kind.
AlexAI-MCP/hermes-CCC
Review GitHub pull requests with a findings-first engineering mindset.
AlexAI-MCP/hermes-CCC
Run a disciplined GitHub pull request workflow from branch creation through merge.
AlexAI-MCP/hermes-CCC
Manage durable project memory for Claude Code. An agent skill from AlexAI-MCP/hermes-CCC.
AlexAI-MCP/hermes-CCC
Route Claude Code work by complexity, risk, and tool needs. An agent skill from AlexAI-MCP/hermes-CCC.
AlexAI-MCP/hermes-CCC
Create, improve, inventory, and audit Claude Code skills. An agent skill from AlexAI-MCP/hermes-CCC.
AlexAI-MCP/hermes-CCC
Capture Claude Code interaction trajectories in training-friendly formats.
Categories
Open-source embedding database for RAG — store embeddings, vector search, metadata filtering. Chroma is an agent skill from AlexAI-MCP/hermes-CCC. Open-source embedding database for RAG — store embeddings, vector search, metadata filtering.
Chroma fits situations like: tasks that involve Embeddings.
Run `npx skills add AlexAI-MCP/hermes-CCC --skill chroma -a claude-code`. Or copy the skill folder (skills/chroma in AlexAI-MCP/hermes-CCC) into .claude/skills/chroma in your project. Claude Code loads it when a task matches its description.
Run `npx skills add AlexAI-MCP/hermes-CCC --skill chroma -a codex`. Or copy the skill folder (skills/chroma in AlexAI-MCP/hermes-CCC) into .agents/skills/chroma 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 AlexAI-MCP/hermes-CCC --skill chroma -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/chroma, .gemini/skills/chroma, .github/skills/chroma and .opencode/skills/chroma in your project.
Going by SKILL.md and its folder, Chroma needs the command-line tools its instructions call (pip and docker). Our summary lists: Python 3; Docker; A credential in YOUR_API_KEY.
SKILL.md contains no URLs. Its commands use pip and 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 no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Chroma is published under the MIT licence (declared in SKILL.md). It allows redistribution, so the full SKILL.md is shown on this page.
About 2.3k tokens (SKILL.md is roughly 9.1k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Chroma: Chroma Vector Database (Orchestra-Research/AI-Research-SKILLs, 13k stars), SageMaker Serving Image Selection (huggingface/skills, 11k stars), Codebase Management (giancarloerra/SocratiCode, 3.3k stars) and CLIP Image-Text Matching (Orchestra-Research/AI-Research-SKILLs, 13k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
AlexAI-MCP (a GitHub user) maintains it in AlexAI-MCP/hermes-CCC, which has 135 GitHub stars. The repository holds 44 skills in this directory. The repository was last updated on April 8, 2026.
Source: AlexAI-MCP/hermes-CCC on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.