Token导航 LogoToken导航TokenDH.com
研究检索只读github未标认证来源可访问许可证需确认审计通过

learn学习

Agent Skill

learn 用于查找、检索和筛选相关信息,适合在 Codex、Claude、Cursor、Gemini CLI 中需要根据关键词、任务场景或来源线索快速定位候选结果时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

总安装

2,910

周安装

125

GitHub Stars

321

下载量

1,020
CodexClaudeCursorGemini CLI

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

GitHub

来源数

2

许可证

unknown

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:learn(学习)
来源仓库:https://github.com/boshu2/agentops
仓库路径:skills/learn
安装命令:
npx skills add https://github.com/boshu2/agentops --skill learn
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 npx skills 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

skills.shnpx skills
npx skills add https://github.com/boshu2/agentops --skill learn

简介

learn 用于手动捕获知识点,加速知识飞轮积累过程。

  • 适合在 Codex、Claude、Cursor、Gemini CLI 中记录临时洞察或经验。
  • 支持 --global 参数写入全局知识库,--promote 标记已推广内容。
  • 输出文件带 promoted_to: 元数据,便于后续清理重复条目。
  • learn 属于研究检索类 Skill,可作为该场景下的辅助能力补充。

SKILL.md

Learn Skill

YOU MUST EXECUTE THIS WORKFLOW. Do not just describe it.

Capture knowledge manually for future sessions. Fast path to feed the knowledge flywheel without running a full retrospective.

Flags

FlagDefaultDescription
--globaloffWrite to ~/.agents/learnings/ instead of .agents/knowledge/pending/. Use for knowledge that applies across all projects.
--promoteoffPromote a local learning to global. Reads local file, abstracts repo context, writes to ~/.agents/learnings/, marks local with promoted_to:.
When to use --global: Use for knowledge that applies across all your projects (e.g., language patterns, tooling preferences, debugging techniques). Use default (no flag) for repo-specific knowledge (e.g., architecture decisions, local conventions). When to use --promote: Use when an existing local learning turns out to be transferable. The skill reads the local file, rewrites it to remove repo-specific references, writes the abstracted version to ~/.agents/learnings/, and marks the local copy with promoted_to: frontmatter so ao inject skips it.

Execution Steps

Given /learn [content]:

Step 1: Get the Learning Content

If content provided as argument: Use it directly.

If no argument: Ask the user via AskUserQuestion: "What did you learn or want to remember?" Then collect the content in free text.

Step 2: Classify the Knowledge Type

Use AskUserQuestion to ask which type:

Tool: AskUserQuestion
Parameters:
  questions:
    - question: "What type of knowledge is this?"
      header: "Type"
      multiSelect: false
      options:
        - label: "decision"
          description: "A choice that was made and why"
        - label: "pattern"
          description: "A reusable approach or technique"
        - label: "learning"
          description: "Something new discovered (default)"
        - label: "constraint"
          description: "A rule or limitation to remember"
        - label: "gotcha"
          description: "A pitfall or trap to avoid"

Default to "learning" if user doesn't choose.

Step 3: Generate Slug

Create a slug from the content:

  • Take the first meaningful words (skip common words like "use", "the", "a")
  • Lowercase
  • Replace spaces with hyphens
  • Max 50 characters
  • Remove special characters except hyphens

Check for collisions:

# If file exists, append -2, -3, etc.
slug="<generated-slug>"
counter=2
if [[ "$GLOBAL" == "true" ]]; then
  base_dir="$HOME/.agents/learnings"
else
  base_dir=".agents/knowledge/pending"
fi
while [ -f "${base_dir}/$(date +%Y-%m-%d)-${slug}.md" ]; do
  slug="<generated-slug>-${counter}"
  ((counter++))
done

Step 4: Create Knowledge Directory

# If --global: write to global patterns (cross-repo)
# Otherwise: write to local knowledge (repo-specific)
if [[ "$GLOBAL" == "true" ]]; then
  mkdir -p ~/.agents/learnings
else
  mkdir -p .agents/knowledge/pending
fi

Step 5: Write Knowledge File

Path:

  • Default: .agents/knowledge/pending/YYYY-MM-DD-<slug>.md
  • With --global: ~/.agents/learnings/YYYY-MM-DD-<slug>.md

Format:

---
type: <classification>
source: manual
date: YYYY-MM-DD
---

# Learning: <short title>

**ID**: L1
**Category**: <classification>
**Confidence**: medium

## What We Learned

<content>

## Source

Manual capture via /learn

Example:

---
type: pattern
source: manual
date: 2026-02-16
---

# Learning: Token Bucket Rate Limiting
**ID**: L1
**Category**: pattern
**Confidence**: high

## What We Learned

Use token bucket pattern for rate limiting instead of fixed windows. Allows burst traffic while maintaining average rate limit. Implementation: bucket refills at constant rate, requests consume tokens, reject when empty.

Key advantage: smoother user experience during brief bursts.

## Source

Manual capture via /learn

Step 5.5: Abstraction Lint Check (global writes only)

If --global or --promote: After writing the file, grep for repo-specific indicators:

