Closed
Conversation
Introduces `dvmi sync-config-ai` — an interactive full-screen TUI for managing AI coding tool configurations (MCP servers, commands, skills, agents) across VS Code Copilot, Claude Code, OpenCode, Gemini CLI, and GitHub Copilot CLI from a single place. Key capabilities: - Filesystem scan on every launch detects installed AI tools (project + global paths, including ~/.config/opencode/ for globally installed OpenCode) - 5-tab TUI: Environments (read-only) + dedicated tab per category type (MCPs | Commands | Skills | Agents) — each tab shows only its entries - Inline forms with type-specific fields and a mini text editor for multi-line content; Environments multi-select filtered to compatible tools per compatibility matrix - Full CRUD: create, edit, deactivate/activate, delete with confirmation - Entries persist in ~/.config/dvmi/ai-config.json and are deployed to target environment config files on save - Chezmoi integration: auto-syncs AI config after mutations if configured; shows setup tip in footer otherwise - --json flag for non-interactive/CI use Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Format all source and test files with Prettier (space-free destructuring, consistent import spacing). Add project-level Claude Code slash commands under .claude/commands/ for speckit workflow integration. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Add .claude/ to .gitignore and remove tracked files — project-level Claude Code commands and memory are local-only artifacts. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Replace stale content (old repo references, incorrect versions) with the actual release history from v1.0.0 to v1.4.2, plus an [Unreleased] section documenting the sync-config-ai feature landing in v1.5.0. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Added dotfiles, prompts, vuln, logs, security, sync-config-ai, and welcome commands that existed in src/ but were not documented in the README. Also updated the "What It Does" feature table to reflect the full feature set. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
…ies, drift detection - Add 5 new AI environments: Cursor, Windsurf, Continue.dev, Zed, Amazon Q - Add Rules category (5th type) with MDC/markdown deployment support - Add native entry parsing — show unmanaged items in read-only Native section - Add drift detection with re-deploy/accept-changes resolution UI - Add env var masking for MCP entries with r to reveal, i to import native - Wire chezmoi sync after every store mutation - Bump schema to v2 with migration, expand --json output - Bump version to 1.5.1 Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- Add v1.5.1 changelog entry with new environments, categories, native entries, drift detection - Update README sync-config-ai section with 10 envs, TUI sections, key bindings, --json flag Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
# Conflicts: # CHANGELOG.md # CLAUDE.md # README.md # package.json # src/commands/sync-config-ai/index.js # src/formatters/ai-config.js # src/services/ai-config-store.js # src/services/ai-env-deployer.js # src/services/ai-env-scanner.js # src/types.js # src/utils/tui/form.js # src/utils/tui/tab-tui.js # tests/integration/sync-config-ai.test.js # tests/services/ai-config-sync.test.js # tests/snapshots/__snapshots__/sync-config-ai.test.js.snap # tests/snapshots/sync-config-ai.test.js # tests/unit/services/ai-config-store.test.js # tests/unit/services/ai-env-deployer.test.js # tests/unit/services/ai-env-scanner.test.js
…serialization (v1.5.2) - Dynamic form fields based on transport type (stdio shows Command/Args, sse/http shows URL) - Env vars editor field (KEY=VALUE per line) for MCP servers - Transport-specific validation (stdio requires Command, sse/http requires URL) - Args as multi-line editor (one per line) instead of space-separated text - Fix params pollution: name/environments/description no longer leak into MCPParams - Fix type field: omit type for stdio (environments infer from command) - Fix env/args serialization: always write as object/array, not strings - Normalize legacy string args/env from older store entries - Align drift detection with deployer output for stdio type omission Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Coverage Report |
QA Report
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
What does this PR do? (fix, feature, refactor, docs, etc.)
Related Issues
Closes #(issue number), or N/A if no related issue
Type of Change
Changes
Testing
How have you tested this? (include commands run, test output, etc.)
Breaking Changes?
Any breaking changes? If yes, describe them and migration path.
Checklist
pnpm lint)pnpm test)Screenshots (if applicable)
Add any relevant screenshots or terminal output.