Quickstart
The shortest path from nothing to a working agent: one install command, one free API key, one model. No credit card, no config file editing.
If you already have a provider account, Getting Started covers the same ground with more detail and more options.
1. Install
curl -fsSL https://agenvoy.com/scripts/install.sh | bash
The script detects macOS or Linux, installs the agen binary to /usr/local/bin, and pulls in what it needs (git, make, a C compiler, python3, node, pdftotext, and bwrap on Linux). It asks for sudo once, to write into /usr/local/bin.
Check it landed:
agen --version
2. Get a free NVIDIA NIM key
NVIDIA NIM is the easiest starting point: the free tier needs no billing setup, and it hosts gpt-oss-120b — an open-weight model large enough for reliable tool calling, which is what an agent actually depends on.
- Open build.nvidia.com/explore/discover
- Sign up (email or an existing Google / GitHub / NVIDIA account)
- Open any model card and press Get API Key
- Copy the key — it starts with
nvapi-
Keep the key on your clipboard for the next step.
3. Add the model
Start the TUI:
agen
Then, inside it:
| Step | What you do |
|---|---|
| 1 | Type /model and press Enter |
| 2 | Choose add — "add model from provider" |
| 3 | Choose NVIDIA NIM from the provider list |
| 4 | Paste the nvapi- key. Input is masked, and the key goes straight to the OS keychain — never into a config file, never into the conversation |
| 5 | Agenvoy fetches NVIDIA's live model list. Pick openai/gpt-oss-120b |
That is the whole setup. The model is registered in ~/.config/agenvoy/config.json; the credential is not.
Prefer something smaller?
openai/gpt-oss-20bis on the same list, but open-weight models under 100B call tools unreliably — worth knowing before you blame the agent.
4. Ask it something
Type a question into the input box and press Enter:
What's the weather in Taipei right now?
No weather tool ships with Agenvoy. Watch what happens instead: the agent searches its own registry, finds nothing, fetches the tool-building contract, picks a public API, writes a Python tool, sandbox-tests it, then calls it and answers. The tool is saved — the second time you ask, it just runs.
Try a few more:
Summarize the README in this folder
Report the TSMC stock price every morning at 8am
Which of my documents mentions the prompt guide?
5. Know these five keys
With the input box empty:
| Key | Effect |
|---|---|
/ |
Command palette — matches on command name or description |
| Shift+Tab | Toggle auto-approve (otherwise each non-read-only tool call asks first) |
| Shift+F | Toggle fast mode |
| Shift+W / Shift+S | Cycle the dispatcher model |
| Esc | Dismiss a popup; press during a run to cancel it |
Enter sends. Alt+Enter inserts a newline. Enter during a run queues a steer message rather than interrupting.
Advanced: the two subscription providers
When the free tier stops being enough, the next step is not another pay-per-token key — it is a subscription you may already be paying for. These two are the first choice for a second, fall-back model: the cost is already fixed monthly, so an agent that takes a few extra turns doesn't move the bill.
| Provider | Billed against | Where it lives in the menu |
|---|---|---|
| Codex | Your ChatGPT / Codex subscription | OpenAI → Codex subscription |
| Grok (xAI) | Your xAI subscription | Grok → xAI subscription |
Neither takes an API key. Both authenticate through a device-code OAuth flow, and the token lands in the OS keychain like any other credential.
Add Codex
| Step | What you do |
|---|---|
| 1 | /model → add |
| 2 | Choose OpenAI — not a separate "Codex" entry; the two auth routes live under the same provider |
| 3 | A second picker appears, OpenAI · method. Choose Codex subscription, not API Key pay per token |
| 4 | The device-code popup opens and your browser follows once the code is ready. Sign in and approve — the flow has a 15-minute window |
| 5 | Back in the TUI, pick a model from the list your subscription exposes |
Add Grok (xAI)
| Step | What you do |
|---|---|
| 1 | /model → add |
| 2 | Choose Grok |
| 3 | In Grok · method, choose xAI subscription |
| 4 | Same device-code OAuth flow |
| 5 | Pick a model |
Already authenticated once? The flow asks
<Provider> token exists · re-login?first.No keep existingreuses the stored token and jumps straight to the model list — pickYes re-authenticateonly when switching accounts.
With more than one model registered, Shift+W / Shift+S cycles the dispatcher model from the TUI, and /model dispatch / /model summary set the dispatcher and summary models explicitly.
Where to go next
| You want to | Read |
|---|---|
| Add a second provider, or switch models per session | Providers |
| Understand what the agent can already do | Built-in Tools |
| Make the agent build and keep its own tools | Tool Extension |
| Share your tools with Claude Code or Codex | MCP Server |
| Schedule something to run every morning | Scheduler |
| Drive it from a browser instead | web.agenvoy.com |
If something goes wrong
| Symptom | Fix |
|---|---|
agen: command not found |
/usr/local/bin is not on your PATH. Open a new shell, or add it |
| The model list is empty after pasting the key | The key was rejected. Re-run /model → add → NVIDIA NIM and paste it again — check for a trailing space |
| Every tool call stops and asks for confirmation | That is the default. Shift+Tab turns on auto-approve for the session |
| The agent answers but never calls a tool | Small open-weight models drop tool calls. Switch to openai/gpt-oss-120b |
| A command fails with a permission error | Commands run inside an OS sandbox. See Sandbox for what it blocks and how to allow more |