file="<path-to-written-file>"
leaks=""
leaks+=$(grep -iEn '(internal/|cmd/|\.go:|/pkg/|/src/|AGENTS\.md|CLAUDE\.md)' "$file" 2>/dev/null)
leaks+=$(grep -En '[A-Z][a-z]+[A-Z][a-z]+\.(go|py|ts|rs)' "$file" 2>/dev/null)
leaks+=$(grep -En '\./[a-z]+/' "$file" 2>/dev/null)

If any matches found: WARN the user by showing the matched lines and asking whether to proceed or revise. This does NOT block — it catches obvious repo-specific references like athena/internal/validate/audit.go:32.

If no matches: proceed silently.

Step 5.6: Promote Flow (--promote only)

Given /learn --promote <path-to-local-learning>:

  1. Read the local learning file
  2. Rewrite content to remove repo-specific references (file paths, function names, package names, internal architecture). Preserve the core insight.
  3. Generate slug from the abstracted content
  4. Write abstracted version to ~/.agents/learnings/YYYY-MM-DD-<slug>.md
  5. Run abstraction lint check (Step 5.5)
  6. Add promoted_to: frontmatter to the local file: --- promoted_to: ~/.agents/learnings/YYYY-MM-DD-<slug>.md --- ao inject skips learnings with promoted_to: set, preventing double-counting.
  7. Confirm: "Promoted to global: ~/.agents/learnings/YYYY-MM-DD-<slug>.md"

Step 6: Integrate with ao CLI (if available)

Check if ao is installed:

if command -v ao &>/dev/null; then
  echo "✓ Knowledge saved to <path>"
  echo ""
  echo "To move this into cached memory now:"
  echo "  ao pool ingest <path>"
  echo "  ao pool list --status pending"
  echo "  ao pool stage <candidate-id>"
  echo "  ao pool promote <candidate-id>"
  echo ""
  echo "Or let hooks run close-loop automation."
else
  echo "✓ Knowledge saved to <path>"
  echo ""
  echo "Note: Install ao CLI to enable automatic knowledge flywheel."
fi

Do NOT auto-run promotion commands. The user should decide when to stage/promote.

Note: If --global or --promote is set, skip ao CLI integration. Global learnings are discovered directly by ao inject from ~/.agents/learnings/.

Step 7: Confirm to User

Tell the user:

Learned: <one-line summary from content>

Saved to: .agents/knowledge/pending/YYYY-MM-DD-<slug>.md
Type: <classification>

This capture is queued for flywheel ingestion; once promoted it is available via /research and /inject.

Key Rules

  • Be concise - This is for quick captures, not full retrospectives
  • Preserve user's words - Don't rephrase unless they ask
  • Use simple slugs - Clear, descriptive, lowercase-hyphenated
  • Ingest-compatible format - Include # Learning: block with category/confidence
  • No auto-promotion - User controls quality pool workflow

Examples

Quick Pattern Capture

User says: /learn "use token bucket for rate limiting"

What happens:

  1. Agent has content from argument
  2. Agent asks for classification via AskUserQuestion
  3. User selects "pattern"
  4. Agent generates slug: token-bucket-rate-limiting
  5. Agent creates .agents/knowledge/pending/2026-02-16-token-bucket-rate-limiting.md
  6. Agent writes frontmatter + content
  7. Agent checks for ao CLI, informs user about ao pool ingest + stage/promote options
  8. Agent confirms: "Learned: Use token bucket for rate limiting. Saved to.agents/knowledge/pending/2026-02-16-token-bucket-rate-limiting.md"

Interactive Capture

User says: /learn

Agent asks for content and type, generates slug never-eval-hooks, creates .agents/knowledge/pending/2026-02-16-never-eval-hooks.md, confirms save.

Gotcha Capture

User says: /learn "bd dep add A B means A depends on B, not A blocks B"

Agent classifies as "gotcha", generates slug bd-dep-direction, creates file in pending, confirms save.

Troubleshooting

ProblemCauseSolution
Slug collisionSame topic on same dayAppend -2, -3 counter automatically
Content too longUser pasted large blockAccept it. /learn has no length limit. Suggest /retro for structured extraction if very large.
ao pool ingest/stage failsCandidate ID mismatch or ao not installedShow exact next commands (ingest, list, stage, promote) and confirm file was saved
Duplicate knowledgeSame insight already capturedCheck existing files with grep before writing. If duplicate, tell user and show existing path.

The Flywheel

Manual captures feed the same flywheel as automatic extraction:

/learn → .agents/knowledge/pending/ → ao pool ingest → .agents/learnings/ → /inject

This skill is for quick wins. For deeper reflection, use /retro.

适合场景

01

用户想查找某类 Agent Skill 时

02

需要根据任务场景推荐可安装能力包时

03

需要对比不同来源的安装命令和来源信息时

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

保留来源站点、仓库和原始说明,方便继续核验

能力 4

展示第三方安全扫描或审计结果

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

Codex

36.3%
按下载量换算370

Claude

33.33%
按下载量换算340

Cursor

17.38%
按下载量换算177

Gemini CLI

9.01%
按下载量换算92

安全审计

Gen Agent Trust Hub

通过

Socket

通过

Snyk

通过

权限和风险

只读

该 Skill 主要提供规则、说明或参考内容,本身偏只读;真正读写文件、联网或执行命令仍取决于宿主 Agent 的任务。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。当前只有一个来源,正式发布前建议补源仓库或其他目录站核验。

来源信息

继续浏览同类 Skills