PRDCT-693: Build an app with an AI agent - #1143
Conversation
Michal Ševčík asked to move the agent and CLI install steps out of the Apps UI and into the docs. The task now has one page in Apps (data-apps/build-with-an-agent). Per-client install stays on cli/for-agents with a new dataapp-developer section, and the pages that repeated or contradicted it now link there. The Claude Code flow was run live in project 264 on 2026-09-23. Until keboola/cli#765 ships, the page works around kbagent CLI-15 (a managed-repo app gets no workspace). The Claude Desktop tab stays VERIFY until its own live run. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
Nikita asked for the other clients next to Claude Code and Claude Desktop. Each tab links its install route in cli/for-agents and adds dataapp-developer from the same list; the notes on Git and the plugin's failing MCP server now sit under the tabs, where every terminal client sees them. An Other agents section covers any agent with a shell. Cursor, VS Code and the ChatGPT app are not run end to end yet and stay marked VERIFY. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
A second live run, in a Claude Code session with the Keboola MCP connector, took the MCP route: the agent asked which route to use, then built a draft on a managed repo with its git block written, so the kbagent workspace bug did not apply. The page now says both routes exist and what the MCP one adds. The draft ran without data because its @keboola/api-client 39.0.0 calls Promise.withResolvers, which the app runtime's Node.js 20.19 lacks; the template's ^27.0.0 works. Troubleshooting gets that row, flagged for the runtime owners. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Each client tab now goes from install to the first prompt: terminal setup, the two plugins, an optional Keboola MCP server for the client, and how to start the agent. A new MCP route section says what happens when the agent builds through the MCP server: a prod app plus a draft previewed in development mode, prod deployed only after approval. Only Claude Code was run live. Every other tab carries a VERIFY list for Michal Ševčík's review. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
keboola-pr-reviewer-bot
left a comment
There was a problem hiding this comment.
Verdict: needs_human (risk 3/5) · profile connection-docs
Escalating: the PR documents unshipped behavior and carries multiple unresolved VERIFY markers, which is the policy's highest-value human-review trigger.
Impact flags: possible rollback re-introduction — see Check Run summary.
Concerns:
src/content/docs/data-apps/build-with-an-agent.mdx: Documents workaround for unshipped keboola/cli#765 (open PR); remove once it ships.src/content/docs/data-apps/build-with-an-agent.mdx: Claude Desktop/Cursor/VS Code/ChatGPT tabs marked VERIFY; build flow not yet run.src/content/docs/data-apps/index.md: New route entry carries VERIFY: run end to end in Claude Code only.
Suggested reviewers: @keboola/docs
The base now sends the repository layout to the ai-kit reference and the kbagent terminal path to Operate. what-are-apps keeps both and still points coding assistants at Build an app with an AI agent. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
Tested with Grok 4.7
Weird it's confused what to use, I changed the prompt and it knew immediately and prompted for me to login with oauth and it worked perfectly and fast.
Note: 5. Defaults flag
cc @MiroCillik Will do GPT and vscode later today... |
Michal Ševčík tried the page in Cursor (PR #1143 review). His points: agent mode is Cursor's default, the command blocks are noise for agent users, the defaults belong before the tabs, and the password is the main friction. The defaults, including where the password lives and what public means, now come before the tabs. The kbagent commands move to a Terminal tab. The prompt names kbagent and asks for the app's page link. His screenshots also show the agent signing in to the plugin's own MCP server and building in a project on us-east4, so the page says what that server is instead of promising that the prompt pins the route. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…o apps-build-with-an-agent
An independent check of the Cursor rework found conflicting route advice, untested claims without VERIFY, CLI detail above the tabs and three dropped items. The Desktop tab now drops "using kbagent", the Cursor note loses its untested us-east4 exception, the page-link recipe lives in the Terminal tab, and the Storage fix points at Terminal step 5 instead of repeating it. The UI path to the password, the logs and runs commands, the per-client MCP links and a credential-helper example are back. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Michal's Cursor run built through an MCP sign-in in another project even with "using kbagent" in the prompt, so the prompt now also names the project and rules out MCP, and the page says why. A Codex CLI run with the page's prompt stayed on kbagent. Its data check found the missing git block, which confirms that part of the prompt. Its first push failed with "Repository not found" until Git's cached credential helper was cleared, so the Terminal push now clears it. The plugin's MCP server asks for a sign-in in Codex, as it does in Cursor. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
After the confirmation, the Codex agent set the git block, deployed config version 5 and saw its data load, then returned the app URL and the page link. The page now says the agent asks before that configuration change. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
The page has to work for a reader who lands on it cold, and without a project or data nobody can build an app. Before you start now links to the free project in the tutorial, a sample CSV upload and the data source connectors, the prompt says to swap in your own table, and Check the app points to Publish and share. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Before you start now says where to get a free project and gives the tutorial's opportunity.csv with its own prompt, so a reader with nothing yet can still build an app from this page. From the last independent check: the kbagent route advice no longer contradicts the Claude Desktop tab, three facts carry their sources, the ChatGPT app's Codex engine is named, the clone clears the credential helper like the push, and Troubleshooting gets a row for "Repository not found". Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>




Linear: PRDCT-693 · related AJDA-3380, CLI-15
Why
Michal Ševčík asked on 23.09 to move the agent and CLI install steps out of the Apps UI and into the docs, with Claude Desktop covered. He also asked to document building and running apps with kbagent from different agents. Until now the docs had one 12-line section in
build-locally, and no rendered page showed akbagent data-appcommand.What changed
Each reader question now has one page, and the other pages link to it instead of repeating the steps:
data-apps/build-with-an-agent(how-to; tabs for Claude Code, Claude Desktop, Cursor, VS Code, the ChatGPT app and a plain Terminal,syncKey="ai-client")cli/for-agents, new "Add the app-building plugin" sectionai/ai-kit: the Data App Developer description fixed (it said Streamlit only), versions refreshed, other clients linkedSmaller edits:
data-apps/index.mdlists the agent route as the third way to build. The nav gets one entry under Apps › Build.what-are-appspoints coding assistants at the new page.build-locallyandgetting-startedpoint to the new page. The build-locally section keeps its anchor.troubleshootinggets three rows: the managed-repo workspace bug,Promise.withResolvers is not a functionfrom a too-new@keboola/api-client, andRepository not foundfrom a stored Git login.operateno longer calls rollback impossible from kbagent:deploy --config-versionruns an older configuration once. A real restore stays in the UI.cli/getting-startedno longer says data apps need a static token. Browser sessions cover them since kbagent 0.94.0 (feat: accept browser-login (session) tokens for the commands whose backend supports them (CLI-13) cli#759)./components/data-apps/link intransformations/mappingsnow points at/data-apps/.After Michal's Cursor review (25.09)
opportunity.csv, with a prompt of its own, so a reader with no project or data can still follow the page.Evidence
kbagentanddataapp-developerplugins went from the prompt to a running app in project 264 (App ID 74021867) in about 11 minutes.codex plugincommands on the page work. With the page's prompt, the agent stayed on kbagent end to end (App ID 74022065). Its data check found the missing git block, and it asked before applying the fix. After the yes, the app ran and loaded its data ("Loaded 1244 daily order counts"), and the agent returned both the app URL and the link to its page in Keboola. Its first push failed withRepository not founduntil it cleared Git's cached credential helper, and the Terminal tab now pushes that way.VERIFY.check-cli-reference: 0 findings. The build is clean,audit-phase2reports 0 broken links, anddocs-link-redirect-checkreports 0 blockers.Known issues the page works around
--use-managed-git-reponever gets a workspace, which is still the case in kbagent 0.95.0. The fix is managed-repo data apps never get a workspace on first deploy cli#765 (open). The page shows theconfig updatefix. Remove it, Terminal step 5 and the troubleshooting row once Prefill env checkbox to collect URL #765 ships.dataapp-developerplugin's own MCP server is set tohttps://mcp.us-east4.gcp.keboola.com/mcpassse. Claude Code gets HTTP 405 from it, and Cursor and Codex ask the user to sign in. For most users it's the wrong stack. The fix belongs in keboola/ai-kit.@keboola/api-client39.0.0 callsPromise.withResolvers, which the app runtime's Node.js 20.19 lacks. The template's^27.0.0works.public/data-apps/is a 09.07 snapshot, flaggedVERIFY.Before merge
VERIFYitems for Michal's runs:/data-apps/build-with-an-agent/, needs confirming with Michal.🤖 Generated with Claude Code