Skip to content

Agent tools

These are the tools your agent sees once it is connected. The list is generated from the same code that answers the agent, so it matches what the server actually accepts. The agent picks the tools itself: you ask in plain words, and it calls them. Every call is checked again on the server, and its answer is final. When a call is refused, the answer carries a code—see Refusals.

Read the map

slicemap_list_projects List the projects in your workspace with description, icon and last update time.

List the projects in your workspace with description, icon and last update time.

slicemap_workspace_overview Overview of your workspace: projects, member count and story totals.

Overview of your workspace: projects, member count and story totals.

slicemap_board_snapshot The whole board of a project: releases in order (each with its period startDate and endDate, YYYY-MM-DD or null, and its goal), personas, statuses, epics, and the stories in each with their id and number (SM-142, what the owner calls the story), release, their own dates (startDate, endDate, YYYY-MM-DD or null), status (statusId and name), persona, assignee (id and name), your estimate (null until you estimate the story) and the minutes you actually worked (actual, null until you record them).

The whole board of a project: releases in order (each with its period startDate and endDate, YYYY-MM-DD or null, and its goal), personas, statuses, epics, and the stories in each with their id and number (SM-142, what the owner calls the story), release, their own dates (startDate, endDate, YYYY-MM-DD or null), status (statusId and name), persona, assignee (id and name), your estimate (null until you estimate the story) and the minutes you actually worked (actual, null until you record them). statuses lists the project’s statuses in board order with the ids slicemap_update_story_status takes and what each one means (description). assignableMembers lists who can be assigned: workspace members who can edit the map. chapters lists the chapters of the user journey on each map (id, storyMapId, title, position) and each epic names its chapterId (null—no chapter); the board shows chapters above the epics in their order, epics without a chapter last. Start here.

  • projectSlug: Project slug
slicemap_search_stories Find stories by text, number (SM-142) or release inside one project.

Find stories by text, number (SM-142) or release inside one project.

  • projectSlug: Project slug
  • query (optional): Text to look for
  • release (optional): Release name to filter by
  • limit (optional)
slicemap_get_story One story by id or by its number (SM-142, with any key the project has had), from anywhere on the map—active release, a later one or the backlog: its id and number, title, description, its map (storyMapId), epic, release, its own dates on the roadmap (startDate, endDate, YYYY-MM-DD or null), status (statusId and name), persona, assignee, your estimate (null until you estimate it; frozen once the story has been in work), when it first went into work (startedAt), the minutes you recorded with slicemap_record_work (actual: all passes summed, how many passes, when the last was recorded; null until the first), its acceptance criteria with the ids slicemap_toggle_ac_done takes, and the notes linked to it (id, title—its spec and decisions; read them with slicemap_get_note).

One story by id or by its number (SM-142, with any key the project has had), from anywhere on the map—active release, a later one or the backlog: its id and number, title, description, its map (storyMapId), epic, release, its own dates on the roadmap (startDate, endDate, YYYY-MM-DD or null), status (statusId and name), persona, assignee, your estimate (null until you estimate it; frozen once the story has been in work), when it first went into work (startedAt), the minutes you recorded with slicemap_record_work (actual: all passes summed, how many passes, when the last was recorded; null until the first), its acceptance criteria with the ids slicemap_toggle_ac_done takes, and the notes linked to it (id, title—its spec and decisions; read them with slicemap_get_note). Use it for a story the owner names; take the id from slicemap_board_snapshot or slicemap_search_stories.

  • storyId: Story id, or its number with the project key, like SM-142
slicemap_next_story Ask the map what to build next: the first open story of the active release, with its acceptance criteria.

Ask the map what to build next: the first open story of the active release, with its acceptance criteria. The walk: take this story, set a working status BEFORE writing code, tick criteria one by one as you verify them, set a done status only when every criterion is ticked. This is the queue you work through on your own: it hands out the active release only, and stops when that release is complete—then it lists the backlog for the owner to choose from. A story outside the queue you take only when the owner names it.

  • projectSlug: Project slug
slicemap_project_personas Personas of a project with their ids: name, role, goals, pain points.

Personas of a project with their ids: name, role, goals, pain points. Take a persona id from here to bind it to a story (slicemap_create_story / slicemap_update_story) or a map.

  • projectSlug: Project slug
slicemap_project_statuses A project’s development stages—the statuses its stories move through—in board order: id, name, description (what happens in the stage and when a story moves on), icon, colour, service code, whether it is the project’s default stage (where the stories of a deleted stage go), whether it counts as done, and how many stories sit in it; plus the colours a stage can take.

