Dev experience: devcontainer, prek, Claude hooks, and docs overhaul#768
Merged
Conversation
Wire PostToolUse hooks for Write/Edit/MultiEdit: - format-and-lint-after-edit.sh: oxfmt + oxlint on the edited file, feeding lint errors back to the agent (exit 2) - type-check-after-edit.sh: whole-project tsc:check as an asyncRewake hook, waking the agent on type errors without blocking the edit Reconcile all references after moving hook scripts out of .github/hooks into .claude/scripts (prek.toml, settings.json, AGENTS.md Hook Sync Rule, and script header sync lists). The single source of truth is now .claude/settings.json; the duplicate *.json reference files are removed. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Reorganize top-to-bottom for agent consumption: front-loaded Critical Rules, an architecture/path table, a commands table, task playbooks for common changes, condensed conventions, and a dev-environment-hooks section. No guidance dropped; every repo-relative link verified. Promote two conventions from personal Claude memory into this shared, checked-in doc so every contributor's agent picks them up: - backtick-wrap __dunder__ path tokens in Markdown (formatter bolds them) - keep distinct Dockerfile steps in separate RUN blocks over complex consolidation Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Restructure both action READMEs for newcomers: - Add a Quick start with a minimal, copy-paste workflow (mirroring the official workflow templates) near the top - Surface setup/prerequisites with an IMPORTANT callout for the manually-created GitHub Environments gotcha (deploy) - Convert Inputs/Outputs from YAML blocks to scannable tables - Reorganize sections into a logical first-read order; move URLs to reference-link definitions Pinned action refs keep the @<sha> #vX.Y.Z form so sync-readme-versions continues to update them. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Add a Docs convention so AI agents update user-facing docs alongside code: README.md mirrors action.yml and delete/README.md mirrors delete/action.yml. Reinforced in three places — a convention rule, a new step in the "Add an action input" playbook, and the Resources list (now including delete/README.md). Notes that the pinned action refs are auto-synced by sync-readme-versions, so the SHA/version isn't hand-edited. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
A developer-experience and documentation pass on the repo. No changes to the action's runtime behavior, inputs, or outputs — this is tooling and docs.
Dev container & tooling
.devcontainer/Dockerfile(with aREADME.mdandzshrc); installactandghvia Docker, switch install to npm, and bump engine versions..pre-commit-config.yamlto prek (prek.toml), sharing oneoxc-format-and-lintentrypoint.Claude Code hooks (
.claude/).github/hooks/into.claude/scripts/, with.claude/settings.jsonas the single source of truth.format-and-lint-after-edit.sh(oxfmt + oxlint, feeds lint errors back) andtype-check-after-edit.sh(whole-projecttsc:checkas an asyncasyncRewakehook — never blocks the edit).stop-review-agents.shprompts capturing session learnings in AGENTS.md (shared conventions) and auto-memory (user/project context).Documentation
__dunder__backticking, Dockerfile readability) and a rule requiring agents to keep both READMEs in sync withaction.yml/delete/action.yml.> [!IMPORTANT]callout for the manually-created GitHub Environments requirement, and Inputs/Outputs as scannable tables. Pinned action refs keep the@<sha> #vX.Y.Zform sosync-readme-versionsstill updates them.Test plan
prekhooks pass on every commit (trailing-whitespace, end-of-file, oxfmt + oxlint)..github/workflow-templates/.🤖 Generated with Claude Code