Commit Graph
33 Commits
Author SHA1 Message Date
Julian lechner 561e010c41 fix(install): migrate duplicate skills and resolve concurrency tokens 2026-09-17 15:27:02 +02:00
Julian lechner 975e1fd5f0 fix(install): copy canonical skills before legacy migration 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 7c6d7c610f fix(manifest): preserve Bash model settings
CI / linux (push) Failing after 5s
2026-09-17 14:03:20 +02:00
Julian lechner 92fbcc8114 fix(manifest): preserve PowerShell model settings 2026-09-17 14:03:00 +02:00
Julian lechner d01b819b02 chore(retrieval): describe reranking setup 2026-09-17 13:07:57 +02:00
Julian lechner 65eee69fb9 fix(codex): preserve local model settings 2026-09-17 13:00:20 +02:00
Julian lechner f07aaf8f63 feat(qmd): add managed extension integration 2026-09-17 11:45:41 +02:00
Julian lechner 13594fb401 fix(update): preserve local model and effort 2026-09-17 11:45:00 +02:00
Julian lechner 79d981e78b fix(retrieval): order Claude MCP arguments 2026-09-17 09:21:45 +02:00
Julian lechner 27f1c1ec79 feat(retrieval): add optional Qwen semantic layer 2026-09-17 09:16:53 +02:00
Julian lechner bfbe001248 feat(selection): persist retrieval preference 2026-09-17 09:16:05 +02:00
Julian lechner be87628d67 feat(plugins): record resolved extension revisions 2026-09-17 08:32:17 +02:00
fraujulian 6a0c4abb65 refactor(shell): use powershell and bash package names 2026-09-16 22:43:55 +02:00
fraujulian 9a2a606410 feat(update): persist interactive install choices 2026-09-16 22:43:33 +02:00
fraujulian 80e1ab440e feat(extensions): reconcile managed plugins and skills 2026-09-16 22:43:15 +02:00
fraujulian e62609d433 feat(update): reuse saved choices with quick mode 2026-09-16 19:18:25 +02:00
fraujulian 3a5790e67c feat(selection): persist validated update preferences atomically 2026-09-16 19:18:24 +02:00
fraujulian 122cbba9b7 fix(plugins): correct navigation keys and menu encoding 2026-09-16 19:18:23 +02:00
fraujulian c749fcd792 fix(install): preserve codex plugin registrations during sync 2026-09-16 19:18:22 +02:00
Julian lechner c6c8bf7105 feat: add keyboard plugin selection
CI / linux (push) Failing after 11s
2026-09-16 17:37:53 +02:00
Julian lechner 5b50f32f4b refactor(install): share target selection helpers 2026-09-16 16:54:23 +02:00
Julian lechner 1355cbe3cd feat(plugins): compact command output and preserve diagnostics 2026-09-16 16:53:40 +02:00
Julian lechner 453da10b61 feat(output): summarize managed file sync 2026-09-16 16:53:28 +02:00
Julian lechnerandClaude Haiku 4.5 0cc6909057 feat(scripts): add summary mode to plugin install/uninstall
Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
2026-09-16 14:32:17 +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
fraujulian 5b0c623a8d feat(plugins): add shared client tools 2026-09-14 01:07:28 +02:00
Julian lechnerandClaude Sonnet 5 0ae373c202 fix(installer): tolerate BOM, CRLF, and uppercase in older manifests (Bash)
Bash's manifest reader stripped only the trailing newline, so a
CRLF-terminated manifest left a stray \r on every hash, a UTF-8 BOM on the
header line was folded into the "path" field, and an uppercase hash never
matched sha256sum's lowercase output. Reproduced against a real
manifest written by an earlier version of the PowerShell installer, where
every single managed file was misreported as locally modified.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-09-11 16:07:27 +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 1163f6d96e fix: mark shell scripts executable in git
All tracked .sh files were stored as mode 100644 (non-executable), even
though the CI workflow and normal usage invoke several of them directly
(./scripts/build.sh) rather than through `bash`. On a fresh Linux
checkout this fails with a permission error.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-09-11 16:06:37 +02:00
Julian lechnerandClaude Sonnet 5 80cff169f4 feat(installer): add managed-file manifest module (Bash)
Bash equivalent of the PowerShell manifest module: sync_managed_destination
plus its read/write/hash helpers, using sha256sum and a TSV manifest so
the same idempotent-install, stale-detection, and local-modification
protection behavior is available without a PowerShell dependency.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-09-11 15:42:53 +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
Julian lechner 396f62a503 feat(scripts): add cross-platform build and installation tools 2026-09-11 14:43:18 +02:00