# [Usage](../../../usage.md) > Framework configs update

Use `kfw:configs-update` when the package introduces new config keys. Unlike manual editing, it inserts only missing keys and preserves local values, formatting, and comments.

---

## Method

### `php artisan kfw:configs-update`

#### Arguments

None.

#### What it does

- Compares each file in the package `src/config/*.php` against `config/k-framework/*.php`.
- Creates missing published files verbatim.
- Merges keys present in the package file but absent locally; local scalar values win.
- Synchronizes nested arrays recursively through token-based merging.
- Skips `navigation.php`, which is managed separately.
- Prints per-file `Created`, `Updated (+N)`, or `No changes` lines with totals.

---

## Output

Per-file status lines plus a summary with created, updated, and keys-added counters.

---

## Example

```bash
php artisan kfw:configs-update
```

Safe to re-run after every package update. For the full workflow including migrations and assets, use `kfw:update`.

## See also

- [Usage](../../../usage.md)
- [Framework update](kfw_update.md) — full update workflow
- [Framework publish](kfw_publish.md) — initial config publishing
- [Installation](../../../installation.md) — config locations
