RepoDaily · 2026-08-03 · Self-hosted app

Kaneo:一个拒绝功能膨胀的自托管项目管理工具

#9 Self-hosted app TypeScript +491 usekaneo/kaneo 打开仓库

采用 MIT 协议的 TypeScript 项目管理平台,提供 drim 一键部署、单容器 Docker Compose 启动方式,以及刻意收敛的功能边界。

项目类型Self-hosted app
最适合希望在自有基础设施上获得 Jira 式任务跟踪、但不想要臃肿功能面的小型产品团队。
风险等级中等——开源项目较年轻,维护者基数较小,公开的生产部署文档有限。
评估时间本地用 Docker Compose 跑起来约 30 分钟;用 drim 完成带 HTTPS 与 PostgreSQL 的部署约 1–2 小时。

核心问题: 你的团队是否只需要项目、任务、跟踪这些核心原语,并且能接受一个更年轻、集成更少的代码库?

87/100

RepoDaily 采用评分

RepoDaily 将该项目的采用分评为 87/100(强):分数来自文章来源、安装路径、生产风险、差异化、许可证清晰度以及 AI/Agent 适配度。

基于 RepoDaily 来源和采用说明的方向性评分,不是基准测试。风险: 中
96证据质量

包含 4 个来源、覆盖 3 类来源;如有 RepoDaily 独有模块,会进一步提高证据分。

100可安装/可试用性

检测到 5 个工作流步骤、5 个下一步动作,以及 5 个命令/安装信号。

63维护可信度

趋势热度为 +491 stars;如内容中有 release、issue 或维护信号,会提高维护可信度。

91生产准备度

采纳风险标记为 medium,并包含 5 条安全说明与 3 条跳过条件。

100差异化

3 个机会视角、5 个替代方案,以及 4 个类型化模块支撑差异化判断。

82许可证清晰度

文章中包含许可证来源或许可证表述。

60Agent / AI 适配度

文章正文和元数据中检测到 2 个 AI/Agent 相关信号。

项目概览

Kaneo 是一个用 TypeScript 编写、以 MIT 协议开源的项目管理应用,维护者为 Andrej Acevski。仓库用一句话回应这个品类里的既有玩家:大多数工具的问题不是缺少功能,而是功能太多——每一处多余的按钮、通知和配置都在把注意力从真正要做的事情上拉走。

当前版本为 2.12.1。代码库以 pnpm monorepo 的形式组织,由 Turbo 调度,API 服务运行在 1337 端口,前端 Web 应用运行在 5173 端口,数据库使用 PostgreSQL 16 Alpine。项目提供一份 Docker Compose 配置,可以用单个 Kaneo 容器配合 PostgreSQL 跑起来;另有名为 drim 的专用 CLI 工具,用两条命令完成 HTTPS、数据库和服务配置。

Kaneo 的克制在文档里看得很清楚:README 里没有功能对比矩阵,没有企业版推销,也没有声称支持甘特图、OKR 或项目集管理。它主张最好的工具应当是隐形的,每个功能都要解决真实问题,而不是为了演示效果存在。这种立场会让被 Jira 配置面折磨过的团队产生共鸣,但也会让需要高级报表或跨项目依赖关系的团队止步。

解决什么问题

  • 商业项目管理工具加功能的速度远超团队评估速度,把规划工作变成配置工作。
  • 云端规划工具把敏感的路线图、人员和客户数据放在团队基础设施之外。
  • 大多数开源替代品只是复制了商业产品的功能堆,而没有真正做减法。
  • 自托管项目管理工具历史上需要相当多的 DevOps 工作来准备数据库、TLS 和应用服务。

工作原理

  1. 仓库是 pnpm monorepo:pnpm install 后执行 pnpm run dev,API 运行在 1337 端口,Web 应用运行在 5173 端口,两者都支持自动重载。
  2. 本地评估时,Docker Compose 路径以 ghcr.io/usekaneo/kaneo:latest 单容器配合 postgres:16-alpine 边车运行。
  3. Compose 健康检查使用 pg_isready -U kaneo -d kaneo,kaneo 容器会等待 PostgreSQL 进入 healthy 状态再启动。
  4. 生产路径上,drim CLI 在通过 curl 从 assets.kaneo.app 安装后,自动完成 HTTPS、数据库和服务配置。
  5. 用户可见字符串通过 i18next 与 react-i18next 外部化,翻译文件位于 i18n/ 目录,并可通过 pnpm i18n:check 运行校验。

