Skip to main content

Documentation Index

Fetch the complete documentation index at: https://tally.wharflab.com/llms.txt

Use this file to discover all available pages before exploring further.

tally supports five output formats so it fits into both terminals and automation pipelines. Select a format with --format or the format key in .tally.toml.

Output options

FlagDescription
--format, -fOutput format: text, json, sarif, github-actions, markdown
--output, -oOutput destination: stdout, stderr, or a file path
--no-colorDisable colored output (also respects the NO_COLOR env var)
--show-sourceShow source code snippets (default: true)
--hide-sourceHide source code snippets

Invocation-aware output

When you lint a Bake or Compose entrypoint, tally may run more than one invocation for the same Dockerfile. Output formats preserve that attribution:
FormatInvocation behavior
textGroups findings under labels such as [bake target: api] or [compose service: worker] and prints an invocation summary.
jsonAdds an invocation object to each orchestrator-derived violation and includes invocations_scanned.
sarifStores invocation metadata in each result’s properties.
github-actionsPrefixes annotation messages with the invocation label.
markdownAdds an Invocation column when invocation metadata is present.
See Build invocations for CLI examples and supported entrypoints.

text (default)

Human-readable output with colors and source code snippets. Best for local development.
tally lint Dockerfile
Example output:
WARNING: StageNameCasing - https://docs.docker.com/go/dockerfile/rule/stage-name-casing/
Stage name 'Builder' should be lowercase

Dockerfile:2
────────────────────
   1 │ FROM alpine
>>>2 │ FROM ubuntu AS Builder
   3 │ RUN echo "hello"
────────────────────

Source snippets

Source snippets are shown by default. Toggle them with flags:
# Hide source snippets (cleaner for long files)
tally lint --hide-source Dockerfile

# Explicitly show (useful when config sets show-source = false)
tally lint --show-source Dockerfile
In .tally.toml:
[output]
show-source = false