NIOM generates files all the time — research reports, code snippets, articles, configs. The artifact system makes sure you can always find them.
Where artifacts are stored
NIOM picks the storage location based on context:
| Situation | Where artifacts go |
|---|
| Conversation has a workspace connected | Inside your project: {workspace}/.niom/artifacts/ |
| No workspace connected | Default location: ~/.niom/artifacts/{context-id}/ |
Workspace always wins. If you’re working on a project and NIOM generates a file, it goes into your project directory — not some hidden folder.
How it works
Agent creates a file (writeFile tool)
→ Artifact auto-registered with context (conversation or task ID)
→ Manifest updated: ~/.niom/artifacts/{id}/manifest.json
→ Appears in the UI immediately
You don’t need to do anything special. Every file the agent writes is automatically tracked as an artifact and linked to the conversation or task that created it.
Finding your artifacts
From a conversation
Open a conversation that generated files. The Artifacts panel appears below the messages showing:
- File name and type icon
- File size and creation time
- Click to preview (text files expand inline)
- “Open in Explorer” to jump to the file
From a task
Open any task and look at the detail view. Artifacts created during that task’s runs appear in a dedicated panel, with the same preview and navigation features.
From the filesystem
All artifacts live in predictable locations:
~/.niom/artifacts/
├── {conversation-id}/
│ ├── manifest.json # What was generated
│ ├── ai_research.md # The actual files
│ └── competitor_analysis.md
└── {task-id}/
├── manifest.json
└── daily_summary_2026-03-04.md
Or in your project (if a workspace is connected):
your-project/
└── .niom/
└── artifacts/
├── manifest.json
└── generated_readme.md
Cleanup behavior
When you delete a conversation or task, NIOM handles cleanup automatically:
| Artifact location | What happens |
|---|
~/.niom/artifacts/ (NIOM’s storage) | Deleted — files, directory, and manifest are removed |
| Your workspace/project | Preserved — these are your project files, NIOM won’t touch them |
This cascade also applies to linked tasks: deleting a conversation deletes its background tasks and their non-workspace artifacts.
Workspace artifacts are never deleted by NIOM, even when you delete the conversation that created them. They’re your files, in your project. Only NIOM’s internal storage (~/.niom/artifacts/) is cleaned up.
Supported file types
NIOM detects file types automatically and shows the right icon:
| Category | Extensions |
|---|
| Documents | .md, .txt, .pdf, .doc |
| Code | .ts, .js, .py, .go, .rs, .java, .html, .css |
| Data | .json, .yaml, .yml, .csv, .xml |
| Config | .toml, .ini, .env, .conf |
| Images | .png, .jpg, .svg, .gif |
Text-based files support inline preview. Binary files show metadata only.
What creates artifacts
Currently, any file written by the agent’s writeFile tool is automatically registered as an artifact when the agent has context (conversation ID or task ID).
Common scenarios:
- Deep research → saves a
.md report with sources
- Content generation → articles, blog posts, summaries
- Code tasks → generated files, configs, scripts
- Data analysis → output files, CSVs, reports