Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx agentmods add skills/bearlike/grove/configuring-grovenpx skills add bearlike/Grove --skill configuring-grovegit clone --depth 1 https://github.com/bearlike/GroveWrote 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/skills/bearlike/grove/configuring-grove)<a href="https://agentmods.dev/skills/bearlike/grove/configuring-grove"><img src="https://agentmods.dev/badge/skills/bearlike/grove/configuring-grove.svg" alt="Measured on agentmods" 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.00122 | $0.07024 |
| Opus 5 | $0.00061 | $0.03512 |
| Sonnet 5 | $0.00024 | $0.01405 |
| Haiku 4.5 | $0.00012 | $0.00702 |
Grade B, and why
configuring-grove scanned grade B with 1 finding 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 5d 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.
Reads agent configuration directoriesmediumAgent snooping
.claude/, .codex/, .gemini/ hold keys, settings and other credentials a mod has no legitimate need for.
- **Codex** reads `~/.codex/config.toml` (global, so it already applies to How it starts
The opening of the file, as written. The whole thing — 508 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Configuring Grove
Grove is a terminal workspace manager for AI coding agents. Each Grove workspace is one git worktree plus one tmux session running an agent, scoped to the repository it is launched from. This skill helps you configure Grove correctly for a user, both at the host/user level and per project.
Your job: find out what the user wants, decide which config layer it belongs in, write valid JSON, and verify it against the version of Grove they actually have installed. Do not guess. Grove validates strictly and rejects unknown keys, so a wrong field is a hard error, not a silent no-op.
What people use this for
Common requests, and how to handle them:
- "Set this repo up so every workspace is ready to code." Configure a project
init_script(committed in<repo>/.grove/config.json) that installs dependencies and prepares the tree, for exampleuv sync,npm ci, ormake bootstrap. It runs in its own tmux window before the agent starts. - "Handle my secrets properly." Never put secret values in the committed
project config; it is meant to be shared. Reference environment variables
instead (the user sets them in their shell or a gitignored
.env), keep machine-specific values in the gitignored project-local config (<repo>/.grove/config.local.json), and let the init script wire secrets up, for examplecp .env.example .env.agents[].envand init scripts can read env vars; keep the literal secrets out of anything committed. - "Make test, deploy, or scratch directories for each workspace." Put the
mkdir, fixture seeding, mock-data setup, or deploy scaffolding in theinit_script, so every new worktree starts in the right shape. - "Bring my MCP servers into each workspace." A Grove workspace is a real git
worktree, so any file committed at the repo root is already present inside it.
- Claude Code reads project MCP servers from a committed
.mcp.jsonat the repo root, so committing that file gives every workspace and teammate the same servers. Reference secret tokens via env vars there; do not hardcode them. - Codex reads
~/.codex/config.toml(global, so it already applies to every workspace) or a project.codex/config.tomlwith[mcp_servers.<name>]tables. Commit the project file, or have the init script copy or symlink the user's config into the new worktree. - For any MCP config that is gitignored or lives only in the home directory, the init script is the place to copy or symlink it into the workspace.
- Claude Code reads project MCP servers from a committed
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.
- 5d ago First seen · 508 lines · 122 tokens per session scan B 1a3c1bb077ff
configuring-grove is a skill published in the GitHub repository bearlike/Grove (2 stars, last pushed 15d ago), licensed MIT. It adds 122 tokens to every session and 7,024 once invoked, about $0.0006 per session on Opus 5. A static security scan graded it B with 1 finding (reads agent configuration directories). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.
Other skills, from other repositories
obsidian-untangle-knot
Разгрузка hub-заметки с высоким in-degree: под-MOC под категории хаба, перепривязка входящих ссылок ресурсных заметок; оригинал остаётся точкой входа. Срабатывай на «распутай клубок», «разгрузи MOC X», «карта стала помойкой», «перепривязать заметки».
obsidian-daily-append
Добавляет запись в сегодняшнюю daily-заметку (мысль, событие, встреча, TODO, узел): определяет тип, вставляет в нужный раздел, создаёт файл при отсутствии. ОБЯЗАТЕЛЬНО срабатывай на «добавь в сегодняшнюю/daily», «запиши в дневник», «зафиксируй в today».
obsidian-emotion-log
Мгновенная фиксация одной эмоции в сегодняшней daily: callout в ### Эмоции (эмоция, интенсивность 1–10, триггер) со связями на MOC эмоций и людей. ОБЯЗАТЕЛЬНО срабатывай на «зафиксируй эмоцию» и описания состояния («мне тревожно», «бесит», «накрыло»).
obsidian-split-note
Разбивка большой заметки или конспекта лекции на атомарные заметки с сохранением wikilinks в оригинале. Срабатывай на «разбей заметку», «раздели», «рефактори заметку», «обработай лекцию», «разбей конспект», «вынеси понятия из лекции». До 3 конспектов за запуск.
obsidian-journal-review
Помощь в ревью ежедневных заметок, формировании еженедельных и ежемесячных обзоров и поддержании порядка в дневнике. Используй когда пользователь просит "сделать еженедельный обзор", "weekly review", "разобрать дневник", "что было на этой неделе", "саммари недели/месяца".
vault-archiving
Правила архивирования в 04. Архив/ — архив для агента плоский (подпапки не создаём никогда), заметки не удаляются а переезжают, порядок mv плюс тег #archive, конфликт имён, кто архивирует в рабочем цикле. Используй при переносе заметок в архив и при массовой архивации.