# Maintainer notes

This repo is the source of truth for personal academic agent skills.

## Skills in this base

| Directory | Role |
|---|---|
| `skills/awesome-abstract/` | Closed-loop CS/AI abstracts |
| `skills/research-code/` | Paper prototype code, not production software |
| `skills/graph-fraud/` | BWGNN GFD split and `--run 10` on YelpChi / Amazon / T-Finance / T-Social |

## Layout

```text
skills/<skill-name>/SKILL.md    # required — the agent prompt
skills/<skill-name>/README.md   # human page for GitHub
skills/<skill-name>/references/ # long examples; open only when SKILL.md says so
skills/<skill-name>/scripts/    # optional helpers
```

`npx skills add ConmuYan/my-academic-skills` discovers `skills/*/SKILL.md`.
`./install.sh` copies or symlinks the same folders into the current harness.

## Add a skill

1. Put a complete skill directory under `skills/<name>/`.
2. `name` in `SKILL.md` frontmatter must match the directory name.
3. Keep `SKILL.md` as the agent prompt. Put long references beside it.
4. Link the new skill from the root `README.md` catalog (table + a short section).
5. Do not commit secrets, tokens, or `__pycache__`.
6. Bump `.claude-plugin/plugin.json` and the marketplace plugin `version` when the set changes.
7. Symlink the **whole** skill directory into every required harness (create the dest dir if missing):

   - `~/.grok/skills/<name>`
   - `~/.claude/skills/<name>`
   - `~/.codex/skills/<name>`
   - `~/.gemini/skills/<name>`
   - `~/.config/opencode/skills/<name>`

   `./install.sh` always targets these five. Do not stop at Grok + Claude.
8. Commit, push, then on any machine: `./install.sh --update` or `npx skills update`.

## Do not

- Rewrite a skill into a different layout per harness.
- Install by copying only `SKILL.md` and dropping `references/` or `scripts/`.
- Put machine-local paths into skill instructions.
- Restate the same rule in both `SKILL.md` and `references/` — one home per fact.
