Skip to main content

CLI tool for managing Lark Suite tasks

Project description

Boring CLI

PyPI version Python 3.9+ License: MIT

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

  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:
{"user":{...},"token":{"access_token":"eyJhbGciOiJ...",...}}
  1. Copy the access_token value (the long string starting with eyJ...)
  2. 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...",...}}
  1. Copy the access_token value (the long string starting with eyJ...)
  2. 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

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

boring_cli-0.1.12.tar.gz (21.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

boring_cli-0.1.12-py3-none-any.whl (29.2 kB view details)

Uploaded Python 3

File details

Details for the file boring_cli-0.1.12.tar.gz.

File metadata

  • Download URL: boring_cli-0.1.12.tar.gz
  • Upload date:
  • Size: 21.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for boring_cli-0.1.12.tar.gz
Algorithm Hash digest
SHA256 bc3274ebfdbc92f1e2a2b3f174e4360d36b9bd1cf0d07e05f00eca3c0b266d14
MD5 345ac1cf869260ca465ce77046b28b09
BLAKE2b-256 41e415ec9d3072edc346a4d2aee158ad4cc68e238d9eca66426ad751b2acb1be

See more details on using hashes here.

File details

Details for the file boring_cli-0.1.12-py3-none-any.whl.

File metadata

  • Download URL: boring_cli-0.1.12-py3-none-any.whl
  • Upload date:
  • Size: 29.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for boring_cli-0.1.12-py3-none-any.whl
Algorithm Hash digest
SHA256 28812a97f6763c5a823eadaac05f1562431ef3e49cf7773984a835061c30e29c
MD5 ccc5f6437087e48ef58ebed3d370abf9
BLAKE2b-256 d676976585b4e96bd48f6a617ae63187de63d5ea38f87498f38a8540c6fe9c8e

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page