- Зачем: - код и конфигурации читают люди с разным уровнем экспертизы, текст должен быть доступен без дополнительных пояснений. - Что: - добавлен абзац про простые слова, короткие фразы и пояснение сложных мыслей при первом упоминании. - Проверка: - cat AGENTS.md — новый абзац присутствует в разделе «Язык и рассуждения».
5.0 KiB
GEMINI.md - Project Context & Instructions
This repository contains personal dotfiles and configurations for a highly productive development environment, integrating Bash, Tmux, Vim, VS Code, and various AI assistants (Gemini CLI, Claude, Codex, Opencode).
📂 Project Overview
- Type: Non-Code Project (Dotfiles / Configuration)
- Management: Uses
stowfor Linux/WSL andchezmoifor Windows/WSL. - Key Focus:
- Unified configuration across editors and terminals.
- Deep integration with AI tools via shared "skills".
- Automated environment setup (proxy handling, secret loading).
🛠 Key Components
1. Shell & Terminal (Bash & Tmux)
- Bash: Custom prompt (
.bash_prompt), utility functions (.bash_functionslikeproxy_on/off), and core customizations (.bash_custom). - Tmux: Dual prefix (
C-bandC-Space), Vi-mode for copying, and optimized pane management. - Secrets: Managed via
~/.env.secrets(not tracked in Git).
2. Editors (Vim, VS Code, Zed)
- Vim: Minimalist
.vimrc, 2-space indentation, leader-key mappings (Space). - VS Code (WSL): Uses
server-env-setupto automatically load secrets and configure proxy settings upon startup. - Zed: Placeholder directory for future configuration.
3. AI Agents & Skills
- Shared Skills: Located in
agents/.agents/skills/. This is the single source of truth for AI instructions. - Gemini CLI: Configured via
gemini/.gemini/.- Policies:
readonly-commands.tomlallows critical commands likegit status,git diff, andgit addto run without confirmation.
- Policies:
- Opencode: MCP-based assistant configuration (
opencode.json) with support for documentation, search, and web-reading. - Skill Bridges: Symlinks are used to share skills across Claude, Codex, and Opencode.
🚀 Usage & Maintenance
Deployment
- Linux/WSL: Use
stow <package_name>from the root directory. - Windows: Use
chezmoi apply.
Adding/Updating Skills
- Modify files in
agents/.agents/skills/. - Ensure symlinks in other tool directories are updated if new skills are added.
Git Workflow for AI (Gemini CLI)
- Safe Commands:
git status,git diff, andgit addare pre-approved in the policy. - Commits: Always use the
conventional-commitsskill for generating commit messages. Use theСпособ B(temporary file) if direct Heredoc causes issues.
📋 TODO
Планы на будущее — см. TODO.md.
⚠️ Important Files for Reference
README.md: Detailed installation and usage instructions.bash/.bash_functions: Proxy and environment management functions.gemini/.gemini/policies/readonly-commands.toml: Permissions for Gemini CLI.agents/.agents/skills/conventional-commits/SKILL.md: Rules for commit formatting.
🤖 AI Interaction Mandates
- Adhere to Local Patterns: When suggesting changes, follow the 2-space indent rule and minimalist style established in
.vimrcand.bash_custom. - Privacy First: Never log or commit contents of
~/.env.secrets. - Verification: Before updating configs, verify with
git statusandgit diff(which are allowed without confirmation).
🗣 Язык и рассуждения
Пиши на ясном русском языке. Иностранные слова оставляй только там, где у термина нет устоявшегося русского аналога: имена технологий и инструментов (Kafka, ClickHouse, Airflow) и названия из кода. Если для понятия есть обычное русское слово — используй его, не выдумывай транслитерации (пиши «приведение в соответствие», а не «реконсиляция»; «точка отсчёта», а не «origin»).
Документы, комментарии и объяснения держи короткими и понятными читателю, который их не писал: простые слова, короткие фразы, сложную мысль поясняй при первом упоминании (помни про менти-неспециалиста). Если понятность и буквальная точность спорят — выбирай понятность. Правило касается и текста, и заголовков разделов.
Внутренние рассуждения и промежуточные пометки по ходу работы веди на английском — он экономнее по токенам (кириллица занимает примерно в 1,5–2 раза больше). На русском остаётся всё, что видит и хранит проект: итоговые ответы пользователю, документы, комментарии в коде и сообщения коммитов.