A project’s development stages—the statuses its stories move through—in board order: id, name, description (what happens in the stage and when a story moves on), icon, colour, service code, whether it is the project’s default stage (where the stories of a deleted stage go), whether it counts as done, and how many stories sit in it; plus the colours a stage can take. Read the descriptions before moving a story, to pick the stage that means what is happening to it. When the owner asks you to set up stages, or the stages clearly do not fit how this project works, propose a flow first—each stage with its description, the order, which one is closed and which is the default—and change stages only after the owner agrees.

  • projectSlug: Project slug
slicemap_project_stats Progress of a project: stories done, progress per release and per epic; and how your estimates hold up (estimates)—the same numbers as the project’s Statistics page.

Progress of a project: stories done, progress per release and per epic; and how your estimates hold up (estimates)—the same numbers as the project’s Statistics page. estimates.project, each of estimates.releases and estimates.backlog give: open stories and the share of them you estimated (estimatedShare, 0-1); plan and actual minutes over stories that have both (compared, planMinutes, actualMinutes); how often the actual minutes fell within your range (withinRange, withinRangeShare); how many times you are usually off (typicalErrorFactor, 1 = exact) and which way (medianActualToPlan, above 1 = you underestimate). estimates.active is what is left in each map’s active release: planned minutes of open stories and how many open ones have no estimate. estimates.clarity is the average clarity of open estimated stories and the open stories with clarity 1-2 with what they miss: ask the owner about those before coding.

  • projectSlug: Project slug
slicemap_map_views The tabs of a map—saved views shared by everyone on it, in order: id, type (map, roadmap, outline, table, kanban, mindmap), name (null—called by its type) and settings, plus the types a new tab can take.

The tabs of a map—saved views shared by everyone on it, in order: id, type (map, roadmap, outline, table, kanban, mindmap), name (null—called by its type) and settings, plus the types a new tab can take.

  • projectSlug
  • storyMapId (optional): Defaults to the project’s first map

Work on a story

slicemap_update_story_status Move a story to another status, or pass null to clear its status.

Move a story to another status, or pass null to clear its status. Pick the status whose description says what is happening to the story. Before you take a story into work, estimate it with slicemap_estimate_story if it has no estimate yet and has never been in work (estimate and startedAt are null in slicemap_get_story): the first move into work freezes the plan. A story without an estimate is still moved. When you hand a story over—to acceptance or done—first record the minutes of your own work in this pass with slicemap_record_work. Any story of the map can be moved—backlog, active release or a later one—when the owner has named it; on your own you work through slicemap_next_story. A done status is refused while acceptance criteria are unticked.

  • storyId
  • statusId: Status id from statuses in slicemap_board_snapshot, or null to clear.
slicemap_toggle_ac_done Tick or untick one acceptance criterion.

Tick or untick one acceptance criterion.

  • criteriaId
  • done
slicemap_set_acceptance_criteria Rewrite a story’s acceptance criteria as this list, in order.

Rewrite a story’s acceptance criteria as this list, in order. A criterion whose text stays keeps its id and its tick; new ones come in unticked; only the ones left out of the list are removed.

  • storyId
  • criteria
slicemap_estimate_story Write your plan for a story: how many minutes of YOUR OWN work it will take—not a human developer’s days—with a range, how complex it is and how clear the card is to you, and your model name.

Write your plan for a story: how many minutes of YOUR OWN work it will take—not a human developer’s days—with a range, how complex it is and how clear the card is to you, and your model name. Estimate when the acceptance criteria are written, and at the latest before the first line of code. Until the story first goes into work, calling this again replaces the plan; from the first move into work it is frozen and refused, so it can be compared with the minutes actually spent. The builder sees the plan but cannot change it: when they disagree, they ask you to re-estimate. Low clarity is a reason to ask the owner before coding.

  • storyId
  • minutes: Expected minutes of your own work on the story
  • minMinutes: Low end of the range, minutes; not more than minutes
  • maxMinutes: High end of the range, minutes; not less than minutes
  • complexity: How big and risky the work is: 1 one place … 5 new table, rights, many screens
  • clarity: How well the card lets you build without guessing: 1 unclear what to build … 5 no questions
  • missing (optional): One line: what the card is missing. Required when clarity is below 5
  • model: Your model or agent name, e.g. “claude-opus-5-5”
slicemap_record_work Record how many minutes of YOUR OWN work this pass on a story took—from taking it into work to handing it over—not counting the time you waited for the owner’s answers.

