chore(repo): share Effect skill across the monorepo - #6688
Merged
Merged
Conversation
Contributor
There was a problem hiding this comment.
🤖 AI Review
Only Claude's independent review was available; the Codex review did not complete. Three of Claude's ten findings are confirmed: the repo-wide quality-command description omits Effect lint, the new skill contradicts the repository's Data.TaggedError convention, and its import examples use .js rather than the repository's .ts convention. The other seven findings are refuted, chiefly because the cited REPOSITORY.md does not exist in the PR checkout.
Findings
| Severity | Location | Category | Sources | Claim |
|---|---|---|---|---|
| 🟡 MINOR | AGENTS.md:61 |
documentation-accuracy |
claude | The descriptions of check:all and fix:all incorrectly omit the Effect lint tasks that both commands execute. |
| 🟡 MINOR | .agents/skills/effect/SKILL.md:44 |
consistency |
claude | The skill makes Schema.TaggedError the default even though this repository's established convention is Data.TaggedError. |
| ⚪ NIT | .agents/skills/effect/references/SERVICES_LAYERS.md:31 |
consistency |
claude | The module examples use .js relative specifiers despite this repository consistently using explicit .ts specifiers. |
Refuted findings (kept for transparency, not posted as review comments)
.agents/skills/effect/references/REPOSITORY.md:63(consistency): REPOSITORY.md gives mutually incompatible guidance to use it.live and TestClock.
Refuted: No such file or guidance exists in the PR. TESTING.md:7-10 instead consistently reserves it.live for real-time behavior and pairs Effect timing semantics with TestClock..agents/skills/effect/references/REPOSITORY.md:56(documentation-accuracy): A relocated Effect-lint paragraph inaccurately describes the current allow-list coverage.
Refuted: The inaccurate wording exists only in the trusted pre-PR CLAUDE.md and is deleted by this change; it is not relocated into any PR file..agents/skills/effect/references/CACHING.md:50(documentation): The spaced yield * expressions are formatter artifacts that become multiplication rather than generator delegation.
Refuted: JavaScript permits whitespace, including the shown line break after the asterisk, in a yield* expression inside a generator. These are contextual snippets, and the spacing does not turn the expression into multiplication..agents/skills/effect/SKILL.md:6(documentation): The compatibility frontmatter key is non-standard and may cause strict skill loaders to reject the skill.
Refuted: compatibility is a supported optional Agent Skills frontmatter field, alongside license; its presence is not evidence of loader incompatibility.AGENTS.md:32(documentation): The skill is not auto-discoverable because it is under .agents/skills rather than .claude/skills.
Refuted: .agents/skills is Codex's repository-level skill discovery location. The ignored .claude directory is unrelated, and AGENTS.md also explicitly directs agents to the skill..agents/skills/effect/references/REPOSITORY.md:11(formatting): REPOSITORY.md and the edited AGENTS.md paragraph have inconsistent line wrapping.
Refuted: The principal cited file does not exist, and the remaining AGENTS.md wrapping is consistent with nearby prose..agents/skills/effect/SKILL.md:52(maintainability): The Promise-boundary rule is duplicated in AGENTS.md, SKILL.md, and REPOSITORY.md.
Refuted: A repository-wide Markdown search finds the claimed wording only in AGENTS.md. Neither of the other two alleged copies exists.
Stats
Claude findings: 10 · Codex findings: 0 · Confirmed: 3 · Refuted: 7 · Uncertain: 0
Models: claude-opus-5 + gpt-5.6-sol · Trigger: auto · Workflow run
This review runs once per PR. A maintainer can request another with a /ai-review comment.
Coly010
approved these changes
Sep 21, 2026
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.

Share the Effect skill and its reference guides in the repository so contributors can use the same guidance without a personal installation.
Make the skill authoritative for Effect coding practices and remove competing repository guidance. Keep the package-boundary rule for Promise APIs, the oxlint commands for Effect linting, and the existing telemetry tag-preservation contract.