Skip to main content
When your Gumloop agents generate files during a conversation, those files are saved as artifacts. You can preview, download, share, and version reports, spreadsheets, images, code files, and HTML dashboards from the chat.

How artifacts work

When an agent generates a file in its sandbox (using code execution, data processing, or any tool that produces a file), it exports the file using a built-in export tool. The export:
1

Saves the file

The file is written to secure cloud storage.
2

Creates a version

Gumloop records a versioned artifact for it.
3

Generates previews

Preview thumbnails and representations are built.
4

Shows it in chat

The file appears as a rich card in the conversation.
No export setup is required. Files appear in the conversation when the agent exports them.

Viewing artifacts

When an agent exports a file, it appears as a card in the chat message showing its display name or filename, file type icon, and a thumbnail preview (for supported types). Click the card to open a side panel preview without leaving the chat.
On mobile, tapping a file card opens the viewer page in a new tab instead of a side panel, and auto-preview of new files is disabled so it doesn’t interrupt the chat.

Supported preview types

Gumloop can render inline previews for many file types:
Files larger than 50 MB are download-only instead of being previewed inline.

Actions

From the viewer page or the in-chat card, you can perform several actions on an artifact:

How do I change a file’s display name?

Owners and Editors can give an artifact a display name without renaming the underlying file. The name appears on artifact cards, in the viewer, and in search. Changing it does not change the downloaded filename, file contents, artifact link, or version history.
1

Open the artifact's Settings

Open the artifact, then select Settings.
Artifact Settings showing the Quarterly report display name, thumbnail, Copy link, and Upload thumbnail

The display name and thumbnail controls are at the top of Settings.

2

Edit the display name

Double-click the name, enter up to 256 characters, and press Enter or click outside the field to save. Press Escape to cancel. Clear the name to use the filename again.

How do I change a file’s thumbnail?

Owners and Editors can upload a custom thumbnail for an artifact. One thumbnail applies to every version of that file until you replace it or return to the default preview. It changes the cover image, not the file’s contents, and does not create a new version.
1

Choose an image

In the artifact’s Settings, select Upload thumbnail and choose a PNG, JPEG, or WebP image. The upload limit is 5 MB.
2

Crop and save

Adjust the crop, then select Save thumbnail.
Close-up of the thumbnail crop area with Cancel and Save thumbnail controls

Crop an uploaded image before saving it as the file's thumbnail.

3

Return to the default preview when needed

Click the thumbnail in Settings, then select Use default preview to remove the custom image.

Automatic versioning

When an agent exports a file with the same filename multiple times in the same conversation, Gumloop automatically creates new versions instead of overwriting. This gives you a full history of how a file evolved during the conversation.
Version history panel showing Version 2 and Version 1 with timestamps and file sizes
Each version shows:
  • Version number (v1, v2, v3, etc.)
  • Timestamp of when it was created
  • File size
Owners and Editors can open version history and select a version to view. The latest version is shown by default.
Agents are instructed to keep the same filename and let the system handle versioning. If you see files like report_v2.pdf instead of version 2 of report.pdf, you can update your agent’s instructions to tell it not to rename files for versioning.

Sharing & access control

You can control who can view, download, and manage each file.

Share dialog

Select Share from the artifact viewer or its options menu to invite people and set General Access. For separate editing and viewing lists, open Settings:
  • Who can edit: select Add to invite an Editor who can manage the file.
  • Who can view: choose a broader audience or add specific viewers.
  • Password protected link: let other people view the file with a password without removing existing internal access.
General Access menu showing Only people invited, everyone in the organization, and Anyone with the link

Password protection is separate from the General Access menu.

General Access Levels

General Access grants viewing access only, even if an older team, organization, or public grant previously allowed editing. It does not remove a person’s separate Owner or Editor access. To let someone edit a file, invite them as an Editor under Who can edit. The team and organization options include the actual team or organization name. Password protection is configured separately, not selected from this menu.

Password protected artifacts

A Password protected link lets people outside the file’s existing audience view it with a password. Team or organization access can stay enabled at the same time: authorized members do not need the password, while other link visitors do.
1

Turn on the password link

Open Settings, then select Turn on beside Password protected link. You can also select Add password protected link from the Share dialog.
Password protected link section with Turn on and a note that people with viewing or editing access do not need the password
2

Save a password

Enter a password of 6 to 256 characters and select Save. The password link is not active until you save it.
3

Share the link and password

