specsnl
- 11 skills
- 0 followers
- 4 hours ago last updated
- ▌ Create Pr · specsnlUse this skill whenever creating a pull request. Audits .github/workflows/ to understand what CI will run, checks the PR title format requirement, runs CI checks locally (via ci-green-check where available), then creates the PR with the correct title and body. Always invoke this instead of running gh pr create directly.
- ▌ PHP Images · specsnlUse this skill when working with Specsnl PHP Docker images. It covers what the images are, their repository structure and variants, which PHP versions are maintained, and how to locate sibling images both on GitHub and locally.
- ▌ Code Comments · specsnlUse this skill whenever writing or changing code in any language — implementing a feature, fixing a bug, refactoring, or scaffolding a file — to decide whether a comment is warranted at all before writing one. The default is no comment. Also triggers when the user says "too many comments", "stop adding comments", "this is too verbose", "should this be documented?", "add a docblock", "clean up the comments", or reviews a diff full of narration. Covers the short allowlist of warranted comments, the ban list (restating the code, duplicating one rationale across sites, section banners, redundant docblocks, diff/session narration, commented-out code), style rules, and a pre-finish sweep of the diff.
- ▌ PHP Checks · specsnlUse this skill to prepare the environment and run the PHP/Laravel quality tools of a Specs project locally — PHP_CodeSniffer, PHPStan/Larastan, PHPUnit, Rector and the markdown linter — all through the Taskfile. It is the PHP/Laravel layer of the `ci-green-check` skill, which invokes it whenever a repository has a `composer.json`; that skill owns check discovery, the fix loop, and the final report. Also triggers directly when the user says "run checkall", "run phpstan", "run phpcs" or "run the tests" in a Laravel/PHP repository.
- ▌ Linear Intake · specsnlUse this skill to convert raw client input (email, WhatsApp, verbal, or a Linear issue URL) into a properly structured Linear issue in Specs style. Provide the raw text or a Linear issue URL and this skill will draft a developer-ready ticket with IST/SOLL structure, acceptance criteria, and QA steps.
- ▌ CI Green Check · specsnlUse this skill after every code change in a repository to discover and run all CI checks locally before finishing work. Triggers automatically after completing any code edit, bug fix, refactor, or feature implementation. Also triggers when the user says "run the checks", "make sure everything is green", "verify the build", or "are the tests passing?". This skill reads .github/workflows and the Taskfile to discover what checks exist, runs everything that can be run locally (tests, linters, static analysis), attempts to auto-fix any failures, and reports checks that require cloud/secrets so the user is aware. For PHP/Laravel repositories it hands off the concrete commands to the `php-checks` skill. Never consider a task done until all locally runnable checks pass.
- ▌ Implement Issue · specsnlUse this skill whenever the user asks to read an issue and implement it — e.g. "read issue X (github or linear) and implement it", "implement this issue", "pick up GH-123 / ABC-456 and build it". Fetch the issue (GitHub via a GitHub MCP or the gh CLI, or Linear via the Linear MCP), create a new branch, implement the change committing incrementally with clear messages, and STOP before opening a PR. Only create a PR when the user explicitly asks — then defer to the create-pr skill.
- ▌ Fix Translations · specsnlUse this skill to find, fix, or translate source-language values in the Laravel translation files of a project — the PHP arrays under `lang/<locale>/` and the JSON catalogues `lang/<locale>.json`. Scans them for untranslated values, translates them to the target language, fixes errors and typos, commits the changes, and opens a PR. Laravel-specific: it preserves `|` plural syntax, `:placeholder` tokens and Blade fragments, and never translates array keys or JSON source keys.
- ▌ Executing Commands · specsnlREQUIRED: Execute this skill before running ANY project commands (composer, npm, php, docker, etc.). This ensures all commands run safely through the Taskfile. Do not run docker compose, npm, php, or composer directly on the host.
- ▌ Autofix Markdown Tables · specsnlUse this skill to automatically fix misaligned markdown tables in .md files. Triggers after editing any markdown file that contains a table, before finishing documentation work, or when the user says "fix the tables", "align the markdown tables", or "format the markdown". Runs markdown-table-formatter via the project's `md:fix-tables` task, or via Docker when the project has no Taskfile, so columns are properly padded and aligned. After running, always review the diff to confirm only formatting changed — no content should be altered.
- ▌ E2e Filament Multitenant · specsnlUse this skill to write, expand, or structure Playwright end-to-end tests for a Laravel + Filament (Spatie-permission) application, especially multi-tenant apps with several panels/roles. Triggers when the user says "add e2e tests", "cover all roles", "write Playwright tests for the panels", "test each role", "e2e coverage per role", or asks to set up Playwright against a Filament admin/tenant panel. It covers the per-role storageState auth model, shared helpers, a per-role coverage matrix (CRUD / state-machine workflows / permission boundaries / tenant isolation), a deterministic test-data strategy, the CI job recipe, and Filament-specific selector conventions. Use it before scaffolding e2e/ so the suite stays maintainable and the role/permission boundaries are actually asserted.