mirror of
https://github.com/kuhyx/testsAndMisc.git
synced 2026-07-04 16:43:05 +02:00
132 lines
5.4 KiB
Markdown
132 lines
5.4 KiB
Markdown
# Using agent-skills with Gemini CLI
|
|
|
|
## Setup
|
|
|
|
### Option 1: Install as Skills (Recommended)
|
|
|
|
Gemini CLI has a native skills system that auto-discovers `SKILL.md` files in `.gemini/skills/` or `.agents/skills/` directories. Each skill activates on demand when it matches your task.
|
|
|
|
**Install from the repo:**
|
|
|
|
```bash
|
|
gemini skills install https://github.com/addyosmani/agent-skills.git --path skills
|
|
```
|
|
|
|
**Or install from a local clone:**
|
|
|
|
```bash
|
|
git clone https://github.com/addyosmani/agent-skills.git
|
|
gemini skills install /path/to/agent-skills/skills/
|
|
```
|
|
|
|
**Install for a specific workspace only:**
|
|
|
|
```bash
|
|
gemini skills install /path/to/agent-skills/skills/ --scope workspace
|
|
```
|
|
|
|
Skills installed at workspace scope go into `.gemini/skills/` (or `.agents/skills/`). User-level skills go into `~/.gemini/skills/`.
|
|
|
|
Once installed, verify with:
|
|
|
|
```
|
|
/skills list
|
|
```
|
|
|
|
Gemini CLI injects skill names and descriptions into the prompt automatically. When it recognizes a matching task, it asks permission to activate the skill before loading its full instructions.
|
|
|
|
### Option 2: GEMINI.md (Persistent Context)
|
|
|
|
For skills you want always loaded as persistent project context (rather than on-demand activation), add them to your project's `GEMINI.md`:
|
|
|
|
```bash
|
|
# Create GEMINI.md with core skills as persistent context
|
|
cat /path/to/agent-skills/skills/incremental-implementation/SKILL.md > GEMINI.md
|
|
echo -e "\n---\n" >> GEMINI.md
|
|
cat /path/to/agent-skills/skills/code-review-and-quality/SKILL.md >> GEMINI.md
|
|
```
|
|
|
|
You can also modularize by importing from separate files:
|
|
|
|
```markdown
|
|
# Project Instructions
|
|
|
|
@skills/test-driven-development/SKILL.md
|
|
@skills/incremental-implementation/SKILL.md
|
|
```
|
|
|
|
Use `/memory show` to verify loaded context, and `/memory reload` to refresh after changes.
|
|
|
|
> **Skills vs GEMINI.md:** Skills are on-demand expertise that activate only when relevant, keeping your context window clean. GEMINI.md provides persistent context loaded for every prompt. Use skills for phase-specific workflows and GEMINI.md for always-on project conventions.
|
|
|
|
## Recommended Configuration
|
|
|
|
### Always-On (GEMINI.md)
|
|
|
|
Add these as persistent context for every session:
|
|
|
|
- `incremental-implementation` — Build in small verifiable slices
|
|
- `code-review-and-quality` — Five-axis review
|
|
|
|
### On-Demand (Skills)
|
|
|
|
Install these as skills so they activate only when relevant:
|
|
|
|
- `test-driven-development` — Activates when implementing logic or fixing bugs
|
|
- `spec-driven-development` — Activates when starting a new project or feature
|
|
- `frontend-ui-engineering` — Activates when building UI
|
|
- `security-and-hardening` — Activates during security reviews
|
|
- `performance-optimization` — Activates during performance work
|
|
|
|
## Advanced Configuration
|
|
|
|
### MCP Integration
|
|
|
|
Many skills in this pack leverage [Model Context Protocol (MCP)](https://modelcontextprotocol.io/) tools to interact with the environment. For example:
|
|
|
|
- `browser-testing-with-devtools` uses the `chrome-devtools` MCP extension.
|
|
- `performance-optimization` can benefit from performance-related MCP tools.
|
|
|
|
To enable these, ensure you have the relevant MCP extensions installed in your Gemini CLI configuration (`~/.gemini/config.json`).
|
|
|
|
### Session Hooks
|
|
|
|
Gemini CLI supports session lifecycle hooks. You can use these to automatically inject context or run validation scripts at the start of a session.
|
|
|
|
To replicate the `agent-skills` experience from other tools, you can configure a `SessionStart` hook that reminds you of the available skills or loads a meta-skill.
|
|
|
|
### Explicit Context Loading
|
|
|
|
You can explicitly load any skill into your current session by referencing it with the `@` symbol in your prompt:
|
|
|
|
```markdown
|
|
Use the @skills/test-driven-development/SKILL.md skill to implement this fix.
|
|
```
|
|
|
|
This is useful when you want to ensure a specific workflow is followed without waiting for auto-discovery.
|
|
|
|
## Slash Commands
|
|
|
|
The repo ships 7 slash commands under `.gemini/commands/` that map to the development lifecycle. Gemini CLI auto-discovers them when you run from the project root.
|
|
|
|
| Command | What it does |
|
|
|---------|--------------|
|
|
| `/spec` | Write a structured spec before writing code |
|
|
| `/planning` | Break work into small, verifiable tasks |
|
|
| `/build` | Implement the next task incrementally |
|
|
| `/test` | Run TDD workflow — red, green, refactor |
|
|
| `/review` | Five-axis code review |
|
|
| `/code-simplify` | Reduce complexity without changing behavior |
|
|
| `/ship` | Pre-launch checklist via parallel persona fan-out |
|
|
|
|
Each command invokes the corresponding skill automatically — no manual skill loading required.
|
|
|
|
> **Note:** Use `/planning` instead of `/plan` — `/plan` conflicts with a Gemini CLI internal command name.
|
|
|
|
## Usage Tips
|
|
|
|
1. **Prefer skills over GEMINI.md** — Skills activate on demand and keep your context window focused. Only put skills in GEMINI.md if you want them always loaded.
|
|
2. **Skill descriptions matter** — Each SKILL.md has a `description` field in its frontmatter that tells agents when to activate it. The descriptions in this repo are optimized for auto-discovery across all supported tools (Claude Code, Gemini CLI, etc.) by clearly stating both *what* the skill does and *when* it should be triggered.
|
|
3. **Use agents for review** — Copy `agents/code-reviewer.md` content when requesting structured code reviews.
|
|
4. **Combine with references** — Reference checklists from `references/` when working on specific quality areas like testing or performance.
|