Wekan CLI
Wekan CLI is an agent-first, human-friendly command-line client for Wekan. It provides deterministic commands, stable JSON output, explicit errors, native credential storage, and confirmation gates for destructive operations.
Version 0.13.0 targets Wekan v11.06 exactly. Other Wekan versions are not currently supported or tested.
Install
Rust 1.88 or newer can build the published crate:
cargo install wekan-cli --locked
GitHub Releases also provides checksummed archives for Windows x64, macOS Intel
and Apple Silicon, and Linux x64 and ARM64. The release installers select the
right archive and install wekan into Cargo's bin directory.
macOS and Linux:
curl --proto '=https' --tlsv1.2 -LsSf https://github.com/AhmedLukman/wekan-cli/releases/latest/download/wekan-cli-installer.sh | sh
Windows PowerShell:
powershell -ExecutionPolicy Bypass -c "irm https://github.com/AhmedLukman/wekan-cli/releases/latest/download/wekan-cli-installer.ps1 | iex"
The GitHub binaries are not signed with paid Apple or Windows publisher certificates, so Gatekeeper or SmartScreen may show an unknown-developer warning. Release assets include SHA-256 checksums and GitHub build provenance. With the GitHub CLI installed, an asset can be verified with:
gh attestation verify PATH-TO-ASSET -R AhmedLukman/wekan-cli
Quick start
Login can initialize the default profile after Wekan accepts the credentials:
wekan --server https://wekan.example/ auth login --username alice
wekan auth status
wekan board list
Use JSON output for scripts and agents:
wekan --output json board list
Scoped commands name their parent IDs explicitly:
wekan card get CARD_ID --board BOARD_ID --list LIST_ID
wekan comment list --board BOARD_ID --card CARD_ID
Passwords and optional two-factor codes are read without echo. Automation can
use --password-stdin and --code-stdin; secrets are deliberately unsupported
as command-line values or environment variables. Login tokens are stored in
the operating system's native credential vault.
For a local or explicitly managed profile:
wekan profile add local http://localhost:3000 --use
wekan --profile local auth login --username alice
Command coverage
The CLI includes profile and authentication management plus typed commands for
users, boards, lists, swimlanes, cards, comments, checklists, checklist items,
custom-field definitions, dropdown items, attachments, card dependencies, and
board integrations. It implements 106 of the 143 operations in the corrected Wekan v11.06 contract,
including dedicated card archive/restore, custom-field assignment, custom-field
lookup, all 12 attachment operations, all five dependency operations, and all
seven board/card membership mutations, all seven integration operations,
bulk card creation/deletion/label changes,
and board label addition. Native board/card/list/swimlane copies, list/swimlane
moves, board/list card counts, swimlane card listings, and card lookup by ID
alone are also available; see copy and move and
card reads. Nested board member, card member,
and card assignee commands support focused lists and individual changes;
board members also support named roles and individual permission flags.
integration commands manage board webhooks and their activity subscriptions,
including token input through stdin and explicit unconfirmed mutation output;
see integrations.
board card-settings get/update exposes card display controls and aging thresholds;
board domain list/add/remove exposes native sharing endpoints. Domain listing
requires a site administrator; valid sharing writes preserve Wekan v11.06's
not-authorized failure. See board settings and sharing.
Dependency commands support board
and card listings, create-or-update, nullable metadata updates, and confirmed
removal with explicit acknowledgment output. Attachment transfers support files
and stdin/stdout; pinned Wekan
upload/copy/move failures and ignored list selectors remain explicitly documented.
Operations without a dedicated command remain available through the same-origin
wekan api request escape hatch.
Run wekan --help or wekan <COMMAND> --help for the complete command syntax.
Detailed behavior is documented in:
- Profiles and configuration
- Authentication
- Checklists and checklist items
- Custom fields and dropdown items
- Attachments and file transfers
- Card dependencies
- Board integrations and webhook subscriptions
- Bulk cards and labels
- Board and card memberships
- Raw API requests
- Agent output and error contract
- API-to-CLI coverage
- Local Wekan development stack
Development and security
See CONTRIBUTING.md for development checks and API contract rules. Report vulnerabilities privately as described in SECURITY.md.
Wekan CLI is licensed under the Apache License 2.0.