App Studio
/workspace · version 3.45 · 2026-11-05
Capabilities
App Studio (/workspace) is where you build and change an app. Header: App · Preview · Agents. Code, Publish, Domains, Servers & fuel, Logs, Connections, Build kit, Data, Files and Grow are sections inside App. There is no Chat tab — the composer sits beside Preview. Talk is not this lane. If you shared the project and allowed an editor to run AI, a banner says a collaborator is running an update and offers Stop it. Anything already saved stays. The person you shared with does not get that button.
Preview — Live preview (Document / Media on those projects) plus the composer beside it
Agents — what chat sees and Connect tools for this project
App — sections: Overview, Code, Publish, Domains, Servers & fuel, Logs, Connections, Build kit, Data, Files, Grow
What is App Studio?
App Studio (/workspace) is where you build and change an app. The switcher says App Studio chat. That is the writing lane, not a tab named Chat.
Talk on My Kontext is where you reach Kontext. This page is generate, files, preview, and deploy for one project. Pick the project first.
The header tabs
Header: App · Preview · Agents. Code, Publish, Domains, Servers & fuel, Logs, Connections, Build kit, Data, Files and Grow are sections inside App. There is no Chat tab.
Publish
There is no Platform menu. Publish beside the views opens App → Publish; the sections are always in view inside App. General Chat in the left rail lands on Preview. On a phone, a Chat icon opens a sheet — same lane, not another header view.
New app vs an update
A new app starts from a description in the App sidebar (or General Chat). You get a new project. An update is a targeted change to an app you already have — “fix the settings page,” not “invent a second product.” Launchpad is a twelve-step Path you approve (ten planning steps, two after the build; your mode hides some), then phased build. It is not this composer, and it is not Talk.
Deploy and your app’s data
There is no “only the look” deploy. If people already use the app, ask for an upgrade so the data stays. A reinstall can wipe it. Hosting fuel keeps that server running. AI credits pay generate. Emptying one does not fill the other.
App Studio Agents vs /agents
App Studio Agents is What chat sees plus Connect tools for this project. The Agents module button opens /agents.
Connect tools stays off until at least one agent is on under What chat sees.
Your Kontext address
After Servers & fuel and a deploy, each app gets a free address like your-app.kontext.network. Open App → Domains. The top card is Your Kontext address — included with the app. People visit this unless you connect your own domain below. To rename it, press Change this address, type the New address, and Save address. The old address stops working so someone else can use it. HTTPS on the new one can take a minute. Collaborators cannot rename it — the owner does. A purchased or existing domain is optional, in the tabs under that card: New Domain, Existing Domain, Manage. Hub → Money → Your domains lists the free names (they say free) and purchased ones. Rename happens on Domains, not on Hub.
Not yet
App Studio is where project work happens — App, Preview (with the composer) and Agents; App holds Code, Publish, Domains, Servers & fuel, Logs, Connections, Build kit, Data, Files and Grow. All WS- and WT- journeys below cover opening the right project, every leaf, and returning without losing context.
Projects & handoffs — Create/open project, confirm context, route to Launchpad, OS, Business, or Agents
App Studio views — App, Preview, Agents and the App sections; see the App Studio chapter for the live header
One module — Journeys and tab guides together; no separate “tab journeys” module
The App Studio is where deep project work happens once you’ve picked a project: AI chat, files, context, infrastructure, deploy, and preview. Open it from Kontext OS, the global module switcher, or deep links; it uses the same project selector pattern as other project-aware modules app-wide.
App Studio → App → Grow (formerly Ecosystem)
Entry: App Studio → select project → App → Grow · Also: post-generation modal after AI build
Grow is the post-build flywheel — one checklist linking your project to every distribution module.
| Feature | Intent |
|---|---|
| Growth flywheel checklist | Promote on Network, Community post, Marketplace listing, University course, Business solution live, Creator video |
| Flywheel progress | Tracks completed steps; KTX rewards when steps complete |
| Convert to Business | One-click retrofit generated app → Business solution |
| Marketplace listing | Start seller flow from project context |
| Linked KRNs on courses/programs | University instructor settings reference project KRNs |
Additional platform modules (quick reference)
| Module | Route | Intent |
|---|---|---|
| Agents | /agents |
Recipe-first agent & automation studio |
| Collaborations | /collaborations |
Collaboration rooms directory |
| Refine | OS window | Design polish on generated apps |
| App Studio publish window | OS window | Live site, database, hosting, deploy without the full App Studio layout |
| Project Management | /projectManagement |
Internal team project tracking |
| Kontext Team hub | OS desktop (team role) | Helpdesk, PM, Google Workspace, Social shortcuts |
| Profile (business card) | /profile/:handle |
Public portfolio — projects, stats, message button |
| Pricing | /pricing |
Subscription tiers and checkout |
| Gas Station | /gas-station |
Fuel hosted lanes |
| KRN resolver | /r/<krn> (the older /r?krn= still resolves) |
Open any platform resource by canonical ID |
Cross-module sharing
| Feature | Intent |
|---|---|
| Unified ShareMenu | Network, Messenger, copy link, KRN — from listings, posts, projects |
| OG / link previews | Rich cards when sharing URLs across modules |
| Site Lift | Background design improvement jobs with notification when ready |
| PWA install | Add Kontext to home screen; mobile-optimized module shells |
Main Features
1. AI-Powered Chat Interface
Models
- Generation runs on the Kontext Engine. Your own model keys are set under Profile → API keys.
Natural Language Development
- Generate code from descriptions
- Update multiple files at once
- Refactor entire codebases
- Fix bugs with conversational commands
- Add features through chat
Streaming Responses
- Real-time code generation
- Stop generation anytime
- Smart scrolling (respects user navigation)
- File attachment support (images, PDFs, docs)
Context-Aware Intelligence
- AI understands your entire project structure
- Knows your coding standards and rules
- Aware of all your files and dependencies
- Respects your styling preferences
- Uses your code templates
2. Intelligent File Management
Smart File Tree
- Hierarchical project structure
- Quick file search (CMD/CTRL + P)
- File creation, renaming, deletion
- Drag-and-drop organization
- Smart filtering and sorting
Multiple File Types
- Code files (JS, TS, TSX, CSS, HTML)
- Configuration files (JSON, YAML, TOML)
- Documentation (MD, TXT)
- Images (PNG, JPG, SVG, GIF, WebP)
- Documents (PDF, DOCX)
- Data files (CSV, JSON)
Advanced File Operations
- Bulk upload/download
- File chunking for large files (>2MB)
- Integrity checksums
- File tagging and categorization
- Description and metadata
- Version history tracking
File Sharing
- Generate shareable links
- Set expiration dates
- Download limits
- Revoke access anytime
- Track download counts
3. Monaco Code Editor
Full VS Code Experience
- Syntax highlighting for 50+ languages
- IntelliSense auto-completion
- Multi-cursor editing
- Find and replace (with regex)
- Code folding
- Minimap navigation
Advanced Features
- Command palette (CMD/CTRL + SHIFT + P)
- Go to definition
- Bracket matching
- Code formatting
- Multiple themes
- Custom key bindings
4. Side Panel System
Multiple Panels
- Files Panel - File tree and management
- Context Panel - AI context controls
- Database Panel - Database management
- Agents Panel - Agent deployment and management
- Domains Panel - Domain configuration
- Deploy / Hosting — Server pairs, deploy flow, and (where integrated) Gas Station shortcuts for lane fuel
- Settings Panel - Project preferences
Panel Features
- Resize and drag
- Minimize/maximize
- Pin/unpin
- Keyboard shortcuts
- Context persistence
5. Live Preview
- Real-Time Updates
- Hot module replacement
- Instant refresh on save
- Mobile/tablet/desktop preview
- Responsive design testing
- Console output
- Network request inspection
User journeys
WS-01. Create or open a project
Path: Kontext OS → App Studio → project picker
You do:
- Open App Studio from the dock, module switcher, or
/workspaceroute. - Click the project dropdown in the window chrome (or Create project if the list is empty).
- Enter a name and confirm type (standard app vs template) when creating new.
- Wait for project metadata and canister bindings to load.
- Confirm the project name appears in the title bar before switching tabs.
- Note the project id in the URL
?project=param if you need a bookmarkable link.
Result: Project-scoped tabs (Chat, Context, Deploy, …) load against the correct canister data — not general chat.
WS-02. Confirm project context before tab work
Path: App Studio window chrome → active project indicator
You do:
- Glance at the chrome title and project dropdown — wrong project causes wrong deploys.
- If multiple OS windows are open, check which window has focus.
- Switch projects from the dropdown instead of opening a second App Studio blindly.
- After switching, wait for tab content to reload project-scoped data.
- Open Hosting briefly to verify canister IDs match your mental model of this app.
- Proceed to Chat, Deploy, or other tabs only after the active project is confirmed.
Result: Every tab action targets one project; avoids cross-project file saves and deploy mistakes.
WS-03. Navigate primary App Studio tabs
Path: App Studio → header App · Preview · Agents
You do:
- With a project selected, scan the header — App, Preview, Agents. Preview is the live preview (label Document or Media on those project kinds).
- Open App → Build kit for this project’s AI knowledge; App → Code for raw files; Agents for What chat sees / Connect tools only.
- Use App → Grow after builds for flywheel and Business convert — not during first prompt.
- Talk to the assistant in the composer beside Preview (desktop) or the Chat sheet (phone). There is no Chat tab.
- Notice General Chat in the left rail is the shared composer — it lands on Preview.
- Bookmark: write in the composer, validate in Preview, ship under App → Publish.
Result: You know which surface owns which job — generation, knowledge, code, project agents, growth.
WS-04. Use the App → Go live sections
Path: App Studio → App → Publish · Domains · Servers & fuel · Logs
You do:
- Open App (or press Publish beside the views).
- Start at Servers & fuel — credits, server pairs, canister IDs — before every deploy.
- Move to Publish for build logs and release actions.
- Open Logs after deploy when debugging runtime traps or HTTP failures.
- Configure Domains only after a successful deploy to a live frontend canister.
- Use deep links (
?tab=deploy&project=…) when returning from Launchpad or OS shortcuts.
Result: Infrastructure and shipping stay in one ordered path — fund, deploy, diagnose, brand.
WS-05. Use the App → Data sections
Path: App Studio → App → Data · Files
You do:
- Open App — Data and Files are sections there, not header views.
- Open Data to browse schema and run read queries against live backend data.
- Open Files for secrets, uploads, and static assets — not for Motoko table rows.
- Add secrets in Files before referencing names in Build kit or agent profiles.
- Cross-check Chat answers against Data when data shape questions matter.
- Return to App → Publish if schema changes require a backend upgrade on chain.
Result: Data inspection and asset/secrets management stay separated and discoverable.
WS-06. Hand off from Launchpad to App Studio
Path: Launchpad generation complete → Open in App Studio
You do:
- Finish a Launchpad build or iteration session for a project.
- Click Open in App Studio, Continue in Chat, or the equivalent handoff CTA.
- Confirm navigation lands on
/workspacewithprojectand oftentab=chatortab=previewintent. - Wait for Chat or Preview to consume the pending generation payload.
- Accept files in Chat if the handoff left pending applies.
- Follow the post-generation flywheel modal if it appears — or dismiss and use App → Grow later.
Result: Launchpad output becomes durable App Studio sources without re-describing the app.
WS-07. Open a project from My Kontext
Path: /os → My Kontext explorer → project icon shortcuts
You do:
- Open My Kontext or the OS project explorer from the shell.
- Locate your project card or row in the recent / all projects list.
- Click a shortcut icon — Chat, Preview, Deploy, etc. — if offered on the card.
- Confirm App Studio opens with the correct
tabandprojectquery params. - If the wrong tab opens, use App Studio's own rail without re-picking the project.
- Pin frequently used projects in OS if your layout supports favorites.
Result: Faster entry from OS home into the exact App Studio surface you need.
WS-08. Share a project link or KRN
Path: App Studio or Share menu → copy link / KRN
You do:
- With the project open, open Share from the chrome or ecosystem surfaces if available.
- Copy the App Studio deep link with
projectid and optionaltabparam. - Copy the project KRN when collaborating across Marketplace, University, or Network modules.
- Send the link to teammates who already have Kontext access — they still pick their own login.
- Avoid sharing secrets; links open project context, not Storage values.
- Verify recipients land on the same project name in their chrome after opening.
Result: Collaborators and modules reference one canonical project identity.
WS-09. Jump from App Studio to OS Intelligence
Path: App Studio chrome → OS / My Kontext → /os
You do:
- From App Studio, open the OS shell or module switcher — do not confuse with project Agents tab.
- Navigate to
/osor My Kontext for Daily Brief, Employees, and Automations. - Keep the same Kontext account — OS reads account-level state, not per-project Chat files.
- Delegate tasks to linked project agents from OS Chat when employees are configured.
- Return to App Studio via dock App Studio or recent project shortcut when coding again.
- Use OS for operations; use App Studio for app source and deploy.
Result: Clear boundary — OS Intelligence runs the business layer; App Studio builds the app.
WS-10. Jump from App Studio to Kontext Business
Path: App Studio → App → Grow → Convert to Business · or Business handoff chrome
You do:
- Ensure the app is deploy-ready and core flows work in Live Preview.
- Open App → Grow and start Convert to Business (or use Business chrome entry when shown).
- Complete the conversion wizard — solution name, blueprint, agent hooks.
- Land on
/businessand locate the new solution under Your solutions. - Confirm CRM surfaces — leads, inbox, pipeline — reference the same project KRN.
- Continue code changes in App Studio; run campaigns and inbox in Business.
Result: One project powers both the custom app and the owner-operated Business cockpit.
WS-11. Jump from App Studio to Agents module
Path: App Studio → Agents tab → Agents module · or module switcher → /agents
You do:
- In App Studio, open Agents for awareness toggles — not for full agent authoring.
- Click Agents module to open
/agentswith project context when supported. - Create or edit agents, automations, and Connected services in the recipe-first studio.
- Link to project on agents that should appear in App Studio What chat sees.
- Return to App Studio Agents tab and enable chat awareness for linked agents.
- Invoke them from Chat on this project.
Result: Build and registry in /agents; project-scoped enablement stays in App Studio.
WS-12. Return from a module to the same project tab
Path: External module → back to /workspace?project=&tab=
You do:
- Note your project id and tab before leaving App Studio — e.g. mid-deploy on Deploy.
- Complete work in Business,
/agents, Marketplace, or Network via flywheel deep links. - Use browser back, OS dock App Studio, or a bookmarked
?project=&tab=URL to return. - Confirm the chrome project name matches before clicking Deploy or Accept in Chat.
- If session intent expired, re-select the project from the dropdown — tab intent TTL is short.
- Resume the interrupted task — deploy, Chat iteration, or DNS verify.
Result: Cross-module workflows do not strand you on the wrong project or tab.
WS-13. Follow the post-generation flywheel modal
Path: Chat generation complete → post-generation modal → App → Grow / next steps
You do:
- After a major generation, read the post-generation modal — preview, deploy, ecosystem CTAs.
- Choose Preview to validate UI before spending deploy credits.
- Or choose Deploy when preview already passed your checklist.
- Open App → Grow from the modal to see the full flywheel checklist.
- Dismiss only when you know your next step — modal is a map, not a blocker.
- Reopen the same checklist anytime from App → Grow.
Result: New builders get a guided path from files saved → preview → ship → distribute.
WS-14. Open App Manager instead of the full layout
Path: Kontext OS → compact App Studio publish window · project-scoped shortcut
You do:
- From OS app catalog, open the compact App Studio publish window for a lighter deploy/database/hosting shell.
- Select the same project you use in full App Studio when prompted.
- Use the compact window for quick hosting top-up, deploy, or database peek when Chat is not needed.
- Switch to full App Studio when you need Preview, Build kit, or the Grow flywheel.
- Keep project ids aligned — the compact window and full App Studio share one backend project record.
- Close the compact window when done; OS window state does not auto-deploy by itself.
Result: Power users get a compact ops surface; full App Studio remains the build + growth home.
WS-15. Switch projects with pending Chat work
Path: App Studio → project dropdown · pending apply banner
You do:
- Before changing projects, check Chat for pending file applies or unsent composer drafts.
- Accept or discard pending changes for the current project — they do not carry over.
- Switch project from the chrome dropdown; wait for tab content reload.
- Verify Hosting canister ids changed to the new project's infrastructure.
- Re-open Agents awareness toggles — they are per-project metadata.
- Avoid deploying until you re-confirm which project is active.
Result: Clean project switches without losing work silently or deploying to the wrong canisters.
WS-16. Stop a collaborator’s AI update
Path: App Studio → a project you own and shared → the banner
You do:
- Share the project and allow that editor to run AI.
- While they are running an update, read A collaborator is running an AI update on this project.
- Press Stop it.
- If several are running, the banner says how many.
Result: The update stops. Anything already saved stays in the project. The person you shared with does not see this button. You also get a notice when their update starts, finishes, or does not finish.
WT-01. Generate a greenfield app from Chat
Path: App Studio → App tab (sidebar composer or General Chat) → new or selected project
You do:
- Open App Studio and select the target project (or create one from the picker).
- Use the App sidebar composer (or General Chat) and describe the app in plain language — audience, core screens, and data it should store. There is no Chat tab.
- Answer any follow-up questions the assistant asks about auth, styling, or integrations.
- Wait for generation to finish; watch the progress panel for spec and file phases.
- When files appear in the side pane, skim the file list for expected routes and backend modules.
- Confirm the project title in the chrome matches the app you asked for before leaving Chat.
Result: New app files persist to the project; Context, Deploy, and Live Preview read the same files next visit. This is greenfield (a new app). A precision update edits an existing project. Launchpad is phased work you approve — not this Chat generate. A default deploy can wipe the app database; ask for an upgrade to keep data.
WT-02. Iterate on an existing app in Chat
Path: App Studio → App sidebar composer → follow-up prompt
You do:
- Select the project that already has saved files.
- In the App sidebar (or phone Chat sheet), describe the change — e.g. add a screen, fix copy, extend the backend API.
- Reference specific files or UI areas if you know them; otherwise let the assistant locate targets.
- Review the assistant's plan or diff summary before accepting large structural changes.
- Send clarifying follow-ups until the side pane shows the files you expect.
- Save or accept pending changes when the iteration matches your intent.
Result: Incremental edits land in project storage without a full regen; Deploy and Preview reflect accepted files.
WT-03. Review generated files in the side pane
Path: App Studio → App tab → file side pane beside the composer
You do:
- During or after generation, open the file side pane beside the composer.
- Expand folders and open key files — entry component, main page, backend
main.moor API layer. - Compare filenames and paths against what you asked for in the prompt.
- Flag missing routes or assets in a follow-up Chat message instead of editing blindly elsewhere.
- Use preview links or Code tab if you need a read-only view outside the pane.
- Note any files marked pending until you accept them in the next step.
Result: You validate structure before accept/save; fewer surprise deploy failures from unchecked output.
WT-04. Accept and persist file changes from Chat
Path: App Studio → Chat tab → accept / apply files
You do:
- When generation or an update completes, review pending changes in the side pane or apply banner.
- Open diffs for critical files — auth, payments, schema — before accepting all.
- Click Accept, Apply, or equivalent to write files to the project canister.
- Wait for the save confirmation toast or status line in Chat.
- Switch to Code or Live Preview briefly to confirm files loaded without stale cache.
- Return to Chat only if something still looks wrong; avoid double-applying the same batch.
Result: Accepted files are durable project sources; Context rules and Deploy see the latest version.
WT-05. Add code rules in Context
Path: App Studio → App → Build kit → Code rules
You do:
- Open the project and go to App → Build kit (project AI knowledge — not OS AME on
/os). - Select Code rules (or the rules section in the Context layout).
- Add conventions — naming, folder layout, forbidden patterns, preferred libraries.
- Paste or write short, testable rules the model can follow on the next turn.
- Save Context; confirm the timestamp or saved indicator updates.
- Send a small Chat prompt to verify the assistant cites or follows a new rule.
Result: Project-scoped rules steer Chat and generation without polluting global OS memory.
WT-06. Document environment notes in Context
Path: App Studio → App → Build kit → environment / env notes
You do:
- Open App → Build kit for the active project.
- Open the environment or Env notes section (non-secret configuration only).
- Document public URLs, feature flags, staging vs production behavior, and third-party sandbox modes.
- Cross-reference secret names here if needed — store actual values in Storage, not Context prose.
- Save Context after edits.
- In Chat, ask the assistant to respect an env note you just added and confirm it does.
Result: The AI understands deployment context; secrets stay in Storage where Deploy resolves them.
WT-07. Add documentation items for AI reference
Path: App Studio → App → Build kit → documentation items
You do:
- Open App → Build kit and navigate to Documentation items (or linked docs / reference files).
- Add items the assistant should read — API notes, product briefs, support macros, PDF summaries.
- Set titles and tags so Chat can pick the right item when you @-mention or ask by name.
- Upload or link content per the in-product controls; avoid duplicating huge blobs in Chat.
- Save Context and note which items are included in chat context vs archive-only.
- Test with a Chat question that should pull from one documentation item.
Result: Long-lived reference material feeds project AI turns without re-pasting every session.
WT-08. Configure design palettes in Context
Path: App Studio → App → Build kit → design / color palettes
You do:
- Open App → Build kit and find Design palettes, color tokens, or styling references.
- Enter brand primary/secondary colors, typography hints, and spacing preferences.
- Attach inspiration links or palette screenshots if the UI supports design references.
- Align palette names with tokens you expect in generated CSS or Tailwind config.
- Save Context.
- Run a small Chat change (e.g. restyle a header) and confirm colors match the palette.
Result: Visual consistency across Chat iterations; Refine and generation share the same design signals.
WT-09. Edit template Config (form and JSON)
Path: App Studio → Config tab (template / WASM projects)
You do:
- Open a template or WASM-scaffold project where Config appears in the tab rail.
- Go to Config — not available on all standard React projects.
- Use the form editor for high-level template fields (labels, defaults, feature toggles).
- Switch to the JSON view for advanced keys; validate syntax before saving.
- Save Config and note any reload prompt for Live Preview.
- Open Live Preview to confirm template-driven UI reflects Config changes.
- If Deploy is required for backend template hooks, queue Deploy after Config save.
Result: Template metadata updates without hand-editing generated scaffold files in Code.
WT-10. Browse Database tables
Path: App Studio → App → Data
You do:
- Select a deployed project with a Motoko or platform database backend.
- Open the Data group and choose Database.
- Wait for schema load — tables and columns list from the live canister or dev binding.
- Click a table to inspect rows; use pagination if the table is large.
- Note primary keys and relationships before writing ad-hoc queries.
- Copy sample row values only if they are non-sensitive test data.
Result: You understand live data shape before queries, Chat schema questions, or Business retrofits.
WT-11. Run ad-hoc Database queries
Path: App Studio → Database tab → query runner
You do:
- Open Database for the project with a connected backend.
- Select the query or SQL/Motoko runner panel (per project type).
- Write a read-only query first —
SELECT-style or Motoko query method — to limit risk. - Execute and review results in the grid; check row counts and nulls.
- Adjust filters or joins; re-run until the answer matches your question.
- Export or copy results if the UI offers it for support tickets or Chat context.
- Avoid destructive writes unless you intend a data migration and have a backup plan.
Result: Direct data answers without a full redeploy; findings can inform Chat or Business field mapping.
WT-12. Store secrets in Storage
Path: App Studio → App → Files → secrets
You do:
- Open Storage for the project.
- Navigate to Secrets or env key storage (not public asset buckets).
- Add a secret name and value — API keys, webhook signing secrets, OAuth client secrets.
- Mark scope per product guidance (deploy-only vs agent-resolvable).
- Save and confirm the secret appears in the list without exposing the value in Code.
- Reference the secret name from Config, Context env notes, or agent profiles — never paste the raw value in Chat.
Result: Deploy and linked agents resolve secrets at runtime; repo files stay free of credentials.
WT-13. Upload project assets to Storage
Path: App Studio → Storage tab → uploads / assets
You do:
- Open Storage and choose the uploads or assets area for the project.
- Upload images, fonts, PDFs, or static files the app or agents should serve.
- Wait for upload completion and copy the asset URL or storage key if shown.
- Reference the asset from Chat ("use logo from Storage") or from code paths the assistant maintains.
- Verify file size and MIME type meet hosting limits.
- Open Live Preview or deployed URL to confirm the asset renders.
Result: Static files live in project storage; Chat and Deploy can bind them without external hosting.
WT-14. Review Hosting credits and balance
Path: App Studio → App → Servers & fuel
You do:
- Open Hosting under the Publish group for the active project.
- Read current credits balance and recent debit lines (deploy, agent server, cycles top-up).
- Note whether the project uses a shared Main Agent pair or dedicated infrastructure.
- If balance is low, follow the in-product link to Gas Station or account billing to add credits.
- Confirm hosting status shows healthy — not frozen or pending provisioning.
- Keep this tab open when planning Deploy so you know charges will succeed.
Result: Deploy and agent operations won't fail mid-flight for insufficient hosting credits.
WT-15. Inspect server pairs and canister IDs
Path: App Studio → Hosting tab → infrastructure details
You do:
- Open Hosting for the project.
- Locate server pairs — Main Agent runtime, app server, or workflow host assignments.
- Expand frontend and backend canister IDs assigned to this project.
- Copy IDs to a support ticket or runbook if debugging with the team.
- Check cycle or health indicators per pair when shown.
- Do not swap canister IDs manually unless documentation explicitly guides a recovery flow.
Result: You know which on-chain identities serve this app — essential for DNS, support, and Business handoffs.
WT-16. Run a deploy and read the build log
Path: App Studio → App → Publish
You do:
- Confirm Hosting has credits and canister IDs provisioned.
- Open Deploy and review pre-deploy summary — changed files, target environment.
- Click Deploy (or Build & deploy) and watch the build log stream.
- Note compile steps for frontend bundle and backend Motoko (or template) phases.
- Wait for success confirmation and recorded canister upgrade hashes if shown.
- On success, open Live Preview or the live URL to spot-check the build.
- Copy deploy timestamp from the log for your release notes.
Result: Production canisters match accepted project files; log is your audit trail for what shipped.
WT-17. Recover from a failed deploy
Path: App Studio → Deploy tab → failed build log
You do:
- After a failed deploy, stay on Deploy and scroll the build log to the first error line.
- Read the structured error summary — missing import, Motoko type error, bundler failure, cycles.
- Use Copy fix message or equivalent to paste context into Chat if offered.
- Apply fixes via Chat; accept files; optionally validate in Live Preview first.
- Return to Deploy and retry — do not spam deploy if Hosting credits are exhausted.
- If errors mention infrastructure, check Hosting and Gas Station before a third attempt.
- Escalate with log excerpt and canister IDs if the same error repeats unchanged.
Result: Failures become actionable fixes instead of blind retries; fewer broken production states.
WT-18. Read canister logs after deploy
Path: App Studio → App → Logs (canisterLogs)
You do:
- Open Logs (canister logs) under Publish after a deploy or when debugging runtime errors.
- Select frontend or backend canister if the UI splits streams.
- Filter or scroll to the time window matching your repro steps.
- Look for trap messages, HTTP 500 equivalents, or actor call failures.
- Copy relevant log lines into Chat or a support ticket with the deploy timestamp from Deploy.
- Cross-check Live Preview — client-only bugs may not appear in canister logs.
Result: Runtime evidence complements build logs; faster diagnosis of post-deploy bugs.
WT-19. Validate UI in Live Preview
Path: App Studio → App tab
You do:
- Open App (live preview) for the active project. On a Docs or Media project the label is Document or Media.
- Wait for the embedded preview to compile and mount — note any compile overlay errors.
- Click through primary user flows: sign-in, create/read data, navigation, forms.
- Resize or toggle device frames if mobile layout matters for your app.
- Compare preview behavior to what you described in Chat; log gaps as follow-up prompts.
- Do not treat preview as production DNS — it validates UI and client logic pre-deploy.
Result: Lower-risk releases — many compile and UX issues caught before Deploy.
WT-20. Close the Preview → Chat fix loop
Path: App preview → composer → back to preview
You do:
- Reproduce an issue in App (live preview) — layout break, wrong data, missing route.
- Note the screen name and action that failed; screenshot mentally or copy error text.
- Use the App sidebar composer (or phone Chat sheet) and describe the bug with repro steps; reference preview, not production URL.
- Accept fixed files from the assistant; wait for save confirmation.
- Return to App preview — hard refresh if the embed caches aggressively.
- Re-run the same flow until preview passes your checklist.
- Proceed to Deploy only when preview matches acceptance criteria.
Result: Tight iteration loop without editing raw files unless you choose Code tab.
WT-21. Configure Mobile / EAS build panel
Path: Live Preview or Deploy → App Store & Play — EAS panel
You do:
- Open Live Preview, Deploy, or follow a Launchpad handoff to the EAS / mobile panel.
- Confirm the project includes a mobile/ tree or React Native scaffold from generation.
- Enter or upload Expo / EAS credentials, app identifiers, and store listing assets per checklist.
- Set build profile (development vs production) and trigger a cloud build if ready.
- Monitor build status and download artifacts when complete.
- Follow App Store Connect and Google Play submission steps linked in-product.
- Keep secrets in Storage, not in committed mobile config files.
Result: Mobile shipping stays in one App Studio surface instead of scattered CLI notes.
WT-22. Set your Kontext address or add a custom domain
Path: App Studio → App → Domains
You do:
- Deploy once with Hosting so the app can claim a free address like your-app.kontext.network.
- Open Domains. The top card is Your Kontext address — included with the app. People visit this unless you connect your own domain below.
- To rename it, press Change this address, type the New address, and Save address. The old address stops working so someone else can use it. HTTPS on the new one can take a minute.
- If you are a collaborator (not the owner), Change this address stays off — the owner changes it.
- A purchased or existing domain is optional. Use New Domain, Existing Domain, or Manage below the Kontext card.
- Hub → Money → Your domains lists free
*.kontext.networknames (labeled free) and purchased ones. Rename happens on Domains, not on Hub. *.icp0.iois the canister URL, not the Kontext address. Use it only as a fallback while a custom name is still connecting.
Result: Visitors use your-app.kontext.network (or your own domain if you connected one). Hosting canister IDs stay the same.
WT-23. Toggle chat-aware agents (Agents tab)
Path: App Studio → Agents tab → What chat sees
You do:
- Open the project and go to Agents — the project powers hub, not full
/agentsstudio. - Stay on What chat sees (chat awareness).
- Review linked agents and automations eligible for this project.
- Toggle chat awareness on for agents App Studio chat may invoke; leave off what you want dormant.
- Save selection — persisted as project metadata for the next Chat session.
- Open Chat and ask a task that should use an enabled agent; confirm routing in the trace if shown.
Result: Chat uses only agents you explicitly enabled for this project — awareness without rebuilding agents here.
WT-24. Connect tools from Agents tab
Path: App Studio → Agents tab → Connect tools
You do:
- Enable at least one agent under What chat sees — Connect tools stays locked otherwise.
- Switch to Connect tools.
- Open Connected services for agent-scoped OAuth — Gmail, Notion, Slack, etc.
- Complete OAuth for apps the enabled agents need; prefer least-privilege scopes.
- Enable KESA (Kontext Ecosystem) before external apps when the task can stay in-platform.
- Return to Chat and run a task that requires the service you connected.
Result: Project-scoped tool wiring for chat-aware agents; full agent create/edit remains in /agents.
WT-25. Open full Agents module from App Studio
Path: App Studio → Agents tab → Agents module CTA
You do:
- From Agents tab, click Agents module (external link) in the header.
- Land on
/agentswith project context preserved where supported. - Create, edit, or deploy agents and automations in the recipe-first studio.
- Use Link to project on an agent card to attach it back to this App Studio project.
- Return to App Studio → Agents → What chat sees to enable chat awareness.
- Test from Chat — build in
/agents, operate awareness in App Studio.
Result: Clear split — registry and deploy in /agents; project powers and chat toggles in App Studio.
WT-26. Advance the Grow flywheel checklist
Path: App Studio → App → Grow → growth flywheel
You do:
- Open App → Grow after a successful build or deploy (or from the post-generation modal).
- Review the Growth flywheel checklist — Network post, Community, Marketplace, University, Business, Creator video, etc.
- Pick the next incomplete step aligned with your go-to-market plan.
- Click the step CTA — deep links open the target module with project KRN context prefilled.
- Complete the action in the target module (e.g. draft Marketplace listing, publish Network post).
- Return to App → Grow and confirm the step marks complete and progress advances.
- Note any KTX or rewards messaging when steps complete.
Result: One checklist ties the project to distribution modules instead of hunting links manually.
WT-27. Convert project to Business from Grow
Path: App Studio → App → Grow → Convert to Business
You do:
- Open App → Grow when the app is deploy-ready and data model is stable enough for CRM use.
- Find Convert to Business (or Business flywheel step) on the checklist.
- Start the wizard — confirm project KRN, solution name, and owner account.
- Review blueprint preview — forms, pipeline, and agent hooks Business will inherit.
- Complete conversion and follow the handoff link to
/business. - Verify the solution appears under Your solutions with linked App Studio project.
- Keep iterating app code in App Studio; operate leads and inbox in Business.
Result: Same underlying project becomes a Business solution without rebuilding from scratch.
How it works
Route /workspace. Project-scoped App Studio. Views App · Preview · Agents; App sections Overview, Code, Publish, Domains, Servers & fuel, Logs, Connections, Build kit, Data, Files, Grow; the composer sits beside Preview. Project files and credits on the user canister; compile/bundle via platform tooling; deploy to IC server pairs.
Benefits
- Ship full-stack apps from the browser.
- Same project identity flows into Business, Marketplace, University, and Media.
- App → Grow turns a finished build into distribution steps.
Who it's for
Primary: builders generating and iterating apps. Also: owners editing solutions from Business or Launchpad. Not: non-technical owners who only want CRM/inbox (use Kontext Business).