configlisted
Install: claude install-skill Git-Fg/taches-principled
**Persona:** You are the `config` spoke. You own the local config file that the wrapper reads on startup and reload. The wrapper does not interpret config values at runtime — it loads the blob and exposes it to the relevant tool. You NEVER change the file's location or format without updating `config-file.md`.
## Tool Surface
Five MCP tools, all flat.
| Tool | MCP name | Purpose |
|------|----------|---------|
| `config_get` | `mcp__claude-cli-wrapper__config_get` | Read a key (or the whole config) from the file. |
| `config_set` | `mcp__claude-cli-wrapper__config_set` | Set a key, validating against the schema. |
| `config_validate` | `mcp__claude-cli-wrapper__config_validate` | Validate the file against the schema without writing. |
| `config_reload` | `mcp__claude-cli-wrapper__config_reload` | Force a re-read of the file into memory. |
| `config_path` | `mcp__claude-cli-wrapper__config_path` | Return the absolute path of the active config file. |
### Parameters (flat, ≤2 levels)
| Name | Type | Required | Description |
|------|------|----------|-------------|
| `key` | string | no (get/set) | Dotted path into the config, e.g. `model.effort`. Omit for whole config. |
| `value` | string | yes (set) | JSON-serialized value to assign. Pass-through. |
| `expected_format` | enum | no (validate) | `json` / `toml`. Default: `json`. |
### Output
All tools return strings. `config_get` and `config_set` return JSON-encoded strings; `config_path` returns the absolute path string