agentleFS
michaelnealemichaelneale/mesh-llm/.agents/skills/config-settings-management/SKILL.md

config-settings-management

Skill3.8k starsChanged 20 days agoApache-2.0View on GitHub

Use this skill when adding, renaming, removing, validating, or exposing mesh-llm config settings, including built-in settings, plugin config schemas, owner-control apply behavior, CLI validation, and UI configuration surfaces.

We split this skill into the rules it gives an agent

10 rules. About 0 are common, 4 are distinctive, and 6 are very specific to this project.

  • ≈0

    Common · estimate

    Many files like this have a rule of this kind.

  • ≈4

    Distinctive · estimate

    This author's own choices. Worth a look.

  • 6

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Very specific:

    Use this skill before changing any setting that appears in ~/.mesh-llm/config.toml, the owner-control configuration API, the runtime …

    line 10
  2. Distinctive:

    When adding or removing a built-in setting:

    line 41
  3. Very specific:

    Update MeshConfig or the owning nested config struct in mesh/crates/mesh-llm-config/src/model.rs.

    line 43
  4. Very specific:

    Update defaults and editor helpers in authoring.rs if generated configs, tests, or command flows need to write the setting.

    line 45
  5. Very specific:

    Add, rename, or remove the corresponding descriptor in model/built_in_schema.rs.

    line 47
  6. Very specific:

    Update validation in validate.rs.

    line 51
  7. Distinctive:

    Update schema fixtures and UI adapter expectations when exported schema JSON changes.

    line 56
  8. Very specific:

    Run mesh-llm config validate --config-path <fixture> --json for at least one valid and one invalid representative file.

    line 58
  9. Distinctive:

    Run cargo commands serially.

    line 98
  10. Distinctive:

    Use the repo build gate before publishing broad changes:

    line 121

≈ “Common” is an estimate: at least 1 in 5 of the 308,232 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

config-settings-management

Use this skill before changing any setting that appears in ~/.mesh-llm/config.toml, the owner-control configuration API, the runtime configuration UI, or an installed plugin's config_schema.

Mental Model

Config settings are not just struct fields. A complete setting has:

  • A persisted TOML shape in mesh/crates/mesh-llm-config/src/model.rs.
  • Authoring/editor support in mesh/crates/mesh-llm-config/src/authoring.rs when code needs to create or mutate it.
  • Built-in schema metadata in mesh/crates/mesh-llm-config/src/model/built_in_schema.rs when it is a core mesh-llm setting.
  • Validation diagnostics in mesh/crates/mesh-llm-config/src/validate.rs, with stable ConfigPath and canonical path metadata.
  • Runtime schema aggregation/export in mesh/crates/mesh-llm-host-runtime/src/config_schema.rs.
  • Owner-control apply behavior in mesh/crates/mesh-llm-host-runtime/src/runtime/config_state.rs when it can be changed dynamically.
  • API/protocol conversion coverage in mesh/crates/mesh-llm-host-runtime/src/api/, mesh/crates/mesh-llm-host-runtime/src/protocol/, and mesh/crates/mesh-llm-protocol/proto/node.proto when it crosses process or node boundaries.
  • UI adapter and fixture coverage under mesh/crates/mesh-llm-ui/src/features/configuration/ and mesh/crates/mesh-llm-host-runtime/tests/fixtures/.

Built-In Settings Checklist

When adding or removing a built-in setting:

  • Update MeshConfig or the owning nested config struct in mesh/crates/mesh-llm-config/src/model.rs.
  • Update defaults and editor helpers in authoring.rs if generated configs, tests, or command flows need to write the setting.
  • Add, rename, or remove the corresponding descriptor in model/built_in_schema.rs. Include owner, value schema, support state, control surfaces, apply mode, restart scope, visibility, constraints, aliases, and description.
  • Update validation in validate.rs. Prefer structured ConfigDiagnostic helpers over plain string errors.
  • Preserve compatibility with existing TOML when possible. Use aliases and warnings for renamed keys; reserve version = 1 bumps for actual incompatible persisted config format changes.
  • Update schema fixtures and UI adapter expectations when exported schema JSON changes.
  • Run mesh-llm config validate --config-path <fixture> --json for at least one valid and one invalid representative file.

