Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add serejaris/kimi-skills --skill gantt-chart-buildergit clone --depth 1 https://github.com/serejaris/kimi-skillsWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/serejaris/kimi-skills/gantt-chart-builder)<a href="https://agentmods.dev/skills/serejaris/kimi-skills/gantt-chart-builder"><img src="https://agentmods.dev/badge/skills/serejaris/kimi-skills/gantt-chart-builder/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/serejaris/kimi-skills/gantt-chart-builder"><img src="https://agentmods.dev/badge/skills/serejaris/kimi-skills/gantt-chart-builder.svg" alt="Reviewed on agentmods" width="80" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00111 | $0.01824 |
| Opus 5 | $0.00056 | $0.00912 |
| Sonnet 5 | $0.00022 | $0.00365 |
| Haiku 4.5 | $0.00011 | $0.00182 |
Grade A, and why
gantt-chart-builder scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 9d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 152 lines — stays where its author put it; the contents beside it link to each section on GitHub.
project-timeline -- 交互式甘特图与关键路径分析
根据任务列表及其依赖关系,自动执行关键路径分析(CPM),生成可交互的 HTML 甘特图。支持缩放、关键路径筛选、悬停详情、依赖关系箭头可视化等功能。
Quick Start
最简用法——直接传入 JSON:
python3 scripts/gantt_generator.py --json '{
"project": "新产品上线",
"tasks": [
{"id": "T1", "name": "需求分析", "duration": 5, "dependencies": []},
{"id": "T2", "name": "UI 设计", "duration": 4, "dependencies": ["T1"]},
{"id": "T3", "name": "后端开发", "duration": 8, "dependencies": ["T1"]},
{"id": "T4", "name": "前端开发", "duration": 6, "dependencies": ["T2"]},
{"id": "T5", "name": "联调测试", "duration": 3, "dependencies": ["T3", "T4"]},
{"id": "T6", "name": "上线部署", "duration": 2, "dependencies": ["T5"]}
]
}' --output gantt.html
从文件读取并指定开始日期:
python3 scripts/gantt_generator.py --file tasks.json --start-date 2026-05-01 --output gantt.html
方法论:关键路径法(CPM)
核心概念
| 术语 | 英文 | 含义 |
|---|---|---|
| 最早开始 | ES (Earliest Start) | 任务最早可以开始的时间 |
| 最早完成 | EF (Earliest Finish) | 任务最早可以完成的时间(ES + 工期) |
| 最晚开始 | LS (Latest Start) | 不影响项目总工期的最晚开始时间 |
| 最晚完成 | LF (Latest Finish) | 不影响项目总工期的最晚完成时间 |
| 总浮动 | Total Float | LS - ES,可延迟天数 |
| 关键路径 | Critical Path | 浮动时间为 0 的任务序列,决定项目最短工期 |
计算步骤
- 拓扑排序:按依赖关系对任务排序,同时检测循环依赖
- 前推法(Forward Pass):从起始任务开始,计算每个任务的 ES 和 EF
ES = max(所有前置任务的 EF)EF = ES + 工期
- 后推法(Backward Pass):从最终任务反推,计算 LS 和 LF
LF = min(所有后续任务的 LS)LS = LF - 工期
- 识别关键路径:浮动时间(LS - ES)为 0 的任务构成关键路径
输入格式
JSON 对象,包含以下字段:
{
"project": "项目名称",
"start_date": "2026-05-01",
"tasks": [
{
"id": "T1",
"name": "任务名称",
"duration": 5,
"dependencies": ["T0"]
}
]
}
| 字段 | 必填 | 类型 | 说明 |
|---|---|---|---|
| project | 否 | string | 项目标题,默认"项目甘特图" |
| start_date | 否 | string | YYYY-MM-DD 格式,可被 CLI --start-date 覆盖 |
| tasks | 是 | array | 任务列表 |
| tasks[].id | 是 | string | 任务唯一标识 |
| tasks[].name | 是 | string | 任务名称 |
| tasks[].duration | 是 | number | 工期(天),必须 > 0 |
| tasks[].dependencies | 否 | array | 前置任务 ID 列表,默认 [] |
What ships with it
2 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 9d ago First seen · 152 lines · 111 tokens per session scan A 59ce50b5807b
gantt-chart-builder is a skill published in the GitHub repository serejaris/kimi-skills (6 stars, last pushed 1mo ago), licensed MIT. It adds 111 tokens to every session and 1,824 once invoked, about $0.0006 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-09-03.
Other skills, from other repositories
syndic
Gère un parc de copropriétés en France avec vue portfolio consolidée. Couvre administration, comptabilité (décret 2005, plan comptable copro, 5 annexes), assemblées générales (convocation, PV, notification), appels de fonds, travaux, fournisseurs, recouvrement d'impayés et transition de syndic. Maîtrise les majorités…
implement-improvements
Validate improvements from .turbo/improvements.md, recommend a working set tailored to what's in the backlog, and run one lane: direct fixes, investigation, or planned work. One lane per session. Use when the user asks to "implement improvements", "work on improvements", "address improvements", "process improvement…
note-improvement
Capture an out-of-scope improvement opportunity so it doesn't get lost. Use when the user asks to "note improvement", "save improvement", "track this for later", "remember this improvement", "note this idea", "log improvement", "backlog this", or "park this idea". Also invoke proactively when noticing something…
create-issue
Create a GitHub issue with a drafted title and body. Use when the user asks to "create an issue", "file an issue", "open an issue", "submit an issue", "report a bug", "file a bug report", "file a feature request", or "file a design proposal".
pick-next-issue
Fetch and rank open GitHub issues by community engagement, present the top 3 candidates, and plan implementation for the selected issue. Use when the user asks to "pick next issue", "next issue", "which issue should I work on", "top issues", "most popular issues", "prioritize issues", or "what should I work on next".
split-and-ship
Execute an approved split plan, shipping each change group separately as its own branch and PR or as sequential commits on the current branch. Use when the user asks to "split and ship", "ship the split plan", "create separate PRs", or "split changes into branches".