npx skills add https://github.com/boshu2/agentops --skill forge通常通过 SessionEnd 钩子自动运行。
从会话记录中提取知识。
SessionEnd 钩子运行时执行:
ao forge transcript --last-session --queue --quiet
这将会话加入队列,等待知识提取。
| 标志 | 默认值 | 描述 |
|---|---|---|
--promote | 关闭 | 处理 .agents/knowledge/pending/ 中的待处理提取项,并提升到 .agents/learnings/。整合了原有的提取技能功能。 |
给定 /forge --promote:
广告位招租
在这里展示您的产品或服务
触达数万 AI 开发者,精准高效
ls -lt .agents/knowledge/pending/*.md 2>/dev/null
ls -lt .agents/ao/pending.jsonl 2>/dev/null
如果未找到待处理文件,则报告“没有待处理的提取项”并退出。
对于 .agents/knowledge/pending/ 中的每个文件:
# Learning:、**Category**:、**Confidence**:).agents/learnings/(保留文件名).agents/knowledge/pending/ 中删除源文件if [ -f .agents/ao/pending.jsonl ] && [ -s .agents/ao/pending.jsonl ]; then
# 处理每个已排队的会话
cat .agents/ao/pending.jsonl
# 处理后清空队列
> .agents/ao/pending.jsonl
fi
Promoted N learnings from pending → .agents/learnings/
Queue cleared.
完成。 报告后立即返回。
给定 /forge [路径]:
使用 ao CLI:
# 挖掘最近的会话
ao forge transcript --last-session
# 挖掘特定记录
ao forge transcript <路径>
没有 ao CLI: 查看最近的对话历史并手动提取学习内容。
在记录中查找以下模式:
| 类型 | 信号词 | 权重 |
|---|---|---|
| 决策 | "decided to"、"chose"、"went with" | 0.8 |
| 学习 | "learned that"、"discovered"、"realized" | 0.9 |
| 失败 | "failed because"、"broke when"、"didn't work" | 1.0 |
| 模式 | "always do X"、"the trick is"、"pattern:" | 0.7 |
写入到: .agents/forge/YYYY-MM-DD-forge.md
# Forged: YYYY-MM-DD
## Decisions
- [D1] <decision made>
- Source: <where in conversation>
- Confidence: <0.0-1.0>
## Learnings
- [L1] <what was learned>
- Source: <where in conversation>
- Confidence: <0.0-1.0>
## Failures
- [F1] <what failed and why>
- Source: <where in conversation>
- Confidence: <0.0-1.0>
## Patterns
- [P1] <reusable pattern>
- Source: <where in conversation>
- Confidence: <0.0-1.0>
if command -v ao &>/dev/null; then
ao forge markdown .agents/forge/YYYY-MM-DD-forge.md 2>/dev/null
else
# 没有 ao CLI:将高置信度的候选内容自动提升为学习内容
mkdir -p .agents/learnings .agents/ao
for f in .agents/forge/YYYY-MM-DD-*.md; do
[ -f "$f" ] || continue
# 提取置信度(数值型或分类)
CONF=$(grep -i "confidence:" "$f" | head -1 | awk '{print $NF}')
# 将分类转换为数值:high=0.9, medium=0.6, low=0.3
case "$CONF" in
high) CONF_NUM=0.9 ;; medium) CONF_NUM=0.6 ;; low) CONF_NUM=0.3 ;; *) CONF_NUM=$CONF ;;
esac
# 如果置信度 >= 0.7 则自动提升
if (( $(echo "$CONF_NUM >= 0.7" | bc -l) )); then
cp "$f" .agents/learnings/
TITLE=$(head -1 "$f" | sed 's/^# //')
echo "{\"file\": \".agents/learnings/$(basename $f)\", \"title\": \"$TITLE\", \"keywords\": [], \"timestamp\": \"$(date -Iseconds)\"}" >> .agents/ao/search-index.jsonl
echo "Auto-promoted (confidence $CONF): $(basename $f)"
fi
done
echo "Forge indexing complete (ao CLI not available — high-confidence candidates auto-promoted)"
fi
告知用户:
锻造的候选内容从第 0 级开始:
Transcript → /forge → .agents/forge/ (Tier 0)
↓
Human review or 2+ citations
OR auto-promote (confidence >= 0.7, ao-free fallback)
↓
.agents/learnings/ (Tier 1)
钩子触发: 会话结束时运行 session-end.sh
发生的情况:
ao forge transcript --last-session --queue --quiet.agents/ao/pending.jsonl 队列/forge --promote 来处理队列结果: 会话记录自动加入队列等待知识提取,无需用户操作。
用户说: /forge <路径> 或 "mine this transcript for knowledge"
发生的情况:
ao forge transcript --last-session.agents/forge/YYYY-MM-DD-forge.mdao forge markdown 为 forge 输出建立索引结果: 记录被挖掘以获取可重用知识,候选内容已准备好供人工审核或通过 2+ 次引用进行提升。
| 问题 | 原因 | 解决方案 |
|---|---|---|
| 未找到提取项 | 记录缺少知识信号或 ao CLI 不可用 | 检查记录是否包含决策/学习内容;验证 ao CLI 是否已安装 |
| 置信度评分低 | 信号弱或对话模糊 | 将会话重点放在具体决策和明确的学习内容上 |
| forge --queue 失败 | CLI 不可用或权限错误 | 手动将会话元数据追加到 .agents/ao/pending.jsonl |
| 重复的 forge 输出 | 同一会话被多次锻造 | 写入前检查 forge 文件名;ao CLI 会自动处理去重 |
每周安装量
195
仓库
GitHub 星标数
198
首次出现
2026年2月2日
安全审计
安装于
codex193
claude-code192
opencode191
github-copilot191
kimi-cli191
gemini-cli191
Typically runs automatically via SessionEnd hook.
Extract knowledge from session transcripts.
The SessionEnd hook runs:
ao forge transcript --last-session --queue --quiet
This queues the session for knowledge extraction.
| Flag | Default | Description |
|---|---|---|
--promote | off | Process pending extractions from .agents/knowledge/pending/ and promote to .agents/learnings/. Absorbs the former extract skill. |
Given /forge --promote:
ls -lt .agents/knowledge/pending/*.md 2>/dev/null
ls -lt .agents/ao/pending.jsonl 2>/dev/null
If no pending files found, report "No pending extractions" and exit.
For each file in .agents/knowledge/pending/:
# Learning:, **Category**:, **Confidence**:).agents/learnings/ (preserving filename).agents/knowledge/pending/if [ -f .agents/ao/pending.jsonl ] && [ -s .agents/ao/pending.jsonl ]; then
# Process each queued session
cat .agents/ao/pending.jsonl
# After processing, clear the queue
> .agents/ao/pending.jsonl
fi
Promoted N learnings from pending → .agents/learnings/
Queue cleared.
Done. Return immediately after reporting.
Given /forge [path]:
With ao CLI:
# Mine recent sessions
ao forge transcript --last-session
# Mine specific transcript
ao forge transcript <path>
Without ao CLI: Look at recent conversation history and extract learnings manually.
Look for these patterns in the transcript:
| Type | Signals | Weight |
|---|---|---|
| Decision | "decided to", "chose", "went with" | 0.8 |
| Learning | "learned that", "discovered", "realized" | 0.9 |
| Failure | "failed because", "broke when", "didn't work" | 1.0 |
| Pattern | "always do X", "the trick is", "pattern:" | 0.7 |
Write to: .agents/forge/YYYY-MM-DD-forge.md
# Forged: YYYY-MM-DD
## Decisions
- [D1] <decision made>
- Source: <where in conversation>
- Confidence: <0.0-1.0>
## Learnings
- [L1] <what was learned>
- Source: <where in conversation>
- Confidence: <0.0-1.0>
## Failures
- [F1] <what failed and why>
- Source: <where in conversation>
- Confidence: <0.0-1.0>
## Patterns
- [P1] <reusable pattern>
- Source: <where in conversation>
- Confidence: <0.0-1.0>
if command -v ao &>/dev/null; then
ao forge markdown .agents/forge/YYYY-MM-DD-forge.md 2>/dev/null
else
# Without ao CLI: auto-promote high-confidence candidates to learnings
mkdir -p .agents/learnings .agents/ao
for f in .agents/forge/YYYY-MM-DD-*.md; do
[ -f "$f" ] || continue
# Extract confidence (numeric or categorical)
CONF=$(grep -i "confidence:" "$f" | head -1 | awk '{print $NF}')
# Normalize categorical to numeric: high=0.9, medium=0.6, low=0.3
case "$CONF" in
high) CONF_NUM=0.9 ;; medium) CONF_NUM=0.6 ;; low) CONF_NUM=0.3 ;; *) CONF_NUM=$CONF ;;
esac
# Auto-promote if confidence >= 0.7
if (( $(echo "$CONF_NUM >= 0.7" | bc -l) )); then
cp "$f" .agents/learnings/
TITLE=$(head -1 "$f" | sed 's/^# //')
echo "{\"file\": \".agents/learnings/$(basename $f)\", \"title\": \"$TITLE\", \"keywords\": [], \"timestamp\": \"$(date -Iseconds)\"}" >> .agents/ao/search-index.jsonl
echo "Auto-promoted (confidence $CONF): $(basename $f)"
fi
done
echo "Forge indexing complete (ao CLI not available — high-confidence candidates auto-promoted)"
fi
Tell the user:
Forged candidates enter at Tier 0:
Transcript → /forge → .agents/forge/ (Tier 0)
↓
Human review or 2+ citations
OR auto-promote (confidence >= 0.7, ao-free fallback)
↓
.agents/learnings/ (Tier 1)
Hook triggers: session-end.sh runs when session ends
What happens:
ao forge transcript --last-session --queue --quiet.agents/ao/pending.jsonl queue/forge --promote to process the queueResult: Session transcript automatically queued for knowledge extraction without user action.
User says: /forge <path> or "mine this transcript for knowledge"
What happens:
ao forge transcript --last-session.agents/forge/YYYY-MM-DD-forge.mdao forge markdownResult: Transcript mined for reusable knowledge, candidates ready for human review or 2+ citations promotion.
| Problem | Cause | Solution |
|---|---|---|
| No extractions found | Transcript lacks knowledge signals or ao CLI unavailable | Check transcript contains decisions/learnings; verify ao CLI installed |
| Low confidence scores | Weak signals or vague conversation | Focus sessions on concrete decisions and explicit learnings |
| forge --queue fails | CLI not available or permission error | Manually append to .agents/ao/pending.jsonl with session metadata |
| Duplicate forge outputs | Same session forged multiple times | Check forge filenames before writing; ao CLI handles dedup automatically |
Weekly Installs
195
Repository
GitHub Stars
198
First Seen
Feb 2, 2026
Security Audits
Gen Agent Trust HubPassSocketPassSnykPass
Installed on
codex193
claude-code192
opencode191
github-copilot191
kimi-cli191
gemini-cli191
AI Elements:基于shadcn/ui的AI原生应用组件库,快速构建对话界面
56,200 周安装
阿里云云防火墙管理技能:使用OpenAPI和SDK自动化安全配置
242 周安装
Salesforce AI 可视化技能:Nano Banana Pro 生成 ERD、架构图与 UI 线框图
242 周安装
发票图像OCR读取技能 - 自动提取结构化数据,支持PDF/图片双重验证
242 周安装
WPS文字智能助手使用指南 - 24个工具解决Word文档排版、格式、目录问题
242 周安装
sdd:brainstorm - 创意协作对话工具,将创意转化为完整设计与规范
242 周安装
阿里云Data Lake Formation管理工具 - 使用OpenAPI和SDK管理数据湖资源
242 周安装