create-tally-rule

Generates scaffolded Kotlin code and tests for linting rules targeting Dockerfiles and other artifacts, automating common developer workflows.

8|3|Updated Jan 25, 2026
One-click install
npx skills add https://github.com/wharflab/tally --skill create-tally-rule
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: create-tally-rule
Source: https://github.com/wharflab/tally/tree/main/.claude/skills/create-tally-rule
Command: npx skills add https://github.com/wharflab/tally --skill create-tally-rule

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

This Skill automates the creation of new, custom linting rules for Dockerfiles within the tally project, streamlining the development of container image best practices.

Core Features & Use Cases

  • End-to-End Rule Implementation: Guides users through defining rule logic, detection, testing, and documentation.
  • BuildKit-Native Integration: Ensures new rules are compatible with modern Dockerfile syntax and BuildKit features.
  • Use Case: A developer identifies a common anti-pattern in Dockerfiles related to caching and wants to create a new tally/* rule to enforce a better practice. They use this Skill to generate the rule code, tests, and documentation.

Quick Start

Implement a new custom tally rule to detect and prevent the use of the latest tag in FROM instructions.

Frequently Asked Questions about create-tally-rule

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I create custom linting rules for Dockerfiles?

Creating custom Dockerfile linting rules is automated by generating rule code, detection logic, unit tests, fixture data, and documentation together. This ensures new containerfile static analysis checks are fully implemented end-to-end.

How do I add a rule to detect anti-patterns in BuildKit Dockerfile syntax?

To detect anti-patterns in BuildKit syntax, define detection logic that parses modern Dockerfile instructions. The rule implementation process ensures compatibility with BuildKit features while generating the necessary snapshots and unit tests to validate behavior.

What is included when implementing a new Dockerfile static analysis check?

A new Dockerfile static analysis check includes the rule code, detection logic, unit tests, fixture data, snapshots, and documentation. This end-to-end implementation ensures the linting rule is fully functional and tested within the project.

Do I need to write unit tests manually for new Dockerfile lint rules?

No, unit tests are generated automatically alongside the rule code and fixture data. The automation guides the entire workflow, ensuring the new linting rule has the necessary tests and snapshots created without manual boilerplate.

Can I use this to enforce container image best practices for caching in Dockerfiles?

Yes, you can enforce container image best practices like caching by defining a custom rule. The automation handles creating the detection logic and tests needed to identify the anti-pattern and enforce the desired practice.