Post

Plane.so|免费开源 Self-Hosted 专案管理工具|类 Asana/Jira 功能完整解析

针对寻找开源且支援自架的专案管理工具,用 Plane.so 解决 Asana/Jira 高成本与内控限制问题,透过实务操作与 Scrum 流程范例,大幅提升跨团队协作与任务透明度,打造高效专案管理环境。

Plane.so|免费开源 Self-Hosted 专案管理工具|类 Asana/Jira 功能完整解析

Click here to view the English version of this article.

點擊這裡查看本文章正體中文版本。

基于 SEO 考量,本文标题与描述经 AI 调整,原始版本请参考内文。


Plane.so 免费开源且支援 Self-Hosted 的类 Asana/Jira 专案管理工具

Plane.so 专案管理工具使用介绍与搭配 Scurm 流程的使用

️⚠️️️️⚠️️️️⚠️️️️2025 Update️ ⚠️️️️⚠️️️️⚠️️️️

已不推荐使用 Plane.so,原因是 Plane.so 初期依靠开源专案与支援自架崛起,但在后续的版本终将许多功能都放入付费计划中,即使是自架也需要购买凭证才能开通功能,就算是自架也会有使用者人数限制,已不符合当初的想像;另外就是收费计划非常混乱,有终身、Pro、Business…难保就算花钱购买,会不会又推出新的方案,新功能又只在新方案之中。

背景

Asana

在前司 Pinkoi 时第一次体会到 Asana 专案管理工具的强大,不管是内部专案管理或是跨团队之间的协作,Asana 都能在其中担任解耦人与人、人与事之间依赖的角色,提升协作效率。

在前司从产品团队到经营、商业团队 (如:HRBP, Finance, Marketing, BD…) 所有团队都会有一个团队公开的 Project 作为跨团队间的单一协作入口,当其他团队需要协助时,可以直接开一张 Task (也可以从 Template Task) 到该 Project (通常都会有一个 Need Help! Section),团队内部收到 Task 后会接手进行安排。

与经营团队的跨团队协作,如采购、招募流程,可以直接开 Task 并透过他追踪进度;与商业团队的协作如行销活动规划、需要工程协助修改的任务…等等。

如果没有 Asana 或类似的专案管理工具:

  • 任何事物我们都需要与对方团队进行直接沟通,P0 事务直接沟通是最有效的,但日常上应该有 90% 都不会是 P0 事务,不管大小事都直接人对人沟通很没有效率且会 打断对方工作心流

  • 任务执行不透明,只有对谈双方知道状况进度,如果是多方任务就只能靠沟通反复确认进度;另外,主管也难掌握大家手上任务进行合理安排

  • 任务的安排,日常上我们会收到很多 Task,优先度有高有低、方向也很多面,有工具在才能搜集、归类同类型的问题,日后一起挑出来解决;日常工作安排也较容易挑出重要的任务

  • 任务的交接,有工具纪录任务细节、执行状况,若遇到需要其他人协助时,可以快速从 Task 上的内容接手任务

回到专案管理上,Asana 提供弹性、多维度、自动化的专案管理工具,可以依照需求自行组合使用。

Asana 的使用方式有很多,以下仅举几个使用案例,建议先确定需求再找相关 Asana 范例套用使用。

Asana 台湾代理商亦有提供完整的教育训练,有兴趣可以与他们联络。

(本篇无业配)

范例1

团队专案 Project

团队专案 Project

  • To Do: 这周、下周将要开始的任务

  • In Progress: 正在执行的项目

  • Review: 已完成,等待 Sprint Review

  • Backlog: 任务池子,每周从中挑出 Task 安排执行

团队 Scrum Project

团队 Scrum Project

除了团队主 Project 外会再开一个 Scrum Project 安排(Asana Task 可同时加入多个 Project)、回顾每个 Sprint 任务执行内容。

范例2

范例二是使用 Section 作为 Sprint 区分,每周会建立一个 Section 将任务拖入,另外透过 Label 标记其他状态。

回到现实

如同前述,以上是前司 Pinkoi 有 Asana 专案管理工具的场景;这几个月回到没有专案管理工具的环境,可以说是更感觉到工具对工作效率的重要性。

目前环境没有较现代的专案管理工具,基于采购(需控制支出)、内控问题(纯内网)与个资稽核限制(必须地端),因此无法直接导入使用 Asana。

