Goose (Block / AAIF) — raw research notes
Check date: 2026-11-14.
Sources opened that day are linked in each section and listed again at the end. Anything not opened is marked UNVERIFIED. Numbers below are copied from those pages. They were not estimated.
Docs home moved from block.github.io/goose to https://goose-docs.ai/. A search
result for the old URL showed a redirect page titled "goose has moved"
pointing at goose-docs.ai. The current repo is https://github.com/aaif-goose/goose
(organization aaif-goose). The README still on
github.com/block/goose resolves to that same
aaif-goose/goose repository.
1. What it is, license, steward, release, stars
What it is. Official homepage and README (both opened): goose is a general-purpose AI agent that runs on your machine, for code and also research, writing, automation, and data analysis. It ships as a native desktop app for macOS, Linux, and Windows, a CLI, and an API. The homepage also describes the goose Development Kit (GDK) for building agents into other apps. Built in Rust.
- Homepage: https://goose-docs.ai/
- README: https://raw.githubusercontent.com/aaif-goose/goose/main/README.md
- GitHub repo page description (API): "an open source, extensible AI agent that goes beyond code suggestions - install, execute, edit, and test with any LLM"
License. Apache License 2.0.
- GitHub API
license.spdx_id:Apache-2.0, retrieved 2026-11-14 from https://api.github.com/repos/aaif-goose/goose - GOVERNANCE.md says code and specification contributions use the Apache License, Version 2.0, and that documentation (excluding specifications) is Creative Commons Attribution 4.0: https://raw.githubusercontent.com/aaif-goose/goose/main/GOVERNANCE.md
Steward. Founded by Block. Now stewarded by the Agentic AI Foundation (AAIF), a Series of LF Projects, LLC.
- GOVERNANCE.md, "General Project Policies": "Founded by Block and now stewarded by AAIF (Agentic AI Foundation), goose has been established as a Series of LF Projects, LLC." Policies: https://lfprojects.org/policies/
- Homepage and README: "goose is part of the Agentic AI Foundation (AAIF) at the Linux Foundation." README links https://aaif.io/
- Repo owner on the API: organization
aaif-goose. Created 2024-08-23T19:03:36Z.
Latest release. Two different "latest" pointers exist. Do not treat them as the same build.
| Pointer | What was opened | Date |
|---|---|---|
Version tag v1.59.1 |
GitHub "latest" release API: tag_name
v1.59.1, prerelease false,
published_at 2026-11-14T06:50:12Z. Body text:
"macOS desktop builds and full release notes coming soon." |
2026-11-14 |
Moving tag stable |
Release name "Stable". published_at is
2025-01-30T05:20:18Z (the tag's original publish time).
updated_at 2026-11-10T17:26:29Z. Desktop
zip/installer assets on this tag were replaced on 2026-11-10 (timestamps
below). |
Assets updated 2026-11-10 |
- Latest release API: https://api.github.com/repos/aaif-goose/goose/releases/latest
- Release page: https://github.com/aaif-goose/goose/releases/tag/v1.59.1
- Releases index (also listed
v1.59.0as "10 Nov 17:17" with no timezone on that page, andv1.59.1as "14 Nov 06:50"): https://github.com/aaif-goose/goose/releases - Stable tag API: https://api.github.com/repos/aaif-goose/goose/releases/tags/stable
v1.59.1 asset names that were in the latest-release API
response include CLI archives
(goose-x86_64-pc-windows-msvc.zip,
goose-aarch64-apple-darwin.tar.gz, and similar), Linux
desktop packages (deb, rpm, flatpak), Goose-win32-x64.zip,
and Goose-win32-x64-cuda.zip. That asset-name list did
not include Goose-win32-x64-setup.exe,
Goose.zip, or Goose_intel_mac.zip.
The install buttons do not point at v1.59.1. They point
at the stable tag. On that tag, these desktop files were
updated 2026-11-10:
Goose-win32-x64-setup.exe—updated_at2026-11-10T17:26:29Z, size 137584704 bytesGoose-win32-x64.zip—updated_at2026-11-10T17:24:22Z, size 222837202 bytesGoose.zip(macOS Silicon button) —updated_at2026-11-10T17:24:12Z, size 182708019 bytesGoose_intel_mac.zip—updated_at2026-11-10T17:24:02Z, size 192537891 bytes
Which goose version string is inside those stable zips
was not opened (no download and no version file inside
the zip). UNVERIFIED that the 2026-11-10 stable desktop
files are exactly v1.59.0 or v1.59.1. The
timing matches the releases page entry for v1.59.0 ("10 Nov
17:17") more closely than v1.59.1 (14 Nov, which says macOS
desktop builds are still coming).
Stars. GitHub API stargazers_count:
56600, on the response whose repo
updated_at is 2026-11-14T14:41:23Z. Stars
change. https://api.github.com/repos/aaif-goose/goose
A search snippet earlier the same day showed 56460. The API figure above is the one opened directly.
2. Windows 11 and macOS install (desktop and CLI)
Install guide opened: https://goose-docs.ai/docs/getting-started/installation
Source of the download buttons (GitHub contents API,
main, 2026-11-14):
- https://github.com/aaif-goose/goose/blob/main/documentation/src/components/WindowsDesktopInstallButtons.js
- https://github.com/aaif-goose/goose/blob/main/documentation/src/components/MacDesktopInstallButtons.js
The docs do not say "Windows 11" as a separate path. They say Windows, and that PowerShell is available on Windows 10/11 by default. macOS steps do not name a minimum macOS version on the install page. UNVERIFIED minimum OS versions.
Windows desktop
Buttons:
- Installer: https://github.com/aaif-goose/goose/releases/download/stable/Goose-win32-x64-setup.exe
- Portable ZIP: https://github.com/aaif-goose/goose/releases/download/stable/Goose-win32-x64.zip
Quoted install steps from the install guide:
- Installer (called recommended in that section): run
Goose-win32-x64-setup.exeand follow the setup wizard. "goose is installed for the current user only, so no administrator rights are needed." Launch from the Start Menu or the desktop shortcut. Uninstall later fromInstalled appsin Windows Settings. "Your settings and sessions are kept." - Portable ZIP: unzip, then run
Goose.exein the unzipped folder.
Unattended install, quoted:
Start-Process -FilePath .\Goose-win32-x64-setup.exe -ArgumentList '/S' -Wait
That silent install goes to
%LOCALAPPDATA%\Programs\Goose.
Updating guide (https://goose-docs.ai/docs/guides/updating-goose
and the raw markdown): installer updates download a new installer,
verify a signature, and open the setup wizard on
Install & Restart. Portable ZIP updates replace the
unzipped folder. Settings and sessions live in
%APPDATA%\Block\goose, outside the unzipped folder, so they
carry over if you switch from the ZIP to the installer. The folder name
still says Block.
macOS desktop
Buttons:
- macOS Silicon: https://github.com/aaif-goose/goose/releases/download/stable/Goose.zip
- macOS Intel: https://github.com/aaif-goose/goose/releases/download/stable/Goose_intel_mac.zip
Quoted steps: unzip the zip, run the executable. Updating guide adds:
drag the extracted Goose.app to the
Applications folder to overwrite the current version.
Homebrew, quoted:
brew install --cask block-goose
The install page says Homebrew downloads the same app and can take
care of updates. The cask file it links is still named
block-goose: https://github.com/Homebrew/homebrew-cask/blob/master/Casks/b/block-goose.rb
(link target was in the markdown; the cask file itself was
not opened).
Documented snag: on an Apple Mac M3, if the desktop app shows no
window, ~/.config needs read and write access so goose can
create its log directory. Known Issues link from the install page: https://goose-docs.ai/docs/troubleshooting/known-issues
(that known-issues page was not opened).
macOS CLI
Quoted:
curl -fsSL https://github.com/aaif-goose/goose/releases/download/stable/download_cli.sh | bash
Skip the interactive provider setup:
curl -fsSL https://github.com/aaif-goose/goose/releases/download/stable/download_cli.sh | CONFIGURE=false bash
Homebrew:
brew install block-goose-cli
Update later: goose update. Canary:
goose update --canary. Check version:
goose --version.
Start a session from the folder you want goose to use:
goose session
Windows CLI
The install guide says native Windows CLI needs one of: Git Bash (recommended, from Git for Windows), MSYS2, or PowerShell (on Windows 10/11 by default). It recommends native Windows over WSL.
Git Bash or MSYS2, quoted:
curl -fsSL https://github.com/aaif-goose/goose/releases/download/stable/download_cli.sh | bash
PowerShell, quoted. The install page uses the main
branch script, not the stable release asset:
Invoke-WebRequest -Uri "https://raw.githubusercontent.com/aaif-goose/goose/main/download_cli.ps1" -OutFile "download_cli.ps1";
.\download_cli.ps1
The script's own header (opened via search of https://github.com/aaif-goose/goose/blob/main/download_cli.ps1)
says supported architecture is x86_64, and on ARM64 it errors: "Windows
ARM64 is not currently supported." The Windows CLI package it downloads
is goose-x86_64-pc-windows-msvc.zip from the
stable tag (or
goose-x86_64-pc-windows-msvc-cuda.zip if
GOOSE_WINDOWS_VARIANT is cuda). Default
install directory in that script:
%USERPROFILE%\.local\bin.
If goose is not on PATH, the install guide's PowerShell fix appends
$env:USERPROFILE\.local\bin to the PowerShell profile. Git
Bash/MSYS2: export PATH="$HOME/.local\bin:$PATH" in
~/.bashrc.
Windows keyring warning, quoted in substance: if you configure a
provider manually, choose not to store the key in the keyring. On
keyring errors, set the key as an environment variable (example in the
docs: export OPENAI_API_KEY={your_api_key}) and run
goose configure again.
WSL is documented as optional: wsl --install, then the
same download_cli.sh inside Ubuntu, and bzip2
if extraction fails. The guide says it recommends the native Windows CLI
instead.
Desktop and CLI share provider, model, and extension settings (install guide, "Shared Configuration Settings").
First run asks for a provider. Desktop welcome options listed: Quick Setup with API Key, ChatGPT Subscription, Agent Router by Tetrate, OpenRouter, Other Providers. The install page also says the first automatic Tetrate authentication gives $10 in free credits, for new and existing Tetrate users. That dollar amount is the docs' claim; Tetrate's own billing page was not opened.
3. Everyday capabilities
Files and commands
- Architecture page: extensions give the agent tools "such as running commands and managing files." https://goose-docs.ai/docs/goose-architecture/
- Using Extensions: the built-in Developer extension "is enabled by default." https://goose-docs.ai/docs/getting-started/using-extensions
- Same page: "goose operates autonomously by default. Combined with the Developer extension's tools, this means goose can execute commands and modify files without your approval."
- Permission modes name file modify, edit, create, and delete, and give examples of write tools: "text editor write", "text editor edit", and "bash - rm, cp, mv". https://goose-docs.ai/docs/guides/managing-tools/goose-permissions
- Environment variables:
GOOSE_SHELL"Overrides the shell used for Developer extension shell commands." Default "Unix:bashif found on PATH, otherwisesh. Windows:cmd." The Developershelltool "inherits environment variables from your session." https://goose-docs.ai/docs/guides/environment-variables - CLI: start in "the directory you'd like to start from"
(
goose session). A full list of Developer tool names was not opened. UNVERIFIED whether the default desktop session is limited to one chosen folder. The permissions page does not describe a folder jail. A shell that can runrm,cp, andmvcan affect files the command can reach.
Other built-in extensions named on the extensions page: Computer Controller ("webscraping, file caching, and automations"), Memory, Tutorial, Auto Visualiser. Platform extensions enabled by default in that list: Analyze, Extension Manager, Skills, Summon. Computer Controller is not given the words "enabled by default" in that list.
External extensions are MCP servers. The extensions page says goose checks external extensions for known malware before activation and blocks a detected malicious package.
Browser
Three different documented paths. They are not one built-in browser coworker.
- Built-in skill
web-search: "Search the web using DuckDuckGo (no API key), Tavily, or SearXNG, and extract page content." Skills extension is enabled by default. https://goose-docs.ai/docs/guides/context-engineering/using-skills - Browser automation (open pages, click, fill forms, screenshots) is a
separate install, quoted:
browser-use skill install. The skills page calls this the upstream browser-use project, including remote browser support. - Computer Controller is described as webscraping, file caching, and
automations. Enable example:
goose session --with-builtin "developer,computercontroller".
UNVERIFIED that Computer Controller drives a visible browser the way the browser-use skill does. The one-line description does not say that.
MCP extensions
Homepage and README: "70+ documented extensions" via the Model Context Protocol. An exact count of 70 was not opened; the docs say "70+".
Users add extensions in Desktop settings or with
goose configure /
goose session --with-extension. CLI example from the
commands page:
goose session --with-extension "memory:npx -y @modelcontextprotocol/server-memory".
Remote MCP: --with-streamable-http-extension. https://goose-docs.ai/docs/guides/goose-cli-commands
MCP Apps, homepage: extensions can render buttons, forms, and visualizations inside goose Desktop.
Recipes and schedules
Recipes are reusable YAML (or JSON) workflows: instructions, extensions, parameters, optional provider/model, and subrecipes. https://goose-docs.ai/docs/guides/recipes/ and https://goose-docs.ai/docs/guides/recipes/session-recipes
Desktop can schedule a recipe from the Recipe Library or the Scheduler view. Fields: name, source, execution mode, frequency and time. Execution mode is background ("no window, results saved") or foreground ("opens window if goose Desktop is running, otherwise runs in background"). The frequency picker "is converted into a cron expression." Scheduler page can run now, edit, pause, and open past sessions.
CLI, from the commands guide:
goose schedule add --schedule-id daily-report --cron "0 0 9 * * *" --recipe-source ./recipes/daily-report.yaml
Also goose schedule list, sessions,
run-now, and remove. Cron can be 5, 6, or 7
fields: "seconds minutes hours day-of-month month day-of-week year". The
add command copies the recipe into
~/.local/share/goose/scheduled_recipes.
UNVERIFIED whether a scheduled job keeps running after the user logs out or the PC sleeps. The schedule pages opened do not say.
Subagents
Homepage: "Spawn independent subagents to handle tasks in parallel — code review, research, file processing."
Summon platform extension, enabled by default: "Load knowledge sources and delegate tasks to subagents."
Environment variables (https://goose-docs.ai/docs/guides/environment-variables):
GOOSE_MAX_CONCURRENT_SUBAGENTSdefault 5GOOSE_SUBAGENT_MAX_TURNSfalls back toGOOSE_MAX_TURNS, then 1000GOOSE_MAX_TURNSdefault 1000 (turns without user input)
Multi-model page: subagents are isolated goose instances that can use their own provider and model. https://goose-docs.ai/docs/guides/multi-model/
A tutorial walks through a software-team of subagents (planner, PM, architect, frontend, backend, QA, writer): https://goose-docs.ai/docs/tutorials/subagents/
v1.55.0 notes on the releases page include "Remove
background subagents and orchestrator." What "background subagents"
means after that removal was not opened in a current
guide. The homepage still describes parallel subagents, and the env var
for concurrent subagents is still documented.
Local models and llama.cpp
Documented local providers on the providers page, "Local LLMs" section (https://goose-docs.ai/docs/getting-started/providers):
- Ollama
- LM Studio (default
localhost:1234) - Lemonade (default
localhost:13305) - Atomic Chat (default
localhost:1337) - Docker Model Runner
- Ramalama, used through the Ollama provider
Ollama: provider parameter OLLAMA_HOST. If unset, docs
set it to localhost:11434 and prepend http://
when needed. Desktop shows locally installed Ollama models in the model
dropdown. You must download and run a model first. Models without tool
calling "can only do chat completion" and "all goose extensions must be
disabled."
llama.cpp shows up in three documented places. It is not a row in the Available Providers table.
- Tool shim, not the main chat model.
GOOSE_TOOLSHIMdefault false.GOOSE_TOOLSHIM_BACKENDvalues:"ollama"(default),"local","llama.cpp". This is for models that print tool calls as text. https://goose-docs.ai/docs/guides/environment-variables - CLI
goose local-models(aliaslm): search Hugging Face for GGUF and MLX models, download, list, delete. The commands page says: "This command is available in goose builds that include local inference support." Example:goose local-models download 'user/repo:Q4_K_M'. Whether the ordinarystabledesktop zip includes that build was not opened. UNVERIFIED for the default download. - GDK reference: crate
goose-local-inference"Runs models on the user's machine, using llama.cpp for GGUF models and an optional MLX backend on Apple silicon." This is a developer library, not the desktop install guide. https://goose-docs.ai/docs/gdk/reference/
Docker Model Runner's chat path is documented as
/engines/llama.cpp/v1/chat/completions, with
OPENAI_HOST example http://localhost:12434.
That is Docker's engine path, configured as the OpenAI provider.
A Goose-win32-x64-cuda.zip exists on both
v1.59.1 and stable.
UNVERIFIED that the CUDA zip is the local-inference /
llama.cpp desktop build. No doc page opened said that.
4. Providers
Providers page opened: https://goose-docs.ai/docs/getting-started/providers
How many. The docs do not publish one exact total.
Homepage and README say "15+ providers" and name Anthropic, OpenAI, Google, Ollama, OpenRouter, Azure, Bedrock, "and more." They also say you can use API keys or existing Claude, ChatGPT, or Gemini subscriptions via ACP. ACP guide linked from the README: https://goose-docs.ai/docs/guides/acp-providers (that page was not opened; the providers page's ACP section was).
The Available Providers table on the providers page, fetched 2026-11-14, has 47 named rows:
AI/ML API, Amazon Bedrock, Amazon SageMaker TGI, Anthropic, Atomic Chat, Avian, Azure AI Foundry, Azure OpenAI, ChatGPT Codex, Databricks, Docker Model Runner, EmpirioLabs AI, Friendli AI, FuturMix, Gemini, GCP Vertex AI, GitHub Copilot, Gondola, Groq, iFlytek Spark, iFlytek Astron MaaS, IO Intelligence, Lemonade, LiteLLM, LM Studio, Meta, Mistral AI, NEAR AI Cloud, Novita AI, Ollama, Ollama Cloud, OpenAI, OpenRouter, Perplexity, OVHcloud AI, Ramalama, Routstr, SayGM, SaladCloud AI Gateway, Scaleway, Snowflake, VMware Tanzu Platform, Tetrate Agent Router Service, TrustedRouter, Venice AI, Cerebras, xAI.
Separate sections on the same page, not in those 47 rows:
- CLI provider: Cursor Agent (
cursor-agent) - ACP providers: Claude ACP (
claude-acp), Codex ACP (codex-acp) - Z.AI Coding Plan (
GOOSE_PROVIDER=zai_coding_plan)
- CLI provider: Cursor Agent (
The Z.AI section also says "The existing Z.AI provider continues to use the Anthropic-compatible endpoint." That older Z.AI provider was not a row in the 47-row table as fetched. UNVERIFIED whether it is still selectable.
The page says goose "currently works best with Claude 4 models"
because it relies on tool calling. o1-mini and
o1-preview "are not supported because goose uses tool
calling."
Ollama. Yes. See section 3. Hosted Ollama is a
separate provider, Ollama Cloud, with
OLLAMA_CLOUD_API_KEY.
OpenAI-compatible custom base URL. Yes, two documented ways.
- Built-in OpenAI provider.
OPENAI_HOSTis the custom endpoint URL (defaultapi.openai.com).OPENAI_BASE_PATHis the path appended to the host (defaultv1/chat/completions). Docs' examples include vLLM, KServe, and other OpenAI-compatible servers. Quote: setOPENAI_HOST"to your proxy's root (no trailing path)." - Custom providers. Desktop: Settings → Models → Configure providers →
Add Custom Provider. API type must be
OpenAI Compatible,Anthropic Compatible, orOllama Compatible. You enter an "API URL: The base URL of the API endpoint." Local servers can uncheck "This provider requires an API key." Config files:~/.config/goose/custom_providers/on macOS/Linux, and%APPDATA%\Block\goose\config\custom_providers\on Windows.
Free Gemini key. Documented. Providers page, "Using
goose for Free" → "Google Gemini": "Google Gemini provides a free tier.
To start using the Gemini API with goose, you need an API Key from
Google AI studio." Desktop path: Settings → Models → Configure Providers
→ Google Gemini. CLI example model typed in the docs:
gemini-2.0-flash-exp. The install page repeats: "Google
Gemini offers a free tier you can get started with." Free-tier rate
limits and which model names are still on that free tier were
not opened. UNVERIFIED current Google
free-tier quotas.
Free Groq key. Documented. Same "Using goose for
Free" section: "Groq provides free access to open source (open weight)
models with high-speed inference. To use Groq with goose, you need an
API key from Groq Console." Provider parameter:
GROQ_API_KEY. Models named there include
moonshotai/kimi-k2-instruct-0905,
qwen/qwen3-32b, llama-3.3-70b-versatile, and
llama-3.1-8b-instant. Groq's own quota page was
not opened. UNVERIFIED how large that
free tier is in 2026.
The same free section also documents EmpirioLabs AI, FuturMix, Novita AI, Routstr, and SayGM. Those were opened on the providers page. Their prices were not checked on those companies' sites.
5. Safety defaults
Permission page opened: https://goose-docs.ai/docs/guides/managing-tools/goose-permissions
There is an approval system. Four modes:
| Mode in the table | CLI value | What the docs say |
|---|---|---|
| Completely Autonomous | auto |
Can modify files, use extensions, and delete files without approval |
| Manual Approval | approve |
Asks before using tools or extensions |
| Smart Approval | smart_approve |
Auto-approves low-risk actions and flags others |
| Chat Only | chat |
Chat only. No extension use and no file modifications |
Autonomous is the documented default. The page says,
as a warning: "Autonomous Mode is applied by default."
Environment variables agree: GOOSE_MODE values
"auto", "approve", "chat",
"smart_approve", default "auto".
Desktop: each session has its own mode. Settings → Chat → Default
Mode sets the default for new sessions. Existing sessions keep their
mode. Mid-session (terminal CLI only): /mode auto,
/mode smart_approve, /mode approve,
/mode chat. Correction, 2026-11-14: the permissions page
lists these under the CLI tab only. At v1.59.1 the desktop's built-in
slash commands
(crates/goose/src/agents/execute_commands.rs) do not
include mode, and unrecognized commands go to the model as
plain text. Also, since v1.55.0 (PR #12802), sub-agents run in their
parent chat's mode and forward approvals to the main chat, despite the
Subagents page saying they are disabled in Manual and Smart
Approval.
In manual and smart approval, the page says goose asks only for tools
it deems write tools (text editor write/edit, bash
rm/cp/mv). "Read/write approval
makes best effort attempt at classifying read or write tools. This is
interpreted by your LLM provider."
It can touch the user's real files. Developer extension is on by default, and autonomous mode can modify and delete files and run shell commands without approval. That is the extensions page and the permissions page, not an inference.
Prompt injection detection is off unless turned on.
SECURITY_PROMPT_ENABLED default false.
SECURITY_PROMPT_CLASSIFIER_ENABLED default
false. Threshold default 0.8 only matters once
detection is enabled. https://goose-docs.ai/docs/guides/environment-variables
Homepage security line: "Prompt injection detection, tool permission controls, sandbox mode, and an adversary reviewer that watches for unsafe actions." A page that explains the adversary reviewer, or that says sandbox mode is on for normal Desktop sessions, was not opened. UNVERIFIED that either is active by default.
The only sandbox behavior opened in detail is on the CLI providers
page, and it is about the Codex CLI provider, which that page marks
deprecated: GOOSE_MODE=chat maps to Codex
--sandbox read-only, auto maps to
--yolo ("Bypasses all approvals and sandbox restrictions"),
smart-approve maps to --full-auto
("Workspace-write sandbox"). https://goose-docs.ai/docs/guides/cli-providers/
That is Codex's sandbox, not a documented default for the ordinary
OpenAI/Gemini/Ollama goose session.
v1.54.0 release notes include "Prompt for goose mode
during first-time configure." The current permissions page still says
Autonomous is the default. UNVERIFIED whether a
first-run prompt changes that default before the user picks anything.
The permissions page, not the old changelog line, is the current
user-facing statement.
6. What a non-coder finds hard, and desktop vs phone
This section is the documented friction, not a user study. No usability study was opened.
Hard parts that the docs themselves spell out:
- Goose does not include a model. First launch is a provider setup. The providers page says not every provider has a free tier, and that goose works best with tool-calling models, "currently" Claude 4. A weak or non-tool-calling local model cannot use extensions.
- Windows desktop install is a normal installer or a zip. Windows CLI is the awkward path: pick Git Bash, MSYS2, or PowerShell, fix PATH, and on a keyring error refuse to store the key and use an environment variable. The PowerShell script rejects Windows ARM64.
- macOS desktop is unzip-and-run, or a Homebrew cask still named
block-goose. An M3 Mac can open to no window until~/.configis writable. Config on Windows still lives under%APPDATA%\Block\goose. - The safe-looking choice (ask before acting) is not the default. A person who just wants chat can switch to Chat mode, but nothing on the install page says to do that first.
- Recipes are YAML. Schedules are cron underneath, even though Desktop shows a frequency picker.
- The subagent tutorial is a software team building an app. That is the long walkthrough that was opened.
This is a desktop and terminal coworker, not a phone assistant.
- Supported apps in the README and install guide: macOS, Linux, and Windows desktop, plus the CLI. No iPhone or Android store app is in those install steps.
- Phone chat that is still documented: experimental Telegram Gateway.
https://goose-docs.ai/docs/experimental/remote-access/telegram-gateway
and the index https://goose-docs.ai/docs/experimental/remote-access/
. You create a bot with @BotFather, run
goose gateway start telegram --bot-token "$TELEGRAM_BOT_TOKEN", and pair withgoose gateway pair telegramusing a six-character code that expires in five minutes. "Your computer must remain awake and online for the bot to respond." The page says the feature is experimental. It is chat from the Telegram app, not a goose app. - Native mobile app path, opened: https://goose-docs.ai/docs/experimental/remote-access/mobile-access
says "Mobile access via secure tunneling is no longer available in
current goose Desktop builds." The QR-code tunnel panel and
/tunnel/startand/tunnel/stop"have been removed." - https://goose-docs.ai/docs/experimental/goose-mobile is marked archived and unlisted. It says goose Mobile "has been archived" and "The previous iOS mobile tunnel setup is also retired in current goose Desktop builds." The same page still describes an experimental Android project and a pre-built APK via "Firebase distribution link." The repository README and the Firebase link were not opened. Treat the Android APK as archived-page text, not as a current install path that was verified to download.
A 2026-05 GitHub issue comment about Settings → Session → Mobile App
→ Start Tunnel and a goose iOS app was about version
1.33.1-block on a Block-issued phone (https://github.com/aaif-goose/goose/issues/9026).
That conflicts with the current "no longer available" mobile-access
page. The current docs page is the one used here. The issue is not a
current public install guide.
7. Scorecard facts
Checked 2026-11-14.
Capability ceiling. High for a computer that stays
on. One desktop app plus the CLI can edit files, run a shell, call MCP
extensions, search the web, schedule recipes in the background, and
spawn subagents. Full browser control is an extra skill install
(browser-use skill install), not the default built-in
skill. The ceiling drops if the model cannot call tools: the providers
page says those models are chat-only and extensions must be disabled.
Docs say it works best with Claude 4. It is not a phone agent.
Win/Mac install friction. macOS desktop: download
Goose.zip (Apple silicon) or
Goose_intel_mac.zip (Intel), unzip, run. Or
brew install --cask block-goose. Windows desktop: run
Goose-win32-x64-setup.exe for the current user with no
administrator rights, or unzip and run Goose.exe. The CLI
is one curl on macOS. On Windows the CLI needs Git Bash, MSYS2, or
PowerShell, a PATH edit if warned, and a keyring workaround. Both
systems stop at a provider screen until an API key, a subscription
sign-in, or a local model is set up. Practical snag on 2026-11-14: the
versioned release v1.59.1 says macOS desktop builds are
still coming, while the doc buttons use the stable tag,
whose desktop files were updated 2026-11-10. A person who opens the
latest GitHub release and looks for a Mac app zip can miss it.
Safe-by-default. No, on the current permissions
page. Autonomous mode is the default, and the Developer extension is on
by default, so goose can change files, delete files, and run commands
without asking. Approval mode, smart approval, and chat-only exist and
can be set as the default for new sessions. Prompt-injection detection
ships off (SECURITY_PROMPT_ENABLED default false). Homepage
names sandbox mode and an adversary reviewer; those were not documented
as on by default in any page opened here.
Model flexibility. High. Marketing copy says 15+.
The providers table lists 47 named providers, plus Cursor Agent, Claude
ACP, Codex ACP, and Z.AI Coding Plan. Ollama works
(OLLAMA_HOST, default localhost:11434).
OpenAI-compatible custom base URLs work via OPENAI_HOST /
OPENAI_BASE_PATH or a custom provider API URL (OpenAI,
Anthropic, or Ollama compatible). A free Gemini key (Google AI Studio)
and a free Groq key (Groq Console) are written up as start paths. Local
GGUF through llama.cpp is documented for the tool shim, for
goose local-models on builds that include local inference,
and for the GDK. It is a harder path than picking Ollama or Groq.
Same app later for phone chat and background
schedules. Background schedules: yes, without a second product.
Desktop has a Scheduler (background or foreground). The CLI has
goose schedule. Phone chat: not as a goose phone app. The
mobile tunnel is removed, and the goose Mobile page is archived. The
same goose install can talk to a phone only through the experimental
Telegram gateway, and the computer has to stay awake and online with
goose gateway start running. That is the same product plus
Telegram, not a goose app you open on the phone.
Sources
Opened 2026-11-14 unless noted.
- https://goose-docs.ai/
- https://github.com/aaif-goose/goose
- https://raw.githubusercontent.com/aaif-goose/goose/main/README.md
- https://api.github.com/repos/aaif-goose/goose
- https://api.github.com/repos/aaif-goose/goose/releases/latest
- https://api.github.com/repos/aaif-goose/goose/releases/tags/stable
- https://github.com/aaif-goose/goose/releases
- https://github.com/aaif-goose/goose/releases/tag/v1.59.1
- https://raw.githubusercontent.com/aaif-goose/goose/main/GOVERNANCE.md
- https://goose-docs.ai/docs/getting-started/installation
- https://raw.githubusercontent.com/aaif-goose/goose/main/documentation/docs/getting-started/installation.md
- https://github.com/aaif-goose/goose/blob/main/documentation/src/components/WindowsDesktopInstallButtons.js
- https://github.com/aaif-goose/goose/blob/main/documentation/src/components/MacDesktopInstallButtons.js
- https://goose-docs.ai/docs/guides/updating-goose
- https://raw.githubusercontent.com/aaif-goose/goose/main/documentation/docs/guides/updating-goose.md
- https://github.com/aaif-goose/goose/blob/main/download_cli.ps1 (script header and Windows URL logic, via search)
- https://goose-docs.ai/docs/getting-started/providers
- https://goose-docs.ai/docs/getting-started/using-extensions
- https://goose-docs.ai/docs/guides/managing-tools/goose-permissions
- https://goose-docs.ai/docs/guides/environment-variables
- https://goose-docs.ai/docs/guides/goose-cli-commands
- https://goose-docs.ai/docs/guides/context-engineering/using-skills
- https://goose-docs.ai/docs/guides/recipes/
- https://goose-docs.ai/docs/guides/recipes/session-recipes
- https://goose-docs.ai/docs/guides/multi-model/
- https://goose-docs.ai/docs/tutorials/subagents/
- https://goose-docs.ai/docs/goose-architecture/
- https://goose-docs.ai/docs/guides/cli-providers/
- https://goose-docs.ai/docs/gdk/reference/
- https://goose-docs.ai/docs/experimental/remote-access/
- https://goose-docs.ai/docs/experimental/remote-access/telegram-gateway
- https://goose-docs.ai/docs/experimental/remote-access/mobile-access
- https://goose-docs.ai/docs/experimental/goose-mobile
- Search snippet of the old docs host redirect: https://block.github.io/goose/
Not used for version, stars, or install steps: Wikipedia's Goose article (its stable version in search was older than the GitHub release opened here).