Add Bug
remotion-dev/remotion
Add a new Remotion bug entry to packages/bugs/api/[v].ts. An agent skill from remotion-dev/remotion.
Review Emacs Lisp (elisp) packages for bugs, style/convention violations, and optimisation opportunities.
$ npx skills add captainflasmr/ollama-buddy --skill elisp-review -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install captainflasmr/ollama-buddy elisp-review --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/captainflasmr/ollama-buddy.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.agents/skills/elisp-review .claude/skills/elisp-review && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "elisp-review" agent skill from https://github.com/captainflasmr/ollama-buddy/tree/main/.agents/skills/elisp-review into .claude/skills/elisp-review/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "elisp-review", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/captainflasmr/ollama-buddy/tree/main/.agents/skills/elisp-reviewType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add captainflasmr/ollama-buddy --skill elisp-review -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install captainflasmr/ollama-buddy elisp-review --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/captainflasmr/ollama-buddy.git skills-src && mkdir -p .agents/skills && cp -r skills-src/.agents/skills/elisp-review .agents/skills/elisp-review && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "elisp-review" agent skill from https://github.com/captainflasmr/ollama-buddy/tree/main/.agents/skills/elisp-review into .agents/skills/elisp-review/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "elisp-review", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add captainflasmr/ollama-buddy --skill elisp-review -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install captainflasmr/ollama-buddy elisp-review --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/captainflasmr/ollama-buddy.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/.agents/skills/elisp-review .cursor/skills/elisp-review && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "elisp-review" agent skill from https://github.com/captainflasmr/ollama-buddy/tree/main/.agents/skills/elisp-review into .cursor/skills/elisp-review/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "elisp-review", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/captainflasmr/ollama-buddy.git --path .agents/skills/elisp-review--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add captainflasmr/ollama-buddy --skill elisp-review -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install captainflasmr/ollama-buddy elisp-review --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/captainflasmr/ollama-buddy.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/.agents/skills/elisp-review .gemini/skills/elisp-review && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "elisp-review" agent skill from https://github.com/captainflasmr/ollama-buddy/tree/main/.agents/skills/elisp-review into .gemini/skills/elisp-review/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "elisp-review", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install captainflasmr/ollama-buddy elisp-reviewInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add captainflasmr/ollama-buddy --skill elisp-review -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/captainflasmr/ollama-buddy.git skills-src && mkdir -p .github/skills && cp -r skills-src/.agents/skills/elisp-review .github/skills/elisp-review && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "elisp-review" agent skill from https://github.com/captainflasmr/ollama-buddy/tree/main/.agents/skills/elisp-review into .github/skills/elisp-review/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "elisp-review", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add captainflasmr/ollama-buddy --skill elisp-review -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install captainflasmr/ollama-buddy elisp-review --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/captainflasmr/ollama-buddy.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/.agents/skills/elisp-review .opencode/skills/elisp-review && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "elisp-review" agent skill from https://github.com/captainflasmr/ollama-buddy/tree/main/.agents/skills/elisp-review into .opencode/skills/elisp-review/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "elisp-review", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
elisp-reviewReview Emacs Lisp (elisp) packages for bugs, style/convention violations, and optimisation opportunities.
Elisp Review is an agent skill from captainflasmr/ollama-buddy. Review Emacs Lisp (elisp) packages for bugs, style/convention violations, and optimisation opportunities. Use this skill whenever the user asks to review, audit, check, or analyse an elisp or Emacs Lisp package, file, or set of files. Trigger on phrases like "review my package", "check my elisp", "audit this emacs package", "look for bugs in my lisp", "optimise my elisp", or any time the user shares .el files and wants feedback. Always use this skill when .el files are involved and improvement is the goal — even…
Its SKILL.md is about 2.2k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.
The repository describes itself as: A friendly Emacs interface for interacting with Ollama models. The licence is GPL-3.0.
4 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit 12eaf7f. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
No scripts in the folder and no shell commands in SKILL.md.
From the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Elisp Review loads about 2.2k tokens when it runs. Until then it costs about 151 tokens; SKILL.md has 924 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from captainflasmr/ollama-buddy at commit 12eaf7f, republished under its GPL-3.0 licence (© captainflasmr). 924 words, ~2,205 tokens.
.claude/skills/elisp-review/SKILL.md (or your agent's skills folder).You are performing a structured code review of an Emacs Lisp package. Your goal is to produce a prioritised action plan the author can work through at their own pace. Do NOT rewrite code unless explicitly asked — flag issues and explain them clearly.
Before diving into issues, briefly orient yourself:
.el file in the package.Package-Requires).lexical-binding is enabled in every file.State a one-paragraph summary of what the package does before listing any issues.
Work through each dimension below in order. Collect ALL findings before presenting — do not present dimension-by-dimension.
Look for logic errors and runtime hazards:
car/cdr on potentially-nil values — use when, if-let, or
and to guard.setcar/setcdr.unwind-protect.eq vs equal vs string= misuse.mapcar vs mapc — using mapcar when return value is
discarded (wasteful allocation).save-excursion / save-restriction misuse — forgetting to restore state
after buffer modifications.advice-add without corresponding advice-remove in
disable/unload path.require — symbols used from libraries not explicitly required.require — files requiring each other or requiring
things already guaranteed by dependencies.Check against established community conventions:
File header:
;;; package-name.el --- Short description -*- lexical-binding: t -*-;;; Commentary: section present and informative.;;; Code: marker present.;;; package-name.el ends here footer present.Package-Version, Package-Requires, Author, Keywords, URL headers
present and accurate.Naming:
package-name- (or agreed namespace).package-name-- (double dash).defconst not defvar.-p suffix (package-name-verbose-p).Docstrings:
defun, defvar, defcustom, defface, define-minor-mode has a
docstring.. and ≤80 chars.defcustom docstrings describe valid values.Customisation:
defcustom, not defvar.defcustom has correct :type, :group, and :safe where appropriate.defgroup exists for the package.Functions:
cl-lib over deprecated cl package (cl-loop, cl-destructuring-bind, etc.).seq- functions over manual recursion for sequence operations.flet/labels — use cl-flet/cl-labels.lexical-let — unnecessary with lexical-binding: t.interactive spec is correct and uses modern forms (e.g. (interactive "r")
not deprecated forms).with-current-buffer rather than relying on
implicit current buffer.Control flow:
when/unless over (if ... nil) / (if ... t).cond over deeply nested if.pcase over complex cond matching on structure.(not (not x)) — use (and x t) or just trust truthiness.buffer-substring / buffer-string in tight loops — cache the
result.re-search-forward in loops without narrow-to-region — can be
O(n²); consider reorganising.append in loops — quadratic; prefer push + nreverse.length on a list to check emptiness — use null or consp instead.defconst data — consider lazy initialisation if not always needed.sit-for 0 / redisplay in loops — usually a sign of a design smell;
flag and explain.make-process.with-temp-buffer — if only string operations are needed,
avoid buffer allocation.font-lock-add-keywords called repeatedly — should be called once, not on
every mode activation.;;;###autoload cookies.defvar / defcustom at top level is fine; defun bodies running at load
time are not.require at top level is acceptable but flag heavy requires that could be
deferred with with-eval-after-load or autoload.Package-Requires.system-type checks).(require 'cl) — must use (require 'cl-lib).condition-case used where failures are plausible (network, file I/O,
subprocess).user-error used for user-facing mistakes (not error), so Edebug doesn't
trap them.unwind-protect used wherever resources (buffers, processes, overlays) are
allocated.Present findings as a structured action plan using the following format. Group by severity. Within each group, order by file then by approximate line number.
## Package Review: <package-name>
### Summary
<One paragraph: what the package does, overall impression, headline numbers>
---
### 🔴 Critical — Fix Before Release
Issues that will cause errors, data loss, or broken behaviour.
#### C1. <Short title>
**File:** `foo.el` **~Line:** 42
**Issue:** <Clear explanation of the problem and why it matters>
**Suggestion:** <What to do — no code rewrite, just direction>
#### C2. ...
---
### 🟠 Important — Strong Recommendation
Style violations, missing conventions, or meaningful inefficiencies.
#### I1. <Short title>
...
---
### 🟡 Minor — Worth Addressing
Small style issues, minor optimisations, nitpicks.
#### M1. <Short title>
...
---
### 💡 Optimisation Opportunities
Performance improvements worth considering, ordered by estimated impact.
#### O1. <Short title>
...
---
### ✅ Strengths
Brief list of things done well — keep this honest and specific.After the plan, add a short paragraph:
"This is a plan for you to action at your own pace — not all items need to be addressed. Prioritise 🔴 Critical items first. Feel free to ask me to elaborate on any specific finding or to help implement a fix."
© captainflasmr, GPL-3.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
Just SKILL.md in .agents/skills/elisp-review of captainflasmr/ollama-buddy.
Open the folder on GitHubat commit 12eaf7f
Elisp Review next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Elisp Review this skillcaptainflasmr/ollama-buddy | 103 | — | ~2.2k | Automated safety check: Pass | GPL-3.0 | |
| Add Bugremotion-dev/remotion | 63k | — | ~215 | Automated safety check: Pass | Custom licence | |
| Add Packageremix-run/remix | 33k | — | ~2k | Automated safety check: Pass | MIT | |
| Ecc Conventionsaffaan-m/ECC | 276k | — | ~2.8k | Automated safety check: Pass | MIT | |
| Mole Bug Patternstw93/Mole | 70k | — | ~2k | Automated safety check: Pass | GPL-3.0 | |
| Bugccch1mneyyy/dsh-TUI | 4.2k | — | ~342 | Automated safety check: Pass | MIT |
remotion-dev/remotion
Add a new Remotion bug entry to packages/bugs/api/[v].ts. An agent skill from remotion-dev/remotion.
remix-run/remix
Create or align a package in the Remix monorepo to match existing package conventions.
affaan-m/ECC
Development conventions and patterns for ECC. An agent skill from affaan-m/ECC.
tw93/Mole
A catalog of recurring bug shapes in the Mole Mac cleaner, used to review safety-sensitive diffs for deletion safety, unbounded commands, shell traps and weak tests.
ccch1mneyyy/dsh-TUI
Turn a reported defect into an actionable bug report or issue draft.
sickn33/agentic-awesome-skills
Complete bug bounty workflow
captainflasmr/ollama-buddy
Write an Emacs blog post in James Dyer's voice for www.emacs.dyerdwelling.family.
captainflasmr/ollama-buddy
Assist with Emacs Lisp (elisp) development, debugging, and parenthesis matching.
captainflasmr/ollama-buddy
Analyse a project's source code and generate a simply-annotate database file with LLM-created annotations categorised by tag: defun for functions and large syntactical blocks, line for smaller…
captainflasmr/ollama-buddy
Write an r/emacs Reddit post in James Dyer's voice for announcing or discussing an Emacs package.
captainflasmr/ollama-buddy
Expert code refactoring and optimization with analysis, improvements, and documentation.
captainflasmr/ollama-buddy
Review Emacs blog posts for technical accuracy, naming conventions, and correct Emacs idioms.
Review Emacs Lisp (elisp) packages for bugs, style/convention violations, and optimisation opportunities. Elisp Review is an agent skill from captainflasmr/ollama-buddy. Review Emacs Lisp (elisp) packages for bugs, style/convention violations, and optimisation opportunities.
Elisp Review fits situations like: the user asks to review; analyse an elisp; emacs Lisp package; phrases like review my package.
Run `npx skills add captainflasmr/ollama-buddy --skill elisp-review -a claude-code`. Or copy the skill folder (.agents/skills/elisp-review in captainflasmr/ollama-buddy) into .claude/skills/elisp-review in your project. Claude Code loads it when a task matches its description.
Run `npx skills add captainflasmr/ollama-buddy --skill elisp-review -a codex`. Or copy the skill folder (.agents/skills/elisp-review in captainflasmr/ollama-buddy) into .agents/skills/elisp-review in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add captainflasmr/ollama-buddy --skill elisp-review -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/elisp-review, .gemini/skills/elisp-review, .github/skills/elisp-review and .opencode/skills/elisp-review in your project.
SKILL.md names no scripts, command-line tools or credentials: Elisp Review is instructions for the agent only.
SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Elisp Review is published under the GPL-3.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 2.2k tokens (SKILL.md is roughly 8.8k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Elisp Review: Add Bug (remotion-dev/remotion, 63k stars), Add Package (remix-run/remix, 33k stars), Ecc Conventions (affaan-m/ECC, 276k stars) and Mole Bug Patterns (tw93/Mole, 70k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
captainflasmr (a GitHub user) maintains it in captainflasmr/ollama-buddy, which has 103 GitHub stars. The repository holds 12 skills in this directory. The repository was last updated on September 10, 2026.
Source: captainflasmr/ollama-buddy on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.