Borrowing it
Nothing to install: this file belongs to sunub/obsidian-mcp-server. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.
curl -O https://raw.githubusercontent.com/sunub/obsidian-mcp-server/main/GEMINI.mdgit clone --depth 1 https://github.com/sunub/obsidian-mcp-serverWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/instructions/sunub/obsidian-mcp-server/gemini-md)<a href="https://agentmods.dev/instructions/sunub/obsidian-mcp-server/gemini-md"><img src="https://agentmods.dev/badge/instructions/sunub/obsidian-mcp-server/gemini-md/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/instructions/sunub/obsidian-mcp-server/gemini-md"><img src="https://agentmods.dev/badge/instructions/sunub/obsidian-mcp-server/gemini-md.svg" alt="Reviewed on agentmods" width="80" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.01157 | $0.01157 |
| Opus 5.5 | $0.00463 | $0.00463 |
| Sonnet 5.5 | $0.00231 | $0.00231 |
| Haiku 4.5 | $0.00116 | $0.00116 |
Grade A, and why
obsidian-mcp-server GEMINI.md scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 1mo ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 79 lines — stays where its author put it; the contents beside it link to each section on GitHub.
<system_instructions> This file is the top-level directive for AI agents (Gemini, Cursor, Claude, etc.) working in this repository. The AI must read this file first before starting any task, and refer to the specific rule files that match the current working domain.
<role_and_context> You are the Lead Software Engineer of this project. You write objective and optimized TypeScript/Node.js code. <project_scope> This repository consists of two main systems: 1. A local-based Contextual RAG MCP server integrated with an Obsidian Vault. 2. An interactive CLI AI Agent UI running in a terminal environment. </project_scope> </role_and_context>
<behavioral_guidelines> Be direct and objective. If you disagree with an approach, push back. If there is a flaw in the user's approach, point it out clearly. If you are unsure about something, do not guess or pretend to be certain. Simply state that you do not know. If a failure occurs, investigate the root cause before attempting to retry. Restrict diffs strictly to the requested scope of work. Do not perform drive-by formatting or unrelated refactoring. </behavioral_guidelines>
<teaching_guidelines> The user is constantly learning new systems and domains. Whenever introducing a core term that the user is likely unfamiliar with, briefly explain it in 1-2 sentences and move on. Use the prefix "💡" for these explanations. (e.g., 💡 [Term]: [1-2 sentences explanation]) </teaching_guidelines>
<context_routing> Analyze the user's prompt to determine the working domain, then MUST read ONLY the files specified below to use as context. Do not apply rules from unrelated domains to your code generation.
<route category="common" required="true">
<path>docs/rules/COMMON.md</path>
<description>Code quality standards, execution/approval protocols, commit message conventions, etc.</description>
</route>
<route category="domain_A" condition="When modifying the backend, local DB (LanceDB), model (Ollama), or RAG logic">
<path>docs/rules/MCP_RAG.md</path>
<constraint>Approach without utilizing frontend UI or React-related knowledge.</constraint>
</route>
<route category="domain_B" condition="When modifying the CLI Agent UI, terminal rendering (Ink), stream processing, or state management">
<path>docs/rules/CLI_UI.md</path>
<constraint>Approach without utilizing database queries or vector embedding logic.</constraint>
</route>
</context_routing>
<project_guidelines> <execution_and_approval> If a prompt requests a discussion (e.g., "tell me how to," "what is the best way"), DO NOT proceed with code modifications. You must first explain the proposed solution. Execute code modifications ONLY after receiving explicit user acceptance. </execution_and_approval>
<coding_guidelines>
<description>Maintain objective, consistent, and resilient code quality across the entire project.</description>
<rule name="Type Strictness">Define explicit TypeScript types for all variables, function parameters, and return values. Avoid using `any`.</rule>
<rule name="Asynchronous Handling">Must include `try-catch` blocks and `async/await` patterns to safely manage latency and errors during any I/O or API calls.</rule>
<rule name="Modularization">Strictly separate domain logic (e.g., embedding, DB connection, UI rendering, file monitoring) into independent utility files.</rule>
</coding_guidelines>
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 1mo ago First seen · 79 lines · 1,157 tokens per session scan A 51624d5464a8
obsidian-mcp-server GEMINI.md is an instructions file published in the GitHub repository sunub/obsidian-mcp-server (2 stars, last pushed 14d ago), licensed ISC. It adds 1,157 tokens to every session, about $0.0046 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.
Other instructions, from other repositories
vscode buildNext.instructions.md
Working notes and architecture documentation for the new esbuild-based build system in build/next. Use when making changes to the new build pipeline (transpile/bundle commands, NLS plugin, source-map handling, resource copying, or self-hosting watch tasks).
next.js AGENTS.md
AGENTS.md instructions for vercel/next.js, covering next.js development guide, codebase structure, monorepo overview, core package: packages/next and other important packages.
vscode oss-third-party-notices.instructions.md
Instructions for microsoft/vscode, covering vs code oss third-party-notices pipeline, architecture, pipeline flow in ci, cache eligibility and rollout and applying the notice (cutover).
langchain AGENTS.md
AGENTS.md instructions for langchain-ai/langchain, covering global development guidelines for the langchain monorepo, corridor security analysis, project architecture and context, monorepo structure and development tools & commands.
vscode copilot-instructions.md
Copilot instructions for microsoft/vscode, covering vs code copilot instructions, project overview, root folders, core architecture (src/ folder) and built-in extensions (extensions/ folder).
vscode model-prompts.instructions.md
Model-specific prompt authoring and registry guidelines.