Capture a Team Decision
The most important thing Momental does is preserve the reasoning behind your team's decisions — not just what you decided, but why. This cookbook covers three ways to capture a decision right after it's made.
Path 1: Huginn chat (fastest)
Open the Huginn chat and describe the decision conversationally. Huginn will extract the key atoms and show them to you for review.
Example prompt:
We just decided to sunset the v1 API on January 1st. The main reason was that fewer than 3%
of active users are still on v1, and maintaining two API surfaces was slowing down all new
development. We considered a longer grace period but decided the migration tooling we already
shipped makes a clean cutoff reasonable. Huginn will extract something like:
[
{
"type": "DECISION",
"statement": "v1 API will be sunset on January 1st"
},
{
"type": "DATA",
"statement": "Fewer than 3% of active users are still on the v1 API"
},
{
"type": "LEARNING",
"statement": "Maintaining two API surfaces was slowing new development velocity"
}
] Review the draft atoms in the conversation panel. Publish the ones that are accurate. Each published atom improves future Huginn conversations that touch the same domain.
Path 2: MCP (most control)
Create the atoms directly if you want precise control over the statement, type, and links.
// The decision itself
const decision = await momental_node_create({
statement: "v1 API will be sunset on January 1st. Migration tooling is available at /docs/migration.",
nodeType: "DECISION",
status: "ACTIVE",
domain: "engineering",
tags: ["api", "versioning", "deprecation"]
});
// The evidence behind it (optional but valuable)
const data = await momental_node_create({
statement: "As of Q3, fewer than 3% of active users are still calling v1 endpoints",
nodeType: "DATA",
status: "ACTIVE",
domain: "engineering"
});
// Link the decision to its evidence
await momental_node_link({
fromNodeId: decision.id,
toNodeId: data.id,
linkType: "DERIVES_FROM"
});
// Link to the relevant strategy node
await momental_node_link({
fromNodeId: decision.id,
toNodeId: "epic_api_modernization",
linkType: "LINKED_TO"
}); Path 3: Meeting notes upload (batch)
If you have meeting notes, upload them as a document. Momental extracts all the decisions, learnings, and data points automatically.
const doc = await momental_document_add({
title: "API Strategy Meeting — Nov 14",
content: meetingNotesText, // plain text or markdown
domain: "engineering"
});
// Extraction takes 1-2 minutes. Check status:
const status = await momental_document_status({ documentId: doc.id });
// status.status === "COMPLETE" when ready
// Publish the document (makes all extracted atoms reviewable)
await momental_document_publish({ documentId: doc.id }); After publishing, go to Knowledge → Documents in the UI to review and selectively publish the extracted atoms.
What makes a good decision atom
| Good | Not useful |
|---|---|
| "We use Postgres for all persistent storage. No Redis, no DynamoDB." | "We made a database decision" |
| "Pricing page changes require approval from both product and finance before shipping." | "Pricing is important" |
| "We don't build mobile-specific features — we ship responsive web only." | "Mobile strategy TBD" |
A good decision atom answers: "If a new engineer asked why we do it this way, what would you tell them?"
After capturing — link the reasoning chain
A DECISION atom is most powerful when linked to the LEARNING that justifies it. Momental flags decisions without a parent learning as a structural gap — a decision without documented evidence is a liability when the people who made it leave.
LEARNING: "Every time we shipped a large migration without a deadline, users stayed
on the old version indefinitely. Two years of v1 co-existence is proof."
↓ DERIVES_FROM
DECISION: "v1 API will be sunset on January 1st"