@isl-lang/cli
Advanced tools
Sorry, the diff of this file is too big to display
Sorry, the diff of this file is too big to display
| #!/usr/bin/env node |
| #!/usr/bin/env node |
Sorry, the diff of this file is too big to display
Sorry, the diff of this file is too big to display
+21
| MIT License | ||
| Copyright (c) 2024 ISL Lang | ||
| Permission is hereby granted, free of charge, to any person obtaining a copy | ||
| of this software and associated documentation files (the "Software"), to deal | ||
| in the Software without restriction, including without limitation the rights | ||
| to use, copy, modify, merge, publish, distribute, sublicense, and/or sell | ||
| copies of the Software, and to permit persons to whom the Software is | ||
| furnished to do so, subject to the following conditions: | ||
| The above copyright notice and this permission notice shall be included in all | ||
| copies or substantial portions of the Software. | ||
| THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR | ||
| IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, | ||
| FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE | ||
| AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER | ||
| LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, | ||
| OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE | ||
| SOFTWARE. |
+161
| # @isl-lang/cli | ||
| Command-line interface for ISL (Intent Specification Language). | ||
| ## Installation | ||
| ```bash | ||
| # Global installation (recommended) | ||
| npm install -g @isl-lang/cli | ||
| # Or use npx | ||
| npx @isl-lang/cli <command> | ||
| ``` | ||
| ## Quick Start | ||
| ```bash | ||
| # Initialize a new ISL project | ||
| isl init my-project | ||
| # Parse and validate ISL files | ||
| isl check specs/*.isl | ||
| # Generate code | ||
| isl generate --target typescript specs/ | ||
| # Start the REPL | ||
| isl repl | ||
| # Get help | ||
| isl --help | ||
| ``` | ||
| ## Commands | ||
| ### `isl init [name]` | ||
| Initialize a new ISL project with recommended structure. | ||
| ```bash | ||
| 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. | ||
| ```bash | ||
| 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. | ||
| ```bash | ||
| # Generate TypeScript | ||
| isl generate --target typescript specs/ | ||
| # Generate Python | ||
| isl generate --target python --output src/generated specs/ | ||
| # Generate OpenAPI | ||
| 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. | ||
| ```bash | ||
| isl verify specs/critical-flow.isl | ||
| ``` | ||
| ### `isl repl` | ||
| Start an interactive REPL for exploring ISL. | ||
| ```bash | ||
| isl repl | ||
| ``` | ||
| ### `isl format <files...>` | ||
| Format ISL files. | ||
| ```bash | ||
| isl format specs/*.isl --write | ||
| ``` | ||
| ### `isl lsp` | ||
| Start the Language Server Protocol server. | ||
| ```bash | ||
| isl lsp --stdio | ||
| ``` | ||
| ## Configuration | ||
| Create `isl.config.yaml` in your project root: | ||
| ```yaml | ||
| version: 1 | ||
| # Default generation target | ||
| target: typescript | ||
| # Output directory | ||
| output: ./generated | ||
| # Include paths for imports | ||
| include: | ||
| - ./specs | ||
| - ./node_modules/@company/shared-specs | ||
| # Generation options | ||
| 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 | ||
| - [@isl-lang/parser](https://npm.im/@isl-lang/parser) - ISL parser | ||
| - [@isl-lang/codegen](https://npm.im/@isl-lang/codegen) - Code generators | ||
| - [@isl-lang/repl](https://npm.im/@isl-lang/repl) - Interactive REPL | ||
| ## License | ||
| MIT |
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
| # ISL Configuration | ||
| # Documentation: https://intentos.dev/docs/config | ||
| version: "1.0" | ||
| name: {{name}} | ||
| # ISL source files | ||
| include: | ||
| - src/**/*.isl | ||
| # Files to exclude | ||
| exclude: | ||
| - node_modules/** | ||
| - dist/** | ||
| - generated/** | ||
| # Output configuration | ||
| output: | ||
| dir: ./generated | ||
| types: true | ||
| tests: true | ||
| docs: false | ||
| # AI generation settings | ||
| ai: | ||
| model: claude-sonnet-4-20250514 | ||
| apiKey: ${ANTHROPIC_API_KEY} | ||
| # Verification settings | ||
| verify: | ||
| timeout: 30000 | ||
| minTrustScore: 70 |
Sorry, the diff of this file is not supported yet
+69
-7
| { | ||
| "name": "@isl-lang/cli", | ||
| "version": "0.0.1", | ||
| "description": "ISL (Intent Specification Language) - CLI tool", | ||
| "main": "index.js", | ||
| "keywords": ["isl", "intent-specification-language", "cli"], | ||
| "author": "guardiavault-oss", | ||
| "version": "0.1.0", | ||
| "description": "Command-line interface for ISL (Intent Specification Language)", | ||
| "author": "ISL Team", | ||
| "license": "MIT", | ||
| "repository": { | ||
| "type": "git", | ||
| "url": "git+https://github.com/guardiavault-oss/ISL-LANG.git" | ||
| "url": "https://github.com/isl-lang/isl.git", | ||
| "directory": "packages/cli" | ||
| }, | ||
| "homepage": "https://github.com/guardiavault-oss/ISL-LANG" | ||
| "homepage": "https://isl-lang.dev/docs/cli", | ||
| "bugs": { | ||
| "url": "https://github.com/isl-lang/isl/issues" | ||
| }, | ||
| "keywords": [ | ||
| "isl", | ||
| "intent-specification-language", | ||
| "cli", | ||
| "ai", | ||
| "verification", | ||
| "code-generation" | ||
| ], | ||
| "engines": { | ||
| "node": ">=18.0.0" | ||
| }, | ||
| "type": "module", | ||
| "bin": { | ||
| "isl": "./dist/index.js" | ||
| }, | ||
| "main": "./dist/index.cjs", | ||
| "module": "./dist/index.js", | ||
| "types": "./dist/index.d.ts", | ||
| "exports": { | ||
| ".": { | ||
| "types": "./dist/index.d.ts", | ||
| "import": "./dist/index.js", | ||
| "require": "./dist/index.cjs" | ||
| } | ||
| }, | ||
| "files": [ | ||
| "dist", | ||
| "templates", | ||
| "README.md", | ||
| "LICENSE" | ||
| ], | ||
| "scripts": { | ||
| "build": "tsup", | ||
| "dev": "tsup --watch", | ||
| "test": "vitest run", | ||
| "test:watch": "vitest", | ||
| "test:coverage": "vitest run --coverage", | ||
| "lint": "eslint src --ext .ts", | ||
| "typecheck": "tsc --noEmit", | ||
| "clean": "rimraf dist", | ||
| "prepublishOnly": "pnpm run build" | ||
| }, | ||
| "dependencies": { | ||
| "@isl-lang/parser": "workspace:*", | ||
| "@isl-lang/typechecker": "workspace:*", | ||
| "@isl-lang/evaluator": "workspace:*", | ||
| "@isl-lang/repl": "workspace:*", | ||
| "chalk": "^5.3.0", | ||
| "commander": "^12.0.0", | ||
| "ora": "^8.0.1", | ||
| "yaml": "^2.3.4", | ||
| "glob": "^10.3.10" | ||
| }, | ||
| "devDependencies": { | ||
| "@types/node": "^25.1.0", | ||
| "rimraf": "^5.0.5", | ||
| "tsup": "^8.0.1", | ||
| "typescript": "^5.3.3", | ||
| "vitest": "^1.2.0" | ||
| } | ||
| } |
-4
| // @isl-lang/cli - Placeholder package | ||
| // Full implementation coming soon | ||
| // See: https://github.com/guardiavault-oss/ISL-LANG | ||
| console.log('ISL CLI - coming soon'); |
Major refactor
Supply chain riskPackage has recently undergone a major refactor. It may be unstable or indicate significant internal changes. Use caution when updating to versions that include significant changes.
Found 1 instance in 1 package
Environment variable access
Supply chain riskPackage accesses environment variables, which may be a sign of credential stuffing or data theft.
Found 8 instances in 1 package
Filesystem access
Supply chain riskAccesses the file system, and could potentially read sensitive data.
Found 1 instance in 1 package
Long strings
Supply chain riskContains long string literals, which may be a sign of obfuscated or packed code.
Found 1 instance in 1 package
No website
QualityPackage does not have a website.
Found 1 instance in 1 package
URL strings
Supply chain riskPackage contains fragments of external URLs or IP addresses, which the package may be accessing at runtime.
Found 1 instance in 1 package
No README
QualityPackage does not have a README. This may indicate a failed publish or a low quality package.
Found 1 instance in 1 package
Trivial Package
Supply chain riskPackages less than 10 lines of code are easily copied into your own project and may not warrant the additional supply chain risk of an external dependency.
Found 1 instance in 1 package
No bug tracker
MaintenancePackage does not have a linked bug tracker in package.json.
Found 1 instance in 1 package
No website
QualityPackage does not have a website.
Found 1 instance in 1 package
966736
158641.54%13
550%7385
184525%0
-100%162
Infinity%Yes
NaN9
Infinity%5
Infinity%23
Infinity%+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added