Switching yard / Session 56
Open Mic · feature release
Come off the line.
Fold back in.
Branches
Branches shipped hidden, mid-week, on day zero of an open beta. A branch is a second conversation with the builder in its own preview — and main has to flow into it before it can ever flow back into main.
Session brief
Office Hours #56 was a feature release delivered in the Wednesday slot, which Sam noted was unusual — he believed it was the first official feature release, and possibly the first non-open-dropin, that Base44 had run on a Wednesday. The feature was Branches, described by Sam as a hotly requested one, particularly from the more technical members of the community. It had been pushed to everyone earlier that day in what he called a "light push," with the entry point deliberately kept hard to find because the feature is not 100% ready — Sam framed the whole session as "day zero" of an open beta and explicitly asked attendees to break it and send feedback. He also went out of his way to argue that although "branch" is a technical term borrowed from GitHub, the feature itself is approachable by anyone, which is why it was not held for the Thursday advanced slot.
The demo ran on a surf school landing page Sam had one-prompted minutes earlier with his own prompt-writing app. He opened the branch menu from the top-left app name, created a branch, and used voice mode to ask for a complete bold redesign; while that ran he opened a second branch and voice-prompted a backend CRM with an analytics dashboard covering bookings, booker location and locals-versus-tourists. In parallel he changed main — regenerating the hero video into a four-to-six-second looping sunset wave scene and rewriting content below the hero — specifically so he could demonstrate the sync path. Inside a branch the Publish button becomes Merge to main, and a branch that has fallen behind must first be brought up to date via the Update branch button in the chat. Updating the redesign branch produced a live conflict question asking which version to keep, which Sam initially misread and then corrected on air: the question is about what the branch preview keeps, not what main keeps. The CRM branch updated cleanly with a checkmark and no conflict prompt, and merging it produced a summary note in chat reading "added a CRM dashboard CRM with eight KPI statistics and four data visualizations." He declined to merge the redesign branch and showed that a merge can be undone through version history's revert-to-this-version.
The reason it matters came through in the caveats and use cases rather than the mechanics. Data is the one thing branches do not isolate — every branch writes to the live database unless the per-branch test data toggle in data settings is on. Only one prompt can run in one branch at a time, there is no branch limit, there is no delete yet, backend functions are not in branches yet, apps built with Base44 BaaS are excluded, and the app must be disconnected from GitHub. Sam's central pitch was that branches remove the need to revert: he described binning roughly 100 prompts of work on a Pokemon-card raffle system in his own app because it did not fit the brand, and argued branches also curb the bloat behind slowdowns reported by users whose apps have reached hundreds of thousands of lines of code and multiple thousand backend functions. His strongest scenario was partner-to-client work — a partner building a CRM in a branch for six days can pause, let the owner hot-fix and publish a critical bug in main, then pull main into the branch and carry on without losing anything.
Called out on the rail
Ten things said out loud.
The release and its exclusions, tomorrow's guest hosts, the Launchpad prize, and two teasers that were deliberately vague.
Scroll-scrubbed switching yard
One line, two lanes, one direction of travel.
Sam ran both branches live on a surf school app. Only one of them ever came back.
- 01 / Peel off
Create a branch.
Left-click the app name, top left. Branches, then create. A new preview window and a new builder conversation open alongside production.
- 02 / Main moves on
Production keeps shipping.
Sam regenerated the hero video into a looping sunset wave and rewrote the copy below it — in main, deliberately, while both branches were open.
- 03 / Counter-flow
Update branch first.
Main flows into the branch. Where it conflicts, the builder asks which version to keep — and that question is about the branch preview, never about main.
- 04 / Fold back
Merge to main.
Inside a branch the Publish button reads Merge to main. Press it and the two paths collapse into one, with a written summary in chat.
- Main — the production line
- Branch — peels off, may fold back
- Update — main flowing into a branch
- 01 / Peel off
Create a branch.
Left-click the app name, top left. Branches, then create. A new preview window and a new builder conversation open alongside production.
- 02 / Main moves on
Production keeps shipping.
Sam regenerated the hero video into a looping sunset wave and rewrote the copy below it — in main, deliberately, while both branches were open.
- 03 / Counter-flow
Update branch first.
Main flows into the branch. Where it conflicts, the builder asks which version to keep — and that question is about the branch preview, never about main.
- 04 / Fold back
Merge to main.
Inside a branch the Publish button reads Merge to main. Press it and the two paths collapse into one, with a written summary in chat.
The one thing branches do not isolate
Every lane writes to the same database.
Sam's own words: nothing you do in a branch touches production — except, and the caveat to that is, data.
Stubs off the rail
Seven lines that go nowhere.
Check these before you plan a workflow around branches. Every one was stated on air; none came with a date.
Field notes from the demo
Sixteen things worth keeping.
What a branch is, how to find one, what merging really does, and the two stories Sam built the whole explanation around.
Full session
Watch the yard run live.
The demo app was one-prompted minutes before the stream, so the branches go in early. The CRM merge, the conflict question Sam misread and then corrected on air, and the version-history revert all happen inside the hour.
Open on YouTube (opens in a new tab)28 answered questions
Everything the room asked on day zero.
Grouped by category. Featured answers settle a rule of the feature rather than a detail of the demo.
General1
Give me the TL;DR of branches — what is it and how do I use it?Featured
Sam gave this recap twice for late arrivals. The entry point is top left on any application that is not a BaaS app: click the app name, then Branches, then create a new branch. That spins up an instanced version of the preview window and the builder where you can prompt, change and build anything — a new brand, new features, a completely different app — and it persists in its own branch. The Publish button in a branch becomes Merge to main, and pressing it brings every change from that branch over to production, whenever you choose.
Technical15
Can you merge a feature branch into another release branch, and then merge that release branch into main?
Not right now. Sam understood the request — chaining several branches into one collapsed branch and then merging that single result into main — but said the current implementation does not support branch-to-branch merging. He called it a great suggestion and added it to the list going back to the dev team.
Do you have to disconnect from GitHub to use branches?Featured
Yes. For anyone using the GitHub integration, you would need to disconnect from GitHub to have the branches feature — you cannot have GitHub connected and branches running at the same time. Sam described the two as essentially the same thing, and the restriction as "a complication of having it in two different places at the same time." He did not know whether that will be relaxed later. Attendees also found that the UI still allows you to press create-branch on a GitHub-connected app, but the action is then rejected — as Sam put it, "it's just allowed at UI level but not actually allowed."
Can applications built with Base44 BaaS (backend-as-a-service) use branches?
No. Applications built with BaaS on Base44 do not have access to branches at this stage. The feature is for prompted builds from the builder only. Sam restated this in his closing recap: the branch entry point exists on any application that is not a BaaS app.
Does merging have to solve conflicts?Featured
Not at merge time, because the order of operations prevents it. You cannot merge to main without first updating the branch to the current version of main, so by the time you merge, the two are already in sync and "there should never be a conflict." Conflicts, if any, surface earlier — during the update — where the builder asks you which version the branch should keep. Sam hit exactly that case live and worked through it on air.
How do you pull an update from the main production version into a branch after the branch has already had development done on it?Featured
Inside the branch there is an Update branch button in the chat. Pressing it syncs the branch to production so both are on the same version — "they speak the same language, there will be no conflicts" — and only then can you merge to main. If nothing conflicts, the update completes immediately with a "branch updated" checkmark. If something does conflict, you get a question asking which version to keep, and Sam stressed that this question is about what the branch preview keeps, not what main keeps.
Does each branch get its own data?Featured
Only if you turn on test data. Every branch writes to the live production database by default. In the data area's settings there is a test data button, and that toggle is instanced to the branch you are working in — you can have one branch on test data while main is not, and separate branches can each hold different test data versions. Leaving it off means every branch uses the current database tables.
How do you get back to the original main as it was before a merge?
Through version history. Go to version history, find the version you were happy with — in the demo, the one without the CRM — press the three dots on it and choose revert to this version.
Can you merge several branches?
Yes, but one at a time rather than simultaneously. You merge the first branch, then go to the next branch, press update so it pulls in the newly-merged production state, and merge that one. Sam confirmed that if you have six branches queued up to merge in a row, that sequence works.
Can you work on your main production app in one window while a branch is being developed in another, with the only requirement being that the branch is reconciled to main before it is merged and published?Featured
Correct, with one caveat: you cannot send prompts to both at the exact same time. One prompt to main, then one prompt to the branch, then back again — or ten at a time in sequence — is all fine, but two simultaneous generations are not. Other than that, Sam confirmed the description was 100% true.
If you do not connect GitHub and use branches instead, could you still edit your code locally and push it?
No. Sam's answer was that branches are the native, in-platform solution rather than a bridge to local development — the isolated single-user case is where the feature shines, letting you treat your app as a playground rather than giving you a local code path.
Can a super agent read the files in one of your client's apps and then work on a new app you have created?
Your super agent can only read your own apps. If the client app was built by you and sits in your workspace, then yes, it can read that app and then work on a new app you have created. Sam noted the question was hard to parse and asked for clarification, so this answer covers the interpretation he gave on air.
Can you build apps with Opus 5 and Fable 5 right now?
Yes. Sam noted that he had been unable to do so during the previous day's stream, but had no problem with it on the day of this session — suggesting the earlier failure was transient.
Can you make a Base44 app work offline?
No. "You're always bound to it being a web app."
What were the two npm packages behind the sideways scrolling in the demo app?
Lenis and GSAP. Sam recommended installing both on any build where design matters: the smooth scrolling effect on its own is Lenis, but combining it with GSAP also gives much cleaner transitions on navigation. He pointed to his one-prompt prompt-writing app, built during the previous day's session, which bakes that knowledge and a set of design principles into the prompt it generates for you.
Why use branches when you could just make a copy of the app and work that way?
Copying is one way, though Sam said he had never done it. The more common existing approach is RLS: build the feature, lock its visuals and access point to admin only, then toggle it on from an admin control panel. Branches are "a way more smooth, less bulk" alternative, and they also help with app bloat — since features only enter the main codebase if they are actually going to be used, which matters for the users reporting slowdowns on apps that have reached hundreds of thousands of lines of code and multiple thousand backend functions.
Product11
Do branches sync with GitHub?
Not currently. Sam's answer was direct: "Not currently. You can't be connected to GitHub and have this work at the same time." On whether syncing is planned, he was honest that he did not know: "I don't know if there's a plan to work on that. I'm not sure. Sorry. It's a question for the team for sure." The intent behind branches, he said, is that this is a native solution — you should not need the GitHub route for it.
What actually happens when you merge a branch into main?Featured
The two pathways collapse into one. Sam's framing was to imagine branches did not exist: merging is the exact equivalent of what the builder would have done if you had typed all of those branch prompts straight into main. The work and its history become part of your production app, and the chat gets a written summary note of what the branch changed. In the live demo the merge note read "added a CRM dashboard CRM with eight KPI statistics and four data visualizations."
Is it possible to allow different user roles to view different published versions of the app?Featured
No. Branches are not isolated, separately published versions of the application. Sam compared it to Git: "you're only ever going to be accessing this as a collaborator." A branch is a working environment for builders, not a published variant you can route users to by role.
Can you get a version of test data that is a snapshot of production data frozen at a point in time?
Not available today. Sam confirmed he understood the request — "a version of test data with production data locked in time" — said he thought it was a good idea and would put it back to the team. He later returned to it, noting that this frozen cut of live data would be step one before anything like publishing a branch for testers could work.
Could you let people test a branch as a published version?
Not possible now, and not ruled out. Sam could see it being added somewhere in the branch menu — perhaps a right-click or a three-dots option to publish that version — but flagged the obstacle: "it would get confusing with data." He said it is "certainly not off the cards," and that the prerequisite would be having frozen-in-time cuts of live data first.
Is there a limit on how many branches you can create?
No. "You can have as many branches as you want. There is no limit. You can spin up as many as you'd like." The only limit is on concurrent work: one conversation in one branch at one time.
Are super agents branch-aware? Can a super agent send prompts to branches or create them?
Unanswered on the day. Sam called it a great question, said he did not know, and asked for it to be written down and taken back to the dev team — noting that if agents can do one branch operation they can probably do all of them. Attendees ran live tests during the session and the readout Sam gave from those tests suggested it was not working, but the transcript is ambiguous on the result. He agreed with the point raised in chat that "the agent having the ability to manage branches will be a dramatic improvement in speed to deploy multiple features."
Are branches replacing reverting, or merging with it — or are they completely separate things?
Separate things. Branches do not replace version history or reverting; they simply mean "reverting is something you'll need to do less." The scenario branches remove is the one where you build a large speculative feature, decide against it, and have to revert away all that work.
Would you recommend creating a branch to build a website and then connecting it to the app created in the first branch?
No, and it is not needed at all. Sam read the question as being about a landing page and said you never need two apps for this. Base44 builds React web apps, and the website-versus-app distinction is a misnomer — the same app can carry a website-style front end. Just prompt the builder: build me a landing page for this application, it needs to be accessible by non-logged-in users, and the rest of the app needs to be gated behind login and authentication. He added that you may still want to do that work in a branch for a different reason — so an unfinished landing page can sit there for a week while you get distracted by something else, without the work being wasted or needing a revert.
Can you merge two apps together on Base44?
No. "You can't merge apps on Base44." Merging applies to branches within a single app, not across separate applications.
Will Opus 4.8 or Fable 5 be available for in-app agents any time soon?
Sam did not know, and framed it as a cost question rather than a technical one. If in-app agents and super agents always had access to the expensive models by default, "you'd lose quite a lot of users at just the sheer cost of it," since Fable is far more expensive than any other model. His speculation — explicitly not a commitment — was that it might arrive as an optional add-on you could flag on, rather than something included in the default bundle.
Community1
There was a session last week about using super agents in an app — are past sessions recorded and available somewhere?
Yes. Sam confirmed all sessions are recorded and available, and shared the link with the attendee in chat during the stream. He made the same point when someone said they had joined late: the sessions stream to YouTube simultaneously, so you can rewind or watch the replay.
Carry these out