paseo-kanban 0.1.3 → 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/OVERVIEW.md +32 -4
- package/README.md +41 -17
- package/README.zh-CN.md +40 -16
- package/client/github-import-modal.tsx +629 -0
- package/client/i18n.tsx +132 -11
- package/client/issue-link.tsx +84 -0
- package/client/kanban-board.tsx +101 -33
- package/client/kanban-card.tsx +253 -67
- package/client/kanban-drag.ts +448 -125
- package/client/kanban-lane.tsx +110 -11
- package/client/kanban-overlay.tsx +66 -7
- package/client/kanban-session.ts +171 -28
- package/client/lane-modal.tsx +29 -6
- package/client/task-modal.tsx +303 -45
- package/index.server.ts +2 -0
- package/package.json +4 -2
- package/paseo-plugin.json +1 -1
- package/server/github.ts +124 -0
- package/shared/github-import.ts +32 -0
- package/shared/kanban.ts +321 -61
package/OVERVIEW.md
CHANGED
|
@@ -1,9 +1,37 @@
|
|
|
1
1
|
# Kanban
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
A lightweight, responsive Kanban board plugin for Paseo workspaces.
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
## Features
|
|
6
6
|
|
|
7
|
-
|
|
7
|
+
- **GitHub issue import**: Import up to 25 open issues from the project’s GitHub.com origin into a chosen lane. Tasks remain independent and link back to their source. Requires Git and an authenticated `gh` on the daemon machine.
|
|
8
|
+
- **Flexible swimlanes**: Add, delete, and rename lanes.
|
|
9
|
+
- **Rich task cards**: Edit task titles and multi-line descriptions, manage subtask checklists, and link tasks to Paseo projects.
|
|
10
|
+
- **Task completion**: Check a card or drag it into the completion lane to finish; uncheck or drag out to restore.
|
|
11
|
+
- **Workspace tabs and splits**: Open the board beside an agent or terminal with Paseo's native split controls, initially filtered to the workspace's project, or use the sidebar entry.
|
|
12
|
+
- **Smooth drag and drop**: Support intra-lane reordering and cross-lane movement.
|
|
8
13
|
|
|
9
|
-
|
|
14
|
+
## Storage and requirements
|
|
15
|
+
|
|
16
|
+
- **Data and privacy**: Board data is stored locally in host-scoped plugin settings with revision checks for concurrent edits. Core board use requires no external service; optional GitHub import reads GitHub using the daemon machine’s existing `gh` authentication and copies selected issue content into local settings.
|
|
17
|
+
- **Host requirement**: Paseo 0.11.4 or later.
|
|
18
|
+
|
|
19
|
+
---
|
|
20
|
+
|
|
21
|
+
# 看板 (Kanban)
|
|
22
|
+
|
|
23
|
+
专为 Paseo 工作区打造的轻量响应式看板插件。
|
|
24
|
+
|
|
25
|
+
## 核心功能
|
|
26
|
+
|
|
27
|
+
- **GitHub Issue 导入**:从项目的 GitHub.com origin 选择 Open Issues,每次最多导入 25 项到指定泳道;任务独立管理并保留外链。需要在 daemon 所在机器安装 Git 并登录 `gh`。
|
|
28
|
+
- **灵活的泳道管理**:支持泳道增删与改名。
|
|
29
|
+
- **丰富的任务卡片**:支持任务标题与多行描述编辑、子步骤清单管理,以及关联 Paseo 项目。
|
|
30
|
+
- **任务完成与恢复**:通过卡片勾选或拖入完成泳道标记完成;取消勾选或拖出即可恢复。
|
|
31
|
+
- **工作区标签页与分屏**:支持通过 Paseo 原生分屏控件与 Agent、Terminal 并排打开,默认筛选工作区所属项目,或使用侧边栏入口。
|
|
32
|
+
- **流畅拖拽交互**:支持同泳道排序与跨泳道状态流转。
|
|
33
|
+
|
|
34
|
+
## 存储与要求
|
|
35
|
+
|
|
36
|
+
- **数据与隐私**:看板数据保存在宿主本地插件设置中,具备版本并发冲突保护(CAS)。看板基础功能无需外部服务;可选的 GitHub 导入使用 daemon 所在机器的 `gh` 登录态读取 GitHub,并将选中的 Issue 内容复制到本地设置。
|
|
37
|
+
- **宿主要求**:Paseo 0.11.4 或更高版本。
|
package/README.md
CHANGED
|
@@ -2,27 +2,53 @@
|
|
|
2
2
|
|
|
3
3
|
[简体中文](./README.zh-CN.md)
|
|
4
4
|
|
|
5
|
-
A lightweight, responsive Kanban board plugin for [Paseo](https://paseo.sh) workspaces.
|
|
5
|
+
A lightweight, responsive Kanban board plugin for [Paseo](https://paseo.sh) workspaces.
|
|
6
|
+
|
|
7
|
+

|
|
8
|
+
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
## Highlights
|
|
12
|
+
|
|
13
|
+
- **Swimlane Management**: Freely add, rename, and delete custom swimlanes to organize tasks according to your team's workflow stages.
|
|
14
|
+
- **Drag-and-Drop Interaction**: Fluid intra-lane reordering and cross-lane movement with animated drop-slot displacement, viewport edge auto-scrolling, and smooth drop-in feedback.
|
|
15
|
+
- **GitHub Issue Import**: One-way import of open issues from the project repository's GitHub origin into a chosen lane, featuring pagination, repository-wide creation-time sorting, automatic deduplication, and source links.
|
|
6
16
|
|
|
7
17
|
---
|
|
8
18
|
|
|
9
|
-
## Features
|
|
19
|
+
## Other Features
|
|
10
20
|
|
|
11
|
-
- **Flexible Swimlanes**: Three initial lanes that you can rename, with support for adding and deleting custom lanes.
|
|
12
21
|
- **Rich Task Cards**:
|
|
13
|
-
- Task title and multi-line description.
|
|
14
|
-
-
|
|
15
|
-
-
|
|
16
|
-
- **
|
|
17
|
-
- **
|
|
18
|
-
- **
|
|
19
|
-
- **
|
|
22
|
+
- Task title and multi-line description editing (with resizable description area).
|
|
23
|
+
- Subtask checklists with live completion progress tracking.
|
|
24
|
+
- Link tasks to projects created in Paseo.
|
|
25
|
+
- **Task Completion & Restoration**: Check a card or drag it into the completion lane to finish; uncheck or drag out to restore cards to their original ordinary swimlane.
|
|
26
|
+
- **Workspace Tabs and Splits**: Open the board beside an agent or terminal with Paseo's native split controls, initially filtered to the workspace's project, or use the sidebar entry.
|
|
27
|
+
- **Independent Project Filtering**: Filter cards by specific Paseo projects or view unassigned tasks without isolating the shared underlying board data.
|
|
28
|
+
- **Host Storage & Concurrency Protection**: Board data is safely stored in host-scoped plugin settings with optimistic revision checks (CAS) to prevent silent overwrites and preserve form drafts.
|
|
29
|
+
|
|
30
|
+
---
|
|
31
|
+
|
|
32
|
+
## Screenshots
|
|
33
|
+
|
|
34
|
+
### Board Overview
|
|
35
|
+
|
|
36
|
+

|
|
37
|
+
|
|
38
|
+
### Task Details & Subtasks Checklist
|
|
39
|
+
|
|
40
|
+

|
|
41
|
+
|
|
42
|
+
### Workspace Tabs & Split Controls
|
|
43
|
+
|
|
44
|
+

|
|
20
45
|
|
|
21
46
|
---
|
|
22
47
|
|
|
23
48
|
## Requirements
|
|
24
49
|
|
|
25
|
-
- **Paseo host**: `>= 0.
|
|
50
|
+
- **Paseo host**: `>= 0.11.4` (declared in `paseo-plugin.json`). The host runs the plugin.
|
|
51
|
+
- **GitHub import (optional)**: Install Git and GitHub CLI (`gh`) on the daemon machine, sign in with `gh auth login`, and configure the project repository’s `origin` on GitHub.com. Both public and authorized private repositories are supported.
|
|
26
52
|
- **Development and CI**: Node.js 24 (pinned in `.nvmrc` and `.node-version`) for checks, TypeScript stripping, and native tests.
|
|
27
53
|
|
|
28
54
|
---
|
|
@@ -57,12 +83,10 @@ Verify that the plugin is running:
|
|
|
57
83
|
paseo plugin ls
|
|
58
84
|
```
|
|
59
85
|
|
|
60
|
-
|
|
86
|
+
Open the board from either entry:
|
|
61
87
|
|
|
62
88
|
- **Sidebar → Kanban**: shows all tasks by default.
|
|
63
|
-
- **Workspace → `+` → Kanban**: initially filters to the workspace's project, with other filters available
|
|
64
|
-
|
|
65
|
-
Both entries share tasks and lanes with full editing support; their filters are independent. Closing and reopening the board or restarting restores the entry's default filter. If workspace project context is unavailable, the board silently shows all tasks and keeps that filter even if context arrives later. Narrow splits retain horizontal lane scrolling.
|
|
89
|
+
- **Workspace → `+` → Kanban**: initially filters to the workspace's project, with other filters available; use Paseo's native split controls to place it beside an agent or terminal.
|
|
66
90
|
|
|
67
91
|
### Local Development
|
|
68
92
|
|
|
@@ -95,13 +119,13 @@ Individual commands (`npm test`, `npm run typecheck`, `npm run lint`, `npm run f
|
|
|
95
119
|
|
|
96
120
|
## Releases
|
|
97
121
|
|
|
98
|
-
See the [
|
|
122
|
+
See the [CHANGELOG](./CHANGELOG.md). Each release's npm package and GitHub Release share the same version tag; GitHub includes the verified npm tarball. `main` may contain changes beyond the latest release.
|
|
99
123
|
|
|
100
124
|
---
|
|
101
125
|
|
|
102
126
|
## Architecture & Design
|
|
103
127
|
|
|
104
|
-
Core terminology and design decisions are documented in [`
|
|
128
|
+
Core terminology and design decisions are documented in [`GLOSSARY.md`](./GLOSSARY.md) and [`docs/adr/`](./docs/adr/).
|
|
105
129
|
|
|
106
130
|
---
|
|
107
131
|
|
package/README.zh-CN.md
CHANGED
|
@@ -2,27 +2,53 @@
|
|
|
2
2
|
|
|
3
3
|
[English](./README.md)
|
|
4
4
|
|
|
5
|
-
专为 [Paseo](https://paseo.sh)
|
|
5
|
+
专为 [Paseo](https://paseo.sh) 工作区打造的轻量响应式看板插件。
|
|
6
|
+
|
|
7
|
+

|
|
8
|
+
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
## 亮点特性
|
|
12
|
+
|
|
13
|
+
- **泳道管理**:自由新增、重命名与删除自定义泳道,按团队工作流灵活组织任务流转阶段。
|
|
14
|
+
- **拖拽交互**:流畅的同泳道排序与跨泳道状态流转,支持动态占位槽避让、视口边缘自动滚动与平滑落位动画。
|
|
15
|
+
- **GitHub Issue 导入**:从项目关联的 GitHub 仓库单向导入 Open Issues 到指定泳道,具备分页、全仓库创建时间排序、自动去重及来源外链直达能力。
|
|
6
16
|
|
|
7
17
|
---
|
|
8
18
|
|
|
9
|
-
##
|
|
19
|
+
## 其他特性
|
|
10
20
|
|
|
11
|
-
- **灵活的泳道管理**:开箱即用三列基础泳道(`待规划`、`执行中`、`已完成`),支持自由添加、重命名与删除自定义泳道。
|
|
12
21
|
- **丰富的任务卡片**:
|
|
13
|
-
-
|
|
14
|
-
-
|
|
15
|
-
-
|
|
16
|
-
-
|
|
17
|
-
-
|
|
18
|
-
-
|
|
19
|
-
-
|
|
22
|
+
- 任务标题与多行描述编辑(支持多行描述框拖拽调节高度)。
|
|
23
|
+
- 子步骤清单与完成进度实时统计。
|
|
24
|
+
- 支持将任务关联至 Paseo 中创建的项目。
|
|
25
|
+
- **任务完成与恢复**:卡片左侧勾选复选框或拖入专用完成泳道即可标记完成;取消勾选或拖出即可无损恢复至原普通泳道。
|
|
26
|
+
- **工作区标签页与分屏**:支持通过 Paseo 原生分屏控件与 Agent、终端任意并排打开,默认自动筛选当前工作区项目,亦可通过侧边栏独立打开。
|
|
27
|
+
- **独立项目筛选**:支持按关联项目快速筛选或查看未关联任务,各打开窗口筛选独立且共享整板底层数据。
|
|
28
|
+
- **宿主持久化与并发保护**:看板数据安全保存在宿主设置中,具备版本并发冲突保护(CAS),表单草稿与错误状态受保护不被静默覆盖。
|
|
29
|
+
|
|
30
|
+
---
|
|
31
|
+
|
|
32
|
+
## 界面预览
|
|
33
|
+
|
|
34
|
+
### 看板全景
|
|
35
|
+
|
|
36
|
+

|
|
37
|
+
|
|
38
|
+
### 任务详情与子步骤
|
|
39
|
+
|
|
40
|
+

|
|
41
|
+
|
|
42
|
+
### 工作区标签页与分屏
|
|
43
|
+
|
|
44
|
+

|
|
20
45
|
|
|
21
46
|
---
|
|
22
47
|
|
|
23
48
|
## 环境要求
|
|
24
49
|
|
|
25
|
-
- **Paseo 宿主**:`>= 0.
|
|
50
|
+
- **Paseo 宿主**:`>= 0.11.4`(声明于 `paseo-plugin.json`),由 Paseo 运行插件。
|
|
51
|
+
- **GitHub 导入(可选)**:在 daemon 所在机器安装 Git 与 GitHub CLI(`gh`),执行 `gh auth login`,并将项目仓库的 `origin` 配置为 GitHub.com 仓库;支持公开及有权访问的私有仓库。
|
|
26
52
|
- **开发与 CI**:使用 Node.js 24(声明于 `.nvmrc` 与 `.node-version`)执行质量检查、TypeScript 类型擦除和原生测试。
|
|
27
53
|
|
|
28
54
|
---
|
|
@@ -57,13 +83,11 @@ paseo plugin add breathi3552/paseo-kanban --ref main
|
|
|
57
83
|
paseo plugin ls
|
|
58
84
|
```
|
|
59
85
|
|
|
60
|
-
|
|
86
|
+
可从两个入口打开看板:
|
|
61
87
|
|
|
62
88
|
- **侧边栏 → 看板**:默认展示全部任务。
|
|
63
89
|
- **工作区 → `+` → 看板**:默认筛选工作区所属项目,可切换范围;使用 Paseo 原生分屏操作与 Agent、Terminal 等并排显示。
|
|
64
90
|
|
|
65
|
-
两个入口共享任务和泳道,保留完整编辑能力,筛选互不影响。关闭重开或重启后恢复入口默认筛选。无法取得工作区所属项目时静默展示全部任务,本次打开期间不因项目上下文恢复而自动切换。窄分屏保持横向滚动浏览泳道。
|
|
66
|
-
|
|
67
91
|
### 本地开发与调试
|
|
68
92
|
|
|
69
93
|
如需进行本地源码调试或二次开发:
|
|
@@ -95,13 +119,13 @@ npm run check
|
|
|
95
119
|
|
|
96
120
|
## 版本发布
|
|
97
121
|
|
|
98
|
-
参见 [
|
|
122
|
+
参见 [更新日志 (CHANGELOG)](./CHANGELOG.md)。每版 npm 包与 GitHub Release 对应同一个版本 tag,GitHub 附带经过验证的 npm tarball。`main` 可能包含最新发布版之后的改动。
|
|
99
123
|
|
|
100
124
|
---
|
|
101
125
|
|
|
102
126
|
## 架构设计
|
|
103
127
|
|
|
104
|
-
核心术语和架构决策见 [`
|
|
128
|
+
核心术语和架构决策见 [`GLOSSARY.md`](./GLOSSARY.md) 与 [`docs/adr/`](./docs/adr/)。
|
|
105
129
|
|
|
106
130
|
---
|
|
107
131
|
|