* docs(base44-troubleshooter): show the lines as they are actually printed First claims in this skill backed by a running app rather than by reading source. The apper lane ran base44@0.1.13 against prod and against a mock rig and reported what the terminal actually showed: - Both fallback lines carry the logger's "Warning: " prefix. The quoted blocks omitted it, so an agent matching on a whole printed line would not have found them. - The lost-stream error prints as "Error: The realtime log stream stopped and could not be re-established" and the process exits 1. The page said "a non-zero exit"; it can now say which. Evidence: refusal line printed live during a flag-off window on logs-probe; transient line printed live against a 503 mock; dead-stream rig (SSE 200 then close, twice) gave exit code 1 with both hints. * docs(base44-troubleshooter): show the real --json error envelope Measured, not inferred: the apper lane ran base44@0.1.13 against a dead-stream rig with --json and captured stdout verbatim. Three things the elided example did not say: - `hints` holds objects with `message` and `command`, not strings. A consumer treating them as strings breaks on the real payload. - stderr stays empty, so a caller reading only stderr sees nothing at all and may read the run as clean. - the process exits 1 alongside that object. Every line was verified to parse independently. * docs(base44-troubleshooter): say when the Warning:/Error: prefixes appear The prefixes I added a commit ago are real but conditional, and shipping them unqualified would have been the same class of error this PR fixes. The CLI picks its logger by interactivity: SimpleLogger writes "Warning: "/"Error: " literally (packages/logger/src/SimpleLogger.ts:14-19), but it is only chosen when stdin or stdout is not a TTY, or under --json (packages/cli/src/cli/index.ts:36-39). An interactive terminal gets ClackLogger, which renders a coloured glyph and no literal prefix. The live run that found the prefixes was non-TTY, which is why it saw them. So the blocks are byte-exact for the piped, non-terminal case — this page's actual audience — and the page now says so rather than implying a human at a terminal sees the same bytes. Also states two things worth knowing when piping: the warnings go to stderr, not into the log output on stdout, and under --json the failure arrives only as the NDJSON envelope, with no Error: line to match. * docs(base44-troubleshooter): --json routes logs to stderr, it does not silence them The previous commit claimed "under --json there is no warning line at all". It prints. --json forces the non-interactive wiring, which selects SimpleLogger, and its warn() writes "Warning: " + message to stderr unconditionally (SimpleLogger.ts:14-15); nothing between followLogs and that logger consults jsonMode (logs.ts:259-263). Caught by a live repro against a mock that 404s the stream route, not by a source argument. So a --json run gives you both: the fallback warning on stderr and log lines on stdout. Only the lost-stream failure is stdout-only, because that path calls writeJsonError instead of the logger — which is why the two cases differ, and why the sentence generalised wrongly. --------- Co-authored-by: David Susskind <dev@example.com>
Agent Skills for Base44
Beta — These skills are functional and actively maintained. Feedback and suggestions are welcome on GitHub Discussions.
Install these skills so your coding agents can assist with Base44 development.
Supports many AI coding agents, including Cursor, Claude Code, Codex CLI, and OpenCode.
Installation
Claude Code (Plugin Marketplace)
Add the marketplace and install:
/plugin marketplace add base44/skills
/plugin install base44@base44-skills
Or install directly:
claude plugin install base44@base44-skills
Codex CLI
In a terminal, register the marketplace:
codex plugin marketplace add base44/skills
Then in Codex CLI, run /plugins, select Base44, and choose Install Plugin.
Other Agents (via skills CLI)
Install skills using skills:
# Install all skills
npx skills add base44/skills
# Install globally (user-level)
npx skills add base44/skills -g
Sandbox flavor (remote dev — no local files)
If you develop your app inside Base44's cloud sandbox (the platform auto-builds, auto-commits, and auto-syncs, so you never run deploy/push), install the focused base44-sandbox plugin instead of the full set. It bundles base44-remote-dev, base44-sandbox, base44-sdk, and base44-troubleshooter — and deliberately excludes the deploy-oriented base44-cli.
# Claude Code
claude plugin install base44-sandbox@base44-skills
# Codex CLI: register the marketplace, then /plugins → "Base44 Sandbox" → Install
codex plugin marketplace add base44/skills
# Other agents (skills CLI)
npx skills add base44/skills --skill base44-remote-dev --skill base44-sandbox --skill base44-sdk --skill base44-troubleshooter
Available Skills
| Skill | Description |
|---|---|
base44-cli |
Create and manage Base44 projects using the CLI. Handles resource configuration (entities, backend functions, AI agents), initialization, and deployment. |
base44-sdk |
Build apps using the Base44 JavaScript SDK. Communicate with remote resources like entities, backend functions, and AI agents. |
base44-troubleshooter |
Troubleshoot production issues using backend function logs. Use when investigating app errors or diagnosing production problems. |
base44-remote-dev |
Develop a Base44 app remotely from your own coding agent by connecting it to the Base44 sandbox over MCP or the base44 sandbox CLI. |
base44-sandbox |
Author Base44 app code inside the cloud sandbox — no deploy/push; writing a resource file (function, entity, agent) into the sandbox is what ships it. |
About Agent Skills
Agent skills are reusable instruction sets that extend your coding agent's capabilities. They're defined in SKILL.md files following the Agent Skills specification.
Learn more about agent extensions for Base44.
Contributing
See CONTRIBUTING.md for guidelines on creating and submitting skills.