
Lark OKR
FreeManage objectives and key results efficiently.
Free · Opens the source repo
What Lark OKR does
Lark OKR is a command-line interface tool designed for managing objectives and key results (OKRs) within the Lark ecosystem. It allows users to view and edit OKR cycles, objectives, key results, alignment relationships, quantitative indicators, and progress records. The skill is particularly useful for teams and individuals looking to maintain clarity and focus on their goals by tracking their progress and aligning their efforts with organizational objectives.
The tool operates through a series of commands that facilitate various operations, such as creating new OKRs, updating progress, and managing alignment relationships. Users can easily retrieve their own or others' OKRs by leveraging user IDs and specific commands. For bulk operations, the skill provides batch creation capabilities, enabling users to set up multiple objectives and key results simultaneously. This is especially beneficial for organizations with numerous goals to track, ensuring that all team members are aligned and informed.
Additionally, Lark OKR includes shortcuts for frequently used operations, making it easier to execute commands without needing to remember complex syntax. The skill emphasizes the importance of distinguishing between updating scores and progress, providing clear guidelines on how to handle different types of updates. This clarity helps prevent common mistakes when managing OKRs.
Overall, Lark OKR is a practical tool for developers and project managers who need a straightforward way to manage goals and track progress within the Lark platform, enhancing productivity and goal alignment across teams.
When to use it
This skill is ideal when you need to create, update, or review OKRs and their progress within the Lark environment.
When not to use it
It is not suitable for managing tasks or scheduling meetings, as it focuses solely on OKR management.
What you can build with it
Creating OKRs for a New Cycle
Use the `+batch-create` command to set up multiple objectives and key results for an upcoming OKR cycle.
Updating Progress on Key Results
Utilize the `+indicator-update` command to reflect the latest progress on your key results, ensuring alignment with your objectives.
Reviewing Team OKRs
Leverage the `+cycle-list` and `+cycle-detail` commands to review the OKRs of your team members and ensure everyone is aligned.
How to install Lark OKR
View source1. Install with the skills CLI
npx skills add larksuite/cli/lark-okr --agent claude-code2. Or install it manually
Download the skill folder and drop it into ~/.claude/skills/ for all projects, or .claude/skills/ to scope it to one repo. Restart Claude Code so it picks up the new skill.
Anthropic's agentic coding CLI, and the reference implementation of Agent Skills. Drop a skill folder into ~/.claude/skills and Claude Code loads it automatically whenever a task matches the skill's description. Claude Code docs
Inside SKILL.md
Written by larksuiteokr (v2)
CRITICAL — 开始前 MUST 先用 Read 工具读取 ../lark-shared/SKILL.md,其中包含认证、权限处理
身份:OKR 操作默认使用 --as user(查看当前用户/上下级的 OKR 时)。也支持 --as bot 查看他人 OKR(需相应权限)。
快速决策
| 用户需求 | 操作路径 | 参考文档 |
|---|---|---|
| 查看自己/他人的 OKR | 获取用户 ID -> +cycle-list -> +cycle-detail -> 按需查指标/进展记录 | cycle-list, cycle-detail, indicators, progress-list |
| 为自己写一组 OKR | 优先用 +batch-create 创建 Objective/KR 骨架 | batch-create, contentblock |
| 只新增一条 O 或单条 KR | 用 +create | create |
| 编辑内容/备注/截止时间 | 用 +patch | patch |
| 修改 OKR 分数 | 只有用户明确说“分数”“评分”“打分”“score”时才用 +patch --score;分数不是进度/完成度 | patch |
| 调整顺序或权重 | 用 +reorder / +weight | reorder, weight |
| 更新数字进度/完成度 | 百分比或不带单位数字用 +indicator-update;需要改单位/目标值时查指标后用 indicators patch | indicator-update, indicators |
| 写文字进展 | 用 +progress-create;如果文本和数字都有,百分比或默认单位可使用 --progress-percent 统一改,非百分比单位更新量化指标 | progress-create, progress-list, progress-update |
| 对齐目标 | 直接按对齐关系工作流处理 | alignments |
分类只在用户明确要求分类,或创建 Objective 返回 invalid parameters 且怀疑租户强制开启分类时处理:用 lark-cli okr categories list --params '{"owner_type":"user","page_size":100}' --as user 查可用分类,选择语义合适且 enabled=true 的分类 ID;分类可后续调整,不必停下等待用户确认。
获取当前用户用 contact +get-user;按姓名/邮箱查他人用 contact +search-user,拿到 open_id 后再查 OKR。
lark-cli contact +search-user --query "张三" --has-chatted --as user
最常用 OKR 命令示例:
# 查用户周期,再用周期 ID 查详情
lark-cli okr +cycle-list --user-id "ou_xxx" --as user
lark-cli okr +cycle-detail --cycle-id 7000000000000000001 --as user
# 批量创建 Objective/KR
lark-cli okr +batch-create \
--cycle-id 7000000000000000001 \
--input '[{"text":"提升产品用户体验","notes":"关注核心流程和用户反馈","krs":[{"text":"核心流程满意度达到 4.8 分"}]}]' \
--as user
# 更新数字进度/完成度
lark-cli okr +indicator-update \
--level key-result \
--id 7000000000000000003 \
--value 75 \
--as user
分数和进度不要混用:用户说“进度”“完成度”“当前做到 75%”时,通常是在改量化指标或写进展记录,不是在改 score。只有明确要求修改 OKR 分数/评分/打分时,才使用 +patch --score;score 取值是 0-1,最多一位小数。
进度判断规则:用户说“进度”“完成度”时,先判断是否是量化数字。数字进度通常对应量化指标;不可量化文本对应进展记录。需要修改指标单位时看 lark-okr-indicators.md
Shortcuts(推荐优先使用)
Shortcut 是对常用操作的高级封装(lark-cli okr +<verb> [flags])。有 Shortcut 的操作优先使用。
| Shortcut | 说明 |
|---|---|
+cycle-list | 分页获取特定用户的 OKR 周期列表,可以用 --time-range 对当前页后置筛选 |
+cycle-detail | 获取特定 OKR 中所有目标和关键结果的内容 |
+create | 创建单个 Objective(可带备注),或向已有 Objective 新增 KR |
+progress-list | 分页获取目标或关键结果的进展记录列表 |
+progress-get | 根据 ID 获取单条 OKR 进展记录 |
+progress-create | 为目标或关键结果创建进展记录 |
+progress-update | 更新指定 ID 的进展记录内容 |
+progress-delete | 删除指定 ID 的进展记录(不可恢复) |
+upload-image | 上传图片用于 OKR 进展记录的富文本内容 |
+batch-create | 批量创建 Objective(可带备注)和 KR |
+reorder | 调整 Objective 或 KR 的顺位 |
+weight | 调整 Objective 或 KR 的权重 |
+indicator-update | 更新 Objective 或 KR 的当前进度指标。更复杂的量化指标操作见 量化指标管理 |
+patch | 部分更新 Objective 或 KR(content、notes、score、deadline) |
创建场景选择
- 单条创建优先用
+create:适合创建一个 Objective,或给已有 Objective 增加一个 KR。 - 批量创建用
+batch-create:适合一次创建多个 Objective,并可同时附带多个 KR。 - 如果你只需要修改已有 Objective / KR 的内容、备注、分数或截止时间,使用
+patch。
格式说明
OKR 业务实体获取 OKR 实体结构,定义和关系,帮助你更好的使用 OKR 功能ContentBlock 富文本格式— Objective/KeyResult/Progress 中 Content/Note 字段使用的富文本格式说明,以及简化的半纯文本(SemiPlainContent)格式的进一步说明。- 强烈建议 在操作 OKR 前,阅读
OKR 业务实体以了解基础概念
API Resources
alignments
delete— 删除对齐关系get— 获取对齐关系
操作指南: OKR 对齐关系管理 包含 list/create/delete 完整工作流
categories
list— 批量获取分类
cycles
list— 批量获取用户周期
cycle.objectives
list— 批量获取用户周期下的目标
indicators
patch— 更新量化指标
操作指南: OKR 量化指标管理 包含目标/KR 指标查询和 patch 更新完整工作流
key_results
delete— 删除关键结果get— 获取关键结果patch— 更新关键结果
key_result.indicators
list— 获取关键结果的量化指标
操作指南: OKR 量化指标管理
objectives
delete— 删除目标get— 获取目标key_results_position— 更新全部关键结果的位置- 请求中必须携带对应周期下全部关键结果的 ID,否则会参数校验失败。以传入的关键结果ID顺序重新排列关键结果。
key_results_weight— 更新全部关键结果的权重- 类似
objectives_weight, 请求中必须同时修改对应目标下全部关键结果的权重,且所有权重值的和必须等于 1 ,否则会参数校验失败。
- 类似
patch— 更新目标
objective.alignments
create— 创建对齐关系- 对齐不允许对齐自己的目标,且发起对齐的目标和被对齐的目标所在周期时间上必须有重叠,否则会参数校验失败。
list— 批量获取目标下的对齐关系
objective.indicators
list— 获取目标的量化指标
objective.key_results
list— 批量获取目标下的关键结果
不在本 skill 范围
- 待办任务管理 → 使用
lark-task - 日程安排 → 使用
lark-calendar - 绩效评估 → 使用
lark-openapi-explorer查找原生接口
Frequently asked questions about Lark OKR
Similar skills
Canva Creator
Streamline your content campaign from brief to HubSpot.
Cowork Plugin Customization
Tailor your Claude Code plugin to fit your organization.
Impediment Prioritization
Rank and prioritize impediments effectively.
Chronicle
Streamline your Copilot session analysis and reporting.
Idea Refine
Transform vague ideas into actionable concepts.
App Store Optimization
Optimize your mobile app's visibility and performance.
