Agent skill

Learn

by sendaifun in sendaifun/solana-new

Manage project learnings across sessions. An agent skill from sendaifun/solana-new.

MITAuto-check passedBusiness, Finance & HR

Install Learn

skills CLI
$ npx skills add sendaifun/solana-new --skill learn -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install sendaifun/solana-new learn --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/sendaifun/solana-new.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/idea/learn .claude/skills/learn && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
learn
GitHub stars
178
Token cost
~2.7k tokens
SKILL.md length
950 words
Files
2
Skills in repo
13
Repo updated
First seen
Licence
MIT

At a glance

Manage project learnings across sessions. An agent skill from sendaifun/solana-new.

  • Works in 5 steps: Read .superstack/learnings.md → If the file does not exist, respond: "No… → Parse all entries across all type sections → …
  • Asked to what have we learned
  • SKILL.md covers Preamble (run first), Commands, Learnings File Format and Command Implementations, plus 3 more sections
  • Calls curl

What it does

Learn is an agent skill from sendaifun/solana-new. Manage project learnings across sessions. Review, search, prune, and export what superstack has learned. Use when asked to "what have we learned", "show learnings", "prune stale learnings", "export learnings", or "remember this". Proactively suggest when the user asks about past patterns or wonders "didn't we fix this before?"

Its SKILL.md is about 2.7k tokens, which your agent loads only when the skill is triggered. The skill folder holds 2 other files (for example `agents/openai.yaml`).

It sits in Business, Finance & HR. The repository describes itself as: think. build. ship. tasteful & useful crypto apps. using a curated skills + knowledge base for AI agents on solana contracts & integrations. The licence is MIT.

When your agent uses it

  • Asked to what have we learned
  • Prune stale learnings
  • Export learnings
  • Asks about past patterns

Example prompts

  • “what have we learned”
  • “show learnings”
  • “prune stale learnings”
  • “/learn”

Workflow steps

5 steps, taken from the first numbered list in SKILL.md.

  1. Read .superstack/learnings.md
  2. If the file does not exist, respond: "No learnings yet. As you use skills, superstack captures patterns and insights automatically. Use…
  3. Parse all entries across all type sections
  4. Display the 20 most recent entries (sorted by Date descending)
  5. Show total count at the bottom: "Showing 20 of N total learnings."

What it can do on your machine

Read from SKILL.md and the folder at commit 38a494a. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • curl

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    Links to these hosts (documentation or services it may open):

    • github.com

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Learn loads about 2.7k tokens when it runs. Until then it costs about 84 tokens; SKILL.md has 950 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~84
When it runs · the whole SKILL.md, loaded when a task matches
~2.7k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from sendaifun/solana-new at commit 38a494a, republished under its MIT licence (© sendaifun). 950 words, ~2,697 tokens.

Download SKILL.mdSave it as .claude/skills/learn/SKILL.md (or your agent's skills folder). This skill also uses 1 other file; get the full folder from GitHub.
name
learn
description
Manage project learnings across sessions. Review, search, prune, and export what superstack has learned. Use when asked to "what have we learned", "show learnings", "prune stale learnings", "export learnings", or "remember this". Proactively suggest when the user asks about past patterns or wonders "didn't we fix this before?"

Preamble (run first)

bash
_TEL_TIER=$(cat ~/.superstack/config.json 2>/dev/null | grep -o '"telemetryTier": *"[^"]*"' | head -1 | sed 's/.*"telemetryTier": *"//;s/"$//'  || echo "anonymous")
_TEL_TIER="${_TEL_TIER:-anonymous}"
_TEL_PROMPTED=$([ -f ~/.superstack/.telemetry-prompted ] && echo "yes" || echo "no")
_TEL_START=$(date +%s)
_SESSION_ID="$$-$(date +%s)"
mkdir -p ~/.superstack
echo "TELEMETRY: $_TEL_TIER"
echo "TEL_PROMPTED: $_TEL_PROMPTED"
if [ "$_TEL_TIER" != "off" ]; then
_TEL_EVENT='{"skill":"learn","phase":"idea","event":"started","ts":"'$(date -u +%Y-%m-%dT%H:%M:%SZ)'"}' 
echo "$_TEL_EVENT" >> ~/.superstack/telemetry.jsonl 2>/dev/null || true
_CONVEX_URL=$(cat ~/.superstack/config.json 2>/dev/null | grep -o '"convexUrl":"[^"]*"' | head -1 | cut -d'"' -f4 || echo "")
[ -n "$_CONVEX_URL" ] && curl -s -X POST "$_CONVEX_URL/api/mutation" -H "Content-Type: application/json" -d '{"path":"telemetry:track","args":{"skill":"learn","phase":"idea","status":"success","version":"0.2.0","platform":"'$(uname -s)-$(uname -m)'","timestamp":'$(date +%s)000'}}' >/dev/null 2>&1 &
true
fi

If TEL_PROMPTED is no: Before starting the skill workflow, ask the user about telemetry. Use AskUserQuestion:

Help superstack get better! We track which skills get used and how long they take — no code, no file paths, no PII. Change anytime in ~/.superstack/config.json.

Options:

  • A) Sure, help superstack improve (anonymous)
  • B) No thanks