Plugin Settings Checklist

Plugin settings are install-time schemas, not hard-coded built-in settings.

  • The plugin manifest owns its schema through config_schema in mesh/crates/mesh-llm-plugin/src/manifest.rs and mesh/crates/mesh-llm-plugin/proto/plugin.proto.
  • Keep schema_version at mesh_llm_config::SUPPORTED_PLUGIN_CONFIG_SCHEMA_VERSION unless the schema format itself becomes incompatible. Tightening validation of existing v1 fields such as required, type, enum, object, array, or constraints does not by itself require a schema version bump.
  • Host-side installed plugin schema loading and strict validation live in mesh/crates/mesh-llm-host-runtime/src/plugin/config.rs and mesh/crates/mesh-llm-config/src/plugin_validation.rs.
  • Required plugin settings must be rejected even when [plugin.settings] is absent.
  • Missing or unavailable schemas should reject custom settings, but plugin entries without custom settings should remain loadable when possible.
  • allow_unvalidated_config should produce warnings, not silently drop diagnostics from success responses.

Owner-Control And UI

  • Dynamic apply behavior belongs in mesh/crates/mesh-llm-host-runtime/src/runtime/config_state.rs.
  • The management API should return diagnostics for both rejected applies and successful applies with warnings.
  • Protobuf changes must be additive unless explicitly approved as breaking. Older nodes and clients should ignore unknown fields.
  • The UI should consume exported schema metadata instead of duplicating setting ownership, labels, constraints, or apply behavior.
  • Snapshot fixtures in mesh/crates/mesh-llm-host-runtime/tests/fixtures/ are the cross-check between Rust schema export and the TypeScript adapter.

Validation

Run cargo commands serially. For config-surface changes, start with:

cargo test -p mesh-llm-config --lib
cargo test -p mesh-llm-host-runtime --lib schema_export
cargo test -p mesh-llm-host-runtime --lib runtime_config
cargo test -p mesh-llm-host-runtime --lib plugin_config
cargo test -p mesh-llm-plugin --lib
cargo test -p mesh-llm-plugin-manager --lib
cargo test -p mesh-llm-cli config_validate --lib
cargo test -p mesh-llm config_validate --lib
cargo check -p mesh-llm
cargo clippy -p mesh-llm-config -p mesh-llm-plugin -p mesh-llm-plugin-manager -p mesh-llm-host-runtime -p mesh-llm-cli -p mesh-llm --all-targets -- -D warnings

Also run the UI checks when the schema export or adapter changes:

cd mesh/crates/mesh-llm-ui
npm test -- --run src/features/configuration/api/config-adapter.test.ts
npm run typecheck

Use the repo build gate before publishing broad changes:

just build

Download now (ZIP)

Trending

Quiet since April.about the whole repository

Dec 2025: 0 mentionsJan 2026: 0 mentionsFeb 2026: 0 mentionsMar 2026: 4 mentionsApr 2026: 14 mentionsMay 2026: 0 mentionsJun 2026: 0 mentionsJul 2026: 0 mentionsAug 2026: 0 mentionsSep 2026: 0 mentionsOct 2026: 0 mentionsNov 2026: 0 mentions
Dec 2025Jun 2026Nov 2026
Mentions a month of the michaelneale/mesh-llm repository that our weekly crawl found. There is no adoption data for this file yet.

Who's talking about michaelneale/mesh-llm

The biggest 5 of 18 mentions linking to the repository that our crawl found. Each line is their own headline.

See all 18

Talked about on GitHub, Bluesky and Hacker News (18 times).

On GitHub · 15

10 more on GitHub

On Hacker News · 1

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.