stty -f dev://ccpty0 scrollback
[system] Welcome, alice.

[system] sek 0.1.0

New here?  cat HELLO_WORLD for a tour of the system.

[system] sek 0.1.0
device: ccpty0
user: alice
shell: /bin/sh

[assistant] cat HELLO_WORLD

[user] sek is a small UNIX-like shell environment.

What you type is run as a command.

[assistant] whoami

[user] alice

[assistant] pwd

[user] /home/alice

[user] 

[user] alice@sek:~$ 
[assistant] ls -l

[user] HELLO_WORLD

[user] alice@sek:~$ 
[assistant] cat HELLO_WORLD
<|python_tag|>

[user] Welcome to sek!

sek is a virtual *NIX micro-kernel.

You are viewing this file from within a POSIX-adjacent shell.

What you type is run as a command.

The prompt shows your user, host, and current directory and is configureable via
PS1.

Common commands:

  ls          list files in the current directory
  cat FILE    print a file's contents
  cd PATH     change directory
  pwd         show current directory
  echo TEXT   print text
  man CMD     read the manual for a command

Tools you might reach for:

  printf             formatted output
  grep               search text
  head, tail         show the start or end of a file
  touch, rm, mkdir   create and remove files and directories

That's the floor.  Everything else is discoverable by running
commands and reading errors.

HINT: should you hit a standalone '>' prompt, there is an unclosed quotation
      lingering somewhere.

HINT: You can discover more commands by exploring the directories listed under
      the PATH environment variable.

[user] sh: <: not found

[user] alice@sek:~$ 
[assistant] man cat

[user] NAME
    cat — concatenate and print files.

DESCRIPTION
    With no arguments, copies stdin to stdout.

OPTIONS
    usage: cat [-h] [files ...]

      files
            Files to print.


EXAMPLE
    Print a file::

        cat /etc/passwd

    Read from stdin::

        cat

EXIT STATUS
    0
        Success.
    1
        One or more files not found.

[user] alice@sek:~$ 
[assistant] cat HELLO_WORLD | grep "UNIX"

[user] alice@sek:~$ 
[assistant] ls -l

[user] HELLO_WORLD

[user] alice@sek:~$ 
[assistant] cat HELLO_WORLD | less

[user] sh: less: not found

[user] alice@sek:~$ 
[assistant] echo "less is not installed"

[user] less is not installed

[user] alice@sek:~$ 
[assistant] which less

[user] which: less: not found

[user] alice@sek:~$ 
[assistant] ls /bin