If A: run this bash:

bash
echo '{"telemetryTier":"anonymous"}' > ~/.superstack/config.json
_TEL_TIER="anonymous"
touch ~/.superstack/.telemetry-prompted

If B: run this bash:

bash
echo '{"telemetryTier":"off"}' > ~/.superstack/config.json
_TEL_TIER="off"
touch ~/.superstack/.telemetry-prompted

This only happens once. If TEL_PROMPTED is yes, skip this entirely and proceed to the skill workflow.

Wrong skill? See SKILL_ROUTER.md for all available skills.

Adapted from gstack learn skill.

Project Learnings

You manage the project's knowledge base. Learnings are stored in a single human-readable markdown file at .superstack/learnings.md, grouped by type: Patterns, Pitfalls, Preferences, Architecture, and Tools. Each entry has a key, insight, confidence score, source skill, relevant files, and date.

This skill is read/write for the learnings file ONLY. You never modify project code.

Commands

CommandAction
/learnShow recent learnings (last 20 entries across all types)
/learn search <query>Search learnings by keyword
/learn pruneCheck for stale or contradictory entries
/learn exportFormat learnings for CLAUDE.md
/learn statsSummary statistics
/learn addManually add a learning

Learnings File Format

File: .superstack/learnings.md

markdown
# Project Learnings

> Managed by `/learn`. Append-only — latest entry wins on conflicts.

## Patterns

### pda-seed-convention
- **Insight:** Use [program_id, user_pubkey, "vault"] as PDA seeds
- **Confidence:** 8/10
- **Source:** build-with-claude
- **Files:** programs/src/lib.rs
- **Date:** 2026-03-28

## Pitfalls

### cpi-signer-missing
- **Insight:** CPI calls require PDA signer seeds, not just the address
- **Confidence:** 9/10
- **Source:** debug-program
- **Files:** programs/src/instructions/settle.rs
- **Date:** 2026-03-28

## Preferences

(entries here)

## Architecture

(entries here)

## Tools

(entries here)

Each entry follows this structure:

markdown
### kebab-case-key
- **Insight:** One clear sentence describing the learning
- **Confidence:** N/10
- **Source:** skill-name-that-generated-this
- **Files:** relevant/file/path.rs, another/file.ts (optional)
- **Date:** YYYY-MM-DD

Command Implementations

Show Recent (/learn)
  1. Read .superstack/learnings.md
  2. If the file does not exist, respond: "No learnings yet. As you use skills, superstack captures patterns and insights automatically. Use /learn add to manually record something."
  3. Parse all entries across all type sections
  4. Display the 20 most recent entries (sorted by Date descending)
  5. Show total count at the bottom: "Showing 20 of N total learnings."
