{"id":46296681,"url":"https://github.com/robert7/remnote-cli","last_synced_at":"2026-04-02T14:47:12.262Z","repository":{"id":339193915,"uuid":"1160768103","full_name":"robert7/remnote-cli","owner":"robert7","description":"CLI (command-line interface) tool which allows to access your RemNote knowledge base via RemNote Bridge for MCP \u0026 OpenClaw - e.g. for usage in agentic workflows or any automation","archived":false,"fork":false,"pushed_at":"2026-03-25T16:54:57.000Z","size":1680,"stargazers_count":3,"open_issues_count":1,"forks_count":3,"subscribers_count":1,"default_branch":"main","last_synced_at":"2026-03-25T17:28:11.388Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/robert7.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":"AGENTS.md","dco":null,"cla":null}},"created_at":"2026-02-18T10:52:37.000Z","updated_at":"2026-03-25T16:55:02.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/robert7/remnote-cli","commit_stats":null,"previous_names":["robert7/remnote-cli"],"tags_count":8,"template":false,"template_full_name":null,"purl":"pkg:github/robert7/remnote-cli","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/robert7%2Fremnote-cli","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/robert7%2Fremnote-cli/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/robert7%2Fremnote-cli/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/robert7%2Fremnote-cli/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/robert7","download_url":"https://codeload.github.com/robert7/remnote-cli/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/robert7%2Fremnote-cli/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31308420,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-02T12:59:32.332Z","status":"ssl_error","status_checked_at":"2026-04-02T12:54:48.875Z","response_time":89,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2026-03-04T10:03:35.078Z","updated_at":"2026-04-02T14:47:12.251Z","avatar_url":"https://github.com/robert7.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# remnote-cli\n\n![Status](https://img.shields.io/badge/status-beta-yellow) ![License](https://img.shields.io/badge/license-MIT-blue)\n![CI](https://github.com/robert7/remnote-cli/actions/workflows/ci.yml/badge.svg)\n[![codecov](https://codecov.io/gh/robert7/remnote-cli/branch/main/graph/badge.svg)](https://codecov.io/gh/robert7/remnote-cli)\n\nCLI (command-line interface) companion for the [RemNote Automation Bridge](https://github.com/robert7/remnote-mcp-bridge) plugin.\nProvides terminal access to your RemNote knowledge base through a lightweight daemon architecture.\nUseful e.g. for integration with OpenClaw agents, scripting and other automation, including hierarchical markdown note\ncreation and RemNote-native flashcards.\n\n\u003e This is a working solution, but still experimental. If you run into any issues, please [report them here](https://github.com/robert7/remnote-cli/issues).\n\n## Demo\n\nSee CLI flow and troubleshooting in action: **[View Demo →](docs/demo.md)**\n\n## Architecture\n\n```\nRemNote + Automation Bridge Plugin (WebSocket client)\n         │\n         │ ws://127.0.0.1:3002\n         ▼\nCLI Daemon (background process)\n  ├─ WebSocket Server :3002\n  └─ HTTP Control API :3100\n         ▲\n         │ HTTP\nCLI Commands (short-lived)\n  e.g. remnote-cli create \"My Note\" --content-file /tmp/my-note.md\n```\n\nTwo components: the RemNote Automation Bridge plugin connects to the CLI daemon's WebSocket server. CLI commands talk\nto the daemon over a local HTTP control API.\n\nOn current bridge builds, the plugin starts its connection attempts automatically on plugin activation. The Automation\nBridge sidebar panel is optional for status, logs, and manual reconnect.\n\nFor the detailed bridge connection lifecycle, retry phases, and wake-up triggers, use the bridge repo as the source of\ntruth: [Connection Lifecycle Guide](https://github.com/robert7/remnote-mcp-bridge/blob/main/docs/guides/connection-lifecycle.md).\n\n## Quick Start\n\n\u003e **Version compatibility (`0.x` semver):** install a `remnote-cli` version compatible with your installed RemNote Automation Bridge plugin version. See the [Bridge / Consumer Version Compatibility Guide](https://github.com/robert7/remnote-mcp-bridge/blob/main/docs/guides/bridge-consumer-version-compatibility.md).\n\n```bash\nnpm install -g remnote-cli\n\n# Start the daemon\nremnote-cli daemon start\n\n# Open RemNote and wait for the bridge to connect automatically\n# Optional: open the Automation Bridge sidebar panel to verify status\n\n# Check connection\nremnote-cli status --text\n\n# Create a note or flashcards from markdown content\nremnote-cli create \"My Note\" --content-file /tmp/my-note.md --text\n\n# Search\nremnote-cli search \"My Note\" --text\n\n# Stop the daemon\nremnote-cli daemon stop\n```\n\n## Documentation\n\n### Getting Started\n\n- **[Installation Guide](docs/guides/installation.md)** - Prerequisites and install methods\n- **[Bridge / Consumer Version Compatibility Guide](https://github.com/robert7/remnote-mcp-bridge/blob/main/docs/guides/bridge-consumer-version-compatibility.md)** - Match CLI version to installed bridge plugin version (`0.x` semver)\n- **[Daemon Management](docs/guides/daemon-management.md)** - Start, stop, status, logs, and PID behavior\n- **[Demo \u0026 Screenshots](docs/demo.md)** - Terminal walkthrough of daemon startup, connection checks, and search\n\n### Usage\n\n- **[Command Reference](docs/guides/command-reference.md)** - All CLI commands and examples\n\n### Help \u0026 Advanced\n\n- **[Troubleshooting](docs/guides/troubleshooting.md)** - Common issues and fixes\n- **[Bridge Connection Lifecycle](https://github.com/robert7/remnote-mcp-bridge/blob/main/docs/guides/connection-lifecycle.md)** - Canonical bridge connect/retry behavior\n\n### Development\n\n- **[Development Setup](docs/guides/development-setup.md)** - Local setup, workflows, and quality checks\n- **[Integration Testing](docs/guides/integration-testing.md)** - End-to-end testing against live RemNote\n- **[Shared Integration Test Workflow](https://github.com/robert7/remnote-mcp-server/blob/main/docs/guides/integration-testing.md)** - Canonical guide for updating and running shared MCP server + CLI integration coverage\n\nPull requests that affect bridge-consumer behavior should follow the shared PR rules in the bridge repo: [Pull Request Guide](https://github.com/robert7/remnote-mcp-bridge/blob/main/docs/guides/pull-request-guide.md). In particular, keep bridge/server/CLI parity for shared functionality changes and link related PRs across the affected repos.\n\n## Commands\n\n| Command | Description |\n|---------|-------------|\n| `daemon start` | Start the background daemon |\n| `daemon stop` | Stop the daemon |\n| `daemon status` | Show daemon process status |\n| `create [title] [options]` | Create notes or flashcards from inline or file-based markdown content |\n| `search \u003cquery\u003e` | Search for notes |\n| `search-tag \u003ctag\u003e` | Search for tagged notes with ancestor context |\n| `read \u003crem-id\u003e` | Read a note by ID in markdown or structured form |\n| `read-table --title \u003ctitle\u003e \\| --rem-id \u003cid\u003e` | Read Advanced Table rows, columns, and property metadata |\n| `update \u003crem-id\u003e` | Update an existing note with append/replace content operations |\n| `journal [content]` | Append markdown content to today's journal |\n| `status` | Check bridge connection status |\n\n## Global Options\n\n| Flag | Description |\n|------|-------------|\n| `--json` | JSON output (default) |\n| `--text` | Human-readable output |\n| `--control-port \u003cport\u003e` | Override control port (default: 3100) |\n| `--verbose` | Enable verbose stderr logging |\n| `--version` | Show version |\n| `--help` | Show help |\n\n## Configuration\n\n| Setting | Default | Environment |\n|---------|---------|-------------|\n| WebSocket port | 3002 | `--ws-port` flag on `daemon start` |\n| Control port | 3100 | `--control-port` global flag |\n| PID file | `~/.remnote-cli/daemon.pid` | — |\n| Log file | `~/.remnote-cli/daemon.log` | `--log-file` flag on `daemon start` |\n\n## Prerequisites\n\n- Node.js \u003e= 20.19.0\n- RemNote desktop app with the [RemNote Automation Bridge plugin](https://github.com/robert7/remnote-mcp-bridge) installed and enabled\n\n## Troubleshooting\n\n**Daemon won't start — port in use:**\nAnother process is using port 3002 or 3100. Use `--ws-port` or `--control-port` to pick different ports.\n\n**\"Bridge not connected\" after daemon start:**\nOpen RemNote and give the bridge time to connect automatically. If you want to inspect status, open the Automation\nBridge sidebar panel. If RemNote was already open before the daemon started, the bridge should still reconnect in the\nbackground; use **Reconnect** in the panel only if you want an immediate retry.\n\n**Stale PID file:**\nIf the daemon crashed, `daemon start` will detect the stale PID file and clean it up automatically.\n\n**Commands fail after plugin/CLI upgrade:**\nCheck bridge plugin version and `remnote-cli --version`, then install a compatible CLI version (prefer same minor line for `0.x`). See the [Bridge / Consumer Version Compatibility Guide](https://github.com/robert7/remnote-mcp-bridge/blob/main/docs/guides/bridge-consumer-version-compatibility.md).\n\n## Related Projects\n\n- [remnote-mcp-server](https://github.com/robert7/remnote-mcp-server) — MCP server integration path\n- [remnote-mcp-bridge](https://github.com/robert7/remnote-mcp-bridge) — RemNote Automation Bridge plugin\n\n## License\n\nMIT\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frobert7%2Fremnote-cli","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frobert7%2Fremnote-cli","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frobert7%2Fremnote-cli/lists"}