Notre avis
Ce skill assiste le développement et la vérification de modifications de l'interface de fonction étrangère (FFI) de TVM.
Points forts
- Intègre un workflow complet : compréhension, implémentation, construction et test.
- Impose des conventions de code strictes pour C++ et Python, améliorant la qualité.
- Automatise la reproductibilité en écrivant et exécutant des scripts de test.
- Facilite la gestion des issues GitHub via une commande spécifique.
Limites
- Nécessite une connaissance préalable de TVM et de sa FFI.
- Dépend de l'environnement de construction et de test TVM (/tvm-ffi-build, /tvm-ffi-test).
- Peut ne pas couvrir tous les cas de test non décrits dans les instructions.
Utilisez ce skill lorsque vous devez implémenter ou corriger une fonctionnalité de la FFI de TVM, depuis la reproduction d'un bug jusqu'à la validation.
Évitez ce skill pour des tâches génériques de développement TVM qui n'impliquent pas la FFI, ou si vous ne maîtrisez pas les conventions de code spécifiées.
Analyse de sécurité
PrudenceThe skill involves executing Python scripts and build/test commands, which could potentially run malicious code if given untrusted issue descriptions. The operations are legitimate for development but are powerful, warranting caution.
- •Runs Python repro scripts and build/test commands, which could execute arbitrary code. This is typical for a development workflow but requires caution.
Exemples
/tvm-ffi-dev https://github.com/apache/tvm/issues/12345/tvm-ffi-dev Add a new FFI function to access tensor data via std::expected/tvm-ffi-devname: tvm-ffi-dev description: Develop and verify TVM FFI changes.
TVM FFI Dev
Usage
/tvm-ffi-dev # auto-run: pick next item or continue current work
/tvm-ffi-dev <GitHub issue URL>
/tvm-ffi-dev <text description>
Instructions
-
Understand the task:
- If given a GitHub issue URL, fetch with
gh issue view <URL> - Write a minimal Python repro script and run it to confirm the error. If it can't be reproduced, stop and report.
- If given text, use that as the requirement
- If given a GitHub issue URL, fetch with
-
Follow
/dev-autodevloop with these project-specific details:- If fixing an issue: Re-run the repro script to verify it passes, then delete it.
- Verify: Use
/tvm-ffi-build, then/tvm-ffi-test.
Code style
- C++: prefer
std::string_view,static_cast, STL algorithms over manual loops - C++: add move-qualified overloads (
&&) for accessors returning owned values - C++: align new APIs with C++ std equivalents (e.g.
std::expected,std::unexpected), list deviations explicitly - C++: use
std::moveon optionals (*std::move(val)), avoid double checking - C++: fast path first (value before error), minimize branches
- C++: ban implicit conversions for error types, use explicit constructors (e.g.
Unexpected(Error(...))) - Python: reuse stdlib types (e.g.
dataclasses.KW_ONLY) instead of redefining - Tests: call actual registered FFI functions, not reimplement logic
- Tests: use
ASSERT_TRUEfor null checks before dereferencing - Tests: no duplicate assertions, remove redundant checks
- Extract duplicated logic into helpers
- New user-facing APIs need documentation with usage examples
- Preserve original error info on rethrow, not generic messages
Expert Next.js App Router
Developpement
Un skill qui transforme Claude en expert Next.js App Router.
Générateur de README
Developpement
Crée des README.md professionnels et complets pour vos projets.
Rédacteur de Documentation API
Developpement
Génère de la documentation API complète au format OpenAPI/Swagger.