laurent22/joplin · error · Error

Cannot find "%s".

Error message

Cannot find "%s".

What it means

The 'cat' command loads the target note via app().loadItem scoped to the current notebook; if the result is null it throws 'Cannot find'. The message is i18n-translated.

Source

Thrown at packages/app-cli/app/command-cat.ts:25

class Command extends BaseCommand {
	public override usage() {
		return 'cat <note>';
	}

	public override description() {
		return _('Displays the given note.');
	}

	public override options() {
		return [['-v, --verbose', _('Displays the complete information about note.')]];
	}

	public override async action(args: { note: string; options: { verbose?: boolean } }) {
		const title = args['note'];

		const item = await app().loadItem(ModelType.Note, title, { parent: app().currentFolder() });
		if (!item) throw new Error(_('Cannot find "%s".', title));

		let content = '';

		if (item.encryption_applied) {
			content = BaseItem.displayTitle(item);
		} else {
			content = args.options.verbose ? await Note.serialize(item) : await Note.serializeForEdit(item);
		}

		this.stdout(content);
		app().gui().showConsole();
		app().gui().maximizeConsole();
	}
}

module.exports = Command;

View on GitHub (pinned to 2654b33620)

Solutions

  1. Verify the title/id with 'ls'.
  2. Switch notebooks with 'use <notebook>'.
  3. Sync to pull missing notes.
  4. Use the note id if the title is ambiguous.

Example fix

# before
#   joplin cat "metting"   # typo
# after
#   joplin cat "meeting"
Defensive patterns

Strategy: validation

Validate before calling

const item = await app().loadItem(ModelType.Note, title, { parent: app().currentFolder() });
if (!item) {
  console.error(`Note not found: ${title}`);
  return;
}

Try / catch

try {
  await command.action(args);
} catch (e) {
  if (/Cannot find/.test(e.message)) console.error(e.message);
}

Prevention

When it happens

Trigger: Running 'cat <note>' where <note> matches no note title or id in the current notebook.

Common situations: Typo in the title; note in a different notebook; note not synced; note deleted.

Related errors


AI-assisted analysis of laurent22/joplin@2654b33620 (2026-08-12). Data as JSON: /api/errors/58fbb031f8de0f5e. Report an issue: GitHub.