Run `codeaf` inside a project. It opens the conversation that directory was last
having. Ask in ordinary language; the model can read and edit files, run commands,
search the web, remember useful context, and bring separate tasks back when they land.
This is the chat flow in a real terminal:
```text
codeaf $0.0010 / $500 · sun 7:32pm
Home [key lookup] × +
────────────────────────────────────────────────────────────────────────────────────────────────────
· esc interrupts · ctrl+c twice quits · ? for help
› read ./apikey.go and tell me in two lines where codeaf looks for an API key
▾ worked 3.2s · thought 0.6s · 1 tool call · ctrl+e
▸ read apikey.go 1 call
In Load's order (from `apiKeyFrom`/`APIKeyAt`): `$OPENROUTER_API_KEY`, then
`$OPENAI_API_KEY`, then the `api_key` field in the profile config file written with
`WriteAPIKey`. First non-empty wins.
· ⟲ 14.1k cached · saved $0.0005
· 19:31 · 3.2s · 1 tool call · $0.0008 · ❮
─ where codeaf finds its a… · ~deepseek/deepseek-v4-flash-latest ─── space space home · / commands ─
›
$0.0008 · ⟲ saved $0.0005 · 45% cached 15.6k/1.3M · 1% idle
```
That is a real session on the default model, `~deepseek/deepseek-v4-flash-latest`:
one question, one `read`, one answer, and what it cost on the last line.
### Which folder it works in
"Inside a project" is decided at launch, in this order
(`cmd/codeaf/chatv3_layout.go:84`): `--workspace