← Back to Skills Marketplace
charlie-morrison

Dockerignore Linter

by charlie-morrison · GitHub ↗ · v1.0.0 · MIT-0
cross-platform ✓ Security Clean
94
Downloads
0
Stars
0
Active Installs
1
Versions
Install in OpenClaw
/install dockerignore-linter
Description
Lint, validate, and audit .dockerignore files for syntax issues, security risks, missing patterns, and optimization opportunities. Use when asked to lint, va...
README (SKILL.md)

Dockerignore Linter

Lint .dockerignore files for syntax issues, security risks, missing essential patterns, and optimization opportunities.

Commands

All commands use the bundled Python script at scripts/dockerignore_linter.py.

1. Lint a .dockerignore file

python3 scripts/dockerignore_linter.py lint \x3Cfile> [--strict] [--format text|json|markdown]

Run all validation rules.

2. Audit for security-sensitive files

python3 scripts/dockerignore_linter.py security \x3Cfile> [--format text|json|markdown]

Check if secrets, credentials, and sensitive files are properly excluded.

3. Suggest missing patterns

python3 scripts/dockerignore_linter.py suggest [--project-type node|python|go|rust|java|ruby|generic] [--format text|json]

Generate recommended .dockerignore patterns for a project type.

4. Analyze Docker build context

python3 scripts/dockerignore_linter.py context \x3Cdirectory> [--dockerignore \x3Cfile>] [--format text|json]

Show which files would be included in the Docker build context, with size breakdown.

Lint Rules (18 total)

Syntax (4 rules)

  1. empty-file — .dockerignore is empty
  2. invalid-pattern — Malformed glob pattern
  3. duplicate-pattern — Same pattern appears twice
  4. negation-conflict — Negation ! overrides a previous exclusion (likely unintended)

Security (6 rules)

  1. missing-env.env not excluded (may contain secrets)
  2. missing-secrets — Common secret files not excluded (*.pem, *.key, id_rsa, etc.)
  3. missing-git.git directory not excluded (exposes history + credentials)
  4. missing-credentials — Credential files not excluded (aws/credentials, .npmrc with tokens, etc.)
  5. missing-docker — Docker-related files not excluded (docker-compose*.yml, Dockerfile*)
  6. missing-ide — IDE config not excluded (.vscode, .idea, *.swp)

Optimization (4 rules)

  1. missing-deps — Dependency directories not excluded (node_modules, pycache, vendor, target)
  2. missing-build — Build output not excluded (dist, build, *.o, *.pyc)
  3. missing-logs — Log files not excluded (*.log, logs/)
  4. missing-test — Test data/coverage not excluded (coverage, .nyc_output, htmlcov)

Best Practices (4 rules)

  1. too-broad — Pattern is overly broad (e.g., * without specific negations)
  2. commented-pattern — Inline comment after pattern (not supported, treated as literal)
  3. trailing-space — Pattern has trailing whitespace
  4. readme-excluded — README/docs excluded (usually should be kept for reference)

Output Formats

Text, JSON, Markdown — same structure as other linters.

CI Integration

- name: Lint Dockerignore
  run: python3 scripts/dockerignore_linter.py lint .dockerignore --strict

Exit codes: 0 = clean, 1 = issues found.

Usage Guidance
This skill appears to do what it says: it runs a local, pure-Python linter that inspects .dockerignore files and (optionally) enumerates the build context. Before running it, review the script if you're concerned, and avoid running it against sensitive root directories — the context analysis will enumerate file names and sizes from the directory you point it at, which could reveal sensitive filenames (expected behavior for this tool).
Capability Analysis
Type: OpenClaw Skill Name: dockerignore-linter Version: 1.0.0 The skill is a legitimate utility for linting and auditing .dockerignore files. The core logic in `scripts/dockerignore_linter.py` performs syntax validation, security checks for sensitive files (like .env or .ssh), and build context size analysis using standard Python libraries. No evidence of data exfiltration, malicious execution, or prompt injection was found.
Capability Tags
cryptorequires-wallet
Capability Assessment
Purpose & Capability
Name/description match the included files and behavior: the SKILL.md directs use of the bundled Python script and the repository contains a stdlib-only linter that implements the listed rules and templates. No unrelated binaries, env vars, or cloud credentials are requested.
Instruction Scope
Runtime instructions are limited to running the included script (lint, security, suggest, context). The script parses .dockerignore and inspects directory contents for context/size analysis — this is expected for the stated functionality and does not instruct network exfiltration or reading unrelated system config beyond files in the project context.
Install Mechanism
No install spec; this is an instruction-only skill with bundled code. The script uses only Python stdlib (argparse, fnmatch, pathlib, etc.) so no external package downloads are required.
Credentials
No environment variables, credentials, or protected config paths are requested. The linter looks for common sensitive filenames/patterns in the project tree (e.g., .env, .aws) — appropriate for security checks.
Persistence & Privilege
The skill is not always-enabled and does not request any elevated platform privileges. It does not attempt to modify other skills or global agent configuration.
How to Use
  1. Make sure OpenClaw is installed (local or Docker)
  2. Run the install command in chat: /install dockerignore-linter
  3. After installation, invoke the skill by name or use /dockerignore-linter
  4. Provide required inputs per the skill's parameter spec and get structured output
Version History
v1.0.0
Initial release
Metadata
Slug dockerignore-linter
Version 1.0.0
License MIT-0
All-time Installs 0
Active Installs 0
Total Versions 1
Frequently Asked Questions

What is Dockerignore Linter?

Lint, validate, and audit .dockerignore files for syntax issues, security risks, missing patterns, and optimization opportunities. Use when asked to lint, va... It is an AI Agent Skill for Claude Code / OpenClaw, with 94 downloads so far.

How do I install Dockerignore Linter?

Run "/install dockerignore-linter" in the OpenClaw or Claude Code chat to install it in one step — no extra setup required.

Is Dockerignore Linter free?

Yes, Dockerignore Linter is completely free, licensed under MIT-0. You can download, install and use it at no cost.

Which platforms does Dockerignore Linter support?

Dockerignore Linter is cross-platform and runs anywhere OpenClaw / Claude Code is available (cross-platform).

Who created Dockerignore Linter?

It is built and maintained by charlie-morrison (@charlie-morrison); the current version is v1.0.0.

💬 Comments