yunzeforbetter/castflow/origin-evolve-skill
Claude Code and agent skill by yunzeforbetter/castflow
- community
Checking that the SKILL.md file is still in the repository.
Distill trace.md memory snapshots into skill rules. Use when the user says origin evolve or an evolve-reminder fired. NOT generating new module skills (skill-creator).
Install
npx vskill@latest install yunzeforbetter/castflow/origin-evolve-skillSKILL.md
Origin Evolve
Turn pending memory snapshots in .castflow-runtime/traces/trace.md into approved skill updates. A project skill is written under castflow-skills/<name>/, including a later update of that skill. Never write a project skill under .castflow-runtime/skills/ (cold start replaces that tree). Never write a factory-owned skill. Never write adapter mirrors. After writes: python .castflow/manager.py sync.
Trigger: origin evolve (or the same intent). Never run unprompted.
Yield
- Install / UI ->
castflow.bat/manager.py launch(not a skill) - Create a new module skill -> the pasted
/goalprompt (MODULE_MARK_SYSTEM_PROMPT.md) - Requirement to a runnable long task -> goal-loop-creator
- Feature work in a module -> that programmer-*-skill
Nav
| Need | See | |
|---|---|---|
| Proposal examples | EXAMPLES.md | |
| Evidence / attribution / ops | SKILL_MEMORY.md | |
| When to edit this skill | ITERATION_GUIDE.md |
Trace (schema:4)
Hook-generated ledger. Fields: timestamp, type, validated, quality, gate_hint, memory_snapshots, plus MEMORY subblocks with skill, anchors, quality. Read-only. Ignore legacy score / modules / pipeline_run_id / pending-pipeline.
Eligible (MEMORY grain)
validated does not grant eligibility. It only sorts already-eligible items and counts the TRACE toward notify.
homologous_count(m) is the size of m's connected component from python .castflow/manager.py homology (includes self). Singleton size is 1.
Do not invent Jaccard in this skill. Do not spawn one Python process per pair.
Flow
Step 0. If .castflow-runtime/traces/.trace_memory_snapshots exists, run python .castflow/manager.py flush before taking .trace_lock. Then create .trace_lock. If the snapshot store still exists, abort (do not call flush while holding the lock).
Step 1. Keep pending only. Do not expire on validated:_. Leftover pending-pipeline -> invalid. Abort if any schema:N with N > 4.
Cluster MEMORY subblocks with one manager.py homology call. Priority among eligible only: P0 TRACE validated:false; P1 feedback+ok; P2 clustered waiting. Skip ineligible.
Step 2. Read each eligible <!-- MEMORY -->. Verify named APIs still exist. Dedup against the target SKILL_MEMORY.
Step 3. Each proposal: Append / Merge / Retire, target skill+file, full text, evidence timestamps + slugs, risk. Proposal sentences use .castflow-runtime/config.json language (missing or en is English, zh is Chinese). A non-programmer entry keeps the Anchors: and Related: labels. A programmer-*-skill entry is a rule One generation pass would keep: an implicit rule, a convention, or a file locator the examples do not already state. Do not write a call shape, a line number, or a signature-gap body into that skill. Update a locator only when its script file is added, removed, renamed, or the feature moves to another file, not because the implementation inside an existing script changed. If SKILL_MEMORY.md is absent, the first real entry creates it. Do not create it empty, and do not invent a rule so the file exists. Capacity 2000 words (SKILL_MEMORY / cross-cutting). Retire a non-programmer entry, or a programmer rule, when grep shows its anchors are gone. Retire a programmer locator when its script file is gone. Attribution: (1) whitelisted skill: field (2) anchors hit exactly one project skill (3) 1 and 2 disagree -> user pick (4) anchors hit >=2 project skills -> .castflow-runtime/rules/cross-cutting.md (5) none -> do not write, leave waiting. Never write .claude/rules/ business rules. Never write GLOBAL, AGENTS.md, CLAUDE.md, hooks, or this skill. A project-wide convention is a suggestion to edit the AGENTS.md project section, not a write.
Step 4. One proposal at a time. Rejection writes EVOLVE_REJECTION.
Step 5. Atomic write of a project skill only, under castflow-skills/<name>/ (create the directory if this is the first file). Do not write .castflow-runtime/skills/<name>/, and do not write a factory-owned name there or in castflow-skills/. A same-named castflow-skills/ directory does not replace a factory skill. Replace analyzed entries with <!-- PROCESSED ts:... entries:N proposals:M -->. Drop .trace_lock in finally. Then python .castflow/manager.py sync.
No score calibration. If snapshots look noisy, tell the user it is a hook/config issue.
Security
- Security scanPassed, 100 of 100Pattern checks on the skill's files.
- Model reviewNot runA model review is scheduled for the next rescan.
Quality evaluation
- Task evaluationNot runNo evaluation yet. Run one in Skill Studio.
Source
- SKILL.md in the repositoryChecking.castflow/core/skills/origin-evolve-skill/SKILL.md
Popularity
- Repository stars
- 109
- 7-day trend score
- 24
Stars and forks are for the whole GitHub repository, not this skill alone. Not refreshed yet.
Works with
Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.
- Claude Code
- Cursor
- GitHub Copilot
- Windsurf
- Codex
- Gemini CLI
- Cline
- Amp
- Roo Code
- Goose
- Continue
- Kilo Code
- Junie
- Trae
- OpenHands
- Qwen Code
- AI Agent
- Tabnine Chat
- Sourcegraph Cody
- Amazon Q
- Firebase Genkit
- Sweep
- Devin
- Phind
- Mentat
- Claude Desktop
- Aider
- GPT Pilot
- Plandex
- bolt.new
- v0
- Replit Agent
- Anse
- TypingMind
- BetterChatGPT
- LibreChat
- Warp AI
- Pieces
- Fig AI
Embed badge
[](https://verified-skill.com/skills/yunzeforbetter/castflow/origin-evolve-skill)