К основному содержанию
скилл CX Codex

scipy-best-practices — скилл для Claude Code: правила работы с SciPy

Скилл задаёт агенту правила научных вычислений на SciPy: оптимизация, линейная алгебра, статистика, сигналы. Пригодится, когда код на Python считает числа, а не рисует интерфейсы.

Установить в Claude Code · Через Skills CLI (Vercel) Все способы и платформы ↓
npx skills add Mindrally/skills --skill scipy-best-practices -a claude-code
Открыть на GitHub

Что делает scipy-best-practices

Скилл — это набор инструкций, которые агент подхватывает при работе с Python-кодом на SciPy. Внутри разложены по разделам рекомендации: какой метод оптимизации брать под задачу, как решать линейные системы, как строить фильтры и считать статистику. Агент получает готовую карту решений вместо того, чтобы каждый раз выбирать наугад.

По оптимизации скилл советует scipy.optimize.minimize() и разводит методы по условиям: 'BFGS' для гладких задач без ограничений, 'L-BFGS-B' при границах, 'SLSQP' при ограничениях, 'Nelder-Mead' для недифференцируемых функций. Для линейной алгебры — scipy.linalg.solve() вместо обращения матрицы, для больших разреженных систем — решатели из scipy.sparse.linalg. Отдельные разделы про интерполяцию, интегралы, solve_ivp() для дифференциальных уравнений и обработку сигналов через filtfilt() и find_peaks().

Есть разделы про производительность и проверку результатов: контроль сходимости, тесты против аналитических решений, np.testing.assert_allclose() для сравнения чисел. Скилл опирается на SciPy и NumPy — без них примеры из него не запустятся. Ставить стоит, если вы пишете расчёты и хотите, чтобы агент не изобретал метод там, где в документации SciPy уже есть ответ.

Какие задачи решает

  • выбрать метод оптимизации под задачу с ограничениями
  • решить линейную систему без обращения матрицы
  • подобрать фильтр и применить его без сдвига фазы
  • посчитать статистику и проверить гипотезу
  • протестировать численный код против аналитического решения

Примеры запросов агенту

  • напиши функцию оптимизации через scipy.optimize.minimize с методом SLSQP
  • перепиши этот цикл на векторизованные операции SciPy
  • добавь тесты с np.testing.assert_allclose для этой функции

Как установить scipy-best-practices

1Через Skills CLI (Vercel)

npx skills add Mindrally/skills --skill scipy-best-practices -a claude-code

2Вручную: положить файлы

~/.claude/skills/scipy-best-practices/SKILL.md

Папка скилла целиком; для одного проекта — .claude/skills/scipy-best-practices/

По шагам, с командами для каждой платформы: Как установить скилл в Claude Code: пять способов

Вопросы о scipy-best-practices

Как установить scipy-best-practices в Claude?

Выполните npx skills add Mindrally/skills --skill scipy-best-practices -a claude-code. Файл скилла окажется по пути ~/.claude/skills/scipy-best-practices/SKILL.md.

Что делает scipy-best-practices?

Задаёт агенту правила разработки на SciPy: выбор методов оптимизации, работа с линейной алгеброй, статистикой, интерполяцией, интегралами и сигналами. Плюс рекомендации по производительности и тестированию численного кода.

С какими платформами совместим скилл?

Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI и OpenCode. Для каждой платформы своя команда установки, файл кладётся в её каталог скиллов.

Исходный текст

SKILL.md · Apache-2.0
---
name: scipy-best-practices
description: Best practices for SciPy scientific computing, optimization, signal processing, and statistical analysis in Python
metadata:
  maintainer: Mindrally
  source: https://github.com/Mindrally/skills
---

# SciPy Best Practices

Expert guidelines for SciPy development, focusing on scientific computing, optimization, signal processing, and statistical analysis.

## Code Style and Structure

- Write concise, technical Python code with accurate SciPy examples
- Prioritize numerical accuracy and computational efficiency
- Use functional programming patterns for mathematical operations
- Prefer vectorized operations over explicit loops
- Use descriptive variable names reflecting scientific context
- Follow PEP 8 style guidelines

## scipy.optimize - Optimization

- Use `scipy.optimize.minimize()` for general-purpose optimization
- Choose appropriate method based on problem characteristics:
  - `'BFGS'` for smooth, unconstrained problems
  - `'L-BFGS-B'` for bounded problems
  - `'SLSQP'` for constrained optimization
  - `'Nelder-Mead'` for non-differentiable functions
- Provide gradients when available for faster convergence
- Use `scipy.optimize.curve_fit()` for nonlinear least squares fitting
- Use `scipy.optimize.root()` for finding roots of equations

## scipy.linalg - Linear Algebra

- Prefer `scipy.linalg` over `numpy.linalg` for additional functionality
- Use `scipy.linalg.solve()` instead of computing matrix inverse
- Leverage specialized solvers for structured matrices (banded, triangular)
- Use `scipy.linalg.lu_factor()` and `lu_solve()` for multiple right-hand sides
- Use sparse matrix solvers from `scipy.sparse.linalg` for large sparse systems

## scipy.stats - Statistics

- Use distribution objects for probability calculations
- Leverage `scipy.stats.describe()` for summary statistics
- Use hypothesis testing functions: `ttest_ind()`, `chi2_contingency()`, `mannwhitneyu()`
- Generate random samples with `.rvs()` method on distributions
- Use `.fit()` for parameter estimation from data

## scipy.interpolate - Interpolation

