Obsidian Wiki Linter
AgriciDaniel/claude-obsidian
Runs a deterministic, read-only health check on an Obsidian vault, reporting dead or ambiguous links, orphan pages, missing frontmatter, empty sections and stale index entries.
Chat with a companion that knows your notes folder (a journal, an Obsidian vault, any .md or .txt files) and every earlier chat, using cognee memory with local databases.
$ npx skills add topoteretes/cognee --skill self-hosted-companion -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install topoteretes/cognee self-hosted-companion --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/topoteretes/cognee.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.agents/skills/self-hosted-companion .claude/skills/self-hosted-companion && 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 "self-hosted-companion" agent skill from https://github.com/topoteretes/cognee/tree/main/.agents/skills/self-hosted-companion into .claude/skills/self-hosted-companion/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "self-hosted-companion", 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/topoteretes/cognee/tree/main/.agents/skills/self-hosted-companionType 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 topoteretes/cognee --skill self-hosted-companion -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install topoteretes/cognee self-hosted-companion --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/topoteretes/cognee.git skills-src && mkdir -p .agents/skills && cp -r skills-src/.agents/skills/self-hosted-companion .agents/skills/self-hosted-companion && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "self-hosted-companion" agent skill from https://github.com/topoteretes/cognee/tree/main/.agents/skills/self-hosted-companion into .agents/skills/self-hosted-companion/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "self-hosted-companion", 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 topoteretes/cognee --skill self-hosted-companion -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install topoteretes/cognee self-hosted-companion --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/topoteretes/cognee.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/.agents/skills/self-hosted-companion .cursor/skills/self-hosted-companion && 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 "self-hosted-companion" agent skill from https://github.com/topoteretes/cognee/tree/main/.agents/skills/self-hosted-companion into .cursor/skills/self-hosted-companion/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "self-hosted-companion", 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/topoteretes/cognee.git --path .agents/skills/self-hosted-companion--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 topoteretes/cognee --skill self-hosted-companion -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install topoteretes/cognee self-hosted-companion --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/topoteretes/cognee.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/.agents/skills/self-hosted-companion .gemini/skills/self-hosted-companion && 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 "self-hosted-companion" agent skill from https://github.com/topoteretes/cognee/tree/main/.agents/skills/self-hosted-companion into .gemini/skills/self-hosted-companion/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "self-hosted-companion", 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 topoteretes/cognee self-hosted-companionInstalls 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 topoteretes/cognee --skill self-hosted-companion -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/topoteretes/cognee.git skills-src && mkdir -p .github/skills && cp -r skills-src/.agents/skills/self-hosted-companion .github/skills/self-hosted-companion && 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 "self-hosted-companion" agent skill from https://github.com/topoteretes/cognee/tree/main/.agents/skills/self-hosted-companion into .github/skills/self-hosted-companion/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "self-hosted-companion", 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 topoteretes/cognee --skill self-hosted-companion -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install topoteretes/cognee self-hosted-companion --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/topoteretes/cognee.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/.agents/skills/self-hosted-companion .opencode/skills/self-hosted-companion && 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 "self-hosted-companion" agent skill from https://github.com/topoteretes/cognee/tree/main/.agents/skills/self-hosted-companion into .opencode/skills/self-hosted-companion/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "self-hosted-companion", 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.
self-hosted-companionChat with a companion that knows your notes folder (a journal, an Obsidian vault, any .md or .txt files) and every earlier chat, using cognee memory with local databases.
Self Hosted Companion is an agent skill from topoteretes/cognee. Chat with a companion that knows your notes folder (a journal, an Obsidian vault, any .md or .txt files) and every earlier chat, using cognee memory with local databases. Use when someone wants to ask questions about their own notes, or to talk with a companion that remembers past conversations. Runs locally; reads the notes folder, writes only to cognee's memory.
Its SKILL.md is about 700 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 Knowledge Management. It works with Obsidian and Python. The repository describes itself as: Cognee is the open-source AI memory platform for agents. Give your AI agents persistent long-term memory with small models for free. The licence is Apache-2.0.
4 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit 0ec7a9f. 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:
uvFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md. Its commands use uv, which can reach the network depending on how they are called.
From URLs in SKILL.md, links to its own repository left out.
Names these keys or tokens, usually read from environment variables:
LLM_API_KEYFrom names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Self Hosted Companion loads about 697 tokens when it runs. Until then it costs about 97 tokens; SKILL.md has 327 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.
question, and don't print `.env`.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 topoteretes/cognee at commit 0ec7a9f, republished under its Apache-2.0 licence (© topoteretes). 327 words, ~697 tokens.
.claude/skills/self-hosted-companion/SKILL.md (or your agent's skills folder).Runs the self-hosted companion cookbook in examples/cookbooks/self_hosted_companion/. It
remembers a notes folder in the cognee dataset self_hosted_companion, then answers
messages about it; each chat is saved to memory, so a later one knows it. Setup, the
scripts and what each one does are in the cookbook's
README.md.
Run every command from the repo root.
Without a notes folder of the user's own, or to see it work first, leave out <folder>
below: the run then uses sample notes (the [setup] line says so). It needs only
LLM_API_KEY. Tell the user the answer comes from sample notes.
uv run python examples/cookbooks/self_hosted_companion/self_hosted_companion.py --check <folder>
with the notes folder the user named.[setup] MISSING: line names one fix. Tell the user which line to fix,
using the README's "What it needs" table, and stop.--ask:
uv run python examples/cookbooks/self_hosted_companion/self_hosted_companion.py <folder> --ask "...".
Once the folder is remembered, later messages only need
uv run python examples/cookbooks/self_hosted_companion/scripts/chat.py --ask "...".[chat] companion>. Give it to the user. Each --ask is
its own chat session, saved to memory, so a later one knows it.self_hosted_companion.py exits 1 with a line naming what went
wrong. Run that script from examples/cookbooks/self_hosted_companion/scripts/ on its
own to look closer..env.self_hosted_companion before it ingests (the [clear]
line). On the user's own data, pass --clear only when they asked to start over: it
forgets everything the dataset holds, including the earlier chats.--ui unless the user asked to browse the graph: it keeps running until
Ctrl+C.uv run cognee-cli forget --dataset self_hosted_companion© topoteretes, Apache-2.0. 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 .agents/skills/self-hosted-companion of topoteretes/cognee.
Open the folder on GitHubat commit 0ec7a9f
Self Hosted Companion 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 |
|---|---|---|---|---|---|---|
| Self Hosted Companion this skilltopoteretes/cognee | 32k | — | ~697 | Automated safety check: Notes | Apache-2.0 | |
| Obsidian Wiki LinterAgriciDaniel/claude-obsidian | 15k | — | ~938 | Automated safety check: Pass | MIT | |
| Conference Paper Recommenderjuliye2025/evil-read-arxiv | 1.7k | — | ~2.5k | Automated safety check: Pass | None | |
| Daily arXiv Paper Briefjuliye2025/evil-read-arxiv | 1.7k | — | ~4.3k | Automated safety check: Pass | None | |
| Paper and Web Source Analyzerjuliye2025/evil-read-arxiv | 1.7k | — | ~715 | Automated safety check: Pass | None | |
| Paper Figure Extractorjuliye2025/evil-read-arxiv | 1.7k | — | ~298 | Automated safety check: Pass | None |
AgriciDaniel/claude-obsidian
Runs a deterministic, read-only health check on an Obsidian vault, reporting dead or ambiguous links, orphan pages, missing frontmatter, empty sections and stale index entries.
juliye2025/evil-read-arxiv
Searches DBLP for papers from top conferences such as CVPR, ICLR and NeurIPS, adds Semantic Scholar data, scores them and writes a yearly Obsidian note.
juliye2025/evil-read-arxiv
Searches arXiv for recent papers matching your research interests, scores them and writes a daily recommendation note into an Obsidian vault.
juliye2025/evil-read-arxiv
Analyzes arXiv papers, PDFs, project pages and blogs and writes an evidence-backed Obsidian note with images and a knowledge-graph entry.
juliye2025/evil-read-arxiv
Pulls architecture, method and result figures from an arXiv paper or PDF into an Obsidian vault and writes an index of them.
AgriciDaniel/claude-canvas
Adds images, text cards, PDFs, notes, links, diagrams, zones and edges to an existing Obsidian Canvas file without overlapping what is already there.
topoteretes/cognee
Drives cognee from the terminal with remember, recall, forget and improve memory commands, dataset and config management and database migrations.
topoteretes/cognee
Guide to using and contributing cognee community packages: database adapters, data-source connectors, custom tasks and retrievers, and Keywords AI observability.
topoteretes/cognee
Defines the shape of cognee's knowledge graph with graph_model: DataPoint node classes, identity and index fields, typed edges and fixes for duplicated nodes.
topoteretes/cognee
Shows how to write custom cognee tasks, chain them into pipelines, store custom DataPoints and run enrichment over the existing graph.
topoteretes/cognee
Runs the Cognee AI memory platform in Docker, from a one-file prebuilt image to a full compose stack with UI, MCP server, Postgres and Neo4j.
topoteretes/cognee
Removes data from cognee memory with forget(), finding the right dataset and document first and choosing between one document, a dataset or only the graph and vector memory.
Categories
Chat with a companion that knows your notes folder (a journal, an Obsidian vault, any .md or .txt files) and every earlier chat, using cognee memory with local databases. Self Hosted Companion is an agent skill from topoteretes/cognee.txt files) and every earlier chat, using cognee memory with local databases.
Self Hosted Companion fits situations like: someone wants to ask questions about their own notes; talk with a companion that remembers past conversations.
Run `npx skills add topoteretes/cognee --skill self-hosted-companion -a claude-code`. Or copy the skill folder (.agents/skills/self-hosted-companion in topoteretes/cognee) into .claude/skills/self-hosted-companion in your project. Claude Code loads it when a task matches its description.
Run `npx skills add topoteretes/cognee --skill self-hosted-companion -a codex`. Or copy the skill folder (.agents/skills/self-hosted-companion in topoteretes/cognee) into .agents/skills/self-hosted-companion 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 topoteretes/cognee --skill self-hosted-companion -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/self-hosted-companion, .gemini/skills/self-hosted-companion, .github/skills/self-hosted-companion and .opencode/skills/self-hosted-companion in your project.
Going by SKILL.md and its folder, Self Hosted Companion needs the command-line tools its instructions call (uv) and credentials named LLM_API_KEY. Our summary lists: Python 3; A credential in LLM_API_KEY.
SKILL.md contains no URLs. Its commands use uv, 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. Review the folder before installing.
Self Hosted Companion is published under the Apache-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 697 tokens (SKILL.md is roughly 2.8k 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 Self Hosted Companion: Obsidian Wiki Linter (AgriciDaniel/claude-obsidian, 15k stars), Conference Paper Recommender (juliye2025/evil-read-arxiv, 1.7k stars), Daily arXiv Paper Brief (juliye2025/evil-read-arxiv, 1.7k stars) and Paper and Web Source Analyzer (juliye2025/evil-read-arxiv, 1.7k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
topoteretes (a GitHub organization) maintains it in topoteretes/cognee, which has 31,919 GitHub stars. The repository holds 19 skills in this directory. The repository was last updated on October 9, 2026.
Source: topoteretes/cognee on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.