SuperAPI AI 工具集

chat-history

办公与效率

查看项目

更新于 10-16 01:14

技能介绍

用途:该技能从 Claude Code 会话历史中提取用户输入,整理到项目的 .chats 目录,按日期生成 Markdown 文件,便于记录会话、导出对话、生成按日期的指令日志或维护交互变更记录。

主要能力:Claude Code 将会话数据存于 ~/.claude/projects/{项目路径编码}/ 下的 .jsonl 文件,每条消息含 type、userType、message.content 等字段。该技能筛选出有意义的用户指令(排除系统命令、工具结果和会话续接),按日期写入 .chats/{YYYYMMDD}.md。

使用方式:先由当前工作目录推导会话目录(路径中 / 替换为 -,并加前缀 -),例如 /Users/tchen/projects/tubi/titc 对应 ~/.claude/projects/-Users-tchen-projects-tubi-titc/。再按修改日期列出会话文件,排除 agent-* 文件。用 jq 提取用户消息:cat {session-file}.jsonl | jq -r 'select(.type == "user" and .userType == "external" and (.isMeta | not)) | .message.content | if type == "string" then . else empty end',并过滤以 Caveat:、<command、<local-command、This session is being continued、<user-prompt-submit-hook>、Analysis: 开头的行及空行。随后创建或更新 .chats 文件,格式以 # Instructions 开头,每个主要任务用 ## 标题,保留代码块与格式。最后可执行 git add .chats/*.md 与 git commit -m "docs(chats): add session history for {date range}" 提交。

适用场景:需要归档 Claude 会话、导出用户输入、按日期整理指令日志时。

限制:agent-*.jsonl 为子代理会话,通常不含直接用户输入;主会话文件为 UUID 命名;message.content 可能是字符串或数组;提交前应人工核对提取内容。