- Use `scipy.interpolate.interp1d()` for 1D interpolation
- Use `scipy.interpolate.griddata()` for scattered data interpolation
- Choose appropriate interpolation method: 'linear', 'cubic', 'nearest'
- Use spline functions for smooth interpolation: `UnivariateSpline`, `BSpline`
- Consider `RegularGridInterpolator` for regular grid data

## scipy.integrate - Integration

- Use `scipy.integrate.quad()` for single integrals
- Use `scipy.integrate.dblquad()`, `tplquad()` for multiple integrals
- Use `scipy.integrate.solve_ivp()` for ordinary differential equations
- Choose appropriate ODE method: 'RK45', 'BDF', 'LSODA'
- Provide Jacobian for stiff systems to improve performance

## scipy.signal - Signal Processing

- Use `scipy.signal.butter()`, `cheby1()`, `ellip()` for filter design
- Apply filters with `scipy.signal.filtfilt()` for zero-phase filtering
- Use `scipy.signal.welch()` for power spectral density estimation
- Use `scipy.signal.find_peaks()` for peak detection
- Leverage `scipy.signal.convolve()` and `correlate()` for convolution

## scipy.sparse - Sparse Matrices

- Use appropriate sparse format for your use case:
  - `csr_matrix` for efficient row slicing and matrix-vector products
  - `csc_matrix` for efficient column slicing
  - `coo_matrix` for constructing sparse matrices
  - `lil_matrix` for incremental construction
- Convert to optimal format before operations
- Use `scipy.sparse.linalg` solvers for sparse linear systems

## Performance Optimization

- Use appropriate data types (`float64` for precision, `float32` for memory)
- Leverage BLAS/LAPACK through SciPy for optimized linear algebra
- Pre-allocate arrays when possible
- Use in-place operations when available

## Error Handling and Validation

- Check convergence status of optimization routines
- Validate numerical results for reasonableness
- Handle ill-conditioned problems gracefully
- Use appropriate tolerances for convergence criteria

## Testing Scientific Code

- Test against known analytical solutions
- Use `np.testing.assert_allclose()` for numerical comparisons
- Test edge cases and boundary conditions
- Verify conservation laws and invariants

## Key Conventions

- Import specific submodules: `from scipy import optimize, stats, linalg`
- Use `snake_case` for variables and functions
- Document algorithm choices and parameters
- Include convergence diagnostics in output

© Mindrally · Apache-2.0 · Mindrally/skills

Похожие скиллы

Всё по теме «Наука и исследования» →
scientific-toolkit-skill zLanqing Скилл для расчётов и обработки данных: MATLAB/Octave, научный Python, графики для статей. Пригодится, когда надо посчитать, построить спектр или проверить формулу. CX Codex +1 816установок statistics-math pluginagentmarketplace Скилл для ИИ-кодинга: даёт агенту статистику, теорию вероятностей, линейную алгебру и регрессию на Python. Пригодится, когда нужно посчитать метрики или проверить гипотезу. CX Codex +1 432установок symbolic-equation lingzhi227 Подбирает физические формулы по наборам данных с помощью эволюционного поиска и языковых моделей. Пригодится для символьной регрессии и поиска законов в экспериментах. CX Codex +1 1 600установок correlation-analysis agiprolabs Считает корреляции между активами: скользящие окна, кластеризация, хвостовая зависимость. Нужен для оценки диверсификации и парного трейдинга. CX Codex +1 464установок openpiv K-Dense-AI Скилл для измерения полей скоростей жидкости из пар снимков частиц. Обрабатывает корреляцию окон, валидацию векторов, расчёт вихря и турбулентности — нужен для анализа экспериментов по визуализации потоков. CX Codex +1 943установок matplotlib tondevrel Скилл учит агента строить графики на matplotlib: от простых линий до тепловых карт и многопанельных фигур. Пригодится, когда данные лежат в NumPy или Pandas, а результат нужен для статьи или отчёта. CX Codex +1 374установок

Из того же набора168

ux-design Скилл задаёт агенту правила UX-проектирования: от исследования пользователей до доступности и адаптивной вёрстки. Пригодится, когда проектируешь или проверяешь интерфейс. CX Codex +1 1 100установок analytics-data-analysis Задаёт агенту правила работы с pandas, matplotlib и seaborn: как чистить датасет, строить графики и оформлять Jupyter-ноутбук. CX Codex +1 1 100установок rabbitmq-development Набор правил для ИИ-агента: как проектировать обменники, очереди и потребителей RabbitMQ без типичных ошибок. CX Codex +1 1 100установок nextauth-authentication Скилл учит агента внедрять аутентификацию через NextAuth.js (Auth.js v5) в Next.js. Помогает настроить сессии, роуты и защиту страниц. CX Codex +1 1 100установок kubernetes Задаёт агенту правила работы с Kubernetes, Helm, Ansible и CI/CD. Пригодится, когда манифесты и пайплайны пишет ИИ, а не человек. CX Codex +1 1 000установок quarkus Скилл задаёт агенту правила кода на Quarkus: Jakarta EE, MicroProfile, нативные сборки GraalVM и реактивные паттерны. CX Codex +1 1 000установок prisma Правила проектирования схем Prisma ORM, изоляции тестов и типобезопасных запросов. Помогает выстроить слой репозиториев в TypeScript. CX Codex +1 1 000установок matplotlib-best-practices Скилл задаёт агенту правила работы с Matplotlib: типы графиков, подписи осей, палитры для дальтоников, экспорт в PDF и PNG. CX Codex +1 1 000установок

Спонсоры проекта

Компании, которые помогают держать аналитику открытой