Operate a MindOS knowledge base: update notes, search, organize files, execute SOPs/workflows, retrospective, append CSV, cross-agent handoff, route unstructured input to the right files, distill experience, sync related docs. Use when the task targets files inside the user's MindOS KB (mindRoot). NOT for editing app source, project docs, or paths outside the KB. Core concepts: Space, Instruction (INSTRUCTION.md), Skill (SKILL.md); notes can embody both. Trigger when user asks to: save or record a note, search their knowledge base, update or edit a file, organize notes, run a workflow or SOP, capture decisions from a session, append rows to a table or CSV, hand off context to another agent.
Use mindos file <subcommand> for all knowledge base operations. Add --json for structured output.
| Operation | Command |
|---|---|
| List files | mindos file list |
| Read file | mindos file read <path> |
| Write/overwrite | mindos file write <path> --content "..." |
| Create new file | mindos file create <path> --content "..." |
| Append to file | mindos file append <path> --content "..." |
| Edit section | mindos file edit-section <path> -H "## Heading" --content "..." |
| Insert after heading | mindos file insert-heading <path> -H "## Heading" --content "..." |
| Append CSV row | mindos file append-csv <path> --row "col1,col2,col3" |
| Delete file | mindos file delete <path> |
| Rename/move | mindos file rename <old> <new> |
| Search | mindos search "query" |
| Backlinks | mindos file backlinks <path> |
| Recent files | mindos file recent --limit 10 |
| Git history | mindos file history <path> |
| List spaces | mindos space list |
| Create space | mindos space create "name" |
MCP users: If you only have MCP tools (
mindos_*), use them directly — they are self-describing via their schemas. Prefer CLI when available (lower token cost).
npm install -g @geminilight/mindos
# Remote mode: mindos config set url http://<IP>:<PORT> && mindos config set authToken <token>
.mindos/user-preferences.md → nearest directory INSTRUCTION.md → root INSTRUCTION.md → this SKILL's defaults.mindos file edit-section or mindos file insert-heading for targeted changes. Full rewrites destroy git diffs.INSTRUCTION.md or README.md without confirmation. Governance docs — treat as high-sensitivity.INSTRUCTION.md) all connected agents obey.Notes can embody both Instruction and Skill — they're just Markdown files in the tree.
User request
│
├─ Lookup / summarize / quote?
│ └─ [Read-only]: search → read → answer with citations. No writes.
│
├─ Save / record / update / organize specific content?
│ ├─ Single file → [Single-file edit]
│ └─ Multiple files or unclear → [Multi-file routing] — plan first
│
├─ Structural change (rename / move / delete / reorganize)?
│ └─ [Structural path] — check backlinks before and after
│
├─ Procedural / repeatable task?
│ └─ [SOP path] — find and follow existing SOP, or create one
│
├─ Retrospective / distill / handoff?
│ └─ [Retrospective path]
│
└─ Ambiguous?
└─ ASK. Propose 2-3 specific options based on KB state.
Save intent boundary:
File location uncertainty:
Scope creep:
Citation: KB-cited facts must include the file path.
After write tasks (not simple reads), scan this table. At most 1 proposal; highest priority wins. Check .mindos/user-preferences.md suppression first.
| Hook | Priority | Condition |
|---|---|---|
| Experience capture | high | Debugging, troubleshooting, or multi-round work |
| Consistency sync | high | Edited file with backlinks |
| SOP drift | medium | Followed SOP but diverged |
| Linked update | medium | Changed CSV/TODO status with related docs |
| Structure classification | medium | Created file in inbox/temp location |
| Pattern extraction | low | 3+ similar operations this session |
If a hook triggers → read references/post-task-hooks.md.
When user expresses a standing preference → read references/preference-capture.md and follow confirm-then-write flow.
When creating/rewriting an SOP → read references/sop-template.md.
"command not found: mindos" → npm install -g @geminilight/mindos
"Mind root not configured" → mindos onboard
"401 Unauthorized" → Check AUTH_TOKEN: mindos token (on server)
"ECONNREFUSED" → Start server: mindos start