# Command line: giving a tool a written instruction [Concepts explained](README.md) A **command-line interface**, or **CLI**, lets you control a tool by typing a command. A **terminal** is a window that shows this text conversation. A **shell**, such as PowerShell, reads your command and starts the requested tool. These terms describe different pieces. Pliro's CLI is the tool you call; PowerShell is not the Pliro language. ## Two kinds of commands In a terminal with Pliro installed and available, you can use: ```shell pliro version ``` To check a source file in the current folder: ```shell pliro check hello.pliro ``` The second command assumes `hello.pliro` exists. Use the actual filename of your program. These are shell commands, so do not paste them into a `.pliro` source file. Inside a Pliro source file, an instruction might instead be `say "Hello"`. A **REPL** lets you try language instructions interactively; the [REPL guide](../guides/repl.md) explains its own controls. ## Read before pressing Enter The **working directory** is the folder a command currently starts from when resolving relative paths. Check that folder when a tool says it cannot find a file. Only run commands you understand. Shell commands can have effects outside your Pliro project. Start with harmless commands such as showing the version or checking your own source. [File paths](file-paths.md) ยท [IDE](ide.md)