stack: functions serve fails without a TTY because the default output format is one it rejects
Maintainers usually reply within 1 day
Assessment
- Difficulty
- 3/5
- Estimated time
- Half a day
- Newbie friendliness
- 68/100
- Issue type
- Bug
- Clarity
- Clearly specified
- Activity status
- Active
- Tech stack
- typescript
- Domain
- cli, developer-experience
Research direction
Search the CLI for FunctionsServeStackError and the check that output must be text or stream-json. Find where the default --output-format is chosen when stdout is not a TTY (CI, redirects). Change that default to stream-json or text so non-interactive supabase functions serve no longer errors. Confirm with a redirected run and any existing functions-serve tests.
Written by the indexing model from the issue text.
Description
Supabase CLI version
2.119.0, macOS 26.3 (Apple silicon)
Actual output
Run without a TTY (CI step, agent sandbox, cmd > log &):
$ SUPABASE_EXPERIMENTAL_STACK=1 supabase functions serve --env-file fn.env > serve.log 2>&1
{"_tag":"Error","error":{"code":"FunctionsServeStackError","message":"Functions serve requires text or stream-json output.","suggestion":"Use --output-format stream-json for structured live output."}}
The non-TTY default output format is one functions serve refuses, so every non-interactive caller has to pass --output-format text or stream-json. The native runtime targets exactly those callers (CI runners, coding-agent sandboxes).
Expected behavior
Without a TTY, functions serve defaults to stream-json (or text) rather than failing.
I investigated this with help from an AI coding assistant (Claude Code), which also drafted this text. The results above come from real runs.
- Dominant language
- TypeScript
- Stars
- 2.4k
- Forks
- 531
- Avg merge
- 1d 4h
- Merged PRs (30d)
- 346
Getting set up
- No Dockerfile or Docker Compose file
- Has a pull request template
- Read the contributing guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from supabase/cli
-
db schema declarative sync: no way to fail (non-zero exit) when the generated migration is destructiveMay be free again A pull request for this issue was closed without being merged. Open✨ Feature supabase/cli
Difficulty 2/5 1-3 hours Newbie friendliness 84/100
Maintainers usually reply within 1 day
-
stack: the HTTP gateway closes idle keep-alive connections after 5 s, so a client whose event loop is blocked gets ECONNRESET (`fetch failed`) on its next requestPossibly taken @7ttp claimed this 5 days ago. Open🐛 Bug supabase/cli
Difficulty 2/5 1-3 hours Newbie friendliness 84/100
supabase/cli#6975 · 1 assignee ·
Maintainers usually reply within 1 day
-
📘 Docs supabase/cli
Difficulty 1/5 Under an hour Newbie friendliness 88/100
supabase/cli#6974 · 1 comment ·
Maintainers usually reply within 1 day
-
🐛 Bug supabase/cli
Difficulty 2/5 1-3 hours Newbie friendliness 88/100
Maintainers usually reply within 1 day
-
config push sends [auth.sms] enable_confirmations un-negated as sms_autoconfirm, so hosted projects get the opposite of localPossibly taken @7ttp claimed this 3 days ago. Open🐛 Bug supabase/cli
supabase/cli#6997 · 1 assignee ·
Maintainers usually reply within 1 day
Similar issues
-
component:sight
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
agentic-os-org/ANOLISA#6738 · 2 comments ·
Maintainers usually reply within 1 day
-
bug Durable Agents Observability (AI Telemetry) status: needs triage
Difficulty 2/5 1-3 hours Newbie friendliness 82/100
mastra-ai/mastra#26470 · 1 comment ·
Maintainers usually reply within 1 day
-
bug
Difficulty 2/5 1-3 hours Newbie friendliness 76/100
paperclipai/paperclip#15630 ·
Maintainers usually reply within 1 day
-
[good first issue, hacktoberfest] ⛩️ Add new Theme: Sakura Latte (good-first-issue)Possibly taken @PGrayCS claimed this today. Opencommunity first-timers-only good first issue hacktoberfest help wanted low hanging fruit up-for-grabs
Difficulty 1/5 1-3 hours Newbie friendliness 78/100
lingdojo/kana-dojo#31937 · 1 comment · 5 reactions ·
Maintainers usually reply within 1 day
-
feature/cohorts feature/feature-flags team/feature-flags
Difficulty 2/5 1-3 hours Newbie friendliness 74/100
Maintainers usually reply within 1 day