Use Copy link in Settings or Copy share link in the Share dialog. Send the password separately using your usual secure channel.
To give your whole team password-free access, choose that team under the file’s General Access. Team membership or access to the source agent alone is not the same as sharing the file with the team. When a password is required, the file shows a Password field and an Unlock button. Unlocking grants viewing access only, not permission to edit the file.
If General Access is Anyone with the link, saving a password narrows that access first: a team artifact switches to its team, and a personal artifact switches to Only people invited. Choosing Anyone with the link later removes the password link. Turning the password link off removes password-based access and restores normal access inherited from the task or agent. It does not make the file public.
24 hours. After that, a viewer who still needs the password is asked to enter it again.
Changing the password invalidates existing unlocks. Select Turn off beside Password protected link to remove password-based access while keeping the file’s other access settings.
Repeated incorrect guesses are throttled. Correct unlocks are unaffected.
Yes. People who can manage the artifact’s General Access can reveal the saved password in Settings.
Yes. A hosted URL points to the same artifact, so its viewing permissions and password requirement apply there too.
Your organization’s role settings can block external password-protected artifact sharing. If Turn on is blocked, ask an organization admin to review your role’s External password-protected artifact sharing permission.

Default file sharing

Each agent has a Default File Sharing setting that controls how new artifacts are shared when created. You can configure this in Access → File Sharing → Default behavior:
The default sharing setting applies to new artifacts only. Owners and Editors can change an artifact’s sharing after it is created, subject to organization restrictions.

Requesting access

If someone shares a file link with you but you don’t have access:
  • Not signed in: You’ll see a prompt to create a Gumloop account
  • Signed in, no access: You’ll see a Request Access button that sends a notification to the file’s owner or a team admin. If they have Slack connected, they can approve with a single click. They can also approve from their inbox.

Hosting artifacts on a custom domain

Each artifact has a canonical /artifacts/{id} URL. You can also give it a subdomain on gumloopartifacts.com:
This is useful when you want to hand out a clean, memorable link — a dashboard, a report, or an interactive HTML artifact — without exposing the internal artifact ID.
A custom domain is an alternate URL for the same artifact, not a separate copy or a published snapshot. Viewing permissions and version history still apply. Connector behavior differs between gumloopartifacts.com and organization-owned domains; see Your credentials, your data.

Per-artifact domains

Enabling hosting

Hosting is configured per artifact. Open Settings, then select Turn on beside Custom domain. You can also select Add custom domain in the Share dialog. Once enabled, the custom URL appears in Settings and you can edit its alias. You need Owner or Editor access on the file to manage hosting. Hosting does not grant anyone additional viewing or editing access. When you enable hosting, Gumloop derives an alias from the artifact’s filename: the extension is dropped, anything that isn’t a letter or number becomes a hyphen, and the result is lowercased. If that alias is already taken, a suffix is added automatically so enabling never fails on a collision.
Very short names are padded to meet the three-character minimum, and long names are truncated.

Customizing the URL alias

You can rename the alias at any time while hosting is enabled. Aliases follow the same rules as hosted pages:
  • 3–64 characters
  • Lowercase letters, numbers, and hyphens only
  • Must start and end with a letter or number
  • Must be unique across Gumloop
Certain aliases like admin, api, app, auth, beta, docs, gumstack, help, localhost, mcp, sandbox, staging, support, ws, and www are reserved and cannot be used.
Renaming frees the old alias immediately. Anyone holding the previous link will get a dead URL, and the old alias becomes available for someone else to claim.

Authentication and sign-in

The custom domain is a different origin from the main Gumloop app, so visitors who aren’t already signed in there go through a handoff:
1

Open the artifact

A visitor opens your-artifact.gumloopartifacts.com.
2

Resolve the alias

The page resolves the alias to the artifact it serves.
3

Sign in if needed

If the artifact isn’t public, the visitor is sent to Gumloop’s sign-in.
4

Return to the artifact

On success, a one-time token is exchanged for a session on the artifact domain and the visitor lands back on the artifact.
The handoff validates the return URL against the artifact’s own hosted URL, and credentials are never passed through the subdomain directly.
Artifacts whose General Access is set to Anyone open without a sign-in, exactly as they do on the canonical URL.

Versions and access

  • No version pin. The custom domain always serves what /artifacts/{id} serves, so a new version of the artifact appears on both URLs at once.
  • No extra sharing. Hosting does not widen access. A Restricted artifact stays restricted on its custom domain — the URL being public doesn’t make the file public.
  • Canonical links still work. The /artifacts/{id} URL remains available. Settings offers the custom URL for copying once hosting is enabled; links to older versions remain version-specific.

Disabling hosting

Disabling hosting immediately stops the subdomain from resolving. The alias stays reserved for that artifact, so you can turn hosting back on later with the same URL. Deleting the artifact also stops the subdomain from resolving.
Enabling, renaming, and disabling artifact hosting are all recorded in audit logs.

Organization domains

Organization admins can claim one organization-level domain for artifact hosting from Organization Settings.
1

Claim your domain

In Organization Settings, open the Custom artifact domain section, select Add domain, and enter a domain such as yourdomain.com. New artifacts will be shared on this domain once its DNS records are verified. The Add domain button stays disabled until the domain is valid.
2