产品演示与界面预览

Kaneo Dashboard
Kaneo Dashboard — Official README visual asset that helps readers understand the project interface, architecture, workflow, or output. README.md image

来自源文件的部署细节

  • Docker Compose 镜像:ghcr.io/usekaneo/kaneo:latest,对外暴露 5173 端口。
  • 数据库:postgres:16-alpine,运行在 5432 端口,健康检查针对用户 kaneo 和数据库 kaneo。
  • README 中提到的环境变量:KANEO_CLIENT_URL(本地环境需取消注释)、POSTGRES_PASSWORD、AUTH_SECRET(通过 openssl rand -hex 生成)。
  • 一键路径:curl -fsSL https://assets.kaneo.app/install.sh | sh,然后执行 drim setup——README 声称该流程会处理 HTTPS、数据库和服务配置。
  • 开发环境下 API 监听 1337 端口,Web 应用监听 5173 端口并自动连接到 API。

贡献者和运维实际会执行的命令

  • pnpm install —— 安装依赖(packageManager 锁定为 pnpm 10.32.1)。
  • pnpm run dev —— 通过 Turbo 启动 API(1337)和 Web(5173),支持热重载。
  • pnpm test —— 单元测试;pnpm test:integration —— 需要 PostgreSQL 的 API 集成测试。
  • pnpm run lint —— 基于 Biome 的格式化与静态检查,支持自动修复。
  • pnpm i18n:check、pnpm i18n:report、pnpm i18n:schema —— 位于 scripts/i18n/ 下的翻译校验与 schema 生成脚本。
  • Git 钩子由 Husky 管理;提交需遵循由 commitlint 强制的 conventional-commit 前缀。

技术栈与集成边界

锁定的工具链是一组刻意的选择:Turbo 2.10.5 负责 monorepo 调度,Biome 2.5.4 负责静态检查与格式化(取代常见的 ESLint/Prettier 组合),TypeScript 5.8.3,engines 约束为 Node.js >= 20.19.0。pnpm overrides 块非常长且激进——固定或提升 hono、better-auth、next、express-rate-limit、esbuild 等大约两打传递依赖的版本,这表明维护者在主动跟踪安全公告与兼容性变更。

认证由 better-auth 处理(固定在 1.6.23 并设了下限),API 层依赖 Hono(>= 4.12.25),Web 应用使用 Next.js 15.5.x 范围。本地化由 i18next 与 react-i18next 承担,翻译文件位于 i18n/ 目录下并配有机检 schema,这对跨语言团队很重要。源文件中没有出现 Slack、GitHub、GitLab 或 Jira 迁移相关的对外集成证据——任何依赖这些集成的团队都应将其视为尚未提供,并以线上文档为准。

维护与供应链信号

  • 版本号 2.12.1 表明发布节奏已越过初始 1.0 阶段。
  • CI 通过引用 main 分支 ci.yml 的徽章可见。
  • README 中链接了 Discord 社区(服务器 ID 1326250681530843178),是 GitHub issues 之外的主要支持渠道。
  • README 中列出了两位具名赞助者(Daniel Sada、randoneering),说明赞助基数小而真实,但并非基金会级别支持。
  • 对一个这种体量的项目来说,pnpm overrides 列表异常详尽——这是供应链上的正面信号,同时也意味着团队承担了相应的维护负担。

谁适合关注

适合关注

  • 5–30 人的团队,需要自托管任务跟踪,且能接受没有深度报表。
  • 对数据驻留有要求、需要把规划数据留在自己 VPC 内的组织。
  • 希望在 MIT 协议下阅读、fork 并扩展自己项目管理工具的开发者。
  • 正在评估 Jira 替代品、并把部署便利性看得比功能广度更重的团队。

可以先跳过

  • 需要项目集层面汇总、OKR 或容量规划的 PMO。
  • 依赖成熟市场集成(Slack、GitHub Issues 同步、Salesforce、Jira 迁移)的团队。
  • 需要 SOC 2 报告、超出 better-auth 提供范围的 SSO/SAML,或正式支持 SLA 的企业。

风险与注意事项