Record how many minutes of YOUR OWN work this pass on a story took—from taking it into work to handing it over—not counting the time you waited for the owner’s answers. Call it once when you hand the story over: move it to acceptance or done. Each call adds to the minutes recorded before and counts one more pass: a story back from acceptance gets its next pass on top. The plan stays as it was, so the builder compares plan and fact; the database stamps the time, and from the first move into work to the last record is the story’s calendar time. The fact is your word and cannot be corrected later: count honestly, and when a call fails without a clear answer, read the story with slicemap_get_story before calling again—a second call adds the minutes twice.

  • storyId
  • minutes: Minutes of your own work in this pass
slicemap_create_story Add a story to an epic.

Add a story to an epic. Take the epic id from slicemap_board_snapshot.

  • epicId: Epic id from board snapshot
  • title
  • description (optional)
  • release (optional): Release name as shown on the board, or null for “no release”
  • priority (optional): 0 none … 4 critical
  • personaId (optional): Persona id from slicemap_project_personas
slicemap_update_story Change a story’s title, description, release, priority, persona, assignee or its own dates on the roadmap (startDate, endDate—a story without dates sits inside its release), move it to another epic of the same map (it lands last there), or put it in its place among the stories of its epic (after).

Change a story’s title, description, release, priority, persona, assignee or its own dates on the roadmap (startDate, endDate—a story without dates sits inside its release), move it to another epic of the same map (it lands last there), or put it in its place among the stories of its epic (after).

  • storyId
  • title (optional)
  • description (optional)
  • release (optional): Release name as shown on the board, or null for “no release”
  • priority (optional)
  • personaId (optional): Persona id from slicemap_project_personas, or null to unbind
  • assigneeId (optional): Assignee id from assignableMembers in slicemap_board_snapshot, or null to unassign. Only workspace members who can edit the map can be assigned.
  • epicId (optional): Epic id from board snapshot to move the story to; it lands last there. The step it already sits in changes nothing.
  • after (optional): A story of the same epic (the new one, with epicId) to stand right after; null puts it first
  • startDate (optional): First day of the story on the roadmap, YYYY-MM-DD; null clears it
  • endDate (optional): Day the story is due, YYYY-MM-DD, not before startDate; null clears it

Shape the map

slicemap_create_project Create a project in your workspace.

Create a project in your workspace. It starts with the default nine development stages (Idea … Production), each with a description; read them with slicemap_project_statuses and offer the owner to fit them to the project.

  • name
  • slug (optional)
  • description (optional)
  • key (optional): The prefix of story numbers, SM in SM-142: 2-6 capital Latin letters and digits, a letter first. Left out, it is picked from the slug.
  • icon (optional)
  • color (optional)
slicemap_update_project Change a project’s name, description, icon or colour.

Change a project’s name, description, icon or colour.

  • projectSlug
  • name (optional)
  • description (optional)
  • icon (optional)
  • color (optional)
slicemap_create_story_map Add a story map to a project.

Add a story map to a project.

  • projectSlug
  • title
  • description (optional)
  • goal (optional)
  • personaId (optional)
slicemap_update_story_map Change a story map’s title, description, goal or persona.

Change a story map’s title, description, goal or persona.

  • storyMapId
  • title (optional)
  • description (optional)
  • goal (optional)
  • personaId (optional)
slicemap_create_epic Add an epic—a column—to a project’s story map, at the end of the path or after a named epic.

Add an epic—a column—to a project’s story map, at the end of the path or after a named epic.

  • projectSlug
  • storyMapId (optional): Defaults to the project’s first map
  • title
  • description (optional)
  • color (optional)
  • icon (optional)
  • after (optional): Epic id to place after; null puts it first; omit for the end (create) or no move (update)
slicemap_update_epic Change an epic’s title, description, colour or icon, move it in the path, or put it into a chapter of its map (chapterId; null takes it out).

Change an epic’s title, description, colour or icon, move it in the path, or put it into a chapter of its map (chapterId; null takes it out). An epic put into another chapter moves to the end of that chapter (after the named epic when you also pass after); the same chapter moves nothing.

  • epicId
  • title (optional)
  • description (optional)
  • color (optional)
  • icon (optional)
  • after (optional): Epic id to place after; null puts it first; omit for the end (create) or no move (update)
  • chapterId (optional): Chapter id from chapters in slicemap_board_snapshot, or null for no chapter
slicemap_create_chapter Add a chapter of the user journey—a group of epics shown above them on the board—at the end or after a named chapter.

