Notre avis
Cette compétence fournit des commandes de build, test, lint et exécution pour l'application Shizuku via le système Task, en remplacement des commandes Go directes.
Points forts
- Standardise les commandes de build et de test pour l'équipe et le CI
- Évite les erreurs en interdisant les commandes Go directes
- Permet de passer facilement des arguments aux sous-commandes
- S'intègre dans un workflow de développement clair
Limites
- Nécessite l'installation préalable de Task (taskfile.dev)
- Spécifique au projet Shizuku, non réutilisable tel quel
- Ne couvre pas les options avancées de compilation Go (ldflags, tags, etc.)
Utilisez cette compétence à chaque fois que vous devez compiler, exécuter, formater ou tester l'application Shizuku.
N'utilisez pas cette compétence si vous avez besoin d'options de compilation Go personnalisées non supportées par Task, ou si vous travaillez en dehors du projet Shizuku.
Analyse de sécurité
SûrThe skill instructs using the Task build runner instead of raw Go commands, which are standard development operations (build, test, lint, run). There are no destructive, exfiltrating, or obfuscated actions. No elevated privileges or network requests are initiated.
Aucun point d'attention détecté
Exemples
Build the shizuku binary using task build.Run the shizuku application with the sync argument: task run -- syncRun tests for the internal/shizukuconfig package: task test -- ./internal/shizukuconfigname: task description: Build, test, lint, or run the shizuku application. ALWAYS use this skill instead of invoking Go commands or out/shizuku directly.
Shizuku Task Runner
This project uses Task (taskfile.dev) as its build system. You MUST always use task commands instead of invoking Go commands directly.
Critical Rule
NEVER run these commands directly:
go buildgo rungo fmtgo test
ALWAYS use the corresponding task commands below.
Available Commands
Build
Compiles the shizuku binary to out/shizuku.
task build
What it does: Runs go build -o out/shizuku cmd/main.go
Run
Runs the application with arguments.
task run -- <args>
Examples:
task run -- init
task run -- sync
task run -- sync --verbose
task run -- --help
What it does: Runs go run cmd/main.go with the provided arguments
Lint
Formats all Go code in the project.
task lint
What it does: Runs go fmt ./... across the codebase
Test
Runs all tests or specific tests with optional arguments.
# Run all tests
task test
# Run tests for a specific package
task test -- ./internal/shizukuconfig
# Run a specific test
task test -- -run TestLoadConfig ./internal/shizukuconfig
# Run tests with verbose output
task test -- -v ./...
What it does: Runs go test with the provided arguments (defaults to ./...)
Usage Pattern
When you need to:
- Build the binary → Use
task build - Run the app → Use
task run -- <args> - Format code → Use
task lint - Run tests → Use
task test(with optional-- <args>)
Why Use Task?
- Source tracking - Task watches Go source files and only rebuilds when needed
- Consistency - All developers and CI use the same commands
- Simplicity - Single entry point for all build operations
- Project standard - This is the established pattern for this codebase
Passing Arguments
When passing arguments to task run or task test, always use the -- separator:
task run -- arg1 arg2 # Correct
task run arg1 arg2 # Wrong - task will interpret these as task flags
task test -- -v ./... # Correct
task test -v ./... # Wrong
Integration with Development Workflow
- After creating or modifying code, run
task lintto format - Run
task testto ensure tests pass - Run
task buildto compile the binary - Run
task run -- syncto test the built functionality
Automatic Invocation
This skill should be invoked automatically whenever:
- You're about to build the project
- You're about to run the application
- You're about to format code
- You're about to run tests
Always default to task commands. If you catch yourself about to use go build, go run, go fmt, or go test, STOP and use the appropriate task command instead.
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.