Add DNS records

Add these records at your domain provider. DNS changes can take up to 48 hours.
3

Wait for verification

Verification runs against those records; use Re-check DNS to check again, or DNS records to see the values you need.
New artifacts are automatically shared on your own domain instead of gumloopartifacts.com.
You can paste the bare domain; casing, http:// or https:// prefixes, paths, and a leading *. are cleaned up for you. Gumloop-owned and other reserved suffixes are rejected, as is a domain another organization has already claimed. Each organization can have one domain at a time, so remove the current domain before adding a different one.

Domain status

Select Remove to deregister the domain. The removal confirmation warns that artifact links on the domain will stop working.

Hosting on the organization domain

Once the domain is Active:
  • Newly exported artifacts from the organization’s agents are automatically given an alias at https://<alias>.<your-domain>, replacing the corresponding <alias>.gumloopartifacts.com URL.
  • The alias is derived and collision-suffixed using the same behavior documented for gumloopartifacts.com aliases.
  • Auto-hosting is best effort, so a hosting failure never fails the artifact export.
  • Auto-hosting is skipped when hosting was explicitly disabled for the artifact or when the artifact already has a hosted alias. An explicitly disabled artifact is not silently re-enabled.
When your organization has an active domain, enabling Custom domain in the artifact’s Settings hosts the file on that organization domain. The file’s sharing permissions still apply. A Restricted artifact stays restricted on the organization domain. An agent can import an artifact from its link — a canonical https://gumloop.com/artifacts/... link, a gumloopartifacts.com link, or a link on your organization’s own artifact domain — and pull that file into its sandbox. When a specific version is named, it is used ahead of any version in the link. A link the agent can’t resolve or doesn’t have access to comes back as simply not found or not accessible, without revealing whether the artifact exists.

HTML artifacts

HTML files get special treatment. Agents can generate fully interactive HTML pages, dashboards, and web applications that render directly in the viewer.

Full screen mode

HTML artifacts support a full screen mode that hides the toolbar and gives the artifact the full browser window. This is useful for dashboards, interactive tools, and presentations. Click the full screen button in the viewer toolbar to enter full screen.

Security

HTML artifacts run in a strict security sandbox. This is important because agents can generate arbitrary HTML and JavaScript. The preview runs on an isolated origin, separate from your Gumloop session. It can read its own artifact files, but cannot read the Gumloop app’s cookies or local storage. Direct connections to external services are blocked; scripts and approved proxy requests provide controlled access. For external HTTP requests sent through the proxy, GET, HEAD, and OPTIONS can proceed without a request-confirmation dialog. Other methods, including POST, PUT, and DELETE, require confirmation. Attached data-script calls use their declared tools, connection settings, and applicable tool policies instead.

Interactive artifacts (live data)

Interactive artifacts are HTML files with attached scripts that load live integration data. The connections those scripts can use depend on the source agent, the file’s sharing settings, and where you open it. See Your credentials, your data.

How they work

When you ask an agent to build something that needs live data, it creates two things:
  1. An HTML file with the layout, styling, and JavaScript for the UI
  2. One or more Python data scripts that fetch data from your integrations at view time
You don’t need to know how the two are wired together. Just ask your agent for a dashboard, report, or tool that uses your connected apps, and it handles the rest.
The HTML calls fetch('/gumloop/data/...') to request data. Gumloop intercepts these requests, runs the matching Python script in a secure sandbox, and returns the results as JSON. The HTML then renders the data.
When you open an interactive artifact for the first time, you’ll see a consent overlay that lists every integration the file can access and the specific actions it can perform.
Integration consent overlay showing the file is requesting permission to use Slack with 1 tool, with an I acknowledge, continue button
You must approve before any scripts run. This is a deliberate security step. It means:
  • You always know exactly which integrations a file will use
  • No data is fetched until you explicitly approve
  • If someone shares a file with you, you decide whether to grant it access to your accounts
Your acknowledgement is saved for that artifact version. Review the listed integrations and actions before continuing.

Your credentials, your data

An interactive artifact’s connections depend on where you open it and how the source agent’s connectors are configured. Sharing a file or giving it a password does not give visitors access to the creator’s personal connections. For example, a dashboard using viewer-owned Slack connections can show each signed-in viewer data from their own Slack account. A connector configured as agent-owned uses the account pinned to the agent instead.
If the artifact has Anyone with the link access or a Password protected link, its scripts cannot use agent-owned connections. This also applies when a password link is kept alongside team or organization access. On an organization-owned artifact domain, that leaves no connector access for the scripts.
Your credentials are never exposed to the HTML itself. Each script receives a short-lived token scoped to the connectors and tools it declares. If a required connector is unavailable, complete the setup prompt before loading that data.

