@isl-lang/cli
Command-line interface for ISL (Intent Specification Language).
Installation
npm install -g @isl-lang/cli
npx @isl-lang/cli <command>
Quick Start
isl init my-project
isl check specs/*.isl
isl generate --target typescript specs/
isl repl
isl --help
Commands
isl init [name]
Initialize a new ISL project with recommended structure.
isl init my-api
cd my-api
Creates:
isl.config.yaml - Project configuration
specs/ - Directory for ISL specifications
generated/ - Output directory for generated code
isl check <files...>
Parse and type-check ISL files.
isl check specs/*.isl
isl check --strict specs/
Options:
--strict - Enable strict mode (all warnings become errors)
--format <format> - Output format (text, json, sarif)
isl generate <files...>
Generate code from ISL specifications.
isl generate --target typescript specs/
isl generate --target python --output src/generated specs/
isl generate --target openapi specs/api.isl
Options:
--target, -t - Target language (typescript, python, rust, go, openapi, graphql)
--output, -o - Output directory
--config, -c - Config file path
isl verify <files...>
Formally verify ISL specifications.
isl verify specs/critical-flow.isl
isl repl
Start an interactive REPL for exploring ISL.
isl repl
isl format <files...>
Format ISL files.
isl format specs/*.isl --write
isl lsp
Start the Language Server Protocol server.
isl lsp --stdio
Configuration
Create isl.config.yaml in your project root:
version: 1
target: typescript
output: ./generated
include:
- ./specs
- ./node_modules/@company/shared-specs
codegen:
typescript:
runtime: true
validators: true
python:
framework: fastapi
pydantic: v2
Environment Variables
ISL_CONFIG - Path to config file
ISL_DEBUG - Enable debug output
ISL_NO_COLOR - Disable colored output
Documentation
Full documentation: https://isl-lang.dev/docs/cli
Related Packages
License
MIT