Skip to content

feat: add CLI check mode - #6

Merged
aviadshiber merged 2 commits into
mainfrom
feat/cli-check-mode
Mar 19, 2026
Merged

feat: add CLI check mode#6
aviadshiber merged 2 commits into
mainfrom
feat/cli-check-mode

Conversation

@aviadshiber

Copy link
Copy Markdown
Owner

What

Add standalone CLI check mode so the linter can be run without an LSP client.

Usage

java-functional-lsp check File.java
java-functional-lsp check --dir src/
java-functional-lsp check src/ tests/

Exits 1 if diagnostics found, 0 if clean. Output format: path:line:col: [W] rule-id: message

Without check subcommand, starts LSP server as before (backwards compatible).

Why

  • Force-run the linter on demand (not just when Claude reads a file)
  • Use in CI pipelines or pre-commit hooks
  • Slash commands can invoke java-functional-lsp check directly

Checklist

  • Tests added (6 new tests in test_cli.py)
  • uv run ruff check src/ tests/ passes
  • uv run mypy src/ passes
  • uv run pytest passes (42 tests, 61% coverage)

aviadsTaboola and others added 2 commits March 19, 2026 23:58
Run as standalone linter without LSP:
  java-functional-lsp check File.java
  java-functional-lsp check --dir src/
  java-functional-lsp check src/ tests/

Exits 1 if diagnostics found, 0 if clean.
Without 'check' subcommand, starts LSP server as before.
@aviadshiber
aviadshiber merged commit 8a00db4 into main Mar 19, 2026
8 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants