118 lines
5.8 KiB
Markdown
118 lines
5.8 KiB
Markdown
# Fenix Skills — Claude Code Plugin
|
|
|
|
Custom Claude Code skills for Fénix's workflow.
|
|
Includes [xenodium/emacs-skills](https://github.com/xenodium/emacs-skills) (forked & rebranded), selected [mattpocock/skills](https://github.com/mattpocock/skills) (adapted), plus Fénix's own tools.
|
|
|
|
---
|
|
|
|
## Plugin Structure
|
|
|
|
```
|
|
~/Emacs/fenix-skills/
|
|
├── .claude-plugin/
|
|
│ └── marketplace.json # Plugin manifest
|
|
├── META-TASKS.org # Import/refactor task tracking
|
|
├── README.md
|
|
└── skills/
|
|
├── d2/ # /d2 — Create D2 diagrams
|
|
├── describe/ # /describe — Emacs describe-* lookups
|
|
├── dired/ # /dired — Open files in dired buffer
|
|
├── edit-article/ # /edit-article — Restructure & tighten article prose
|
|
├── emacsclient/ # (auto) Always use emacsclient, not emacs
|
|
├── emacs-svg-maps/ # (auto) SVG map editing in Emacs
|
|
├── extract-pdf-pages/ # /extract-pdf-pages — Extract page ranges with pdftk
|
|
├── file-links/ # (auto) Format file refs as markdown #L links
|
|
├── git-guardrails/ # /git-guardrails — Block dangerous git commands
|
|
├── gnuplot/ # /gnuplot — Plot data with gnuplot
|
|
├── grill-me/ # /grill-me — Stress-test a plan via relentless interview
|
|
├── highlight/ # /highlight — Highlight regions in Emacs
|
|
├── improve-codebase-architecture/ # /improve-codebase-architecture — Deep module refactors
|
|
├── mermaid/ # /mermaid — Create Mermaid diagrams
|
|
├── open/ # /open — Open files in Emacs buffers
|
|
├── plantuml/ # /plantuml — Create PlantUML diagrams
|
|
├── request-refactor-plan/ # /request-refactor-plan — Tiny-commit refactor RFCs
|
|
├── select/ # /select — Select (mark) regions in Emacs
|
|
├── tdd/ # /tdd — Test-driven development (red-green-refactor)
|
|
├── triage-issue/ # /triage-issue — Bug investigation + TDD fix plan
|
|
└── write-a-skill/ # /write-a-skill — Scaffold new Claude Code skills
|
|
```
|
|
|
|
## Registration
|
|
|
|
Registered in `~/.claude/settings.json` as a local marketplace:
|
|
|
|
```json
|
|
"extraKnownMarketplaces": {
|
|
"fenix-skills": {
|
|
"source": {
|
|
"source": "directory",
|
|
"path": "/home/fenix/Emacs/fenix-skills"
|
|
}
|
|
}
|
|
}
|
|
```
|
|
|
|
```json
|
|
"enabledPlugins": {
|
|
"fenix-tools@fenix-skills": true
|
|
}
|
|
```
|
|
|
|
## Skills Reference
|
|
|
|
### Emacs Integration
|
|
|
|
| **Skill** | **Invocation** | **Description** |
|
|
|:---|:---:|:---|
|
|
| **d2** | `/d2` | Create diagrams with D2 |
|
|
| **describe** | `/describe` | Look up Emacs docs (functions, variables, keys) |
|
|
| **dired** | `/dired` | Open recent files in Emacs dired buffer |
|
|
| **emacsclient** | _(auto)_ | Always prefer `emacsclient` over `emacs` |
|
|
| **emacs-svg-maps** | _(auto)_ | SVG map editing workflows (nxml, EWW, Inkscape) |
|
|
| **gnuplot** | `/gnuplot` | Plot data with gnuplot |
|
|
| **highlight** | `/highlight` | Highlight line regions in Emacs buffers |
|
|
| **mermaid** | `/mermaid` | Create Mermaid diagrams |
|
|
| **open** | `/open` | Open files in Emacs (with optional line jump) |
|
|
| **plantuml** | `/plantuml` | Create PlantUML diagrams |
|
|
| **select** | `/select` | Select (mark) regions in Emacs buffers |
|
|
|
|
### Development Workflow
|
|
|
|
| **Skill** | **Invocation** | **Description** |
|
|
|:---|:---:|:---|
|
|
| **tdd** | `/tdd` | Test-driven development — red-green-refactor vertical slices |
|
|
| **triage-issue** | `/triage-issue` | Investigate bug, find root cause, create TDD fix plan |
|
|
| **git-guardrails** | `/git-guardrails` | Block dangerous git commands (push, reset --hard, etc.) |
|
|
| **improve-codebase-architecture** | `/improve-codebase-architecture` | Find shallow modules, propose deep-module refactors |
|
|
| **request-refactor-plan** | `/request-refactor-plan` | Plan refactors as tiny safe commits via interview |
|
|
| **grill-me** | `/grill-me` | Stress-test a design/plan via relentless questioning |
|
|
|
|
### Content & Productivity
|
|
|
|
| **Skill** | **Invocation** | **Description** |
|
|
|:---|:---:|:---|
|
|
| **edit-article** | `/edit-article` | Restructure sections, improve clarity, tighten prose |
|
|
| **extract-pdf-pages** | `/extract-pdf-pages` | Extract page range from PDF via `pdftk` |
|
|
| **file-links** | _(auto)_ | Format file references as `file.py#L42` links |
|
|
| **write-a-skill** | `/write-a-skill` | Scaffold new Claude Code skills |
|
|
|
|
## Origin & Attribution
|
|
|
|
- **Emacs skills** (d2, describe, dired, emacsclient, file-links, gnuplot, highlight, mermaid, open, plantuml, select) — forked from [xenodium/emacs-skills](https://github.com/xenodium/emacs-skills) by Alvaro Ramirez
|
|
- **Development workflow skills** (tdd, triage-issue, git-guardrails, improve-codebase-architecture, request-refactor-plan, grill-me, edit-article, write-a-skill) — adapted from [mattpocock/skills](https://github.com/mattpocock/skills) by Matt Pocock
|
|
- **emacs-svg-maps**, **extract-pdf-pages** — original by Fénix
|
|
|
|
### Adaptations from mattpocock originals
|
|
|
|
- **git-guardrails**: Rewritten to document both `settings.json` deny/ask rules (Fénix's approach) and PreToolUse hook scripts
|
|
- **triage-issue**: Added Gitea (`tea`) and BUGS.org support alongside GitHub (`gh`)
|
|
- **improve-codebase-architecture**: Added Gitea and Org-file output options
|
|
- **request-refactor-plan**: Added Gitea and Org-file output options
|
|
|
|
## Requirements
|
|
|
|
- GNU Emacs with running server daemon (`emacsclient` accessible)
|
|
- `pdftk` for PDF extraction skill
|
|
- `gh` CLI for GitHub issue creation (optional — Gitea/Org alternatives available)
|
|
- Claude Code with plugins enabled
|