This skill aims to transform unstructured chat records organized by headings (in Markdown format) into actionable project management assets. Itstrictly follows the document table of contents (TOC) for segmented processing, rather than simple line-based splitting, to ensure the integrity of the conversation context.
When to Use
When the user provides exported chat records (Markdown) and the records use headings (#, ##...) to distinguish different group chats or conversation partners.
Users typically request:
- Project-based organization: extract tasks (Assigner/Assignee), status (Status), decisions (Decision).
- Specific deliverables: write weekly reports, bug lists, timeline reviews of specific events, etc., based on the chat content.
- Background alignment: during processing, reference background documents provided by the user (such as PRDs, personnel lists).
Workflow
1. Initialization Phase
First, the workspace must be initialized and the document structure parsed.
- Receive input: confirm the source file, background documents, and the user'sadditional requests(for example: "Help me organize all discussions about the API into a separate document").
- Execute initialization:
Run a script to scan the heading structure of the source file and generate a workspace:
python3 .gemini/skills/long-chat-task-processor/scripts/setup_workspace.py "path/to/chat_log.md" "工作区目录名称"
The workspace directory name can use the YYYY-MM-DD-HH 沟通记录整理 format.
After initialization, the workspace structure is as follows:
Chat_Projectization_YYYY-MM-DD-HH-MM/
├── 0-工作日志.md # [核心] 基于 TOC 生成的树状任务列表
├── 1-原始记录/ # 存放源文件
├── 2-项目背景/ # 存放用户提供的背景文档,以及用户的所有指示
├── 3-实体映射表.md # [动态] 自动积累的人名/概念术语表
├── 4-任务池.md # [动态] 累积提取的任务列表
├── 5-决策与里程碑.md # [动态] 累积提取的决策和时间点
└── 6-额外输出/ # 存放用户要求的额外的输出文档
- Copy the user's instructions and background documents to the
2-项目背景/directory to ensure subsequent processing is well-founded.
2. TOC Segmented Processing Loop (TOC Loop)
Open 0-工作日志.md, and you will see a task tree based on Markdown heading levels.
In orderprocess each Section marked as [ ] .
Before processing each Section, be sure to read:
0-工作日志.md(obtain the line number range and heading background of the current Section)2-项目背景/(understand the business context)3-实体映射表.md(ensure names are aligned)- User's additional requests (confirm whether this segment of the conversation involves a topic that needs separate output)
Processing steps:
- Read content: according to the
Line Start-Endrecorded in the log, read the corresponding content in1-原始记录/. - Perform analysis (Analysis):
- General extraction:
- Task: update
4-任务池.md. Format:[ ] <Time> **Assigner** -> **Assignee**: <Task> (Status) - Decision: update
5-决策与里程碑.md。 - New entity: when a new name/slang term is found, append it to
3-实体映射表.md。
- Task: update
- Topic-specific extraction (Extra Requests):
- If the user's request includes "organize API issues", "output weekly report materials", etc., andthe current segmentcontains relevant information:
- Under
6-最终输出/, create or append the corresponding document (for example6-最终输出/API_Issue_Log.md)。
- General extraction:
- Update status:
- In
0-工作日志.mdMark this Section as[x]。
- In
3. Synthesis and Delivery
After all Sections have been processed:
- Organize the task pool: Check
4-任务池.md, merge duplicates, and categorize by person or priority. - Generate the final deliverable:
- If the user wants a complete summary report, synthesize based on the content in
4、5and6. - If the user wants separate documents (such as a "task list" + "meeting minutes"), organize and output them separately.
- If the user wants a complete summary report, synthesize based on the content in
Key Principles
- TOC first: Do not merge processing across headings unless the heading levels are very deep and the content is very little. Maintain an independent context for "one group chat/one topic".
- Time markers: Group chat records usually use
-- 日期or-- 日期 时间(such as-- 02-09 15:00) to mark time points, which can be used for reference. - Context completion: For expressions that often appear in chats such as "that thing" and "what was said yesterday", try as much as possible to resolve references based on the context of the same Section.
- Better to overinclude than omit: For vague tasks in chat records, record them first and mark them as
Status: UNCONFIRMED。 - Incremental principle: When processing each Section, perform an "incremental information update" on the mapping table, task pool, decision document, and additional output:
- If the concept, task, decision, or document content is entirely new, append it.
- If existing content can be corrected, updated, or supplemented, then update the existing content to make the information more complete.
- Read output documents before editing: During segmented processing, if you use the write tool, it is very easy to cause existing content to be lost. When editing the above output documents, you must follow the principle of read first, then consider how to edit, then write , and use the edit tool.
Notes
- Focus on links and images that contain key information.
- Pay special attention to things other people assign to me, and whether I acknowledge them.
- Also pay attention to things I assign to others, and whether the other party acknowledges them.
- If the user interrupts your editing and corrects your mistake, be sure to follow it and fix it, and note that you must redo the interrupted edit , and do not miss the editing operation.
- Tasks may be interrupted. If the user tells you to "continue working from the existing task", there is no need to create a workspace, but you must read the existing
2-项目背景/and3-实体映射表.mdto restore context. Then continue processing the unfinished Sections in0-工作日志.md.
Output Specifications
About 0-Work Log ,
A format like this can be used. After the Agent finishes processing, change the corresponding [ ] to [x] 。
- [ ] **群聊:API 稳定性治理** (Line 100-167)
- [ ] **私聊:小张** (Line 168-600)
About 3-Entity Mapping Table ,
It can include explanations of people's roles, groups, organizations, projects, concepts, etc., as contextual supplementation between multiple Agent work sessions. Do not use tables.
About 4-Task Pool,
It should include
- the things I assign to others and the follow-up status of each item
- Things others have assigned to me and the follow-up status of each item
- A complete timeline of event assignments (including the above two types, and "others assigned to others").
- Links to key documents and images (if thumbnail is shortened, list the source group chat/one-on-one chat and the surrounding messages, and I can find them myself.)
- Unclaimed tasks (tasks with no one responding)
Items can be recorded in the following format:
<时间> 交代人 -> 接收人 <事项>
- 来源群或单聊:XXX
- 交付物
- 是否确认和认可
- 后续状态