Search (/learn search <query>)
  1. Read .superstack/learnings.md
  2. Search across all entry fields (key, insight, source, files) for the query string (case-insensitive)
  3. Display all matching entries, grouped by type
  4. If no matches: "No learnings match '{query}'. Try a broader search or check /learn stats for what's recorded."
Prune (/learn prune)
  1. Read all entries from .superstack/learnings.md
  2. For each entry that has a Files field:
    • Use Glob to check if the referenced files still exist
    • If any file is missing, flag the entry as stale
  3. Check for contradictions:
    • Entries with the same key but different insights
    • Entries where one says "do X" and another says "don't do X" on related topics
  4. For each flagged entry, present via AskUserQuestion:
    • A) Remove — delete the entry
    • B) Keep — mark as still valid (update date to today)
    • C) Update — provide a new insight (ask for the updated text)
  5. Apply changes and save the file
Export (/learn export)
  1. Read all entries from .superstack/learnings.md
  2. Format as a clean markdown section:
markdown
## Learnings

Key patterns, pitfalls, and preferences discovered during development.

### Patterns
- **pda-seed-convention:** Use [program_id, user_pubkey, "vault"] as PDA seeds (8/10)
- **another-pattern:** Description here (7/10)

### Pitfalls
- **cpi-signer-missing:** CPI calls require PDA signer seeds, not just the address (9/10)

### Preferences
...

### Architecture
...

### Tools
...
  1. Use AskUserQuestion to ask: "Where should I put the exported learnings?"
    • A) Append to CLAUDE.md — add the section at the end of the project's CLAUDE.md
    • B) Save to .superstack/learnings-export.md — standalone file
    • C) Print only — display without saving
Stats (/learn stats)
  1. Read all entries from .superstack/learnings.md
  2. Compute and display as a table:
