Skip to main content

Getting Started with Momentum on HUMΛN

Turn one-off workflows into scheduled, monitored loops that keep working after the chat ends.


What You're Building

Momentum is a HUMΛN primitive for recurring work: morning briefs, pipeline scouts, condition watches, and weekly reviews. Each Momentum object has:

  • A goal (natural language — what to keep doing)
  • A trigger (schedule, condition, or manual)
  • Capability bindings (which connectors execute the work)
  • A delivery target (Companion, Slack, email, …)
  • Governance policies (approval, cost caps, notifications)

You create once; HUMΛN runs on cadence, remembers previous outputs, and surfaces meaningful changes.


Prerequisites

  • HUMΛN org with developer access
  • @human/sdk or @human/cli installed
  • Delegation token with org context (human login)
  • At least one connector relevant to your goal (e.g. HubSpot + Slack for a sales brief)

Step 1: Install the SDK

npm install @human/sdk
import { HumanClient } from '@human/sdk';

const client = new HumanClient({
  delegationToken: process.env.HUMAN_DELEGATION_TOKEN!,
});

Step 2: Create with magic mode

Ninety percent of use cases need only a goal and a schedule:

const obj = await client.momentum
  .build('Summarize overnight support tickets and post top themes')
  .every('weekdays at 7am')
  .using(['intercom', 'slack'])
  .delivering_to('slack')
  .create();

The builder converts human schedules (weekdays at 8am, every monday at 9am) into cron expressions. Override anything with control-mode fields on create():

await client.momentum.create({
  name: 'Support digest',
  goal: '…',
  trigger: { kind: 'schedule', cron: '0 7 * * 1-5', timezone: 'America/Los_Angeles' },
  policy: { require_approval: false, max_cost_per_run_usd: 2 },
});

Step 3: Activate and run

New objects start in draft. Activate to register the Inngest schedule:

await client.momentum.activate(obj.id);
const { run_id, status } = await client.momentum.run(obj.id);

CLI equivalent:

human momentum activate <id>
human momentum run <id> --follow

Step 4: Read logs and history

const history = await client.momentum.history(obj.id, { limit: 10 });
const { logs, run_id } = await client.momentum.logs(obj.id);
human momentum history <id>
human momentum logs <id> --follow

Step 5: Use a template

HUMΛN ships six first-party templates (Morning Brief, Pipeline Scout, Watch This For Me, Reclaim My Week, Local Event Scout, Social Signal Scout):

human momentum template list
human momentum template use morning-brief
const templates = await client.momentum.listTemplates();
const { template } = await client.momentum.getTemplate('pipeline-scout');
const obj = await client.momentum
  .build(template.goal)
  .from_template(template.id)
  .using(template.suggested_connectors)
  .create();

Step 6: Inspect and diagnose

const inspection = await client.momentum.inspect(obj.id);
// inspection.resolved_connectors, capability_map, last_run, next_run_at
human momentum inspect <id>
human momentum doctor <id>

doctor flags draft state, missing capabilities, failed last runs, and scheduling gaps.


CLI create with intent shaping

human momentum create optionally shapes an Intent brief first (same pipeline as human intent build), linking canonical_intent_id for lineage:

human momentum create "Find qualified leads from LinkedIn every morning"
# Skips intent: --no-intent

Reference

Topic Location
Terse quickstart docs/runbooks/momentum-quickstart.md
Architecture deep dive docs/guides/momentum-deep-dive.md
MCP integration docs/guides/momentum-mcp-tools.md
Connector authoring docs/runbooks/momentum-connector-authoring.md
Canon kb/22_humanos_orchestration_core.md
API POST /v1/momentum, POST /v1/momentum/:id/run

← All guides