一份完整的用户指南。关于概念,请参阅简介。
在 eastagiletracker.com/register 用电子邮件和密码注册,或者如果你更喜欢 OAuth,用 GitHub 继续。点击我们发送的链接验证你的电子邮件;在此之前你可以登录,但部分功能受限。
如果你被邀请加入某个项目或某个组织,请点击邀请邮件中的链接——你的账户会被创建(或者你直接登录),然后径直落在对应的看板上。
忘记密码?在登录页面使用 Forgot Password;我们会用电子邮件发送一个重置链接。
从右上角的头像 → Account Settings:
- Profile——显示名、姓名缩写(用于负责人头像)、电子邮件。
- Bio——一段简短的自我介绍(最多 4 KiB)。显示在
/me和组织成员列表上,让智能体(或队友)能挑对该问的人。留空即表示不参与。 - Password——随时更改。
- Avatar——上传一张图片,或退而使用你的姓名缩写。
- API Keys——创建个人 API 令牌;见 API 指南。
- Theme——Agile、Labs、Dark 或 Light(也可从侧边栏切换)。
- Delete Account——两步确认。将你从所有组织和项目中移除。
从右上角的头像 → Security:
- 双因素(TOTP)——用任意验证器应用(1Password、Authy、Google Authenticator……)设置一个验证码。获得 10 个一次性恢复码——它们只显示一次,所以请妥善保存。日后可用一个当前验证码或一个恢复码来停用。
- 通行密钥(Passkeys)——添加一个设备绑定的 WebAuthn 通行密钥(Touch ID、Windows Hello、硬件安全密钥)。之后即可无密码登录。在同一页面上添加、命名和移除密钥。
会话与刷新令牌
Section titled “会话与刷新令牌”一次成功的登录会铸造两枚令牌:一枚短时效的 access JWT 和一枚长时效的 refresh token(30 天,每次使用时轮换)。SPA 会在 access token 过期时自动刷新它;在 refresh token 过期或你登出之前,你都保持登录状态。登出会在服务端撤销 refresh token,因此被窃的副本无法被重放。
大多数账户供个人使用为 Free Forever。如果你的账户有按量计费的额度余额,可在 Account → Billing 下查看——通过 Paddle 结账充值,查看交易历史。
每个账户都隶属于一个或多个组织。一次全新的注册会以 Linear/Vercel 的方式自动创建一个个人组织(“<Name> Org”)。项目存在于组织之内,而组织成员资格门控着项目成员资格。
点击顶栏中的组织切换器,在你所属的各组织之间切换。活动的组织会为侧边栏着色、限定“Projects”列表的范围,并在你创建新项目时预先选中它。
管理组织(管理员)
Section titled “管理组织(管理员)”点击侧边栏中的组织区块 → Manage organization → 你会落在 /organization/{id}/projects。侧边栏会呈现三个管理标签:
- Projects——本组织中的所有项目。
- Members——当前成员、角色以及待处理的邀请。按电子邮件邀请;邀请会绑定到该邮箱,附带一个有 TTL 的令牌和一个角色上限(成员无法邀请管理员)。
- Settings (仅限所有者)——组织名称、slug、套餐。在这里将所有权转移给另一名成员。
把一名成员从某个组织中移除会级联:在同一事务中,他在该组织各项目中的逐项目成员资格都会被撤销。一旦他失去组织访问权,被收藏的看板 URL 立刻失效——不会留下任何孤立的痕迹。
从 Projects 页面点击 New Project。创建表单只问两件事:
- Title——必填。
- Description——可选;对所有成员可见。
其余一切——迭代长度、起始日、初始速率、估算尺度、完成状态、任务开关——都在之后于 Project Settings 中设置,并预置了合理的默认值。
在项目的 Settings 菜单下,共有四个标签:
- Project——编辑标题、描述、迭代长度与起始日、速率策略(最近 3 / 5 / 10 个的平均)、完成状态、估算尺度、任务开关。
- Member——邀请、升降级以及移除人类成员(见下文成员与邀请)。
- Agent——为本项目铸造和撤销智能体 API 密钥(见下文智能体)。仅限所有者。
- Import——从另一款 tracker 导入故事(见下文从其他 tracker 导入)。
在 Project Settings 的 Member 标签中,按电子邮件邀请人类。待处理的邀请会单独放在一个分组里,直到被接受为止;你可以看到谁被邀请了,并能重发或撤销。活动成员可在 viewer、member 和 owner 之间升降级。所有者可以更改项目设置;查看者可读但不可写。
项目历史在它自己的页面上——对项目设置的每一次更改、每一次成员变动,都连同操作者(人类或智能体)一并记录。
在任意看板面板(Current、Backlog、Icebox 或自定义面板)上使用 + Add story 入口——输入标题并按 Enter。
在 Current 中创建的新故事默认为 current_state = 'unstarted'。这与 PT 保持一致:一个 Current 迭代是一份工作的计划,而非按状态的分区。负责人在开始动手时才明确地 Start 这个故事——周期时间的时钟在那之前不会启动。
必填:标题。选择一个类型(默认为 feature)。添加描述、估算(仅限功能)、标签、负责人、关注者、阻碍——这些都可以稍后从详情面板补填。
很快地按了两下 Enter?没关系——该按钮有防护;你恰好只会得到一个故事。
功能是唯一带点数的类型。点击卡片上(或详情面板中)的点数圆圈,从尺度中挑选。未估算的功能显示一个空白圆圈。
- Fibonacci 尺度——0, 1, 2, 3, 5, 8, 13。标准 XP。任何大于 13 的,都应拆成更小的故事。
- East Agile 尺度——0, 1, 2, 3。更紧凑。一个 3 意味着一个人一整个迭代的时间。超过 3 的就装不下了。
- 3-Point 尺度——1, 2, 3(小 / 中 / 大)。严格的 T 恤尺码法——没有零选项,没有半点。
在 Project Settings 中一次性挑选尺度;之后可以更换(已有的估算会跨尺度映射)。
有三种方式让故事走过生命周期:
- 点击卡片上的就地操作按钮——Start、Finish、Deliver、Accept、Reject。按钮文字反映该故事类型的下一个有效状态。
- 拖动卡片到不同的列。系统会施加跨越那一列所隐含的流转。向后的移动会提示确认。
- 批量流转——选中多个故事,Transition all——每个故事独立流转。若有一个非法,其余的仍会通过。
点击故事行的任意处即可就地展开它。详情面板显示:
- 标题(可编辑)、描述(Markdown)、类型、估算、请求者。
- 负责人(添加/移除成员或智能体)、关注者、标签。
- 任务(如已启用)、评论、附件、阻碍、链接、评审。
- 一个三点菜单,用于复制、删除及其他较不常用的操作。
按 Escape 关闭最近打开的故事(它会记住堆栈——一次折叠一个)。
最多 10,000 个字符,按 Markdown 渲染。可编辑和删除自己的评论;审计日志会保留历史。用 @ 提及成员,自动补全会把他们识别出来。
把文件拖到详情面板上,或使用上传按钮。每个文件最大 2 GB——是的,大到足够放屏幕录制的视频讲解。可就地使用视频播放器。
从侧边栏的 Labels 页面:创建带名称和颜色的标签,过时则归档(已归档的标签从看板上消失,但仍可搜索)。在详情面板中逐故事添加标签。
阻碍、链接、评审
Section titled “阻碍、链接、评审”- Blockers——一段自由文本的“此事被 X 阻碍”备注。标记为已解决/未解决。可用
has:blocker筛选看板。 - Links——六种关系类型:relates to、duplicates、blocks、is blocked by、pull request、branch。粘贴一个 GitHub URL,类型会被自动检测。
- Reviews——指派一名评审者(人类或智能体),附带状态(pending、approved、rejected)和可选评论。
如果在 Project Settings 中启用,故事就会带子任务——故事内部的一份清单。随做随勾;计数会显示在卡片上。
故事字段参考
Section titled “故事字段参考”故事详情界面上每一个选择型变量,在其标签旁都带有一个小小的 [?] 图标。在应用内点击它,即可看到下文所概述的相同指引。译者会随 UI 的其余部分一并交付应用内文案;本节是长篇形式的权威参考。
各字段按其在 Overview 标签中出现的顺序列出。
Status
Section titled “Status”故事在生命周期中的位置:Unstarted → Started → Finished → Delivered → Accepted(或 Rejected 回到 Started)。
关键的状态是 Delivered:工程师将其标记为已交付,但直到产品负责人对照验收标准明确接受它——或者拒绝它,将其打回——它才算完成。这把一个客户反馈闭环烘焙进了每一个故事,而非把验收推迟到迭代末的演示。
如果故事在 Delivered 里堆积,那是一个信号,表明接受/拒绝的闭环已经停滞。每个迭代末都看一看 Delivered 的计数——如果它在增长,那就是你的信号:产品负责人投入不足,或者验收标准在前期还不够清晰。
Iteration
Section titled “Iteration”故事被规划进哪个迭代。保持为 None 可让故事留在 Backlog,系统会在那里基于速率自动把它归入某个即将到来的迭代之下。
这里的手动覆盖在你想把一个故事钉到某个特定迭代、不论其顺序时很有用——例如把一个发布故事系在一个固定日期上。否则,就让 Backlog 中的顺序去驱动迭代分配;那正是让速率预测保持诚实的东西。
Owners
Section titled “Owners”谁在做这件事。负责人可以是人类或智能体——两者在审计日志、评论署名和分析中都呈现为具名参与者。无法把一个智能体负责人伪装成人类。
多个负责人是结对编程(或与智能体结对)的可见表达。把领走故事的那个智能体,和评审的那个人类,都加进去——两个名字都会出现在卡片上。这能让在制品保持在低位;先完成再开始下一个故事,是周期时间上最大的那个杠杆。
负责人与 Followers(卡片上一个单独的字段)不同。关注者是关心故事但并不做工作的人——通常是通知的订阅者。
Story type
Section titled “Story type”这四种类型并非可以互换——这种区分正是数据模型的全部要点。
- Feature——用户可观察的新价值。唯一带点数并计入速率的类型。这迫使你把工作切分为用户能看见的价值。
- Bug——一个缺陷。不计点。缺陷不挣速率分,这让返工成本保持可见,而非受到奖励。
- Chore——没有直接用户价值的必要工作(重构、基础设施、搭建)。不计点。团队会被推动着尽可能把杂务捆绑进功能里,以让价值导向的框架保持诚实。
- Release——一个为里程碑设的零点标记。直接从 Unstarted 走到 Accepted,为预测锚定一个日期。
如果你发现自己想给一个缺陷或杂务打点:别这么做。那会破坏那个让整个系统保持诚实的预测。速率是一台度量仪器;你不会去篡改自己的仪器。
Priority
Section titled “Priority”**能不用就不用。**Backlog 本身就是优先级——自上而下、单一优先级、不允许并列。产品负责人掌管着顺序。
“优先级”字段是那个典型的反模式,它会悄无声息地把一份经验性的、有序的待办列表,重新变回一厢情愿的规划。如果你发现自己有三个 P1,那你没有优先级——你有的是一份顺序搞错了的 Backlog。修正顺序;删掉优先级信号。
这个字段之所以存在,是为了兼容那些使用它的 tracker(Jira、Asana……)的导入,好让导入的故事在进来的路上不丢失信息。在新工作中,把它留在“None”上。
Points
Section titled “Points”故事的相对大小。功能得点;缺陷、杂务和发布保持为零。
估算是一场定大小的对话,而非一项承诺。不要把点数换算成小时;不要为了显得快而虚增点数。速率是一台度量仪器——你不会去篡改自己的仪器。
随附三套尺度:
- Fibonacci——0, 1, 2, 3, 5, 8, 13。经典的 XP 尺度。任何大于 13 的都应拆分。
- East Agile——0, 1, 2, 3。一套更紧凑的尺度。一个 3 意味着一个人一整个迭代的时间。
- 3-Point——1, 2, 3(小 / 中 / 大)。严格的 T 恤尺码法。
如果你经常用 5、8 或 13 来估算,你的故事太大了。一直拆分,直到每个都是可独立交付的(INVEST 中的 S 和 I)。
Requester
Section titled “Requester”谁请求了这个故事。通常是一个人——产品负责人、某位利益相关者,或代表某人行事的智能体。
请求者不是负责人。负责人是做工作的那个人;请求者是关心结果、并将(或将不)接受它的那个人。他们可以是同一个人,但这是两个独立的角色。记录请求者,正是让你在六个月后能给出*“是谁请求了这个?”*这一审计答案的东西。
Labels
Section titled “Labels”彩色标记。故事可以带多个。用于横切的分类——mvp、tech-debt、security、某个特定的发布名称——以及看板筛选(搜索框里的 label:mvp,或把它存为一个自定义筛选面板)。
标签是项目范围内的。在侧边栏的 Labels 页面管理它们。把过时的标签归档而非删除;归档让历史仍可搜索,同时清理看板。
Blockers
Section titled “Blockers”自由文本备注,描述是什么在阻止该故事推进。障碍解除时标记为已解决。
阻碍是一个流动信号,而非一个队列。用每日站会把它们摆到台面上;在流程之外解决它们。如果你每个故事在超过一天的时间里都有不止一两个未解决的阻碍,那是规划出了错——拆分故事,或者改变依赖关系。目标是让 Blocked 面板在大多数时候都基本为空。
Description
Section titled “Description”故事是什么,以及如何辨别它已经完成。Markdown。
验收标准应放在这里——最好采用 Given / When / Then 形式,以便直接映射到验收测试:
Given I am signed in as a memberWhen I click "Add a story" in CurrentThen the story is created in state "unstarted"INVEST 是检验故事是否成形的理智核验:
- Independent——可在不依赖其他故事的情况下发布。
- Negotiable——捕捉的是意图,而非一份冻结的规格。
- Valuable——对某个用户或利益相关者有价值。
- Estimable——团队能给它定大小。
- Small——能从容地装进一个迭代。
- Testable——拥有可被执行的验收标准。
待办列表顶部、却带着含糊验收标准的故事,是一个规划缺陷——而不是一个可以忽略的未来问题。在让它推进之前先把它修好。
在看板上选中多个故事(shift-点击选范围,或 Select all in panel)。然后:
- 批量流转
- 批量删除
- 批量复制
看板是每个项目的主屏幕。默认有三列:
- Current——活动迭代中的故事。按迭代头分组(当前、随后、再到已关闭)。卡片按迭代时序出现,每张卡片上都可见其状态;该列不按状态切分——那会破坏团队据以规划的迭代时序。
- Backlog——严格有序的队列。系统会基于速率自动归出即将到来的迭代。产品负责人掌管自上而下的顺序;越往下滚,清晰度允许递减,但顶部绝不可以。
- Icebox——没有日期的想法。无序、未估算。Icebox 可以是一片坟场。
可配置面板——侧边栏复选框
Section titled “可配置面板——侧边栏复选框”侧边栏的 Board 区域列出每一个预设列并配一个复选框:勾选以显示该列,取消勾选以隐藏。切换状态按项目、按用户持久保存(它们通过 GET/PUT /preferences 同步)。各预设为:
- Current Iteration (默认开启)
- Backlog (默认开启)
- Icebox (默认开启)
- Done——已接受的故事。
- My Work——你是负责人的故事。
- Blocked——带未解决阻碍的故事。
- Epics——史诗层面的汇总。
- Chat——项目范围内的聊天列。
自定义筛选面板
Section titled “自定义筛选面板”把一次搜索固定成一个面板:粘贴一个查询,比如 type:feature label:mvp owner:claire,把它保存。按需调整列宽;宽度跨会话持久保存。
搜索栏接受简介中所述的筛选语法。搜索结果存在于一个结果面板里;点击任意一个即可跳到它在看板上的位置。
当前迭代徽章
Section titled “当前迭代徽章”顶栏显示当前迭代的编号、日期范围,以及已接受相对计划的点数。点击即可跳到 Current 列。
系统会根据你的迭代长度和起始日自动创建迭代。你不必去“打开”或“关闭”它们。
要提前规划,把故事从 Backlog 拖入即将到来的迭代分组。系统会在某个分组超出你的速率时把它标红。要规划得更远,滚动待办列表——它会显示前方三四个迭代。
要回溯:点击 Current 列中任意一个过去的迭代头,即可下钻进入迭代报告。
发布是一种故事类型,而非一个单独的对象。创建一个发布的方式,和你创建任何故事一样:选择 Release 作为类型,给它一个名称(例如 v2.4),把它拖入你打算发货的那个迭代。
发布会跳过 Started/Finished/Delivered/Rejected 状态——它们一步就从 Unstarted 到 Accepted。在你发货时接受一个发布;分析视图会显示发布标记。
Analytics 标签页(在项目顶部)为你提供六份报告:
- Project Overview——速率趋势、近期迭代 KPI、燃起、燃尽、累积流。
- Iteration——下钻进单个迭代:KPI、燃尽、状态流。
- Releases & Burndowns——发布时间线、逐发布燃尽。
- Story Activity——谁做了什么,可按操作者、类型、日期范围筛选。
- Cycle Time——从 Started 到你的完成状态所用时间的均值与分布。
- Projections——以当前速率预测待办列表何时能做完。
这是让本产品与众不同的部分。智能体是一名具名队友——只不过它是 AI。
把智能体加入项目
Section titled “把智能体加入项目”你必须是项目所有者(或管理员)。打开 Project Settings → Agents:
- Create new agent key。
- 给智能体一个名字(它会以这个名字出现在审计日志、评论署名和负责人头像中)。
- 挑一个角色——viewer(只读)或 member(可写)。owner 角色仅限人类。
- 密钥只显示一次——把它复制下来;我们不以可取回的方式存储它。前缀是
ea_agent_…。
智能体能做什么
Section titled “智能体能做什么”一个具 member 角色的智能体,能做人类成员所能做的任何事:
- 创建、编辑、流转、删除故事
- 评论、附加文件、添加标签、设置负责人
- 选自己作为某个故事的负责人
- 读取活动、追随事件
审计日志会以该智能体的身份记录每一次写入。无法让一个智能体的动作看起来像是人类的动作。
管理智能体密钥
Section titled “管理智能体密钥”在 Project Settings → Agents 中,你能看到所有活动密钥、它们的名称、角色和上次使用时间戳。随时撤销一个密钥;该智能体会立刻失去访问权。该智能体过去的活动会永远留在审计日志里。
在 API 中使用智能体
Section titled “在 API 中使用智能体”代码示例见 API 指南 → 智能体密钥。
从其他 tracker 导入
Section titled “从其他 tracker 导入”如果你正从另一款工具迁来,我们为八个来源提供了导入工具:
- Pivotal Tracker
- Jira
- Asana
- GitLab
- Shortcut
- Trello
- Linear
- Plane
从 Project Settings → Import,上传一份导出文件(大多数为 CSV,Plane 为 JSON)。故事、负责人、评论、标签和状态会自动映射;某些来源还会带入迭代。
预览会显示将要导入的内容。不匹配之处(例如某个标签不在你的项目中)会弹出提示——创建还是跳过,由你决定。
随附四款主题。在侧边栏页脚(或在 Account Settings → Theme)切换:
- Agile——营销落地页的配色。暖白、深蓝品牌强调色(#1f6f9f)、饱和的故事类型图标。切换器中的首选项。
- Labs——被悉心保留的 Pivotal Tracker 配色。深色界面、蓝色顶栏、列间隙的柔和色调。原版。
- Dark——纯中性深色。
- Light——纯中性浅色。墨落于纸。
你的主题会跨会话持久保存。
界面被翻译成 15 种语言:英语、法语、德语、西班牙语、日语、中文、韩语、葡萄牙语、意大利语、荷兰语、瑞典语、丹麦语、捷克语、芬兰语、波兰语。在侧边栏页脚切换——界面框架、认证页面、账户/安全区域、项目列表以及营销落地页会立即本地化。故事详情 / 分析 / 设置的本地化将陆续跟进。
几个物有所值的:
- Escape——折叠最近打开的故事。
- 在就地输入框中按 Enter——提交(不会折叠该行)。
- Shift-点击——范围选中故事。
随着时间推移会添加更多;当前列表见侧边栏中的 Help。
East Agile Tracker 是开源的。完整源码在 github.com/EastAgile/agile-tracker——克隆它、构建它、在你自己的基础设施上运行它。功能集与托管版本相同。
关于搭建,请参阅项目 README。