cli-anything-joplin
Command-line interface for Joplin workflows using the real joplin terminal backend
How do I install this agent skill?
npx skills add https://github.com/hkuds/cli-anything --skill cli-anything-joplinIs this agent skill safe to install?
- Gen Agent Trust Hubpass
The skill 'cli-anything-joplin' is a command-line interface harness for the Joplin note-taking application. It allows for the automation of notebook, note, and synchronization workflows by wrapping the 'joplin' terminal binary. The behavior is consistent with its stated purpose of managing note-taking data.
- Socketpass
No alerts
- Snykpass
Risk: LOW · No issues
What does this agent skill do?
cli-anything-joplin
Use this skill to automate Joplin notebook, note, to-do, tag, attachment,
search, sync, and import/export workflows through a stateful harness backed by
the real joplin terminal binary.
Requirements
- Python 3.10+
- Joplin terminal binary available as
joplin - Optional: pass
--profileto target a specific Joplin profile
Install
cd joplin/agent-harness
pip install -e .
Usage
# REPL mode (default)
cli-anything-joplin
# Machine-readable one-shot command
cli-anything-joplin --json notebooks list
# Stateful project
cli-anything-joplin project new --name demo -o ./demo.joplin-harness.json
cli-anything-joplin --project ./demo.joplin-harness.json notes create "Meeting note"
# Dry-run (no auto-save)
cli-anything-joplin --json --dry-run --project ./demo.joplin-harness.json notes create temp
JSON output contract
When --json is enabled, commands return:
ok: booleancommand: stable command identifier such asnotes.list,todos.toggledata: command payloaderror: null on success, or{ type, message }on failure
Command groups
project:new,open,save,info,json,statusnotebooks:list,create,use,removenotes:list,create,set,get,remove,copy,move,renametodos:list,create,toggle,clear,done,undonetags:list,add,remove,notetags,tagnotessearch:runsync:run(--target,--upgrade,--use-lock)interop:import,exportconfig:get,set,list,export,import-fileattach:addstatus:show,restorebackend:version,dump,keymap,geoloc,export-sync-statusserver:status,start,stope2ee:status,target-status,decrypt,decrypt-filesession:status,undo,redo,history
Agent guidance
- Prefer
--jsonfor parseable output. - Use
--projectwhen running multi-step workflows so history is persisted. - One-shot mutating commands auto-save the project unless
--dry-runis set. - REPL mode does not auto-save; run
project saveexplicitly. - Some Joplin CLI builds gate
searchbehind GUI mode; if you see"only available in GUI mode", treat search as best-effort. - Joplin 3.6.x can have a broken
versioncommand in npm global layouts; the harness falls back to installed package metadata forbackend version, probing the symlink-resolved binary directory, the Windows-style siblingnode_modules/joplin, the Unix-style parentlib/node_modules/joplin, and finallynpm root -g. - Backend
stdout/stderrin command results are verbatim; do not assume warnings were stripped from note bodies or exports. - On failure, parse
errorusing the samecommandfield as success (config.import_file,e2ee.decrypt_file). Multi-word subcommands use a single dot between group and subcommand.
Test workflow
# Quick feedback loop
python -m pytest -q cli_anything/joplin/tests/test_core.py
python -m pytest -q cli_anything/joplin/tests/test_full_e2e.py::TestCLISubprocess
# Real backend (joplin must be in PATH)
python -m pytest -v cli_anything/joplin/tests/test_full_e2e.py::TestBackendCommands
python -m pytest -v cli_anything/joplin/tests/test_full_e2e.py::TestBackendWorkflows
python -m pytest -v cli_anything/joplin/tests/test_full_e2e.py::TestBackendIntegration
# Full suite
python -m pytest -v --tb=no cli_anything/joplin/tests
# Verify the installed console script entry point
CLI_ANYTHING_FORCE_INSTALLED=1 python -m pytest -v -s cli_anything/joplin/tests/test_full_e2e.py
Current validation baseline (Windows + Joplin CLI 3.6.2):
python -m pytest -q cli_anything/joplin/tests/test_core.py->107 passedpython -m pytest -q cli_anything/joplin/tests->134 passed, 1 skipped
How can the creator link this skill?
Add the canonical catalog link to the repository README so users can inspect current installs and available audits. The publishing guide covers the complete discovery path.
<a href="https://skillzs.dev/skills/hkuds/cli-anything/cli-anything-joplin">View cli-anything-joplin on skillZs</a>