Part 1 of Goose lang and Flisk.sh 101.
This series is a laptop tutorial. Part 2 and 3 are the Goose programming language. Part 4 is flisk.sh. Part 5 puts both in one folder and stops before the lie.
| You typed | What it is | In this series |
|---|---|---|
goose hello.goose |
Wouter van Oortmerssen's compiler. It emits C. No heap, no GC. | Parts 2 and 3 |
goose configure |
The AAIF AI agent. Desktop, CLI, recipes. | Not this series |
goose up |
pressly/goose, the database migrator. | Not this series |
If goose --version talks about providers, you installed the agent. The language compiler's first useful command is goose hello.goose or goose build hello.goose. Check which goose before part 2 and do not put the agent and the compiler on the same PATH entry.
Flisk starts services on your machine. You describe one in service.json. flisk up writes Docker and Tilt files and starts that stack. It is not a deploy tool. Production stays on Helm, Argo CD, or Kustomize.
Backend languages you can pass today:
--language |
What you get |
|---|---|
| omitted | Bun and Hono |
python |
FastAPI |
go |
net/http |
rust |
axum |
node |
node:http |
goose |
the CLI should fail before it writes files |
A generated backend answers GET /health, reads PORT, and binds every interface. A Goose program from the language tutorial prints a line and exits. Those are not the same process. Part 5 is where that matters. Do not skip there and invent a flag.
flisk up. flisk doctor --no-ping does not need them.goose build. Linux also needs libc headers ( libc6-dev or glibc-devel). macOS needs the Xcode command line tools. In-process goose file.goose needs those headers too, but not a separate compile of your program.
After part 4's install, this is the negative test:
flisk resource orders-api --type backend --language goose --stack shop
Expect a failure and an empty directory. If a future Flisk version accepts goose, stop this series and read that version's provider guide. Do not keep a tutorial that contradicts --help.
shop/
hello.goose # part 2, host only
total.goose # part 3, host only
services/shop/orders-api/ # part 4, Flisk owns this tree
You own hello.goose and service.json. Flisk owns .autogenerated/. An editor, human or agent, does not "fix" a generated Dockerfile to make Goose look like a backend.
Next: install the compiler and print one line.