Add a chapter of the user journey—a group of epics shown above them on the board—at the end or after a named chapter. Put epics into it with slicemap_update_epic {chapterId}; slicemap_delete_chapter deletes one into the trash.

  • projectSlug
  • storyMapId (optional): Defaults to the project’s first map
  • title
  • after (optional): Chapter id to place after; null puts it first; absent puts it last
slicemap_update_chapter Rename a chapter or move it among the chapters of its map; its epics move with it on the board.

Rename a chapter or move it among the chapters of its map; its epics move with it on the board.

  • chapterId
  • title (optional)
  • after (optional): Chapter id to place after; null puts it first
slicemap_create_release Add a release—a row of the board—by name, at the end of the queue or after a named release, optionally with its period (startDate, endDate) and goal.

Add a release—a row of the board—by name, at the end of the queue or after a named release, optionally with its period (startDate, endDate) and goal. Without a colour it takes the next unused one, as the board would. A map without an active release activates its first one; an existing pointer moves only with slicemap_activate_release.

  • projectSlug
  • storyMapId (optional): Defaults to the project’s first map
  • name
  • color (optional)
  • after (optional): Release name to place after; null puts it first; omit for the end (create) or no move (update)
  • startDate (optional): First day of the release, YYYY-MM-DD; null clears it
  • endDate (optional): Last day of the release, YYYY-MM-DD, not before startDate; null clears it
  • goal (optional): What the release is for, a sentence or two; an empty string clears it
slicemap_update_release Rename or recolour a release, set or clear its period (startDate, endDate) and goal, or move it in the queue.

Rename or recolour a release, set or clear its period (startDate, endDate) and goal, or move it in the queue. The release is addressed by its current name; stories stay in it across a rename. Fields left out stay as they are.

  • projectSlug
  • storyMapId (optional): Defaults to the project’s first map
  • release: Current release name
  • name (optional): New name
  • color (optional)
  • after (optional): Release name to place after; null puts it first; omit for the end (create) or no move (update)
  • startDate (optional): First day of the release, YYYY-MM-DD; null clears it
  • endDate (optional): Last day of the release, YYYY-MM-DD, not before startDate; null clears it
  • goal (optional): What the release is for, a sentence or two; an empty string clears it
slicemap_activate_release Make a release the map’s active one—the release slicemap_next_story hands out stories from.

Make a release the map’s active one—the release slicemap_next_story hands out stories from. Move it when the person asks, or when the active release is done and they agreed which one is next; never just to reach a story you want.

  • projectSlug
  • storyMapId (optional): Defaults to the project’s first map
  • release: Release name as shown on the board
slicemap_create_persona Add a persona—who the map is for—to a project.

Add a persona—who the map is for—to a project. Names are unique within a project; the answer carries the id to bind stories with.

  • projectSlug
  • name
  • description (optional)
  • role (optional): e.g. “PM”, “End user”
  • goals (optional)
  • painPoints (optional)
slicemap_update_persona Change a persona’s name, description, role, goals or pain points.

Change a persona’s name, description, role, goals or pain points.

  • personaId: Persona id from slicemap_project_personas
  • name (optional)
  • description (optional)
  • role (optional)
  • goals (optional)
  • painPoints (optional)
slicemap_create_view Add a tab to a map, last.

Add a tab to a map, last. settings is the whole set; what you leave out takes its default, and an unknown or broken field is dropped, not refused. Fields: filters {release (release id, or “none” for the backlog), statusIds, assigneeIds, epicIds, personaIds, priorities (0-4)}; columns and rows of a board (epic, status, release, assignee, priority, persona; rows also none); grouping and subGrouping of a table (none, epic, release, status, persona, assignee, priority); sort {column, direction: asc|desc} or null; pageSize (25, 50, 100); density (large, comfortable, compact); fields shown on cards (id, release, status, assignee, priority, persona, criteria, estimate, description, step, lastChange, notes—the mark of a story with a linked note, on Map and Kanban cards) or null for the type’s defaults; a field left out of the list is off.

  • projectSlug
  • storyMapId (optional): Defaults to the project’s first map
  • type
  • name (optional): Tab name; null or empty—called by its type
  • settings (optional): The tab’s settings as one object; see the description
slicemap_update_view Rename a tab, replace its settings or move it among the tabs of its map.

