Fusemomo CLI is a command-line interface designed for AI agents to interact with the Fusemomo.
Note
This CLI is optimized for machine-to-machine interaction. It defaults to structured JSON output and provides deterministic exit codes for use in automated pipelines.
- Agent-First Design: Pure JSON output (standard), TTY-aware formatting, and comprehensive error codes.
- Interactive REPL: A built-in
promptmode for exploratory use and manual debugging. - L1 — Identity Resolution: Resolve and link disparate identifiers into a single canonical entity.
- L2 — Behavioral Graph: Log and track immutable interaction events across your agent ecosystem.
- L3 — Behavioral Intelligence: Retrieve success-optimized recommendations for next-best-actions.
Install the latest pre-compiled binary directly to /usr/local/bin:
curl -sL https://raw.githubusercontent.com/fusemomo/fusemomo-cli/main/scripts/install.sh | sudo bashRequires Go 1.25+.
git clone https://github.com/fusemomo/fusemomo-cli.git
cd fusemomo-cli
make build
# Binary will be in bin/fusemomogo install github.com/fusemomo/fusemomo-cli@latestRun the interactive setup to configure your environment:
fusemomo setupThis will prompt for your API key and base URL, saving them to ~/.fusemomo/config.yaml.
The CLI resolves configuration in the following order:
- Flags:
--api-key,--api-url - Environment Variables:
FUSEMOMO_API_KEY,FUSEMOMO_API_URL - Config File:
~/.fusemomo/config.yaml
| Command | Description |
|---|---|
fusemomo setup |
One-time interactive configuration |
fusemomo entity |
Manage and resolve behavioral entities |
fusemomo interaction |
Log single or batch interaction events |
fusemomo recommend |
Get and track outcome of recommendations |
fusemomo prompt |
Launch the interactive REPL |
fusemomo version |
Display build information |
Resolve an Entity
fusemomo entity resolve --id email=user@example.com --id stripe_id=cus_123Log an Interaction
fusemomo interaction log --entity-id <uuid> --type "purchase" --intent "buy_premium"Get a Recommendation
fusemomo recommend get --entity-id <uuid> --intent "conversion_optimizer" --min-success 2Control output using the --output global flag:
json(Default): Minified JSON for pipes, pretty-printed for TTY.table: Human-readable colored tables for manual inspection.
fusemomo entity list --output tableThe project includes a Makefile for standard development tasks:
| Target | Description |
|---|---|
make build |
Compile the binary to bin/fusemomo |
make test |
Run all tests with race detection |
make lint |
Run golangci-lint check |
make install |
Install binary to $GOPATH/bin |
make clean |
Remove build artifacts |
This project uses GoReleaser for automated cross-platform builds. To create a new release:
- Push a new tag:
git tag -a v1.0.0 -m "Release v1.0.0" && git push origin v1.0.0 - GitHub Actions will automatically build and publish the release.
- API Keys: Never logged or stored in history.
- Permissions: The config file is created with
0600permissions (owner read/write only). - Transport: TLS is enforced by default (
https://). Usinghttp://will trigger a warning.
© 2026 FuseMomo Team.
