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.11.tar.gz (20.3 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.11-py3-none-any.whl (28.4 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: boring_cli-0.1.11.tar.gz
  • Upload date:
  • Size: 20.3 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.11.tar.gz
Algorithm Hash digest
SHA256 baff6155517af3117f60d3e9849789b46fc1d128270dcf2055fcdadef982e538
MD5 b47991ddf136b062388cdbbe5e998e8e
BLAKE2b-256 c66ca3e7a160bcfcc9dcffbb22aff3ac81fb596433dad179d239edcb3568c54f

See more details on using hashes here.

File details

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

File metadata

  • Download URL: boring_cli-0.1.11-py3-none-any.whl
  • Upload date:
  • Size: 28.4 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.11-py3-none-any.whl
Algorithm Hash digest
SHA256 88c4501fb4cfbd14fbcf09b1045f5af775151137008ae105a89c7a2b0906bf7e
MD5 bd9dd983eb54f3d55901b7511070fb1f
BLAKE2b-256 9e4169ed5a1b0b59018935aaaef4c77b02abf950154d58c37ce5bde36a7f8aba

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