Boring CLI
CLI tool for managing bug tasks from the command line, supporting both Lark Suite and Kanban (Outline) backends.
Installation
pip install boring-cli
Quick Start Guide
Step 1: Run Setup
boring setup
Supported Backends: Lark & Kanban
| Backend | Description | Setup Steps |
|---|---|---|
| Lark | Lark Suite task management | Lark Setup |
| Kanban | Outline Kanban board integration | Kanban Setup |
Lark Suite Setup
Step 2: Configure Settings (Lark)
You'll be prompted for the following settings:
Server URL [https://boring.omelet.tech/api]: (press Enter to use default)
Bugs output directory [/tmp/bugs]: /path/to/your/project/bugs
Backend type (lark, kanban) []: lark
Tasklist GUID (from Lark) []: 9a31701d-fd0e-4417-b00d-e040afe2b234
In-progress Section GUID []: e2c8e412-fbae-41ea-9daa-c2b58efc1b87
Solved Section GUID []: 76a74fd6-79d8-4f74-a358-e78c688ee5ef
Default GUIDs for Bugs list:
| Setting | GUID |
|---|---|
| Tasklist GUID | 9a31701d-fd0e-4417-b00d-e040afe2b234 |
| In-progress Section (Inprogress - Bình) | e2c8e412-fbae-41ea-9daa-c2b58efc1b87 |
| Solved Section | 76a74fd6-79d8-4f74-a358-e78c688ee5ef |
Step 3: Login with Lark
- A browser window will open for Lark login
- Login with your Lark account
- After login, you'll see a JSON response like:
{"user":{...},"token":{"access_token":"eyJhbGciOiJ...",...}}
- Copy the
access_tokenvalue (the long string starting witheyJ...) - Paste it in the terminal when prompted
Paste your access_token here: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...
Login successful! Setup complete!
## Kanban Setup
### Step 2: Configure Settings (Kanban)
You'll be prompted for the following settings:
Server URL [https://boring.omelet.tech/api]: (press Enter to use default) Bugs output directory [/tmp/bugs]: /path/to/your/project/bugs Backend type (lark, kanban) []: kanban Kanban API Base URL [https://local.outline.dev:3000]: https://local.outline.dev:3000 Kanban API Key [*****]: Fetching available boards...
Available Boards:
- Kanban (b55c24c4-cbad-422a-b42e-56a9692a2e10)
Kanban Board ID [b55c24c4-cbad-422a-b42e-56a9692a2e10]: Fetching board details...
Available Lists (Columns):
- In Progress (c5286835-b3c9-4a99-9a17-66217a7d0ef9)
- To Do (c85e17e1-3190-4f5c-b2c0-bbe3a862f575)
- Done (f03c2aef-c3b3-4789-8b32-b4180cc6d927)
In-progress List ID [c5286835-b3c9-4a99-9a17-66217a7d0ef9]: Tasklist GUID (from Lark) []: 9a31701d-fd0e-4417-b00d-e040afe2b234 Solved/Done List ID [f03c2aef-c3b3-4789-8b32-b4180cc6d927]:
Kanban configuration updated!
**Default GUIDs for Bugs list:**
| Setting | GUID |
|---------|------|
| Tasklist GUID | `9a31701d-fd0e-4417-b00d-e040afe2b234` |
| In-progress Section (Inprogress - Bình) | `e2c8e412-fbae-41ea-9daa-c2b58efc1b87` |
| Solved Section | `76a74fd6-79d8-4f74-a358-e78c688ee5ef` |
### Step 3: Login with Lark (for Kanban)
If your Kanban board is linked to Lark authentication, follow the same login process:
1. A browser window will open for Lark login
2. Login with your Lark account
3. After login, you'll see a JSON response like:
```json
{"user":{...},"token":{"access_token":"eyJhbGciOiJ...",...}}
- Copy the
access_tokenvalue (the long string starting witheyJ...) - Paste it in the terminal when prompted
Paste your access_token here: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...
Login successful!
Setup complete!
Step 4: Download Bug Tasks
Download all tasks from your configured section:
boring download
Download to a specific directory:
boring download --dir /path/to/your/project/bugs
Download from a specific section:
boring download --section e2c8e412-fbae-41ea-9daa-c2b58efc1b87
Step 5: View Sections (Optional)
List all tasklists and sections to find GUIDs:
boring sections
Commands Reference
| Command | Description |
|---|---|
boring setup |
Configure CLI and login to Lark |
boring download |
Download tasks to local folder |
boring download --section GUID |
Download from specific section |
boring download --dir PATH |
Download to specific directory |
boring download --labels "Critical,High" |
Filter by labels |
boring sections |
List all tasklists and sections |
boring solve |
Move tasks to Solved section |
boring solve --keep |
Solve but keep local folders |
boring status |
Show current configuration |
boring --version |
Show version |
boring --help |
Show help |
Configuration File
Configuration is stored in ~/.boring-agents/config.yaml:
server_url: https://boring.omelet.tech/api
jwt_token: eyJhbGc...
bugs_dir: /path/to/your/project/bugs
tasklist_guid: 9a31701d-fd0e-4417-b00d-e040afe2b234
section_guid: e2c8e412-fbae-41ea-9daa-c2b58efc1b87
solved_section_guid: 76a74fd6-79d8-4f74-a358-e78c688ee5ef
Troubleshooting
Token Expired
If you see authentication errors, run boring setup again to get a new token.
Find Section GUIDs
Run boring sections to list all available tasklists and their sections with GUIDs.
Requirements
- Python 3.9+
License
MIT
Metadata
Release files for boring-cli 0.1.14
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| boring_cli-0.1.14.tar.gz | 21.7 kB | Without provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| boring_cli-0.1.14-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 51.9 kB
Release files / boring_cli-0.1.14.tar.gz
| Download URL | boring_cli-0.1.14.tar.gz |
|---|---|
| Size | 21.7 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
b7dfc78feb4f646bc809acc2710bbd60b822ff352a7ddb586f0d8d2b739c67bb
|
|
BLAKE2b-256 checksum How to use checksums |
39545db694f57765624bc2644e55db4d708359953f46051c2db0383656f61d15
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
Release files / boring_cli-0.1.14-py3-none-any.whl
| Download URL | boring_cli-0.1.14-py3-none-any.whl |
|---|---|
| Size | 30.2 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
667c8606b23c141a00202742819b68d0ed13b7822ef722303195fe447c28842c
|
|
BLAKE2b-256 checksum How to use checksums |
694ace787af8df4782c8ed18933e52671b5a6b2e85b3e721a6ebebf672ab899a
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
Security for boring-cli 0.1.14
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.