Upload, inspect, preview, download, and reuse files in Pioneer threads.
Artifacts are files owned by a Pioneer workspace. You can upload them, or an agent, tool call, or task can create them. The gateway stores each file and links it to the thread, turn, and message where it was used or created.This distinction matters when you connect to a remote gateway. A path in a tool call may belong to the remote machine, while an artifact can be downloaded to your desktop and opened there.
In a thread, open the artifacts panel from the bottom bar. The panel is only shown on the thread screen and is hidden by default.The panel lets you:
list all artifacts for the current thread;
filter by uploaded files, generated files, task outputs, images, and documents;
select an artifact and read its metadata;
preview images when a thumbnail is available;
download the file to your computer;
open a downloaded copy;
reveal a downloaded copy in the file manager;
attach an existing artifact back into the composer.
Clicking an attachment chip in the timeline selects that artifact. If the artifacts panel is closed, Pioneer opens it first and then shows the selected file.For parent threads that use subagents, the panel includes artifacts registered in the parent thread and in delegated child threads under that parent. A file created by a subagent should therefore be visible from the parent workflow as long as it was registered as an artifact.
Attach files in the composer when they are part of the prompt: screenshots, logs, small datasets, text files, or documents. Pioneer uploads those bytes to the gateway before the turn starts.On a local gateway, this usually feels like a normal local file attachment. On a remote gateway, the same operation copies the file from your computer to the remote gateway. The model provider receives the gateway-owned artifact, not an inaccessible path from your desktop.
Do not rely on desktop-only paths in a remote gateway thread. Upload the file as an artifact if the agent or model needs to read it.
When an agent creates a file for you, it must register that file with the artifact store before the final response. Registered files link back to the turn and appear in the artifacts panel.The agent is instructed to use a managed output directory and the artifact_prepare / artifact_register tools for user-visible files. The managed path is temporary staging on the gateway. The durable artifact is the registered file in the gateway artifact store.Pioneer does not scan arbitrary gateway folders for files to publish as artifacts. If an agent says it created a file but the file is missing from the artifacts panel, ask it to register the file. A file written to a path you specified remains a normal gateway file until registration.The same applies to hidden subagent threads. A subagent-created file is shown in the parent thread only after the subagent registers it. The artifact stays bound to child-thread and task lineage, but the desktop includes that child-thread subtree when listing artifacts for the parent workflow.
Artifacts show the display name, type, size, source, creation time, and SHA-256 digest. Images can have thumbnails. If a thumbnail is still pending, the file itself may already be ready; the preview is a derived projection and can finish later.The desktop app caches preview images locally under its runtime directory. The preview cache is pruned automatically when it exceeds 512 MB. Clearing that cache does not delete gateway artifacts.
Download copies the artifact from the gateway to a folder you choose on your computer.Open downloads a verified copy into the desktop cache if needed, then asks the operating system to open that local copy.Reveal opens the folder for a local downloaded copy. It is disabled until Pioneer has a local path to reveal.For remote gateways, these actions move bytes over the gateway connection. They do not require direct filesystem access to the remote host.
Use the attach action in the artifact detail panel when you want to send an existing thread artifact again. Pioneer adds the artifact to the composer without asking you to find the original local file.This is useful when:
the original file was uploaded from another computer;
the artifact was created by an agent on a remote gateway;
you want to ask a follow-up question about a generated file;
you want a task or subagent to receive a file from the parent thread.
Pioneer does not blindly attach every old file to every new model request. That would make long threads expensive and confusing, especially if you uploaded many screenshots, photos, logs, or documents.Instead, Pioneer keeps lightweight artifact references next to the conversation messages where those artifacts appeared. When recent history is included in a new turn, the model can see that a past user message or assistant message had artifacts attached. The reference includes enough metadata to identify the file, such as artifact id, version id, name, kind, MIME type, size, and role. It does not include the file bytes.If the model needs the actual content, it must reveal the artifact tool domain and call artifact_read for one or more specific artifact refs. That is the right behavior for questions like:
“why did you think the car in the photo was BMW?”;
“look again at the second screenshot”;
“use the CSV I uploaded earlier”;
“compare this answer with the PDF from yesterday.”
This preserves continuity without adding every file to the prompt. If a follow-up does not need the file, the model can answer from the conversation history. If it does, it can request that file instead of receiving every artifact from the thread.Thread context recall follows the same idea. If Pioneer recalls an older conversation snippet that had artifacts attached, the snippet can include a clearly scoped artifact-reference block for that specific snippet. The reference is still metadata only. File content is loaded only through artifact_read.
If the artifacts panel says the thread was not found, the thread may still be a draft. Pioneer only loads artifacts for materialized threads.If a preview is missing but the file is ready, open or download the artifact. The preview path is separate from the original file.If a file cannot be opened, download it first and check that the destination exists on your desktop. In a remote gateway setup, revealing a gateway path directly is not possible; Pioneer can only reveal local cached or downloaded files.If Pioneer seems to “forget” a photo or document in a follow-up turn, check two things: whether that message is still in the retained recent history or whether thread context recall brought back the relevant older snippet. If neither happened, the model may not see the artifact reference and therefore cannot know which artifact to read.
Tools Architecture explains how model-facing tools are exposed during agent turns.
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"Pioneer","colors":{"primary":"#1071FF","light":"#1071FF","dark":"#1071FF"},"logo":{"light":"https://mintcdn.com/pioneer-de55fe0a/tZ9pz7n2azdrHkvQ/logo/light.svg?fit=max\u0026auto=format\u0026n=tZ9pz7n2azdrHkvQ\u0026q=85\u0026s=d8d6800d6d5db54cd4de0c15b607985e","dark":"https://mintcdn.com/pioneer-de55fe0a/tZ9pz7n2azdrHkvQ/logo/dark.svg?fit=max\u0026auto=format\u0026n=tZ9pz7n2azdrHkvQ\u0026q=85\u0026s=85c34d5080e7ae8ac47648719071987a"},"favicon":"https://mintcdn.com/pioneer-de55fe0a/tZ9pz7n2azdrHkvQ/favicon.svg?fit=max\u0026auto=format\u0026n=tZ9pz7n2azdrHkvQ\u0026q=85\u0026s=ef99e0f25527be4b2420f0a42e0fba0d","navbar":{"links":[{"href":"https://github.com/pioneerdotai/pioneer","label":"GitHub"}]},"footer":{"socials":{"github":"https://github.com/pioneerdotai/pioneer"}},"contextual":{"options":["copy","view","claude","cursor"],"display":"header"},"styling":{"latex":false},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"pioneer-de55fe0a","hasAudioNarration":false,"actualSubdomain":"pioneer-de55fe0a","customDomains":["docs.getpioneer.dev"],"gitSource":{"type":"github","owner":"pioneerdotai","repo":"docs","deployBranch":"main","contentDirectory":"","isPrivate":false,"mountPath":"","label":""},"chroma":{"liveDeploymentHistoryId":"6ac3800597e99dac9a9a72d3","collectionId":"4b62170d-9ca5-4ddb-b60d-c7af85af8524","schemaVersion":"v3","latestBuiltDeploymentHistoryId":"6ac3800597e99dac9a9a72d3"},"entitlements":{"AI_CHAT":{"status":"DISABLED"}},"buildId":"6ac3800597e99dac9a9a72d3","clientVersion":"0.0.4054","searchFilterCounts":[{"language":"default","tag":"User Guide","count":33},{"language":"default","tag":"Architecture","count":27},{"language":"default","tag":"Protocol Reference","count":17},{"language":"default","tag":"Subsystems","count":15},{"language":"default","tag":"Features","count":11},{"language":"default","tag":"Core Systems","count":9},{"language":"default","tag":"Desktop App","count":9},{"language":"default","tag":"Getting Started","count":6},{"language":"default","tag":"Workspace \u0026 Threads","count":5},{"language":"default","tag":"Skills","count":5}]},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":false,"enableContextualStarterQuestions":false,"enableAskAiSearchBar":true},"basePath":"","hasChatPermissions":false,"hasWebMcpPermissions":false,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"rbac-expansion","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"full-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"byok-sep-25","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"vite-origin","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-updated-9-15","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-dual-write","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"approve-review-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"sso-setup-deadline-banner","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-serve","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":false},"customCss":[],"page":{"pagePath":"desktop/artifacts","slug":"/desktop/artifacts","pageMetadata":{"title":"Artifacts","description":"Upload, inspect, preview, download, and reuse files in Pioneer threads.","icon":"box-archive","href":"/desktop/artifacts"},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsx(_components.p, {\n children: \"Upload, inspect, preview, download, and reuse files in Pioneer threads.\"\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx,jsxs:_jsxs}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){const _components={a:`a`,code:`code`,li:`li`,p:`p`,ul:`ul`,..._provideComponents(),...props.components},{Heading,Warning}=_components;if(!Heading)_missingMdxReference(`Heading`,true);if(!Warning)_missingMdxReference(`Warning`,true);return _jsxs(_Fragment,{children:[_jsx(_components.p,{children:`Artifacts are files owned by a Pioneer workspace. You can upload them, or an agent, tool call, or task can create them. The gateway stores each file and links it to the thread, turn, and message where it was used or created.`}),`\n`,_jsx(_components.p,{children:`This distinction matters when you connect to a remote gateway. A path in a tool call may belong to the remote machine, while an artifact can be downloaded to your desktop and opened there.`}),`\n`,_jsx(Heading,{level:`2`,id:`where-artifacts-appear`,children:`Where artifacts appear`}),`\n`,_jsx(_components.p,{children:`In a thread, open the artifacts panel from the bottom bar. The panel is only shown on the thread screen and is hidden by default.`}),`\n`,_jsx(_components.p,{children:`The panel lets you:`}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:`list all artifacts for the current thread;`}),`\n`,_jsx(_components.li,{children:`filter by uploaded files, generated files, task outputs, images, and documents;`}),`\n`,_jsx(_components.li,{children:`select an artifact and read its metadata;`}),`\n`,_jsx(_components.li,{children:`preview images when a thumbnail is available;`}),`\n`,_jsx(_components.li,{children:`download the file to your computer;`}),`\n`,_jsx(_components.li,{children:`open a downloaded copy;`}),`\n`,_jsx(_components.li,{children:`reveal a downloaded copy in the file manager;`}),`\n`,_jsx(_components.li,{children:`attach an existing artifact back into the composer.`}),`\n`]}),`\n`,_jsx(_components.p,{children:`Clicking an attachment chip in the timeline selects that artifact. If the artifacts panel is closed, Pioneer opens it first and then shows the selected file.`}),`\n`,_jsx(_components.p,{children:`For parent threads that use subagents, the panel includes artifacts registered in the parent thread and in delegated child threads under that parent. A file created by a subagent should therefore be visible from the parent workflow as long as it was registered as an artifact.`}),`\n`,_jsx(Heading,{level:`2`,id:`upload-files`,children:`Upload files`}),`\n`,_jsx(_components.p,{children:`Attach files in the composer when they are part of the prompt: screenshots, logs, small datasets, text files, or documents. Pioneer uploads those bytes to the gateway before the turn starts.`}),`\n`,_jsx(_components.p,{children:`On a local gateway, this usually feels like a normal local file attachment. On a remote gateway, the same operation copies the file from your computer to the remote gateway. The model provider receives the gateway-owned artifact, not an inaccessible path from your desktop.`}),`\n`,_jsx(Warning,{children:_jsx(_components.p,{children:`Do not rely on desktop-only paths in a remote gateway thread. Upload the file as an artifact if the agent or model needs to read it.`})}),`\n`,_jsx(Heading,{level:`2`,id:`agent-created-files`,children:`Agent-created files`}),`\n`,_jsx(_components.p,{children:`When an agent creates a file for you, it must register that file with the artifact store before the final response. Registered files link back to the turn and appear in the artifacts panel.`}),`\n`,_jsxs(_components.p,{children:[`The agent is instructed to use a managed output directory and the `,_jsx(_components.code,{children:`artifact_prepare`}),` / `,_jsx(_components.code,{children:`artifact_register`}),` tools for user-visible files. The managed path is temporary staging on the gateway. The durable artifact is the registered file in the gateway artifact store.`]}),`\n`,_jsx(_components.p,{children:`Pioneer does not scan arbitrary gateway folders for files to publish as artifacts. If an agent says it created a file but the file is missing from the artifacts panel, ask it to register the file. A file written to a path you specified remains a normal gateway file until registration.`}),`\n`,_jsx(_components.p,{children:`The same applies to hidden subagent threads. A subagent-created file is shown in the parent thread only after the subagent registers it. The artifact stays bound to child-thread and task lineage, but the desktop includes that child-thread subtree when listing artifacts for the parent workflow.`}),`\n`,_jsx(Heading,{level:`2`,id:`preview-and-metadata`,children:`Preview and metadata`}),`\n`,_jsx(_components.p,{children:`Artifacts show the display name, type, size, source, creation time, and SHA-256 digest. Images can have thumbnails. If a thumbnail is still pending, the file itself may already be ready; the preview is a derived projection and can finish later.`}),`\n`,_jsx(_components.p,{children:`The desktop app caches preview images locally under its runtime directory. The preview cache is pruned automatically when it exceeds 512 MB. Clearing that cache does not delete gateway artifacts.`}),`\n`,_jsx(Heading,{level:`2`,id:`download-open-reveal`,children:`Download, open, reveal`}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.code,{children:`Download`}),` copies the artifact from the gateway to a folder you choose on your computer.`]}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.code,{children:`Open`}),` downloads a verified copy into the desktop cache if needed, then asks the operating system to open that local copy.`]}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.code,{children:`Reveal`}),` opens the folder for a local downloaded copy. It is disabled until Pioneer has a local path to reveal.`]}),`\n`,_jsx(_components.p,{children:`For remote gateways, these actions move bytes over the gateway connection. They do not require direct filesystem access to the remote host.`}),`\n`,_jsx(Heading,{level:`2`,id:`reuse-artifacts`,children:`Reuse artifacts`}),`\n`,_jsx(_components.p,{children:`Use the attach action in the artifact detail panel when you want to send an existing thread artifact again. Pioneer adds the artifact to the composer without asking you to find the original local file.`}),`\n`,_jsx(_components.p,{children:`This is useful when:`}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:`the original file was uploaded from another computer;`}),`\n`,_jsx(_components.li,{children:`the artifact was created by an agent on a remote gateway;`}),`\n`,_jsx(_components.li,{children:`you want to ask a follow-up question about a generated file;`}),`\n`,_jsx(_components.li,{children:`you want a task or subagent to receive a file from the parent thread.`}),`\n`]}),`\n`,_jsx(Heading,{level:`2`,id:`follow-up-questions-about-old-files`,children:`Follow-up questions about old files`}),`\n`,_jsx(_components.p,{children:`Pioneer does not blindly attach every old file to every new model request. That would make long threads expensive and confusing, especially if you uploaded many screenshots, photos, logs, or documents.`}),`\n`,_jsx(_components.p,{children:`Instead, Pioneer keeps lightweight artifact references next to the conversation messages where those artifacts appeared. When recent history is included in a new turn, the model can see that a past user message or assistant message had artifacts attached. The reference includes enough metadata to identify the file, such as artifact id, version id, name, kind, MIME type, size, and role. It does not include the file bytes.`}),`\n`,_jsxs(_components.p,{children:[`If the model needs the actual content, it must reveal the artifact tool domain and call `,_jsx(_components.code,{children:`artifact_read`}),` for one or more specific artifact refs. That is the right behavior for questions like:`]}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:`“why did you think the car in the photo was BMW?”;`}),`\n`,_jsx(_components.li,{children:`“look again at the second screenshot”;`}),`\n`,_jsx(_components.li,{children:`“use the CSV I uploaded earlier”;`}),`\n`,_jsx(_components.li,{children:`“compare this answer with the PDF from yesterday.”`}),`\n`]}),`\n`,_jsx(_components.p,{children:`This preserves continuity without adding every file to the prompt. If a follow-up does not need the file, the model can answer from the conversation history. If it does, it can request that file instead of receiving every artifact from the thread.`}),`\n`,_jsxs(_components.p,{children:[`Thread context recall follows the same idea. If Pioneer recalls an older conversation snippet that had artifacts attached, the snippet can include a clearly scoped artifact-reference block for that specific snippet. The reference is still metadata only. File content is loaded only through `,_jsx(_components.code,{children:`artifact_read`}),`.`]}),`\n`,_jsx(Heading,{level:`2`,id:`troubleshooting`,children:`Troubleshooting`}),`\n`,_jsx(_components.p,{children:`If the artifacts panel says the thread was not found, the thread may still be a draft. Pioneer only loads artifacts for materialized threads.`}),`\n`,_jsx(_components.p,{children:`If a preview is missing but the file is ready, open or download the artifact. The preview path is separate from the original file.`}),`\n`,_jsx(_components.p,{children:`If a file cannot be opened, download it first and check that the destination exists on your desktop. In a remote gateway setup, revealing a gateway path directly is not possible; Pioneer can only reveal local cached or downloaded files.`}),`\n`,_jsx(_components.p,{children:`If Pioneer seems to “forget” a photo or document in a follow-up turn, check two things: whether that message is still in the retained recent history or whether thread context recall brought back the relevant older snippet. If neither happened, the model may not see the artifact reference and therefore cannot know which artifact to read.`}),`\n`,_jsx(Heading,{level:`2`,id:`further-reading`,children:`Further reading`}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[_jsx(_components.a,{href:`/architecture/artifacts`,children:`Artifacts Architecture`}),` explains artifact storage, bindings, uploads, downloads, projections, and `,_jsx(_components.code,{children:`artifact_read`}),`.`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.a,{href:`/architecture/thread-episodic-context`,children:`Thread Episodic Context`}),` explains why recalled snippets can carry artifact references.`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.a,{href:`/architecture/tools`,children:`Tools Architecture`}),` explains how model-facing tools are exposed during agent turns.`]}),`\n`]})]})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent};function _missingMdxReference(id,component){throw new Error(`Expected `+(component?`component`:`object`)+\" `\"+id+\"` to be defined: you likely forgot to import, pass, or provide it.\")}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Artifacts","description":"Upload, inspect, preview, download, and reuse files in Pioneer threads.","icon":"box-archive","href":"/desktop/artifacts"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[{"title":"Where artifacts appear","slug":"where-artifacts-appear","depth":2,"children":[]},{"title":"Upload files","slug":"upload-files","depth":2,"children":[]},{"title":"Agent-created files","slug":"agent-created-files","depth":2,"children":[]},{"title":"Preview and metadata","slug":"preview-and-metadata","depth":2,"children":[]},{"title":"Download, open, reveal","slug":"download-open-reveal","depth":2,"children":[]},{"title":"Reuse artifacts","slug":"reuse-artifacts","depth":2,"children":[]},{"title":"Follow-up questions about old files","slug":"follow-up-questions-about-old-files","depth":2,"children":[]},{"title":"Troubleshooting","slug":"troubleshooting","depth":2,"children":[]},{"title":"Further reading","slug":"further-reading","depth":2,"children":[]}],"codeExamples":{}},"jsLinks":[],"subdomain":"pioneer-de55fe0a","siteName":"Pioneer","title":"Artifacts - Pioneer","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-07-26T07:20:03.852Z","originalFileLocation":"desktop/artifacts.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"system\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"Upload, inspect, preview, download, and reuse files in Pioneer threads.\">\u003cmeta data-mint-head name=\"application-name\" content=\"Pioneer\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/pioneer-de55fe0a/DnN60egLYTK2Subm/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/mintlify-assets/_mintlify/favicons/pioneer-de55fe0a/DnN60egLYTK2Subm/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/pioneer-de55fe0a/DnN60egLYTK2Subm/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/pioneer-de55fe0a/DnN60egLYTK2Subm/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/pioneer-de55fe0a/DnN60egLYTK2Subm/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/pioneer-de55fe0a/DnN60egLYTK2Subm/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/pioneer-de55fe0a/DnN60egLYTK2Subm/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/pioneer-de55fe0a/DnN60egLYTK2Subm/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/pioneer-de55fe0a/DnN60egLYTK2Subm/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Artifacts - Pioneer\">\u003cmeta data-mint-head property=\"og:description\" content=\"Upload, inspect, preview, download, and reuse files in Pioneer threads.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Pioneer\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.getpioneer.dev/desktop/artifacts\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://pioneer-de55fe0a.mintlify.app/_mintlify/api/og/v2?division=Desktop+App\u0026amp;title=Artifacts\u0026amp;description=Upload%2C+inspect%2C+preview%2C+download%2C+and+reuse+files+in+Pioneer+threads.\u0026amp;theme=a76fe18d0f0f07dff9f24952\u0026amp;signature=9019f9b12b1d434e2d1e110cb3463980970536f91be418d706c58b50b6d5e600\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Artifacts - Pioneer\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Upload, inspect, preview, download, and reuse files in Pioneer threads.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://pioneer-de55fe0a.mintlify.app/_mintlify/api/og/v2?division=Desktop+App\u0026amp;title=Artifacts\u0026amp;description=Upload%2C+inspect%2C+preview%2C+download%2C+and+reuse+files+in+Pioneer+threads.\u0026amp;theme=a76fe18d0f0f07dff9f24952\u0026amp;signature=9019f9b12b1d434e2d1e110cb3463980970536f91be418d706c58b50b6d5e600\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/mintlify-assets/_mintlify/favicons/pioneer-de55fe0a/DnN60egLYTK2Subm/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Pioneer\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#1071FF\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.getpioneer.dev/desktop/artifacts\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/desktop/artifacts.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.getpioneer.dev/#organization\",\"name\":\"Pioneer\",\"url\":\"https://docs.getpioneer.dev\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/pioneer-de55fe0a/tZ9pz7n2azdrHkvQ/logo/light.svg?fit=max\u0026auto=format\u0026n=tZ9pz7n2azdrHkvQ\u0026q=85\u0026s=d8d6800d6d5db54cd4de0c15b607985e\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.getpioneer.dev#website\",\"name\":\"Pioneer\",\"url\":\"https://docs.getpioneer.dev\",\"publisher\":{\"@id\":\"https://docs.getpioneer.dev/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.getpioneer.dev/desktop/artifacts#webpage\",\"url\":\"https://docs.getpioneer.dev/desktop/artifacts\",\"name\":\"Artifacts\",\"description\":\"Upload, inspect, preview, download, and reuse files in Pioneer threads.\",\"dateModified\":\"2026-07-26T07:20:03.852Z\",\"isPartOf\":{\"@id\":\"https://docs.getpioneer.dev#website\"},\"breadcrumb\":{\"@id\":\"https://docs.getpioneer.dev/desktop/artifacts#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.getpioneer.dev/desktop/artifacts#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Desktop App\",\"item\":\"https://docs.getpioneer.dev/desktop/overview\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Artifacts\",\"item\":\"https://docs.getpioneer.dev/desktop/artifacts\"}]},{\"@type\":[\"Article\",\"TechArticle\"],\"@id\":\"https://docs.getpioneer.dev/desktop/artifacts#article\",\"headline\":\"Artifacts\",\"name\":\"Artifacts\",\"description\":\"Upload, inspect, preview, download, and reuse files in Pioneer threads.\",\"url\":\"https://docs.getpioneer.dev/desktop/artifacts\",\"mainEntityOfPage\":{\"@id\":\"https://docs.getpioneer.dev/desktop/artifacts#webpage\"},\"dateModified\":\"2026-07-26T07:20:03.852Z\",\"publisher\":{\"@id\":\"https://docs.getpioneer.dev/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.getpioneer.dev#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Pioneer\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"Pioneer","nav":{"global":null,"tabs":[{"tab":"User Guide","groups":[{"group":"Getting Started","pages":[{"title":"Pioneer","icon":"rocket","href":""},{"title":"Highlights","icon":"sparkles","href":"/getting-started/highlights"},{"title":"Installation","icon":"download","href":"/getting-started/installation"},{"title":"Quick Start","icon":"bolt","href":"/getting-started/quickstart"},{"title":"Permission Modes","icon":"shield","href":"/getting-started/permissions"},{"title":"Core Concepts","icon":"book","href":"/getting-started/concepts"}]},{"group":"Desktop App","pages":[{"title":"Desktop App Overview","icon":"desktop","href":"/desktop/overview"},{"title":"Account and collaboration","icon":"users","href":"/desktop/account-and-collaboration"},{"title":"Workspace \u0026 Organization","icon":"folder-open","href":"/desktop/workspace"},{"title":"Remote Access","icon":"tower-broadcast","href":"/desktop/remote-access"},{"title":"Conversation Timeline","icon":"messages","href":"/desktop/threads"},{"title":"File viewer","icon":"file-code","href":"/desktop/file-viewer"},{"title":"Memory","icon":"brain","href":"/desktop/memory"},{"title":"AGENTS.md","description":"Create and edit persistent agent instructions in the thread tree.","icon":"file-lines","href":"/desktop/agents-md"},{"title":"Artifacts","icon":"box-archive","href":"/desktop/artifacts"}]},{"group":"Mobile App","pages":[{"title":"Mobile App Overview","description":"Use the Pioneer mobile app to connect to gateways, manage workspaces, and continue threads from iOS or Android.","icon":"mobile-screen-button","href":"/mobile/overview"}]},{"group":"Providers","pages":[{"title":"Providers Overview","icon":"brain","href":"/providers/overview"},{"title":"Supported Providers","icon":"ellipsis","href":"/providers/others"}]},{"group":"Skills","pages":[{"title":"Skills Overview","icon":"puzzle-piece","href":"/skills/overview"},{"title":"Creating Skills","icon":"file-plus","href":"/skills/creating"},{"title":"Installing Skills","icon":"download","href":"/skills/installing"},{"title":"Managing Skills","icon":"sliders","href":"/skills/managing"},{"title":"Skill Security","icon":"shield","href":"/skills/security"}]},{"group":"MCP Servers","pages":[{"title":"MCP Servers Overview","icon":"plug","href":"/mcp/overview"},{"title":"Connecting MCP Servers","icon":"link","href":"/mcp/connecting"},{"title":"MCP Catalog","icon":"list","href":"/mcp/catalog"}]},{"group":"Tasks \u0026 Automation","pages":[{"title":"Tasks \u0026 Automation Overview","icon":"clock","href":"/tasks/overview"},{"title":"Scheduling Tasks","icon":"calendar","href":"/tasks/scheduling"},{"title":"Automation Workflows","icon":"robot","href":"/tasks/automation"}]},{"group":"Configuration","pages":[{"title":"Configuration Overview","icon":"gear","href":"/configuration/overview"},{"title":"Configuration Reference","icon":"list","href":"/configuration/reference"}]},{"group":"CLI","pages":[{"title":"CLI Overview","icon":"terminal","href":"/cli/overview"},{"title":"CLI Commands","icon":"code","href":"/cli/commands"}]}]},{"tab":"Architecture","pages":[{"title":"Architecture","href":"/architecture/overview"}]},{"tab":"Protocol Reference","pages":[{"title":"Protocol Reference","href":"/protocol/introduction"}]}]},"basePath":"","title":"Artifacts - Pioneer","buildId":"dpl_345ReqzYaAjzS9QpeJemsKdb7KDj","deploymentId":"dpl_345ReqzYaAjzS9QpeJemsKdb7KDj","dynamics":[],"chunks":[]}