What can you build?

Anything that combines a UI with live integration data. Here are some example prompts:
The more specific you are about which integrations and data you want, the better the result. Tell the agent exactly which tools you want it to pull from.

How teams use interactive artifacts

A shared dashboard can show each viewer data from their own connections. For example, a “My Open Tasks” dashboard with viewer-owned connections shows each person their own tasks. Agent-owned connections instead use the account configured on the source agent, where that access is allowed.

Download buttons

An interactive artifact can also hand you a file, not just a screen of data. Ask for it and the agent adds a button that builds the file when you click it — an Excel export of whatever the dashboard is showing, a filtered CSV, a generated PDF — and your browser saves it like any other download. The script builds the file when you click the button and returns it as a browser download, rather than saving it as a new artifact.
A download runs a script, so it takes a few seconds and costs credits like any other data load. If the script produces nothing, the artifact shows an error instead of saving a file.

Credits

Data script runs use credits for sandbox execution time. For signed-in viewers, usage is attributed to the viewer. Organization members use their organization’s credit balance and any applicable user limits. If a credit limit blocks execution, the script returns an error.

Refreshing data

Data scripts run each time you open the artifact. If the HTML includes a refresh button or auto-refresh timer, each refresh triggers a new script execution. Each script execution uses credits. Long-running queries can time out; ask the agent to reduce the data scope if needed.

Error handling

If a data script fails (the integration is disconnected, the API returns an error, or the script times out), the HTML receives an error response. Well-built artifacts will show a friendly error message. If the agent didn’t include error handling, the section may simply be blank. Common causes and fixes:

Files page

Open Artifacts in the sidebar to find files across your agent conversations. Your personal library is available at Artifacts.
Artifacts library with Mine and Shared with me tabs, search, and a Quarterly report card
Search by display name or filename, filter by file type, and sort by date. A team artifact list also supports filtering by Creator. Each card shows the display name or filename, thumbnail, file type, and version.

Workspace files (persistent across conversations)

By default, files created during an agent conversation are scoped to that conversation. However, agents can also work with workspace files that persist across conversations. Files saved to the /home/user/.workspace/ directory in the agent’s sandbox are treated as workspace-scoped artifacts. These files are not tied to a single conversation — they persist and are available in future conversations with the same agent.

How workspace scope works

Workspace files use two separate folders:
  • Shared agent workspace, /home/user/.workspace/agent/: Access follows your role on the agent. Owners can edit shared files; Users can read them. Team membership is not an additional requirement for this shared disk.
  • Personal workspace, /home/user/.workspace/personal/: Private to you and persistent across your conversations with the same agent. It remains writable when the shared workspace is read-only.
This is useful for agents that maintain ongoing project files, configuration, or reference data that should carry over between sessions.
Sharing an agent or task does not automatically share your personal workspace.

Common questions

Files and versions

Artifacts are stored in secure cloud storage. You can open them in the Gumloop viewer or download them. Workspace files remain available across conversations with the same agent.
Yes. Anyone with Owner or Editor access to the file can delete it. Deleting is a soft delete: the file is removed from your files list, search, sharing, and normal viewer/API access, while its stored versions are preserved.

Sharing and access

Yes. Invite them by email, choose Anyone with the link, or enable a Password protected link for other link visitors. Your organization can restrict external sharing. General Access and password links grant viewing access only.

Interactive artifacts

A static artifact shows saved content, such as a PDF, image, or CSV. An interactive artifact can use attached scripts to load live data. An artifact you already acknowledged may open without a consent overlay.
Inside Gumloop and on gumloopartifacts.com, scripts can use your available connections and eligible agent-owned connections. Organization-owned artifact domains use agent-owned connections only. Public or password-shared artifacts cannot use agent-owned connections. See Your credentials, your data for the full comparison.
Both. Agents can build forms and buttons that send Slack messages or create Linear issues. These actions use the connections described in Your credentials, your data and run a data script, just like read operations.
HTML artifacts cannot read the Gumloop app’s session, cookies, or local storage. They run on an isolated origin and can read their own artifact files. External data access uses controlled script or proxy paths, not the app’s browsing session.
Check that the required connectors are available. Refresh an expired connector from Connectors, check your credit limit, or ask the agent to reduce the data scope for a query that times out.

Custom domains

Your artifacts keep working at their canonical URLs and their gumloopartifacts.com URLs. Nothing is served on the new organization domain until its status is Active.
No. An organization can claim one custom artifact domain at a time. Remove the current domain before adding a different one.
No. A custom domain is an alternate URL for the same artifact. A Restricted artifact stays restricted and uses the same access checks as its canonical URL.
Links on that domain stop working. Canonical artifact URLs continue to work.

Agents

Learn how to create and configure agents

Agent access

Owners, Users, and file sharing on an agent