Kaneo 是一个年轻但工程质量过关的项目。MIT 协议与现代工具链降低了法律和技术摩擦,但赞助基数小、公开部署手册有限,这些都会抬高风险上限。

  • 维护者团队规模较小(版权人列为 Andrej Acevski),赞助名单不大。
  • README 与 CONTRIBUTING 中均未引用 SOC 2、SSO 或审计相关文档。
  • 核心应用之外的集成面在源文件中缺少证据——对外 webhook、SCIM、迁移工具都应视为未验证。
  • 项目已过 2.x 并提供 CI,但 drim 之外的生产部署指引较薄。
  • MIT 协议允许商业使用、修改和再分发,不附加对等义务。
  • pnpm overrides 块显式提升了已知公告相关包的版本——hono、better-auth、next、ws、qs、fast-xml-parser、undici 等——姿态强于同类项目平均水平。
  • Husky + commitlint + Biome 在代码进入 main 之前强制约定式提交和格式化。
  • AUTH_SECRET 是必填环境变量,README 要求通过 openssl rand -hex 生成,而不是附带默认值。
  • 源文件中未引用安全策略文件;在企业采用前应明确漏洞披露流程。

替代方案比较

方案适用场景代价
Plane
当你想要功能更丰富的开源 Jira 替代品,包含 issue、cycle 和 module,并且能接受更大的部署体量。Apache 2.0 协议下自托管免费;提供托管云版本。
OpenProject
当你需要甘特图、工时跟踪、预算管理,以及成熟的项目集功能来做传统项目管理。GPLv3 下自托管免费;企业版收费。
Taiga
当团队采用 Scrum 或 Kanban,希望有一个以敏捷为核心、内置 sprint 规划的开源工具。MPL-2.0 下自托管免费;提供托管云版本。
Jira Cloud
当你需要企业级集成、市场应用和 Atlassian 支持,并且自托管不是硬性要求。按用户付费的商业订阅。
Linear
当速度与开发者体验比自托管更重要,并且你能接受纯 SaaS 模式。按用户付费的商业订阅。

这个趋势说明了什么

小型工作室的内部工具

已经在为其他业务跑 PostgreSQL 的工作室和咨询公司,可以用两容器 Compose 文件把 Kaneo 部署到现有基础设施上,避免新增一条 SaaS 支出。

用 README 里的 compose.yml 执行 docker compose up,建一个项目、十来个任务,检查跟踪原语是否覆盖你的站会流程。

垂直行业的 fork 与定制

由于 Kaneo 采用 MIT 协议且刻意保持精简,它是垂直 fork 的合理基础——例如为代理机构做一个轻量 CRM 跟踪混合体——而不必承担 GPL 替代品的协议复杂度。

确认 Turbo + pnpm monorepo 能通过 pnpm install && pnpm build 干净构建,并确认 i18n schema 脚本通过后再 fork。

内网隔离环境

在受监管或内网隔离环境下、无法使用 Linear 或 Jira Cloud 的团队,可以把 Kaneo 与 PostgreSQL 一起部署在内部,并完全掌控数据流。

把 ghcr.io/usekaneo/kaneo:latest 拉到内部镜像仓库,在断网主机上执行 drim setup,确认在无对外网络的情况下 HTTPS 配置仍能完成。

下一步建议

用 Docker Compose 路径跑起来,并导入一个真实项目

判断 Kaneo 是否适合你团队的最快信号,是按文档跑通 Compose 栈,导入一个真实项目和两个 sprint 的任务,看它的最小界面能否覆盖你的规划仪式。

  1. 把 README 里的 compose.yml 片段复制到一个干净的目录。
  2. 把 .env.sample 复制为 .env,取消注释 KANEO_CLIENT_URL=http://localhost:5173,并设置 POSTGRES_PASSWORD 与 AUTH_SECRET(openssl rand -hex)。
  3. 执行 docker compose up -d,等待 PostgreSQL 健康检查通过、kaneo 容器启动。
  4. 打开 http://localhost:5173,创建项目,并录入 15–20 条具有代表性的任务。
  5. 如果体验过关,就在一台 staging VM 上评估 drim setup,以验证带 HTTPS 的生产路径。

RepoDaily 判断

Kaneo 是一个可信、刻意收窄功能的自托管项目管理工具,拥有干净的 TypeScript 技术栈和同类中最简单的部署叙事。它的短板在于功能广度和较小的维护者基数——在把路线图数据迁入之前都值得压测。

信息来源