一键导入
organize-files
Organize the shared notes directory when it becomes hard to navigate. Restructure within research/ and experiments/, deduplicate, update index.md.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Organize the shared notes directory when it becomes hard to navigate. Restructure within research/ and experiments/, deduplicate, update index.md.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
Write a note to {shared_dir}/notes/ that future agents can actually act on. Use after every coral eval, when a heartbeat (reflect / consolidate / pivot) asks for a note, or when you discover a grader / build / runtime issue that future agents will hit. Covers 4 note variants (experiment / infra / focus / synthesis), the required frontmatter with the team-level `creator:` filter, the structured-trace schema (`type` / `claim` / `status` / `confidence` / `based_on` / `evidence` / `supersedes` / `refutes` / `touched`) that populates the dashboard knowledge graph, the self-audit checklist (backfilled predictions, abandoned paths, sourced magic numbers, cross-links), the bundled `scripts/{stamp,lint,unattributed}.py` helpers, and the shell-escaping gotchas that silently strip markdown content. Trigger this skill whenever you are about to Write a file under notes/ — even if the prompt didn't say 'write a note'.
End-to-end recipe for adding a new task under `examples/` — the three pieces that have to line up (`task.yaml`, `seed/`, and `grader/`), what to put in each, the `TaskGrader` API surface, the `coral validate` → smoke-test loop, and the common mistakes (repo_path pointing at the wrong dir, score direction backwards, hidden answer keys leaking into seed/, grader writing to codebase_path which the daemon force-removes, private-vs-public confusion, missing `run()` signature). Use whenever the user wants to add a new CORAL task or port an existing benchmark into CORAL.
Author a new CORAL task — the three pieces that must line up (`task.yaml`, `seed/`, a packaged `grader/`), the `coral init` → `coral validate` → smoke-test loop, and how to pick a grader pattern (stdout float, test pass-rate, ratio-vs-baseline, multi-metric, or an LLM rubric judge). Use whenever the user wants to create a CORAL task, write or wire a grader, port a benchmark into CORAL, score open-ended outputs (reports/memos) with a judge, or debug a grader that crashes on the seed / ranks the leaderboard backwards / leaks the answer key. Deep references for the TaskGrader API, grader patterns, rubric judges, and the full task.yaml schema live alongside this skill.
The fast path from zero to a running CORAL experiment — what CORAL is and when to reach for it, installing the `coral` CLI, registering a runtime with `coral setup`, and the `.coral_workspace/` convention for pointing CORAL at code you already have and want optimized. Use this whenever the user asks "what is coral", "should I use coral for this", wants to install or get coral set up, hits a "command not found" for coral or doesn't have it installed yet, or says "use coral to optimize / speed up / improve this code" and you need the end-to-end onboarding from install to a launched run. Hands off to `setting-up-coral` (runtime bindings), `creating-a-coral-task` (grader authoring), and `running-coral-experiments` (operating a run) for depth.
Run and manage CORAL experiments from the operator side — launch agents with `coral start` (dotlist overrides, model/count, tmux vs local), monitor with `coral status` / `coral log` / `coral show` / the web dashboard, and drive the loop with `coral resume` (inject instructions, fork from an attempt), `coral heartbeat` (tune reflection cadence), and `coral stop`. Use whenever the user wants to start a CORAL run, check on agents, read scores/leaderboard, steer or resume a run, diagnose agents that keep restarting or fail every eval, scale to more agents or islands, or stop a run. Deep references for steering/heartbeat tuning and scaling/troubleshooting live alongside this skill.
One-time machine setup after installing the `coral` CLI — register local agent runtimes as named bindings with `coral setup` / `coral setup agent`, validate them with `coral agents doctor` (incl. a live hello-ping that catches expired auth and model typos), and reference them from a task via `agents.binding`. Use when the user is configuring which agent runtimes/models coral can use, hits a "runtime not found" / auth error when starting a run, or asks how to set up claude/codex/cursor for coral.
| name | organize-files |
| description | Organize the shared notes directory when it becomes hard to navigate. Restructure within research/ and experiments/, deduplicate, update index.md. |
Restructure the shared notes directory so every agent can find what they need quickly.
For a complete before/after walkthrough on a realistic messy notes/ tree — including the dedup pass, naming fixes, subdirectory creation, link repair, and audit-log entry — see references/worked-example.md. Read it once before your first reorganization; it makes the abstract steps below concrete.
For recovery procedures and judgment calls (move script aborted partway, false-positive duplicates, files that look misplaced in _synthesis/, contradicting _open-questions.md, races between agents…), see references/edge-cases.md.
research/ or experiments/notes/
├── index.md ← table of contents (research + experiments only)
├── raw/ ← immutable sources (DON'T touch)
├── research/ ← deep-research findings (organize within)
│ ├── <topic>/ ← group by topic or theme
│ └── ...
├── experiments/ ← eval reflections and results (organize within)
│ ├── <approach>/ ← group by approach or technique
│ └── ...
├── _synthesis/ ← consolidate owns this (DON'T touch)
├── _connections.md ← consolidate owns this
├── _open-questions.md
└── _organization-log.md ← append-only log of what you changed
Get the current state:
bash .coral/public/skills/organize-files/scripts/audit.sh
Or manually: ls -R {shared_dir}/notes/ and count files per directory.
Also check for content-level issues:
_open-questions.md.index.md. Add them.Write out your target structure before moving anything. Organize within research/ and experiments/ — add subdirectories by topic when a dir has 5+ files:
research/
├── algorithms/ (3+ notes)
├── optimization/ (3+ notes)
└── ...
experiments/
├── optimization/ (3+ notes)
├── debugging/ (3+ notes)
└── ...
Rules:
experiments/optimization/learning-rate.md is the limitalgorithms/ not agent1-work/raw/ — immutable source material_synthesis/, _connections.md, _open-questions.md — owned by consolidateFind near-duplicates:
python .coral/public/skills/organize-files/scripts/find_duplicates.py .coral/public/notes --threshold 0.5
For pairs above the threshold where the verdict is not immediately obvious from a quick read — same topic vs. different angle vs. different topic with shared boilerplate vs. genuinely contradicting — spawn the Dedup Judge subagent. It reads both notes blinded (no author / timestamp / length metadata) and returns a structured verdict (same-topic-merge / different-angle-fold / contradicting-do-not-merge / keep-both-rename) with concrete merge or rename instructions. See agents/dedup-judge.md. Use it especially when:
For obvious cases — verbatim duplicates, or clearly different topics that shared a paragraph — just decide directly.
When merging confirmed duplicates, preserve provenance from both notes — never just pick one and discard:
## References lists (de-duplicated by URL or raw/ filename). Losing a citation loses an audit trail that an agent may need months later.tags and aliases rather than picking one set. Both were correct in their original context.Move originals to _archive/ so the merge is reversible.
When two notes contradict each other, don't merge:
_open-questions.md (existing rule).contradictedBy: [other-note-slug] into each note's frontmatter so future readers see the conflict at the note level — _open-questions.md collects them, but agents reading the note directly should see the warning without a separate lookup.Use the move script for safe moves with frontmatter tracking:
python .coral/public/skills/organize-files/scripts/move_note.py SOURCE DEST
Naming: kebab-case-like-this.md, topic first, no agent IDs, no bare dates, under 60 chars.
Regenerate index.md:
python .coral/public/skills/organize-files/scripts/generate_index.py .coral/public/notes
The index should only list research/ and experiments/ entries — not raw/.
Then resolve cross-links — moves and renames break any [[old-slug]] references in note bodies:
python .coral/public/skills/organize-files/scripts/resolve_links.py .coral/public/notes --dry-run
# review the diff, then:
python .coral/public/skills/organize-files/scripts/resolve_links.py .coral/public/notes
The resolver walks every note, scans the body for plain-text mentions of every other note's title, and wraps them as [[slug|Title]]. It skips text already inside wikilinks, citation markers, code blocks, and inline code. Run this after moves and renames, not before — the resolver needs final paths.
Append a summary to _organization-log.md: what you moved, merged, or renamed, and why.