From agent-smith
Validate the installed agent config against the latest schema, surface new features to adopt, and flag deprecated config to remove. Use when asked to validate settings, check schema, update schemas, verify configuration files, or review config for new/deprecated options.
How this skill is triggered — by the user, by Claude, or both
Slash command
/agent-smith:validate-schemasThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Refresh the active agent's schema cache, validate that agent's installed config files, discover new features, and flag deprecated config for removal.
Refresh the active agent's schema cache, validate that agent's installed config files, discover new features, and flag deprecated config for removal.
| Tool | Schema URL | Config File |
|---|---|---|
| Claude Code | https://json.schemastore.org/claude-code-settings.json | ~/.claude/settings.json, .claude/settings.json |
| Grok | (stub) | ~/.grok/config.toml, .grok/config.toml |
| Codex | https://developers.openai.com/codex/config-schema.json | ~/.codex/config.toml |
| OpenCode | https://opencode.ai/config.json | ~/.config/opencode/opencode.json |
| Pi | bundled://schemas/pi-settings.schema.json | ~/.pi/agent/settings.json, .pi/settings.json |
| Kilo Code | https://app.kilo.ai/config.json | ~/.config/opencode/opencode.json |
Before running any scripts, resolve AGENT_SMITH_ROOT:
scripts/refresh-schemas.sh and scripts/validate-agent-config.sh plus .claude-plugin/plugin.json, .codex-plugin/plugin.json, opencode-plugin/package.json, or .pi/extensions/agent-smith/index.ts, use the current repo root.Resolve the initiating agent:
claude when running inside Claude Code, codex when running inside Codex, opencode when running inside OpenCode, and pi when running inside Pi.AGENT_SMITH_TOOL=<initiating-agent> before running the helper scripts so they do not guess when both tools are installed.Use the helper script first. It refreshes only the initiating agent's schema cache and records fetch metadata.
AGENT_SMITH_TOOL=claude bash "${AGENT_SMITH_ROOT}/scripts/refresh-schemas.sh"
For Codex, run the same command with AGENT_SMITH_TOOL=codex. For Pi, run it with AGENT_SMITH_TOOL=pi; Agent Smith uses the bundled Pi schema snapshot because Pi does not currently publish an official JSON schema.
Run the helper script next:
AGENT_SMITH_TOOL=claude bash "${AGENT_SMITH_ROOT}/scripts/validate-agent-config.sh" --refresh
The helper script:
python3 before validationajv when it is already installed locallyWith AJV (preferred, if already installed):
# Check if ajv is available
ajv --help 2>/dev/null
# Validate Claude Code settings (Draft 7)
ajv validate -s schema.json -d settings.json --spec=draft7
# Validate Codex config after converting TOML to JSON (Draft 2020-12)
ajv validate -s schema.json -d config.json --spec=draft2020
Manual validation (fallback): If AJV is not available or the helper reports a schema-diff fallback, read the cached schema and the initiating agent's config files. Check:
additionalProperties: false)For each validation error, show the JSON path, expected type/value, and actual value. Suggest the fix (e.g., "Change effortLevel from 'max' to 'high' -- allowed values are: low, medium, high").
Compare the schema's defined properties against the user's current config to find properties the user isn't using yet. This is the key integration point with analyze-config: schema validation finds what's available, and metrics analysis determines what's worth adopting.
What to look for:
How to report:
For each new feature found, report:
permissions.allow)Group findings by relevance:
permissions but not permissions.deny)Check for properties in the user's config that are NOT in the schema. These fall into two categories:
Deprecated properties (in the schema with deprecated: true):
apiKey with auth.token")Unknown properties (not in the schema at all):
additionalProperties: false, flag as errorsHow to report:
For each deprecated/unknown property:
Produce a single report with all findings:
# Schema Validation Report -- <date>
## Validation Results
- <tool>: <valid/N errors>
## Validation Errors
(if any -- JSON path, expected, actual, fix)
## New Features Available
### Likely Useful
- ...
### Worth Knowing About
- ...
## Deprecated/Unknown Config
### Migrate
- ...
### Remove
- ...
### Verify
- ...
## Schema Versions
- <tool>: fetched <date>, <N> properties defined
```text
## Integration with analyze-config
These skills form a feedback loop:
```text
validate-schemas analyze-config
───────────────── ──────────────
Schema says feature X exists → Metrics show pattern that X would fix
Config has deprecated prop Y → Tuning report suggests removing Y
New enum value Z available → Session outcomes suggest trying Z
When running both skills together:
Example cross-references:
permissions.deny is available → analyze-config shows repeated permission denials for a specific tool → recommend configuring permissions.deny for that toolmodel: "opus" as deprecated → recommend the current valid model identifier from the schema's enumRefresh only the initiating agent schema per run:
AGENT_SMITH_TOOL=claude bash "${AGENT_SMITH_ROOT}/scripts/refresh-schemas.sh"
Searches MemPalace before answering questions about past work, people, projects, or prior decisions. Returns verbatim stored content instead of guessing from model memory.
Guides Payload CMS config (payload.config.ts), collections, fields, hooks, access control, APIs. Debugs validation errors, security, relationships, queries, transactions, hook behavior.
Implements vector databases with Pinecone, Weaviate, Qdrant, Milvus, pgvector for semantic search, RAG, recommendations, and similarity systems. Optimizes embeddings, indexing, and hybrid search.
npx claudepluginhub chetmancini/agent-smith --plugin agent-smith