基于以上环境限制,只能先朝开源且支援 Self-Hosted 的专案管理工具著手,找到的解决方案不外乎就是:Redmine, OpenProject, Taiga…尝试了几套效果都不如预期,功能缺少、UI/UX 不友善;直到无意间找到一套 2023/01 才新推出的 Plane.so 专案管理工具。

顺便推荐一下这个网站,收录很多可以支援 Self-Hosted 的服务:

awesome-selfhosted A list of Free Software network services and web applications which can be hosted on your own servers awesome-selfhosted.net

说这么多,以下正文开始。

目录

本文分为:

  • Plane.so 介绍

  • Plane.so 操作教学

  • Plane.so x Scrum 工作流程范例

  • 附录

可依照需求查看,Docker Self-Hosted 自架教学请参考下篇「 Plane.so Docker Self-Hosted 自架纪录 」。

Plan.so 介绍

简介

Plane - The open source project management tool Open-source project management tool to manage issues, sprints, and product roadmaps with peace of mind. plane.so

Plane 成立于 2022 年,是来自 美国德拉瓦州 和 印度 的新创公司,目前观察 LinkedinGithub 活动大部分的开发人员都在印度;该公司目前已募集到 400 万美元的启动天使资金 (由 OSS Capital 投资)。

How Plane, an open-source alternative to Jira, got to the #1 in project management on GitHub in… Our lessons from 0 to 20K GitHub stars in a year plane.so

目前 Plane 占据 Github 专案管理类别第一名 ,使用 AGPL-3.0 license 开源,第一版 2023/01 推出,目前扔持续在开发阶段,尚未提供正式 Relase 版。

请注意: ⚠️ 开源 不等于 免费 ⚠️ 如同 Github 与 Gitlab,专案管理工具有很多类似 Github 的产品,例如 Asana, Jira, Clickup 但是还没有一套足够好用足以匹敌的 Gitlab 开源产品,而 Plane 的目标就是成为专案管理工具类的 Gitlab。

  • 约保持两到三周更新一次开发版本,部分调整可能差距较大或仍有资安问题。

  • 暂时不支援多语系(中文)

  • 支援 Self-Hosted

  • 目前官方不提供从 Cloud 汇出,汇入到 Self-Hosted,只能自己透过 API 串接实现,因此若有考虑 Self-Hosted 地端使用,建议只把 Cloud 当成试用版使用

  • macOS App, iOS App, Android App 也正如火如荼开发中。

Plane Product Roadmap 可参考 官网资讯

<https://sites.plane.so/plane/459cfcdf-dc9c-49a6-9d4b-a89f91440189/?board=kanban>{:target="_blank"}

https://sites.plane.so/plane/459cfcdf-dc9c-49a6-9d4b-a89f91440189/?board=kanban

开源 Repo:

方案

Plane 提供云端版本服务,$0 美金起,Pro 提供更多框架与整合、自动化功能。

另外官方正在推广 $799 早期终身方案,有兴趣付费支持的团队可以直接参考此方 案:

Community Edition (官方简称 CE 版), Self-Hosted 版本,同样是 $0 美金起, 如果要使用进阶功能依然要购买 Pro 但可以支援 Self-Hosted

框架

Plane.so 不同于 Asana 的多维度弹性但 Plane 由以下框架组成,供专案管理使用:

  • Issues:同 Asana Task,任何工作都开成 Issue 再安排处理或是当成留纪录。

  • Cycles:类似 Sprint,一个迭代的时间周期或是版本,每个 Issue 只能存在在一个 Cycle。

  • Modules:专案、模组、分类功能,每个 Issue 可加入多个 Modules。

  • Layouts & Views:可以使用 甘特图、行事历、看板、列表、Sheet 模式检视 Issues,也可以将筛选条件、显示方式储存为 View 方便快速检视。

  • Inbox:Issue Proposed 流程,可建立提案 Issue,审核通过才会真的建立 Issue 到专案中执行,不通过则直接

  • Pages:简易文档功能,可以记录一些工作、产品事项。

  • Drive:类似 Google Drive 团队档案功能。

目前免费版、CE (Self-Hosted)版 均无此功能。

Plane.so 操作教学

我们可以快速、免费直接的开始使用 Plane Cloud 版本:

Workspace

  • 首次进入 Plane.so 会需要我们建立首个 Workspace

  • Workspace 同 Asana 工作区域,一只帐号可以加入多个 Workspaces

  • 如果是小型公司跨团队使用可以在同个 Workspace

  • 如果是大公司跨团队,Plane 没有如 Asana 的 Team 功能、Project 分组功能;在同个 Workspace 会导致 Projects 混乱,建议直接改成用 Workspace 区分团队

