self-learn
Skill6 starsChanged 28 days agoMITView on GitHub
Turn problems hit while editing in BashCut into lasting fixes: lessons (symptom, cause, fix), preferences, project facts, project skills, or a proposed kit change. Use after a failed or redone step, a user correction, or at session end. Triggers: "rút kinh nghiệm", "học từ lỗi này", "nhớ lần sau", "lần sau đừng", "cập nhật skill", "self-learn".
6 other projects use a version of this.
Adopted by
Most recently taken up by
- nurmdrafi/pi-nativetheir own version, first seen Nov 1, 2026
- Moriarty33/jb-kaizentheir own version, first seen Oct 20, 2026
- kun66126/claude-skillstheir own version, first seen Oct 8, 2026
- valpere/session-indexertheir own version, first seen Jul 12, 2026
- Pratiyush/llm-wikitheir own version, first seen Jun 14, 2026
- DAYLAB-HQ/claude-self-learntheir own version, first seen Apr 18, 2026
Other versions6 projects use a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 6
- Pratiyush/llm-wiki★ 383same name
- valpere/session-indexer★ 42same name
- DAYLAB-HQ/claude-self-learn★ 4same name
- nurmdrafi/pi-native★ 4same name
- Moriarty33/jb-kaizen★ 1same name
- kun66126/claude-skills★ 0same name
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository16 other files it gives its agents.
- audio-mixSkill
- beat-cutSkill
- captions-textSkill
- color-gradeSkill
- edit-workflowSkill
- effectsSkill
- footage-surveySkill
- librarySkill
- motion-graphicsSkill
- reviewSkill
- rough-cutSkill
- setupSkill
- stock-imagesSkill
- style-studySkill
- visual-planSkill
- voiceoverSkill
The file
We split this skill into the rules it gives an agent
3 rules. 0 are common, 0 are distinctive, and 3 are very specific to this project.
0
Common
Most of the 5 edited versions we read keep these.
0
Distinctive
This author's own choices. Worth a look.
3
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Very specific: line 10
Run it once the problem is solved (you need the real cause), not mid-step.
- Very specific: line 16
After a process audit (bc:review, "Process audit"), start from its lessons (from the checklist and run log, not your memory), then add what …
- Very specific: line 32
Only what was observed this session (an error, a measurement, the user's words).
“Common” is measured: kept by at least 6 in 10 of the 5 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Self-learn
A problem solved in chat but not written down will happen again.
Run it once the problem is solved (you need the real cause), not mid-step. At the end of a session, sweep for
anything missed, starting from bashcut run log --kind correction: in Claude Code the kit's hook keeps there,
quoted, every user message that reads like a correction (also across a compaction). They are candidates: most
become one lesson, some are one-off instructions. Then bashcut knowledge verdicts: a command whose changes were
undone or edited two or more times is a candidate too; one verdict is not a preference.
After a process audit (bc:review, "Process audit"), start from its lessons (from the checklist and run log, not
your memory), then add what the user corrected.
Worth recording: the user corrects you ("không, dùng X", "thật ra…", "X chứ không phải Y") or rejects a proposed
action; says to remember ("nhớ là…", "lần sau đừng…"); a bashcut command fails or a result had to be redone. A
question, a one-off instruction for this clip or vague feedback ("chưa ổn") is not a lesson.
1. Write the lesson
Symptom → cause → what to do, with the number or error text that proves it.
| Good | Bad |
"Whip transition refused: clips were not adjacent on one layer. Close the gap first (timeline close-gap)." | "Transitions are tricky." |
| "Music dipped 11 dB at every loop: the song has a quiet intro. Trim 2.6 s off its start before repeating." | "Watch the music." |
Only what was observed this session (an error, a measurement, the user's words); a guess is not a lesson.
First search by tag and keyword (knowledge lessons --tag transitions, --query "close-gap"): the same problem is
often worded differently. If it exists, knowledge update-lesson ID --seen (no approval needed) and add the quote
to its evidence when it says something new, instead of a second lesson.
How often and how lately: from occurrences, lastSeen and sources on knowledge lessons rows (older
lessons: count "seen again" lines in the evidence), not your memory:
- sources from two or more projects: move it to every project (
--scope user); - seen three or more times although active: its fix or
--checkdoes not work; rewrite the fix, or propose it to the kit (step 3) when it is about how a skill tells you to work; - a workaround last seen before an app update where the plain way now works: disable it, say so in its evidence. Old alone is never a reason.
2. Put it in the right place
Each session starts with a summary of active lessons, preferences and facts (context get → knowledge).
| About | Goes to |
| This project: what went wrong, how to avoid it | a project lesson (below) |
| This project: people, places, footage notes, what the user approved | a fact: bashcut knowledge set-fact host "Lan, speaks fast" |
| The user's taste (length, pace, voice, style) | a preference: bashcut knowledge set-pref pace calm (every project; waits in the Knowledge inbox, below); --scope project for this one |
| A mistake that will happen in any project | a lesson with --scope user; waits in the user's proposals |
| A workflow repeated two or three times here | a project skill: bashcut skills save NAME FILE (shared with Claude and Codex) |
| A workflow the user repeats in every project | bashcut skills save NAME FILE --scope user (needs the user's approval) |
| A kit rule wrong, missing or too vague | a proposed kit change (step 3) |
| A skill that should have loaded but didn't | its description (add the user's real words), via step 3 |
A plugin's skill (<plugin-id>:<name>) wrong or missing a step | a lesson tagged with the plugin ID, or a project copy (skills get ID, skills save NAME FILE); plugin skills are read-only and come back unchanged with the plugin |
A library item that failed, was undone right after library apply/place, or was corrected | fix, copy or prune it with bc:library ("Look after it"); never remove without a yes |
| BashCut itself (a bug, a missing command or effect) | a note for the BashCut maintainers with the command, input and error |
bashcut knowledge add-lesson "Whip refused on non-adjacent clips" \
--symptom "transition add failed: clips not adjacent" --cause "a 3-frame gap on v1" \
--fix "timeline close-gap before adding a transition" --evidence "rev 41, error text" \
--check "Are the two clips touching on one layer?" \
--tags transitions --status proposed- A case: the rule, the user's words quoted, not paraphrased in
--evidence(a paraphrase lost which title the user meant to hold, and the fix landed on the wrong one), and a--checkquestion for before the next draft ("Does every moment the viewer should remember get a full still hold?"). Feedback unclear about which element: confirm the target before changing anything. - A graphic or effect block: tag
block:<name>(e.g.block:stat-counter) with the value that failed and the range that worked;graphic examples <name>shows it next time (any project for a--scope userlesson). - Status:
active(default) when the cause is proven;--status proposedwhen unsure, so the user reviews it. A lesson for every project is always proposed. - Tags: one or two areas (captions, audio, pacing, color, transitions, export…), so
--tagfinds them. - Keys: short, lowercase, stable (
pace,caption.style,music.genre,host), so a laterset-prefreplaces the value instead of adding a near-duplicate. - Preference for every project:
set-prefusually returns"approval": "proposed": it waits in the Knowledge inbox, not applied yet. Tell the user; do not repeat the command or treat the value as set. A newer proposal for the same key replaces the older one (knowledge proposals).
An unsaved project refuses project writes: save it first. Memos (knowledge memo) hold longer notes such as a
style study's measurements; never append lessons to them. legacy in knowledge get (an older memo from the agent
workspace or home folder): tell the user; the Knowledge sheet can move it.
Wrong or outdated: knowledge update-lesson ID --status disabled (kept for the record) or remove-lesson ID;
set-pref KEY --remove.
Undo a change (yours or one the user wants back) to lessons, preferences, facts, memos or skills: find it in
knowledge history --kind lesson --target LESSON_ID --limit 5, then knowledge revert CHANGE_ID, rather than
re-typing the old value. Reverting an every-project change waits for the user's approval.
Splitting an old memo (memoSplit: pending in knowledge get): only when the user asks (the Knowledge sheet's
Ask the agent to split it button), read the memo and queue a JSON file once: knowledge split-memo entries.json
or knowledge split-memo notes.json --scope user (no facts). One short entry per idea, only what the memo says, in
its language (a Vietnamese memo gives Vietnamese titles, fixes and values; keys and tags stay English). Long notes
such as style measurements stay in the memo; do not edit it.
3. Changing the kit
Installed skills are managed by the plugin system; edits there are lost on update. Instead:
bashcut skills get NAME --scope kit, then change a copy: a few lines, never a rewrite, not a rule already there, each line backed by what happened.- Show it to the user. If they agree and the kit repository is local, apply it there on a branch and open a PR.
Otherwise propose it (it waits in the Knowledge inbox; the installed kit is unchanged):
bashcut skills propose beat-cut SKILL.md --summary "close gaps before a transition" \ --reason "whip refused twice on a 3-frame gap"
Kit 0.1.0 renamed the skills (bashcut-beat-cut is now beat-cut, shown as bc:beat-cut): update old names in
project memos and project skills. Keep skills short: a SKILL.md over ~250 lines moves detail into a REFERENCE.md.
Report
Short: what went wrong → where the lesson went → the lines added. Nothing worth recording: say so in one line.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

