academic-writing
Write or revise thesis and paper prose section by section (abstract, introduction, related work, method, results, discussion,…
Author a new Claude Code hook for this repository end to end by scaffolding it with pnpm new, writing the hook script and its settings.json wiring, documenting activation in HOOK.md, then regenerating the registry. Use when creating, scaffolding, or reviewing a hook in this repo.
Claude Code
$ npx -y skills add KhaledSaeed18/dotclaude --skill create-hook --agent claude-code
Codex
$ npx skills add KhaledSaeed18/dotclaude --skill create-hook -a codex -y
Cursor
$ npx skills add KhaledSaeed18/dotclaude --skill create-hook -a cursor -y
Gemini CLI
$ npx skills add KhaledSaeed18/dotclaude --skill create-hook -a gemini-cli -y
GitHub Copilot
$ npx skills add KhaledSaeed18/dotclaude --skill create-hook -a github-copilot -y
OpenCode
$ npx skills add KhaledSaeed18/dotclaude --skill create-hook -a opencode -y
Windsurf
$ npx skills add KhaledSaeed18/dotclaude --skill create-hook -a windsurf -y
name: create-hook description: Author a new Claude Code hook for this repository end to end by scaffolding it with pnpm new, writing the hook script and its settings.json wiring, documenting activation in HOOK.md, then regenerating the registry. Use when creating, scaffolding, or reviewing a hook in this repo. argument-hint: "(optional) the hook's purpose, the event it targets, or category"
Create a hook: a script Claude Code runs on a lifecycle event (before a tool, after a prompt, on stop, and so on). Make it do one deterministic thing, fail safe, and ship with documentation a user can paste into `settings.json`. Then regenerate the derived files and validate.
Source layout is `hooks/<category>/<name>/HOOK.md` plus the script. Hooks are **folder-layout**: the whole folder installs to `.claude/hooks/<name>/`, so the script and any helpers ride along. The **category is the folder**; `registry.json` and the README catalog are *generated* by `pnpm gen`. Never hand-edit generated files.
Hooks differ from skills, agents, and commands in one critical way: **they are configuration, not a loadable file.** The shadcn installer copies the script and `HOOK.md` but cannot edit a user's `settings.json`. So `HOOK.md` must document the exact settings block to add, and the hook is inert until the user adds it.
From the repo root:
pnpm new --type hook --category <category> --name <name> --description "<what it does>"
Current hook categories: `academic`, `automation`, `context`, `observability`, `security`, `workflow` (run `ls hooks` for the live list). Reuse one or add a new folder if justified. The scaffolder creates the folder and a `HOOK.md` stub and regenerates the registry; you then add the script.
Add the script alongside `HOOK.md` (for example `<name>.mjs` or `<name>.sh`). Contract, in brief (full detail in [reference/events.md](./reference/events.md)):
`HOOK.md` is the manifest and the documentation. Cover:
1. Frontmatter `name` + `description` (the description is the catalog/registry text). 2. What the hook does, its safety properties (non-blocking, redaction), and its runtime requirement. 3. A **Files** table (script + `HOOK.md`). 4. An **Activate it** section with the exact `settings.json` block to paste, calling out that the installer cannot do this step. Use `${CLAUDE_PROJECT_DIR}` in the command path. See the existing `tool-call-logger` hook for the established shape.
pnpm gen pnpm validate
Fix the source files if validation complains; never patch generated output.
Report the hook's path, category, the event it targets, and the validation result. Leave committing to the user.
Reusable Claude Code extension registry. skills, subagents, slash commands, and hooks for engineering, git, testing, and security workflows. Distributed as a shadcn GitHub registry and as installable plugins.
Write or revise thesis and paper prose section by section (abstract, introduction, related work, method, results, discussion,…
Report computational benchmarks and experimental comparisons the way examiners and reviewers expect: fair baselines run under the…
Maintain the thesis .bib file as a single source of truth: fetch verified BibTeX from a DOI, arXiv id, or title via CrossRef and…
Expand a set of key papers into the literature around them by walking the citation graph with the Semantic Scholar and OpenAlex…
Audit every citation in a chapter, paper, or proposal against the .bib file and the real world: each cite key must exist, each…
Structure a thesis whose contribution is a built artifact (tool, system, method, model) using design science research: explicit…
You MUST use this before any creative work - creating features, building components, adding functionality, modifying behavior, or…
Ask which skill or flow fits your situation. A router over the skills in this repo.