创建完成后可在 Workspace 下拉选单上切换不同 Workspace,也可由此进入 Workspace Settings:

设定有:

  • General Workspace 大头贴、名称、网址

  • Billing and plans 付费资讯、升级方案

  • Integrations 第三方整合,目前免费版仅提供 Github, Slack 整合

  • Imports 汇入功能,目前仅提供 Jira, Github Project 汇入

  • Exports 汇出功能,目前仅提供 csv, excel, json 格式汇出

  • Webhooks API tokens,自行串接 API

比较重要的设定是 Members,我们需要邀请团队成员加入 Workspace:

身份别:

  • Guest/Viewer 目前功能上无太大区别,仅能检视 Issue、Comment、Emoji;如果是不同组织信箱外的外部使用者则为 Guest,同个组织则为 Viewer

  • Member 可操作所有功能

  • Admin 可进入 Settings

Home 首页

  • Home 整个 Workspace 所有 Projects, 成员状态

  • Anaytics 所有成员, Issues 分析

  • Projects 所有 Projects

  • All Issues 所有 Projects 的 Issues

  • Active Cycles 所有 Projects 当前 Cycle 状态

  • Notifications Issues 通知

Projects

进入 Projects 查看所有公开、已加入的 Projects:

  • Project 名称、简介、封面图、前缀 (Issue Alias e.g. APP-1 )

  • Project 权限:Public 所有加入 Workspace 的成员都能查看、加入;Private 只有受邀的成员能加入

  • Lead:Project 主要负责人

Project 右上角「…」可进行:

  • Add to favorites, Pin 到 我的最爱 (Your Projects 上方)

  • Publish 产生公开对外连结,如同官方 Roadmap Project

  • Draft Issues 查看已储存的草稿 Issues

  • Archives 查看被封存的 Issues

其他设定:

  • General:专案一般设定

  • Members:专案成员、专案权限

  • States:专案 Issue 状态 (后面会介绍)

  • Labels:专案 Labels 管理

  • Features:可控制要启用哪些功能(预设不启用 Inbox 功能)

  • Estimates:专案估时栏位设定 (后面会介绍)

  • Integrations:第三方整合 (Workspace 要先启用)

  • Automations:目前免费版仅支援超过 X 时间就自动把 Closed Issues 封存、超过 X 时间自动 Close 未完成的 Issues

Issues

  • 进入后可由左方 Projects 建立 Project

  • 不同于 Asana,Plane 的 Issue 只能加入一个 Project

  • 右上角可切换显示方式

  • 预设会展开所有 Sub-Issues,如果觉得很杂可以到 Display -> 取消 Show sub-Issues

点击「Create Issue」开始建立 Issue:

  • 可储存成草稿 Issues

  • 支援文字样式、Code Block

  • 支援 Markdown

  • 支援文绕图,可直接拖曳图片上传

  • 支援多位 Assignees (这点比 Asana 方便,Asana 只支援一个 Task 一位 Assignee)

  • 选择 Priority,不同 Priority 有不同高亮样式 (目前无法客制化 Priority)

  • 选择 Modules,可以加入多个 Modules,例如: 登入优化 , App …(设定稍后介绍)

  • 选择 Cycle,要在哪个 Sprint 做,只能选一个,例如: W22 , S22 , 2024–05 …(设定稍后介绍)

  • 目前不支援自订 Issue Property

  • 选择 Add parent,将此 Issue 作为 Sub-Issue 加入到 Parent Issue

  • 选择 Labels (a.k.a Tag 功能)

  • 选择 Start Date, Due Date… (目前不支援到准确时间、不支援 Repeated Issue)

  • 选择 Estimate (a.k.a Scrum story point 或预计投入的资源),Estimate 可在 Settings 中调整、新增;不过目前限制只能启用一个 Estimate 栏位并且 Estimate Value 只能设定 6 个。(官方 Roadmap 写 2024Q2 会改进此功能)

  • 选择 Issue State,State 可在 Settings 中调整、新增:

使用 AI 建立 Issue 内容:

  • 可以点击建立旁边的 AI 按钮输入 Prompt 自动产出预设 Issue 内容,点击 Use this response 套用到 Issue Description。

Issue 创建好之后,在列表点击会出现 Issue Preview 视窗,可以点展开进入 Issue Full-Screen 页面:

点击展开进入 Issue Full Screen Deatil 页:

  1. 图片预览,可拖移或右键开新视窗放大 (目前无法点击放大)

  2. 可点击新增 Sub-Issue (Sub-Issues 目前不支援排序、Section 功能)

  3. 新增表情符号 (目前只有 👍👎😀💥😕✈️👀 七种表情符号)

  4. 上传附加档案 (不限于是图片,但是图片目前无预览功能,需点击查看)

  5. 留言讨论区域 (目前中文选自会自动送出,请参考文末解决方案)

  6. 可订阅/取消订阅此 Issue 改变通知

  7. Relates to 可加入关联的 Issues

  8. Blocking 可标记正在被此 Issue 阻挡执行的 Issue (目前无特殊功能)

  9. Blocked by 可标记正在阻挡此 Issue 执行的 Issue (目前无特殊功能)

  10. Duplicate of 标记重复的 Issue (目前无特殊功能)

  11. Labels 可快速标记、创建标记

  12. Linkes 相关连结,可加入 Figam, Google Doc 之类的外部连结

  13. 删除、封存 Issue

Cycle 周期

  • 首页会显示当前 Cycle 与其执行状况、燃尽图

  • 还有即将到来的 Cycle、已完成的 Cycle

  • 目前需要手动建立 Cycle

  • 例如每两周一个 Sprint 就要建立 SXX 然后指定时间周期

  • Cycle 时间周期无法重复

  • Cycle 时间周期不能选择过去时间

  • Issue 只能加入一个 Cycle

  • 点击进入可查看 Cycle 细节,上方可以使用不同显示方式、Filter 查看 Issues

  • 右方有燃尽图、执行状况

  • 可依照 Assignees, Labels, States 查看 Issues

Modules 模组

  • 可以把 Modules 当成专案汇整、OKR 目标、职能分类(Design, FE, BE, App. . ) 来使用

  • 可设定专案 Lead & Members

  • 专案进度与 Issue State 不同,多了 Planned, Paused 状态

  • 可设定日期范围

  • 点击进入可查看 Module 细节,上方可以使用不同显示方式、Filter 查看 Issues

  • 右方有燃尽图、执行状况

  • 可依照 Assignees, Labels, States 查看 Issues

  • 可为 Module 加上 Link

Views

  • 可为常用的筛选条件、检视模式建立 View,可以直接从此快速查看。

  • View 上方一样可以使用不同显示方式、Filter 查看 Issues

Pages 简易文档

  • Pages 提供所见即所得的文档编辑器,可以很容易的撰写文档、插入图片

  • 目前暂不支援目录、分类功能,文档一多会很混乱

  • 文档权限:Public 所有 Project 成员可见、Private 仅自己可见。

Notifications Issues 个人通知功能

  • 订阅的 Issues 之状态、内容更改、新留言都会有通知

  • 预设自己建立的、被 Assign 的、Lead 的专案的 Issues 都会订阅

  • 目前无 Slack 、第三方通知

目前仅能透过 Email 通知:

  • 从大头贴 -> Settings -> Preferences -> Email 可打开 Email 通知

Dark Mode

  • 从大头贴 -> Settings -> Preferences -> Theme 可选择 Plane 主题

官方手册

其他操作、使用细节可参考官方文件。

⚠️⚠️声明⚠️⚠️

以上是 2024–05–25 v0.20-Dev 版的使用介绍,官方仍如火如荼开发新功能与优化使用者体验,上述功能限制在未来都可能已改善,请以最新版的体验为主。

开发中专案难免有 Bug、体验问题,请大家多给 Plane.so 团队一点耐心;有任何问题也欢迎到下方回报:

Plane.so x Scrum 工作流程范例

架构

  • 每个团队有自己的 Workspace

  • 每个团队会有一个主要的产品 Project

  • Projects:其他可建立如行销广告 Project、客服支援 Project 或与外部合作的 Project,与产品主要开发 Project 分开

  • Modules:建立 Function Modules (设计, 前端, 后端, App) 方便 Team Lead 追踪、将 OKR 或专案目标建立 Module (提升转换率、OKR-1 提升 GMV…)

  • Cycle:依照 Sprint 周期建立 Cycle,假设是每周一个 Sprint 可建立 W12 or 照周一日期来建立 2024–05–27

  • 因目前无法自动建立 Cycle,因此需每月或每周先建立好未来的 Cycle

  • 有什么工作都要开 Issue

  • Issue 可以的话加上 Start Date & Due Date、Modules、Priority

  • 如过一个 Issue 一直在 In-Progress & Cycle 中切换(一个 Cycle 做不完),可评估是否把 Issue 拆细,方便专案管理

