← All tools
Bundles
Structured collections: ordered folders, decision records and the graph edges between them, assembled into a readable whole.
17Tools
59Parameters
2026-10-09Generated
muninn_bundle_closure
Read only
1 parameter
List everything beneath one item in a bundle (an ordered outline of memories for a book or project): every (ancestor, descendant, depth) pair, including each item paired with itself at depth 0. Useful for checking what a section contains.
| Parameter | Type | Required | Description |
| rootKey |
string |
Required |
The node_key of the bundle root |
muninn_bundle_create
Writes
5 parameters
A bundle is an ordered outline of the user's memories for a book or project: sections and items, each item pointing at a memory. This creates a new, empty bundle with a title and description, and returns its rootKey (the key every other bundle tool takes) and the id of the memory holding its title and description. Fails if the slug is already used by one of the user's bundles.
| Parameter | Type | Required | Description |
| slug |
string |
Required |
Unique slug for this bundle root (e.g. 'my-book'). Lowercase letters, digits and hyphens only, max 64. Frozen at creation. |
| title |
string |
Required |
Human-readable bundle title |
| description |
string |
default "" |
High-level description or thesis |
| okf_type |
string |
default "bundle" |
Type of the root (default 'bundle') |
| project |
string |
— |
Project slug to scope the backing metadata memory. Omit for global. |
muninn_bundle_decision_add
Writes
9 parameters
Record a decision about a bundle (an ordered outline of memories for a book or project) and attach it to the item or section it governs, so the reason for a title, a placement or an order shows up wherever that item renders. Saves a memory tagged 'decision' with {question, chosen, rejected[], reason, decided_by, date} and links it to the item. Use it for structural choices made in conversation that would otherwise be forgotten and argued again.
| Parameter | Type | Required | Description |
| nodeKey |
string |
Required |
node_key of the node this decision governs (the chapter/section/leaf it explains) |
| question |
string |
Required |
The decision being recorded, e.g. 'Should the glossary go at the front or the back?' |
| chosen |
string |
Required |
What was decided, e.g. 'At the back, after the last chapter' |
| reason |
string |
Required |
Why this was chosen |
| rejected |
string[] |
default [] |
Alternatives considered and rejected |
| decided_by |
string |
— |
Who decided (e.g. 'the user', or a person's name). Omit if not attributed. |
| date |
string |
— |
ISO date the decision was made. Defaults to now. |
| slug |
string |
default "decision" |
Slug for the decision leaf among the node's references. Default 'decision'. |
| project |
string |
— |
Project slug to scope the decision memory. Omit for global. |
muninn_bundle_edge_add
Writes
4 parameters
Link two items in a bundle (an ordered outline of memories for a book or project), placing the child under the parent. relation='contains' (default) makes this the child's one home in the outline; an item can have only one, and a second is refused with a clear error. relation='reference' links it from an additional place without moving it.
| Parameter | Type | Required | Description |
| parentKey |
string |
Required |
The node_key of the parent node |
| childKey |
string |
Required |
The node_key of the child node |
| position |
number |
— |
Explicit REAL position. If omitted, appended after existing siblings. |
| relation |
stringcontains · reference |
default "contains" |
'contains' = canonical home (one per node). 'reference' = additional link with no path. |
muninn_bundle_edge_move
Writes
4 parameters
Reorder an item among its siblings in a bundle (an ordered outline of memories for a book or project). Give beforeKey (the sibling that will come before it) and/or afterKey (the sibling that will come after it). null beforeKey moves it to the front; null afterKey moves it to the end; both null appends it at the end.
| Parameter | Type | Required | Description |
| parentKey |
string |
Required |
The node_key of the parent |
| childKey |
string |
Required |
The node_key of the child to reposition |
| beforeKey |
string |
default null |
Sibling node_key that will come BEFORE the moved child, or null for 'move to front' |
| afterKey |
string |
default null |
Sibling node_key that will come AFTER the moved child, or null for 'move to end' |
muninn_bundle_edge_remove
Writes
Destructive
2 parameters
Unlink an item from its parent in a bundle (an ordered outline of memories for a book or project). Neither item is deleted, only the link between them. An item left with no home becomes a top-level item of its own.
| Parameter | Type | Required | Description |
| parentKey |
string |
Required |
The node_key of the parent |
| childKey |
string |
Required |
The node_key of the child to unlink |
muninn_bundle_export_okf
Read only
1 parameter
Export a bundle (an ordered outline of memories for a book or project) as an OKF v0.1 object, a portable JSON format: the memories in outline order plus a generated table of contents. For a readable document, use muninn_render_bundle.
| Parameter | Type | Required | Description |
| rootKey |
string |
Required |
The node_key of the bundle root to export |
muninn_bundle_get
Read only
2 parameters
Look at one bundle (an ordered outline of memories for a book or project): returns its root and the items directly beneath it. Pass resolve:true to include each item's details and a preview of the memory it points at.
| Parameter | Type | Required | Description |
| rootKey |
string |
Required |
The node_key of the bundle root |
| resolve |
boolean |
default false |
If true, hydrate child node details (slug, type, and a preview of the memory each points at) |
muninn_bundle_list
Read only
1 parameter
List the user's bundles (ordered outlines of memories for a book or project). Optionally filter to one project.
| Parameter | Type | Required | Description |
| project |
string |
— |
Filter roots whose backing metadata memory is scoped to this project. Omit to list all roots. |
muninn_bundle_node_create
Writes
6 parameters
Add an existing memory to a bundle (an ordered outline of memories for a book or project) as an item under a section, in one call. Use it to place something the user already wrote, such as a chapter's full text or its summary, in the outline so it renders in order. muninn_bundle_create makes a new bundle; this adds content to one. okfType names what the item is: 'text' (full body), 'record' (a summary of a chapter or section), 'package' or 'quotes'. relation defaults to 'contains', the item's one home in the outline; 'reference' links it from a second place as well. Fails if the slug is already used under that section.
| Parameter | Type | Required | Description |
| parentKey |
string |
Required |
node_key of the parent to attach under |
| slug |
string |
Required |
Unique slug for the new node (e.g. 'text'). Lowercased, frozen at creation. |
| memId |
string |
Required |
ID of the EXISTING memory this item points at. |
| okfType |
string |
default "text" |
What the item is: 'text' (full body), 'record' (a summary of a chapter or section), 'package', 'quotes'. Default 'text'. |
| position |
number |
— |
Explicit REAL position among siblings. Omit to append. |
| relation |
stringcontains · reference |
default "contains" |
'contains' = canonical home (one per node). 'reference' = additional DAG link. |
muninn_bundle_node_delete
Writes
Destructive
4 parameters
Remove an item or section from a bundle (an ordered outline of memories for a book or project), together with every link to or from it. Refuses a section that still has items unless cascade=true, which removes the whole section. Never deletes a memory the user wrote: only when deleteBackingMeta=true, and the memory holds nothing but a bundle's or section's title and description, and nothing else points at it, is that memory deleted too. dryRun=true (default) reports what would be removed without writing.
| Parameter | Type | Required | Description |
| nodeKey |
string |
Required |
node_key of the node to delete |
| cascade |
boolean |
default false |
If true, delete the whole contains-subtree. Required to delete a node that has children. |
| deleteBackingMeta |
boolean |
default false |
If true, also delete the backing memory IF it is a 'bundle-meta' memory with no other referencing node. Never deletes content memories. |
| dryRun |
boolean |
default true |
If true (default), report what would be deleted without committing. |
muninn_bundle_node_repoint
Writes
2 parameters
Point an item in a bundle (an ordered outline of memories for a book or project) at a DIFFERENT memory, keeping its place. Its key, position, links and any items beneath it stay as they are; only the memory it shows changes. Use it when a newer memory replaces the one an item showed; removing and re-adding the item would lose what sits beneath it. newMemId may be a full or short-form (8-char) prefix.
| Parameter | Type | Required | Description |
| nodeKey |
string |
Required |
node_key of the node to repoint |
| newMemId |
string |
Required |
ID (full or 8-char prefix) of the memory the node should now point at |
muninn_bundle_node_reslug
Writes
3 parameters
Rename one item or section in a bundle (an ordered outline of memories for a book or project) by changing its slug. Everything else stays: its key, position, links and the memory it points at. The rendered document does not change, because headings come from the memory, not the slug; only exported file names change. Fails if another item already uses the new slug. dryRun=true (default) reports the change without writing.
| Parameter | Type | Required | Description |
| nodeKey |
string |
Required |
node_key of the node to reslug (any node, not just a root) |
| newSlug |
string |
Required |
The new slug. Lowercased. Lowercase letters, digits and hyphens only, max 64; 'memories', 'index' and 'manifest' are reserved. Must be unique among your bundle nodes. |
| dryRun |
boolean |
default true |
If true (default), report what would change without committing. |
muninn_bundle_nodes_create
Writes
2 parameters
Add MANY existing memories to a bundle (an ordered outline of memories for a book or project) under ONE section in a single call, instead of one muninn_bundle_node_create per item. All-or-nothing: the batch is checked first (the section exists; each slug is free under it and unique within the batch), then applied; any clash aborts the whole batch and names the item, and a failure part-way undoes every item added in this call. memIds may be full or short-form (8-char) prefixes.
| Parameter | Type | Required | Description |
| parentKey |
string |
Required |
node_key of the parent to attach all children under |
| children |
object[] |
Required |
The children to attach, in order |
muninn_bundle_nodes_remove
Writes
Destructive
2 parameters
Unlink several items from one parent in a bundle (an ordered outline of memories for a book or project) in one call. Only the links are removed; the items and the memories they point at are kept. The inverse of muninn_bundle_nodes_create. Returns how many links were removed.
| Parameter | Type | Required | Description |
| parentKey |
string |
Required |
node_key of the parent to detach from |
| childKeys |
string[] |
Required |
node_keys of children to detach |
muninn_bundle_update
Writes
3 parameters
Change a bundle's title and/or description (a bundle is an ordered outline of memories for a book or project). The slug never changes here.
| Parameter | Type | Required | Description |
| rootKey |
string |
Required |
The node_key of the bundle root to update |
| title |
string |
— |
New title |
| description |
string |
— |
New description |
muninn_render_bundle
Read only
8 parameters
Render a bundle (an ordered outline of memories for a book or project) as one readable document. format='md' gives the outline as markdown, in order. format='tree' gives a compact outline of slugs. format='okf' gives the bundle as JSON in the OKF v0.1 export format. With format='tree', show_keys adds each item's key and memory id, so a follow-up edit needs no extra lookup.
| Parameter | Type | Required | Description |
| rootKey |
string |
Required |
The node_key of the bundle root |
| format |
stringmd · tree · okf |
default "md" |
Output format: 'md' (markdown), 'tree' (ASCII), 'okf' (OKF v0.1 JSON) |
| include_descriptions |
boolean |
default true |
(md only) Emit bundle and folder descriptions |
| child_separator |
string |
default "\n\n---\n\n" |
(md only) Separator between children |
| section_heading_level |
integer |
default 2 |
(md only) Heading level for section/folder nodes |
| child_heading_level |
integer |
default 3 |
(md only) Heading level for memory-backed nodes |
| show_ids |
boolean |
default false |
(md only) Append the memory ID to each heading |
| show_keys |
boolean |
default false |
(tree only) Append [node_key=… memId=…] to each line so one tree call is enough to reslug/repoint/delete without a separate bundle_get. |
← Back to all 83 tools
Every bundles tool on this page is callable the moment a model is connected, on an account that costs nothing.
150 items free — memories, skills, bundles, tasks, table rows and artifacts all count. No card, and free does not expire. Paid lifts the limit.