V0.8.0/agent smith - #32
Conversation
Add the agent-smith skill to the codebelt agentic repository. Includes SKILL.md with core workflow and auto-trigger modes, references/ with deep guidance (scope analysis, patterns, security, DevSecOps, CI/CD, documentation, repository governance), and evals/ for testing. Agent-smith applies rigorous software-craftsmanship standards across engineering tasks: design, architecture, implementation, refactoring, code review, public API analysis, testing, performance, security, CI/CD, delivery, and governance.
Add agent-smith to install commands, available skills table, and Why section. Includes the full skill description and motivation for using agent-smith: performing the work to standard rather than reviewing afterward, technology-neutral core, progressive disclosure, evidence-driven reporting, respects local conventions, scales without lowering standard, and honest completion gates.
Resolves critical issue where the skill could include already-released commits by replacing <base>^..HEAD caret notation with deterministic branch-derived scope. Adds bleed guard validation to ensure only branch-unique commits are included in the changelog, preventing duplication of already-released work.
Aligns validate-skill-templates.ps1 with the updated git-keep-a-changelog skill behavior and new deterministic release-scope validation requirements.
Documents the resolution of critical release-scope boundary handling issues and the introduction of deterministic branch-derived scope validation.
Greptile SummaryThis PR introduces the
Confidence Score: 5/5Safe to merge. The changes are additive skill definitions, documentation, and PowerShell tooling with no runtime impact on production systems. All three new scripts are well-scoped, fail-closed PowerShell utilities with no network access or shell-injection risk. The findings are documentation and testing-consistency observations that do not affect the correctness of the scripts themselves.
Important Files Changed
Flowchart%%{init: {'theme': 'neutral'}}%%
flowchart TD
A[User invokes /agent-smith task] --> B{Classify task modes}
B -->|.NET EditorConfig| C[Load dotnet.md + dotnet-editorconfig-conformance.md]
B -->|Architecture / API / etc.| D[Load relevant reference docs]
C --> E{Prior mutating formatter pass?}
E -->|Yes - Unmerged artifacts| F[repair-roslyn-multiproject-artifacts.ps1 check mode]
F -->|all recoverable| G[Run with -Apply]
F -->|unsafe artifact| H[Fail closed - report blocker]
E -->|No| I[dotnet format --severity info --verify-no-changes]
I --> J{Clean?}
J -->|No| K[Deliberate source edits]
K --> I
J -->|Yes| L[Build + tests]
M[User invokes git-keep-a-changelog] --> N[resolve-release-scope.ps1]
N -->|bleed detected| O[Throw - stop]
N -->|clean JSON| P[history_range for commits]
N --> Q[diff_range for manifest diffs]
P --> R[Write CHANGELOG.md]
Q --> R
S[User commits via git-visual-commits] --> T[Read SKILL.md EOF]
T --> U[validate-commit-subject.ps1 pre-plan]
U -->|fail| V[Halt and report]
U -->|pass| W[Stage + commit]
W --> X[validate-commit-subject.ps1 pre-git]
X -->|fail| V
X -->|pass| Y[git bot commit]
%%{init: {'theme': 'base', 'themeVariables': {"darkMode": true, "background": "#0d1117", "primaryColor": "#21262d", "primaryTextColor": "#e6edf3", "primaryBorderColor": "#8b949e", "lineColor": "#8b949e", "textColor": "#e6edf3", "edgeLabelBackground": "#161b22", "actorBkg": "#21262d", "actorBorder": "#8b949e", "actorTextColor": "#e6edf3", "actorLineColor": "#8b949e", "signalColor": "#8b949e", "signalTextColor": "#e6edf3", "noteBkgColor": "#373320", "noteBorderColor": "#d4a72c", "noteTextColor": "#f0e6c0", "labelBoxBkgColor": "#21262d", "labelBoxBorderColor": "#8b949e", "labelTextColor": "#e6edf3", "loopTextColor": "#e6edf3", "activationBkgColor": "#30363d", "activationBorderColor": "#8b949e"}}}%%
flowchart TD
A[User invokes /agent-smith task] --> B{Classify task modes}
B -->|.NET EditorConfig| C[Load dotnet.md + dotnet-editorconfig-conformance.md]
B -->|Architecture / API / etc.| D[Load relevant reference docs]
C --> E{Prior mutating formatter pass?}
E -->|Yes - Unmerged artifacts| F[repair-roslyn-multiproject-artifacts.ps1 check mode]
F -->|all recoverable| G[Run with -Apply]
F -->|unsafe artifact| H[Fail closed - report blocker]
E -->|No| I[dotnet format --severity info --verify-no-changes]
I --> J{Clean?}
J -->|No| K[Deliberate source edits]
K --> I
J -->|Yes| L[Build + tests]
M[User invokes git-keep-a-changelog] --> N[resolve-release-scope.ps1]
N -->|bleed detected| O[Throw - stop]
N -->|clean JSON| P[history_range for commits]
N --> Q[diff_range for manifest diffs]
P --> R[Write CHANGELOG.md]
Q --> R
S[User commits via git-visual-commits] --> T[Read SKILL.md EOF]
T --> U[validate-commit-subject.ps1 pre-plan]
U -->|fail| V[Halt and report]
U -->|pass| W[Stage + commit]
W --> X[validate-commit-subject.ps1 pre-git]
X -->|fail| V
X -->|pass| Y[git bot commit]
Reviews (4): Last reviewed commit: "💬 update README for agent-smith Roslyn ..." | Re-trigger Greptile |
Condense the release preamble to focus on core capabilities, clarify Added/Changed sections with deterministic resolver and bleed-guard details, introduce Fixed section for the critical git-keep-a-changelog scope bug, and ensure all 0.8.0 additions are accurately represented.
The skill now enforces a full EOF read of SKILL.md before any Git command, and validates every commit subject through a bundled deterministic PowerShell validator before displaying the plan and again before passing to Git. This prevents unapproved emoji, wrong spacing, uppercase description beginnings, and subjects over 70 characters from ever being shown or committed.
Introduces validate-commit-subject.ps1, a PowerShell script that rejects unapproved emoji, wrong separator spacing, uppercase description beginnings, and subjects longer than 70 characters. Also adds test-commit-subject.ps1 to verify the validator works correctly. The validator is called by the skill before plan display and immediately before Git.
Enhanced scripts/validate-skill-templates.ps1 to verify that git-visual-commits includes the new subject validation infrastructure: the bundled validate-commit-subject.ps1 script, test-commit-subject.ps1 tests, and all required SKILL.md sections that document the full-skill-read and subject-validation locks.
Updated README.md to describe git-visual-commits' new deterministic subject validation gating, including the full-skill-read requirement, the bundled PowerShell validator, and the rejection criteria (unapproved emoji, wrong spacing, uppercase beginnings, length violations). Also updated the skill table entry to highlight these deterministic enforcement mechanisms.
Expand agent-smith to handle explicit EditorConfig, code-style, and named-diagnostic remediation work. Introduces a new mode that performs read-only dotnet format discovery, makes deliberate source edits, validates against scoped conformance goals (not full repository policy), requires affected builds and tests, and maintains de-duplication across multi-target projects. Includes new references/dotnet-editorconfig-conformance.md guidance for the scoped diagnostic remediation workflow.
Add three test cases covering the new EditorConfig conformance mode: a basic negative test confirming out-of-scope requests do not trigger the mode, and two targeted-remediation scenarios for IDE0055 and multi-diagnostic (IDE0005 + CA1822) cases with path and severity scoping. Tests validate discovery/verification command construction, requirement for deliberate source edits (never mutating dotnet format), result reporting, and build/test validation gates.
Update agent-smith skill description in README to reflect new EditorConfig conformance mode for targeted IDE/CA diagnostic remediation. Add safe-multi-target-conformance principle clarifying that de-duplication, deterministic discovery, deliberate edits, conflict scans, and build/test gates are required before claiming compliance success. Update principle about evidence over confidence to reference the new artifact scanning requirement.
Harden EditorConfig conformance mode with deterministic recovery for multi-project formatter artifacts. Introduce critical lock requiring both --severity info and --verify-no-changes throughout discovery and verification. Add repair-roslyn-multiproject-artifacts.ps1 with deterministic detection of whole-document-namespace-conversion pattern, fail-closed design on unrecognized candidates, all-or-nothing directory repair at preflight, and fixture-backed tests covering encoding, idempotence, localized artifacts, and partial-write prevention. Update evals to include multi-target conformance and Roslyn artifact recovery scenarios.
Enhance repo-level validation to cover the new Roslyn multi-project artifact recovery implementation. Add checks verifying --severity info and --verify-no-changes requirements in SKILL.md, recovery script signature and pattern detection, comprehensive eval coverage for multi-target and recovery scenarios, and fixture-backed repair tests for encoding, idempotence, and unsafe-artifact handling.
Document deterministic Roslyn multi-project artifact recovery script and EditorConfig conformance hardening. Highlight critical --severity info and --verify-no-changes requirements for informational workflows, introduction of fail-closed recovery pattern detection, and comprehensive recovery validation infrastructure.
Reflect new EditorConfig conformance recovery capabilities in agent-smith skill description. Highlight deterministic multi-target artifact recovery, fail-closed safety gates, critical --severity info and --verify-no-changes locks, and comprehensive validation infrastructure that prevents unsafe formatter behaviors during targeted diagnostic remediation.
This pull request introduces the new
agent-smithskill, a comprehensive software-craftsmanship advisor, and updates documentation and changelogs to reflect its addition. It also updates the description of thegit-keep-a-changelogskill for greater accuracy and clarity, and adds compare links for changelog versions. The most important changes are summarized below:New Skill: agent-smith
agent-smithskill, providing rigorous, evidence-driven guidance for a wide range of engineering tasks including design, architecture, implementation, refactoring, code review, testing, benchmarking, security, CI/CD, and repository governance. The skill is technology-neutral at its core, adapts to repository conventions, and emphasizes honest, consistent completion gates.agent-smith. [1] [2] [3] [4]Documentation and Changelog Updates
CHANGELOG.mdto includeagent-smithin the0.8.0release, with a detailed summary of its features and principles.git-keep-a-changelogskill in both the changelog and README for accuracy and to reflect workflow changes, including more precise handling of commit ranges and concrete releases. [1] [2][Unreleased]compare link to the changelog for easier navigation between versions.