docs(cline): refresh verified_on dates for Cline v3.77.0 -> v3.80.0 (no code changes) - #762
Conversation
…no code changes) Closes #746. Triage of Cline v3.77.0 -> v3.80.0. Re-verified all 10 Cline rules (CLN-001..009 + CL-SK-002/003) against the upstream changelog and the official docs at docs.cline.bot. The 3-version bump introduced: - globalSkills enterprise remote config with alwaysEnabled enforcement (v3.79.0/v3.80.0) - Removed foreground terminal mode (v3.80.0) - Quota-exceeded UI + detailed error chat row + axios bump - OOM crash fix (--max-old-space-size=8192) NONE of these touch any on-disk file agnix validates: - globalSkills / alwaysEnabled live exclusively in Cline's RemoteConfigSchema (delivered over the network via the enterprise remote-config API), NOT in .cline/skills/*/SKILL.md or .clinerules/skills/*/SKILL.md frontmatter. Verified in src/shared/remote-config/schema.ts. The 'remote:' path prefix explicitly distinguishes remote skills from disk-based ones. - Foreground terminal removal is VS Code extension internals; agnix has no validator for Cline settings files. - axios/OOM/UI changes have zero schema impact. Verified the v3.77.0 changelog mention 'Polish Notification hook functionality' against the official hooks docs at docs.cline.bot/features/hooks - 'Notification' is NOT a valid Cline hook event. The 8 valid events match agnix's VALID_HOOK_EVENTS exactly (TaskStart, TaskResume, TaskCancel, TaskComplete, PreToolUse, PostToolUse, UserPromptSubmit, PreCompact). No code changes required. Documentation: - Bumped verified_on to 2026-04-22 for all 10 Cline rules in knowledge-base/rules.json and synced crates/agnix-rules/rules.json - Bumped RESEARCH-TRACKING.md 'Last Reviewed' for Cline from 2026-02-05 to 2026-04-22 - Expanded the Config Format column to list all 5 file types Cline validates (was only listing .clinerules and .cline/rules/*.md; added .clinerules/workflows/*.md, .clinerules/hooks/*, .clinerules/skills/*/SKILL.md, .cline/skills/*/SKILL.md) - Filled in Rules column (was '--', now 'CLN, CL-SK') - Regenerated website/docs/rules/generated/*.md Verified locally: - cargo clippy --workspace --all-targets --all-features -- -D warnings clean - cargo test -p agnix-rules --tests: 47 + 4 parity tests pass - No source code changed; no new tests needed
There was a problem hiding this comment.
Pull request overview
Updates agnix’s Cline rule documentation metadata to reflect a re-verification against upstream Cline v3.80.0, without changing any validator logic.
Changes:
- Bumped
verified_ondates for all Cline-related rules to2026-04-22in the JSON rule sources and generated website rule docs. - Updated
knowledge-base/RESEARCH-TRACKING.mdto reflect the new Cline “Last Reviewed” date and to enumerate all validated Cline file formats. - Added a changelog entry describing the Cline doc refresh.
Reviewed changes
Copilot reviewed 4 out of 14 changed files in this pull request and generated 1 comment.
Show a summary per file
| File | Description |
|---|---|
| website/docs/rules/generated/cln-009.md | Updates Verified On date for CLN-009 doc page |
| website/docs/rules/generated/cln-006.md | Updates Verified On date for CLN-006 doc page |
| website/docs/rules/generated/cln-005.md | Updates Verified On date for CLN-005 doc page |
| website/docs/rules/generated/cln-004.md | Updates Verified On date for CLN-004 doc page |
| website/docs/rules/generated/cln-003.md | Updates Verified On date for CLN-003 doc page |
| website/docs/rules/generated/cln-002.md | Updates Verified On date for CLN-002 doc page |
| website/docs/rules/generated/cln-001.md | Updates Verified On date for CLN-001 doc page |
| website/docs/rules/generated/cl-sk-003.md | Updates Verified On date for CL-SK-003 doc page |
| website/docs/rules/generated/cl-sk-002.md | Updates Verified On date for CL-SK-002 doc page |
| website/docs/rules/generated/cl-sk-001.md | Updates Verified On date for CL-SK-001 doc page |
| knowledge-base/rules.json | Bumps verified_on for Cline/Cline Skills rules (knowledge-base source of truth) |
| knowledge-base/RESEARCH-TRACKING.md | Updates Cline review date and expands tracked config formats / rule prefixes |
| crates/agnix-rules/rules.json | Bumps verified_on for Cline/Cline Skills rules (packaged rules) |
| CHANGELOG.md | Adds an Unreleased changelog bullet for the Cline doc refresh |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| - **Docs drift** - updated validation rule count from 385 to 399 across 20+ user-facing locations: `CLAUDE.md`, `AGENTS.md`, `README.md`, `SPEC.md`, `npm/README.md`, `crates/agnix-lsp/README.md`, `docs/EDITOR-SETUP.md`, Neovim and VS Code editor READMEs, `editors/vscode/package.json`, `editors/zed/README.md`, `knowledge-base/INDEX.md` (5 places), `knowledge-base/README.md`, `plugin/.claude-plugin/plugin.json`, `plugin/commands/agnix.md`, `plugin/skills/agnix/SKILL.md`, `skills/agnix/SKILL.md`, `crates/agnix-mcp/src/main.rs` server instructions (3 places), and website docs (intro, getting-started, contributing). `rules.json` is the source of truth; these human-written references had drifted. | ||
| - **CONTRIBUTING tone** - `CONTRIBUTING.md` and `website/docs/contributing.md` use first-person singular ("I welcome", "I want to know") since agnix is single-maintainer. Previously used "we" which implied a team. | ||
| - **Docusaurus** - bumped `@docusaurus/core` and `@docusaurus/preset-classic` from 3.9.2 to 3.10.0. | ||
| - **Cline v3.77.0 -> v3.80.0 doc refresh** (#746) - re-verified all 10 Cline rules (CLN-001..009 + CL-SK-002/003) against the upstream `https://docs.cline.bot/features/cline-rules/overview` and `https://docs.cline.bot/features/hooks` docs. The 3-version bump introduced `globalSkills` enterprise remote config with `alwaysEnabled` enforcement (v3.79.0/v3.80.0), removed foreground terminal mode (v3.80.0), added quota-exceeded UI, and fixed long-conversation OOM crashes - none of these touch any on-disk file agnix validates. `globalSkills`/`alwaysEnabled` live exclusively in Cline's `RemoteConfigSchema` (delivered over the network via the enterprise remote-config API), not in `.cline/skills/*/SKILL.md` or `.clinerules/skills/*/SKILL.md` frontmatter. Foreground terminal removal is VS Code extension internals; agnix has no validator for Cline settings files. Verified the v3.77.0 changelog mention "Polish Notification hook functionality" against the official hooks docs - `Notification` is NOT a valid Cline hook event (the 8 valid events match agnix's `VALID_HOOK_EVENTS` exactly: TaskStart, TaskResume, TaskCancel, TaskComplete, PreToolUse, PostToolUse, UserPromptSubmit, PreCompact). No code changes required. Bumped `verified_on` for all 10 Cline rules to 2026-04-22; bumped `RESEARCH-TRACKING.md` "Last Reviewed" for Cline from 2026-02-05 to 2026-04-22; expanded the Config Format column to list all 5 file types Cline validates (was only listing 2) and filled in the Rules column (was `--`). |
There was a problem hiding this comment.
The CHANGELOG entry lists the Cline rule IDs as CLN-001..009 + CL-SK-002/003, which doesn’t match the actual Cline ruleset updated in this PR (CLN only includes CLN-001..006 and CLN-009, and Cline Skills includes CL-SK-001..003). This also makes the “10 Cline rules” count inconsistent with the IDs listed. Please update the parenthetical/range to reflect the real rule IDs.
| - **Cline v3.77.0 -> v3.80.0 doc refresh** (#746) - re-verified all 10 Cline rules (CLN-001..009 + CL-SK-002/003) against the upstream `https://docs.cline.bot/features/cline-rules/overview` and `https://docs.cline.bot/features/hooks` docs. The 3-version bump introduced `globalSkills` enterprise remote config with `alwaysEnabled` enforcement (v3.79.0/v3.80.0), removed foreground terminal mode (v3.80.0), added quota-exceeded UI, and fixed long-conversation OOM crashes - none of these touch any on-disk file agnix validates. `globalSkills`/`alwaysEnabled` live exclusively in Cline's `RemoteConfigSchema` (delivered over the network via the enterprise remote-config API), not in `.cline/skills/*/SKILL.md` or `.clinerules/skills/*/SKILL.md` frontmatter. Foreground terminal removal is VS Code extension internals; agnix has no validator for Cline settings files. Verified the v3.77.0 changelog mention "Polish Notification hook functionality" against the official hooks docs - `Notification` is NOT a valid Cline hook event (the 8 valid events match agnix's `VALID_HOOK_EVENTS` exactly: TaskStart, TaskResume, TaskCancel, TaskComplete, PreToolUse, PostToolUse, UserPromptSubmit, PreCompact). No code changes required. Bumped `verified_on` for all 10 Cline rules to 2026-04-22; bumped `RESEARCH-TRACKING.md` "Last Reviewed" for Cline from 2026-02-05 to 2026-04-22; expanded the Config Format column to list all 5 file types Cline validates (was only listing 2) and filled in the Rules column (was `--`). | |
| - **Cline v3.77.0 -> v3.80.0 doc refresh** (#746) - re-verified all 10 Cline rules (CLN-001..006, CLN-009, and CL-SK-001..003) against the upstream `https://docs.cline.bot/features/cline-rules/overview` and `https://docs.cline.bot/features/hooks` docs. The 3-version bump introduced `globalSkills` enterprise remote config with `alwaysEnabled` enforcement (v3.79.0/v3.80.0), removed foreground terminal mode (v3.80.0), added quota-exceeded UI, and fixed long-conversation OOM crashes - none of these touch any on-disk file agnix validates. `globalSkills`/`alwaysEnabled` live exclusively in Cline's `RemoteConfigSchema` (delivered over the network via the enterprise remote-config API), not in `.cline/skills/*/SKILL.md` or `.clinerules/skills/*/SKILL.md` frontmatter. Foreground terminal removal is VS Code extension internals; agnix has no validator for Cline settings files. Verified the v3.77.0 changelog mention "Polish Notification hook functionality" against the official hooks docs - `Notification` is NOT a valid Cline hook event (the 8 valid events match agnix's `VALID_HOOK_EVENTS` exactly: TaskStart, TaskResume, TaskCancel, TaskComplete, PreToolUse, PostToolUse, UserPromptSubmit, PreCompact). No code changes required. Bumped `verified_on` for all 10 Cline rules to 2026-04-22; bumped `RESEARCH-TRACKING.md` "Last Reviewed" for Cline from 2026-02-05 to 2026-04-22; expanded the Config Format column to list all 5 file types Cline validates (was only listing 2) and filled in the Rules column (was `--`). |
There was a problem hiding this comment.
Code Review
This pull request performs a documentation refresh for Cline (v3.77.0 to v3.80.0), updating the verification dates for 10 specific rules across the codebase, including the rules engine, research tracking, and generated website documentation. The feedback points out an inaccuracy in the CHANGELOG description regarding the specific rule IDs that were updated, providing a suggestion to correctly list the modified rules.
| - **Docs drift** - updated validation rule count from 385 to 399 across 20+ user-facing locations: `CLAUDE.md`, `AGENTS.md`, `README.md`, `SPEC.md`, `npm/README.md`, `crates/agnix-lsp/README.md`, `docs/EDITOR-SETUP.md`, Neovim and VS Code editor READMEs, `editors/vscode/package.json`, `editors/zed/README.md`, `knowledge-base/INDEX.md` (5 places), `knowledge-base/README.md`, `plugin/.claude-plugin/plugin.json`, `plugin/commands/agnix.md`, `plugin/skills/agnix/SKILL.md`, `skills/agnix/SKILL.md`, `crates/agnix-mcp/src/main.rs` server instructions (3 places), and website docs (intro, getting-started, contributing). `rules.json` is the source of truth; these human-written references had drifted. | ||
| - **CONTRIBUTING tone** - `CONTRIBUTING.md` and `website/docs/contributing.md` use first-person singular ("I welcome", "I want to know") since agnix is single-maintainer. Previously used "we" which implied a team. | ||
| - **Docusaurus** - bumped `@docusaurus/core` and `@docusaurus/preset-classic` from 3.9.2 to 3.10.0. | ||
| - **Cline v3.77.0 -> v3.80.0 doc refresh** (#746) - re-verified all 10 Cline rules (CLN-001..009 + CL-SK-002/003) against the upstream `https://docs.cline.bot/features/cline-rules/overview` and `https://docs.cline.bot/features/hooks` docs. The 3-version bump introduced `globalSkills` enterprise remote config with `alwaysEnabled` enforcement (v3.79.0/v3.80.0), removed foreground terminal mode (v3.80.0), added quota-exceeded UI, and fixed long-conversation OOM crashes - none of these touch any on-disk file agnix validates. `globalSkills`/`alwaysEnabled` live exclusively in Cline's `RemoteConfigSchema` (delivered over the network via the enterprise remote-config API), not in `.cline/skills/*/SKILL.md` or `.clinerules/skills/*/SKILL.md` frontmatter. Foreground terminal removal is VS Code extension internals; agnix has no validator for Cline settings files. Verified the v3.77.0 changelog mention "Polish Notification hook functionality" against the official hooks docs - `Notification` is NOT a valid Cline hook event (the 8 valid events match agnix's `VALID_HOOK_EVENTS` exactly: TaskStart, TaskResume, TaskCancel, TaskComplete, PreToolUse, PostToolUse, UserPromptSubmit, PreCompact). No code changes required. Bumped `verified_on` for all 10 Cline rules to 2026-04-22; bumped `RESEARCH-TRACKING.md` "Last Reviewed" for Cline from 2026-02-05 to 2026-04-22; expanded the Config Format column to list all 5 file types Cline validates (was only listing 2) and filled in the Rules column (was `--`). |
There was a problem hiding this comment.
The list of rules in parentheses is inaccurate. Based on the files modified in this PR, the 10 rules updated are CLN-001 through CLN-006, CLN-009, and CL-SK-001 through CL-SK-003. The current text (CLN-001..009 + CL-SK-002/003) incorrectly implies 11 rules (if inclusive) and omits CL-SK-001 while including CLN-007/008 which are not part of this update.
| - **Cline v3.77.0 -> v3.80.0 doc refresh** (#746) - re-verified all 10 Cline rules (CLN-001..009 + CL-SK-002/003) against the upstream `https://docs.cline.bot/features/cline-rules/overview` and `https://docs.cline.bot/features/hooks` docs. The 3-version bump introduced `globalSkills` enterprise remote config with `alwaysEnabled` enforcement (v3.79.0/v3.80.0), removed foreground terminal mode (v3.80.0), added quota-exceeded UI, and fixed long-conversation OOM crashes - none of these touch any on-disk file agnix validates. `globalSkills`/`alwaysEnabled` live exclusively in Cline's `RemoteConfigSchema` (delivered over the network via the enterprise remote-config API), not in `.cline/skills/*/SKILL.md` or `.clinerules/skills/*/SKILL.md` frontmatter. Foreground terminal removal is VS Code extension internals; agnix has no validator for Cline settings files. Verified the v3.77.0 changelog mention "Polish Notification hook functionality" against the official hooks docs - `Notification` is NOT a valid Cline hook event (the 8 valid events match agnix's `VALID_HOOK_EVENTS` exactly: TaskStart, TaskResume, TaskCancel, TaskComplete, PreToolUse, PostToolUse, UserPromptSubmit, PreCompact). No code changes required. Bumped `verified_on` for all 10 Cline rules to 2026-04-22; bumped `RESEARCH-TRACKING.md` "Last Reviewed" for Cline from 2026-02-05 to 2026-04-22; expanded the Config Format column to list all 5 file types Cline validates (was only listing 2) and filled in the Rules column (was `--`). | |
| - **Cline v3.77.0 -> v3.80.0 doc refresh** (#746) - re-verified all 10 Cline rules (CLN-001..006, CLN-009 + CL-SK-001..003) against the upstream https://docs.cline.bot/features/cline-rules/overview and https://docs.cline.bot/features/hooks docs. The 3-version bump introduced globalSkills enterprise remote config with alwaysEnabled enforcement (v3.79.0/v3.80.0), removed foreground terminal mode (v3.80.0), added quota-exceeded UI, and fixed long-conversation OOM crashes - none of these touch any on-disk file agnix validates. globalSkills/alwaysEnabled live exclusively in Cline's RemoteConfigSchema (delivered over the network via the enterprise remote-config API), not in .cline/skills/*/SKILL.md or .clinerules/skills/*/SKILL.md frontmatter. Foreground terminal removal is VS Code extension internals; agnix has no validator for Cline settings files. Verified the v3.77.0 changelog mention "Polish Notification hook functionality" against the official hooks docs - Notification is NOT a valid Cline hook event (the 8 valid events match agnix's VALID_HOOK_EVENTS exactly: TaskStart, TaskResume, TaskCancel, TaskComplete, PreToolUse, PostToolUse, UserPromptSubmit, PreCompact). No code changes required. Bumped verified_on for all 10 Cline rules to 2026-04-22; bumped RESEARCH-TRACKING.md "Last Reviewed" for Cline from 2026-02-05 to 2026-04-22; expanded the Config Format column to list all 5 file types Cline validates (was only listing 2) and filled in the Rules column (was --). |
|
Per-comment reply table for round 1
Pushing now. |
…K-001..003) Reviewer feedback (PR #762 round 1, both Copilot and Gemini caught the same issue): The CHANGELOG entry said 'CLN-001..009 + CL-SK-002/003' but the actual Cline ruleset has gaps: - CLN-001..006 are defined - CLN-007 and CLN-008 are reserved IDs not currently defined - CLN-009 exists - CL-SK-001..003 all exist (CL-SK-001 has no active validator but is present in rules.json) Total: 10 rules, matches the bump count. Updated CHANGELOG to be precise about which IDs are in the ruleset.
…view) Reviewer feedback (PR #767 round 1): - Copilot CRITICAL: typed Hook enum still rejected mcp_tool, so even with the raw-JSON allow-list fix, CC-HK-012 (schema mismatch) would fire on every mcp_tool hook. Added Hook::McpTool variant with tool, if, timeout fields (per release notes). Updated all match arms (command(), prompt(), type_name(), the per-variant typed-validation block in rules/hooks/mod.rs); added is_mcp_tool() for symmetry. - Copilot: test was vacuous (only checked CC-HK-016 absence; would have passed with CC-HK-012 still firing). Strengthened to assert diagnostics.is_empty() (zero diagnostics of any rule). Now genuinely fails without the typed-enum addition. - Copilot: comment said 'follows the docs' but docs page hasn't been updated yet; reworded to 'follows the release notes' with a caveat about the doc gap as of 2026-04-23. - Gemini MEDIUM: KNOWN_KEYS dedup -> won't fix (project-wide pattern, same answer as PR #757/#763). Plus fmt drift caught by CI (cargo fmt forgotten after round-1 edit; same lesson as PR #758/#762).
* fix(claude-code): catch up to v2.1.118 (mcp_tool hook type) Closes #764. Triage of Claude Code v2.1.117 -> v2.1.118. The release added `type: "mcp_tool"` so hooks can invoke MCP tools directly. Without this fix, agnix would false-positive CC-HK-016 (unknown hook type) on every v2.1.118+ user following the release notes. Added `"mcp_tool"` to BOTH allow-lists in crates/agnix-core/src/rules/hooks/helpers.rs: - `valid_types` (lines 607, 973): used by CC-HK-016 strict check - `known_non_command` (lines 532, 974): used to flag async on non-command hook types Plus a regression test (`test_cc_hk_016_mcp_tool_type_valid`) asserting `mcp_tool` doesn't trigger CC-HK-016. Doc gap caveat: as of 2026-04-23 the docs at code.claude.com/docs/en/hooks only list 4 types (command, prompt, agent, http). The v2.1.118 release notes explicitly mention mcp_tool and are authoritative until the docs catch up. Other v2.1.118 changes need no agnix change: - Vim visual mode, /cost+/stats -> /usage, custom themes (UI/CLI) - Plugin themes/ directory: agnix's plugin.rs has no strict fields check, no false positive - DISABLE_UPDATES env var: not a config file - wslInheritsWindowsSettings policy key: settings.json field; agnix doesn't validate settings.json fields directly - autoMode.* '\$defaults' token: settings.json field - claude plugin tag (CLI), OAuth/credential bug fixes (runtime) Documentation: - Bumped verified_on to 2026-04-23 for all 25 CC-HK-* rules in knowledge-base/rules.json + synced crates/agnix-rules/rules.json - Regenerated website/docs/rules/generated/*.md Verified locally: - cargo clippy --workspace --all-targets --all-features -- -D warnings clean - cargo test -p agnix-core --lib: passes (+1 new regression test) * fix: expand mcp_tool to typed Hook enum + strengthen test (round 1 review) Reviewer feedback (PR #767 round 1): - Copilot CRITICAL: typed Hook enum still rejected mcp_tool, so even with the raw-JSON allow-list fix, CC-HK-012 (schema mismatch) would fire on every mcp_tool hook. Added Hook::McpTool variant with tool, if, timeout fields (per release notes). Updated all match arms (command(), prompt(), type_name(), the per-variant typed-validation block in rules/hooks/mod.rs); added is_mcp_tool() for symmetry. - Copilot: test was vacuous (only checked CC-HK-016 absence; would have passed with CC-HK-012 still firing). Strengthened to assert diagnostics.is_empty() (zero diagnostics of any rule). Now genuinely fails without the typed-enum addition. - Copilot: comment said 'follows the docs' but docs page hasn't been updated yet; reworded to 'follows the release notes' with a caveat about the doc gap as of 2026-04-23. - Gemini MEDIUM: KNOWN_KEYS dedup -> won't fix (project-wide pattern, same answer as PR #757/#763). Plus fmt drift caught by CI (cargo fmt forgotten after round-1 edit; same lesson as PR #758/#762).
Summary
Triage of Cline v3.77.0 -> v3.80.0 (issue #746). After re-verifying all 10 Cline rules against the upstream changelog and docs, no code changes are required — pure doc refresh.
Why no code changes
The 3-version bump introduced these features, none of which touch any on-disk file agnix validates:
globalSkillsenterprise remote config +alwaysEnabledenforcement (v3.79.0/v3.80.0)RemoteConfigSchema(delivered over the network via the enterprise remote-config API), NOT in.cline/skills/*/SKILL.mdor.clinerules/skills/*/SKILL.mdfrontmatter. Verified insrc/shared/remote-config/schema.ts. Theremote:path prefix explicitly distinguishes remote skills from disk-based ones.--max-old-space-size=8192)Notification hook check
The v3.77.0 changelog mentioned "Polish Notification hook functionality." Verified against
https://docs.cline.bot/features/hooks—Notificationis NOT a valid Cline hook event. The 8 documented events match agnix'sVALID_HOOK_EVENTSexactly:TaskStart, TaskResume, TaskCancel, TaskComplete, PreToolUse, PostToolUse, UserPromptSubmit, PreCompact.Doc updates
knowledge-base/rules.jsonandcrates/agnix-rules/rules.json: bumpedverified_onto2026-04-22for all 10 Cline rules (CLN-001..009 + CL-SK-002/003)knowledge-base/RESEARCH-TRACKING.md:.clinerulesand.cline/rules/*.md; now includes all 5 file types Cline validates:.clinerules(file or dir),.clinerules/workflows/*.md,.clinerules/hooks/*,.clinerules/skills/*/SKILL.md,.cline/skills/*/SKILL.md--, nowCLN, CL-SK) — same lesson as PR docs(kiro): refresh verified_on dates for Kiro 1.28.3 -> 2.0.1 (no code changes) #760 / fix(copilot): catch up to v0.43.0 (description frontmatter field) #761website/docs/rules/generated/*.mdToolVersions
ToolVersionsstruct has noclinefield. TheLintRulesConfig.cline: boolflag is the only Cline-specific config (enable/disable category wholesale). Nothing to bump.Test plan
cargo test -p agnix-rules --tests: 47 + 4 parity tests passcargo clippy --workspace --all-targets --all-features -- -D warningscleanCloses #746.