AssumLS
Language server + CLI checker for enforcing documented assumptions across a codebase.
Quick Start
Define assumptions in ASSUM.md:
Services assume stable network connectivity (this text displays on hover).
Reference in any code under the same directory:
// @ASSUME:network_available
async
Check for violations:
How It Works
- Definitions:
# assumption_namein anyASSUM.md - References:
@ASSUME:assumption_namein any language (in comments) - Scoping: Files use nearest parent
ASSUM.md - Validation: Flags undefined refs, unused defs, duplicates
- Require
fdandrgon PATH
LSP Features
- Hover: Display body of assumption definition
- Completion: Suggest valid assumptions
- Go-to-def / Find refs: Navigate assumptions
- Rename: Update everywhere
- Diagnostics: Real-time error checking
local
CLI
Installation
# Or, if you have cargo-binstall:
Or, grab one from Releases.
Development
[!NOTE]
This project is currently largely generated by coding agents and the author has yet to manually inspect all code.
- Install Rust
- Install
pre-commitand runpre-commit install
Examples
See src/ (this project itself) and test directories under test_data/.
License
MIT or Apache-2.0, per Cargo.toml.