MetricValue
Total entriesN
Unique keysN
PatternsN
PitfallsN
PreferencesN
ArchitectureN
ToolsN
Top sourceskill-name (N entries)
Avg confidenceX.X/10
Oldest entryYYYY-MM-DD
Newest entryYYYY-MM-DD
Show full SKILL.md (420 more words)Show less
Manual Add (/learn add)
  1. Use AskUserQuestion to gather each field one at a time:
    • Type: pattern / pitfall / preference / architecture / tool
    • Key: kebab-case identifier (suggest one based on context if possible)
    • Insight: one clear sentence
    • Confidence: 1-10 (suggest a default based on certainty)
    • Files: relevant file paths, comma-separated (optional — offer to skip)
  2. Set Source to manual
  3. Set Date to today
  4. Read .superstack/learnings.md (create with the template header if missing)
  5. Find the correct type section (e.g., ## Patterns)
  6. Check if the key already exists:
    • If yes, append the new entry below the existing one (latest wins)
    • Inform the user: "Updated existing learning '{key}' — latest entry wins."
  7. If no, append the entry at the end of the section
  8. Write the updated file
  9. Confirm: "Added {type} learning '{key}' with {confidence}/10 confidence."

How Other Skills Write Learnings

Other skills (build-with-claude, debug-program, scaffold-project, etc.) should append learnings by following this protocol:

  1. Read .superstack/learnings.md — if it does not exist, create it with this template:
markdown
# Project Learnings

> Managed by `/learn`. Append-only — latest entry wins on conflicts.

## Patterns

## Pitfalls

## Preferences

## Architecture

## Tools
  1. Find the right section — match the type to the heading (## Patterns, ## Pitfalls, etc.)
  2. Append a new entry under that section using the standard format:
markdown
### kebab-case-key
- **Insight:** One clear sentence
- **Confidence:** N/10
- **Source:** skill-name
- **Files:** path/to/file.rs
- **Date:** YYYY-MM-DD
  1. De-duplication: If the same key already exists in the section, append the new entry below it. The latest entry (by date) wins. Do not delete the old entry — it serves as history.

  2. When to write a learning:

    • A non-obvious pattern was discovered during implementation
    • A pitfall was hit and resolved (especially if it cost > 10 minutes)
    • The user expressed a preference ("I prefer X over Y")
    • An architectural decision was made with trade-offs
    • A tool or library was chosen for specific reasons
  3. When NOT to write a learning:

    • Trivial or obvious information
    • Temporary workarounds that will be removed
    • Information already in the project's README or CLAUDE.md

Non-Negotiables

  • NEVER modify project code. This skill manages learnings only.
  • Always use AskUserQuestion before removing or modifying existing entries.
  • Append-only by default — latest entry for a given key wins. Old entries are history.
  • Check file existence before claiming a learning is current (use Glob on referenced files).
  • Respect the format — other skills and tools parse this file programmatically.
  • No silent writes — always confirm with the user what was added or changed.

Telemetry (run last)

After the skill workflow completes (success, error, or abort), log the telemetry event. Determine the outcome from the workflow result: success if completed normally, error if it failed, abort if the user interrupted.

Run this bash:

bash
_TEL_END=$(date +%s)
_TEL_DUR=$(( _TEL_END - ${_TEL_START:-$_TEL_END} ))
_TEL_TIER=$(cat ~/.superstack/config.json 2>/dev/null | grep -o '"telemetryTier": *"[^"]*"' | head -1 | sed 's/.*"telemetryTier": *"//;s/"$//' || echo "anonymous")
if [ "$_TEL_TIER" != "off" ]; then
echo '{"skill":"learn","phase":"idea","event":"completed","outcome":"OUTCOME","duration_s":"'"$_TEL_DUR"'","session":"'"$_SESSION_ID"'","ts":"'$(date -u +%Y-%m-%dT%H:%M:%SZ)'","platform":"'$(uname -s)-$(uname -m)'"}' >> ~/.superstack/telemetry.jsonl 2>/dev/null || true
true
fi

Replace OUTCOME with success/error/abort based on the workflow result.

© sendaifun, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 1 other file in skills/idea/learn of sendaifun/solana-new.

  • SKILL.md
  • agents/openai.yaml

Open the folder on GitHubat commit 38a494a

Compare with similar skills

Learn next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Learn compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Learn this skillsendaifun/solana-new178—~2.7kAutomated safety check: PassMIT
Technical Analysttradermonty/claude-trading-skills3k4 repos~4.6kAutomated safety check: PassMIT
Theme Detectortradermonty/claude-trading-skills3k2 repos~4.9kAutomated safety check: PassMIT
Creating Financial ModelsChen-zexi/open-ptc-agent7293 repos~1.3kAutomated safety check: PassMIT
Stock APIzhangxiangliang/stock-api2k—~507Automated safety check: PassMIT
Itr Walakaranb192/itr-wala871—~3.6kAutomated safety check: PassMIT

Similar skills

  • Technical Analyst

    tradermonty/claude-trading-skills

    This skill should be used when analyzing weekly price charts for stocks, stock indices, cryptocurrencies, or forex pairs.

    3k GitHub starsUsed in 4 repos~4.6k tokens
    Business, Finance & HRAuto-check passed
  • Theme Detector

    tradermonty/claude-trading-skills

    Detect and analyze trending market themes across sectors. An agent skill from tradermonty/claude-trading-skills.

    3k GitHub starsUsed in 2 repos~4.9k tokens
    Business, Finance & HRAuto-check passed
  • Creating Financial Models

    Chen-zexi/open-ptc-agent

    This skill provides an advanced financial modeling suite with DCF analysis, sensitivity testing, Monte Carlo simulations, and scenario planning for investment decisions

    729 GitHub starsUsed in 3 repos~1.3k tokens
    Business, Finance & HRAuto-check passed
  • Stock API

    zhangxiangliang/stock-api

    Fetch real-time stock quotes, K-line (candlestick) history, and search symbols for China A-shares, Hong Kong, and US markets.

    2k GitHub stars~507 tokensUpdated yesterday
    Business, Finance & HRAuto-check passed
  • Itr Wala

    karanb192/itr-wala

    File Indian income tax returns (ITR) for FY 2025-26 / AY 2026-27.

    871 GitHub stars~3.6k tokensUpdated 5 days ago
    Business, Finance & HRAuto-check passed
  • Tushare Data

    zillionare/zillionare

    面向中文自然语言的 Tushare 数据研究技能。用于把“看看这只股票最近怎么样”“帮我查财报趋势”“最近哪个板块最强”“北向资金在买什么”“给我导出一份行情数据”这类请求,转成可执行的数据获取、清洗、对比、筛选、导出与简要分析流程。适用于 A 股、指数、ETF/基金、财务、估值、资金流、公告新闻、板块概念与宏观数据等研究场景。

    321 GitHub starsUsed in 2 repos~2.3k tokens
    Business, Finance & HRAuto-check passed

More from sendaifun/solana-new

All 13 skills in this repo
  • Find Next Crypto Idea

    sendaifun/solana-new

    Interview users sharply to discover, rank, or validate what they should build in crypto.

    178 GitHub stars~2.5k tokensUpdated 7 days ago
    Auto-check passed
  • Colosseum Copilot

    sendaifun/solana-new

    Search and analyze 5,400+ Solana hackathon projects using Colosseum Copilot.

    178 GitHub stars~2.9k tokensUpdated 7 days ago
    Auto-check passed
  • Competitive Landscape

    sendaifun/solana-new

    Map the competitive landscape for a crypto product idea. An agent skill from sendaifun/solana-new.

    178 GitHub stars~1.7k tokensUpdated 7 days ago
    Auto-check passed
  • Defillama Research

    sendaifun/solana-new

    Research DeFi protocols and market opportunities using DefiLlama data.

    178 GitHub stars~1.8k tokensUpdated 7 days ago
    Auto-check passed
  • Deploy To Mainnet

    sendaifun/solana-new

    Guide a Solana project from devnet to mainnet production deployment.

    178 GitHub stars~1.8k tokensUpdated 7 days ago
    Auto-check passed
  • Solana Beginner

    sendaifun/solana-new

    Teach Solana fundamentals to developers new to the ecosystem.

    178 GitHub stars~2.4k tokensUpdated 7 days ago
    Auto-check passed

Questions about Learn

What does Learn do?

Manage project learnings across sessions. An agent skill from sendaifun/solana-new. Learn is an agent skill from sendaifun/solana-new. Manage project learnings across sessions.

When should I use Learn?

Learn fits situations like: asked to what have we learned; prune stale learnings; export learnings; asks about past patterns.

How do I install Learn in Claude Code?

Run `npx skills add sendaifun/solana-new --skill learn -a claude-code`. Or copy the skill folder (skills/idea/learn in sendaifun/solana-new) into .claude/skills/learn in your project. Claude Code loads it when a task matches its description.

How do I install Learn in Codex?

Run `npx skills add sendaifun/solana-new --skill learn -a codex`. Or copy the skill folder (skills/idea/learn in sendaifun/solana-new) into .agents/skills/learn in your project. Codex loads it when a task matches its description.

Can I use Learn in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add sendaifun/solana-new --skill learn -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/learn, .gemini/skills/learn, .github/skills/learn and .opencode/skills/learn in your project.

What does Learn need to run?

Going by SKILL.md and its folder, Learn needs the command-line tools its instructions call (curl).

Does Learn access the network?

SKILL.md names 1 domain. As links in the text: github.com. This is read from the text; nothing was executed.

Is Learn safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Learn use?

Learn is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Learn use?

About 2.7k tokens (SKILL.md is roughly 11k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Learn?

Skills that share tags, products or a category with Learn: Technical Analyst (tradermonty/claude-trading-skills, 3k stars), Theme Detector (tradermonty/claude-trading-skills, 3k stars), Creating Financial Models (Chen-zexi/open-ptc-agent, 729 stars) and Stock API (zhangxiangliang/stock-api, 2k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Learn?

sendaifun (a GitHub organization) maintains it in sendaifun/solana-new, which has 178 GitHub stars. The repository holds 13 skills in this directory. The repository was last updated on October 2, 2026.

Source: sendaifun/solana-new on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.