Status: Authoritative Specification Version: 2.0.0 Last Updated: 2026-07-15 Related Documents: 04 Compiler Architecture · 12 Stdlib · 14 Error Codes
The TechScript 2.0 command-line interface is distributed as a single compiled executable named tech.
| Command | Action | Compatibility |
|---|---|---|
tech run <file.txs> |
Executes a TechScript source file | Authoritative (accepts .txs) |
tech repl |
Starts the interactive REPL | Authoritative |
tech check <file.txs> |
Runs semantic checks without execution | Authoritative |
tech fmt <file.txs> |
Formats .txs source files |
Authoritative |
tech lint <file.txs> |
Lints source files, reporting warnings | Authoritative (supports --fix) |
tech test [dir] |
Discovers and runs tests matching *_test.txs |
Authoritative |
tech version |
Prints binary and compiler version info | Authoritative |
tech help [cmd] |
Prints CLI help details | Authoritative |
tech build <file.txs> |
Compiles source file to VM bytecode | Future (v2.1) |
tech new <name> |
Scaffolds a new project structure | Authoritative |
tech run <file.txs> [--verbose] [--debug-ast] [--timeout <secs>] [--max-stack <depth>]tech lint <file.txs|dir/> --fixAutomatically rewrites deprecated occurrences (like replacing fun with build inside models).
Discovers and executes files named *_test.txs containing test functions starting with test_.
- Frozen extension: The CLI refuses to execute files with non-
.txsextensions (e.g.,tech run file.techreturns exit code 4 - Invalid arguments). - Public API Continuity: Subcommands and flag interfaces are identical to Version 1 to prevent breaking CI/CD runner pipelines.
- To migrate a project:
- Rename all files from
.techto.txs. - Run:
This automatically resolves keyword deprecations.
tech lint src/ --fix
- Run the test suite:
tech test tests/
- Rename all files from
- Single Executable: Bundling parser, interpreter, formatter, and linter into a single
techbinary simplifies installation and eliminates Python dependency issues. - Auto-Fix capability: Including a
--fixoption in the linter provides a seamless migration path for legacy code.
- v2.1: The
tech buildcommand will compile.txscode to.txbbytecode files. - v3.0: The compiler will introduce
tech compileusing LLVM to output optimized native binaries directly.