Rename a tab, replace its settings or move it among the tabs of its map. The change shows for everyone on the map at once. settings is the whole set; what you leave out takes its default, and an unknown or broken field is dropped, not refused. Fields: filters {release (release id, or “none” for the backlog), statusIds, assigneeIds, epicIds, personaIds, priorities (0-4)}; columns and rows of a board (epic, status, release, assignee, priority, persona; rows also none); grouping and subGrouping of a table (none, epic, release, status, persona, assignee, priority); sort {column, direction: asc|desc} or null; pageSize (25, 50, 100); density (large, comfortable, compact); fields shown on cards (id, release, status, assignee, priority, persona, criteria, estimate, description, step, lastChange, notes—the mark of a story with a linked note, on Map and Kanban cards) or null for the type’s defaults; a field left out of the list is off.

  • viewId: Tab id from slicemap_map_views
  • name (optional): Tab name; null or empty—called by its type
  • settings (optional): The tab’s settings as one object; see the description
  • after (optional): Tab id to place after; null puts it first

Notes

slicemap_list_notes A project’s notes, freshest first: specs, decisions and plans written in markdown next to the map.

A project’s notes, freshest first: specs, decisions and plans written in markdown next to the map. Notes lie in a tree, like pages of a knowledge base: each note gives its id, title, where it lies (parentId—the note it is nested in, null at the root; position—its place among the notes there, from 0), its purpose (“story_specs” for the note that collects the stories' specs, else null), updatedAt (send it back with slicemap_update_note), whether an agent changed it last, and its links—the stories (storyId, number like SM-142, title) and releases (releaseId, name) it belongs to. No text here: read one with slicemap_get_note.

  • projectSlug: Project slug
slicemap_get_note One note whole: title, body (markdown; a ```mermaid code block is a diagram), updatedAt, its links to stories and releases, where it lies in the tree (parentId, position) and the notes nested in it, in order (nested: id, title).

One note whole: title, body (markdown; a ```mermaid code block is a diagram), updatedAt, its links to stories and releases, where it lies in the tree (parentId, position) and the notes nested in it, in order (nested: id, title). Read a story’s notes—slicemap_get_story lists them—before you build it: they hold its spec and the decisions taken.

  • noteId
slicemap_search_notes Find a project’s notes by a word in the title or the text: id, title, updatedAt and a snippet around the match.

Find a project’s notes by a word in the title or the text: id, title, updatedAt and a snippet around the match.

  • projectSlug: Project slug
  • query: Text to look for
  • limit (optional)
slicemap_create_note Write a new note in a project—a spec of a story, a decision, a release plan—and link it at once to stories (storyIds) and releases (releaseIds) of the project.

Write a new note in a project—a spec of a story, a decision, a release plan—and link it at once to stories (storyIds) and releases (releaseIds) of the project. People see it on the project’s Notes page and in the story panel’s Notes tab, signed as written by an agent. Write what you decide while building a story into a note linked to it, not into files of one machine. Place it in the tree with parentId (null—the root) and after; without parentId a note linked to a story is a spec and goes under the note “Story specs” (the first spec makes it), any other note goes to the root. It stands last among the notes there unless after says otherwise.

  • projectSlug: Project slug
  • title (optional)
  • body (optional): Markdown
  • storyIds (optional)
  • releaseIds (optional)
  • parentId (optional): The note to nest it in; null puts it at the root
  • after (optional): A note of the same place to stand right after; null puts it first; omit for last
slicemap_update_note Change a note’s title or body (the body is replaced whole—read it first and keep what others wrote), or move it in the tree.

Change a note’s title or body (the body is replaced whole—read it first and keep what others wrote), or move it in the tree. To change the text send updatedAt as you read it: if someone changed the note since, the write is refused with note_changed and nothing is lost—read it again and send your change on top. To move it send parentId (the note to nest it in, null—the root) and/or after (a note of that place to stand right after, null—first; without after it goes last there); its nested notes move with it. A note cannot go inside itself or a note nested in it. Moving does not change updatedAt.

  • noteId
  • title (optional)
  • body (optional): Markdown, the whole text
  • updatedAt (optional): updatedAt of the note as you read it; required with title or body
  • parentId (optional): Move: the note to nest it in; null—the root; omit to stay in its place
  • after (optional): Move: a note of the new place to stand right after; null—first
slicemap_link_note Link a note to one more story (storyId) or release (releaseId) of its project; the note then shows in that story’s panel or that release’s settings.

Link a note to one more story (storyId) or release (releaseId) of its project; the note then shows in that story’s panel or that release’s settings.

  • noteId
  • storyId (optional)
  • releaseId (optional)
slicemap_unlink_note Remove a note’s link to a story (storyId) or a release (releaseId).

Remove a note’s link to a story (storyId) or a release (releaseId). The note itself stays.

  • noteId
  • storyId (optional)
  • releaseId (optional)

Delete and restore

slicemap_delete_story Delete a story with its acceptance criteria.

Delete a story with its acceptance criteria. It goes to the workspace trash for 30 days—slicemap_restore {trashId} brings it back whole, and the person can restore it on the Trash page. Delete what you created yourself (duplicates, drafts, mistakes) on your own; someone else’s work only when the person asks; a map or a project only when asked for exactly that—and say what you deleted.

  • storyId
slicemap_delete_epic Delete an epic (a step of the path) with all its stories and their criteria.

Delete an epic (a step of the path) with all its stories and their criteria. It goes to the workspace trash for 30 days—slicemap_restore {trashId} brings it back whole, and the person can restore it on the Trash page. Delete what you created yourself (duplicates, drafts, mistakes) on your own; someone else’s work only when the person asks; a map or a project only when asked for exactly that—and say what you deleted.

  • epicId
slicemap_delete_release Delete a release, by its name; its stories stay on the map and go to the backlog, and a restore puts them back in it (and makes it active again if it was).

Delete a release, by its name; its stories stay on the map and go to the backlog, and a restore puts them back in it (and makes it active again if it was). It goes to the workspace trash for 30 days—slicemap_restore {trashId} brings it back whole, and the person can restore it on the Trash page. Delete what you created yourself (duplicates, drafts, mistakes) on your own; someone else’s work only when the person asks; a map or a project only when asked for exactly that—and say what you deleted.

  • projectSlug
  • storyMapId (optional): Defaults to the project’s first map
  • release: Release name as shown on the board
slicemap_delete_chapter Delete a chapter of the user journey; its epics stay on the map without a chapter, and a restore puts them back in it.

Delete a chapter of the user journey; its epics stay on the map without a chapter, and a restore puts them back in it. It goes to the workspace trash for 30 days—slicemap_restore {trashId} brings it back whole, and the person can restore it on the Trash page. Delete what you created yourself (duplicates, drafts, mistakes) on your own; someone else’s work only when the person asks; a map or a project only when asked for exactly that—and say what you deleted.

  • chapterId
slicemap_delete_persona Delete a persona of a project; its stories and maps keep going without it, and a restore binds them again.

Delete a persona of a project; its stories and maps keep going without it, and a restore binds them again. It goes to the workspace trash for 30 days—slicemap_restore {trashId} brings it back whole, and the person can restore it on the Trash page. Delete what you created yourself (duplicates, drafts, mistakes) on your own; someone else’s work only when the person asks; a map or a project only when asked for exactly that—and say what you deleted.

  • personaId
slicemap_delete_status Delete a development stage—owner or admin only, as on the Statuses page; its stories move to the project’s default stage (a restore moves them back).

Delete a development stage—owner or admin only, as on the Statuses page; its stories move to the project’s default stage (a restore moves them back). A stage with a service code (todo, ready-for-dev, in-progress, done) cannot be deleted; the default stage needs newDefaultStatusId. It goes to the workspace trash for 30 days—slicemap_restore {trashId} brings it back whole, and the person can restore it on the Trash page. Delete what you created yourself (duplicates, drafts, mistakes) on your own; someone else’s work only when the person asks; a map or a project only when asked for exactly that—and say what you deleted.

  • statusId: Stage id from slicemap_project_statuses
  • newDefaultStatusId (optional): When deleting the default stage: the stage that becomes the default and takes its stories
slicemap_delete_view Delete a tab of a map (a saved view); a map keeps at least one.

Delete a tab of a map (a saved view); a map keeps at least one. It goes to the workspace trash for 30 days—slicemap_restore {trashId} brings it back whole, and the person can restore it on the Trash page. Delete what you created yourself (duplicates, drafts, mistakes) on your own; someone else’s work only when the person asks; a map or a project only when asked for exactly that—and say what you deleted.

  • viewId: Tab id from slicemap_map_views
slicemap_delete_story_map Delete a whole map with its epics, stories, releases, chapters, tabs and share link—owner or admin only.

Delete a whole map with its epics, stories, releases, chapters, tabs and share link—owner or admin only. It goes to the workspace trash for 30 days—slicemap_restore {trashId} brings it back whole, and the person can restore it on the Trash page. Delete what you created yourself (duplicates, drafts, mistakes) on your own; someone else’s work only when the person asks; a map or a project only when asked for exactly that—and say what you deleted.

  • storyMapId
slicemap_delete_project Delete a whole project with its maps, personas and stages—owner or admin only.

Delete a whole project with its maps, personas and stages—owner or admin only. It goes to the workspace trash for 30 days—slicemap_restore {trashId} brings it back whole, and the person can restore it on the Trash page. Delete what you created yourself (duplicates, drafts, mistakes) on your own; someone else’s work only when the person asks; a map or a project only when asked for exactly that—and say what you deleted.

  • projectSlug
slicemap_delete_note Delete a note with the notes nested in it (the answer counts them) and their links to stories and releases; a restore brings the branch back to its place with its texts, authors and links.

Delete a note with the notes nested in it (the answer counts them) and their links to stories and releases; a restore brings the branch back to its place with its texts, authors and links. It goes to the workspace trash for 30 days—slicemap_restore {trashId} brings it back whole, and the person can restore it on the Trash page. Delete what you created yourself (duplicates, drafts, mistakes) on your own; someone else’s work only when the person asks; a map or a project only when asked for exactly that—and say what you deleted.

  • noteId
slicemap_list_trash What was deleted in your workspace in the last 30 days, newest first—by people on the board and by agents: trashId, kind, title (and the story number), project and map it lay in, what was inside, who deleted it and whether through an agent, when, and when it will be erased.

What was deleted in your workspace in the last 30 days, newest first—by people on the board and by agents: trashId, kind, title (and the story number), project and map it lay in, what was inside, who deleted it and whether through an agent, when, and when it will be erased. Restore an item with slicemap_restore; erasing early is the person’s, on the Trash page.

  • projectSlug (optional): Only what was deleted in this project; omit for the whole workspace
slicemap_restore Put a trash item back where it was, whole: a story with its number, criteria and ticks, status, release, persona, assignee and your estimate; an epic with its stories; a map or a project with everything in it.

Put a trash item back where it was, whole: a story with its number, criteria and ticks, status, release, persona, assignee and your estimate; an epic with its stories; a map or a project with everything in it. What deleting cleared around it comes back too (a release’s stories, a chapter’s epics, a persona’s stories, a stage’s stories). Refused when what it lay in is in the trash too (restore that first) or its name or address is taken since (rename that one). The answer says what could not go back where it was.

  • trashId: trashId from slicemap_list_trash or a delete’s answer

Set up stages

slicemap_create_status Add a development stage to a project, at the end of the flow or after a named stage.

Add a development stage to a project, at the end of the flow or after a named stage. Give it a description: what happens in the stage and when a story moves on—people and agents choose stages by it. Names are unique within a project. Change stages only after the owner agreed to the flow you proposed.

  • projectSlug
  • name
  • description (optional): What happens in the stage and when a story moves on
  • color (optional)
  • icon (optional): One emoji, or null for no icon
  • done (optional): Stories in this stage count as done
  • after (optional): Stage id to place after; null puts it first; omit for the end
slicemap_update_status Change a stage’s name, description, icon, colour or whether it counts as done, or make it the project’s default stage (where the stories of a deleted stage go).

Change a stage’s name, description, icon, colour or whether it counts as done, or make it the project’s default stage (where the stories of a deleted stage go). A stage with a service code (todo, ready-for-dev, in-progress, done) can be renamed; the code keeps it findable. A stage that is not needed is deleted with slicemap_delete_status (owner or admin): its stories move to the default stage.

  • statusId: Stage id from slicemap_project_statuses
  • name (optional)
  • description (optional): What happens in the stage and when a story moves on
  • color (optional)
  • icon (optional): One emoji, or null for no icon
  • done (optional): Stories in this stage count as done
  • isDefault (optional): true makes this the project’s default stage; the previous default stops being it
slicemap_reorder_statuses Put a project’s stages in a new order—the order of the board’s status columns and of every status list.

Put a project’s stages in a new order—the order of the board’s status columns and of every status list. Send every stage id of the project exactly once.

  • projectSlug
  • statusIds: Every stage id from slicemap_project_statuses, in the new order

Manage the workspace

slicemap_workspace_members Who is in your workspace: userId, name, role (owner, admin, member, viewer), which roles you may give each of them and whether you may remove them—the rules of the Members page.

Who is in your workspace: userId, name, role (owner, admin, member, viewer), which roles you may give each of them and whether you may remove them—the rules of the Members page. Owners and admins also get the live invite links.

slicemap_update_member_role Give a member another role, by the Members page’s rules: an owner or admin only; owners are appointed, changed and demoted only by owners; the sole owner keeps the role.

Give a member another role, by the Members page’s rules: an owner or admin only; owners are appointed, changed and demoted only by owners; the sole owner keeps the role. Do this only when the person asks for it, and say what you changed.

  • userId: userId from slicemap_workspace_members
  • role
slicemap_remove_member Remove someone from your workspace, by the Members page’s rules: an owner or admin only, owners only by owners, never the sole owner.

Remove someone from your workspace, by the Members page’s rules: an owner or admin only, owners only by owners, never the sole owner. Their agent keys die with the membership. Your own userId means leaving the workspace—this key then stops working. Do this only when the person asks for it, and say what you changed.

  • userId: userId from slicemap_workspace_members
slicemap_create_invite_link The workspace’s invite link for a role: whoever opens it and signs in joins with that role.

The workspace’s invite link for a role: whoever opens it and signs in joins with that role. One live link per role, no expiry—an existing one is returned. Owner or admin only; nobody joins as owner by link. Do this only when the person asks for it, and say what you changed.

  • role
slicemap_revoke_invite_link Kill the workspace’s invite link for a role.

Kill the workspace’s invite link for a role. Those who already joined stay. Owner or admin only.

  • role
slicemap_create_share_link The map’s public link: anyone with the address sees the map read-only, without an account (it does not let them into the workspace).

The map’s public link: anyone with the address sees the map read-only, without an account (it does not let them into the workspace). One live link per map—an existing one is returned.

  • projectSlug
  • storyMapId (optional): Defaults to the project’s first map
slicemap_revoke_share_link Kill the map’s public link: the address stops opening the map.

Kill the map’s public link: the address stops opening the map.

  • projectSlug
  • storyMapId (optional): Defaults to the project’s first map
slicemap_api_keys The agent keys of your workspace—owner or admin only: keyId, name, prefix, rights, whose key it is, whether it is the key you are using, when it was last used.

The agent keys of your workspace—owner or admin only: keyId, name, prefix, rights, whose key it is, whether it is the key you are using, when it was last used.

slicemap_create_api_key Issue an agent key for yourself in this workspace—owner or admin only, as on the API keys page.

Issue an agent key for yourself in this workspace—owner or admin only, as on the API keys page. The secret is in the answer once and nowhere else. Do this only when the person asks for it, and say what you changed.

  • name: What the key is for, e.g. the agent or machine it goes to
  • permissions: read—reads only; read_write—reads and changes the map
slicemap_revoke_api_key Revoke an agent key: your own, or anyone’s if you are an owner or admin.

Revoke an agent key: your own, or anyone’s if you are an owner or admin. It stops working on its next call—the key you are using too.

  • keyId: keyId from slicemap_api_keys
slicemap_update_workspace Rename your workspace, change its address (the /w/<slug> of its pages—old addresses stop opening) or its description.

Rename your workspace, change its address (the /w/<slug> of its pages—old addresses stop opening) or its description. Owner or admin only.

  • name (optional)
  • slug (optional)
  • description (optional)
slicemap_delete_workspace Delete your workspace for good—its projects, members, keys and trash with it; this bypasses the trash and cannot be undone, and this key stops working.

Delete your workspace for good—its projects, members, keys and trash with it; this bypasses the trash and cannot be undone, and this key stops working. Only its owner, only when the person asks for exactly this, and never their only workspace. Repeat the workspace’s name in workspaceName.

  • workspaceName: The workspace’s exact name

Follow the pipeline

slicemap_skill Slicemap’s pipeline skills: the process for working through a story map with you.

Slicemap’s pipeline skills: the process for working through a story map with you. sm-walk takes one story from its card to acceptance and calls the others—sm-grill (interview the owner until the story has acceptance criteria), sm-spec, sm-implement, sm-review; sm-accept checks handed-over stories in production, sm-batch runs a whole release, sm-map builds and shapes the map, sm-init binds a repository to a map. Without a name: the list, with what each skill is for. With a name: the skill’s text to follow, in this instance’s language. With a name and a file: a file of the skill’s folder that its text links to—the link ../sm-init/references/project-context.md is name sm-init, file references/project-context.md. Fetch a skill when the person asks for that kind of work, even if you have no copy of it, and follow it; do not start one on your own.

  • name (optional): Skill name, like “sm-walk” (or just “walk”); omit to list the skills
  • file (optional): A file inside the skill’s folder, like “references/project-context.md”; omit for its SKILL.md