[user] [

[user] basename

[user] cat

[user] ccmini

[user] chmod

[user] chown

[user] cp

[user] cut

[user] date

[user] dirname

[user] dmesg

[user] echo

[user] env

[user] expr

[user] false

[user] fsck

[user] getty

[user] grep

[user] halt

[user] head

[user] hello_world

[user] id

[user] init

[user] installer

[user] kill

[user] logger

[user] login

[user] ls

[user] man

[user] mesg

[user] mkdir

[user] mkfs

[user] mount

[user] mv

[user] passwd

[user] printf

[user] ps

[user] pwd

[user] rm

[user] rmdir

[user] seq

[user] sh

[user] sleep

[user] sort

[user] stty

[user] su

[user] tail

[user] tee

[user] test

[user] todo

[user] todosh

[user] touch

[user] true

[user] umount

[user] uniq

[user] useradd

[user] wc

[user] which

[user] whoami

[user] write

[user] alice@sek:~$ 
[assistant] ls /bin | grep less

[user] alice@sek:~$ 
[assistant] cd /bin
ls

[user] [

[user] basename

[user] cat

[user] ccmini

[user] chmod

[user] chown

[user] cp

[user] cut

[user] date

[user] dirname

[user] dmesg

[user] echo

[user] env

[user] expr

[user] false

[user] fsck

[user] getty

[user] grep

[user] halt

[user] head

[user] hello_world

[user] id

[user] init

[user] installer

[user] kill

[user] logger

[user] login

[user] ls

[user] man

[user] mesg

[user] mkdir

[user] mkfs

[user] mount

[user] mv

[user] passwd

[user] printf

[user] ps

[user] pwd

[user] rm

[user] rmdir

[user] seq

[user] sh

[user] sleep

[user] sort

[user] stty

[user] su

[user] tail

[user] tee

[user] test

[user] todo

[user] todosh

[user] touch

[user] true

[user] umount

[user] uniq

[user] useradd

[user] wc

[user] which

[user] whoami

[user] write

[user] alice@sek:/bin$ 
[assistant] ls less

[user] ls: less: not found

[user] alice@sek:/bin$ 
[assistant] install less /bin/less

[user] sh: install: not found

[user] alice@sek:/bin$ 
[assistant] which install

[user] which: install: not found

[user] alice@sek:/bin$ 
[assistant] ls | grep "i"

[user] ccmini

[user] dirname

[user] id

[user] init

[user] installer

[user] kill

[user] login

[user] mkdir

[user] printf

[user] rmdir

[user] tail

[user] uniq

[user] which

[user] whoami

[user] write

[user] alice@sek:/bin$ 
[assistant] installer

[user] usage: installer <device> [target]

[user] alice@sek:/bin$ 
[assistant] ls -l /home/alice

[user] HELLO_WORLD

[user] alice@sek:/bin$ 
[assistant] cat /home/alice/HELLO_WORLD | less

[user] sh: less: not found

[user] alice@sek:/bin$ 
[assistant] installer /dev/ccpty0 /home/alice

[user] installer: device does not support host_root

[user] alice@sek:/bin$ 
[assistant] ls -l

[user] [

[user] basename

[user] cat

[user] ccmini

[user] chmod

[user] chown

[user] cp

[user] cut

[user] date

[user] dirname

[user] dmesg

[user] echo

[user] env

[user] expr

[user] false

[user] fsck

[user] getty

[user] grep

[user] halt

[user] head

[user] hello_world

[user] id

[user] init

[user] installer

[user] kill

[user] logger

[user] login

[user] ls

[user] man

[user] mesg

[user] mkdir

[user] mkfs

[user] mount

[user] mv

[user] passwd

[user] printf

[user] ps

[user] pwd

[user] rm

[user] rmdir

[user] seq

[user] sh

[user] sleep

[user] sort

[user] stty

[user] su

[user] tail

[user] tee

[user] test

[user] todo

[user] todosh

[user] touch

[user] true

[user] umount

[user] uniq

[user] useradd

[user] wc

[user] which

[user] whoami

[user] write

[user] alice@sek:/bin$ 
[assistant] cd ..
ls

[user] bin

[user] etc

[user] home

[user] root

[user] tmp

[user] var

[user] alice@sek:/$ 
[assistant] cd home
ls -l

[user] alice

[user] alice@sek:/home$ 
[assistant] cd alice
ls

[user] HELLO_WORLD

[user] alice@sek:~$ 
[assistant] cat HELLO_WORLD | grep sek

[user] Welcome to sek!

[user] sek is a virtual *NIX micro-kernel.

[user] alice@sek:~$ 
[assistant] Congratulations, you've looped back to the beginning!

It was fun exploring the sek environment with you! Would you like to play again or try something different?

[user] sh: syntax error: No closing quotation

[user] alice@sek:~$ 
[assistant] looks like there's an unclosed quote lingering somewhere...

cat HELLO_WORLD

[user] sh: syntax error: No closing quotation

[user] alice@sek:~$ 
[assistant] man quotes

[user] man: quotes: not found

[user] alice@sek:~$ 
[assistant] echo "You forgot a quote mark"

[user] You forgot a quote mark

[user] alice@sek:~$ 
[assistant] echo 'You forgot a quote mark'

[user] You forgot a quote mark

[user] alice@sek:~$ 
[assistant] exit

root@sek:~# 