From claude-ecosystem
Updates Claude Code settings JSON schema by extracting env vars, researching official docs/changelog via skills and WebFetch, merging data, with dry-run/diff/validate options.
npx claudepluginhub melodic-software/claude-code-plugins --plugin claude-ecosystemThis skill is limited to using the following tools:
Update the custom JSON schema for Claude Code settings by researching official documentation, parsing the CHANGELOG, and merging discovered settings.
Manages Claude Code settings including settings.json (user/project/enterprise), permissions, sandbox, plugins, env vars, and tools via docs-management delegation. For config setup and troubleshooting.
Audits cc-settings repo against Claude Code changelog to detect drift, identify features to adopt/duplications to remove, and prepare edits with approval gates. Useful for weekly upstream syncs.
Audits Claude Code configurations (CLAUDE.md, skills, settings, agents) against latest features, best practices, and changelog. Triggers on 'evolve', 'audit config', 'upgrade' requests.
Share bugs, ideas, or general feedback.
Update the custom JSON schema for Claude Code settings by researching official documentation, parsing the CHANGELOG, and merging discovered settings.
| Argument | Description |
|---|---|
| (none) | Full update: research, generate, validate, write |
--dry-run | Show changes without writing |
--validate-only | Validate current schema without updating |
--diff | Show diff between current and generated |
--sync-env-vars | Force sync environment variables from canonical docs |
Read the current schema and extract version metadata:
Schema location: plugins/claude-ecosystem/skills/settings-management/references/claude-code-settings.schema.json
Extract: x-schema-version, x-claude-code-version, x-changelog-hash
Run the env var extraction from canonical docs (stored in docs-management):
python plugins/claude-ecosystem/skills/settings-management/scripts/schema/extract_env_vars.py
This extracts 68+ environment variables from the settings.md documentation with:
enum: ["0", "1"])x-since)Invoke all three research sources in the SAME message:
docs-management skill - Query for settings documentation:
Invoke docs-management skill with query: "settings.json available settings schema options table env hooks permissions sandbox"
claude-code-guide agent - Live web search:
Spawn claude-code-guide subagent with prompt:
"First WebFetch https://code.claude.com/docs/en/claude_code_docs_map.md to find relevant doc pages about settings configuration. Then WebFetch the settings.md page. Use WebSearch only if needed for additional context about new settings fields. Return a list of all settings fields with their types and descriptions."
Changelog fetch - Get latest CHANGELOG.md:
WebFetch https://raw.githubusercontent.com/anthropics/claude-code/main/CHANGELOG.md
Extract settings-related entries from v2.1.0 onwards.
Priority order for conflicting information:
For each setting field:
x-source: "official"x-source: "web"x-source: "changelog"x-since: "version" for changelog-discovered fieldsRun the validation script:
python plugins/claude-ecosystem/skills/settings-management/scripts/schema/validate_schema.py --verbose
Schema must:
If validation passes and not --dry-run:
Show summary:
Schema Update Summary
--------------------
Previous version: 1.0.0
New version: 1.1.0
Claude Code tracked: 2.1.9
Properties: 40 (+3 new)
+ plansDirectory (v2.1.9, changelog)
+ showTurnDuration (v2.1.7, changelog)
+ mcpToolSearch (v2.1.7, changelog)
Environment Variables: 68
Categories: authentication (6), model-config (10), provider (6),
bash-behavior (7), configuration (15), disable-flags (13),
proxy (3), mcp (5), vertex-bedrock (5), tools (2)
Validation: PASSED
Written to: .../claude-code-settings.schema.json
Skip research and write steps. Only validate current schema:
python .../validate_schema.py --verbose --check-examples
Report validation results and exit.
Execute full workflow but skip Step 5 (write). Show what would change.
Execute full workflow, generate new schema in memory, show diff:
+ Added: mcpToolSearch (string)
~ Modified: hooks.PreToolUse (added additionalContext note)
x-schema-version: 1.0.0 -> 1.0.1
x-last-updated: 2026-01-15 -> 2026-01-16
/audit-settings - Audit settings.json files against this schema/list settings - List available settings fields| File | Purpose |
|---|---|
references/claude-code-settings.schema.json | The custom schema file with 68 env vars |
scripts/schema/generate_schema.py | Schema generation and env var sync |
scripts/schema/extract_env_vars.py | Extract env vars from canonical docs |
scripts/schema/validate_schema.py | Standalone validator |
.claude/ecosystem-health.yaml | Tracks schema version |