CLI for agents
Pass the global --json flag when software consumes CLI output. A successful response contains schema_version, command, data, and, for paginated commands, pagination.
Find the meeting first
Section titled “Find the meeting first”fmtr --json meetings list --query "weekly planning" --limit 10fmtr --json meetings get MEETING_IDList filtering matches titles and IDs without regard to case. For full-text search across notes, summaries, and transcripts, use meetings search. If several meetings match the user’s request, ask which one they mean.
Read only what you need
Section titled “Read only what you need”fmtr --json meetings note MEETING_ID --kind notefmtr --json meetings note MEETING_ID --kind summaryUse meetings get when you also need metadata or action items.
Transcripts
Section titled “Transcripts”fmtr --json meetings transcript MEETING_IDThis returns the complete speaker-labeled transcript in one response. Transcripts can be large, so do not request one unless the task needs it.
Check the setup
Section titled “Check the setup”fmtr --json doctorThe report includes the CLI version, a ready flag, the resolved vault path, path health, and the number of sessions. It exits with status 1 when ready is false, while still writing the report to standard output.
For a non-default vault, use --vault-path DIR or FMTR_VAULT_PATH.
Write only when asked
Section titled “Write only when asked”fmtr --json meetings new --title "Weekly planning" --note notes.mdfmtr --json meetings note MEETING_ID --append notes.mdfmtr --json import recording.m4a --transcribefmtr --json transcribe MEETING_IDmeetings new creates a meeting and prints its ID; --note seeds the note body from a file or stdin (-). meetings note --set replaces the note body and --append extends it; both also accept - for stdin. import creates a meeting from an audio file, and --transcribe chains on-device transcription. transcribe replaces the meeting’s existing transcript, so run it only when the user wants that.
Export only when asked
Section titled “Export only when asked”fmtr meetings export MEETING_ID --format markdown --output meeting.mdfmtr meetings export MEETING_ID --format json --output meeting.jsonExport refuses to replace an existing file. Pass --force only when the user has approved overwriting that exact path.
See the CLI reference for the full command contract.