Commit Graph
23 Commits
Author SHA1 Message Date
Julian lechner 83091d247a fix(instructions): add startup rule only for existing custom instructions 2026-10-08 15:16:07 +02:00
Julian lechnerandClaude Opus 5.5 f3c88a089e feat(qmd): warm the index and daemon from a SessionStart hook
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-08 11:37:47 +02:00
Julian lechnerandClaude Opus 5.5 dec926fee3 feat(install): roll back interrupted syncs from a journal
Plan each sync before writing, record the plan in .ai-config-transaction.json,
and roll an interrupted destination back from its backups on the next run.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-01 13:59:10 +02:00
Julian lechnerandClaude Opus 5.5 587c27c1cd feat(install): install semantic-search only with retrieval
Skip the semantic-search skill while semantic retrieval is disabled and remove
a setup-owned copy when it is turned off.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-01 13:27:55 +02:00
Julian lechnerandClaude Opus 5.5 96313f4056 feat(install): lock destinations during sync
Create <destination>/.ai-config.lock exclusively while syncing so parallel
installs or updates fail instead of interleaving writes. A lock left by an
exited process of the same shell on the same host is replaced.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-01 12:45:39 +02:00
Julian lechnerandClaude Opus 5.5 d4143ae2ac fix(install): replace all managed files atomically
Write config.toml, settings.json, the manifest, and every other managed file to
a temporary sibling and rename it over the target, so an interrupted run
cannot leave a partly written file. Previously only SKILL.md was replaced
this way.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-01 12:45:38 +02:00
Julian lechnerandClaude Opus 5.5 857720bcfd fix(install): exchange install option content through UTF-8 files
Windows PowerShell pipes re-encode text by console code page: under code page
65001 a BOM broke the config.toml merge, and otherwise non-ASCII characters
became question marks. Pass managed and merged content through files, and
decode piped input as utf-8-sig.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-01 10:23:14 +02:00
Julian lechner 8e4aa0523e fix(install): keep skill backups undiscoverable 2026-09-30 17:07:33 +02:00
Julian lechner 17e8be13b7 fix(update): retain custom config keys 2026-09-30 09:27:48 +02:00
Julian lechner 3973ed48f3 fix(update): preserve unmanaged client settings 2026-09-30 09:22:55 +02:00
fraujulian ee19c64beb feat(install): configure custom status line 2026-09-24 22:58:56 +02:00
Julian lechner 438b1656ed fix(manifest): reject unsafe paths and links 2026-09-24 17:08:31 +02:00
Julian lechner 561e010c41 fix(install): migrate duplicate skills and resolve concurrency tokens 2026-09-17 15:27:02 +02:00
Julian lechner e74366f19a fix(config): validate codex settings and allow claude concurrency override 2026-09-17 14:37:18 +02:00
Julian lechner 92fbcc8114 fix(manifest): preserve PowerShell model settings 2026-09-17 14:03:00 +02:00
Julian lechner 65eee69fb9 fix(codex): preserve local model settings 2026-09-17 13:00:20 +02:00
Julian lechner 13594fb401 fix(update): preserve local model and effort 2026-09-17 11:45:00 +02:00
fraujulian 9a2a606410 feat(update): persist interactive install choices 2026-09-16 22:43:33 +02:00
fraujulian c749fcd792 fix(install): preserve codex plugin registrations during sync 2026-09-16 19:18:22 +02:00
Julian lechner 453da10b61 feat(output): summarize managed file sync 2026-09-16 16:53:28 +02:00
Julian lechner 18b6a7e390 feat(scripts): add summary mode to managed-file sync
Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
2026-09-16 14:24:39 +02:00
Julian lechnerandClaude Sonnet 5 1c2d155fcc fix(installer): write manifest hashes lowercase and without a BOM (PowerShell)
Windows PowerShell 5.1's -Encoding UTF8 always prepends a BOM, and
Get-FileHash returns uppercase hex. Bash's manifest reader expects neither,
so a manifest written by this module and later read by the Bash
equivalent (or vice versa) mismatched on every single entry: the BOM
folded into the header's first field, and every hash comparison failed on
case alone. Hashes are now lowercased on read and write, and the manifest
file itself is written UTF-8 without a BOM.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-09-11 16:07:17 +02:00
Julian lechnerandClaude Sonnet 5 3f27cd0778 feat(installer): add managed-file manifest module (PowerShell)
Adds Sync-ManagedDestination and its manifest helpers: a per-destination
TSV of path -> SHA-256 that makes installation idempotent (unchanged files
are neither rewritten nor backed up), detects files this setup previously
installed that the source no longer ships (removed after backup, unless
changed locally, in which case they are backed up and left in place with
a warning), and never touches a file it never installed. Backups for a
run land together under backups/<stamp>/ instead of one suffix per file.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-09-11 15:42:48 +02:00