流程

  • Sprint 周期:一周

  • Backlog:有什么工作、发想都开 Issue,State = Backlog、 填写 Estimate、Priority

  • 每周一 Sprint Planning Meeting:从 Backlog 挑选 Issues 与正在执行的 Issues (To Do or In progress)、设定 Priority/Estimate,安排本次 Sprint 执行,加入到 Cycle 中

  • Sprint 中如果有插单执行的 Issue 也需要直接开在本周 Cycle

  • Daily Stand-up:每日早上花 15 分钟快速各自分享 Issue 执行状况

  • Issue 准备执行、开始执行 更改状态成 ToDo/In Progress

  • Issue 完成更改状态成 Done,或是多建立一个 Review State

  • 每周五 Sprint Review Meeting:单纯 Review 本周 Issues (不是 Planning 下周),已完成的 Issue 快速回顾,并确保有填写 Estimate 方便日后统计。

  • 每周五尽量确保 Cycle 内所有 Issue 都是完成的, 未完成的 Issue 选择加入下一周的 Cycle 或转 Pending/Cancel

  • 持续迭代以上流程,管理所有 Issues、Projects

⚠️⚠️声明⚠️⚠️

以上只是工作流程范例,请注意没有完美的流程,只有适合您团队的流程;请参考 Plane.so 提供的架构发挥创意找到最佳的专案管理方式。

附录

API

Plane.so 是很干净的前后分离架构,因此有很完整的 API 可以使用,从 Workspace Settings 建立 API Tokens 后就能带入 API Request Header X-API-Key 就能使用,API Endpoint 请求方式可参考官方 API 文件

但因官方文件尚未完善,很多请求方式并没有列在文件中,最快的方式就是打开浏览器工具查看 Network 请求,去看官方如何请求 API 的,套上自己的 Key 就能使用。

Issue 评论,输入中文时选完字就直接送出问题

开了 Issue 给官方&追了一下 Source Code,感觉修复机会蛮低的,因为一开始就没考虑会需要选自的语言,因此直接绑定键盘 Enter Event 送出 Comment。

Browser Extension Workaround:

这边提供一个自己写的 Workaround JavaScript 脚本,去 Hook Enter 事件。

1.首先先安装 JavaScript 浏览器注入外挂:

以上是 Chromium 共用的套件,其他浏览器也可以搜寻类似的 JavaScript Inject 注入工具。

2.回到 Plane.so 上点击扩充套件 -> 点击「+」

3.将以下 JavaScript 注入到 Plane.so

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
document.addEventListener('keydown', function(event) {
 if (event.key === 'Enter' \\|\\| event.keyCode === 13) { // event.keyCode is for older browsers
  const focusedElement = document.activeElement;
  const targetButtons = focusedElement.parentElement.parentElement.parentElement.parentElement.parentElement.querySelectorAll('button[type="submit"]');
   if (targetButtons.length > 0 && targetButtons[0].textContent.trim().toLowerCase() === "comment") {
    console.log("HIT");
    // Focus the active element and place the cursor at the end
    focusedElement.focus();
    if (window.getSelection) {
     var range = document.createRange();
     var selection = window.getSelection();
     range.selectNodeContents(focusedElement);
     range.collapse(false);
     selection.removeAllRanges();
     selection.addRange(range);
    }
    event.stopImmediatePropagation();
   }
 }
},true);

  • 贴上程式码后,按「Save」储存。

回到 Plane.so (重整) 打开一个 Issue 测试 Comment 功能。

  • 按 Enter 选字已不会自动送出了,按空白 + Shift Enter 可换行,手动点 Comment 送出评论。

⚠️⚠️⚠️资安问题⚠️⚠️⚠️

因 Plane.so 还处于开发阶段产品也很新,不确定是否有安全资安问题,建议不要上传任何敏感资料,以免服务有重大问题时造成资料外泄,或使用 Self-Hosted 自架仅供本地内网使用。

Plane Self-Hosted 自架教学

有任何问题及指教欢迎 与我联络


Buy me a beer

本文首次发表于 Medium (点击查看原始版本),由 ZMediumToMarkdown 提供自动转换与同步技术。

Improve this page on Github.

This post is licensed under CC BY 4.0 by the author.