
Devonthink
- 23 installs
- 15 repo stars
- Updated March 30, 2026
- dvcrn/devonthink-cli
Safely executes DEVONthink command-line commands and generates precise commands matching the current command surface, preferring read-only verification and JSON output.
About
This skill lets an agent safely drive the DEVONthink command-line interface, generating exact commands that match the documented command surface and preferring read-only operations and JSON output for verification and integration. A solo builder reaches for it to query and manage a DEVONthink database from the terminal or wire it into other tooling without inventing unsafe command variants.
- Runs DEVONthink CLI commands safely
- Prefers read-only commands for verification
- Emits JSON for tool integration
- Uses only documented, exact commands
Devonthink by the numbers
- 23 all-time installs (skills.sh)
- Ranked #358 of 550 CLI & Terminal skills by installs in the Skillselion catalog
- Data as of Jul 29, 2026 (Skillselion catalog sync)
npx skills add https://github.com/dvcrn/devonthink-cli --skill devonthinkAdd your badge
Show developers this skill is listed on Skillselion. Paste this into your README.
| Installs | 23 |
|---|---|
| repo stars | ★ 15 |
| Last updated | March 30, 2026 |
| Repository | dvcrn/devonthink-cli ↗ |
What it does
Safely executes DEVONthink command-line commands and generates precise commands matching the current command surface, preferring read-only verification and JSON output.
Who is it for?
Driving DEVONthink safely from the CLI
When should I use this skill?
you need to run or generate DEVONthink CLI commands
Files
DEVONthink CLI
Overview
Use this skill to run the DEVONthink CLI safely and produce exact commands for the current command surface.
Prefer read-only commands first when verifying identifiers or database context. Use JSON output when the result will be piped to other tools or parsed by code.
Read references/commands.md for the supported command surface. Read references/examples.md for concrete examples.
Exact Command Surface
Use these exact command names. Do not invent get_* variants unless they are listed here.
tools
schema <tool>
is_running
open_databases
current_database
selected_records
search [query]
lookup_record [lookupType]
list_group_content [uuid]
record_properties [uuid]
record_content [uuid]
record_by_identifier [uuid]
create_record [name]
create_from_url [url]
rename_record [uuid]
move_record [uuid]
delete_record [uuid]
add_tags [uuid]
remove_tags [uuid]
update_record_content [uuid]
set_record_properties [uuid]
classify [recordUuid]
compare [recordUuid]
replicate_record [uuid]
duplicate_record [uuid]
convert_record [uuid]
check_ai_health
ask_ai_about_documents [question]
create_summary_document
ai_tool_documentation [toolName]Runbook
1. Confirm DEVONthink is running with devonthink is_running. 2. Confirm the active or target database with devonthink current_database or devonthink open_databases. 3. Resolve record UUIDs with read-only commands before write operations. 4. Prefer --json for automation and downstream parsing. 5. Before mutating records, verify the target with record_properties, record_by_identifier, search, or lookup_record. 6. Use schema <tool> when you need exact parameter names.
Installation And Agent Setup
Install from npm:
npm install -g devonthinkAfter installation, you can use any equivalent executable:
devonthink --help
dt --help
dt-cli --helpFor Claude Desktop, add dvcrn/devonthink-cli as a marketplace plugin, then install the devonthink plugin from that marketplace.
For Claude Code, the equivalent commands are:
claude plugins marketplace add dvcrn/devonthink-cli
claude plugins install devonthink@dvcrn-devonthink-cli --scope userFor npx skills, run:
npx skills add dvcrn/devonthink-cliOutput Strategy
Use default human-readable output for interactive use. Use --json for automation and downstream parsing.
devonthink search invoice --json
devonthink record_properties <uuid> --jsonPositional Arguments
Many tools support the first obvious required argument positionally.
devonthink search invoice
devonthink record_content <uuid>
devonthink record_properties <uuid>
devonthink rename_record <uuid> --new-name "Renamed note"
devonthink create_record "New Note" --type markdown --content "Hello"
devonthink create_from_url https://example.com --format markdownCommon Tasks
Use these as canonical examples:
# verify DEVONthink is running
devonthink is_running
# list open databases
devonthink open_databases
# inspect the current database
devonthink current_database
# search for records
devonthink search invoice --database-name Test
# get a record by UUID
devonthink record_properties <uuid>
# read record content
devonthink record_content <uuid>
# create a note
devonthink create_record "Meeting Notes" --type markdown --content "# Notes" --database-name Test
# update content
devonthink update_record_content <uuid> --content "Updated body"
# rename a record
devonthink rename_record <uuid> --new-name "Renamed note"
# add tags
devonthink add_tags <uuid> --tags work --tags important
# remove tags
devonthink remove_tags <uuid> --tags old-tagSafety Checks
Before write operations:
1. Confirm the target database with current_database or open_databases. 2. Confirm the target record with record_properties, record_by_identifier, search, or lookup_record. 3. Confirm the destination group before move_record, duplicate_record, replicate_record, or convert_record. 4. Prefer UUIDs over names when mutating records.
Notes
devonthink,dt, anddt-cliare equivalent and map to the same implementation.schema <tool>prints the exact JSON schema for a tool.toolslists the available command surface.
DEVONthink CLI Commands
Discover the live command surface with:
devonthink tools
devonthink schema <tool>Common top-level commands:
tools
schema <tool>
is_running
open_databases
current_database
selected_records
search [query]
lookup_record [lookupType]
list_group_content [uuid]
record_properties [uuid]
record_content [uuid]
record_by_identifier [uuid]
create_record [name]
create_from_url [url]
rename_record [uuid]
move_record [uuid]
delete_record [uuid]
add_tags [uuid]
remove_tags [uuid]
update_record_content [uuid]
set_record_properties [uuid]
classify [recordUuid]
compare [recordUuid]
replicate_record [uuid]
duplicate_record [uuid]
convert_record [uuid]
check_ai_health
ask_ai_about_documents [question]
create_summary_document
ai_tool_documentation [toolName]Global flags:
--json
--help
--versionNotes:
- Many tools support the first obvious required argument positionally.
- For exact parameter names and validation rules, use
devonthink schema <tool>. - Use
--jsonwhen the output will be parsed by another tool or script.
DEVONthink CLI Examples
Basic access check
devonthink is_running
devonthink current_databaseList databases and selected records
devonthink open_databases
devonthink selected_records --jsonSearch using positional arguments
devonthink search invoice
devonthink search invoice --database-name Test --jsonInspect a record
devonthink record_properties <uuid>
devonthink record_content <uuid>Create and update a note
devonthink create_record "Draft Note" --type markdown --content "# Draft"
devonthink update_record_content <uuid> --content "# Final"Organize records
devonthink move_record <uuid> --destination-group-uuid <group-uuid>
devonthink add_tags <uuid> --tags inbox --tags follow-up
devonthink remove_tags <uuid> --tags inboxAI workflows
devonthink check_ai_health
devonthink ask_ai_about_documents "Summarize these notes" --document-uuids <uuid1> --document-uuids <uuid2> --engine Gemini
devonthink create_summary_document --document-uuids <uuid1> --document-uuids <uuid2> --summary-type markdown